备:最近开始学习语义分割,通过学习具体模型(FCN)来了解图像分割,写一篇简单总结一下最近学到的名词,和对FCN的总结,只是做了简单总结,没有涉及很深层面的知识。
图像分割总结:
图像分割分为:
语义分割
实例分割
全景分割
学习一个部分,我们要了解评价指标:
语义分割常用的指标:PA 、MPA 、IoU 、MIoU
研究意义:
地理信息系统:遥感图像分割之类的
无人车驾驶:最近很火的领域,道路图像分割,实时性很重要。
医疗影像分析:医疗图像分割,使病例分析更客观。
机器人:机器人视觉。
还有相关数据集,数据集与深度学习不可分割:
一下提供以些图像分割常用的数据集:
https://github.com/shelhamer/fcn.berkeleyvision.org
(10 封私信 / 54 条消息) 研一学生,准备做有关医学图像分割的内容,想请教一下大家,创新点都有从哪些方面研究,谢谢大家了!? - 知乎 (zhihu.com)
深度学习 遥感影像数据集汇总 - 飞桨AI Studio星河社区 (baidu.com)
名词总结:
在读FCN论文和学习语义分割的时候,遇见的一些名词:
上采样:
跳跃结构:
双线性插值:
反卷积:
特征融合:(张量的拼接):【深度学习】特征融合的重要方法 | 张量的拼接 | torch.cat()函数 | torch.add(函数-CSDN博客
全卷积:
大部分名词都可以搜到。这里就简单提供两篇
上采样方法综述:线性插值,转置卷积,上池化_carafe上采样_Hali_Botebie的博客-CSDN博客
FCN+与CNN的区别+三大技术+网络结构 - 知乎 (zhihu.com)
FCN学习总结:
论文学习:
代码学习:
FCN将当代分类网络(AlexNet、VGG、GooLeNet)改变为全卷积网络,个人理解原本的网络有卷积层和全连接层,全卷积网络将全连接层也改为卷积层, 这里提供一篇文章提到了全连接层到卷积层的转换 全卷积网络 FCN 详解 - 知乎 (zhihu.com)
说完 全卷积,然后就是上采样,上采样大致有三种方法
1、基于线性插值的上采样
2、基于深度学习的上采样(转置卷积)
3、Unpooling的方法 (上池化)
上采样方法综述:线性插值,转置卷积,上池化_carafe上采样_Hali_Botebie的博客-CSDN博客
ConvTranspose2d怎么用 :
ConvTranspose2d(转置卷积)是一种用于上采样的操作,它可以通过学习权重来实现上采样。然而,在某些情况下,使用双线性插值来初始化ConvTranspose2d的权重可以提供更好的性能,特别是在语义分割等任务中。
双线性插值是一种常用的上采样方法,它可以将图像的像素值从低分辨率插值到高分辨率。这种初始化方法的主要优势在于:
-
更好的初始值: ConvTranspose2d层通常使用反卷积核进行上采样,但是如果这些核的初始值不合适,可能会导致训练过程中的梯度消失或爆炸等问题。使用双线性插值初始化可以提供更好的初始值,有助于加速模型的收敛。
-
平滑性: 双线性插值会在上采样时平滑图像,这可以有助于减小上采样后图像的块状伪影或锯齿状边缘。这在图像分割等任务中有助于获得更平滑的输出。
-
保持信息: 双线性插值是一种线性插值方法,它会保持输入图像的信息。在某些情况下,这对于任务的性能非常重要,因为不会引入额外的非线性变换。
虽然ConvTranspose2d本身可以学习上采样核的权重,但使用双线性插值初始化是一种合理的策略,它可以在训练的早期阶段提供更好的初始条件,加速模型的收敛并提高模型性能。在实际应用中,通常可以尝试不同的初始化策略,包括使用双线性插值,以找到最适合特定任务的方法。
【精选】PyTorch 中的转置卷积 ConvTranspose2d-CSDN博客