【相机标定】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 分钟前
轻松鼠标连, 自定义区域模仿人手点击
人工智能·windows·物联网·计算机视觉·计算机外设·ocr·excel
HuDie3407 分钟前
AI产品经理课程笔记
人工智能·笔记·产品经理
枕石 入梦37 分钟前
华为云服务器本地部署大模型实战(Ollama + Tesla T4 踩坑记)
服务器·人工智能·大模型·华为云
智慧化智能化数字化方案42 分钟前
财务数字化——解读农化集团业财一体化数字化转型解决方案【附全文阅读】
大数据·人工智能
香芋Yu1 小时前
【大模型面试突击】01_传统NLP基础
人工智能·自然语言处理
琅琊榜首20201 小时前
AI+编程实操:小说高效改编短剧的全流程指南
大数据·人工智能
倔强青铜三1 小时前
LlamaIndex官方揭秘:如何构建安全的AI编码智能体
人工智能·aigc·ai编程
lczdyx1 小时前
【胶囊网络 - 简明教程】02-1 胶囊网络 - 整体架构设计
人工智能·深度学习·机器学习·ai·大模型·反向传播·胶囊网络
小雨中_1 小时前
2.6 时序差分方法(Temporal Difference, TD)
人工智能·python·深度学习·机器学习·自然语言处理
落羽的落羽2 小时前
【Linux系统】磁盘ext文件系统与软硬链接
linux·运维·服务器·数据库·c++·人工智能·机器学习