美文网首页深度学习
计算机视觉(全景图)

计算机视觉(全景图)

作者: zidea | 来源:发表于2019-09-26 21:18 被阅读0次
    封面

    图片的拼接,我们可以对图形进行一系列的几何变换,例如平移、缩放和旋转,再复杂点就是相似变换或者是透视变换。在数学上是由集合概念的,这些变换是由一种嵌套的关系。

    缩放

    S = \left[ \begin{matrix} S & 0 \\ 0 & S \end{matrix} \right] \tag{缩放}
    我们可以用 2 * 2 对角矩阵来描述缩放。

    旋转

    R = \left[ \begin{matrix} \cos \theta & -\sin \theta \\ \sin \theta & \cos \theta \end{matrix} \right] \tag{旋转}
    这里是图片逆时针旋转了 \theta

    有关 y 轴对称

    T = \left[ \begin{matrix} -1 & 0 \\ 0 & 1 \end{matrix} \right] \tag{缩放}
    有关像之间的缩放矩阵,不同是对角线的值不再相等,而是成为相反的数。

    平移

    从上面一些例子,我们可以看出通过 2 * 2 的矩阵我们可以描述出图形一系列的平面内的变换。虽然 2 * 2 可以描述许多变换但是却无法描述简单平移变换。
    \begin{equation} x \prime = x + t_x \\ y \prime = y + t_y \end{equation}
    我们可以用齐次坐标
    (x,y) \Longrightarrow \begin{bmatrix} x \\ y \\ 1 \end{bmatrix}

    有了齐次坐标我们就可以这用这样矩阵来描述平移。
    T = \left[ \begin{matrix} 1 & 0 & t_x \\ 0 & 1 & t_y \\ 0 & 0 & 1 \end{matrix} \right] \tag{平移}

    \left[ \begin{matrix} 1 & 0 & t_x \\ 0 & 1 & t_y \\ 0 & 0 & 1 \end{matrix} \right] \begin{bmatrix} x \\ y \\ 1 \end{bmatrix} = \begin{bmatrix} {x + x_t} \\ y + y_t \\ 1 \end{bmatrix}

    Affine 变换

    \begin{bmatrix} x \prime \\ y \prime \\ 1 \end{bmatrix} = \left[ \begin{matrix} 1 & 0 & t_x \\ 0 & 1 & t_y \\ 0 & 0 & 1 \end{matrix} \right] \begin{bmatrix} x \\ y \\ 1 \end{bmatrix}
    Affine 变换是由几种基本变换组合而成的,例如旋转平移拉伸。所以 Affine 可以分解出这些基础变换。Affine 可以改变原点,但是不会破坏直线,或者破坏直线平行关系。

    那么回到正题,也就是缝合多张图片成为全景图,不过这不是 Affine 能够做到的。
    H = \left[ \begin{matrix} a & b & c \\ d & e & f \\ g & h & 1 \end{matrix} \right] \
    这样就可以对图片进行透视操作

    相关文章

      网友评论

        本文标题:计算机视觉(全景图)

        本文链接:https://www.haomeiwen.com/subject/znpnuctx.html