0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

復(fù)雜背景下缺陷檢測將Halcon實現(xiàn)轉(zhuǎn)為OpenCV的實例

新機器視覺 ? 來源:OpenCV與AI深度學(xué)習(xí) ? 作者:Color Space ? 2021-06-30 14:05 ? 次閱讀

導(dǎo)讀 本文主要介紹一個復(fù)雜背景下缺陷檢測的實例,并將Halcon實現(xiàn)轉(zhuǎn)為OpenCV。

實例來源

實例來源于51Halcon論壇的討論貼: https://www.51halcon.com/forum.php?mod=viewthread&tid=1173&extra=page%3D1

Halcon實現(xiàn)

參考回帖內(nèi)容,將代碼精簡如下:

read_image (Image, ‘。/1.bmp’)dev_set_line_width (3)threshold (Image, Region, 30, 255)reduce_domain (Image, Region, ImageReduced)mean_image (ImageReduced, ImageMean, 200, 200)dyn_threshold (ImageReduced, ImageMean, SmallRaw, 35, ‘dark’)opening_circle (SmallRaw, RegionOpening, 8)closing_circle (RegionOpening, RegionClosing, 10)connection (RegionClosing, ConnectedRegions)dev_set_color (‘red’)dev_display (Image)dev_set_draw (‘margin’)dev_display (ConnectedRegions)

OpenCV實現(xiàn)

分析實現(xiàn)方法與思路: [1] 原圖轉(zhuǎn)灰度圖后使用核大小201做中值濾波; [2] 灰度圖與濾波圖像做差,然后閾值處理 [3] 圓形核做開運算,去除雜訊 [4] 圓形核做閉運算,缺陷連接 [5] 輪廓查找繪制 實現(xiàn)代碼(Python-OpenCV):

import cv2import numpy as np

img = cv2.imread(‘。/1.bmp’)cv2.imshow(‘src’,img)gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

mean = cv2.medianBlur(gray,201)cv2.imshow(‘mean’,mean)

#diff = cv2.absdiff(gray, mean)diff = gray - meancv2.imshow(‘diff’,diff)cv2.imwrite(‘diff.jpg’,diff)_,thres_low = cv2.threshold(diff,150,255,cv2.THRESH_BINARY)#二值化_,thres_high = cv2.threshold(diff,220,255,cv2.THRESH_BINARY)#二值化thres = thres_low - thres_highcv2.imshow(‘thres’,thres)

k1 = np.zeros((18,18,1), np.uint8)cv2.circle(k1,(8,8),9,(1,1,1),-1, cv2.LINE_AA)k2 = np.zeros((20,20,1), np.uint8)cv2.circle(k2,(10,10),10,(1,1,1),-1, cv2.LINE_AA)opening = cv2.morphologyEx(thres, cv2.MORPH_OPEN, k1)cv2.imshow(‘opening’,opening)closing = cv2.morphologyEx(opening, cv2.MORPH_CLOSE, k2)cv2.imshow(‘closing’,closing)

contours,hierarchy = cv2.findContours(closing, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)

for cnt in contours: (x, y, w, h) = cv2.boundingRect(cnt) if w 》 5 and h 》 5: #cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),2) cv2.drawContours(img,contours,-1,(0,0,255),2)

cv2.drawContours(img,cnt,2,(0,0,255),2)cv2.imshow(‘result’,img)

cv2.waitKey(0)cv2.destroyAllWindows()print(‘Done!’)

逐步效果演示

濾波效果:mean

做差效果:diff

閾值效果:thres

開運算效果:opening

閉運算效果:closing

輪廓查找繪制最終結(jié)果:

結(jié)尾語

[1] 算法只是針對這一張圖片,實際應(yīng)用為驗證算法魯棒性還需大量圖片做測試方可; [2] 缺陷檢測如果用傳統(tǒng)方法不易實現(xiàn),可以考慮使用深度學(xué)習(xí)分割網(wǎng)絡(luò)如:mask-rcnn、U-net等

—版權(quán)聲明—

來源:OpenCV與AI深度學(xué)習(xí)

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 濾波
    +關(guān)注

    關(guān)注

    10

    文章

    679

    瀏覽量

    57162
  • OpenCV
    +關(guān)注

    關(guān)注

    32

    文章

    642

    瀏覽量

    42445
  • HALCON
    +關(guān)注

    關(guān)注

    17

    文章

    66

    瀏覽量

    27690
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5554

    瀏覽量

    122494

