基于CUDA-GPU加速的全景图像拼接

2020-02-21 08:31杨光
卫星电视与宽带多媒体 2020年24期
关键词:特征提取全景一致性

杨光

【摘要】全景拼接是将多张图片拼接到一张整幅图片的技术,实现该技术需要对多张图片提取特征点及部分关键点,然后匹配多张图片中的重合特征并匹配,最后通过RANSAC算法及透视变换完成全景拼接。由于整个工程涉及底层基础数学算法及图形学算法较多,计算量较大,传统CPU完成计算效率较低,本文提出基于CUDA-GPU加速的全景拼接实现流程,并与CPU计算进行效率对比。

【关键字】CUDA GPU;全景图像;拼接

中图分类号:TN94                     文献标识码:A                     DOI:10.12246/j.issn.1673-0348.2020.24.012

1. 概述

全景拼接可用于多幅图片的拼接,也可用于多摄像头图像的实时拼接呈现。实现全景拼接需要完成检测并提取图像的特征和关键点,匹配两个图像之间的描述符,使用RANSAC算法使用我们匹配的特征向量估计单应矩阵,拼接图像等多个流程。全流程如采用CPU流水线计算效率较低,利用CUDA的GPU加速技术可以采用并行计算思想对相关图形学计算、底层数学矩阵运算进行CUDA加速,完成性能提升。

2. 全景拼接实现业务流程

我们采用江苏有线苏州分公司播控调度客服中心不同位置拍照作为样例,如图1所示。全景拼接就是完成右半部分与左半部分重合区域的去处拼接成为一张整图。

2.1 检测图像的特征

使用传统图形学中SURF算法对图像进行特征提取,如图2所示,其中圆圈的部分为提取到局部宏块及区域的特征点。

2.2 提取图像的特征关键点描述

使用SURF算法的DescriptorExtractor实现,提取图像特征点描述,如图3所示。

从图3中可以看出,匹配的关键点为直线两端的两个圆点,通过大量的线条可以看出主观上的从左到右较直的可能为正确的特征点对,而从左下角到右上角或者相关方向的大量连线可能为误差干扰,这个可在关键点描述的匹配算法中加以去除从而达到特征点匹配。

2.3 使用FLANN对特征点进行匹配

使用FLANN算法对特征点进行匹配,如图4所示,右图中可以看出FLANN算法对图3中提取到的关键点描述进行匹配,寻找到对应的匹配特征点,这些特征点为全景拼接提供了方位参考。其中匹配到的特征点最大欧几里得距离为0.7136,最小欧几里得距离为0.0021。

2.4 使用RANSAC算法对特征计算单应性矩阵并透射变换

RANSAC(Random Sample Consensus)即随机采样一致性,该方法是用来找到正确模型来拟合带有噪声数据的迭代方法。给定一个模型,例如点集之间的单应性矩阵,RANSAC的基本思想在于,找到正确数据点的同时摒弃噪声点。相关计算过程可参照OpenCV对应模块实现C++实现。

通过RANSAC得到的单应矩阵通过warpPerspective透视变换即可得到拼接好的全景图片。

3. 算法优化及CUDA-GPU加速

3.1 全景拼接算法优化效果

OpenCV2.4.9版本后提供了Stitcher类可用于图像拼接类应用的实现,从图5中可以看出,第二章的基本算法做为底层框架被用于Stitcher类的实现,在此基础上对图片增加了曝光处理、图像wrap弯折、图像混合特性等post-processing后处理细节,保证了拼接后的图片亮色一致性、图像弯折一致性等,优化了全景图像拼接效果。

通过Stitcher类实现的全景拼接,可以看到最后的效果基本达到了完整拼接并且亮色一致性保持較好。

3.2 全景拼接CUDA-GPU加速

针对3.1节较好参数下效果的全景拼接代码,我们编译具有CUDA的OpenCV代码及第三方模块出相应lib和dll后进行测试。得出的基于CPU和GPU的实验对比如表一所示。

通过表一实验数据可知,CUDA-GPU能大幅度提高计算效率,相对于CPU一次48s,GPU加速后只需要0.3s,大大提升性能。

4. 结论

本文针对全景图像拼接场景,对其核心实现算法进行了代码验证,并在基础上提出了CUDA-GPU加速的实现方法,通过GPU加速大大提升了图像拼接性能。作为全景视频呈现的核心要素,全景图形拼接的性能一定程度上决定了全景视频呈现的主观效果,而英伟达的VRWorks-SDK也是利用本文提及相关特征提取算法实现的全景视频VR呈现。

参考文献:

[1]基于SIFT特征点的图像拼接技术研究[D].杨艳伟.西安电子科技大学.2009.

[2]基于SIFT图像特征提取与FLANN匹配算法的研究[J].王金龙,周志峰.计算机测量与控制.2018(02).

[3]基于改进SIFT特征点匹配的图像拼接算法研究[J].张勇,王志锋,马文.微电子学与计算机.2016(03).

猜你喜欢
特征提取全景一致性
离散异构线性多智能体系统的输出一致性
全景摄像机
Excerpt from Three Days to See
基于学科核心素养的“教、学、评”一致性教学实践——以“电解质溶液”教学为例
基于Paxos的分布式一致性算法的实现与优化
全景视频的拍摄硬件
基于MED—MOMEDA的风电齿轮箱复合故障特征提取研究
基于曲率局部二值模式的深度图像手势特征提取
全景搜索
揪出那只“混进革命队伍里的猫”