洪學(xué)文,秦學(xué)鑒(.廈門大學(xué)信息科學(xué)與技術(shù)學(xué)院;.廈門大學(xué)航空航天學(xué)院,福建 廈門 36005)
?
基于多核DSP的相干斷層掃描成像技術(shù)研究
洪學(xué)文1,秦學(xué)鑒2
(1.廈門大學(xué)信息科學(xué)與技術(shù)學(xué)院;2.廈門大學(xué)航空航天學(xué)院,福建 廈門 361005)
摘要:光學(xué)相干斷層掃描(Optical Coherence Tomography, OCT)是一種基于邁克爾遜干涉儀結(jié)構(gòu)的層析成像技術(shù),能對生物組織內(nèi)部微觀結(jié)構(gòu)進(jìn)行微米量級的高分辨率的非侵入實時成像。本文將OCT與計算機(jī)多核技術(shù)相結(jié)合,通過德州儀器多核DSP進(jìn)行數(shù)據(jù)處理,然后傳回計算機(jī)進(jìn)行成像。所成圖像可用來觀察器官病灶等醫(yī)學(xué)研究。
關(guān)鍵詞:光學(xué)相干層析成像;多核技術(shù);醫(yī)學(xué)
OCT是一種基于寬帶光的低相干特性對生物活體組織的內(nèi)部微觀結(jié)構(gòu)進(jìn)行分辨率斷層成像的技術(shù)。它依靠光源的時間相干性,利用干涉儀對生物組織進(jìn)行空間上的二維或三維掃描成像。自1991年David Huang 等人首次用這項技術(shù)對活體人眼的視網(wǎng)膜的顯微結(jié)構(gòu)進(jìn)行成像以來,OCT一直是生物醫(yī)學(xué)和材料檢測等領(lǐng)域的研究熱點(diǎn)之一,國內(nèi)在這方面的研究也很活躍,近年來已得到了迅速的發(fā)展。
一般的OCT系統(tǒng)有兩種掃描方式,分別為A掃描方式和B掃描方式。A掃描方式是只移動參考臂,假設(shè)以勻速V移動參考臂,所獲得的干涉信號為:。其中,和是所獲得的干涉信號的振幅和相位,是因移動參考臂在參考產(chǎn)生的多普勒頻移,通過調(diào)解這個干涉信號,記錄。由于采用的是低相干長度的光源,所以可以真實地反映出對樣品的探測深度,可獲得組織反射率相對于探測深度的圖形。B掃描方式是在進(jìn)行連續(xù)A掃描方式時,移動樣品臂,是探測光束掃過整個組織表面,從而獲得組織背景散射的橫截面圖[1]。
使用的原始數(shù)據(jù)樣本集腫瘤和皮膚數(shù)據(jù)是由在伊利諾伊大學(xué)厄巴納香檳的Boppart博士的實驗室提供的。每一幀的原始數(shù)據(jù)包括1000掃描線,2048樣本/掃描線。最初這個輸入數(shù)據(jù)是存儲在DDR。其中,數(shù)據(jù)以輸入數(shù)據(jù)采集間隔25幀/秒的速度被輸入(間隔可以根據(jù)程序和內(nèi)存需求而自定義),然后通過各模塊處理,最終的圖像顯示在電腦上。
軟件組件,包括多核軟件開發(fā)工具包(MCSDK)、編解碼引擎(CE)、數(shù)字媒體應(yīng)用程序接口(DMAI)等,iUniversal APIs可由開發(fā)者為這種系統(tǒng)創(chuàng)建應(yīng)用程序。
多核軟件開發(fā)工具包(MCSDK)包括簡化多核開發(fā)的關(guān)鍵組件,其中有芯片支持庫,外設(shè)驅(qū)動程序,平臺軟件(PDK),網(wǎng)絡(luò)開發(fā)工具包(NDK)等。
多核數(shù)字信號處理器軟件應(yīng)用程序是基于主/從模式,在核心0作為集中控制核心即主核心,核心1至核心7充當(dāng)從動核。核心0作為管理者協(xié)調(diào)同步性和設(shè)置緩沖區(qū)的指針。信號處理模塊運(yùn)行在核心1 - 5。核6和7是空閑的。核心0上的軟件應(yīng)用程序集成設(shè)計以下功能模塊:前端接口,中間控制器,中間處理過程和后端接口。
消息提供指針數(shù)據(jù)和觸發(fā)任務(wù)的接收函數(shù)的執(zhí)行。實際的消息緩沖區(qū)設(shè)置在共享內(nèi)存,消息發(fā)送方和接收方均可以訪問到消息。在這種情況下,process_scatter()掛起一個新的輸入幀[2]。數(shù)據(jù)可用時,process_scatter()從堆分配內(nèi)存給消息,并將消息指針賦給輸入數(shù)據(jù)。使用MessageQ_put阻塞調(diào)用,process_scatter()將輸入數(shù)據(jù)指針傳遞給process_gather()。process_gather()使用相應(yīng)的oct_wait在每個核心信號處理過程中掛起。一旦接收到一個新的框架,這些任務(wù)調(diào)用UNIVERSAL_process編解碼引擎提供的API,來調(diào)用通過oct處理算法。一旦數(shù)據(jù)被處理,octCluster()使用MessageQ_put API將輸出數(shù)據(jù)指針傳遞給Send_data_to_host()。Send_data_to_host()確保數(shù)據(jù)維護(hù)原子性,以便輸入數(shù)據(jù)對應(yīng)于一個特定的框架總是在一起。
process_scatter(),process_gather()和Send_data_2_host()都運(yùn)行在主核心0上,只有特定的算法任務(wù)在核心1到核心n上運(yùn)行。重要的是要注意,各核間的信息處理中心的處理基于引擎下編解碼器渠道和使用MessageQ,程序員可以不知道這一事實,簡單地調(diào)用MessageQ api用于各核間傳遞數(shù)據(jù)的指針[3]。
電腦讀取參數(shù)文件, 通過RDSP使用靜態(tài)IP傳送和接收TCP-IP套接字。在數(shù)據(jù)處理開始前,DSP使用TFTP服務(wù)器運(yùn)行在個人電腦上下載數(shù)據(jù)文件。電腦得到了DSP數(shù)據(jù)處理并顯示。幀速率可以在參數(shù)文件中修改。成像結(jié)果如圖2。
參考文獻(xiàn):
[1]薛莉.光學(xué)相干層析成像系統(tǒng)的關(guān)鍵技術(shù)研究[J].2009.
[2]高峰.基于DSP的并行頻域OCT圖像預(yù)處理系統(tǒng)[J].2008.
[3]鄒傳民.基于Cortex-M4的嵌入式光學(xué)相干層析成像系統(tǒng)的研究[J].2013.
DOI:10.16640/j.cnki.37-1222/t.2016.13.243
作者簡介:洪學(xué)文(1994-),男,河北滄州人,本科,研究方向:計算機(jī)體系及成像。