From: Rousseau F. <fro...@it...> - 2004-04-16 21:31:23
|
Hello, I'd like to inverse a simple matrix 4x4. That's the code I use : vnl_double_4x4 A; vnl_double_4x4 Inv; //to check if the matrix A is inversible cout<<A; cout<<"det A :"<<vnl_det(A)<<endl; Inv = vnl_inverse(A); and this is the error message during the execution : 0.9998 0 0.0199984 0.0590441 -0 1 0 0 -0.0199984 0 0.9998 0 0 0 0 1 det A :1 RRDemo: /home/francois/Code/VXL/vxl-1.0.0/core/vnl/vnl_inverse.h:122: vnl_matrix_fixed<T, 4, 4> vnl_inverse(const vnl_matrix_fixed<T, 4, 4>&) [with T = double]: Assertion `!"Cannot invert 4x4 matrix with zero determinant"' failed. The determinant is equal to 1 !!! Is there a bug in this procedure or did I do a mistake ?! (presumably, it's the second one!) Thank you. Francois |