STIR 6.4.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 */
19
20#ifndef __stir_MaximalImageFilter3D_H__
21#define __stir_MaximalImageFilter3D_H__
22
23#include "stir/DataProcessor.h"
27
28START_NAMESPACE_STIR
29
30template <typename coordT>
31class CartesianCoordinate3D;
32
41template <typename elemT>
42class MaximalImageFilter3D : public RegisteredParsingObject<MaximalImageFilter3D<elemT>,
43 DataProcessor<DiscretisedDensity<3, elemT>>,
44 DataProcessor<DiscretisedDensity<3, elemT>>>
45{
46private:
50 base_type;
51
52public:
53 static const char* const registered_name;
54
55 MaximalImageFilter3D();
56
57 MaximalImageFilter3D(const CartesianCoordinate3D<int>& mask_radius);
58
59private:
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
73END_NAMESPACE_STIR
74
75#endif // MaximalImageFilter3D
Declaration of class stir::DataProcessor.
defines the stir::DiscretisedDensity class
Applies the dilation filter (i.e. voxel=max(neighbours))
Declaration of class stir::RegisteredParsingObject.
a templated class for 3-dimensional coordinates.
Definition CartesianCoordinate3D.h:53
Base class that defines an interface for classes that do data processing.
Definition DataProcessor.h:47
This abstract class is the basis for all image representations.
Definition DiscretisedDensity.h:99
Implements erosion on 3D arrays.
Definition MaximalArrayFilter3D.h:51
Parent class for all leaves in a RegisteredObject hierarchy that do parsing of parameter files.
Definition RegisteredParsingObject.h:78
a class containing an enumeration type that can be used by functions to signal successful operation o...
Definition Succeeded.h:44