Analyzing microtomography data with Python and the scikit-image library

The exploration and processing of images is a vital aspect of the scientific workflows of many X-ray imaging modalities. Users require tools that combine interactivity, versatility, and performance. scikit-image is an open-source image processing toolkit for the Python language that supports a large variety of file formats and is compatible with 2D and 3D images. The toolkit exposes a simple programming interface, with thematic modules grouping functions according to their purpose, such as image restoration, segmentation, and measurements. scikit-image users benefit from a rich scientific Python ecosystem that contains many powerful libraries for tasks such as visualization or machine learning. scikit-image combines a gentle learning curve, versatile image processing capabilities, and the scalable performance required for the high-throughput analysis of X-ray imaging data.

[1]  Pascal Fua,et al.  SLIC Superpixels Compared to State-of-the-Art Superpixel Methods , 2012, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[2]  Dorthe Wildenschild,et al.  Image processing of multiphase images obtained via X‐ray microtomography: A review , 2014 .

[3]  Leo Grady,et al.  Random Walks for Image Segmentation , 2006, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[4]  John D. Hunter,et al.  Matplotlib: A 2D Graphics Environment , 2007, Computing in Science & Engineering.

[5]  Jérôme Darbon,et al.  Fast nonlocal filtering applied to electron cryomicroscopy , 2008, 2008 5th IEEE International Symposium on Biomedical Imaging: From Nano to Macro.

[6]  M. Nikolova An Algorithm for Total Variation Minimization and Applications , 2004 .

[7]  et al.,et al.  Jupyter Notebooks - a publishing format for reproducible computational workflows , 2016, ELPUB.

[8]  Nicolas P. Rougier,et al.  Scipy Lecture Notes , 2015 .

[9]  Marco Stampanoni,et al.  Fast reconstruction algorithm dealing with tomography artifacts , 2010, Optical Engineering + Applications.

[10]  Eric J. W. Visser,et al.  Abramoff MD, Magalhaes PJ, Ram SJ. 2004. Image Processing with ImageJ. Biophotonics , 2012 .

[11]  Helen Sharp,et al.  Crowdsourcing Scientific Software Documentation: A Case Study of the NumPy Documentation Project , 2015, Computing in Science & Engineering.

[12]  Emmanuel Brun,et al.  PyHST2: an hybrid distributed code for high speed tomographic reconstruction with iterative reconstruction and a priori knowledge capabilities , 2013, ArXiv.

[13]  B. Granger Ipython: a System for Interactive Scientific Computing Python: an Open and General- Purpose Environment , 2007 .

[14]  L. Salvo,et al.  Hydrodynamic coarsening in phase-separated silicate melts , 2015, 1502.03719.

[15]  Luis Pedro Coelho,et al.  Mahotas: Open source software for scriptable computer vision , 2012, ArXiv.

[16]  Kari Pulli,et al.  Real-time computer vision with OpenCV , 2012, Commun. ACM.

[17]  Erik Knudsen,et al.  FabIO: easy access to two-dimensional X-ray detector images in Python , 2013 .

[18]  Jonathan P. Wright,et al.  The fast azimuthal integration Python library: pyFAI , 2015, Journal of applied crystallography.

[19]  Stefan Behnel,et al.  Cython: The Best of Both Worlds , 2011, Computing in Science & Engineering.

[20]  V. Prakapenka,et al.  DIOPTAS: a program for reduction of two-dimensional X-ray diffraction data and data exploration , 2015 .

[21]  Martin O. Leach,et al.  Rapid development of image analysis research tools: Bridging the gap between researcher and clinician with pyOsiriX , 2016, Comput. Biol. Medicine.

[22]  Ieee Xplore,et al.  IEEE Transactions on Pattern Analysis and Machine Intelligence Information for Authors , 2022, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[23]  Johannes E. Schindelin,et al.  The ImageJ ecosystem: An open platform for biomedical image analysis , 2015, Molecular reproduction and development.

[24]  Francesco De Carlo,et al.  TomoPy: a framework for the analysis of synchrotron tomographic data , 2014, Optics & Photonics - Optical Engineering + Applications.

[25]  Cyrille Rossant Learning IPython for interactive computing and data visualization : learn IPython for interactive Python programming, high-performance numerical computing, and data visualization , 2013 .

