Skip to content

# Acknowledgements

Back to MIB | Getting started

Powered by MATLAB, The MathWorks, Inc.

## Special Thanks

- Radhakrishna Achanta, Ecole Polytechnique Federale de Lausanne (EPFL), for the mex code for SLIC supervoxels and superpixels
- Tom Boissonnet (EMBL) and Elena Bertseva (University of Copenhagen), for extensive testing
- John Heumann, The Boulder Laboratory For 3-D Electron Microscopy of Cells, for help with Mattomo
- Konstantin Kogan, University of Helsinki, for assistance with Mac OS
- David Legland, INRA, France, for modification of the Region Adjacency Graph (imRAG) function for detection of indices between watershed regions and help with few other functions
- Vladimir Moltchanov, for discussions on software architectures
- Henrik P Sahlin Pettersen, Norwegian University of Science and Technology/St. Olavs hospital, Trondheim, for driving DeepMIB for pathology

Microscopy Image Browser team would like to acknowledge the User Community of MATLAB-Central and the authors whose code was used during MIB development (see below).

## Code Sources

Microscopy Image Browser adapts partially or completely codes from the following sources:

- Inspired by IMAGEVIEWER by Jiro Doke, MathWorks, 2010
- API documentation of classes was done using MTOC++ - Doxygen filter for MATLAB and tools written by Martin Drohmann (Universität Münster) and Daniel Wirtz (Universität Stuttgart), 2011-2013
- Accurate Fast Marching function by Dirk-Jan Kroon, University of Twente, 2011, is utilized in the Membrane Click Tracker tool
- ANISODIFF function written by Peter Kovesi, 2000-2002, is used for anisotropic diffusion filtering of images
- BIO-FORMATS by Melissa Linkert, Curtis Rueden et al., 2002-2013, is utilized for reading of proprietary microscopy image formats using the `Bio` checkbox
- BMxD external filters by Kostadin Dabov et al., Tampere University of Technology, Finland, 2007-2014, can be used with MIB, when separately installed on the system to filter the images
- BWDISTSC for 3D Euclidean distance transform for variable data aspect ratio written by Yuriy Mishchenko (Toros University, 2007-2013) is used for separation of anisotropic objects in 3D and calculation of distance maps
- Custom GINPUT written by Jiro Doke (MathWorks, 2016) to get coordinates of a clicked point
- Cell migration in scratch wound assays by Constantino Carlos Reyes-Aldasoro, City, University of London, was used for the wound healing assay tool
- DnD_uifigure: drag & drop functionality for AppDesigner components written by Xiangrui Li (The Ohio State University), 2020-2023
- Drag & Drop functionality for JAVA GUI components written by Maarten van der Seijs, Delft University of Technology, the Netherlands, 2015
- DRAWREGIONBOUNDARIES a function to draw boundaries of labeled regions in an image when working with brush, written by Peter Kovesi (Centre for Exploration Targeting, School of Earth and Environment, The University of Western Australia, 2013)
- DRIFTY_SHIFTY_DELUXE written by Joshua D. Sugar (Sandia National Laboratories, Livermore, CA, 2014); part of code from this function was adopted in `mibCalcShifts.m`
- Elastic Distortion filter is based on Elastic Distortion Transformation on an image by David Franco (Catholic University of Parana)
- EXPORT_FIG function to add measurements to snapshots is written by Oliver Woodford and Yair Altman
- Fast 3D/2D Region Growing (MEX) by Christian Wuerslin (Stanford University, 2013-2015) is used for the region growing tool
- Fiji Connect is using MIJ, a Java package for bi-directional communication and data exchange from MATLAB to ImageJ/Fiji, developed by Daniel Sage, Dimiter Prodanov, Jean-Yves Tinevez, and Johannes Schindelin, 2012
- FINDJOBJ - find java handles of MATLAB graphic objects by Yair Altman, 2007-2013
- FRANGI filter by Marc Schrijver and Dirk-Jan Kroon (University of Twente, 2001-2009)
- FSTACK extended depth-of-field image from focus sequence using noise-robust selective all-in-focus algorithm by Said Pertuz (Universitat Rovira i Virgili, Tarragona, Spain, 2013) is used in the intensity projection tool
- HistThresh toolbox by Antti Niemistö (Tampere University of Technology, Finland) is used for most of the global histogram-based thresholding methods
- Image Edge Enhancing Coherence Filter by Dirk-Jan Kroon & Pascal Getreuer (University of Twente, 2009)
- Image Measurement Utility by Jan Neggers (Eindhoven University of Technology, 2009-2014) is used as a basis for the Measure Tool and re-written roiRegion class
- IMCLIPBOARD function by Jiro Doke, MathWorks, 2010, is used in the snapshot tool and import from system clipboard
- IceImarisConnector written by Aaron C. Ponti (ETH Zurich) is used for connection to Imaris
- IMGAUSSIAN by Dirk-Jan Kroon (University of Twente), implementation 2009, is used in the 3D Gaussian filter
- MATGEOM, a MATLAB geometry toolbox for 2D/3D geometric computing, is written by David Legland (INRA, France, 2013) is used in some functions
- MATTOMO is a part of PEET (Particle Estimation for Electron Tomography) package, developed at Boulder Laboratory for 3-D Electron Microscopy of Cells, is used for export of models to IMOD format
- MAXFLOW/MINCUT algorithm, v2.22 written by Yuri Boykov (University of Western Ontario) and Vladimir Kolmogorov (Microsoft Research, Cambridge) is used in the Graphcut tool
- MAXFLOW/MINCUT MATLAB wrapper is written by Michael Rubinstein (Google) is used in the Graphcut tool
- MkDocs is acknowledged for documentation generation for MIB 2.91
- NUM2CLIP function by Grigor Browning, 2005, is used to copy column items to the system clipboard
- NRRD, Nearly Raw Raster Data format is implemented using Projects:MATLABSlicerExampleModule written by John Melonakos for NRRD reading using TEEM; and a custom function for reading metadata based on NRRD Format File Reader written by Jeff Mather, 2012
- OMERO MATLAB bindings (included into the compiled version, but should be downloaded separately for the MATLAB version) are used for connection to OMERO servers
- P_JSON, highly portable JSON parser function, is written by Nedialko, 2009, is used for work with HDF5 files
- PATCHNORMALS, by Dirk-Jan Kroon (University of Twente), implementation 2009, is used for calculation of normals during export of surfaces to Imaris
- POOLWAITBAR class is based on the code submitted by Edric Ellis
- Random Forest Classifier is based on Verena Kaynig implementation with utilization of randomforest-matlab by Abhishek Jaiantilal
- Region Adjacency Graph (RAG) function is written by David Legland (INRA, France, 2013) is used in the Graphcut tool
- REGIONPROPS3 function is written by Chaoyuan Yeh (University of Southern California, 2014) is used for quantifying some object properties in 3D
- RENDERTEXT function by Davide Di Gloria (Università di Genova, 2010) is utilized for addition of text to image
- Rendering with Fiji is based on Hardware accelerated 3D viewer for MATLAB written by Jean-Yves Tinevez (Institut Pasteur, 2011)
- Rendering with MATLAB is using VIEW3D function written by Torsten Vogel, 1999
- SAM segmentation is using networks and code from Segment-anything written by Kirillov A, Mintun E, Ravi N, Mao H, Rolland C, Gustafson L, Xiao T, Whitehead S, Berg AC, Lo W-Y, Dollar P, Girshick R, Meta AI, 2023
- SAM2 segmentation is using networks and code from Segment-anything-2 written by Ravi N, Gabeur V, Hu Y-T, Hu R, Ryali C, Ma T, Khedr H, Rädle R, Rolland C, Gustafson L, Mintun E, Pan J, Alwala KV, Carion N, Wu C-Y, Girshick R, Dollár P, Feichtenhofer C, Meta AI, 2024
- SAM segmentation is using networks and code from Segment-anything for Microscopy written by Archit A, Nair S, Khalid N, Hilt P, Rajashekar V, Freitag M, Gupta S, Dengel A, Ahmed S, Pape C, 2023
- SLIC (Simple Linear Iterative Clustering) written by Radhakrishna Achanta, Appu Shaji, Kevin Smith, Aurelien Lucchi, Pascal Fua, and Sabine Süsstrunk, Ecole Polytechnique Federale de Lausanne (EPFL), Switzerland, 2015, is utilized for the superpixels mode of the Brush tool and for the Graphcut segmentation
- STLWRITE by Sven Holcombe (University of Michigan, 2008-2015) for saving models using the STL format
- UIGETFILE_N_DIR by Tiago / Peugas is used for selection of multiple directories
- VIEWER3D by Dirk-Jan Kroon (Focal Machine Vision en Optical Systems) is used as a basis for the volume rendering of datasets
- Violin plot by Holger Hoffmann, 2015, is used for visualization of results in some analysis functions
- XLWRITE: Generate XLS(X) files without Excel on Mac/Linux/Win by Alec de Zegher, NV Bekaert SA, 2013
- XLSWRITE mod by Barry Dillon (AON Insurance Brokers, 2010)
- XML2STRUCT and STRUCT2XML by Wouter Falkena (Delft University of Technology, 2010)

