首页 > 其他分享 >9.2.1 简述图像分割中经常用到的编码器-解码器网络结构的设计理念。

9.2.1 简述图像分割中经常用到的编码器-解码器网络结构的设计理念。

时间:2024-06-17 15:57:10浏览次数:12  
标签:segmentation 分割 编码器 像素 解码器 图像 9.2

9.2 图像分割

场景描述

图像分类图像识别图像分割
不同标注出每个目标的类别像素级别的图像识别,标注出图像中每个像素所属的对象类别
不同整张图像进行识别进行稠密像素级分类
应用场景视频软件中的背景替换、避开人物的弹幕模板自动驾驶以及医疗辅助判断
分类前景分割(foreground segmentation)、
语义分割(semanticsegmentation)、
实例分割(instance segmentation)
2018年开始兴起的全景分割(panoptic segmentation)(图9.3)
常用数据集PASCAL VOC2012[23]、
MS COCO[25]、
CityScapes[24]
  • 图像分割是指像素级别的图像识别,即标注出图像中每个像素所属的对象类别。
  • 与图像分类对整张图像进行识别不同,图像分割需要进行稠密的像素级分类。
  • 图像分割的应用场景有很多,比如我们看到的视频软件中的背景替换、避开人物的弹幕模板、自动驾驶以及医疗辅助判断等都使用了基于图像分割的技术。

根据应用场景的不同,图像分割任务可以更精细地划分成以下几类:

  • 前景分割(foreground segmentation),
  • 语义分割(semanticsegmentation),更注重类别之间的区分;
  • 实例分割(instance segmentation),更注重个体之间的区分;
  • 2018年开始兴起的全景分割(panoptic segmentation),如图9.3所示[22],语义分割和实例分割结合

学术界常用的图像分割方面的数据集有PASCAL VOC2012[23]、MS COCO[25]和CityScapes[24]。

知识点:图像分割、编码器-解码器结构、空洞卷积、DeepLab算法

9.2.1 简述图像分割中经常用到的编码器-解码器网络结构的设计理念。

  • 图像分割中的编码器可视为特征提取网络,通常使用池化层逐渐缩减输入数据的空间维度
  • 解码器则通过上采样/反卷积等网络层来逐步恢复目标的细节和相应的空间维度

图9.4以U-Net为例,给出了一个具体的编码器-解码器网络结构[27]。

编码器中,引入池化层可以增加后续卷积层的感受野,并能使特征提取聚焦在重要信息中,降低背景干扰,有助于图像分类。

问题:然而,池化操作使位置信息大量流失,经过编码器提取出的特征不足以对像素进行精确的分割。这给解码器逐步修复物体的细节造成了困难,使得在解码器中直接由上采样/反卷积层生成的分割图像较为粗糙。

解决:因此,一些研究人员提出在编码器和解码器之间建立快捷连接(shortcut/skip connection),使高分辨率的特征信息参与到后续的解码环节,进而帮助解码器更好地复原目标的细节信息。

列举出2~3个基于编码器-解码器结构的图像分割算法。

经典的图像分割算法 FCN (Fully Convolutional Networks) [26]、U-Net[27]和SegNet[28]都是基于编码器-解码器的理念设计的。

FCN和U-Net是最先出现的编码器-解码器结构,都利用了快捷连接向解码器中引入编码器提取的特征。

  • FCN中的快捷连接是通过将编码器提取的特征进行复制叠加到之后的卷积层提取出的特征上,作为解码器的输入来实现的。
  • 与FCN不同,SegNet提出了最大池化索引(max-pooling indicies)的概念,快捷连接传递的不是特征本身,而是最大池化时所使用的索引(位置坐标)。利用这个索引对输入特征进行上采样,省去了反卷积操作,这也使得SegNet比FCN节省了不少存储空间

[22] KIRILLOV A, HE K, GIRSHICK R, et al. Panoptic segmentation[J].arXiv preprint arXiv:1801.00868, 2018.
[23] EVERINGHAM M, WINN J. The PASCAL visual object classes challenge 2012(VOC2012) development kit[J]. Pattern Analysis, Statistical Modelling and Computational Learning, Tech. Rep, 2011.
[24] LIN T-Y, MAIRE M, BELONGIE S, et al. Microsoft COCO: Common objects incontext[C]//European Conference on Computer Vision. Springer, 2014: 740-755.
[25] CORDTS M, OMRAN M, RAMOS S, et al. The cityscapes dataset for semantic urban scene understanding[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016: 3213-3223.
[26] LONG J, SHELHAMER E, DARRELL T. Fully convolutional networks for semantic segmentation[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2015.
[27] RONNEBERGER, OLAF, FISCHER P, BROX T. U-Net: Convolutional networks for biomedical image segmentation[C]//International Conference on Medical Image Computing and Computer-Assisted Intervention, 2015:234-241.
[28] BADRINARAYANAN V, KENDALL Alex, CIPOLLA R. SegNet: A deep convolutional encoder-decoder architecture for image segmentation[J].IEEE Transactionson Pattern Analysis and Machine Intelligence,2017.

下集预告:9.2.2 DeepLab系列模型中每一代的创新是什么?是为了解决什么问题?

参考文献:

《百面深度学习》 诸葛越 江云胜主编

出版社:人民邮电出版社(北京)

ISBN:978-7-115-53097-4

2020年7月第1版(2020年7月北京第二次印刷)

推荐阅读:

//好用小工具↓

分享一个免费的chat工具

分享一个好用的读论文的网站

// 深度学习经典网络↓

LeNet网络(1989年提出,1998年改进)

AlexNet网络(2012年提出)

VGGNet网络(2014年提出)

LeNet、AlexNet、VGGNet总结

GoogLeNet网络(2014年提出)

ResNet网络(2015年提出)

标签:segmentation,分割,编码器,像素,解码器,图像,9.2
From: https://blog.csdn.net/seasonsyy/article/details/139741065

相关文章

  • 杂项——编码器控制小车走固定距离(stm32)
    先算出轮子转一周编码器的数值(假设为1000),再算出轮子一周的周长(假设为10cm)。那么要前进1米只需要转1米/10cm等于10圈,10圈编码器数值为10000。我们只需要在代码里面写出编码器数值如果<10000则让小车前进,如果>10000让小车停止,即可实现控制小车走固定的距离编码器.c函数(编码器......
  • 2022.9.22DAY674
    课程学习:《模式识别》,讲了“最小均方误差算法”,从误差算法怎么来以及如何使用。 android实验课,讲了一些基本控件的使用,这些都是基础的东西,值得我去注意的是老师讲到如何通过官网文档去查看控件的属性,方法。以及通过文件去找到相关的开源代码,对于一个开发者来说,这才是值得去......
  • jQWidgets 19.2.0 Visualize Sequences
    jQWidgets19.2.0VisualizeSequencesjQWidgets19.2.0addsanewcomponentforvisualizingchronologicaldatawithsupportforinteractivescrolling,customizablestyles,andrichcontent.jQWidgetsisacomprehensiveJavaScriptUIframeworkofferi......
  • 信息系统项目管理师0145:敏捷与适应方法(9项目范围管理—9.2项目范围管理过程—9.2.3敏
    点击查看专栏目录文章目录9.2.3敏捷与适应方法9.2.3敏捷与适应方法  对于需求不断变化、风险大或不确定性高的项目,在项目开始时通常无法明确项目的范围,而需要在项目期间逐渐明确。敏捷或适应型方法特意在项目早期缩短定义和协商范围的时间,为后续细化范围、明......
  • Python深度学习实践:自动编码器在数据降维中的应用
    Python深度学习实践:自动编码器在数据降维中的应用1.背景介绍在现代数据科学和机器学习领域中,高维数据处理是一个常见的挑战。许多真实世界的数据集包含大量的特征,这些特征往往存在高度的冗余和噪声。高维数据不仅增加了计算复杂性,还容易导致维数灾难(curseofdimensio......
  • 创建Transformer编码器和多头注意力层
    大家好,计算自然语言处理(NLP)是一个迅速发展的领域,其中计算力量与语言学相结合。语言学的一部分主要归功于约翰·鲁珀特·弗斯的分布语义理论,他曾说过以下的名言:“你可以通过其周围的上下文单词来了解一个目标单词”,这表明一个词的语义表示取决于它所在的上下文。正是基于这一假......
  • FFmpeg开发笔记(二十四)Linux环境给FFmpeg集成AV1的编解码器
    ​AV1是一种新兴的免费视频编码标准,它由开放媒体联盟(AllianceforOpenMedia,简称AOM)于2018年制定,融合了GoogleVP10、MozillaDaala以及CiscoThor三款开源项目的成果。据说在实际测试中,AV1标准比H.265(HEVC)的压缩率提升了大约27%。由于AV1具有性能优势,并且还是免费授权,因此各大流......
  • 加装zookeeper3.9.2
    点击查看代码Xshell7(Build0151)Copyright(c)2020NetSarangComputer,Inc.Allrightsreserved.Type`help'tolearnhowtouseXshellprompt.[C:\~]$Connectingto192.168.10.10:22...Connectionestablished.Toescapetolocalshell,press'C......
  • OpenCloudOS 9.2 发布!全新内核版本,全面平台支持
    2023年,操作系统开源社区OpenCloudOS发布首个全自研社区9.0版本,内核及用户态软件均为自主选型、独立演进,在操作系统发行版的全链路均实现自主可控,开启了国产OS全新独立路线。2024年5月22日,OpenCloudOS社区年度新版本OpenCloudOS9.2正式发布:Kernel版本升级至6.6,......
  • FFmpeg开发笔记(二十一)Windows环境给FFmpeg集成AVS3解码器
    ​AVS3是中国AVS工作组制定的第三代音视频编解码技术标准,也是全球首个已推出的面向8K及5G产业应用的视频编码标准。AVS工作组于2019年3月9日完成第三代AVS视频标准(AVS3)基准档次的制订工作,参考软件的测试表明,AVS3基准档次的性能比上一代标准AVS2和HEVC提升了约30%。libuavs3d是AV......