[26]  Cyrille Rossant Learning IPython for interactive computing and data visualization : get started with Python for data analysis and numerical computing in the Jupyter notebook , 2015 .

[27]  Michael D. Abràmoff,et al.  Image processing with ImageJ , 2004 .

[28]  Fernando Pérez,et al.  Python: An Ecosystem for Scientific Computing , 2011, Computing in Science & Engineering.

[29]  Daniel P. Huttenlocher,et al.  Efficient Graph-Based Image Segmentation , 2004, International Journal of Computer Vision.

[30]  K. Janssens,et al.  XRDUA: crystalline phase distribution maps by two‐dimensional scanning and tomographic (micro) X‐ray powder diffraction , 2014 .

[31]  Charl P. Botha,et al.  A fluoroscopy-based planning and guidance software tool for minimally invasive hip refixation by cement injection , 2015, International Journal of Computer Assisted Radiology and Surgery.

[32]  K. Perez Nuclear Instruments and Methods in Physics Research Section A: Accelerators, Spectrometers, Detectors and Associated Equipment , 2014 .

[33]  Demetri Terzopoulos,et al.  Snakes: Active contour models , 2004, International Journal of Computer Vision.

[34]  Emmanuelle Gouillart,et al.  scikit-image: image processing in Python , 2014, PeerJ.

[35]  L. Mancini,et al.  Pore3D: A software library for quantitative analysis of porous media , 2010 .

[36]  Pascal Getreuer,et al.  Rudin-Osher-Fatemi Total Variation Denoising using Split Bregman , 2012, Image Process. Line.

[37]  E.E. Pissaloux,et al.  Image Processing , 1994, Proceedings. Second Euromicro Workshop on Parallel and Distributed Processing.

[38]  Gaël Varoquaux,et al.  Mayavi: 3D Visualization of Scientific Data , 2010, Computing in Science & Engineering.

[39]  Travis E. Oliphant,et al.  Python for Scientific Computing , 2007, Computing in Science & Engineering.

[40]  Brian E. Granger,et al.  IPython: A System for Interactive Scientific Computing , 2007, Computing in Science & Engineering.

[41]  Gaël Varoquaux,et al.  The NumPy Array: A Structure for Efficient Numerical Computation , 2011, Computing in Science & Engineering.

[42]  P. Pani,et al.  GEMS: Underwater spectrometer for long-term radioactivity measurements , 2011 .

[43]  Johannes E. Schindelin,et al.  Fiji: an open-source platform for biological-image analysis , 2012, Nature Methods.

[44]  Francesco De Carlo,et al.  TomoPy: a framework for the analysis of synchrotron tomographic data , 2014, Journal of synchrotron radiation.

[45]  Jean-Michel Morel,et al.  A non-local algorithm for image denoising , 2005, 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05).

[46]  Gaël Varoquaux,et al.  Scikit-learn: Machine Learning in Python , 2011, J. Mach. Learn. Res..

[47]  FuaPascal,et al.  SLIC Superpixels Compared to State-of-the-Art Superpixel Methods , 2012 .

[48]  Gyula Záray,et al.  Spectrochimica Acta - Part B Atomic Spectroscopy: Preface , 2005 .

[49]  Anne E Carpenter,et al.  CellProfiler: free, versatile software for automated biological image analysis. , 2007, BioTechniques.

[50]  A. Rack,et al.  Exploiting coherence for real-time studies by single-bunch imaging , 2014, Journal of synchrotron radiation.

[51]  P. Withers,et al.  Quantitative X-ray tomography , 2014 .

[52]  G. Varoquaux,et al.  In Situ Synchrotron Microtomography Reveals Multiple Reaction Pathways During Soda‐Lime Glass Synthesis , 2012, 1201.2389.

[53]  Wei Shen,et al.  Multi-scale Convolutional Neural Networks for Lung Nodule Classification , 2015, IPMI.

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

[55]  V. A. Solé,et al.  A multiplatform code for the analysis of energy-dispersive X-ray fluorescence spectra , 2007 .

[56]  Randy J. Read,et al.  Acta Crystallographica Section D Biological , 2003 .

[57]  Anne E Carpenter,et al.  CellProfiler: image analysis software for identifying and quantifying cell phenotypes , 2006, Genome Biology.