void cv::initUndistortRectifyMap(InputArray cameraMatrix, InputArray distCoeffs, InputArray R, InputArray newCameraMatrix, Size size, int m1type, OutputArray map1, OutputArray map2 ) Python: cv.initUndistortRectifyMap( cameraMatrix, distCoeffs, R, newCameraMatrix, size, m1type[, map1[, map2]] ) -> map1, map2
该函数实为计算极线校正后图像相对于原图的重映射关系,最终生成关于x、y的两个映射矩阵,非线性关系,具体计算原理如下:
截图来自Opencv官网教程https://docs.opencv.org/4.x/d9/d0c/group__calib3d.html#ga7dfb72c9cf9780a347fbe3d1c47e5d5a
void cv::initInverseRectificationMap(InputArray cameraMatrix, InputArray distCoeffs, InputArray R, InputArray newCameraMatrix, const Size & size, int m1type, OutputArray map1, OutputArray map2 ) Python: cv.initInverseRectificationMap( cameraMatrix, distCoeffs, R, newCameraMatrix, size, m1type[, map1[, map2]] ) -> map1, map2
计算投影及反校正变换映射,适用于投影仪-摄像机队中的投影仪立体校正,为上个函数的反向过程,其具体实现原理如下:
void cv::remap(InputArray src, OutputArray dst, InputArray map1, InputArray map2, int interpolation, int borderMode = BORDER_CONSTANT, const Scalar & borderValue = Scalar() ) Python: cv.remap( src, map1, map2, interpolation[, dst[, borderMode[, borderValue]]] ) -> dst
函数作用为使用指定的映射变换原图像,变换关系如下:



