13 #ifndef itSmoothedClassProbabilites_cpp 14 #define itSmoothedClassProbabilites_cpp 17 #include "itkObjectFactory.h" 18 #include "itkImageRegionIterator.h" 19 #include "itkImageRegionConstIterator.h" 20 #include <itkDiscreteGaussianImageFilter.h> 32 template<
class TImage>
37 typename TImage::Pointer out = this->GetOutput(0);
38 out->SetRegions(this->GetInput(0)->GetLargestPossibleRegion());
41 for(
unsigned int i = 0 ; i < this->GetNumberOfInputs(); i++)
44 auto gf = itk::DiscreteGaussianImageFilter<TImage,TImage>::New();
45 gf->SetInput(this->GetInput(i));
46 gf->SetVariance(this->m_Sigma);
49 ImageRegionConstIterator<TImage> git(gf->GetOutput(),gf->GetOutput()->GetLargestPossibleRegion());
50 ImageRegionIterator<TImage> maskiter(m_MaskImage, m_MaskImage->GetLargestPossibleRegion());
51 ImageRegionIterator<TImage> outputIter(out, out->GetLargestPossibleRegion());
53 while (!outputIter.IsAtEnd())
55 if(maskiter.Value() > 0 ){
57 if(git.Value() > outputIter.Value())
79 #endif // itSmoothedClassProbabilites_cpp
virtual void GenerateData()