论文阅读笔记五:U-Net: Convolutional Networks for Biomedical Image Segmentation(CVPR2015)
前面介绍了两个文本检测的网络,分别为RRCNN和CTPN,接下来鄙人会介绍语义分割的一些经典网络,同样也是论文+代码实现的过程,这里记录一下自己学到的东西,首先从论文下手吧。
英文论文原文地址:https://arxiv.org/abs/1505.04597
前面的论文忘记介绍大佬的名字了,在这里先抱个歉。。。那么接下来有请提出U-Net的大佬们一一列席:Olaf Ronneberger, Philipp Fischer, and Thomas Brox
这里依次是三位大佬的主页 https://lmb.informatik.uni-freiburg.de/people/ronneber/
https://lmb.informatik.uni-freiburg.de/people/fischer/ https://lmb.informatik.uni-freiburg.de/people/brox/ 其中,有他们的论文及代码实现,感兴趣的可以进行学习实现一下。
下面进入正文,首先作者开头就提到了,通过使用数据增强可以更加高效的使用标记的样本。结构包括一个压缩路径 用于捕捉上下文信息,还有一个对称的展开路径 用于精确的定位。这种网络的特点就是可以对很少的几张图片进行end-to-end训练并且表现的较好。在医学图像上需要对每个像素进行分类,有位大佬提出了用滑动窗口的方法,通过一个patch(该像素周围)的类别对像素进行分类,要求是一是网络可以进行定位,二是patch的数量远大于训练的图片,结果还是喜人的。但接下来,作者就开始进行批斗了,首先作者认为这个做法很慢,网络必须经过每个patch,这就会因为很多重叠造成很多冗余。再就是,在定位的准确性和上下文的使用二者要进行权衡,更大的pathc需要更多的最大池化层来减少定位精度,而小的patch包含的上下文信息就较少。
然而作者想到了机智的方法可以解决上述问题,作者提出的 结构是建立在全卷积网络。作者对其进行修改和扩展,使其可以在很少的训练图像下 进行工作,同时产生更精确的分割。
网络结构如下:
全卷积网络的主要思路是通过连续层来补充通常 的压缩网络。这里池化操作被上采样取代。这些层增加了输出的分辨率,因此,为了定位,从压缩路径中获得的高分辨率特征与上采样的输出结合。一系列卷积层会根据这些信息组合学习到更精确的输出。
作者在结构的上采样部分进行了修改,有大量特征通道,允许网络将上下文信息传播到更高分辨率的层。结构上,压缩路径与展开路径或多或少的有些对称,形成一个U形。这个U网比较奇葩,没有全连接层,而且仅使用每个卷积层的有效部分通过重叠+平铺,可以实现任意大小图片的无缝分割。为了预测图像边界区域中的像素,可以通过输入图像的镜像操作来推断遗失的上下文。前面说的这个策略很适合于大的图片。作者将训练图片进行弹性变换(个人感觉是各种图像处理的套路)来实现数据增强。
下面大体说一说网络的结构,摆在你面前的有两条路,一条为压缩路径,另一条为扩展路径,压缩路径的结构和卷积结构相同,包括两次3*3卷积,每个卷积后接一个RELU,和一个2*2的最大池化层(stride=2)用于下采样。在每个下采样的过程中,将特征通道数加倍,扩张路径中的每一步都包括上采样,然后进行2*2的反卷积,其特征通道数减半,与来自压缩路径中相对应的裁剪feature map级联,同时进行两个3*3的卷积,并捎带个RELU。由于卷积边界上像素有丢失,因此,进行裁剪是必要的。在最后一层,用大小为1*1的卷积将64维的特征向量映射到目标的类别数目上。次网络总共有23个卷积层。
Unet网络介绍到这里,这里提一下,Unet网络十分适合于生物医学上的处理,同时由于医学影像较少,因此作者进行了数据增强,使Unet能够发挥的更加出色。
论文阅读笔记五:U-Net: Convolutional Networks for Biomedical Image Segmentation(CVPR2015)的更多相关文章
- 【Semantic Segmentation】U-Net: Convolutional Networks for Biomedical Image Segmentation 论文解析(转)
目录 0. 前言 1. 第一篇 2. 第二篇 3. 第三篇keras实现 4. 一篇关于U-Net的改进 0. 前言 今天读了U-Net觉得很不错,同时网上很多很好很详细的讲解,因此就不再自己写一 ...
- 论文阅读笔记五十四:Gradient Harmonized Single-stage Detector(CVPR2019)
论文原址:https://arxiv.org/pdf/1811.05181.pdf github:https://github.com/libuyu/GHM_Detection 摘要 尽管单阶段的检测 ...
- 论文阅读笔记六十一:Selective Kernel Networks(SKNet CVPR2019)
论文原址:https://arxiv.org/pdf/1903.06586.pdf github: https://github.com/implus/SKNet 摘要 在标准的卷积网络中,每层网络中 ...
- 论文阅读笔记五十七:FCOS: Fully Convolutional One-Stage Object Detection(CVPR2019)
论文原址:https://arxiv.org/abs/1904.01355 github: tinyurl.com/FCOSv1 摘要 本文提出了一个基于全卷积的单阶段检测网络,类似于语义分割,针对每 ...
- 论文阅读笔记五十三:Libra R-CNN: Towards Balanced Learning for Object Detection(CVPR2019)
论文原址:https://arxiv.org/pdf/1904.02701.pdf github:https://github.com/OceanPang/Libra_R-CNN 摘要 相比模型的结构 ...
- 论文阅读笔记五十一:CenterNet: Keypoint Triplets for Object Detection(CVPR2019)
论文链接:https://arxiv.org/abs/1904.08189 github:https://github.com/Duankaiwen/CenterNet 摘要 目标检测中,基于关键点的 ...
- 论文阅读笔记五十:CornerNet: Detecting Objects as Paired Keypoints(ECCV2018)
论文原址:https://arxiv.org/pdf/1808.01244.pdf github:https://github.com/princeton-vl/CornerNet 摘要 本文提出了目 ...
- 论文阅读笔记五十六:(ExtremeNet)Bottom-up Object Detection by Grouping Extreme and Center Points(CVPR2019)
论文原址:https://arxiv.org/abs/1901.08043 github: https://github.com/xingyizhou/ExtremeNet 摘要 本文利用一个关键点检 ...
- 论文阅读笔记五十二:CornerNet-Lite: Efficient Keypoint Based Object Detection(CVPR2019)
论文原址:https://arxiv.org/pdf/1904.08900.pdf github:https://github.com/princeton-vl/CornerNet-Lite 摘要 基 ...
随机推荐
- 如何在vue中使用动态使用本地图片路径
不知道各位小伙伴有没有在开发遇到一个问题,就是在线上的项目使用后台返回本地图片路径,然后加载不上的情况呢? 我的解决方法就是:先在项目的data下定义好这样一个数组用于存放需要加载的路径 [ {nam ...
- 关于 tp5.0 阿里云 oss 上传文件操作
tp5.0 结合阿里云oss 上传文件 1.引入 oss 的空间( composer install 跑下第三方拓展包及核心代码包) 备注:本地测试无误,放到线上有问题 应该是移动后的路劲(相对于服 ...
- Java基础4-面向对象概述;super();this()
昨日内容回顾 java基本数据类型: byte : 一个字节,-128 ~ 127 = 256 short : 两个字节, -32768 ~ 32767 int : 四个字节, long : 八个字节 ...
- codevs 1080 线段树练习(线段树)
题目: 题目描述 Description 一行N个方格,开始每个格子里都有一个整数.现在动态地提出一些问题和修改:提问的形式是求某一个特定的子区间[a,b]中所有元素的和:修改的规则是指定某一个格子x ...
- Python运维开发基础02-语法基础【转】
上节作业回顾(讲解+温习60分钟) #!/bin/bash #user login User="yunjisuan" Passwd="666666" User2 ...
- CentOS7利用systemctl添加自定义系统服务【转】
systemctl enable name.service 设置开机启 systemctl disable name.service 删除开机启动指令 systemctl list-units --t ...
- c++学习day3(字符串_指针)
1.字符串 1)三种形式 用双引号括起来的字符串常量:结尾会有一个'\0'字符,但该字符只占据字节数,不会使字符串长度增加. 存放于字符数组中,以'\0'字符结尾:数组元素个数应至少为字符串长度+1 ...
- 二层环路保护,RRPP多环的配置
作者:邓聪聪 组网需求: 局域网中,由A/B/C/D构成RRPP域1换网络结构,要求环网机构中的任意两条线路中断都不能影响业务. 配置思路: 环路由两部分组成,ring1.ring2,B为环1的主节点 ...
- webstorm设置VCS:版本控制顶部按钮
说明: 每次都在这坑一下,浪费时间,百度只指出在哪,并没有说怎么调出来 我用的版本是10,点击下面的选项按操作设置就可以了 红色箭头:从服务器获取最新代码: 绿色箭头:提交: 白色箭头:撤销
- hostapd修改beacon帧和probe response帧
在AP模式下,热点会不断定期地发送Beacon帧来宣告自己存在,告知设备可以加入网络: Probe Response帧是用于应答Probe Request帧,Probe Request帧是移动工作站用 ...