魏劍新
摘 要: 自動檢測壓力容器數(shù)量是壓力容器氣密性視覺檢測應用中的重要環(huán)節(jié)。為此,提出了基于邊緣聚類與篩選的壓力容器數(shù)量視覺檢測方法:首先,針對氣密性試驗場地多樣性和環(huán)境光變化大等干擾導致圖像難以二值化的問題,提出基于直方圖波峰數(shù)量的動態(tài)閾值方法;其次,提出8鄰域卷積算子以檢測壓力容器的輪廓;然后,采用Hough直線算法檢測出壓力容器邊緣,并通過邊緣聚類與篩選得到壓力容器輪廓上下邊緣進而實現(xiàn)壓力容器數(shù)量的檢測。經(jīng)實驗驗證,該方法簡單高效,可滿足壓力容器氣密性視覺檢測的實際應用。
關鍵詞: 壓力容器; 圖像識別; 灰度直方圖; 邊緣檢測; 直線檢測
中圖分類號:TP391.41 文獻標志碼:A 文章編號:1006-8228(2017)11-08-05
A method of counting pressure vessels based on edge clustering and filtering
Wei Jianxin
(Traffic police detachment of Lishui Public Security Bureau, Lishui, Zhejiang 310030, China)
Abstract: The automatic detection of the number of pressure vessels is an important part of the visual inspection of pressure vessel air tightness. For this purpose, a visual inspection method of pressure vessel number based on edge clustering and filtering is put forward: First, a novel binarization method is proposed according to the number of peaks of the gray histogram, which overcomes the diversity of the air tightness test site and the change of the ambient light; Second, the 8-neighborhood convolution operator is proposed to extract the outline of the pressure vessel; Then the edges of the pressure vessel is obtained by using Hough straight line algorithm, and the upper and lower edges of the pressure vessel are measured by edge clustering and filtering to realize the detection of the number of pressure vessels. The experimental results show that the method is simple and efficient, and can meet the practical application of visual inspection of pressure vessel air tightness.
Key words: pressure vessel; image recognition; histogram; edge detection; line detection
0 引言
近年來,隨著計算機視覺的自動檢測技術在工業(yè)中的廣泛應用,壓力容器生產(chǎn)廠家也開始采用計算機視覺方式實現(xiàn)浸水法氣密性檢測的自動化,如Johnsson F等[1]利用圖像處理技術對二維流化床中氣泡的大小、速率、空隙率進行研究分析;Hubers JL等[2]對三相流化床中氣泡拍攝后從氣泡隊列中計算得出氣相含率;唐遠河等[3]提出了基于片光源二維平面的氣泡測速方法,能夠?qū)Υ怪庇谄庠捶较蜻\動的氣泡進行有效地測速;Busciglio A等[4]在研究氣固兩相流體中氣泡行為時,結合圖像處理技術,對氣泡的大小、速率進行了檢測;閆麗等[5]提針對氣液兩相流場中氣泡行為的三維測量算法,實現(xiàn)了對單個氣泡的行為測量,并具有較高的測量精度;O.Zielinski等[6]將光流法應用于水中氣泡的檢測,并通過實驗分析了可行性;吳春龍等[7]提出了一套基于PLC控制的氣密性自動檢測系統(tǒng),并將基于光流理論的Hom-Schunck圖像處理算法應用于氣液兩相流場中氣泡的識別與跟蹤,實現(xiàn)了對鋼瓶漏氣點氣泡的檢測與識別;甘建偉等[8]提出一種基于FPGA的氣泡邊緣檢測圖像處理系統(tǒng),等等。
目標數(shù)量的自動識別通常是視覺檢測應用中不可或缺的環(huán)節(jié)之一,如管接頭上密封圈數(shù)量的自動檢測[9]、儲備糧倉袋裝糧數(shù)量智能測算[10]、疊層紙張數(shù)量檢測[11-12]、儲備生豬統(tǒng)計[13]、高黏著度棒材的精確檢測計數(shù)[14]等。在壓力容器氣密性視覺檢測中,存在同樣的問題,而在現(xiàn)有壓力容器氣密性試驗視覺檢測應用中,大多數(shù)[7-8]采用交互方式直接輸入鋼瓶數(shù)量的數(shù)據(jù),為此,本文提出基于邊緣聚類與篩選的壓力容器數(shù)量視覺檢測方法。
1 檢測方法框架
針對計算機視覺在壓力容器氣密性檢測中的實際應用,提出一種基于邊緣聚類與篩選的壓力容器數(shù)量視覺檢測方法。如圖1所示,首先根據(jù)壓力圖像灰度直方圖波峰數(shù)采用不同的二值化方法分割出壓力容器;然后,采用8鄰域卷積算子提取壓力容器的輪廓;最后,結合Hough直線檢測和先驗知識篩選出壓力容器特征輪廓并進行計數(shù),從而檢測出壓力容器數(shù)量。endprint
圖1 壓力容器數(shù)量視覺檢測方法流程
2 壓力容器輪廓識別
考慮壓力容器氣密性試驗場地背景的復雜性和多樣性,對壓力容器圖像進行二值化時將無法使用固定的閾值,下面提出一種基于直方圖波峰數(shù)的動態(tài)閾值二值化方法。
2.1 壓力容器圖像二值化
獲得壓力容器圖像的灰度分布直方圖后,以每5個像素值為一個灰度級,將灰度范圍劃分為51個灰度級.統(tǒng)計各個灰度級中像素點數(shù)量的分布情況,令,其中i表示灰度級序號。根據(jù)式⑴對集合P進行標記,得到集合,pi計算如式⑴所示:
其中,若pi=1,則認為灰度級ni處于灰度直方圖波峰處,若pi=0,則認為灰度級ni處于灰度直方圖非波峰處,K表示波峰總個數(shù),計算如式⑵所示。
當K=2時,使用OTSU進行二值化操作;當K=3時,使用雙閾值二值化;當K為其他值時,統(tǒng)一使用灰度均值進行二值化;根據(jù)直方圖波峰數(shù)量的二值化過程如圖2和圖3所示。
2.2 壓力容器輪廓提取
為得到壓力容器邊緣, 通常采用Sobel、Canny等傳統(tǒng)邊緣檢測算子來解決,但這些方法需要對圖像求導計算梯度。針對二值化壓力容器圖像的特點,下面提出一種8領域卷積算子,如式⑶所示。利用該算子對二值圖像進行卷積運算,統(tǒng)計每個像素點的8鄰域值的情況,即可確定該像素點是否為邊緣點,從而實現(xiàn)壓力容器的輪廓提取。
從二值圖像的左上角第一個像素開始,使用式⑶的算子對每個像素點做卷積運算。其中,針對圖像最外層邊緣的像素點,使用復制邊緣像素的方法,在圖像外圈加一層與邊緣點等值的像素點,用于計算卷積值。若當前像素點與G的卷積結果不為零,則該像素點為邊緣像素點;若當前像素點與G的卷積結果為零,則該像素點為背景像素點。使用該算法對檢測池中待測壓力容器的二值化圖像進行輪廓提取,結果如圖4所示。
圖4 壓力容器輪廓提取
3 壓力容器數(shù)量檢測
如圖4所示,壓力容器輪廓圖像較好地反映壓力容器形狀,可利用壓力容器上下邊緣輪廓的數(shù)量計算出壓力容器的數(shù)量。然而,若直接對二值邊緣圖像進行Hough直線檢測,圖像中的其他直線的干擾導致無法正確得到壓力容器上下邊緣。為此,提出一種基于邊緣聚類的壓力容器數(shù)量檢測方法,首先,通過斜率對所有線段進行聚類,然后, 對同一聚類下的線段進行合并,最后,根據(jù)壓力容器輪廓斜率范圍和線段長度等先驗知識排除干擾線段,完成對壓力容器的數(shù)量識別。具體步驟如下。
Step 1 壓力容器邊緣檢測。在壓力容器輪廓圖像的基礎上使用Hough變換對圖像中的輪廓進行直線識別, 得到線段集合,其中n表示線段數(shù)量。計算每條線段li的斜率, 利用斜率對線段進行聚類,得到m個線段子集Li,i=1,2,…,m,使其同時滿足式⑷、⑸、⑹和⑺:
其中,lij表示子集Li中的第j條線段;mi表示子集Li中的線段數(shù);sij表示子集Li中第j條線段的斜率,j=1,2,…,mi;siq表示子集Li中第q條段線的斜率,q=1,2,…,mi;max表示取較大值;
Step 2 壓力容器邊緣聚類。對聚類后的線段進行合并,若子集Li中的任意兩條線段Lij與Liq在同一條直線上,Lij∈Li,Liq∈Li,j=1,2,…,mi,q=1,2,…,mi,j≠q,則將這兩條線段合并為一條新的線段,記為lnew,lnew的兩個端點分別為Lij和Liq四個端點中距離最遠的兩個端點;將lnew歸入集合Li中,同時將Lij與Liq從子集Li中移除;重復以上步驟直至無線段可以合并,將所有新的Li進行并集操作,得到新的線段集合L;
Step 3 基于斜率的壓力容器邊緣篩選。由以上述步驟可得到聚類合并后的線段集合L,為了精確計算壓力容器上下邊緣的線段數(shù)量,需先排除干擾線段。此時,可根據(jù)斜率和線段長度對線段集合做進一步篩選,具體地,根據(jù)式⑻和⑼對上述線段集合進行過濾,將不滿足式⑻和⑼的線段從L中剃除:
其中,ki表示線段集合L中的線段li對應的斜率,k0表示事先根據(jù)攝像頭的位置標定出的待檢驗壓力容器的上下邊緣在圖像中的斜率,如圖5所示,從左往右依次為Hough直線檢測結果圖(a)和邊緣聚類合并后的示意圖(b)。
Step 4 基于長度標定的壓力容器邊緣篩選。根據(jù)式⑽對最終集合L中的線段進行篩選,只保留滿足式⑽的線段,其中Leni表示線段集合L中的線段li對應的像素長度,Len0表示事先根據(jù)攝像頭的位置標定出的待檢測壓力容器的上下邊緣在圖像中的像素長度最小值。
Step 5 壓力容器數(shù)量計算。根據(jù)式⑾計算壓力容器數(shù)量,其中M表示壓力容器輪廓的上下邊緣數(shù)量,n表示集合L中最終剩下的線段數(shù)量。
4 實驗結果與分析
在浙江省某廠家實施的壓力容器氣密性視覺檢測中,采用上述算法對300張浸水池中的壓力容器圖像進行數(shù)量檢測,其中檢測結果正確的為278號,正確率為92.7%。
實驗結果表明,壓力容器數(shù)量檢測算法效果較好,正確率較高。在實際應用中,由于光照影響,檢測池水面存在廠房頂部天窗的倒影,導致算法檢測失準,如圖6所示,其中圖6(a)表示采集的原始圖像,圖6(b)是壓力容器輪廓提取結果,圖6(c)是Hough直線檢測結果,圖6(d)是邊緣聚類與篩選之后的結果。根據(jù)現(xiàn)有算法,得到的數(shù)量將為M=3/2=1.5只,這是由于檢測池水面存在廠房頂部天窗的倒影,導致在輪廓提取時兩壓力容器之間的輪廓合并。為此,將式⑾修正為式⑿可解決該問題,其中Round表示取整,采用相同的樣本,正確率提高到了98.3%。其余檢測錯誤的,是由于反光導致兩三只壓力容器連成一片,這可通過增加合適的工業(yè)光源來提高成像質(zhì)量,由此解決這一問題。
5 結束語
針對壓力容器氣密性視覺檢測應用中如何自動識別壓力容器數(shù)量的問題,提出了基于邊緣聚類與篩選的壓力容器數(shù)量視覺檢測方法。首先,提出基于直方圖波峰數(shù)的動態(tài)閾值方法實現(xiàn)圖像的二值化方法;其次,利用提出的8鄰域卷積算子檢測出壓力容器輪廓;然后,采用Hough直線算法檢測出壓力容器邊緣,并通過邊緣聚類與篩選得到壓力容器輪廓上下邊緣進而實現(xiàn)壓力容器數(shù)量的檢測;最后,以浙江省某廠家的壓力容器氣密性視覺檢測為例,對上述算法進行了實驗驗證。實驗結果初步表明,方法簡單有效。
本方法的核心思想是通過圖像識別的方法檢測出壓力容器上下邊緣的總數(shù)從而計算出壓力容器的數(shù)量,其立足點在于每只壓力容器上下邊緣成對出現(xiàn)。實驗結果說明,本方法可部分地克服氣密性試驗場地多樣性和光照不均等所帶來的影響,同時克服傳統(tǒng)Sobel、Canny及Hough等邊緣檢測算法導致邊界線冗余的等問題,但在實際應用過程中,仍會存在部分因光照問題導致檢測錯誤的情況,為此,通過增加合適的工業(yè)光源可克服這一不足。
參考文獻(References):
[1] Johnsson F, Shen L, Bo L. Digital image analysis of
hydrodynamics two-dimensional bubbling fluidized beds[J].Chemical Engineering Science,2004.59(13):2607-2617
[2] Hubers J L, Striegel A C, Heindel T J, et al. X-ray
computed tomography in large bubble columns[J].Chemical Engineering Science,2005.60(22):6124-6133
[3] 唐遠河,解光勇,劉漢臣等.基于粒子成像測速技術的水中氣
泡界面的光學性質(zhì)研究[J].物理學報,2006.55(5):2257-2262
[4] Busciglio A, Vella G, Micale G, et al. Analysis of the
bubbling behaviour of 2D gas solid fluidized beds: Part II. Comparison between experiments and numerical simulations via Digital Image Analysis Technique[J]. Chemical Engineering Journal,2009.148(1):145-163
[5] Zielinski O, Saworski B, Schulz J. Marine bubble detection
using optical-flow techniques[J].Journal of the European Optical Society Rapid Publications,2010.5(1):138-138
[6] 閆麗.氣液兩相流場中氣泡行為3D測量關鍵技術研究[D].天
津大學碩士學位論文,2006.
[7] 吳春龍,潘海鵬,夏永明.基于光流法的氣密性檢測裝置研究[J].
機電工程,2013.30(8):947-951
[8] 甘建偉,秦付軍,曹波.氣泡邊緣檢測的FPGA圖像處理系統(tǒng)的
設計[J].中國農(nóng)機化學報,2015.36(2):293-296
[9] 周律,蔡錦達,劉平,錢煒.管接頭上密封圈數(shù)量在線視覺檢測
方法[J].計算機應用,2009.29(3):174-176
[10] 林鷹,劉永,孫越恒.基于圖像處理的儲備糧倉袋裝糧數(shù)量
智能測算的研究[J].計算機應用研究,2009.26(6):2393-2395
[11] 陳飛,朱海斌,賈康成,肖昌炎.基于相機陣列的疊層紙張數(shù)
量檢測[J].計算機工程與應用,2015.51(13):168-171
[12] 楊碩,彭雙,肖昌炎.用于疊層紙張圖像分析計數(shù)的快速直
線增長算法[J].計算機應用與軟件,2015.9:188-191
[13] 張?zhí)礻?,梁炎森,何志?圖像識別計數(shù)在儲備生豬統(tǒng)計的
應用[J].計算機應用與軟件,2016.12:173-178
[14] 徐源,方康玲,劉新海.基于凸殼式剝離的高黏著度棒材檢
測計數(shù)方法[J].計算機應用與軟件,2015.3:220-223endprint