National Library of Medicine Segmentation and Registration Toolkit

Slides:



Advertisements
Similar presentations
Building Open Science Communities
Advertisements

ITK-Overview Insight Software Consortium. What is ITK Image Processing Segmentation Registration No Graphical User Interface (GUI) No Visualization.
Technology Analysis LINUX Alper Alansal Brian Blumberg Ramank Bharti Taihoon Lee.
18 April 2002 e-Science Architectural Roadmap Open Meeting 1 Support for the UK e-Science Roadmap David Boyd UK Grid Support Centre CLRC e-Science Centre.
NA-MIC National Alliance for Medical Image Computing National Alliance for Medical Image Computing: NAMIC Ron Kikinis, M.D.
COM vs. CORBA.
Chandler ISR June Chandler Open Source Personal Information Manager , calendar, contacts, tasks, free-form items Easy sharing and collaboration.
Developing the NSDL User Portal Dean Krafft, Cornell University
June 22, 2005NCRR NIBIB PI Meeting Open, Distributed and Collaborative Software Development Bill Lorensen GE Research
Software Process, CMake, Dashboards, CPack Bill Hoffman Kitware, Inc.
NA-MIC National Alliance for Medical Image Computing Core 1b – Engineering End-user Platform Steve Pieper Isomics, Inc.
William Lorensen GE Research Niskayuna, NY February 12, 2001 Insight Segmentation and Registration Toolkit.
TBA #23 GE Corporate R&D Niskayuna, NY
Getting Started with ITK in Python Language
Software Engineering 1 The Life Cicle of Software Lesson 5.
NA-MIC National Alliance for Medical Image Computing NAMIC-Kit Update Will Schroeder Jim Miller Bill Lorensen.
Framework for Automated Builds Natalia Ratnikova CHEP’03.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
COM vs. CORBA Computer Science at Azusa Pacific University September 19, 2015 Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department.
DPubS: An Open Source Electronic Publishing System Sarah E. Thomas Cornell University Library CNI December 2005.
NA-MIC National Alliance for Medical Image Computing NA-MIC Software Engineering Bill Lorensen GE Research NA-MIC Engineering Core PI.
ITK 10 Year Anniversery ITK – Version 4 Looking Back to Look Forward Bill Lorensen marchingcubes.org.
Pegasus Status Update April April 2001 Karl Schopmeyer.
© 2008 IBM Corporation ® IBM Cognos Business Viewpoint Miguel Garcia - Solutions Architect.
Community Software Engineering Practices and Principles A Case Study of the Open Source Insight Toolkit (ITK) Terry Yoo (National Library of Medicine),
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
Mantid Development introduction Nick Draper 11/04/2008.
Nick Draper 05/11/2008 Mantid Manipulation and Analysis Toolkit for ISIS data.
NA-MIC National Alliance for Medical Image Computing Core 1b – Engineering Software Process Stephen R. Aylward Kitware, Inc.
Copyright © CISST ERC, 2005 NSF Engineering Research Center for Computer Integrated Surgical Systems and Technology The CISST Software Package Peter Kazanzides.
William Schroeder, Ph.D. §, Andy Cedilnik §, Sebastien Barré, Ph.D. §, William Lorensen ‡, James Miller, Ph.D. ‡, Daniel Blezek, Ph.D. ‡ § Kitware Inc.,
DB2 Universal Database Confidential | July 2012 | India Software Lab Click to add text © 2012 IBM Corporation An End to End Windows Automation Framework.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
Community Codes Free and shared resource Ongoing distributed development by both research and operational communities – Maintained under version control.
Slicer 3 Ron Kikinis, Steve Pieper. CTK Workshop Heidelberg, June 29/30, 2009 Slicer Goals  Stable, Usable, Cross Platform, End-User Software for Medical.
NA-MIC National Alliance for Medical Image Computing Core 1b – Engineering Computational Platform Jim Miller GE Research.
Challenges of Collaborative Open-Source Development.
NA-MIC National Alliance for Medical Image Computing NAMIC Software Process Dan Blezek Jim Miller Bill Lorensen.
The Insight Toolkit Case Study Dr. Luis Ibanez, Kitware /
ImageJ2. Why ImageJ2? ● Support the next generation of image data ● Interoperate and collaborate with other projects ● Broaden the ImageJ community ●
CIS 375 Bruce R. Maxim UM-Dearborn
The Post Windows Operating System
NA-MIC All Hands Meeting - 1/9/2006
Introduction to Visual Basic. NET,. NET Framework and Visual Studio
Big Data is a Big Deal!.
NAMIC Software Development Environment
OGC TB13 EO Cloud Thread Cristiano Lopes 03/04/2017.
Software Tools and Environments
Pipeline Execution Environment
Joseph JaJa, Mike Smorul, and Sangchul Song
Core 2 Progress Day 1 Salt Lake City
Pegasus Status Update April 2001
Empirical Project Monitor and Results from 100 OSS Development Projects Masao Ohira Empirical Software Engineering Research Laboratory, Nara Institute.
SimpleITK Historical Overview: Standing on the Shoulders of Giants
SimpleITK Historical Overview: Standing on the Shoulders of Giants
From Navision To Microsoft
The Insight Software Consortium InsightSoftwareConsortium
Component-Based Software Engineering
ITK-Overview Insight Software Consortium.
Blockchain technology at Change Healthcare
Microsoft Connect /1/2018 2:36 AM
DPubS: An Open Source Electronic Publishing System
Enterprise Program Management Office
From Navision To Microsoft
HingX Project Overview
Open Source Software Development Processes Version 2.5, 8 June 2002
ITK Performance Visualization
Mark Quirk Head of Technology Developer & Platform Group
CS4540 Special Topics in Web Development Introduction to .NET
Palestinian Central Bureau of Statistics
Presentation transcript:

