首页 > 编程知识 正文

720渲染全景图,ps全景图片拼接无痕迹

时间:2023-05-04 03:49:33 阅读:133908 作者:4555

本发明涉及图像拼接方法,具体涉及一种360度全景图像无缝拼接方法,本发明属于多传感器图像拼接技术领域。

背景技术:

图像拼接是将在同一场景中拍摄到的多个图像拼接为具有宽视场的高分辨率图像的技术。 图像拼接算法的核心是图像配准,配准的精度直接决定图像拼接的质量。 用于图像注册的转换模型通常分为全局和局部转换模型。 使用全局变换模型进行图像配准时,当重叠区域较大或存在视差时,配准的精度会下降,重叠区域会变得模糊。 为了解决全局变换模型的不足,提高配准质量,产生了局部变换模型,典型的有平稳变化的仿射变换(SVA )和尽可能的投影变换算法(APAP )。 在局部变换模型中,将需要变换的图像分为几个部分,按部分进行仿射变换。 这些转换使用不同的局部参数来提高对齐精度。 的图像拼接后,非重叠区域没有对应关系,但为了保证图像整体的自然性,也需要对这些区域进行对应的变换。 APAP需要使用归一化方法给出非重叠区域部分的局部变换参数,使整体变换看起来更自然。 但是,拼接图像的数量增加时,远离基准图像的图像会产生较大的失真,通过采用将图像投影到圆筒面或球面上进行显示的方法,能够在一定程度上解决这种视角变大导致的失真。 为了解决大视场单视点图像在形状和尺度上存在严重失真的问题,提出了一种多视点拼接图像的方法。 Chang等人提出了射影变换和相似变换的空间组合SPHP变换模型。 SPHP在匹配区域使用投影变换来保持对齐精度,在非重叠区域使用相似变换来保持图像的原始视角以减少扭曲。 SPHP还可以与APAP结合使用以获得更好的对齐精度。 但是,SPHP变换模型要求减小拼接图像的视野,另外SPHP从同构矩阵导出相似变换,使用全局变换模型时导出的相似变换会产生不自然的旋转。 因此,Lin等人提出了自适应的尽可能自然的(AANAP )变换模型,解决了非自然旋转的问题。 AANAP变换模型将单应性矩阵的变换线性化,但拼接多个图像时有时会局部变形,全局相似性变换参数的估计不鲁棒,依然存在不自然的旋转和缩放。 以上方法都没有研究过360度图像拼接中的首尾问题。

技术实现要素:

相比于上述现有技术,本发明要解决的技术问题是提供了一种360度全景图像的无缝拼接方法,用于解决360度全景图像的拼接上的一致问题。

为了解决上述技术问题,本发明的将360度全景图像无缝连接的方法包括以下步骤。

S1 )将在同一地点向不同方向拍摄的一系列图像转换为灰度;

S2 )沿着中心线切开S1 )获得的灰度图像中位于最左侧的图像,将切开后获得的左图移动到图像序列的最右侧;

S3 )利用SIFT算法提取S2获得的所有图像特征点,并利用RANSAC算法选择最佳特征点对对提取的特征点进行匹配,去除不期望的匹配点;

S4 )利用S3得到的理想特征点,用APAP算法生成网格,用生成的网格顶点代替图像的特征点;

S5 )根据网格顶点对的位置关系估计每个图像的焦距和三维旋转角度;

S6 )使用推定的焦距和三维旋转角度对S4中生成的网格进行整形;

S7 )利用整形后的栅格制导图像进行仿射变换;

S8 )将变换后的图像融合,投影在圆柱面上进行三维显示。

本发明还包括:

在S1中变换为灰度的变换方程式如下。

在S5中,作为焦距的初始化矩阵Ki,使用与网格的各四边形对应的图像的焦距的推定值的平均值,通过最小化投影误差,得到Ii和Ij之间的三维旋转推定值:

上式可以通过奇异值分解求出,(p )返回给定的匹配点p的对应关系,焦距的初始化矩阵Ki取图像Ii中网格的每个四边形的焦距推测的中值。

S6所述整形如下

针对每个图像,使用网格引导图像进行仿射变换,将图像Ii中网格的顶点和边的集合设为Vi和Ei,将所有顶点的集合设为v,确定最优的顶点位置集,以使能量函数

