基于相机平移矩阵奇异值分解的极线校正

李守业, 胡茂海, 李天冉, 段哲一

李守业, 胡茂海, 李天冉, 段哲一. 基于相机平移矩阵奇异值分解的极线校正[J]. 红外技术, 2024, 46(2): 155-161.
引用本文: 李守业, 胡茂海, 李天冉, 段哲一. 基于相机平移矩阵奇异值分解的极线校正[J]. 红外技术, 2024, 46(2): 155-161.
LI Shouye, HU Maohai, LI Tianran, DUAN Zheyi. Epipolar Rectification Based on Singular Value Decomposition of Camera Translation Matrix[J]. Infrared Technology , 2024, 46(2): 155-161.
Citation: LI Shouye, HU Maohai, LI Tianran, DUAN Zheyi. Epipolar Rectification Based on Singular Value Decomposition of Camera Translation Matrix[J]. Infrared Technology , 2024, 46(2): 155-161.

基于相机平移矩阵奇异值分解的极线校正

详细信息
    作者简介:

    李守业(1999-)男,硕士研究生,主要研究方向为机器视觉。E-mail: lsy@njust.edu.cn

    通讯作者:

    胡茂海(1967-)男,博士,副教授,主要研究方向为机器视觉、高速数据采集。E-mail: hmh@njust.edu.cn

  • 中图分类号: TP391.4

