AI科技:如何利用图片像素之间的像素度进行图像分割?

热爱科技的朋友们,欢迎点击关注

论文:Learning Pixel-level Semantic Affinity with Image-level Supervision for Weakly Supervised Semantic Segmentation

会议:CVPR2018

问题①:这篇文章做什么的?

自答:这篇文章是CVPR2018上一篇关于弱监督语义分割的文章,也就是,数据集告诉你一堆图片以及这些图片里面有什么,你使用深度学习的方法将图片中每一个物体的区域分割出来。

问题②:这篇文章主要思路是什么?

自答:这篇文章首先通过一般的CAM方法生成分割seed cues(前面文章有介绍),然后利用这些seed cues中已经标记标签的pixel计算相似度标签,利用卷积神经网络提取图片每个像素的特征,计算这些特征之间的相似度,使用标签计算得到的相似度作为监督信息,从而训练网络,最后得到比较好的特征提取网络,使得图片中属于相同类别的像素的特征之间相似度较高,而不同类的像素相似度较低。

问题③:这篇文章突出特点是什么?

自答:我觉得是1)通过CAM计算相似度标签的方式,2)使用像素间相似度进行分割的算法。

1、总体架构

2、架构构成

第一步、计算CAM

目标类:

背景类:

此中,α=16(4-24) à 根据Mc得到

也就是将feature maps 取最大值得到一个map,再归一化,1减去该feature map

如下图展示CAM方法的结果:

下图是生成的Seed cues(粉色和黑色区域是已确定标签区域):

第二步、生成语义相似度标签Semantic Affinity Labels

(1)设定半径为5,计算像素周围的一个圆内的像素与该像素之间(pixel pair)的相似度标签W。

计算方法图解:

计算方法公式:

如图中所示,若pixel pair中有一个像素为未确定标签的像素,则忽略不考虑;若pixel pair中两个像素属于同一个类别则记为1,属于不同类别则记为0;如上图所示,存在于Foreground和Background的pixel,为红色和黑色的点,存在于Netural的点为绿色。

通过上面方法计算的Wij,作为相似度标签,Wij保存着位置相近的pixel pairs属于相同的class或者不同的class的信息。

第三步、AffinityNet Training

前提理论:位置相近的pixel更有可能属于同一个class;从确定的定位信息传播类别信息,处理物体区域假阳性和缺失块,生成训练标签。

(1)NetWork:

图片通过网络生成一堆features,faff 表示,这些feature maps中含有丰富的上下文信息,图片中每一个pixel对应着faff一个channel长的向量V,类别相同的pixel对应的V的内容更接近。

(2)如何训练?

1)首先,生成训练监督信息

2)需要什么?知道哪些pixel具有相同的或者不同的标签。

通过CAM计算得到相似度标签,可得到上图中的关系,相同标签为同颜色,不同标签为不同颜色,由相同label(同颜色pixel)和不同label(不同颜色pixel)的pixel pairs之间的相关性,通过训练指导不确定label(橙色pixel)与确定label 的pixel pairs之间的相关性。

这是一种通过周围有监督训练部分无监督的数据的一种方法。

(3)训练损失函数

(1)定义相关点集合P:d为欧式距离,γ为5

(2)将相关点集合P根据pixel pairs属于相同类还是不同类划分为P+和P-,其中集合P+划分为P+bg,和P+fg.

(3)损失函数

其中,

Pixel属于相同的class,则对应的提取的特征则越相似,属于不同class,则对应的提取的特征则越不同。

根据已确定的pixel pairs的相似关系,通过网络训练,得到不确定的pixels之间的关系。最终训练结束时,不确定标签的像素提取的特征也具有了一定的分布规律,与确定的某一类的标签pixel提取特征相似。

第四步、Revising CAMs Using AffinityNet

原理:计算不确定像素提取的特征与CAM确定类别的像素提取的特征之间像素度的均值,根据未知标签的像素与某一类的确定像素之间相似度值较大,则判定为某类。

即:(A1,A2,A3,...,An)为标签为A类的像素集;(B1,B2,B3,...,Bm)为标签为B的像素集,(P1,P2,P3,...,Pz)为未确定标签的像素集。计算P1与A类中所有像素的相似度的均值和P1与B类所有像素的相似度均值,比较两个值的大小,判定P1是属于A类还是B类。

第五步、训练分割网络

使用计算得到的相似度,得到分割标签,作为全监督训练的检索信息,选用分割网络进行全监督语义分割训练,得到最终的分割结果。

3、结果

(1)CAM和AffinityNet的分割结果

(2)最终分割结果

(3)在PASCAL VOC2012上的结果

更多详细信息请查看原文,论文地址:

http://openaccess.thecvf.com/content_cvpr_2018/papers/Ahn_Learning_Pixel-Level_Semantic_CVPR_2018_paper.pdf

原文发布于微信公众号 - AI深度学习求索(AIDeepLearningQ)

原文发表时间:2018-11-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏帮你学MatLab

工具函数

工具函数 显示对比结果 clc %% 不使用遗传算法 %% 使用随机权值和阈值 inputnum=size(P,1); % 输入层神经元个数 o...

30660
来自专栏机器学习算法原理与实践

支持向量机高斯核调参小结

    在支持向量机(以下简称SVM)的核函数中,高斯核(以下简称RBF)是最常用的,从理论上讲, RBF一定不比线性核函数差,但是在实际应用中,却面临着几个重...

26930
来自专栏超然的博客

MIT-线性代数笔记(7-11)

找出“主变量”pivotvariables,主列,即主元所在的列,其他列,称为自由列。(自由列表示可以自由或任意分配数值,列2和列4的数值是任意的,因此x2和x...

11610
来自专栏xingoo, 一个梦想做发明家的程序员

吴恩达机器学习笔记 —— 10 神经网络参数的反向传播算法

神经网络可以理解为两个过程:信号的正向传播和误差的反向传播。在正向的传播过程中,计算方法为Sj=wijxi+bj,其中i是样本、j是层数。然后xj=f(Sj),...

10600
来自专栏书山有路勤为径

Convolutional Neural Networks

计算机视觉(Computer Vision)包含很多不同类别的问题,如图片分类、目标检测、图片风格迁移等等。

7410
来自专栏计算机视觉战队

卷积神经网络的前向传播

---- CNN的这三个特点是其对输入数据在空间(主要针对图像数据)上和时间(主要针对时间序列数据,参考TDNN)上的扭曲有很强的鲁棒性。CNN一般采用卷积层...

35840
来自专栏ml

读RCNN论文笔记

1. RCNN的模型(如下图)描述:              RCNN相比传统的物体检测,还是引入传统的物体检测的基本流程,先找出候选目标物体,逐个的提取特征...

34660
来自专栏深度学习与计算机视觉

Object Detection系列(三) Fast R-CNN

Object Detection系列(一) R-CNN Object Detection系列(二) SPP-Net Object Detectio...

48750
来自专栏算法修养

文本分类学习 (八)SVM 入门之线性分类器

SVM 和线性分类器是分不开的。因为SVM的核心:高维空间中,在线性可分(如果线性不可分那么就使用核函数转换为更高维从而变的线性可分)的数据集中寻找一个最优的超...

6710
来自专栏贾志刚-OpenCV学堂

卷积神经网络是如何实现不变性特征提取的

传统的图像特征提取(特征工程)主要是基于各种先验模型,通过提取图像关键点、生成描述子特征数据、进行数据匹配或者机器学习方法对特征数据二分类/多分类实现图像的对象...

19920

扫码关注云+社区

领取腾讯云代金券