ROS进阶――kinect v1的使用

匿名 (未验证) 提交于 2019-12-03 00:30:01

环境:Ubuntu16.04+ROS Kinetic


一、kinect v1简介



二、环境配置
sudo apt-get install ros-kinetic-openni-* ros-kinetic-freenect-*   rospack profile  
运行命令
roslaunch freenect_launch freenect.launch

相关topic

(1)RGB图像:/camera/rgb/image_color





(2)深度图像:/camera/depth/image





(3)点云数据(无整合RGB): /camera/depth/points




三、相机标定


安装功能包

rosdep install camera_calibration

运行命令

rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.108 image:=/camera/image_raw camera:=/camera
size 11x8: 注意是字母x,是棋盘内部角点个数
square 0.108:为米单位的正方形边长
image:订阅的图像
camera:发布到设置参数的服务器
标定结果

(1)红外相机

(2)RGB相机



四、坐标修正

坐标修正包含两部分内容:
(1)第一部分是修正相机获取数据不完整导致的误差,深度相机在获取视野中物体深度信息四只获取了物体面对相机那部分的表面的数据,没有获取相反一面的数据,因此需根据目标物体本身对坐标进行修正,排除因深度相机获取数据不完整造成的偏差。
(2)第二部分是修正深度相机本身的测量误差,Kinect在获取目标物体深度信息时,随着目标物体与相机之间距离的增大误差也随之增大,下表为测量物体与Kinect之间实际距离与平均测量距离之间的误差,下面曲线图为实际距离与误差曲线图及其趋势线,误差计算方式为下表右式。因Kinect的误差随着距离的减少下载,因此以对数的方式对误差曲线进行拟合获得误差修正公式,y为误差,x为测量物体与Kinect实际距离。


参考

http://neareal.net/index.php?Kinect%2FKinectForWindowsSDK%2FBasics%2FStartUp%2FDataFormatOfSkeletonAndDepth

https://blog.csdn.net/heyijia0327/article/details/43538695




标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!