随笔分类 -  Halcon

1 2 3 下一页
Halcon中区域的Roundness和Circularity特征的区别
摘要:在Halcon中,区域的特征Roundness(圆度)和Circularity(圆度)虽然都用于描述区域与圆形之间的相似程度,但它们在计算方法和应用上存在一些区别。还是从帮助文档着手: 1、Roundness(圆度) 机翻: 计算方法:Roundness通常通过计算区域轮廓上各点到区域中心的平均距离 阅读全文
posted @ 2024-07-10 19:15 xh6300 阅读(17) 评论(0) 推荐(0) 编辑
sort_region算子对多个区域进行排序研究
摘要:sort_region是个很有用的算子,在对多个Region进行排序时,经常用到。 算子含义:根据区域的相对位置对区域进行排序。(Sorting of regions with respect to their relative position.) 算子签名:sort_region(Regions 阅读全文
posted @ 2022-08-10 17:33 xh6300 阅读(4591) 评论(0) 推荐(1) 编辑
浓淡补正的实现探究和复杂背景下细小缺陷的检测
摘要:“浓淡补正”是基恩士视觉的一个很强大的算法工具。使用“浓淡补正”的预处理,可以消除工件表面的光泽和阴影,仅抽取污点及瑕疵。(如下图) 至于它的实现原理,网上搜不到相关资料。不过根据它的实现效果,能大致窥见它的原理:排除背景渐变的浓淡变化,只抽取对比度急剧变化的部分。 看到这句话,想必有些人已经想到了 阅读全文
posted @ 2022-07-13 19:35 xh6300 阅读(2700) 评论(0) 推荐(0) 编辑
仿射变换中错切变换的研究与应用
摘要:仿射变换是平移、翻转、旋转、缩放、错切这五种变换的组合。 错切变换就是上图中的第5种。 图像的错切实际上是平面景物在投影平面上的非垂直投影。错切使图像中的图形产生扭变,其一般有两种情况:水平方向错切、垂直方向错切。(如下图所示) 具体数学解释,可参考网上的这篇博客:https://blog.csdn 阅读全文
posted @ 2022-07-07 19:19 xh6300 阅读(974) 评论(0) 推荐(0) 编辑
select_shape_xld特征筛选中'row'和'row1'的区别和注意点
摘要:常见的特征筛选算子有select_shape和select_shape_xld。 其中,select_shape用于筛选Region,select_shape_xld用于筛选Xld。实际项目中,经常需要根据行、列来筛选符合条件的Region或者Xld。(如下图) 特征'row'是由算子area_ce 阅读全文
posted @ 2022-03-31 18:26 xh6300 阅读(799) 评论(0) 推荐(0) 编辑
fit_line_contour_xld拟合直线的五种算法的准确度比较
摘要:大家在网上搜索“fit_line_contour_xld”应该很容易就能发现这样的几行字:(没耐心看的话,可以直接看文末三行研究结论) regression:回归,标准的最小二乘法拟合 huber:加权的最小二乘法拟合,异常值的影响被减小基于Huber方法 tukey:加权的最小二乘法拟合,异常值的 阅读全文
posted @ 2021-10-14 22:06 xh6300 阅读(2417) 评论(0) 推荐(1) 编辑
不同颜色在Halcon中的色相值规律
摘要:下面是一张色相渐变图。底部的数值是它在Halcon中对应的色相值。 色相H值范围:0~255 其中纯红为0或者255,这说明不同颜色的色相值其实是一个首尾相连的闭合环(色轮)。(Photoshop中为了突出这一特性,它的色相取值范围是0~360) 如果在Halcon中要筛选红色,范围可能要写2段,例 阅读全文
posted @ 2021-08-16 15:01 xh6300 阅读(1000) 评论(0) 推荐(1) 编辑
不使用遍历,如何将Tuple里的负数元素全都变为0
摘要:假设有一个元组 a := [566, 52, -15, 50, -18, 0],如何将里面的负数都置为0,其他元素不变呢? 常见的思路是对元组的元素进行遍历。如果发现某个元素小于0,就强制给它赋值为0 。 其实Halcon里面有一些算子组合,可以更简洁地实现这个目的。 1 a := [566, 52 阅读全文
posted @ 2020-09-11 17:17 xh6300 阅读(921) 评论(1) 推荐(1) 编辑
Halcon自动化训练OCR分类器举例
摘要:进行OCR的时候,同一个字符,通常需要很多字符小图,这样图片多了,才能训练出健壮的分类器。如何自动化地执行该过程呢?我提供一种思路。 待训练的图片集如下: 其中,“文件夹0”和“文件夹1”中有多张图片,例如“文件夹1”中的图片是这样的(图片名称第一个字符都是“1”): 训练OCR分类器的完整代码如下 阅读全文
posted @ 2020-07-28 18:41 xh6300 阅读(5013) 评论(2) 推荐(3) 编辑
Halcon的OCR字符识别算法技巧总结
摘要:一、重要算子 OCR分类器其实有很多,如下图所示。但是通常mlp分类器效果较好,使用较多。 主要算子如下: ① append_ocr_trainf(Character, Image : : Class, TrainingFile : ) 四个参数分别是:字符Region、字符Image、字符文本、O 阅读全文
posted @ 2020-07-28 17:58 xh6300 阅读(18816) 评论(10) 推荐(7) 编辑
Halcon中将16位的图像转化为8位的图像
摘要:Halcon中Image有多种像素表示方式,这方面网上找到的资料比较少,有一张大恒图像培训的文档中提到过,感觉描述比较准确: 里面有四种类型比较类似:uint2、int1、int2、int4。 区分起来很简单,带1表示8位,带2表示16位,带4表示32位,带u表示无符号(即无“负号”这种符号) 我用 阅读全文
posted @ 2019-12-27 16:22 xh6300 阅读(5983) 评论(1) 推荐(1) 编辑
Photoshop和Halcon如何锐化彩色图像不伤其颜色
摘要:锐化图像是摄影中的一步重要操作。 锐化是通过颜色提纯达到锐化的目的。一旦锐化过度,照片很容易就会出现不自然的色斑,或溢色效果。 我们以Photoshop中的“USM锐化滤镜”为例:(为了使效果明显,我这里用了较大的锐化值) 锐化结果:可以发现鼻翼、眉毛下面、上嘴唇上面的皮肤都出现了明显的黄色色块。这 阅读全文
posted @ 2019-12-26 17:46 xh6300 阅读(2211) 评论(0) 推荐(1) 编辑
图像滤波和形态学运算中矩形结构元素的运用
摘要:在图像滤波和形态学运算中,我们用得最多的是圆形结构元素(circle)或者方形结构元素,例如: ① 圆形结构元素 opening_circle (Region, RegionOpening, 3.5)erosion_circle (Region, RegionErosion, 3.5) ② 方形结构 阅读全文
posted @ 2019-11-23 12:01 xh6300 阅读(2435) 评论(4) 推荐(0) 编辑
region、xld有对应的字符串时,将region、xld按照行或列排序的算法实现
摘要:用Halcon解码时,如果一张图里面有多个码,它通常可以把这些码都解出来,并且生成对应的解码结果字符串元组(也就是下面的DecodedDataStrings),如果有多个码,那么该元组就有多个元素。 ① find_bar_code(Image : SymbolRegions : BarCodeHan 阅读全文
posted @ 2019-11-22 18:12 xh6300 阅读(1529) 评论(4) 推荐(1) 编辑
影响形状模板匹配的查找速度的参数分析
摘要:我们都知道,HDevelop中,在菜单栏“助手”中,可以通过“Matching”助手辅助模板匹配的建模等操作。 “基于形状”的模板匹配, 主要有三种类型:find_shape_model、find_scaled_shape_model、find_aniso_shape_model。 那么这三种类型有 阅读全文
posted @ 2019-09-09 16:17 xh6300 阅读(6146) 评论(5) 推荐(3) 编辑
select_region_point和select_region_spatial
摘要:一、select_region_point select_region_point(Regions:DestRegions:row,column:) 算子含义:选择包含给定像素的所有区域。 Regions是待测试的Region集合,DestRegions是包含给定像素点的所有区域集合。 举例如下: 阅读全文
posted @ 2019-09-02 17:14 xh6300 阅读(1483) 评论(1) 推荐(0) 编辑
提取线条的lines_color、lines_facet、 lines_gauss算子
摘要:Halcon中线条提取的算子主要有: lines_color(Image : Lines : Sigma, Low, High, ExtractWidth, CompleteJunctions : ) lines_facet(Image : Lines : MaskSize, Low, High, 阅读全文
posted @ 2019-08-30 20:01 xh6300 阅读(6752) 评论(1) 推荐(1) 编辑
求圆环毛刺凸出高度是否超标的算法实现
摘要:项目需求:要求圆环外圈毛刺的凸出高度不得超过20像素,如超过判为NG。 算法分析:按照一般的思路,应该是先将外圈拟合成一个圆;然后将这个工件阈值化,提取工件区域;然后用该区域减去之前拟合的圆,剩下的区域就是毛刺部分了。那么什么样特征的毛刺算超标的呢?很显然,如果仅仅用'area'、'inner_ra 阅读全文
posted @ 2019-08-01 11:40 xh6300 阅读(2037) 评论(8) 推荐(0) 编辑
Halcon小函数的封装和代码导出
摘要:一、Halcon小函数的封装和修改 1、名词解释: 算子:指Halcon中最基础、最底层的函数(即你看不到它的代码实现),一个算子只有一句话,例如threshold算子。 小函数:由多个算子组合成的函数,我习惯称为小函数。其特点是,可以通过鼠标右键单击“显示函数”打开。如下图: 通常,Halcon代 阅读全文
posted @ 2019-04-01 19:32 xh6300 阅读(7834) 评论(7) 推荐(1) 编辑
Halcon一维码和二维码的解码步骤和技巧——第11讲
摘要:针对Halcon中一维码和二维码的解码,我分别写了两篇文章,参见: 《Halcon的一维条码解码步骤和解码技巧》:https://www.cnblogs.com/xh6300/p/10484995.html 《Halcon的二维码解码步骤和解码技巧》:https://www.cnblogs.com/ 阅读全文
posted @ 2019-04-01 19:21 xh6300 阅读(3182) 评论(0) 推荐(0) 编辑

1 2 3 下一页