ITK  5.3.0
Insight Toolkit
itkBinaryImageToLevelSetImageAdaptor.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright NumFOCUS
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 
19 #ifndef itkBinaryImageToLevelSetImageAdaptor_h
20 #define itkBinaryImageToLevelSetImageAdaptor_h
21 
23 
24 #include "itkLevelSetDenseImage.h"
25 #include "itkImageToImageFilter.h"
26 
30 
33 
34 namespace itk
35 {
50 template <typename TInputImage, typename TLevelSet>
51 class ITK_TEMPLATE_EXPORT BinaryImageToLevelSetImageAdaptor
52 {};
53 
54 
57 template <typename TInputImage, typename TLevelSetImage>
58 class ITK_TEMPLATE_EXPORT BinaryImageToLevelSetImageAdaptor<TInputImage, LevelSetDenseImage<TLevelSetImage>>
59  : public BinaryImageToLevelSetImageAdaptorBase<TInputImage, LevelSetDenseImage<TLevelSetImage>>
60 {
61 public:
62  ITK_DISALLOW_COPY_AND_MOVE(BinaryImageToLevelSetImageAdaptor);
63 
65 
70 
72  itkNewMacro(Self);
73 
76 
77  using InputImageType = TInputImage;
78  using InputImagePixelType = typename InputImageType::PixelType;
80  using InputImagePointer = typename InputImageType::Pointer;
83 
84  static constexpr unsigned int ImageDimension = InputImageType::ImageDimension;
85 
88 
91 
94  itkSetObjectMacro(SignedDistanceTransformFilter, SignedDistanceTransformFilterType);
95  itkGetModifiableObjectMacro(SignedDistanceTransformFilter, SignedDistanceTransformFilterType);
97 
101  void
102  Initialize() override;
103 
104 protected:
107 
110 
111 private:
113 };
114 
116 
123 template <typename TInput, typename TOutput>
125  : public BinaryImageToLevelSetImageAdaptorBase<TInput, TOutput>
126 {
127 public:
128  ITK_DISALLOW_COPY_AND_MOVE(BinaryImageToSparseLevelSetImageAdaptorBase);
129 
134 
137 
138  using InputImageType = typename Superclass::InputImageType;
139  using InputImagePixelType = typename Superclass::InputImagePixelType;
140  using InputImageIndexType = typename Superclass::InputImageIndexType;
141  using InputImagePointer = typename Superclass::InputImagePointer;
142  using InputImageRegionType = typename Superclass::InputImageRegionType;
143  using InputPixelRealType = typename Superclass::InputPixelRealType;
144 
145  static constexpr unsigned int ImageDimension = InputImageType::ImageDimension;
146 
147  using LevelSetType = typename Superclass::LevelSetType;
148  using LevelSetPointer = typename Superclass::LevelSetPointer;
149 
150  using LevelSetInputType = typename LevelSetType::InputType;
151  using LevelSetOutputType = typename LevelSetType::OutputType;
152 
153  using LevelSetLabelObjectType = typename LevelSetType::LabelObjectType;
154  using LayerIdType = typename LevelSetLabelObjectType::LabelType;
155  using LevelSetLabelObjectPointer = typename LevelSetType::LabelObjectPointer;
156  using LevelSetLabelObjectLengthType = typename LevelSetType::LabelObjectLengthType;
157  using LevelSetLabelObjectLineType = typename LevelSetType::LabelObjectLineType;
158 
159  using LevelSetLabelMapType = typename LevelSetType::LabelMapType;
160  using LevelSetLabelMapPointer = typename LevelSetType::LabelMapPointer;
161 
162  using LevelSetLayerType = typename LevelSetType::LayerType;
163  using LevelSetLayerIterator = typename LevelSetType::LayerIterator;
164  using LevelSetLayerConstIterator = typename LevelSetType::LayerConstIterator;
165 
168 
169  using LayerPairType = std::pair<LevelSetInputType, LevelSetOutputType>;
170 
173 
175 
176 protected:
178  : Superclass()
179  {}
180  ~BinaryImageToSparseLevelSetImageAdaptorBase() override = default;
181 
183 
185 };
186 
188 
190 template <typename TInput, typename TOutput>
191 class ITK_TEMPLATE_EXPORT
192  BinaryImageToLevelSetImageAdaptor<TInput, WhitakerSparseLevelSetImage<TOutput, TInput::ImageDimension>>
194  WhitakerSparseLevelSetImage<TOutput, TInput::ImageDimension>>
195 {
196 public:
197  ITK_DISALLOW_COPY_AND_MOVE(BinaryImageToLevelSetImageAdaptor);
198 
200 
205 
206 
208  itkNewMacro(Self);
209 
212 
213  using InputImageType = typename Superclass::InputImageType;
214  using InputImagePixelType = typename Superclass::InputImagePixelType;
215  using InputImageIndexType = typename Superclass::InputImageIndexType;
216  using InputImagePointer = typename Superclass::InputImagePointer;
217  using InputImageRegionType = typename Superclass::InputImageRegionType;
218  using InputPixelRealType = typename Superclass::InputPixelRealType;
219 
220  static constexpr unsigned int ImageDimension = InputImageType::ImageDimension;
221 
222  using LevelSetPointer = typename Superclass::LevelSetPointer;
223 
224  using LevelSetInputType = typename Superclass::LevelSetInputType;
225  using LevelSetOutputType = typename Superclass::LevelSetOutputType;
226 
227  using LevelSetLabelObjectType = typename Superclass::LevelSetLabelObjectType;
228  using LayerIdType = typename Superclass::LayerIdType;
229  using LevelSetLabelObjectPointer = typename Superclass::LevelSetLabelObjectPointer;
230  using LevelSetLabelObjectLengthType = typename Superclass::LevelSetLabelObjectLengthType;
231  using LevelSetLabelObjectLineType = typename Superclass::LevelSetLabelObjectLineType;
232 
233  using LevelSetLabelMapType = typename Superclass::LevelSetLabelMapType;
234  using LevelSetLabelMapPointer = typename Superclass::LevelSetLabelMapPointer;
235 
236  using LevelSetLayerType = typename Superclass::LevelSetLayerType;
237  using LevelSetLayerIterator = typename Superclass::LevelSetLayerIterator;
238  using LevelSetLayerConstIterator = typename Superclass::LevelSetLayerConstIterator;
239 
240  using InternalImageType = typename Superclass::InternalImageType;
241  using InternalImagePointer = typename Superclass::InternalImagePointer;
242 
243  using LayerPairType = typename Superclass::LayerPairType;
244 
245  using InputIteratorType = typename Superclass::InputIteratorType;
246  using InternalIteratorType = typename Superclass::InternalIteratorType;
247 
248  using NeighborhoodIteratorType = typename Superclass::NeighborhoodIteratorType;
249 
250  void
251  Initialize() override;
252 
253 protected:
256 
259 
260 private:
262  void
263  PropagateToOuterLayers(LayerIdType layerToBeScanned, LayerIdType outputLayer, LayerIdType testValue);
264 
266  void
267  FindActiveLayer();
268 
270  void
271  FindPlusOneMinusOneLayer();
272 };
274 
276 
278 template <typename TInput>
279 class ITK_TEMPLATE_EXPORT BinaryImageToLevelSetImageAdaptor<TInput, ShiSparseLevelSetImage<TInput::ImageDimension>>
280  : public BinaryImageToSparseLevelSetImageAdaptorBase<TInput, ShiSparseLevelSetImage<TInput::ImageDimension>>
281 {
282 public:
283  ITK_DISALLOW_COPY_AND_MOVE(BinaryImageToLevelSetImageAdaptor);
284 
286 
291 
293  itkNewMacro(Self);
294 
297 
298  using InputImageType = typename Superclass::InputImageType;
299 
300  using InputImagePixelType = typename Superclass::InputImagePixelType;
301  using InputImageIndexType = typename Superclass::InputImageIndexType;
302  using InputImagePointer = typename Superclass::InputImagePointer;
303  using InputImageRegionType = typename Superclass::InputImageRegionType;
304  using InputPixelRealType = typename Superclass::InputPixelRealType;
305 
306  static constexpr unsigned int ImageDimension = InputImageType::ImageDimension;
307 
308  // using LevelSetType = typename Superclass::LevelSetType;
309  using LevelSetPointer = typename Superclass::LevelSetPointer;
310 
311  using LevelSetInputType = typename Superclass::LevelSetInputType;
312  using LevelSetOutputType = typename Superclass::LevelSetOutputType;
313 
314  using LevelSetLabelObjectType = typename Superclass::LevelSetLabelObjectType;
315  using LayerIdType = typename Superclass::LayerIdType;
316  using LevelSetLabelObjectPointer = typename Superclass::LevelSetLabelObjectPointer;
317  using LevelSetLabelObjectLengthType = typename Superclass::LevelSetLabelObjectLengthType;
318  using LevelSetLabelObjectLineType = typename Superclass::LevelSetLabelObjectLineType;
319 
320  using LevelSetLabelMapType = typename Superclass::LevelSetLabelMapType;
321  using LevelSetLabelMapPointer = typename Superclass::LevelSetLabelMapPointer;
322 
323  using LevelSetLayerType = typename Superclass::LevelSetLayerType;
324  using LevelSetLayerIterator = typename Superclass::LevelSetLayerIterator;
325  using LevelSetLayerConstIterator = typename Superclass::LevelSetLayerConstIterator;
326 
327  using InternalImageType = typename Superclass::InternalImageType;
328  using InternalImagePointer = typename Superclass::InternalImagePointer;
329 
330  using LayerPairType = typename Superclass::LayerPairType;
331 
332  using InputIteratorType = typename Superclass::InputIteratorType;
333  using InternalIteratorType = typename Superclass::InternalIteratorType;
334 
335  using NeighborhoodIteratorType = typename Superclass::NeighborhoodIteratorType;
336 
337  void
338  Initialize() override;
339 
340 protected:
343 
346 
348  void
349  FindActiveLayer();
350 
351 private:
352 };
353 
354 
356 
358 template <typename TInput>
359 class ITK_TEMPLATE_EXPORT BinaryImageToLevelSetImageAdaptor<TInput, MalcolmSparseLevelSetImage<TInput::ImageDimension>>
360  : public BinaryImageToSparseLevelSetImageAdaptorBase<TInput, MalcolmSparseLevelSetImage<TInput::ImageDimension>>
361 {
362 public:
363  ITK_DISALLOW_COPY_AND_MOVE(BinaryImageToLevelSetImageAdaptor);
364 
366 
371 
372 
374  itkNewMacro(Self);
375 
378 
379  using InputImageType = typename Superclass::InputImageType;
380 
381  using InputImagePixelType = typename Superclass::InputImagePixelType;
382  using InputImageIndexType = typename Superclass::InputImageIndexType;
383  using InputImagePointer = typename Superclass::InputImagePointer;
384  using InputImageRegionType = typename Superclass::InputImageRegionType;
385  using InputPixelRealType = typename Superclass::InputPixelRealType;
386 
387  static constexpr unsigned int ImageDimension = InputImageType::ImageDimension;
388 
389 
390  using LevelSetPointer = typename Superclass::LevelSetPointer;
391  using LevelSetInputType = typename Superclass::LevelSetInputType;
392  using LevelSetOutputType = typename Superclass::LevelSetOutputType;
393 
394  using LevelSetLabelObjectType = typename Superclass::LevelSetLabelObjectType;
395  using LayerIdType = typename Superclass::LayerIdType;
396  using LevelSetLabelObjectPointer = typename Superclass::LevelSetLabelObjectPointer;
397  using LevelSetLabelObjectLengthType = typename Superclass::LevelSetLabelObjectLengthType;
398  using LevelSetLabelObjectLineType = typename Superclass::LevelSetLabelObjectLineType;
399 
400  using LevelSetLabelMapType = typename Superclass::LevelSetLabelMapType;
401  using LevelSetLabelMapPointer = typename Superclass::LevelSetLabelMapPointer;
402 
403  using LevelSetLayerType = typename Superclass::LevelSetLayerType;
404  using LevelSetLayerIterator = typename Superclass::LevelSetLayerIterator;
405  using LevelSetLayerConstIterator = typename Superclass::LevelSetLayerConstIterator;
406 
407  using InternalImageType = typename Superclass::InternalImageType;
408  using InternalImagePointer = typename Superclass::InternalImagePointer;
409 
410  using LayerPairType = typename Superclass::LayerPairType;
411 
412  using InputIteratorType = typename Superclass::InputIteratorType;
413  using InternalIteratorType = typename Superclass::InternalIteratorType;
414 
415  using NeighborhoodIteratorType = typename Superclass::NeighborhoodIteratorType;
416 
417  void
418  Initialize() override;
419 
420 protected:
423 
426 
428  void
429  FindActiveLayer();
430 
432  void
433  CreateMinimalInterface();
434 };
435 
436 } // namespace itk
437 
438 #ifndef ITK_MANUAL_INSTANTIATION
439 # include "itkBinaryImageToLevelSetImageAdaptor.hxx"
440 #endif
441 #endif // itkBinaryImageToLevelSetImageAdaptorBase_h
itk::BinaryImageToLevelSetImageAdaptor
Definition: itkBinaryImageToLevelSetImageAdaptor.h:51
itk::WhitakerSparseLevelSetImage
Derived class for the sparse-field representation of level-set function.
Definition: itkWhitakerSparseLevelSetImage.h:41
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLayerType
typename Superclass::LevelSetLayerType LevelSetLayerType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:403
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImagePixelType
typename Superclass::InputImagePixelType InputImagePixelType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:300
itk::BinaryImageToSparseLevelSetImageAdaptorBase::m_LabelMap
LevelSetLabelMapPointer m_LabelMap
Definition: itkBinaryImageToLevelSetImageAdaptor.h:182
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InputImageRegionType
typename Superclass::InputImageRegionType InputImageRegionType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:217
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::InputImageType
TInputImage InputImageType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:77
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LayerPairType
std::pair< LevelSetInputType, LevelSetOutputType > LayerPairType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:169
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLayerIterator
typename LevelSetType::LayerIterator LevelSetLayerIterator
Definition: itkBinaryImageToLevelSetImageAdaptor.h:163
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetLabelObjectPointer
typename Superclass::LevelSetLabelObjectPointer LevelSetLabelObjectPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:229
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InternalIteratorType
typename Superclass::InternalIteratorType InternalIteratorType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:413
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InternalIteratorType
typename Superclass::InternalIteratorType InternalIteratorType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:246
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelMapPointer
typename Superclass::LevelSetLabelMapPointer LevelSetLabelMapPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:401
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectType
typename Superclass::LevelSetLabelObjectType LevelSetLabelObjectType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:314
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelMapType
typename LevelSetType::LabelMapType LevelSetLabelMapType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:159
itk::LevelSetDenseImage
Base class for the "dense" representation of a level-set function on one image.
Definition: itkLevelSetDenseImage.h:41
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImageIndexType
typename Superclass::InputImageIndexType InputImageIndexType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:301
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::NeighborhoodIteratorType
typename Superclass::NeighborhoodIteratorType NeighborhoodIteratorType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:248
itk::LevelSetDenseImage::ImageType
TImage ImageType
Definition: itkLevelSetDenseImage.h:47
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelMapPointer
typename Superclass::LevelSetLabelMapPointer LevelSetLabelMapPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:321
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLayerConstIterator
typename LevelSetType::LayerConstIterator LevelSetLayerConstIterator
Definition: itkBinaryImageToLevelSetImageAdaptor.h:164
itkWhitakerSparseLevelSetImage.h
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetPointer
typename Superclass::LevelSetPointer LevelSetPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:148
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputIteratorType
typename Superclass::InputIteratorType InputIteratorType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:332
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LayerIdType
typename Superclass::LayerIdType LayerIdType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:228
itk::BinaryImageToSparseLevelSetImageAdaptorBase::BinaryImageToSparseLevelSetImageAdaptorBase
BinaryImageToSparseLevelSetImageAdaptorBase()
Definition: itkBinaryImageToLevelSetImageAdaptor.h:177
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetOutputType
typename LevelSetType::OutputType LevelSetOutputType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:151
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetInputType
typename LevelSetType::InputType LevelSetInputType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:150
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImageType
typename Superclass::InputImageType InputImageType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:298
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputPixelRealType
typename Superclass::InputPixelRealType InputPixelRealType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:143
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InputIteratorType
typename Superclass::InputIteratorType InputIteratorType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:245
itk::SmartPointer< Self >
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetOutputType
typename Superclass::LevelSetOutputType LevelSetOutputType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:392
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImageType
typename Superclass::InputImageType InputImageType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:138
itkImageRegionIteratorWithIndex.h
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::InputImagePixelType
typename InputImageType::PixelType InputImagePixelType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:78
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::InputImageIndexType
typename InputImageType::IndexType InputImageIndexType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:79
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImagePointer
typename Superclass::InputImagePointer InputImagePointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:141
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InternalImagePointer
typename Superclass::InternalImagePointer InternalImagePointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:408
itk::ShapedNeighborhoodIterator
A neighborhood iterator which can take on an arbitrary shape.
Definition: itkShapedNeighborhoodIterator.h:150
itkMalcolmSparseLevelSetImage.h
itk::BinaryImageToSparseLevelSetImageAdaptorBase
Abstract class for converting binary image to sparse level-set.
Definition: itkBinaryImageToLevelSetImageAdaptor.h:124
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InputImagePointer
typename Superclass::InputImagePointer InputImagePointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:216
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InternalImagePointer
typename Superclass::InternalImagePointer InternalImagePointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:328
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectPointer
typename Superclass::LevelSetLabelObjectPointer LevelSetLabelObjectPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:316
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LayerPairType
typename Superclass::LayerPairType LayerPairType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:410
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::NeighborhoodIteratorType
typename Superclass::NeighborhoodIteratorType NeighborhoodIteratorType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:415
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InternalImagePointer
typename InternalImageType::Pointer InternalImagePointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:167
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::InputPixelRealType
typename NumericTraits< InputImagePixelType >::RealType InputPixelRealType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:82
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InputImagePixelType
typename Superclass::InputImagePixelType InputImagePixelType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:381
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InputPixelRealType
typename Superclass::InputPixelRealType InputPixelRealType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:385
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InternalImageType
typename Superclass::InternalImageType InternalImageType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:327
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLayerConstIterator
typename Superclass::LevelSetLayerConstIterator LevelSetLayerConstIterator
Definition: itkBinaryImageToLevelSetImageAdaptor.h:325
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImageRegionType
typename Superclass::InputImageRegionType InputImageRegionType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:303
itk::GTest::TypedefsAndConstructors::Dimension2::IndexType
ImageBaseType::IndexType IndexType
Definition: itkGTestTypedefsAndConstructors.h:50
itk::ImageToImageFilter
Base class for filters that take an image as input and produce an image as output.
Definition: itkImageToImageFilter.h:108
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectPointer
typename LevelSetType::LabelObjectPointer LevelSetLabelObjectPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:155
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LayerIdType
typename LevelSetLabelObjectType::LabelType LayerIdType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:154
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectPointer
typename Superclass::LevelSetLabelObjectPointer LevelSetLabelObjectPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:396
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetLayerType
typename Superclass::LevelSetLayerType LevelSetLayerType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:236
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InternalImagePointer
typename Superclass::InternalImagePointer InternalImagePointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:241
itk::LightObject
Light weight base class for most itk classes.
Definition: itkLightObject.h:59
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::SignedDistanceTransformFilterPointer
typename SignedDistanceTransformFilterType::Pointer SignedDistanceTransformFilterPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:90
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::m_SignedDistanceTransformFilter
SignedDistanceTransformFilterPointer m_SignedDistanceTransformFilter
Definition: itkBinaryImageToLevelSetImageAdaptor.h:112
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLayerConstIterator
typename Superclass::LevelSetLayerConstIterator LevelSetLayerConstIterator
Definition: itkBinaryImageToLevelSetImageAdaptor.h:405
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LayerPairType
typename Superclass::LayerPairType LayerPairType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:330
itk::GTest::TypedefsAndConstructors::Dimension2::RegionType
ImageBaseType::RegionType RegionType
Definition: itkGTestTypedefsAndConstructors.h:54
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InputImageIndexType
typename Superclass::InputImageIndexType InputImageIndexType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:215
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::LevelSetImageType
typename LevelSetType::ImageType LevelSetImageType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:87
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetLabelObjectLineType
typename Superclass::LevelSetLabelObjectLineType LevelSetLabelObjectLineType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:231
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelMapPointer
typename LevelSetType::LabelMapPointer LevelSetLabelMapPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:160
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLayerIterator
typename Superclass::LevelSetLayerIterator LevelSetLayerIterator
Definition: itkBinaryImageToLevelSetImageAdaptor.h:324
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImageRegionType
typename Superclass::InputImageRegionType InputImageRegionType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:142
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InternalImageType
typename Superclass::InternalImageType InternalImageType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:407
itkBinaryImageToLevelSetImageAdaptorBase.h
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectLengthType
typename Superclass::LevelSetLabelObjectLengthType LevelSetLabelObjectLengthType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:317
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectLineType
typename Superclass::LevelSetLabelObjectLineType LevelSetLabelObjectLineType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:318
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectLineType
typename LevelSetType::LabelObjectLineType LevelSetLabelObjectLineType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:157
itkImageToImageFilter.h
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetLayerConstIterator
typename Superclass::LevelSetLayerConstIterator LevelSetLayerConstIterator
Definition: itkBinaryImageToLevelSetImageAdaptor.h:238
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImageIndexType
typename Superclass::InputImageIndexType InputImageIndexType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:140
itk::BinaryImageToSparseLevelSetImageAdaptorBase::m_InternalImage
InternalImagePointer m_InternalImage
Definition: itkBinaryImageToLevelSetImageAdaptor.h:184
itk::ImageRegionIteratorWithIndex
A multi-dimensional iterator templated over image type that walks pixels within a region and is speci...
Definition: itkImageRegionIteratorWithIndex.h:73
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InputImageRegionType
typename Superclass::InputImageRegionType InputImageRegionType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:384
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetLabelMapType
typename Superclass::LevelSetLabelMapType LevelSetLabelMapType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:233
itkLevelSetDenseImage.h
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetInputType
typename Superclass::LevelSetInputType LevelSetInputType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:391
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetOutputType
typename Superclass::LevelSetOutputType LevelSetOutputType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:312
itkShiSparseLevelSetImage.h
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InputIteratorType
typename Superclass::InputIteratorType InputIteratorType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:412
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InputImageType
typename Superclass::InputImageType InputImageType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:379
itk::NumericTraits
Define additional traits for native types such as int or float.
Definition: itkNumericTraits.h:58
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectType
typename Superclass::LevelSetLabelObjectType LevelSetLabelObjectType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:394
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectLineType
typename Superclass::LevelSetLabelObjectLineType LevelSetLabelObjectLineType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:398
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetLayerIterator
typename Superclass::LevelSetLayerIterator LevelSetLayerIterator
Definition: itkBinaryImageToLevelSetImageAdaptor.h:237
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetLabelMapPointer
typename Superclass::LevelSetLabelMapPointer LevelSetLabelMapPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:234
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetType
typename Superclass::LevelSetType LevelSetType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:147
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InputImageIndexType
typename Superclass::InputImageIndexType InputImageIndexType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:382
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectLengthType
typename LevelSetType::LabelObjectLengthType LevelSetLabelObjectLengthType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:156
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetPointer
typename Superclass::LevelSetPointer LevelSetPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:390
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLayerType
typename LevelSetType::LayerType LevelSetLayerType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:162
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectType
typename LevelSetType::LabelObjectType LevelSetLabelObjectType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:153
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetPointer
typename Superclass::LevelSetPointer LevelSetPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:222
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetLabelObjectLengthType
typename Superclass::LevelSetLabelObjectLengthType LevelSetLabelObjectLengthType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:230
itk::ShiSparseLevelSetImage
Derived class for the shi representation of level-set function.
Definition: itkShiSparseLevelSetImage.h:37
itkShapedNeighborhoodIterator.h
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition: itkAnnulusOperator.h:24
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetInputType
typename Superclass::LevelSetInputType LevelSetInputType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:224
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLayerIterator
typename Superclass::LevelSetLayerIterator LevelSetLayerIterator
Definition: itkBinaryImageToLevelSetImageAdaptor.h:404
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImagePointer
typename Superclass::InputImagePointer InputImagePointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:302
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetLabelObjectType
typename Superclass::LevelSetLabelObjectType LevelSetLabelObjectType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:227
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::InputImagePointer
typename Superclass::InputImagePointer InputImagePointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:383
itk::BinaryImageToSparseLevelSetImageAdaptorBase< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputImagePixelType
typename Superclass::InputImagePixelType InputImagePixelType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:139
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelMapType
typename Superclass::LevelSetLabelMapType LevelSetLabelMapType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:400
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InputPixelRealType
typename Superclass::InputPixelRealType InputPixelRealType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:218
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetInputType
typename Superclass::LevelSetInputType LevelSetInputType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:311
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InternalImageType
typename Superclass::InternalImageType InternalImageType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:240
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::LevelSetPointer
typename LevelSetType::Pointer LevelSetPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:86
itk::Object
Base class for most ITK classes.
Definition: itkObject.h:62
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelObjectLengthType
typename Superclass::LevelSetLabelObjectLengthType LevelSetLabelObjectLengthType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:397
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InternalIteratorType
typename Superclass::InternalIteratorType InternalIteratorType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:333
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::NeighborhoodIteratorType
typename Superclass::NeighborhoodIteratorType NeighborhoodIteratorType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:335
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLabelMapType
typename Superclass::LevelSetLabelMapType LevelSetLabelMapType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:320
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LevelSetOutputType
typename Superclass::LevelSetOutputType LevelSetOutputType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:225
itk::Image
Templated n-dimensional image class.
Definition: itkImage.h:88
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetLayerType
typename Superclass::LevelSetLayerType LevelSetLayerType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:323
itk::BinaryImageToLevelSetImageAdaptor< TInput, MalcolmSparseLevelSetImage< TInput::ImageDimension > >::LayerIdType
typename Superclass::LayerIdType LayerIdType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:395
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LayerIdType
typename Superclass::LayerIdType LayerIdType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:315
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::InputImagePointer
typename InputImageType::Pointer InputImagePointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:80
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::LayerPairType
typename Superclass::LayerPairType LayerPairType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:243
itk::MalcolmSparseLevelSetImage
Derived class for the Malcolm representation of level-set function.
Definition: itkMalcolmSparseLevelSetImage.h:41
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InputImagePixelType
typename Superclass::InputImagePixelType InputImagePixelType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:214
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::LevelSetPointer
typename Superclass::LevelSetPointer LevelSetPointer
Definition: itkBinaryImageToLevelSetImageAdaptor.h:309
itk::BinaryImageToLevelSetImageAdaptorBase
Definition: itkBinaryImageToLevelSetImageAdaptorBase.h:32
itk::BinaryImageToLevelSetImageAdaptor< TInput, ShiSparseLevelSetImage< TInput::ImageDimension > >::InputPixelRealType
typename Superclass::InputPixelRealType InputPixelRealType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:304
itk::BinaryImageToLevelSetImageAdaptor< TInput, WhitakerSparseLevelSetImage< TOutput, TInput::ImageDimension > >::InputImageType
typename Superclass::InputImageType InputImageType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:213
itk::BinaryImageToLevelSetImageAdaptor< TInputImage, LevelSetDenseImage< TLevelSetImage > >::InputImageRegionType
typename InputImageType::RegionType InputImageRegionType
Definition: itkBinaryImageToLevelSetImageAdaptor.h:81