Difference between revisions of "Slicer-3.6-QA"
m (Text replacement - "https?:\/\/wiki.slicer.org\/slicerWiki\/index.php\/([^ ]+) " to "https://www.slicer.org/wiki/$1") |
|||
(211 intermediate revisions by 8 users not shown) | |||
Line 12: | Line 12: | ||
|+ <big>Slicer 3.6 Quality Assurance</big> | |+ <big>Slicer 3.6 Quality Assurance</big> | ||
|- | |- | ||
− | !Score!!Name!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> | + | !Score!!Name!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Current Owner |
|- | |- | ||
− | |style="background: | + | |style="background:white"|??||style="width:33%"| Camera ||complete||yes and yes||yes and yes|| Sebastien Barre |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| | + | |style="background:white"|??||style="width:33%"| Welcome ||complete||yes and yes||yes and yes ||Wendy Plesniak |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Volumes ||complete||yes and yes||yes and yes | + | |style="background:white"|??||style="width:33%"| Volumes ||complete||yes and yes||yes and yes ||Steve Pieper |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Diffusion Editor ||complete||yes and yes||no|| | + | |style="background:white"|??||style="width:33%"| Diffusion Editor ||complete||yes and yes||no|| CF Westin |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Models ||complete||yes and yes||yes and yes | + | |style="background:white"|??||style="width:33%"| Models ||complete||yes and yes||yes and yes|| Alex Yarmarkovich |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Measurements ||complete||yes and yes|| | + | |style="background:white"|??||style="width:33%"| Measurements ||complete||yes and yes||yes and yes|| Nicole Aucoin |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Fiducials||complete||yes and yes|| | + | |style="background:white"|??||style="width:33%"| Fiducials||complete||yes and yes||yes and yes|| Nicole Aucoin |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Data ||complete||yes and yes||yes and yes | + | |style="background:white"|??||style="width:33%"| Data ||complete||yes and yes||yes and yes ||Steve Pieper |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Slices ||complete|| | + | |style="background:white"|??||style="width:33%"| Slices ||complete||yes and yes||yes and yes|| Jim Miller |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Colors ||complete||yes and | + | |style="background:white"|??||style="width:33%"| Colors ||complete||yes and yes||yes and yes|| Nicole Aucoin |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Interactive Editor ||complete|| | + | |style="background:white"|??||style="width:33%"| Interactive Editor ||complete||yes and yes ||yes and yes || Steve Pieper |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| ROI Module ||complete||no and yes|| | + | |style="background:white"|??||style="width:33%"| ROI Module ||complete||no and yes||yes and yes|| Alex Yarmarkovich |
|- | |- | ||
− | |style="background:white"|??||style="width:33%"| Volume Rendering ||complete||yes and yes|| | + | |style="background:white"|??||style="width:33%"| Volume Rendering ||complete||yes and yes||yes and yes|| Yanling Liu |
+ | |- | ||
+ | |style="background:white"|??||style="width:33%"| PET/CT Fusion ||complete||yes and yes||yes and yes|| Wendy Plesniak | ||
|- | |- | ||
|} | |} | ||
Line 45: | Line 47: | ||
== Application CLI Modules == | == Application CLI Modules == | ||
− | {|class="wikitable" border="1" style="text-align:center" | + | === Version of 04-29-2010 === |
+ | |||
+ | [[Slicer-3.6-QA-2010-04-29|Slicer 3.6 QA table 2010 04 29]] | ||
+ | |||
+ | === Version of 05-2010 === | ||
+ | |||
+ | ==== Part A ==== | ||
+ | |||
+ | {|class="wikitable sortable labelpage labelpagetable" border="1" style="text-align:center" | ||
|+ <big>Slicer 3.6 Quality Assurance</big> | |+ <big>Slicer 3.6 Quality Assurance</big> | ||
|- | |- | ||
− | !Score!!Name!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Test coverage <ref>in % for non-interactive part</ref>!!valgrind errors!!Current Owner | + | !Score!!Name<ref>list produced with the script Slicer3/Scripts/generateListOfModules.sh </ref>!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Test coverage <ref>in % for non-interactive part</ref>!!valgrind errors!!Current Owner!!Comments <ref>Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files</ref>!!3.6 Documentation Name <ref>https://www.slicer.org/wiki/Documentation-3.6</ref>|- |
+ | |style="background:silver"| '''2Silver'''||style="width:33%"| ACPC Transform || complete || yes and yes || yes and yes || 75% || 1 || Nicole Aucoin||||same|| | ||
+ | |- | ||
+ | |style="background:gold"| '''1Gold''' ||style="width:33%"| Add Images || complete||yes and yes||yes and yes || 84.9% || 0 || Bill Lorensen||||AddImages|| | ||
+ | |- | ||
+ | |style="background:darkorange"| '''4Clay'''||style="width:33%"| Affine registration (Fast Affine Registration ?) ||complete||yes and no||yes and yes || 68.4% || 82 || Daniel Blezek || ||same|| | ||
+ | |- | ||
+ | |style="background:white"| ||style="width:33%"| BRAINSDemonWarp ||complete||yes and no||yes and no|| 78.4% || Unknown ||Hans Johnson, Greg Harris ||||same|| | ||
+ | |- | ||
+ | |style="background:white"| ||style="width:33%"| BRAINSFit ||complete||yes and yes||yes and yes|| 73.3% || Unknown || Eun Young Kim||||same|| | ||
+ | |- | ||
+ | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| BRAINSResample ||no||yes and yes||yes and no|| 76.7% || Unknown || Hans Johnson||||same|| | ||
+ | |- | ||
+ | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| BRAINSROIAuto ||no||yes and no||yes and no|| xx || Unknown || Hans Johnson||||same|| | ||
+ | |- | ||
+ | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| BRAINSVectorDemonWarping ||no||yes and no||yes and no|| xx || Unknown || Hans Johnson||||same|| | ||
+ | |- | ||
+ | |style="color:white; background:black"| '''5Coal''' ||style="width:33%"| Cast Image ||complete||yes and yes||yes and yes|| 24.1% ||0 ||Nicole Aucoin||||Cast Image|| | ||
+ | |- | ||
+ | |style="background:darkgoldenrod"| '''3Bronze'''||style="width:33%"| CheckerBoard Filter ||complete||yes and yes||yes and yes|| 67.4% ||0 ||Bill Lorensen||||CheckerBoard Filter|| | ||
+ | |- | ||
+ | |style="color:white; background:black"| '''5Coal'''||style="width:33%"| Create a DICOM Series || complete||yes and yes||yes and yes|| 86.1% || 124 ||Bill Lorensen||||Create a Dicom Series|| | ||
+ | |- | ||
+ | |style="background:darkgoldenrod"| '''3Bronze'''||style="width:33%"| Curvature Anisotropic Diffusion ||complete||yes and yes||yes and yes|| 64.3% || 0 ||Bill Lorensen||||same|| | ||
+ | |- | ||
+ | |style="background:white"| ||style="width:33%"| Deformable BSpline registration ||complete||yes and yes||yes and yes|| 82.3% || xx || Bill Lorensen||||Fast Nonrigid BSpline Registration|| | ||
+ | |- | ||
+ | |style="color:white; background:black"| '''5Coal''' ||style="width:33%"| Dicom to Nrrd Converter ||complete || yes and yes|| yes and yes || 35.8% || 0 || Xiaodong Tao |||| same || | ||
+ | |- | ||
+ | |style="background:silver"| '''2Silver'''||style="width:33%"| Diffusion Tensor Estimation || complete ||yes and no||yes and yes|| 79.7% || 9 ||CF Westin||||same|| | ||
+ | |- | ||
+ | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| Diffusion Tensor Scalar Measurements ||no||yes and no||yes and yes|| 56.2% || 5||CF Westin||||Diffusion Tensor Scalar Measurements|| | ||
+ | |- | ||
+ | |style="background:white"| ||style="width:33%"| EMSegment BatchMake || complete ||yes and yes || yes and yes || TBF || TBF || Stephen Aylward, Brad Davis, Julien Jomier, Julien Finet ||Batch Processing not in 3.6 RC2? ||EMSegmentBatch || | ||
+ | |- | ||
+ | |style="background:white"| ||style="width:33%"| EMSegment Command-line ||complete ||yes and yes || yes and yes || TBF || TBF || Kilian Pohl ||documentation link in xml/GUI needs revising||||same | ||
+ | |- | ||
+ | |style="background:white"| ||style="width:33%"| EMSegment Simple ||complete ||yes and yes ||yes and yes || TBF || TBF || Kilian Pohl || ||EMSegmenter | ||
+ | |- | ||
+ | |style="color:white; background:hotpink"| '''6Hazard''' ||style="width:33%"| Execution Model Tour || no || yes and yes||yes and yes || 88.2% || 0 || Daniel Blezek, Bill Lorensen ||No 3.6 documentation (3.4 only)||same | ||
+ | |- | ||
+ | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| Extract Skeleton ||no||yes and no||no and yes|| 0.0% || Unknown ||Pierre Seroul, Martin Styner, Guido Gerig, Stephen Aylward||||same | ||
+ | |- | ||
+ | |style="background:white"| ||style="width:33%"| Gaussian Blur BatchMake || complete ||yes and yes || yes and yes || TBF || TBF || Julien Jomier, Stephen Aylward||Batch Processing not in 3.6 RC2? ||||GaussianBlurBatch | ||
+ | |- | ||
+ | |style="background:darkorange"| '''4Clay'''||style="width:33%"| Gaussian Blur ||complete||yes and no||yes and yes|| 55.9% || 0 ||Julien Jomier, Stephen Aylward||||same | ||
|- | |- | ||
− | |style="background: | + | |style="background:darkgoldenrod"| '''3Bronze''' ||style="width:33%"| Gradient Anisotropic Diffusion ||complete||yes and yes||yes and yes|| 63.4% || 0 ||Bill Lorensen||||GradientAnisotropicFilter|| |
|- | |- | ||
− | |style="background: | + | |style="background:darkorange"| '''4Clay'''||style="width:33%"| Grayscale Fill Hole ||complete||yes and yes||yes and yes|| 57.1% || 0 ||Bill Lorensen||||same |
|- | |- | ||
− | |style="background: | + | |style="background:darkgoldenrod"| '''3Bronze'''||style="width:33%"| Grayscale Grind Peak ||complete||yes and yes||yes and yes|| 64.5% || 0 ||Bill Lorensen||||same |
|- | |- | ||
− | |style="background: | + | |style="background:gold"| '''1Gold''' ||style="width:33%"| Grayscale Model Maker || complete ||yes and yes || yes and yes || 82.1% || 0 || Bill Lorensen ||||same |
|- | |- | ||
− | |style="background: | + | |style="background:darkgoldenrod"| '''3Bronze''' ||style="width:33%"| Histogram Matching || complete ||yes and yes || yes and yes ||65% || 0 || Bill Lorensen, Xiaodong Tao ||||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:black"| '''5Coal''' ||style="width:33%"| Image Label Combine || complete ||yes and yes || yes and yes || 7.5% || 50 || Alex Yarmarkovich||||same |
|- | |- | ||
− | |style="background:white"| | + | |style="background:white"| ||style="width:33%"| Joint Rician LMMSE Image Filter || complete ||yes and yes || yes and yes || TBF || TBF || Antonio Tristán Vega, Santiago Aja-Fernandez ||||same |
|- | |- | ||
− | |style="background:white"| | + | |style="background:white"| ||style="width:33%"| Labelmap Seeding || complete ||yes and yes || yes and yes || TBF || TBF || Raul San Jose Estepar ||||Label Seeding |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| Label Map Smoothing || no ||yes and no ||yes and yes || TBF || TBF || Dirk Padfield, Josh Cates, Ross Whitaker ||||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| Linear registration || no || yes and no||yes and yes || 66.7% || 45 ||Daniel Blezek||sum of all errors from LinearRegistrationTest<n> tests|| same |
|- | |- | ||
− | |style="background: | + | |} |
+ | |||
+ | <references/> | ||
+ | |||
+ | ==== Part B ==== | ||
+ | |||
+ | {|class="wikitable sortable labelpage labelpagetable" border="1" style="text-align:center" | ||
+ | |+ <big>Slicer 3.6 Quality Assurance</big> | ||
+ | |- | ||
+ | !Score!!Name<ref>list produced with the script Slicer3/Scripts/generateListOfModules.sh </ref>!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Test coverage <ref>in % for non-interactive part</ref>!!valgrind errors!!Current Owner!!Comments <ref>Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files</ref><ref>Valgrind errors determined through use of runValgrindForOneModule.sh script in Slicer3-build/Scripts directory; dependent upon module testing script being found in Slicer-3-build/bin/ directory</ref>!!3.6 Documentation Name <ref>https://www.slicer.org/wiki/Documentation-3.6</ref>|- | ||
+ | |style="background:gold"| '''1Gold'''||style="width:33%"| Mask Image ||complete||yes and yes||yes and yes|| 82% || 0 || Nicole Aucoin ||||same | ||
|- | |- | ||
− | |style="background: | + | |style="background:darkorange"| '''4Clay'''||style="width:33%"| Median Filter ||complete||yes and yes||yes and yes|| 57% || 0 || Bill Lorensen |||||same |
|- | |- | ||
− | |style="background: | + | |style="background:gold"| '''1Gold'''||style="width:33%"| Merge Models ||complete||yes and yes||yes and yes|| 87% || 0 ||Nicole Aucoin ||||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:black"| '''5Coal''' ||style="width:33%"| Mesh Contour Segmentation ||complete||yes and yes||yes and yes|| 5.1% || 0 |||Peter Karasev ||||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:black"| '''5Coal'''||style="width:33%"| Model Maker ||complete||yes and yes||yes and yes|| 41% || 0 || Nicole Aucoin||||same |
|- | |- | ||
− | |style="background:white"| | + | |style="background:white"| ||style="width:33%"| MRI Bias Field Correction ||complete||yes and yes||yes and yes|| 71% || TBF || Sylavin Jaume|| ||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:black"| '''5Coal'''||style="width:33%"| Multiple models example ||no||yes and no||yes and yes|| 2.5% || 50 || Bill Lorensen||||n/a |
|- | |- | ||
− | |style="background: | + | |style="background:gold"| '''1Gold'''||style="width:33%"| Multiply Images ||complete||yes and yes||yes and yes|| 80% || 0 || Harini Veeraraghavan||||same |
|- | |- | ||
− | |style="background: | + | |style="background:gold"| '''1Gold'''||style="width:33%"| N4ITK MRI Bias correction ||complete||yes and yes||yes and yes|| 84% || 0 || Andriy Fedorov|||||same |
|- | |- | ||
− | |style="background: | + | |style="background:gold"| '''1Gold'''||style="width:33%"| Orient Images ||complete||yes and yes||yes and yes|| 88% || 0 || Xiaodong Tao|| ||same |
|- | |- | ||
− | |style="background: | + | |style="background:gold"| '''1Gold'''||style="width:33%"| Otsu Threshold Segmentation ||complete||yes and no||yes and yes|| 91% || 0 || Bill Lorensen||||same |
|- | |- | ||
− | |style="background: | + | |style="background:gold"| '''1Gold'''||style="width:33%"| Otsu Threshold ||complete||yes and no||yes and yes|| 100% || 0 || Bill Lorensen||||same |
|- | |- | ||
− | |style="background: | + | |style="background:gold"| '''1Gold'''||style="width:33%"| PolyData To Label Map ||complete||yes and yes||yes and yes|| 89% || 0 || Xiaodong Tao, Nicole Aucoin||||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard''' ||style="width:33%"| Register Images BatchMake ||complete||yes and yes||yes and yes|| TBF || TBF || Julien Finet, Stephen Aylward||no testing script found in Slicer3-build/bin ||Register Images batch |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard''' ||style="width:33%"| Register Images MultiRes (Experimental) ||complete||yes and yes||yes and yes||49.5% || TBF ||Casey Goodlett||no testing script found in Slicer3-build/bin ||Robust Multiresolution Affine Registration |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard''' ||style="width:33%"| Register Images ||complete||yes and yes||yes and yes|| 0% || TBF || Casey Goodlett ||no testing script found in Slicer3-build/bin||Expert Automated Registration |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:black"| '''5Coal'''||style="width:33%"| Resample DTI Volume ||complete||yes and yes||yes and yes|| 41% || 0 || Francois Budin|| ||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:black"| '''5Coal'''||style="width:33%"| Resample Scalar/Vector/DWI Volume ||complete||yes and yes||yes and yes|| 43% || 0 || Francois Budin|| ||same |
|- | |- | ||
− | |style="background:white"| | + | |style="background:white"| ||style="width:33%"| Resample Scalar Volume BatchMake ||complete||yes and yes||yes and yes|| TBF || TBF || Julien Finet || no testing script found in Slicer3-build/bin ||Resample Volume batch |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard''' ||style="width:33%"| Rician LMMSE Image Filter ||complete||yes and no||yes and yes|| 20.5% || TBF || Antonio Tristán Vega, Santiago Aja-Fernandez, Marc Niethammer || no testing script found in Slicer3-build/bin ||same |
|- | |- | ||
− | |style="background: | + | |style="background:darkgoldenrod"| '''3Bronze''' ||style="width:33%"| Rigid registration ||complete||yes and yes||yes and yes|| 61% || 0 || Jim Miller|| ||Fast Rigid Registration |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard''' ||style="width:33%"| Robust Statistics Segmentation ||complete||yes and yes||yes and yes|| 82.3% || TBF || Yi Gao ||no testing script found in Slicer3-build/bin||RobustStatisticsSeg |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| ROISelect ||complete||yes and no || yes and yes || TBF || TBF || Lauren O'Donnell||no testing script found in Slicer3-build/bin ||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard''' ||style="width:33%"| Simple DWI IO Test || no || yes and no|| yes and yes|| TBF || TBF || Raul San Jose ||no testing script found in Slicer3-build/bin||n/a |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| Simple IO Test ||no || yes and no|| yes and yes|| TBF || TBF || Bill Lorensen||no testing script found in Slicer3-build/bin||n/a |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard''' ||style="width:33%"| Simple region growing ||complete||yes and no||yes and yes|| TBF || TBF || Jim Miller, Harini Veeraraghavan ||no testing script found in Slicer3-build/bin||same |
|- | |- | ||
− | |style="background: | + | |style="background:silver"| '''2Silver'''||style="width:33%"| Subtract Images ||complete||yes and yes||yes and yes|| 76% || 0 || Harini Veeraraghavan ||||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| Test GridTransform registration || no|| yes and no||yes and yes|| 100% || 0 || Yinglin Lee ||||same |
|- | |- | ||
− | |style="background: | + | |style="background:darkorange"| '''4Clay'''||style="width:33%"| Threshold Image ||complete||yes and yes||yes and yes|| 59% || 0 || Nicole Aucoin||||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard''' ||style="width:33%"| Transform From Fiducials ||complete||yes and yes||yes and yes|| TBF || TBF || Casey Goodlett||no testing script found in Slicer3-build/bin||same |
|- | |- | ||
− | |style="background: | + | |style="color:white; background:hotpink"| '''6Hazard'''||style="width:33%"| Unbiased Non Local Means filter for DWI ||complete||yes and no||yes and yes|| 20.5% || TBF || Antonio Tristán Vega, Santiago Aja-Fernandez|| no testing script found in Slicer3-build/bin ||same |
|- | |- | ||
− | |style="background: | + | |style="background:gold"| '''1Gold'''||style="width:33%"| Voting Binary Hole Filling ||complete||yes and yes||yes and yes|| 100% || 0 || Jim Miller|| ||same |
|- | |- | ||
− | |||
|} | |} | ||
Line 146: | Line 210: | ||
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. | 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. | ||
+ | |||
+ | More information: | ||
+ | *[[Slicer3:Testing|Slicer3 Testing]] | ||
+ | *[http://www.na-mic.org/Wiki/index.php/NA-MIC-kit-curriculum/Testing-Based_Programming/How_to_run_Code_Coverage How to run Code Coverage] | ||
+ | *[http://www.na-mic.org/Wiki/index.php/NA-MIC-kit-curriculum/Testing-Based_Programming/How_to_run_Dynamic_Analysis How to run Dynamic Analysis (valgrind)] | ||
=Luis Ibanez' scoring system= | =Luis Ibanez' scoring system= | ||
Line 151: | Line 220: | ||
The following scoring will be applied to the '''data processing''' sections of all modules: | The following scoring will be applied to the '''data processing''' sections of all modules: | ||
− | {|class="wikitable" border="1" style="text-align:center" | + | {|class="wikitable sortable labelpage labelpagetable" border="1" style="text-align:center" |
|+ <big>Slicer 3.6 Quality Assurance Scoring</big> | |+ <big>Slicer 3.6 Quality Assurance Scoring</big> | ||
|- | |- | ||
!Score!!Code Coverage!!Valgrind Errors!!Documentation!!Tutorial | !Score!!Code Coverage!!Valgrind Errors!!Documentation!!Tutorial | ||
|- | |- | ||
− | |style="background:gold"| ''' | + | |style="background:gold"| '''1Gold''' || > 80% || 0 ||yes || yes |
|- | |- | ||
− | |style="background:silver"| ''' | + | |style="background:silver"| '''2Silver''' || > 70% || < 10 ||yes || yes |
|- | |- | ||
− | |style="background:darkgoldenrod"| ''' | + | |style="background:darkgoldenrod"| '''3Bronze''' || > 60% || < 50 ||yes || yes |
|- | |- | ||
− | |style="background:darkorange"| ''' | + | |style="background:darkorange"| '''4Clay''' || > 50% || < 100 ||yes || yes |
|- | |- | ||
− | |style="color:white; background:black"| ''' | + | |style="color:white; background:black"| '''5Coal''' ||style="background:red"|< 50% || > 100 || yes || yes |
|- | |- | ||
− | |style="color:white; background:hotpink"| ''' | + | |style="color:white; background:hotpink"| '''6Hazard''' || 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. | The code coverage and Valgrind error must be the ones reported on the Nightly Slicer Dashboard. Anecdotal data is not acceptable. |
Latest revision as of 14:53, 27 November 2019
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] | Current Owner |
---|---|---|---|---|---|
?? | Camera | complete | yes and yes | yes and yes | Sebastien Barre |
?? | Welcome | complete | yes and yes | yes and yes | Wendy Plesniak |
?? | Volumes | complete | yes and yes | yes and yes | Steve Pieper |
?? | Diffusion Editor | complete | yes and yes | no | CF Westin |
?? | Models | complete | yes and yes | yes and yes | Alex Yarmarkovich |
?? | Measurements | complete | yes and yes | yes and yes | Nicole Aucoin |
?? | Fiducials | complete | yes and yes | yes and yes | Nicole Aucoin |
?? | Data | complete | yes and yes | yes and yes | Steve Pieper |
?? | Slices | complete | yes and yes | yes and yes | Jim Miller |
?? | Colors | complete | yes and yes | yes and yes | Nicole Aucoin |
?? | Interactive Editor | complete | yes and yes | yes and yes | Steve Pieper |
?? | ROI Module | complete | no and yes | yes and yes | Alex Yarmarkovich |
?? | Volume Rendering | complete | yes and yes | yes and yes | Yanling Liu |
?? | PET/CT Fusion | complete | yes and yes | yes and yes | Wendy Plesniak |
Application CLI Modules
Version of 04-29-2010
Slicer 3.6 QA table 2010 04 29
Version of 05-2010
Part A
Score | Name[1] | Documentation | Help [2] | Acknowledgment [3] | Test coverage [4] | valgrind errors | Current Owner | Comments [5] | - | 2Silver | ACPC Transform | complete | yes and yes | yes and yes | 75% | 1 | Nicole Aucoin | same | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1Gold | Add Images | complete | yes and yes | yes and yes | 84.9% | 0 | Bill Lorensen | AddImages | ||||||||||||
4Clay | Affine registration (Fast Affine Registration ?) | complete | yes and no | yes and yes | 68.4% | 82 | Daniel Blezek | same | ||||||||||||
BRAINSDemonWarp | complete | yes and no | yes and no | 78.4% | Unknown | Hans Johnson, Greg Harris | same | |||||||||||||
BRAINSFit | complete | yes and yes | yes and yes | 73.3% | Unknown | Eun Young Kim | same | |||||||||||||
6Hazard | BRAINSResample | no | yes and yes | yes and no | 76.7% | Unknown | Hans Johnson | same | ||||||||||||
6Hazard | BRAINSROIAuto | no | yes and no | yes and no | xx | Unknown | Hans Johnson | same | ||||||||||||
6Hazard | BRAINSVectorDemonWarping | no | yes and no | yes and no | xx | Unknown | Hans Johnson | same | ||||||||||||
5Coal | Cast Image | complete | yes and yes | yes and yes | 24.1% | 0 | Nicole Aucoin | Cast Image | ||||||||||||
3Bronze | CheckerBoard Filter | complete | yes and yes | yes and yes | 67.4% | 0 | Bill Lorensen | CheckerBoard Filter | ||||||||||||
5Coal | Create a DICOM Series | complete | yes and yes | yes and yes | 86.1% | 124 | Bill Lorensen | Create a Dicom Series | ||||||||||||
3Bronze | Curvature Anisotropic Diffusion | complete | yes and yes | yes and yes | 64.3% | 0 | Bill Lorensen | same | ||||||||||||
Deformable BSpline registration | complete | yes and yes | yes and yes | 82.3% | xx | Bill Lorensen | Fast Nonrigid BSpline Registration | |||||||||||||
5Coal | Dicom to Nrrd Converter | complete | yes and yes | yes and yes | 35.8% | 0 | Xiaodong Tao | same | ||||||||||||
2Silver | Diffusion Tensor Estimation | complete | yes and no | yes and yes | 79.7% | 9 | CF Westin | same | ||||||||||||
6Hazard | Diffusion Tensor Scalar Measurements | no | yes and no | yes and yes | 56.2% | 5 | CF Westin | Diffusion Tensor Scalar Measurements | ||||||||||||
EMSegment BatchMake | complete | yes and yes | yes and yes | TBF | TBF | Stephen Aylward, Brad Davis, Julien Jomier, Julien Finet | Batch Processing not in 3.6 RC2? | EMSegmentBatch | ||||||||||||
EMSegment Command-line | complete | yes and yes | yes and yes | TBF | TBF | Kilian Pohl | documentation link in xml/GUI needs revising | same | ||||||||||||
EMSegment Simple | complete | yes and yes | yes and yes | TBF | TBF | Kilian Pohl | EMSegmenter | |||||||||||||
6Hazard | Execution Model Tour | no | yes and yes | yes and yes | 88.2% | 0 | Daniel Blezek, Bill Lorensen | No 3.6 documentation (3.4 only) | same | |||||||||||
6Hazard | Extract Skeleton | no | yes and no | no and yes | 0.0% | Unknown | Pierre Seroul, Martin Styner, Guido Gerig, Stephen Aylward | same | ||||||||||||
Gaussian Blur BatchMake | complete | yes and yes | yes and yes | TBF | TBF | Julien Jomier, Stephen Aylward | Batch Processing not in 3.6 RC2? | GaussianBlurBatch | ||||||||||||
4Clay | Gaussian Blur | complete | yes and no | yes and yes | 55.9% | 0 | Julien Jomier, Stephen Aylward | same | ||||||||||||
3Bronze | Gradient Anisotropic Diffusion | complete | yes and yes | yes and yes | 63.4% | 0 | Bill Lorensen | GradientAnisotropicFilter | ||||||||||||
4Clay | Grayscale Fill Hole | complete | yes and yes | yes and yes | 57.1% | 0 | Bill Lorensen | same | ||||||||||||
3Bronze | Grayscale Grind Peak | complete | yes and yes | yes and yes | 64.5% | 0 | Bill Lorensen | same | ||||||||||||
1Gold | Grayscale Model Maker | complete | yes and yes | yes and yes | 82.1% | 0 | Bill Lorensen | same | ||||||||||||
3Bronze | Histogram Matching | complete | yes and yes | yes and yes | 65% | 0 | Bill Lorensen, Xiaodong Tao | same | ||||||||||||
5Coal | Image Label Combine | complete | yes and yes | yes and yes | 7.5% | 50 | Alex Yarmarkovich | same | ||||||||||||
Joint Rician LMMSE Image Filter | complete | yes and yes | yes and yes | TBF | TBF | Antonio Tristán Vega, Santiago Aja-Fernandez | same | |||||||||||||
Labelmap Seeding | complete | yes and yes | yes and yes | TBF | TBF | Raul San Jose Estepar | Label Seeding | |||||||||||||
6Hazard | Label Map Smoothing | no | yes and no | yes and yes | TBF | TBF | Dirk Padfield, Josh Cates, Ross Whitaker | same | ||||||||||||
6Hazard | Linear registration | no | yes and no | yes and yes | 66.7% | 45 | Daniel Blezek | sum of all errors from LinearRegistrationTest<n> tests | same |
- ↑ list produced with the script Slicer3/Scripts/generateListOfModules.sh
- ↑ including link to website documentation
- ↑ including name of author and of supervisor
- ↑ in % for non-interactive part
- ↑ Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files
- ↑ https://www.slicer.org/wiki/Documentation-3.6
Part B
Score | Name[1] | Documentation | Help [2] | Acknowledgment [3] | Test coverage [4] | valgrind errors | Current Owner | Comments [5][6] | - | 1Gold | Mask Image | complete | yes and yes | yes and yes | 82% | 0 | Nicole Aucoin | same | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
4Clay | Median Filter | complete | yes and yes | yes and yes | 57% | 0 | Bill Lorensen | same | |||||||||||
1Gold | Merge Models | complete | yes and yes | yes and yes | 87% | 0 | Nicole Aucoin | same | |||||||||||
5Coal | Mesh Contour Segmentation | complete | yes and yes | yes and yes | 5.1% | 0 | Peter Karasev | same | |||||||||||
5Coal | Model Maker | complete | yes and yes | yes and yes | 41% | 0 | Nicole Aucoin | same | |||||||||||
MRI Bias Field Correction | complete | yes and yes | yes and yes | 71% | TBF | Sylavin Jaume | same | ||||||||||||
5Coal | Multiple models example | no | yes and no | yes and yes | 2.5% | 50 | Bill Lorensen | n/a | |||||||||||
1Gold | Multiply Images | complete | yes and yes | yes and yes | 80% | 0 | Harini Veeraraghavan | same | |||||||||||
1Gold | N4ITK MRI Bias correction | complete | yes and yes | yes and yes | 84% | 0 | Andriy Fedorov | same | |||||||||||
1Gold | Orient Images | complete | yes and yes | yes and yes | 88% | 0 | Xiaodong Tao | same | |||||||||||
1Gold | Otsu Threshold Segmentation | complete | yes and no | yes and yes | 91% | 0 | Bill Lorensen | same | |||||||||||
1Gold | Otsu Threshold | complete | yes and no | yes and yes | 100% | 0 | Bill Lorensen | same | |||||||||||
1Gold | PolyData To Label Map | complete | yes and yes | yes and yes | 89% | 0 | Xiaodong Tao, Nicole Aucoin | same | |||||||||||
6Hazard | Register Images BatchMake | complete | yes and yes | yes and yes | TBF | TBF | Julien Finet, Stephen Aylward | no testing script found in Slicer3-build/bin | Register Images batch | ||||||||||
6Hazard | Register Images MultiRes (Experimental) | complete | yes and yes | yes and yes | 49.5% | TBF | Casey Goodlett | no testing script found in Slicer3-build/bin | Robust Multiresolution Affine Registration | ||||||||||
6Hazard | Register Images | complete | yes and yes | yes and yes | 0% | TBF | Casey Goodlett | no testing script found in Slicer3-build/bin | Expert Automated Registration | ||||||||||
5Coal | Resample DTI Volume | complete | yes and yes | yes and yes | 41% | 0 | Francois Budin | same | |||||||||||
5Coal | Resample Scalar/Vector/DWI Volume | complete | yes and yes | yes and yes | 43% | 0 | Francois Budin | same | |||||||||||
Resample Scalar Volume BatchMake | complete | yes and yes | yes and yes | TBF | TBF | Julien Finet | no testing script found in Slicer3-build/bin | Resample Volume batch | |||||||||||
6Hazard | Rician LMMSE Image Filter | complete | yes and no | yes and yes | 20.5% | TBF | Antonio Tristán Vega, Santiago Aja-Fernandez, Marc Niethammer | no testing script found in Slicer3-build/bin | same | ||||||||||
3Bronze | Rigid registration | complete | yes and yes | yes and yes | 61% | 0 | Jim Miller | Fast Rigid Registration | |||||||||||
6Hazard | Robust Statistics Segmentation | complete | yes and yes | yes and yes | 82.3% | TBF | Yi Gao | no testing script found in Slicer3-build/bin | RobustStatisticsSeg | ||||||||||
6Hazard | ROISelect | complete | yes and no | yes and yes | TBF | TBF | Lauren O'Donnell | no testing script found in Slicer3-build/bin | same | ||||||||||
6Hazard | Simple DWI IO Test | no | yes and no | yes and yes | TBF | TBF | Raul San Jose | no testing script found in Slicer3-build/bin | n/a | ||||||||||
6Hazard | Simple IO Test | no | yes and no | yes and yes | TBF | TBF | Bill Lorensen | no testing script found in Slicer3-build/bin | n/a | ||||||||||
6Hazard | Simple region growing | complete | yes and no | yes and yes | TBF | TBF | Jim Miller, Harini Veeraraghavan | no testing script found in Slicer3-build/bin | same | ||||||||||
2Silver | Subtract Images | complete | yes and yes | yes and yes | 76% | 0 | Harini Veeraraghavan | same | |||||||||||
6Hazard | Test GridTransform registration | no | yes and no | yes and yes | 100% | 0 | Yinglin Lee | same | |||||||||||
4Clay | Threshold Image | complete | yes and yes | yes and yes | 59% | 0 | Nicole Aucoin | same | |||||||||||
6Hazard | Transform From Fiducials | complete | yes and yes | yes and yes | TBF | TBF | Casey Goodlett | no testing script found in Slicer3-build/bin | same | ||||||||||
6Hazard | Unbiased Non Local Means filter for DWI | complete | yes and no | yes and yes | 20.5% | TBF | Antonio Tristán Vega, Santiago Aja-Fernandez | no testing script found in Slicer3-build/bin | same | ||||||||||
1Gold | Voting Binary Hole Filling | complete | yes and yes | yes and yes | 100% | 0 | Jim Miller | same |
- ↑ list produced with the script Slicer3/Scripts/generateListOfModules.sh
- ↑ including link to website documentation
- ↑ including name of author and of supervisor
- ↑ in % for non-interactive part
- ↑ Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files
- ↑ Valgrind errors determined through use of runValgrindForOneModule.sh script in Slicer3-build/Scripts directory; dependent upon module testing script being found in Slicer-3-build/bin/ directory
- ↑ https://www.slicer.org/wiki/Documentation-3.6
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.
More information:
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 |
---|---|---|---|---|
1Gold | > 80% | 0 | yes | yes |
2Silver | > 70% | < 10 | yes | yes |
3Bronze | > 60% | < 50 | yes | yes |
4Clay | > 50% | < 100 | yes | yes |
5Coal | < 50% | > 100 | yes | yes |
6Hazard | 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.