National Library of Medicine Segmentation and Registration Toolkit Bill Lorensen GE Corporate Research and Development

What is it? A common Application Programmers Interface (API). A framework for software development A toolkit for registration and segmentation An open-source resource for future research A validation model for segmentation and registration. A framework for validation development Assistance for algorithm designers A seed repository for validated segmentations

Toolkit Requirements Shall handle large datasets Visible Human data on a 512MB PC Shall run on multiple platforms Sun, SGI, Linux, Windows Shall provide multiple language api’s Shall support parallel processing Shall have no visualization system dependencies Shall support multi-dimensional images Shall support n-component data

$7.5 million, 3 year contract Who’s sponsoring it? $7.5 million, 3 year contract The National Science Foundation The National Institute for Dental and Craniofacial Research The National Institute of Neurological Disorders and Stroke

Who’s creating it?

Contractor Roles GE CRD Kitware Insightful (formerly MathSoft) Utah Architecture, algorithms, testing, validation Kitware Architecture, user community support Insightful (formerly MathSoft) Statistical segmentation, mutual information registration, deformable registration, level sets Beta test management Utah Level sets, low level image processing UNC Image processing, registration, high-dimensional segmentation UPenn Deformable surfaces, fuzzy connectedness

Project Management Robust code repository (cvs) Active mailing list (mailman) Automated documentation (doxygen) Stable, cross platform build environment (cmake) Weekly t-cons Stable nightly build and test (300 builds) Continuous build Stable nightly dashboard (dart) Quarterly face-to-face developer meetings Semi-annual project meetings

Insight - Schedule Alpha Release, April 4, 2001. Source code snapshot Some non-consortium participation. Limited Public Alpha Version, Aug 8, 2001. Public Beta Release, December 15, 2001. Software Developer’s Consortium Meeting Nov. 8-9, 2001, NLM, Bethesda.

Code + vnl numerics Stable core About 300 classes Reuse from the vxl project Stable core Image Mesh Process objects About 300 classes About 100 image filters (process objects) About 100K lines of code

Software Testing Requirements Test as much of the software as possible Test as often as is feasible Make testing as non-invasive as possible Use distributed testing Reusable/Retargetable framework

Testing Design Distributed testing Separate data from presentation Developers and users must be able to easily contribute testing results Pulled together in a central dashboard Separate data from presentation Cross-platform solution Strive to have the same code tested in all locations

Use Cases Check-in changes (new code or code modification) Business Manager Software developers Check-in new test Follow and analyze the system status Verifying impact of the changes on Test or Build Manage the evolution of Insight software quality Create and maintain the dashboard Project Manager Improve coverage Insight Test Master

XML / XSLT Extensible Stylesheet Language Transformations File.html File.xml XSLT Engine File.txt File.xsl

Issues Usage of high risk C++ features Some commercial compilers (e.g. Sun) will not compile it Software engineering skills vary across contractors Commercial groups are strong Some academics are weak Validation groups cannot come to agreement on approach