zoukankan      html  css  js  c++  java
  • 视觉测量中的变换关系

    1.平移变换(Translation)

    [left{ egin{array}{l}
    { m{x'}} = x + {t_x}\
    y' = y + {t_y}
    end{array} ight.]

    写成矩阵为:

    [left[ {egin{array}{*{20}{c}}
    {{ m{x}}'}\
    {y'}
    end{array}} ight] = left[ {egin{array}{*{20}{c}}
    1&0&{{t_x}}\
    0&1&{{t_y}}
    end{array}} ight]left[ {egin{array}{*{20}{c}}
    x\
    y\
    1
    end{array}} ight]]

    齐次坐标形式为:

    [left[ {egin{array}{*{20}{c}}
    {{ m{x}}'}\
    egin{array}{l}
    y'\
    1
    end{array}
    end{array}} ight] = left[ {egin{array}{*{20}{c}}
    1&0&{{t_x}}\
    egin{array}{l}
    0\
    0
    end{array}&egin{array}{l}
    1\
    0
    end{array}&egin{array}{l}
    {{ m{t}}_y}\
    1
    end{array}
    end{array}} ight]left[ {egin{array}{*{20}{c}}
    x\
    y\
    1
    end{array}} ight]]变量为2个自由度。

    2.旋转变换(Euclidean变换)

    用单位向量表示为:

    [left{ egin{array}{l}
    overrightarrow { m{x}} { m{' = }}overrightarrow { m{x}} cos b + overrightarrow y sin b\
    overrightarrow y ' = - overrightarrow x sin b + overrightarrow y cos b
    end{array} ight.]

    P在坐标系中关系表示为:

    $$left[ {egin{array}{*{20}{c}}
    {{ m{OA}}}\
    {OB}
    end{array}} ight] = left[ {egin{array}{*{20}{c}}
    {cos b}&{ - sin b}\
    {sin b}&{cos b}
    end{array}} ight]left[ {egin{array}{*{20}{c}}
    {{ m{OA'}}}\
    {{ m{OB'}}}
    end{array}} ight]$$

    将xy坐标系和x’y’坐标系建立起了联系。加入上面的平移变换写成齐次形式为:

    [left[ {egin{array}{*{20}{c}}
    {{ m{x}}'}\
    egin{array}{l}
    y'\
    1
    end{array}
    end{array}} ight] = left[ {egin{array}{*{20}{c}}
    {cos heta }&{{ m{ - }}sin heta }&{{t_x}}\
    egin{array}{l}
    sin heta \
    0
    end{array}&egin{array}{l}
    cos heta \
    0
    end{array}&egin{array}{l}
    {{ m{t}}_y}\
    1
    end{array}
    end{array}} ight]left[ {egin{array}{*{20}{c}}
    x\
    y\
    1
    end{array}} ight]]平移2个自由度加旋转一个自由度总共3个自由度。

    3.相似变换(Similarity transform)

    [left[ {egin{array}{*{20}{c}}
    {{ m{x}}'}\
    egin{array}{l}
    y'\
    1
    end{array}
    end{array}} ight] = left[ {egin{array}{*{20}{c}}
    {alpha cos heta }&{{ m{ - }}alpha sin heta }&{{t_x}}\
    egin{array}{l}
    alpha sin heta \
    0
    end{array}&egin{array}{l}
    alpha cos heta \
    0
    end{array}&egin{array}{l}
    {{ m{t}}_y}\
    1
    end{array}
    end{array}} ight]left[ {egin{array}{*{20}{c}}
    x\
    y\
    1
    end{array}} ight]]基于以上的变换又多了一个比例系数为4个自由度。

    4.仿射变换(Affine transform)

    [left[ {egin{array}{*{20}{c}}
    {{ m{x}}'}\
    egin{array}{l}
    y'\
    1
    end{array}
    end{array}} ight] = left[ {egin{array}{*{20}{c}}
    { m{a}}&b&c\
    egin{array}{l}
    d\
    0
    end{array}&egin{array}{l}
    e\
    0
    end{array}&egin{array}{l}
    f\
    1
    end{array}
    end{array}} ight]left[ {egin{array}{*{20}{c}}
    x\
    y\
    1
    end{array}} ight]]

    为6个自由度.

    5.透视变换

     

    我们人眼通过窗外看外面的景物,景物投射到玻璃上面的现状就是最典型的例子。我们看的角度不同,在玻璃上投射的情况就不同。物体的基本形状已经改变。

    [left[ {egin{array}{*{20}{c}}
    {{ m{x}}'}\
    egin{array}{l}
    y'\
    w'
    end{array}
    end{array}} ight] = left[ {egin{array}{*{20}{c}}
    { m{a}}&b&c\
    egin{array}{l}
    d\
    { m{g}}
    end{array}&egin{array}{l}
    e\
    h
    end{array}&egin{array}{l}
    f\
    1
    end{array}
    end{array}} ight]left[ {egin{array}{*{20}{c}}
    x\
    y\
    1
    end{array}} ight]]为8个自由度。

     

  • 相关阅读:
    wordpress调用函数大全
    Dedecms 数据库结构分析
    屏幕广播的实现(二)
    屏幕广播的实现(一)
    Alt+Ctrl+Del组合键的屏蔽
    关于钩子(HOOK)
    C# 线程入门 00
    C# 中 关键字 return break continue 详解
    Windows 网络命令
    vue自定义指令封装(加深印象)
  • 原文地址:https://www.cnblogs.com/fuzhuoxin/p/12074041.html
Copyright © 2011-2022 走看看