halcon三种模板匹配方法

转自 : http://blog.csdn.net/hust1900/article/details/8843270

halcon有三种模板匹配方法:即Component-Based、Gray-Value-Based、Shaped_based,分别是基于组件(或成分、元素)的匹配,基于灰度值的匹配和基于形状的匹配,此外还有变形匹配和三维模型匹配也是分属于前面的大类

本文只对形状匹配做简要说明和补充:

Shape_Based匹配方法:

上图介绍的是形状匹配做法的一般流程及模板制作的两种方法。

先要补充点知识:形状匹配常见的有四种情况 一般形状匹配模板shape_model、线性变形匹配模板planar_deformable_model、局部可变形模板local_deformable_model、和比例缩放模板Scale_model

第一种是不支持投影变形的模板匹配,但是速度是最高的,第二种和第四种是支持投影变形的匹配,第三种则是支持局部变形的匹配。

一般形状匹配模板是最常用的,模板的形状和大小一经制作完毕便不再改变,在查找模板的过程中,只会改变模板的方向和位置等来匹配目标图像中的图像。这个方法查找速度很快,但是当目标图像中与模板对应的图像存在比例放大缩小或是投影变形如倾斜等,均会影响查找结果。涉及到的算子通常为create_shape_model 和find_shape_model

线性变形匹配模板planar_deformable_model是指模板在行列方向上可以进行适当的缩放。行列方向上可以分别独立的进行一个适当的缩放变形来匹配。主要参数有行列方向查找缩放比例、图像金字塔、行列方向匹配分数(指可接受的匹配分数,大于这个值就接受,小于它就舍弃)、设置超找的角度、已经超找结果后得到的位置和匹配分数

线性变形匹配又分为两种:带标定的可变形模板匹配和不带标定的可变形模板匹配。涉及到的算子有:

不带标定的模板:创建和查找模板算子create_planar_uncalib_deformable_model和find_planar_uncalib_deformable_model

带标定模板的匹配:先读入摄像机内参和外参 read_cam_par 和read_pose       创建和查找模板算子 create_planar_calib_deformable_model和find_planar_calib_deformable_model

局部变形模板 是指在一张图上查找模板的时候,可以改变模板的尺寸,来查找图像上具有局部变形的模板。例如包装纸袋上图案查找。参数和线性变形额差不多

算子如下:create_local_deformable_model和find_local_deformable_model

比例缩放末班匹配 是介于一般形状匹配和线性变形匹配之间的一种方法。它可以匹配放大或是缩小的模板,但是仅限于模板大小的缩放,即行列缩放因子一样。这也是它和线性缩放最大的不同。

涉及到的算子如下:create_scale_shape_model和find_scale_shape_model

halcon三种模板匹配方法

时间: 2024-08-04 01:36:19

halcon三种模板匹配方法的相关文章

三种纯CSS方法实现等高列

在这篇文章里, 我会介绍三种使用纯css的方式来实现等高列的方法.在网页布局中设置列等高是比较常见的, 所以写这篇文章就是要总结下一些优雅的纯CSS解决方案. 插图自己弄得,不喜莫喷 哈哈.. 下面介绍的三种方法都只用到了CSS , 不涉及jQuery.JavaScript计算实现的方法,所以我把它这篇文章标题设为:三种纯CSS方法实现等高列. 方法-1: 使用Margins, Paddings和 Overflow来实现 第一种方法使用margins, paddings和overflow来迫使列

poj 3486 A Simple Problem with Integers(树状数组第三种模板改段求段)

1 /* 2 树状数组第三种模板(改段求段)不解释! 不明白的点这里:here! 3 */ 4 #include<iostream> 5 #include<cstring> 6 #include<cstdio> 7 #include<algorithm> 8 #define N 100005 9 using namespace std; 10 11 typedef long long LL; 12 13 LL ss[N], B[N], C[N]; 14 15

控制系统的三种经典分析方法

控制系统的三种经典分析方法 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 系列博客说明:此系列博客属于作者在大三大四阶段所储备的关于电子电路设计等硬件方面的知识和项目笔记,由于当时崇尚手写,没有进行电子录入,后来发现查阅起来比较零散且麻烦,而且不便随身携带.现将笔记中写字比较公正清晰且内容重要的部分通过扫描录入共享在我的博文中,以便有需要时随时上网查阅,同时希望能对有兴趣的读者有所帮助.内容不涉及实验室等利益,均是常规知识储备. 时域分析法 根轨迹法

.Net MVC 导入导出Excel总结(三种导出Excel方法,一种导入Excel方法)

.Net MVC  导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) 通过MVC控制器导出导入Excel文件(可用于java SSH架构) public class ExcelController : Controller { // // GET: /Excel/ Models.zbwxglEntities myMdl = new Models.zbwxglEntities(); /// <summary> /// 第一种方法,利用文件输出流进行读写操作 /// <

JSON三种数据解析方法(转)

原 JSON三种数据解析方法 2018年01月15日 13:05:01 zhoujiang2012 阅读数:7896 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/oman001/article/details/79063278 引言 JSON数据现在是我们开发中用的最多的,百分之八十的数据都是通过JSON方式进行传输,那么想要学好JSON解析就要了解什么是JSON数据,怎么快速解析它从而提升开发效率. 什么是JSON数据? 下面这里有一段JS

基于HALCON的模板匹配方法总结 (转)

很早就想总结一下前段时间学习HALCON的心得,但由于其他的事情总是抽不出时间.去年有过一段时间的集中学习,做了许多的练习和实验,并对基于HDevelop的形状匹配算法的参数优化进行了研究,写了一篇<基于HDevelop的形状匹配算法参数的优化研究>文章,总结了在形状匹配过程中哪些参数影响到模板的搜索和匹配,又如何来协调这些参数来加快匹配过程,提高匹配的精度,这篇paper放到了中国论文在线了,需要可以去下载. 德国MVTec公司开发的HALCON机器视觉开发软件,提供了许多的功能,在这里我主

Halcon中模板匹配方法的总结归纳

基于组件的模板匹配: 应用场合:组件匹配是形状匹配的扩展,但不支持大小缩放匹配,一般用于多个对象(工件)定位的场合. 算法步骤: 1.获取组件模型里的初始控件 gen_initial_components() 参数: ModelImage [Input] 初始组件的图片 InitialComponents [Output] 初始组件的轮廓区域 ContrastLow [Input] 对比度下限 ContrastHigh [Input] 对比度上限 MinSize [Input] 初始组件的最小尺

OpenCV中的模板匹配方法及其应用

模板匹配(TemplateMatching)就是在一幅图像中寻找和模板图像(template)最相似的区域,该方法原理简单计算速度快,能够应用于目标识别,目标跟踪等多个领域.OpenCV中对应的函数为matchTemplate或cvMatchTemplate(参考opencvdoc),简单介绍下: 1.函数原型 C++: void matchTemplate(InputArray image, InputArray templ, OutputArray result, int method);

List 三种遍历的方法

学习java语言list遍历的三种方法,顺便测试各种遍历方法的性能,测试方法为在ArrayList中插入1千万条记录,然后遍历ArrayList,发现了一个奇怪的现象,测试代码如下: package com.hisense.tiger.list; import java.util.ArrayList;import java.util.Iterator;import java.util.List; public class ListTest { public static void main(St