logo

백 프로젝션: 라돈 변환의 듀얼 📂단층촬영

백 프로젝션: 라돈 변환의 듀얼

정의1 2

라돈 변환 R:L2(Rn)L2(Zn)\mathcal{R} : L^{2}(\mathbb{R}^{n}) \to L^{2}(Z_{n})듀얼 오퍼레이터 R#:L2(Zn)L2(Rn)\mathcal{R}^{\#} : L^{2}(Z_{n}) \to L^{2}(\mathbb{R}^{n})백 프로젝션back projection, 배경투사이라 한다.

Rf,gL2(Zn)=f,R#gL2(Rn) \left\langle \mathcal{R}f ,g \right\rangle_{L^{2}(Z_{n})} = \left\langle f , \mathcal{R}^{\#}g \right\rangle_{L^{2}(\mathbb{R}^{n})}

여기서 Zn:=R1×Sn1Z_{n} := \mathbb{R}^{1} \times S^{n-1}Rn+1\mathbb{R}^{n+1}의 유닛 실린더이다.

정리

수식

백 프로젝션은 구체적으로 다음과 같다.

R#g(x)=Sn1g(xθ,θ)dθ \mathcal{R}^{\#} g (\mathbf{x}) = \int_{S^{n-1}} g (\mathbf{x} \cdot \boldsymbol{\theta}, \boldsymbol{\theta}) d\boldsymbol{\theta}

특히 2차원에서는,

R#g(x,y)=02πg(xcosθ+ysinθ,θ)dθ \mathcal{R}^{\#} g (x,y) = \int_{0}^{2\pi} g (x\cos\theta + y\sin\theta, \theta) d\theta

라돈변환의 백 프로젝션

다음의 식이 성립한다.

R#Rf=Sn21xf \mathcal{R}^{\#} \mathcal{R} f = \left| S^{n-2} \right| \dfrac{1}{\left| \mathbf{x} \right|} \ast f

여기서 \ast컨볼루션, Sn1\left| S^{n-1} \right|nn차원 구의 겉넓이이다. 특히 2차원에서는,

R#Rf=2xf \mathcal{R}^{\#} \mathcal{R} f = \dfrac{2}{\left| \mathbf{x} \right|} \ast f

설명

백 프로젝션은 라돈 변환의 듀얼이므로 라돈 역변환의 후보로 생각할 수 있다. 하지만 라돈 변환은 유니터리가 아니므로 다음이 성립하지 않는다.

R1R# \mathcal{R}^{-1} \ne \mathcal{R}^{\#}

두번째 정리를 보면 R#Rf\mathcal{R}^{\#}\mathcal{R}fff와 비슷하기는 하지만 같지는 않다는 것을 알 수 있다. 실제로 계산해보면 원본을 블러blur처리한 것처럼 보인다.

슬라이드6.PNG

따라서 ff를 정확히 얻기 위해서는 필터 역할을 하는 다른 오퍼레이터를 거쳐야하고, 이러한 라돈 역변환을 filtered back projection이라 한다.

기하적 의미와 시각화

이해를 위해 2차원을 고려하자. 라돈 변환의 백프로젝션은 다음과 같다.

R#Rf(x)= 02πRf(xθ,θ)dθ,θ=(cosθ,sinθ) \mathcal{R}^{\#} \mathcal{R} f(\mathbf{x}) =\ \int_{0}^{2\pi} \mathcal{R}f(\mathbf{x} \cdot \boldsymbol{\theta}, \theta) d \theta ,\quad \boldsymbol{\theta} = (\cos \theta, \sin \theta)

여기서 Rf(xθ,θ)\mathcal{R}f(\mathbf{x} \cdot \boldsymbol{\theta}, \theta)는, ff를 원점에서부터 xθ\mathbf{x} \cdot \boldsymbol{\theta}만큼 떨어져있고 θ\boldsymbol{\theta}와 수직인 직선 lxθ,θl_{\mathbf{x}\cdot \boldsymbol{\theta}, \theta}로 선적분 한 것이다. 이 직선은 θ\theta와 수직인 각도로 점 x\mathbf{x}를 지나는 직선이다.

그림4.png

그런데 백 프로젝션은 값 Rf(xθ,θ)\mathcal{R}f(\mathbf{x} \cdot \boldsymbol{\theta}, \theta)을 모든 θ[0,2π)\theta \in [0,2\pi)에 대해서 더한 것(적분)이므로, R#Rf(x)\mathcal{R}^{\#} \mathcal{R} f(\mathbf{x})는 점 x\mathbf{x}를 지나는 모든 선에 대한 ff의 선적분의 평균(2π2\pi로 나누면)이 된다.

그림5.png

다음의 그림은 R#Rf(x)\mathcal{R}^{\#} \mathcal{R} f(\mathbf{x})를 계산할 때, Rf(xθ,θ)\mathcal{R}f(\mathbf{x} \cdot \boldsymbol{\theta}, \theta)의 값을 θ=0\theta = 0부터 누적하여 더하는 과정을 보여준다.

증명

수식

