转载:http://blog.csdn.net/google19890102/article/details/51030884
然后引入opencv中的pyrMeanShiftFiltering函数:
pyrMeanShiftFiltering函数
对图像进行:均值偏移滤波
调用格式:
void cvPyrMeanShiftFiltering( const CvArr* src, CvArr* dst,
double sp, double sr, int max_level=1,
CvTermCriteria termcrit=cvTermCriteria(CV_TERMCRIT_ITER+CV_TERMCRIT_EPS,5,1));
- src
- 输入的8-比特,3-信道图象.
- dst
- 和源图象相同大小,相同格式的输出图象.
- sp
- The spatial window radius.
- 空间窗的半径
- sr
- The color window radius.
- 色彩窗的半径
- max_level
- Maximum level of the pyramid for the segmentation.
我们先借助Mean Shift算法的分割特性将灰度值相近的元素进行聚类,然后,在此基础上应用阈值分割算法,
达到将图像与背景分离的目的。 简单来说,基于Mean Shift的图像分割过程就是首先利用Mean Shift算法对图像中的像素进行聚类,
即把收敛到同一点的起始点归为一类,然后把这一类的标号赋给这些起始点,同时把包含像素点太少的类去掉。
然后,采用阈值化分割的方法对图像进行二值化处理 基于Mean Shift的图像分割算法将图像中灰度值相近的像素点聚类为一个灰度级,
因此,经过Mean Shift算法分割后的图像中的灰度级较该算法处理之前有所减少。