This repository includes diverse algorithmic method of model-based medical image segmentation.
The terminology of model-based
means one which is hypothesized and parameterized model,
so it is a bit free from the requirement of plenty of labeling data (the counter example is usually called data-driven method).
The below list describes the classification of model-based method and the representative models belonging to it.
- Region-Based
- Region Growing
- Grow-Cut
- Active Contour
- Snake Model
- Gradient Vector Flow
- Level-Set
- Level-set Method
- Chan-Vese Model
- Morphological Chan-Vese Model
- Region Scalable Fitting Method (RSF)
- Distance Regularized Level Set Evolution (DRLSE)
- Kullback-Leibler-Based Level-set Method (to be updated)
- Graph-Based
- Graph-Cut
- Simulated Annealing Method
- Random Walker with Prior Model
- Power Watershed Random Field (to be updated)
- Clustering
- Gaussian Mixture Model
- Taboggan/Superpixel Clustering
You can simply use functions in this repository by cloning repository,
{user}@{work-node}: {workplace}$ git clone https://github.com/swyang50066/segmentation.git
or using below command.
{user}@{work-node}: {workplace}$ sudo pip install git+https://github.com/swyang50066/segmentation.git
Usage of segmentation models is guided in './examples/xxxx.ipynb' with example runs, so please refer to the scripts to figure out how the models work!
All codes have developed in python and tested with python>=3.6.0
environment (but, it stably supports functions with python==3.8.0
). Numerical schemes (e.g., matrix operation, linear algebra, graph algorithm, ... etc.) used in the models is designed with numpy
and scipy
modules for efficient computing.
requirements={
"python>=3.6.0",
"opencv-python>3.4.0",
"numpy>=1.18.0",
"scipy>=1.1.0",
"scikit-learn>=0.20.0",
"scikit-build>=0.12.0",
"opencv-python>3.4.0",
"PyMaxFlow>=1.2.0",
}
- Build a GUI application for user-interactive medical image segmentation
- Upload
Power Watershed Random Field
model
Updates are being delayed due to busy life.
To be updated
[1] C. Xu and J.L. Prince, "Gradient Vector Flow: A New External Force for Snakes," Proc. IEEE Conf. on Comp. Vis. Patt. Recog. (CVPR), Los Alamitos: Comp. Soc. Press, pp. 66–71, June 1997
[2] Vezhnevets, Vladimir and Vadim Konouchine. ““GrowCut”-Interactive Multi-Label N-D Image Segmentation By Cellular Automata.” (2005).
[3] T. F. Chan and L. A. Vese, "Active contours without edges," in IEEE Transactions on Image Processing, vol. 10, no. 2, pp. 266-277, Feb. 2001, doi: 10.1109/83.902291.
[4] A Morphological Approach to Curvature-based Evolution of Curves and Surfaces, Pablo Márquez-Neila, Luis Baumela, Luis Álvarez. In IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI),2014, :DOI:`10.1109/TPAMI.2013.106.
[5] C. Li, C. Kao, J. C. Gore and Z. Ding, "Minimization of Region-Scalable Fitting Energy for Image Segmentation," in IEEE Transactions on Image Processing, vol. 17, no. 10, pp. 1940-1949, Oct. 2008, doi: 10.1109/TIP.2008.2002304.
[6] C. Li, C. Xu, C. Gui and M. D. Fox, "Distance Regularized Level Set Evolution and Its Application to Image Segmentation," in IEEE Transactions on Image Processing, vol. 19, no. 12, pp. 3243-3254, Dec. 2010, doi: 10.1109/TIP.2010.2069690.
[7] F. Riaz, S. Naeem, R. Nawaz, and M. Coimbra, “Active contours based segmentation and lesion periphery analysis for characterization of skin lesions in dermoscopy images,” IEEE journal of biomedical and health informatics, vol. 23, no. 2, pp. 489–500, 2018.
[8] Y. Boykov and V. Kolmogorov, "An experimental comparison of min-cut/max- flow algorithms for energy minimization in vision," in IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 26, no. 9, pp. 1124-1137, Sept. 2004, doi: 10.1109/TPAMI.2004.60.
[9] L. Grady, "Multilabel random walker image segmentation using prior models," 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05), 2005, pp. 763-770 vol. 1, doi: 10.1109/CVPR.2005.239.
[10] L. -C. Chen, G. Papandreou, I. Kokkinos, K. Murphy and A. L. Yuille, "DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs," in IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 40, no. 4, pp. 834-848, 1 April 2018, doi: 10.1109/TPAMI.2017.2699184.
[11] C. Couprie, L. Grady, L. Najman and H. Talbot, "Power Watershed: A Unifying Graph-Based Optimization Framework," in IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 33, no. 7, pp. 1384-1399, July 2011, doi: 10.1109/TPAMI.2010.200.
[12] Cheng, D., Tian, F., Liu, L. et al. Image segmentation based on multi-region multi-scale local binary fitting and Kullback–Leibler divergence. SIViP 12, 895–903 (2018).