ITK  5.4.0
Insight Toolkit
Todo List
Member itk::AffineTransform< TParametersValueType, VDimension >::Rotate2D (TParametersValueType angle, bool pre=false)
Find a way to generate a compile-time error is this is used with VDimension != 2.
Member itk::AffineTransform< TParametersValueType, VDimension >::Rotate3D (const OutputVectorType &axis, TParametersValueType angle, bool pre=false)
Find a way to generate a compile-time error is this is used with VDimension != 3.
Class itk::AnisotropicDiffusionFunction< TImage >

Automatically generate the time step value from image dimensionality and order of the equations

Class itk::AzimuthElevationToCartesianTransform< TParametersValueType, VDimension >

Add a figure in the documentation that informs the formulas used in this class that are used to transform Cartesian to azimuth-elevation-radius

Derive this class from TransformBase class. Currently, this class derives from AffineTransform, although it is not an affine transform.

Is there any real value in allowing the user to template over the scalar type? Perhaps it should always be double, unless there's a compatibility problem with the Point class.

Class itk::BilateralImageFilter< TInputImage, TOutputImage >

Support color images

Support vector images

Class itk::CannyEdgeDetectionImageFilter< TInputImage, TOutputImage >
Edge-linking will be added when an itk connected component labeling algorithm is available.
Member itk::CurvatureFlowFunction< TImage >::ComputeGlobalTimeStep (void *GlobalData) const override
compute timestep based on CFL condition.
Class itk::CurvatureNDAnisotropicDiffusionFunction< TImage >

References

Member itk::EdgeDecimationQuadEdgeMeshFilter< TInput, TOutput, TCriterion >::CheckOrientation (OutputQEType *iEdge, const OutputPointIdentifier &iId, const OutputPointType &iPt)
Finish to implement this method!
Member itk::EigenAnalysis2DImageFilter< TInputImage, TEigenValueImage, TEigenVectorImage >::DataObjectPointerArraySizeType
Verify that MakeOutput is creating the right type of objects this could be the cause of the reinterpret_cast bug in this class.
Class itk::FastMarchingBase< TInput, TOutput >
In the current implementation, std::priority_queue only allows taking nodes out from the front and putting nodes in from the back. Use itk::PriorityQueueContainer instead.
Member itk::FilenamesContainer
: remove these from the itk:: namespace
Class itk::FiniteDifferenceFunction< TImageType >
Possibly subclass this object from Function. Stumbling blocks here are the specialized api of FiniteDifferenceFunction.
Class itk::HexahedronCell< TCellInterface >
When reviewing this class, the documentation of the template parameters MUST be fixed.
Class itk::ImageMomentsCalculator< TImage >

It's not yet clear how multi-echo images should be handled here.

Member itk::InverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::KernelTransformType
Check that input and output images have the same number of dimensions; this is required for consistency.
Member itk::LevelSetContainerBase< TIdentifier, TLevelSet >::SetHeaviside (const HeavisideType *_arg)
add documentation
Class itk::LevelSetDenseImage< TImage >
Think about using image iterators instead of GetPixel()
Member itk::LevelSetEquationAdvectionTerm< TInput, TLevelSetContainer >::Initialize (const LevelSetInputIndexType &) override
to be documented.
Member itk::LevelSetEquationAdvectionTerm< TInput, TLevelSetContainer >::Update () override
to be documented.
Member itk::LevelSetEquationLaplacianTerm< TInput, TLevelSetContainer >::Initialize (const LevelSetInputIndexType &) override
to be documented.
Member itk::LevelSetEquationPropagationTerm< TInput, TLevelSetContainer, TPropagationImage >::Initialize (const LevelSetInputIndexType &) override
to be documented.
Member itk::LevelSetEquationPropagationTerm< TInput, TLevelSetContainer, TPropagationImage >::Update () override
to be documented.
Member itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Initialize (const LevelSetInputIndexType &iP)=0
to be documented.
Member itk::LevelSetEquationTermContainer< TInputImage, TLevelSetContainer >::Initialize (const LevelSetInputIndexType &iP)

Member itk::LevelSetQuadEdgeMesh< TMesh >::EvaluateGradient (const InputType &iP) const
to be implemented
Member itk::LevelSetQuadEdgeMesh< TMesh >::EvaluateGradient (const InputType &iP, LevelSetDataType &ioData) const
to be implemented
Member itk::LevelSetQuadEdgeMesh< TMesh >::EvaluateHessian (const InputType &iP) const
to be implemented
Member itk::LevelSetQuadEdgeMesh< TMesh >::EvaluateHessian (const InputType &iP, LevelSetDataType &ioData) const
to be implemented
Class itk::LevelSetSparseImage< TOutput, VDimension >
Think about using image iterators instead of GetPixel()
Class itk::MapRecord

Add documentation

Member itk::Matrix< T, VRows, VColumns >::CompatibleSquareMatrixType
In the future, the method should be templated to allow multiplication by VColumns by XRows.
Member itk::MRCImageIO::m_MetaDataHeaderName
Move to itkIOCommon with the other MetaDataDictionary keys, likely rename the symbol to something like ITK_MRCHHeader. (remember to fix class doc too)
Class itk::NeighborhoodIterator< TImage, TBoundaryCondition >

Better support for regions with negative indices.

Add Begin() and End() methods?

Class itk::NormalQuadEdgeMeshFilter< TInputMesh, TOutputMesh >
Fix run-time issues regarding the difference between the Traits of TInputMesh and the one of TOutputMesh. Right now, it only works if TInputMesh::MeshTraits == TOutputMesh::MeshTraits (and of course it requires that the output have some itk::Vector for point data and cell data.
Class itk::OctreeNode

FIXME copy & paste documentation in all methods.

Member itk::QuadEdgeMeshConstFrontIterator< TMesh, TQE >::~QuadEdgeMeshConstFrontIterator () override=default
do we need here a : Superclass( mesh, start, seed ) { }
Class itk::SimpleFilterWatcher
Allow any stream object to be used for the output (not just std::cout)
Class itk::Statistics::ImageToListSampleFilter< TImage, TMaskImage >
In future allow the filter to take a Spatial object as input so a generic spatial object like an ellipse etc can be used as a mask. Sure the ImageMaskSpatialObject can represent image masks too, so why not make SpatialObjects the default. I think the ImageMaskSpatialObject is slow in terms of inefficient iteration through the image.
Member itk::StreamingImageIOBase::ReadBufferAsBinary (std::istream &is, void *buffer, SizeType num)
Move this method to itk::ImageIOBase
Member itk::StreamingImageIOBase::WriteBufferAsBinary (std::ostream &os, const void *buffer, SizeType num)
Move this methods to itk::ImageIOBase
Class itk::SyNImageRegistrationMethod< TFixedImage, TMovingImage, TOutputTransform, TVirtualImage, TPointSet >
Need to allow the fixed image to have a composite transform.
Member itk::VoronoiSegmentationRGBImageFilter< TInputImage, TOutputImage >::SetMeanPercentError (const double x[6])
Document.
Member itkQEAccessorsMacro (st, pt, dt)
Should this macro be added to doxygen macros?