[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:36:05 EDT 2008


Hi Dan,

Thanks a lot for volunteering.

Following your suggestion, a Wiki page has been created for this topic.

You will find it at the table:
http://www.itk.org/Wiki/ITK_Oversight_Committee#2008

or directly at
http://www.itk.org/Wiki/Proposals:Increasing_WrapITK_Coverage


Please feel free to add your name in front of the filters that
you would be interested in wrapping.


   Thanks


      Luis


-----------------
Dan Mueller wrote:
> Hi Gaëtan,
> 
> I should be able to help with the mesh filters (which comprise roughly
> 20 of the remaining filters), though I won't be able to discuss this
> at tcons (due to time conflict). Maybe you could start a wiki page
> with a list of non-wrapped filters, and I can edit it with suitable
> template parameters. I haven't delved into it yet, but wrapping meshes
> may require more than just template parameters...
> 
> Regards, Dan
> 
> 2008/10/1 Gaëtan Lehmann <gaetan.lehmann at jouy.inra.fr>:
> 
>>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
>>
>>
>>--
>>Gaëtan Lehmann
>>Biologie du Développement et de la Reproduction
>>INRA de Jouy-en-Josas (France)
>>tel: +33 1 34 65 29 66    fax: 01 34 65 29 09
>>http://voxel.jouy.inra.fr  http://www.mandriva.org
>>http://www.itk.org  http://www.clavier-dvorak.org
>>
>>
>>_______________________________________________
>>Insight-developers mailing list
>>Insight-developers at itk.org
>>http://www.itk.org/mailman/listinfo/insight-developers
>>
>>
> 
> _______________________________________________
> 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