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