原文標(biāo)題:Halcon轉(zhuǎn)OpenCV實例--復(fù)雜背景下缺陷檢測(附源碼)

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 0人收藏

    評論

    相關(guān)推薦
    熱點推薦

    OpenCV行人檢測應(yīng)用方案--基于米爾全志T527開發(fā)板

    本文介紹基于米爾電子MYD-LT527開發(fā)板(米爾基于全志T527開發(fā)板)的OpenCV行人檢測方案測試。摘自優(yōu)秀創(chuàng)作者-小火苗一、軟件環(huán)境安裝1.安裝
    的頭像 發(fā)表于 04-10 08:03 ?609次閱讀
    <b class='flag-5'>OpenCV</b>行人<b class='flag-5'>檢測</b>應(yīng)用方案--基于米爾全志T527開發(fā)板

    如何HAL庫轉(zhuǎn)為LL庫?

    怎么HAL庫轉(zhuǎn)為LL庫。
    發(fā)表于 03-10 06:08

    X-Ray檢測設(shè)備能檢測PCBA的哪些缺陷

    X-Ray檢測設(shè)備可以檢測PCB(電路板)的多種內(nèi)部及外部缺陷,如果按照區(qū)域區(qū)分的話,主要能觀測到一幾類缺陷: 焊接
    的頭像 發(fā)表于 02-08 11:36 ?512次閱讀

    背景抑制光電開關(guān)的設(shè)計及應(yīng)用

    產(chǎn)線上對零部件進(jìn)行高精度檢測和計數(shù),即使在復(fù)雜的工業(yè)環(huán)境中,如存在強光干擾、不同顏色和材質(zhì)背景等情況,也能準(zhǔn)確檢測目標(biāo)物體,有效減少誤判,
    發(fā)表于 01-11 13:43

    C#通過Halcon實現(xiàn)3D點云重繪

    C# 通過 Halcon 實現(xiàn) 3D 點云重繪
    發(fā)表于 01-05 09:16 ?0次下載

    C#基于Halcon實現(xiàn)Basler相機采圖

    C#基于Halcon實現(xiàn)Basler相機采圖
    發(fā)表于 01-05 09:16 ?0次下載

    接近感應(yīng)單片機在背景抑制光電開關(guān)上的應(yīng)用

    高精度檢測和計數(shù),即使在復(fù)雜的工業(yè)環(huán)境中,如存在強光干擾、不同顏色和材質(zhì)背景等情況,也能準(zhǔn)確檢測目標(biāo)物體,有效減少誤判,提高生產(chǎn)效率和質(zhì)量
    發(fā)表于 12-27 15:38

    基于 XD08M3232 接近感應(yīng)單片機的背景抑制光電開關(guān)設(shè)計與應(yīng)用

    接近感應(yīng)單片機的背景抑制光電開關(guān)通過合理的硬件設(shè)計和有效的軟件編程,實現(xiàn)了在復(fù)雜背景環(huán)境對目標(biāo)物體的精準(zhǔn)
    發(fā)表于 12-16 18:56

    AI模型部署邊緣設(shè)備的奇妙之旅:如何在邊緣端部署OpenCV

    應(yīng)用場景調(diào)整,以獲得最佳檢測效果。例如,不同的光照條件、背景復(fù)雜度或者目標(biāo)圓的大小都會影響這些參數(shù)的選擇。 實例代碼 from lockzhiner_vision_module.cv2
    發(fā)表于 12-14 09:31

    如何用OpenCV的相機捕捉視頻進(jìn)行人臉檢測--基于米爾NXP i.MX93開發(fā)板

    本篇測評由優(yōu)秀測評者“eefocus_3914144”提供。 本文介紹基于米爾電子MYD-LMX93開發(fā)板(米爾基于NXP i.MX93開發(fā)板)的基于OpenCV的人臉檢測方案測試。 Ope
    發(fā)表于 11-15 17:58

    opencv的主要功能有哪些

    OpenCV提供了豐富的圖像處理功能,包括圖像的讀取、顯示、保存、轉(zhuǎn)換等。此外,OpenCV還支持圖像的濾波、邊緣檢測、形態(tài)學(xué)操作、圖像金字塔等高級圖像處理技術(shù)。 特征檢測與描述:
    的頭像 發(fā)表于 07-16 10:35 ?2609次閱讀

    基于OpenCV的人臉識別系統(tǒng)設(shè)計

    基于OpenCV的人臉識別系統(tǒng)是一個復(fù)雜但功能強大的系統(tǒng),廣泛應(yīng)用于安全監(jiān)控、人機交互、智能家居等多個領(lǐng)域。下面詳細(xì)介紹基于OpenCV的人臉識別系統(tǒng)的基本原理、
    的頭像 發(fā)表于 07-11 15:37 ?2.4w次閱讀

    基于AI深度學(xué)習(xí)的缺陷檢測系統(tǒng)

    在工業(yè)生產(chǎn)中,缺陷檢測是確保產(chǎn)品質(zhì)量的關(guān)鍵環(huán)節(jié)。傳統(tǒng)的人工檢測方法不僅效率低下,且易受人為因素影響,導(dǎo)致誤檢和漏檢問題頻發(fā)。隨著人工智能技術(shù)的飛速發(fā)展,特別是深度學(xué)習(xí)技術(shù)的崛起,基于AI深度學(xué)習(xí)的
    的頭像 發(fā)表于 07-08 10:30 ?2347次閱讀

    Labview與Halcon圖片Image互相轉(zhuǎn)換

    Labview 與Halcon 聯(lián)合開發(fā) 分享一Labview 與Halcon Image格式相互轉(zhuǎn)換的程序, 整理了一個VI,LV_to _Halconxl.vi,可以直接調(diào)用,相互轉(zhuǎn)換兩種格式
    發(fā)表于 06-27 23:00

    外觀缺陷檢測原理

    的結(jié)合應(yīng)用加速滲透進(jìn)工業(yè)產(chǎn)品的 外觀缺陷檢測 領(lǐng)域。思普泰克憑借深耕機器視覺多年沉淀的技術(shù)實力,建立以深度學(xué)習(xí)技術(shù)為核心的差異化發(fā)展優(yōu)勢,開發(fā)出視覺引擎等工業(yè)級視覺應(yīng)用產(chǎn)品,全面賦能產(chǎn)品外觀缺陷
    的頭像 發(fā)表于 06-17 17:38 ?743次閱讀
    外觀<b class='flag-5'>缺陷</b><b class='flag-5'>檢測</b>原理

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品