基于灰度的模板匹配(带旋转角度)

2023-11-20

原图

选择模板

旋转180度进行识别

继续旋转 ,依然可以识别

代码:

* Searching the best matching of a template in an image (with rotation).
* 
dev_close_window ()
read_image (For6, 'for6')
get_image_size (For6, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowID)
* Interpolate 2 video half images
fill_interlace (For6, ImageFilled, 'odd')
* gen_rectangle1 (Rectangle, 266, 390, 348, 435)
gen_rectangle1 (Rectangle, 78, 292, 129, 402)
* gen_rectangle1 (Rectangle, 258, 214, 296, 258)
area_center (Rectangle, Area, Row, Column)
reduce_domain (ImageFilled, Rectangle, ImageReduced)
pi := acos(0.0) * 2
* Preparing a pattern for template matching with rotation
create_template_rot (ImageReduced, 4, -pi, 2 * pi, pi / 45, 'sort', 'original', TemplateID)
dev_set_color ('red')
SumError := 0.0
Count := 0
for Phi := -180 to 180 by 5.0
    hom_mat2d_identity (HomMat2DIdentity)
    hom_mat2d_rotate (HomMat2DIdentity, rad(Phi), 256, 256, HomMat2DRotate)
    affine_trans_image (ImageFilled, ImageAffinTrans, HomMat2DRotate, 'constant', 'false')
*     add_noise_white (ImageAffinTrans, ImageAffinTrans, 30)
    best_match_rot_mg (ImageAffinTrans, TemplateID, -pi, 2 * pi, 40, 'true', 4, Row, Column, Angle, Error)
    disp_arrow (WindowID, Row, Column, Row - cos(Angle) * 50, Column - sin(Angle) * 50, 1)
    AngleDeg := deg(Angle)
    DiffAngle := abs(AngleDeg - Phi)
    if (DiffAngle > 360)
        DiffAngle := abs(360 - DiffAngle)
    endif
    SumError := SumError + DiffAngle
    Count := Count + 1
endfor
TotalError := SumError / Count
clear_template (TemplateID)

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于灰度的模板匹配(带旋转角度) 的相关文章

  • Halcon表面检测例程解析

    1 表面划伤检测 例程 xff1a suface scratch dev 描述 xff1a Detect scratches on a surface via local thresholding and morphology 通过使用局部
  • Halcon C#联合编程的一种异常的解决方法

    源码为超人视觉联合C 启蒙班中的示例代码 span class token keyword using span span class token namespace System span span class token punctua
  • 【Halcon】计算机视觉(CV)与机器视觉(MV)

  • Halcon 亚像素检测指定区域 瑕疵 轮廓

    如图 找到下图中铭牌上 面积最大的瑕疵快 认为黑点是瑕疵 span class token operator span 读取图片 并获取尺寸 span class token function read image span span cl
  • halcon中阈值分割算子用法

    1 threshold Image Region MinGray MaxGray xff1a 通过给定的阈值区间对图像进行分割 效果图 xff1a read image Audi2 39 audi2 39 fill interlace Au
  • halcon边缘检测

    边缘检测 Ronny丶 博客园 寻找边缘的传统方法 xff0c 即图像中的暗 光转换 xff0c 是应用边缘滤波器 这些滤光器可以在光和暗区域的边界找到像素 从数学术语中来说 xff0c 这意味着这些滤波器决定了图像的梯度 此图像渐变通常作
  • Halcon相机标定

    相机标定 相机标定的概念 相机的畸变 相机位置和被拍摄物体位姿关系产生的误差 透镜和成像平面 CMOS 不完全平行 镜头和被拍摄物体不完全平行 标定板 相机标定过程 相机标定的概念 在图像测量过程以及机器视觉应用中 为确定空间物体表面某点的
  • halcon 与PLC串口通信解决方案

    OpSystem environment OS if OpSystem Windows NT open serial COM1 SerialHandle else open serial dev tty SerialHandle endif
  • Halcon 12.0下载

    Halcon 12 0 链接 https pan baidu com s 15JpLWsfzIIhQEU4jE 3AsQ 密码 l0wt
  • Winform控件

    Winform控件 button 单选框 多选框 文本框 标签 显示图片控件 进度条属性 Halcon图片在PictureBox控件中显示 添加Halcon的引用 编写的代码如下 在PictureBox中显示图像变量HObject 先将之前
  • halcon基本图像操作

    halcon基本图像操作 阈值分割 取某一个阈值下的某一个区域 获取中心点位置 形态学 膨胀 腐蚀 开运算 闭运算 综合使用 开运算和检测轮廓 字符识别 资源路径 F halcon halconStudy 阈值分割 灰度值 读取图像 转灰度
  • halcon识别斜着的车牌

    对于倾斜的车牌 我们必须用仿射变换 将车牌弄正 再进行识别 如图 halcon代码 read image Image666 C Users Administrator Desktop 666 jpg decompose3 Image666
  • 基于相关性(NCC)的模板匹配Halcon

    一 原理 归一化相关性 NCC normalization cross correlation 顾名思义 就是用于归一化待匹配目标之间的相关程度 注意这里比较的是原始像素 通过在待匹配像素位置p px py 构建3 3邻域匹配窗口 与目标像
  • Blob分析实现缺陷检测

    检测饼干的缺陷 blob 特征 1 正常的图 2 有缺陷的图 3 代码 This example demonstrates a quality inspection on hazelnut wavers Using the morpholo
  • Halcon三维模型预处理(1):调平的三大手法

    面结构光拍摄生成的点云模型 往往相对系统坐标系是有角度的 首先讲一下调平的目的 1 为接下来的预处理切除背景面做准备 3 不做调平 后续处理会很麻烦 因为不清楚坐标系在平台的为位置 2 对于无序抓取项目 平台相对相机可能是有角度的 将抓取平
  • 基于灰度的模板匹配(标准)

    原图 创建模板 在加了噪声的图中识别 代码 dev close window dev open window 0 0 599 464 black WindowID read image Image pumpe dev set draw ma
  • 2、halcon+利用光流场检测运动的物体

    这个事例是应用optical flow mg这个算子来在一个图像序列中计算其光溜 并且分割其运动物体 dev update off 把程序窗口 变量窗口 显示窗体变为off状态 dev close window 关闭显示窗口 read im
  • Halcon极坐标变换检测缺陷

    一 原图 二 通过极性变换拉直 三 检测缺陷 This example checks bottle necks for defects First the bottle is detected with basic morphology e
  • halcon起步

    halcon起步 安装 软件介绍 安装 下载地址 管理员方式运行 选择安装 否 复制dll文件 D Program Files MVTec HALCON 12 0 bin x64 win64 重启计算机 软件介绍 打开药品识别例程 导出为c
  • 调用halcon函数时的错误处理

    注 以下材料来自halcon帮助文档 因水平有限 难免有误 欢迎指正 0 概述 在遇到一个运行时错误时 HALCON C 会以默认的方式给出错误信息 并终止程序 然而 在某些情况下 我们并不希望按照这样的规则来处理错误 例如 当一个程序允许

随机推荐