采用空间投影的深度图像点云分割

 
  

点击上方“小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

来源丨新机器视觉

点云分割是点云处理的一个关键环节,其分割质量决定了目标测量、位姿估计等任务的精确与否。

1、引言

目前,以立体成像技术为核心的立体相机获得了多样性发展,例如双目相机、单目结构光 相机、 TOF(timeofflight)相机等,其获得的深度图像(RGB-D)是在RGB 数据基础上融合了深度数据, 在参考相机内参下深度图像可转化为点云数据。根据立体相机的三维数据重建感兴趣区域(ROI),目标区域表面信息和背景信息的数据是混合在一起的,这给后续目标的三维测量和分析处理带来了一 定难度,因此采用点云分割技术进行目标区域和背 景点云分离是必要的途径。

点云分割就是将数据分割成若干个互不相交的子集。点云分割的问题一般分为4类:

1)具有 人类视觉意义的形状确定

2)获取点云中与空间方位无关的几何特征

3)点云中各个形状边界的确定

4)具有一致性的分割结果。

目前的点云分割方法分为两类,即主要处理点与点之间拓扑关系的传统方法和基于深度学习的方法。

立体相机与激光雷达的不同之处在于拍摄场景信息所得的RGB-D数据具有物体表面的颜色纹理信息。不同于点云拓扑关系和深度学习的点云分割,本文介绍了一种采用点云空 间投影的RGB-D点云分割技术,首先介绍采用图像阈值的点云分割和利用靶标世界坐标系的点云分割两种基础方法, 将在世界坐标系中的靶标作为参考旋转点云,并将其投影至坐标系水平面(XOY)上,利用图像的形态学获得目标显著区域,进而获得目标点云数据。

2、图像阈值与点云关系模型

2.1 相机数学模型

摄像机数学模型采用小孔成像的原理,在笛卡儿空间中建立景物点与成像点之间的映射关系。令点P=(Xw,Yw,Zw)为像素p(u,v)投射在世界坐标系中的点,(u,v,1)是点p在像素坐标系中的齐次坐标;(Xw,Yw,Zw,1)是点 P 在世界坐标系中的 齐次坐标。那么两个坐标的关系为

ed0cd8b7c15fc88ee7cd626af1e64adc.png

2.2 图像阈值与点云的关系模型

RGB-D数据来自立体相机中RGB相机和 Depth相机,由于相机空间视角不同,两组原始数据中RGB数值与深度数值不匹配。在标定立体相机的外参数后,建立RGB像素值与 Depth数值两者之间的一一对应关系。采用图像阈值的点云分割基本思路:根据图像像素和点云的对应关系进行图像分割,获得目标区域点云。

e64c3c194a217587e8034d2e8c0e1c68.png

8e007c0875bc993842e36c93d48807b4.png

3、采用空间投影的点云分割方法

3.1 建立靶标世界坐标系

立体相机中依据 RGB 相机和Depth相机的外参数,可以把Depth相机生成的点云转换到相机坐标系下。参考棋盘格建立世界坐标系。利用靶标世界坐标系可实现一定程度的点云分割,其基本思路是:由于场景三维点云的空间尺度与世界坐标系的空间尺度具有一致性,通过建立世界坐标系并确定待测物体在世界坐标系中的空间区域,可分割映射到世界坐标系里的点云。

ca43ea8beea04d3e521feac420409a94.png

如图1(a)所示,pc(xc,yc,zc)为相机坐标系中的点云,Pw (Xw,Yw,Zw)是世界坐标系中的点云,由(1)式可得

c21a1608cebf183313cccabfc3b5866d.png

如图1(b)所示,由于靶标板(标定板)所指定的 坐标系相对于棋盘格角点所建立的世界坐标系有一 定的偏移,这里采用补偿的方式进行坐标系校正。设靶标的厚度为 Δz,世界坐标系原点在待测区域的X和Y轴的偏移分别为Δx 和Δy,补偿偏移量Δl3×1=[Δx Δy Δz]T,则(6)式可进一步表示为

c4ca14b3b0aa2093435c652cfc9eb28a.png

3.2 采用空间投影的点云分割方法

参考前述的图像阈值、靶标世界坐标系与点云区域的关系,为了突出目标区域以实现点云分割,可将点云的观测视角旋转至俯视角度(鸟瞰视角),如图2所示,这样可减少背景点云信息,使目标点云呈现更多信息,采用相机模型将点云投影至相机的图像像素。在得到旋转投影后场景的二维图像后,采用图像阈值分割的方法可快速地得到目标阈值范围,还原后得到场景分割的目标点云。

9b07052365b4668282e496185373263e.jpeg

参考(6)式得到世界坐标系中的点云 Pwl(Xwl, Ywl,Zwl),将其变换到场景点云的俯视角时,有:

8cecedb68680322c16689c5546c14588.png

根据单目摄像机模型,可以得到点云对应的二值图像坐标为:

e271fa89534d1ea9a224378c2124bd4a.png

4、结果对比

4.1 场景点云获取

