摄像机标定程序使用方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摄像机内部参数标定
一、材料准备
1准备靶标:根据摄像头的工作距离,设计靶标大小。使靶标在规定距离范围里,尽量全屏显示在摄像头图像内。
注意:靶标设计、打印要清晰。
2图像采集:将靶标摆放成各种不同姿态,使用左摄像头采集N 幅图像。尽量保存到程序的
debug->data 文件夹内,便于集中处理。
二、角点处理(Process菜单)
1准备工作:在程序debug 文件夹下,建立data,left ,right 文件夹,将角探测器模板文件target.txt 复制到data 文件夹下,便于后续处理。
2调入图像:
File->Open 打开靶标图像
3选取角点,保存角点:
点击Process->Prepare Extrcor ,点击鼠标左键进行四个角点的选取,要求四个角点在最外侧,且能围成一个正方形区域。每点击一个角点,跳出一个显示角点坐标的提示框。当点击完第四个角点时,跳出显示四个定位点坐标的提示框。
点击Process->Extract Corners ,对该幅图的角点数据进行保存,最好保存到debug->data-> left 文件夹下。命名时,最好命名为cornerdata*.txt ,*代表编号。
对其余N-1 幅图像进行角点处理,保存在相同文件夹下。这样在left 文件夹会出现N 个角点txt 文件。
三、计算内部参数(Calibration 菜单)
1准备工作:
在left 文件夹中挑出5 个靶标姿态差异较大的角点数据txt ,将其归为一组。将该组数据复制到data 文件夹下,重新顺序编号,此时,文件名必须为cornerdata* ,因为计算参数时,只识别该类文件名。
2参数计算:
点击Calibration->Cameral Calibrating ,跳出该组图像算得的摄像机内部参数alpha、beta、gama、u0、v0 、k1 、k2 七个内部参数和两组靶标姿态矩阵,且程序默认保存为文件CameraCalibrateResult.txt 。
3处理其余角点数据文件在原来N 个角点数据文件中重新取出靶标姿态较大的5个数据文档,重复步骤1和2;
反复取上M 组数据,保存各组数据。
注意:在对下一组图像进行计算时,需要将上一组在data 文件夹下的5 个数据删除。
四、数据精选
1将各组内部参数计算结果进行列表统计,要求|gama|<2,且gama为负,删掉不符合条件
的数据。
2 挑出出现次数最高的一组数据。
摄像机外部参数标定
一、材料准备
1 靶标准备:
根据摄像头的工作距离,设计靶标大小。使靶标在规定距离范围里,尽量全屏显示在摄像头图像内。
注意:靶标设计、打印要清晰。
2 图像采集:将两摄像头固定在支架上,此后不能改变两摄像头间的相对位置关系,如有改变,需重新对外部参数进行标定。
令靶标呈现N 种不同的姿态,左右摄像头同一时刻对同一姿态进行图像采集,并在data 文件夹下创建两个小文件夹,最好命名为leftnorm_all 和rightnorm_all 用于存储原始图像和角点数据( cornerdata)。
3辅助软件准备:
安装文本编辑软件UltraEdit ,附有序列号。
二、归一化处理( Calibration 菜单的Wvmeas Target)
1 角点处理按照摄像头内部参数标定方法中的焦点处理方法,获得双目采集状态下左右摄像头图像的角点数据文件,同样命名为cornerdata*txt 。
将摄像机内部参数文件CameraCalibrateResult.txt 里的数据格式进行修改,使文本中仅剩下7 个基本数据,删掉其他注释和靶标的姿态矩阵。
2 归一化处理( Wvmeas Target)
点击Calibration->Wvmeas Target 进入归一化对话框,点击Read camera intra param... 加
载左摄像头的内部参数文件CameraCalibrateResult.txt ,点击Read feature point... 加载左图像的角点文件cornerdata1txt ,点击Emendate distortion and Normalize coorditiate ,获得单幅图像的归一化结果,跳出保存文件对话框,命名为left_norm1 ,并保存到文件夹
leftnorm_all 文件夹中。
由于左摄像头图像有N 个cornerdata 文件,故此操作重复进行N 次,保存为N 个
left_norm*.txt 文件
按此方法对右摄像头的角点数据进行归一化处理,结果保存到rightnorm_all 文件夹中,且分别命名为right_norm*.txt 。
三、计算外部参数
1 打开软件UltraEdit ,点击文件-> 新建,打开一个空白文档,点击快捷图标:列块模式,将数据按列输入。
2 在leftnorm_all 和rightnorm_all 中分别挑出5 个形态差异比较大的归一化文件 (共计10 个),先将左摄像头的5 个归一化文件按列粘贴到UltraEdit 文档中,在其右侧粘贴右摄像头的5 个归一化文件。将组合好的UltraEdit 文档进行保存,且命名为normcoor.txt 。
3 点击Calibration->Mosaic ,跳出Mosaic 对话框,点击load file 加载刚才保存的normcoor 文件,点击calculate,出现摄像头的外部参数,即旋转矩阵和平移矩阵。系统默认保存为rt.txt。
4按此方法,重新选取左右各5 组归一化文件进行外部参数的计算,从而得到M 个外部参数文件rt.txt,为不产生冲突,请重新命名。
四、数据精选
挑出各外部参数文档中平移矩阵的T1和T3分量,测量两摄像头之间的距离即光心距,
比较..“2 -T32与光心距,选出两者最为接近的一组外部参数,即为最终标定结果。