Computer Assited Medical Intervention Tool Kit  version 4.1
SobelEdgeDetection.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 SOBELEDGEDETECTION_H
26 #define SOBELEDGEDETECTION_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  Q_OBJECT
46 
47 
48 public:
51 
53  virtual ~SobelEdgeDetection() = default;
54 
55 public slots:
61  virtual ApplyStatus apply();
62 
63 private:
65  virtual void process(camitk::ImageComponent*);
66 
67 private:
68  vtkSmartPointer<vtkImageData> implementProcess(vtkSmartPointer<vtkImageData> img);
69 
70  template <class InputPixelType, class OutputPixelType, const int dim>
71  vtkSmartPointer<vtkImageData> itkProcess(vtkSmartPointer<vtkImageData> img);
72 
73 
74 protected:
77 
78 };
79 #endif // SOBELEDGEDETECTION_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
bool keepOrgVoxelType
Rescale the final image to the original image type or keep double voxel type.
Definition: SobelEdgeDetection.h:76
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 the Sobel edge detection on the ImageComponent.
Definition: SobelEdgeDetection.h:44