1. 设计任务
摄像机标定要求自制标定板,使用网络摄像机或手机摄像头进行标定。将标定的摄像机内参和外参进行保存。设计测量方案,使用标定过的摄像机对包含垂直边缘的物品(直尺刻度线,矩形物体边缘等)进行距离或边长的测量。标定过程和测量过程,均需要保持摄像机与测量平面之间的距离固定,物品高度不能过高,否则影响测量结果。给出设计的中间过程和必要的截图以及最终测量结果,并对测量结果进行误差计算和分析。测量对象不限,可以是学生卡、刻度线或自行绘制打印的带矩形边缘的图像等。
2.课题分析设计原理
- 摄像机标定原理阐述
(1)坐标系的转换
- 世界坐标系(world coordinate)(xw,yw,zw)也称为测量坐标系,是一个三维直角坐标系,以其为基准可以描述相机和待测物体的空间位置。世界坐标系的位置可以根据实际情况自由确定。
- 相机坐标系(camera coordinate)(xc,yc,zc),也是一个三维直角坐标系,原点位于镜头光心处,x、y轴分别与相面的两边平行,z轴为镜头光轴,与像平面垂直。
- 世界坐标系转换为相机坐标系。
其中R其中为3*3的旋转矩阵,t为3*1的平移矢量,[xc,yc,zc,1]T为相机坐标系的齐次坐标,(xw,yw,zw,1)T为世界坐标系的齐次坐标。
- 相机坐标系(Xc,Yc,Zc)->图像坐标系(x,y)。
其中,Zc 为比例因子(Zc不为0),f为有效焦距(相机光心到成像平面的距离),(Xc,Yc,Zc,1)是空间点在相机坐标系中的齐次坐标,(x,y,1)是像点在图像坐标系中的齐次坐标。
从相机标系(Xc,Yc,Zc)到图像坐标系(x,y)是一个三维坐标到二维坐标(3D->2D)的过程,称之为透视投影变换(仿射变换的延伸,新增形状可能也发生了变化,即畸变)。
(2)相机内参与畸变参数
相机内参(投影变换): 相机的固有属性,相机的内参数是六个分别为:1/dx、1/dy、r、u0、v0、f,在进行畸变校正时需要用到相机的内参。
f:焦距,单位毫米
dx:单位像素x方向宽度,单位毫米,1/dx:x方向1毫米内有多少个像素(dx、dy代表像元尺寸)
f/dx:使用像素来描述x轴方向焦距的长度
f/dy:使用像素来描述y轴方向焦距的长度
u0,v0:表示图像的中心像素坐标和图像原点像素坐标之间相差的横向和纵向像素数,理论值应该是图像宽度、高度的一半,但实际是有偏差的,一般越好的摄像头则其越接近于分辨率的一半。
相机外参(仿射变换): 相机在世界坐标系中的参数,比如相机的位置、旋转方向等。
它表示相机与测量平面之间的位置关系,因为物体在经过透镜成像之后,实际上是经过了平移和旋转,而外参就是告诉我们物体成像后经过了哪种平移和旋转,相机的外参包括平移矢量和旋转矩阵。也就是说只有知道了相机的外参,才能够完成测量平面坐标系和相机坐标系之间的坐标转换。在halcon中,测量平面定义为世界坐标系中平面z=0。
畸变参数: 采用理想针孔模型,由于通过针孔的光线少,相机曝光太慢。所以在实际使用中均采用透镜,可以使图像生成迅速,但代价是引入了畸变(径向畸变和切向畸变)。
- 单目测量原理阐述
单目测量的原理主要基于几何光学和图像处理技术。通过相机获取物体的图像。相机的成像过程遵循一定的几何投影关系。后利用图像处理算法对图像进行分析,比如识别出目标物体的特征点、边缘等。根据已知的相机参数(如焦距、像素尺寸等)以及目标在图像中的位置和特征,运用几何关系来推算目标的一些物理属性,如距离、尺寸、角度等。
3. 方案及流程设计
1)标定板制作,展示标定板图像;
首先创建一个模板,在halcon中点击助手>>打开新的Calibration。
在命令行输入gen_caltab (7, 7, 0.00375, 0.5, 'caliFile.descr', 'cali_ps.ps')
生成一个descr文件和ps文件,7行7列的,黑点圆心为0.00375的,0.5直径除以距离的标定板。
将ps模板文件打印下来拍若干张图片,如下图所示。