STIR  6.2.0
MinimalImageFilter3D.h
Go to the documentation of this file.
1 //
2 //
3 /*
4  Copyright (C) 2006 - 2007, Hammersmith Imanet Ltd
5  This file is part of STIR.
6 
7  SPDX-License-Identifier: Apache-2.0
8 
9  See STIR/LICENSE.txt for details
10 */
21 #ifndef __stir_MinimalImageFilter3D_H__
22 #define __stir_MinimalImageFilter3D_H__
23 
24 #include "stir/DataProcessor.h"
28 
29 START_NAMESPACE_STIR
30 
31 template <typename coordT>
32 class CartesianCoordinate3D;
33 
42 template <typename elemT>
43 class MinimalImageFilter3D : public RegisteredParsingObject<MinimalImageFilter3D<elemT>,
44  DataProcessor<DiscretisedDensity<3, elemT>>,
45  DataProcessor<DiscretisedDensity<3, elemT>>>
46 {
47 private:
50  DataProcessor<DiscretisedDensity<3, elemT>>>
51  base_type;
52 
53 public:
54  static const char* const registered_name;
55 
57 
59 
60 private:
61  MinimalArrayFilter3D<elemT> minimal_filter;
62  int mask_radius_x;
63  int mask_radius_y;
64  int mask_radius_z;
65 
66  void set_defaults() override;
67  void initialise_keymap() override;
68 
69  Succeeded virtual_set_up(const DiscretisedDensity<3, elemT>& density) override;
70  void virtual_apply(DiscretisedDensity<3, elemT>& density, const DiscretisedDensity<3, elemT>& in_density) const override;
71  void virtual_apply(DiscretisedDensity<3, elemT>& density) const override;
72 };
73 
74 END_NAMESPACE_STIR
75 
76 #endif // MinimalImageFilter3D
Applies the erosion filter (i.e. voxel=min(neighbours))
Declaration of class stir::DataProcessor.
Base class that defines an interface for classes that do data processing.
Definition: DataProcessor.h:46
defines the stir::DiscretisedDensity class
Implements erosion on 3D arrays.
Definition: MinimalArrayFilter3D.h:51
Parent class for all leaves in a RegisteredObject hierarchy that do parsing of parameter files...
Definition: RegisteredParsingObject.h:77
A class in the ImageProcessor hierarchy that implements minimal filtering.
Definition: MinimalImageFilter3D.h:43
a class containing an enumeration type that can be used by functions to signal successful operation o...
Definition: Succeeded.h:43
Declaration of class stir::RegisteredParsingObject.
This abstract class is the basis for all image representations.
Definition: FBP2DReconstruction.h:35