ITK  4.8.0
Insight Segmentation and Registration Toolkit
itkThresholdSegmentationLevelSetImageFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright Insight Software Consortium
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 #ifndef itkThresholdSegmentationLevelSetImageFilter_h
19 #define itkThresholdSegmentationLevelSetImageFilter_h
20 
23 
24 namespace itk
25 {
83 template< typename TInputImage,
84  typename TFeatureImage,
85  typename TOutputPixelType = float >
87  public SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >
88 {
89 public:
96 
98  typedef typename Superclass::ValueType ValueType;
101 
106 
109 
111  itkNewMacro(Self);
112 
116  {
117  this->m_ThresholdFunction->SetUpperThreshold(v);
118  this->Modified();
119  }
121 
123  {
124  this->m_ThresholdFunction->SetLowerThreshold(v);
125  this->Modified();
126  }
127 
129  {
130  return m_ThresholdFunction->GetUpperThreshold();
131  }
132 
134  {
135  return m_ThresholdFunction->GetLowerThreshold();
136  }
137 
141  {
142  this->m_ThresholdFunction->SetEdgeWeight(v);
143  this->Modified();
144  }
146 
148  {
149  return m_ThresholdFunction->GetEdgeWeight();
150  }
151 
156  {
157  this->m_ThresholdFunction->SetSmoothingIterations(v);
158  this->Modified();
159  }
161 
163  {
164  return m_ThresholdFunction->GetSmoothingIterations();
165  }
166 
171  {
172  this->m_ThresholdFunction->SetSmoothingTimeStep(v);
173  this->Modified();
174  }
176 
178  {
179  return m_ThresholdFunction->GetSmoothingTimeStep();
180  }
181 
186  {
187  this->m_ThresholdFunction->SetSmoothingConductance(v);
188  this->Modified();
189  }
191 
193  {
194  return m_ThresholdFunction->GetSmoothingConductance();
195  }
196 
197 protected:
200 
201  virtual void PrintSelf(std::ostream & os, Indent indent) const ITK_OVERRIDE;
202 
203  ThresholdSegmentationLevelSetImageFilter(const Self &); // purposely not impl.
204  void operator=(const Self &); //purposely not
205  // implemented
206 
207 private:
209 };
210 } // end namespace itk
211 
212 #ifndef ITK_MANUAL_INSTANTIATION
213 #include "itkThresholdSegmentationLevelSetImageFilter.hxx"
214 #endif
215 
216 #endif
Light weight base class for most itk classes.
virtual void PrintSelf(std::ostream &os, Indent indent) const override
SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType > Superclass
ThresholdSegmentationLevelSetFunction< OutputImageType, FeatureImageType > ThresholdFunctionType
Segments structures in images based on intensity values.
Image< TOutputPixelType, itkGetStaticConstMacro(InputImageDimension) > OutputImageType
virtual void Modified() const
Control indentation during Print() invocation.
Definition: itkIndent.h:49
A base class which defines the API for implementing a special class of image segmentation filters usi...
This function is used in ThresholdSegmentationLevelSetImageFilter to segment structures in images bas...