Author : Bingyang Liu
For details tutorial of Meash Shift Segmentation, please check my blog.
Mean Shift Segmentation should have three steps:
- Filtering (Mode Searching)
- Merge Similar Regions (Mode clustering)
- Merge Small Regions
In the original paper, for step 2, when considered mode clustering, not only color similarity and also coordinate position should be within the bandwidth correspondingly. Here, we will only consider color factor to do segmentation.
Filtering process is the main part of the algorithm.
- Determined the Uniform kernel for filtering.
- Based on one point1, within the space bandwidth, calculate every point color distance to the center point.
- For all points, which color distance is within the color bandwidth, calculate the shift vector for the center point and add together2.
- Shift the center point. center = center + shift (include color).
- Repeat above steps and stop after 5 iterations or the center point doesn't move.
- Assigned color to the original point the color. This original point belong to this cluster.
1.Every point will be considered as 5-D point(R, G, B, x, y).
2.Shift value is the average value of all points within the bandwidth.
This code includes two functions.
- Filtering
- Segmentation
Segmentation function is the Mean Shift Segmentation first two process, which has two parts, one is Mean Shift filtering and other one is flood filled algorithm (Region Growing).
OriginalPic Filtering Segmentation