kinect v2标定

这里默认你装好了kinect2驱动libfreenect2 和 ROS包 iai_kinect2

libfreenect2 和iai_kinect2安装请参考:http://www.ncnynl.com/archives/201703/1439.html

kinetic2标定我参考的这个:https://github.com/code-iai/iai_kinect2/tree/master/kinect2_calibration#calibrating-the-kinect-one

这种标定方法是先保存(record)一些图片,然后再计算标定(calibrate)。

需要标定四样东西:color彩色图像   ir红外图像 sync帧同步 depth深度图像

前期准备需要打印好你的标定板,在上面第二个网址里下载

你爱选哪种就哪种,我选的9x11x0.02,打印好了贴在硬板上。注意那个乘号就是小写的x。注意后面运行命令时要改成你标定板一样的尺寸。9x10表示白色块和黑色块的相接的点或边,数过的黑白块不能重复数,宽上有9个黑白相接处,长上有11个。那个0.02还不知道什么意思,自己去查。

因为要事先保存图片,所以自己建立一个了文件吧,不然很乱的

mkdir ~/kinect_cal_data

cd ~/kinect_cal_data

待会你按空格键保存时,就会保存到你的命令运行的当前目录里面:

  • ESCq: Quit
  • SPACEs: Save the current image for calibration
  • l: decrease min and max value for IR value rage
  • h: increase min and max value for IR value rage
  • 1: decrease min value for IR value rage
  • 2: increase min value for IR value rage
  • 3: decrease max value for IR value rage
  • 4: increase max value for IR value rage
上面是一些操作快捷键,我就用到了空格键而已。

标定后的文件需要放到/home/robot/catkin_ws/src/iai_kinect2/kinect2_bridge/data这个文件夹里

开始标定:命令依次运行下去

调整帧率:

  rosrun kinect2_bridge kinect2_bridge _fps_limit:=2

  运行这条命令后注意看看设备串口号,我的设备串口号是这样的:

  [ INFO] [Kinect2Bridge::initDevice] device serial:034011551247   

  在我的/home/robot/catkin_ws/src/iai_kinect2/kinect2_bridge/data的文件夹里建立一个文件夹,取名叫 034011551247 

标定彩色摄像头:
  rosrun kinect2_calibration kinect2_calibration chess9x11x0.02 record color
  按几次空格键记录
  rosrun kinect2_calibration kinect2_calibration chess9x11x0.02 calibrate color

  会生成calib_color.yaml 文件   

标定红外:
  rosrun kinect2_calibration kinect2_calibration chess9x11x0.02 record ir
  按几次空格键记录
  rosrun kinect2_calibration kinect2_calibration chess9x11x0.02 calibrate ir

    会生成calib_ir.yaml 文件   


帧同步标定:
  rosrun kinect2_calibration kinect2_calibration chess9x11x0.02 record sync
  按几次空格键记录
  rosrun kinect2_calibration kinect2_calibration chess9x11x0.02 calibrate sync
    会生成calib_pose.yaml 文件   

深度标定:
 rosrun kinect2_calibration kinect2_calibration chess9x11x0.02 calibrate depth

   会生成calib_depth.yaml 文件   


然后再把calib_color.yaml calib_ir.yaml calib_pose.yaml calib_depth.yaml拷贝到/home/robot/catkin_ws/src/iai_kinect2/kinect2_bridge/data/034011551247文件夹中

标定搞定。

运行 roslaunch kinect2_bridge kinect2_bridge.launch

 rosrun kinect2_viewer kinect2_viewer

看看效果。什么样的效果才算标定好了咧,这个我也不太清楚,运行上面两个命令,放一只手进去,试试看看手的彩色图像跟深图像是否重合。这个得对此标定,对比结果。另外我的机器在 rosrun kinect2_viewer kinect2_viewer命令后,后面有几次不出现图像框,我是重启计算机后,就能出现图像框了,不知道什么原因,希望大神留言,谢谢!


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值