Way to solve AX=XB
24 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Is there any implementation of Tsai and lenz's (Or any other) method for solving AX=XB for hand- Eye Calibration?
0 Kommentare
Antworten (3)
Matt J
am 28 Jan. 2023
Bearbeitet: Matt J
am 28 Jan. 2023
[ma,na]=size(A);
[mb,nb]=size(B);
%size(X)=[na,mb]
X=null( kron(speye(mb),A) - kron(B.',speye(na)) );
X=reshape(X,na,mb,[]);
2 Kommentare
the cyclist
am 28 Jan. 2023
I couldn't get this method to work. Am I overlooking something dumb?
rng default
A = rand(5);
B = rand(5);
[ma,na]=size(A);
[mb,nb]=size(B);
X=null( kron(speye(mb),A) - kron(B.',speye(na)) );
X=reshape(X,na,mb,[]);
Bruno Luong
am 28 Jan. 2023
Bearbeitet: Bruno Luong
am 28 Jan. 2023
null can only work wth full matrix
rng default
A = rand(5);
XX = rand(5);
B = XX\(A*XX);
[ma,na]=size(A);
[mb,nb]=size(B);
K=null( kron(eye(mb),A) - kron(B.',eye(na)));
R = rand(size(K,2),1); % Any random vector with this size will do the job
X = reshape(K*R,[na,mb])
norm(A*X-X*B)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!