導(dǎo)讀本文主要介紹OpenCV在低對比度缺陷檢測中的應(yīng)用實(shí)例。
實(shí)例一(LCD屏幕臟污檢測)
參考實(shí)例來源:
https://stackoverflow.com/questions/27281884/low-contrast-image-segmentation
分析與說明:上圖中的臟污圖像因?yàn)閷Ρ榷容^低,所以無法通過常用的閾值方法處理提取,有時(shí)人眼觀察也較費(fèi)勁。常用的方法有梯度提取或頻域提取。
鏈接主題中提到了Kmeans聚類分割后提取:
二分類:
三分類:
乍一看效果還不錯,但問題是我到底應(yīng)該設(shè)置幾個類別?第一張圖我如何確定哪個區(qū)域正好是我的缺陷部分?本文采用了梯度方法來檢測。
實(shí)現(xiàn)步驟與演示
實(shí)現(xiàn)步驟: ① 圖像濾波--濾除雜訊; ② Sobel提取邊緣; ③ 形態(tài)學(xué)處理剔除雜訊; ④ 閾值提取--分割臟污區(qū)域; ⑤ 輪廓提取與標(biāo)注。圖像一:
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)blur = cv2.GaussianBlur(gray,(15,15),0)
x = cv2.Sobel(blur,cv2.CV_16S,1,0,ksize=7)y = cv2.Sobel(blur,cv2.CV_16S,0,1,ksize=7)absX = cv2.convertScaleAbs(x) # 轉(zhuǎn)回uint8absY = cv2.convertScaleAbs(y)edged = cv2.addWeighted(absX,1,absY,1,0)cv2.imshow(‘Sobel’, edged)
k1=np.ones((11,11), np.uint8)thres = cv2.morphologyEx(thres, cv2.MORPH_ERODE, k1)#膨脹操作cv2.imshow(‘MORPH_ERODE’,thres) #結(jié)果顯示
contours,hierarchy = cv2.findContours(thres, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)for cnt in contours: (x, y, w, h) = cv2.boundingRect(cnt) if w 》 2 and h 》 2: cv2.drawContours(img,cnt,-1,(0,0,255),1)
—版權(quán)聲明—
僅用于學(xué)術(shù)分享,版權(quán)屬于原作者。
若有侵權(quán),請聯(lián)系刪除或修改!
編輯:jq
-
lcd
+關(guān)注
關(guān)注
34文章
4520瀏覽量
171676 -
缺陷檢測
+關(guān)注
關(guān)注
2文章
153瀏覽量
12625 -
OpenCV
+關(guān)注
關(guān)注
32文章
642瀏覽量
42938
原文標(biāo)題:OpenCV實(shí)戰(zhàn) | 低對比度缺陷檢測應(yīng)用實(shí)例
文章出處:【微信號:gh_f39db674fbfd,微信公眾號:尖刀視】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
工業(yè)質(zhì)檢再升級:復(fù)雜網(wǎng)絡(luò)檢測模型破解多場景檢測難題

【Milk-V Duo S 開發(fā)板免費(fèi)體驗(yàn)】SDK編譯、人臉檢測、OpenCV測試
高光譜相機(jī)在工業(yè)檢測中的應(yīng)用:LED屏檢、PCB板缺陷檢測
機(jī)器視覺系統(tǒng)中如何評價(jià)光源的好壞
安泰電壓放大器在缺陷局部的無損檢測研究中的應(yīng)用

激光跟蹤儀的檢測功能與應(yīng)用實(shí)例

X-Ray檢測設(shè)備能檢測PCBA的哪些缺陷
投影機(jī)中對比度與動態(tài)對比度的區(qū)別及運(yùn)用

AI模型部署邊緣設(shè)備的奇妙之旅:如何在邊緣端部署OpenCV
如何用OpenCV的相機(jī)捕捉視頻進(jìn)行人臉檢測--基于米爾NXP i.MX93開發(fā)板
手寫圖像模板匹配算法在OpenCV中的實(shí)現(xiàn)

ATA-8202射頻功率放大器在應(yīng)力導(dǎo)波缺陷檢測研究中的應(yīng)用

評論