Epipolar Rectification Based on Singular Value Decomposition of Camera Translation Matrix

  • 摘要: 极线校正是一种针对双目相机原始图像对的投影变换方法, 使校正后图像对应的极线位于同一水平线上,消除垂直视差,将立体匹配优化为一维搜索问题。针对现今极线校正的不足,本文提出一种基于双目相机平移矩阵的极线校正方法:首先利用奇异值分解(singular value decomposition, SVD)平移矩阵,求得校正后的新旋转矩阵;其次通过校正前后的图像关系确立一个新相机内参矩阵,完成极线校正。运用本文方法对SYNTIM数据库的不同场景多组双目图像进行验证,实验结果表明平均校正误差在0.6像素内,图像几乎不产生畸变,平均偏斜在2.4°左右,平均运行时间为0.2302 s,该方法具有应用价值,完全满足极线校正的需求,解决了双目相机在立体匹配过程中由于相机的机械偏差而产生的误差和繁琐的计算过程。
    Abstract: Epipolar rectification is a projection transformation method for the original image pair of a binocular camera such that the corresponding polar lines of the corrected image are on the same horizontal line, no vertical parallax occurs, and stereo-matching is optimized as a one-dimensional search problem. A polar correction method based on a binocular camera translation matrix is proposed to address the shortcomings of current polar correction methods. First, the new corrected rotation matrix is derived using the translation matrix of singular value decomposition. Second, a new camera internal reference matrix is established based on the image relationship before and after correction to complete the polar correction. The proposed method was used to verify multiple groups of binocular images in different scenes in the SYNTIM database. The experimental results show that the average correction error is within 0.6 pixels. The image produces minimal distortion, and the average deviation is approximately 2.4°. The average operation time is 0.2302 s. With its application value, this method fully satisfies polar correction requirements, solves the error, and improves the tedious calculation process caused by the mechanical deviation of the camera during the stereo matching of binocular cameras.
  • 立体视觉技术已经应用于生活和生产的各个领域[1-4]。立体匹配是在双目图像中寻找同名点的过程,是立体视觉的核心问题。在实际应用中,由于相机结构的误差,很难保证两个相机的主轴完全理想平行,因此直接对图像进行立体匹配非常耗时,而且误差较大。极线校正可以对双目图像进行校正投影变换,使图像投影到公共的平行相机基线的空间平面,对应的极线位于同一水平线上,并且没有垂直视差,从软件层面校正了机械上的偏差。这样立体匹配问题可以优化为一维扫描线上的搜索问题,缩短匹配所需的时间,提高匹配的精度。

    目前,国内外学者已提出了各类极线校正算法。Bouguet等提出了一种先将左右相机旋转到同一平面再进行校正的算法[5];Andrea Fusiello等提出了一种立体图像对的外极线校正方法,该方法通过基于6个自由度的代价函数的最小化,强制执行由无穷远处平面引起的校正变换[6];Hartley等提出的校正方法中右视图的变换是由基本矩阵推导出的,并且接近于图像中心附近的刚性变换,但左校正图像通常有较大的仿射失真[7-9],林国余等对该算法进行了改进[10],提高了校正的精度,减小了校正图像失真;John Mallon等提出了一种基于估计的基本矩阵从不同的角度对立体图像进行未校准平面校正的鲁棒方法[11];Wenhuan Wu等提出了一种对具有已知固有参数的两种不同相机拍摄的一对立体图像进行极线校正的方法,利用基于估计的基础矩阵的向量值,得到了两个校正变换的封闭解析解[12]。各类算法虽然能够完成双目图像的极线校正,但是在面对左右相机内参、外参相差过大等情况时,仍然存在校正精度低、图像形变严重、算法运行缓慢等缺点。

    为了弥补上述算法的不足,本文提出了一种基于相机平移矩阵奇异值分解的极线校正方法。实验结果表明本文算法具有高鲁棒性,实现简单,运行速度快,实现了高精度低畸变的双目图像极线校正,可以有效完成后续的立体匹配过程。

    对极几何描述了两幅视图之间的内在映射关系,在立体视觉中占据了重要的地位。如图 1所示,物点P在两幅图像上所呈的像点分别是P1P2。点PP1P2与相机光心C1C2是共面的,这5个点组成的平面为极平面πC1C2的连线是基线。右相机的光心C2在左相机的像平面的像点e1称为左极点,左相机的光心C1在右相机的像平面的像点e2称为右极点。P1e1的连线是左极线I1P2e2的连线是右极线I2。双目相机原始图像中,极线I1I2存在着垂直视差,不利于立体匹配的搜索过程;经过极线校正后,图像的极线平行,有助于立体匹配的计算。

    图  1  对极几何
    Figure  1.  Epipolar geometry

    任意对应的像点P1P2,它们总是满足一个关系式:

    $$ {\boldsymbol{P}_2}^{\rm{T}}{\boldsymbol{F}}{\boldsymbol{P}_1} = 0 $$ (1)

    式中:F是一个3×3的2秩矩阵,约束了一对像点的位置关系,称作基础矩阵。假设Il是左图像的一条极线,那么FIlIr是另一图像对应的外极线。极点与基础矩阵满足:Fe1=0=FTe2。假设K1K2分别是左右相机的内参矩阵;RT分别是双目相机间相对的旋转矩阵和平移向量;a是一个任意常数,代表比例因子,基础矩阵的表达式为:

    $$ {\boldsymbol{F = }}a{{\boldsymbol{K}}_2}^{ - T}{\boldsymbol{R}}{\left[ {\boldsymbol{T}} \right]_x}{{\boldsymbol{K}}_1}^{ - 1} $$ (2)

    F包含了相机的内参和外参。[T]x是平移向量T的反对称形式,称为平移矩阵,[T]x的表达式为:

    $$ {\left[ \boldsymbol{T} \right]_x} = \left[ {\begin{array}{*{20}{c}} 0&{ - {T_z}}&{{T_y}} \\ {{T_z}}&0&{ - {T_x}} \\ { - {T_y}}&{{T_x}}&0 \end{array}} \right] $$ (3)

    EK2TFK1,得到本质矩阵E,只包含相机的外参,表达式为:

    $$ \boldsymbol{E}=a\boldsymbol{R}[\boldsymbol{T}]_{x} $$ (4)

    本文极线校正的流程如图 2所示,第一步:计算一个新的旋转矩阵Rn,校正后的左右相机旋转矩阵为Rn,图像极点在无穷远处并且极线平行;第二步:确定校正后双目相机的新内参矩阵Mn;第三步:原像素坐标系的像点P1P2通过内参矩阵M1M2得到归一化坐标表示的图像点m1M1-1P1m2M2-1P2,再通过变换矩阵RLRR将归一化坐标m1m2转换到校正后的相机坐标系中,乘以物点在新的相机坐标系的Z向量的倒数α1α2,得到新相机坐标系中的归一化坐标m1′=α1RLm1m2′=α2RRm2;第四步:通过新的内参矩阵Mn将点m1′、m2′转换到新的像素坐标系上,得到校正点P1′=Mnm1′、P2′=Mnm2′。左右图像校正的变换矩阵H1H2表达式分别为:

    $$ {\mathit{\boldsymbol{H}}_1} = {a_1}{\mathit{\boldsymbol{M}}_n}{\mathit{\boldsymbol{R}}_n}\mathit{\boldsymbol{R}}_1^{ - 1}\mathit{\boldsymbol{M}}_1^{ - 1} = {a_1}{\mathit{\boldsymbol{M}}_n}{\mathit{\boldsymbol{R}}_{\rm{L}}}\mathit{\boldsymbol{M}}_1^{ - 1} $$
    $$\boldsymbol{H}_2=\alpha_2 \boldsymbol{M}_n \boldsymbol{R}_n \boldsymbol{R}_2^{-1} \boldsymbol{M}_2^{-1}=\alpha_2 \boldsymbol{M}_n \boldsymbol{R}_{\mathrm{R}} \boldsymbol{M}_2^{-1}$$
    图  2  极线校正流程
    Figure  2.  Epipolar correction process

    本文在2.1小节给出求解Rn的方法,在2.2小节给出求解Mn的方法。

    Mn是校正过的内参矩阵,Rn是校正过的旋转矩阵,M1M2R1R2分别是左右相机的内参矩阵和旋转矩阵,RLRR分别是左右相机的变换矩阵,F0是校正后的基础矩阵,α1α2是校正过程中物点在校正的相机坐标系RnZ向量的倒数。像点P1P2,在经过极线校正后有:

    $$\left(\boldsymbol{H}_2 \boldsymbol{P}_2\right)^{\mathrm{T}} \boldsymbol{F}_0 \boldsymbol{H}_1 \boldsymbol{P}_1=0$$ (5)

    极线校正后的理想双目相机极线平行,极点e1e2a[1 0 0]Ta为任意常数,基础矩阵F0可以表示为:

    $$ {{\boldsymbol{F}}_0} = \left[ {\begin{array}{*{20}{c}} 0&0&0 \\ 0&0&1 \\ 0&{ - 1}&0 \end{array}} \right] $$

    结合基础矩阵约束关系(3),可以得到:H2TF0H1F代入H1H2,得到:

    $$ \mathit{\boldsymbol{R}}_n^{\rm{T}}\mathit{\boldsymbol{M}}_n^{\rm{T}}{\mathit{\boldsymbol{F}}_0}{\mathit{\boldsymbol{M}}_n}{\mathit{\boldsymbol{R}}_n} = \mathit{\boldsymbol{R}}_2^{\rm{T}}\mathit{\boldsymbol{M}}_2^{\rm{T}}\mathit{\boldsymbol{F}}{\mathit{\boldsymbol{M}}_1}{\mathit{\boldsymbol{R}}_1} $$ (6)

    根据基础矩阵和本质矩阵的转换关系,式(6)等式右侧可以转换为:

    $$ \begin{aligned} & \boldsymbol{R}_2^{\mathrm{T}} \boldsymbol{M}_2^{\mathrm{T}} \boldsymbol{F} \boldsymbol{M}_1 \boldsymbol{R}_1=\boldsymbol{R}_2^{\mathrm{T}} \boldsymbol{E} \boldsymbol{R}_1 \\ & =\boldsymbol{R}_2^{\mathrm{T}} \boldsymbol{R}[\boldsymbol{T}]_x \boldsymbol{R}_1 \\ & =\boldsymbol{R}_1^{\mathrm{T}}[\boldsymbol{T}]_x \boldsymbol{R}_1 \end{aligned} $$ (7)

    可以观察到[T]x是一个反对称矩阵,并且[T]x的奇异值是0、$\left| \boldsymbol{T} \right|$、$\left| \boldsymbol{T} \right|$。将(6)等式左侧转换为:

    $$ \begin{aligned} & \boldsymbol{R}_n^{\mathrm{T}} \boldsymbol{M}_n^{\mathrm{T}} \boldsymbol{F}_0 \boldsymbol{M}_n \boldsymbol{R}_n \\ & =\boldsymbol{R}_n^{\mathrm{T}}\left(\boldsymbol{M}_n\right)^{\mathrm{T}} \boldsymbol{F}_0 \boldsymbol{M}_n \boldsymbol{R}_n \\ & =\boldsymbol{R}_n^{\mathrm{T}} \boldsymbol{E}_0 \boldsymbol{R}_n \end{aligned} $$ (8)

    E0是理想的本质矩阵。初步设定校正过后的新内参矩阵焦距为$\sqrt {\left| \boldsymbol{T} \right|} $,倾斜因子S,主点坐标(U0, V0) =(0, 0),即:

    $$ {{\boldsymbol{M}}_n} = \left[ {\begin{array}{*{20}{c}} {\sqrt {\left| \boldsymbol{T} \right|} }&S&0 \\ 0&{\sqrt {\left| \boldsymbol{T} \right|} }&0 \\ 0&0&1 \end{array}} \right] $$ (9)

    那么E0的表达式为:

    $$ {{\boldsymbol{E}}_0} = \left[ {\begin{array}{*{20}{c}} 0&0&0 \\ 0&0&{\left| \boldsymbol{T} \right|} \\ 0&{ - \left| \boldsymbol{T} \right|}&0 \end{array}} \right] $$ (10)

    所以式(6)可以转换为:

    $$\boldsymbol{R}_n^{\mathrm{T}} \boldsymbol{E}_0 \boldsymbol{R}_n=\boldsymbol{R}_1^{\mathrm{T}}[\boldsymbol{T}]_x \boldsymbol{R}_1$$ (11)

    E0和[T]x的奇异值是相同的,都为:∂1=$ \left| \boldsymbol{T} \right| $,∂2=$ \left| \boldsymbol{T} \right| $,∂3=0。对E0和[T]x做奇异值分解,E0U1Σ1V1T,[T]xU2Σ2V2T,其中$ {{\boldsymbol{\varSigma }}_{\boldsymbol{1}}} = {{\boldsymbol{\varSigma }}_2} = {\rm diag}\left( {\left| \boldsymbol{T} \right|, \left| \boldsymbol{T} \right|, 0} \right) $。由于E0和[T]x都是反对称矩阵,可以得到U1V1U2V2。由此得到校正后旋转矩阵Rn为:

    $$ \begin{array}{l} {{\boldsymbol{R}}_n}^{\rm T}{{\boldsymbol{U}}_1}{{\boldsymbol{\varSigma }}_1}{\boldsymbol{U}}_1^{\rm T}{{\boldsymbol{R}}_n}{\boldsymbol{ = }}{{\boldsymbol{R}}_1}{{\boldsymbol{U}}_2}{\boldsymbol{\varSigma }_2}{{\boldsymbol{U}}_2}^{\rm T}{{\boldsymbol{R}}_1} \hfill \\ {{\boldsymbol{R}}_n}{\boldsymbol{ = }}{{\boldsymbol{U}}_1}{{\boldsymbol{U}}_2}^{\rm T}{{\boldsymbol{R}}_1} \hfill \\ \end{array} $$ (12)

    在实际的奇异值分解中,求得的平移矩阵[T]x奇异值∂1,∂2并不完全相等。为了减小校正的误差,本文定义一个奇异值的校正矩阵Q

    $$\boldsymbol{Q}=\left[\begin{array}{ccc}1 & 0 & 0 \\ 0 & \sqrt{\frac{\partial_2}{\partial_1}} & 0 \\ 0 & 0 & 1\end{array}\right], \quad \boldsymbol{\varSigma}_2=\boldsymbol{Q}^{\mathrm{T}} \boldsymbol{\varSigma}_1 \boldsymbol{Q}$$ (13)

    因此校正后的旋转矩阵Rn表示为:

    $$\boldsymbol{R}_n=\boldsymbol{U}_1 \boldsymbol{Q} \boldsymbol{U}_2^{\mathrm{T}} \boldsymbol{R}_1$$ (14)

    另外,对于任意围绕X轴旋转的旋转矩阵Rx,有RxTE0RxE0,这意味着,在校正过程中,有无数个可以使用的变换H1H2。为了使图像在旋转过程中畸变尽量小,要使校正过程中原始左相机绕X轴的旋转为0。旋转矩阵RL可以分解为围绕ZYX轴依次旋转的3个旋转矩阵。如果旋转分别围绕XYZ轴,欧拉角分别为ωθψ,则各矩阵如下:

    $$ {{\boldsymbol{R}}_x} = \left[ {\begin{array}{*{20}{c}} 1&0&0 \\ 0&{\cos \omega }&{\sin \omega } \\ 0&{ - \sin \omega }&{\cos \omega } \end{array}} \right] $$
    $$ {{\boldsymbol{R}}_y} = \left[ {\begin{array}{*{20}{c}} {\cos \theta }&0&{ - \sin \theta } \\ 0&1&0 \\ {\sin \theta }&0&{\cos \theta } \end{array}} \right] $$
    $$ {{\boldsymbol{R}}_z} = \left[ {\begin{array}{*{20}{c}} {\cos \psi }&{ - \sin \psi }&0 \\ {\sin \psi }&{\cos \psi }&0 \\ 0&0&1 \end{array}} \right] $$

    RL是先绕Z轴旋转,然后绕Y轴旋转,最后绕X轴旋转。

    $$ {{\boldsymbol{R}}_{\rm L}} = \left[ {\begin{array}{*{20}{c}} {\cos\theta \cos\psi }&{\cos\theta \sin\varphi }&{ - \sin\theta } \\ {\cos\psi \sin\omega \sin\theta - \cos\omega \sin\psi }&{\cos\omega \cos\psi + \sin\omega \sin\theta \sin\varphi }&{\cos\theta \sin\omega } \\ {\sin\omega \sin\psi + \cos\omega \cos\psi \sin\theta }&{\cos\omega \sin\theta \sin\psi - \cos\psi \sin\omega }&{\cos\omega \cos\theta } \end{array}} \right] $$ (15)

    对于左相机ω=artan(RL(2, 3)/RL(3, 3)),因此在校正后旋转矩阵Rn的左侧同时乘以RxT,以减小误差和畸变。因此Rn的表达式为:

    $$\boldsymbol{R}_n=\boldsymbol{R}_x^{\mathrm{T}} \boldsymbol{U}_1 \boldsymbol{Q} \boldsymbol{U}_2^{\mathrm{T}} \boldsymbol{R}_1$$ (16)

    前一节中,本文已经初步确定了新内参矩阵Mn,求出了H1α1MnRnR1-1M1-1H2α2MnRnR2-1M2-1。然而直接以H1H2对图像进行极线校正会产生3个问题:第一:没有合适的倾斜因子让图像的偏斜尽可能小;第二:新内参矩阵的焦距$\sqrt{|\boldsymbol{T}|}$如果与原来的相机焦距相差过大,会导致校正后的图像畸变;第三:新的内参矩阵直接将主点设置为(0, 0)会导致图像偏离视场中心。

    为此,本文提出了一个新内参矩阵确定标准:假设一幅M×N的图像,取原来图像中的4个点原点O(0, 0, 1)、行角点A(M, 0, 1)、列角点B(0, N, 1)、中心点G(M/2, N/2, 1)。这4个点经过校正变换H1后分别为:A1B1C1G1

    第一步确定倾斜因子S。假设点ABO经过Htα1RnR1-1M1-1变换到校正相机坐标系归一化坐标后坐标分别为A′、B′、O′,AO′=(x1, y1, 0),BO′=(x2, y2, 0)。使图像的偏斜尽可能小,令AO′、BO′经Mn变换后垂直:(MnAO′)T(MnBO′)=0,求得:

    $$ S = \frac{{\sqrt {\left| \boldsymbol{T} \right|} \left( {{x_1}{x_2} + {y_1}{y_2}} \right)}}{{{x_{_1}}{y_2} + {x_2}{y_1} + {y_1}{y_2}}} $$ (17)

    第二步调整焦距。使校正后的左图像与校正前的左图像长与宽接近相等,减小畸变,令$X = \left| {{A_1}{B_1}} \right|/M$,$Y = \left| {{A_1}{C_1}} \right|/N$。更改新内参矩阵为:

    $$ {{\boldsymbol{M}}_n} = \left[ {\begin{array}{*{20}{c}} {X*\sqrt {\left| \boldsymbol{T} \right|} }&{X*S}&0 \\ 0&{Y*\sqrt {\left| \boldsymbol{T} \right|} }&0 \\ 0&0&1 \end{array}} \right] $$ (18)

    第三步将校正后的图像移到视场中心。假设G1的坐标是(p, q, l),令LM/2-pHN/2-q。更改新的内参矩阵为:

    $$ {\boldsymbol{M}_n} = \left[ {\begin{array}{*{20}{c}} {X*\sqrt {\left| \boldsymbol{T} \right|} }&{X*S}&L \\ 0&{Y*\sqrt {\left| \boldsymbol{T} \right|} }&H \\ 0&0&1 \end{array}} \right] $$ (19)

    这样确立内参Mn可以使校正后的图像在视场中心,且校正产生畸变与偏斜都较小。

    本文采用了SYNTIM数据库的图像进行实验。该数据库包含了分辨率分别为512×512和768×576的双目图像,同时提供了每对图像的内外参数。本文从极线校正的误差、图像的形变、算法运行速度3个角度来评价极线校正方法。

    校正的误差用对应特征点的垂直像素平均视差来表示,${E_{\text{v}}} = \left| {{V_l} - {V_r}} \right|$,首先在两个图像中提取SIFT特征,得到匹配的特征点,然后用RANSAC拟合匹配点[13],丢弃离群值,进行误差计算。

    校正产生的失真用图像的畸变[14]ESV和图像的偏斜Esk表示。ESV是图像校正前后的面积比,ESV的表达式是:

    $$E_{\mathrm{SV}}=\frac{\text {Area}_{\text {rec}}}{\text {Area}_{\text {orig}}}$$ (20)

    Esk是图像校正前后内角的变化,Esk的表示式是:

    $${E_{{\rm{sk}}}} = \frac{1}{4}\sum\limits_{i = 1}^4 {\left| {{{90}^\circ } - \angle {\rm{CornerAngl}}{{\rm{e}}_i}} \right|} $$ (21)

    选取SYNTIM数据库中Rubik、Sport等20对图像,分别计算它们通过文献[5]Bouguet法、文献[6]Fusiello法、文献[9]Hartley法、文献[11]Mallon法、文献[12]Wu法和本文方法进行校正的误差、畸变、偏斜、运行时间,如图 3所示。可以发现使用本文方法校正的图像校正的误差较小;校正几乎不产生畸变;校正的偏斜也比较小,且没有出现过8°以上的大偏斜。

    图  3  20对图像使用不同方法的误差(a)、畸变(b)、偏斜(c)、运行时间(d)
    Figure  3.  Rectification error(a), scale variance(b), skewness(c)and runtime(d) of different methods for 20 images

    图像的误差、畸变、偏斜、运行时间的平均值如表 1所示(其中最优的数据以粗体标出)。本文方法所校正的图像平均校正误差0.5940像素、图像平均校正畸变1.0062,是表格方法中最优的,平均图像偏斜2.3941°仅此于Bouguet方法。在表 1显示的结果中,Bouguet校正的偏斜量与本文相当,但本文校正结果仍然更加精确。本文算法平均用时0.2302 s,与Bouguet、Fusiello、Wu校正算法用时相近。Hartley校正方法需要对图像进行特征点识别,运行速度较慢,平均用时为0.8473 s;Mallon校正方法需要使用最小二乘法求解右图像的校正矩阵,并求解最优化过程,平均用时为1.305 s,运行速度是表格方法中最慢的。相对于Hartley校正方法和Mallon校正方法,本文算法用时更少。

    表  1  平均误差、畸变、偏斜、运行时间
    Table  1.  Average error, scale, variance, skewness and runtime
    Methods Bouguet Fusiello Hartley Mallon Wu Proposed
    Error in pixels 0.6495 0.6268 0.8467 0.6361 0.7028 0.5940
    Scale variance 1.2275 1.2261 1.1270 1.1243 1.1900 1.0062
    Skewness/(°) 2.3369 2.4472 2.5156 3.2096 3.0419 2.3941
    Runtime/s 0.2349 0.2294 0.8473 1.305 0.2412 0.2302
    下载: 导出CSV 
    | 显示表格

    同时,本文也利用极线的斜率来评估了校正的误差。图 4是SYNTIM数据库中Rubik图像,以及通过各个方法校正后的Rubik图像。画出它们的极线,并计算极线的斜率绝对值的平均值,其中:图 4(a)是未校正前的图像,图像中的极线并不平行,平均斜率为1.23×10-2图 4(b)~图 4(f)分别是使用Bouguet、Fusiello、Hartley、Mallon、Wu校正方法校正后的Rubik图像。图 4(g)是使用本文方法校正的Rubik图像,极线的斜率为平均2.39×10-7,是几幅图像中斜率最小的,说明图像的极线最为平行。同时经过本文方法校正的Rubik图像几乎没有畸变,偏斜大约为2.11°,符合极线校正的要求。

    图  4  画出极线的Rubik图像及极线斜率(a) 原始图像(斜率=1.23×10-2)(b) Bouguet方法(斜率=3.82×10-7)(c) Fusiello方法(斜率=2.71×10-7)(d) Hartley方法(斜率=3.95×10-5)(e) Mallon方法(斜率=3.19×10-7)(f) Wu方法(斜率=1.48×10-6)(g) 本文推荐方法(斜率=2.39×10-7
    Figure  4.  Rubik image with polar line drawn and polar line slope (a) Original image(Slope=1.23×10-2); (b) Bouguet's method (Slope=3.82×10-7); (c) Fusiello's method(Slope=2.71×10-7); (d) Hartley's method(Slope=3.95×10-5); (e) Mallon's method(Slope=3.19×10-7); (f) Wu's method(Slope=1.48×10-6); (g) Proposed rectification method (Slope=2.39×10-7)

    本文提出了一种双目图像极线校正的方法,首先利用基于RANSAC框架的鲁棒性估计算法对原始匹配点进行筛选,剔除错误匹配点,将筛选出的正确匹配点作为有效点集进行计算;然后通过对平移向量的反对称矩阵求奇异值分解,得到校正后的旋转矩阵,并根据校正前后的图像位置关系,重新确立新的内参矩阵,使图像的失真性最小。实验结果表明本文算法平均校正误差在0.6像素内、图像的畸变接近于1、平均偏斜在2.4°左右、平均运行时间为0.2302 s;相比于参考文献中的极线校正方法,本文算法在校正精度、图像形变、运行速度方面具有一定优势,满足了极线校正的需求,优化了立体匹配算法。未来的研究工作将会围绕如何进一步提高极线校正的精度从而提高立体视觉匹配的精度来进行。

  • 图  1   对极几何

    Figure  1.   Epipolar geometry

    图  2   极线校正流程

    Figure  2.   Epipolar correction process

    图  3   20对图像使用不同方法的误差(a)、畸变(b)、偏斜(c)、运行时间(d)

    Figure  3.   Rectification error(a), scale variance(b), skewness(c)and runtime(d) of different methods for 20 images

    图  4   画出极线的Rubik图像及极线斜率(a) 原始图像(斜率=1.23×10-2)(b) Bouguet方法(斜率=3.82×10-7)(c) Fusiello方法(斜率=2.71×10-7)(d) Hartley方法(斜率=3.95×10-5)(e) Mallon方法(斜率=3.19×10-7)(f) Wu方法(斜率=1.48×10-6)(g) 本文推荐方法(斜率=2.39×10-7

    Figure  4.   Rubik image with polar line drawn and polar line slope (a) Original image(Slope=1.23×10-2); (b) Bouguet's method (Slope=3.82×10-7); (c) Fusiello's method(Slope=2.71×10-7); (d) Hartley's method(Slope=3.95×10-5); (e) Mallon's method(Slope=3.19×10-7); (f) Wu's method(Slope=1.48×10-6); (g) Proposed rectification method (Slope=2.39×10-7)

    表  1   平均误差、畸变、偏斜、运行时间

    Table  1   Average error, scale, variance, skewness and runtime

    Methods Bouguet Fusiello Hartley Mallon Wu Proposed
    Error in pixels 0.6495 0.6268 0.8467 0.6361 0.7028 0.5940
    Scale variance 1.2275 1.2261 1.1270 1.1243 1.1900 1.0062
    Skewness/(°) 2.3369 2.4472 2.5156 3.2096 3.0419 2.3941
    Runtime/s 0.2349 0.2294 0.8473 1.305 0.2412 0.2302
    下载: 导出CSV
  • [1] 王学, 周红旭, 张雷, 等. 基于近红外双目立体视觉的悬臂式掘进机定位研究[J/OL]. 工矿自动化: 1-11[2022-09-15]. DOI: 10.13272/j.issn.1671-251x.17896.

    WANG X, ZHOU H X, ZHANG L, et al. Research on cantilever roadheader positioning based on near-infrared binocular stereo vision[J/OL]. [2022-09-15]. Mine Automation, DOI: 10.13272/j.issn.1671-251x.17896.

    [2] 江荣, 朱攀, 周兴林, 等. 基于双目视觉算法的路面三维纹理信息获取[J]. 激光与光电子学进展, 2022, 59(14): 284-292.

    JIANG R, ZHU P, ZHOU X L, et al. Three-dimensional pavement texture information acquisition based on binocular vision algorithm[J]. Laser & Optoelectronics Progress, 2022, 59(14): 284-292.

    [3] 舒方林, 张海波, 曹文冠. 基于立体视觉的交叉路口对向车辆运动状态估计[J]. 计算机与数字工程, 2022, 50(5): 1029-1034.

    SHU F L, ZHANG H B, CAO W G. Estimating the motion state of oncoming vehicle based on stereo vision at intersection[J]. Computer & Digital Engineering, 2022, 50(5): 1029-1034.

    [4] 冉舒文, 刘显明, 雷小华, 等. 基于双目视觉的抬头显示虚像三维形貌测量[J/OL]. [2022-10-26]. 光学学报, http://kns.cnki.net/kcms/detail/31.1252.O4.20220714.1900.522.html.

    RAN S W, LIU X M, LEI X H, et al. Head-up display virtural image 3D topography measurement based on binocular vision[J/OL]. [2022-10-26]. Acta Optica Sinica, http://kns.cnki.net/kcms/detail/31.1252.O4.20220714.1900.522.html

    [5]

    Bouguet J Y. Matlab Camera Calibration Toolbox[EB/OL]. 2000, http://www.vision.caltech.edu\bouguetj\calib_doc.

    [6]

    Andrea Fusiello, Luca Irsara. Quasi-Euclidean epipolar rectification of uncalibrated images[J]. Machine Vision and Applications, 2011, 22(4): 663-670. DOI: 10.1007/s00138-010-0270-3

    [7]

    Richard I Hartley. In defense of the eight-point algorithm[J]. IEEE Trans. Pattern Anal. Mach. Intell., 1997, 19(6): 580-593. DOI: 10.1109/34.601246

    [8]

    Hartley R, Zisserman A. Multiple View Geometry in Computer Vision[M]. Cambridge: Cambridge University Press, 2000.

    [9]

    Richard I Hartley. Theory and practice of projective rectification[J]. International Journal of Computer Vision, 1999, 35(2): 115-127. DOI: 10.1023/A:1008115206617

    [10] 林国余, 张为公. 一种无需基础矩阵的鲁棒性极线校正算法[J]. 中国图象图形学报, 2006(2): 203-209.

    LIN G Y, ZHANG W G. An Effective robust rectification method for stereo vision[J]. Journal of Image and Graphics, 2006(2): 203-209.

    [11]

    John Mallon, Paul F Whelan. Projective rectification from the fundamental matrix[J]. Image and Vision Computing, 2005, 23(7): 643-650. DOI: 10.1016/j.imavis.2005.03.002

    [12]

    WU Wenhuan, ZHU Hong, ZHANG Qian. Epipolar rectification by singular value decomposition of essential matrix[J]. Multimedia Tools Appl., 2018, 77(12): 15747-15771. DOI: 10.1007/s11042-017-5149-0

    [13]

    Martin A Fischler, Robert C Bolles. Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography[J]. Commun. ACM, 1981, 24(6): 381-395. DOI: 10.1145/358669.358692

    [14]

    Hyunsuk Ko, Han Suk Shim, Ouk Choi, et al. Robust uncalibrated stereo Rectification with constrained geometric distortions (USR-CGD)[J]. Image and Vision Computing, 2017, 60: 98-114. DOI: 10.1016/j.imavis.2017.01.001

  • 期刊类型引用(1)

    1. 贾建彪,辛雷,魏妍婧,庄志有,姜国庆. 水渣通廊构件锈蚀检测及抗拉性能分析. 低温建筑技术. 2025(03): 65-69 . 百度学术

    其他类型引用(2)

图(4)  /  表(1)
计量
  • 文章访问数:  114
  • HTML全文浏览量:  26
  • PDF下载量:  20
  • 被引次数: 3
出版历程
  • 收稿日期:  2023-02-27
  • 修回日期:  2023-03-27
  • 刊出日期:  2024-02-19

目录

/

返回文章
返回