你了解如何用GAN做语义分割吗
点击上方“小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达
前 言
本文主要推荐一篇使用GAN来做语义分割的论文。
论文名称: SemanticSegmentationusingAdversarialNetworks 、
论文链接: https://link.zhihu.com/?target=https%3A//arxiv.org/pdf/1611.08408.pdf
目前,对抗学习的方法生成图像已经有比较好的效果,在这篇论文中,作者提出了一种使用对抗训练方法来训练语义分割模型。同时训练卷积语义分割网络以及对抗网络,具体做法是在GAN的Generator中使用语义分割的网络,Generator输入原图,输出预测的分割图,Discriminator再对抗学习,区分GroundTruth和Generator生成的预测分割图。而使用GAN有什么意义呢?论文作者提出采用这样的方法可以检测和纠正分割预测图与GroundTruth的higher-order不一致性。
01 对抗学习
作者使用两个loss来监督。第一个是多个类别的交叉熵损失,这个loss主要是监督每个像素都能预测出正确的类别。第二个loss基于辅助对抗卷积网络,由于对抗卷积网络的视野要么是整个图像,要么是图像的很大一部分,因此higher-order label统计中的不匹配会受到对抗性损失的惩罚,这个是按照像素进行分类无法实现的(例如,用某类标记的像素区域的形状,或某类区域中的像素分数是否超过阈值)功能。
作者使用s(x)表示在给定大小为HxWx3的输入RGB图像x的情况下,分割模型生成的C个大小为HxWxC的类的类概率图。使用a(x,y)来表示输入是x时,对抗模型预测y是GroundTruth的概率,而不是由分割模型s( ·)预测的输出。给定N个训练图像xn的数据集和相应的标签yn,将损失定义为如下图:
训练对抗模型主要是优化第二个损失,即下图的二进制分类损失:
训练分割模型主要是减少多个类别的交叉熵损失,同时降低对抗模型的性能,使得分割模型生成的预测图对于Discriminator来说,很难将其与GroundTruth区分,相关的损失函数如下所示:
02 网络结构
作者对于Stanford Background dataset和Pascal VOC 2012 dataset这两个数据集分别采用了不同的分割网络。其中对抗网络的思想如下图,首先分割网络将RGB图像作为输入,并生成每个像素的类别预测,然后对抗网络将GroundTruth作为输入并生成类标签(1 =GroundTruth,或0 =合成)。
03 实验结果
在下图,作者给出了使用和不使用对抗训练的情况下使用此网络生成的分割结果。对抗训练可以更好地加强类别标签之间的空间一致性。它可以改善和强化大面积类别的概率,例如概率图描绘了天空和草丛,但也锐化了阶级界限,并在小范围内删除了错误预测的类别标签。
在两个数据集上的结果如下两表:
END
下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。
下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。
下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。
交流群
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~
你了解如何用GAN做语义分割吗相关推荐
- deeplabv3 + mobilenetv2 做语义分割并封装成c++部署到移动端,linux,windows等平台(史上最详细)
训练 Deeplab项目安装以及测试 首先为了确保版本支持,先得确认你的tensorflow的版本是1.10以上的.我的linux系统上装的是1.14的tensorflow,因为我一直用的这个版本. ...
- 如何用PyTorch进行语义分割?
木易 发自 凹非寺 量子位 报道 | 公众号 QbitAI 很久没给大家带来教程资源啦. 正值PyTorch 1.7更新,那么我们这次便给大家带来一个PyTorch简单实用的教程资源:用PyTorc ...
- 如何用PyTorch进行语义分割?一个教程教会你|资源
木易 发自 凹非寺 量子位 报道 | 公众号 QbitAI 很久没给大家带来教程资源啦. 正值PyTorch 1.7更新,那么我们这次便给大家带来一个PyTorch简单实用的教程资源:用PyTorc ...
- CVPR2022 做语义分割不用任何像素标签,UCSD、英伟达在ViT中加入分组模块
关注公众号,发现CV技术之美 本文转自机器之心. 生成效果的确很惊艳. 视觉场景是由有语义意义的像素组构成.在深度学习的概念出现之前,业界就已经使用经典的视觉理解方法对像素分组和识别进行深入研究.自下 ...
- PyTorch 深度学习:37分钟快速入门——FCN 做语义分割
语义分割是一种像素级别的处理图像方式,对比于目标检测其更加精确,能够自动从图像中划分出对象区域并识别对象区域中的类别 在 2015 年 CVPR 的一篇论文 Fully Convolutional N ...
- python实现语义分割_如何用PyTorch进行语义分割?一文搞定
很久没给大家带来教程资源啦. 正值PyTorch 1.7更新,那么我们这次便给大家带来一个PyTorch简单实用的教程资源:用PyTorch进行语义分割. 图源:stanford 该教程是基于2020 ...
- 用双注意力模块来做语义分割
作者|Umer Rasheed 编译|ronghuaiyang 导读 本文对双注意网络进行场景分割进行简要概述. 论文链接:https://arxiv.org/abs/1809.02983 图1,双 ...
- 语义分割该如何走下去?
公众号关注 "视学算法" 设为 "星标",DLCV消息即可送达! 来自 | 知乎 链接 | https://www.zhihu.com/question/390 ...
- 【NLP】博士笔记 | 深入理解深度学习语义分割
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|机器学习初学者 引言:最近自动驾驶项目需要学习一些语义分 ...
最新文章
- 【PC工具】更新chrome谷歌浏览器最新离线安装版各种版本,最好用的浏览器没有之一...
- 牛客网暑期ACM多校训练营(第五场)A-gap (二分答案)
- 王牌之作 特斯拉国产Model Y明年初下线
- 大剑无锋之mysql中的行转列如何写?【面试推荐】
- oracle之set运算符和练习
- eclipse远程连接hadoop_hadoop集群搭建详细方法
- Javascript模拟c#中arraylist操作(学习分享)
- plotly包安装_Plotly(一)安装指南
- 工作五年的UI设计师,现在混的怎么样?不看是你的损失
- Android 10 正式版本或将于 9 月 3 日推出
- Linux学习笔记:CentOS6关闭IPv6
- [转载]Hibernate 一对一 双向关联
- sdut 2493 Constructing Roads (图论)
- C#抓取网页数据、分析并且去除HTML标签(转载)
- 分享:中兴 远航 30 pro root 解锁BL magisk ZTE 7532N 8040N 9041N 刷机 刷面具原厂刷机包 root方法下载
- 《UEFI原理与编程》读书笔记
- 浅谈几个数学问题的认识
- 容灾~~~~~~~~~~~~~~~~~~~~
- Codeforces Gym 100015F Fighting for Triangles 状态压缩DP
- 如何解决“Component ‘MSCOMCTLOCX‘ or one of its dependencies .....“
热门文章
- 4种最常问的编码算法面试问题,你会吗?
- 链式比较、奇怪的字母、有趣的import...Python冷知识(六)
- 如何通过引入硬注意力机制来学习视觉问答任务?
- 清华系“AI帮”崛起,要驱动1500亿元产业规模
- Python 开源项目 Top 10 精选(平均star为1128)
- Nginx配置反向代理,一篇搞定!
- 我司Spring Boot 项目打包 + Shell 脚本部署详细总结,太有用了!
- Cache 工作原理,Cache 一致性,你想知道的都在这里
- 推荐一套开源通用后台管理系统
- 为什么MySQL不推荐使用uuid或者雪花id作为主键?