尚會超,靳瑋
(中原工學院機電學院,河南 鄭州 451100)
目前紡織行業的布匹疵點檢測大都是通過人工檢測來完成,且檢測效果不佳,缺少可靠性。為加快我國紡織行業的發展進程,需研究一種精確而快速的疵點檢測方法。隨著機器視覺技術的發展,計算機應用于織物疵點檢測系統已成為行業發展的趨勢[1]。MATLAB不僅具有面向對象的計算機語言特征,而且研究數字圖像的領域非常廣泛,從學科上可以分為圖像的數字化、圖像變換、圖像增強、圖像恢復、圖像分割、圖像分析和理解、圖像的壓縮等。MATLAB提供了20類圖像處理函數[3],這些函數按功能可分為圖像算術運算、圖像分析、圖像增強、線性濾波、圖像去模糊、圖像變換、鄰域與塊處理、灰度與二值圖像的形態學運算等,除以上介紹的一些基本的圖像處理功能外,還有許多基于數學形態學與二值圖像的操作函數,如二值圖像的膨脹運算函數、腐蝕運算函數等。
圖像采集的功能是實時地將研究對象的光學特征轉換為電信號,并利用A/D轉換模塊轉換成數字圖像,通過圖像采集卡輸入到工業控制計算機。Microsoft Visual C++6.0環境下圖像采集算法如下流程圖,首先對圖像進行掃描,計算圖像的大小,獲取圖像灰度信息,并分配相應圖像存儲空間,簡要流程圖如下:

圖3-1 Visual C++6.0環境下圖像采集算法流程圖
以上是根據企業需求,對機器視覺技術與公司的自動鋪布系統進行分析。通過實驗驗證,該算法能夠獲取布匹表面圖像,實現圖像采集及數據傳輸功能。接下來結合MATLAB常用的圖像處理功能,對疵點和樣片進行分析和判斷。
MATLAB的圖像處理工具箱常用來處理數字圖像,所以考慮結合MATLAB進行含疵樣片的判斷和提取。為了證明MATLAB語言是一種簡潔、可讀性較強的高效率編程軟件,本文通過運用圖像處理工具箱中的有關函數,根據疵點與樣片平面圖像,判斷疵點與樣片邊界的關系。
假設某些樣片可視為一類圓形凸形樣片,在實驗中,有相繼100張含疵樣片圖像記錄了樣片與疵點的交。圖像文件名依次為0.bmp,1.bmp,…,99.bmp,格式均為BMP,寬、高均為512像素(pixel)。假設疵點與每張樣片有且只有一個交點,在此例中,判斷疵點與樣片邊界關系的思路:一是對每張圖像提取樣片的邊緣;二是找到邊界的內切圓和中心點;三是選取內切圓,其半徑即為假想的疵點在樣片內的最大范圍,如果超越該范圍那么疵點可能涉及下一個樣片,需要對下一個樣片再進行判斷;四是判斷疵點與樣片內切圓的關系,從而判斷疵點是否超越該樣片,下一樣片是否是良好的。以上過程可用以下MATLAB代碼來實現。代碼實現流程圖如下:

圖3-2 MATLAB代碼實現流程圖
如果疵點與樣片的最小距離小于內切圓半徑,那么該疵點落于樣片內不再考慮下一樣片;如果疵點與樣片最小距離大于內切圓半徑,那么該疵點超越樣片邊界需要繼續判斷下一樣片。也可以用此方法判斷疵點與樣片縫接線的關系,此時內切圓可以看做樣片的內縫接線,如果疵點沒有超越內縫接線不影響樣片制成成品質量,那么這樣的含疵樣片可以看做質量良好的樣片繼續使用。
試驗證明該方法可實現疵點標識信息的讀取,并且可以將疵點標識與樣片匹配,完成每個含疵樣片的定位,在含疵樣片的提取過程中可行性好,因此滿足布匹含疵樣片采集要求。
圖像信息是人類認識客觀世界的重要知識來源。數字圖像處理技術在各個領域都得到了廣泛的應用。MATLAB圖像處理工具箱提供了豐富的圖像處理函數。但應該認識到,圖像處理工具箱不可能提供所有的函數。特別是計算機視覺理論的發展,對圖像分析提出了更高的要求。為此,需要在充分理解數字圖像處理原理的基礎上編制函數來完成圖像處理的任務。