![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Halcon 机器视觉
文章平均质量分 54
杨青《Halcon机器视觉算法原理与编程实战》读书笔记
花生树什么树
更加努力、更加勇敢、更加真诚实意待人。
hschen247@163.com
展开
-
Halcon——颜色识别提取
文章目录前言一、颜色识别原理二、颜色识别为什么将其转换至HSV颜色空间三、源代码写在最后前言【Halcon】颜色识别提取这里以嘉庚建筑风格为例~一、颜色识别原理载入图像后,将其转换至HSV颜色空间,通过判断每个像素是否在所选取的范围内(根据所需的颜色而定),并将其标识出来即可。二、颜色识别为什么将其转换至HSV颜色空间目前在计算机视觉领域存在着较多类型的颜色空间。HSL作为最常见的圆柱坐标所表示的颜色模型,它重新影射了RGB模型,从而能够视觉上比RGB模型更具有视觉直观性。简单地说原创 2021-05-31 21:25:17 · 10899 阅读 · 2 评论 -
Halcon--基于组件的模板匹配
文章目录前言一、测试图二、源码(过程见注释)总结前言Halcon–基于组件的模板匹配一、测试图二、源码(过程见注释)dev_close_window ()*读取参考图像,这里读取的是单通道灰度图像read_image (ModelImage, 'D:/USER/Desktop/design/dataset/bolts-0.jpg') *设置显示图像、绘制线条等窗口参数dev_open_window_fit_image (ModelImage, 0, 0, -1, -1, Wind原创 2021-12-10 22:26:48 · 2203 阅读 · 0 评论 -
Halcon--边缘提取-轮廓-确定钻孔洞的最小和最大半径
文章目录前言一、思路二、测试图三、源码总结前言基于边缘提取-轮廓-确定钻孔洞的最小和最大半径一、思路在获得钻孔的亚像素轮廓之后,得到圆形钻孔圆心的行列坐标,循环遍历 依次对所有的轮廓进行最小和最大半径的计算,从而确定钻孔洞的最小和最大半径。二、测试图三、源码* 读钻孔图像、获取图像的尺寸read_image (Rim, 'rim')get_image_size (Rim, Width, Height)dev_open_window (0, 0, Width, Height, 'b原创 2021-12-10 22:19:04 · 3585 阅读 · 0 评论 -
Halcon--指针识别
文章目录前言一、思路二、测试--结果三、源码总结前言基于Halcon的指针识别一、思路首先从原图像中选择一块多边形区域,使之包围指针部分,将该区域分割出来,作为参考的形状模板;接着确定形状模板的金字塔层的级数和对比度参数;然后创建形状模板,并检查创建出的形状模板轮廓是否理想;最后,读取检查图像进行模板匹配,从图像上获取指针形状的位置坐标和旋转角度。二、测试–结果三、源码*指针识别*清空显示窗口dev_close_window()*读取模板图像。这里的模板图像是单通道灰度图像,原创 2021-12-10 22:13:29 · 3047 阅读 · 4 评论 -
Halcon--破洞检测
文章目录前言一、思路二、测试--结果三、源码总结前言基于Halcon破洞检测一、思路根据傅里叶变换提取出局部突变的部分,并将其显示出来。其中,所选图像因为缺陷区域更小,更容易与背景混合,图像中的缺陷部分数量可能不止是单一的,可能需要根据一定的特征进行筛选,并将缺陷逐个标识出来。二、测试–结果三、源码*检测破洞*清空当前窗口dev_close_window ()read_image (Image, 'D:/USER/Desktop/design/dataset/破洞.jpg')原创 2021-12-10 22:08:48 · 1813 阅读 · 0 评论 -
Halcon--选择容量最小的饮料,并标记数据
文章目录前言一、源码(实现过程思路在注释中)二、测试图-结果图-数据总结前言基于Halcon选择容量最小的饮料,并标记数据一、源码(实现过程思路在注释中)*读取测试图read_image(Image,'D:/USER/Desktop/选出容量少的那一瓶饮料,并将数据展示在图中.tif')*获取图片的长宽get_image_size(Image, Width, Height)*新建窗口dev_open_window(0, 0, Width, Height, 'black', Windo原创 2021-12-10 22:03:25 · 1806 阅读 · 0 评论 -
Halcon--OCR识别
文章目录前言一、思路二、过程三、源码总结前言基于Halcon的OCR识别一、思路这个例子描述了半导体产品链的一个步骤,在生产线的前端,集成电路被印刷在晶圆上。要标记生产线中的单个晶圆,每个晶圆都会收到一个ID号,并用半字体打印。这个身份证号码在这里。① 读取图像、设置界面② 使用read_ocr_class_mlp算子指定分类器③ for循环操作,黑白翻转图像、进行均值滤波、阈值处理、闭运算等操作④ 再通过特征直方图,将字符的区域提取出来⑤ 对区域字符进行识别提取⑥ 最后释放资源原创 2021-12-08 20:45:08 · 2424 阅读 · 1 评论 -
Halcon--基于描述符的模板匹配
文章目录前言一、思路二、实现三、源码总结前言Halcon–基于描述符的模板匹配一、思路 基于描述符的匹配允许一定程度上的透视形变,并且能够在有无标定的图像当中进行。但不同的是基于描述符的匹配与物体的轮廓无关,只跟目标的特征点相关。①选择ROI,对ROI进行裁剪得到模板图像。②根据有无标定,采用create_uncalib_descriptor_model或create_calib_descriptor_model算子进行基于描述符的匹配模型的创建。③也是根据有无标定两种情况,采用算子f原创 2021-12-07 21:52:33 · 1483 阅读 · 0 评论 -
Halcon--差异模型完整性检测
文章目录前言一、思路二、实现三、源码总结前言基于Halcon实现差异模型完整性检测一、思路①获取图像使用的图像分为两类,一类是用于训练差异模型的图像;另一类是用于测试的图像,即实际检测图像。其中,图像如果是彩色的,需要将其转换成灰度图。如果存在一定的噪声,需要通过平滑去噪等预处理。当然,如果图片质量不佳或者ROI细节不够突出,也可以考虑重新采集,使图像的检测细节更为清晰。②创建差异模型图像预处理完之后,使用create_veriation_model算子创建一个用于对比的差异模型。③原创 2021-12-07 21:45:34 · 975 阅读 · 0 评论 -
Halcon--差异模型完整性检测
文章目录前言一、思路二、实现三、源码总结前言基于Halcon的差异模型完整性检测一、思路①获取图像使用的图像分为两类,一类是用于训练差异模型的图像;另一类是用于测试的图像,即实际检测图像。其中,图像如果是彩色的,需要将其转换成灰度图。如果存在一定的噪声,需要通过平滑去噪等预处理。当然,如果图片质量不佳或者ROI细节不够突出,也可以考虑重新采集,使图像的检测细节更为清晰。②创建差异模型图像预处理完之后,使用create_veriation_model算子创建一个用于对比的差异模型。③图原创 2021-12-07 19:18:51 · 5919 阅读 · 0 评论 -
Halcon--污染区域检测
文章目录前言一、思路二、实现三、源码总结前言基于Halcon的污染区域检测一、思路采用傅里叶变换将图像转换至频域上进行处理,在经过傅里叶变换的图像上使用正弦形状的带通滤波器,可以有效降低周期纹理的干扰,突出有缺陷的区域。而将两种不同参数的高斯函数相减,则可以有效提取出傅里叶图像中的特征区域。纹理和缺陷的灰度差异被“放大”,所以灰度阈值结合形状的面积特征将二者分隔开来。二、实现三、源码*关闭当前窗口dev_close_window ()read_image (Image, 'D:/U原创 2021-12-07 19:08:46 · 1422 阅读 · 2 评论 -
Halcon--基于局部形变的模板匹配
文章目录前言一、思路二、实现三、源码总结前言Halcon--基于局部形变的模板匹配一、思路1、 准备模板。在创建模板之前,读取输入图像,在根据需求选取所要检测的目标区域,然后将其转化为灰度图。2、 创建基于局部形变的匹配模型。其中有根据模板图像创建模型的算子create_local_deformable_model,也有根据目标的XLD轮廓创建,即create_local_deformable_xld算子。3、 搜索目标。模板创建完成后,使用find_local_deformable原创 2021-12-07 18:02:24 · 1838 阅读 · 1 评论 -
Halcon--图像分类
文章目录前言一、思路二、实现三、源码总结前言基于Halcon做图像分类处理一、思路【1】明确有哪些类别,根据类别去寻找合适的图像作为样本的数据集【2】创建分类器,create_class_mlp(这里以mlp为例,当然还有SVM、GMM、k-NN等)【3】获取明确类别样本的特征向量【4】将这些样本按分类序号添加到分类器中。(add_sample_class_mlp)【5】训练分类器。(train_class_mlp)【6】保存分类器,供后续调用。【7】获取未知分类被测对象的特原创 2021-12-07 17:53:09 · 1940 阅读 · 1 评论 -
Halcon--选取前五个最大的面积区域
文章目录前言一、思路二、实现三、源码总结前言基于Halcon选取前五个最大的面积区域一、思路【1】读取测试图后,使用threshold阈值分割图像,再用connection连接组件,确定前景区域【2】使用area_center传递前景区域,结果存储在元组中,元组中的值的索引对应于输入区域的索引,而后使用tuple_sort_index对元组的元素进行排序并返回排序后的元组的索引,并使用tuple_length计算元组长度。采用select_obj从对象元组中选择对象。这里选择倒5。area_原创 2021-12-07 17:47:25 · 6951 阅读 · 0 评论 -
Halcon--M105提取字母区域
文章目录前言一、思路二、实现三、源码总结前言基于Halcon的M105提取字母区域一、思路【1】读取图像,分量各个通道的图像,并将其转化为hsv。【2】对饱和度s图像进行阈值处理,以此分割出高饱和度区域。【3】最后打开用于消除小区域(小于圆形结构元素)并平滑区域边界。二、实现原图+过程展示+结果图三、源码read_image (Image, 'D:/USER/Desktop/design/dataset/m105提取字母区域.jpg')*将彩色图片进行通道分离得到红、绿、蓝原创 2021-12-07 17:41:06 · 346 阅读 · 0 评论 -
Halcon--织物折痕检测
文章目录前言一、思路二、实现三、源码总结前言基于Halcon织物折痕检测一、思路【1】采用read_image算子读取待处理的图像;【2】采用decompose3算子将图像分解成RGB三个通道;【3】采用trans_from_rgb算子将RGB三个通道的图像,转化为HSV图像空间;【4】采用texture_laws算子进行纹理检测;【5】采用mean_image算子对滤波器处理后的图像进行均值化,使图像更平滑,缺陷区域明显;【6】采用threshold算子对检测出的缺陷区域进行形态原创 2021-12-07 17:35:19 · 1151 阅读 · 0 评论 -
Halcon--光照不均处理
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、思路二、实现三、源码总结前言基于Halcon处理光照不均的图像。一、思路【1】采用read_image算子读取所输入待处理的彩色图像;【2】采用decompose3算子进行rgb通道分离; 【3】采用gauss_filter算子对r通道的图像进行高斯滤波(相应的滤波还有mean_image均值滤波、median_image中值滤波,这里之所以采用gauss_filter算子,是因为高斯滤波可以保留图原创 2021-12-07 17:24:52 · 7167 阅读 · 2 评论