楊 洋
項輝宇
冷崇杰
薛 真
(北京工商大學材料與機械工程學院,北京 100048)
基于OpenCV的食品包裝缺陷分割方法
楊 洋
項輝宇
冷崇杰
薛 真
(北京工商大學材料與機械工程學院,北京 100048)
針對現有食品包裝表面印刷缺陷分割算法中分割速度慢、精度低的問題,提出基于OpenCV實現圖像差分與形態學處理結合的表面缺陷分割方法。分別對模版圖像和待測圖像進行高斯低通濾波運算;將預處理后的兩幅圖像作差分運算,得到其差分結果;采用形態學開運算來去除差分圖像的噪聲并標出目標缺陷位置。選取污點、飛墨、漏印3類缺陷樣本各30組進行試驗,結果表明:該法能夠達到的平均準確率為91.51%,93.41%,94.14%,平均的分割時間僅為 46.6 ms。
食品包裝;視覺檢測;圖像分割;OpenCV
對食品包裝行業來說,其包裝外觀印刷中的漏印、飛墨、污點等缺陷,直接影響消費者對該商品的第一印象。隨著現代商品包裝工業的發展,人們對商品包裝的外觀設計要求越來越高。特別是隨著商品市場的繁榮,人們更多地依賴于商品的外觀來評價商品的檔次。因此,在包裝出廠的檢測階段,對外觀缺陷的發現與剔除就顯得尤為重要。包裝外觀缺陷檢測的關鍵是準確且迅速地對包裝表面圖像進行分割,在此分割的基礎上對目標缺陷進行采集與分析,從而提升包裝印刷缺陷產品在線剔除的自動化水平。缺陷分割是指將感興趣的缺陷目標從捕獲的眾多圖像背景信息(如輪廓、顏色、形狀、亮度)中分離出來,使缺陷成為分析和處理對象的過程,是視覺檢測的關鍵。
目前,圖像分割算法主要有:閾值分割法[1]、基于區域的分割算法[2]以及混合分割算法[3]。閾值分割算法因其實現簡單、性能穩定等特點曾獲得廣泛應用,然而在對像素間關系的區分方面又顯出一些劣勢,往往容易使不同的分割區域產生混淆[4]。由于噪聲和灰度分布的不均勻,基于區域的分割算法容易產生過分割[5]。混合分割算法則多是融合某幾種理論組合而來,這類方法往往有運算量大,結構復雜的特點。此外,賀振東等[6]利用背景差分法實現了高鐵鋼軌表面缺陷圖像的分割,解決了鐵軌表面缺陷分割過程中圖像光照變化、反射不均、特征少等不利因素的影響。胡敏等[7]采用形態學標記的方法,對標記后的梯度圖像進行分水嶺算法的圖像分割,該方法有效地解決了缺陷輪廓過分割的問題。楊慧斌等[8]利用OCR識別技術實現了針對印刷字符錯碼和漏碼的分割檢測。
為實現包裝印刷中的缺陷分割,本研究提出基于OpenCV采用背景圖像差分和形態學處理結合的方法。對模版圖像和待測圖像進行采集和預處理,求取二者之間的差分結果并進行二值化處理,利用形態學處理的方法對差分圖像開運算去除噪聲獲得目標缺陷。旨在提出一種解決缺陷分割過程中分割速度慢、精度低的問題的方法。
通過圖像采集系統,獲取模版圖像和待測圖像,針對兩幅圖像通過運用高斯濾波器實現初步圖像降噪的預處理[9]。將待測圖像與模版圖像差分,獲得差分結果。運用形態學開運算達到去噪的精細處理,提取出缺陷分割結果。整體流程見圖1。

圖1 整體流程
1.1 高斯濾波
高斯濾波一般有2種實現方式:用離散化窗口滑窗卷積和通過傅里葉變換[10]。考慮到滑窗計算量大的問題,選用基于傅里葉變換的實現方法[11]137-166。用f(x,y)表示一幅M×N的標準圖像,其二維傅里葉變換公式為:
(1)
式中:
f(x,y)——空間域圖像的灰度值表示,像素;
M,N——圖像的像素坐標,像素;
F(u,v)——頻率域圖像的幅值與相位角(其中,實部表示圖像的幅值,像素;虛部表示圖像的相位角,弧度);
u——圖像在頻率域的橫坐標(u=0,1,2,…,M-1),像素;
v——圖像在頻率域的縱坐標(v=0,1,2,…,N-1),像素。
傅里葉逆變換公式為:
(2)
高斯低通濾波器的傳遞函數為:
H(u,v)=e-D2(u,v)/2σ2,
(3)
式中:
D(u,v)——距傅里葉變換原點的距離,像素;
σ——標準偏差(表示高斯曲線擴展的程度)。


