图像分割
图像分割的任务
基于聚类的图像分割
可以使用K-means算法,在图像的灰度或颜色空间实现像素点的聚类。不同的类别不一定具有空间紧致性。
也可以在颜色空间上融入位置信息,如(r,g,b,x,y)。这样聚类后的结果会更具有空间紧致性。
相比K-means算法,Mean-Shift更加灵活,对空间聚类效果更佳。
Mean-Shift算法通过在特征空间中搜索极值(modes)来实现特征空间中像素点的划分。
聚类:所有的点(像素)均会收敛到某个模式(mode)
Attraction basin:表示一个区域/分割,该区域中所有的点均会收敛到同一个模式
定位特征点/像素点(color,gradients,texture,etc)
针对输入特征初始化窗口
针对窗口计算Shift方向,并不断迭代进行位置更新
合并收敛到同一“peak”或者mode的特征
基于Graph Cut的图像分割
是图中节点i到节点j的边(i,j)的权重,并且是对割C所有的边的权重进行求和。
利用图割方法进行图像分割的思想是对图进行划分以使割代价最小。
如何构造图?
节点
- 一般所有像素均作为图的节点
- 有时也可以在像素点中采样
边
- 每个像素与其上、下、左、右等四个相邻像素相连
- 边带有权重
- 权重可以和灰度差,或者RGB差相关
相减平方项表示相邻两个点像素差,当其值为0时,权重值最大
相邻像素差越大,权重值越小,表示应该去除这个点
能量方程
源点到像素i的权重记为,像素i到汇点的权重记为。
Ed是指源点和汇点到各个像素之间的连线(前背景先验代价总和),Es指像素点在分割之间的连线(邻域代价总和)
定义L为每个像素的划分类别标签(取值为0-1,分别表示背景与前景)
问题描述:查找合适的标签L使得下述能量方程最小化
相邻的像素点,分类要尽可能一致。除非像素点间差异很大
在分割过程中,需要标记前景和背景信息
Graph Cut缺点:倾向于隔开孤立的、小分类的节点
构建新的节点权重:扩大邻域范围——距离越远权重越低,距离越近权重越高
可定义归一化割(normalized cut)的能量函数如下:
其中A和B表示两个割集,wij表示节点之间的权重。
图割类算法解决图像分割优缺点
优点
- 对目标边界分割准确率高
- 分割出的目标具有完整性
- 算法的超参数少
- 计算效率较高
缺点
- 构图复杂,具有不确定性
- 往往需要人机交互