MIA - A free and open source software for gray scale medical image analysis

BackgroundGray scale images make the bulk of data in bio-medical image analysis, and hence, the main focus of many image processing tasks lies in the processing of these monochrome images. With ever improving acquisition devices, spatial and temporal image resolution increases, and data sets become very large.Various image processing frameworks exists that make the development of new algorithms easy by using high level programming languages or visual programming. These frameworks are also accessable to researchers that have no background or little in software development because they take care of otherwise complex tasks. Specifically, the management of working memory is taken care of automatically, usually at the price of requiring more it. As a result, processing large data sets with these tools becomes increasingly difficult on work station class computers.One alternative to using these high level processing tools is the development of new algorithms in a languages like C++, that gives the developer full control over how memory is handled, but the resulting workflow for the prototyping of new algorithms is rather time intensive, and also not appropriate for a researcher with little or no knowledge in software development.Another alternative is in using command line tools that run image processing tasks, use the hard disk to store intermediate results, and provide automation by using shell scripts. Although not as convenient as, e.g. visual programming, this approach is still accessable to researchers without a background in computer science. However, only few tools exist that provide this kind of processing interface, they are usually quite task specific, and don’t provide an clear approach when one wants to shape a new command line tool from a prototype shell script.ResultsThe proposed framework, MIA, provides a combination of command line tools, plug-ins, and libraries that make it possible to run image processing tasks interactively in a command shell and to prototype by using the according shell scripting language. Since the hard disk becomes the temporal storage memory management is usually a non-issue in the prototyping phase. By using string-based descriptions for filters, optimizers, and the likes, the transition from shell scripts to full fledged programs implemented in C++ is also made easy. In addition, its design based on atomic plug-ins and single tasks command line tools makes it easy to extend MIA, usually without the requirement to touch or recompile existing code.ConclusionIn this article, we describe the general design of MIA, a general purpouse framework for gray scale image processing. We demonstrated the applicability of the software with example applications from three different research scenarios, namely motion compensation in myocardial perfusion imaging, the processing of high resolution image data that arises in virtual anthropology, and retrospective analysis of treatment outcome in orthognathic surgery. With MIA prototyping algorithms by using shell scripts that combine small, single-task command line tools is a viable alternative to the use of high level languages, an approach that is especially useful when large data sets need to be processed.

[1]  Kevin W Eliceiri,et al.  NIH Image to ImageJ: 25 years of image analysis , 2012, Nature Methods.

[2]  Frithjof Kruggel,et al.  Computational cost of nonrigid registration algorithms based on fluid dynamics [MRI time series application] , 2002, IEEE Transactions on Medical Imaging.

[3]  P. Kellman,et al.  A quantitative pixel-wise measurement of myocardial blood flow by contrast-enhanced first-pass CMR perfusion imaging: microsphere validation in dogs and feasibility study in humans. , 2012, JACC. Cardiovascular imaging.

[4]  Michael J Ackerman,et al.  Engineering and algorithm design for an image processing Api: a technical report on ITK--the Insight Toolkit. , 2002, Studies in health technology and informatics.

[5]  M. Unser,et al.  Interpolation Revisited , 2000, IEEE Trans. Medical Imaging.

[6]  M. Jerosch-Herold Quantification of myocardial perfusion by cardiovascular magnetic resonance , 2010, Journal of cardiovascular magnetic resonance : official journal of the Society for Cardiovascular Magnetic Resonance.

[7]  Torsten Rohlfing,et al.  Volume-preserving nonrigid registration of MR breast images using free-form deformation with an incompressibility constraint , 2003, IEEE Transactions on Medical Imaging.

[8]  Chao Li,et al.  Nonrigid Registration of Myocardial Perfusion MRI Using Pseudo Ground Truth , 2009, MICCAI.

[9]  Kornelius Kupczik,et al.  Enamel thickness in Bornean and Sumatran orangutan dentitions. , 2012, American journal of physical anthropology.

[10]  Ken Kennedy,et al.  Garbage collection and other optimizations , 1988 .

[11]  Daniel P. Huttenlocher,et al.  Distance Transforms of Sampled Functions , 2012, Theory Comput..

[12]  A Hemprich,et al.  A novel modular retention system for midfacial distraction osteogenesis. , 2000, The British journal of oral & maxillofacial surgery.

[13]  Aly A. Farag,et al.  A modified fuzzy c-means algorithm for bias field estimation and segmentation of MRI data , 2002, IEEE Transactions on Medical Imaging.

[14]  William M. Wells,et al.  Medical Image Computing and Computer-Assisted Intervention — MICCAI’98 , 1998, Lecture Notes in Computer Science.

