本文已经被NeurIPS 2019(2019 Conference and Workshop on Neural Information Processing Systems)接收,论文为弱监督图像语义分割方法提出了一种全新的损失函数——门控全连接条件随机场损失即Gated CRF Loss,通过与传统交叉熵损失函数结合,应用于重量级语义分割模型DeepLab-v3plus的训练过程,能够在Pascal VOC 2012数据集中将基于点击和描画的弱监督分割方法精度分别提升至67.39%和75.50%,为时下最佳。论文主要的贡献在于门控全连接条件随机场损失函数的提出与一系列证明该损失函数有效的消融实验的设计。
论文地址:https://arxiv.org/abs/1906.04651v1

1.背景

  目前流行的图像语义分割模型通常在具有完整标注的大型数据集上进行训练,这样的数据集获取成本过高,基于此弱监督语义分割方法得到了更多的关注,并已经进行了多种不同的尝试,包括输入不同类型的弱标注(基于粗略描画的,基于边界框的,基于粗略点击绘制的以及基于图像级别标签的),这些方法能够降低标注数据的成本,但分割精度较差,尤其是分割边界。

  论文提出使用新型的损失函数:对于有标注的像素点使用交叉熵损失,对于无标注的像素点使用门控CRF损失。门控CRF损失用于弱监督分割方法的训练,它能够:1) 消除无关像素点的对当前像素点分类的影响;2)更加关注语义边界而非区域之间的语义联系;3)简化了全连接条件随机场与卷积神经网络的结合方式;4)不依赖高维滤波器,能够进行端到端训练。

2.门控CRF损失

2.1 用于语义分割的传统交叉熵损失

  用于语义分割卷积神经网络FFF在训练中需要多对图像xxx-标注yyy,最终为每个像素点从CCC个类中预测其所属类别。用NNN表示一副图像中像素点的个数,其属于类别iii的概率为y^(i)\hat y(i)y^​(i),传统的用于多分类问题的交叉熵损失函数形式为LCE(y^i,yi)=−∑c=1Cyi(c)logy^i(c)L_{CE}(\hat y_i,y_i)=-\sum^C_{c=1}y_i(c)log \hat y_i(c)LCE​(y^​i​,yi​)=−∑c=1C​yi​(c)logy^​i​(c),其中yyy是给定标签。

  在强监督的方法中,几乎所有的像素点都是带有标注的,从而会形成一个密集的分割图,其中每个像素点mi∈{0,1}m_i \in \{0,1\}mi​∈{0,1};而弱监督方法中只有一部分像素点带有标注,会形成一个带有不完整结果的分割图mim_imi​,由于无标注的像素点不能为学习过程提供有效信息,损失函数可以表示为LCE(y^,y)=∑i=1NmiLCE(y^i,yi)/∑i=1NmiL_{CE}(\hat y,y)=\sum^N_{i=1}m_iL_{CE}(\hat y_i,y_i)/\sum^N_{i=1}m_iLCE​(y^​,y)=∑i=1N​mi​LCE​(y^​i​,yi​)/∑i=1N​mi​,由于只有部分像素点有标注,这个交叉熵损失通常被称为局部交叉熵损失(partial cross-entropy,pCE)。

2.2 弱监督标注:基于点击和基于描画

  典型的弱监督方法的动机是通过更少的像素得到更多的采样点,弱标注的数据有多边形标注、描画标注和边界框标注等,其中基于点击和描画的标注具有以下优点:1) 标注区域更小,带有标注的像素点通常是精准可信的;2) 标注过程更加高效;3) 目标和其他区域的类别更好处理。因此论文关注基于点击和描画的弱标注数据。但是该论文提出的方法也能应用在图像级别的弱标注数据,只需把pCE损失换成一个其他合适的损失函数。[基于点击(click-based)和基于描画(scribble-based)的弱标注数据如下图所示]

3.3 门控CRF损失函数用于密集标注任务

  论文希望在不引入任何先验知识的情况下减小弱监督分割方法和强监督分割方法的性能差距,而只使用pCE损失不能为边界处提供更多的帮助,由此引入全连接条件长。首先定义为类别为iii和jjj的位置aaa和bbb的能量项:

ψa,b(i,j)=μ(i,j)Kab,其中Ka,b=∑p=1Pω(p)k(p)(fa(p),fb(p))\psi_{a,b}(i,j)=\mu(i,j)K_{ab},\\其中K_{a,b}=\sum^P_{p=1}\omega^{(p)}k^{(p)}(f_a^{(p)},f_b^{(p)}) ψa,b​(i,j)=μ(i,j)Kab​,其中Ka,b​=p=1∑P​ω(p)k(p)(fa(p)​,fb(p)​)

  ψa,b\psi_{a,b}ψa,b​表示两个点对的势,μ\muμ表示通用的类别矩阵,形状为RC×CR^{C\times C}RC×C,后跟Ka,bK_{a,b}Ka,b​,在Ka,bK_{a,b}Ka,b​中,ω(p)\omega^{(p)}ω(p)表示权重,fa(p)f_a^{(p)}fa(p)​是第ppp个核的特征向量,计算如下:

k(p)(fa(p),fb(p))=exp{−12∣fa(p)−fb(p)σ(p)∣2}k^{(p)}(f_a^{(p)},f_b^{(p)})=exp\left\{ -\frac{1}{2}\left|\frac{f_a^{(p)}-f_b^{(p)}}{\sigma^{(p)}}\right|^2\right\} k(p)(fa(p)​,fb(p)​)=exp⎩⎨⎧​−21​∣∣∣∣∣​σ(p)fa(p)​−fb(p)​​∣∣∣∣∣​2⎭⎬⎫​

且:

μ(i,h)={0,ifi=j1,otherwise.\mu(i,h)=\begin{cases} 0, if\ i=j\\ 1, otherwise. \end{cases} μ(i,h)={0,if i=j1,otherwise.​

  通过能量项的定义和计算可以看出,给定特征相似度时如果两个位置的类别不同则能量项值越小,而特征相似性度量是通过核的权重和频带计算得到的,也就是说一个核就是一个五维的颜色相似度。下图是当σRGB=0.1,σXY=12.0\sigma_{RGB}=0.1,\sigma_{XY}=12.0σRGB​=0.1,σXY​=12.0时部分的计算结果:

  然后计算位置aaa和bbb处的预测值 y^\hat yy^​ 的势:

ψa,b(y^)=∑i,j∈[1,C]ψa,b(i,j)y^a(i)y^b(j)Ψ(y^)=∑a=1N∑b=1≠1Nψ(a,b)(y^)\psi_{a,b}(\hat y)=\sum_{i,j \in [1,C]}\psi_{a,b}(i,j)\hat y_a(i)\hat y_b(j) \\ \ \ \ \ \ \ \Psi(\hat y)=\sum^N_{a=1}\sum^N_{b=1\ \neq1}\psi_(a,b)(\hat y) ψa,b​(y^​)=i,j∈[1,C]∑​ψa,b​(i,j)y^​a​(i)y^​b​(j)      Ψ(y^​)=a=1∑N​b=1 ​=1∑N​ψ(​a,b)(y^​)

  预测值y^\hat yy^​的能量项是全连接条件随机场的重点,门控CRF损失对齐进行进一步优化,总结如下:

1.b≠ab \neq ab​=a表明能量项的计算排除了像素点自己给自己打标签的情况。有时候也想将一些其他位置的无关像素点排除,论文定义了一个和输入图像xxx大小相同的源掩码msrcm^{src}msrc,其中masrc∈{0,1}m_a^{src}\in \{0,1\}masrc​∈{0,1},即当该位置为1,则可以用于为其他位置计算势,为0则不可以。
2. 能量和被认为是所有位置a∈[1,N]a\in [1,N]a∈[1,N]能量的累加,这过于简单。弱监督任务中,可能有的点参与到当前点的能量和计算时,会带来负面影响。为了排除这些点的干扰,论文还设计了和输入图像xxx尺寸相同的目标掩码mdst∈{0,1}m^{dst}\in \{0,1\}mdst∈{0,1},值为1表示该像素点可以从其他位置的像素点接收能量,0则不可以。
3. 对于一个固定的位置aaa,在假定所有核都是高斯核且特征向量k(p)k^{(p)}k(p)包含位置坐标的时候,aaa和bbb的势会随距离的增大而减小。当监督信号十分分散或微弱的时候,CRF存在大量冗余计算,但这些计算对于捕获像素点之间的联系又非常关键,论文采用的方式是限制参与对位置bbb处像素点能量求和的范围,使其只与邻近位置Ω(a)\Omega(a)Ω(a)计算能量。

  为了实现1和2,论文对CRF中能量项计算的公式进行了调整使其支持门控信息:

ψa,b(i,j)=μ(i,j)GabKab\psi_{a,b}(i,j)=\mu(i,j)G_{ab}K_{ab} ψa,b​(i,j)=μ(i,j)Gab​Kab​

  其中Gab=madstmbsrcG_{ab}=m_a^{dst}m_b^{src}Gab​=madst​mbsrc​,即门控函数,其能够有选择地进行能量计算{只有当bbb是有效的‘源‘位置且aaa是有效的’目标‘位置,位置bbb对于位置aaa的能量才能够参与计算}。

  为了实现3,论文定义了一个窗口(位置aaa的半径rrr区域)Ωr(a)=[ax−r,ax+r]×[ay−r,ay+r]\Omega_r(a)=[a_x-r,a_x+r]\times[a_y-r,a_y+r]Ωr​(a)=[ax​−r,ax​+r]×[ay​−r,ay​+r],这样能量和变为:

Ψ(y^)=∑a=1N∑b∈Ωr(a)/{a}ψa,b(y^)\Psi(\hat y)=\sum^N_{a=1}\sum_{b\in \Omega_r(a)/\{a\}}\psi_{a,b}(\hat y) Ψ(y^​)=a=1∑N​b∈Ωr​(a)/{a}∑​ψa,b​(y^​)

  最终论文提出的门控CRF损失函数表示为:
LGCRF(y^)=Ψ(y^)∑i=1NmidstL_{GCRF}(\hat y)=\Psi(\hat y) \sum^N_{i=1}m_i^{dst}LGCRF​(y^​)=Ψ(y^​)i=1∑N​midst​
  这个损失对于最终损失的贡献的权重为λ\lambdaλ,即:

L(y^)=LCE(y^,y)+λLGCRF(y^)L(\hat y)=L_{CE}(\hat y,y)+\lambda L_{GCRF}(\hat y) L(y^​)=LCE​(y^​,y)+λLGCRF​(y^​)

4. 实验分析

4.1 实验设置

  该论文提出的方法并不依赖特定的架构,实验选择当前语义分割效果最好的重量级语义分割模型DeepLab-v3plus作为baseline。另外本文使用了Pascal VOC2012和CityScapes两个数据集,由于缺少基于点击和基于描画的弱监督数据,论文利用已有方法进行生成,用于模型训练和实验结果比对,并且采用平均交并比(mIoU)作为评价指标。下列图表结果中,鼠标标志表示训练数据是基于点击的弱监督数据,线条标志表示训练数据是基于描画的弱监督数据,黑色实心方框表示训练数据是全监督数据

4.2 分割结果可视化

  如下图所示,从左到右前两列为原始图像和真实标注,后三列分别为全监督方法的分割结果,以及采用新型损失时,基于描画标注数据和基于点击标注数据的分割结果。

4.2 定量分析

  在VOC数据集上与SOTA弱监督方法的精度进行对比,结果如下表所示,可以看到。在弱监督方法中不论是基于点击的弱监标注数据还是基于描画的弱标注数据,损失函数结合门控CRF损失都会大幅提升实验精度。具体地,分别将弱监督下最好的平均交并比提升至67.39%和75.50%。

4.3 消融实验

4.2.1 源掩码msrcm^{src}msrc和目标掩码mdstm^{dst}mdst的影响

  下表中第一列表示损失函数只采用局部交叉熵损失(pCE),后三列都是门控CRF损失与局部交叉熵损失的结合,一次为不激活源掩码msrcm^{src}msrc和目标掩码mdstm^{dst}mdst,只激活源掩码,同时激活源掩码和目标掩码。

  可以看到,门控CRF损失和源掩码的激活能够有效提升弱监督数据的精度,但是激活目标掩码后,VOC数据集上的精度反而有所降低,这是因为VOC数据集中一幅图中的目标实例较少,相应的弱监督数据质量也较低,激活目标掩码弱化门控CRF损失必然会导致精度的下降;而在CityScapes数据集中每幅图通常包含多个目标实例,能够为pCE损失提供了有效支持,激活目标掩码会提升最终结果。由此论文指出,源掩码是必须加入的,而目标掩码需要视数据集情况决定是否激活。

4.2.2 有标注像素输入规模对最终结果的影响

  该实验结果来自基于点击的弱监督数据,[1×1][1 \times 1][1×1]和[3×3][3 \times3][3×3]分别表示基于点击的数据中每次点击的像素点数为1和9,结果如下表所示:

  可以看到只使用交叉熵损失时,VOC数据集中每次点击的像素点多比较有利,而结合门控CRF损失后,则消除了两者的精度差距,表明结合门控CRF损失后对弱监督的数据更加有利。而在CityScapes数据集中,实验结果均为明显变化,可能是由于该数据集中包含更多的小尺度目标,扩大每次点击绘制的像素点数可能会使当前目标覆盖其他目标从而影响精度。

4.2.3 不同邻域范围对实验精度的影响

  如下表所示,精度与并不随邻域范围增加而一直增大,取6时效果最好。

4.2.4 不同损失权重的影响

  下表为不同权重的门控CRF损失对实验结果的影响。可以看到对于弱监督数据,取0.1时得到最好精度效果,对于全监督,取0.15时得到最好精度效果。而且随着权重的变化,实验精度变化不大。

总结

  该论文提出了一种简单却有效的损失函数用于弱监督图像语义分割模型的训练,使用标准交叉熵损失用于有标注像素点,使用新型的门控CRF损失用于无标注像素点。整个方法不需要额外的预处理或后处理,能够端到端的训练。方法在基于点击和基于描画的弱监督标注数据中都取得了SOTA效果。

  综合来看,该方法是将全连接条件随机场用作损失函数的又一种尝试,并且在常用的弱标注数据上取得了较好的效果。通过大量的消融实验,为其他具体的弱监督任务的数据标注和损失函数选用指明了新的方向,期待代码尽快开源。


欢迎扫描二维码关注微信公众号 深度学习与数学  [每天获取免费的大数据、AI等相关的学习资源、经典和最新的深度学习相关的论文研读,算法和其他互联网技能的学习,概率论、线性代数等高等数学知识的回顾]

(NeurIPS 2019) Gated CRF Loss -一种用于弱监督图像语义分割的新型损失函数相关推荐

  1. 将特定像素点在图像上连接起来_(NeurIPS 2019) Gated CRF Loss-一种用于弱监督图像语义分割的新型损失函数...

    本文已经被NeurIPS 2019(2019 Conference and Workshop on Neural Information Processing Systems)接收,论文为弱监督图像语 ...

  2. NeurIPS 2019 | 用于弱监督图像语义分割的新型损失函数

    作者丨赵磊 学校丨北京林业大学硕士生 研究方向丨语义分割 本文已经被 NeurIPS 2019 (2019 Conference and Workshop on Neural Information ...

  3. 【VALSE 2019 PPT】南开计算机视觉万人计划教授-程明明-《弱监督图像语义分割》学习记录

    摘要: 基于深度卷积神经网络的传统语义分割模型严重依赖于大量人工标注数据,因而在学习新的类别信息时需要庞大的人力成本来标注数据.弱监督语义分割技术,由于仅依赖图像类别标签等轻量级标注数据,也因此正在成 ...

  4. [论文阅读]面向全局:用于高分辨率遥感图像语义分割的宽上下transforms

    [论文阅读]面向全局:用于高分辨率遥感图像语义分割的宽上下transforms 文章目录 [论文阅读]面向全局:用于高分辨率遥感图像语义分割的宽上下transforms 一.总体介绍 二.具体作用 3 ...

  5. 【论文阅读】Swin Transformer Embedding UNet用于遥感图像语义分割

    [论文阅读]Swin Transformer Embedding UNet用于遥感图像语义分割 文章目录 [论文阅读]Swin Transformer Embedding UNet用于遥感图像语义分割 ...

  6. python 视频抽帧_一种用于超高帧频图像流到标准模拟视频流转换的抽帧方法与流程...

    本发明属于图像处理技术领域,涉及一种用于超高帧频图像流到标准模拟视频流转换的抽帧方法. 背景技术: 在红外成像制导系统中,随着导弹与目标的距离接近,目标逐渐增大形成不稳定的斑状,最后以很快的速度充满整 ...

  7. 去毛边 叶片图像_一种用于植物叶片图像骨架提取的去毛刺方法.PDF

    一种用于植物叶片图像骨架提取的去毛刺方法 第 27 卷 第 1 期 电子测量与仪器学报 Vol. 27 No. 1 · 52 · JOURNAL OF ELECTRONIC MEASUREMENT A ...

  8. 【论文阅读】一种用于消歧和语义表示的统一模型 A Unified Model for Word Sence Representation and Disambiguation

    [论文阅读]一种用于消歧和语义表示的统一模型 A Unified Model for Word Sence Representation and Disambiguation 问题 解决方案 模型搭建 ...

  9. “用于无监督图像生成解耦的正交雅可比正则化”论文解读

    Tikhonov regularization terms https://blog.csdn.net/jiejinquanil/article/details/50411617 本文是对博客http ...

  10. matlab 图像语义分割,笔记︱图像语义分割(FCN、CRF、MRF)、论文延伸(Pixel Objectness、)...

    图像语义分割的意思就是机器自动分割并识别出图像中的内容,我的理解是抠图- 之前在Faster R-CNN中借用了RPN(region proposal network)选择候选框,但是仅仅是候选框,那 ...

最新文章

  1. 任务数量超过线程池负荷了怎么办?拒绝策略安排起来!
  2. 前端一HTML:十二:元素查找过程的详解
  3. 孤荷凌寒自学python第三十八天初识python的线程控制
  4. Zookeeper分布式一致性原理(九):Zookeeper分布式应用
  5. HTML——CSS的基础语法2
  6. Python 使用 itchat+pillow 实现微信消息自动回复
  7. go build 无文件_GO笔记之详解GO的编译执行流程
  8. STM32F1笔记(三)UART/USART
  9. java实现创建窗口
  10. 跑外卖仅靠吃苦可以吗?
  11. 响应式滚动图懒加载 element ui el-carousel 组件优化代码
  12. Netty高可靠性设计:优化建议
  13. General PLSQL 查看数据表中文乱码????
  14. 软件工程能调剂到计算机么,愿意调剂到计算机专业或软件工程专业
  15. 物联网全景动态图谱2.0|PaaS物联网平台汇总
  16. CSS3精灵(Sprites)技术
  17. 网易有道招银 前端面经
  18. 麦克风里有电流声,杂音怎么办
  19. C++ 11 内容总结
  20. python之break语句练习

热门文章

  1. 《写给大家看的面向对象编程书》读书介绍
  2. reset.css(样式重置)
  3. 点击元素改变样式,再点击,又变回去,来回变
  4. swift 3.0 协议笔记
  5. Nginx系列——Windows中安装Nginx
  6. 在网页中引用js文件、css文件或图片文件时为什么要加上问号+值或key-value
  7. C# Combobox清空值
  8. 未处理System.BadImageFormatException,试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)
  9. IDEA右键新建时没有Java Class选项
  10. MySQL数据库优化的几种方式