(4)
1.2 圖像差分
圖像差分是一種圖像的代數運算,即通過計算兩幅圖像所對應像素點的差來表現出兩幅圖像的差異[12]。由于該方法原理簡單,計算效率高,因而其在圖像分割上有非常廣泛的應用,尤其是對于在線檢測等實時性強的圖像處理過程,更是有良好的檢測效果。
如果用f(x,y)表示模版圖像,g(x,y)表示待測圖像。兩個圖像的差分運算存在3種情況,即正差、負差和絕對值差。h1(x,y),h2(x,y),h3(x,y)分別是3種情況時對應的結果圖像[13]。
(1) 正差用模版圖像減去待測圖像表示:
(5)
當f(x,y) (2) 負差用待測圖像減去模版圖像表示: (6) 同理,當f(x,y)>g(x,y)時,其結果也做歸零處理。此時,這些像素間的差異信息也將缺失。 (3) 絕對差的計算方法是采用模板圖像和待檢測圖像求取絕對差,能夠有效彌補正差和負差產生的部分差異信息丟失的問題,其表示見式(7)。 h3(x,y)=|f(x,y)-g(x,y)|。 (7) 1.3 形態學處理 受圖像表面特征的影響,差分圖像的結果中有時會存在一些隨機出現的區域噪聲。而通過形態學開運算的處理,能夠將這些噪聲有效過濾,使正確的缺陷輪廓得以保留[11]420-454。膨脹和腐蝕是形態學中的2種基礎操作,開運算是經過先腐蝕后膨脹的組合過程來實現的。對于差分圖像h3(x,y),其開運算的處理過程可表示為: h3(x,y)°E=[h3(x,y)ΘE]⊕E。 (8) 其中E為3×3的矩形結構元素。 2.1 試驗步驟 本試驗硬件環境為:Intel酷睿Q9500,主頻2.83 GHz的CPU,4 GB內存的PC機。檢測用工業攝像頭型號為維視MV-1300UC。軟件環境為Win7操作系統下VisualStudio2010與OpenCV2.4.8共同搭建的算法實現平臺。 缺陷圖像的分割過程(見圖2):① 在試驗平臺上采集模版圖像和待測圖像,通過高斯濾波進行初步降噪的預處理;② 對經過處理的兩幅圖像進行差分運算得到其差分結果,此時的差分圖像上會含有一些隨機產生的噪點;③ 運用形態學開運算對二值化的差分圖像進行去噪聲處理,最終提取出缺陷目標的分割結果。其中,各步驟中的運算耗時見表1。 2.2 結果分析 運用本方法,以包裝印刷中的污點、飛墨、漏印3類缺陷樣本各30組進行分割試驗,圖3(a)~(c)為待測缺陷樣本,圖3(d)~(f)為對應的分割提取結果。經過統計所有90個樣本的分割時間,計算出平均耗時為46.6 ms。 圖2 缺陷分割過程 計算步驟計算時間/ms高斯濾波 15.5圖像差分 2.6差分結果二值化3.2形態學開運算 22.4總計 43.7 圖3 樣本分割結果 為評估圖像分割方法的實際效果,引入了灰色聚類決策理論,并依據此理論建立了決策模型[14]。對于所選3類缺陷樣本的分割結果,利用該模型進行評價分析,提取出正確面積因子、錯誤面積因子和形狀因子作為參考因素。 正確面積因子: mr=Tr/T, (9) 式中: mr——正確面積因子(屬于越大越優型); T——目標的實際面積,像素; Tr——目標正確分割部分的面積,像素。 錯誤面積因子: mw=Tw/T, (10) 式中: mw——錯誤面積因子(屬于越小越優型); Tw——錯誤分割的面積,像素。 形狀因子: (11) 式中: mf——形狀因子; lT——標準缺陷周長,像素; lr——分割缺陷周長,像素。 將圖像中的影響因子組成向量X,圖像的分割精度定義為,Ρ=∑Wi·Xi,其中Wi表示第i個影響因子的權值,∑Wi=1。缺損情況下,W=[1/3,1/3,1/3];當缺陷區域出現過分割時,定義W=[1/5,3/5,1/5]。分割結果越準確,其分割精度越接近100%。表2列出了部分樣本分割精度的結果。由表2可知,不同權值的設置能夠有效抑制過分割的影響,提升分割精度。 表2 部分樣本的分割精度 實時檢測與分割出包裝印刷中的缺陷,是流水線檢測中的關鍵環節。通過快速準確的缺陷分割,能夠有效定位缺陷區域,并剔除缺陷產品。本研究采用圖像差分算法對模版圖像和待測圖像進行絕對差分計算,得到差分結果;結合形態學開運算處理去除差分結果中的隨機區域噪聲,同時通過OpenCV平臺驗證了本方法的可行性。試驗中,使用該方法對三類主要缺陷各30組樣本進行缺陷分割,結果表明,三類缺陷分割的平均準確率分別達到91.51%,93.41%,94.14%,平均的運算時間為46.6 ms。本研究方法分割精度和時間均能滿足實時性在線檢測的要求。 [1] 龍建武, 申鉉京, 陳海鵬. 自適應最小誤差閾值分割算法[J]. 自動化學報, 2012, 38(7): 1 134-1 144. [2] 徐少平, 劉小平, 李春泉, 等. 基于區域最大相似度的快速圖像分割算法[J]. 光電子·激光, 2013(5): 990-998. [3] 盧夏衍, 李昕, 冉鵬, 等. 溫室幼苗圖像的多算法融合區域生長分割算法研究[J]. 中國農機化學報, 2016, 37(6): 89-93. [4] KANG Chung-chia, WANG Wen-June, KANG Chung-hao. Image segmentation with complicated background by using seeded region growing[J]. AEU-International Journal of Electronics and Communications, 2012, 66(9): 767-771. [5] 曹軍, 許雷, 張怡卓, 等. 實木地板圖像差分和形態學分割算法研究[J]. 安徽農業科學, 2013(28): 11 403-11 406. [6] 賀振東, 王耀南, 劉潔, 等. 基于背景差分的高鐵鋼軌表面缺陷圖像分割[J]. 儀器儀表學報, 2016, 37(3): 640-649. [7] 胡敏, 蔡慧芬. 基于形態學標記連通的分水嶺圖像分割[J]. 電子測量與儀器學報, 2011, 25(10): 864-869. [8] 楊慧斌, 閆娟. 基于LabVIEW的食品包裝噴碼視覺檢測方法[J]. 食品與機械, 2016, 32(4): 123-126. [9] 何小虎. 基于計算機視覺的啤酒瓶空瓶檢測圖像采集技術[J]. 食品與機械, 2016, 32(5): 105-107. [10] 姒紹輝, 胡伏原, 顧亞軍, 等. 一種基于不規則區域的高斯濾波去噪算法[J]. 計算機科學, 2014(11): 313-316. [11] RAFAEL C Gonzalez, RICHARD E Woods. 數字圖像處理[M]. 2版. 阮秋琦, 阮宇智, 譯. 北京: 電子工業出版社, 2007. [12] 楊單. 基于圖像差分特征的彩色圖像差分預測與信息提取算法研究[J]. 計算機科學, 2015(1): 308-311. [13] 彭向前. 產品表面缺陷在線檢測方法研究及系統實現[D]. 武漢: 華中科技大學, 2008: 45-48. [14] 吳志川, 彭國華. 基于灰色聚類決策的圖像分割性能評價[J]. 計算機工程與應用, 2012, 48(19): 197-200. Food packaging defect segmentation based OpenCV method YANGYang XIANGHui-yu LENGChong-jie XUEZhen (CollegeofMaterialScienceandMechanicalEngineering,BeijingTechnologyandBusinessUniversity,Beijing100048,China) Assembly line detection more depend on the machine vision technology, and image segmentation is the key step in the detection. To solve the problem of slow speed and low accuracy of defects segmentation methods to the surface defects of food packing, proposed a segmenting method based on image difference and mathematical morphology in OpenCV. Firstly, compute the template image of the target image and filter them by a low pass filter. Secondly, differential operation is happened on the two pretreated images to obtain the differential image. Finally, using morphological opening operation to remove the noise on the difference image and get the position of defects image. In this paper, 30 groups of defect samples, such as stain, misting and stripping, were selected and the experimental results were recorded. The results showed that the average accuracies of the proposed method were 91.51%, 93.41%, 94.14%, respectively, and the average segmentation time was only 46.6 ms. food packaging; visual inspection; image segmentation; OpenCV 楊洋,男,北京工商大學在讀碩士研究生。 項輝宇(1966—),男,北京工商大學教授,博士。 Email:xianghy@th.btbu.edu.cn 2017—02—05 10.13652/j.issn.1003-5788.2017.07.0242 試驗




3 結論