自底向上逻辑——利用底层相似性
无监督
如何分成群组?
1.分割→聚类 segmentation as clustering
相似像素是一类——k均值(learning)
算法1.k均值(learning)
优: 收敛到局部最优解
缺: 指定k, 内存密集,初始敏感(密度法等等),限制聚类为球形。
算法2.Mean shift(思想很重要)
Kmeans——聚类
找到密度函数中心。(聚类中心)在图上用一个窗口,找到局部重心→中心移动。(最后分类)
优: 1. 只有一个参数(窗口大小)
2. 不要求聚类球形
3.不用预知类的个数
3. 噪声影响小
缺: 1. 依赖窗口size
2. 计算复杂(解决:点归类)
3. 高维灾难
3.image as graph
在图上点之间连线得到边→对比相似度得到边的权重→连线寻找穿过的边的权重最小的,删掉边,进行分割
一般方法:最小割
缺: 会造成有很多个独立的点,因为这样的话权重最小。
改进:归一化图割(normalized cut)
w(A,B)代表两个集合间边的权重之和。
让公式最小,让AB之间联系小,同时A和全局联系大。不会让一个点轻易独立。
特征向量就是分割方法。
0.表示: rgbxy或者纹理响应等核