萬書亭,王萱,張伯麟,尹濤
(1.華北電力大學(xué)河北省電力機(jī)械裝備健康維護(hù)與失效預(yù)防重點(diǎn)實(shí)驗(yàn)室,河北 保定 071003;2.中國航空工業(yè)集團(tuán)公司金城南京機(jī)電液壓工程研究中心,江蘇 南京 211106)
電力設(shè)備X射線檢測技術(shù)不斷趨于成熟,目前在大量的變電設(shè)備無損檢測中都得到成功應(yīng)用,如GIS、干式變壓器、電壓電流互感器、斷路器、隔離開關(guān)等。該系統(tǒng)自應(yīng)用以來,在實(shí)踐操作中成功檢測出多起變電設(shè)備重大缺陷,帶來了良好的社會效益和經(jīng)濟(jì)效益,因此具有巨大的推廣潛力[1]。然而在大量的工程實(shí)踐中,由于多數(shù)待檢測工件存在工件厚度不一、外部輪廓不規(guī)則、內(nèi)部構(gòu)造復(fù)雜多樣等特征,同時通過X射線圖像進(jìn)行無損檢測是依靠技術(shù)人員憑借經(jīng)驗(yàn)直接觀察圖像進(jìn)行判斷,效率較低且容易出現(xiàn)誤診現(xiàn)象[2-4]。電力設(shè)備本身是空間三維體,利用X射線檢測系統(tǒng)得到的二維平面的投影圖像來反映三維體的情況,在直觀顯示上存在著局限性。因此,通過三維重建技術(shù)將二維圖像還原為電力設(shè)備三維結(jié)構(gòu),對于提高缺陷識別和判讀具有十分重要的意義[5]。
應(yīng)用數(shù)字圖像處理技術(shù),實(shí)現(xiàn)X射線圖像中背景與電力設(shè)備的分離,并結(jié)合邊緣檢測技術(shù),獲取設(shè)備輪廓曲線,可以方便且直觀地對X射線圖像中電力設(shè)備進(jìn)行檢測。但得到的輪廓曲線只是簡單存儲在一個二維稀疏矩陣中,點(diǎn)之間沒有向量關(guān)系,無法對輪廓進(jìn)行進(jìn)一步的分析研究。
本文針對電力設(shè)備水平旋轉(zhuǎn)拍攝得到的多幅X射線圖像進(jìn)行分析,研究X射線數(shù)字圖像目標(biāo)輪廓的提取和多幅圖輪廓對應(yīng)點(diǎn)匹配問題,目的在于提供一種多幅X射線旋轉(zhuǎn)圖像輪廓對應(yīng)點(diǎn)坐標(biāo)提取和匹配新方法;應(yīng)用邊緣檢測獲取X射線圖像輪廓點(diǎn),通過正交優(yōu)先的8鄰域遍歷追蹤改進(jìn)算法對輪廓點(diǎn)進(jìn)行存儲,實(shí)現(xiàn)了目標(biāo)輪廓線的順序存儲;同時運(yùn)用像素點(diǎn)均分插值的方法對多幅圖像輪廓對應(yīng)點(diǎn)進(jìn)行匹配,使得同一點(diǎn)在不同圖像上的表示點(diǎn)可以一一對應(yīng);最后運(yùn)用旋轉(zhuǎn)圖像點(diǎn)的坐標(biāo)變換矩陣,實(shí)現(xiàn)對已獲得的旋轉(zhuǎn)圖像對應(yīng)點(diǎn)坐標(biāo)的逆求解,得到輪廓線點(diǎn)的三維坐標(biāo),并實(shí)現(xiàn)輪廓的三維重建。
圖像預(yù)處理,可以突出圖像中的有用信息,衰減無用信息,提高計(jì)算機(jī)對圖像的識別能力,常用方法有圖像類型轉(zhuǎn)換、去噪處理、圖像增強(qiáng)處理、圖像分割處理等。
電子由陰極發(fā)射器激發(fā)后部分被物體吸收,部分落在X射線成像板,形成物體的X射線圖像[6]。X射線圖像噪聲是電子曝光形成的,通常滿足泊松分布:
式中:λ為均值為均方根。
目前對X射線數(shù)字圖像去噪主要是對噪聲圖像進(jìn)行平方根運(yùn)算,會導(dǎo)致圖像中大量細(xì)節(jié)丟失。中值濾波是一種非線性的處理方法,對量子噪聲有較好的抑制,同時可以降低去噪過程對邊緣信息的破壞。數(shù)學(xué)形態(tài)學(xué)處理既可以消除小且無意義的目標(biāo)物,也可以來填補(bǔ)目標(biāo)區(qū)域中某些空洞,適用于X射線圖像的噪聲去除[7-9]。
圖像增強(qiáng)技術(shù)可以加強(qiáng)計(jì)算機(jī)對圖像判讀和識別效果。針對圖像增強(qiáng),可采用直方圖均衡化、對比度增強(qiáng)法、平滑噪聲、銳化等方法[10-11]。
圖像分割根據(jù)圖像中物體的特征將圖像劃分為若干區(qū)域,從中提取感興趣的部分。最大類間方差法是按圖像的灰度特性將圖像分成背景和目標(biāo)兩部分,將兩部分差別最大的分割結(jié)果作為最終分割結(jié)果。最大類間方差法適用于X射線圖像分割[12]。
目前在邊緣檢測中,常用的算子主要包括:Roberts算子、Sobel算子、高斯-拉普拉斯算子、Canny算子等。通過圖像預(yù)處理得到X光片的二值圖,有明顯的階躍邊界,在邊緣檢測時沒有漸變的弱邊界,而Canny算子在邊緣檢測時有較好的信噪比和檢測精度,適合X光片二值圖的邊緣檢測要求。對圖像進(jìn)行二值化、圖像形態(tài)學(xué)處理后,結(jié)合Canny算子進(jìn)行邊緣檢測,檢查圖像輪廓,得到圖像的輪廓曲線,用二維稀疏矩陣存儲圖像A的輪廓信息,矩陣的行數(shù)和列數(shù)表示圖像的長和寬[13-14]。
從已知點(diǎn)根據(jù)輪廓線對輪廓軌跡進(jìn)行追蹤,通常采用的方法是8鄰域遍歷追蹤法。其方法是:輪廓點(diǎn)周圍的8個像素點(diǎn),按照一定的順序(順時針或逆時針)對像素點(diǎn)的灰度值進(jìn)行判斷尋找符合要求的像素點(diǎn),然后記錄該點(diǎn)的坐標(biāo)并以此為起始點(diǎn)繼續(xù)搜索。該方法有局限性,圖像上的某些斜線在搜尋過程中容易在連續(xù)線段上停止搜索,再另尋起點(diǎn)進(jìn)行下一輪的搜索[15]。為了避免存儲的點(diǎn)不能連成連續(xù)線段,提出了一種正交優(yōu)先的8鄰域遍歷改進(jìn)算法。
8鄰域遍歷追蹤在搜尋輪廓點(diǎn)時默認(rèn)有一個優(yōu)先級,假設(shè)從起始點(diǎn)的正上方開始按順時針?biāo)阉?,那么搜索的?yōu)先級可以表示為矩陣Mo:
同樣假設(shè)從起始點(diǎn)正上方開始按順時針?biāo)褜ぃ粌?yōu)先的8鄰域遍歷追蹤方法的優(yōu)先級可由矩陣M表示:
圖1為某一輪廓的局部放大圖,字母N代表該像素點(diǎn)上的值為1,屬于輪廓線上的點(diǎn);(a,b)中a為傳統(tǒng)8鄰域搜索順序,b為正交優(yōu)先8鄰域搜索順序。
圖1 輪廓點(diǎn)搜索順序?qū)Ρ菷ig.1 Contour point search sequence diagram
將輪廓點(diǎn)搜尋順序連線,可以更直觀地看到正交優(yōu)先8鄰域遍歷方法的優(yōu)越性,如圖2所示。兩組圖各自對比可以發(fā)現(xiàn),傳統(tǒng)方法對這類曲線進(jìn)行輪廓搜尋時會漏掉一些輪廓線上的點(diǎn)(如圖2(a)的紅色像素點(diǎn)),當(dāng)按照順時針?biāo)褜そY(jié)束后,還需要掉頭再去尋找遺失的點(diǎn),最后依次連接存儲的點(diǎn)無法得到正確的輪廓線;而改進(jìn)的正交優(yōu)先8鄰域輪廓追蹤方法是嚴(yán)格按照輪廓線的趨勢搜尋,不會出現(xiàn)遺失,最后依次連接存儲的點(diǎn)可以得到正確的輪廓線。
圖2 輪廓點(diǎn)搜尋路徑對比Fig.2 Contour point search path comparison
圖3(a)和圖3(b)分別是使用傳統(tǒng)搜尋方法和改進(jìn)方法搜尋輪廓點(diǎn)的路徑,對比傳統(tǒng)搜尋方法和改進(jìn)方法搜尋輪廓點(diǎn)的路徑以及其局部放大圖可以看出:傳統(tǒng)方法在對曲線進(jìn)行輪廓搜尋時路徑錯誤,雖然可以得到所有的輪廓點(diǎn),但是輪廓點(diǎn)存儲順序錯誤,連接后無法得到正確的輪廓線;而改進(jìn)的正交優(yōu)先8鄰域輪廓追蹤能夠按照輪廓線的趨勢搜尋并保存輪廓點(diǎn)的坐標(biāo),最終得到正確的輪廓線。
圖3 輪廓點(diǎn)搜尋路徑對比Fig.3 Contour point search path comparison diagram
首先找到一個起始點(diǎn),然后按照已得到輪廓的走勢依次尋找輪廓坐標(biāo)然后保存,這種方法稱為輪廓跟蹤法。輪廓跟蹤法的具體步驟如下:
步驟1從起始點(diǎn)O(i,j)開始(初始值為(0,0)),判斷O點(diǎn)的灰度值IO=1是否成立;否,進(jìn)入步驟2;是,則點(diǎn)N(m0,n0),m0=i,n0=j,進(jìn)入步驟3。
步驟2j=j+1,判斷j=N+1是否成立。是,則i=i+1,j=1,執(zhí)行步驟3;否,則執(zhí)行步驟1。
步驟3判斷i=M+1是否成立。否,則執(zhí)行第一步;是,則結(jié)束。
步驟4將N(m0,n0)坐標(biāo)存入n×2的矩陣M中,I置0;按照改進(jìn)8鄰域遍歷追蹤法判斷點(diǎn)(m0,n0)的8個鄰域內(nèi)是否存在I(m,n)=1,是,則m0=m,n0=n,執(zhí)行步驟4;否,則執(zhí)行步驟1。
輪廓跟蹤的流程圖如圖4所示。
圖4 輪廓跟蹤法流程Fig.4 Contour tracking method flow chart
在多幅圖上截取關(guān)心的輪廓曲線,并順次存儲輪廓點(diǎn)二維坐標(biāo):
(1)對多幅X射線圖像進(jìn)行第一步和第二步操作,將每幅圖像輪廓線順序存儲在mi×2的矩陣Mi中(i=1,2,…,n,n為X射線圖像個數(shù));
(2)在一幅圖上找到關(guān)心的輪廓線,標(biāo)記得到輪廓線的起始點(diǎn)S1和終點(diǎn)E1,選擇S1和E1間的點(diǎn),得到選中的輪廓線的點(diǎn)坐標(biāo)集合P1;
(3)在不同圖像上選取表示同一輪廓曲線對應(yīng)的起點(diǎn)Si和終點(diǎn)Ei(i≤n),在二維矩陣mi中找到起點(diǎn)Si和終點(diǎn)Ei的位置,選擇Si和Ei間的點(diǎn),得到選中的輪廓線的點(diǎn)坐標(biāo)集合Pi;
點(diǎn)集Pi(i≤n)即為所關(guān)心的輪廓線在不同角度圖像上輪廓線點(diǎn)的坐標(biāo)集合。
得到輪廓線在不同角度圖像上輪廓線點(diǎn)的坐標(biāo)集合后,利用像素均分插值輪廓點(diǎn)匹配方法對不同角度圖像上輪廓線對應(yīng)點(diǎn)匹配,具體步驟如下:
步驟1對縱向像素點(diǎn)個數(shù)進(jìn)行計(jì)數(shù),得到第i幅圖像縱向像素點(diǎn)個數(shù)zi(i=1,2,…,n),找出一個最大值zmax=max{z1,z2,…,zn};
步驟2按照輪廓線的走勢順次對輪廓線上每一層縱向zij上的橫向像素點(diǎn)個數(shù)進(jìn)行計(jì)數(shù)(i為圖像序號,j為縱向像素點(diǎn)序號,j≤zmax),得到一個n×zmax的二維矩陣N,記錄了不同圖像相同輪廓線在相同縱坐標(biāo)下像素點(diǎn)的個數(shù);
步驟3求N矩陣每一行的最大值Nn+1=max{N1,N2,…,Nn};
步驟4根據(jù)Nn+1列的值對不同圖像輪廓線同一縱坐標(biāo)下的橫坐標(biāo)進(jìn)行均分匹配,得到一個二維矩陣Q:
式中:k為圖像編號(k≤n);aij為矩陣N中的第(i,j)個元素;bki為矩陣mk中的第i個元素。由式(3)可以得到矩陣Q(p×n),為n幅圖中同一輪廓線上對應(yīng)點(diǎn)匹配后得到的矩陣,其中p為輪廓線的最終點(diǎn)個數(shù),n為圖像數(shù)量。
基于像素點(diǎn)均分插值的多幅圖像輪廓對應(yīng)點(diǎn)匹配算法的流程圖如圖5所示。
圖5 多幅圖像輪廓對應(yīng)點(diǎn)匹配算法的流程Fig.5 Flow chart of point matching algorithm for multiple image contours
選取一段輪廓線進(jìn)行實(shí)驗(yàn)驗(yàn)證,結(jié)果如圖6所示。首先從不同圖像上分別截取一段輪廓線,并存儲輪廓線坐標(biāo);然后對輪廓線對應(yīng)點(diǎn)進(jìn)行匹配,得到輪廓線匹配矩陣;最后通過旋轉(zhuǎn)圖像坐標(biāo)變化矩陣計(jì)算得到輪廓線三維坐標(biāo),其三維表達(dá)如圖6(c)所示。進(jìn)而驗(yàn)證了像素均分插值匹配方法的正確性。
圖6 截選輪廓三維表達(dá)Fig.6 The 3D expression of the cutoff contour
利用實(shí)驗(yàn)室X射線圖像采集設(shè)備進(jìn)行零件的X射線圖像采集,通過轉(zhuǎn)動試驗(yàn)臺,每次轉(zhuǎn)動一個固定角度采集一次零件X射線圖像,并記錄該圖像對應(yīng)的轉(zhuǎn)動角度。由此可以得到一組角度已知的零件X射線透視圖像,如圖7所示。
圖7 拍攝實(shí)驗(yàn)臺Fig.7 Shooting the experiment table
將碗頭掛板實(shí)物與三維重建結(jié)果進(jìn)行對比,如圖8所示。
圖8 重建結(jié)果對比Fig.8 Comparison of reconstruction results
通過兩幅圖對比,可以看到所建模型和實(shí)際零件在形狀和結(jié)構(gòu)上基本相同。其中掛板和通孔在模型中體現(xiàn)得較為完整和清晰,碗頭在模型中也有所體現(xiàn),模型總體達(dá)到建模要求。
此處測量將計(jì)算零件的幾個主要特征處的尺寸,有圓孔直徑、外圓直徑、掛板板厚、掛板板高(除碗頭高度)、碗頭寬度,如圖9所示。
圖9 主要特征Fig.9 Schematic of main features
對三維模型各個主要特征處的尺寸是通過軟件建模后測得的該特征的取值范圍,實(shí)際測量值是通過游標(biāo)卡尺測得的零件的實(shí)際尺寸;通過對建模尺寸和實(shí)際尺寸做比較可得到模型的整體誤差。表1為模型中的特征尺寸與實(shí)際尺寸的對比表。
表1 已知角度建模方法所得三維模型誤差表Tab.1 Errors of 3D models acquired by 3D reconstruction with angles
通過表1可知,三維重建模型的主要特征尺寸誤差均控制在10%以內(nèi),證明本文提出的多幅X射線旋轉(zhuǎn)圖像輪廓對應(yīng)點(diǎn)坐標(biāo)提取和匹配方法基本符合要求。
本文研究了一種多幅X射線旋轉(zhuǎn)圖像輪廓對應(yīng)點(diǎn)坐標(biāo)提取和匹配新方法,實(shí)現(xiàn)了在數(shù)字圖像中提取目標(biāo)輪廓并對多幅圖像輪廓點(diǎn)進(jìn)行匹配,提出了一種正交優(yōu)先的8領(lǐng)域遍歷追蹤法,可以對目標(biāo)圖像輪廓點(diǎn)進(jìn)行搜尋,還提出了一種像素均分插值輪廓點(diǎn)匹配方法,實(shí)現(xiàn)了不同圖像上同一輪廓線的對應(yīng)點(diǎn)匹配。