CT圖像重建算法的FPGA實(shí)現 (二)
2.3 計算機實(shí)現的理論研究
本文引用地址:http://dyxdggzs.com/article/201808/387975.htm在程序中,濾波反投影算法的步驟為:
投影數據采集
對投影數據做FFT變換
濾波
反投影數據
逆FFT變換
等式(2.8)不能以它現有形式直接實(shí)現,只要考慮公式(2.10)的解釋?zhuān)秃苋菀桌斫膺@一點(diǎn)?;诟道锶~變換的特性,我們知道在傅里葉域中兩個(gè)函數相乘等價(jià)于兩個(gè)相應空間域函數的卷積。 在空間域中的對應函數是被測平行投影
。對應濾波函數
的空間領(lǐng)域(或沖激響應)
,就是該函數的傅里葉反變換,

(2.12)
并不存在。必須研究一個(gè)代替方法。一個(gè)這樣的方法是把有限帶寬函數引入公式中。例如在上式中設置t=0,讓我們考慮
的值。
代表在曲線(xiàn)
下面的面積。當
。因此,等式(2.8)不能以它現有形式實(shí)現。必須研究一個(gè)代替方法。一個(gè)這樣的方法是把有限帶寬函數引入公式中。
假設投影的傅里葉變換是有限帶寬的。換句話(huà)說(shuō),在頻率間隔 以外能量為0.在這個(gè)假設下,等式(2.10)可以按下面形式表示:

(2.13)
等式(2.13)指出,要計算濾波的投影 ,只需要進(jìn)行投影
的傅里葉變換以得到
,在
范圍內乘以
,并進(jìn)行傅里葉反變換。不幸的是,有兩個(gè)因素使這個(gè)看似簡(jiǎn)單的問(wèn)題變得復雜:被截斷的濾波核的離散化以及環(huán)狀卷積的性質(zhì)。要徹底理解濾波核問(wèn)題,讓我們首先在空間域中推導理想濾波核。為保證無(wú)混疊采樣,投影帶寬T必須滿(mǎn)足Nyquist(奈奎斯特)采樣準則:

(2.14)
其中 是投影采樣間隔(單位為
)。在該條件下,初始的斜變函數
實(shí)際上是與窗函數
相乘:

(2.15)
其中

濾波函數 在圖2.1中描繪?,F在,濾波器沖激響應可以描述如下

. (2.16)
注意由于 的
的一個(gè)實(shí)偶函數,相應的沖激響應
也是t的一個(gè)實(shí)偶函數。

圖2.1 有限帶寬斜變?yōu)V波器的頻率表示
注意,投影以間隔 采樣。根據卷積理論,等式(2.9)可以寫(xiě)為

(2.17)
其中 是滿(mǎn)足條件

的 值。這里,我們利用被掃描物體具有有限空間緊支集這一事實(shí)。在濾波投影的離散實(shí)現時(shí),我們只對在
整數倍處的濾波數值感興趣。把
代入等式(2.16)中,得到

(2.18)
濾波函數的沖激響應在圖2.2中畫(huà)出。在該圖中,我們設 。如果用

表示在角度 下投影的離散采樣,等式(2.10)中描述的濾波投影可以表達為一個(gè)空間域卷積:

(2.19)

圖2.2 斜邊濾波器的沖激響應
這里,我們利用了每個(gè)投影在空間上具有有限緊支集的事實(shí)。即在下標范圍以外, 為0.這意味著(zhù),要確定
,我們只需利用在范圍
內的
。
盡管等式(2.19)的離散卷積實(shí)現可以直接得到被濾波的投影,當N很大時(shí),往往在頻率域中執行運算效率更高[使用快速傅里葉變換(FFT)運算]。對于目前一臺典型的CT掃描機,一次單獨投影的采樣數N接近1000.因此,我們希望得到 序列的頻率域形式。在有限范圍內
的離散傅里葉變換
與等式(2.15)描述的
不同,如圖2.3所示。二者之間主要差別是直流成分。盡管差相當小,它對重建圖像CT數準確度的影響不能忽略。
現在我們考慮循環(huán)卷積[9]的問(wèn)題。等式(2.10)中描述的原始濾波運算需要一個(gè)非周期性的卷積。當這個(gè)運算在頻率域中執行時(shí),只能是周期性或循環(huán)卷積。如果直接實(shí)線(xiàn)前面所述的運算序列,可能產(chǎn)生干涉偽像。這就是所謂的卷繞(warp-around)效應,或者周期間干涉。為了避免偽像,需要在傅里葉變換和濾波運算之前為每個(gè)投影填補足夠數量的零。零的最少數目必須等于初始投影采樣數減1(即N-1)。
圖2.3中所示斜變?yōu)V波器


函數(實(shí)線(xiàn))和有限帶寬斜變?yōu)V波器傅里葉變換(虛線(xiàn))的比較在等式(2.15)中,我們采用了一個(gè)簡(jiǎn)單的矩形窗函數來(lái)限制濾波核??梢粤硗庑薷拇昂瘮?,以改變?yōu)V波器的頻率響應。實(shí)際應用中,窗函數經(jīng)常被作為一個(gè)工具,用來(lái)修改重建圖像的噪聲特性,以實(shí)現空間分辨率和圖像噪聲之間的折中。
在許多用于數值計算和圖像的高級語(yǔ)言軟件系統中,如Matlab(The MathWorks,Natick,MA)或IDL(Research Systems,Inc,Boulder,CO),矢量或矩陣可以直接表示成變量。還可以針對矢量定義不同運算符。在這樣的環(huán)境中,平行反投影的實(shí)現變得相當容易。對于每個(gè)被測投影(在數據預處理或預調理后),投影被填補足夠多的0以避免“周期間”干擾。對補零后的投影進(jìn)行傅里葉變換,并且被變換的投影乘以一個(gè)濾波函數[10]。然后,對結果進(jìn)行傅里葉反變換,得到一個(gè)被濾波的投影。該投影被反投影(通過(guò)“像素驅動(dòng)”或“射線(xiàn)驅動(dòng)”)到圖像矩陣。為了提高空間分辨率,濾波投影經(jīng)常在反投影過(guò)程之前進(jìn)行預插值。在投影數據集合中對每次投影重復整個(gè)過(guò)程。圖2.4顯示一個(gè)流程圖,描述了對于平行束投影[11]的重建過(guò)程。
評論