opencv畸变图像校正 C++
时间: 2023-11-27 21:05:19 浏览: 149
图像畸变校正opencv
4星 · 用户满意度95%
以下是使用OpenCV进行畸变图像校正的C++代码示例:
```c++
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
// 读取相机标定文件
FileStorage fs("calib_result.xml", FileStorage::READ);
Mat cameraMatrix, distCoeffs;
fs["cameraMatrix"] >> cameraMatrix;
fs["distCoeffs"] >> distCoeffs;
// 读取测试图片
Mat src = imread("test.jpg");
// 畸变校正
Mat dst;
undistort(src, dst, cameraMatrix, distCoeffs);
// 显示结果
imshow("src", src);
imshow("dst", dst);
waitKey();
return 0;
}
```
其中,`calib_result.xml`是相机标定文件,包含相机内参和畸变系数;`test.jpg`是测试图片。在代码中,首先读取相机标定文件,然后读取测试图片,接着使用`undistort`函数进行畸变校正,最后显示结果。
阅读全文