基于cuda架構的gpu加速x光圖像重建方法和裝置制造方法
【專利摘要】本發明公開了一種基于CUDA架構的GPU加速X光圖像重建方法和裝置,所述方法通過將獲取的X光圖像投影數據通過CPU傳輸至CPU內存中;通過CPU將所述X光圖像投影數據分割為多塊投影數據區域,且使相鄰的投影數據區域存在部分重疊,并將所述多塊投影數據區域發送至GPU內存;通過GPU并行核函數加速shiftandadd算法對每塊投影數據區域進行層析重建,得到相應的局部重建圖像;將局部重建圖像拼接合成為重建圖像;通過CUDA架構下的GPU硬件加速實現并行shiftandadd算法,大幅度提高了運算速度并同時節省了成本,給用戶帶來了大大的方便。
【專利說明】基于CUDA架構的GPU加速X光圖像重建方法和裝置
【技術領域】
[0001]本發明涉及醫療圖像處理領域,尤其涉及的是一種基于CUDA架構的GPU加速X光圖像重建方法和裝置。
【背景技術】
[0002]隨著X光設備的不斷發展,現有的X射線裝置通過球管和平板,在固定SID (X線裝置系統標識碼系統標識)的情形下,通過線陣球管的一次掃描發射射線,獲得多幀X光圖像。然后針對多幀X光圖像通過Shift and add算法重建出斷層圖像。而現有采用的是傳統串行shift and add算法或FPGA硬件加速shift and add算法來進行圖像重建,但串行shift and add算法來進行圖像重建的方法耗時過長,而FPGA硬件加速shift and add算法來進行圖像重建的方法硬件成本過高。現有的X光圖像重建技術中存在因數據量過大導致的算法耗時過長、以及硬件成本過高的問題,給用戶帶來了大大的不便。
[0003]因此,現有技術還有待于改進和發展。
【發明內容】
[0004]本發明要解決的技術問題在于,針對現有技術的上述缺陷,提供一種基于CUDA架構的GPU加速X光圖像重建方法和裝置,旨在解決現有的X光圖像重建技術中因數據量過大導致的算法耗時過長、以及硬件成本過高的問題。
[0005]本發明解決技術問題所采用的技術方案如下:
一種基于CUDA架構的GPU加速X光圖像重建方法,其中,包括以下步驟:
A、將獲取的X光圖像投影數據通過CPU傳輸至CPU內存中;
B、通過CPU將所述X光圖像投影數據分割為多塊投影數據區域,且使相鄰的投影數據區域存在部分重疊,并將所述多塊投影數據區域發送至GPU內存;
C、通過GPU并行核函數加速shiftand add算法對每塊投影數據區域進行層析重建,得到相應的局部重建圖像;
D、將局部重建圖像拼接合成為重建圖像。
[0006]所述的基于CUDA架構的GPU加速X光圖像重建方法,其中,在所述步驟A之前還包括:
A10、通過CPU對獲得的X光圖像投影數據進行預處理,并對線程進行分支預測。
[0007]所述的基于CUDA架構的GPU加速X光圖像重建方法,其中,所述對獲得的X光圖像投影數據進行預處理具體包括:
All、計算層析圖像的像素之間的間距;
A12、計算兩相鄰源點對層析圖像同一像素點所發的X射線被探測器平板所接收的位置之間的間距;
A13、計算同一源點對層析圖像兩相鄰像素點所發X射線被探測器平板所接受的位置之間的間距。[0008]所述的基于CUDA架構的GPU加速X光圖像重建方法,其中,所述對線程進行分支預測具體包括:
A21、計算重建層析圖像中心單個像素點所需源點的個數;
A22、根據層析圖像不同位置處像素點所述源點的個數,通過CPU劃分出層析圖像的中心區域,并去除邊緣區域。
[0009]所述的基于CUDA架構的GPU加速X光圖像重建方法,其中,所述步驟B還包括: B1、將CPU內存中的X光圖像投影數據分割為大小相等的多塊投影數據區域,相鄰的投
影數據區域設置為部分重疊。
[0010]所述的基于CUDA架構的GPU加速X光圖像重建方法,其中,所述步驟B滿足:
【權利要求】
1.一種基于CUDA架構的GPU加速X光圖像重建方法,其特征在于,包括以下步驟: A、將獲取的X光圖像投影數據通過CPU傳輸至CPU內存中; B、通過CPU將所述X光圖像投影數據分割為多塊投影數據區域,且使相鄰的投影數據區域存在部分重疊,并將所述多塊投影數據區域發送至GPU內存; C、通過GPU并行核函數加速shiftand add算法對每塊投影數據區域進行層析重建,得到相應的局部重建圖像; D、將局部重建圖像拼接合成為重建圖像。
2.根據權利要求1所述的基于CUDA架構的GPU加速X光圖像重建方法,其特征在于,在所述步驟A之前還包括: A10、通過CPU對獲得的X光圖像投影數據進行預處理,并對線程進行分支預測。
3.根據權利要求2所述的基于CUDA架構的GPU加速X光圖像重建方法,其特征在于,所述對獲得的X光圖像投影數據進行預處理具體包括: All、計算層析圖像的像素之間的間距; A12、計算兩相鄰源點對層析圖像同一像素點所發的X射線被探測器平板所接收的位置之間的間距; A13、計算同一源點對層析圖像兩相鄰像素點所發X射線被探測器平板所接受的位置之間的間距。
4.根據權利要求2所述的基于CUDA架構的GPU加速X光圖像重建方法,其特征在于,所述對線程進行分支預測具體包括: A21、計算重建層析圖像中心單個像素點所需源點的個數; A22、根據層析圖像不同位置處像素點所述源點的個數,通過CPU劃分出層析圖像的中心區域,并去除邊緣區域。
5.根據權利要求1所述的基于CUDA架構的GPU加速X光圖像重建方法,其特征在于,所述步驟B還包括: B1、將CPU內存中的X光圖像投影數據分割為大小相等的多塊投影數據區域,相鄰的投影數據區域設置為部分重疊。
6.根據權利要求5所述的基于CUDA架構的GPU加速X光圖像重建方法,其特征在于,所述步驟B滿足:
7.根據權利要求5所述的基于CUDA架構的GPU加速X光圖像重建方法,其特征在于,所述步驟C具體包括; Cl、分配CUDA核函數的線程塊數以及每個線程塊所包含的線程數,將每個線程與每個像素點一一對應,進行所有像素點的并行運算; C2、對每一個線程進行平移、累加操作得到對應的局部重建圖像; C3、通過CPU控制多個CUDA流的運行順序,同步運行當前CUDA流所進行的數據復制運算和相鄰CUDA流所進行的核函數運算。
8.一種基于CUDA架構的GPU加速X光圖像重建裝置,其特征在于,包括: 傳輸模塊,用于將獲取的X光圖像投影數據通過CPU傳輸至CPU內存中; 分割模塊,用于將所述X光圖像投影數據分割為多塊投影數據區域,且使相鄰的投影數據區域存在部分重疊,并將所述多塊投影數據區域發送至GPU內存; 重建模塊,用于通過GPU并行核函數加速shift and add算法對每塊投影數據區域進行層析重建,得到相應的局部重建圖像; 拼接模塊,用于將局部重建圖像拼接合成為重建圖像。
9.根據權利要求8所述的基于CUDA架構的GPU加速X光圖像重建裝置,其特征在于,還包括: 預處理模塊,用于通過CPU對獲得的X光圖像投影數據進行預處理,并對線程進行分支預測。
10.根據權利要求8所述的基于CUDA架構的GPU加速X光圖像重建裝置,其特征在于,所述分割模塊,還用于將CPU內存中的X光圖像投影數據分割為大小相等的多塊投影數據區域,且相鄰的投影數`據區域有部分重疊。
【文檔編號】G06T5/50GK103700123SQ201310704313
【公開日】2014年4月2日 申請日期:2013年12月19日 優先權日:2013年12月19日
【發明者】陳榕齊 申請人:北京國藥恒瑞美聯信息技術有限公司