how to get a transformation matrix

2 views (last 30 days)
askar rozi
askar rozi on 29 Mar 2015
Answered: Kautuk Raj on 2 Jun 2023
Hi,all, i have two group of vectors(group A and group B), each group contains 30,000 vectors,the dimension of each vector is 20. I want to train a transformation matrix which is transform group A to group B, is there any function can do this in MatLab, any suggestion would be helpful,thank you!

Answers (1)

Kautuk Raj
Kautuk Raj on 2 Jun 2023
To train a transformation matrix that maps vectors from group A to group B in MATLAB, the Procrustes analysis function procrustes can be used. The documentation page explains this with an example.
The following code reproduces your use case and applies the process.
A = rand(30000, 20);
B = rand(30000, 20);
[~, T] = procrustes(A, B);
A_transformed = A * T.T;
This will transform each vector in group A so that it aligns with the corresponding vector in group B.

Community Treasure Hunt

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

Start Hunting!