Computer Assited Medical Intervention Tool Kit  version 4.1
GradientMagnitude.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * $CAMITK_LICENCE_BEGIN$
3  *
4  * CamiTK - Computer Assisted Medical Intervention ToolKit
5  * (c) 2001-2018 Univ. Grenoble Alpes, CNRS, TIMC-IMAG UMR 5525 (GMCAO)
6  *
7  * Visit http://camitk.imag.fr for more information
8  *
9  * This file is part of CamiTK.
10  *
11  * CamiTK is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * CamiTK is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Lesser General Public License version 3 for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
22  *
23  * $CAMITK_LICENCE_END$
24  ****************************************************************************/
25 #ifndef GRADIENTMAGNITUDE_H
26 #define GRADIENTMAGNITUDE_H
27 
28 #include <QObject>
29 #include <Action.h>
30 #include <vtkImageData.h>
31 #include <ImageComponent.h>
32 #include <ActionWidget.h>
33 
34 #include "ITKFilterAPI.h"
35 
45 
46 public:
49 
51  virtual ~GradientMagnitude() = default;
52 
53 public slots:
59  virtual ApplyStatus apply();
60 
61 private:
63  virtual void process(camitk::ImageComponent*);
64 
65 private:
66  vtkSmartPointer<vtkImageData> implementProcess(vtkSmartPointer<vtkImageData> img);
67 
68  template <class InputPixelType, class OutputPixelType, const int dim>
69  vtkSmartPointer<vtkImageData> itkProcess(vtkSmartPointer<vtkImageData> img);
70 
71 
72 protected:
73  // Standard deviation of the Guassian Kernel used for the Recursive Gaussian Filter
74  double sigma;
75 
76 
77 };
78 #endif // GRADIENTMAGNITUDE_H
#define ITKFILTER_API
Definition: ITKFilterAPI.h:8
virtual ApplyStatus apply()=0
This method is called when the action has to be applied on the target list (get the target lists usin...
Action class is an abstract class that enables you to build a action (generally on a component)...
Definition: Action.h:207
double sigma
Definition: GradientMagnitude.h:74
This class describes what is a generic Action extension.
Definition: ActionExtension.h:59
The manager of the Image Volume data.
Definition: ImageComponent.h:73
ApplyStatus
describes what happened during the application of an algorithm (i.e. results of the apply method) ...
Definition: Action.h:223
Perform a gradient magnitude filter on the ImageComponent.
Definition: GradientMagnitude.h:44