STIR  6.2.0
MaximalImageFilter3D.h
Go to the documentation of this file.
1 //
2 /*
3  Copyright (C) 2006 - 2007, Hammersmith Imanet Ltd
4  Copyright (C) 2010 - 2013, King's College London
5  This file is part of STIR.
6 
7  SPDX-License-Identifier: Apache-2.0
8 
9  See STIR/LICENSE.txt for details
10  */
20 #ifndef __stir_MaximalImageFilter3D_H__
21 #define __stir_MaximalImageFilter3D_H__
22 
23 #include "stir/DataProcessor.h"
27 
28 START_NAMESPACE_STIR
29 
30 template <typename coordT>
31 class CartesianCoordinate3D;
32 
41 template <typename elemT>
42 class MaximalImageFilter3D : public RegisteredParsingObject<MaximalImageFilter3D<elemT>,
43  DataProcessor<DiscretisedDensity<3, elemT>>,
44  DataProcessor<DiscretisedDensity<3, elemT>>>
45 {
46 private:
49  DataProcessor<DiscretisedDensity<3, elemT>>>
50  base_type;
51 
52 public:
53  static const char* const registered_name;
54 
56 
58 
59 private:
60  MaximalArrayFilter3D<elemT> maximal_filter;
61  int mask_radius_x;
62  int mask_radius_y;
63  int mask_radius_z;
64 
65  void set_defaults() override;
66  void initialise_keymap() override;
67 
68  Succeeded virtual_set_up(const DiscretisedDensity<3, elemT>& density) override;
69  void virtual_apply(DiscretisedDensity<3, elemT>& density, const DiscretisedDensity<3, elemT>& in_density) const override;
70  void virtual_apply(DiscretisedDensity<3, elemT>& density) const override;
71 };
72 
73 END_NAMESPACE_STIR
74 
75 #endif // MaximalImageFilter3D
Implements erosion on 3D arrays.
Definition: MaximalArrayFilter3D.h:50
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
Parent class for all leaves in a RegisteredObject hierarchy that do parsing of parameter files...
Definition: RegisteredParsingObject.h:77
Applies the dilation filter (i.e. voxel=max(neighbours))
A class in the ImageProcessor hierarchy that implements maximal filtering.
Definition: MaximalImageFilter3D.h:42
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