朱 敏,于光輝,盧洪義,李 朋
(海軍航空工程學(xué)院,煙臺 264001)
利用Roberts[1]、Prewitt[2]、Sobel[3]、Canny[4]、Zerocross和Log[5]等邊緣檢測算子檢測出的固體發(fā)動機(jī)邊緣檢測結(jié)果通常大于1個體素,無法準(zhǔn)確定位出固體發(fā)動機(jī)各組成部分的實(shí)際邊緣,這將限制后繼缺陷最大直徑、截面周長、表面積、體積等特征參數(shù)的精確測量。
二維空間中,單像素化正是一種求取寬度不為1的連續(xù)區(qū)域的連續(xù)中心線的處理方法,通常使用的處理方法包括Hilditch算法[6]、Rosenfeld算法[7]、Zhang并行算法[8]和Deutch算法[9]。本文利用這4種算法對固體發(fā)動機(jī)斷層圖像邊緣檢測結(jié)果實(shí)施單像素化處理,比較分析得出適用于固體發(fā)動機(jī)的單像素化方法,并將此方法拓展,提出一種三維空間中的固體發(fā)動機(jī)邊緣檢測結(jié)果單體素化方法。
Hilditch單像素化算法的步驟如下:對圖像從左向右從上向下按條件處理每個像素,視為一個迭代周期。在每個迭代周期中,對于每一個像素P,如果它同時滿足下述6個條件,則標(biāo)記它。在當(dāng)前迭代周期結(jié)束時,把所有標(biāo)記的像素的值設(shè)為0(背景)。如果某次迭代周期中不存在標(biāo)記點(diǎn)(即圖像中所有點(diǎn)都不同時滿足6個條件),則算法結(jié)束,原始待單像素化圖像去掉所有標(biāo)記點(diǎn)即為單像素化后的結(jié)果圖像。迭代過程中需同時滿足的6個條件詳見參考文獻(xiàn)[6]。
Rosenfeld單像素化算法的步驟如下:對圖像從左向右從上向下按條件處理每個像素,視為一個迭代周期。在每個迭代周期中,對于每一個像素P,進(jìn)行以下6步處理。如果某次迭代周期中不存在需要處理的點(diǎn),則算法結(jié)束,原始待單像素化圖像去掉所有被處理點(diǎn)即為單像素化后的結(jié)果圖像。迭代中6步處理過程詳見文獻(xiàn)[7]。
Zhang并行單像素化算法的步驟如下:對圖像從左向右從上向下按條件處理每個像素,視為一個迭代周期。在每個迭代周期中,對于每一個像素P,進(jìn)行以下4個條件的判斷,如果4個條件都滿足,則將P置0。如果某次迭代周期中不存在需要處理的點(diǎn),則算法結(jié)束,原始待單像素化圖像去掉所有被處理點(diǎn)即為單像素化后的結(jié)果圖像。迭代中4個判斷條件詳見文獻(xiàn)[8]。
Deutsch單像素化算法的步驟如下:對圖像從左向右從上向下迭代每個像素,視為一個迭代周期。在每個迭代周期中,對于每一個像素P,進(jìn)行以下5個判斷,如果5個條件都滿足,則將P置0。如果某次迭代周期中不存在需要處理的點(diǎn),則算法結(jié)束,原始待單像素化圖像去掉所有被處理點(diǎn)即為單像素化后結(jié)果圖像。迭代中的5個判斷條件詳見文獻(xiàn)[9]。
1.5.1 實(shí)驗(yàn)條件
固體發(fā)動機(jī)斷層圖像獲取設(shè)備為我國自主研制的HICT-X450型固體發(fā)動機(jī)無損檢測自動化系統(tǒng)[10-11],斷層圖像經(jīng)邊緣檢測處理后如圖1所示,處理前原始圖像及邊緣檢測算法見文獻(xiàn)[12-13]。
單像素化方法運(yùn)行計(jì)算機(jī)配置如下:CPU為酷睿2、主頻1.8 GHZ、內(nèi)存2 G。
1.5.2 實(shí)驗(yàn)結(jié)果分析
分別采用Hilditch算法、Rosenfeld算法、Zhang并行算法和Deutch算法對圖1進(jìn)行單像素化處理,處理結(jié)果如圖2所示。
通過比較可得出:Hilditch算法得到的邊緣在轉(zhuǎn)折處非常尖銳,Rosenfeld算法得到的邊緣在轉(zhuǎn)折處也較為尖銳,Zhang算法和Deutsch算法得到的邊緣在轉(zhuǎn)折處較為平滑。
4種不同的單像素化方法所用的循環(huán)迭代次數(shù)和總處理時間如表1所示。
圖1 邊緣檢測后的固體發(fā)動機(jī)斷層圖像
(a)Hilditch (b)Rosenfeld
(c)Zhang (d)Deutsch
方法HilditchRosenfeldZhangDeutsch循環(huán)迭代次數(shù)48576處理總時間/s5.271.2195.253.789
Hilditch算法用時最長,迭代次數(shù)最多,Zhang算法用時和迭代次數(shù)次之,不作為單體素化算法的選擇。Rosenfeld算法用時最短,迭代次數(shù)最少,Deutsch算法迭代次數(shù)比Rosenfeld算法多1次,用時大約是Rosenfeld算法的3倍,但Deutsch算法的單像素化效果較Rosenfeld算法的單像素化效果平滑,因此以Deutsch單像素化算法為基礎(chǔ),提出一種固體火箭發(fā)動機(jī)三維數(shù)據(jù)場邊緣檢測結(jié)果的單體素化方法。
與二維邊緣提取類似,三維邊緣提取寬度也較大,因此也需要對提取的發(fā)動機(jī)三維邊緣進(jìn)行單體素化。假設(shè)體素P的鄰域結(jié)構(gòu)和體素編碼如圖3所示。圖像的邊緣用1表示,背景用0表示。
圖3 P鄰域的結(jié)構(gòu)及編碼
算法的步驟如下:對固體發(fā)動機(jī)邊緣三維數(shù)據(jù)場從左向右、從上向下、從前向后迭代每個像素,視為一個迭代周期。在每個迭代周期中,對于每一個像素P,進(jìn)行以下13個條件的判斷,如果13個條件都滿足,則將P置0。如果某次迭代周期中不存在需要處理的點(diǎn),則算法結(jié)束,原始待細(xì)化三維數(shù)據(jù)場去掉所有被處理點(diǎn)即為細(xì)化后的結(jié)果。進(jìn)行判斷的13個條件如下:
(1)2≤x1+x2+x3+x4+x5+x6+x7+x8≤6;
(2)Sx(P)=1;
(3)x1×x3×x5=0或者Sx(x3)≠1;
(4)x7×x3×x5=0或者Sx(x5)≠1;
(5)2≤x1+x9+x13+x11+x5+x16+x18+x14≤6;
(6)Sy(P)=1;
(7)x1×x13×x5=0或者Sy(x13)≠1;
(8)x18×x13×x5=0或者Sy(x5)≠1;
(9)2≤x3+x10+x13+x12+x7+x17+x18+x15≤6;
(10)Sz(P)=1;
(11)x3×x13×x7=0或者Sz(x13)≠1;
(12)x18×x13×x7=0或者Sz(x7)≠1;
(13)P=1。
Sx(P)的含義是圖3中P的鄰域,排成序列x1,x2,x3,x4,x5,x6,x7,x8,x1,序列從0變化到1的次數(shù)。
Sy(P)的含義是圖3中P的鄰域,排成序列x1,x9,x13,x11,x5,x16,x18,x14,x1,序列從0變化到1的次數(shù)。
Sz(P)的含義是圖3中P的鄰域,排成序列x3,x10,x13,x12,x7,x17,x18,x15,x3,序列從0變化到1的次數(shù)。
實(shí)驗(yàn)條件同1.5.1節(jié)中所述。圖4為單體素化前后的三維邊緣檢測結(jié)果??梢姡疚乃龇椒軌驕?zhǔn)確單體素化固體發(fā)動機(jī)的三維邊緣。
(a)未單體素化 (b)單體素化后
單體素化的邊緣是固體發(fā)動機(jī)體空間缺陷特征參數(shù)精確測量的基礎(chǔ)。通過對Hilditch算法、Rosenfeld算法、Zhang并行算法和Deutch算法等經(jīng)典二維單像素化方法比較分析,得出Deutsch算法是最適用于固體發(fā)動機(jī)斷層圖像的單像素化方法,并以此方法為基礎(chǔ),向三維空間拓展,提出一種固體發(fā)動機(jī)體空間邊緣檢測結(jié)果單體素化方法,經(jīng)實(shí)驗(yàn)驗(yàn)證,此方法單體素化結(jié)果滿足精確測量的需求。
參考文獻(xiàn):
[1] Roberts L G.Machine perception of three-dimensional solids[M].Cambridge:MIT Press,1965:159-197.
[2] Prewitt J.Object enhancement and extraction[M].New York: Academic Press,1970:30-45.
[3] Davi L S.A survey of edge detection techniques[J].CGIP,1975,4:248-270.
[4] Canny John.A computational approach to edge detection[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1986,PAMI-8(6):679-698.
[5] Robinson G S.Edge detection by compass gradient masks[J].CGIP,1975,6(5):753-763.
[6] http://wk.baidu.com/view/78ef110dba1aa8114431d93e.html
[7] 孫燮華.數(shù)字圖像處理-Visual C #.NET編程與實(shí)驗(yàn)[M].北京:機(jī)械工業(yè)出版社,2010:224.
[8] Zhang T Y,Suen C Y.A fast parallel algorithm for thinning digital patterns[J].Comm. ACM,1984,27(3): 236-239.
[9] 孫燮華.數(shù)字圖像處理[M].北京:機(jī)械工業(yè)出版社,2010:175.
[10] 楊興根,侯本學(xué),張存厚. 固體火箭發(fā)動機(jī)無損檢測自動化系統(tǒng)設(shè)計(jì)思想[J].飛航導(dǎo)彈,2001,31 (10):41-43.
[11] 楊興根,陳宇杰.固體火箭發(fā)動機(jī)專用ICT機(jī)械掃描系統(tǒng)[J].推進(jìn)技術(shù),1999,20(6):106-108.
[12] 于光輝,盧洪義,朱敏,等.基于引力模型的固體火箭發(fā)動機(jī)CT圖像邊緣檢測[J].核電子學(xué)與探測技術(shù),2012,32(2):184-187.
[13] 于光輝,盧洪義,朱敏,等.基于引力模型的固體火箭發(fā)動機(jī)三維數(shù)據(jù)場邊緣提取[C]//第四屆固體導(dǎo)彈技術(shù)學(xué)術(shù)交流會文集.2012.