Apap图像配准算法[通俗易懂]

Apap图像配准算法[通俗易懂]Apap图像配准算法

大家好,又见面了,我是你们的朋友全栈君。

图像配准

图像配准是将两张场景相关的图像进行映射,寻找其中的关系,多用在医学图像配准、图像拼接、不同摄像机的几何标定等方面,其研究也较为成熟。OpenCv中的stitching类就是使用了2007年的一篇论文(Automatic panoramic image stitching using invariant features)实现的。虽然图像配准已较为成熟,但其实其精度、鲁棒性等在某些场合仍不足够,如光线差异很大的两张图片、拍摄角度差异很大的图片等。2013年,Julio Zaragoza等人发表了一种新的图像配准算法Apap(As-Projective-As-Possible Image Stitching with Moving DLT),该算法的效果还是不错的,比opencv自带的auto-stitch效果要好。而2015年也有一篇cvpr是介绍图像配准(Non-rigid Registration of Images with Geometric and Photometric Deformation by Using Local Affine Fourier-Moment Matching),其效果貌似很牛,但没有源码,难以检验。本文简单介绍Apap。

Apap

项目地址:http://cs.adelaide.edu.au/~jzaragoza/doku.php?id=mdlt
下面简单介绍Apap的实现流程:

  1. 提取两张图片的sift特征点
  2. 对两张图片的特征点进行匹配,匹配的过程引用了论文(Distinctive Image Features from Scale-Invariant Keypoints)
  3. 匹配后,仍有很多错误点,此时使用论文(Accelerated Hypothesis Generation for Multi-Structure Robust Fitting)提到的RANSAC的改进算法进行特征点对的筛选。筛选后的特征点基本能够一一对应。
  4. 使用DLT算法(Multiple View Geometry p92提到),将剩下的特征点对进行透视变换矩阵的估计。
  5. 因为得到的透视变换矩阵是基于全局特征点对进行的,即一个刚性的单应性矩阵完成配准。为提高配准的精度,Apap将图像切割成无数多个小方块,对每个小方块的变换矩阵逐一估计。

实验效果

两张原图:这里写图片描述
特征提取和匹配:这里写图片描述
红点为改进RANSAC筛选的错误点,绿线为正确点,能看出所有连线一一对应,并没有明显的错误特征对。
刚性配准:这里写图片描述
Moving_DLT配准:这里写图片描述

结论

Apap虽然能够较好地完成配准,但非常依赖于特征点对。若图像高频信息较少,特征点对过少,配准将完全失效,并且对大尺度的图像进行配准,其效果也不是很好,一切都决定于特征点对的数量。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125298.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 什么是网站的灵魂_测试性能网站

    什么是网站的灵魂_测试性能网站前言在前一篇随笔《大型网站系统架构的演化》中,介绍了大型网站的演化过程,期间穿插了一些技术和手段,我们可以从中看出一个大型网站的轮廓,但想要掌握设计开发维护大型网站的技术,需要我们一步一步去研究实践

    2022年8月4日
  • KRACK破解Wi-Fi WPA2加密协议 问题相关

    KRACK破解Wi-Fi WPA2加密协议 问题相关Wi-Fi爆重大安全漏洞,Android、iOS、Windows等所有无线设备都不安全了KRACK漏洞发现者回答纪实:所有设备都面临风险无线网络中所使用的WPA2安全加密协议遭到破解LineageOS已经着手修复WPA2安全加密协议的破解问题

    2022年5月1日
  • vuerouter配置_route删除路由

    vuerouter配置_route删除路由介绍VueRouter是Vue.js官方的路由管理器。它和Vue.js的核心深度集成,让构建单页面应用变得易如反掌。包含的功能有:嵌套的路由/视图表模块化的、基于组件的路由配置路由参

    2022年7月29日
  • 什么是粘包?_网络粘包

    什么是粘包?_网络粘包TCP/IP协议簇建立了互联网中通信协议的概念模型,该协议簇中的两个主要协议就是TCP和IP协议。TCP/IP协议簇中的TCP协议能够保证数据段(Segment)的可靠性和顺序,有了可靠的传输层协议之后,应用层协议就可以直接使用TCP协议传输数据,不在需要关心数据段的丢失和重复问题。图1-TCP协议与应用层协议IP协议解决了数据包(Packet)的路由和传输,上层的TCP协议不再关注路由和寻址,那么TCP协议解决的是传输的可靠性和顺序问题,上层不需要.

    2022年8月11日
  • C语言自定义函数的方法

    C语言自定义函数的方法一、C语言之自定义函数的调用1.声明一个自定义函数:voidfun(void);//函数的声明也可在主函数之前编写自定义函数;2.主函数里调用自定义函数:intmain(void){fun();//调用fun函数;return0;}3.编写自定义函数的功能:voidfun(void){​ inta=12;​ printf(“a=%d”,a);输出a}源代码…

    2022年6月15日
  • 11 Best Google Chrome Plugins For Designers

    11 Best Google Chrome Plugins For Designers

    2021年9月6日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号