OpenCV 5.0.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 5.0.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。
cv::QuatEnum クラス

#include <opencv2/core/quaternion.hpp>

Collaboration diagram for cv::QuatEnum:

公開型

enum  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

オイラー角タイプの列挙型。

回転軸の定義に2つの異なる変換を用いる可能性を考慮しない場合、回転軸の取り得る順序は12通り存在し、それらは2つのグループに分けられる:

  • 本来のオイラー角 (Z-X-Z, X-Y-X, Y-Z-Y, Z-Y-Z, X-Z-X, Y-X-Y)
  • テイト・ブライアン角 (X-Y-Z, Y-Z-X, Z-X-Y, X-Z-Y, Z-Y-X, Y-X-Z)。

3つの基本回転は、外因的 (extrinsic)(静止していると仮定される元の座標系の軸 xyz まわりの回転)か、内因的 (intrinsic)(移動する物体に固定され、各基本回転のたびに向きが変わる回転座標系の軸 XYZ まわりの回転)のいずれかである。

外因的回転と内因的回転が関係する。

オイラー角の定義は次のとおりである。

  • \(\theta_1 \) は1番目の回転角を表す。
  • \(\theta_2 \) は2番目の回転角を表す。
  • \(\theta_3 \) は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}}. \]

この関数は、次の一連の規約に従って設計されている。

  • 右手系の参照フレームを採用し、角度の符号の決定には右手の法則を用いる。
  • 各行列は能動回転 (active rotation) を表すことを意図している(合成する行列および合成される行列は、初期の固定された参照フレームで定義されたベクトルの座標に作用し、同じ参照フレームで定義された回転後のベクトルの座標を結果として与えるものとする)。
  • \(\theta_1\) と \(\theta_3\) については、有効範囲は (−π, π] である。

    \(\theta_2\) については、有効範囲は [−π/2, π/2] または [0, π] である。

    テイト・ブライアン角 (Tait–Bryan angles) では、\(\theta_2\) の有効範囲は [−π/2, π/2] である。クォータニオンをオイラー角に変換するとき、\( \theta_2 \in (−π/2, π/2)\) の条件下ではオイラー角の解は一意である。\(\theta_2 = −π/2 \) または \( \theta_2 = π/2\) の場合、解は無限に存在する。この状況の一般的な名称はジンバルロックである。固有オイラー角 (Proper Euler angles) では、\(\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 による外因性回転。


このクラス詳解は次のファイルから抽出されました: