OpenCV3.4.14示例 calibration.cpp相机标定

本文详细介绍了如何使用Visual Studio 2019结合OpenCV进行相机标定的过程,包括下载OpenCV、配置环境、修改cpp文件、创建xml文件以及运行程序。重点讲解了代码修改部分,特别是棋盘格尺寸、正方形边长和输入文件的设置。最后,相机参数矩阵将保存在out_camera_data.yml文件中。

首先安装vs2019并配置

安装方法可自行网上去查怎么配置,不是本文重点,所以略过
opencv下载网址:https://opencv.org/releases/
我安装的是
在这里插入图片描述

准备需要的文件

  1. cpp文件

在OpenCV文件D:\opencv\sources\samples\cpp中找到 calibration.cpp
在这里插入图片描述

  1. xml文件
    这个文件是用来存储一会标定的时候会用到的棋盘格的图像的名字,如图:
    在这里插入图片描述
    这个文件你可以用OpenCV的imagelist_creator.cpp来做(作者https://blog.csdn.net/panpan_jiang1/article/details/80429937有介绍)

或者你也可以找一个xml文件,然后自己手动敲进去

注意calibration.cpp、imagelist.xml和棋盘格照片要放在同一个文件夹下

运行

vs2019
步骤:新建项目,导入现有项,选择calibration.cpp。配置OpenCV属性管理器,一切准备就绪!这步就简单省略了
配置好之后还需要修改一行代码:

原代码
cv::CommandLineParser parser(argc, argv,
    "{help ||}{w||}{h||}{pt|chessboard|}{n|10|}{d|1000|}{s|0.025|}{o|out_camera_data.yml|}"
    "{op||}{oe||}{zt||}{a|1|}{p||}{v||}{V||}{su||}"
    "{@input_data||}");
修改之后代码
    cv::CommandLineParser parser(argc, argv,
        "{help ||}{w|8|}{h|6|}{pt|chessboard|}{n|10|}{d|1000|}{s|0.025|}{o|out_camera_data.yml|}"
        "{op||}{oe||}{zt||}{a|1|}{p||}{v||}{V||}{su||}"
        "{@input_data|imagelist.xml|}");

其中{w|8|}{h|6|}为你所使用的棋盘格的内角点数
{s|0.025|}为棋盘格的正方形边长(单位m)
{o|out_camera_data.yml|}输入文件存放名称
{@input_data|imagelist.xml|}你要准备的xml文件的名字

修改完之后 就可以运行了,结果在 out_camera_data.yml中查看在这里插入图片描述
相机参数矩阵为
[ 1361.301, 0, 962.16385629748777,
0, 1361.3010401025681, 549.10627317965998,
0, 0, 1 ]

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值