需求:利用傳統算法檢測iPhone手機背殼是否瑕疵并給出瑕疵率
工具:攝像頭/iPhone 6s/偏振鏡等
傳統算法方向的選擇
最近做圖像處理與識別相關的事情,先從OpenCV/Matlab入手,看傳統算法在瑕疵檢測方向能做到什么程度。
因之前并沒有相關的經驗,乍開始生怕閉門造車,遂多方搜尋,相關的會議與論述很多,不乏深度學習或者深度學習與傳統算法相結合的,以有限的資源來看,深度學習并沒有特別大的優(yōu)勢:表現在
1. 深度學習對訓練圖庫的要求很高,很難得到很好的訓練結果
2. 深度學習的靈活度較低,若適用場景有些許改變,均需要重新訓練,這在商用時會是很大的問題
3. 深度學習的部署成本較高,同時對部署場景有較高要求(光線/攝像效果等)
當然,深度學習大勢所趨,也不必因噎廢食,萬一是一時的淺見呢。后續(xù)也會投身到這個方向去。
瑕疵檢測關注的兩個問題
瑕疵的標注
對瑕疵的標注是為了更直觀的展示,主要是給人看的
瑕疵的量化
真正機器關心的是怎么量化,是用數量表示還是百分比是個值得考慮的問題
歷程
1.圖像去噪-》灰度化-》二值化
二值化之后就可以看到絕大部分的瑕疵點已經凸顯出來了,但是有三個問題:
1. 黑點瑕疵與白點瑕疵是二值化的兩個極端,故無法同時出現。
2. 量化如何去除Logo與其他印刷的干擾
問題1后續(xù)用邊緣檢測替代
問題2采用像素點計數的方法,計算百分比,然后與無瑕疵的百分比作比較,準確度不高,也顯得low low的。
2.圖像去噪-》灰度化-》canny-》形態(tài)學(閉運算)-》連通域
邊緣檢測后進行閉運算,瑕疵會形成大大小小的連通域,可以統計連通域的個數,然后與無瑕疵logo與其他印刷形成的連通域個數作比較,這種情況幾乎不會漏掉。這是感覺可行的選擇之一。
3.OpenCV matchTemplate
實驗室條件下,可以營造比較理想的條件,所以考慮了OpenCV的模板匹配,同時也測試了模板匹配在不理想情況下的表現。
結果證明因為手機瑕疵檢測的需求目標較低,模板匹配是比較能夠勝任的一個辦法。只要模板與識別目標的拍攝角度差別不是太大,都可以很好的識別瑕疵。圖片的輕微縮放大多也可以應付。
其他處理
前面都是軟件方面處理的流程,在如何獲得更加理想的圖片方面也做了一些嘗試:
采用各種不同顏色的光源,如藍光/紅光,區(qū)別不大
對圖片進行白平衡調整,有改善
攝像頭加偏振鏡防止圖像反光,有改善但不明顯
圖片浮雕處理,肉眼看上去瑕疵顯著了,但對機器而言并沒有區(qū)別,故沒有采納
作者:cshyxxxl
編輯:黃飛
-
圖像處理
+關注
關注
27文章
1300瀏覽量
56891 -
OpenCV
+關注
關注
31文章
635瀏覽量
41556 -
深度學習
+關注
關注
73文章
5513瀏覽量
121546
原文標題:關于利用傳統圖像處理方法進行瑕疵檢測的一點總結
文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
激光焊縫跟蹤器與傳統焊縫檢測方法的對比
![激光焊縫跟蹤器與<b class='flag-5'>傳統</b>焊縫<b class='flag-5'>檢測</b><b class='flag-5'>方法</b>的對比](https://file1.elecfans.com//web3/M00/00/53/wKgZO2dILgSASh4_AABgk32ZH8U65.jpeg)
無損檢測與傳統檢測的區(qū)別
基于 DSP5509 進行數字圖像處理中 Sobel 算子邊緣檢測的硬件連接電路圖
工業(yè)主板在服裝紡織瑕疵檢測中的應用
![工業(yè)主板在服裝紡織<b class='flag-5'>瑕疵</b><b class='flag-5'>檢測</b>中的應用](https://file1.elecfans.com/web2/M00/07/38/wKgaombj3NqALZyBAAp_M2Qjms4706.png)
圖像分割與目標檢測的區(qū)別是什么
圖像檢測和圖像識別的原理、方法及應用場景
圖像檢測和圖像識別的區(qū)別是什么
基于FPGA的實時邊緣檢測系統設計,Sobel圖像邊緣檢測,FPGA圖像處理
機器視覺在織物缺陷圖像識別中的應用與分析
![機器視覺在織物缺陷<b class='flag-5'>圖像</b>識別中的應用與分析](https://file1.elecfans.com/web2/M00/C1/36/wKgaomXURlWAJ7bCAABVSoLHKEM749.png)
評論