【相机标定】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
相关推荐
qq_25294131687 分钟前
不同成熟度番茄果实多模态图像数据集 | 番茄成熟度 多模态检测 可见光深度红外 智慧农业 语义分割 目标检测9233期
人工智能·yolo·目标检测·目标跟踪·番茄多模态
matlab代码11 分钟前
基于BP神经网络手写字母识别(单一)【源码79期】
人工智能·深度学习·神经网络
skywalk816314 分钟前
FreeBSD linuxulator 跑小浣熊客户端:登录页一直转不回来的完整排查记录 10.22
人工智能·freebsd·小浣熊
江屿风15 分钟前
【Plain Language Large Model】【大语言模型底层原理全解析:从Token生成到智能体演进】流食般投喂
人工智能·笔记·语言模型·llm·json·token·聊天模板
FLJwu16 分钟前
运动相机采购选型避坑实战|第二篇
c语言·开发语言·数码相机·运动相机·oem 量产
码流子19 分钟前
高速公路视频AI分析,算力该放哪:边缘、中心还是云边协同?
大数据·数据库·人工智能·物联网·音视频
碧海银沙音频科技研究院19 分钟前
基于炬芯ATS308X的MLP DNN深度学习KWS语音识别实现(单唤醒词版本-谷歌mini Speech Commands数据集)
人工智能·深度学习
枫叶丹419 分钟前
表格数据也能用基础模型:TabPFN 与传统机器学习的比较方法
人工智能·机器学习·chatgpt·开源·agent·codex
海宇数据20 分钟前
零信任架构实战:基于海宇普通维保查询构建自动化二手车认证展厅车况质检档案网关
运维·人工智能·架构·自动化
众壹新能源科技21 分钟前
储能两充两放日收益增40%,但电池寿命缩短一半,怎么平衡
运维·人工智能·自动化