图像的去畸变是图像预处理的重要环节之一。
1、通过Matlab视觉工具箱对相机进行标定(opencv也可以),求得双目相机的内参矩阵K1和K2,径向畸变系数kl和kr,切向畸变系数pl和pr。
2、利用双目相机采集环境图像
3、通过c++编程去畸变
#include "opencv2/opencv.hpp"
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
Mat image = imread("c:\\Users\\yangg\\Desktop\\立体匹配\\1左.png");
Mat frame;
Mat imageCalibration;
Mat cameraMatrix = Mat::eye(3, 3, CV_64F);
cameraMatrix.at<double>(0, 0) = 7.298187226461823e+02;
cameraMatrix.at<double>(0, 1) = 1.149701832336639;
cameraMatrix.at<double>(0, 2) = 6.065109417414607e+02;
cameraMatrix.at<double>(1, 1) = 7.303572590916242e+02;
cameraMatrix.at<double>(1, 2) = 3.519951804735597e+02;
Mat distCoeffs = Mat::zeros(5, 1, CV_64F);
distCoeffs.