曹冬梅,郭 壯,李東波
(1.鐘山職業技術學院工業與信息化學院,江蘇 南京 210049) (2.南京理工大學機械工程學院,江蘇 南京 210094)
相比于傳統機械系統,智能視覺在準確性、速度和精度方面具有巨大的優勢。隨著視覺技術得到長足的發展,智能化的視覺系統在眾多領域得到了廣泛應用[1]。目前,對于種類和數量很少的產品,尚可人工完成分辨和定位等工作,但是對于種類復雜、數量龐大的產品,就需要智能系統的幫助。本文所述的條煙智能視覺系統具有運行準確性高、兼容性強等特點,是煙草生產系統未來發展的方向,因此需要進行條煙分類識別與定位方面的技術研究。
目前全閾值法、局部閾值法和適應閾值法是圖像分割中的常用算法[2]。閾值方法具有局限性,往往只適應一種或者一類圖像,所以方法的選擇成為條煙圖像處理的重中之重。在本文的研究對象中,條煙灰度值與背景灰度值之間有著巨大的差異,所以選擇全閾值法將優于其他兩種方法,其可以快速地分割背景,將圖像二值化。通過合理設定閾值T的大小,對圖像閾值進行處理,關系式如下:
(1)
式中:gx,y為分割的閾值;fx,y為圖像域。
處理完成后1表示條煙像素,0表示背景像素,然后利用Halcon灰度值工具箱,迅速得到全閾值下不同形狀的條煙的分布圖,如圖1所示。

圖1 不同品牌條煙灰度直方圖
分割完成后,將所有灰度值為1的部分連通,同時標記相同的記號,對于灰度值為0的部分同樣聯通,也標記相同的記號,通過目前較為成熟的像素點順序標記和行程標記的方法進行圖像連通性分析。
本文采用順序標記的方法對條煙圖像進行連通分析,過程分為兩步:首先掃描各個像素點,進行標記處理;隨后通過二次掃描合并重復標記的像素點和不同編號的像素點[3]。
對于條煙表面的缺失部分,如孔洞,采用像素填充的方法,先使用fill_up算法進行像素填充,然后利用selet_shape_std算法將條煙所在區域選擇出來。圖2中右側的圖為圖像預處理后提取得到的條煙區域。

圖2 圖像預處理后條煙區域
所謂邊緣檢測,即是找出圖像的局部突變區域。常見的突變為灰度值突變、顏色突變和紋理突變,通過邊緣檢測找出圖形的局部區域與其他區域之間、像素目標之間以及條煙與背景之間的突變特征和位置[4],突變將導致信號的高頻化,與噪聲信號融為一體,即邊緣追蹤的結果為邊緣特征與噪聲的混合結果[5],所以,條煙邊緣檢測是本文的重中之重。本系統中的邊緣檢測方法為一階、二階導數法。灰度值的求導如圖3所示,通過導數求解找出極大值和零點的位置。本系統中條煙邊緣檢測通過濾波、增強、檢測、定位4個步驟完成。
經過預處理之后的條煙圖像為條煙的位置區域(包含方向),通過gen_contour_region_xld算法將圖像區域轉化為條煙的輪廓線,如圖4中的白色線條即為轉化之后的條煙輪廓。

圖3 圖像灰度變化及導數

圖4 條煙區域及其XLD輪廓
本系統采用匹配模板的定位功能來確定條煙在圖像坐標系中的位置,其中包括坐標、旋轉角度、縮放比等參數。為了提高圖像處理算法的效率,本文采用圖像金字塔法,通過縮小圖像尺寸達到快速運行的目的,其原理如圖5所示。

圖5 圖像金字塔原理
首先提取經過預處理的條煙圖像的特征區域,為選擇模板做準備,或者以此來創建模板,此外還可以利用CAD軟件提前繪制模板,模板的參數主要為層數、角度、角度最小值、極性對比度等;其次根據所獲取的條煙圖像的定位以及與其相匹配的模板找出最佳模板,參數設置包含匹配系數、數目、重疊度、比例和分度值等;最后將模板去除,釋放內存。表1是對模板匹配主要算法的介紹。

表1 模板匹配主要算法
條煙定位與匹配情況如圖6所示,其中條煙的位置坐標和偏置角度可以動態顯示。

圖6 條煙定位結果
機器學習可以理解為應用計算機對數據進行建模,其本質是一種統計方法,主要應用在模式識別、聚類分析、回歸分析、密度函數估計、人工神經網絡等方面[6-7]。
根據圖像的特征將圖像處理結果分類,可以分為灰度值、直方圖、紋理等,其中特征包括面積、長度、圓度、緊密度等。
灰度共生矩陣表示圖片像素的概率密度的聯合分布,不僅反映相鄰區域的灰度值變化,也反映方向和幅度的變化以及像素點之間的位置分布[7]。本系統采用能量、相關性、對比度、熵、均值、方差、各向異性等紋理特征對條煙分類,流程如圖7所示。
對20種不同品牌條煙進行分類識別的主要流程如下:
1)創建分類器,從均值、相關性、對比度等特征入手,對樣本進行訓練,其維度設置為7維,對不同種類品牌的條煙設置樣本,分類個數為20;
2)提取上述20種不同品牌條煙的分類特征,將訓練樣本構成不同的類;

圖7 分類識別流程
3)讀取其他位置條煙的圖像特征,分類器自動識別不同條煙。
圖8為經訓練樣本學習之后,對圖像的分類識別結果。

圖8 條煙分類結果
經過支持向量機訓練模型測試,識別率達到99.8%,誤差小于0.2%,識別速度達到9條/min,檢測結果較好。
在煙草行業的實際測試中,通過增加樣本數量,對條煙的分類識別率可達99.97%以上,誤檢率小于0.03%,檢測速度可達8~10條/min,圖案偏移量為1mm,檢測效果良好,檢測精度見表2。

表2 檢測精度
本文主要研究條煙的分類識別與定位,測試結果表明對煙草行業效果良好,但是在實際應用中,某些場合的檢測速度仍然達不到生產的要求,還需要對各個算法進行優化,以滿足生產需求。