![32fb3f2083e170720185000706c01834.png](https://img-blog.csdnimg.cn/img_convert/32fb3f2083e170720185000706c01834.png)
- 前言
参考 OpenCV畸变校正原理以及损失有效像素原理分析 - 一度逍遥 - 博客园 我们知道目前opencv在标定完后得到相机内参及畸变系数,要么通过cv::undistort()直接得到去畸变的图像,要么通过cv::getOptimalNewCameraMatrix()得到新的矩阵,再通过cv::initUndistortRectifyMap()得到x轴与y轴映射,最后通过cv::remap()将原图映射到新图。
- 两者的不同
在说两者不同之前,我们先介绍下getOptimalNewCameraMatrix()函数。
getOptimalNewCameraMatrix(cv::InputArray _cameraMatrix,cv::InputArray _distCoeffs,cv::Size imgSize, double alpha, cv::Size newImgSize,cv::Rect* validPixROI, bool centerPrincipalPoint)
alpha之前的参数自不必说,alpha之后的参数都可以视为默认。关键就在alpha的含义。
icvGetRectangles(cameraMatrix, distCoeffs, 0, 0, imgSize, inner, oute