Difference between revisions of "Slicer-3.6-QA"
Line 58: | Line 58: | ||
|style="background:white"|??||style="width:33%"| DiffusionTensorMathematics || || || || 56.2% || 5 | |style="background:white"|??||style="width:33%"| DiffusionTensorMathematics || || || || 56.2% || 5 | ||
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| OrientImage || || || || 85.7% || unknown | + | |style="background:white"|??||style="width:33%"| OrientImage || || || || 85.7% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| LinearRegistration || || || || 66.7% || unknown | + | |style="background:white"|??||style="width:33%"| LinearRegistration || || || || 66.7% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| RigidRegistration || || || ||style="background:red"| 1.0% || unknown | + | |style="background:white"|??||style="width:33%"| RigidRegistration || || || ||style="background:red"| 1.0% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| AffineRegistration || || || ||style="background:red"| 1.4% || unknown | + | |style="background:white"|??||style="width:33%"| AffineRegistration || || || ||style="background:red"| 1.4% || unknown| | |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| BSplineDeformableRegistration || || || || 82.3% || unknown | + | |style="background:white"|??||style="width:33%"| BSplineDeformableRegistration || || || || 82.3% || unknown|| |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| TestGridTransformRegistration || || || || 90.7% || unknown | + | |style="background:white"|??||style="width:33%"| TestGridTransformRegistration || || || || 90.7% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| CheckerBoard || || || || 67.4% || unknown | + | |style="background:white"|??||style="width:33%"| CheckerBoard || || || || 67.4% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| ResampleVolume || || || || 57.1% || unknown | + | |style="background:white"|??||style="width:33%"| ResampleVolume || || || || 57.1% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| PolyDataToLabelmap || || || || 87.9% || unknown | + | |style="background:white"|??||style="width:33%"| PolyDataToLabelmap || || || || 87.9% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| GaussianBlurImageFilter || || || || 55.9% || unknown | + | |style="background:white"|??||style="width:33%"| GaussianBlurImageFilter || || || || 55.9% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| ConfidenceConnected || || || || 87.5% || unknown | + | |style="background:white"|??||style="width:33%"| ConfidenceConnected || || || || 87.5% || unknown|| |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| ExecutionModelTour || || || || 87.2% || unknown | + | |style="background:white"|??||style="width:33%"| ExecutionModelTour || || || || 87.2% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| ImageReadDicomWrite || || || || 86.1% || unknown | + | |style="background:white"|??||style="width:33%"| ImageReadDicomWrite || || || || 86.1% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| CurvatureAnisotropicDiffusion || || || || 64.3% || unknown | + | |style="background:white"|??||style="width:33%"| CurvatureAnisotropicDiffusion || || || || 64.3% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| GradientAnisotropicDiffusion || || || || 63.4% || unknown | + | |style="background:white"|??||style="width:33%"| GradientAnisotropicDiffusion || || || || 63.4% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| MedianImageFilter || || || || 51.1% || unknown | + | |style="background:white"|??||style="width:33%"| MedianImageFilter || || || || 51.1% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| DWIDicomLoad || || || ||style="background:red"| 0% || unknown | + | |style="background:white"|??||style="width:33%"| DWIDicomLoad || || || ||style="background:red"| 0% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| HistogramMatching || || || || 65.0% || unknown | + | |style="background:white"|??||style="width:33%"| HistogramMatching || || || || 65.0% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| OtsuThresholdImageFilter || || || || 100% || unknown | + | |style="background:white"|??||style="width:33%"| OtsuThresholdImageFilter || || || || 100% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| OtsuThresholdSegmentation || || || || 90.9% || unknown | + | |style="background:white"|??||style="width:33%"| OtsuThresholdSegmentation || || || || 90.9% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Subtract || || || || 71.7% || unknown | + | |style="background:white"|??||style="width:33%"| Subtract || || || || 71.7% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Multiply || || || || 77.6% || unknown | + | |style="background:white"|??||style="width:33%"| Multiply || || || || 77.6% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Add || || || || 84.9% || unknown | + | |style="background:white"|??||style="width:33%"| Add || || || || 84.9% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Threshold || || || || 55.8% || unknown | + | |style="background:white"|??||style="width:33%"| Threshold || || || || 55.8% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Mask || || || || 80.0% || unknown | + | |style="background:white"|??||style="width:33%"| Mask || || || || 80.0% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Cast || || || || 14.6% || unknown | + | |style="background:white"|??||style="width:33%"| Cast || || || || 14.6% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| VotingBinaryHoleFillingImageFilter || || || || 100% || unknown | + | |style="background:white"|??||style="width:33%"| VotingBinaryHoleFillingImageFilter || || || || 100% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| ModelMaker || || || || 57.4% || unknown | + | |style="background:white"|??||style="width:33%"| ModelMaker || || || || 57.4% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| MultipleModelsExample || || || ||style="background:red"| 1.9% || unknown | + | |style="background:white"|??||style="width:33%"| MultipleModelsExample || || || ||style="background:red"| 1.9% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| GrayscaleModelMaker || || || || 82.1% || unknown | + | |style="background:white"|??||style="width:33%"| GrayscaleModelMaker || || || || 82.1% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| MergeModels || || || || 62.7% || unknown | + | |style="background:white"|??||style="width:33%"| MergeModels || || || || 62.7% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| GrayscaleFillHoleImageFilter || || || || 57.1% || unknown | + | |style="background:white"|??||style="width:33%"| GrayscaleFillHoleImageFilter || || || || 57.1% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| GrayscaleGrindPeakImageFilter || || || || 64.5% || unknown | + | |style="background:white"|??||style="width:33%"| GrayscaleGrindPeakImageFilter || || || || 64.5% || unknown|| |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| LabelMapSmoothing || || || || 87.9% || unknown | + | |style="background:white"|??||style="width:33%"| LabelMapSmoothing || || || || 87.9% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| ImageLabelCombine || || || ||style="background:red"| 7.5% || unknown | + | |style="background:white"|??||style="width:33%"| ImageLabelCombine || || || ||style="background:red"| 7.5% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| ResampleVolume2 || || || || 46.8% || unknown | + | |style="background:white"|??||style="width:33%"| ResampleVolume2 || || || || 46.8% || unknown || |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| ZeroCrossingBasedEdgeDetectionImageFilter || || || || 62.5% || unknown | + | |style="background:white"|??||style="width:33%"| ZeroCrossingBasedEdgeDetectionImageFilter || || || || 62.5% || unknown|| |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| FreesurferSurfaceSectionExtraction || || || || 60.0% || unknown | + | |style="background:white"|??||style="width:33%"| FreesurferSurfaceSectionExtraction || || || || 60.0% || unknown|| |
|- | |- | ||
Revision as of 02:41, 21 April 2010
Home < Slicer-3.6-QAReturn to Slicer 3.6 documentation
- This page contains our assessment of the Slicer 3.6 modules
- See also the module culling event at the end of April 2010
Contents
Testing Status
Core Modules
Score | Name | Documentation | Help [1] | Acknowledgment [2] | Test coverage [3] | valgrind errors | Current Owner |
---|---|---|---|---|---|---|---|
Gold | my module | complete | yes and yes | yes, yes, yes | 80% | 0 | DNK |
?? | Camera | complete | yes, no link | no | 75% | unknown | Sebastien Barre |
?? | Volumes | complete | yes and yes | yes and yes | 44% | unknown | Steve Pieper |
?? | Diffusion Editor | complete | yes and yes | no | 65%* | unknown | CF Westin |
?? | Models | complete | yes and yes | yes and yes | 12% | unknown | Alex Yarmarkovic |
?? | Measurements | complete | yes and yes | no and yes | 46% | unknown | Nicole Aucoin |
?? | Fiducials | complete | yes and yes | no | 7% | unknown | Nicole |
?? | Data | complete | yes and yes | yes and yes | 0% | unknown | Steve Pieper |
?? | Slices | complete | no | no | 0% | unknown | Jim Miller |
?? | Colors | complete | yes and no | yes and no | 0% | unknown | Nicole Aucoin |
?? | Interactive Editor | complete | 0% | unknown | Steve Pieper | ||
?? | ROI Module | complete | no and yes | no and yes | 0% | unknown | Alex Yarmarkovic |
?? | Volume Rendering | complete | yes and yes | no and yes | 0% | unknown | Yanling Liu |
Application CLI Modules
Score | Name | Documentation | Help [1] | Acknowledgment [2] | Test coverage [3] | valgrind errors | Current Owner |
---|---|---|---|---|---|---|---|
Gold | my module | complete | yes and yes | yes, yes, yes | 80% | 0 | |
?? | DiffusionWeightedTest | 69.8% | 0 | ||||
?? | DiffusionTensorEstimation | 79.7% | 9 | ||||
?? | DiffusionTensorMathematics | 56.2% | 5 | ||||
?? | OrientImage | 85.7% | unknown | ||||
?? | LinearRegistration | 66.7% | unknown | ||||
?? | RigidRegistration | 1.0% | unknown | ||||
?? | AffineRegistration | 1.4% | | | ||||
?? | BSplineDeformableRegistration | 82.3% | unknown | ||||
?? | TestGridTransformRegistration | 90.7% | unknown | ||||
?? | CheckerBoard | 67.4% | unknown | ||||
?? | ResampleVolume | 57.1% | unknown | ||||
?? | PolyDataToLabelmap | 87.9% | unknown | ||||
?? | GaussianBlurImageFilter | 55.9% | unknown | ||||
?? | ConfidenceConnected | 87.5% | unknown | ||||
?? | ExecutionModelTour | 87.2% | unknown | ||||
?? | ImageReadDicomWrite | 86.1% | unknown | ||||
?? | CurvatureAnisotropicDiffusion | 64.3% | unknown | ||||
?? | GradientAnisotropicDiffusion | 63.4% | unknown | ||||
?? | MedianImageFilter | 51.1% | unknown | ||||
?? | DWIDicomLoad | 0% | unknown | ||||
?? | HistogramMatching | 65.0% | unknown | ||||
?? | OtsuThresholdImageFilter | 100% | unknown | ||||
?? | OtsuThresholdSegmentation | 90.9% | unknown | ||||
?? | Subtract | 71.7% | unknown | ||||
?? | Multiply | 77.6% | unknown | ||||
?? | Add | 84.9% | unknown | ||||
?? | Threshold | 55.8% | unknown | ||||
?? | Mask | 80.0% | unknown | ||||
?? | Cast | 14.6% | unknown | ||||
?? | VotingBinaryHoleFillingImageFilter | 100% | unknown | ||||
?? | ModelMaker | 57.4% | unknown | ||||
?? | MultipleModelsExample | 1.9% | unknown | ||||
?? | GrayscaleModelMaker | 82.1% | unknown | ||||
?? | MergeModels | 62.7% | unknown | ||||
?? | GrayscaleFillHoleImageFilter | 57.1% | unknown | ||||
?? | GrayscaleGrindPeakImageFilter | 64.5% | unknown | ||||
?? | LabelMapSmoothing | 87.9% | unknown | ||||
?? | ImageLabelCombine | 7.5% | unknown | ||||
?? | ResampleVolume2 | 46.8% | unknown | ||||
?? | ZeroCrossingBasedEdgeDetectionImageFilter | 62.5% | unknown | ||||
?? | FreesurferSurfaceSectionExtraction | 60.0% | unknown |
Testing Partition
Most Slicer modules have a GUI component and a Data Processing component.
Testing GUI components is still a challenge, so we will focus here on testing the Data Processing components. This can be done in most cases by partitioning the module into a GUI section and a Data Processing section, where the second one usually takes the form of a C++ class (although that is not a requirement).
The data processing section can be tested by using standard CTest/CMake mechanisms. Basically by adding ADD_TEST() entries to the CMakeLists.txt file of the module.
Luis Ibanez' scoring system
The following scoring will be applied to the data processing sections of all modules:
Score | Code Coverage | Valgrind Errors | Documentation | Tutorial |
---|---|---|---|---|
Gold | > 80% | 0 | yes | yes |
Silver | > 70% | < 10 | yes | yes |
Bronze | > 60% | < 50 | yes | yes |
Clay | > 50% | < 100 | yes | yes |
Coal | > 50% | > 100 | yes | yes |
Hazard | unknown | unknown | no | no |
The code coverage and Valgrind error must be the ones reported on the Nightly Slicer Dashboard. Anecdotal data is not acceptable.