传统方法
1. 基于阈值的分割
基于图像的灰度特征来计算一个或多个灰度阈值,并将图像中每个像素的灰度值与阈值作比较,最后将像素根据比较结果分到合适的类别中。
计算简单,效率较高;只考虑像素点灰度值本身的特征,一般不考虑空间特征,因此对噪声比较敏感,鲁棒性不高。
阈值分割方法的最关键就在于阈值的选择。若将智能遗传算法应用在阀值筛选上,选取能最优分割图像的阀值,这可能是基于阀值分割的图像分割法的发展趋势。
2. 基于区域的图像分割方法
一种是区域生长,从单个像素出发,逐步合并以形成所需要的分割区域;另一种是区域分割,从全局出发,逐步切割至所需的分割区域。
对复杂图像的分割效果较好运算量大,可能过分割
分水岭算法:
对微弱边缘具有良好的响应图像中的噪声、物体表面细微的灰度变化都有可能产生过度分割的现象
3. 基于边缘检测的图像分割方法
试图通过检测包含不同区域的边缘来解决分割问题。通常不同区域的边界上像素的灰度值变化比较剧烈,如果将图片从空间域通过傅里叶变换到频率域,边缘就对应着高频部分。
最简单的边缘检测方法是并行微分算子法,它利用相邻区域的像素值不连续的性质,采用一阶或者二阶导数来检测边缘点。近年来还提出了基于曲面拟合的方法、基于边界曲线拟合的方法、基于反应-扩散方程的方法、串行边界查找、基于变形模型的方法。
边缘定位准确;速度快;不能保证边缘的连续性和封闭性;在高细节区域存在大量的碎边缘,难以形成一个大区域,但是又不宜将高细节区域分成小碎片。
结合特定工具
1. 基于遗传算法
是一种借鉴生物界自然选择和自然遗传机制的随机化搜索算法。
遗传算法擅长于全局搜索,但局部搜索能力不足,所以常把遗传算法和其他算法结合起来应用。
2. 基于特征编码(ResNet)
深度学习网络在堆叠到一定深度的时候会出现梯度消失的现象,导致误差升高效果变差,后向传播时无法将梯度反馈到前面的网络层,使得前方的网络层的参数难以更新,训练效果变差。
ResNet的核心思想就是在网络中引入恒等映射,允许原始输入信息直接传到后面的层中,在学习过程中可以只学习上一个网络输出的残差(F(x)),因此ResNet又叫做残差网络。
ResNet的优缺点:
1)引入了全新的网络结构(残差学习模块),形成了新的网络结构,可以使网络尽可能地加深;
2)使得前馈/反馈传播算法能够顺利进行,结构更加简单;
3)恒等映射的增加基本上不会降低网络的性能;
4)建设性地解决了网络训练的越深,误差升高,梯度消失越明显的问题;
5)由于ResNet搭建的层数众多,所以需要的训练时间也比平常网络要长。
3. 基于区域选择(RCNN)
先使用selective search算法提取2000个候选框,然后通过卷积网络对候选框进行串行的特征提取,再根据提取的特征使用SVM对候选框进行分类预测,最后使用回归方法对区域框进行修正。
是首个开创性地将深度神经网络应用到目标检测的算法;使用Bounding Box Regression对目标检测的框进行调整;由于进行特征提取时是串行,处理耗时过长;Selective search算法在提取每一个region时需要2s的时间,浪费大量时间
Fast RCNN
Fast R-CNN在传统的R-CNN模型上有所改进的地方是它是直接使用一个神经网络对整个图像进行特征提取,就省去了串行提取特征的时间;接着使用一个RoI Pooling Layer在全图的特征图上摘取每一个RoI对应的特征,再通过FC进行分类和包围框的修正。
节省了串行提取特征的时间;除了selective search以外的其它所有模块都可以合在一起训练;最耗时间的selective search算法依然存在。
Faster RCNN
将selective search算法替换成为RPN,使用RPN网络进行region的选取
使用RPN替换了耗时的selective search算法,对整个网络结构有了突破性的优化;Faster R-CNN中使用的RPN和selective search比起来虽然速度更快,但是精度和selective search相比稍有不及,如果更注重速度而不是精度的话完全可以只使用RPN;
Mask RCNN
在Faster R-CNN的结构基础上加上了Mask预测分支,并且改良了ROI Pooling,提出了ROI Align。
将RoI Pooling 层替换成了RoIAlign层;添加了并列的FCN层(mask层)。
引入了预测用的Mask-Head,以像素到像素的方式来预测分割掩膜,并且效果很好;用ROI Align替代了ROI Pooling,去除了RoI Pooling的粗量化,使得提取的特征与输入良好对齐;分类框与预测掩膜共享评价函数,虽然大多数时间影响不大,但是有的时候会对分割结果有所干扰。
4. 全卷积网络(FCN)
卷积神经网络在进行采样的时候会丢失部分细节信息,这样的目的是得到更具特征的价值。但是这个过程是不可逆的,有的时候会导致后面进行操作的时候图像的分辨率太低,出现细节丢失等问题。
在FCN当中的反卷积-上采样结构中,图片会先进行上采样(扩大像素);再进行卷积——通过学习获得权值。
FCN对图像进行了像素级的分类,从而解决了语义级别的图像分割问题;FCN可以接受任意尺寸的输入图像,可以保留下原始输入图像中的空间信息;得到的结果由于上采样的原因比较模糊和平滑,对图像中的细节不敏感;对各个像素分别进行分类,没有充分考虑像素与像素的关系,缺乏空间一致性。