发明名称 一种高精度的摄像机动态标定方法
摘要 一种高精度的摄像机动态标定方法,属于图像处理与机器视觉检测技术领域。棋盘格靶标图像X型标定点的检测;棋盘格靶标X型标定点的高精度定位;基于非量测畸变校正的摄像机标定;摄像机动态标定。本方法稳定、可靠、实用,可同时适用于简单背景与复杂背景及大视场条件下的摄像机标定。本方法标定过程简单、实时性好,对于序列图像中的靶标特征区域只需对第一帧图像靶标区域进行匹配,只需任意i帧单幅图像即可完成单次摄像机标定,确定对应的单应性矩阵H<sub>i</sub>。本方法不存在参数耦合,整个标定过程仅仅只需求解与优化单个畸变系数。本发明通过靶标标定点的高精度定位与非线性摄像机成像模型畸变系数的优化方法提高标定精度。
申请公布号 CN106504290A 申请公布日期 2017.03.15
申请号 CN201610918342.0 申请日期 2016.10.20
申请人 北京化工大学;中国计量科学研究院 发明人 王颖;杨明;蔡晨光;刘志华;梁东杰
分类号 G06T7/80(2017.01)I 主分类号 G06T7/80(2017.01)I
代理机构 北京思海天达知识产权代理有限公司 11203 代理人 沈波
主权项 一种高精度的摄像机动态标定方法,该方法是基于以下特征实现的,棋盘格靶标图像X型标定点的检测:用于复杂背景与大视场等条件下的靶标X型标定点检测,包括:基于一组模板图像的靶标区域检测,靶标区域内的X型标定点检测;棋盘格靶标X型标定点的高精度定位:用于靶标X型标定点的亚像素定位,以提高摄像机标定精度;基于非量测畸变校正的摄像机标定:用于实现非线性成像模型的摄像机标定,包括:畸变参数的求取与优化,确定靶标图像的图像坐标与世界坐标的单应性矩阵H<sub>i</sub>;摄像机动态标定:基于采集到的平面运动靶标序列图像,实现平面运动图像的摄像机动态标定,确定平面运动图像靶标的图像坐标与其世界坐标的最佳单应性矩阵H;其特征在于:该方法包括以下步骤,S1:利用模板图像匹配的方法确定标定图像中的棋盘格靶标区域,通过棋盘格X型标定点检测方法剔除边缘畸变较大的棋盘格外标定点与噪声点;S2:基于高斯曲面优化算法提高棋盘格靶标X型标定点的定位精度;S3:基于非量测畸变校正的摄像机标定方法实现摄像机标定,引入畸变模型与畸变系数优化模型提高摄像机标定精度;S4:最后通过采集到的平面运动靶标序列图像完成摄像机的动态标定,确定平面运动图像的图像坐标与世界坐标对应的最佳单应性矩阵H;所述标定点检测方法是用于确定摄像机标定所需靶标X型标定点的图像坐标;具体包括:(1)标定图像的采集;调整棋盘格靶标的成像位置与摄像机镜头焦距,充分保证视场中的棋盘格靶标区域是完整与无遮挡的,以采集用于动态标定的序列图像;(2)确定棋盘格靶标特征区域;选定一组不同尺寸大小的模板图像{T<sub>i</sub>},然后使用归一化相关性计算确定最佳匹配区域,归一化相关性计算公式如下:<maths num="0001"><math><![CDATA[<mrow><mi>R</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><munder><mo>&Sigma;</mo><mi>x</mi></munder><munder><mo>&Sigma;</mo><mi>y</mi></munder><mo>&lsqb;</mo><mi>S</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><mover><mi>S</mi><mo>&OverBar;</mo></mover><mo>&rsqb;</mo><mo>&lsqb;</mo><mi>T</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><mover><mi>T</mi><mo>&OverBar;</mo></mover><mo>&rsqb;</mo></mrow><msqrt><mrow><mo>(</mo><munder><mo>&Sigma;</mo><mi>x</mi></munder><munder><mo>&Sigma;</mo><mi>y</mi></munder><msup><mrow><mo>&lsqb;</mo><mi>S</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><mover><mi>S</mi><mo>&OverBar;</mo></mover><mo>&rsqb;</mo></mrow><mn>2</mn></msup><mo>)</mo><mo>(</mo><munder><mo>&Sigma;</mo><mi>x</mi></munder><munder><mo>&Sigma;</mo><mi>y</mi></munder><msup><mrow><mo>&lsqb;</mo><mi>T</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><mover><mi>T</mi><mo>&OverBar;</mo></mover><mo>&rsqb;</mo></mrow><mn>2</mn></msup><mo>)</mo></mrow></msqrt></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001135280690000021.GIF" wi="1453" he="280" /></maths>其中,(x,y)为模板图像与标定图像对应的像素位置坐标,S(x,y)与T(x,y)分别为标定图像与模板图像在像素(x,y)处的灰度值,<img file="FDA0001135280690000022.GIF" wi="45" he="61" />与<img file="FDA0001135280690000023.GIF" wi="43" he="55" />分别为标定图像与模板图像的灰度平均值,R(x,y)为像素(x,y)处的归一化相关系数,将模板中的最大相关系数作为最佳匹配结果,经不同模板图像的相似性匹配后可准确确定标定图像中的棋盘格靶标特征区域;(3)棋盘格靶标图像X型标定点的检测;仅使用棋盘格靶标的X型标定点作为摄像机标定点;依据棋盘格靶标图像X型标定点附近的灰度分布提出一种SSDC算子仅保留靶标X型标定点;<maths num="0002"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><mi>S</mi><mi>S</mi><mo>=</mo><mo>|</mo><mrow><mo>(</mo><msub><mi>S</mi><mn>1</mn></msub><mo>+</mo><msub><mi>S</mi><mn>3</mn></msub><mo>)</mo></mrow><mo>-</mo><mrow><mo>(</mo><msub><mi>S</mi><mn>2</mn></msub><mo>+</mo><msub><mi>S</mi><mn>4</mn></msub><mo>)</mo></mrow><mo>|</mo><mo>,</mo><mi>S</mi><mi>D</mi><mo>=</mo><mo>|</mo><mrow><mo>(</mo><msub><mi>S</mi><mn>1</mn></msub><mo>-</mo><msub><mi>S</mi><mn>3</mn></msub><mo>)</mo></mrow><mo>+</mo><mrow><mo>(</mo><msub><mi>S</mi><mn>2</mn></msub><mo>-</mo><msub><mi>S</mi><mn>4</mn></msub><mo>)</mo></mrow><mo>|</mo></mrow></mtd></mtr><mtr><mtd><mrow><mi>S</mi><mi>S</mi><mi>D</mi><mi>C</mi><mo>=</mo><mrow><mo>(</mo><mi>S</mi><mi>S</mi><mo>-</mo><mi>S</mi><mi>D</mi><mo>)</mo></mrow><mo>/</mo><mi>N</mi></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001135280690000026.GIF" wi="1421" he="167" /></maths>其中,S<sub>1</sub>、S<sub>2</sub>、S<sub>3</sub>、S<sub>4</sub>分别为棋盘格X型标定点的一、二、三、四象限内的整体像素灰度值之和,N为象限内的像素数,通过SSDC值的大小判断可以准确得到棋盘格X型标定点;所述棋盘格靶标X型标定点的定位精度为像素级,基于X型标定点附近的灰度梯度特点实现X型标定点的亚像素级精度定位,X型标定点的亚像素坐标计算如下:<maths num="0003"><math><![CDATA[<mrow><mi>l</mi><mi>n</mi><mrow><mo>(</mo><mi>C</mi><mo>)</mo></mrow><mo>=</mo><mo>-</mo><mfrac><mrow><msup><mrow><mo>(</mo><mi>x</mi><mo>-</mo><msub><mi>x</mi><mn>0</mn></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><mi>y</mi><mo>-</mo><msub><mi>y</mi><mn>0</mn></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow><mrow><mn>2</mn><msup><mi>&sigma;</mi><mn>2</mn></msup></mrow></mfrac><mo>+</mo><mi>l</mi><mi>n</mi><mrow><mo>(</mo><mfrac><mi>a</mi><mrow><mn>2</mn><msup><mi>&pi;&sigma;</mi><mn>2</mn></msup></mrow></mfrac><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001135280690000024.GIF" wi="1307" he="147" /></maths><maths num="0004"><math><![CDATA[<mrow><mo>{</mo><mrow><mtable><mtr><mtd><mrow><mi>y</mi><mo>=</mo><mi>k</mi><mi>x</mi><mo>+</mo><msub><mi>y</mi><mn>1</mn></msub><mo>-</mo><msub><mi>kr</mi><mn>1</mn></msub></mrow></mtd></mtr><mtr><mtd><mrow><mi>y</mi><mo>=</mo><mo>-</mo><mfrac><mn>1</mn><mi>k</mi></mfrac><mi>x</mi><mo>+</mo><msub><mi>y</mi><mn>0</mn></msub><mo>+</mo><mfrac><mn>1</mn><mi>k</mi></mfrac><msub><mi>x</mi><mn>0</mn></msub></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo></mrow><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001135280690000025.GIF" wi="1086" he="205" /></maths>其中,σ为拟合高斯曲面方差,(x<sub>0</sub>,y<sub>0</sub>)与(x,y)分别为所求高斯曲面极值点坐标与X型标定点及附近点像素坐标,a为常数,C为S(x,y)处的梯度值,通过最小二乘拟合得到高斯曲面极值点坐标,将该极值点作为初始亚像素坐标;(x<sub>1</sub>,y<sub>1</sub>)为X型标定点像素级坐标,k为该X型标定点处梯度方向对应的斜率,结合该点的梯度矢量进一步提高标定点定位精度;当所述摄像机的成像模型为线性模型时,其标定过程如下:<maths num="0005"><math><![CDATA[<mrow><mi>&rho;</mi><mfenced open = "[" close = "]"><mtable><mtr><mtd><mi>x</mi></mtd></mtr><mtr><mtd><mi>y</mi></mtd></mtr><mtr><mtd><mn>1</mn></mtd></mtr></mtable></mfenced><mo>=</mo><mi>A</mi><mo>&lsqb;</mo><mtable><mtr><mtd><mi>R</mi></mtd><mtd><mi>T</mi></mtd></mtr></mtable><mo>&rsqb;</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><msub><mi>x</mi><mi>w</mi></msub></mtd></mtr><mtr><mtd><msub><mi>y</mi><mi>w</mi></msub></mtd></mtr><mtr><mtd><mn>1</mn></mtd></mtr></mtable></mfenced><mo>=</mo><mi>H</mi><mfenced open = "[" close = "]"><mtable><mtr><mtd><msub><mi>x</mi><mi>w</mi></msub></mtd></mtr><mtr><mtd><msub><mi>y</mi><mi>w</mi></msub></mtd></mtr><mtr><mtd><mn>1</mn></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001135280690000031.GIF" wi="1198" he="222" /></maths>其中,A为摄像机内参数矩阵,[R T]为摄像机外参数矩阵,H为对应的单应性矩阵,(x<sub>w</sub>,y<sub>w</sub>)为像素坐标(x,y)对应的世界坐标;当所述摄像机的成像模型为非线性成像模型,通过非量测的镜头畸变校正最大化的减小摄像机成像模型的非线性度;所述畸变模型为一阶畸变系数的单参数除式畸变模型,即<maths num="0006"><math><![CDATA[<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>x</mi><mi>u</mi></msub><mo>=</mo><mfrac><msub><mi>x</mi><mi>d</mi></msub><mrow><mn>1</mn><mo>+</mo><msubsup><mi>&lambda;r</mi><mi>d</mi><mn>2</mn></msubsup></mrow></mfrac></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>y</mi><mi>u</mi></msub><mo>=</mo><mfrac><msub><mi>y</mi><mi>d</mi></msub><mrow><mn>1</mn><mo>+</mo><msubsup><mi>&lambda;r</mi><mi>d</mi><mn>2</mn></msubsup></mrow></mfrac></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001135280690000032.GIF" wi="1006" he="295" /></maths>其中,<img file="FDA0001135280690000033.GIF" wi="262" he="70" />(x<sub>u</sub>,y<sub>u</sub>)与(x<sub>d</sub>,y<sub>d</sub>)分别为校正后的无畸变图像坐标点与实际图像坐标点,λ为畸变系数;所述畸变参数优化模型为<maths num="0007"><math><![CDATA[<mrow><mi>min</mi><munder><mo>&Sigma;</mo><mi>j</mi></munder><mo>|</mo><mo>|</mo><msub><mi>x</mi><mi>w</mi></msub><mo>-</mo><msub><mi>x</mi><mrow><mi>w</mi><mo>_</mo><mi>p</mi><mi>r</mi><mi>o</mi><mi>j</mi></mrow></msub><mo>|</mo><mo>|</mo><mo>+</mo><mo>|</mo><mo>|</mo><msub><mi>y</mi><mi>w</mi></msub><mo>-</mo><msub><mi>y</mi><mrow><mi>w</mi><mo>_</mo><mi>p</mi><mi>r</mi><mi>o</mi><mi>j</mi></mrow></msub><mo>|</mo><mo>|</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001135280690000034.GIF" wi="1221" he="118" /></maths>其中,(x<sub>w</sub>,y<sub>w</sub>)为棋盘格靶标图像标定点对应的世界坐标点,(x<sub>w_proj</sub>,y<sub>w_roj</sub>)为包含待优化畸变参数的重投影世界坐标点,j为优化坐标点数;通过所述摄像机动态标定方法求取采集到的平面运动靶标序列图像的图像坐标与世界坐标对应的单应性矩阵{H<sub>i</sub>},将序列图像的单应性矩阵{H<sub>i</sub>}的加权平均作为平面运动的最佳摄像机标定单应性矩阵H,以实现平面运动序列图像的摄像机动态标定。
地址 100029 北京市朝阳区北三环东路18号