halcon几何变换(仿射变换)】的更多相关文章

旋转.平移.镜像.缩放.斜切,可参考https://blog.csdn.net/machaoyu86/article/details/51182473 仿射变换前,需要获得仿射变换矩阵. 关于shape_trans(Region : RegionTrans : Type : ),内.外接圆.矩形,凸包.可参考https://blog.csdn.net/u012551485/article/details/75136664 以halcon自带案例check_blister.hdev为例,部分代码且…
二维仿射变换,顾名思义就是在二维平面内,对对象进行平移.旋转.缩放等变换的行为(当然还有其他的变换,这里仅论述这三种最常见的). Halcon中进行仿射变换的常见步骤如下: ① 通过hom_mat2d_identity算子创建一个初始化矩阵(即[1.0, 0.0, 0.0, 0.0, 1.0, 0.0]): ② 在初始化矩阵的基础上,使用hom_mat2d_translate(平移).hom_mat2d_rotate(旋转).hom_mat2d_scale(缩放)等生成仿射变换矩阵:(这几个算子…
如果需要处理的原图及代码,请移步小编的GitHub地址 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractice 图像的几何变换是在不改变图像内容的前提下对图像像素进行空间几何变换,主要包括了图像的平移变换,缩放,旋转,翻转,镜像变换等. 1,几何变换的基本概念 1.1 坐标映射关系 图像的几何变换改变了像素的空间位置,建立一种原图像像素与变换后图像像素之间的映射关系,通过这种映射关系能够实现下面两种计算: 1,原…
像素的减少 开运算(较少) 腐蚀(去除更多) 对灰度图像的开运算或腐蚀 相当于将灰度图像变暗 像素增加 闭运算(较少) 膨胀(较多) 对灰度图像的闭运算或膨胀 相当于将灰度图像变亮 仿射变换 另外一种仿射变换 * This example demonstrates an application from the pharmaceutical * industry. The task is to check the content of automatically filled * blister…
本人是工作八年的视觉工程师,主要从事Halcon和Visionpro视觉开发,谈谈个人对视觉学习看法: 1.HALCON是德国MVtec公司开发的一套完善的标准的机器视觉算法包,它节约了产品成本,缩短了软件开发周期. Halcon:底层功能算法多,运算性能快,开发需要一定软件功底和图像处理理论. 快速学习做法:研究实例.做实战项目.halcon不能提供相应的界面编程需求,需要和vs来构造MFC界面或者QT使用,才能构成一套完整软件. 2.需求主要有二维三维二维:(1)识别定位:(2)OCR识别:…
目录 第五章 图像运算 图像的代数运算 加法运算 图像减法 图像乘法 图像除法 图像逻辑运算(位操作) 图像的几何变换 图像几何变换的一般表达式 仿射变换 投影变换 灰度插值 图像校正 我在Gitee上建了个仓库,会将学习书本的时候打的一些代码上传上去,笔记中所有代码都在仓库里,初学的朋友可以一起交流哦!地址(Gitee) 第五章 图像运算 图像的代数运算 加法运算 以平均处理的方法将图像加法运用到图像的去噪中,先将噪声\(\eta(x,y)\)加入原始图像\(f(x,y)\)中,即$ g(x,…
<zw版·Halcon-delphi系列原创教程> Halcon分类函数015,vector矢量 为方便阅读,在不影响说明的前提下,笔者对函数进行了简化: :: 用符号“**”,替换:“procedure” :: 用大写字母“X”,替换:“IHUntypedObjectX” :: 省略了字符:“const”.“OleVariant” [示例] 说明 函数: procedure AddNoiseWhiteContourXld( const Contours: IHUntypedObjectX;…
<zw版·Halcon-delphi系列原创教程> Halcon分类函数016,xld,xld轮廓 为方便阅读,在不影响说明的前提下,笔者对函数进行了简化: :: 用符号“**”,替换:“procedure” :: 用大写字母“X”,替换:“IHUntypedObjectX” :: 省略了字符:“const”.“OleVariant” [示例] 说明 函数: procedure AddNoiseWhiteContourXld( const Contours: IHUntypedObjectX;…
halcon的算子列表   Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm 功能:把一个训练样本添加到一个高斯混合模型的训练数据上. 2.classify_class_gmm 功能:通过一个高斯混合模型来计算一个特征向量的类. 3. clear_all_class_gmm 功能:清除所有高斯混合模型. 4. clear_class_gmm 功能:清除一个高斯混合模型. 5. clear_sa…
<zw版·Halcon-delphi系列原创教程> Halcon分类函数012,polygon,多边形 为方便阅读,在不影响说明的前提下,笔者对函数进行了简化: :: 用符号“**”,替换:“procedure” :: 用大写字母“X”,替换:“IHUntypedObjectX” :: 省略了字符:“const”.“OleVariant” [示例] 说明 函数: procedure AddNoiseWhiteContourXld( const Contours: IHUntypedObject…
Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm 功能:把一个训练样本添加到一个高斯混合模型的训练数据上. 2.classify_class_gmm 功能:通过一个高斯混合模型来计算一个特征向量的类. 3. clear_all_class_gmm 功能:清除所有高斯混合模型. 4. clear_class_gmm 功能:清除一个高斯混合模型. 5. clear_samples_class_gm…
拉伸.收缩.扭曲.旋转是图像的几何变换,在三维视觉技术中大量应用到这些变换,又分为仿射变换和透视变换.仿射变换通常用单应性建模,利用cvWarpAffine解决密集映射,用cvTransform解决稀疏映射.仿射变换可以将矩形转换成平行四边形,它可以将矩形的边压扁但必须保持边是平行的,也可以将矩形旋转或者按比例变化.透视变换提供了更大的灵活性,一个透视变换可以将矩阵转变成梯形.当然,平行四边形也是梯形,所以仿射变换是透视变换的子集. 本小节实现图像的仿射变换. -----------------…
<zw版·delphi与halcon系列原创教程>zw版_THOperatorSetX控件函数列表v11中文增强版 Halcon虽然庞大,光HALCONXLib_TLB.pas文件,源码就要7w多行,但核心控件就是两个: THImagex,图像数据控件,v11版,包括488个函数和子程序 THOperatorSetX,操作主接口控件,v11版,包括1929个子程序 以上两大核心控件,已经删除个别delphi内部属性函数,不影响日常使用. 其他控件,基本上,都是为配合两个控件,提供数据类型支持.…
·满足您各类机器视觉应用需求的完善的开发库 ·包含匹配,识别,定位及1D,2D,3D测量等多种高级算法 ·强大,易用的工具加速您的开发进程 ·与Linux/UNI及Windows(包括×64)兼容,避免重复开发 ·直接支持多处理器使用程序运行更快 什么是HALCON? HALCON是一个完善的综合标准软件库,是得到广泛应用的机器视觉集成开发环境.它节约了产品的成本,缩短了软件的开发周期—     HALCON灵活的架构便于机器视觉,医学图像和图像分析应用的快速开发. HALCON包括什么? HA…
HALCON   windowssolarisgccdelphilinux图像处理 ·满足您各类机器视觉应用需求的完善的开发库 ·包含匹配,识别,定位及1D,2D,3D测量等多种高级算法 ·强大,易用的工具加速您的开发进程 ·与Linux/UNI及Windows(包括×64)兼容,避免重复开发 ·直接支持多处理器使用程序运行更快 什么是HALCON? HALCON是一个完善的综合标准软件库,是得到广泛应用的机器视觉集成开发环境.它节约了产品的成本,缩短了软件的开发周期-     HALCON灵活…
图像的简单几何变换 几何变换不改变图像的像素值,只是在图像平面上进行像素的重新安排 适当的几何变换可以最大程度地消除由于成像角度.透视关系乃至镜头自身原因所造成的几何失真所产生的的负面影响. 一.图像的平移 在平移之前,需要构造一个平移矩阵,并将其传给仿射函数cv2.warpAffine() import cv2 import numpy as np img = cv2.imread('dog.jpg') # 构造平移矩阵H H = np.float32([[1,0,50],[0,1,25]])…
注:很抱歉,忘记从转载链接了,作者莫怪.... 基于HALCON的模板匹配方法总结 很早就想总结一下前段时间学习HALCON的心得,但由于其他的事情总是抽不出时间.去年有过一段时间的集中学习,做了许多的练习和实验,并对基于HDevelop的形状匹配算法的参数优化进行了研究,写了一篇<基于HDevelop的形状匹配算法参数的优化研究>文章,总结了在形状匹配过程中哪些参数影响到模板的搜索和匹配,又如何来协调这些参数来加快匹配过程,提高匹配的精度,这篇paper放到了中国论文在线了,需要可以去下载.…
Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm 功能:把一个训练样本添加到一个高斯混合模型的训练数据上. 2.classify_class_gmm 功能:通过一个高斯混合模型来计算一个特征向量的类. 3. clear_all_class_gmm   功能:清除所有高斯混合模型. 4. clear_class_gmm   功能:清除一个高斯混合模型. 5. clear_samples_clas…
14.1  Access 1. get_region_chain 功能:一个对象的轮廓(contour)作为链式码. 2. get_region_contour 功能:查询一个目标的轮廓(contour). 3. get_region_convex 功能:查询突起的外表作为轮廓(contour). 4. get_region_points 功能:查询一个区域的像素数. 5. get_region_polygon 功能:用一个多边形近似获取区域. 6. get_region_runs 功能:查询一…
原文地址http://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_imgproc/py_geometric_transformations/py_geometric_transformations.html#geometric-transformations 目标 学习将不同的几何变换应用到像平移.旋转.仿射变换等图像上. 你会看到这些函数:cv2.getPerspectiveTransform 变换 OpenC…
在机器视觉应用中,经常需要对图像进行仿射变换.1.在基于参考的视觉检测中,由于待检图像与参考图像或多或少都会存在几何变化(平移.旋转.缩放等),所以在做比较之前一般都要对待检图像进行仿射变换以对齐图像.2.要进行仿射变换,必须先获取变换矩阵,形状匹配是获取变换矩阵的一种高效的方法.3.Halcon的如下几个函数是专门用于计算变换矩阵的:vector_angle_to_rigid :Compute a rigid affine transformation from points and angl…
HDevelop开发环境中提供的匹配的方法主要有三种,即Component-Based.Gray-Value-Based.Shape-Based,分别是基于组件(或成分.元素)的匹配,基于灰度值的匹配和基于形状的匹配. 这三种匹配的方法各具特点,分别适用于不同的图像特征,但都有创建模板和寻找模板的相同过程.这三种方法里面,我主要就第三种-基于形状的匹配,做了许多的实验,因此也做了基于形状匹配的物体识别,基于形状匹配的视频对象分割和基于形状匹配的视频对象跟踪这些研究,从中取得较好的效果,简化了用其…
转载链接:     http://blog.csdn.net/b108074013/article/details/37657801 很早就想总结一下前段时间学习HALCON的心得,但由于其他的事情总是抽不出时间.去年有过一段时间的集中学习,做了许多的练习和实验,并对基于HDevelop的形状匹配算法的参数优化进行了研究,写了一篇<基于HDevelop的形状匹配算法参数的优化研究>文章,总结了在形状匹配过程中哪些参数影响到模板的搜索和匹配,又如何来协调这些参数来加快匹配过程,提高匹配的精度,这…
仿射变换及坐标变换公式 几何变换改进图像中像素间的空间关系.这些变换通常称为橡皮模变换,因为它们可看成是在一块橡皮模上印刷一幅图像,然后根据预定的一组规则拉伸该薄膜.在数字图像处理中,几何变换由两个基本操作组成: (1)坐标的空间变换 (2)灰度内插,即对变换后的像素赋灰度值 坐标变换公式 (x,y) = T{(v, w)} 其中,(v, w)是原图像中像素的坐标,(x, y)是变换后图像中像素的坐标.最常用的空间坐标变换之一是仿射变换 基于上式的仿射变换公式 实际上,我们可以用两种方法来使用上…
http://www.cnblogs.com/ghj1976/p/5199086.html 变换模型是指根据待匹配图像与背景图像之间几何畸变的情况,所选择的能最佳拟合两幅图像之间变化的几何变换模型.可采用的变换模型有如下几种:刚性变换.仿射变换.透视变换和非线形变换等,如下图: 参考: http://wenku.baidu.com/view/826a796027d3240c8447ef20.html 其中第三个的仿射变换就是我们这节要讨论的. 仿射变换(Affine Transformation…
几何变换 几何变换可以看成图像中物体(或像素)空间位置改变,或者说是像素的移动. 几何运算需要空间变换和灰度级差值两个步骤的算法,像素通过变换映射到新的坐标位置,新的位置可能是在几个像素之间,即不一定为整数坐标.这时就需要灰度级差值将映射的新坐标匹配到输出像素之间.最简单的插值方法是最近邻插值,就是令输出像素的灰度值等于映射最近的位置像素,该方法可能会产生锯齿.这种方法也叫零阶插值,相应比较复杂的还有一阶和高阶插值. 插值算法感觉只要了解就可以了,图像处理中比较需要理解的还是空间变换. 空间变换…
halcon软件最高效的一个方面在于模板匹配,号称可以快速进行柔性模板匹配,能够非常方便的用于缺陷检测.目标定位.下面以一个简单的例子说明基于形状特征的模板匹配.      为了在右图中,定位图中的三个带旋转箭头的圆圈.注意存在,位置.旋转和尺度变化. 上halcon程序 * This example program shows how to find scaled and rotated shape models. dev_update_pc ('off') dev_update_window…
在日常工程应用中,我们通常通过halcon的 shape-based matching(形状匹配)进行各种定位, 如以前文章介绍的这样,理解各个参数并灵活应用通常就能得到很好的匹配效果和匹配速度, 当待匹配物体有轻微变形时,并不影响得到的匹配结果,然后当待匹配物体有较大变形时,如 塑料产品在成形时变形.纺织产品的花纹因为褶皱变形等,要想得到精确的定位结果就显得捉襟见肘,   如下图所示,印刷品有较大变形,在用shape-based matching时,定位结果就不尽如人意,因为 shape-ba…
双目立体视觉是机器视觉的一种重要形式,它是基于视差原理并由多幅图像获取物体三维几何信息的方法.双目立体视觉系统一般由双摄像机从不同角度同时获得被测物的两幅数字图像,或由单摄像机在不同时刻从不同角度获得被测物的两幅数字图像,并基于视差原理恢复出物体   的三维几何信息,重建物体三维轮廓及位置.双目立体视觉系统在机器视觉领域有着广泛的应用前景. HALCON是在世界范围内广泛使用的机器视觉软件.它拥有满足您各类机器视觉应用需求的完善的开发库.HALCON也包含Blob分析.形态学.模式识别.测量.三…
我们知道,Halcon中的坐标系的原点在左上角,而一般二维平面坐标系的原点在左下角.那么Halcon中坐标系和一般的二维坐标系有什么区别呢?我通过下面这个例子来分析. gen_image_const (Image, , ) dev_set_draw ('margin') *点1 gen_circle (Circle1, ) disp_message (, , , 'white', 'false') *点2 gen_circle (Circle2, ) disp_message (, , , 'w…