如何对matlab标定的图像去畸变
时间: 2023-08-26 10:34:51 浏览: 88
在 Matlab 中对标定图像进行去畸变的方法如下:
1. 加载相机标定的结果
使用 Matlab 中的 `load` 函数,加载相机标定的结果,得到相机内参矩阵 K、畸变系数向量 d、旋转矩阵 R 和平移向量 t。
```matlab
load('calibrationResults.mat', 'cameraParams');
K = cameraParams.IntrinsicMatrix;
d = cameraParams.RadialDistortion;
R = cameraParams.RotationMatrices;
t = cameraParams.TranslationVectors;
```
2. 读取待去畸变的图像
使用 Matlab 中的 `imread` 函数读取待去畸变的图像。
```matlab
im = imread('undistortMe.jpg');
```
3. 对图像进行去畸变处理
使用 Matlab 中的 `undistortImage` 函数对图像进行去畸变处理,得到去畸变后的图像。
```matlab
im_undistorted = undistortImage(im, K, d, R, t);
```
其中,`undistortImage` 函数需要传入相机内参矩阵 K、畸变系数向量 d、旋转矩阵 R 和平移向量 t,以及待去畸变的图像。
4. 显示去畸变后的图像
使用 Matlab 中的 `imshow` 函数显示去畸变后的图像。
```matlab
imshow(im_undistorted);
```
这样就完成了对标定图像的去畸变处理。
阅读全文