王明星
(唐山弘慈醫(yī)院, 河北, 唐山 063020)
醫(yī)學(xué)超聲影像在現(xiàn)代臨床診療過程中發(fā)揮著重要的輔助作用,不僅能夠呈現(xiàn)患者特定部位的病變信息,還能夠在手術(shù)過程中引導(dǎo)醫(yī)師準(zhǔn)確地找到目標(biāo)部位。然而,由于對比度較差,再加上成像過程中散斑噪聲的干擾,使得醫(yī)學(xué)超聲影像的清晰度尚不能達(dá)到清晰辨識(shí)的要求,診療過程中所需的邊緣提取也無法較好地實(shí)現(xiàn)[1]。為此,本文采取預(yù)處理的方法去除影像噪聲并增強(qiáng)其清晰度,同時(shí)提出一種基于邊緣生長法的區(qū)域邊緣提取算法將影像中目標(biāo)區(qū)域邊緣像素點(diǎn)的灰度值與設(shè)定的闕值進(jìn)行比較,結(jié)合邊緣特征實(shí)現(xiàn)特定區(qū)域邊緣的提取。
通過B超掃描獲取的原始人體脊椎醫(yī)學(xué)影像如圖1所示。
圖1 人體脊椎B超影像
設(shè)備發(fā)出的超聲波在人體器官組織中相互疊加或抵消后返回接收器,按照干涉理論,在此過程中具有相同頻率與振動(dòng)方向以及固定相位差的多條聲波在某些區(qū)域被強(qiáng)化,而在某些區(qū)域則被減弱甚至消失,這就是超聲影像中散斑噪聲的產(chǎn)生機(jī)理。除了這種乘性噪聲以外,超聲影像中還包含由電磁干擾和系統(tǒng)波動(dòng)所產(chǎn)生的加性噪聲。
超聲影像的預(yù)處理流程如圖2所示。
圖2 超聲影像預(yù)處理流程
超聲影像中的噪聲干擾總量[2]為
F[x,y]=H[x,y]×M[x,y]+A[x,y]
(1)
式中,F(xiàn)[x,y]代表原始超聲影像,H[x,y]代表經(jīng)過降噪處理的超聲影像,M[x,y]代表乘性噪聲,A[x,y]代表乘加性噪聲,x、y代表影像中各像素點(diǎn)的位置坐標(biāo)。
由于加性噪聲所造成的干擾極小,可以在計(jì)算過程中忽略不計(jì),因此式(1)可簡化為
F[x,y]=H[x,y]×M[x,y]
(2)
通過同態(tài)濾波對乘性噪聲進(jìn)行處理,式(2)兩側(cè)同時(shí)取對數(shù)后可轉(zhuǎn)換為[3]
logF[x,y]=logH[x,y]+logM[x,y]
(3)
將圖1中矩形框部分的影像提取出來并依次進(jìn)行小波降噪、對數(shù)變換、指數(shù)變換處理,得到圖3(a)所示的影像,經(jīng)過對比可見,經(jīng)降噪處理后原始影像中的大量散斑噪聲被有效去除,不同區(qū)域的邊緣較原始圖像清晰度有所提升。通過中值濾波后進(jìn)一步提升了降噪效果,如圖3(b),最后設(shè)定的灰度閾值將圖3(b)轉(zhuǎn)化為二值影像,得到圖3(c)所示的影像,在該圖中各區(qū)域邊緣已經(jīng)很容易區(qū)分辨認(rèn)。
(a)
人體不同器官組織的聲阻抗差別并不大,因而超聲影像的對比度往往較低,必須采取一定的措施進(jìn)行影像增強(qiáng)。圖3(b)所對應(yīng)的灰度直方圖如圖4(a)所示,由該圖可見影像像素點(diǎn)灰度值范圍為0.36~0.86。通過灰度增強(qiáng)的方式將圖3(b)的灰度值提高到0~1,具體方式為
grey[x,y]=
(4)
式中,grey[x,y]代表(x,y)像素點(diǎn)的灰度值。增強(qiáng)處理后得到圖4(b)所示的灰度直方圖。
(a) 圖3(b)的灰度直方圖
經(jīng)過增強(qiáng)處理的超聲影像如圖5所示,由該圖可見影像的整體清晰度得到了明顯的改善。
圖5 降噪、增強(qiáng)后的超聲影像
本文采用邊緣生長法對超聲影像中各區(qū)域的邊緣進(jìn)行提取,將影像中目標(biāo)區(qū)域邊緣位置像素點(diǎn)的灰度值與設(shè)定的閾值逐一進(jìn)行比較,結(jié)合邊緣處所具有連續(xù)性、平滑性的特征進(jìn)行選擇排除。該方法的實(shí)現(xiàn)結(jié)果如圖6所示。
步驟1 設(shè)定計(jì)算參數(shù)。選定部分顏色較深區(qū)域?yàn)樘崛?cè),在此基礎(chǔ)上進(jìn)行參數(shù)設(shè)定,如圖6(a)所示。
像素點(diǎn)灰度闕值T1為用以判斷當(dāng)前像素點(diǎn)的位置是否在提取側(cè)。設(shè)grey[x,y]為(x,y)坐標(biāo)處像素點(diǎn)的灰度值,若[x,y]位于提取側(cè)內(nèi),當(dāng)設(shè)定T1=0.2時(shí),則式(5)成立:
grey[x,y]≤T1
(5)
連續(xù)閾值T2為檢測邊緣點(diǎn)過程中連續(xù)找到位于提取側(cè)的邊緣點(diǎn)的數(shù)量,在這里設(shè)定T2=2。
(a) 設(shè)定計(jì)算參數(shù)
提取鄰域Dc是以當(dāng)前像素點(diǎn)為中心,由其周圍N×N個(gè)像素點(diǎn)所形成的正方形區(qū)域,在這里設(shè)定N=9。
步驟2 選定計(jì)算起始點(diǎn)[4]。如果是開放型邊緣則應(yīng)選取邊緣線2個(gè)端點(diǎn)中的1個(gè)作為計(jì)算起始點(diǎn),同時(shí)設(shè)定該點(diǎn)的生長延伸方向。在這里,生長方向通過該點(diǎn)切線與垂直方向的夾角θ表示,其取值范圍為-180°~+180°。根據(jù)影像的具體形式,應(yīng)自下而上掃描左邊線,利用各點(diǎn)灰度值與闕值的比較結(jié)果確定第一個(gè)邊緣點(diǎn),在矩陣Dp中記錄該點(diǎn)的坐標(biāo)值,其中橫坐標(biāo)記為Dp[1,1],縱坐標(biāo)記為Dp[1,2],同時(shí)測定θ的角度并將其記為Dp[1,3]。
步驟3 候選邊緣點(diǎn)搜索。在這里需要首先做出如下定義。
方向環(huán):以鄰域Dc的中心點(diǎn)為圓心,以某一起始點(diǎn)為起點(diǎn),逆時(shí)針連接各像素點(diǎn)所形成的封閉式圓環(huán)。在設(shè)定N=9的條件下,Dc鄰域內(nèi)共包括4個(gè)方向環(huán),由里向外依次編號為1、2、3、4。
像素點(diǎn)方向角θ:Dc內(nèi)除圓心以外的任意像素點(diǎn)和圓心的連線與垂直方向的夾角。
方向環(huán)的優(yōu)先選擇區(qū)域:鄰域內(nèi)每個(gè)方向環(huán)的優(yōu)先選擇區(qū)域不同。對于1號方向環(huán)來講,其優(yōu)先選擇區(qū)域?yàn)榕c中心點(diǎn)θ值之差的絕對值為90°的像素點(diǎn);2、3、4號方向環(huán)的優(yōu)先選擇區(qū)域與中心點(diǎn)θ值之差的絕對值分別為75°、50°、45°。
由里向外選取以計(jì)算起始點(diǎn)為中心的Dc鄰域內(nèi)的方向環(huán),將其上各點(diǎn)的灰度值代入式(5)以確定其是否位于提取側(cè),根據(jù)方向角θ來確定每個(gè)方向環(huán)的起始點(diǎn)和邊緣點(diǎn)的優(yōu)先選擇區(qū)域,若在搜索過程中已經(jīng)發(fā)現(xiàn)一個(gè)以上的符合條件的候選邊緣點(diǎn),則結(jié)束在當(dāng)前方向環(huán)的搜索過程直接開始在下一個(gè)方向環(huán)上進(jìn)行搜索,否則就需要重復(fù)搜索過程到最后一個(gè)點(diǎn)。若某個(gè)像素點(diǎn)位于提取側(cè)內(nèi)且已發(fā)現(xiàn)至少T2-1個(gè)像素點(diǎn)同樣位于提取側(cè)內(nèi),那么可將該點(diǎn)列為候選邊緣點(diǎn)。以上判定條件可總結(jié)為,假設(shè)某個(gè)方向環(huán)上的第m個(gè)像素點(diǎn)的灰度值為grey[m],該點(diǎn)被列為候選邊緣點(diǎn)的條件為以下各式同時(shí)成立:
grey[m-1]≤T1
(6)
grey[m]≤T1
(7)
grey[m+1]>T1
(8)
步驟4 搜索新邊緣點(diǎn)。將已找到的候選邊緣點(diǎn)的θ值與計(jì)算起始點(diǎn)的θ值進(jìn)行比較,找出連續(xù)性最強(qiáng)的那一組,記為新邊緣點(diǎn),同時(shí)將其坐標(biāo)值與θ值列入Dp矩陣中。每個(gè)方向環(huán)上只能選取最多一個(gè)新邊緣點(diǎn)。
步驟5 提取新邊緣點(diǎn)。以Dp矩陣中的最后一個(gè)點(diǎn)為Dc鄰域的中心點(diǎn),重復(fù)步驟(3)、(4),通過計(jì)算獲取該點(diǎn)的θ值。連續(xù)提取邊緣點(diǎn),在干擾點(diǎn)的影像下,提取出的區(qū)域邊緣線存在不連續(xù)的情況[5]。
步驟6 結(jié)束邊緣點(diǎn)提取。需要根據(jù)邊緣的具體形式確定邊緣提取的結(jié)束條件,例如開放邊緣的提取結(jié)束條件為已搜索到影像邊緣,封閉邊緣的提取結(jié)束條件為Dp矩陣中再次出現(xiàn)計(jì)算起始點(diǎn)的坐標(biāo)值。
步驟7 強(qiáng)化邊緣點(diǎn)連續(xù)性。根據(jù)提取邊緣點(diǎn)的連續(xù)性情況做出適當(dāng)補(bǔ)充,使其呈現(xiàn)出更好的連續(xù)性。
步驟8 邊緣線增強(qiáng)。對于具有較高分辨率的超聲影像,由多個(gè)單點(diǎn)連接而成的邊緣線清晰度較差,此時(shí)可采取增加邊緣線寬度的方式對邊緣線進(jìn)行增強(qiáng),如圖6(b)所示。
運(yùn)用邊緣生長法按以下步驟人體脊椎超聲影像的邊緣進(jìn)行提取。
步驟1 設(shè)定計(jì)算參數(shù)。選定部分顏色較深區(qū)域?yàn)樘崛?cè),設(shè)定像素點(diǎn)灰度闕值T1=0.32,連續(xù)闕值T2=2,提取鄰域Dc像素點(diǎn)個(gè)數(shù)N=9。
步驟2 選定計(jì)算起始點(diǎn)。從上邊線自左向右掃描,利用各點(diǎn)灰度值與闕值的比較結(jié)果確定第一個(gè)邊緣點(diǎn),在矩陣Dp中記錄該點(diǎn)的坐標(biāo)值,其中橫坐標(biāo)記為Dp[1,1],縱坐標(biāo)記為Dp[1,2],同時(shí)將測定θ的角度-10°記為Dp[1,3]。
步驟3 搜索候選邊緣點(diǎn)。以計(jì)算起始點(diǎn)為鄰域Dc的中心點(diǎn)搜索其周圍的候選邊緣點(diǎn)。
步驟4 搜索新邊緣點(diǎn)。找出連續(xù)性最強(qiáng)的一組邊緣點(diǎn),同時(shí)將其坐標(biāo)值與θ值列入Dp矩陣中。每個(gè)方向環(huán)上只能選取最多一個(gè)新邊緣點(diǎn)。
步驟5 提取新邊緣點(diǎn)。以Dp矩陣中的最后一個(gè)點(diǎn)為Dc鄰域的中心點(diǎn),重復(fù)步驟(3)、(4),通過計(jì)算獲取該點(diǎn)的θ值。
步驟6 結(jié)束邊緣點(diǎn)提取。搜索到影像右側(cè)邊緣時(shí)結(jié)束提取邊緣點(diǎn)。
步驟7 強(qiáng)化邊緣點(diǎn)連續(xù)性。根據(jù)提取邊緣點(diǎn)的連續(xù)性情況做出適當(dāng)補(bǔ)充,以強(qiáng)化邊緣點(diǎn)連續(xù)性。
步驟8 邊緣線增強(qiáng)。增加提取側(cè)邊緣線寬度,以增強(qiáng)邊緣線的清晰度。
采用多種邊緣提取算法對圖1所示影像中的矩形域邊緣進(jìn)行提取,以驗(yàn)證本文提出的邊緣生長法相對于其他算法是否具有性能優(yōu)勢。通過本文邊緣生長法提取的脊椎邊緣結(jié)果如圖7(a)所示。利用Sobel算子[6]提取的脊椎邊緣如圖7(b)所示。采用LoG算子[7]對影像進(jìn)行邊緣提取的結(jié)果分別如圖7(c)所示。
通過圖7中所有提取結(jié)果的對比可見,利用Sobel算子、LoG算子提取出的脊椎邊緣普遍存在數(shù)量較多的假性邊緣點(diǎn),且Sobel算子提取結(jié)果中右側(cè)出現(xiàn)的垂直線是在影像降噪時(shí)所產(chǎn)生的假性邊緣線。由于邊緣生長法是在N×N大小的鄰域內(nèi)進(jìn)行邊緣的提取,因此所獲取的邊緣線是真實(shí)的,雖然同樣受到了一些噪聲的干擾,但仍能夠準(zhǔn)確地提取出脊椎邊緣,由此可見邊緣生長法相對于其它算法具有更高的準(zhǔn)確性。
(a) 本文算法提取
利用LoG算子從影像中提取出的脊椎邊緣出現(xiàn)了較多的斷點(diǎn),其他幾種算法的提取結(jié)果都具有較好的連續(xù)性。采用邊緣生長法提取區(qū)域邊緣時(shí),所有搜索到的邊緣點(diǎn)坐標(biāo)都統(tǒng)一列入Dp矩陣中,且通過適當(dāng)補(bǔ)充保持了邊緣線的連續(xù)性,又以增加寬度的方式提升了邊緣線的清晰度,因此提取出了圖8所示的連續(xù)性更好且更加清晰的脊椎邊緣,其中圖8(a)為本文算法提取后的局部放大圖,圖8(b)為采用LoG算法提取后的局部放大圖。
(a) 本文算法提取后的局部放大
對于影像中區(qū)域邊緣的提取,與其他幾種算法相比,邊緣生長法具有以下特點(diǎn):
1) 無需進(jìn)行影像轉(zhuǎn)換,能夠直接從灰度影像中提取出特定區(qū)域的邊緣,其他幾種算法需要將原始影像轉(zhuǎn)換為二值影像后再進(jìn)行邊緣提??;
2) 采用邊緣生長法提取區(qū)域邊緣時(shí)只需針對邊緣附近位置的像素點(diǎn)進(jìn)行計(jì)算,由此節(jié)省了大量非邊緣點(diǎn)的計(jì)算時(shí)間;
3) 依據(jù)邊緣點(diǎn)的θ值可對優(yōu)先選擇區(qū)域內(nèi)的像素點(diǎn)進(jìn)行計(jì)算,一旦檢測到邊緣點(diǎn)即可進(jìn)入下一個(gè)方向環(huán)進(jìn)行像素點(diǎn)的計(jì)算和判斷。
在相同的軟硬件環(huán)境中分別通過上述各種算法[8-10]對圖1原始影像中的脊椎邊緣進(jìn)行提取,每種算法的總運(yùn)行時(shí)間如圖9所示。數(shù)據(jù)可見,邊緣生長法的邊緣提取運(yùn)行時(shí)間遠(yuǎn)低于其他幾種算法,由此可證明該算法的運(yùn)行效率更高。
圖9 不同算法的邊緣提取時(shí)間
原始的醫(yī)用超聲影像對比度較低,且由于成像過程中散斑噪聲的干擾清晰度也并不理想,因此必須采取措施進(jìn)行影像降噪和增強(qiáng)。本文采取小波降噪、對數(shù)變換、指數(shù)變換的方式進(jìn)行影像變換和預(yù)處理,有效去除了干擾,降低了影像噪聲。同時(shí),為了從轉(zhuǎn)換后的影像中提取出清晰的區(qū)域邊緣,提出了一種基于邊緣生長法的邊緣提取方法,選取邊緣附近的一個(gè)像素點(diǎn)作為計(jì)算起始點(diǎn),通過設(shè)定的闕值在其鄰域內(nèi)搜索邊緣點(diǎn),最終獲取清晰的特定區(qū)域邊緣線。實(shí)際應(yīng)用結(jié)果表明,本文所提出的算法相對于其他同類算法具有更好的連續(xù)性、準(zhǔn)確性和更高的運(yùn)行效率。