<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
<font size="+2"><tt><br>
Dear ITK-users,<br>
<br>
I used the itk::matrix&lt;double,3,3&gt; class to compute the matrix
inverse (GetInverse()) for a 3x3 matrix and I got a warning followed by
an incorrect answer.<br>
<br>
I found the correct inverse in matlab and checked that the condition
number of the matrix was 1.<br>
<br>
So I am wondering why vnl would find this difficult. I also did not
understand the warnings very well. It would be great if someone shed
some light on this. Thank you so much.<br>
<br>
</tt></font><font size="+2"><tt>Best regards,<br>
Suyash.<br>
</tt></font><br>
<font size="+2"><tt><br>
matrix<br>
&nbsp;0.99925&nbsp;&nbsp; 0.0371382 -0.0109982<br>
-0.0373772 0.99905&nbsp;&nbsp; -0.0223916<br>
&nbsp;0.0101562 0.0227859&nbsp; 0.999689<br>
<br>
<br>
warnings:<br>
InsightToolkit-2.2.0/Utilities/vxl/core/vnl/algo/vnl_svd.txx:
suspicious return value (2) from SVDC<br>
InsightToolkit-2.2.0/Utilities/vxl/core/vnl/algo/vnl_svd.txx: M is 3x3<br>
M = [ ...<br>
&nbsp;0.9992500000000&nbsp; 0.0371382000000 -0.0109982000000<br>
-0.0373772000000&nbsp; 0.9990500000000 -0.0223916000000<br>
&nbsp;0.0101562000000&nbsp; 0.0227859000000&nbsp; 0.9996890000000&nbsp; ]<br>
<br>
<br>
</tt></font><font size="+2"><tt>matrix inverse using vnl in itk
(incorrect)<br>
-0.982557 -0.0644525 -0.174434<br>
-0.0677511 0.997618&nbsp;&nbsp; 0.0130162<br>
-0.17318&nbsp; -0.0246073&nbsp; 0.984583<br>
<br>
<br>
</tt></font><font size="+2"><tt>matrix inverse in matlab (correct)<br>
&nbsp;0.9992&nbsp;&nbsp; -0.0374&nbsp;&nbsp;&nbsp; 0.0102<br>
&nbsp;0.0371&nbsp;&nbsp;&nbsp; 0.9991&nbsp;&nbsp;&nbsp; 0.0228<br>
-0.0110&nbsp;&nbsp; -0.0224&nbsp;&nbsp;&nbsp; 0.9997<br>
<br>
<br>
</tt></font>
</body>
</html>