kinect v1 标定,深度图彩色图对齐

  • 棋盘格图片的pdf在下面的网址: 哈哈哈,终于被我找到了,不用花积分啦~ 所以好用的话请给这篇博文点个赞吧~~
  • 标定RGB:

rosrun camera_calibration cameracalibrator.py image:=/camera/rgb/image_color camera:=/camera/rgb --size 7x9 --square 0.02

  • 标定ir:

rosrun camera_calibration cameracalibrator.py image:=/camera/ir/image_raw camera:=/camera/ir --size 7x9 --square 0.02

上述是用来标定kinect1的彩色摄像头和深度摄像头的内参的。

参考网址:openni_launch/Tutorials/IntrinsicCalibration - ROS Wiki

  • 录制bag文件:(录制指定话题的bag包)

 rosbag record /camera/rgb/image_color /camera/depth/image

  • 如果已知外参了如何对齐

遇到的问题:如果将读到的图片直接以16UC1发布,rqt_image 里不显示图片。如果以8UC1发布到SLAM系统,系统则不识别,所以需要进行下面所述的“类型转换”。

1.readimg一直是:cv_ptrD = cv_bridge::toCvCopy(msgD, enc::TYPE_16UC1);  记住这时深度图读成bmp格式,如果是png格式则无法存储,并且之后的步骤也将不好使。

2.读到了图片后利用imgpub,其中:sensor_msgs::ImagePtr msg_dep = cv_bridge::CvImage(std_msgs::Header(), "8UC1", image_dep).toImageMsg();先用8UC1发布。运行的同时还要接收注意:这时接收的时候要将深度图存储为png格式(如果存为bmp,运行后将会变成白大面积白色图片。

3.接收后,再只将上句话改为"16UC1",这个时候看到话题上的深度图就对了,这时再开启SLAM系统就可以了。

上述内容虽然很复杂,但是亲测有效

如何对齐参考:kinect 2.0 SDK学习笔记(四)--深度图与彩色图对齐_jiaojialulu的博客-CSDN博客

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值