能量函数共有三项,分别为对位项a(v )、局部相似项L ) v )和全局相似项g ) v );

满足项a(v ) :

这里,(p )返回给定匹配点p的对应关系,表示p的位置是4个顶点位置的线性组合,其中,表示p所在的四边形的四角,i表示对应的双线性权重,j表示相邻的图像对,图像Ii和图像Ij

局部相似项L(v )满足:

其中,表示原始顶点的位置,表示变形后的顶点,表示边缘(j,k )的相似变换,即表示顶点变量的线性组合;

全局相似项g(v )满足:

其中,和是非零常数,是共享边缘的四边形; Mi表示位于Ii重复区域的四边形; 函数d(qk,Mi )返回从四边形qk到网格空间中重叠区域的四边形的距离; Ri和Ci表示Ii中的网格的行数和列数,标尺si可以为si=f0/fi,旋转角度i根据步骤S5进行推算;

g有两个参数和,设定l的取值范围(0,1 ),的取值范围(0,10 ),的取值与的数量级相同。

S7 .所述仿射变换变换公式满足以下公式:

>其中,h1~h6为变换参数,由S4中的网格顶点对的位置关系确定,(u,v)为变换之后的坐标,(x,y)为变换之前的坐标。

S8所述融合选用渐入渐出融合算法,对于每两个相邻的图像对,权值d定义为:

其中x是像素点所在重合区域的列数;L是重合区域的左边界的列数,R是重合区域的右边界的列数。

S8利用OpenGL图形显示库创建三维场景,将拼接好的图像投影到场景中的圆柱面上显示。

本发明有益效果:相比于现有的图像拼接技术,本发明实现了360度全景图像无缝拼接,解决了360度全景图像拼接的首尾对接问题。

附图说明

图1为经典的拼接算法得到的360度全景图像的二维显示。

图2为经典的拼接算法得到的360度全景图像的三维显示。

图3位消除拼缝方法示意图。

图4为利用本发明方法拼接得到的360度全景图像。

图5为本发明的流程图。

具体实施方式

下面结合附图对本发明具体实施方式做进一步说明。

本发明公开了一种360度全景图像无缝拼接的方法,该算法包括以下步骤:

S1、将一组在同一地点沿着不同方向拍摄得到的序列图像转为灰度图;

S2、将一组有序的图像中位于最左侧的图像沿中线切开,切开后得到的左图移至图像序列的最右端;

S3、利用SIFT算法分别提取这些图像的特征点,利用RANSAC算法选取最佳的特征点对并进行匹配;

S4、利用匹配好的特征点对生成网格,使用网格顶点代替S3中通过SIFT算法提取的特征点;

S5、根据网格顶点对的位置关系估计每一幅图像的焦距与三维旋转角度;

S6、利用估计出的焦距与三维旋转角度对S4中生成的网格进行整形;

S7、使用优化后的网格引导图像进行仿射变换;

S8、对变换后的图像进行融合,并投影到圆柱面上显示。

如步骤S1所述,将一组在同一地点沿着不同方向拍摄得到的序列图像转为灰度图,转换方程为:

如步骤S2所述,将一组有序的图像中位于最左侧的图像沿中线切开,切开后得到的左图移至图像序列的最右端,如附图3所示;

如步骤S3所述,利用SIFT算法分别提取这些图像的特征点,利用RANSAC算法选取最佳的特征点对并进行匹配。

如步骤S4所述,利用匹配好的特征点对生成网格,使用网格顶点代替在S3中提取的特征点。

如步骤S5所述,从两幅相邻图像之间的单应性变换阵中,可以估计两幅图像的焦距。因此可以利用APAP生成的网格顶点对的位置关系估计每一幅图像的焦距fi与三维旋转角度R,通过最小化投影误差的方法来获得相邻图像Ii和Ij之间的三维旋转估计:

公式(2)可以通过奇异值分解的方式求解,φ(p)返回给定匹配点p的对应关系,焦距的初始化矩阵Ki取图像Ii中的网格的每个四边形的焦距估计的中值。

如步骤S6所述,利用估计出的焦距与三维旋转角度对网格进行变形,对于每一幅图像,使用网格引导图像进行仿射变换。设Vi和Ei表示图像Ii中网格的顶点和边的集合。V表示所有顶点的集合。为了使拼接的结果更加自然,需要确定一组最优的顶点位置,使得能量函数ψ(V)最小化。能量函数共有3项,分别为对齐项ψa(V),局部相似项ψl(V)和全局相似项ψg(V)。

对齐项ψa(V):

其中:φ(p)返回给定匹配点p的对应关系,表示p的位置是四个顶点位置的线性组合,中的表示p所在的四边形的四个角,αi是对应的双线性权重,J表示相邻的图像对,包含图像Ii和图像Ij。Mij表示位于Ii与Ij重合区域中的在Ii里的网格顶点组成的一系列匹配点。

局部相似项ψl(V):

其中:表示原顶点的位置,表示变形后的顶点。表示边缘(j,k)的相似变换,即和表示顶点变量的线性组合。

全局相似项ψg(V):

其中,β和γ是重要的常数。是一系列共享边缘的四边形;Mi表示那些位于Ii的重叠区域的四边形;函数d(qk,Mi)返回四边形qk到在网格空间中重叠区域的四边形的距离;Ri和Ci表示Ii中的网格的行数和列数。尺度si可以设置为si=f0/fi,旋转角度θi由步骤S5估算得出。

在ψg中有两个参数β和γ,设置λl的取值范围(0,1),β的取值范围(0,10),γ的取值与β同一量级。

如步骤S7所述,使用优化后的网格引导图像进行仿射变换,变换公式如下:

其中,h1~h6为仿射变换的参数,由S4中的网格顶点对的位置关系确定。(u,v)为变换之后的坐标,(x,y)为变换之前的坐标。

如步骤S8所述,对变换后的图像进行融合,并投影到圆柱面上显示。融合算法选用渐入渐出融合,对于每两个相邻的图像对,渐入渐出融合的权值d定义为:

其中x是像素点所在重合区域的列数;L是重合区域的左边界的列数(即为0),R是重合区域的右边界的列数(即为重合区域的宽度)。利用OpenGL图形显示库创建三维场景,将拼接好的图像投影到场景中的圆柱面上显示。

下面结合图1~图5进行具体说明。

图1为经典的拼接算法得到的360度全景图像(二维显示),图2为经典的拼接算法得到的360度全景图像(三维显示),在图二中可以清楚地看出,拼接得到的360全景图像不能严格的对齐,在首尾对接的地方有明显的拼缝,图3为消除拼缝方法示意图,将待拼接的一组有序的图像中位于最左侧的图1沿中线ab切开,切开后得到1(1)与1(2),再将1(2)与2进行拼接,1(1)与最右侧的n拼接,因为a1与a2,b1与b2的像素点是相邻的,根据这个条件可以将带有拼缝的全景图拉伸,再映射到圆柱上,拼缝消除。图4为利用本发明方法拼接得到的360度全景图像。可以看出本方法的得到的全景图像可以完整的覆盖整个圆柱面,显示效果更加具有立体感。图5为本发明的算法流程图。

本发明具体实施方式还包括:

在步骤S1中,将一组在同一地点沿着不同方向拍摄得到的一系列RGB彩色图像转为灰度图。

在步骤S3中,选用SIFT算法分别提取由步骤S2获得的一系列灰度图像的特征点,对这些特征点利用RANSAC算法选取最佳的特征点对并进行匹配,剔除匹配误差大的匹配点,将理想的匹配点保留下来。

在步骤S4中,利用由步骤S3获得的理想的匹配点选用APAP算法生成网格,使用生成的网格顶点代替由步骤S3获得的特征点,这些网格的顶点相比较由步骤S3获得的特征点,分布更加均匀。

在步骤S5中,利用由步骤S4获得的网格顶点对每个相机的焦距与三维旋转角度进行估计。

在步骤S6中,利用由步骤S5估计出的每个相机拍摄时的焦距与三维旋转角度对S4中生成的网格进行整形。

在步骤S7中,利用由步骤S6优化后的网格引导图像进行仿射变换,图像序列中的每一幅图像都被初始的网格分割成尺寸更小的矩形,每一个矩形都对应一个优化后的矩形,利用仿射变换将初始网格分割的图像区域变换到对应的优化后的网格中的矩形区域,完成整体的变换。

在步骤S8中,将由步骤S7变换后的图像序列进行加权融合,并投影到圆柱面上进行三维显示。

本发明实现了360度全景图像无缝拼接,解决了360度全景图像拼接的首尾对接问题。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。