IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 我对SegNet的理解 -> 正文阅读

[人工智能]我对SegNet的理解

一、概述

SegNet是Cambridge提出旨在解决自动驾驶或者智能机器人的图像语义分割深度网络,开放源码,基于caffe框架。SegNet基于FCN,修改VGG-16网络得到的语义分割网络,有两种版本的SegNet,分别为SegNetBayesian SegNet,同时SegNet作者根据网络的深度提供了一个basic版(浅网络)

在这里插入图片描述

二、架构

1.架构介绍
  • SegNet和FCN思路十分相似,只是Encoder,Decoder使用的技术不一致;

  • SegNet的编码器部分使用的是VGG16的前13层卷积网络;

  • 每个编码器层都对应一个解码器层;

  • 最终解码器的输出被送入softmax分类器以独立的为每个像素产生类概率;
    在这里插入图片描述

  • 左边是卷积提取特征,通过pooling增大感受野,同时图片变小,该过程称为Encoder

  • 右边是反卷积(在这里反卷积与卷积没有区别)与upsampling,通过反卷积使得图像分类后特征得以重现,upsampling还原到图像原始尺寸,该过程称为Decoder

    • 绿色的pooling与红色的upsampling通过max-pooling indices(最大池化索引)相连;
  • 最后通过Softmax,输出不同分类的最大值,得到最终分割图。

2.Encoder
  • 卷积层+批归一化层+RELU组成,然后是最大池化;

  • SegNet使用的卷积为same卷积,即卷积后保持图像原始尺寸;

3.Decoder——Pooling & Upsampling
  • 在Decoder过程中,使用same卷积,作用是为upsampling变大的图像丰富信息,使得在Pooling过程丢失的信息可以通过学习在Decoder得到;

  • Upsamping就是Pooling的逆过程(index在Upsampling过程中发挥作用)

在这里插入图片描述

  • 在SegNet中的Pooling与其他Pooling多了一个index功能(该文章亮点之一),也就是每次Pooling,都会保存通过max选出的权值在2x2 filter中的相对位置;

在这里插入图片描述

  • SegNet上采样不需要训练学习(只是占用了一些存储空间);

  • FCN则是用transposed convolution策略,即将feature 反卷积后得到upsampling,这一过程需要学习;

  • max-pooling indics advantage:

    • 改进了边界划分
    • 减少了实现端到端训练的参数数量
    • 这种upsampling模式可以包含到任何编码-解码网络中
  • 在upsampling中:稀疏特征图 -> 多次卷积 -> 密集特征图;

  • SegNet中的卷积与传统CNN的卷积并没有区别;

4.Bayesian SegNet

A. 先验概率:(概率论:由原因推结果)

在SegNet中最后每个像素都会对每一类的概率进行计算,再通过 softmax 输出概率最大的一个,然后这个像素点就认为是这一类别,对应的概率就是这一像素属于该类的概率。

B. 先验概率的缺点:

  • 对于不同的样本,先验概率无法保证一定正确;
  • 需要后验概率(概率论:Bayes公式 由结果推原因),它能给出结果的可信程度,即置信度

C. Different:

网络:与普通比,Bayesian SegNet只是在卷积层中多加了一层DropOut

在这里插入图片描述

D. DropOut:

————————————————

补课:

  • 在传统神经网络中DropOut层的主要作用是防止权值过度拟合,增强学习能力;
  • 输入经过DropOut层之后,随机使部分神经元不工作(权值为0),即只激活部分神经元,结果是这次迭代的向前和向后传播只有部分权值得到学习;
  • DropOut层服从二项分布,结果不是0,就是1;

————————————————

  • Bayesian SegNet中,SegNet作者把概率设置为0.5,即每次只有一半的神经元在工作;
  • Bayesian SegNet中通过DropOut层实现多次采样,多次采样的样本值为最后输出,方差为其不确定度,方差越大不确定度越大;

E. Bayesian SegNet的用处:

  1. 对于分类的边界位置,不确定性较大,即其置信度较低;
  2. 对于图像语义分割错误的地方,置信度也较低;
  3. 对于难以区分的类别,例如人与自行车,road与pavement,两者如果有相互重叠,不确定度会增加。

三、一些结果

新的评价指标BF指标:边界F1测量

尝试了两个数据集:

  1. 用于道路场景分割的CamVid数据集;
  2. 一个是用于室内场景分割的SUN RGB-D数据集;
1.用于道路场景分割的CamVid数据集

道路场景分割的CamVid数据集上,与传统方法相互比较:
在这里插入图片描述
如上所示,SegNet在多类分割问题上获得了非常好的结果。它也获得了最高级别的类平均值和全局平均值。

道路场景分割的CamVid数据集上,与深度学习方法相比较:
在这里插入图片描述
获得最高的全局平均准确度(G),类别平均准确度(C),mIOU和边界F1测量(BF)。它的结果优于FCN,DeepLabv1和DeconvNet。

定性结果:
在这里插入图片描述

2.用于室内场景分割的SUN RGB-D数据集

在室内场景分割的SUN RGB-D数据集,与深度学习方法比较:
在这里插入图片描述

同样,SegNet优于FCN,DeconvNet和DeepLabv1;
对于mIOU指标,SegNet只比DeepLabv1略差一些;

不同类的类平均准确度:
在这里插入图片描述
大尺寸目标的准确度更高;
小尺寸目标的准确度较低;

定性分析结果:

在这里插入图片描述

3.内存和推断时间

在这里插入图片描述

SegNet比FCN慢,因为SegNet包含解码器架构;

SegNet在训练和测试期间的内存要求都很低,并且模型尺寸比FCN小得多;

Reference

  1. 论文翻译
  2. 【语义分割】–SegNet理解
  3. 卷积神经网络CNN(4)—— SegNet
  4. 【语义分割系列:二】SegNet 论文阅读翻译笔记
  5. 一文带你读懂 SegNet(语义分割)
  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-07-20 18:51:12  更:2022-07-20 18:53:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 0:45:17-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码