opencv 相机标定与矫正

由摄像机拍取并进行标定与矫正

步骤:
1.确定基础设置

    //设置1 图像的尺寸
    const int nImageW = 2592;
    const int nImageH = 1944;

    //设置2 棋盘X方向上角点数量
    const int nChessBoardWidthCount = 7;

    //设置3 棋盘Y方向上角点数量
    const int nChessBoardHeightCount = 5;

    CvSize szChessBoardSize = cvSize(nChessBoardWidthCount, nChessBoardHeightCount);
    const int nOneChessBoardCornerCount = nChessBoardWidthCount *nChessBoardHeightCount;

    //设置4 读取的图像名称
    char chFileName[] = "01.bmp";

    //设置5 图像数量
    const int nImageCount = 23;

    //设置6 棋盘格子的边长
    float fSquareSize = 25.6;

2.获取多角度的照片,进行棋盘格角点检测
运用cvFindChessboardCorners()以及cvFindCornerSubPix()检测角点
运用cvDrawChessboardCorners()绘制角点

3.将图像二维坐标转换成世界坐标
cvProjectPoints2()计算三维点投影到二维图像平面上的坐标
cvNorm()计算每幅图片的误差

4.使用cvCalibrateCamera2()获取

Mat intrinsic;                                          //相机内参数  
Mat distortion_coeff;                                   //相机畸变参数  
vector<mat> rvecs;                                        //旋转向量  
vector<mat> tvecs;                                        //平移向量  

5.使用cvUndistort2()矫正畸变

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值