基于空间信息聚类的RGB-D数据拼接融合 下载: 505次
1 引言
传统RGB图像是对三维场景进行二维投影得到的结果,丢失了深度信息,难以满足实际应用中对于深度信息重建、三维场景重构的需求[1],RGB-D数据包含了场景中物点的深度信息,能够应用于更广泛的计算成像问题中。获取RGB-D数据的方法可以分为直接拍摄和间接计算两种方式,直接拍摄可以由消费级RGB-D相机同时拍摄场景的纹理信息和深度信息(如微软Kinect系列、华硕Xtion系列等)[2-5],但需要对其RGB数据与深度数据进行进一步配准;间接计算可以通过光场成像等计算成像技术[6]获取场景准确配准的RGB-D数据[7-8]。由于硬件限制,单一成像系统获得的RGB-D数据视场通常都比较小,难以满足许多重要应用场景对大视场成像的需求[9]。为了获取大视场的RGB-D数据,一类重要的方法是对小视场数据进行准确的拼接。
2017年,Li等[10]对Kinect相机获得的RGB-D数据的深度图进行预处理,对预处理结果和RGB图进行配准,对RGB图进行特征点的提取和单应性变换矩阵的计算,并对深度图和RGB图进行相同的变换。由于单应性描述的是场景中一个平面在成像过程中的变化,只能准确变换对应同一平面场景的图像,当场景不满足平面假设时,此方法会在重叠部分产生重影和错位,在非重叠部分也会产生一定程度的扭曲和变形。通过准确的相机标定可以将RGB-D数据转换为3D点云数据,然后利用迭代最近点(ICP)或其相关变形算法[11-14]实现多组点云数据的配准与拼接,但是此类方法需要数据之间存在较多的重叠部分。2019年,Ding等[15]基于2D特征点匹配进行3D点云数据的配准。张元等[16]提出了一种将聚类区域分块和凸优化问题相结合的点云配准方法。上述两种方法对低重叠率(低于60%)的两组三维点云提出了配准方法,分别对重叠率达30%和40%的点云数据进行配准,但在形成3D点云的过程中仍需要很准确的相机参数标定。
本文提出了基于空间信息聚类的RGB-D数据拼接方法。根据RGB-D数据中蕴含的空间信息,在不利用准确标定的相机参数将RGB-D数据转化为点云数据的情况下,定义物点距离,并利用simple linear iterative clustering (SLIC)方法[17]实现RGB-D数据的空间信息聚类,将场景分割成满足平面单应性的子块。对于每一个平面子块,所提方法可以准确计算其单应性变换矩阵,使得数据在坐标变换过程中产生的扭曲变形现象及拼接过程中产生的错位现象能够得到改善,提高拼接结果的质量。
2 基于空间信息聚类的场景平面子块分割
单应性[18]变换描述了平面场景物点在成像过程中的坐标变化,由于场景通常不是一个平面,所以全局单应性矩阵无法准确描述场景物点的坐标变化,会在拼接过程中产生扭曲变形和错位。RGB-D数据蕴含了场景中物点的空间信息,据此定义物点距离,可以对场景物点进行空间信息聚类。将场景分割成若干平面,每个平面在不同成像系统下的坐标变化可以由一个单应性矩阵准确描述。精确计算每个平面的单应性变换矩阵后可以实现准确的RGB-D数据拼接。
配准的RGB-D数据蕴含了场景中物点的空间信息,由于RGB图像中的像素距离和深度图像中的深度值量纲不同,对于场景中任意两个物点
式中:
式中:
利用SLIC算法,根据
3 基于平面子块的RGB-D数据拼接融合
对于配准的RGB-D数据,基于平面子块的RGB-D数据拼接融合流程如
3.1 平面子块单应性矩阵的准确计算
利用所提方法对场景进行空间信息聚类,可以形成平面子块,每一个平面子块都满足单应性。可以准确计算单应性矩阵,通过计算RGB图像中超像素的单应性矩阵来描述平面子块在不同成像系统下的坐标变换。对多组RGB-D数据的RGB图像进行scale-invariant feature transform(SIFT)[19]特征点提取与匹配,并经过RANdom SAmple Consensus(RANSAC)[20]剔除离群点,获得能够用于计算单应性矩阵的特征点对。对于同一个子块内特征点在不同RGB图像中对应的齐次坐标
式中:该子块单应性矩阵
令
通过最小二乘法求解单应性矩阵。
若每一个子块内部存在足够多的准确匹配的特征点对,则利用这些准确匹配的特征点对进行系数矩阵
式中:
3.2 RGB-D数据的拼接
待拼接的RGB图和深度图中的每一对超像素都对应了同一个空间中的平面子块,运用相应子块单应性变换矩阵,分别对RGB超像素和深度超像素进行坐标变换,可以实现RGB-D数据的拼接。不同超像素之间会出现重叠和黑洞两种需要特殊处理的情况。
1) 重叠部分
对于重叠部分,采用插值的方式进行处理,待变换图像坐标经单应性变换矩阵变换后得到新的坐标,此坐标通常不是整数,该点的像素值将用于生成变换后图像其相邻四个像素的像素值。最后遍历变换后图像的每个像素位置,将与其相邻的非整数坐标点的像素值按照距离加权求和生成该像素的像素值,距离越大权重越小。具体算法如
对于变换后图像中的一个像素
2) 黑洞部分
对于黑洞部分,遍历变换后图像的所有像素,找到像素值为零的位置,即黑洞点。为了提高效率和准确性,对搜索区域进行限制,以该像素为起点,在
记
对RGB图和深度图中变换后的超像素按照上述方法进行处理后,可以避免重叠部分颜色叠加造成的亮度过高及黑洞部分中的图像不连续。
3.3 RGB图的多频段融合与深度图的加权平均融合
每个成像系统在获取小视场数据时光照情况可能不同,导致每幅RGB图像亮度不同,在RGB图像经过子块单应性矩阵进行坐标变换实现拼接后,结果看起来不自然。利用多频段图像融合的方法[22]对拼接图像进行融合可以使拼接结果更加自然。由于深度图记录的是场景的几何结构信息,不受光照强弱的影响,所以在融合时仅采用加权平均即可。这样经过准确变换及融合就得到了大视场的RGB图和深度图,即大视场RGB-D数据。
4 实验结果及分析
4.1 场景搭建和数据采集
为了验证所提方法的可行性和准确性,在光学平台上搭建了深度层不一致的实验场景,深度范围为80~110 cm。对此场景进行拍摄,获得四个视点下的小视场RGB-D数据,如
图 5. 四个视点下小视场RGB-D数据。(a)第一视点下的RGB图;(b)第一视点下的深度图;(c)第二视点下的RGB图;(d)第二视点下的深度图;(e)第三视点下的RGB图;(f)第三视点下的深度图;(g)第四视点下的RGB图;(h)第四视点下的深度图
Fig. 5. Small FOV RGB-D data acquired under four viewpoints. (a) The first view RGB image; (b) the first view depth map; (c) the second view RGB image; (d) the second view depth map; (e) the third view RGB image; (f) the third view depth map; (g) the fourth view RGB image; (h) the fourth view depth map
4.2 基于空间信息聚类的平面子块分割结果及分析
采用所提方法对四组小视场RGB-D数据进行空间信息聚类。其中,子块的个数设为50,
图 7. 第1个和第4个视点下RGB-D数据在RGB图和深度图中的空间信息聚类结果。(a)第1个视点下RGB图像分割结果;(b)第1个视点下深度图分割结果;(c)第4个视点下RGB图像分割结果;(d)第4个视点下深度图分割结果
Fig. 7. Spatial information clustering results of RGB-D data in RGB images and depth images of the first view and the fourth view. (a) Result of the first view RGB image segmentation; (b) result of the first view depth image segmentation; (c) result of the fourth view RGB image segmentation; (d) result of the fourth view depth image segmentation
子块的个数与权重系数
图 8. 不同子块数的深度图分割结果。(a)子块数为20;(b)子块数为100
Fig. 8. Depth map segmentation results with different number of sub-blocks. (a) 20 blocks; (b) 100 blocks
由
若保持子块个数50和权重系数
由
若保持子块个数50和权重系数
图 10. 不同 下的深度图分割结果。(a) =0.1;(b) =8.5;(c)(d)对应的局部放大图
Fig. 10. Depth map segmentation results with different . (a) =0.1; (b) =8.5; (c)(d) corresponding local enlargement
由
4.3 重叠、补黑洞处理结果及分析
得到平面子块后,将对每个子块进行单应性矩阵计算及变换,在变换过程中会产生重叠、黑洞现象。利用所提方法进行处理会得到效果很好的拼接结果。为了更好地展示所提方法在重叠和黑洞方面的处理结果,只展示第二视点向第一视点的变换结果。
图 11. 重叠、黑洞差值结果对比。(a)直接进行坐标变换后存在重叠和黑洞;(b) 重叠插值但未处理黑洞的结果;(c)重叠、黑洞插值处理的结果
Fig. 11. Comparison of overlap and black hole interpolations. (a) Overlap and black hole after direct coordinate transformation; (b) result obtained by only overlap interpolation; (c) result obtained by overlap and black hole interpolations
由于每个平面子块的变换矩阵不同,多个像素变换到同一坐标后就会产生像素的重叠,也会产生变换后的子块之间存在黑洞的情形,若不进行处理,直接变换后将会得到如
4.4 不同拼接融合算法结果对比及分析
基于空间信息聚类,将多组RGB-D数据拼接成大视场RGB-D数据,结果如
图 12. 基于空间信息聚类的RGB-D数据拼接融合结果。(a)RGB图拼接融合结果;(b)深度图拼接融合结果
Fig. 12. Results of RGB-D data stitching based on spatial information clustering. (a) Result of RGB image stitching; (b) result of depth image stitching
对所提方法的拼接结果与基于全局单应性变换矩阵的拼接结果进行比较。
图 13. 基于全局单应性变换的RGB拼接融合结果
Fig. 13. Result of RGB stitching based on global homography transformation
对所提方法的拼接结果与基于网格剖分的方法的拼接结果进行比较。在网格数设置为与本文平面子块数相近时,拼接结果如
图 14. 不同网格数下的拼接结果。(a)网格数为49;(b)网格数为1600
Fig. 14. Results of image stitching with different number of grids. (a) 49 grids; (b) 1600 grids
由
继续增大网格划分的数量,使每一个网格内部更接近同一个平面,拼接结果会更准确。网格数增大为1600时,拼接结果如
采用PSNR和SSIM对所提方法、基于全局的单应性变换和基于网格剖分的图像拼接进行定量评价。PSNR是以图像的峰值信噪比作为评价图像质量的衡量指标。首先计算待评价图像
式中:
SSIM方法[23]采用图像间的结构相似度评价图像的质量。此方法主要针对图像的结构相似度进行评价。亮度相似度、对比度相似度和结构相似度共同决定SSIM值的大小,定义为
式中:
PSNR和SSIM评价结果如
表 1. 不同方法的定量评价
Table 1. Quantitative evaluation of different methods
|
由
5 结论
针对单一成像系统获取的RGB-D数据视场较小的问题,提出了基于空间信息聚类的RGB-D数据拼接融合方法,实现了大视场RGB-D数据的获取。考虑RGB-D数据中蕴含的场景空间信息,定义物点距离,利用SLIC算法进行RGB-D数据空间信息聚类,将场景分割为若干具有单应性的平面子块。场景中的平面子块在RGB图和深度图中可以体现为超像素,RGB-D数据的拼接可以由RGB超像素和深度超像素的拼接实现。在计算子块单应性矩阵时,选择子块内部准确配准的特征点对,或以特征点与子块中心点的深度距离为权重选择全部特征点对构造系数矩阵,使子块的单应性矩阵计算更准确。单应性能够准确描述平面场景在不同成像系统中的坐标变换,但是真实场景中更常见的情况是由分片光滑的曲面组成的,因此设置了物体表面同时存在平面和曲面的实验场景。利用所提方法进行空间信息聚类后,每一个空间子块近似一个平面子块,近似满足单应性。场景曲面曲率越大,就需要越多的子块个数对场景进行分割,来保证每个子块可以近似一个平面。因此对于场景曲面变化剧烈的情形,所提方法的计算时间相应会增加。实验结果表明,利用所提方法对RGB-D数据进行拼接,相较于全局单应性变换,能够改善由真实场景不满足单应性平面假设而在变换过程中产生的图像扭曲和变形及在拼接重叠部分的错位现象。相比基于网格剖分的拼接方法,当分割部分数量相同时,所提方法的拼接效果明显更好;网格数量增加到一定程度,拼接结果会有提升,但是需要计算更多的单应性矩阵,增大了计算量。通过对拼接结果的PSNR和SSIM计算,也定量说明了所提方法的拼接质量更高。所提方法为大视场、高分辨计算成像问题提出了一种准确的RGB-D数据拼接融合方法,能够促进计算成像技术在更多重要实际应用中的发展。
[1] 卢荣胜, 史艳琼, 胡海兵. 机器人视觉三维成像技术综述[J]. 激光与光电子学进展, 2020, 57(4): 040001.
[9] 李唐薇, 童官军, 李宝清, 等. 大视场域的目标检测与识别算法综述[J]. 激光与光电子学进展, 2020, 57(12): 120002.
[16] 张元, 李晓燕, 韩燮. 一种低重叠率的三维点云配准方法[J]. 激光与光电子学进展, 2021, 58(8): 0810014.
[21] 王锦锦. 基于膨胀超像素的快速图像拼接算法研究[D]. 西安: 西安电子科技大学, 2019.
WangJ J. A fast image stitching algorithm based on expanded super pixel[D]. Xi’an: Xidian University, 2019.
Article Outline
李文月, 何迪, 赵爽, 刘畅, 周哲海. 基于空间信息聚类的RGB-D数据拼接融合[J]. 激光与光电子学进展, 2022, 59(10): 1011004. Wenyue Li, Di He, Shuang Zhao, Chang Liu, Zhehai Zhou. RGB-D Data Stitching Based on Spatial Information Clustering[J]. Laser & Optoelectronics Progress, 2022, 59(10): 1011004.