好消息好消息,现在Matlab官方发布了激光雷达+相机的校准工具箱啦!!
如果想使用这个功能,请先升级到MATLAB2020b。然后按照一下教程运行。
使用这个功能需要准备的是
1.安装MATLAB2020b,拥有LiDAR工具箱
2.使用matlab标定好的相机内参矩阵
3.拥有雷达的点云文件PCD或PCL格式(实例所使用的是内置的PCD文件)
2020b及标定文件的Baidu云链接(2021.6.23),提取码:upjd
下面这幅图展示了整个标定的过程,最终两个坐标系的转换使用了刚性变换。
实现步骤
从LiDAR中加载内置点云文件(HDL-64)
imagePath = fullfile(toolboxdir('lidar'), 'lidardata', 'lcc', 'HDL64', 'images');
ptCloudPath = fullfile(toolboxdir('lidar'), 'lidardata', 'lcc', 'HDL64', 'pointCloud');
cameraParamsPath = fullfile(imagePath, 'calibration.mat');
intrinsic = load(cameraParamsPath); % Load camera intrinsics
imds = imageDatastore(imagePath); % Load images using imageDatastore
pcds = fileDatastore(ptCloudPath, 'ReadFcn', @pcread); % Load point cloud files
imageFileNames = imds.Files;
ptCloudFileNames = pcds.Files;
squareSize = 200; % Square size of the checkerboard
% Set random seed to generate reproducible results.
rng('default');
执行棋盘角点检测
[imageCorners3d