halcon边缘提取和赃物检测的常用方法

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

一、边缘提取

1、设置ROI兴趣区域

2、快速二值化,并连接相邻区域。

这样做的目的是进一步减少目标区域,通过二值化将目标区域大概轮廓提取出来

3、提取最接近目标区域的轮廓

常用函数有boundarygen_contour_region_xld

    4、根据自己的需求提取需要的初步轮廓

5、将初步提取的初步轮廓进行膨胀操作

6、将膨胀后的区域和原图进行减操作(在这步之前有可能需要对原图进行高斯滤波)。这样就能得到只有边缘的真实图像

7、用canny或其他算子(根据需要)提取亚像素轮廓,一般使用edges_sub_pix函数

8、处理和计算

得到真实的边缘XLD后你可能需要进一步处理得到你想要的线、弧等。

你可能用到的函数segment_contours_xld(分割)  union_collinear_contours_xld(联合相邻或相同角度直线)select_contours_xld(提取想要的轮廓) union_cocircular_contours_xld(联合相同圆)等等

得到轮廓后如果你不知道怎么处理后得到你想要的东西(线、弧、圆、角、矩形)你都可以将轮廓转化为点,然后用点集合来拟合任何你想要的东西。


二、BLOB分析检测(前面一篇有详细讲解,本骗只讲思路)

    (1)应用ROI,可以使Blob分析加速。

     2)匹配ROI区域或图像,详将GUIDEIIB以形状为基础的匹配。

3)校正图像<经常用来去除镜头畸变或把图像转换到参考点视角,如双目视觉时的图像校正>

4)图像前处理

5)引用分割参数

6)分割图像

7)区域处理

8)特征提取

9)把提取的结果转换到世界坐标中

10)结果可视化。

    相机的标定和矫正不在本篇的学习之中。直接讲提取BLOB

1、一般先使用均值滤波去噪

2、利用去噪图像与平滑图像的OFFSET提取区域边缘,常见函数dyn_threshold 

3、提取连通域dyn_threshold 

4、根据形状或是灰度等特征来提取你想要的blob。

    另一种方法就是分水岭算法

watersheds (ImageGauss, Basins, Watersheds)/

1、对图像进行高斯滤波

/

还有的图形更简单直接二值化就可以啦

bin_threshold (Fin, Dark) //分割图像,输出Dark区域,Fin已经被处理为区域//

difference (Fin, Dark, Background) //计算FinDark两个区域的补集//

还有个函数应该说是让你高兴还是沮丧呢,以为一个函数就可以直接提取你想要的,但是参数很难调整

    lines_gauss(Image, Lines, 6, 0.3, 0.5, 'light', 'true', 'gaussian', 'true')

三、赃物检测

1、得到两个不同高斯标准差的高斯积卷

2、对原始图像进行傅里叶变换'to_fre'

3、用之前的积卷对图像做积卷滤波

4、傅里叶反变换‘from_fre’

对于傅里叶变换还不是很熟悉



机器视觉halcon学习——杂质检测 杂质检测 阅读详情

相关推荐

Halcon边缘提取

一、边缘提取 1、设置ROI兴趣区域 2、快速二值化,并连接相邻区域。 这样做的目的是进一步减少目标区域,通过二值化将目标区域大概轮廓提取出来 3、提取最接近目标区域的轮廓 常用函数有boundary,gen_contour_region_xld 4、根据自己的需求提取需要的初步轮廓 5、将初步提取的初步轮廓进行膨胀操作 6、将膨胀后的区域原图进行减操作(在这步之前有可能需要对原图进行高斯滤波)...

风声独行 2115

脏污检测.rar_halcon_halcon脏污检测_检测图像_脏污检测_脏污检测实例算法

基于视觉库halcon,对图像进行脏污检测处理。

基于halcon—缺陷检测常用方法与示例总结

摘要 缺陷检测是视觉需求中难度最大一类需求,主要是其稳定性精度的保证。首先常见缺陷:凹凸、污点瑕疵、划痕、裂缝、探伤等。缺陷检测算法不同于尺寸、二维码、OCR等算法。后者应用场景比较单一,基本都是套用一些成熟的算子,所以门槛较低,比较容易做成标准化的工具。而缺陷检测极具行业特点,不同行业的缺陷算法迥然不同。随着缺陷检测要求的提高,机器学习深度学习也成了缺陷领域一个不可或缺的技术难点。 传统算法检测缺陷:调试难度大,容易在检测不稳定情况下反复调参,且复杂缺陷误测多,兼容性差 机器学...

NCUTer 2万+

HALCON赃污检测

HALCON是一个完善的综合标准软件库,是得到广泛应用的机器视觉集成开发环境。它节约了产品的成本,缩短了软件的开发周期

halcon 线段提点_Halcon边缘检测线条检测(1),文章含自适应/动态二值化等算子...

