摄像机模型与标定——标定函数

本文详细介绍了摄像机标定的关键函数cvCalibrateCamera2,包括参数含义、矩阵维度以及作用。同时,提到了cvFindExtrinsicCameraParams2函数用于仅计算外参数。在标定过程中,主要目标是矫正畸变和重构三维场景,OpenCV提供了cvInitUndistortMap和cvRemap等方法实现这一目的。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

摄像机内参数,能够让我们将3D坐标转换为2D图像坐标。

说明:要理解下面的函数中参数的真实用法还需要阅读一下相机标定程序。

摄像机标定函数:

void cvCalibrateCamera2(  
CvMat* object_points,  
CvMat* image_points,  
int* point_counts,  
CvSize image_size,  
CvMat* intrinsic_matrix,  
CvMat* distortion_coeffs,  
CvMat* rotation_vectors = NULL,  
CvMat* translation_vectors = NULL,  
int flags = 0  
); 


1、object_points,是一个N×3的矩阵,如果对于每一个棋盘,我们有k个角点,并且我们通过旋转棋盘,得到棋盘的M的视场图,那么此时N=k×M。
在使用棋盘的场合,我们另点z的坐标值为0,而x,y坐标用里面来度量,选用英寸单位,那么所有参数计算的结果也是用英寸表示。类似地,如果设置所有x坐标为0(而不是z坐标),那么意味着与摄像机相关的棋盘位置将主要在x方向上而不是在z方向上。棋盘上的正方形定义了一个单位,即如果正方形的边长为90mm,那么物体和摄像机坐标单位应该是mm/90。最简单的方式是我们定义棋盘的每一个方块为一个单位。

2、image_points,是一个N×2的矩阵。包含object_points所提供的所有点的坐标。即算法在图像

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值