diff --git a/Testing/otbUnConstrainedLeastSquareImageFilter.cxx b/Testing/otbUnConstrainedLeastSquareImageFilter.cxx
index 512c6b3a353ef2e31a8af0565022489986c81399..ddb85f161e8f7a35b78d48d457abe35deb2a10d7 100644
--- a/Testing/otbUnConstrainedLeastSquareImageFilter.cxx
+++ b/Testing/otbUnConstrainedLeastSquareImageFilter.cxx
@@ -55,7 +55,7 @@ int otbUnConstrainedLeastSquareImageFilterTest(int argc, char * argv[])
 
   typedef VectorImageToMatrixImageFilterType::MatrixType MatrixType;
   MatrixType endMembers = endMember2Matrix->GetMatrix();
-  MatrixType pinv = vnl_matrix_inverse<double>(endMembers);
+  MatrixType pinv = vnl_matrix_inverse<PixelType>(endMembers);
 
   UnConstrainedLeastSquareSolverType::Pointer unmixer = \
       UnConstrainedLeastSquareSolverType::New();