楊嶺玉 ,任淑艷 ,余佳琦 ,段海龍
(1.天津職業(yè)技術師范大學自動化與電氣工程學院,天津 300222;2.天津職業(yè)技術師范大學天津市信息傳感與智能控制重點實驗室,天津 300222)
隨著紡織企業(yè)占市場經(jīng)濟比重的不斷增大,生產(chǎn)成本儼然成為紡織企業(yè)競爭的重要指標之一[1]。生產(chǎn)過程中,從絡筒機上退下的紗管仍有殘紗存在的可能,因此需要根據(jù)殘紗的有無來進行紗管的分揀。傳統(tǒng)的檢測方法采用人工檢測或接觸式檢測。人工檢測成本高且識別率不穩(wěn)定。接觸式檢測采用各種樣式的打手觸碰紗管來判定紗管是否存有殘紗,打手快速下落和打擊紗管表面紗線時,易對紗管成形和紗線品質(zhì)造成不利影響[1-2]。近年來出現(xiàn)了非接觸式余紗量檢測方法,通過顏色傳感器實現(xiàn)數(shù)據(jù)采集,將同類型的空管作為預設值進行比對[3],或利用支持向量機或神經(jīng)網(wǎng)絡對顏色進行劃分[4],這些方案主要依賴紗管和紗線之間的色差進行分檢,顏色相近時易誤檢,檢測效果不理想。
本文設計一款基于小波變換的紗管殘紗檢測系統(tǒng),當檢測系統(tǒng)傳送帶上的紗管通過紅外傳感器時,觸發(fā)攝像頭抓拍紗管圖像,隨后使用OpenCV進行圖像處理與檢測。該方法為非接觸式檢測,在檢測過程中不會對紗線造成損傷,在提高檢測效率的同時,解決了人力成本高的問題。
紗管殘紗檢測系統(tǒng)主要由觸發(fā)裝置、圖像采集裝置和上位機處理3部分組成,如圖1所示。圖1中,觸發(fā)裝置由紅外傳感器與單片機組成。本系統(tǒng)采用2Y0A21 GP2Y0A21YK0F紅外測距傳感器,該傳感器響應速度快,可以準確檢測到是否有紗管經(jīng)過,并將檢測信號傳送給單片機,由單片機進行處理。圖像采集裝置由光源和CCD工業(yè)相機組成。通過調(diào)節(jié)光源,可以降低紗管對光線的反射,保證圖像質(zhì)量。選用MV-UBD32C工業(yè)攝像頭,可以將光信號轉(zhuǎn)變成為有序的電信號[5],該攝像頭分辨率高,可以保證圖像采集速度,滿足系統(tǒng)需要。圖像處理部分由上位機完成,上位機讀取CCD攝像頭采集的圖像數(shù)據(jù)并進行處理,以判斷紗管是否存在殘紗。
圖1 檢測系統(tǒng)
系統(tǒng)的采樣區(qū)為攝像頭拍到的區(qū)域。當紅外傳感器感應到有紗管進入后,首先采集圖像,利用紗管繞紗區(qū)域提取方法將采集的圖像縮減至一個僅包含紗管繞紗區(qū)域的矩形;然后利用形態(tài)學濾波以及小波變換,提取圖片各個方向分量繞紗部分的信息;最后使用灰度直方圖提取分量圖像特征量,通過使用歐氏距離比較低頻、垂直、水平方向差異性較大的2部分圖像是否一致,判斷紗管是否有殘線存在。檢測算法流程如圖2所示。
提取繞紗區(qū)域過程如圖3所示。傳送帶上有紗管通過時,觸發(fā)攝像頭進行拍照,得到紗管原圖;對紗管原圖進行剪裁,提取紗管繞紗區(qū)域圖;最后令紗管繞紗區(qū)域與背景圖做減法,得到排除背景干擾的繞紗區(qū)域圖。絡筒機上退下的帶有殘紗的紗管在運動過程中可能出現(xiàn)脫線的情況,紗管脫線圖如圖4所示。
圖2 檢測算法流程圖
圖3 提取繞紗區(qū)域過程
圖4 紗管脫線圖
為了不影響后續(xù)的操作,本文采用形態(tài)學濾波解決脫線情況,膨脹、腐蝕操作是形態(tài)學濾波最基本的操作[6]。
膨脹運算公式為XΘS={x|S+x?X},用結(jié)構(gòu)元素S掃描原圖像X的每個像素,然后取當前S所覆蓋下的X對應區(qū)域內(nèi)的所有像素的最大值,用該最大值替換當前像素值,從而實現(xiàn)連接相鄰物體和填充圖像中的細小縫隙的功能[7]。腐蝕運算公式X○+S={x|[S+x]∪X≠X},與膨脹相反,腐蝕運算取的是S覆蓋區(qū)域內(nèi)的所有像素的最小值,實現(xiàn)去除物體間細小的粘連,消除圖像中小顆粒噪聲的功能[8]。
單獨進行膨脹或腐蝕操作會使目標大小發(fā)生改變[9]。為解決上述問題,本文采用開運算操作,即先腐蝕后膨脹。經(jīng)過形態(tài)學濾波得到濾波圖如圖5所示。
圖5 形態(tài)學濾波所得圖
由圖5可以看出,開運算在消除小顆粒噪聲、平滑較大物體邊界的同時其面積并無明顯的改變,較好地解決了脫線問題。
由上文分析可知,單獨使用開運算僅能去除部分干擾,分離出的紗管輪廓較淺。本文將形態(tài)學處理作為過程中的一步,以其粗提取的結(jié)果作為基礎,使用小波變換提取特征信息。小波變換是一種時頻分析法[10],它解決了傅氏變換只能將圖像信號從空間域轉(zhuǎn)化為頻率域的問題。離散的二維空間域數(shù)字信號紗管圖像通過變換到小波域,可以同時提取包含細節(jié)成分的高頻部分信息和包含圖像信息的低頻成分信息[11]。
小波變換公式如下
式中:Ws為獲得的尺度分量,表示分解后的近似圖像,為低頻部分;Wωi為前一近似圖像與后一近似圖像的差別成分,為三方向的高頻部分[9];j0為開始尺度,常為0,令圖像尺寸 M、N 為 2j,故 j為(0,1,…,2j-1),m、n 為(0,1,…,2j-1);i為 H、V、D 三方向,小波分解過程如圖6所示。
圖6 小波分解過程
由于Haar小波函數(shù)是最簡單的正交函數(shù),具有構(gòu)造簡單、計算方便的特點[12],故本文使用Haar小波函數(shù)。小波變換后得到的圖像如圖7所示。由圖7可以看出,經(jīng)過小波變換后得到的圖像在凸顯特征信息的同時,更好地保留了圖像細節(jié),便于后續(xù)對殘紗的識別。
圖7 小波變換后得到的圖像
從小波變換得到的各個方向分量圖可以看出,低頻分量圖與水平高頻分量圖的紗線與紗管具有較高的對比度,并且紗線特征明顯,故本文使用灰度直方圖提取特征量,使用歐氏距離[13]鎖定差異性較大的2部分圖像,通過比較低頻、垂直、水平方向差異性較大的2部分圖像是否一致,判斷紗管是否有殘線存在。低頻圖像特征量提取過程如圖8所示。
圖8 低頻圖像特征量提取過程
圖8(a)中,將低頻分量圖沿著x方向平均分為5部分,分別為 A1、A2、A3、A4、A5。以 A1 為例,首先對A1進行灰度直方圖操作,得到圖像中各灰度級的像素的個數(shù),由于灰度級數(shù)較多,極大地影響了后續(xù)計算效率。為了解決此問題,將灰度直方圖按灰度級平均分為 5 份,記為 x1、x2、x3、x4、x5,統(tǒng)計每一份的像素值和,得到特征量 sum1、sum2、sum3、sum4、sum5,該操作通過減少特征量,提高了計算機運算效率。然后對A2、A3、A4、A5同樣進行特征量提取的操作,得到各自的特征量。最后對相鄰2部分的特征量求歐氏距離d。當d>閾值q時,認為紗線存在于該部分;反之,當d<閾值q時,判斷為紗線不存在于該部分。其中q值是經(jīng)過大量的實驗計算所得。距離d計算公式為
通過對垂直分量與水平分量進行相同的處理,判斷紗線存在于哪一部分,并通過對比殘紗在低頻、水平與垂直方向存在的部分是否一致,判斷是否有殘紗存在。對于藍色和紅色的有紗紗管識別率可達95%,綠色的有紗紗管識別率可達90%。可以看出,算法對有色紗管是否存在殘紗均可做出準確的檢測。
使用Microsoft Visual Studio 2015 MFC搭建殘紗檢測界面。Microsoft Visual Studio 2015是一種集成開發(fā)環(huán)境,提供了MFC類庫[14]。MFC是C++實現(xiàn)界面可視化設計的核心,配合動態(tài)鏈接庫實現(xiàn)界面設計[15]。
用戶首先進行串口設置,在裝置開始工作之前進行背景采集,然后點擊運行。由于在工業(yè)現(xiàn)場不同顏色、亮度的紗管對光的敏感度不同,因此在進行檢測時,可以根據(jù)現(xiàn)場的情況對不同顏色的紗管進行工作現(xiàn)場紗桿顏色參數(shù)與探測靈敏度參數(shù)的調(diào)節(jié),從而減少燈光等外界因素對紗管顏色和亮度的影響,提高紗管殘紗檢測系統(tǒng)的準確率。
本文對基于小波變換的紗管殘紗檢測算法進行了研究。檢測系統(tǒng)由單片機與OpenCV共同構(gòu)成,通過二者之間的相互通信,保證了檢測系統(tǒng)的實時性。檢測算法根據(jù)不同顏色的紗管對工作現(xiàn)場紗桿顏色參數(shù)與探測靈敏度參數(shù)進行調(diào)節(jié),極大地降低了燈光等外界因素對紗管顏色和亮度的影響,從而提高了識別的準確率。實驗結(jié)果表明,該算法可以對不同顏色與亮度的紗管是否存有殘紗進行識別,且識別效果良好。