语义分割
语义分割各种模型的训练代码+预测代码。主要框架---pytorch
ZJE_ANDY
这个作者很懒,什么都没留下…
展开
-
pytorch的语义分割------数据增广
官方文档:https://pytorch.org/docs/stable/torchvision/transforms.html?highlight=torchvision%20transforms%20functional#module-torchvision.transforms.functional语义分割的labe与分类问题不同,语义分割的label是一个mask,所以训练图像在做增广...原创 2020-05-05 00:37:50 · 5093 阅读 · 16 评论 -
pytorch用FCN语义分割手提包数据集(训练+预测单张输入图片代码)
一,手提包数据集数据集下载:用pytorch写FCN进行手提包的语义分割。training data(https://github.com/yunlongdong/FCN-pytorch-easiest/tree/master/last),放到bag_data文件夹下ground-truth label(https://github.com/yunlongdong/FCN-pytorch...原创 2019-06-17 11:45:19 · 12803 阅读 · 52 评论 -
[pytorch]医学图像语义分割UNET和UNET变体代码(包含多个数据集)
一,UNETUNET可以称为医学图像语义分割的基石,而且经常作为baseline与其他模型对比。一般的器官分割,只要是正正常常,边界比较明显的,没什么特殊情况的,一般UNET就能做得很好。UNET结构如下:UNET特点:1.UNET结构和FCN十分相似,但是两者之间区分很大的一个地方就是,跳接(skip connection)处UNET是使用连接方式,即UNET采用将特征在ch...原创 2020-02-13 10:43:12 · 12661 阅读 · 24 评论 -
[pytorch]医学图像之肝脏语义分割(训练+预测代码)
一,Unet结构:结合上图的Unet结构,pytorch的unet代码如下:unet.py:import torch.nn as nnimport torchfrom torch import autogradclass DoubleConv(nn.Module): def __init__(self, in_ch, out_ch): super...原创 2019-11-10 19:43:29 · 15393 阅读 · 85 评论 -
pytorch 利用FPN(特征金字塔网络)进行语义分割(训练代码+预测代码)
一,FPN特征金字塔网络FPN的网络结构如下:图片输入后会进行卷积操作,其实蓝色线条表示语义强度,线条越粗,语义越强。右方的连接结构如虚线框所示:上面的特征图经过2倍上采样后,和左方对应的特征图经过1x1的卷积降维后,加在一起就成了右方的下一个特征图了。FPN的优点:如上图所示,我们可以看到我们的图像中存在不同尺寸的目标,而不同的目标具有不同的特征,利用浅层的特征就...原创 2019-08-26 17:53:18 · 12789 阅读 · 17 评论 -
pytorch 实现语义分割FCN网络(训练代码+预测代码)
一,FCN网络FCN大致上就是下图这个结构:原图通过“编码器网络”把图片越缩越小,然后再通过“解码器网络”把图片再进行逐步放大。得到就结果就是一个个不同颜色的颜色块(称之为掩码),每一种颜色代表不同的类别。FCN中一个很重要的部分---反卷积图片通过卷积层降低分辨率,提取特征,而反卷积则是把图片重新放大的一个结构。在语义分割中,必须对反卷积的反卷积核进行参数初始化(这点...原创 2019-08-11 15:38:00 · 28617 阅读 · 42 评论 -
[pytorch] 语义分割之(PAN网络模型)Pyramid Attention Network for Semantic Segmentation(训练代码+预测代码)
出处:2018年CVPR0.论文的启发:上述网络是PSPNet里使用的空间金字塔池化模型,但使用池化操作会有空间信息上的损失。而DeepLab使用空洞卷积会存在缺少局部信息和”griding”(卷积核退化)现象。因此作者并不使用空间金字塔池化和空洞卷积。然后作者受parseNet的影响:parseNet是额外使用一支分支来全局池化(下图粉色部分),把它作为全局特征,在特征...原创 2019-09-03 21:17:47 · 10367 阅读 · 2 评论 -
[pytorch]语义分割之DANet: Dual Attention Network for Scene Segmentation(训练代码+预测代码)
一,DANet(双注意力模型)网络结构:网络有两个注意力分支,一个是位置注意力模型(PAM),另一个是通道注意力模型(CAM):位置注意力模型(PAM):A是通过Resnet网络提起的特征图,维度是CxHxW。把A送入一个卷积层,得到特征图B和C,B和C的维度也是CxHxW。然后把B和C的维度reshape成CxN,(N=HxW)即N是特征图的像素个数。然后再把B进行矩阵转...原创 2019-09-08 11:14:50 · 5840 阅读 · 4 评论 -
[pytorch] 试验--用CBAM注意力模块进行语义分割
CBAM是IEEE 2018的一篇文章Convolutional Block Attention Module (CBAM) 表示卷积模块的注意力机制模块。是一种结合了空间(spatial)和通道(channel)的注意力机制模块。相比于senet只关注通道(channel)的注意力机制可以取得更好的效果。CBAM的结构如下:通道注意力决定了网络“lookwhat”,因为每个通道...原创 2019-09-16 12:24:21 · 5318 阅读 · 14 评论