为了验证算法的可行性,搭建系统硬件,如图3 所示,系统 包 括 靶 标 (尺 寸 规 格:棋 盘 格 角 点 数 为 5×7,方格大小为 34 mm×34mm)、双目摄像机 (MER-500-7UM)、8mm定焦镜头、投影仪(BenQ) 和上位机[2.53GHzIntel(R)Core (TM)2Duo CPU,2GBRAM]。

a8396d4362f5c8b522f3e8856404d146.png

待测场景如图4(a)~(c)所示, RGB-D点云采用投影仪投射格雷码编码光栅和摄像机拍摄其光栅解码所得,其中包含1幅明、暗视场 图像以及40幅正交格雷码编码光栅图像。建立三个层叠的米袋场景(场景1#、2#、3#),分别获取整个场景并分割其米袋区域点云数据。根据张氏标定方法建立的靶标坐标系,获得外参数矩阵[R3×3t3×1],将三个场景点云映射到世界坐标系中,场景图片在靶标坐标系中的点云如图 4(d)~(f)所示。

cd83188e27e3cf129df6aca3049c8053.png

利用图像阈值与点云关系实现点云分割,首先获得场景RGB图,利用标定参数进行径向与切向畸变校正,结果如图5(a)所示;利用最大类间方差法 (Otsu)对校正后的场景图进行处理,以突出感兴趣区域,结果如图5(b)所示。

其次,对感兴趣区域中的空洞进行形态学处理,即空洞填充;建立点云坐标与图像像素坐标的映射关系,并判断所映射的点云是否在图像感兴趣区域里。最后分割出映射到感兴趣区域的点云数据,如图5(c)所示。

采用靶标坐标系与点云区域实现点云分割,首先测量并确定目标物体的待放置空间区域,把靶标板放置在待测量物体区域内,根据靶标板手工测量或设计的规格参数确定 X 轴偏移量 Δx、Y 轴偏移 量 Δy 和靶标板厚度 Δz。其次,在摄像机标定过程 中,确定世界坐标系 X 轴和Y 轴方向,如图5(d)所示;并利用(6)、(7)式把相对于摄像机坐标系的点云映射到依据靶标板所建立的世界坐标系中,如图5(e)所示。最后,利用参考测量限定目标物体放置区域,实现目标点云分割,如图5(f)所示。

在图像阈值和靶标世界坐标系的基础上可采用点云空间投影进行点云分割,首先测量并确定目标物体的待放置空间区域,把靶标放置在待测量物体的区域内,确定X轴偏移量Δx、Y 轴偏移量 Δy 和靶标板厚度 Δz。其次,在摄像机标定过程中,确定世界坐标系X 轴和Y 轴方向。利用(9)式把点云视角变换至场景俯视角度,利用(13)、(14)式把三维点云映射到二维图像中,如图5(g)所示。

利用形态学对获得的二维图像进行膨胀处理,如图5(h)所示, 利 用连通域方法进行感兴趣区域图像分割,如图5(i) 所示。最后根据建立的点云与像素之间的映射关系, 还原图像阈值分割所对应的点云区域,如图5(j)所示。

505bbdda70aab88224e47ec0f3c7900c.png

4.2 结果对比分析

点云分割实验分别采用图像阈值分割 (算法 I)、靶标坐标系(算法II)、空间投影(算法III)以及与 Halcon中的基于区域的方法(算法Ⅳ)进行对比分析,对不同算法的参考点云总数和分割后点云数 进行对比,如表1所示。

238a67f2b76539aff5323a14307fed2a.png

4种方法实现的点云分割(场景1#~3#的点云区域)结果如图6所示。利用图像阈值和点云映 射关系实现的点云分割如图6(a)~(c)所示。立体相机的外参数误差和相机非线性映射关系等导致摄 像机坐标系下的点云坐标与图像像素坐标的对应关系存在一定的误差。与此同时,点云分割密度直接受图像阈值分割好坏的影响,在场景复杂且感兴趣区域阈值分割较差的情况下,点云分割不理想。采用靶标世界坐标系和点云区域模型实现的点云分割 如图6(d)~ (f)所示。

根据靶标坐标系的点云分割,需要测量感兴趣区域的物理空间区域和应用摄像机RGB图像建立相应的参考坐标系,根据测量目 标区域范围可在不改变点云密度的情况下快速有效 地分割出目标物点云。基于空间投影的点云分割方法,在目标物区域建立世界坐标系,利用坐标系变换 改变目标物点云投射视角,以突出目标物的阈值特征,实现点云分割,如图6(g)~(i)所示。基于空间投影的点云分割结果边界清晰且质量较佳,但由于其融合图像阈值和靶标坐标系算法,其执行速度相 对慢一些。Halcon视觉开发平台中基于区域的点云分割方法,采用点云三角化后,根据区域的点、直径、三角等结构元素数值选定点云区域,结果如图 6(j)~(l)所示。

fe99247eed90264dace55beeb1faf99a.png

本文摘自于:郭清达,全燕鸣. 采用空间投影的深度图像点云分割[J]. 光学学报, 2020, 40(18): 1815001

本文仅做学术分享,如有侵权,请联系删文。

下载1:OpenCV-Contrib扩展模块中文版教程

在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。


下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。


下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。


交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

猜你喜欢

转载自blog.csdn.net/qq_42722197/article/details/131318653