[15]  Michael I. Miller,et al.  Deformable templates using large deformation kinematics , 1996, IEEE Trans. Image Process..

[16]  Sébastien Ourselin,et al.  Fast free-form deformation using graphics processing units , 2010, Comput. Methods Programs Biomed..

[17]  Philipp Gunz,et al.  Enamel-dentine junction (EDJ) morphology distinguishes the lower molars of Australopithecus africanus and Paranthropus robustus. , 2008, Journal of human evolution.

[18]  M. Unser,et al.  Interpolation revisited [medical images application] , 2000, IEEE Transactions on Medical Imaging.

[19]  Domenico Campolo,et al.  New Developments in Biomedical Engineering , 2010 .

[20]  Milan Sonka,et al.  3D Slicer as an image computing platform for the Quantitative Imaging Network. , 2012, Magnetic resonance imaging.

[21]  Frithjof Kruggel,et al.  Computational Cost of Non-Rigid Registration Algorithms Based on Fluid Dynamics , 2002, IEEE Trans. Medical Imaging.

[22]  Boudewijn P. F. Lelieveldt,et al.  Fully Automated Motion Correction in First-Pass Myocardial Perfusion MR Image Sequences , 2008, IEEE Transactions on Medical Imaging.

[23]  Andrés Santos,et al.  Exploiting Quasiperiodicity in Motion Correction of Free-Breathing Myocardial Perfusion MRI , 2010, IEEE Transactions on Medical Imaging.

[24]  Kent L. Beck,et al.  Test-driven Development - by example , 2002, The Addison-Wesley signature series.

[25]  Mark W. Woolrich,et al.  Bayesian analysis of neuroimaging data in FSL , 2009, NeuroImage.

[26]  Michael Unser,et al.  Fast parametric elastic image registration , 2003, IEEE Trans. Image Process..

[27]  Andreas Tille Debian Med Integrated software environment for all medical purposes based on Debian GNU / Linux , 2008 .

[28]  Matthew M Skinner,et al.  Developmental defects of the dental crown in chimpanzees from the Taï National Park, Côte D'Ivoire: coronal waisting. , 2012, American journal of physical anthropology.

[29]  Max A. Viergever,et al.  elastix: A Toolbox for Intensity-Based Medical Image Registration , 2010, IEEE Transactions on Medical Imaging.

[30]  G Lohmann,et al.  LIPSIA--a new software system for the evaluation of functional magnetic resonance images of the human brain. , 2001, Computerized medical imaging and graphics : the official journal of the Computerized Medical Imaging Society.

[31]  李 鎔範,et al.  数値計算のためのGNU Scientific Libraryの紹介(教育講座) , 2012 .

[32]  Christophe Boesch,et al.  Dental trait expression at the enamel-dentine junction of lower molars in extant and fossil hominoids. , 2008, Journal of human evolution.

[33]  Nicolai M. Josuttis The C++ standard library , 1999 .

[34]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[35]  María J. Ledesma-Carbayo,et al.  Automatic motion compensation of free breathing acquired myocardial perfusion data by using independent component analysis , 2012, Medical Image Anal..

[36]  Björn Karlsson,et al.  Beyond the C++ Standard Library: An Introduction to Boost , 2005 .

[37]  Douglas Gregor,et al.  C++ Templates: The Complete Guide , 2002 .

[38]  Alex Zelinsky,et al.  Learning OpenCV---Computer Vision with the OpenCV Library (Bradski, G.R. et al.; 2008)[On the Shelf] , 2009, IEEE Robotics & Automation Magazine.

[39]  Christophe Boesch,et al.  Discrimination of extant Pan species and subspecies using the enamel-dentine junction morphology of lower molars. , 2009, American journal of physical anthropology.

[40]  Nicolas Chenouard,et al.  Icy: an open bioimage informatics platform for extended reproducible research , 2012, Nature Methods.

[41]  Frithjof Kruggel,et al.  Assessment, validation, and visualisation of bony changes in crano-facial surgery , 2004 .

[42]  Christine H. Lorenz,et al.  Unsupervised Inline Analysis of Cardiac Perfusion MRI , 2009, MICCAI.

[43]  Jian Xue,et al.  A Novel Software Platform for Medical Image Processing and Analyzing , 2008, IEEE Transactions on Information Technology in Biomedicine.

[44]  Peter Kellman,et al.  On Breathing Motion Compensation in Myocardial Perfusion Imaging , 2010 .

[45]  Walsh Norman,et al.  DocBook 5: The Definitive Guide , 2010 .

[46]  Philipp Gunz,et al.  The presence of accessory cusps in chimpanzee lower molars is consistent with a patterning cascade model of development , 2010, Journal of anatomy.