3D感知技术学习
饭前菜
点云
什么是点云
点云是某个坐标系下的点的数据集,数据集中的每个点代表一组X、Y、Z几何坐标和一个强度值,这个强度值根据物体表面反射率记录返回信号的强度。当这些点组合在一起时,就会形成一个点云,即空间中代表3D形状或对象的数据点集合。点云也可以自动上色,以实现更真实的可视化。
怎么来的
主要是通过三维激光扫描仪进行数据采集获取点云数据,其次通过二维影像进行三维重建,在重建过程中获取点云数据,另外还有一些,通过三维模型来计算获取点云。
应用
- 三维重建
- 测绘
- 自动驾驶
概述
为什么用3D
相比于2D和图像处理,3D低功耗、低运算量、信息量大、对环境和目标有感知能力
3D数据的难点
- 噪声
- 干扰
- 畸变
- 分辨率
- 运动模糊
3D数据处理——总体流程
3D传感器
3D光学测量方法概述
针孔相机模型
- 小孔成像原理
-
o点看作光心,成像平面换成传感器的成像面
-
降维,通过相似三角形计算出X(Y)的空间坐标值
-
实际图像与模型的差别
-
在图像上得到的坐标并不是表示实际尺寸的物理坐标,是像素坐标(整数)
-
模型的光心是在坐标轴的原点,也是传感器的中心,但实际图像一般是选取左上角为原点
因此,需要把像素坐标转换成物理坐标
-
-
完整针孔相机模型
双目3D视觉原理
提问:如果知道每个像素点对应的物体的距离Z,就能通过针孔相机模型计算出物体的三维坐标
但如果只有RGB图,该如何测距?
从视差到3D坐标
-
视差:左眼偏右,右眼偏左
-
大致原理:两眼分别看到的两个物体的偏差越大,距离物体越近;偏差越小,则反之。
也就是通过分析两个图像中同一点的位置差别,可以测出距离。
模型
其中:d1和d2是同一个物体分别在两图的位置;基线长度为两个光心之间的距离
根据相似三角形,得:
视差匹配查找
若要知道左右两个图像距离光心的距离,关键就在于两图的匹配关系
匹配查找的大致方法(以左图为参照):
-
先在两图图中确定一个像素点的坐标,比如说是(200,250)
-
纵坐标相等,所以只需变化右图的横坐标就行
-
两图各自选取像素点的一块邻域,将右图的邻域左移一定的距离,并且在平移的过程中,不断计算两块邻域的匹配度,然后计算出匹配度最高的那一块区域
双目视觉的缺点
- 不适用于单调缺乏特征的场景。
原因:双目视觉是根据两个图的视觉特征进行匹配,所以对于缺乏视觉特征的场景,匹配的误差可能会较 大,甚至匹配失败。
- 改进方法:用投影仪为双目视觉提供特征