Difference between revisions of "Events:Slicer4-Review-07-2011"
From NAMIC Wiki
(→UI) |
m (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/") |
||
(101 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
+ | ==RSNA 2011 Targeted Objectives== | ||
+ | *Roadmap for the Slicer 4 release for the '''series of demos at the''' [http://www.na-mic.org/Wiki/index.php/RSNA2011_Planning '''RSNA 3DSlicer Booth'''] | ||
+ | *Most tasks need to be ready by end of September, to leave time to update tutorials, test and debug. | ||
+ | * List of [http://www.na-mic.org/Bug/search.php?project_id=3&sticky_issues=on&target_version=Slicer+4.0+RSNA&sortby=last_updated&dir=DESC&hide_status_id=80 open Mantis issues] with RSNA Target | ||
+ | ===UI=== | ||
+ | {| | ||
+ | |align="left"| | ||
+ | * [http://www.na-mic.org/Bug/view.php?id=1337 Main GUI Cosmetics] | ||
+ | ** % face lift for the Slice viewers: reduce permanent non-image components. Reduce the number and depth of submenus. (J2) '''done''' | ||
+ | ** % Main Gui 3D viewers should have similar appearance to slice viewers (J2) '''done''' | ||
+ | ** % scenview and screensnapshot icons move to the icon bar at the top of the main gui. (J2-> Nicole) '''done''' | ||
+ | * Module Cosmetics | ||
+ | ** % [http://www.na-mic.org/Bug/view.php?id=1252 Volume Rendering] (J2) (in progress) | ||
+ | ** % [http://www.na-mic.org/Bug/view.php?id=1242 Models module] (J2) '''done''' | ||
+ | ** % [http://www.na-mic.org/Bug/view.php?id=1281 Editor], see picture to the right (Steve) (Done) | ||
+ | ** % [http://www.na-mic.org/Bug/view.php?id=1293 Welcome Module] (Wendy) | ||
+ | ** % [http://www.na-mic.org/Bug/view.php?id=1295 Volumes Module] (J2) | ||
+ | *** Not part of the original plan, will be done if time permits (nice to have, low priority for RSNA), not a show stopper. | ||
+ | ** % [http://www.na-mic.org/Bug/view.php?id=1296 Tractography Display Module] (Isaiah) '''done''' | ||
+ | ** % [http://www.na-mic.org/Bug/view.php?id=1299 Sceneviews module] (Nicole) | ||
+ | * % Stabilize annotations module (Nicole, Daniel, Alex) | ||
+ | * Update tutorials (Sonia) | ||
+ | * % Volume rendering transfer function | ||
+ | ** %% Mac crash in transfer functions (J2) (in progress) | ||
+ | ** stability and usability such as jittery, and gradient banding on MAC (J2) (gradient banding not started yet) | ||
+ | ** %Threshold feature ->offset slider(J2) (in progress) | ||
+ | ** % Level of Detail (interrupt CPU VR when accessing the transfer function editor) + progress indicator during long renders (J2) | ||
+ | * % Documentation on wiki (at least stubs) | ||
+ | * % Linking and CompareView (Jim) | ||
+ | * ROI Slice Displayable Manager '''done''' | ||
+ | ** % Centering on the slice (Alex) '''done''' (Now implemented even better with ROI widget in slice view) | ||
+ | * % Updated Icons (Annotations, HotLink, cursors, new layouts) (Wendy) all '''done''' except hotlink -- but I *like* the current hotlink icon. Can we keep it? | ||
+ | * % Revised colors for ROI widget (Wendy) '''done''' | ||
+ | * % Reorganization of the dMRI sections (Demian) | ||
+ | |[[image:EditorFacelift-2011-07.png|300px|right|thumb|Mock-up of redesigned editor interface]] | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | ===Under the hood=== | ||
+ | *hierarchies | ||
+ | ** % Collapsing Model Hierarchies controls display of children (Nicole) '''done''' | ||
+ | ** % Collapsing Annotation Hierarchies controls display of children (Nicole and Daniel) | ||
+ | * % Annotations (Nicole, Daniel) | ||
+ | ** vtkWidgets - bug fixes (Will) | ||
+ | *** 2D ruler tick spacing '''done''' | ||
+ | *** 3D ruler tick marks '''done''' | ||
+ | *** Widget performance (Michael) '''done''' | ||
+ | ** % 3D Representations for all (ruler, bidimensional and maybe fiducials/caption) (Will, Nicole) | ||
+ | * % CTK DICOM widget (Steve, Nicole) - interface done, some debugging to do. | ||
+ | **% Implement Slicer Data Bundle (SDB a.k.a. lollipop): put the entire scene into a single folder, zip the folder, add a proper DICOM secondary capture header, which exposes the scenesnapshots. This should be the default save option. Everything else should be accessible through an "advanced" button. (Nicole) - prototype done, but not integrated with app. Zip is done by Nicole, Steve did secondary capture dicom. | ||
+ | ** % Listener, Query, Retrieve, Send (Steve) - done except for Send (which is grayed out for now) | ||
+ | * % Optimize Model Displayable Manager (Alex) | ||
+ | * % Brainsfit: the slicer 3 brainsfit will be available in slicer 4 (Hans) | ||
+ | * % Fix resize crash due to extent problem in reslice mask (J2) '''done''' | ||
+ | |||
+ | ===Infrastructure=== | ||
+ | {| | ||
+ | |align="left" rowspan="2"| | ||
+ | * Tk/Tcl | ||
+ | ** % Annotation/main interaction speedup (Steve) - replace SliceSWidget::updateAnnotation(s) with vtkMRMLSliceInformationDisplayableManager and vtkMRMLSliceLogic::CalculateInformationText - done as Data Probe - need to check windows performance | ||
+ | * Extensions | ||
+ | ** % ABC, SkullStripper, EMSegmenter, VMTK (?), Plastimatch, [[2011_Summer_Project_Week_DVH|DVH extension]] (Jc) | ||
+ | ** % Support for superbuild (Jc) | ||
+ | * Web: minor updates and tweaks | ||
+ | ** % mobile skin for webkit rendering of the slicer wiki documentation pages (JC, Zack, others) | ||
+ | ** % Statistics on packages and on individual extensions (Jc with input from Zack) | ||
+ | ** % redirect links to slicer 4 dashboard (slicer.org download page, developer pages,....) | ||
+ | ** % Slicer 4 nightlies, snapshots (monthly) and stable versions are pulled from the factory machine | ||
+ | ** % Template for Slicer 4 documentation (JC) | ||
+ | |[[image:2011-08-04-MainGuiViewerInfo.png|400px|right|thumb|ViewerInformation mock-up [http://www.na-mic.org/Bug/view.php?id=1317]]] | ||
+ | |- | ||
+ | |[[image:SliceAnnotations-2011-07.png|300px|right|thumb|Snapshot of SliceAnnotationTree]] | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | ===Beginning Of The Rest=== | ||
+ | |||
=What= | =What= | ||
Slicer 4 review and programming sprint | Slicer 4 review and programming sprint | ||
Line 14: | Line 91: | ||
=Work on= | =Work on= | ||
− | == | + | == Full List == |
− | + | Below is the complete list of items discussed. Items that are targeted for the RSNA 2011 events are preceded by a % sign, the person responsible is identified in parenthesis | |
− | |||
− | |||
− | |||
− | |||
− | Items that are targeted for the RSNA 2011 events are preceded by a % sign, the person responsible is identified in parenthesis | ||
===UI=== | ===UI=== | ||
[[image:SlicerColorSelector.PNG|400px|right|thumb|SlicerColorSelector using CTK color dialog]] | [[image:SlicerColorSelector.PNG|400px|right|thumb|SlicerColorSelector using CTK color dialog]] | ||
− | * | + | * Reformat capabilities: We need a widget and possibly a slider based interface. (Nicole, Will) |
*Cosmetics | *Cosmetics | ||
** % [http://www.na-mic.org/Bug/view.php?id=1252 Volume Rendering] (J2) | ** % [http://www.na-mic.org/Bug/view.php?id=1252 Volume Rendering] (J2) | ||
Line 32: | Line 104: | ||
** % Main Gui 3D viewers should have similar appearance to slice viewers (J2) | ** % Main Gui 3D viewers should have similar appearance to slice viewers (J2) | ||
** % Stabilize annotations module (Nicole) | ** % Stabilize annotations module (Nicole) | ||
− | * Update tutorials | + | * Update tutorials (Sonia) |
** After Facelift of Main Gui and some core modules | ** After Facelift of Main Gui and some core modules | ||
** Using GUI Testing? | ** Using GUI Testing? | ||
− | * Volume rendering transfer function | + | * % Volume rendering transfer function (J2) |
+ | ** %% Mac crash in transfer functions | ||
** stability | ** stability | ||
** Jittery, and banding on MAC | ** Jittery, and banding on MAC | ||
− | ** Threshold | + | ** %Threshold |
** Better appearance of the elements of the transfer function. They look ugly and are not antialiased. Check the graph in [https://www.ohloh.net/p/slicer Ohloh] and mouse over it. Looks much nicer! (according to the page source, the charts are made with [http://www.highcharts.com/ HighCharts]) | ** Better appearance of the elements of the transfer function. They look ugly and are not antialiased. Check the graph in [https://www.ohloh.net/p/slicer Ohloh] and mouse over it. Looks much nicer! (according to the page source, the charts are made with [http://www.highcharts.com/ HighCharts]) | ||
− | ** Level of Detail (interrupt CPU VR when accessing the transfer function editor) | + | ** Level of Detail (interrupt CPU VR when accessing the transfer function editor) + progress indicator during long renders |
** Group selection and shifting | ** Group selection and shifting | ||
* % Color selector | * % Color selector | ||
− | ** % the default color selector should be | + | ** % the default color selector should be THE CTK color dialog (see picture to the right). (J2) |
− | ** | + | ** add search function to the labels (J2) |
+ | * % Documentation on wiki (at least stubs) | ||
+ | * % Linking and CompareView (Jim) | ||
+ | * ROI Slice Displayable Manager | ||
+ | ** % Centering on the slice (Alex) | ||
+ | * % Updated Icons (Annotations, HotLink, cursors, new layouts) (Wendy) '''done''', i believe. | ||
===Under the hood=== | ===Under the hood=== | ||
Line 54: | Line 132: | ||
*hierarchies | *hierarchies | ||
**display: the current display is confusing. Image shows a possible modification | **display: the current display is confusing. Image shows a possible modification | ||
+ | ** % Collapsing Model Hierarchies controls display of children (Nicole) | ||
+ | ** % Collapsing Annotation Hierarchies controls display of children (Nicole and Daniel) | ||
**drag and drop capability | **drag and drop capability | ||
− | * Annotations | + | * % Annotations (Nicole, Daniel) |
− | ** vtkWidgets | + | ** vtkWidgets - bug fixes (Will) |
− | ** GUI layout | + | ** GUI layout (Nicole) |
** compositing with volume rendering does not work properly | ** compositing with volume rendering does not work properly | ||
− | ** | + | *** % 3D Representations for all (ruler, bidimensional and maybe fiducials/caption) (Will, Nicole) |
− | *CTK DICOM widget | + | * % CTK DICOM widget (Steve, Nicole) |
− | **Implement | + | **% Implement Slicer Data Bundle (SDB a.k.a. lollipop): put the entire scene into a single folder, zip the folder, add a proper DICOM secondary capture header, which exposes the scenesnapshots. (Nicole) |
+ | ** % Listener, Query, Retrieve, Send (Steve) | ||
**use DICOM widget local database as default mechanism for load/save | **use DICOM widget local database as default mechanism for load/save | ||
**everything else is import/export | **everything else is import/export | ||
**Slicer should have a single location for these operations | **Slicer should have a single location for these operations | ||
*DisplayModule | *DisplayModule | ||
− | **[ | + | **[https://www.slicer.org/wiki/Slicer4:DisplayModule Draft of the DisplayModule] |
+ | * % Optimize Model Displayable Manager (Alex) | ||
===Infrastructure=== | ===Infrastructure=== | ||
Line 76: | Line 158: | ||
* Tk/Tcl | * Tk/Tcl | ||
** Removing the last dependencies in core interaction loops - see [[Slicer4:SliceInteractions]] | ** Removing the last dependencies in core interaction loops - see [[Slicer4:SliceInteractions]] | ||
− | ** Maintain functionality for Editor | + | ** % Annotation/main interaction speedup (Steve) |
+ | ** Maintain improve/functionality for Editor | ||
* Performance optimization | * Performance optimization | ||
** Module for profiling events | ** Module for profiling events | ||
* Extensions | * Extensions | ||
− | ** Support for superbuild | + | ** % ABC, EMSegmenter, VMTK (Jc) |
+ | ** % Support for superbuild (Jc) | ||
** Requirements for testing, documentation, tutorials, and continued support from developers | ** Requirements for testing, documentation, tutorials, and continued support from developers | ||
*** How to name different levels of compliance | *** How to name different levels of compliance | ||
* Downloads | * Downloads | ||
− | ** Statistics on packages and on individual extensions | + | ** % Statistics on packages and on individual extensions (Jc) |
** Web pages | ** Web pages | ||
** Technologies | ** Technologies | ||
Line 94: | Line 178: | ||
=== Compilation === | === Compilation === | ||
− | * Fix numpy builds on win64 | + | * issues with win64 debug build - these impact developers more than users - we will prioritize getting nightly binary builds working on all platforms for RSNA before streamlining the developer process |
− | ** Need to embed manifests in numpy pyd files | + | ** Fix numpy builds on win64 |
− | * Fix win64 tcl version | + | *** Need to embed manifests in numpy pyd files |
− | ** currently permission issue with dlls in win64 slicerlib mirror | + | ** Fix win64 tcl version |
− | ** currently using tcl8.4 on win32 and elsewhere but tcl8.5 on win64 (should use the same everywhere if possible) | + | *** currently permission issue with dlls in win64 slicerlib mirror |
+ | *** currently using tcl8.4 on win32 and elsewhere but tcl8.5 on win64 (should use the same everywhere if possible - we may want to switch to the [http://tcl.activestate.com active tcl pre-built distributions for windows]) | ||
+ | |||
+ | * Slicer4 dashboard | ||
=Agenda= | =Agenda= | ||
Line 115: | Line 202: | ||
#Luping Fang | #Luping Fang | ||
#Mike Halle | #Mike Halle | ||
+ | #Andrey Fedorov |
Latest revision as of 17:11, 10 July 2017
Home < Events:Slicer4-Review-07-2011Contents
RSNA 2011 Targeted Objectives
- Roadmap for the Slicer 4 release for the series of demos at the RSNA 3DSlicer Booth
- Most tasks need to be ready by end of September, to leave time to update tutorials, test and debug.
- List of open Mantis issues with RSNA Target
UI
|
Under the hood
- hierarchies
- % Collapsing Model Hierarchies controls display of children (Nicole) done
- % Collapsing Annotation Hierarchies controls display of children (Nicole and Daniel)
- % Annotations (Nicole, Daniel)
- vtkWidgets - bug fixes (Will)
- 2D ruler tick spacing done
- 3D ruler tick marks done
- Widget performance (Michael) done
- % 3D Representations for all (ruler, bidimensional and maybe fiducials/caption) (Will, Nicole)
- vtkWidgets - bug fixes (Will)
- % CTK DICOM widget (Steve, Nicole) - interface done, some debugging to do.
- % Implement Slicer Data Bundle (SDB a.k.a. lollipop): put the entire scene into a single folder, zip the folder, add a proper DICOM secondary capture header, which exposes the scenesnapshots. This should be the default save option. Everything else should be accessible through an "advanced" button. (Nicole) - prototype done, but not integrated with app. Zip is done by Nicole, Steve did secondary capture dicom.
- % Listener, Query, Retrieve, Send (Steve) - done except for Send (which is grayed out for now)
- % Optimize Model Displayable Manager (Alex)
- % Brainsfit: the slicer 3 brainsfit will be available in slicer 4 (Hans)
- % Fix resize crash due to extent problem in reslice mask (J2) done
Infrastructure
|
|
Beginning Of The Rest
What
Slicer 4 review and programming sprint
When
July 19, 10 am -21, 4pm 2011
Who
Slicer 4 core programmers
Where
Demo room, 2nd floor, 1249 Boylston Street, Boston, MA
Why
- Identify roadmap for a Slicer 4 product release for the Nov 27-Dec.2 RSNA demos at the 3DSlicer Booth
- Main GUI and UI changes first, so that tutorial porting can begin
- debugging the features used in the RSNA tutorials
Work on
Full List
Below is the complete list of items discussed. Items that are targeted for the RSNA 2011 events are preceded by a % sign, the person responsible is identified in parenthesis
UI
- Reformat capabilities: We need a widget and possibly a slider based interface. (Nicole, Will)
- Cosmetics
- % Volume Rendering (J2)
- % Models module (J2)
- % Editor (Steve)
- % Main GUI face lift for the Slice viewers: reduce permanent non-image components. Reduce the number and depth of submenus. (J2)
- % Main Gui 3D viewers should have similar appearance to slice viewers (J2)
- % Stabilize annotations module (Nicole)
- Update tutorials (Sonia)
- After Facelift of Main Gui and some core modules
- Using GUI Testing?
- % Volume rendering transfer function (J2)
- %% Mac crash in transfer functions
- stability
- Jittery, and banding on MAC
- %Threshold
- Better appearance of the elements of the transfer function. They look ugly and are not antialiased. Check the graph in Ohloh and mouse over it. Looks much nicer! (according to the page source, the charts are made with HighCharts)
- Level of Detail (interrupt CPU VR when accessing the transfer function editor) + progress indicator during long renders
- Group selection and shifting
- % Color selector
- % the default color selector should be THE CTK color dialog (see picture to the right). (J2)
- add search function to the labels (J2)
- % Documentation on wiki (at least stubs)
- % Linking and CompareView (Jim)
- ROI Slice Displayable Manager
- % Centering on the slice (Alex)
- % Updated Icons (Annotations, HotLink, cursors, new layouts) (Wendy) done, i believe.
Under the hood
- GPU Volume Rendering
- Support for ATI and MAC
- How many GPU render engines to support/provide?
- Ron says: I just need a single one that works for flythroughs and can handle the combination of volume rendering, cross-sections, surface models, annotations
- hierarchies
- display: the current display is confusing. Image shows a possible modification
- % Collapsing Model Hierarchies controls display of children (Nicole)
- % Collapsing Annotation Hierarchies controls display of children (Nicole and Daniel)
- drag and drop capability
- % Annotations (Nicole, Daniel)
- vtkWidgets - bug fixes (Will)
- GUI layout (Nicole)
- compositing with volume rendering does not work properly
- % 3D Representations for all (ruler, bidimensional and maybe fiducials/caption) (Will, Nicole)
- % CTK DICOM widget (Steve, Nicole)
- % Implement Slicer Data Bundle (SDB a.k.a. lollipop): put the entire scene into a single folder, zip the folder, add a proper DICOM secondary capture header, which exposes the scenesnapshots. (Nicole)
- % Listener, Query, Retrieve, Send (Steve)
- use DICOM widget local database as default mechanism for load/save
- everything else is import/export
- Slicer should have a single location for these operations
- DisplayModule
- % Optimize Model Displayable Manager (Alex)
Infrastructure
- Move to git/gerrit (TBD - can it be used with git-svn or is the suggestion to retire svn?)
- GUI Testing
- Instrumenting CTK widgets
- Conversion of tutorials to tests
- What will this provide that Sikuli does not? Sonia is ready to use Sikuli unless there is a good reason not to.
- Tk/Tcl
- Removing the last dependencies in core interaction loops - see Slicer4:SliceInteractions
- % Annotation/main interaction speedup (Steve)
- Maintain improve/functionality for Editor
- Performance optimization
- Module for profiling events
- Extensions
- % ABC, EMSegmenter, VMTK (Jc)
- % Support for superbuild (Jc)
- Requirements for testing, documentation, tutorials, and continued support from developers
- How to name different levels of compliance
- Downloads
- % Statistics on packages and on individual extensions (Jc)
- Web pages
- Technologies
- Charts
- Reference Implementation (Marcus)
- MIDAS
- sceneviews support
- Interactive CLI modules
Compilation
- issues with win64 debug build - these impact developers more than users - we will prioritize getting nightly binary builds working on all platforms for RSNA before streamlining the developer process
- Fix numpy builds on win64
- Need to embed manifests in numpy pyd files
- Fix win64 tcl version
- currently permission issue with dlls in win64 slicerlib mirror
- currently using tcl8.4 on win32 and elsewhere but tcl8.5 on win64 (should use the same everywhere if possible - we may want to switch to the active tcl pre-built distributions for windows)
- Fix numpy builds on win64
- Slicer4 dashboard
Agenda
Attending
- Ron Kikinis
- Steve Pieper
- Nicole Aucoin
- Julien Finet
- Daniel Haehn (only 07/19)
- Jean-Christophe Fillion-Robin
- Stephen Aylward
- Will Schroeder
- Jim Miller
- Suares Tamekue Tatuebu
- Luping Fang
- Mike Halle
- Andrey Fedorov