< >
Home » walking机器人入门教程#galactic#视频版 » walking机器人入门教程-校准-相机校准(usbcam相机)

walking机器人入门教程-校准-相机校准(usbcam相机)

walking机器人入门教程-校准-相机校准(usbcam相机)

说明:

  • 介绍如何进行相机校准,获取更准确的图片数据
  • 通过相机校准后,能获取更准确AR标签的定位数据

相关设备:

  • walking机器人
  • 罗技720P的摄像头

步骤:

  • 进入棋盘图片目录
cd ~/aiwalking_ws/src/walking_visual/walking_visual/chessboard
  • 打印pattern_6x9.png图片,这是一个6 x 9的棋盘图片.并粘贴到一个平板或硬纸板上
  • 效果图:

请输入图片描述

  • 启动相机, 目前测试的是罗技720P的摄像头
ros2 launch usb_camera_driver usb_camera_node.launch.py  
  • 启动之后,图像话题是/camera/image_raw
  • 启动校准
ros2 run camera_calibration cameracalibrator --size 6x9 --square 0.021 --ros-args -r image:=/camera/image --ros-args -r camera:=/camera
  • 参数size是棋盘格是6 x 9的, 每个单元格的边长square是0.021
  • 指定图像话题是/camera/image_raw
  • 带棋盘的纸板放在相机前
  • 效果图: 

请输入图片描述

  • 然后放置不同的方位,上下左右前后各个方向的倾斜等,直到左边的X Y Size Skew都为绿色即可
  • 标定完成,左边的“校准(CALIBATE)” “保存(SAVE)”按钮和“提交(COMMIT)”几个按钮就会点亮
  • 效果图: 

请输入图片描述

  • 再点击左边的CALIBATE进行校准, 点一下就可以,这里容易误解没反应.实际处理有点慢.等几秒种就可以了
  • 会在终端下显示校准后数据, 效果图下:
**** Calibrating ****
mono pinhole calibration...
D = [0.13498639482914762, -0.2009855613985599, 0.004663205151826484, -0.01561952859160686, 0.0]
K = [1413.8706554045123, 0.0, 562.3427378079716, 0.0, 1429.2309823544167, 379.80404189143763, 0.0, 0.0, 1.0]
R = [1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0]
P = [1437.0772705078125, 0.0, 549.0191073617716, 0.0, 0.0, 1471.25927734375, 381.29332585919474, 0.0, 0.0, 0.0, 1.0, 0.0]
None
# oST version 5.0 parameters


[image]

width
1280

height
720

[narrow_stereo]

camera matrix
1413.870655 0.000000 562.342738
0.000000 1429.230982 379.804042
0.000000 0.000000 1.000000

distortion
0.134986 -0.200986 0.004663 -0.015620 0.000000

rectification
1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000

projection
1437.077271 0.000000 549.019107 0.000000
0.000000 1471.259277 381.293326 0.000000
0.000000 0.000000 1.000000 0.000000
  • 再点击“保存(SAVE)”按钮,进行保存,效果如下:
('Wrote calibration data to', '/tmp/calibrationdata.tar.gz')
  • 解压, 里面包含了校准使用的图片, 含校准参数的ost.yaml和ost.txt文件
mkdir -p ~/tools/calibrate
tar -zxvf /tmp/calibrationdata.tar.gz -C ~/tools/calibrate
  • 使用校准参数的文件, 如果相机启动时候没有指定校准文件.会出现提示
  • 这里我们指定了usb_camera_node.launch.py文件使用如下路径
file:///home/ubuntu/aiwalking_ws/src/walking_visual/config/camera_720p.yaml
  • 复制参数文件到指定目录下
cp ~/tools/calibrate/ost.yaml /home/ubuntu/aiwalking_ws/src/walking_visual/config/camera_720p.yaml
  • 在启动相机,就会自动加载这个文件

参考:

演示视频

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: walking机器人入门教程