【发布时间】:2017-06-21 07:30:38
【问题描述】:
我正在尝试使用 Kinect 传感器进行 RGB-D SLAM。
Kinect 传感器有一个 RGB 摄像头和一个深度摄像头。
我应该在哪里为 rosbag 设置我的相机?
RGB 相机的中心? 深度相机的中心? 在两个摄像头之间?
而且由于 Kinect 的两个摄像头有点分开, 两个摄像头的图像不一样吗?
【问题讨论】:
-
您是在实现自定义 SLAM 算法还是在使用特定算法?
我正在尝试使用 Kinect 传感器进行 RGB-D SLAM。
Kinect 传感器有一个 RGB 摄像头和一个深度摄像头。
我应该在哪里为 rosbag 设置我的相机?
RGB 相机的中心? 深度相机的中心? 在两个摄像头之间?
而且由于 Kinect 的两个摄像头有点分开, 两个摄像头的图像不一样吗?
【问题讨论】:
Kinect 1 中有 2 个摄像头和投影仪。红外投影仪发出红外光,由深度/红外摄像头/传感器感应,产生 11 位原始输出。还有RGB摄像头。由于它们的位置,深度和彩色图像来自两个独立的相机,因此它们没有对齐或完全重叠。可以使用两个相机的校准值计算和注册两个相机的图像。
使用深度图像中每个像素的原始数据值,我们可以计算其在 3D 空间中的位置,并将其重新投影到 RGB 相机的图像平面中。通过这种方式,我们构建了一个注册的深度图像,其中每个像素都与 RGB 图像中的对应像素对齐。
OpenNI 是一个开源库,具有内置注册功能,它使用 Kinect 1 工厂校准。您可以使用 dynamic_reconfigure 在运行时更改 ROS OpenNI 驱动程序的设置。
【讨论】: