• 基础矩阵和本质矩阵


    基础矩阵和本质矩阵

    定义

    本质矩阵E(Essential Matrix):反映空间中一点P在不同视角摄像机的相机坐标系下表示之间的关系。
    空间点P在相机a下相机坐标系中的表示: P a C = [ x a C y a C z a C ] P_a^C=

    [xaCyaCzaC]" role="presentation" style="position: relative;">[xaCyaCzaC]
    PaC= xaCyaCzaC
    空间点P在相机b下相机坐标系中的表示: P b C = [ x b C y b C z b C ] P_b^C=
    [xbCybCzbC]" role="presentation" style="position: relative;">[xbCybCzbC]
    PbC= xbCybCzbC

    P a C P_a^C PaC P b C P_b^C PbC之间的关系:
    P a C E P b C = [ x a C y a C z a C ] E [ x b C y b C z b C ] = 0 P_a^CEP_b^C=
    [xaCyaCzaC]" role="presentation" style="position: relative;">[xaCyaCzaC]
    E
    [xbCybCzbC]" role="presentation" style="position: relative;">[xbCybCzbC]
    =0
    PaCEPbC= xaCyaCzaC E xbCybCzbC =0

    基础矩阵F(Fundamental Matrix):反映空间中一点P在不同视角摄像机的图像坐标系下表示之间的关系。
    空间点P在相机a下图像坐标系中的表示: P a I = [ u a v a 1 ] P_a^I=
    [uava1]" role="presentation" style="position: relative;">[uava1]
    PaI= uava1

    空间点P在相机b下图像坐标系中的表示: P b I = [ u b v b 1 ] P_b^I=
    [ubvb1]" role="presentation" style="position: relative;">[ubvb1]
    PbI= ubvb1

    P a I P_a^I PaI P b I P_b^I PbI之间的关系:
    P a I F P b I = [ u a v a 1 ] F [ x b C y b C z b C ] = 0 P_a^IFP_b^I=
    [uava1]" role="presentation" style="position: relative;">[uava1]
    F
    [xbCybCzbC]" role="presentation" style="position: relative;">[xbCybCzbC]
    =0
    PaIFPbI= uava1 F xbCybCzbC =0

    推导

    在这里插入图片描述
    如图假设P点在相机1中的坐标为:
    x 1 = O 1 P ⃗ x_1=\vec{O_1P} x1=O1P
    相机2的坐标系相对于1发生了旋转 R R R以及平移 t = O 1 O 2 ⃗ t=\vec{O_1O_2} t=O1O2 ,所以P在相机2中的坐标为:
    x 2 = O 2 P ⃗ = R x 1 + t x_2=\vec{O_2P}=Rx_1+t x2=O2P =Rx1+t
    因为 O 1 P ⃗ \vec{O_1P} O1P O 2 P ⃗ \vec{O_2P} O2P O 1 O 2 ⃗ \vec{O_1O_2} O1O2 在同一个平面,所以有:
    O 2 P ⃗ ⋅ ( O 1 O 2 ⃗ × O 1 P ⃗ ) = 0 \vec{O_2P}\cdot(\vec{O_1O_2}\times\vec{O_1P})=0 O2P (O1O2 ×O1P )=0
    该公式在相机2的坐标系中表示为:
    x 2 ⋅ ( t × ( R x 1 + t ) ) = x 2 ⋅ ( t × ( R x 1 ) ) = x 2 T ( t ∧ R ) x 1 = 0 x_2\cdot(t\times(Rx_1+t))=x_2\cdot(t\times(Rx_1))=x_2^T(t^\wedge R)x_1=0 x2(t×(Rx1+t))=x2(t×(Rx1))=x2T(tR)x1=0
    所以 t ∧ R t^\wedge R tR就是本质矩阵,其中若设在各相机图像坐标系的坐标为 p 1 p_1 p1 p 2 p_2 p2,有 p 1 = K x 1 p_1=Kx_1 p1=Kx1 p 2 = K x 2 p_2=Kx_2 p2=Kx2 K K K为相机内参矩阵,带入上面的等式有:
    p 2 T K − T ( t ∧ R ) K − 1 p 1 = 0 p_2^TK^{-T}(t^\wedge R)K^{-1}p_1=0 p2TKT(tR)K1p1=0
    所以基础矩阵为:
    F = K − T E K − 1 F=K^{-T}EK^{-1} F=KTEK1
    可以看到本质矩阵含有坐标的平移以及旋转信息,所以在求解变换矩阵的时候,我们可以先求解本质矩阵然后再对本质矩阵进行分解来得到旋转和平移矩阵。

    求解

    由基础矩阵的等式关系通过(八点法)引入8对匹配特征点即可构建一个8*9的线性方程组,然后求解出基础矩阵,进而得到本质矩阵。通过SVD即可以恢复R和t。

    Reference

    https://zhuanlan.zhihu.com/p/79845576
    https://www.zhihu.com/question/27581884
    https://blog.csdn.net/ABC1225741797/article/details/108022772

  • 相关阅读:
    详解http协议
    【Git】 在IDEA中配置Git
    掌控未来,爱普生SR3225SAA用于汽车钥匙、射频电路的智慧引擎
    Webpack
    您是否正确使用SOLIDWORKS Electrical 绘制电气原理图?
    x86 --- 任务隔离特权级保护
    【书城项目】第三、四阶段--页面 jsp动态化、代码优化、EL修改表单
    Nodejs 如何开启多进程,进程如何通讯
    STM32中断编程入门
    【SemiDrive源码分析】【MailBox核间通信】47 - 分析RPMSG_IPCC_RPC 方式 单次传输的极限大小 及 极限带宽测试
  • 原文地址:https://blog.csdn.net/weixin_42145554/article/details/126744447