【相机标定】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
相关推荐
爱勇宝4 分钟前
DeepSeek实习生日薪5500:真正恐怖的不是工资
人工智能·深度学习·面试
ShareCreators11 分钟前
在华企业如何填补AI人才缺口数据基建:Share Creators 如何以 AI 驱动的数字资产管理重塑工业研发效能从人
人工智能·汽车·blueberry
中微极客11 分钟前
LangChain vs LlamaIndex:RAG框架选型深度对比
人工智能·langchain
糖果店的幽灵24 分钟前
【langgraph 从入门到精通】全面实践项目:智能客服工单系统
人工智能·langgraph
卡卡罗特学AI31 分钟前
曾经人手一个的Superpowers,为什么现在都在卸
人工智能·程序员
audyxiao00136 分钟前
人工智能顶会CVPR 2026论文分享|SegMoTE:一种可显著提高模型泛化能力的Token级混合专家架构
人工智能·cvpr·智慧医疗·混合专家架构·医学影像分割
武汉唯众智创44 分钟前
具身智能:人工智能的下一个范式革命
人工智能·具身智能·人形机器人·多模态感知·机器人运动控制·机器人产教融合·机器人感知决策
lisw051 小时前
【计算机科学技术】算力是什么?为何用小时计?怎么使用?
人工智能·机器学习·软件工程
半兽先生1 小时前
大模型实现金融文本分类
人工智能·python·金融
汤姆小白1 小时前
06-LoRA参数高效微调
人工智能·python·机器学习·transformer