AVS AVL 模板匹配

https://docs.adaptive-vision.com/current/studio/machine_vision_guide/TemplateMatching.html

模板匹配 Template Matching

简单模板匹配 Naive Template Matching

  1. 基本原理 NCC(Normalized Cross-Correlation)
  2. 模板图像和输入图片匹配的结果也是一种图像 Template Correlation Image.
    2.1 两种方法, 找出相关性最大的点.
    2.2 通常会用到两个Filter: ImageLocalMaxima, ImageCorrelationImage
  3. 缺点

基于灰度匹配, 基于边缘匹配 Grayscale-based Matching, Edge-based Matching

  1. 选择合适的金字塔参数 (值越大, 原始图被"提取"的越小)
  2. 基于灰度匹配时, 目标旋转也可被找到, 位移和角度可以兼顾.
  3. 基于边缘匹配

AVS提供的实现 (Model + Match)

  1. 交互式创建 EdgeModel, GrayMdel, Golden Template Model(CompareGoldenTemplate_Intensity and in CompareGoldenTemplate_Edges)
  2. 动态创建Model, 再做match.

CreateGrayModle + LocateObjects;
CreateEdgeModel + LocateObjects

  1. 参数
    3.1 inPyramidHeight (值越大, 原始图被"提取"的越小)
    3.2 inMinAngel, inMaxAngle
    3.3 inEdgeMagnitudeThreshold 值越小, 被检测的边缘细节越多, 配合 inEdgeHysteresis

Note:

  1. The SAD (Sum of Absolute Differences) method can be significantly slower than NCC (Normalized Cross-Correlation) method. Moreover, it is not illumination-invariant, as it is required in most applications. Thus, it is highly recommended to use the latter, NCC method instead.
  2. 大部分的情况下, 边缘匹配都比灰度匹配好用.

原文地址:https://www.cnblogs.com/onecrazystone/p/12306150.html

时间: 2024-10-08 01:36:37

AVS AVL 模板匹配的相关文章

opencv学习之路(21)、模板匹配及应用

一.模板匹配概念 二.单模板匹配 1 #include "opencv2/opencv.hpp" 2 #include <iostream> 3 using namespace std; 4 using namespace cv; 5 6 void main() 7 { 8 Mat temp=imread("E://mu.jpg"); 9 Mat src=imread("E://lena.jpg"); 10 Mat dst=src.c

基于opencv的视频流 模板匹配 (灰度化 二值化 )

#include <cv.h> #include <highgui.h> #include <windows.h> // 获取直方图 // 1. pImageData 图像数据 // 2. nWidth 图像宽度 // 3. nHeight 图像高度 // 4. nWidthStep 图像行大小 // 5. pHistogram 直方图 BOOL GetHistogram(unsigned char *pImageData, int nWidth, int nHeigh

图像处理之基于NCC模板匹配识别

一:基本原理 NCC是一种基于统计学计算两组样本数据相关性的算法,其取值范围为[-1, 1]之间,而对图像来说,每个像素点都可以看出是RGB数值,这样整幅图像就可以看成是一个样本数据的集合,如果它有一个子集与另外一个样本数据相互匹配则它的ncc值为1,表示相关性很高,如果是-1则表示完全不相关,基于这个原理,实现图像基于模板匹配识别算法,其中第一步就是要归一化数据,数学公式如下: 二:实现步骤 (1)      获取模板像素并计算均值与标准方差.像素与均值diff数据样本 (2)      根据

模式识别之目标跟踪---最简单的目标跟踪方法--------模板匹配与相关系数法

前言 模板匹配和相关系数法是目标跟踪的经典方法,它的优点有很多:简单准确,适用面广,抗噪性好,而且计算速度快.缺点是不能适应剧烈光照变化和目标剧烈形变. 所谓模板匹配法,就是指在一帧图像内寻找目标模板的位置,和模板最像的地方就是目标了.只要把全图的所有子区域和目标模板比较一下,找到最像目标模板的子区域,它就是目标的位置.如何度量子区域和目标模板的相似程度呢?最简单的办法就是计算这二者的相关系数. 相关系数 相关系数(r)是一种数学距离,可以用来衡量两个向量的相似程度.它起源于余弦定理:cos(A

字符识别OCR研究一(模板匹配&amp;amp;BP神经网络训练)

摘 要 在MATLAB环境下利用USB摄像头採集字符图像.读取一帧保存为图像.然后对读取保存的字符图像,灰度化.二值化,在此基础上做倾斜矫正.对矫正的图像进行滤波平滑处理,然后对字符区域进行提取切割出单个字符.识别方法一是採用模板匹配的方法逐个对字符与预先制作好的字符模板比較,假设结果小于某一阈值则结果就是模板上的字符:二是採用BP神经网络训练.通过训练好的net对待识别字符进行识别.最然后将识别结果通过MATLAB下的串口工具输出51单片机上用液晶显示出来. keyword: 倾斜矫正.字符切

OpenCV 学习笔记(模板匹配)

OpenCV 学习笔记(模板匹配) 模板匹配是在一幅图像中寻找一个特定目标的方法之一.这种方法的原理非常简单,遍历图像中的每一个可能的位置,比较各处与模板是否"相似",当相似度足够高时,就认为找到了我们的目标. 在 OpenCV 中,提供了相应的函数完成这个操作. matchTemplate 函数:在模板和输入图像之间寻找匹配,获得匹配结果图像 minMaxLoc 函数:在给定的矩阵中寻找最大和最小值,并给出它们的位置 在具体介绍这两个函数之前呢,我们还要介绍一个概念,就是如何来评价两

opencv笔记(二十二)——模板匹配 template matching

模板匹配就是在给定一幅图像和一幅模板(一般模板比图像的尺寸小很多)的情况下,找到这个图像中最最相似于模板的位置,比如 第一幅是给定的图片,第二幅是模板,第三幅就是搜索到的匹配的位置. 这个搜索的过程,我没有在源码中求索,但是根据tutorial,应该是采用sliding window的方法,利用滑动的窗口,逐像素进行匹配.这个逐像素的意思,就是锚定某个像素之后,在这个像素的右边和下方,以template的宽度和高度的距离的范围内,进行模板与图像的相似度计算. 这种方法和行人检测中常用的方法类似.

[模式识别].(希腊)西奥多里蒂斯&lt;第四版&gt;笔记8之__模板匹配

  对语音识别来讲,同一个单词被同一个人每次说的情况都不同,给识别带来困难.本章讨论的就是对不同的情形如何定义适应不同特性的度量. 1,基于最优路径搜索的度量:①贝尔曼最优性原则和动态编程②编辑距离(The Edit Distance)③在语音识别动态时间扭曲(DTW), speaker-dependentrecognition. speaker-independentrecognition. 2,基于相关性的度量:这一部分解决的问题是"给定一组记录数据,查找数据是否包含已知模式,并找出其具体位

使用OpenCV&amp;&amp;C++进行模板匹配

一:课程介绍 1.1:学习目标 学会用imread载入图像,和imshow输出图像. 用nameWindow创建窗口,用createTrackbar加入滚动条和其回调函数的写法. 熟悉OpenCV函数matchTemplate并学会通过该函数实现模板匹配. 1.2:什么是模板匹配? 在一副图像中寻找和另一幅图像最相似(匹配)部分的技术. 二:实验原理 让模板图片在原图片上的一次次滑动(从左到右,从上到下一个像素为单位的移动),然后将两张图片的像素值进行比对,然后选择相似度最高的部分进行标记,当遇