基于opencv的单目相机标定

openCv版本:4.4.0

  1. 从源码处拷贝标定代码出来使用,需要拷贝samples/cpp/tutorial_code/calib3d/camera_calibration
    需要的文件如下:
python 复制代码
-rw-rw-r-- 1 rog rog 28490 Jul 18  2020 camera_calibration.cpp
-rw-rw-r-- 1 rog rog  3152 Jul 18  2020 in_VID5.xml
-rw-rw-r-- 1 rog rog 19220 Jul 18  2020 out_camera_data.yml
-rw-rw-r-- 1 rog rog   387 Jul 18  2020 VID5.xml
  1. 制作打印标定板
    标定板制作:https://calib.io/pages/camera-calibration-pattern-generator

按照下面的选项设置参数导数PDF打印

  1. 拍摄照片:
    4. 修改刚拷贝出来的文件VID5.xml 注意是相对路径 而且本人图片是放在phone_img目录下,根据你自己照片位置修改
c 复制代码
<?xml version="1.0"?>
<opencv_storage>
<images>
        ..//image_1.jpg
        ../phone_img/image_2.jpg
        ../phone_img/image_3.jpg
        ../phone_img/image_4.jpg
        ../phone_img/image_6.jpg
        ../phone_img/image_8.jpg
        ../phone_img/image_9.jpg
        ../phone_img/image_10.jpg
        ../phone_img/image_11.jpg
        ../phone_img/image_12.jpg
        ../phone_img/image_13.jpg
</images>
</opencv_storage>
  1. 修改in_VID5.xml文件
c 复制代码
  #标定板宽的个数 注意是黑白交点个数 也就是角点个数
  <BoardSize_Width>11</BoardSize_Width>
  #标定板 高
  <BoardSize_Height>8</BoardSize_Height>
  #单个正方形的边长 拿尺子量
  <Square_Size>19</Square_Size>
  #是否沿水平轴反转照片
  <Input_FlipAroundHorizontalAxis>1</Input_FlipAroundHorizontalAxis>
  1. 修改cmake 编译camera_calibration.cpp 注意指定你openCv路径
c 复制代码
mkdir  build 
cd build 
make 
  1. 执行编译的程序
c 复制代码
./Camera_Calibration ../in_VID5.xml
  1. 生成标定参数文件out_camera_data.xml
    这里使用科学计数法,顺序依次是:fx 0 cx 0 fy cy 0 0 1
    k1 k2 p1 p2 k3
相关推荐
好喜欢吃红柚子2 分钟前
万字长文解读空间、通道注意力机制机制和超详细代码逐行分析(SE,CBAM,SGE,CA,ECA,TA)
人工智能·pytorch·python·计算机视觉·cnn
小馒头学python7 分钟前
机器学习是什么?AIGC又是什么?机器学习与AIGC未来科技的双引擎
人工智能·python·机器学习
神奇夜光杯16 分钟前
Python酷库之旅-第三方库Pandas(202)
开发语言·人工智能·python·excel·pandas·标准库及第三方库·学习与成长
正义的彬彬侠19 分钟前
《XGBoost算法的原理推导》12-14决策树复杂度的正则化项 公式解析
人工智能·决策树·机器学习·集成学习·boosting·xgboost
plmm烟酒僧20 分钟前
Windows下QT调用MinGW编译的OpenCV
开发语言·windows·qt·opencv
Debroon28 分钟前
RuleAlign 规则对齐框架:将医生的诊断规则形式化并注入模型,无需额外人工标注的自动对齐方法
人工智能
羊小猪~~35 分钟前
神经网络基础--什么是正向传播??什么是方向传播??
人工智能·pytorch·python·深度学习·神经网络·算法·机器学习
AI小杨36 分钟前
【车道线检测】一、传统车道线检测:基于霍夫变换的车道线检测史诗级详细教程
人工智能·opencv·计算机视觉·霍夫变换·车道线检测
晨曦_子画41 分钟前
编程语言之战:AI 之后的 Kotlin 与 Java
android·java·开发语言·人工智能·kotlin
道可云43 分钟前
道可云人工智能&元宇宙每日资讯|2024国际虚拟现实创新大会将在青岛举办
大数据·人工智能·3d·机器人·ar·vr