ZED立体相机再现了人类双目视觉的工作方式。通过比较左眼和右眼看到的两种视图,不仅可以推断深度,还可以推断空间中的3D运动。
ZED立体相机可以捕捉到场景的高分辨率3D视频,通过比较左右图像之间的像素位移可以估计深度和运动。
深度感知
深度感知是指确定物体之间的距离,以三维的角度看世界。到目前为止,深度传感器仅限于近距离和室内的深度感知,限制了其在手势控制和身体跟踪方面的应用。ZED是第一个使用立体视觉的通用深度传感器:
深度可以达到20米;
深度捕捉的帧率可以达到100FPS;
视野可以达到110度(H)x70度(V);
可以在室内和室外工作。
深度图
ZED捕获的深度图为图像中的每个像素(X,Y)存储距离值(Z)。距离以公制单位表示(例如米),并计算从相机左镜头后到场景对象的距离。
因为深度图是32位编码的所以不能直接显示。可以用[0,255]之间的8位单色(灰度)值表示灰度图,255表示最近的深度近似值,0表示最远的深度近似值。

3D点云
另一种表示深度信息的常用方法是3D点云。点云可以看作是三维的深度图。深度图只包含每个像素的距离或Z信息,而点云代表场景外表面的3D点(X,Y,Z)的集合,可以包含颜色信息。

一、深度设置
1、感知模式
ZED SDK提供了两种深度感知模式:STANDARD和FILL。
(1)STANDARD模式
STANDARD模式是ZED的默认深度感知模式。该模式保存了距离测量和形状,运行速度比FILL模式快,但是由于视觉遮挡和过滤,它会包含孔洞。这些洞在深度图中用黑色区域表示。使用STANDARD模式的应用包括自主导航,障碍物检测,3D地图,人员检测和跟踪。
在STANDARD模式下,孔洞(黑色像素)根据其类型有不同的值:
NAN 称为OCCLUSION_VALUE。像素的深度无法估计,因为被遮挡或者是异常值。
-INFINITY 称为TOO_CLOSE。像素的深度无法估计,因为太靠近相机。
INFINITY 称为TOO_FAR。像素的深度无法估计,因为离相机太远了。
可以用isValidMeasure()检查有效的深度值。
(2)FILL模式
FILL模式为左侧图像中的每个像素(X,Y)提供了一个具有Z值的完全密集深度图。FILL模式填充深度图中的孔洞和遮挡,并添加了一个过滤阶段,能够提高边缘和时间稳定性,但会改变场景中物体的实际距离。
该模式推荐应用于混合现实捕获和视觉效果等。FILL模式比STANDARD模式需要更多的资源,并且以更低的FPS运行。
如果要将深度感知设置为FILL模式,在“RuntimeParameters”中设置“SENSING_MODE_FILL"。
<

ZED立体相机利用立体视觉原理实现深度和3D运动估算,适用于室内户外,提供不同模式如STANDARD和FILL以适应各种应用场景。STANDARD模式速度快但有孔洞,FILL模式填充孔洞但资源需求较高。此外,文章讨论了深度感知的精度、范围调整、深度稳定性和最佳实践,以及如何通过API配置和获取深度数据,包括点云和法线图的处理。
最低0.47元/天 解锁文章
1万+





