simply run
compileFelzenszwalbSegmentation.m
To make Matlab familiar with all relevant paths (there are only 2 currently) go to the root folder and execute
initWorkspaceSegmentation.m
- Run
demoFelzenszwalbSegmentation.m
which requires Matlabs GUI to show images and segmentation results
- Inspect the demo file to learn how to setup variables, and how to call the underlying mex functions
Implementation of the segmentation algorithm described in:
Efficient Graph-Based Image Segmentation Pedro F. Felzenszwalb and Daniel P. Huttenlocher International Journal of Computer Vision, 59(2) September 2004.
The program [segment.cpp, note by A. Freytag] takes a color image (PPM format) and produces a segmentation with a random color assigned to each region.
-
Type
make
to compilesegment.cpp
-
Run
segment sigma k min input output
.
The parameters are: (see the paper for details)
- sigma: Used to smooth the input image before segmenting it.
- k: Value for the threshold function.
- min: Minimum component size enforced by post-processing.
- input: Input image.
- output: Output image.
Typical parameters are sigma = 0.5, k = 500, min = 20. Larger values for k result in larger components in the result.
NOTE ( by Alexander Freytag )
- only images with less then std::numeric_limits::max() pixels are supported properly!