專利名稱:一種b/m模式超聲圖像顯示方法
技術(shù)領(lǐng)域:
本發(fā)明涉及超聲診斷設(shè)備技術(shù)領(lǐng)域,具體涉及一種B/M模式超聲圖像顯示方法。
背景技術(shù):
目前的B超DSC通常使用硬件來實現(xiàn),那么對于圖像顯示來說,具體的M模式的顯示,也是在硬件中實現(xiàn)的。硬件實現(xiàn)掃描變換,需要由兩個幀存儲器存儲聲束掃描格式的圖象數(shù)據(jù),兩個幀存儲器采用“乒乓”工作方式,當(dāng)一個幀存儲器按聲束掃描時序?qū)懭氘?dāng)前的回波數(shù)據(jù)時,另一個幀存儲器則以顯示時鐘速率讀出數(shù)據(jù),讀出的數(shù)據(jù)經(jīng)過二維線性插補(bǔ)運(yùn)算后得到顯示象素之值。每當(dāng)聲束掃描完成一個周期時,便進(jìn)行兩個幀存儲器的“乒乓”切換。按照顯示時鐘的頻率,每隔一定時間輸出一個顯示象素,而每計算一個顯示象素要求從幀存儲器中讀出四個聲束掃描數(shù)據(jù)。如果這四個數(shù)據(jù)串行讀出的話,要求幀存儲器的工作頻率高達(dá)50MHz以上。為了避免對高速存儲器件的要求,幀存儲器采用一種特殊的結(jié)構(gòu)。每個幀存儲器被分成A1、A2、B1、B2四個子存儲器,分別存放不同線上的不同位置的采樣點(diǎn)。根據(jù)掃描變換器二維線性插補(bǔ)的原理,計算一個顯示象素所需的四個聲束掃描數(shù)據(jù)必分散在A1、A2、B1、B2之中,因此可以從幀存儲器的四個子存儲器中并行讀出。
坐標(biāo)變換一般是通過兩級的查找表實現(xiàn)的。坐標(biāo)變換的輸入是顯示象素的二維序號,其中行號與列號各需10位的二進(jìn)制數(shù)表示。坐標(biāo)變換的輸出是幀存儲器的讀地址以及插值系數(shù)θe與re。如果用一級查找表實現(xiàn)坐標(biāo)變換,此查找表的規(guī)模比較大,當(dāng)顯示模式或顯示深度改變時,這個巨大的查找表也要更換。兩級查表可以避免更換大的查找表。第一級查找表實現(xiàn)x-y坐標(biāo)系到u-v坐標(biāo)系的變換,由于直角坐標(biāo)系之間變換的二維可分離性,只需兩個小查找表分別實現(xiàn)x→u、y→v的變換,不同探頭或不同顯示模式或不同顯示深度下坐標(biāo)變換的差異僅體現(xiàn)在這兩個小查找表的更換上。第二級查找表實現(xiàn)直角坐標(biāo)系u-v到極坐標(biāo)系r-θ的變換,這個變換是與任務(wù)無關(guān)的變換,可以借助通用的坐標(biāo)變換芯片實現(xiàn)。然后使用專門的插值電路進(jìn)行插值,計算出需要顯示位置的像素值,最后送給上層應(yīng)用程序進(jìn)行顯示。
對于M模式,同樣也是經(jīng)過硬件的掃描變換,將M模式的采樣數(shù)據(jù)經(jīng)過插值處理后以圖像的格式送給上層應(yīng)用程序予以顯示。
現(xiàn)有技術(shù)B模式和M模式圖像顯示由硬件實現(xiàn),首先使得硬件電路變得更加龐大復(fù)雜,也使得PCB布板的復(fù)雜度難度和任務(wù)量都加大很多,其次,硬件電路部分需要用于DSC的FPGA(現(xiàn)場可編程單元)處理芯片和存儲器都加大了硬件的成本。而且,由于DSC使用硬件進(jìn)行處理,上層應(yīng)用程序得不到采樣數(shù)據(jù),對于圖像的后處理來說,增加了計算的復(fù)雜度。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種B/M模式超聲圖像顯示方法,克服現(xiàn)有技術(shù)B模式和M模式超聲圖像顯示由硬件實現(xiàn),硬件電路龐雜,PCB板布線復(fù)雜以及上層應(yīng)用程序得不到采樣數(shù)據(jù),圖像后處理計算復(fù)雜的缺陷。
本發(fā)明為解決上述技術(shù)問題所采用的技術(shù)方案為 一種B/M模式超聲圖像顯示方法,包括步驟 A1、確定B模式超聲圖像和M模式超聲圖像在屏幕上的排列方向和顯示比例; A2、利用軟件模塊將B模式超聲圖像顯示在屏幕上; A3、在所述B模式超聲圖像上選取M取樣線; A4、利用軟件模塊將所述M取樣線對應(yīng)的M模式超聲圖像顯示在屏幕上。
所述步驟A2包括步驟 B1、建立插值計算表; B2、根據(jù)所述插值計算表和采樣數(shù)據(jù)計算凸陣掃描區(qū)內(nèi)每個象素的灰度值數(shù)據(jù); B3、將所述灰度值數(shù)據(jù)輸出到屏幕進(jìn)行顯示。
所述步驟B1包括步驟預(yù)先計算凸陣掃描區(qū)內(nèi)每個象素的極坐標(biāo)值,并將所述極坐標(biāo)值存入坐標(biāo)轉(zhuǎn)換表中,根據(jù)所述坐標(biāo)轉(zhuǎn)換表建立所述插值計算表。
所述插值計算表設(shè)為一數(shù)據(jù)結(jié)構(gòu)的賦值集合,所述數(shù)據(jù)結(jié)構(gòu)包括顯示在屏幕上的點(diǎn)的一維坐標(biāo)變量、矯正插值系數(shù)變量、采樣點(diǎn)的位置變量。
所述步驟B2包括步驟所述灰度值數(shù)據(jù)首先存入第一一維數(shù)組中。
所述步驟A4包括步驟 C1、根據(jù)所述M取樣線確定換能器陣元號; C2、將所述換能器陣元號的采樣數(shù)據(jù)存放到M模式采樣數(shù)據(jù)存儲區(qū); C3、讀取所述換能器陣元號的采樣數(shù)據(jù)并進(jìn)行插值計算; C4、將經(jīng)過插值計算得到的M模式灰度值數(shù)據(jù)輸出到屏幕進(jìn)行顯示。
所述M模式灰度值數(shù)據(jù)首先存入第二一維數(shù)組中。
將所述第二一維數(shù)組中的數(shù)據(jù)依次賦值給與M模式顯示像素區(qū)大小對應(yīng)的二維數(shù)組。
本發(fā)明的有益效果為本發(fā)明使用軟件進(jìn)行DSC處理并進(jìn)行B/M模式超聲圖像的顯示,省去了DSC的硬件處理模塊,節(jié)約了硬件成本,縮小了硬件的體積,并且為圖像的后處理提供了極大的方便。
本發(fā)明包括如下附圖 圖1為本發(fā)明采樣數(shù)據(jù)存儲格式示意圖; 圖2為本發(fā)明B模式顯示數(shù)據(jù)的象素坐標(biāo)示意圖; 圖3為本發(fā)明M模式采樣數(shù)據(jù)存儲格式示意圖; 圖4為本發(fā)明B模式和M模式顯示坐標(biāo)參數(shù)示意圖; 圖5為本發(fā)明M取樣線示意圖; 圖6為本發(fā)明B/M模式超聲圖像顯示處理流程圖; 圖7為現(xiàn)有技術(shù)由硬件實現(xiàn)DSC模塊的超聲診斷設(shè)備模塊組成示意圖; 圖8為本發(fā)明由軟件實現(xiàn)DSC模塊的超聲診斷設(shè)備模塊組成示意圖。
圖9為本發(fā)明顯示單獨(dú)B超圖像示意圖; 圖10為本發(fā)明進(jìn)入B/M顯示模式的圖像示意圖; 圖11為本發(fā)明根據(jù)選取的M取樣線顯示M模式超聲圖像示意圖; 圖12為本發(fā)明按上下排列顯示B/M模式超聲圖像示意圖; 圖13為本發(fā)明按左右排列顯示B/M模式超聲圖像示意圖。
具體實施例方式 下面根據(jù)附圖和實施例對本發(fā)明作進(jìn)一步詳細(xì)說明 1、B超和M超的預(yù)處理 采樣數(shù)據(jù)的格式和大小按照圖1所示進(jìn)行存儲,共有Sr行,Sc列,大小為Sr×Sc Byte。每一行上的采樣數(shù)據(jù)均對應(yīng)相同的掃描深度,從第一行到第Sr行,對應(yīng)的掃描深度依次等間隔從零增加到設(shè)定的探頭最大掃描深度。每一列上的采樣數(shù)據(jù)均對應(yīng)相同的掃查角度,從第一列到第Sc列,如圖2和圖4所示,對應(yīng)的掃查角度依次等間隔從-θ0增加到θ0。表1列出了需要獲取、設(shè)定及預(yù)先計算的參數(shù)。
表1 垂距的計算公式 d=r0×cosθ0(1) 坐標(biāo)平移公式 參照圖2可知, 而 由式(2)和式(3)可得 式(4)便是最終用于DSC的坐標(biāo)平移公式。
參照圖2,在各個參數(shù)都確定的情況下,設(shè)從x-y坐標(biāo)系下的坐標(biāo)(x,y)經(jīng)過坐標(biāo)平移之后對應(yīng)的在u-v坐標(biāo)系下的坐標(biāo)為(u,v),而坐標(biāo)(u,v)經(jīng)過坐標(biāo)變換后對應(yīng)在R-θ坐標(biāo)系下的坐標(biāo)為(R,θ),可得坐標(biāo)(u,v)到坐標(biāo)R-θ的變換公式如式(5)所示 設(shè)極徑量化因子為qr,則qr的計算公式如式(6)所示 設(shè)極角量化因子為qθ,則qθ的計算公式如式(7)所示 設(shè)量化后的極坐標(biāo)(Rq,θq),經(jīng)過坐標(biāo)平移和極坐標(biāo)變換后的極坐標(biāo)為(R,θ),則它們之間的關(guān)系如式(8)所示 為了讓極徑和采樣數(shù)據(jù)的編號能夠統(tǒng)一,需要給極徑去偏,設(shè)定極徑去偏常數(shù)為FR,則FR如式(9)所示 為了讓極角的0位置和采樣數(shù)據(jù)的第一列對齊,需要給極角去偏,設(shè)定極角去偏常數(shù)為Fθ,則Fθ如式(10)所示 Fθ=Sc/2(10) 設(shè)量化去偏后的極坐標(biāo)為(Rqf,θqf),經(jīng)過坐標(biāo)平移和極坐標(biāo)轉(zhuǎn)換后的坐標(biāo)為(R,θ),則它們之間的關(guān)系如式(11)所示 M取樣線的概念及用途 M取樣線是顯示在B超圖像上、可以改變位置的一條平行于超聲回波信號的一條線。主要用于確定M超采樣數(shù)據(jù)的位置。在B/M顯示時,M超圖像不僅隨著所探測組織處回波信號的改變而改變,而且隨著M取樣線位置的改變而改變。前者的改變是因為所探測處的組織內(nèi)部的運(yùn)動引起的,而后者則是所探測的組織位置發(fā)生了改變而引起的。因此M取樣線的主要用途就是改變M超所探測組織位置。
M取樣線與B超圖像和M超圖像的關(guān)系 由于M超圖像是將產(chǎn)生超聲脈沖的換能器置于人體表面某一點(diǎn),聲束射入體內(nèi),由組織界面返回的信號在時間軸上加以展開獲得的界面運(yùn)動的軌跡圖,所以醫(yī)生要根據(jù)B超圖像把M取樣線確定在適當(dāng)?shù)奈恢靡垣@取信息量較為豐富的M超圖像。也因此可以說M取樣線是聯(lián)系B超圖像和M超圖像的橋梁。它們之間的關(guān)系如圖5所示。
M超圖像采樣數(shù)據(jù)存放格式 由于M超圖像是根據(jù)M取樣線所確定的超聲換能器的某個陣元所在位置處聲束回波信號在時間軸上加以展開形成的界面運(yùn)動軌跡圖,所以它的采樣數(shù)據(jù)是一條掃描線接著一條掃描線按照時間的先后依次存放在一個存儲器中的。舉例來說,比如某種型號的超聲換能器(超聲探頭)是由128個陣元組成的,在B超圖像上的M取樣線位置經(jīng)過醫(yī)生的選擇確定在第60個陣元處(當(dāng)然醫(yī)生在圖像上是看不到這個信息的,這些是上層應(yīng)用程序?qū)取樣線所在位置代表的陣元序號傳給了底層硬件來實現(xiàn)的),那么M超采樣數(shù)據(jù)存儲器中所存放的數(shù)據(jù)就是由第60個陣元按照時間先后順序排列的掃描線數(shù)據(jù)。根據(jù)M取樣線顯示M模式超聲圖像的具體流程如圖6所示。
2、建立B超圖像的坐標(biāo)轉(zhuǎn)換表 坐標(biāo)轉(zhuǎn)換,其運(yùn)算量非常之大,但是同時又有一定的規(guī)律。如果每次在進(jìn)行坐標(biāo)轉(zhuǎn)換的時候都進(jìn)行一次運(yùn)算,那么將會影響到CPU的耗用,而且會降低幀頻,達(dá)不到實時性的要求。創(chuàng)建一個二維數(shù)組一一二維查找表進(jìn)行坐標(biāo)的轉(zhuǎn)換,將解決上述問題。
在如圖2所示的掃描深度D0下,對應(yīng)的坐標(biāo)轉(zhuǎn)換表的行數(shù)為 考慮到不同的掃描深度都使用同一張坐標(biāo)轉(zhuǎn)換表,就必須找出一個最小的但同時又能滿足所有掃描深度使用情況下的一個坐標(biāo)轉(zhuǎn)換表行數(shù),由于 所以在確定最小行數(shù)的時候,取掃描深度最小值Dmin進(jìn)行計算。
由于顯示像素區(qū)的寬度為W0,而且W0在顯示屏幕確定的情況下也不會發(fā)生變換,所以坐標(biāo)轉(zhuǎn)換表的列數(shù)定為W0。
根據(jù)式(13)可知,坐標(biāo)轉(zhuǎn)換表的行數(shù)由Dmin確定,列數(shù)由W0確定。那么設(shè)坐標(biāo)轉(zhuǎn)換表CTT(Coordinate Transform Table)的行數(shù)為CTTrow,列數(shù)為CTTcol,則 則式(14)為最終確定坐標(biāo)轉(zhuǎn)換表大小的計算公式。
根據(jù)式(1)、式(4)、式(5)、式(11)和式(14),按照輸入坐標(biāo)(x,y)進(jìn)行循環(huán)轉(zhuǎn)換到(Rqf,θqf)即可,其中0≤x<CTTcol,0≤y<CTTrow。
3、建立B超圖像的插值計算表 由雙線性插值運(yùn)算公式可知,要計算極坐標(biāo)點(diǎn)(Rqf,θqf)處的灰度值,就需要該點(diǎn)周圍與之距離最近的四個采樣點(diǎn)的值。求得Rqf的整數(shù)部分,設(shè)為i,求得θqf的整數(shù)部分,設(shè)為j。那么,通過極坐標(biāo)系下的點(diǎn)(i,j)、點(diǎn)(i,j+1)、點(diǎn)(i+1,j)和點(diǎn)(i+1,j+1)四個點(diǎn)的灰度值,即可雙線性插值點(diǎn)(Rqf,θqf)的灰度值。
由式雙線性插值運(yùn)算公式可知,如果設(shè)插值系數(shù)α和β且α=Rqf-i,β=θqf-j,并設(shè)極坐標(biāo)下的點(diǎn)(r,θ)的灰度值為G(r,θ),則 G(Rqf,θqf)=(1-α)×(1-β)×G(i,j)+ (1-α)×β×G(i,j+1)+(15) α×(1-β)×G(i+1,j)+ α×β×G(i+1,j+1) 插值表的內(nèi)容 (1)如圖2所示,將顯示像素區(qū)內(nèi)的凸陣掃描區(qū)像素點(diǎn)(x,y)的坐標(biāo)位置由二維轉(zhuǎn)化為一維,并保存下來。設(shè)為DP(Display Position),則 DP=y(tǒng)×W0+x(16) 特別注意不保存如圖2所示的凸陣掃描區(qū)以外的像素點(diǎn)的坐標(biāo)位置。
(2)保存用到的四個矯正插值系數(shù)(Correctional Coefficient),并將它們從浮點(diǎn)數(shù)轉(zhuǎn)化為WORD(雙字節(jié))整數(shù)。四個插值系數(shù)分別設(shè)為CC1、CC2、CC3、CC4,則 CC1=(1-α)×(1-β)×256(17) CC2=(1-α)×β×256(18) CC3=α×(1-β)×256(19) CC4=α×β×256(20) (3)四個采樣點(diǎn)的位置 保存插值需要的四個采樣點(diǎn)的位置(Sample Points/Position),并將其坐標(biāo)位置由二維轉(zhuǎn)化為一維進(jìn)行保存,四個采樣點(diǎn)的位置分別設(shè)為SP1、SP2、SP3、SP4,則 SP1=i×Sc+j(21) SP2=i×Sc+j+1 (22) SP3=(i+1)×Sc+j(23) SP4=(i+1)×Sc+j+1 (24) 由于該結(jié)構(gòu)包含有顯示在屏幕上的點(diǎn)的一維坐標(biāo)值(DisplayPosition),包含有矯正的插值系數(shù)(Correctional Coefficient),還包含有采樣點(diǎn)的位置(Sample Points/Position),所以簡稱該結(jié)構(gòu)為DPCCSPT(字母“T”代表Table)。該結(jié)構(gòu)的定義如下所示 struct DPCCSPT { int DP; WORD cc1; WORD cc2; WORD cc3; WORD cc4; int P1; int P2; int P3; int P4; }; 使用C++STL中的vector,向內(nèi)存申請一個DPCCSPT類型的vector,申請的變量如下 std::vector<DPCCSPT>FDisplayData 向變量FDisplayData中存放進(jìn)行插值需要的數(shù)據(jù)(Rqf,θqf)是經(jīng)過坐標(biāo)變換表查找出來的極坐標(biāo)值,Rqf的整數(shù)部分為i,θqf的整數(shù)部分為j,α=Rqf-i,β=θqf-j。
由于并不是顯示像素區(qū)的所有坐標(biāo)都有B超圖像的信息,所以要將非凸陣掃描區(qū)的坐標(biāo)位置排除掉,這樣做的目的有二一是減少運(yùn)算量,提高了運(yùn)算速度;二是節(jié)約了內(nèi)存存儲空間。
存放數(shù)據(jù)的條件如下0≤i<Sr并且0≤j<Sc,這樣就可以滿足以上要求。
在滿足上述條件的情況下,向變量FDisplayData中裝入要使用的DPCCSPT結(jié)構(gòu)類型的數(shù)據(jù)。將顯示屏幕坐標(biāo)系的坐標(biāo)全部遍歷一遍,則所有符合條件的DPCCSPT類型的數(shù)據(jù)已經(jīng)全部裝載到了變量FDisplayData中。
遍歷FDisplayData,將其DPCCSPT類型的數(shù)據(jù)自行計算即可得到屏幕顯示位置的灰度值。
4、快速計算進(jìn)行DSC處理 舉例來說,假設(shè)要由FDisplayData中的第k個DPCCSPT類型的數(shù)據(jù)得到顯示屏幕上的一個點(diǎn)的灰度值,進(jìn)行如下計算即可。首先設(shè)屏幕上第m個位置的灰度值為DisGry(m),另根據(jù)式(15)的設(shè)定可得 DisGry(FDisplayData[k].DP)= (FDisplayData[k].cc1*G[FDisplayData[k].P1]+ FDisplayData[k].cc2*G[FDisplayData[k].P2]+ FDisplayData[k].cc3*G[FDisplayData[k].P3]+ FDisplayData[k].cc4*G[FDisplayData[k].P4])>>8 5、M超的插值計算 由圖3可知,由于每一條M超采樣數(shù)據(jù)線將按照一個像素寬度和H1個像素高度顯示在M超圖像區(qū)域,而實際上每條采樣數(shù)據(jù)線上的采樣點(diǎn)數(shù)為Mr(當(dāng)然也等于Sr)個,所以要將Mr個采樣點(diǎn)進(jìn)行插值處理為H1個灰度數(shù)據(jù)值。這里的采樣數(shù)據(jù)上的每個點(diǎn)也是灰度數(shù)據(jù)值,即0~255之間的數(shù)據(jù)(包括0和255)。
M超采樣數(shù)據(jù)的插值處理相對于B超來說較為簡單,因為只有一維數(shù)據(jù)的插值處理,所以使用簡單的線性插值即可實現(xiàn)M超采樣數(shù)據(jù)到M超圖像區(qū)域像素灰度值數(shù)據(jù)的轉(zhuǎn)換。根據(jù)線性插值公式只需要對y軸方向進(jìn)行插值運(yùn)算即可。
要顯示的點(diǎn)數(shù)為H1個,采樣點(diǎn)數(shù)為Mr個。那么對于第k個需要顯示的像素點(diǎn),首先要計算出用于對它進(jìn)行插值計算的兩個相鄰的采樣數(shù)據(jù)點(diǎn)的序號。
令則可以求得 設(shè)I的整數(shù)部分為i,小數(shù)部分為α,則第k個需要顯示的像素點(diǎn)的灰度值MG[k]為 MG[k]=MS[i]×(1-α)+MS[i+1]×α(26) 其中MS[i]為第i個采樣數(shù)據(jù)的值。對第x列進(jìn)行遍歷,即可第x列上需要顯示的H1個灰度值數(shù)據(jù)。
6、B超顯示和M超顯示 保存顯示坐標(biāo)的灰度值 由快速計算進(jìn)行DSC處理已經(jīng)知道,在DisGry[]這個數(shù)組中,已經(jīng)將所有的凸陣掃描區(qū)的像素灰度值進(jìn)行了保存,當(dāng)然,在顯示像素區(qū)的而又不在凸陣掃描區(qū)的像素值在初始化的時候已經(jīng)全部賦了零值而保存在該數(shù)組里。那么這個數(shù)組已經(jīng)全部保存了將要顯示在屏幕區(qū)寬度為W0,高度為H0的所有像素的灰度值。
將已經(jīng)保存了所有要顯示區(qū)域灰度值的數(shù)組DisGry[]的首地址傳遞給顯示函數(shù)即可,從而完成了整個DSC從獲取數(shù)據(jù)、坐標(biāo)變換、插值處理到最后的送達(dá)顯示器進(jìn)行顯示的全部過程。
由于針對一種B/M顯示方式時,M超顯示像素區(qū)的大小是固定的(參照圖4),因此根據(jù)該大小申請一個存放M超顯示像素區(qū)的二維數(shù)組即可。申請的變量如下 BYTE FDisplayDataM[W0][H1] 該數(shù)組在初始化時,被賦值為零,這樣在沒有接收到M超顯示像素區(qū)數(shù)據(jù)時,M超顯示像素區(qū)將會顯示為黑色,也即表示沒有M超信號。向變量FDisplayDataM中存放進(jìn)行插值處理后用以顯示的數(shù)據(jù) 由式(26)及其參數(shù)的含義可知,一維數(shù)組變量MG中保存的為當(dāng)前需要顯示的一條M超掃描線的數(shù)據(jù)。那么根據(jù)時間先后,可以將數(shù)組MG中的值賦值給數(shù)組FDisplayDataM[W0][H1],這樣經(jīng)過W0次賦值后,M超顯示像素區(qū)就已經(jīng)全部是M超掃描線的像素數(shù)據(jù)了。在下一輪賦值的時候,仍然從數(shù)組FDisplayDataM[W0][H1]的下標(biāo)為(0,0)的地方進(jìn)行賦值即可。下面舉例予以說明。我們不妨設(shè)W0的值為1024,H1的值為400。那么,當(dāng)?shù)?條(實際是第1條,為了和計算機(jī)中的計數(shù)方法一直,我們就稱其為第0條)M超采樣數(shù)據(jù)插值處理完成之后,那么一維數(shù)組MG中已經(jīng)保存了第0條M超像素顯示區(qū)上豎直掃描線上的400點(diǎn)的像素值,此時將該400個點(diǎn)的像素值賦值給數(shù)組FDisplayDataM[W0][H1]的第0行(這是由于計算機(jī)在存儲數(shù)據(jù)時是按照行優(yōu)先來存儲的,因此我們稱為第0行,實際代表M超顯示像素區(qū)的第0列像素),即FDisplayDataM
~FDisplayDataM
[399]。同理當(dāng)?shù)?條M超采樣數(shù)據(jù)插值處理完成之后,一維數(shù)組MG中會保存了第1條M超像素顯示區(qū)上豎直掃描線上的400點(diǎn)的像素值,此時將該400個點(diǎn)的像素值賦值給數(shù)組FDisplayDataM[W0][H1]的第1行,即FDisplayDataM[1]
~FDisplayDataM[1][399]。依次安順序進(jìn)行該過程,當(dāng)?shù)?023條M超采樣數(shù)據(jù)插值處理完成之后,一維數(shù)組MG中會保存了第1023條M超像素顯示區(qū)上豎直掃描線上的400點(diǎn)的像素值,此時將該400個點(diǎn)的像素值賦值給數(shù)組FDisplayDataM[W0][H1]的第1023行,即FDisplayDataM[1023]
~FDisplayDataM[1023][399]。注意到一個問題,此時M超顯示像素區(qū)已經(jīng)完全顯示為M超圖像數(shù)據(jù)了,那么下一條M超采樣數(shù)據(jù)經(jīng)過處理之后將被賦值到FDisplayDataM[W0][H1]的第0行,之后依然按照上述過程進(jìn)行賦值 將已經(jīng)保存了M超顯示區(qū)域灰度值的數(shù)組FDisplayDataM[][]的首地址傳遞給顯示函數(shù)即可,從而完成了M超圖像從獲取數(shù)據(jù)、插值處理到最后送達(dá)顯示器進(jìn)行顯示的全部過程。
比較圖7和圖8,可以很清楚地看到,軟件DSC省去了B超儀器中的硬件DSC處理裝置設(shè)備,節(jié)約了B超儀器的硬件成本,縮小了B超硬件電路的體積,并且為B超的軟件設(shè)計帶來了很多方便,為圖像的軟件處理提供了極大的便利。實驗結(jié)果證明,軟件DSC可以準(zhǔn)確迅速地將采樣數(shù)據(jù)翻轉(zhuǎn)顯示到屏幕上,而且測試結(jié)果表明,在達(dá)到最高幀率64的時候,所耗用的CPU資源也不超過2%,完全達(dá)到了實時性的要求。把幀頻設(shè)定在32幀的時候,所耗用的CPU資源顯示結(jié)果表明不超過1%。M模式圖像的顯示可以達(dá)到實時性的要求,目前測試可以使用的速度為500線/秒,完全可以滿足黑白超聲甚至彩超多普勒的使用。
選定M取樣線的實施例 正常顯示的B超圖像如圖9所示,此時顯示的單B超圖像。此時,只要同時按下鍵盤上的功能鍵“Ctrl”和數(shù)字鍵“4”即進(jìn)入B/M模式顯示的狀態(tài)。按下“Ctrl+4”組合鍵之后,即進(jìn)入B/M模式顯示,如圖10所示。
該步驟具體流程在正常顯示B超采集圖像的情況下,判斷是否有功能鍵“Ctrl”和數(shù)字鍵“4”同時按下,如果有,則響應(yīng)VC中的OnKeyDown消息,切換到B/M顯示,同時調(diào)用繪制黃色M取樣線(點(diǎn)線)的函數(shù),在OnPaint中進(jìn)行顯示。默認(rèn)的M取樣線顯示位置所代表的陣元號為陣元總數(shù)的一半,也即是說,如果凸陣探頭的換能器陣元總數(shù)為256個,則默認(rèn)的M取樣線顯示位置所代表的陣元號為128,即處于B超圖像的正中央位置,如圖10所示。在圖10的狀態(tài)下,移動鼠標(biāo),可以改變放大框的位置,圖11便是在該狀態(tài)下移動鼠標(biāo)后的響應(yīng)結(jié)果。該步驟具體流程在圖10的狀態(tài)下,移動鼠標(biāo),響應(yīng)OnMouseMove消息,改變M取樣線顯示的位置,同時相應(yīng)地改變其所代表的陣元號。假設(shè)凸陣探頭總共有256個陣元,則在沒有移動鼠標(biāo)時M取樣線所在位置代表的陣元號為128,即此時M超存儲區(qū)存放的采樣數(shù)據(jù)是第128號探頭陣元的經(jīng)過處理的超聲回波信號。那么當(dāng)鼠標(biāo)左右移動時,將改變對應(yīng)的陣元號。當(dāng)鼠標(biāo)向左移動一個像素時,對應(yīng)的陣元號變?yōu)榈?27號;反之,如果是向右移動一個像素,對應(yīng)的陣元號則變?yōu)榈?29號。
B/M模式超聲圖像的顯示可以根據(jù)應(yīng)用場景和醫(yī)生的喜好按上下排列顯示和左右排列顯示,圖12介紹了按上下排列顯示B/M模式超聲圖像示意圖,圖13介紹了按左右排列顯示B/M模式超聲圖像示意圖。
本領(lǐng)域技術(shù)人員不脫離本發(fā)明的實質(zhì)和精神,可以有多種變形方案實現(xiàn)本發(fā)明,以上所述僅為本發(fā)明較佳可行的實施例而已,并非因此局限本發(fā)明的權(quán)利范圍,凡運(yùn)用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)變化,均包含于本發(fā)明的權(quán)利范圍之內(nèi)。
權(quán)利要求
1.一種B/M模式超聲圖像顯示方法,其特征在于包括步驟
A1、確定B模式超聲圖像和M模式超聲圖像在屏幕上的排列方向和顯示比例;
A2、利用軟件模塊將B模式超聲圖像顯示在屏幕上;
A3、在所述B模式超聲圖像上選取M取樣線;
A4、利用軟件模塊將所述M取樣線對應(yīng)的M模式超聲圖像顯示在屏幕上。
2.根據(jù)權(quán)利要求1所述的B/M模式超聲圖像顯示方法,其特征在于,所述步驟A2包括步驟
B1、建立插值計算表;
B2、根據(jù)所述插值計算表和采樣數(shù)據(jù)計算凸陣掃描區(qū)內(nèi)每個象素的灰度值數(shù)據(jù);
B3、將所述灰度值數(shù)據(jù)輸出到屏幕進(jìn)行顯示。
3.根據(jù)權(quán)利要求2所述的B/M模式超聲圖像顯示方法,其特征在于所述步驟B1包括步驟預(yù)先計算凸陣掃描區(qū)內(nèi)每個象素的極坐標(biāo)值,并將所述極坐標(biāo)值存入坐標(biāo)轉(zhuǎn)換表中,根據(jù)所述坐標(biāo)轉(zhuǎn)換表建立所述插值計算表。
4.根據(jù)權(quán)利要求3所述的B/M模式超聲圖像顯示方法,其特征在于所述插值計算表設(shè)為一數(shù)據(jù)結(jié)構(gòu)的賦值集合,所述數(shù)據(jù)結(jié)構(gòu)包括顯示在屏幕上的點(diǎn)的一維坐標(biāo)變量、矯正插值系數(shù)變量、采樣點(diǎn)的位置變量。
5.根據(jù)權(quán)利要求4所述的B/M模式超聲圖像顯示方法,其特征在于,所述步驟B2包括步驟所述灰度值數(shù)據(jù)首先存入第一一維數(shù)組中。
6.根據(jù)權(quán)利要求5所述的B/M模式超聲圖像顯示方法,其特征在于,所述步驟A4包括步驟
C1、根據(jù)所述M取樣線確定換能器陣元號;
C2、將所述換能器陣元號的采樣數(shù)據(jù)存放到M模式采樣數(shù)據(jù)存儲區(qū);
C3、讀取所述換能器陣元號的采樣數(shù)據(jù)并進(jìn)行插值計算;
C4、將經(jīng)過插值計算得到的M模式灰度值數(shù)據(jù)輸出到屏幕進(jìn)行顯示。
7.根據(jù)權(quán)利要求6所述的B/M模式超聲圖像顯示方法,其特征在于所述M模式灰度值數(shù)據(jù)首先存入第二一維數(shù)組中。
8.根據(jù)權(quán)利要求7所述的B/M模式超聲圖像顯示方法,其特征在于將所述第二一維數(shù)組中的數(shù)據(jù)依次賦值給與M模式顯示像素區(qū)大小對應(yīng)的二維數(shù)組。
全文摘要
一種B/M模式超聲圖像顯示方法,包括步驟A1.確定B模式超聲圖像和M模式超聲圖像在屏幕上的排列方向和顯示比例;A2.利用軟件模塊將B模式超聲圖像顯示在屏幕上;A3.在所述B模式超聲圖像上選取M取樣線;A4.利用軟件模塊將所述M取樣線對應(yīng)的M模式超聲圖像顯示在屏幕上。本發(fā)明使用軟件進(jìn)行DSC處理并進(jìn)行B/M模式超聲圖像的顯示,省去了DSC的硬件處理模塊,節(jié)約了硬件成本,縮小了硬件的體積,并且為圖像的后處理提供了極大的方便。
文檔編號A61B8/14GK101156789SQ20071007736
公開日2008年4月9日 申請日期2007年9月25日 優(yōu)先權(quán)日2007年9月25日
發(fā)明者程延俊, 陳閩峰 申請人:深圳市藍(lán)韻實業(yè)有限公司