OutputArray jacobian=noArray(),
double aspectRatio=0 );
第一个参数objectPoints, 为相机坐标系中的三维点坐标;
第二个参数rvec为扭转标的目的量, 每一张图像都有本身的扭转标的目的量;
第三个参数tvec为平移标的目的量, 每一张图像都有本身的平移标的目的量;
第四个参数cameraMatrix为相机的内参数矩阵;
第五个参数distCoeffs为相机的畸变矩阵;
第六个参数imagePoints为每一个内角点对应的图像上的坐标点;
第七个参数jacobian是雅可比行列式;
第八个参数aspectRatio是跟相机传感器的感光单位有关的可选参数, 若是设置为非0, 则函数默认感光单位的dx/dy是固定的, 会依此对雅可比矩阵进行调整;
②误差计较:以opencv里的norm把这里的两个通道别离分隔来计较的(X1-X2)^2的值, 然后同一乞降, 最后进行根号;
double norm(InputArray src1,
InputArray src2,
int normType=NORM_L2,
InputArray mask=noArray());
以图片的亚像素角点坐标和按照标定成果把空间三维坐标点映射到图像坐标点的对比:



5图像矫正:操纵标定成果对图像进行矫正
方式一:initUndistortRectifyMap和remap相连系实现 。
initUndistortRectifyMap计较畸变映射, remap把求得的畸变映射应用到图像上 。
void initUndistortRectifyMap(InputArray cameraMatrix,
InputArray distCoeffs,
InputArray R,
InputArray newCameraMatrix,
Size size,
int m1type,
OutputArray map1,
OutputArray map2 );
第一个参数cameraMatrix为之前求得的相机的内参矩阵;
第二个参数distCoeffs为之前求得的相机畸变矩阵;
第三个参数R, 扭转矩阵;
第四个参数newCameraMatrix, 输入的校正后的3X3摄像机矩阵;
第五个参数size, 摄像机采集的无掉真的图像尺寸;
第六个参数m1type, 界说map1的数据类型, 可所以CV_32FC1或者CV_16SC2;
第七个参数map1和第八个参数map2, 输出的X/Y坐标重映射参数;
void remap( InputArray src,
OutputArray dst,
InputArray map1,
InputArray map2,
int interpolation,
int borderMode=BORDER_CONSTANT,
const Scalar& borderValue=https://vvvtt.com/article/Scalar());
第一个参数src, 输入参数, 代表畸变的原始图像;
第二个参数dst, 矫正后的输出图像, 跟输入图像具有不异的类型和大小;
第三个参数map1和第四个参数map2, X坐标和Y坐标的映射;
猜你喜欢
- 佳能单反相机的拍摄技巧,初级入门摄影知识
- 相机三脚架的使用方法
- 小米手机相机魔镜功能怎么用
- vivo相机怎么设置微信视频聊天美颜
- 如何用数码相机拍出高反差的黑白照片
- 魅族手机怎么使用自带相机美颜
- 华为手机相机怎么样打开专业相机和设置参数
- 单反相机怎么测光
- 请在iPhone的设置选项中允许访问你的相机
- 华为荣耀9X手机的相机怎么样打开笑脸抓拍功能
