필터 지우기
필터 지우기

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개)

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 CenterFile Exchange에서 Dimensionality 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