Skip to content
Snippets Groups Projects
Commit f0cf5b7e authored by Manuel Grizonnet's avatar Manuel Grizonnet
Browse files

STYLE:change c casts in c++ casts and few enhancements

parent ce37fbf0
No related branches found
No related tags found
No related merge requests found
......@@ -14,18 +14,10 @@
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
#ifndef __otbMDMDNMFImageFilter_h
#define __otbMDMDNMFImageFilter_h
#include "itkImageToImageFilter.h"
#include "itkConstShapedNeighborhoodIterator.h"
#include "itkNeighborhoodAlgorithm.h"
#include "itkImageRegionIterator.h"
#include "itkListSample.h"
#include "itkMeanCalculator.h"
#include "itkCovarianceCalculator.h"
#include "itkVariableSizeMatrix.h"
#include "otbVectorImageToMatrixImageFilter.h"
......@@ -127,10 +119,10 @@ class ITK_EXPORT MDMDNMFImageFilter:
public:
/** Standard class typedefs. */
typedef MDMDNMFImageFilter Self;
typedef itk::ImageToImageFilter< TInputImage, TOutputImage > Superclass;
typedef itk::SmartPointer<Self> Pointer;
typedef itk::SmartPointer<const Self> ConstPointer;
typedef MDMDNMFImageFilter Self;
typedef itk::ImageToImageFilter< TInputImage, TOutputImage > Superclass;
typedef itk::SmartPointer<Self> Pointer;
typedef itk::SmartPointer<const Self> ConstPointer;
/** Type macro */
itkNewMacro(Self);
......@@ -139,22 +131,22 @@ public:
itkTypeMacro(MDMDNMFImageFilter, ImageToImageFilter);
/** typedef related to input and output images */
typedef TInputImage InputImageType;
typedef typename InputImageType::Pointer InputPointerType;
typedef typename InputImageType::ConstPointer InputConstPointerType;
typedef typename InputImageType::IndexType InputIndexType;
typedef typename InputImageType::SizeType InputSizeType;
typedef TInputImage InputImageType;
typedef typename InputImageType::Pointer InputPointerType;
typedef typename InputImageType::ConstPointer InputConstPointerType;
typedef typename InputImageType::IndexType InputIndexType;
typedef typename InputImageType::SizeType InputSizeType;
typedef TOutputImage OutputImageType;
typedef typename OutputImageType::Pointer OutputPointerType;
typedef typename OutputImageType::IndexType OutputIndexType;
typedef typename OutputImageType::OffsetType OutputOffsetType;
typedef typename OutputImageType::SizeType OutputSizeType;
typedef typename OutputImageType::RegionType OutputImageRegionType;
typedef TOutputImage OutputImageType;
typedef typename OutputImageType::Pointer OutputPointerType;
typedef typename OutputImageType::IndexType OutputIndexType;
typedef typename OutputImageType::OffsetType OutputOffsetType;
typedef typename OutputImageType::SizeType OutputSizeType;
typedef typename OutputImageType::RegionType OutputImageRegionType;
/* Matrix type */
typedef double PrecisionType;
typedef vnl_matrix<PrecisionType> MatrixType;
typedef double PrecisionType;
typedef vnl_matrix<PrecisionType> MatrixType;
typedef typename otb::VectorImageToMatrixImageFilter<InputImageType> VectorImageToMatrixImageFilterType;
/* vector type */
......@@ -187,6 +179,7 @@ public:
itkSetMacro(LambdS, double);
itkGetMacro(LambdS, double);
protected:
MDMDNMFImageFilter();
virtual ~MDMDNMFImageFilter() {}
......
......@@ -159,7 +159,7 @@ MDMDNMFImageFilter<TInputImage, TOutputImage>
//-------------------- Computing f --------------------------//
evalf = E1.frobenius_norm() * E1.frobenius_norm()
- m_LambdS * E2.frobenius_norm() * E2.frobenius_norm()
+ m_LambdD * (trAtA - (1./ ((double) nbBands) * trE3));
+ m_LambdD * (trAtA - (1./ (static_cast <double> (nbBands)) * trE3));
return evalf;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment