韓韜,張俊勇
(1.陜西國(guó)防工業(yè)職業(yè)技術(shù)學(xué)院機(jī)械工程學(xué)院,陜西西安,710300;2.陜西國(guó)防工業(yè)職業(yè)技術(shù)學(xué)院智能制造學(xué)院,陜西西安,710300)
超聲成像技術(shù)是利用超聲信號(hào)進(jìn)入人體器官,會(huì)產(chǎn)生了不同的反射和衰減,通過(guò)成像系統(tǒng)以波形或圖像的方式將超聲信號(hào)數(shù)據(jù)顯示出來(lái),以此來(lái)進(jìn)行各種疾病診斷的檢查方法。
血管內(nèi)超聲技術(shù)是傳統(tǒng)超聲成像技術(shù)的其中一種,主要運(yùn)用于冠狀動(dòng)脈系統(tǒng)的診斷,該技術(shù)出現(xiàn)的時(shí)間較短,它是通過(guò)專(zhuān)門(mén)的心導(dǎo)管將微型超聲探頭深入到心血管腔內(nèi),發(fā)出超聲信號(hào)經(jīng)過(guò)心血管反射獲得回波信號(hào),通過(guò)回波信號(hào)的分析處理最終顯示心血管橫截面和血流的圖形,經(jīng)過(guò)分析能夠發(fā)現(xiàn)血管內(nèi)可能出現(xiàn)的鈣化斑塊等病變,輔助醫(yī)生作出診斷[1]。
現(xiàn)代醫(yī)學(xué)超聲檢測(cè)設(shè)備中,B型超聲成像系統(tǒng)的應(yīng)用是最多最廣泛的,而血管內(nèi)超聲成像系統(tǒng)除了前端的特殊的介入式的導(dǎo)管以及加上了中間負(fù)責(zé)回撤機(jī)械控制裝置外,其他部分與B型超聲成像系統(tǒng)原理一樣,但是該系統(tǒng)的應(yīng)用場(chǎng)合有了很大的不同。血管內(nèi)超聲系統(tǒng)主要用在心血管疾病的診斷并且需要將超聲導(dǎo)管置入血管中進(jìn)行介入式的診斷,只有這樣才能顯示血管橫截面的圖像來(lái)進(jìn)行判斷。因此,血管內(nèi)超聲系統(tǒng)的信號(hào)處理在整個(gè)系統(tǒng)工作的過(guò)程中是非常重要的,它的好壞直接決定著最終所獲得的超聲圖像的質(zhì)量和分辨率等。
血管內(nèi)超聲成像系統(tǒng)主要由血管內(nèi)超聲導(dǎo)管及換能器、機(jī)械控制裝置、超聲發(fā)射單元和信號(hào)處理單元等四部分組成,如圖1所示。其中,信號(hào)處理單元主要負(fù)責(zé)對(duì)超聲回波信號(hào)進(jìn)行一系列信號(hào)處理。
圖1 血管內(nèi)超聲成像系統(tǒng)組成部分
血管內(nèi)超聲導(dǎo)管和超聲換能器組合在一起,通過(guò)系統(tǒng)的超聲發(fā)射單元發(fā)射超聲激勵(lì)信號(hào),經(jīng)過(guò)機(jī)械控制裝置傳遞給血管內(nèi)超聲導(dǎo)管和超聲換能器,反射的回波超聲信號(hào)將通過(guò)機(jī)械控制裝置傳遞給系統(tǒng)的信號(hào)處理單元,將進(jìn)行超聲回波數(shù)據(jù)的信號(hào)處理流程[2]。
對(duì)于血管內(nèi)超聲成像系統(tǒng),信號(hào)處理單元將進(jìn)行一系列信號(hào)處理過(guò)程,血管內(nèi)超聲信號(hào)的處理按照從前到后的順序依次是動(dòng)態(tài)濾波、包絡(luò)檢波、對(duì)數(shù)壓縮、下采樣和數(shù)據(jù)存儲(chǔ)。具體順序如圖2所示。
圖2 血管內(nèi)超聲成像系統(tǒng)的信號(hào)處理過(guò)程
血管內(nèi)超聲信號(hào)在傳播過(guò)程中會(huì)有散射、擴(kuò)散和被血管組織吸收等情況,里面有很多無(wú)用信號(hào),這都會(huì)導(dǎo)致超聲信號(hào)衰減,會(huì)有干擾信號(hào)產(chǎn)生,如果不及時(shí)過(guò)濾掉干擾信號(hào),就會(huì)影響最終的成像效果,從而就降低醫(yī)生的診斷效率。有關(guān)資料顯示,在血管內(nèi)超聲信號(hào)頻率是1MHz~15MHz時(shí),超聲信號(hào)被人體血管等組織吸收的部分與超聲頻率成正比,它的吸收衰減系數(shù)是0.5dB /(cm *MHz)至3.5 dB /(cm*MHz)[3]。通過(guò)血管內(nèi)超聲成像系統(tǒng)采集的血管內(nèi)超聲回波信號(hào)的中心頻率和系統(tǒng)超聲探測(cè)的深度成反比,頻率將隨探測(cè)深度的增加而不斷降低。然后,動(dòng)態(tài)濾波是超聲信號(hào)處理過(guò)程中的一個(gè)非常關(guān)鍵的環(huán)節(jié),這個(gè)環(huán)節(jié)將會(huì)直接影響到超聲回波信號(hào)在探測(cè)深度內(nèi)的分辨力。
由于動(dòng)態(tài)濾波對(duì)于血管內(nèi)超聲成像系統(tǒng)很關(guān)鍵,所以需要本文設(shè)計(jì)了一組動(dòng)態(tài)濾波器,根據(jù)需要設(shè)計(jì)好濾波器參數(shù),當(dāng)回波深度不斷增加該濾波器的中心頻率隨會(huì)降低,濾波器的參數(shù)設(shè)置也會(huì)動(dòng)態(tài)變化,通過(guò)合理設(shè)置濾除掉高頻或者低頻的各種干擾信號(hào),從而完成動(dòng)態(tài)濾波。
濾波器的種類(lèi)可分為兩類(lèi),分別是經(jīng)典濾波器和現(xiàn)代濾波器。經(jīng)典濾波器是假設(shè)輸入信號(hào)x(n)的有價(jià)值部分和想要去除的部分各自占有不一樣的頻帶,所以當(dāng)x(n)經(jīng)過(guò)一個(gè)線(xiàn)性的系統(tǒng)后可以將不需要的部分有效地除掉。假如信號(hào)和噪聲存在重疊,那經(jīng)典濾波器也就會(huì)無(wú)能為力?,F(xiàn)代濾波器的理論研究的主要是從含有噪聲的信號(hào)數(shù)據(jù)中計(jì)算出數(shù)據(jù)的特定的特征。通過(guò)相關(guān)統(tǒng)計(jì)分析出一套最合適的估值算法,再用硬件或者軟件去實(shí)現(xiàn),在超聲成像系統(tǒng)的工作過(guò)程中,就是需要一個(gè)數(shù)字濾波器將一些無(wú)用的噪聲徹底的濾除掉。
本文主要研究的濾波器為現(xiàn)代濾波器,它可以按不同方式分類(lèi)。本文設(shè)計(jì)的動(dòng)態(tài)濾波器主要如果按處理信號(hào)種類(lèi)分為模擬濾波器和數(shù)字濾波器兩種;如果按照所通過(guò)信號(hào)的頻段分為低通濾波器、高通濾波器、帶通濾波器和帶阻濾波器四種。
對(duì)于血管內(nèi)超聲成像系統(tǒng)需要選擇一組帶通濾波器,該濾波器的中心頻率隨回波深度的增加而逐漸降低,它可以在尋找存有可用信息的回波信號(hào)的同時(shí),能夠?yàn)V除以低頻為主的強(qiáng)回聲信號(hào)和以高頻為主的干擾信號(hào)。
數(shù)字濾波器還能分為無(wú)限沖激相應(yīng)濾波器(Infinite Impulse Response,IIR)和有限沖激響應(yīng)濾波器(Finite Im pulse Response,FIR)。無(wú)限沖激響應(yīng)濾波器屬于數(shù)位濾波器,簡(jiǎn)稱(chēng)IIR濾波器。由于無(wú)限脈沖響應(yīng)濾波器存在反饋回路,因此對(duì)于脈沖輸入響應(yīng)的信號(hào)是無(wú)限連續(xù)的。有限沖激響應(yīng)濾波器是數(shù)字濾波器的一種,簡(jiǎn)稱(chēng)FIR濾波器。輸入信號(hào)經(jīng)過(guò)線(xiàn)性時(shí)不變系系統(tǒng)輸出的過(guò)程是一個(gè)輸入信號(hào)與單位脈沖響應(yīng)進(jìn)行線(xiàn)性卷積的過(guò)程。
本文設(shè)計(jì)的動(dòng)態(tài)濾波器選擇有限沖激響應(yīng)FIR濾波器,該濾波器有三個(gè)優(yōu)點(diǎn),第一個(gè)是信號(hào)輸出穩(wěn)定,第二個(gè)是容易實(shí)現(xiàn)線(xiàn)性相位,第三個(gè)是允許設(shè)計(jì)多通帶濾波器。因此,本文設(shè)計(jì)了基于FPGA的FIR濾波器來(lái)對(duì)血管內(nèi)超聲信號(hào)進(jìn)行濾波處理,該動(dòng)態(tài)濾波器是基于分布式算法原理。
FIR濾波器可采用分布式算法,該算法是1973年由Croisier被提出來(lái)的。它主要利用只讀存儲(chǔ)器濾波中的乘積和運(yùn)算轉(zhuǎn)換變?yōu)榧?減法、移位和查找表操作,用FPGA實(shí)現(xiàn)很簡(jiǎn)易方便,所以在超聲圖像信號(hào)處理中很重要。
算法結(jié)構(gòu)簡(jiǎn)要說(shuō)明如下:
設(shè):
其中c(n)為系數(shù),N是正整數(shù),M是數(shù)據(jù)格式的字長(zhǎng),n是變量的二進(jìn)制位。
公式2帶入公式1得:
利用FPGA主要實(shí)現(xiàn)式(3)的分布式計(jì)算過(guò)程:查找表內(nèi)容可為累加值用變量x(n)分別用N個(gè)移位寄存器存貯,以x(0),x(1)...作為查找表的輸入地址,B次查詢(xún)后把結(jié)果加權(quán)累加,這樣便得到了式乘積和的值[4]。
乘累加運(yùn)算是DSP算法的有效途徑,而分布式算法則能夠大大提高乘累加運(yùn)算的效能[5]。根據(jù)以上計(jì)算公式,計(jì)算式中括號(hào)的每一乘積項(xiàng)代表著輸入變量的某一位與常量的二進(jìn)制“與”操作,加號(hào)代表著算術(shù)和操作,指數(shù)因子代表括號(hào)中的值加權(quán)。這是分布式算法的查找表,假如先制作一個(gè)查找表,此表存儲(chǔ)著括號(hào)中所有可能的組合值,就可以通過(guò)所有輸入變量相對(duì)應(yīng)位的組合向量(XMn,X(M-1)n……X1n)對(duì)該表進(jìn)行尋址[5],該查找表稱(chēng)為DALUT。DALUT的構(gòu)造規(guī)則如表1所示。
表1 DALUT查找表的構(gòu)造規(guī)則
在仿真實(shí)驗(yàn)時(shí),先利用MATLAB軟件仿真獲取濾波器的參數(shù),確定濾波器類(lèi)型,根據(jù)MATLAB里的設(shè)定的帶通濾波器參數(shù),基于FPGA設(shè)計(jì)調(diào)用程序設(shè)計(jì)出項(xiàng)目所需的FIR帶通濾波器。
本設(shè)計(jì)中的動(dòng)態(tài)濾波器使用MATLAB的濾波器專(zhuān)用設(shè)計(jì)工具FDA模塊,該模塊具有可視化界面,設(shè)定好參數(shù)后可以設(shè)計(jì)出各種類(lèi)型的濾波器。
如圖3所示,本文設(shè)計(jì)的帶通濾波器的利用RLC諧振原理,通過(guò)電阻、電感和電容組合產(chǎn)生,允許特定頻率段的波通過(guò)同時(shí)屏蔽其它頻率的波段。
圖3 帶通濾波器電路原理圖
利用MATLAB軟件的工具包Fdatool進(jìn)行仿真,對(duì)于血管內(nèi)超聲信號(hào)處理電路需要設(shè)計(jì)一種FIR帶通濾波器。首先通過(guò)軟件設(shè)定濾波器的采樣頻率是200MHz,中心頻率是32MHz,上限截止頻率是80MHz,下限截止頻率是10MHz,超聲信號(hào)的采樣頻率是200MHz,上限截止頻率和下限截止頻率的衰減為±3dB,如圖4所示,縱軸為濾波器幅度,橫軸為濾波器頻率,濾波器只通過(guò)上下截止頻率之間的信號(hào),因此該仿真濾波器實(shí)現(xiàn)了帶通效果[6]。
圖4 FIR帶通濾波器幅頻關(guān)系圖
硬件利用Altera公司的Quartus II軟件調(diào)用IP核,根據(jù)MATLAB軟件里的信號(hào)仿真結(jié)果設(shè)定參數(shù),基于FPAG設(shè)計(jì)FIR動(dòng)態(tài)濾波器實(shí)現(xiàn)帶通濾波并進(jìn)行硬件仿真。
(1)建立頂層文件并啟動(dòng)IP核
在FPGA環(huán)境中創(chuàng)建一個(gè)工程文件,類(lèi)型是頂層文件,能夠充分調(diào)研FPGA的IP核。
(2)設(shè)置濾波器具體參數(shù)
動(dòng)態(tài)濾波器的硬件基本參數(shù)如圖5所示,硬件FPGA選擇Cyclone(颶風(fēng))系列分布式算法,結(jié)構(gòu)為完全平行濾波器,設(shè)置流水線(xiàn)級(jí)數(shù)為3,能夠合理利用FPGA資源與兼顧信號(hào)處理效率和速度,級(jí)數(shù)越高處理速度越快,占用的FPGA的資源就越多,數(shù)據(jù)存儲(chǔ)在器件的邏輯單元[7]。
圖5 FIR動(dòng)態(tài)濾波器基本參數(shù)顯示圖
項(xiàng)目的仿真實(shí)驗(yàn)以設(shè)計(jì)32階濾波器為例,根據(jù)上圖設(shè)定好的動(dòng)態(tài)濾波器類(lèi)型、結(jié)構(gòu)等參數(shù),來(lái)設(shè)計(jì)一種32階的動(dòng)態(tài)濾波器,如圖6所示。
圖6 32階動(dòng)態(tài)濾波器
(3)仿真測(cè)試
本文設(shè)計(jì)的動(dòng)態(tài)濾波器是在在Altera軟件中利用ModelSim進(jìn)行了仿真,假如輸入信號(hào)數(shù)據(jù)依次為7,3,1...時(shí),就會(huì)得到仿真輸出為35,29,32,16...,與乘累加方式結(jié)果完全一致。對(duì)于容量較小的超聲數(shù)據(jù)來(lái)說(shuō),分布式算法的速度遠(yuǎn)遠(yuǎn)高于乘累加運(yùn)算[8]。
如圖7所示,filer_in標(biāo)記為濾波之前輸入的信號(hào)波形,filter_out標(biāo)記為濾波之后輸出的信號(hào)波形,從圖中可看出該動(dòng)態(tài)濾波器的濾波效果明顯,濾除了低頻和高頻信號(hào),消除了很多噪聲和干擾信號(hào),留下了最具價(jià)值的頻率分量,從而得到了最佳的信噪比,提升最終獲得的超聲圖像的分辨率,并且處理后信號(hào)的毛刺很小[9]。
圖7 濾波前和濾波后的信號(hào)對(duì)比
本文基于FPGA設(shè)計(jì)了一種血管內(nèi)超聲成像系統(tǒng)的動(dòng)態(tài)濾波器,該動(dòng)態(tài)濾波器為FIR帶通濾波器,通過(guò)實(shí)驗(yàn)仿真,首先利用MATLAB得到了動(dòng)態(tài)濾波器的參數(shù)如何設(shè)置,再利用該濾波器能夠有效的對(duì)超聲回波信號(hào)進(jìn)行濾波,消除干擾和噪聲信號(hào),得到最佳信噪比,提升血管內(nèi)超聲圖像分辨率,滿(mǎn)足系統(tǒng)的設(shè)計(jì)要求,仿真結(jié)果表明基于FPGA采用分布式算法實(shí)現(xiàn)的動(dòng)態(tài)濾波器硬件規(guī)模較小,消耗邏輯單元數(shù)量少,具有實(shí)時(shí)性好,信號(hào)轉(zhuǎn)換快速快,可靠性高的特點(diǎn)。