采用空间投影的深度图像点云分割 下载: 1177次
1 引言
目前,以立体成像技术为核心的立体相机获得了多样性发展,例如双目相机、单目结构光相机、TOF(time of flight)相机等,其获得的深度图像(RGB-D)是在RGB数据基础上融合了深度数据,在参考相机内参下深度图像可转化为点云数据。根据立体相机的三维数据重建感兴趣区域(ROI),目标区域表面信息和背景信息的数据是混合在一起的,这给后续目标的三维测量和分析处理带来了一定难度,因此采用点云分割技术进行目标区域和背景点云分离是必要的途径。
点云分割就是将数据分割成若干个互不相交的子集[1]。点云分割的问题一般分为4类[2]:1)具有人类视觉意义的形状确定;2)获取点云中与空间方位无关的几何特征;3)点云中各个形状边界的确定;4)具有一致性的分割结果。目前的点云分割方法分为两类,即传统方法和基于深度学习的方法。传统方法主要处理点与点之间的拓扑关系,一般有基于边、区域、混合、聚类、模型和图像分割等的方法[2]。Besl和Jain[3]基于曲率的符号组合将曲面分为8种不同类型的曲面元,以此为数据分割标准选取种子点进行周围区域点的判断。参考8种不同类型的曲面元, Koh等[4]利用点云的多个特征构成特征向量,利用神经网络对特征向量进行聚类。Fischler和Bolles[5]介绍了RANSAC(Random Sample Consensus)算法,该算法是一种鲁棒模型,可检测数学几何特征(如直线、圆、椭圆等)。目前也有针对特定场合的点云分割方案,对于多个板型物体混叠摆放场景的有序点云,鲁荣荣等[6]设计了自顶向下和自底向上的分割策略,并采用弱连接连通区域进行断裂修正以获得分割结果。为了提高三维激光雷达中点云分割的实时性差和准确性不高的问题,范小辉等[7]建立了深度图像和点云数据映射关系,剔除了地面数据后再进行聚类分割。
由于深度学习的各种网络架构的提出,用于图像领域中的识别定位分割获得了快速发展,可用于以往利用人工设置参数难以处理的复杂场景[8]。近几年,以三维数据作为输入的神经网络也得到一定的发展,例如VoxNet、kd-Net、O-CNN等[9-11],这些网络需要对点云进行体素化或较多设置。2017年Charles等[12]提出采用深度学习直接处理原始点云的PointNet,开创性地统一了点云分类分割任务处理框架。为了解决点云的空间点顺序不敏感问题,PointNet对所有特征值使用最大池化操作,且为了解决点云空间旋转平移的问题,PointNet建立了T-net网络,将数据和特征对齐。Qi 等[13]在PointNet基础上进行了改进,提出了多尺度组合(MSG)和多分辨率组合(MRG)的改进网络PointNet++(2017)。在点云分割方面,某些任务已经达到SOTA(state of the art)水平,但前期需要大规模样本的训练学习。
立体相机与激光雷达的不同之处在于拍摄场景信息所得的RGB-D数据具有物体表面的颜色纹理信息。不同于点云拓扑关系和深度学习的点云分割,本文介绍了一种采用点云空间投影的RGB-D点云分割技术,首先介绍采用图像阈值的点云分割和利用靶标世界坐标系的点云分割两种基础方法,将在世界坐标系中的靶标作为参考旋转点云,并将其投影至坐标系水平面(XOY)上,利用图像的形态学获得目标显著区域,进而获得目标点云数据。
2 图像阈值与点云关系模型
2.1 相机数学模型
摄像机数学模型采用小孔成像的原理,在笛卡儿空间中建立景物点与成像点之间的映射关系。令点P=(Xw,Yw,Zw)为像素p(u,v)投射在世界坐标系中的点,(u,v,1)是点p在像素坐标系中的齐次坐标;(Xw,Yw,Zw,1)是点P在世界坐标系中的齐次坐标。那么两个坐标的关系为
式中:Ap是内参数矩阵;[R3×3t3×1]是外参数矩阵;sp是缩放因子。在张氏摄像机模型中,靶标的世界坐标系的Zw轴设置为0。
2.2 图像阈值与点云的关系模型
RGB-D数据来自立体相机中RGB相机和Depth相机,由于相机空间视角不同,两组原始数据中RGB数值与深度数值不匹配。在标定立体相机的外参数后,建立RGB像素值与Depth数值两者之间的一一对应关系。采用图像阈值的点云分割基本思路:根据图像像素和点云的对应关系进行图像分割,获得目标区域点云。
设pc(xc,yc,zc)为相机坐标系中的点云,把点云进行z轴归一化处理,建立点云坐标与像素坐标的映射关系,即
对摄像机所采集的图像进行阈值分割处理,这里采用最大类间方差法,即
式中:Jroi是阈值分割后的图像;J(u,v)是摄像机所采集的图像;T是Otsu算法得到的最优阈值。联合(2)~(4)式,根据图像目标阈值分割判断点云是否属于目标点云:
根据三维点云与二维图像像素之间的非线性映射,点云像素坐标(up,vp)与图像像素p(u,v)具有近似匹配关系,因此物体三维点云分割转化为二维图像的阈值分割。
3 采用空间投影的点云分割方法
3.1 建立靶标世界坐标系
立体相机中依据RGB相机和Depth相机的外参数,可以把Depth相机生成的点云转换到相机坐标系下。参考棋盘格建立世界坐标系。利用靶标世界坐标系可实现一定程度的点云分割,其基本思路是:由于场景三维点云的空间尺度与世界坐标系的空间尺度具有一致性,通过建立世界坐标系并确定待测物体在世界坐标系中的空间区域,可分割映射到世界坐标系里的点云。
如
如
式中:Pwl(Xwl,Ywl,Zwl)为偏移补偿后的点云坐标;E3×3是单位矩阵。如
图 1. 靶标世界坐标系与点云区域。(a)世界坐标系;(b)目标坐标系;(c)目标有效区域确定
Fig. 1. Target world coordinate system and point cloud region. (a) World coordinate system; (b) target coordinate system; (c) determination of target effective region
3.2 采用空间投影的点云分割方法
参考前述的图像阈值、靶标世界坐标系与点云区域的关系,为了突出目标区域以实现点云分割,可将点云的观测视角旋转至俯视角度(鸟瞰视角),如
参考(6)式得到世界坐标系中的点云Pwl(Xwl,Ywl,Zwl),将其变换到场景点云的俯视角时,有
式中:P(xu,yu,zu)为转换视角后的点云;
根据单目摄像机模型,可以得到点云对应的二值图像坐标为
根据(1)式进一步得到像素坐标满足
式中:J[round(
式中:Lmax(Ji)为新生成二值图像的最大连通域。
4 结果对比
4.1 场景点云获取
为了验证算法的可行性,搭建系统硬件,如
图 4. 三个场景图及其对应的点云图。(a)~(c)场景图;(d)~(f)点云图
Fig. 4. Three scene images and corresponding point clouds. (a)--(c) Scene images; (d)--(f) point clouds
4.2 算法过程分析
利用图像阈值与点云关系实现点云分割,首先获得场景RGB图,利用标定参数进行径向与切向畸变校正,结果如
采用靶标坐标系与点云区域实现点云分割,首先测量并确定目标物体的待放置空间区域,把靶标板放置在待测量物体区域内,根据靶标板手工测量或设计的规格参数确定X轴偏移量Δx、Y轴偏移量Δy和靶标板厚度Δz。其次,在摄像机标定过程中,确定世界坐标系X轴和Y轴方向,如
在图像阈值和靶标世界坐标系的基础上可采用点云空间投影进行点云分割,首先测量并确定目标物体的待放置空间区域,把靶标放置在待测量物体的区域内,确定X轴偏移量Δx、Y轴偏移量Δy和靶标板厚度Δz。其次,在摄像机标定过程中,确定世界坐标系X轴和Y轴方向。利用(9)式把点云视角变换至场景俯视角度,利用(13)、(14)式把三维点云映射到二维图像中,如
图 5. 场景1#点云分割。(a)校正后的图像;(b) Otsu阈值分割; (c)图像阈值分割的点云;(d)建立的世界坐标系;(e)补偿后的点云;(f)靶标坐标系分割的点云;(g)新2D图像;(h)膨胀后的图像;(i)分割后的感兴趣区域;(j)空间投影分割的点云
Fig. 5. Point cloud segmentation of scene 1#. (a) Corrected image; (b) Otsu threshold segmentation; (c) point clouds after image threshold segmentation; (d) established world coordinate system; (e) point clouds after compensation; (f) segmented point clouds in target coordinate system; (g) new 2D image; (h) dilated image; (i) segmented ROI image; (j) segmented point clouds by spatial projection
4.3 结果对比分析
点云分割实验分别采用图像阈值分割(算法I)、靶标坐标系(算法II)、空间投影(算法III)以及与Halcon中的基于区域的方法(算法Ⅳ)进行对比分析,对不同算法的参考点云总数和分割后点云数进行对比,如
表 1. 4种方法分割的点云数量和算法耗费时间对比
Table 1. Comparison of numbers of segmented point clouds and execution time of four segmentation methods
|
4种方法实现的点云分割(场景1#~3#的点云区域)结果如
4种方法的测试中,基于图像阈值分割的方法受目标RGB图像分割结果的影响,基于靶标坐标系的方法受目标三维空间区域测量的影响,Halcon平台的目标点云区域选择受点云三角化和点云分布的影响,基于空间投影的方法受到视角变换后点云膨胀结构元素数值的影响,不同膨胀结构元素(square, disk, diamond)和膨胀结构元素数值下的分割结构如
图 6. 4种方法在三个场景下的点云分割结果对比。(a)~(c)算法I; (d)~(f)算法II; (g)~(i)算法III; (j)~(l)算法Ⅳ
Fig. 6. Comparison of point cloud segmentation results for three scenes obtained by four methods. (a)--(c) Algorithm I; (d)--(f) algorithm II; (g)--(i) algorithm III; (j)--(l) algorithm Ⅳ
图 7. 不同结构类型与点云膨胀结构元素数值下的分割点云数
Fig. 7. Number of segmented point clouds under different structure types and point cloud expansion structural element values
5 结论
点云分割是立体视角技术应用中的一个基础步骤,是影响目标测量、位姿估计等后续任务精确与否的一个关键因素。在相机模型和立体测量理论的基础上,分别分析了图像阈值、靶标坐标系与点云区域的关系,然后根据靶标坐标系与点云的关系建立一种场景点云视角变换以突出目标点云区域的方法,再结合图像形态学分析获得感兴趣点云区域。搭建单目结构光系统进行了三种测试,对比分析图像阈值分割、靶标坐标系分割和基于区域的分割这3种常见的分割方法(Halcon平台),结果表明采用空间投影得到的点云分割数量、质量较佳,并进一步地对空间投影中的碰撞元素数值与点云数量、质量进行了分析,结果表明了该方法的可行性。
图 8. 点云膨胀结构元素数值对点云分割的影响。(a)数值为3;(b)数值为4;(c)数值为5;(d)数值为6
Fig. 8. Influence of point cloud expansion structural element value on point cloud segmentation result. (a) Value is 3; (b) value is 4; (c) value is 5; (d) value is 6
[1] NguyenA, LeB. 3D point cloud segmentation: a survey[C]//2013 6th IEEE Conference on Robotics, Automation and Mechatronics (RAM), November 12-15, 2013, Manila, Philippines. New York: IEEE, 2013: 225- 230.
[2] 欧新良, 匡小兰, 倪问尹. 三维散乱点云分割技术综述[J]. 湖南工业大学学报, 2010, 24(5): 45-49.
Ou X L, Kuang X L, Ni W Y. Summarization on 3D scattered point cloud segmentation[J]. Journal of Hunan University of Technology, 2010, 24(5): 45-49.
[3] Besl P J, Jain R C. Segmentation through variable-order surface fitting[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1988, 10(2): 167-192.
[4] KohJ, SukM, Bhandarkar SM. A multi-layer Kohonen's self-organizing feature map for range image segmentation[C]//IEEE International Conference on Neural Networks, March 28-April 1,1993, San Francisco, CA, USA, New York: IEEE, 1993: 4725511.
[5] Fischler M A, Bolles R C. Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography[J]. Communications of the ACM, 1981, 24(6): 381-395.
[6] 鲁荣荣, 朱枫, 吴清潇, 等. 一种板型物体混叠场景的快速分割算法[J]. 光学学报, 2019, 39(4): 0412003.
[7] 范小辉, 许国良, 李万林, 等. 基于深度图的三维激光雷达点云目标分割方法[J]. 中国激光, 2019, 46(7): 0710002.
[8] KrizhevskyA, SutskeverI, HintonG. ImageNet classification with deep convolutional neural networks[C]//Proceedings of the 26th Annual Conference on Neural Information Processing Systems 2012, December 3-6, 2012, South Lake Tahoe, NV, USA.Cambridge: MIT Press, 2012: 1097- 1105.
[9] KlokovR, LempitskyV. Escape from cells: deep kd-networks for the recognition of 3D point cloud models[C]//2017 IEEE International Conference on Computer Vision (ICCV), October 22-29, 2017, Venice, Italy. New York: IEEE, 2017: 863- 872.
[10] Wang P S, Liu Y, Guo Y X, et al. O-CNN: octree-based convolutional neural networks for 3D shape analysis[J]. ACM Transactions on Graphics, 2017, 36(4): 72.
[11] RieglerG, Ulusoy AO, GeigerA. OctNet: learning deep 3D representations at high resolutions[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 6620- 6629.
[12] Charles RQ, SuH, Mo KC, et al. PointNet: deep learning on point sets for 3D classification and segmentation[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 77- 85.
[13] Qi CR, YiL, SuH, et al. ( 2017-06-07)[2020-04-28]. org/abs/1706. 02413. https://arxiv.
[14] 武彦林, 全燕鸣, 郭清达. 基于局部单应性矩阵的结构光系统标定研究[J]. 科学技术与工程, 2016, 16(13): 186-189, 195.
Wu Y L, Quan Y M, Guo Q D. Research on calibration of structured light system based on local homography matrix[J]. Science Technology and Engineering, 2016, 16(13): 186-189, 195.
[15] Otsu N. A threshold selection method from gray-level histograms[J]. IEEE Transactions on Systems, Man, and Cybernetics, 1979, 9(1): 62-66.
Article Outline
郭清达, 全燕鸣. 采用空间投影的深度图像点云分割[J]. 光学学报, 2020, 40(18): 1815001. Qingda Guo, Yanming Quan. Depth Image Point Cloud Segmentation Using Spatial Projection[J]. Acta Optica Sinica, 2020, 40(18): 1815001.