[Insight-developers] proposal: enhancing wrapitk's filter coverage during (one of) the next tcon
Luis Ibanez
luis.ibanez at kitware.com
Wed Oct 1 09:33:44 EDT 2008
Hi Gaetan,
This is an Excellent idea !
Thanks for taking the initiative.
A proposal Wiki page has been added to the 2008 section
http://www.itk.org/Wiki/ITK_Oversight_Committee#2008
Direct link:
http://www.itk.org/Wiki/Proposals:Increasing_WrapITK_Coverage#List_of_Unwrapped_Filters
With the content of your email,
including the list of non-wrapped filters.
Please feel free to modify.
The topic has been added also to the Tcon agenda for Friday:
http://www.itk.org/Wiki/Agenda%26Status_100108
Instructions on how to join the tcon are available at:
http://www.itk.org/Wiki/ITK_in_Second_Life
Thanks
Luis
-----------------------
Gaëtan Lehmann wrote:
>
> Hi,
>
> You may know that WrapITK has greatly enhanced the filter coverage,
> compared to what was previously available in tcl, java and python.
> Currently, 66% of the filters in ITK are usable in WrapITK. In the
> future, the goal is to reach 100% of filter coverage. This is a quite
> difficult task for a single person, because it requires a quite good
> knowledge of the whole ITK, to be able to select, for all the classes,
> the relevant template parameters to instantiate. I made my best to
> complete this task, but obviously, I can't go further, because I'm not
> able to make a decision on the remaining non wrapped filters.
>
> I think that the weekly tcon can be a great place to select the
> template parameters needed to instantiate the missing filters in
> WrapITK. For many of the filters, I'm quite sure the right template
> parameters to use are obvious for many of us, and that they only need
> to be collected. With those data, I would be able to implement the
> wrappers and to add them in WrapITK.
> Also, some of the filters may not be of direct interest for the user,
> because they are intended to be used only internally in some other
> code, or because they can only be used as a superclass (like
> UnaryFunctorImageFilter). In that case, they should be added in the
> excluded filters list for the filter coverage.
>
> A good goal, for the next release, would be to cover 80% of ITK's
> filter, which means 51 new filters added in WrapITK or in the excluded
> filters list. 51 filters may look like a big number of classes (and it
> is, for the final python/tcl/java user), but many of the remaining
> filters seems similar, so it should be easy to choose the template
> parameters for a group of filters, instead of processing them one by one.
>
> Also, note that adding new stuff in WrapITK would not only benefit to
> WrapITK users: because building a class in WrapITK builds every methods
> in that class, we have found many bugs in ITK code during the addition
> of new classes in WrapITK in the past. It is likely that we would
> uncover a few more bugs by adding new classes, bugs which won't be
> found by final users.
>
> A list of unwrapped filters can be found at the end of this mail.
>
> What do you think?
>
> Gaëtan
>
>
>
>
> BSplineScatteredDataPointSetToImageFilter
> BalloonForceFilter
> BayesianClassifierImageFilter
> BayesianClassifierInitializationImageFilter
> BinaryMaskToNarrowBandPointSetFilter
> BloxBoundaryPointImageToBloxBoundaryProfileImageFilter
> BloxBoundaryPointToCoreAtomImageFilter
> BloxBoundaryProfileImageToBloxCoreAtomImageFilter
> ChainCodeToFourierSeriesPathFilter
> ComposeRGBAImageFilter
> ConformalFlatteningMeshFilter
> ConnectedRegionsMeshFilter
> ContourExtractor2DImageFilter
> CurvatureRegistrationFilter
> DeformableMesh3DFilter
> DeformableSimplexMesh3DBalloonForceFilter
> DeformableSimplexMesh3DFilter
> DeformableSimplexMesh3DGradientConstraintForceFilter
> DeformationFieldJacobianDeterminantFilter
> DiffeomorphicDemonsRegistrationFilter
> DifferenceOfGaussiansGradientImageFilter
> DiffusionTensor3DReconstructionImageFilter
> DisplacementFieldJacobianDeterminantFilter
> EigenAnalysis2DImageFilter
> ExponentialDeformationFieldImageFilter
> ExtensionVelocitiesImageFilter
> ExtractOrthogonalSwath2DImageFilter
> FEMRegistrationFilter
> FFTComplexToComplexImageFilter
> FFTWComplexToComplexImageFilter
> FastMarchingExtensionImageFilter
> FastMarchingUpwindGradientImageFilter
> FastSymmetricForcesDemonsRegistrationFilter
> FiniteDifferenceSparseImageFilter
> GetAverageSliceImageFilter
> GradientImageToBloxBoundaryPointImageFilter
> GradientVectorFlowImageFilter
> GridForwardWarpImageFilter
> HardConnectedComponentImageFilter
> Hessian3DToVesselnessMeasureImageFilter
> HessianRecursiveGaussianImageFilter
> HistogramToEntropyImageFilter
> HistogramToImageFilter
> HistogramToIntensityImageFilter
> HistogramToLogProbabilityImageFilter
> HistogramToProbabilityImageFilter
> HoughTransform2DCirclesImageFilter
> HoughTransform2DLinesImageFilter
> ImageAndPathToImageFilter
> ImageToMeshFilter
> ImageToParametricSpaceFilter
> ImageToPathFilter
> ImageToVectorImageFilter
> ImplicitManifoldNormalVectorFilter
> InteriorExteriorMeshFilter
> InterpolateImagePointsFilter
> InverseDeformationFieldImageFilter
> IsoContourDistanceImageFilter
> IterativeInverseDeformationFieldImageFilter
> JoinImageFilter
> KLMRegionGrowImageFilter
> ListSampleToHistogramFilter
> MRFImageFilter
> MRIBiasFieldCorrectionFilter
> MagnitudeAndPhaseToComplexImageFilter
> MaskNeighborhoodOperatorImageFilter
> MaskedMovingHistogramImageFilter
> MatrixIndexSelectionImageFilter
> MeshToMeshFilter
> NarrowBandCurvesLevelSetImageFilter
> NeighborhoodOperatorImageFilter
> NormalizedCorrelationImageFilter
> OrthogonalSwath2DPathFilter
> ParametricSpaceToImageSpaceMeshFilter
> PathAndImageToPathFilter
> PathToChainCodePathFilter
> PathToImageFilter
> PathToPathFilter
> PointSetToImageFilter
> PolylineMask2DImageFilter
> PolylineMaskImageFilter
> QuadEdgeMeshCleanFilter
> QuadEdgeMeshDecimationFilter
> QuadEdgeMeshDelaunayConformingFilter
> QuadEdgeMeshEdgeMergeDecimationFilter
> QuadEdgeMeshNormalFilter
> QuadEdgeMeshToQuadEdgeMeshFilter
> RGBGibbsPriorFilter
> RealAndImaginaryToComplexImageFilter
> ReinitializeLevelSetImageFilter
> SampleMeanShiftBlurringFilter
> SampleMeanShiftClusteringFilter
> SampleSelectiveMeanShiftBlurringFilter
> SampleToHistogramProjectionFilter
> ScalarImageKmeansImageFilter
> ScalarToArrayCastImageFilter
> SimpleFuzzyConnectednessRGBImageFilter
> SimpleFuzzyConnectednessScalarImageFilter
> SimplexMeshAdaptTopologyFilter
> SimplexMeshToTriangleMeshFilter
> SpatialFunctionImageEvaluatorFilter
> SpatialObjectToPointSetFilter
> SymmetricEigenAnalysisImageFilter
> TensorFractionalAnisotropyImageFilter
> TensorRelativeAnisotropyImageFilter
> TransformMeshFilter
> TriangleMeshToBinaryImageFilter
> TriangleMeshToSimplexMeshFilter
> UnsharpMaskLevelSetImageFilter
> VectorConfidenceConnectedImageFilter
> VectorConnectedComponentImageFilter
> VectorCurvatureAnisotropicDiffusionImageFilter
> VectorExpandImageFilter
> VectorFuzzyConnectednessImageFilter
> VectorGradientAnisotropicDiffusionImageFilter
> VectorGradientMagnitudeImageFilter
> VectorNeighborhoodOperatorImageFilter
> VectorResampleImageFilter
> VectorRescaleIntensityImageFilter
> VectorThresholdSegmentationLevelSetImageFilter
> VoronoiPartitioningImageFilter
> VoronoiSegmentationRGBImageFilter
> WarpJacobianDeterminantFilter
> WarpMeshFilter
> WarpVectorImageFilter
> WrapPadImageFilter
> ZeroCrossingBasedEdgeDetectionImageFilter
>
> 372 filters
> 245 wrapped filters
> 127 non wrapped filters
> 65.860215% covered
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Insight-developers mailing list
> Insight-developers at itk.org
> http://www.itk.org/mailman/listinfo/insight-developers
More information about the Insight-developers
mailing list