SimITK: Visual Programming of the ITK Image Processing Library

Download Report

Transcript SimITK: Visual Programming of the ITK Image Processing Library

SimITK/SimVTK: Model Driven Engineering for Medical Imaging 1

Simulink, Model Driven Engineering (MDE) in Matlab

Interactive graphical environment Select, add blocks to blank “ canvas ” , inter-connect blocks to form a process model Written programming code abstracted away • Replaced by equivalent visual model representation 2

SimITK/SimVTK, MDE for ITK & VTK MDE for ITK/VTK: • • Drag and drop approach to process development Accessible visual notation for ITK and VTK • Instructional value MATLAB/Simulink offer many benefits: • • • Use MATLAB ’ s Simulink visual environment Avoid reinventing the wheel Allow mix of MATLAB code and ITK/VTK 3

SimVTK Example

4

SimITK Example

5

System Overview

6

Templating

Virtual Block Template File S-Function Template File Simplified XML Automatic Template Substitution by Perl Scripts Matlab .mex File Matlab Callback FIle Simulink LIbrary 7

Virtual Block

Input Spacing & Origin Data VirtualPort Conversion itkImage Parameters Parameter Variables Conversion Update ITK Image Filter itkImage Conversion VirtualPort Output Spacing & Origin Data Simulink ITK Simulink 8

Goals • • Ultimate Goal – ITK and Simple ITK in Matlab and Simulink Synergy between the SimpleITK group and SimITK group • Both communities aim to simplify usage of ITK • Lead Engineering Time to complete ITK -> XML wrapper • Possibly modify to do ITK -> JSON wrapping instead • JSON is compact, better at expressing an API description • Ways to Fund Engineering Time for: • • Wrapping of ITK in Simulink and Matlab Extending this work to SimpleITK in Matlab/Simulink 9