160 likes | 337 Views
Slicer 2010: Past, Present, and Future. Steve Pieper, Ph.D. Slicer 3.6 Slicer Timeline Slicer 4 Topics. Topics. Slicer Background. 3D Slicer Role in NA-MIC Translation Platform to get Medical Computing Technology to DBP Researchers Provide Reference Implementation using NA-MIC Kit
E N D
Slicer 2010:Past, Present, and Future Steve Pieper, Ph.D.
Slicer 3.6 Slicer Timeline Slicer 4 Topics Topics
Slicer Background • 3D Slicer Role in NA-MIC • Translation Platform to get Medical Computing Technology to DBP Researchers • Provide Reference Implementation using NA-MIC Kit • Part of NA-MIC Outreach to New Applications • First Slicer3 svn commit: January 26, 2006
3D Slicer version 3.6!!! Congratulations and Thanks! Dozens of Contributors and Many, Many Bug Fixes and New Features See slicer.org for info…
Slicer Timeline 3.6.X Patch Releases During 2010 Transition to Slicer4 in Second Half of 2010
Stable End of KWWidgets-based Slicer Bug Fixes in Core Libraries Updated Modules Meshing, Prostate IGT, EMSegmenter… 3.6.1 this summer, others later No new features in Slicer3 svn trunk Code that is being tested for inclusion in 3.6.X Code that will migrate to 4.x (Qt code, conditionally compiled) Nightly builds and dashboards will be based on Slicer3 svn trunk during summer 2010 Maintenance will continue through 2011 and beyond as needed Slicer 3.6.X
Slicer4 Goals Slim Down, Modernize, and Optimize Improve Collaboration Introduce New Technologies
Slicer4 Collaborations Nokia - Qt Software Ecosystem CTK (Common Toolkit) Widgets, DICOM, Messaging… BRAINS Registration ITKv4 (Nipy) Neuroimaging Python And, of course, NAC, NCIGT, NA-MIC DBPs, Collaboration Grants, Longtime Friends and Family…
Slicer4 Compatibility Pledge Import .xml and .mrml from Slicer2.x and Slicer3.x Command Line Modules will not Need to Change Core Modules will be Ported Help will be Provided for Porting Loadable Modules MRML and Logic Basically Unchanged, Only GUI Needs to be Rewritten ModuleWizard to Create Code Framework Consistent Slicer Terminology and Concepts Ease User Transition, Leverage Training
Slicer4: Git Distributed Source Control Faster Enables Scalable Workflows for Larger Teams Requires New Thinking Come Thursday at 2 for More Info… We will create a Slicer4 Git this Summer History will be imported Host TBD (possibly github or Kitware)
Slicer4: Qt Large Developer Community Many Highly Refined Tools Major Effort Underway thanks to ARRA Supplement Learn More this Afternoon 1-3 Results are Encouraging, but there is Much To Do…
Slicer4: Qt Impact No More X11 on Mac OSX Designer for GUI Construction Native WebKit Native HTML (CSS, HTML5, webgl) JavaScript Engine
Slicer4: CTK See commontk.org for info CTK is home for “generic” parts of Slicer4 CTKWidgets, including Transfer Function Editor CTKDICOM, based on DCMTK Other Code may Migrate (Execution Model? MRML? …) Active International Development Team
Slicer4: PythonQt Developed by Mevislab (Germany) LGPL, Stable Scripted Access to Classes, Signals, Slots, Properties May (or may not) be Replace with PySide in the Future
Slicer4: SuperBuild Evolution of getbuildtest.tcl Concept into Pure CMake More General Implementation to Serve as Template for Other Projects Hierarchical CTK also Uses SuperBuild Try It Slicer4 Build Instructions on Wiki
Developer Decision Tree Command Line Module? Develop and Test with Slicer3.6 GUI Project with Deadlines in 2010? Develop for 3.6.X Longer-Term Project that Needs a Custom GUI? Start Learning Qt Implement Logic and MRML with Slicer3 Expect to have Usable Slicer4 alphas in late 2010