BiSeNet V2:Bilateral Network with Guided Aggregation for Real-Time Semantic Segmentation

BiSeNet的升级版,相比较BiSeNet,BiSeNetv2精度和速度均有大幅度提升

什么是 BiSeNetv2?

  • BiSeNetv2-20230408142110
  • BiSeNet的升级版,相比较BiSeNet,BiSeNetv2精度和速度均有大幅度提升
  • Dilation Backbone:去掉了下采样和上采样 (因为会损失信息),而改为用步长大于1的卷积代替,同时不断加大通道数来维持高像素特征表示
  • Encoder-Decoder:使用从上到下和跳跃连结的方式 (通常用下采样和上采样, 然后上采样后用对称的 Encoder 层中的特征图来补充损失的信息)
  • BiSeNetv2 通过分开处理细节分支 (Detail Branch)、语义分支 (Semantic Branch),即保留细节也获得语义信息,包含前两者的优点

BiSeNetv2 的网络结构?

  • BiSeNetv2-20230408142110-1
  • Detail Branch:低层信息和高层语义对语义分割同样重要,然而两种信息对模型结构的要求不太一样。低层信息往往存在于网络的早期阶段,需要较高的分辨率和较大的通道数
  • Semantic Branch:高层语义信息一般存在于网络后期阶段,分辨率较低,需要较深的层级来提取抽象信息
  • Aggregation Layer:融合 Detail Branch 和 Semantic Branch 分支的特征
  • Seg Head:对 Aggregation Layer 的输出直接上采样

BiSeNetv2 的 Semantic Branch 的设计?

  • BiSeNetv2-20230408142111
  • BiSeNetv2-20230408142111-1
  • Stem Block:用于快速下采样
  • Gather-and-Expansion Layer(GE Layer):用于卷积获取细节信息
  • Context Embedding Block(CE Layer):用于嵌入上下文信息

BiSeNetv2 的 Aggregation Layer 的实现?

  • BiSeNetv2-20230408142112
  • 该层利用语义分支的上下文信息来指导细节分支的特征响应。通过不同的尺度指导,可以捕获不同的尺度特征表示。同时,与简单的组合方式相比,这种引导方式可以使两个分支之间进行有效的通信
  • Aggregation Layer 的加入,相比较直接的 sum 或者 concate,其精度更高, BGA 即 Bilateral Guided Aggregation Layer BiSeNetv2-20230408142112-1