由于相机透镜和装配过程中造成的误差,导致最终相机标定结果存在一定误差,为了降低误差提升标定精度,基于平面棋盘格标定法基础上最小化重投影误差对解算得到的标定参数进行非线性迭代求全局最优解。在分析相机的理论成像模型后以及对引入畸变参数后的非线性相机成像模型进行研究后求解得到相机变换矩阵和相机内参数,最后对标定结果进行优化。实验结果表明,该方法标定误差均值为0.1402,标准差为0.0207,相较于传统标定方法具有更高的精度和更好的稳定性,具有一定的工程实践意义。 In order to reduce the error and improve the calibration accuracy, the calibration parameters obtained by the solution are nonlinear iteratively based on the plane checkerboard calibration method to minimize the reprojection error and find the global optimal solution. After analyzing the theoretical imaging model of the camera and studying the nonlinear camera imaging model after introducing distortion parameters, the camera transformation matrix and the parameters in the camera are solved, and finally the calibration results are optimized. The experimental results show that the mean calibration error of this method is 0.1402 and the standard deviation is 0.0207, which has higher accuracy and better stability than the traditional calibration method and has certain engineering practical significance.
由于相机透镜和装配过程中造成的误差,导致最终相机标定结果存在一定误差,为了降低误差提升标定精度,基于平面棋盘格标定法基础上最小化重投影误差对解算得到的标定参数进行非线性迭代求全局最优解。在分析相机的理论成像模型后以及对引入畸变参数后的非线性相机成像模型进行研究后求解得到相机变换矩阵和相机内参数,最后对标定结果进行优化。实验结果表明,该方法标定误差均值为0.1402,标准差为0.0207,相较于传统标定方法具有更高的精度和更好的稳定性,具有一定的工程实践意义。
相机标定,图像畸变,重投影误差
Yangyang Hou, Yu Zeng
State Nationalities Commission Key Laboratory of Electronic Information Engineering, Southwest Minzu University, Chengdu Sichuan
Received: Dec. 11th, 2022; accepted: Jan. 1st, 2023; published: Jan. 12th, 2023
In order to reduce the error and improve the calibration accuracy, the calibration parameters obtained by the solution are nonlinear iteratively based on the plane checkerboard calibration method to minimize the reprojection error and find the global optimal solution. After analyzing the theoretical imaging model of the camera and studying the nonlinear camera imaging model after introducing distortion parameters, the camera transformation matrix and the parameters in the camera are solved, and finally the calibration results are optimized. The experimental results show that the mean calibration error of this method is 0.1402 and the standard deviation is 0.0207, which has higher accuracy and better stability than the traditional calibration method and has certain engineering practical significance.
Keywords:Camera Calibration, Image Distortion, Reprojection Error
Copyright © 2023 by author(s) and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
随着计算机视觉的发展,如何从相机拍摄的二维图像信息获取三维空间物体的信息是进行后续工作的前提。通维平面之间的转换关系即相机内外参数,相机标定也就是求解相机内外参数的过程,其标定结果的精度和算法的稳过相机标定构建成像几何模型可以获取三维立体空间和二定的稳定性和精度就显得尤为重要。目前针对常规的相机标定方法应用已较为广泛,但随着成像系统的应用场景逐渐复杂,常规的标定方法效果逐渐不足。Meng等 [
本文在张氏标定法的基础上,对非线性相机成像模型进行研究后最小化相机的重投影误差,得到优化后的相机内外参数并求解径向和切向畸变对标定图像进行畸变校正。最后通过实验验证该方法求解的准确性。
我们拍摄的物体都是处于三维世界坐标系中,而相机拍摄时镜头看到的是三维相机坐标系,成像时三维相机坐标系向二维图像坐标系转换。相机标定的过程要经过几个坐标系之间的转换,从世界坐标系 ( X w , Y w , Z w ) 、相机坐标系 ( X c , Y c , Z c ) 、图像坐标系 ( X , Y ) 、像素坐标系 ( U , V ) 。理想情况下相机成像就是一个针孔模型,由三维空间中一点P经过相机光心投射。图1展示的就是在空间坐标系中的一点P先转换为相机坐标系下P1点,然后转换成图像坐标下的P2 [
图1. 相机坐标系转换图
在理想情况下,可以得到从3D坐标点在相机坐标系下的坐标转换成2D图像坐标之间的关系式。
X c x = Z c f = Y c y (1)
x = f X c Z c , y = f Y c Z c (2)
Z c [ x y 1 ] = [ f 0 0 0 0 f 0 0 0 0 1 0 ] [ X c Y c Z c 1 ] (3)
根据相似三角形定理由式(1)可推导得到式(2)其中f是相机焦距,将其整理为矩阵等式得到从相机坐标系到图像坐标系之间转换关系。
理想状态下图像坐标系和相机坐标系原点重合,但实际成像过程中图像坐标系往往在图像左上角,两坐标系原点位置不一致,涉及到伸缩变换及平移变换如图2所示。
图2. 像素坐标系转换图
{ u = x d x + u 0 v = y d y + v 0 (4)
[ u v 1 ] = [ 1 d y 0 u 0 0 1 d y v 0 0 0 1 ] [ x y 1 ] (5)
式(4)为在考虑原点偏移后图像坐标和像素坐标的关系,dx和dy为x,y方向上的一个像素的物理尺寸,u和v (像素为单位)是图像原点相对于光心成像点的纵横偏移量。将其整理为矩阵方程形式如式(5)所示。
从世界坐标系到相机坐标系属于刚体变换,丛数学角度来说刚体运动的坐标变换可以分解为旋转和平移连个运动,他与相机内部参数没有关系,只与相机在世界坐标系下的位置与角度有关故又称为相机外参。
[ X c Y c Z c ] = R [ X w Y w Z w ] + T (6)
[ X c Y c Z c 1 ] = [ R T 0 1 ] [ X w Y w Z w 1 ] (7)
式(6)描述的就是刚体运动,其中,R为旋转矩阵,是一个3 × 3的正交矩阵,T是一个3 × 1的平移向量,整理得到式(7)。
综上所述,我们可以看出四个坐标系之间存在下述关系:
Z c [ u v 1 ] = [ f x 0 u 0 0 0 f y v 0 0 0 0 1 0 ] ︸ 相 机 内 参 [ R 3 × 3 T 3 × 1 0 1 ] ︸ 相 机 外 参 [ X w Y w Z w 1 ] (8)
由于不同镜头成像时的转换矩阵不同,同时可能引入失真,张氏标定法 [
设 ( u , v ) 为理想无畸变的像素坐标, ( u ⌣ , v ⌣ ) 式实际观测到的像素坐标。 ( x ⌣ , y ⌣ ) 和 ( x , y ) 为实时有畸变和理想无畸变的图像坐标,将式(9)代入可构建畸变模型式(10)。
{ u ⌣ = u 0 + α x ⌣ + γ y ⌣ v ⌣ = v 0 + β y ⌣ (9)
{ u ⌣ = u + ( u − u 0 ) [ k 1 ( x 2 + y 2 ) + k 2 ( x 2 + y 2 ) 2 ] + p 1 ( 3 x 2 + y 2 ) + 2 p 2 x y v ⌣ = v + ( v − v 0 ) [ k 1 ( x 2 + y 2 ) + k 2 ( x 2 + y 2 ) 2 ] + p 2 ( x 2 + 3 y 2 ) + 2 p 1 x y (10)
其中包括相机的径向畸变系数k1,k2,和相机的切向畸变系数p1,p2。
获取近似估算得到的相机内外参系数以及畸变系数,通过最小化重投影误差,对参数进行非线性优化。重投影误差是计算的像素坐标理论值与实际坐标之间的差值,构建极大似然估计方程如式(11)所示。
min ∑ i = 1 n ∑ j = 1 m ‖ m i j − m ˜ ( R i , t i , k , p , M i j ) ‖ 2 (11)
其中n为采集图片数,m为棋盘格角点数;mij是实际坐标值,Mij表示三维坐标,Ri是旋转向量,ti是平移向量。代入初值不断迭代求解,当此式取到最小值时得到相机外参的全局最优解 [
e r r = 1 m n min ∑ i = 1 n ∑ j = 1 m ‖ m i j − m ˜ ( R i , t i , k , p , M j ) ‖ 2 1 / 2 (12)
式(11)为重投影误差的最小值,将其和整个像素平面比较,计算得到单位像素下的重投影误差式(12)并以此式作为标定参数最终结果。
为了验证本文方法的准确性进行了相机标定实验,实验使用了13 cm × 14 cm的黑白棋盘格以及大华工业相机A3B系列600 w像素加25 mm变焦镜头如图3所示。
图3. 标定板与相机
实验过程中将棋盘格固定在一个平面上,移动相机获取不同角度下标定板的图片,为了尽可能避免因操作过程引入的误差对最终结果的影响,从20张照片中随机抽取10组数据进行了相机标定。标定过程中对棋盘格的角点进行提取如图4所示。
图4. 标定板角点图
由于相机内参数通常是与相机自身特性相关的参数,比如相机的焦距、像素大小等决定一般是一个定值。最终解算得到的相机内参数和畸变系数如表1所示。
内参系数 | 畸变系数 |
---|---|
fx = 657.5563,fy = 658.0860 | k1 = 0.22000,k2 = 0.23346 |
u0 = 303.6670,v0 = 244.8920 | p1 = 0.13572,p2 = 0.14620 |
表1. 相机内参和畸变系数
由于在相机不同姿态角下的标定板外参各不相同,本次从14组数据中取得四组外参数据
T 1 = [ 0.9921 0.5231 0.1136 − 147.5905 0.0548 0.6351 − 0.7705 − 71.3822 − 0.1125 − 0.7707 0.6272 710.6725 0 0 0 1 ]
T 2 = [ 0.9927 0.0566 0.1068 − 128.7775 0.0054 0.8621 − 0.5066 − 134.2187 − 0.1208 − 0.5035 0.8555 630.8953 0 0 0 1 ]
T 3 = [ 0.9857 0.1661 0.0301 − 103.9663 − 0.1585 0.8497 − 0.5029 − 146.9009 − 0.0580 − 0.5005 0.8638 645.7499 0 0 0 1 ]
T 4 = [ 0.9015 0.0030 0.4328 − 53.3639 0.2251 0.5874 − 0.7774 − 130.5077 − 0.3497 − 0.5443 0.5853 648.7138 0 0 0 1 ]
将拍摄到的14张不同角度的标定板图像分别使用本文方法和传统标定方法进行相机标定,得到的单幅图像的像素误差对比如图5所示,同时将得的实验数据具体数值如表2所示。
图5. 标定误差对比图
均值 | 最大值 | 最小值 | 标准差 | |
---|---|---|---|---|
本文方法 | 0.1402 | 0.17934 | 0.11927 | 0.0207 |
传统方法 | 0.4638 | 0.53197 | 0.32875 | 0.0600 |
表2. 坐标误差结果
从图5可以看出使用本文方法得到的标定结果的像素误差值远小于使用传统方法标定的像素误差。且从表2中可以看出本文方法最终标定得到像素误差平均值为0.1402,误差范围在0.11927~0.17934之间,标准误差为0.0207,传统方法标定得到的均值为0.5738,误差范围为0.42875~0.69197,标准差为0.08。本文方法较传统方法在平均精度提升了43%,稳定性提升了66%。故而通过本方法对相机进行标定后得到的标定结果具有较高的精度与稳定性。
图6. 重投影误差图
图6为根据公式(12)计算得到的最终标定的重投影误差。通过解算得到的相机内外参数和畸变系数计算得到的像素点坐标的理论值和像素点实际坐标点之间差值就是重投影差值,重投影误差值越小说明计算得到的理论值越接近实际观测值,计算值越准确。从图中我们可以看出大部分像素点集中分布在在坐标原点处,仅有少部分点偏移量较大。所以本次标定数据大部分的值都十分接近真实坐标值。标定的结果具有较高的精度与稳定性。由于标定过程中的操作不当导致的一些误差,通过实验过程中发现在标定过程中时标定板与成像平面之间的夹角不能太小,如果夹角较小时,会导致较大误差。并且标定图片中尽量包括各种相机姿态下拍摄的标定板图片,一般来说十几张图像的标定效果最优。
本文根据相机针孔成像模型,构建坐标转换关系式,进而解算得到相机标定参数再通过LM对参数进行优化。通过最终的实验结果也表明在存在一定的操作误差的情况下,有效的避免了因相机畸变造成实际值与理论值出入过大,相比于传统标定方法,本方法在精度和稳定性上都有较好的提升。但是单相机视野范围有限,三维坐标信息残缺对最终标定精度存在一定影响,后续针对这个问题还会进行相关工作研究。
侯阳阳,曾 裕. 单目视觉相机标定方法研究Research on the Method of Monocular Camera Calibration[J]. 图像与信号处理, 2023, 12(01): 32-39. https://doi.org/10.12677/JISP.2023.121004