Re: [問題] 有人做過粗糙表面的瑕疵檢測嗎?

作者: Schottky (順風相送)   2019-10-05 13:09:15
※ 引述《popen (快樂的工作)》之銘言:
: 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
: 額外使用到的函數庫(
: Library Used): (Ex: OpenGL, ...)
: OpenCV
: 如標題,
: 如果在粗糙的金屬表面或粗糙的背景上面有
: 刮痕或有斑點,要檢測上面的刮痕或斑點,
: 有人做過類似的東西嗎?
: 我是先用gaussian blur降噪,再用二值化分割出缺陷,
: 但發覺還是有些缺陷分不出來,
: 不知有沒有比較強健的方法
光學檢測有很多種,像這種需要檢測細微瑕疵的應用,一般絕不會用 blur,
使用 blur 直接把原本看得到的細節給抹掉了,解析度直接下降一級,
那為什麼不一開始就買低解析度的相機和鏡頭就好了,多浪費一筆錢
想想如果你要檢測的瑕疵比正常背景點點還要細 (卻很長) 怎麼辦
blur 完什麼都看不見了。
因為你的敘述很模糊,也很難給什麼具體的建議,你自己大概也還沒有深思過這些,
總之設法去分辨正常的粗糙背景和不正常的瑕疵就是了。
可能是形狀 (正常背景是顆粒狀,刮痕是長條狀),
可能是光影 (打某角度某形式的光時凹凸不平會看不見,但污漬還是看得見)
也可能是陰影區塊面積,或者顏色,或者密度
光源、相機、鏡頭先弄好,否則軟體這邊也只是 GIGO (garbage-in garbage-out)
作者: aria0520 (紫)   2019-10-05 19:49:00
借串問一下 那假如是要檢測部件是否缺少或錯置的話呢?也就是非細微的瑕疵
作者: laytomall (Time Fly)   2019-10-05 19:58:00
有看用機器學習的方案來檢查缺少部件
作者: popen (Penpineapple-applepen)   2019-10-10 16:05:00
檢測缺件較簡單,你就拍缺件的背景當template再用template matching,假如缺件,match結果就會非常相似沒缺件,match結果就會差異很大

Links booklink

Contact Us: admin [ a t ] ucptt.com