个人技术分享

打开roscore和相机

输入

rostopic echo /camera/color/camera_info 

 从而得到相机的内参

 

cameraInfo包含D、K、R、P四个矩阵。
矩阵D是失真系数,包括(k1, k2, t1, t2, k3)
矩阵K是相机内参,即

 矩阵R是一个3✖3的旋转矩阵,仅对双目相机有效,使左右极线平行。

矩阵P是投影矩阵,即,

    ​
 在单目相机中,Tx = Ty = 0。

标定内参

使用ros自带的标定工具

1、下载标定工具

sudo apt update
sudo apt install python3-pip
sudo pip3 install rosdepc
rosdep install camera_calibration

 安装标定功能包

sudo apt-get install ros-xxxx-camera-calibration

 xxx为ROS对应的版本号

然后启动相机打开话题

//启动相机
roslaunch realsense2_camera rs_camera.launch
rostopic list
//发布的话题名为
/camera/color/camera_info

进行标定

rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.03 image:=/camera/color/image_raw camera:=/camera/color --no-service-check

 其中8x6是除去最外面的角点后的行列数

square 0.03 是方格的边长为3cm

内参校准标定板打印链接

Camera Calibration Pattern Generator – calib.io

标定的过程,不断变换位置直到calibrate可以使用。 然后就可以在终端获取内参。

等标定中X Y Size Skew 四个进度条全为绿时再点击CALIBRATE,即可生成一个压缩包,里面包含残疾的图片信息及一个txt、一个yaml文件。