|
Medical Imaging Interaction Toolkit
2026.06.00
Medical Imaging Interaction Toolkit
|
Extract an arbitrarily oriented 2D image from a 3D image. More...
#include <mitkExtractSliceFilter2.h>


Public Types | |
| enum | Interpolator { NearestNeighbor , Linear , Cubic } |
| Interpolation methods for slice extraction. More... | |
Public Types inherited from mitk::ImageToImageFilter | |
| typedef Superclass::OutputImageRegionType | OutputImageRegionType |
| Superclass typedefs. More... | |
| typedef mitk::Image | InputImageType |
| Some convenient typedefs. More... | |
| typedef InputImageType::Pointer | InputImagePointer |
| typedef InputImageType::ConstPointer | InputImageConstPointer |
| typedef SlicedData::RegionType | InputImageRegionType |
Public Types inherited from mitk::ImageSource | |
| typedef mitk::Image | OutputImageType |
| Some convenient typedefs. More... | |
| typedef OutputImageType | OutputType |
| typedef OutputImageType::Pointer | OutputImagePointer |
| typedef SlicedData::RegionType | OutputImageRegionType |
Public Types inherited from mitk::BaseDataSource | |
| typedef BaseData | OutputType |
| Output data type. More... | |
| typedef itk::DataObject::DataObjectIdentifierType | DataObjectIdentifierType |
| Identifier type for named data objects. More... | |
Public Member Functions | |
| mitkClassMacro (ExtractSliceFilter2, ImageToImageFilter) | |
| void | SetInput (const InputImageType *image) override |
| Set the input image. More... | |
| void | SetInput (unsigned int index, const InputImageType *image) override |
| Set the input image at a given index. More... | |
| const PlaneGeometry * | GetOutputGeometry () const |
| Get the output geometry defining the orientation of the extracted 2D slice. More... | |
| void | SetOutputGeometry (PlaneGeometry::Pointer outputGeometry) |
| Set the output geometry defining the orientation of the extracted 2D slice. More... | |
| Interpolator | GetInterpolator () const |
| Get the current interpolation method. More... | |
| void | SetInterpolator (Interpolator interpolator) |
| Set the interpolation method. More... | |
Public Member Functions inherited from mitk::ImageToImageFilter | |
| mitkClassMacro (ImageToImageFilter, ImageSource) | |
| Pointer | Clone () const |
| InputImageType * | GetInput (void) |
| Get the input image (non-const). More... | |
| InputImageType * | GetInput (unsigned int idx) |
| Get the input image at the specified index (non-const). More... | |
| const InputImageType * | GetInput (void) const |
| Get the input image (const). More... | |
| const InputImageType * | GetInput (unsigned int idx) const |
| Get the input image at the specified index (const). More... | |
Public Member Functions inherited from mitk::ImageSource | |
| mitkClassMacro (ImageSource, BaseDataSource) | |
| Pointer | Clone () const |
| mitkBaseDataSourceGetOutputDeclarations itk::DataObject::Pointer | MakeOutput (DataObjectPointerArraySizeType idx) override |
| Get the output data of this image source object. More... | |
| itk::DataObject::Pointer | MakeOutput (const DataObjectIdentifierType &name) override |
| virtual vtkImageData * | GetVtkImageData () |
| Get the output as VTK image data (non-const version). More... | |
| virtual const vtkImageData * | GetVtkImageData () const |
| Get the output as VTK image data (const version). More... | |
Public Member Functions inherited from mitk::BaseDataSource | |
| mitkClassMacroItkParent (BaseDataSource, itk::ProcessObject) | |
| OutputType * | GetOutput () |
| const OutputType * | GetOutput () const |
| OutputType * | GetOutput (DataObjectPointerArraySizeType idx) |
| const OutputType * | GetOutput (DataObjectPointerArraySizeType idx) const |
| virtual void | GraftOutput (OutputType *output) |
| Graft the specified BaseData onto this BaseDataSource's output. More... | |
| virtual void | GraftOutput (const DataObjectIdentifierType &key, OutputType *output) |
| Graft the specified base data object onto a named output. More... | |
| virtual void | GraftNthOutput (unsigned int idx, OutputType *output) |
| Graft the specified base data object onto this BaseDataSource's idx'th output. More... | |
| bool | Updating () const |
| Check whether the pipeline is currently executing. More... | |
Static Public Member Functions | |
| static Pointer | New () |
Static Public Member Functions inherited from mitk::ImageToImageFilter | |
| static Pointer | New () |
| Method for creation through the object factory. More... | |
Static Public Member Functions inherited from mitk::ImageSource | |
| static Pointer | New () |
| Method for creation through the object factory. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from mitk::ImageToImageFilter | |
| ImageToImageFilter () | |
| ~ImageToImageFilter () override | |
| void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
| Print self information to the given stream. More... | |
| void | GenerateInputRequestedRegion () override |
| Determine the input requested region to produce the output requested region. More... | |
Protected Member Functions inherited from mitk::ImageSource | |
| ImageSource () | |
| ~ImageSource () override | |
| void | GenerateData () override |
| A version of GenerateData() specific for image processing filters. More... | |
| virtual void | ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, itk::ThreadIdType threadId) |
| If an imaging filter can be implemented as a multithreaded algorithm, the filter will provide an implementation of ThreadedGenerateData(). More... | |
| void | PrepareOutputs () override |
| This method is intentionally left blank. More... | |
| virtual void | BeforeThreadedGenerateData () |
| If an imaging filter needs to perform processing after the buffer has been allocated but before threads are spawned, the filter can provide an implementation for BeforeThreadedGenerateData(). More... | |
| virtual void | AfterThreadedGenerateData () |
| If an imaging filter needs to perform processing after all processing threads have completed, the filter can provide an implementation for AfterThreadedGenerateData(). More... | |
| virtual unsigned int | SplitRequestedRegion (unsigned int i, unsigned int num, OutputImageRegionType &splitRegion) |
| Split the output's RequestedRegion into "num" pieces, returning region "i" as "splitRegion". More... | |
Protected Member Functions inherited from mitk::BaseDataSource | |
| BaseDataSource () | |
| Constructor. More... | |
| ~BaseDataSource () override | |
| Destructor. More... | |
Static Protected Member Functions inherited from mitk::ImageSource | |
| static itk::ITK_THREAD_RETURN_TYPE | ThreaderCallback (void *arg) |
| Static function used as a "callback" by the MultiThreader. More... | |
Static Protected Member Functions inherited from mitk::BaseDataSource | |
| static Pointer | New () |
Extract an arbitrarily oriented 2D image from a 3D image.
Use ExtractSliceFilter2::SetOutputGeometry to specify the orientation of the 2D output image.
If a pixel of the 2D output image is not located within the bounds of the 3D input image, it is set to the lowest possible pixel value.
Cubic interpolation is considerably slow on the first update for a newly set input image. Subsequent filter updates with cubic interpolation are faster by several orders of magnitude as long as the input image was neither changed nor modified.
This filter is completely based on ITK compared to the VTK-based mitk::ExtractSliceFilter. It is more robust, easy to use, and produces an mitk::Image with valid geometry. Generally it is not as fast as mitk::ExtractSliceFilter, though.
Definition at line 46 of file mitkExtractSliceFilter2.h.
Interpolation methods for slice extraction.
| Enumerator | |
|---|---|
| NearestNeighbor | |
| Linear | |
| Cubic | |
Definition at line 56 of file mitkExtractSliceFilter2.h.
| Interpolator mitk::ExtractSliceFilter2::GetInterpolator | ( | ) | const |
Get the current interpolation method.
| const PlaneGeometry* mitk::ExtractSliceFilter2::GetOutputGeometry | ( | ) | const |
Get the output geometry defining the orientation of the extracted 2D slice.
| mitk::ExtractSliceFilter2::mitkClassMacro | ( | ExtractSliceFilter2 | , |
| ImageToImageFilter | |||
| ) |
|
static |
|
overridevirtual |
Set the input image.
Resets the internal interpolation function cache when the input changes.
| [in] | image | The 3D input image. |
Reimplemented from mitk::ImageToImageFilter.
|
overridevirtual |
Set the input image at a given index.
Only index 0 is supported; any other index will throw.
| [in] | index | Must be 0. |
| [in] | image | The 3D input image. |
| mitk::Exception | if index is not 0. |
Reimplemented from mitk::ImageToImageFilter.
| void mitk::ExtractSliceFilter2::SetInterpolator | ( | Interpolator | interpolator | ) |
Set the interpolation method.
Changing the interpolator invalidates the cached interpolation function.
| [in] | interpolator | The Interpolator enum value to use. |
| void mitk::ExtractSliceFilter2::SetOutputGeometry | ( | PlaneGeometry::Pointer | outputGeometry | ) |
Set the output geometry defining the orientation of the extracted 2D slice.
| [in] | outputGeometry | The PlaneGeometry specifying the slice orientation. |