计算机视觉——全景图像拼接

一、全景拼接

1.原理

图像全景拼接涉及到了SIFT特征匹配和RANSAC算法。
关于SIFT和RANSAC算法详见上篇
将SIFT应用到图像拼接上,根据特征点匹配的方式,利用这些匹配的点来估算单应矩阵(用RANSAC算法,通过单应矩阵H,可以将原图像中任意像素点坐标转换为新坐标点,转换后的图像即为适合拼接的结果图像。可以简单分为以下几步:

1.根据给定图像/集,实现特征匹配。
2.通过匹配特征计算图像之间的变换结构。
3.利用图像变换结构,实现图像映射。
4.针对叠加后的图像,采用APAP之类的算法,对齐特征点。(图像配准)
5.通过图割方法,自动选取拼接缝。
6.根据multi-band blending策略实现融合。

2.图像配准

图像配准是对图像进行变换,使变换后的图像能够在常见的坐标系中对齐。为了能够进行图像对比和更精细的图像分析,图像配准是一步非常重要的操作。
1.这里以APAP算法为例:
(1)提取两张图片的sift特征点
(2)对两张图片的特征点进行匹配
(3)匹配后,仍有很多错误点,此时使用论文(Accelerated Hypothesis Generation for Multi-Structure Robust Fitting)提到的RANSAC的改进算法进行特征点对的筛选。筛选后的特征点基本能够一一对应。
(4)使用DLT算法(Multiple View Geometry p92提到),将剩下的特征点对进行透视变换矩阵的估计。
(5)因为得到的透视变换矩阵是基于全局特征点对进行的,即一个刚性的单应性矩阵完成配准。为提高配准的精度,Apap将图像切割成无数多个小方块,对每个小方块的变换矩阵逐一估计。
转载自:此处
2.图割方法
最小割和最大流
(1)关于最小割
如下图所示,这是一个有向带权图,共有4个顶点和5条边。每条边上的箭头代表了边的方向,每条边上的数字代表了边的权重。
在这里插入图片描述
G = < V, E >是图论中对图的表示方式,其中V表示顶点(vertex)所构成的集合,E表示边(edge)所构成的集合。顶点V的集合和边的集合E构成了图G(graph)。
什么是最小割?
现在要求剪短图中的某几条边,使得不存在从s到t的路径,并且保证所减的边的权重和最小。那么很明显,剪掉边”s->a”和边”b->t”。我们就能得到下图:
在这里插入图片描述
图中已不存在从s到t的路径,且所修剪的边的权重和为:2 + 3 = 5,为所有修剪方式中权重和最小的。我们把这样的修剪称为最小割。
(2)关于最大流
什么是最大流?
最上面那张图,因为s->a只能通过2,那么s->a->t这条路的流量被限制在了2,同理,s->b->t被b->t限制,最多只能通过3的流量,所以s->t的流量总和为2+3=5,为这条路的最大流。

3.图像融合-blending
图像拼接完会发现在拼接的交界处有明显的衔接痕迹,存在边缘效应,因为光照色泽的原因使得图片交界处的过渡很糟糕,所以需要特定的处理解决这种不自然。那么这时候可以采用blending方法。multi-band blending是目前图像融和方面比较好的方法。

二、不同场景下的实验结果

代码:

# -*- coding: utf-8 -*-
from pylab import *
from numpy import *
from PIL import Image

# If you have PCV installed, these imports should work
from PCV.geometry import homography, warp
from PCV.localdescriptors import sift

np.seterr(invalid='ignore')
"""
This is the panorama example from section 3.3.
"""

# set paths to data folder
featname = [r'D:/PinJie/' + str(i + 1
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值