OpenCV 4.12.0
開源計算機視覺
載入中...
搜尋中...
無匹配項
cv::QuatEnum 類參考

#include <opencv2/core/quaternion.hpp>

cv::QuatEnum 的協作圖

公共型別

列舉  EulerAnglesType(尤拉角型別) {
  INT_XYZ ,
  INT_XZY ,
  INT_YXZ ,
  INT_YZX ,
  INT_ZXY ,
  INT_ZYX ,
  INT_XYX ,
  INT_XZX ,
  INT_YXY ,
  INT_YZY ,
  INT_ZXZ ,
  INT_ZYZ ,
  EXT_XYZ ,
  EXT_XZY ,
  EXT_YXZ ,
  EXT_YZX ,
  EXT_ZXY ,
  EXT_ZYX ,
  EXT_XYX ,
  EXT_XZX ,
  EXT_YXY ,
  EXT_YZY ,
  EXT_ZXZ ,
  EXT_ZYZ
}
 尤拉角型別的列舉。更多...
 

成員列舉文件

◆ EulerAnglesType(尤拉角型別)

尤拉角型別的列舉。

如果不考慮使用兩種不同的轉換來定義旋轉軸的可能性,則存在十二種可能的旋轉軸序列,分為兩組

  • 真尤拉角(Z-X-Z、X-Y-X、Y-Z-Y、Z-Y-Z、X-Z-X、Y-X-Y)
  • Tait–Bryan 角(X-Y-Z、Y-Z-X、Z-X-Y、X-Z-Y、Z-Y-X、Y-X-Z)。

三個基本旋轉可能是外在的(繞原始座標系的軸 *xyz* 旋轉,假設原始座標系保持靜止),或內在的(繞旋轉座標系的軸 *XYZ* 旋轉,與運動物體固連,每次基本旋轉後改變其方向)。

外在和內在旋轉是相關的。

尤拉角的定義如下,

  • \(\theta_1 \) 表示第一個旋轉角度,
  • \(\theta_2 \) 表示第二個旋轉角度,
  • \(\theta_3 \) 表示第三個旋轉角度。

對於 X-Y-Z 順序的內在旋轉,旋轉矩陣 R 可以透過下式計算

\[R =X(\theta_1) Y(\theta_2) Z(\theta_3) \]

對於 X-Y-Z 順序的外在旋轉,旋轉矩陣 R 可以透過下式計算

\[R =Z({\theta_3}) Y({\theta_2}) X({\theta_1})\]

其中

\[X({\theta_1})={\begin{bmatrix}1&0&0\\0&\cos {\theta_1} &-\sin {\theta_1} \\0&\sin {\theta_1} &\cos {\theta_1} \\\end{bmatrix}}, Y({\theta_2})={\begin{bmatrix}\cos \theta_{2}&0&\sin \theta_{2}\\0&1 &0 \\\ -sin \theta_2& 0&\cos \theta_{2} \\\end{bmatrix}}, Z({\theta_3})={\begin{bmatrix}\cos\theta_{3} &-\sin \theta_3&0\\\sin \theta_3 &\cos \theta_3 &0\\0&0&1\\\end{bmatrix}}. \]

該函式是根據這組約定設計的

  • 右手參考系被採用,並且右手規則用於確定角度的符號。
  • 每個矩陣都表示一個主動旋轉(組合矩陣和被組合矩陣都應該作用於初始固定參考系中定義的向量的座標,並給出在同一參考系中定義的旋轉向量的座標作為結果)。
  • 對於\(\theta_1\) 和 \(\theta_3\),有效範圍是 (−π, π]。

    對於\(\theta_2\),有效範圍是 [−π/2, π/2] 或 [0, π]。

    對於 Tait–Bryan 角,\(\theta_2\) 的有效範圍是 [−π/2, π/2]。當將四元數轉換為尤拉角時,尤拉角的解在\( \theta_2 \in (−π/2, π/2)\) 的條件下是唯一的。如果\(\theta_2 = −π/2 \) 或 \( \theta_2 = π/2\),則存在無限個解。這種情況的通用名稱是萬向鎖。對於真尤拉角,\(\theta_2\) 的有效範圍是 [0, π]。尤拉角的解在\( \theta_2 \in (0, π)\) 的條件下是唯一的。如果\(\theta_2 =0 \) 或 \(\theta_2 =π \),則存在無限個解,並且會發生萬向鎖。

列舉器
INT_XYZ 

尤拉角型別為 X-Y-Z 的內在旋轉。

INT_XZY 

尤拉角型別為 X-Z-Y 的內在旋轉。

INT_YXZ 

尤拉角型別為 Y-X-Z 的內在旋轉。

INT_YZX 

尤拉角型別為 Y-Z-X 的內在旋轉。

INT_ZXY 

尤拉角型別為 Z-X-Y 的內在旋轉。

INT_ZYX 

尤拉角型別為 Z-Y-X 的內在旋轉。

INT_XYX 

尤拉角型別為 X-Y-X 的內在旋轉。

INT_XZX 

尤拉角型別為 X-Z-X 的內在旋轉。

INT_YXY 

尤拉角型別為 Y-X-Y 的內在旋轉。

INT_YZY 

尤拉角型別為 Y-Z-Y 的內在旋轉。

INT_ZXZ 

尤拉角型別為 Z-X-Z 的內在旋轉。

INT_ZYZ 

尤拉角型別為 Z-Y-Z 的內在旋轉。

EXT_XYZ 

尤拉角型別為 X-Y-Z 的外在旋轉。

EXT_XZY 

尤拉角型別為 X-Z-Y 的外在旋轉。

EXT_YXZ 

尤拉角型別為 Y-X-Z 的外在旋轉。

EXT_YZX 

尤拉角型別為 Y-Z-X 的外在旋轉。

EXT_ZXY 

尤拉角型別為 Z-X-Y 的外在旋轉。

EXT_ZYX 

尤拉角型別為 Z-Y-X 的外在旋轉。

EXT_XYX 

尤拉角型別為 X-Y-X 的外在旋轉。

EXT_XZX 

尤拉角型別為 X-Z-X 的外在旋轉。

EXT_YXY 

尤拉角型別為 Y-X-Y 的外在旋轉。

EXT_YZY 

尤拉角型別為 Y-Z-Y 的外在旋轉。

EXT_ZXZ 

尤拉角型別為 Z-X-Z 的外在旋轉。

EXT_ZYZ 

尤拉角型別為 Z-Y-Z 的外在旋轉。


該類的文件是從以下檔案生成的