Projects:ARRA:SlicerEM:Slicer4
From NAMIC Wiki
Home < Projects:ARRA:SlicerEM:Slicer4
Contents
EMSegmenter in Slicer4
TODO
untie KWWidgets from EMSegment baseuntie KWWidgets from EMSegment commandline toolcreate EMSegment4 as an extension for Slicer4include the commandline tool in the extension (Problem: infrastructure is not ready yet)
Merge old EMSegment4 and the new extension all in Slicer3 repositoryintroduce Slicer Common Interface (SCI) which holds functionality which is different between Slicer3 and Slicer4 but provides the same API for bothprovide EMSegment3 functionality in the SCIprovide EMSegment4 functionality in the SCI (work in progress)
- update EMSegment4 Qt Gui
- provide nightly extension builds
Slicer Common Interface (SCI)
The Slicer Common Interface is a class with a unified API for Slicer3 and Slicer4 which includes functionality which has to be realized differently among the two Slicer versions.
Progress
Task | Slicer3 | Slicer4 |
GetTclInterpeter | DONE | obsolete |
SourceTclFile | DONE | DONE |
EvaluateTcl | DONE | DONE |
GetTclNameFromPointer | DONE | DONE |
RegisterObjectWithTcl | DONE | DONE |
GetApplicationTclName | DONE | DONE |
InitializePythonViaTcl | DONE | obsolete |
EvaluatePython | DONE | DONE |
GetTemporaryDirectory | DONE | DONE |
GetBinDirectory | DONE | DONE |
GetRepositoryRevision | DONE | DONE |
SetApplicationBinDir | DONE | obsolete |
GetHTTPHandler | DONE | DONE |
PromptBeforeExitOff | DONE | DONE |
DestroySlicerApplication | DONE | DONE |
AddDataIOToScene | DONE | DONE |
RemoveDataIOFromScene | DONE | DONE |
EMSegment GUI in Qt
Wizard steps
- Step1: Define Task
- create new task functionality
- Step2: Define input channels
in Simple mode show dynamic frameall done
- Step3: Define anatomical tree
qt widget does not support creating subclasses yetall done
- Step4: Define Atlas
qt widget supports parcellation mapsall done
- Step5: Edit Registration parameters
problem: show input channels-volume map does not work yetall done
- Step6: Dynamic frame
- support for dynamic textedits
- Step7: Specify Intensity Distributions
manual samplingall done
- Step8: Edit node-based parameters
advanced GUI not done yetall done
- Step9: Define Misc. Parameters
all done
In general:
segmentation call not hooked up yet- Extension infrastructure
- Testing and bug fixing
Open issues reported by Kilian
- "Attempt to go to the finish step succeeded" message when clicking segment
- this is a ctk error
- step 3: reduce size of probability map fields
- step 7: "Plot distribution" functionality
- step 7: incorrect mean in manual sampling mode
- step 7: incorrect reset of distribution
- step 7: size of anatomical tree not optimal
- step 7: remove auto-sampling
- step 9: grey out forward button
- put emsegmenter in category segmentation
- all steps: tooltips
- order task list alphabetically