最近研究Kinect DK 相机标定,阅览10余篇文章,发现大家都是制作棋盘格进行相机内参标定。从kinect DK官方文档上发现,官方已给出rgb及depth相机内参获取的程序。
本人尝试了棋盘格标定(matlab中的camera calibrator APP功能包)和kinect DK官网文档标定,给出结果。
RGB内参标定:
图1 matlab中对rgb相机的内参标定结果
图2 kinect DK官网文档对rgb相机的内参标定结果
注意:需统一棋盘格校准和官网文档中对相机采样的参数设置。
图3 kinect DK官网文档中相应代码的设置
结果发现:两种方式对rgb相机内参标定的差别不大。猜测官网文档可能更准确,因为matlab标定中仅使用了38张图片。
疑惑:采用kinect DK官方文档进行内参标定为什么不用采集图像进行相机内参标定,而是直接生成?另外图2中径向畸变参数K1~K6代表什么?通常径向畸变参数仅有K1~K3,那么K4~K6又是什么?希望有大佬能答疑解惑!!!
Depth内参标定:
对depth相机的内参标定,仅需将官方文档76行中的auto calib = calibration.color_camera_calibration改成auto calib = calibration.depth_camera_calibration。
图4 kinect DK官网文档对depth相机的内参标定结果