I proposed to
- Add a package for image segmentation as part of JuliaImages with several algorithms -
- Thresholding - Otsu’s method and Adaptive thresholding
- K-means clustering
- Mean shift segmentation
- Watershed segmentation
- Felzenszwalb's efficient region merging algorithm
- Shi and Malik’s normalized graph-cut based segmentation
- Add Histogram of Oriented Gradient(HOG) feature to ImageFeatures.
I also planned to add tests, examples codes and documentation for all the algorithms as well as a tutorial for object detection using HOG features.
Mentor: Tim Holy
Organization: The Julia Language
All the work except normalized graph cut algorithm has been merged.
List of commits: ImageSegmentation.jl, Images.jl, ImageFeatures.jl, juliaimages.github.io
I have also added tests and example code for all the algorithms. I and Animesh Kashyap (annimesh2809) wrote the documentation collaboratively. Documentation can be found here: http://juliaimages.github.io/latest/imagesegmentation.html.
Object Detection Tutorial: http://juliaimages.github.io/ImageFeatures.jl/latest/tutorials/object_detection.html
For normalized graph cut, I had completed the code and submitted a pull request at ImageSegmentation.jl. Since this algorithm
is more generally applicable, we decided to add to this a general graphs package e.g, LightGraphs.jl. I have submitted a pull
request at LightGraphs.jl and am modifying the code for it to work with general graphs.
Pull Request at ImageSegmentation.jl
Pull Request at LightGraphs.jl