开放科学(资源服务)标识码(OSID):DOI:10.16661/j.cnki.1672-3791.2311-5042-5346作者简介:陈惠民(2003—),男,本科, 研究方向为信息安全。
摘要:图像语义分割(Semantic Segmentation)是计算机视觉领域的热点研究课题,图像语义分割不仅预测一幅图像中的不同类别,同时还定位不同语义类别的位置,具有重要的研究意义和应用价值,这些方法被用于人工智能当中,应用在无人驾驶,遥感影像检测,医疗影像研究等方面。全卷积神经网络的快速崛起推动了图像语义分割领域的发展,两者的融合取得了显著的成就。本文将从语义分割的介绍出发,对近几年的代表性工作进行阐述,并对未来的研究方向进行展望。
关键词:图像处理 语义分割 计算机视觉 人工智能 深度神经网络
中图分类号:TP391.41;TP18
图像语义分割是计算机视觉领域的关键研究方向,通过精确划分图像中不同物体和区域的语义信息,为无人驾驶、遥感影像检测、医疗影像等应用领域提供了重要支持。本文综述了基于深度学习的图像语义分割方法的演进,重点介绍了FCN、U-Net、DeepLab等经典算法,以及最新基于Transformer的方法,如ViT-Adapter和Lawin Transformer。同时还关注了几个常用的语义分割数据集,如PASCAL VOC2012、Microsoft COCO和Cityscapes,为读者提供了全面了解语义分割领域的数据资源的机会。综上所述,旨在为研究者提供对图像语义分割领域的深入了解,并展望未来的研究方向。随着计算机视觉技术的不断发展,图像语义分割将继续在多个应用领域发挥关键作用。
1语义分割算法
传统图像分割算法
传统图像分割算法是一组基于传统计算机视觉和数字图像处理技术的方法,用于将图像分割成不同的区域或对象。这些算法通常不依赖于深度学习或神经网络,而是使用传统的数学、统计学和信号处理技术来实现分割。在后续研究中,与基于神经网络的语义分割算法进行比较是至关重要的,以深入研究它们在各个方面的性能和适用性。传统的图像分割算法同样具有重要意义,为语义分割在后续研究中奠定了基础。以下是4个传统图像分割的介绍:阈值分割法、马尔可夫机场模型、边缘检测法、地域法。
阈值分割法
阈值分割法是传统图像分割中最基础的技术之一,也是应用最广泛的技术。它通过设定不同的阈值来划分图像中不同灰度级别的像素点,从而实现目标与背景的分割。
在该方法中,最重要的是选取合适的阈值。寻找合适的阈值可以提高图像的分割精度,提高分割效果。常用的阈值划分方法有3种:双峰法、最大类间方差法(OTSU)、自适应阈值法(AdaptiveStrike)。
边缘检测法
边缘检测是一种非常有效的方法,它能准确地确定图像的边界,并且具有较高的计算速度。边缘是图像中物体与背景灰度出现突然变化的部位,将灰度差值大的点作为边缘点。通过对所有边缘点的识别和连接,构造出连贯的轮廓,然后再使用图像分割,图像被分割为不同的地带。
地域法
以地区为单位的方法的原理是把具有相似性或性质特征相同的像素点组合成同一地区的图像分割方法。区域法分为两种子法,第一种是区域生长,区域生长是一种串行区域技术,其基本思想是从一个种子像素点开始,逐步合并邻域像素点(pixel)中相似的点,直到找不到相似的像素点或相似度不够的地方才进行合并。
马尔可夫随机场模型算法
马尔科夫随机场模型( MRF-Markov Random Field,MRF)通过对图像进行局部分割的方法,对经过分类后的图像进行算法统计和学习。通过分析图像中各像素点之间的相互关系,我们能够有效地确定先验概率。这一核心理论基于马尔科夫随机场模型(MRF)以及贝叶斯理论(Bayes),为我们提供了一种方法,使信息重复率降低,从而对图像特征和结构进行深入理解。为我们提供了一种深入理解图像特征和结构的方法,从而降低了信息的重复率。这两个重要的概念,在影像处理领域,理论上都提供了必要的支撑。在图像分割中,通过优化算法找到最大概率分布,通过建立多个约束条件的目标函数,将分割问题转换成 MRF优化问题。其中最大后验(Maximum A Posteriori,MAP)概率是一个使用较多的优化指标。
卷积神经网络下的语义分割算法
基于深度学习的卷积神经网络语义分割算法,能够在传统图像分割算法的基础上,更好地提取图像中高层语义信息。传统的图像分割算法通常基于低层图像特征(如形状、边缘、纹理等)进行像素级别的分割,无法准确捕捉到目标的高级语义信息,图像分割效果不好。卷积神经网络下的语义分割计算方法可以实现对图像中的每一个像素进行分类,从而在图像中实现对物体和实体(substruction)的精确分割。提供更高的分割精度和语义理解能力。
FCN全卷积神经网络
FCN网络[1]是CVPR2015会议的最佳论文,其成功发表被誉为深度学习在语义分割领域的重大创新。其核心思想是将传统的卷积神经网络AlexNet、 VGNet中的全连通层替换为全卷积,建立端级、像素级的语义划分网络。FCN网络具有如下突出的特点。
(1)卷积化(Convolutional)。对于一个包含八层的CNN网络,其中前五层为卷积层,会用卷积层去转换后三层。这个转换的重要性在于,整个连接层会把二维图像压缩成一个一维的向量,从而造成丢失空间信息。全卷积层的使用,可以将图像的空间信息保存下来,从而帮助语义的分割更加精确。
(2)上采样(Upsample)。上采样亦被称为反卷积操作,一般应用于网络末端。在多次卷积操作导致特征图尺寸减小的情况下,上采样操作旨在使最终分割结果与原始图像尺寸相匹配,以确保空间信息的一致性。
(3)跳跃结构(Skip Layer)。跳跃结构被引入了FCN网络,它会采样不同的池化层的结果,通过逐元素相加(Element-wise Add)的方式结合在一起。这种跳跃式结构的设计使网络可以将包括8倍、16倍、32倍上在内的特征信息进行整合,从而提高语义分割的性能。
U-Net 医疗U型神经网络
U-Net网络[2]是2015年MICCAI大会上首次提出的一种在医学图像处理领域广泛应用的深度学习架构。U-NET是在全卷积神经网络(FCN)的基础上改进而来的,该方法的独特之处在于采用了一种创新的结构设计,即U型的Encoder和Decoder结构,并结合了skip-connection机制。这一设计有助于充分综合利用图像的底层和高层信息,使得在医疗领域的图像处理方面得到广泛应用。
U-Net网络可以分为Encoder和Decoder两个主要部分。
Encoder负责进行特征提取,其任务是进行特征提取并执行4次下采样操作,总共下采样16倍。这个过程的主要目的是捕获图像的底层信息和上下文语义信息,为进行像素级的类别分类提供有力的支持。
Decoder 负责执行上操作,在每次完成后,通过与对应的通道数(即 SKIP-CONECTION)相同的特征图进行融合。这一过程的主要目的是对图像进行高层次的信息提取,以达到更精细的特征定位。
在特征融合上,U-Net采用了一种新颖的方式,即在通道维度上,而不是像FCN那样,以点带面的方式进行特征拼接融合。这种方法可以帮助特征信息得到更好的保留和利用,网络的性能也会因此得到提升。
谷歌DeepLab系列
DeepLab[3,4]是谷歌团队基于 CNN开发的语义分割模型。Deeplab家族迭代已经经历了四个版本,即V1、V2、V3、V3+。
DeepLabV1 是 DCNN 针对 DCNN 面临的两大图像分割任务难题的改进版深度卷积神经网络。首要问题是如何解决由于反复的池化操作和下采样操作而导致的分辨率下降,降低清晰度。通过引入Atrous(或空洞)卷积来增加感受野,以保留更多的位置信息。通过增加分割精度来细化信息的细节,DeepLabV1 采用了全连接条件随机场(Conditional Random Field,CRF),通过增加分割精度来细化信息细节,从而增加了信息的详细分割结果。DeepLabV1 引入 ATROUS 卷积和全连接条件随机场(CRF),采用 VG-16 作为骨干网络(Backbone)。全连接条件随机场(CRF)在图像分割中的使用是为了图像的信息分割进度的上升。它通过综合考察像素本身的位置及其周围像素的值,以及整个图像的全局信息,对局部信息进行了更新。这种方法有助于使图像分割结果更加精确,尤其在捕捉图像轮廓等细节方面表现更为出色。
DeepLabV2是在V1的基础上进行了网络架构的进一步改进,使多尺度物体分割的挑战得到了更有效的解决。它改善了细节信息的分割,通过减少池化操作,使用了空洞的卷积,继续使用全连接的CRF。此外,DeepLabV2还引入了用于处理多尺度物体存在的空间金字塔池化(ASPP)模块。ASPP模块在给定的特征层上使用多个平行的不同的空洞卷积重新采样,再将特征融合。更好地获取了不同尺度的信息。
DeepLabV3在V2的基础上进行了重要的改进,放弃了全连接条件随机场(CRF)的使用,转而专注于更深层次的Atrous(或称为Dilated)卷积结构,并对ASPP模块进行了改进。串联具有不同膨胀率的Atrous卷积有助于在不同尺度上捕获图像特征,使网络能够更好地理解不同尺度下的结构和语义信息。同时,DeepLabV1还通过并行具有不同膨胀率的空洞卷积来优化空洞空间卷积池化金字塔(Atrous Spatial Pyramid Pooling,ASPP)模块。
DeepLabV3+和V3一样不再使用全连接CRF,在此基础上,DeepLabV3+将深度可分卷积转化为编码器,并在其基础上增加 Decoder模块,从而构造出深度可分卷积。我们将交叉可分卷积与深度可分卷积分别用于 ASPP与 Decoder,并设计了一种基于深度可分卷积的深度可分卷积算法。该模型将空间金字塔池化(SPP)与编码器(Encoder-Decoder)两种模式有机地融合,前者可以获取更多的尺度信息,后者则可以用来恢复目标的边界。
基于Transformer的图像分割
Transformer最早用于自然语言处理,而后被首先被用于图像分类,在语义分割领域使用Transformer的历史并不长,目前新出炉的使用Transformer进行语义分割的方法有南京大学的ViT-Adapter[5]以及北京邮电大学的Lawin Transformer[6]。
ViT-Adapter
ViT[7](Vision Transformer)是一款将Transformer架构应用于图像分类任务的模型,由Google团队于2020年提出。虽然不是第一个将Transformer用于视觉任务的研究,但它因其简单的模型结构、出色的性能,以及可扩展性(模型规模越大,性能越好)而成为了Transformer在计算机视觉领域的重要里程碑,激发了后续相关研究的热潮。
不同于最近的趋势,即在Vision Transformer(ViT)架构中引入视觉特定的归纳偏差,ViT本身由于缺乏图像领域的先验信息,在密集预测任务上表现较差。为了应对这一问题,本文提出了一种名为Vision Transformer适配器(ViT-Adapter)的解决方案。ViT-Adapter通过引入额外的架构来弥补ViT的不足,使其在性能上能够媲美专门针对视觉任务设计的模型。
Lawin Transformer
通过大窗口注意改进具有多尺度表示的语义分割。多尺度表示对于语义分割至关重要。目前见证了利用多尺度上下文信息的语义分割卷积神经网络(Convolutional Neural Networks, CNN)的蓬勃发展。由于视觉Transformer (ViT) 在图像分类方面的强大功能,最近提出了一些语义分割 ViT,其中大多数取得了令人印象深刻的结果,但以计算经济为代价。
2 语义分割数据集
语义划分所用的数据是由多个维度组成的,数量庞大。2 D影像领域的研究热点包括PASCALVOC2012系列、微软 COCO系列、Cityscapes、 SYNTHIA、CamVid、 KITTI等。以下是三组使用较多的资料。
2.1 PASCAL VOC2012数据集
PASCAL VOC 2012是Pascal系列中被广泛选用进行语义分割任务的重要数据集,深受研究者们的高度评价。该数据集涵盖了三大板块,训练板块收录了1 464张图像,验证板块收录了1 449张图像,测试板块收录了1 456张图像。训练集规模进一步扩大,达到 10 582 幅图像,通过巧妙应用数据增强技术。VOC2012数据集涵盖了人、动物、交通工具和室内物品等四大类共20个不同类别的物品和一个可划分为21个类别的背景类别,未修改图像(JPG格式),图像分类分割(PNG格式,特定的物体分割颜色),图像生成具有不同物体轮廓,随机填充颜色的图像物体分类分割(PNG格式)。VOC2012 数据集文件中有 5 个文件夹,对应图像的 XML 信息保存在 Annotations 文件夹中,3个 TXT文件在 ImageSets 文件夹中的 Segmentation 为图像分割标记图像, JPEGIMAGES 文件夹用于保存原始图像。PNG图像包含在SEGMANTIONCL文件夹中进行图像分割分类,PNG图保存在SegmentationObject文件夹中是用于不同物体分割。
2.2 Microsoft COCO数据集
在情景理解中,微软 COCO (Common Objects in Context)是一种十分重要的数据集,包含91个不同物体类别的数据集,捕捉了复杂背景下的生活场景。COCO数据集规模宏大,从32.8万张图像里标注了250万张以上的实体实例,因而被公认为最庞大的语义分割数据集之一。
COCO 数据集的独特之处彰显在其专注解决图像场景理解的3个核心问题上:目标分类、目标检测和场景语义标注。每张 COCO 图像平均涵盖了3.5个不同的物体类别和7.7个物体实例,这使得该数据集展现出更为多样和复杂的特性,为深度学习模型提供了更具挑战性的训练和评估场景。此外,COCO的评估标准相对严格,因此它成为了许多研究者用来评估模型性能和质量的首选数据集。
2.3 Cityscapes数据集
Cityscapes是语义理解中的重要数据集,以城市街道的景色为中心。这本资料集的影像来自覆盖不同季节城市街景的 50 多个不同城市,也包括良好天气下的城市。这些图像涵盖了繁杂种类的城市场景的布局,和人物,交通工具等动态对象,是一个复杂且多样的数据集。
Cityscapes数据库有被高质量标记的图片5 000章以上和超过20 000幅粗糙标注的图像。这些图像涵盖了8个主要类别和30个细分类别的语义信息,包括平面、人物、天空、建筑、实体、自然、汽车、虚空八类。这些精细标注的数据不仅可用于训练深度神经网络,还可支持各类任务,如语义分割、实例分割和密集像素预测
3 结语
本文从语义分割任务的概述开始,详细介绍了传统的语义分割算法,重点关注了自2015年以来,随着卷积神经网络的引入,出现了一系列新的语义分割方法,探讨了最近流行的Transformer在语义分割领域的应用,以及对这些方法的潜在影响,还介绍了3个与语义分割相关的重要数据集,这有助于读者更全面地了解语义分割领域的数据资源。
参考文献
LONG J ,SHELHAMER E, DARRELL T. Fully convolutional networks for semantic segmentation[C]//2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Boston, MA, USA, 2015:3431-3440.
周涛,董雅丽,霍兵强,等. U-Net网络医学图像分割应用综述[J].中国图象图形学报,2021,26(9): 2058-2077.
CHEN LC, Papandreou G, Kokkinos I, et al. Deeplab: Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs[J]. IEEE transactions on pattern analysis and machine intelligence, 2018,40(4):834-848.
CHEN LC, ZHU Y ,Papandreou G,et al. Encoder-decoder with atrous separable convolution for semantic image segmentation[J]. Proceedings of the European conference on computer vision (ECCV). 2018,ECCV(7):801-818.
CHEN Z,DUAN Y C,WANG W H,et al. Vision Transformer Adapter for Dense Predictions[J]. arXiv preprint,2022:arXiv:2205.08534.
YAN H T,ZHANG C,WU M, Lawin transformer: Improving semantic segmentation transformer with multi-scale representations via large window attention[J]. arXiv preprint,2022:arXiv:2201.01615.
Dosovitskiy A,Beyer L, Kolesnikov A, et al. An image is worth 16x16 words: Transformers for image recognition at scale[J]. arXiv preprint arXiv:2010.11929 (2020).