Rf,gL2(Zn)= RSn1Rf(s,θ)g(s,θ)dθds= RSn1Rf(sθ+tθ)dtg(s,θ)dθds= RRSn1f(sθ+tθ)g(s,θ)dθdsdt \begin{align*} \left\langle \mathcal{R}f ,g \right\rangle_{L^{2}(Z_{n})} =&\ \int_{\mathbb{R}}\int_{S^{n-1}} \mathcal{R}f(s, \boldsymbol{\theta}) g(s, \boldsymbol{\theta}) d\boldsymbol{\theta} ds \\ =&\ \int_{\mathbb{R}}\int_{S^{n-1}} \int_{\mathbb{R}}f(s\boldsymbol{\theta} + t\boldsymbol{\theta}^{\perp})dt g(s, \boldsymbol{\theta}) d\boldsymbol{\theta} ds \\ =&\ \int_{\mathbb{R}} \int_{\mathbb{R}} \int_{S^{n-1}} f(s\boldsymbol{\theta} + t\boldsymbol{\theta}^{\perp}) g(s, \boldsymbol{\theta}) d\boldsymbol{\theta} ds dt \end{align*}

sθ+tθ=xs \boldsymbol{\theta} + t \boldsymbol{\theta}^{\perp} = \mathbf{x}로 치환하면, s=xθs = \mathbf{x} \cdot \boldsymbol{\theta}이고, 다음이 성립한다.

Rf,gL2(Zn)= RnSn1f(x)g(xθ,θ)dθdx= Rnf(x)(Sn1g(xθ,θ)dθ)dx= f,(Sn1g(,θ,θ)dθ)L2(Rn) \begin{align*} \left\langle \mathcal{R}f ,g \right\rangle_{L^{2}(Z_{n})} =&\ \int_{\mathbb{R}^{n}}\int_{S^{n-1}} f(\mathbf{x}) g(\mathbf{x} \cdot \boldsymbol{\theta}, \boldsymbol{\theta}) d\boldsymbol{\theta} d \mathbf{x} \\ =&\ \int_{\mathbb{R}^{n}} f(\mathbf{x}) \left( \int_{S^{n-1}} g(\mathbf{x} \cdot \boldsymbol{\theta}, \boldsymbol{\theta}) d\boldsymbol{\theta} \right) d \mathbf{x} \\ =&\ \left\langle f, \left( \int_{S^{n-1}} g(\left\langle \cdot, \boldsymbol{\theta} \right\rangle, \boldsymbol{\theta}) d\boldsymbol{\theta} \right) \right\rangle_{L^{2}(\mathbb{R}^{n})} \end{align*}

따라서,

R#g(x)=Sn1g(xθ,θ)dθ \mathcal{R}^{\#} g (\mathbf{x}) = \int_{S^{n-1}} g (\mathbf{x} \cdot \boldsymbol{\theta}, \boldsymbol{\theta}) d\boldsymbol{\theta}

라돈변환의 백 프로젝션3

R#Rf(x)= Sn1Rf(xθ,θ)dθ= Sn1yθ=0f((xθ)θ+y)dydθ \begin{align*} \mathcal{R}^{\#} \mathcal{R} f(\mathbf{x}) =&\ \int\limits_{S^{n-1}} \mathcal{R}f(\mathbf{x} \cdot \boldsymbol{\theta}, \boldsymbol{\theta}) d \boldsymbol{\theta} \\ =&\ \int\limits_{S^{n-1}} \int\limits_{\mathbf{y} \cdot \boldsymbol{\theta} = 0} f\big((\mathbf{x} \cdot \boldsymbol{\theta})\boldsymbol{\theta} + \mathbf{y} \big) d \mathbf{y} d \boldsymbol{\theta} \\ \end{align*}

이때 (xθ)θ=x(xθ)θ(\mathbf{x} \cdot \boldsymbol{\theta})\boldsymbol{\theta} = \mathbf{x} - (\mathbf{x} \cdot \boldsymbol{\theta}^{\perp})\boldsymbol{\theta}^{\perp}이고, 두번째 항은 yθ=0\mathbf{y} \cdot \boldsymbol{\theta} = 0y\mathbf{y}에 포함되므로, 위 적분은 다음과 같다.

R#Rf(x)= Sn1yθ=0f(x+y)dydθ \mathcal{R}^{\#} \mathcal{R} f(\mathbf{x}) =\ \int\limits_{S^{n-1}} \int\limits_{\mathbf{y} \cdot \boldsymbol{\theta} = 0} f(\mathbf{x} + \mathbf{y} ) d \mathbf{y} d \boldsymbol{\theta}

보조정리

Sn1yθ=0f(x+y)dydθ=Sn2Rnf(y)xydy \int \limits_{S^{n-1}} \int \limits_{\mathbf{y} \cdot \boldsymbol{\theta} = 0} f(\mathbf{x} + \mathbf{y}) d \mathbf{y} d \boldsymbol{\theta} = \left| S^{n-2} \right| \int \limits_{\mathbb{R}^{n}} \dfrac{f(\mathbf{y})}{\left| \mathbf{x} - \mathbf{y} \right|}d \mathbf{y}

그러면 보조정리에 의해,

R#Rf(x)=Sn2Rnf(y)xydy=Sn21xf \mathcal{R}^{\#} \mathcal{R} f(\mathbf{x}) = \left| S^{n-2} \right| \int \limits_{\mathbb{R}^{n}} \dfrac{f(\mathbf{y})}{\left| \mathbf{x} - \mathbf{y} \right|}d \mathbf{y} = \left| S^{n-2} \right| \dfrac{1}{\left| \mathbf{x} \right|} \ast f


  1. Frank Natterer, The Mathematics of Computerized Tomography (2001), p13 ↩︎

  2. Peter Kuchment, The Radon Transform and Medical Imaging (2014), p34-36 ↩︎

  3. Frank Natterer, The Mathematics of Computerized Tomography (2001), p15-16 ↩︎