热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

模板匹配与定位配准——第7讲

模板匹配与定位配准通常是相辅相成的。通常来说,如果不考虑180°的翻转,源和目标各有“一个点,一个倾斜角度”就可以用于定位配准。图像配准:通常指定一幅图像为参考图像,另一幅图

 

模板匹配与定位配准通常是相辅相成的。

 

通常来说,如果不考虑180°的翻转,目标各有“一个点,一个倾斜角度”就可以用于定位配准。

 

图像配准:通常指定一幅图像为参考图像,另一幅图像为待配准图像,配准的目的是通过某种几何变换使待配准图像与参考图像的坐标达到一致。

 

从算子vector_angle_to_rigid的签名就能清晰看出这一点:

 

vector_angle_to_rigid( : : Row1Column1Angle1Row2Column2Angle2 : HomMat2D)

 

它只需要输入“源”的定位点坐标、倾斜角度,以及“目标”的定位点坐标、倾斜角度,它就能生成一个仿射变换矩阵用于配准

 

因此常见的定位方式有:

① 两点定位

② 点线定位

③ 模板匹配

 

两点定位案例图:

 

点线定位案例图:

 

模板匹配定位案例图:

 

 

 

 

一般的配准思路:

 

 

假如要将左侧的二维码精准地贴入右侧的“条码粘贴槽”中,其算法思路如下。

 

① 拟合抓取二维码的四条边线,这四条边线相交会有4个角点;

② 将对角线的两个角点连起来,这两条连线会有一个交点,这个点定义为该图形的中心点;

③ 用类似的方法求得“条码粘贴槽”的中心点坐标;

④ 通过直线拟合的方式分别求二维码和“条码粘贴槽”的倾斜角度;

⑤ 根据得到的两个点坐标和两个倾斜角,完成配准工作。

 

 

 

 

定位的典型应用:

 

 

 

 

 

 

 

常见的模板匹配方法:

① 基于形状(轮廓特征匹配)

② 基于互相关(基于灰度,NCC)

 

 

拓展阅读:

《探究算子find_shape_model中参数MaxOverlap的准确意思》

https://www.cnblogs.com/xh6300/p/6366694.html

 


推荐阅读
  • 使用Numpy实现无外部库依赖的双线性插值图像缩放
    本文介绍如何仅使用Numpy库,通过双线性插值方法实现图像的高效缩放,避免了对OpenCV等图像处理库的依赖。文中详细解释了算法原理,并提供了完整的代码示例。 ... [详细]
  • 本文详细介绍了 BERT 模型中 Transformer 的 Attention 机制,包括其原理、实现代码以及在自然语言处理中的应用。通过结合多个权威资源,帮助读者全面理解这一关键技术。 ... [详细]
  • QUIC协议:快速UDP互联网连接
    QUIC(Quick UDP Internet Connections)是谷歌开发的一种旨在提高网络性能和安全性的传输层协议。它基于UDP,并结合了TLS级别的安全性,提供了更高效、更可靠的互联网通信方式。 ... [详细]
  • 深入理解OAuth认证机制
    本文介绍了OAuth认证协议的核心概念及其工作原理。OAuth是一种开放标准,旨在为第三方应用提供安全的用户资源访问授权,同时确保用户的账户信息(如用户名和密码)不会暴露给第三方。 ... [详细]
  • QBlog开源博客系统:Page_Load生命周期与参数传递优化(第四部分)
    本教程将深入探讨QBlog开源博客系统的Page_Load生命周期,并介绍一种简洁的参数传递重构方法。通过视频演示和详细讲解,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 本文探讨了如何像程序员一样思考,强调了将复杂问题分解为更小模块的重要性,并讨论了如何通过妥善管理和复用已有代码来提高编程效率。 ... [详细]
  • python的交互模式怎么输出名文汉字[python常见问题]
    在命令行模式下敲命令python,就看到类似如下的一堆文本输出,然后就进入到Python交互模式,它的提示符是>>>,此时我们可以使用print() ... [详细]
  • 火星商店问题:线段树分治与持久化Trie树的应用
    本题涉及编号为1至n的火星商店,每个商店有一个永久商品价值v。操作包括每天在指定商店增加一个新商品,以及查询某段时间内某些商店中所有商品(含永久商品)与给定密码值的最大异或结果。通过线段树分治和持久化Trie树来高效解决此问题。 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 探讨一个显示数字的故障计算器,它支持两种操作:将当前数字乘以2或减去1。本文将详细介绍如何用最少的操作次数将初始值X转换为目标值Y。 ... [详细]
  • 深入解析:手把手教你构建决策树算法
    本文详细介绍了机器学习中广泛应用的决策树算法,通过天气数据集的实例演示了ID3和CART算法的手动推导过程。文章长度约2000字,建议阅读时间5分钟。 ... [详细]
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • 自学编程与计算机专业背景者的差异分析
    本文探讨了自学编程者和计算机专业毕业生在技能、知识结构及职业发展上的不同之处,结合实际案例分析两者的优势与劣势。 ... [详细]
author-avatar
听海的音_104
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有