Halcon初级_学习笔记
文章平均质量分 88
Halcon工业机器视觉初级入门_学习笔记
Lushiqun
仅仅只是学习时候搜集整理的笔记。有兴趣的可以关注一下。
展开
-
Halcon 第一章『Halcon语言』◆第1节:控制类型和常量
operator(图标输入 : 图标输出 : 控制输入 : 控制输出) 首先是图形的输入,紧接着是图形的输出,其次是控制数据参数的输入,控制数据的输出,这四个参数有可能都是空的。比如: File / Images 读取不同文件格式的图像read_image( : Image : FileName : ) Image:输出参数,以此变量名输出读取的图像。 FileName:输入参数,要读取的图像的名称。前面也原创 2022-07-11 10:10:34 · 1727 阅读 · 0 评论 -
Halcon 第一章『Halcon语言』◆第2节:输入控制参数表达式(一)
在HDevelop中,赋值运算操作中必须进行赋值操作。 输入为右值,结果为左值,它是将右边的输入值存储到左边的命名当中。 而在C语言中赋值的形式是u = sin(x)+cos(y) 而在HDevelop中是形式为: HALCON Operator Reference / Control 给变量赋一个新值assign( : : Input : Result) Input:输入参数,输入一个值。 Result原创 2022-07-11 14:54:09 · 2583 阅读 · 0 评论 -
Halcon 第一章『Halcon语言』◆第3节:输入控制参数表达式(二)
在HDevelop中,比较操作不只是对单一元素进行操作,同时也通过与数组的操作形式,它们返回的类型总是为boolean类型。 t1=t2和t1#t2可以应用于所有类型,如果两个数据相等(为true),如果数组索引长度为相同,且所有数组相等,如果运算的数据类型不同(integer和real),整型将会转换成实数类型,字符串类型不能与数字进行混淆,也就是,字符串类型不能与其他类型进行比较。 上述这四个比较操作。在相同的索引位置上,类型必须相同,但是,整型、实型和布尔型的值会自动调原创 2022-07-11 16:57:36 · 875 阅读 · 0 评论 -
Halcon 第一章『Halcon语言』◆第4节:控制流语句
一、if条件语句 1、if(表达式) 满足if条件后执行的语句 endif 2、if(表达式) 满足if条件后执行的语句 else 不满足if条件后执行的语句 endif 3、if(表达式) 满足if条件后执行的语句 elseif原创 2022-07-11 18:42:12 · 1856 阅读 · 0 评论 -
Halcon 第一章『Halcon语言』◆第5节:读取图像
在默认设置中,不解除符号链接的引用,因此,如果符号链接指向目录,则不进行搜索,如果指向文件,则不返回符号链接。对于递归搜索,可以使用'max_depth '指定最大搜索深度,其中''是指定最大深度的数字。在JPEG-XR的情况下,'jxr', 'wdp', 'wmp'和'hdp'是可以接受的。tuple_regexp_select将expression中的正则表达式应用于Data中的一个或多个输入字符串,并返回Selection中的匹配字符串元素。,读取后的图像放入此名称的变量或元组中。原创 2022-08-22 15:39:32 · 2318 阅读 · 0 评论 -
Halcon 第二章『图像滤波』◆第5节:texture_laws算子(纹理过滤器)的计算原理
算子texture_laws — Filter an image using a Laws texture filter.格式texture_laws(Image : ImageTexture : FilterTypes, Shift, FilterSize : )纹理是图像表面的一种灰度变化。有的纹理很规则,会以局部小区域为单元重复出现,而现有的纹理则呈现出随机性。对于格则的纹理,可以很容易地从中分辨出重复的区域,这些局部的、重复的部分被称为......原创 2022-03-27 20:22:44 · 4103 阅读 · 0 评论 -
Halcon 第三章『Morphology形态学』◆第1节:腐蚀与膨胀
腐蚀与膨胀:通过腐蚀与膨胀操作对二值图像区域进行“收缩”或“扩张”。 结构元素结构元素一般由0和1的二值像素组成。结构元素的原点相当于“小窗”的中心,其尺寸大小具体由算子指定,结构元素的尺寸也决定着腐蚀或者膨胀的程度。结构元素的形状可以说圆形、矩形、椭圆形,甚至也可以是指定的多边形状。 腐蚀 腐蚀操作是对所选区域进行“收缩”的一种操作,可以用于消除边缘和杂点。腐蚀区域的大小与结构元素的大小和形状有关。 ......原创 2022-03-28 20:06:31 · 2106 阅读 · 1 评论 -
Halcon 第三章『Morphology形态学』◆第2节:开运算与闭运算
开运算 开运算的计算步骤是先腐蚀,后膨胀。 通过腐蚀运算能去除小的非关键区域,也可以把离得很近的元素分隔开,再通过膨胀填补过度腐蚀留下的空隙。因此,通过开运算能去除一些孤立的、细小的点,平滑毛糙的边缘线,同时原区域面积也不会有明显改变,类似于一种“去毛刺”的效果。 开运算 一、使用圆形结构元素对区域进行开运算处理。 opening_circle(Region : RegionOpening : Radius : ) ......原创 2022-03-29 19:41:09 · 3122 阅读 · 0 评论 -
Halcon 第三章『Morphology形态学』◆第3节:顶帽运算与底帽运算
顶帽运算顶帽运算(也称礼帽运算)是原始图像减去图像开运算(先腐蚀,后膨胀)的结果,得到图像的噪声。 顶帽运算对于增强阴影部分的细节很有用。开运算将消去图像中部分灰度值较高的部分,用原图减去开运算的结果,将得到被消去的部分。如果图像存在光照不均的情况,采用顶帽运算可以消除部分光照的影响,凸显背景下的前景目标对象。 底帽运算与顶帽运算类似,底帽运算也是用于增强图像中的细节。底帽运算的定义为原图闭运算(先膨胀,后腐蚀)的结......原创 2022-03-29 22:44:13 · 5376 阅读 · 0 评论 -
Halcon 第三章『Morphology形态学』◆第4节:灰度图像的形态学运算
Morphology形态学—Gray Values灰度值 基于灰度图像与基于区域的区别 基于区域:输入的是区域,这些区域是经过阈值处理的二值图像区域。这种操作不会对原图产生变化。 基于灰度:输入的是灰度图像。改变的是原图的像素灰度。.........原创 2022-03-31 21:41:41 · 2396 阅读 · 0 评论 -
Halcon 第四章『图像特征与提取』◆第1节:基于区域形状特征
第一节:区域形状特征及相关算子 定义是描述图像中局部区域的几何属性,如面积、中心等。 区域的面积和中心点 计算区域的面积和中心点坐标 area_center(Regions : : : Area, Row, Column) Regions:输入的区域。 Area:输出元组,为每个独立区域的面积。 Row:输出元组,为每个独立区域中心点的行Y坐标。 Column:输出元组,为每个独立区域中心点的列X坐标。 ...原创 2022-04-01 21:28:08 · 5410 阅读 · 0 评论 -
Halcon 第四章『图像特征和提取』◆第2节:基于灰度值特征
第二节:基于灰度值的特征原创 2022-04-02 23:11:41 · 4125 阅读 · 0 评论 -
Halcon 第四章『图像特征和提取』◆第3节:基于图像的纹理特征|灰度共生矩阵
第三节:基于图像纹理的特征&相关算子基于图像纹理特征不是针对像素点进行计算,而是在包含多个像素点的区域进行统计和分析,反映的是物体表面的一些特性,它可以用来反映物体表面灰度像素的排列状况。图像的纹理特征一般包括图像的能量、相关性、局部均匀性、对比度等。该特征也与区域的形状有关,也是一种区域特征,具有旋转不变形,但是容易受到光照变化的影响。 1、灰度共生矩阵原理(初级入门)简称:GLCM ①点对:由任意两个...原创 2022-04-03 15:45:02 · 2886 阅读 · 0 评论 -
Halcon 第四章『图像特征和提取』◆第4节:像素级边缘提取
第四节:像素级边缘提取&相关算子 含义:就是颜色边缘提取。颜色边缘检测方法是使用边缘滤波器,这些滤波器通过寻找较亮和较暗的区域边界像素点的方式提取边缘,滤波器寻找图像中梯度变化明显的部分。这些梯度一般描述为边缘的振幅和方向。将边缘振幅高的所有像素选择出来,就完成了区域的边缘轮廓提取。对比上述3种算子,有如下总结。Sobel算子在边缘检测的同时尽量减少了噪声的影响,比较容易实现。它对像素位置的影响进行了加权,因此效果比较好,是很常...原创 2022-04-04 09:25:22 · 4740 阅读 · 0 评论 -
Halcon 第四章『图像特征和提取』◆第5.1节:亚像素级边缘提取—轮廓生成
第五节:亚像素级边缘提取&相关算子概念:摄像机拍摄时,将物理世界中连续的图像进行了离散化处理。到成像面上每一个像素点只代表其附近的颜色。两个像素之间有5.2微米的距离,在宏观上可以看作是连在一起的。但是在微观上,之间还有无限的更小的东西存在。这个更小的东西称为“亚像素”。在两个物理像素之间还有像素,称之为Sub-Pixel。Halcon中用XLD(eXtended Line Descriptions)表示亚像素的轮廓和多边形。亚像素的方法常用于图像的边缘检测和定位...原创 2022-04-05 09:38:39 · 6632 阅读 · 0 评论 -
Halcon 第四章『图像特征和提取』◆第5.2节:亚像素级边缘提取—线条生成
在Halcon中还有其他用于提取边缘线段的,提取出的线段类型是亚像素精度的XLD轮廓。 ①lines_gauss算子 检测线及其宽度 lines_gauss(Image : Lines : Sigma, Low, High, LightDark, ExtractWidth, LineModel, CompleteJunctions : ) Image:输入参数,输入单通道图像。 Lines:输出参数,输出一组...原创 2022-04-06 11:08:31 · 4493 阅读 · 0 评论 -
Halcon 第四章『图像特征和提取』◆第5.3节:XLD轮廓处理—分割、筛选、连接or拟合
对于检测环节来说,虽然提取出边缘或者线条,获取了线条的属性,但是这些边缘或者线条的精度和完整度并不能符合实际要求,所以还需要对轮廓做一些处理。在Halcon中,轮廓的数据结构为亚像素级的XLD轮廓。 轮廓的生成线条的生成 1、轮廓的处理 输出了目标的轮廓后,接下来还需要对轮廓进行处理,这主要基于以下3个原因。 ①对于某些测量任务而言,并不需要分析目标的整个轮廓,可能只需要局部的一段轮廓。而有时由于RO...原创 2022-04-07 22:26:31 · 15788 阅读 · 0 评论 -
Halcon 第四章『图像特征和提取』◆第6节:图像的骨架特征和距离变换
1、骨架的原理图像的骨架特征,可以简单地理解为图像的中轴。骨架虽然从原来的物体图像中去掉了一些点,但仍然保持了原来物体的结构信息。骨架提取技术可以用于压缩图像,用在图像识别中可以降低计算量。2、骨架获取的两种方法①火烧模型。即图像的四周被相同火势点燃,燃烧速度一致,火势由图像四周向内部燃烧时,火焰相与处即为骨架。②最大圆盘法。最大圆盘为完全包含在物体内部并且与物体边界至少有两个切点的圆,而骨架就是由目标内所有内切圆盘的圆心组成的...原创 2022-04-13 21:29:55 · 5289 阅读 · 0 评论 -
Halcon 第四章『图像特征和提取』◆第7节:角点特征
1、角点检测法的原理 角点是图像局部邻域内两个边缘的交点。角点所在的邻域通常是图像中稳定的、信息丰富的区域。角点特征具有优良的抗噪声、抗光线干扰的特性,因此广泛应用于图像匹配、视频跟踪、三维建模以及目标识别等领域。2、Harris角点检测算子 Filters / Points 使用Harris算子检测感兴趣的点。 points_harris(Image : : SigmaGra...原创 2022-04-14 20:55:58 · 4987 阅读 · 0 评论 -
Halcon 第四章『图像特征和提取』◆第8节:图像的颜色特征
1、图像的彩色 通常用于区别颜色的特性是亮度、色调和饱和度。亮度表示了色彩明亮程度; 色调表示构成该颜色光的不同波长光波中比重最大的光的颜色; 饱和度是有色调所对应的光在构成该颜色光中所占的比例,它与所加白光数量成反比。 色调与饱和度一起称为色度。2、颜色模块彩色图像的表示则需要通道(channel)的概念。在计算机中,我们用红色、绿色和蓝色这三种颜色的组合来表达任意一种色彩。于是对于每一个像素,就要记...原创 2022-04-17 23:01:17 · 7421 阅读 · 0 评论 -
Halcon 第五章『模板匹配Matching』◆第1节:模板匹配的介绍&金字塔
一、前言图像处理中的模式指的是对图像目标所具有的特征的描述,而模式识别(Pattern Recognition)就是利用计算机对图像目标进行分类,在错误概率最小的条件下使识别的结果尽量与客观事物符合。 二、图像模式识别的定义人们在观察事物或现象时,常常会观察它与其他事物或现象的相同或不同之处,会把具有相似特征的归为一类。把上述过程用计算机来实现,就是模式识别过程。它可以定义为表征事物或现象的各种形式的(数值的、文字的和逻辑关系的)信息...原创 2022-05-02 22:41:09 · 5236 阅读 · 0 评论 -
Halcon 第五章『模板匹配Matching』◆第2节:基于灰度值的模板匹配|Gray-Value-Based
图像处理中的模式指的是对图像目标所具有的特征的描述,而模式识别(Pattern Recognition)就是利用计算机对图像目标进行分类,在错误概率最小的条件下使识别的结果尽量与客观事物符合。图像模式识别的定义人们在观察事物或现象时,常常会观察它与其他事物或现象的相同或不同之处,会把具有相似特征的归为一类。把上述过程用计算机来实现,就是模式识别过程。它可以定义为表征事物或现象的各种形式的(数值的、文字的和逻辑关系的)信息进行处理和分析,以对事物或现象进...原创 2022-04-20 20:21:24 · 5515 阅读 · 0 评论 -
Halcon 第五章『模板匹配Matching』◆第3节:基于相关性的模板匹配|Correlation-Based
一、介绍基于相关性的模板匹配其实是另一种基于灰度值的匹配的方法,不过它的特点是使用一种归一化的互相关匹配(Normalized Cross Correlation,NCC)来衡量模板图像和检测图像之间的关系,因此,在光照方面受的影响比较小。与经典的基于灰度值的匹配算法不同的是,它的速度要快很多,并且能够适应线性光照变化;与基于形状模板的匹配算法相比,它的优势是对一些形状有细微变化的、纹理复杂的或者是聚焦模糊的检测图像都能检测到,支持有轻微形变的搜索,能...原创 2022-04-22 22:33:45 · 3869 阅读 · 0 评论 -
Halcon 第五章『模板匹配Matching』◆第4节:基于形状的模板匹配|Shape-Based
一、介绍基于形状的模板匹配,也称为基于边缘方向梯度的匹配,是一种最常用也最前沿的模板匹配算法。该算法以物体边缘的梯度相关性作为匹配标准,原理是提取ROI中的边缘特征,结合灰度信息创建模板,并根据模板的大小和清晰度的要求生成多层级的图像金字塔模型。接着在图像金字塔层中自上而下逐层搜索模板图像,直到搜索到最底层或者得到确定的匹配结果为止。该方法使用边缘特征定位物体,对于很多干扰因素不敏感,如光照和图像的灰度变化,甚至可以支持局部边缘缺失、杂乱场景、噪声、失...原创 2022-04-24 17:24:36 · 10479 阅读 · 0 评论 -
Halcon 第五章『模板匹配Matching』◆第5节:基于组件的模板匹配|Component-Based
一、介绍基于组件的模板匹配可以说是基于形状的模板匹配的加强版,加强的地方在于,这种方法允许模板中包含多个目标,并且允许目标之间存在相对运动(位移和旋转)。这决定了这种方式不适用于尺寸缩放的情况。。由于有多个ROI,且需要检测多个ROI之间的相对运动关系,因此这种方法与基于形状匹配相比要稍微复杂一点,且不适用于失焦图像和轻微变形的目标。基于组件的模板匹配适用于组成部件之间有相对运动的物体,使用边缘特征定位物体,对于很多干扰因素不敏感,如光照变化、混乱无序等。其适用于多通...原创 2022-04-27 20:50:01 · 6362 阅读 · 0 评论 -
Halcon 第五章『模板匹配Matching』◆第6节:基于局部形变的模板匹配|Deformable
一、介绍形变分为两种,一种是基于目标局部的形变,另一种是由于透视关系而产生的形变。基于形变的模板匹配也是一种基于形状的匹配方法,不同的是,其返回的结果中不仅包括轻微形变的形状、形变的位置和参数,还有描述形变的参数,如旋转角度、缩放倍数等。基于透视的形变可以返回一个二维投影变换矩阵。如果是在相机标定的情况下,通过相机参数,还可以计算出目标的三维位姿。基于形变的模板匹配对于很多干扰因素不敏感,如光照变化、混乱无序、缩放变化等。其适用于多...原创 2022-05-04 22:11:10 · 3288 阅读 · 1 评论 -
Halcon 第五章『模板匹配Matching』◆第7节:基于描述符的模板匹配|Descriptor-Based
一、介绍与基于透视形变的模板匹配类似,基于描述符的模板匹配能够在物体处于透视形变的状态下进行匹配,并且已标定和未标定的相机图像都适用。与透视形变不同的是,它的模板不是根据边缘轮廓创建的,而是根据特征点创建的。例如:点的位置或者相邻像素的灰度信息等都可以作为描述符。有纹理的平面图形非常适用于这种方法,尤其是对于旋转倾斜等场景中的匹配可以得到非常理想的结果。注:基于描述符的模板匹配只能用于有纹理的图像。 创建基于描述符的模板这一步会比...原创 2022-05-04 22:11:29 · 1204 阅读 · 0 评论 -
Halcon 第六章『图像分类Classification』◆第1节:分类器的介绍
一、介绍分类器的作用是将目标对象指定给多个类别中的一个。给目标做出分类前,需要了解目标内不同的类别之间有什么共同特征,又有什么特征是某个类别独有的。可以通过分析样本对象的典型特征得到这些信息。特征参数存储在特征向量中,又称特征空间。特征空间的维度取决于特征的种类,一般来说,特征空间的维度可以很高。但是,如果维度过高,也可使分类问题变得复杂。而要区分物体类别,往往只依赖关键的几个特征。所以,可以去除一些不重要的特征,以尽量减少特征空间...原创 2022-05-04 22:03:42 · 4005 阅读 · 0 评论 -
Halcon 第六章『图像分类Classification』◆第2节:MLP神经网络分类器
一、介绍人工神经网络(Artificial Neural Network,ANN)简称神经网络(Neural Network,NN)或类神经网络,是一种模仿生物神经网络的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。MLP神经网络是一种基于神经网络、动态的分类器。MLP分类器使用神经网络来推导能将类别区分开来的超平面。使用超平面进行分割,如果只有两个类别,超平面会将各特征向量分为两类。如果类别的数量不止两个,就应当选择与特征向量距离最大的那...原创 2022-05-16 16:31:20 · 4725 阅读 · 0 评论 -
Halcon 第六章◆第6节:光学字符识别OCR
一、介绍光学字符识别OCR(Optical Character Recognition)是指用计算机图像处理的方法将字符图像“翻译”成计算机文字的过程,包括图像采集、预处理(二值化、噪声去除、倾斜校正)、字符定位、字符分割、特征提取、字符分类等步骤。二、常用方法①统计特征字符识别:这类方法先从字符图像中提取字形,将其与事先存储的字形进行比较,将相似度最高的匹配结果作为分类结果。这类方法的匹配算法简单,具有较快的匹配速度和较高的识别率......原创 2022-06-05 22:33:28 · 2892 阅读 · 0 评论 -
Halcon 第七章『图像的几何变换』◆第1节:图像的仿射变换(位置变换、形状变换)及应用
由于相机拍摄的时候可能存在角度偏差,因此实际获得的画面可能会与想象中有所差异。为了校正图像在拍摄中的失真问题,可以对图像进行一些简单的几何变换,如平移、缩放和旋转等,这些是图形学中的基本几何变换。 图像的几何变换只改变图像的位置、形状、尺寸等几何特征,不改变图像的拓扑信息。适当的几何变换可以在很大程度上消除由于成像角度、透视关系乃至镜头自身原因造成的图像几何失真。 图像的几何变换又称为图像空间变换,它将一副图像中像素映射到另一幅图像中的新位置。几何变换不改变图像的像素值,只是在原创 2022-06-09 20:38:52 · 4373 阅读 · 0 评论 -
Halcon 第七章『图像的几何变换』◆第2节:投影变换
投影变换也叫透射变换、投影映射。透射变换是将图像投影到一个新的视平面,是一种二维坐标到三维坐标的变换。 透射变换是仿射变换的延续,也可以说仿射变换是透射变换的一种特殊形式。其特殊性在于变换后图像的形状仍然维持原状。投影变换包括的情况很多,有可能变换前后图像的形状发生了很大的改变,如对边不再平行,或者发生了透视畸变,这时可以使用投影变换使其恢复原状。其步骤与仿射变换类似,首先计算投影变换矩阵,然后计算投影变换参数,最后将投影变换矩阵映射到对象上。 透射变换是三维空间上的变换,因此,原创 2022-06-10 21:36:57 · 4813 阅读 · 2 评论 -
Halcon 第七章『图像的几何变换』◆第3节:图像插值
在图像变换后,可能出现的两个问题: ①因为相邻像素之间只能有8个方向,而旋转方向却是任意的,使得像素的排列不是完全按照原有的相邻关系。 ②会出现许多空洞点。 因此采用插值方法来进行处理。图像差值的目的在于自动选择比较理想的像素值来增加图像的信息。该方法是利用已经的像素值来评估需要差值的位置的像素值。 图像插值的方法很多,常用的有最近邻插值法、均值插值法、双线性插值法和双三次插值法。 1、最近邻插值法 nearest_neighbor原创 2022-06-09 21:36:29 · 1377 阅读 · 0 评论