您的位置: 主页 > 皇冠体育365 > 皇冠体育365正文

三维坐标变换——旋转矩阵与旋转向量

2018-09-21 20:42  来源:网络整理  作者:admin  阅读:

    版权国家的:冠词是视频博客作者的最初的文字。,没有博主答应,不得私自转载。。

    用 opencv 标准化双眼相机的先生觉悟这点。,单目的定 calibrateCamera() 该有或起作用可以计算每个标准化图像的一对。 rvec 和 tvec,即旋转转变矢径,整体的座标系与视像管同等级的的替换相干。而 stereoCalibrate() 可以计算有或起作用。旋转矩阵 R 和转变矢径 T,表现摆布相机CONDORN经过的替换相干。。同等级的交换亦同样的。,转变静止矢径,尽管旋转不时是怎么的带菌者呢?,不时它是一任一某一矩阵?


    旋转矩阵

    请参阅CSS的视频博客。,三维旋转交换可以思索矩阵乘法,即:

    [xyz]=R[xyz]" role="presentation">[xyz]=R[xyz]

    内容

    R" role="presentation">R

    执意三阶的旋转矩阵。只思索盘绕的

    X" role="presentation">X

    Y" role="presentation">Y

    Z" role="presentation">Z

    单轴旋转

    θ" role="presentation">θ

    (右螺旋状物),

    R" role="presentation">R

    有别于为:


    RX=[1000cosθsinθ0sinθcosθ]RY=[cosθ0sinθ010sinθ0cosθ]RZ=[cosθsinθ0sinθcosθ0001]" role="presentation">RX=[1000cosθsinθ0sinθcosθ]RY=[cosθ0sinθ010sinθ0cosθ]RZ=[cosθsinθ0sinθcosθ0001]

    恣意轴的旋转可以腐烂为旋转叠加。,终极欢迎的旋转矩阵

    R" role="presentation">R

    它是前述的三个矩阵的作品。。

    矩阵运算显然是最手巧的的计算方式。,从此处, opencv、opengl、工业界机械呆板的人的开展,养育了姿势旋转交换。,最多用的是旋转矩阵。不过,应用矩阵表现旋转相干有两个错误。:
    率先,经过旋转矩阵不克不及直观的地看出旋转的排列方向和角度,准许考虑到一任一某一旋转矩阵,请求允许旋转排列方向静止。,转角到部分地,这么新的旋转矩阵计算起来就相对地使烦恼了。
    在另一方面,旋转交换亲自独自的3个分歧。,但旋转矩阵有9个元素,从此处旋转矩阵切中要害元素找错误互相孤独的,这将风浪区非线性优选法成绩。。


    旋转矢径

    带菌者旋转分子式率先从 Rodrigues 养育,三维旋转交换用三维表现。,带菌者的排列方向是乘轻便二轮马车。,榜样是旋转角度。。百度百科全书有其细目的绍介和归纳。,我只列出了嗨最重要的分子式。。
    设置旋转带菌者的单位矢径。 r" role="presentation">r,模为 θ" role="presentation">θ。三维点(或三维矢径)p" role="presentation">p 旋转带菌者 r" role="presentation">r 转变为 p" role="presentation">p,则:

    p=cosθp+(1cosθ)(pr)r+sinθr×p" role="presentation">p=cosθp+(1cosθ)(pr)r+sinθr×p

    显然,由旋转带菌者表现的交换相干充分直观的。,尽管买卖比矩阵方式更复杂。。


    互相替换

    在矩阵方式和矢径方式中,旋转交换具有优势和D。,从此处,常常需求往返切换。,这与=mathematics切中要害李群和李代数关于。,我还要少量的知。,你可以翻阅视频博客的视频博客。。
    opencv 在有或起作用中 Rodrigues() 用于旋转矩阵和旋转矢径的替换。请参阅OpenCV文档。,设置旋转带菌者的单位矢径。 r=[rx ry rz]T" role="presentation">r=[rx ry rz]T,旋转角度为 θ" role="presentation">θ,对应的旋转矩阵为 R" role="presentation">R,则 r" role="presentation">rR" role="presentation">R 替换是:

    R=cosθI+(1cosθ)rrT+sinθ[0rzryrz0rxryrx0]" role="presentation">R=cosθI+(1cosθ)rrT+sinθ[0rzryrz0rxryrx0]

    内容

    I" role="presentation">I

    它是三阶单位矩阵。。颠倒地

    R" role="presentation">R

    r" role="presentation">r

    替换可以使用等于。:


    RRT2=sinθ[0rzryrz0rxryrx0]" role="presentation">RRT2=sinθ[0rzryrz0rxryrx0]

    opencv 公牍原文:

    A rotation vector is a convenient and most compact representation of a rotation matrix (自 any rotation matrix has just 3 degrees of 释放) The representation is used in the global 3D geometry optimization procedures like calibrateCamera, stereoCalibrate, or solvePnP .

    称旋转矢径是旋转矩阵附近的并且最紧凑的表现方式,它在少量的需求大局三维什么价钱优选法的有或起作用中应用。。

  • 关键字: