Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
四元数と回転 / Quaternion Rotation
Search
USAMI Kosuke
January 22, 2022
Science
1k
0
Share
四元数と回転 / Quaternion Rotation
※ Docswell に移行しました
https://www.docswell.com/s/usami-k/K8G9EX-quaternion-rotation
USAMI Kosuke
January 22, 2022
More Decks by USAMI Kosuke
See All by USAMI Kosuke
Onsager代数とその周辺 / Onsager algebra tsudoi
usamik26
0
700
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
260
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
380
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
550
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
810
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
730
UICollectionView Compositional Layout
usamik26
0
870
Coding Swift with Visual Studio Code and Docker
usamik26
0
580
Swift Extension for Visual Studio Code
usamik26
2
1.1k
Other Decks in Science
See All in Science
白金鉱業Meetup_Vol.20 効果検証ことはじめ / Introduction to Impact Evaluation
brainpadpr
2
1.9k
データベース01: データベースを使わない世界
trycycle
PRO
1
1.2k
Endel Tulvingとエピソード記憶
rmaruy
0
130
DMMにおけるABテスト検証設計の工夫
xc6da
1
1.9k
Inside the Mind of an LLM
baggiponte
0
160
AkarengaLT vol.41
hashimoto_kei
1
140
Kaggle: NeurIPS - Open Polymer Prediction 2025 コンペ 反省会
calpis10000
0
580
TypeScript で WebAssembly を用いた 型安全なプラグイン設計
nagano
2
490
20260220 OpenIDファウンデーション・ジャパン ご紹介 / 20260220 OpenID Foundation Japan Intro
oidfj
0
350
CVPR2026_VGGTとその仲間たち
mickey_0226
0
270
因果推論と機械学習
sshimizu2006
1
1.2k
人生を変えた一冊「独学大全」のはなし / Self-study ENCYCLOPEDIA: The Book Which Change My Life #独学大全 #EM推し本
expajp
0
160
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1370
210k
Designing Experiences People Love
moore
143
24k
Optimizing for Happiness
mojombo
378
71k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
Skip the Path - Find Your Career Trail
mkilby
1
130
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
200
The Mindset for Success: Future Career Progression
greggifford
PRO
0
340
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Site-Speed That Sticks
csswizardry
13
1.2k
Transcript
1/15 四元数と回転 宇佐見 公輔 2022 年 1 月 22 日
宇佐見 公輔 四元数と回転
2/15 自己紹介 宇佐見 公輔(うさみ こうすけ) 職業:プログラマ 趣味:数学 今日の話に関連する過去の登壇: 四元数のはなし(2020 年
5 月 / 関西日曜数学友の会) 八元数のはなし(2021 年 10 月 / 日曜数学会) 宇佐見 公輔 四元数と回転
3/15 自己紹介 近況: 今年から、株式会社ゆめみ所属 ゆめみメンバーによるグループ Liberal Arts Lab の紹介: 2
月 3 日:タカタ先生のお笑い数学全史・第十四章 produced by Liberal Arts Lab × 日本お笑い数学協会 2 月 24 日: 「僕の本、こう活かそう!」〜数学のお兄さんの 書籍を使った算数・数学の学び方〜 produced by Liberal Arts Lab × 日本お笑い数学協会 宇佐見 公輔 四元数と回転
4/15 四元数とは 四元数 𝑥0 + 𝑥1 i + 𝑥2 j
+ 𝑥3 k(𝑥𝑖 ∈ ℝ)とあらわされる数。 i2 = j2 = k2 = −1 ij = −ji = k, jk = −kj = i, ki = −ik = j 加減乗除が可能(特に除法が可能) 。 分配法則、結合法則、加法の交換法則が成り立つ。 乗法の交換法則が成り立たない。 宇佐見 公輔 四元数と回転
5/15 四元数の大きさ 四元数の大きさ(絶対値) 𝑥 = 𝑥0 + 𝑥1 i +
𝑥2 j + 𝑥3 k(𝑥𝑖 ∈ ℝ)の大きさ |𝑥| は、 |𝑥| = √𝑥2 0 + 𝑥2 1 + 𝑥2 2 + 𝑥2 3 で、大きさは乗法によって保たれる。 |𝑥𝑦| = |𝑥||𝑦| ハミルトンは、この性質が成り立つようなものを探した結 果、三元数を作ることはできず、四元数になった。 宇佐見 公輔 四元数と回転
6/15 2 次元平面上の回転 2 次元平面上の回転 複素数 𝑥 = 𝑥0 +
𝑥1 i に大きさ 1 の複素数 𝑞 をかける操作は、2 次 元平面上の回転をあらわす。 𝑥 ↦ 𝑞𝑥 |𝑞𝑥| = |𝑞||𝑥| = |𝑥| なので原点からの距離が保たれる。 宇佐見 公輔 四元数と回転
7/15 4 次元空間上の回転 4 次元空間上の回転 四元数 𝑥 = 𝑥0 +
𝑥1 i + 𝑥2 j + 𝑥3 k に大きさ 1 の四元数 𝑞 をかける操 作は、4 次元空間上の回転をあらわす。 𝑥 ↦ 𝑞𝑥 |𝑞𝑥| = |𝑞||𝑥| = |𝑥| なので原点からの距離が保たれる。 宇佐見 公輔 四元数と回転
8/15 3 次元空間を考える ハミルトンは 3 次元空間上の回転を表現する方法が欲しかったの だが、三元数は作れなかった。 四元数は 4 次元空間の点に対応する。
𝑥0 + 𝑥1 i + 𝑥2 j + 𝑥3 k ↔ (𝑥0 , 𝑥1 , 𝑥2 , 𝑥3 ) 四元数の虚数部だけを使うことにして(純虚四元数) 、3 次元空間 と対応するようにしてみる。 𝑥1 i + 𝑥2 j + 𝑥3 k ↔ (𝑥1 , 𝑥2 , 𝑥3 ) 宇佐見 公輔 四元数と回転
9/15 純虚四元数 純虚四元数は残念ながら乗法で閉じていない。 (𝑥1 i + 𝑥2 j + 𝑥3
k)(𝑦1 i + 𝑦2 j + 𝑦3 k) = − (𝑥1 𝑦1 + 𝑥2 𝑦2 + 𝑥3 𝑦3 ) + (𝑥2 𝑦3 − 𝑥3 𝑦2 )i + (𝑥3 𝑦1 − 𝑥1 𝑦3 )j + (𝑥1 𝑦2 − 𝑥2 𝑦1 )k そのため、単純に乗法で 3 次元空間上の回転を表現することはで きない。 宇佐見 公輔 四元数と回転
10/15 3 次元空間上の回転 実は次のように表現することができる。 3 次元空間上の回転 純虚四元数 𝑥 = 𝑥1
i + 𝑥2 j + 𝑥3 k に対して、大きさ 1 の四元数 𝑞 を 使った次の操作は、3 次元空間上の回転をあらわす。 𝑥 ↦ 𝑞𝑥𝑞−1 𝑞𝑥𝑞−1 は純虚四元数になる。 宇佐見 公輔 四元数と回転
11/15 3 次元空間上の回転とは 3 次元空間上での回転を少し噛み砕いて考えてみる。 2 次元平面上の原点中心の回転は、角度だけで決まっていた。 3 次元空間上の原点中心の回転は、それに加えて「どの方向に回 転させるか」の情報がないと決まらない。言い方を変えると、
「ど の平面上で回転させるか」とも言える。 つまり、3 次元空間上の原点中心の回転は、平面を指定する法線 ベクトル 𝑛 と、その平面上で回転させる角度 𝜃 との 2 つの情報で 決まる。 (こういうことをビジュアライズする能力が欲しい・・・) 宇佐見 公輔 四元数と回転
12/15 3 次元空間上の回転(再) 3 次元空間上の回転 点 𝑋 = (𝑥1 ,
𝑥2 , 𝑥3 ) を法線ベクトル 𝑛 = (𝑛1 , 𝑛2 , 𝑛3 )(ただし |𝑛| = 1 とする)で決まる平面上を 𝜃 だけ回転させる操作を考える。 純虚四元数 𝑥 = 𝑥1 i + 𝑥2 j + 𝑥3 k に対して、大きさ 1 の四元数 𝑞 = cos 𝜃 2 + (sin 𝜃 2 ) (𝑛1 i + 𝑛2 j + 𝑛3 k) を使った次の操作 𝑥 ↦ 𝑞𝑥𝑞−1 は、上述の 3 次元空間上の回転をあらわす。 宇佐見 公輔 四元数と回転
13/15 3 次元空間上の回転の不思議 実際に回転であることの説明はここではしないけれど、3 次元空 間の点と純虚四元数との対応を念頭に置いて、変換 𝑥 ↦ 𝑞𝑥𝑞−1 が
回転になっているらしいというのを飲み込んだとして。 さらに考えてみると、大きさ 1 の四元数を集めた集合は、乗法で 群をなす。𝑥 ↦ 𝑞𝑥𝑞−1 という操作は、群の言葉でいえば共役をと る操作。純虚四元数に対して、大きさ 1 の四元数の群の元で共役 をとるのが、回転変換あるいは鏡映変換に対応すると考えられる。 それでも、𝑥 ↦ 𝑞𝑥𝑞−1 という操作は、ちょっと不思議な感じが する。 宇佐見 公輔 四元数と回転
14/15 3 次元空間上の回転の不思議 𝑥 と 𝑞𝑥𝑞−1 は純虚四元数であり、3 次元空間の点と対応している。 しかしその過程で出てくる 𝑞𝑥
あるいは 𝑥𝑞−1 は純虚四元数では ない。 つまり、3 次元空間上の回転をあらわすために、一度 4 次元の世 界に飛び出している。 左から 𝑞 をかける操作で、実軸方向に (𝑞|𝑥) だけずれた世界で、外 積 𝑞 × 𝑥 をとる。 そこに右から 𝑞−1 をかける操作で、実軸方向にずらして元の世界 に戻ってきて、外積をとる。 これが実は回転になっているというのである。不思議な感じがし ませんか? 宇佐見 公輔 四元数と回転
15/15 参考文献 結論的な話がない感じですが、参考文献を挙げておきます。 これらには先ほどの操作が 3 次元空間をあらわすことの証明や説 明が書かれています。 松岡 学「数の世界 自然数から実数、複素数、そして四元数
へ」講談社ブルーバックス 矢野 忠「四元数の発見」海鳴社 今野 紀雄「四元数」森北出版 宇佐見 公輔 四元数と回転