## Color Palettes

Color palettes are generated with help of:

- Yasuyo G. Ichihara, Masataka Okabe, Koichi Iga, Yosuke Tanaka, Kohei Musha, Kei Ito. Color Universal Design - The selection of four easily distinguishable colors for all color vision types. Proc Spie 6807 (2008)
- Cynthia Brewer, Mark Harrower, Ben Sheesley, Andy Woodruff, David Heyman. ColorBrewer 2.0
- Sasha Trubetskoy. List of 20 Simple, Distinct Colors

## Icons and Images

- Some icons used in MIB were provided by Icons8.com, license information
- Some images were generated using stable-diffusion image generative AI

## Functions Used in Previous Releases of MIB

- DIPLIB is a platform-independent scientific image processing library written in C, developed by Quantitative Imaging Group at the Faculty of Applied Sciences, Delft University of Technology. When installed, Microscopy Image Browser can use several additional methods for anisotropic diffusion filtering available from DipLib (used in MIB 0.x and 1.x)
- EXTREMA functions by Carlos Adrian Vargas Aguilera, Universidad de Guadalajara, 2006-2007 (used in MIB 0.x and 1.x)
- Fast/Robust Template Matching (2009-2011) by Dirk-Jan Kroon, University of Twente, was used for alignment of datasets in MIB version 1.22 and earlier
- Local normalization by Guanglei Xiong (xgl99@mails.tsinghua.edu.cn) at Tsinghua University, Beijing, China, 2005 (used in MIB 0.x and 1.x)
- Prettify MATLAB html by Harry Dymond, University of Bristol, is used to prettify MIB documentation until MIB 2.91

Back to MIB | Getting started