Rongying Liu 课程

Segmentation

Semantic Segmentation 语义分割

定义:对图片的每一个像素进行分类

image-20250303190021532

1.Fully Convolutional

初始想法

  • 只用conv层搭建神经网络(不使用全连接or池化层)
  • 在最后一层,使输出通道数与预测类别相等。
  • 将输出解释为每个类别的得分,用类似softmax对每个像素处理,得到概率分布。
  • 其loss:可以对每个像素使用cross-entropy

image-20250303190608781

问题:

  1. 需要很多层conv,才能让receptive field足够大
  2. 对高分辨率图片,计算量很大

更多使用(改进)

在网络中使用downsampling和upsampling,下采样让receptive field更快扩大

image-20250303192042270

上采样的一些方法

Nearest Neighbor Unpooling

将元素进行复制,填充到该大小的矩阵上去。

image-20250303192558901

Bilinear Interpolation 双插值

比起nearest neighbor,其上采样更加平滑

image-20250303192728813

Bicubic Interpolation 三次插值

也可以用来在神经网络内重新采样or调整特征图大小

image-20250303193023589

Max Unpooling

将pooling层与unpooling层配对;

记住max pooling时取值的位置,在unpooling时放回至原来的位置

image-20250303193234054

Learnable Upsampling: Transposed Convolution

  • 根据input大小和预期output大小,设定filter参数;
  • 滤波器的移动步幅决定了输出特征图的尺寸。例如,步幅为2意味着滤波器在输出特征图上每移动2个像素,输入特征图上移动1个像素。
  • 重叠区域的值会被累加

image-20250303194521307

为什么叫做转置卷积?

因为可以用矩阵的转置运算来表示:

image-20250303195030001

Instance Segmentation 实例分割

定义:检测图片中物体,并识别属于物体的像素

方法:先进行物体检测,再对每个物体进行分割

Mask R-CNN

对每个预测对象,进行实例分割

image-20250303200430950

  • Title:
  • Author: Rongying Liu
  • Created at : 2025-03-03 17:08:48
  • Updated at : 2025-03-03 20:13:22
  • Link: https://github.com/Roinnnn11/Roinnnn11.github.io/2025/03/03/CS231N/16 segmentation/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments