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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人文社科 > 生活经验 >内容正文

生活经验

关于位姿变换的一点体会

發(fā)布時(shí)間:2023/11/27 生活经验 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于位姿变换的一点体会 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

關(guān)于位姿變換的一點(diǎn)體會(huì)

  • 1.題外話
  • 2.剛體的位姿變換
    • 2.1 位姿變換的定義
    • 2.2 旋轉(zhuǎn)矩陣的具體形式
      • 2.2.1 二維情況
      • 2.2.2 三維情況
  • 3.旋轉(zhuǎn)方向
  • 4.平移方向

1.題外話

對(duì)于剛體的位姿變換問(wèn)題,以前總覺(jué)得很簡(jiǎn)單,不就是個(gè)旋轉(zhuǎn)平移嘛??墒菐滋焓謩?dòng)做了的坐標(biāo)變換卻做了很久才做好。究其原因,還是有些問(wèn)題沒(méi)弄清楚。所以,今天在此寫(xiě)篇博客,徹底把這個(gè)過(guò)程捋一捋。

2.剛體的位姿變換

2.1 位姿變換的定義

確實(shí),剛體的姿態(tài)變換就兩部分:旋轉(zhuǎn)和平移。先來(lái)看看書(shū)上是怎么介紹旋轉(zhuǎn)和平移的。在《視覺(jué)slam十四講》中,對(duì)于這部分內(nèi)容是這樣將的:


我們?cè)O(shè)某個(gè)單位正交基(e1,e2,e3)(e_{1},e_{2},e_{3})(e1?,e2?,e3?)經(jīng)過(guò)一次旋轉(zhuǎn),變成了 (e1′,e2′,e3′)(e'_{1},e'_{2},e'_{3})(e1?,e2?,e3?)。那么,對(duì)于同一個(gè)向量 aaa(注意該向量并沒(méi)有隨著坐標(biāo)系的旋轉(zhuǎn)而發(fā)生運(yùn)動(dòng)),它在兩個(gè)坐標(biāo)系下的坐標(biāo)為[a1;a2;a3]T[a_{1}; a_{2}; a_{3}]^T[a1?;a2?;a3?]T[a′1;a′2;a′3]T[a′_{ 1}; a′_{ 2}; a′ _{3}]^T[a1?;a2?;a3?]T。根據(jù)坐標(biāo)的定義,有:

為了描述兩個(gè)坐標(biāo)之間的關(guān)系,我們對(duì)上面等式左右同時(shí)左乘[e1T,e2T,e3T]T[e^T_{1},e^T_{2},e^T_{3}]^T[e1T?,e2T?,e3T?]T,那么左邊的系數(shù)變成了單位矩陣,所以

我們把中間的陣拿出來(lái),定義成一個(gè)矩陣 RRR。這個(gè)矩陣由兩組基之間的內(nèi)積組成,刻畫(huà)了旋轉(zhuǎn)前后同一個(gè)向量的坐標(biāo)變換關(guān)系。只要旋轉(zhuǎn)是一樣的,那么這個(gè)矩陣也是一樣的??梢哉f(shuō),矩陣 RRR 描述了旋轉(zhuǎn)本身。因此它又稱為旋轉(zhuǎn)矩陣。

在歐氏變換中,除了旋轉(zhuǎn)之外還有一個(gè)平移??紤]世界坐標(biāo)系中的向量 aaa,經(jīng)過(guò)一次旋轉(zhuǎn)(用RRR 描述)和一次平移 ttt 后,得到了 a′a′a,那么把旋轉(zhuǎn)和平移合到一起,有:
a′=Ra+ta′= Ra + ta=Ra+t
其中, ttt 稱為平移向量。相比于旋轉(zhuǎn),平移部分只需把這個(gè)平移量加到旋轉(zhuǎn)之后的坐標(biāo)上,顯得非常簡(jiǎn)潔。


以上內(nèi)容摘自《視覺(jué)slam十四講》第三章中的內(nèi)容。

2.2 旋轉(zhuǎn)矩陣的具體形式

從上面的內(nèi)容可以看到,旋轉(zhuǎn)矩陣是由兩組基向量的內(nèi)積組成。接下來(lái)再看看沿各個(gè)坐標(biāo)軸進(jìn)行旋轉(zhuǎn)的旋轉(zhuǎn)矩陣怎樣寫(xiě)。

2.2.1 二維情況

對(duì)于二維的情況,比較簡(jiǎn)單。旋轉(zhuǎn)矩陣(旋轉(zhuǎn)方向?yàn)槟鏁r(shí)針)為:
R=[cos(θ)?sin(θ)sin(θ)cos(θ)]R= \left[ \begin{matrix} cos(\theta) & -sin(\theta)\\ sin(\theta) & cos(\theta) \end{matrix} \right] R=[cos(θ)sin(θ)??sin(θ)cos(θ)?]

2.2.2 三維情況

繞x軸進(jìn)行旋轉(zhuǎn)(在yz平面逆時(shí)針旋轉(zhuǎn))
R=[1000cos(θ)?sin(θ)0sin(θ)cos(θ)]R= \left[ \begin{matrix} 1& 0& 0\\ 0&cos(\theta) & -sin(\theta)\\ 0&sin(\theta) & cos(\theta) \end{matrix} \right] R=???100?0cos(θ)sin(θ)?0?sin(θ)cos(θ)????

繞y軸進(jìn)行旋轉(zhuǎn)(在xz平面逆時(shí)針旋轉(zhuǎn))
R=[cos(θ)0?sin(θ)010sin(θ)0cos(θ)]R= \left[ \begin{matrix} cos(\theta) & 0& -sin(\theta)\\ 0&1&0 \\ sin(\theta)& 0& cos(\theta) \end{matrix} \right] R=???cos(θ)0sin(θ)?010??sin(θ)0cos(θ)????
繞z軸進(jìn)行旋轉(zhuǎn)(在xy平面逆時(shí)針旋轉(zhuǎn))
R=[cos(θ)?sin(θ)0sin(θ)cos(θ)0001]R= \left[ \begin{matrix} cos(\theta) & -sin(\theta)& 0\\ sin(\theta)& cos(\theta)& 0\\ 0&0&1 \\ \end{matrix} \right] R=???cos(θ)sin(θ)0??sin(θ)cos(θ)0?001????

3.旋轉(zhuǎn)方向

下面來(lái)考慮一個(gè)簡(jiǎn)單的問(wèn)題。

問(wèn)題:將點(diǎn)p=(1,0)p =(1,0)p=(1,0),按照旋轉(zhuǎn)矩陣RRR進(jìn)行旋轉(zhuǎn),旋轉(zhuǎn)后的坐標(biāo)為多少?
R=[cos(θ)?sin(θ)sin(θ)cos(θ)],θ=π/2R = \left[ \begin{matrix} cos(\theta) & -sin(\theta)\\ sin(\theta) & cos(\theta) \end{matrix} \right] ,\theta=\pi/2 R=[cos(θ)sin(θ)??sin(θ)cos(θ)?]θ=π/2

這個(gè)問(wèn)題很簡(jiǎn)單,口算都可以算出答案是p′=(0,1)p'=(0,1)p=(0,1)。

但這里面有些問(wèn)題需要搞清楚。按照旋轉(zhuǎn)矩陣RRR進(jìn)行旋轉(zhuǎn),我們將點(diǎn)p=(0,1)p =(0,1)p=(0,1)變換為了p′=(1,0)p'=(1,0)p=(1,0)。相當(dāng)于把點(diǎn)ppp逆時(shí)針旋轉(zhuǎn)了π/2\pi/2π/2。這并沒(méi)有什么問(wèn)題。在上一節(jié)的旋轉(zhuǎn)矩陣的定義中,我們也說(shuō)了這種形式的旋轉(zhuǎn)矩陣是進(jìn)行逆時(shí)針旋轉(zhuǎn)。

但是問(wèn)題在于,很多情況下點(diǎn)的位置是固定的,它并不會(huì)發(fā)生變化。旋轉(zhuǎn)之后發(fā)生變化的是坐標(biāo)系。也就是說(shuō),旋轉(zhuǎn)過(guò)后,點(diǎn)ppp的實(shí)際位置并沒(méi)有變,它還是在那個(gè)位置。但是它的坐標(biāo)變了(p′=(0,1)p'=(0,1)p=(01)),也就是所在的坐標(biāo)系變了。那坐標(biāo)系是怎么旋轉(zhuǎn)的呢?剛好與坐標(biāo)旋轉(zhuǎn)的方向相反——順時(shí)針旋轉(zhuǎn)。

這個(gè)道理同時(shí)適用于三維的情況。

我覺(jué)得,能把這個(gè)問(wèn)題想清楚很重要。

4.平移方向

進(jìn)行平移變換的時(shí)候,同樣存在上面的問(wèn)題。

我們可以考慮一下。將點(diǎn)p=(1,1)p = (1,1)p=(1,1)按向量(1,2)(1,2)12進(jìn)行平移,很顯然平移后的坐標(biāo)為p′=(2,3)p'=(2,3)p=(2,3)。如下圖所示:

同樣,很多情況下點(diǎn)的位置是固定的,變化的是坐標(biāo)。所以,如果點(diǎn)的位置不變,在進(jìn)行平移之后點(diǎn)的坐標(biāo)變?yōu)榱?span id="ozvdkddzhkzd" class="katex--inline">p′=(2,3)p'=(2,3)p=(2,3),那只能是坐標(biāo)系進(jìn)行了平移。那坐標(biāo)系是怎么平移的呢?——與坐標(biāo)平移方向相反,按向量(?1,?2)(-1,-2)(?1,?2)進(jìn)行平移。如下圖所示

總結(jié)一下:關(guān)于旋轉(zhuǎn)和平移,必須要想清楚是對(duì)點(diǎn)(或向量)進(jìn)行旋轉(zhuǎn)平移還是對(duì)坐標(biāo)系進(jìn)行旋轉(zhuǎn)平移。

總結(jié)

以上是生活随笔為你收集整理的关于位姿变换的一点体会的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。