目录
一、从传统图像分割到端到端的像素级分割模型和方法
基于传统的计算机视觉技术和启发式规则,FCN的出现标志着深度学习在图像分割中的重要突破,它通过端到端的训练和全卷积网络的设计,实现了更准确和高效的像素级别分割。随后,许多基于FCN的模型和方法,如U-Net、DeepLab和PSPNet等,进一步推动了图像分割领域的发展。
在FCN(Fully Convolutional Network)之前:
-
GrabCut:GrabCut是一种经典的交互式图像分割方法,它结合了用户的输入和基于图割(graph cuts)的优化算法来实现分割。它可以通过用户标记前景和背景来分割图像。
-
Mean-Shift:Mean-Shift是一种基于密度估计的图像分割方法。它通过对像素进行空间和颜色聚类来寻找像素分布的局部最大值,从而实现分割。
-
Watershed:Watershed是一种基于图像梯度和区域合并的分割方法。它将图像视为地形图,通过将水从高处注入并使其流向低处来划分区域。
-
SLIC(Simple Linear Iterative Clustering):SLIC是一种超像素分割算法,它将图像分割成具有相似颜色和空间位置的连续区域。它为图像分割提供了更好的初始化结果。
-
CRF(Conditional Random Fields):CRF是一种概率图模型,广泛应用于图像分割任务。它通过对像素之间的关系建模来进行分割,以获得更准确的结果。
随后,许多基于FCN的模型和方法,如U-Net、DeepLab和PSPNet等,进一步推动了图像分割领域的发展。
二、全卷积网络(FCN)
①、实现原理
全卷积网络(FCN)从抽象的特征中恢复出每个像素所属的类别。即从图像级别的分类进一步延伸到像素级别的分类。
具体来讲,将全连接层转换为卷积层,卷积层可以捕获图像的低级和高级特征,经过多次卷积和pooling以后,分辨率降低,图像尺寸越来越小,得到高维特征的heatmap热图。由于最后一层特征图过小,有细节信息丢失,所以我们通过跳跃结构,将来自深层粗糙层的语义信息和来自浅层精细层的外观信息结合,即将较浅的特征图与对应的上采样后的特征图进行逐元素相加,以保留更丰富的细节和空间信息。其中常用的上采样方法包括反卷积和双线性插值,用于像素级别的预测,为每个像素赋予一个类别标签或分割掩码,从而实现对图像的物体分割。
②、优缺点
FCN(Fully Convolutional Network)作为一种用于图像分割的深度学习模型,具有以下优点和缺点:
FCN优点:
-
像素级别的预测:FCN能够对图像进行像素级别的预测和分割,提供更精细和准确的分割结果。
-
端到端训练:FCN可以通过端到端的训练方式进行训练,无需手动设计特征提取器和分割器,简化了模型的构建和训练过程。
-
全卷积结构:FCN使用全卷积层来处理变长输入和生成相同尺寸的输出,使其适用于不同大小的图像,并且具有位置不变性,能够处理不同位置的目标。
-
跳跃连接:FCN引入了跳跃连接,可以融合多个层级的特征信息,帮助保留更丰富的细节和空间信息,提升分割的准确性。
-
可扩展性:FCN可以通过增加卷积层和上采样层的深度来增加模型的复杂度,从而提升性能。
FCN缺点:
-
计算资源要求较高:由于FCN中需要进行大量的卷积和上采样操作,模型的计算量较大,对计算资源要求较高,可能需要更长的训练和推理时间。
-
细小目标检测困难:对于细小的目标或细节部分,FCN可能会受到限制,因为在上采样过程中可能丢失一些细节信息。
-
类别不平衡问题:在某些图像分割任务中,不同类别的样本数量可能存在不平衡问题,这可能导致FCN在训练和预测过程中对较少样本类别的分割效果较差。
-
上采样精度损失:FCN使用上采样操作将低分辨率的特征图恢复到原始图像尺寸,这可能会引入一定的精度损失,导致分割结果不够精细。
-
对大尺度变化敏感:由于FCN是基于局部到全局的金字塔结构,对于具有大尺度变化的图像,可能需要更深的网络或其他技术来处理。
综上所述,FCN作为一种图像分割模型,具有很多优点,但也存在一些局限性和挑战。针对具体应用场景,需要权衡这些优点和缺点,选择合适的模型。
③、结构图解