图像分割是计算机视觉研究中的一个经典难题,已经成为图像理解领域关注的一个热点,图像分割是图像分析的第一步,是计算机视觉的基础,是图像理解的重要组成部分,同时也是图像处理中最困难的问题之一。所谓图像分割是指根据灰度、彩色、空间纹理、几何形状等特征把图像划分成若干个互不相交的区域,使得这些特征在同一区域内表现出一致性或相似性,而在不同区域间表现出明显的不同。简单的说就是在一副图像中,把目标从背景中分离出来。对于灰度图像来说,区域内部的像素一般具有灰度相似性,而在区域的边界上一般具有灰度不连续性。 关于图像分割技术,由于问题本身的重要性和困难性,从20世纪70年代起图像分割问题就吸引了很多研究人员为之付出了巨大的努力。虽然到目前为止,还不存在一个通用的完美的图像分割的方法,但是对于图像分割的一般性规律则基本上已经达成的共识,已经产生了相当多的研究成果和方法。
本文对于目前正在使用的各种图像分割方法进行了一定的归纳总结,由于笔者对于图像分割的了解也是初窥门径,所以难免会有一些错误,还望各位读者多多指正,共同学习进步。
在计算机视觉中,图像分割是个非常重要且基础的研究方向。简单来说,图像分割(image segmentation)就是根据某些规则把图片中的像素分成不同的部分(加不同的标签)。
图像分割中的一些常见的术语有:superpixels(超像素)、Semantic Segmentation(语义分割)、Instance Segmentation(实例分割)、Panoptic Segmentation(全景分割)。他们之间到底有什么区别呢?请看这里。
具体参考这几篇文章就OK了。
1.GitHub:图像分割最全资料集锦
2.最全综述 | 图像分割算法
3.【图像分割模型】从FCN说起
接下来介绍几个非常著名的分割模型:
a.FCN(Fully Convolutional Network)
是的!讲来讲去终于讲到这位大佬了,FCN!在图像分割领域已然成为一个业界标杆,大多数的分割方法多多少少都会利用到FCN或者其中的一部分,比如前面我们讲过的Mask R-CNN。
在FCN当中的反卷积-升采样结构中,图片会先进性上采样(扩大像素);再进行卷积——通过学习获得权值。FCN的网络结构如下图所示:
当然最后我们还是需要分析一下FCN,不能无脑吹啦~
优缺点:
- FCN对图像进行了像素级的分类,从而解决了语义级别的图像分割问题;
- FCN可以接受任意尺寸的输入图像,可以保留下原始输入图像中的空间信息;
- 得到的结果由于上采样的原因比较模糊和平滑,对图像中的细节不敏感;
- 对各个像素分别进行分类,没有充分考虑像素与像素的关系,缺乏空间一致性。
2.SetNet
SegNet是剑桥提出的旨在解决自动驾驶或者智能机器人的图像语义分割深度网络,SegNet基于FCN,与FCN的思路十分相似,只是其编码-解码器和FCN的稍有不同,其解码器中使用去池化对特征图进行上采样,并在分各种保持高频细节的完整性;而编码器不使用全连接层,因此是拥有较少参数的轻量级网络:
SetNet的优缺点:
- 保存了高频部分的完整性;
- 网络不笨重,参数少,较为轻便;
- 对于分类的边界位置置信度较低;
- 对于难以分辨的类别,例如人与自行车,两者如果有相互重叠,不确定性会增加。
以上两种网络结构就是基于反卷积/上采样的分割方法,当然其中最最最重要的就是FCN了,哪怕是后面大名鼎鼎的SegNet也是基于FCN架构的,而且FCN可谓是语义分割领域中开创级别的网络结构,所以虽然这个部分虽然只有两个网络结构,但是这两位可都是重量级嘉宾,希望各位能够深刻理解~
接下来的部分我将给大家介绍另一种完整的分割网络:PSPNet:Pyramid Scene Parsing Network
论文提出在场景分割是,大多数的模型会使用FCN的架构,但是FCN在场景之间的关系和全局信息的处理能力存在问题,其典型问题有:1.上下文推断能力不强;2.标签之间的关系处理不好;3.模型可能会忽略小的东西。
本文提出了一个具有层次全局优先级,包含不同子区域时间的不同尺度的信息,称之为金字塔池化模块。
该模块融合了4种不同金字塔尺度的特征,第一行红色是最粗糙的特征–全局池化生成单个bin输出,后面三行是不同尺度的池化特征。为了保证全局特征的权重,如果金字塔共有N个级别,则在每个级别后使用1×1 1×11×1的卷积将对于级别通道降为原本的1/N。再通过双线性插值获得未池化前的大小,最终concat到一起。其结构如下图:
最终结果就是,在融合不同尺度的feature后,达到了语义和细节的融合,模型的性能表现提升很大,作者在很多数据集上都做过训练,最终结果是在MS-COCO数据集上预训练过的效果最好。
为了捕捉多尺度特征,高层特征包含了更多的语义和更少的位置信息。结合多分辨率图像和多尺度特征描述符的优点,在不丢失分辨率的情况下提取图像中的全局和局部信息,这样就能在一定程度上提升网络的性能。
实例分割
港大和商汤等提出 PolarMask:一阶段实例分割新思路
实时实例分割模型 YOLACT
超Mask RCNN速度4倍,仅在单个GPU训练的实时实例分割算法
Cityscapes 数据集
Cityscapes评测数据集在2015年由奔驰公司推动发布,是目前公认的机器视觉领域内最具权威性和专业性的图像分割数据集之一。在Cityscapes评测数据集之中,共分为像素级分割和实例分割两个子任务,其中相较于像素级分割,实例分割的难度要更大,也是计算机视觉领域最重要、最具挑战的任务之一。
在Cityscapes实例分割任务所对应的数据集中,包含了5000张精细标注的图像和20000张粗略标注的图像,其中包含50个城市的不同场景、不同背景、不同街景,以及30类涵盖地面、建筑、交通标志、自然、天空、人和车辆等的物体标注,以关注真实场景下的环境理解著称,任务难度更高。
截至目前,Cityscapes评测吸引了近百支队伍参赛,包括Facebook、香港中⽂大学、商汤、NVIDIA(英伟达)、搜狗、科大讯飞等众多国内外优秀创新企业和顶尖学术机构参加。创新奇智提出的AInnoSegmentation算法在各项指标中均有突破性进展,各项指标均名列第一,综合成绩第一
截止2019年4月16日,据Amusi所了解,上述MS R-CNN应该是实例分割(Instance Segmentation)mAP 最高的算法;而本文 YOLACT 是实例分割中最快的算法(即FPS最大)。难能可贵都是这两篇paper,都已经开源!
参考文献:
1.https://zhuanlan.zhihu.com/p/62652145