Halcon--织物折痕检测

本文详细介绍了基于Halcon的织物折痕检测流程,包括从RGB到HSV转换、纹理检测、均值化、形态学处理等步骤,最终通过闭运算提取出缺陷区域并显示结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

基于Halcon织物折痕检测

一、思路

【1】采用read_image算子读取待处理的图像;
【2】采用decompose3算子将图像分解成RGB三个通道;
【3】采用trans_from_rgb算子将RGB三个通道的图像,转化为HSV图像空间;
【4】采用texture_laws算子进行纹理检测;
【5】采用mean_image算子对滤波器处理后的图像进行均值化,使图像更平滑,缺陷区域明显;
【6】采用threshold算子对检测出的缺陷区域进行形态学处理并显示出来;
【7】采用connection算子将符合条件的区域分隔成独立区域;
【8】采用area_center算子计算各区域的面积,select_shape算子提取出面积最大的区域;
【9】采用closing_circle算子做闭运算,提取出缺陷区域
【10】采用dev_clear_window清空活跃窗口,dev_display算子显示效果图

二、实现

测试图+过程展示+结果图

原图
在这里插入图片描述

三、源码

* 读取待处理的图像
read_image(Image, 'D:/USER/Desktop/design/dataset/织物折痕.jpg')
* 将图像分解成RGB三个通道
decompose3 (Image, Image_R, Image_G, Image_B)
* 将RGB三个通道的图像,转化为HSV图像空间
trans_from_rgb (Image_R, Image_G, Image_B, ImageResult_H, ImageResult_S, ImageResult_V, 'hsv')
* 进行纹理检测。
texture_laws (ImageResult_S, ImageTextureLS, 'ls', 2, 7) 
* 对滤波器处理后的图像进行均值化,使图像更平滑,缺陷区域明显
mean_image (ImageTextureLS, ImageMean, 11, 11)
* 对检测出的缺陷区域进行形态学处理并显示出来
threshold (ImageMean, Regions, 60, 255)
* 将符合条件的区域分隔成独立区域
connection(Regions, ConnectedRegions)
* 计算各区域的面积,提取出面积最大的区域
area_center (ConnectedRegions, Area, Row, Column)
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', max(Area), 99999) 
* 做闭运算,提取出缺陷区域
closing_circle(SelectedRegions, RegionClosing, 11.5)
*清空活跃窗口,显示效果图
dev_clear_window ()
dev_display (RegionClosing)

总结

希望对你有所帮助,如果有什么疑惑欢迎留言交流。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值