na-mic national alliance for medical image computing slicer 2010: past, present, and future steve...

Download NA-MIC National Alliance for Medical Image Computing  Slicer 2010: Past, Present, and Future Steve Pieper, Ph.D

If you can't read please download the document

Upload: gervase-stewart

Post on 18-Jan-2018

221 views

Category:

Documents


0 download

DESCRIPTION

National Alliance for Medical Image Computing 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

TRANSCRIPT

NA-MIC National Alliance for Medical Image ComputingSlicer 2010: Past, Present, and Future Steve Pieper, Ph.D. National Alliance for Medical Image ComputingTopics Slicer 3.6 Slicer Timeline Slicer 4 Topics Developer Decision Tree National Alliance for Medical Image ComputingSlicer 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 National Alliance for Medical Image Computing3D Slicer version 3.6!!! Congratulations and Thanks! Dozens of Contributors and Many, Many Bug Fixes and New Features See slicer.org for info National Alliance for Medical Image ComputingSlicer 3.6 Highlights National Alliance for Medical Image ComputingSlicer 3.6 Highlights (cont) National Alliance for Medical Image ComputingSlicer 3.6 Highlights (cont) National Alliance for Medical Image ComputingSlicer 3.6 Highlights (cont) National Alliance for Medical Image ComputingSlicer 3.6 Highlights (cont) National Alliance for Medical Image ComputingSlicer 3.6 Extensions National Alliance for Medical Image ComputingSlicer 3.6 Extensions (cont) National Alliance for Medical Image ComputingSlicer 3.6 Additions National Alliance for Medical Image ComputingIntegration Options National Alliance for Medical Image ComputingExtensions Keep the base package lean and mean Modules have individual identity Per-module web site, svn, downloads, mailing lists, wiki Allow users to assemble their own set of tools Customized Bundles by task or application Easy to download compatible extensions Analogous to Firefox extensions Integrate extension builds into developer/nightly/release processs NITRC Supplement to NA-MIC helping to pay for needed infrastructure (Neuroimaging Informatics Tools and Resources Clearinghouse) NITRC can host neuroimaging projects (gforge implementation) National Alliance for Medical Image ComputingExtensions Distribution National Alliance for Medical Image ComputingSlicer 3.6 Plans Hands on Session Today at 11 Tutorial Contest Presentations this Afternoon at 3, Awards Tomorrow at 12:45 12 Tutorials Entered Slicer 3.6 is the Stable Platform for Training and Outreach for the Next Year Slicer 3.6 is the Stable Platform for Algorithm Research for the Next Year National Alliance for Medical Image ComputingSlicer Timeline 3.6.X Patch Releases During 2010 Transition to Slicer4 in Second Half of 2010 Slicer4 Release in 2011 (Date TBD) National Alliance for Medical Image ComputingWhat Supports Slicer? NA-MIC (4-Year Renewal Pending) NAC In Y2 of 5-Year Cycle In Y1 of 2-Year ARRA Supplements Registration, Qt, EMSegmenter, Annotations, Workflow NCIGT (Y1 of 5-Year Cycle) Collaboration R01s and R21s Mutual Interest Collaborations Contributions from the Slicer Developer and User Communities National Alliance for Medical Image ComputingStable End of KWWidgets-based Slicer Bug Fixes in Core Libraries Updated Modules Meshing, Prostate IGT, EMSegmenter this summer, others later Slicer3 svn trunk has two purposes today: 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 National Alliance for Medical Image ComputingSlicer4: Goals Slim Down, Modernize, and Optimize Improve Collaboration and Code Sharing with Research Community Introduce New Technologies Increase Testing and Code Consistency National Alliance for Medical Image ComputingSlicer4: Collaborations Nokia - Qt Software Ecosystem CTK (Common Toolkit) Widgets, DICOM, Messaging BRAINS ITKv4 Scipy (Scientific Python), Nipy (Neuroimaging Python) And, of course, NAC, NCIGT, NA-MIC DBPs, Collaboration Grants, Like-Minded Developers, Longtime Friends and Family National Alliance for Medical Image ComputingSlicer4 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 National Alliance for Medical Image ComputingSlicer4: 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) slicer-devel list will be notified of policies posted here: National Alliance for Medical Image ComputingSlicer4: 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 National Alliance for Medical Image ComputingSlicer4: Qt Impact No More X11 on Mac OSX New C++ Paradigms Designer for GUI Construction Native WebKit Native HTML (CSS, HTML5, webgl) JavaScript Engine National Alliance for Medical Image ComputingSlicer4: CTK See commontk.org for info CTK is Home Many 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 National Alliance for Medical Image ComputingSlicer4: 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 National Alliance for Medical Image ComputingSlicer4: Tcl and Python VTK and VTK-based Slicer4 Code will be Wrapped with Python A Compatibility Layer will Allow Tcl to Call VTK/Slicer Code via Python This will be the inverse of Slicer3, where Python calls are routed through Tcl To Be Written Any Tk or KWWidgets GUI code will need to be rewritten in Qt National Alliance for Medical Image ComputingSlicer4: SuperBuild Evolution of getbuildtest.tcl Concept into Pure CMake More General Implementation to Serve as Template for Other Projects getbuildtest is Still the Supported Tool for Slicer3.6 Hierarchical CTK also Uses SuperBuild Extension Support Coming Try It Slicer4 Build Instructions on Wiki National Alliance for Medical Image ComputingSlicer4: Development Emphasis on the NA-MIC Software Engineering Methdology Testing, Coverage, Documentation & Coding Style New Modules Start as Extensions Only Widely Applicable Functionality Bundled with Application Only When Coding Standards Are Met Increase Communication via the Developer Mailing List Keep Everyone in the Loop on Architecture and Coding Conventions Verbose Commit Messages National Alliance for Medical Image ComputingDeveloper Decision Tree Working on the Slicer Core? Focus on Qt Transition Working on a Module? Build it as an Extension Command Line Module? Develop and Test with Slicer3.6 GUI Project with Deadlines in 2010? Develop with KWWidgets for 3.6.X Keep your Logic and MRML Distinct from the GUI Ongoing Support will be Provided 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