cv2.calibrateCamera函数

复制代码
ret, mtx, dist, r_vecs, t_vecs = cv2.calibrateCamera(obj_points, img_points, size, None, None)

这个函数里的obj_points和img_points是同一相机不同视角下20张图片的角点,那这个函数返回的旋转向量r_vecs和位置矢量t_vecs是指什么,因为20张图像,棋盘格码的位置都不一样,它这个返回的旋转向量和位置矢量是指哪一张图?

在 cv2.calibrateCamera 函数中,obj_points 和 img_points 包含了同一相机不同位置拍摄chessboard时获取的三维点和二维点。

这个函数会利用所有的点对进行相机标定,返回的标定结果适用于所有的图片,而不是仅针对单张图片。具体来说:

  • r_vecs: 是一个旋转向量数组,长度为图片张数,表示每张图片相对于第一个画面的旋转变换。

  • t_vecs: 是一个位移向量数组,长度也是图片张数,表示每张图片相机光心相对于第一个画面的位置变换。- mtx: 是相机的内参矩阵,针对所有的图片通用。

  • dist: 是相机的畸变系数,也是通用的。所以标定结果是针对该相机的整体参数,而不是仅针对某一张特定图片的。r_vecs和t_vecs表示了每张图片相对于第一个画面的位姿变换,配合内参矩阵mtx可以将图像点反投影到三维空间中。要为特定一张图片生成投影矩阵,需要选择对应的r_vecs[i]和t_vecs[i],结合mtx来生成即可

相关推荐
OperateCode12 小时前
AutoVideoMerge:让二刷更沉浸的自动化视频处理脚本工具
python·opencv·ffmpeg
lxmyzzs13 小时前
【图像算法 - 14】精准识别路面墙体裂缝:基于YOLO12与OpenCV的实例分割智能检测实战(附完整代码)
人工智能·opencv·算法·计算机视觉·裂缝检测·yolo12
jndingxin2 天前
OpenCV图像注册模块
人工智能·opencv·计算机视觉
R-G-B2 天前
【P14 3-6 】OpenCV Python——视频加载、摄像头调用、视频基本信息获取(宽、高、帧率、总帧数)
python·opencv·视频加载·摄像头调用·获取视频基本信息·获取视频帧率·获取视频帧数
荼蘼2 天前
OpenCv(三)——图像平滑处理
人工智能·opencv·计算机视觉
R-G-B2 天前
OpenCV Python——报错AttributeError: module ‘cv2‘ has no attribute ‘bgsegm‘,解决办法
人工智能·python·opencv·opencv python·attributeerror·module ‘cv2‘·no attribute
似乎很简单3 天前
【opencv-Python学习笔记(5):几何变换】
笔记·opencv·学习
荼蘼3 天前
OpenCv(二)——边界填充、阈值处理
人工智能·opencv·计算机视觉
蜀中廖化3 天前
机器学习:基于OpenCV和Python的智能图像处理 实战
python·opencv·机器学习
R-G-B3 天前
【P27 4-8】OpenCV Python——Mat类、深拷贝(clone、copyTo、copy)、浅拷贝,原理讲解与示例代码
人工智能·python·opencv·浅拷贝·深拷贝·opencv python·mat类