日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

单位四元数(unit quaternion)

發布時間:2025/6/17 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 单位四元数(unit quaternion) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在機器人學中,表示旋轉變換的有旋轉矩陣、歐拉角、角/度軸和單位四元數。

##1、四元數的表示

四元數是由復數擴展而來:

a+bi?ω+xi+yj+zka + bi \Longrightarrow \omega + xi +yj +zk a+bi?ω+xi+yj+zk

四元數表示為(齊次形式):

q=(ω,x,y,z)q = ( \omega,x,y,z) q=(ω,x,y,z)

或者(標量/向量形式):

q=(ω,v→)q = ( \omega , \overrightarrow v ) q=(ω,v)

##2、單位四元數表示旋轉:

  • 對于3D旋轉:

坐標系繞軸 $ r $ 旋轉 $ \theta $ 可以用四元數表示為:

ω=cos(θ/2)\omega = cos(\theta /2) ω=cos(θ/2)

(x,y,z)=v→=sin(θ/2)r^(x,y,z) = \overrightarrow v = sin(\theta /2) \hat r (x,y,z)=v=sin(θ/2)r^

  • 3D旋轉的逆

qqq 是單位四元數,則

q=(ω,v→)=(cos(θ/2),sin(θ/2)r^)=(cos(?θ/2),sin(?θ/2)r^)=(ω,?v→)=q?q = ( \omega , \overrightarrow v ) = ( cos(\theta /2) , sin(\theta /2) \hat r ) = ( cos(-\theta /2) , sin(-\theta /2) \hat r ) = ( \omega , -\overrightarrow v ) = q ^*q=(ω,v)=(cos(θ/2),sin(θ/2)r^)=(cos(?θ/2),sin(?θ/2)r^)=(ω,?v)=q?


四元數就是 軸/角 的進化,解決了 軸/角 無法表示轉角位零的情況。


##3、四元數旋轉

對向量 $ \overrightarrow p $ 和四元數 qqq, ppp 可看做四元數 $ p= (0, \overrightarrow p) $, 向量 $ p $ 旋轉 qqq 后為:

p′=qpq?1p'= q p q ^{-1} p=qpq?1

附:

i2=j2=k2=ijk=?1i^2 = j^2 =k^2=ijk=-1i2=j2=k2=ijk=?1
ij=k,jk=i,ki=jij=k,jk=i,ki=jij=k,jk=i,ki=j
ji=?k,kj=?i,ik=?jji=-k,kj=-i,ik=-jji=?k,kj=?i,ik=?j

單位四元數:

ω2+x2+y2+z2=1\omega ^2 + x^2 +y^2 + z^2 =1ω2+x2+y2+z2=1

##參考:

http://blog.csdn.net/silangquan/article/details/39008903
https://www.zhihu.com/question/23005815
http://www.qiujiawei.com/understanding-quaternions/
Bruno Siciliano 等,機器人學 建模、規劃與控制[M],西安交通大學出版社,2013.11
勃拉坎茨. 四元數在剛體走位問題中的應用[M]. 國防工業出版社, 1977.

總結

以上是生活随笔為你收集整理的单位四元数(unit quaternion)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。