图像拼接——AANAP
1.简介
Adaptive As-Natural-As-Possible Image Stitching是CVPR2015的一篇文章
代码
文章pdf
文章提出了一种新的图像拼接方法,结合了几种技术,使全景图看起来更加自然。
(1)为了减轻As-Projective-As-Possible (APAP) [12]拼接中出现的透视失真,我们对与其他图像没有重叠的区域中的单应性矩阵进行了线性化处理。
(2)自动估计了在重叠区域中使用一部分对应点得到的全局相似变换。
(3)在重叠区域中平滑地插值两种变换(单应性矩阵和全局相似变换),并在非重叠区域中同样使用线性化的单应性矩阵(仿射变换)和全局相似变换进行外推。
两种拼接场(单应性矩阵/线性化单应性矩阵和全局相似变换)的平滑组合有助于实现以下优势:
(a) 完全连续和平滑的拼接场,无任何弯曲伪影
(b) 在非重叠区域使用全局相似变换改进透视效果
© 充分发挥APAP提供的先进对齐精度的优势。
2.Homography Linearization
2.1 为什么要Homography Linearization
以一维数据为例如果 x x x和 x ′ x_{'} x′相匹配,使用 x ′ = a x + b c x + d x^{\prime}=\frac{a x+b}{c x+d} x′=cx+dax+b去估计 a , b , c , d {a,b,c,d} a,b,c,d这四个参数,那么对于非匹配点的区域的点来说,相对应的点的关系将是非线性。在二维场景中体现为严重的透视失真,可以使用线性化变换来最小化失真。
单应性矩阵(homography matrix)是一种更一般的二维变换矩阵,它可以实现更复杂的变换,包括平移、旋转、缩放、剪切以及透视投影。但是,单应性矩阵有四个自由度,而仿射变换只有三个自由度,因此在某些情况下,我们希望将单应性矩阵转化为仿射变换。
当一个单应性矩阵用于变换一个图像时,图像中的平行线可能会变成非平行线,导致透视畸变。为了解决这个问题,可以将单应性矩阵进行线性化处理,从而获得一个仿射变换矩阵。
在线性化单应性矩阵的过程中,我们通过局部线性近似来近似描述单应性变换。具体地说,我们在单应性矩阵的局部邻域内将其近似为一个仿射变换矩阵。这样做的目的是为了消除透视畸变,使得变换后的图像在局部区域内保持平行性和直线的相对位置关系。
关于仿射变换的详细解释:
仿射变换是二维空间中的一种线性变换,它可以保持平行线性、直线的相对位置和比例关系。仿射变换可以用一个2x2的矩阵来表示,并且还包括一个平移向量。在仿射变换中,点的位置发生了线性变换和平移,但没有发生旋转、剪切或缩放。
x ′ = a ∗ x + b ∗ y + c y ′ = d ∗ x + e ∗ y + f x' = a*x + b*y + c \\ y' = d*x + e*y + f x′=a∗x+b∗y+cy′=d∗x+e∗y+f
其中,a、b、d、e是2x2的仿射矩阵的元素,c和f是平移向量的分量。
仿射变换可以实现一些基本的几何变换,例如平移(translation)、缩放(scaling)、旋转(rotation)和镜像(reflection)。
具体来说:
平移:通过调整平移向量 c 和 f 可以将整个图像沿着 x 和 y 轴方向移动。
缩放:通过调整矩阵元素 a 和 e 可以对图像进行水平和垂直方向上的缩放。
旋转:通过调整矩阵元素 a、b、d 和 e 可以实现图像的旋转。
镜像:通过调整矩阵元素 a 或 e 可以实现图像的水平或垂直镜像。
在
单应性变换中,一个点的坐标(x, y)在变换后的坐标(x’, y’)之间存在关系:
[ x ′ y ′ 1 ] = [ h 11 h 12 h 13 h 21 h 22 h 23 h 31 h 32 h 33 ] [ x y 1 ] \left[\begin{array}{l} x^{\prime} \\ y^{\prime} \\ 1 \end{array}\right]=\left[\begin{array}{lll} h_{11} & h_{12} & h_{13} \\ h_{21} & h_{22} & h_{23} \\ h_{31} & h_{32} & h_{33} \end{array}\right]\left[\begin{array}{l} x \\ y \\ 1 \end{array}\right] x′y′1 = h11h21h31h12h22h32

AANAP是一种CVPR2015论文中的图像拼接方法,通过线性化单应性矩阵和应用全局相似变换,减少透视失真并提供连续、平滑的拼接效果。文章介绍了线性化的原因、过程以及如何与仿射变换、全局相似变换结合优化整张图像。
最低0.47元/天 解锁文章
3350

被折叠的 条评论
为什么被折叠?



