SegNet学习笔记

SegNet学习笔记

  • 语义分割
  • 网络模型
    • 编码器
    • 解码器
  • 总结

语义分割

语义分割的目的是对图像中每一个像素点进行分类,与普通的分类任务只输出某个类别不同,语义分割任务输出是与输入图像大小相同的图像,输出图像的每个像素对应了输入图像每个像素的类别。

SegNet学习笔记_第1张图片
图像语义分割就是机器自动分割并识别出图像中的内容,比如给出一个人骑摩托车的照片,机器判断后应当能够生成右侧图,红色标注为人,绿色是车,黑色表示背景。

网络模型

SegNet学习笔记_第2张图片
SegNet 其核心的训练引擎包含一个Encoder网络(采用VGG16,移除全连接层 ,和FCN一样),和一个对称的Decoder网络,即编码器-解码器结构,并跟随一个用于pixel-wise的分类层

编码器

  • 在编码器处,执行卷积和最大池化。

  • VGG16 有 13 个卷积层,将原始的全连接层被替换成解码器。

  • 在每个卷积层后添加BatchNormalization层。

  • 在进行 2×2 最大池化时,会存储相应的最大池化索引(位置),用于解码器的反池化操作。

    解码网络中复用max-pooling indics的好处:

  • 改善了边界划分

  • 减少了端到端训练的参数量

  • 仅需要少量的修改而可合并到任何编码-解码形式的架构

解码器

SegNet学习笔记_第3张图片
在解码器中主要是用到了编码器中存储的max_pooling的indicate的一些坐标,这样可以不需要通过计算就恢复出来一个尺寸更大的输入图。相对于转置卷积会减少很多的计算量。

总结

在CamVid(室外)上与传统方法相比:
SegNet学习笔记_第4张图片
可以通过图像对比发现SegNet在很多种类上都是处于领先的正确率的水平。

在CamVid上与其他深层网络对比:
SegNet学习笔记_第5张图片
在SUN RGB-D(场景理解)上与其他深层网络相比:SegNet学习笔记_第6张图片
模型时间和推断时间进行对比:
在这里插入图片描述

你可能感兴趣的:(摆烂生活,SegNet)