先看代码实践dev_update_off()dev_close_window()*读图read_image(Image,'D:/1.bmp')get_image_size(Image,Width,Height)*测试提取边缘edges_image(Image,Amp,Dir,'lanser2',0.5,'none',-1,-1)hysteresis_threshold(Amp,Mar...

weixin_33267354的博客 2202

Halcon--污染区域检测

文章目录前言一、思路二、实现三、源码总结 前言 基于Halcon的污染区域检测 一、思路 采用傅里叶变换将图像转换至频域上进行处理,在经过傅里叶变换的图像上使用正弦形状的带通滤波器,可以有效降低周期纹理的干扰,突出有缺陷的区域。而将两种不同参数的高斯函数相减,则可以有效提取出傅里叶图像中的特征区域。纹理缺陷的灰度差异被“放大”,所以灰度阈值结合形状的面积特征将二者分隔开来。 二、实现 三、源码 *关闭当前窗口 dev_close_window () read_image (Image, 'D:/U

Doctor__Chen的博客 2158

Halcon -表面瑕疵脏污检测

Halcon -表面瑕疵脏污检测 1、拿到一张图片,我们在看到Halcon例子中有一篇find_Scratches_bandpass_fft.dev。其中就讲到了核心的几个算子,用来对空间图像转变成频域的图像。即进行傅里叶变换。 例子中在读入一张图片,进行预处理使用gauss_filter图像平滑,然后进行的正弦带通滤波。gen_sin_bandpass(ImageFilter,Frequency,Norm,Mode,Width,Height)Frequency指的是频率0-1之间。Norm因子归一化方式:

day_light_up的博客 5981

halcon边缘提取检测常用方法

一、边缘提取 1、设置ROI兴趣区域 2、快速二值化,并连接相邻区域。 这样做的目的是进一步减少目标区域,通过二值化将目标区域大概轮廓提取出来 3、提取最接近目标区域的轮廓 常用函数有boundary,gen_contour_region_xld 4、根据自己的需求提取需要的初步轮廓 5、将初步提取的初步轮廓进行膨胀操作 6、将膨胀后的区域原图进行减操

Bob_qiuxu的专栏 3万+

halcon边缘检测方法及各种方法的适用范围

一、边缘提取 1、设置ROI兴趣区域 2、快速二值化,并连接相邻区域。 这样做的目的是进一步减少目标区域,通过二值化将目标区域大概轮廓提取出来 3、提取最接近目标区域的轮廓 常用函数有boundary,gen_contour_region_xld 4、根据自己的需求提取需要的初步轮廓 5、将初步提取的初步轮廓进行膨胀操作 6、将膨胀后的区域原图进行减操作(在这步之前有可能需要对原图进行高斯滤波)...

CSDN博客 3047

Halcon边缘检测线条检测(3),文章含BLOB检测常用方法shape_trans内接外接算子的说明

一、边缘提取 1、设置ROI兴趣区域 2、快速二值化,并连接相邻区域。 这样做的目的是进一步减少目标区域,通过二值化将目标区域大概轮廓提取出来 3、提取最接近目标区域的轮廓常用函数有boundary,gen_contour_region_xld boundary(获取一个区域的边界) Region (input_object) Regions for which the bounda...

$firecat利白的代码足迹$ 5270

halcon python缺陷检测_halcon边缘提取缺陷检测的思路

一、边缘提取1、设置ROI兴趣区域2、快速二值化,并连接相邻区域。这样做的目的是进一步减少目标区域,通过二值化将目标区域大概轮廓提取出来3、提取最接近目标区域的轮廓.常用函数有boundary,gen_contour_region_xld4、根据自己的需求提取需要的初步轮廓5、将初步提取的初步轮廓进行膨胀操作6、将膨胀后的区域原图进行减操作(在这步之前有可能需要对原图进行高斯滤波)。这样就能得到...

weixin_39839162的博客 790

Halcon实现边缘提取

转自:http://blog.csdn.net/Bob_qiuxu/article/details/46924969 一、边缘提取 1、设置ROI兴趣区域2、快速二值化,并连接相邻区域。 这样做的目的是进一步减少目标区域,通过二值化将目标区域大概轮廓提取出来3、提取最接近目标区域的轮廓 常用函数有boundary,gen_contour_region_xld4、根据自己的需求提取需要的初步

qq_38602705的博客 1万+

Halcon 二值化阈值算子

Halcon中,二值化分割是图像处理的重要步骤之一,它将图像中的像素分为前景背景两部分。Halcon提供了多种算子,每种算子都有其特定的应用场景优势。

2403_88923953的博客 2399

Halcon 赃污检测(高斯滤波图,傅里叶变换,灰度差过滤)

Halcon 赃污检测(高斯滤波图,傅里叶变换,灰度差过滤)

廷益_飞鸟的博客 2599

halcon】油污检测

read_image (Image1, 'E:/work/OpenCV/Image/oil.jpg') decompose3(Image1, Image11, Image2, Image3) threshold (Image11, Regions, 85, 171) fill_up(Regions, RegionFillUp) connection(RegionFillUp, Conn...

好习惯成就伟大 3479
上一篇: OpenCV2.3使用摄像头和视频
下一篇: 线程间操作无效: 从不是创建控件“”的线程访问它
dearpeer
博客等级 码龄16年 38粉丝 3原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值