フィルターのクリア

How to calculate a 2D rotation vector with PCA?

5 ビュー (過去 30 日間)
Wookernel
Wookernel 2015 年 5 月 23 日
編集済み: Alfonso Nieto-Castanon 2015 年 5 月 23 日
Hi all. I have two dataset (n x 2 matrix) in 2D space and I know their PCA matrices. PCA1 = [0.9981 -0.0622; 0.0622 0.9981], PCA2 = [0.5617 0.8273; 0.8273 -0.5617]
And I want to rotate one of these dataset and make them to be registered. How can I get a rotation vector?
  1 件のコメント
Wookernel
Wookernel 2015 年 5 月 23 日
The two datasets are extremely similar.

サインインしてコメントする。

回答 (1 件)

Alfonso Nieto-Castanon
Alfonso Nieto-Castanon 2015 年 5 月 23 日
編集済み: Alfonso Nieto-Castanon 2015 年 5 月 23 日
find the angle between the first column of PCA1 and the first column of PCA2 (hint: cos(angle(a,b))*norm(a)*norm(b)=a'*b) and build your rotation matrix from that (e.g. [cos(ang) sin(ang); -sin(ang) cos(ang)])

カテゴリ

Help Center および File ExchangeDimensionality Reduction and Feature Extraction についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by