《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > FPGA加速三維CT圖像重建
FPGA加速三維CT圖像重建
來源:電子技術應用2010年第9期
鄧靖飛,李建新,李 磊,閆 鑌
解放軍信息工程大學,河南 鄭州450002
摘要: 針對三維圖像重建的經典算法(FDK算法)在FPGA上的加速,提出了并行無等待流水線的實現方法。實驗結果表明,該方法獲得了較高的加速比。
關鍵詞: FPGA CT重建 FDK 流水線
中圖分類號: TP391
文獻標識碼: A
文章編號: 0258-7998(2010)09-0050-04
FPGA accelerate 3D CT reconstruction
DENG Jing Fei,LI Jian Xin,LI Lei,YAN Bin
The PLA Information Engineering University, Zhengzhou 450002,China
Abstract: In this paper, the acceleration of the classic three-dimensional reconstruction FDK algorithm based on FPGA is researched. The method of parallel no-wait pipelines is proposed. The experimental results show that the method obtains a higher speedup.
Key words : FPGA;CT reconstruction;FDK;pipeline

    計算機斷層成像技術CT(Computed Tomography)作為一種新型的成像方式已經被廣泛應用于醫學、工業等領域。三維CT相對于傳統二維CT有空間分辨率高,各向同性的優勢[1]。但是由于三維圖像重建運算量大,重建時間長的問題已成為制約其走向實用的瓶頸。
    目前,重建加速研究主要集中在通過改進算法的軟件加速及利用GPU、FPGA進行的硬件加速。其中,FPGA由于具有極佳的并行計算能力及可重構可定制的特點[2],利用FPGA實現CT重建加速正逐漸引起研究人員的注意。
    2002年Miriam Leeser[3]首次利用FPGA對二維CT重建進行了加速,重建規模為512^2時需要3.6 s。2003年Iain Goddard[4]首次對三維CT重建FDK算法中的反投影過程用FPGA實現加速,重建規模為512^3時,反投影過程需要38.7 s;2008年Benno Heigl[5]用9塊FPGA協調配合完成了FDK算法中濾波及反投影部分的加速,重建規模為512^3時,該過程共需要9 s。2009年Nikhil Subramanian[6]利用FPGA作為協處理器用Impulse c語言開發實現了二維CT重建過程的加速,重建規模為512^2時,反投影過程需要38.4 ms。
     在FPGA內實現硬件加速是通過全數據流的形式處理,脫離了指令的操作。為了充分利用FPGA的片內資源以獲得更高的加速效果,本文設計了一種并行無等待流水線的處理結構,同時對核心算法電路進行資源優化,在保持高度并行性的同時保證了較高的資源利用率。
1 FDK算法
    
     

    在FDK算法中,反投影的計算復雜度與時間消耗都是最大的,是制約重建速度的瓶頸所在,因此本文研究在FPGA內實現反投影部分的加速方法。
2 FPGA反投影加速實現
    反投影過程需要對重建物體旋轉一周所采集到的數據進行處理。實際情況中采集數據的過程是離散的,且每一個分度下投影數據的處理過程不相關。基于這種可并行性,用FPGA加速的思路是并行計算反投影過程,并且在保證每一個反投影單元速度最快時并行盡可能多的反投影單元。
2.1 無等待流水線的設計
    重建物體體素的反投影流程有3個步驟。首先根據圖1的幾何關系定位出重建體素在探測器上的位置;然后從存儲器中讀取相應數據;最后對所讀取數據進行雙線性插值。
    通過流水線設計,雙線性插值部分可以在每一個時鐘更新一個數據,但是每更新一個數據需要從數據存儲空間讀取4個數據來計算,如果花費4個時鐘周期來讀取這4個數據,就會造成前級數據讀取時間大于后級雙線性插值時間,雙線性插值處理單元會產生空泡。空泡的產生,不但制約了后級處理單元的計算速度,也造成FPGA內資源利用率的降低。
    為了解決上述問題,提高處理速度以及資源利用率,分析雙線性插值過程所讀取4個數據之間的關系,如圖2所示。

   
 

    圖3中兩組共四個存儲空間均為FPGA片內設計的雙口RAM。通過數據預取技術以及兩組RAM之間的乒乓操作避免了雙線性插值時隨機訪問外部存儲器帶來的延遲。在反投影處理中,第一組RAM處于數據寫入過程時,分別向該組兩塊RAM寫入探測器上奇數行數據與偶數行數據。同時另一組RAM中的數據進行雙線性插值。計算完成后,兩組RAM進行讀寫狀態的互換,完成一次乒乓循環。在投影尋址單元中,計算出A(Xn,Yn)的縱坐標Yn,對其奇偶性進行判斷,當其為奇數時,從兩塊RAM中所取數據與地址分別為:
   


    通過這種雙組奇偶雙口RAM緩存結構的設計在不增加片內存儲資源消耗的前提下一個時鐘周期內取出四個數據,消除了空泡,實現了無等待流水線,在一個時鐘周期內可更新一個重建點的結果。
    單條反投影流水線設計原理如圖4所示。圖中總體邏輯與時序控制模塊通過狀態機實現對流水線的控制;緩存寫入控制單元對投影數據的寫入操作進行判斷與控制;重建點生成器產生重建點坐標,并根據此坐標由讀地址生成器計算雙線性插值數據的地址,同時通過查表找出空間系數sin?茲與cos?茲;循環累加控制器完成對各分度下反投影結果的歸約過程。

2.2 并行流水線處理結構
    基于各個分度下反投影過程的不相關性,在FPGA內設計一種基于分度的并行流水線處理結構,如圖5所示。數據控制接口以及時序狀態控制模塊完成對輸入數據的分配調度,通過多條反投影流水線并行計算后,由循環歸約單元完成反投影結果的歸約。

    假如投影分度數為360,理想情況是在FPGA內部實現360條并行的反投影流水線,但由于FPGA片內資源的限制無法達到如此高的并行性,因此需要對每一次并行計算結果進行存儲,并完成累加計算。設計循環歸約單元完成上述操作。當有N條并行流水線并行計算
    
    在FPGA內設計時,預先算出該公因式的值,然后通過移位寄存的方法進行延遲同步,使之在相應的節拍打入到指定的計算單元。雖然這樣增加了乘法運算,但是將三次除法運算優化為一次,節省了大量的資源。表1給出了優化前后資源占有情況對比。

    通過優化,在XC5VLX330 FPGA內部可以并行14條反投影流水線,相比優化以前,流水線數增加1倍。
3 實驗結果與分析
    通過編寫Verilog語言程序,在XC5VLX330 FPGA上進行綜合仿真,采取14條并行反投影流水線對Shepp-Logan標準體模進行重建,得到圖6所示結果。

    圖6(a)為CPU重建圖像的一個切片,圖6(b)為FPGA加速重建的圖像切片,圖6(c),圖6(d)分別為圖6(a),圖6(b)切片圖像中心橫線的統計圖,從圖中可以看出FPGA加速重建結果的精度達到要求。表2給出FPGA與CPU對不同規模數據進行重建時速度對比,計算機CPU為Inter Xeon E5430 2.66 GB,內存為16 GB。

    可以看出,通過FPGA加速FDK算法中的反投影過程加速比達到了115,具有顯著效果。獲得加速比的原因由FPGA的體系結構所決定,其基于數據流的處理方式脫離了指令的操作,保證每一個時鐘周期都是用來計算。當采取多條流水線并行處理時,加速比進一步提高,加速比與在FPGA內并行流水線數目成正比。
    本文在FPGA上實現了對三維CT重建過程的加速。針對FDK算法中計算復雜度最高的反投影過程,通過雙組奇偶雙口RAM的緩存結構實現了無等待流水線,達到每一個時鐘周期可更新一個重建點的速度。另外通過優化電路設計降低了單條流水線的資源占有率,在XC5VLX330上實現了14條流水線的并行處理,在保證重建圖像質量的同時,取得了115倍的加速比。在利用FPGA實現CT重建加速時,影響加速效果的主要因素是FPGA內部資源利用率以及數據傳輸效率,隨著未來FPGA以及存儲器技術的發展,FPGA可以實現更快的CT重建速度。
參考文獻
[1] 包尚聯.現代醫學影像物理學[M].北京:北京大學醫學出版社,2003.
[2] 劉佳,焦斌亮.FPGA的發展趨勢及其新應用[J].電子技術,2008(4).
[3] LEESER M.Parallel-beam backprojection:an FPGA implementation optimized for medical imaging[J].Proc of the Tenth Int.Symposium on FPGA.2002(2):217-226.
[4] GODDARD I.High-speed cone-beam reconstruction:an embedded systems approach[J].Proceedings of SPIE,2003:483-491.
[5] Benno Heig.High-speed reconstruction for C-arm computed tomography[C].Proceedings of the 9th International Meeting on Fully Three-Dimensional Image Reconstruction in Radiology and Nuclear Medicine.2008:25-28.
[6] Nikhil Subramanian.A C-to-FPGA solution for accelerating  tomographic reconstruction[D].University of Washington,
     2009.
[7] 張劍,陳志強.三維錐形束CT成像FDK重建算法發展綜述[J].中國體視學與圖像分析,2005(2):116-121.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 久久精品一区二区三区中文字幕 | 久久久久久麻豆 | 天天夜碰日日摸日日澡 | 亚洲欧美日韩国产综合 | 欧美成人激情在线 | 97超级碰| 天堂在线国产 | 男女性接交无遮挡免费看视频 | 天天色成人网 | 午夜爱爱毛片xxxx视频免费看 | 国产精品欧美亚洲韩国日本99 | 精品导航第一导航 | 国产成人精品无缓存在线播放 | 天天干天天日天天射天天操毛片 | 91精品国产闺蜜国产在线 | 日日摸人人看97人人澡 | 日本免费一区二区三区在线看 | 黄网站色在线视频免费观看 | 免费h黄肉动漫在线观看 | 一区二区亚洲视频 | 小雪婷的性欢日记h全文 | 一级视频免费观看 | 久久亚洲国产成人亚 | 怡红院视频在线 | 视频在线你懂的 | 免费看h片的网站 | 我不卡伦理 | 在线视频亚洲欧美 | 九九热视频在线观看 | 欧美精品午夜久久久伊人 | 天天爱天天插 | 一本久道久久综合中文字幕 | 在线成人a毛片免费播放 | 天天操夜夜操免费视频 | 99精品视频在线免费观看 | 国产精品成人一区二区 | 青草青青在线视频 | 天天射天天 | 一区二区午夜 | 麻豆视频传媒二区 | 在线观看理论片免费韩国 |