当前位置: 首页 > news >正文

UNet详细解读(一)论文技术要点归纳

UNet 论文技术要点归纳

  • UNet
    • 摘要
    • 简介
    • Over-tile策略
    • 网络架构
    • 训练
    • 数据增强
    • 小结

UNet

摘要

2015年诞生,获得当年的ISBI细胞追踪挑战比赛第一名,在GPU上推理512x512的图像不到1秒钟,开创图像分割的先河。

简介

在当时,卷积神经网络是主流,但是仅限于图像分类任务,并且需要大量的数据集。对于医学图像,数据集的量很少。

2012年 Ciresan提出的网络虽然获得了EM的第一名,但是有缺陷,因此作者提出了UNet,解决了这些问题。并且远远超出了之前的所有分割网络。

Over-tile策略

请添加图片描述

对图中黄色部分像素点进行预测的时候,需要用到蓝色部分的上下文信息,但是这么做会出现两个问题。

1.边界问题:进行镜像扩充。

2.重叠问题:在卷积时只使用有效部分,在卷积的时候会使用到蓝色部分,但是传入到下一层的只有黄色部分。

网络架构

请添加图片描述

左侧为收缩路径,由3X3卷积Relu最大池化组成,每次下采样后通道数量加倍,用于获取上下文信息。

右侧为扩展路径,由3X3卷积Relu2X2上采样组成,每次下采样后通道数量减半,用于精确定位。

  • 输入是572x572的,但是输出变成了388x388,这说明经过网络以后,输出的结果和原图不是完全对应的,这在计算loss和输出结果都可以得到体现.

  • 蓝色箭头代表3x3的卷积操作,并且步长是1,不进行padding,因此,每个该操作以后,featuremap的大小会减2.

  • 红色箭头代表2x2的最大池化操作.如果池化之前特征向量的大小是奇数,那么就会损失一些信息 。输入的大小最好满足一个条件,就是可以让每一层池化操作前的特征向量的大小是偶数,这样就不会损失一些信息,并且crop的时候不会产生误差.

  • 绿色箭头代表2x2的反卷积操作.何为反卷积会在后面进行记录

  • 灰色箭头表示复制和剪切操作.

  • 输出的最后一层,使用了1x1的卷积层做了分类

  • 前半部分也就是图中左边部分的作用是特征提取,后半部分也就是图中的右边部分是上采样,也叫 encoder-deconder结构

训练

采用SGD优化器,动量设置为0.99,使用单张图片训练,使用了加权重的softmax损失函数,使得每个像素有自己的权重,也就是做了w*h个softmax。

请添加图片描述

数据增强

主要使用了旋转平移不变性、弹性形变和dropout。

小结

Unet是一个分割网络,主要提出了两个策略:

第一个是overlap-tile策略,解决了边缘区域没有上下文的问题;

第二个是使用了加权损失以使得网络更加重视边缘像素的学习。

相关文章:

  • 【Linux】指令及权限管理的学习总结
  • 物通博联“5G+IIOT”构建污水处理物联网,助力远程监控智慧管理
  • 【Node.JS】事件的绑定与触发
  • 【微服务】微服务万字实战,带你了解工程原理
  • MySQL面试50题【mysql】
  • 【消息中间件】RocketMQ设计浅析
  • C语言学习完后,C++与Java我应该怎么选择
  • SpringCloud Bus消息总线
  • 图形学-反走样/抗锯齿
  • 2.1.5操作系统之线程概念与多线程模型
  • Spring中的AOP概念介绍使用、AOP相关术语、切入点表达式(面向切面编程上篇)
  • heic图片转换
  • 数据分析 | Pandas 200道练习题,每日10道题,学完必成大神(2)
  • 2017年某高校848数据结构真题复习
  • python正态分布中的normal函数
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • angular学习第一篇-----环境搭建
  • Logstash 参考指南(目录)
  • mysql 数据库四种事务隔离级别
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • opencv python Meanshift 和 Camshift
  • UEditor初始化失败(实例已存在,但视图未渲染出来,单页化)
  • Vue官网教程学习过程中值得记录的一些事情
  • 第十八天-企业应用架构模式-基本模式
  • 关于 Linux 进程的 UID、EUID、GID 和 EGID
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 回流、重绘及其优化
  • 技术发展面试
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 面试总结JavaScript篇
  • 微信支付JSAPI,实测!终极方案
  • 在electron中实现跨域请求,无需更改服务器端设置
  • 智能合约开发环境搭建及Hello World合约
  • ​Python 3 新特性:类型注解
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • # 计算机视觉入门
  • # 数论-逆元
  • #android不同版本废弃api,新api。
  • #Java第九次作业--输入输出流和文件操作
  • #Linux(帮助手册)
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • (02)vite环境变量配置
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (1)安装hadoop之虚拟机准备(配置IP与主机名)
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (九十四)函数和二维数组
  • (强烈推荐)移动端音视频从零到上手(上)
  • (十) 初识 Docker file
  • (转)重识new
  • (转载)虚函数剖析
  • ******之网络***——物理***
  • .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append)
  • .NetCore 如何动态路由