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来生成即可

相关推荐
高力士等十万人5 小时前
OpenCV中的边缘检测
人工智能·opencv·计算机视觉
高力士等十万人9 小时前
OpenCV二值化处理
python·opencv·计算机视觉
默凉9 小时前
Ubuntu 20.04源码安装opencv 4.5.0
opencv·ubuntu
时光旅人01号13 小时前
深度学习工厂的蓝图:拆解CUDA驱动、PyTorch与OpenCV的依赖关系
pytorch·深度学习·opencv
@Mr_LiuYang15 小时前
使用 Python 和 OpenCV 从一组图片生成 MP4 格式的视频
python·opencv·音视频
de之梦-御风19 小时前
【OpenCV】OpenCV 中各模块及其算子的详细分类
人工智能·opencv·分类
de之梦-御风19 小时前
【OpenCV】OpenCV算子功能分类
opencv·计算机视觉·分类
jndingxin19 小时前
OpenCV机器学习(10)训练数据的一个核心类cv::ml::TrainData
人工智能·opencv·机器学习
paterWang1 天前
基于 Python 和 OpenCV 的酒店客房入侵检测系统设计与实现
开发语言·python·opencv
东方佑1 天前
使用Python和OpenCV实现图像像素压缩与解压
开发语言·python·opencv