ITK/Examples: Difference between revisions
From KitwarePublic
< ITK
Jump to navigationJump to search
Mathew-seng (talk | contribs) (Deprecated content that is moved to sphinx) |
Mathew-seng (talk | contribs) (Deprecated content that is moved to sphinx) |
||
Line 60: | Line 60: | ||
==Image Processing== | ==Image Processing== | ||
{{ITKExamplesTable}} | {{ITKExamplesTable}} | ||
|- | |- | ||
| [[ITK/Examples/ImageProcessing/ConvolutionImageFilter | Convolve an image with a kernel]] || {{ITKDoxygenURL|ConvolutionImageFilter}} || Convolution. | | [[ITK/Examples/ImageProcessing/ConvolutionImageFilter | Convolve an image with a kernel]] || {{ITKDoxygenURL|ConvolutionImageFilter}} || Convolution. |
Revision as of 19:08, 5 June 2019
CMake Techniques
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Check if a specific module is present | ||
Check for ITK4 |
Visualization
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Display an image | QuickView |
Simple Operations
Example Name | ITK Classes Demonstrated | Description |
---|
Mathematical Operations
Example Name | ITK Classes Demonstrated | Description |
---|
Trigonometric Filters
Example Name | ITK Classes Demonstrated | Description |
---|
Image Functions
Example Name | ITK Classes Demonstrated | Description |
---|
Point Set
Example Name | ITK Classes Demonstrated | Description |
---|
Input/Output (IO)
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Display an ITK image | ImageToVTKImageFilter | |
Create a 3D volume from a series of 2D images | ImageSeriesReader | Uses NumericSeriesFileNames to generate a list of file names |
DICOM
Example Name | ITK Classes Demonstrated | Description |
---|
Blob Detection, Labeling, and Properties
Example Name | ITK Classes Demonstrated | Description |
---|
Correlation
Example Name | ITK Classes Demonstrated | Description |
---|
Image Processing
Vector Images
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Compute the magnitude of each pixel in a vector image to produce a magnitude image | VectorMagnitudeImageFilter | |
Create a vector image | VectorImage | An image with an ND vector at each pixel |
Create a vector image from a collection of scalar images | ComposeImageFilter | Combine, layer |
View a component of a vector image as if it were a scalar image | VectorImageToImageAdaptor | |
Extract a component/channel of a vector image | VectorIndexSelectionCastImageFilter | This works with VectorImage as well as Image<Vector> |
Translate a vector image | TranslationTransform, VectorResampleImageFilter | |
Join images, stacking their components | JoinImageFilter | concatenate, channels |
Stack scalar images into a VectorImage | ImageToVectorImageFilter | |
NeighborhoodIterator on a VectorImage | VectorImage NeighborhoodIterator | |
Cast a VectorImage to another type of VectorImage | VectorImage |
Iterating Over (Traversing) An Image
Kernels
Image Edges, Gradients, and Derivatives
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Find higher derivatives of an image | RecursiveGaussianImageFilter | |
Extract the boundaries of connected regions in a binary image | BinaryContourImageFilter | Blob boundary, border |
Extract the inner and outer boundaries of blobs in a binary image | BinaryContourImageFilter | |
A zero-crossing based edge detecor | ZeroCrossingBasedEdgeDetectionImageFilter |
Smoothing
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
BinaryMinMaxCurvatureFlow a binary image | BinaryMinMaxCurvatureFlowImageFilter | |
Smooth an image with a discrete Gaussian filter | DiscreteGaussianImageFilter | |
Bilateral filter an image | BilateralImageFilter | Edge preserving smoothing. |
Smooth an image using curvature flow | CurvatureFlowImageFilter | |
Smooth an RGB image using curvature flow | CurvatureFlowImageFilter | Run curvature flow on each component of the RGB image |
Smooth an image using min/max curvature flow | MinMaxCurvatureFlowImageFilter | |
Smooth an RGB image using min/max curvature flow | MinMaxCurvatureFlowImageFilter | Run mon/max curvature flow on each component of the RGB image |
Smooth an image while preserving edges | VectorGradientAnisotropicDiffusionImageFilter | Anisotropic diffusion. |
Smooth an image while preserving edges | VectorCurvatureAnisotropicDiffusionImageFilter | Anisotropic diffusion. |
Morphology
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Prune a binary image | BinaryPruningImageFilter | |
Opening a binary image | BinaryMorphologicalOpeningImageFilter | |
Closing a binary image | BinaryMorphologicalClosingImageFilter | |
Erode a binary image using a flat (box) structuring element | FlatStructuringElement | |
Generate structuring elements with accurate area | FlatStructuringElement | In itkFlatStructuringElement, setting the foregroundHasAccurateArea flag to true will generate structuring elements with more accurate areas, which can be especially important when morphological operations are intended to remove or retain objects of particular sizes. |
Curves
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Compute the mean distance between all points of two curves | ContourMeanDistanceImageFilter | |
A data structure for a piece-wise linear curve | PolyLineParametricPath |
Spectral Analysis
Utilities
Statistics
Spatial Objects
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Convert a spatial object to an image | SpatialObjectToImageFilter | |
Ellipse | EllipseSpatialObject | Circle, dot |
Line spatial object | LineSpatialObject, LineSpatialObjectPoint | Specify a piecewise-linear object by specifying points along the line. |
Plane spatial object | PlaneSpatialObject | |
Blob | BlobSpatialObject |
Inspection
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Printing a pixel value to the console | GetPixel |
Metrics
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Compute the mean squares metric between two images | MeanSquaresImageToImageMetric |
Image Registration
Image Segmentation
Meshes
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Decimation | ||
Add points and edges | ||
Subdivide an itk::QuadEdgeMesh | LoopTriangleCellSubdivisionQuadEdgeMeshFilter | Perform a loop triangle cell subdivision on a spherical quad edge mesh. |
Calculate Area and Volume of an itk::SimplexMesh | SimplexMeshVolumeCalculator | Calculate the area and volume of an itk::SimplexMesh. |
Convert an itk::Mesh to a vtkUnstructuredGrid | ||
Write an itk::Mesh to a vtp (vtkPolyData) file | VTKPolyDataWriter | |
Working with PointData and CellData | Mesh | Associate point and cell data with a mesh. |
Need Demo
This section consists of examples which compile and work, but a good demonstration image must be selected and added.
Example Name | ITK Classes Demonstrated | Description |
---|
Wish List
Included in the ITK Repository
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Image registration |
Matlab
Example Name | ITK Classes Demonstrated | Description |
---|
Developer Examples
Problems
Small Problems
Big Problems
Example Name | ITK Classes Demonstrated | Description |
---|---|---|
Find the best position of the moving image in the fixed image. | MeanSquaresImageToImageMetric | Output (0,0) is incorrect. |
Compute and display the gradient of an image | GradientImageFilter | Blank output on the screen (the filter works fine). There should be a "DisplayVectorImage" added to itkQuickView that draws vector glyphs at specified pixels of an image. |