Generalized Matrix Multiplication demo (Bugfix #4130)
Description
There is a wrong description in fundam.cpp
in line 528 to 530, such description is wrong, such coding is calculating F0 <- U'*diag([W(1), W(2), 0])*V:
// F0 <- U*diag([W(1), W(2), 0])*V'
cvGEMM( &U, &W, 1., 0, 0., &TF, CV_GEMM_A_T );
cvGEMM( &TF, &V, 1., 0, 0., &F0, 0/*CV_GEMM_B_T*/ );
To get U*diag([W(1), W(2), 0])*V', it should be:
cvGEMM( &U, &W, 1., 0, 0., &TF, 0 );
cvGEMM( &TF, &V, 1., 0, 0., &F0, CV_GEMM_B_T );