15 #ifndef __itkMammogramFatSubtractionImageFilter_h
16 #define __itkMammogramFatSubtractionImageFilter_h
18 #include <itkImageToImageFilter.h>
19 #include <itkImageRegionIterator.h>
20 #include <itkImageRegionIteratorWithIndex.h>
21 #include <itkImageRegionConstIterator.h>
22 #include <itkImageRegionConstIteratorWithIndex.h>
23 #include <itkImageLinearIteratorWithIndex.h>
35 template<
class TInputImage>
37 public ImageToImageFilter< TInputImage, TInputImage >
42 typedef ImageToImageFilter< TInputImage,TInputImage >
Superclass;
53 itkStaticConstMacro(ImageDimension,
unsigned int,
54 TInputImage::ImageDimension);
69 typedef typename itk::Image<MaskPixelType, ImageDimension>
MaskImageType;
90 void SetMask(
const MaskImageType *imMask );
92 typedef typename itk::ImageRegionIterator< TInputImage >
IteratorType;
103 #ifdef ITK_USE_CONCEPT_CHECKING
105 itkConceptMacro(DimensionShouldBe2,
106 (Concept::SameDimension<itkGetStaticConstMacro(InputImageDimension),2>));
107 itkConceptMacro(InputHasNumericTraitsCheck,
108 (Concept::HasNumericTraits<InputImagePixelType>));
125 MaskImagePointer GetMaskOfRegionInsideBreastEdge(
void );
132 void PrintSelf(std::ostream& os, Indent indent)
const;
149 virtual DataObject::Pointer MakeOutput(
unsigned int idx);
151 template<
typename ShrinkImageType>
152 void ComputeShrinkFactors(
typename ShrinkImageType::ConstPointer &
image,
153 unsigned int maxShrunkDimension,
154 itk::Array< double > &sampling,
155 typename ShrinkImageType::SpacingType &outSpacing,
158 template<
typename ShrinkImageType>
159 typename ShrinkImageType::Pointer
160 ShrinkTheInputImage(
typename ShrinkImageType::ConstPointer &
image,
161 unsigned int maxShrunkDimension,
164 template<
typename ShrinkImageType>
165 typename ShrinkImageType::Pointer
166 ShrinkTheInputImageViaMinResample(
typename ShrinkImageType::ConstPointer &
image,
167 unsigned int maxShrunkDimension,
174 void ComputeFatEstimationFit();
177 void ComputeMinIntensityVersusDistanceFromEdge();
180 void SubtractFatEstimation( InputImagePointer &imFatSubtraction,
181 InputImagePointer &imFatEstimation );
184 void EnlargeOutputRequestedRegion(DataObject *output);
187 void ComputeDistanceTransform(
void );
192 void operator=(
const Self&);
197 #ifndef ITK_MANUAL_INSTANTIATION
198 #include "itkMammogramFatSubtractionImageFilter.txx"
InputImageType::PixelType InputImagePixelType
Definition: itkMammogramFatSubtractionImageFilter.h:61
InputImageType::IndexType InputImageIndexType
Definition: itkMammogramFatSubtractionImageFilter.h:64
bool m_flgComputeFatEstimationFit
Definition: itkMammogramFatSubtractionImageFilter.h:135
bool GetComputeFatEstimationFit(void)
Definition: itkMammogramFatSubtractionImageFilter.h:117
MaskImageType::ConstPointer MaskImageConstPointer
Definition: itkMammogramFatSubtractionImageFilter.h:70
DistanceImageType::SpacingType DistanceImageSpacingType
Definition: itkMammogramFatSubtractionImageFilter.h:85
ImageType::SizeType SizeType
Definition: niftkMakeLapUSProbeBasicModel.cxx:31
void SetComputeFatEstimationFit(bool flag)
Definition: itkMammogramFatSubtractionImageFilter.h:118
DistanceImagePointer m_Distance
Definition: itkMammogramFatSubtractionImageFilter.h:142
DistanceImageType::IndexType DistanceImageIndexType
Definition: itkMammogramFatSubtractionImageFilter.h:87
InputImageType::Pointer InputImagePointer
Definition: itkMammogramFatSubtractionImageFilter.h:58
float m_FatThicknessEstimate
Definition: itkMammogramFatSubtractionImageFilter.h:145
void SetVerbose(bool flag)
Definition: itkMammogramFatSubtractionImageFilter.h:113
DistanceImageType::PointType DistanceImagePointType
Definition: itkMammogramFatSubtractionImageFilter.h:86
DistanceImageType::SizeType DistanceImageSizeType
Definition: itkMammogramFatSubtractionImageFilter.h:84
bool GetVerbose(void)
Definition: itkMammogramFatSubtractionImageFilter.h:112
GLenum GLsizei GLenum GLenum const GLvoid * image
Definition: glew.h:4052
MaskImageType::RegionType MaskImageRegionType
Definition: itkMammogramFatSubtractionImageFilter.h:71
MaskImageType::SizeType MaskImageSizeType
Definition: itkMammogramFatSubtractionImageFilter.h:73
MaskImageType::IndexType MaskImageIndexType
Definition: itkMammogramFatSubtractionImageFilter.h:76
Definition: niftkITKAffineResampleImage.cxx:74
std::string m_fileOutputFit
Definition: itkMammogramFatSubtractionImageFilter.h:138
ImageType::IndexType IndexType
Definition: niftkMakeLapUSProbeBasicModel.cxx:32
DistanceImageType::Pointer DistanceImagePointer
Definition: itkMammogramFatSubtractionImageFilter.h:81
unsigned char MaskPixelType
Definition: itkMammogramFatSubtractionImageFilter.h:68
itk::Image< DistancePixelType, ImageDimension > DistanceImageType
Definition: itkMammogramFatSubtractionImageFilter.h:80
SmartPointer< Self > Pointer
Definition: itkMammogramFatSubtractionImageFilter.h:43
itk::Image< MaskPixelType, ImageDimension > MaskImageType
Definition: itkMammogramFatSubtractionImageFilter.h:69
SmartPointer< const Self > ConstPointer
Definition: itkMammogramFatSubtractionImageFilter.h:44
bool m_flgVerbose
Definition: itkMammogramFatSubtractionImageFilter.h:134
void SetComputeFatEstimationFitOn(void)
Definition: itkMammogramFatSubtractionImageFilter.h:119
InputImageType::ConstPointer InputImageConstPointer
Definition: itkMammogramFatSubtractionImageFilter.h:59
MaskImagePointer m_Mask
Definition: itkMammogramFatSubtractionImageFilter.h:141
MaskImageType::PointType MaskImagePointType
Definition: itkMammogramFatSubtractionImageFilter.h:75
itk::ImageRegionIterator< TInputImage > IteratorType
Definition: itkMammogramFatSubtractionImageFilter.h:92
void SetFileOutputFit(std::string fn)
Definition: itkMammogramFatSubtractionImageFilter.h:123
float PixelType
Definition: niftkBreastDCEandADC.cxx:88
ImageType::RegionType RegionType
Definition: niftkMakeLapUSProbeBasicModel.cxx:30
void SetVerboseOff(void)
Definition: itkMammogramFatSubtractionImageFilter.h:115
itk::MammogramFatEstimationFitMetricForArray< TInputImage > FitArrayMetricType
Definition: itkMammogramFatSubtractionImageFilter.h:99
itk::ImageLinearIteratorWithIndex< MaskImageType > MaskLineIteratorType
Definition: itkMammogramFatSubtractionImageFilter.h:94
MaskImageType::SpacingType MaskImageSpacingType
Definition: itkMammogramFatSubtractionImageFilter.h:74
MammogramFatSubtractionImageFilter Self
Definition: itkMammogramFatSubtractionImageFilter.h:41
TInputImage InputImageType
Definition: itkMammogramFatSubtractionImageFilter.h:57
itk::ImageRegionConstIteratorWithIndex< TInputImage > IteratorWithIndexConstType
Definition: itkMammogramFatSubtractionImageFilter.h:97
itk::MammogramFatEstimationFitMetricForImage< TInputImage > FitImageMetricType
Definition: itkMammogramFatSubtractionImageFilter.h:100
DistanceImageType::RegionType DistanceImageRegionType
Definition: itkMammogramFatSubtractionImageFilter.h:83
float DistancePixelType
Definition: itkMammogramFatSubtractionImageFilter.h:79
InputImageType::PointType InputImagePointType
Definition: itkMammogramFatSubtractionImageFilter.h:63
A metric to compute the similarity between an image and breast fat model.
Definition: itkMammogramFatEstimationFitMetricForArray.h:38
std::string m_fileOutputIntensityVsEdgeDist
Definition: itkMammogramFatSubtractionImageFilter.h:137
InputImageType::RegionType InputImageRegionType
Definition: itkMammogramFatSubtractionImageFilter.h:60
itk::ImageRegionConstIterator< TInputImage > IteratorConstType
Definition: itkMammogramFatSubtractionImageFilter.h:96
MaskImageType::Pointer MaskImagePointer
Definition: itkMammogramFatSubtractionImageFilter.h:72
ImageToImageFilter< TInputImage, TInputImage > Superclass
Definition: itkMammogramFatSubtractionImageFilter.h:42
itk::ImageRegionIteratorWithIndex< TInputImage > IteratorWithIndexType
Definition: itkMammogramFatSubtractionImageFilter.h:93
2D image filter class to subtract the fat signal from a mammogram.
Definition: itkMammogramFatSubtractionImageFilter.h:36
void SetVerboseOn(void)
Definition: itkMammogramFatSubtractionImageFilter.h:114
A metric to compute the similarity between an image and breast fat model.
Definition: itkMammogramFatEstimationFitMetricForImage.h:38
float m_BreastEdgeWidthEstimate
Definition: itkMammogramFatSubtractionImageFilter.h:144
InputImagePointer m_Image
Definition: itkMammogramFatSubtractionImageFilter.h:140
DistanceImageType::ConstPointer DistanceImageConstPointer
Definition: itkMammogramFatSubtractionImageFilter.h:82
GLsizei const GLcharARB ** string
Definition: glew.h:5194
void SetComputeFatEstimationFitOff(void)
Definition: itkMammogramFatSubtractionImageFilter.h:120
void SetFileOutputIntensityVsEdgeDist(std::string fn)
Definition: itkMammogramFatSubtractionImageFilter.h:122
InputImageType::SpacingType InputImageSpacingType
Definition: itkMammogramFatSubtractionImageFilter.h:62
InputImageType::SizeType InputImageSizeType
Definition: itkMammogramFatSubtractionImageFilter.h:65