【相机标定】opencv python 标定相机内参时不计算 k3 畸变参数

文章目录

    • [1. 背景](#1. 背景)
    • [2. 完整的 opencv python 标定相机内参过程](#2. 完整的 opencv python 标定相机内参过程)
    • [3. 选择是否计算畸变参数 k3](#3. 选择是否计算畸变参数 k3)

1. 背景

畸变参数 k3 通常用于描述径向畸变的更高阶效应,即在需要高精度的应用中可以用到,一般的应用中 k1, k2 足矣。

常见的应用中, orbslam3 中是否传入 k3 是可选的,而 kalibr 标定中则只需要传入 k1, k2 。但计算 k3 时的 k1, k2 不等于不计算 k3 时的 k1, k2 ,因此需要学会计算两种场景下参数的计算。

2. 完整的 opencv python 标定相机内参过程

参考:https://blog.csdn.net/zong596568821xp/article/details/115286088

3. 选择是否计算畸变参数 k3

在调用 cv.calibrateCamera() 时,传入参数 flags=cv.CALIB_FIX_K3 即可,代码如下:

python 复制代码
# 1. 计算 k1, k2, k3
ret, mtx, dist, rvecs, tvecs = cv.calibrateCamera(
    objectPoints=objpoints, imagePoints=imgpoints, imageSize=imageSize, cameraMatrix=None, distCoeffs=None
)
# Camera.k1: -0.0503
# Camera.k2: 0.0654
# Camera.k3: -0.0200
python 复制代码
# 2. 计算 k1, k2
ret, mtx, dist, rvecs, tvecs = cv.calibrateCamera(
    objectPoints=objpoints, imagePoints=imgpoints, imageSize=imageSize, cameraMatrix=None, distCoeffs=None, flags=cv.CALIB_FIX_K3
)
# Camera.k1: -0.0355
# Camera.k2: 0.0346
相关推荐
Francek Chen10 分钟前
【自然语言处理】预训练06:子词嵌入
人工智能·pytorch·深度学习·自然语言处理·子词嵌入
微盛企微增长小知识14 分钟前
企业微信AI怎么用?从智能表格落地看如何提升运营效率
大数据·人工智能·企业微信
私域实战笔记16 分钟前
如何选择企业微信SCRM?2025年3个选型参考维度
大数据·人工智能·企业微信·scrm·企业微信scrm
袁庭新20 分钟前
2025年10月总结
人工智能·aigc·coze
yolo_guo21 分钟前
opencv 学习: QA_01 什么是图像锐化
linux·c++·opencv·计算机视觉
AI浩21 分钟前
SMamba: 基于稀疏Mamba的事件相机目标检测
人工智能·数码相机·目标检测
QTreeY12322 分钟前
yolov5/8/9/10/11/12/13+deep-oc-sort算法的目标跟踪实现
人工智能·算法·yolo·目标检测·计算机视觉·目标跟踪
IT_陈寒31 分钟前
SpringBoot 3.2新特性实战:这5个隐藏技巧让你的应用性能飙升50%
前端·人工智能·后端
aitoolhub34 分钟前
考研论文引用格式 AI 校验实操:工具合集 + 技术原理
c语言·人工智能·考研·aigc
Fnetlink11 小时前
推动“AI+ 网络安全”深度融合与创新发展
人工智能·安全·web安全