T EACHING ITK: T HOUGHTS FOR V ERSION 4 John Galeotti February 3, 2011.

Slides:



Advertisements
Similar presentations
Inside an XSLT Processor Michael Kay, ICL 19 May 2000.
Advertisements

Support for Time in ITK Patrick Reynolds Patrick Cheng John Galeotti Arnaud Gelas.
SWIG Many languages Large user base Highly customizable.
Health Informatics in learning
Primary MCQ Course Evaluation September 2010 Mean score, maximum being 5.
Microsoft ® System Center Configuration Manager 2007 R3 and Forefront ® Endpoint Protection Infrastructure Planning and Design Published: October 2008.
Internet Vision - Lecture 3 Tamara Berg Sept 10. New Lecture Time Mondays 10:00am-12:30pm in 2311 Monday (9/15) we will have a general Computer Vision.
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
This work by John Galeotti and Damion Shelton, © , was made possible in part by NIH NLM contract# HHSN P, and is licensed under a Creative.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
A-1 © 2000 UW CSE University of Washington Computer Programming I Lecture 1: Overview and Welcome Dr. Martin Dickey University of Washington.
1 CS 502: Computing Methods for Digital Libraries Lecture 27 Preservation.
The content of these slides by John Galeotti, © 2008 to 2015 Carnegie Mellon University (CMU), was made possible in part by NIH NLM contract# HHSN P,
Calendar Browser is a groupware used for booking all kinds of resources within an organization. The software is totally integrated in Outlook. Calendar.
Designing LAMS templates for medical education Bronwen Dalziel School of Medicine University of Western Sydney.
Building Public Facing Websites with SharePoint 2010 Prepared for ILTA’s SharePoint for Legal Symposium June 16 th, 2010 George Durzi Principal Consultant.
“NUR 870 – Major Course Project” Winter 2013 Constance J. Creech, RN, Ed.D, ANP-BC – Department of Nursing & Andrea Becker, MA, Ed.S – Office of Extended.
Games Development 2 Entity / Architecture Review CO3301 Week
Core 1b – Engineering Dynamic Coding a.k.a. Python in Slicer
Introduction to course. Refresher on client/server; JavaScript.
Principal’s teaching award Scheme- Students as Partners Sally Anne Argyle, Caroline Hahn, Jessie Paterson, Eoghan Clarkson and Susan Rhind Kristin Timiney,
Introduction to Silverlight. Slide 2 What is Silverlight? It’s part of a Microsoft Web platform called Rich Internet Applications (RIA) There is a service.
Assistive Technology to Promote Learner Autonomy.
The content of these slides by John Galeotti, © Carnegie Mellon University (CMU), was made possible in part by NIH NLM contract# HHSN P,
Vinayak Naik, Pushpendra Singh, Amarjeet Singh IIIT-Delhi February 12, 2011 Role of ICT Enabled Teaching Practices for Improved Learning.
PBL in Team Applied to Software Engineering Education Liubo Ouyang Software School, Hunan University CEIS-SIOE, January 2006, Harbin.
Meeting the Needs of Learners: You told us... 98% of students felt they were making good progress 94% of students felt their course were meeting.
Undergraduate Survey for Math Dialogue March 2010 Transition from High School to University Technology in High School Math Classes Resources for Undergraduates.
The content of these slides by John Galeotti, © Carnegie Mellon University (CMU), was made possible in part by NIH NLM contract# HHSN P,
Migrating to Linux Desktops with Wine Dan Kegel June 2006.
RAD204 Pathology 9.September.2013 College of Medical Sciences/ Radiological Sciences Department Lecture 1 Dr Shai’
Application portlets within the PROGRESS HPC Portal Michał Kosiedowski
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
The Transition Experience Bill Daughton EMSE Department.
NA-MIC National Alliance for Medical Image Computing Core 1b – Engineering Software Process Stephen R. Aylward Kitware, Inc.
The content of these slides by John Galeotti, © Carnegie Mellon University (CMU), was made possible in part by NIH NLM contract# HHSN P,
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
Introduction Copyright © Software Carpentry This work is licensed under the Creative Commons Attribution License See
CS140 Project 1: Threads Slides by Kiyoshi Shikuma.
Dynamic Gaze-Contingent Rendering Complexity Scaling By Luke Paireepinart.
Compiler Construction (CS-636)
Thank you for the kind feedback. I truly do hope you have enjoyed the course and have had a good learning experience. Most people said they found the course.
Design of an Integrated Robot Simulator for Learning Applications Brendon Wilson April 15th, 1999.
Assignment 2A Teaching and learning/researching technologies Group Presentation By Anne Gunson, Leana Anderson, Marisa Edwards and Kahlia Chapman-Hill.
SimITK/SimVTK: Model Driven Engineering for Medical Imaging 1.
JAVA EE 6 Best Practices for Migrating Spring to WTF ?!?
Daniel Blezek, Jesus Caban, Brad Lowkamp, Dan Muller, Fabrice de Chaumont, Julien Michel, Harvey Cline, Gabe Hart, Ghassam Hamarech, John Galeotti, Raghu.
Page 1 PACS GRITS 17 June 2011 Herschel Data Analysis Guerilla Style: Keeping flexibility in a system with long development cycles Bernhard Schulz NASA.
ECE297 TA GUIDE Project supervision. Agenda M0 feedback Project overview M1 overview Project supervision.
Bill Hoffman, Jesus Caban, Brad Lowkamp, Dan Muller, Fabrice de Chaumont, Julien Michel, Harvey Cline, Gabe Hart, Ghassam Hamarech, John Galeotti, Raghu.
FUNCTIONAL PROGRAMING AT WORK - HASKELL AND DOMAIN SPECIFIC LANGUAGES Dr. John Peterson Western State Colorado University.
Design, prototyping and construction(Chapter 11).
Experimental vs. Theoretical Probability. Theoretical vs. Experimental Probability Objectives: (1)(2) Essential Questions: (1)(2)
Hello World D R. R OBERT Z UBEK, S OMA S IM LLC EECS-395/495: G AME D EVELOPMENT S TUDIO W INTER Q UARTER 2016 N ORTHWESTERN U NIVERSITY.
Get Your Head in the Cloud
JQuery Fundamentals Introduction Tutorial Videos
Image Transformation 4/30/2009
Programming by a Sample: Rapidly Creating Web Applications with d.mix
Methods In Medical Image Analysis
Term Project Evaluations Guiding Principles Summary
Final Project Details Note: To print these slides in grayscale (e.g., on a laser printer), first change the Theme Background to “Style 1” (i.e., dark.
Managing the Digital Enterprise: A 5-Year Experiment in Open Courseware Meeta Yadav and Michael Rappa North Carolina State.
Gustaaf van Moorsel September 9, 2003
Simulation And Modeling
Welcome to Physics 5305!!.
Hans Zaunere, Managing Member
Lecture 1a- Introduction
Health Informatics in learning
Games Development 2 Entity / Architecture Review
Methods In Medical Image Analysis
Presentation transcript:

T EACHING ITK: T HOUGHTS FOR V ERSION 4 John Galeotti February 3, 2011

3 February 2011John Galeotti Context I Teach a multi-university graduate course Project based—lots of programming with ITK Methods in Medical Image Analysis – Google “medical image analysis” – Founded by Dr. George Stetten (one of the original ITK A2D2 awards) – New A2D2 award to revise course for ITKv4 – Taught every spring

A Diverse Student Body E.g., clinicians, biologists, and material- scientists They do not find Insight into Images to be very accessible They (usually) haven’t programmed in C++ with templates They don’t fully appreciate the utility of ITK’s flexibility 3 February 2011John Galeotti

3 February 2011John Galeotti Course Objectives Students need a theoretical basis that is: – Widely accessible – Adequately informative Students need guidance experimenting: – With the pipeline architecture – With parameter optimization Students need help programming: – Cross-platform – C++ with templates – N-dimensional coding

My evaluation of ITKv4αMy evaluation of ITKv4α 1 My current workMy current work 2 My future plansMy future plans 3 Today’s Overview 3 February 2011John Galeotti

M Y E VALUATION OF ITK V 4α 3 February 2011John Galeotti

3 February 2011John Galeotti My ITK Wishlist from June 2010 What is hard now: – Writing native, templated, C++ code – Writing new N-dimensional code What must be preserved or improved: – Speed is important for extensive experimentation – Cross-platform is important ITK v4 GPL support: OpenCL, please What would really help: – Streaming large data through, e.g., level sets – Simple, native visualization SimpleITK Thank You SimpleITK ?

SimpleITK Looks Great! The easy C++ interface is exactly what I want! The level of complexity seems just right Things I like, but want more: – Streamlined interface from SimpleITK to full ITK – File Reading/Writing Magic E.g., different pixel types should rescale by default 3 February 2011John Galeotti

OpenCL ITK Progressing Nicely Important for rapid parameter testing Core architecture looks good Eventually, needs SimpleITK encapsulation Large-data biologists really need this 3 February 2011John Galeotti

M Y C URRENT W ORK 3 February 2011John Galeotti

My course is only taught in the spring 3 February 2011John Galeotti

ITKv4’s API changes are still in flux 3 February 2011John Galeotti

Most of my work remains to be done 3 February 2011John Galeotti

Things I Have Done: Shadowing Expanding my course’s shadow program – Students already required to shadow radiologists – Best way to teach clinical relevance – Often leads to student projects ITKv4 seeks to directly support microscopy – Students should also shadow pathologists – New this year: neuropathology – This is hard: pathology scheduling difficulties – Solution: Schedule only when a fellow is present 3 February 2011John Galeotti

3 February 2011John Galeotti Decisions, Decisions Decide usage style to teach: – Target users during 1 st series of lectures – Target developers during last 3 rd of class – Visualization: Rely on SimpleITK + SNAP Decide which language(s) to teach? Primary language: – SimpleITK in C++ Taught, but usage not required: – C++ with templates (only during last 3 rd of class) Allowed for homework/projects: – Python (simpleITK only) – Java (simpleITK only) Only 1 class for both users & developers Only 1 class for both users & developers

3 February 2011John Galeotti Student Projects & OpenCV Preparing OpenCV-based projects OpenCV is changing too – Outdated documentation Studying current OpenCV calibration – Important, undocumented practicalities Preparing lecture on video cameras with ITK – Part 1: Interface API – Part 2: Best (essential!) practices

Public Theory Lectures Currently, only ITK lecture slides are public Side project: Replace © theory material Hopeful to have all lectures public by Summer February 2011John Galeotti

M Y F UTURE P LANS 3 February 2011John Galeotti

3 February 2011John Galeotti Subtasks New ITK v4 tutorial lectures – Restructured pipeline – GPU-based methods – How to process video & OpenCV – Etc. New coordinating assignments Publicly available on course website

Git? Currently, I expect to continue using SVN for homework submissions Git is not relevant to biologists Open question: Is Git worth lecture time at the end of the semester? 3 February 2011John Galeotti

Video Podcasts of Lectures Infrastructure is in place Having only a single class will simplify If done, would probably be hosted on a CMU webserver & downloadable for redistribution To video theory lectures, the theory slides must be public first 3 February 2011John Galeotti

Summary Streamlined Learning SimpleITK OpenCL New Lectures 3 February 2011John Galeotti

Q UESTIONS ? 3 February 2011John Galeotti