自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ZJE

原创 labelme制作语义分割数据集改变掩码(mask)的颜色

labelme的安装和启动使用,如下链接:https://blog.csdn.net/zong596568821xp/article/details/83375227 labelme是通过anaconda虚拟环境运行的,那么我们在修改labelme时,自然就要找到labelme所在的目录,修改l...

2020-02-13 17:09:51

阅读数 21

评论数 0

原创 [pytorch]医学图像语义分割UNET和UNET变体代码(包含多个数据集)

一,UNET UNET可以称为医学图像语义分割的基石,而且经常作为baseline与其他模型对比。一般的器官分割,只要是正正常常,边界比较明显的,没什么特殊情况的,一般UNET就能做得很好。 UNET结构如下: UNET特点: 1.UNET结构和FCN十分相似,但是两者之间区分很大的一...

2020-02-13 10:43:12

阅读数 74

评论数 0

原创 pytorch--深度学习神经网络中可视化工具Visdom的使用

0.使用visdom服务 先用 python -m visdom.server命令打开visdom服务。 然后登录网页 http://localhost:8097 ,就能够进入到visdom服务中。 1.展示图片 单张图片: import cv2 import visdom vis...

2020-01-16 15:52:40

阅读数 26

评论数 0

原创 leetcode题----寻找字符串中无重复字符串的最长字串----滑动窗口法

寻找字符串中最大的无重复字符串长度: 思路: 这道题主要用到思路是:滑动窗口 什么是滑动窗口? 其实就是一个队列,比如字符串中的 abcabcbb,进入这个队列(窗口)为 abc 满足题目要求,当再进入 a,队列变成了 abca,这时候不满足要求。所以,我们要移动这个队列! 如何移动?...

2019-12-18 15:13:48

阅读数 21

评论数 0

原创 leetcode题---链表中的两数相加

解题思路一:最简单的,就是把两组组合成数字,再运用相加相加,再分拆各个数位上的数字。但这样做耗时太大 解题思路二: 先把两个数字个位数拿出来(例如题中的2和5),判断有没有进位(即是否大于9),若有进位,则carry=进位数 否则为0。然后当两个数字的十位上的数字相加时,还得把carry加上,...

2019-12-13 14:47:48

阅读数 18

评论数 0

原创 python3 数据结构----链表

python使用链表 单链表: import gc #垃圾回收 class ListNode: #结点类 def __init__(self, x): self.val = x self.next = None class LinkedLi...

2019-12-13 11:23:45

阅读数 15

评论数 0

原创 [pytorch]医学图像之肝脏语义分割(训练+预测代码)

一,Unet结构: 结合上图的Unet结构,pytorch的unet代码如下: unet.py: import torch.nn as nn import torch from torch import autograd class DoubleConv(nn.Module): ...

2019-11-10 19:43:29

阅读数 275

评论数 1

原创 ssd(Single Shot MultiBox Detector)代码之(五) 训练自己的数据集

原始代码来源:https://github.com/amdegroot/ssd.pytorch 我修改后的代码:https://github.com/Andy-zhujunwen/ssd-use-your-own-dataset- 实验气球数据集:https://pan.baidu.com/s...

2019-10-21 17:31:32

阅读数 1059

评论数 0

原创 ssd(Single Shot MultiBox Detector)代码解读之(四) 非极大值抑制(nms)解读

首先简单介绍一下nms: 简介: nms是用于消除框的,例如下图,一个目标中有多个候选框的时候,nms就可以把候选框删剩下一个: 注意:nms是消除表示同一类别的框的。 得到: 步骤: 那么nms的步骤为: (1)将所有框的得分排序,选中最高分及其对应的框 (2)遍历其余的...

2019-10-21 08:28:39

阅读数 30

评论数 0

原创 ssd(Single Shot MultiBox Detector)代码解读之(三)multibox loss损失函数

multiboxloss是SSD的损失函数 跟交叉熵那些官方给出接口的损失函数不同。multiboxloss需要自己定义的。 建议:边看代码边看此博客。 代码来源:https://github.com/amdegroot/ssd.pytorch multiboxloss的流程: 1.获取...

2019-10-21 02:59:26

阅读数 240

评论数 0

原创 ssd(Single Shot MultiBox Detector)代码解读之(二)default box

要是对SSD暂时没上面了解的,可以先看看下面的链接文章: SSD网络解读 defaultbox部分: 画defaultbox框的原则是在六个特征图上的每个像素点都画4或6个框。所以只需要知道6个特征图大小就能得到8732个特征图的归一化信息。 首先先看一部分pytorch的代码: ...

2019-10-18 11:43:15

阅读数 48

评论数 0

原创 ssd(Single Shot MultiBox Detector)解读之(一)原理解析

代码来源:https://github.com/amdegroot/ssd.pytorch SSD简介: ssd有ssd300和ssd512,一般我们都是用ssd300,意思是输入SSD网络的图片的尺寸是300x300的。 (一)SSD的网络结构: SSD的网络结构绝不是简单的VGG16网...

2019-10-17 22:31:39

阅读数 109

评论数 1

原创 pytorch中VGG网络的源码解读

一,简单介绍VGG网络 VGG网络是由多个卷积神经网络堆叠而成的分类网络。分为几类:VGG11,VGG13,VGG16,VGG19。结构如下图: VGG11,13,16,19这些数字表示VGG网络中的卷积层+全连接层的个数。 同样从上图我们也可以看到,每个VGG都有5个卷积block,其...

2019-09-19 17:11:45

阅读数 278

评论数 0

原创 [pytorch] 试验--用CBAM注意力模块进行语义分割

CBAM是IEEE 2018的一篇文章 Convolutional Block Attention Module (CBAM) 表示卷积模块的注意力机制模块。是一种结合了空间(spatial)和通道(channel)的注意力机制模块。相比于senet只关注通道(channel)的注意力机制可以取...

2019-09-16 12:24:21

阅读数 308

评论数 3

原创 [pytorch]语义分割之DANet: Dual Attention Network for Scene Segmentation(训练代码+预测代码)

一,DANet(双注意力模型) 网络结构: 网络有两个注意力分支,一个是位置注意力模型(PAM),另一个是通道注意力模型(CAM): 位置注意力模型(PAM): A是通过Resnet网络提起的特征图,维度是CxHxW。把A送入一个卷积层,得到特征图B和C,B和C的维度也是CxHxW...

2019-09-08 11:14:50

阅读数 446

评论数 1

原创 [pytorch] 语义分割之(PAN网络模型)Pyramid Attention Network for Semantic Segmentation(训练代码+预测代码)

出处:2018年CVPR 0.论文的启发: 上述网络是PSPNet里使用的空间金字塔池化模型,但使用池化操作会有空间信息上的损失。而DeepLab使用空洞卷积会存在缺少局部信息和”griding”(卷积核退化)现象。因此作者并不使用空间金字塔池化和空洞卷积。 然后作者受parseNe...

2019-09-03 21:17:47

阅读数 323

评论数 0

原创 pytorch 利用FPN(特征金字塔网络)进行语义分割(训练代码+预测代码)

一,FPN特征金字塔网络 FPN的网络结构如下: 图片输入后会进行卷积操作,其实蓝色线条表示语义强度,线条越粗,语义越强。 右方的连接结构如虚线框所示:上面的特征图经过2倍上采样后,和左方对应的特征图经过1x1的卷积降维后,加在一起就成了右方的下一个特征图了。 FPN的优点: ...

2019-08-26 17:53:18

阅读数 219

评论数 5

原创 pytorch 实现语义分割FCN网络(训练代码+预测代码)

一,FCN网络 FCN大致上就是下图这个结构: 原图通过“编码器网络”把图片越缩越小,然后再通过“解码器网络”把图片再进行逐步放大。得到就结果就是一个个不同颜色的颜色块(称之为掩码),每一种颜色代表不同的类别。 FCN中一个很重要的部分---反卷积 图片通过卷积层降低分辨率,提取特...

2019-08-11 15:38:00

阅读数 768

评论数 16

原创 详细解读行人重识别的k-reciprocal Encoding(k个相互近邻编码方法) re-ranking方法及其实现代码解读

建议读者手中有re-ranking的代码,或者看过某个行人充实别的代码。 一,re-ranking大致流程: re-ranking是一个图像检索问题,给定一个probe,要从图片集gallery中找出与它相似的图片。如: 既然是检索问题,那么ranking前得到的ranking lis...

2019-08-09 22:43:29

阅读数 566

评论数 2

原创 余弦距离,欧式距离,马氏距离之间的关系

欧式距离: 马氏距离: S为协方差矩阵,当样本集合的协方差矩阵是单位矩阵时,即样本的各个维度上的方差均为1.马氏距离就等于欧式距离相等。 余弦距离: 一,余弦距离和欧式距离: 两个向量间的余弦值可以通过使用欧几里得点积公式求出: 从三维图可以看出: 虚线为欧式距离:欧...

2019-08-07 08:27:19

阅读数 182

评论数 0

原创 keras 利用vgg16处理kaggle的猫狗大战二分类问题

一,kaggle的猫狗打大战数据集 Kaggle猫狗大战的数据集下载链接:https://www.kaggle.com/c/dogs-vs-cats 二,vgg网络 vgg是拥有比较深层数的cnn网络(当然比不上resnet),其中vgg按照层数的不同分为了vgg11,vgg13,vgg...

2019-07-30 16:42:40

阅读数 363

评论数 0

原创 keras 识别mnist手写体(用CNN之lenet网络)

一,lenet lenet是CNN的开山鼻祖,可以说是第一个实现CNN的网络:(lenet网络结构如下:) 二,mnist手写体数据集 形如上图的数字手写体就是mnist数据集。尺寸大写都是28x28,都是灰度图,所以通道数都为1。 三,keras训练代码: import n...

2019-07-29 21:41:27

阅读数 188

评论数 0

原创 pytorch中残差网络resnet的源码解读

pytorch的resnet模块在torchvision的models中。 里面可以选择的resnet类型有: _all_列表的每一个resnet都提供了实现的函数: def resnet18(pretrained=False, progress=True, **kwargs): ...

2019-07-24 16:30:11

阅读数 1178

评论数 3

翻译 tensorflow kaggle猫狗大战识别猫狗

一,Kaggle猫狗大战数据集: 下载地址:https://www.kaggle.com/c/dogs-vs-cats 下载解压后会有两个文件目录,一个测试数据,一个训练数据: 训练数据: 二,训练代码: 第一部分:读取数据: from PIL import Image im...

2019-07-22 19:27:21

阅读数 341

评论数 0

原创 tensorflow 处理mnist手写体数据集(训练+预测代码)

一,tensorflow提供了自动下载mnist数据集的接口,若下载不了,请尝试翻墙后再试,或者从其他网站下载。 二,训练代码: import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_da...

2019-07-15 18:08:45

阅读数 338

评论数 0

原创 修改pytorch提供的resnet接口实现Kaggle猫狗识别

一,数据集 Kaggle猫狗大战的数据集下载链接:https://www.kaggle.com/c/dogs-vs-cats-redux-kernels-edition 二,导入resnet(以resnet18为例) from torchvision.models.resnet imp...

2019-07-10 15:17:29

阅读数 700

评论数 6

原创 pytorch GAN伪造手写体mnist数据集

一,mnist数据集 形如上图的数字手写体就是mnist数据集。 二,GAN原理(生成对抗网络) GAN网络一共由两部分组成:一个是伪造器(Generator,简称G),一个是判别器(Discrimniator,简称D) 一开始,G由服从某几个分布(如高斯分布)的噪音组成,生成的图...

2019-07-08 10:36:16

阅读数 328

评论数 0

原创 pytorch简单孪生网络识别脸部

一,孪生网络结构: input1和input2都输入到两个一模一样的姊妹网络中,输出的结果,再通过对比损失函数(Contrastive Loss)中。得到差异值。下面的代码是用cnn作为一个简单姊妹网络。 Contrastive Loss损失函数: 二,数据集 用AT&T面...

2019-07-02 15:39:43

阅读数 530

评论数 6

原创 python用matploblib库画准确率、损失率折线图

import matplotlib.pyplot as plt epochs = [0,1,2,3] acc = [4,8,6,5] loss = [3,2,1,4] plt.plot(epochs,acc,color='r',label='acc') ...

2019-06-26 21:45:32

阅读数 833

评论数 0

原创 图像领域img[:,:,::-1]的理解

先开门见山,img[:,:,::-1]的作用就是实现RGB到BGR通道的转换 (若图片一开始就是BGR的,就是实现从BGR到RGB的转换)。 对于列表img进行img[:,:,::-1]的作用是列表数组左右翻转,例如: import numpy as np a = np.arange(...

2019-06-26 14:59:34

阅读数 1748

评论数 2

原创 语义分割数据集label的读取

例如这次用得是cityscapes数据集。 第一步首先要找到数据集label颜色对应类别的列表:(这个一般在官网或者是github上会有,cityscapes我就是从github上找的) Label = namedtuple('Label', [ ...

2019-06-23 12:56:27

阅读数 866

评论数 0

原创 pytorch用FCN语义分割手提包数据集(训练+预测单张输入图片代码)

一,手提包数据集 数据集下载:用pytorch写FCN进行手提包的语义分割。 training data(https://github.com/yunlongdong/FCN-pytorch-easiest/tree/master/last),放到bag_data文件夹下 ground-tru...

2019-06-17 11:45:19

阅读数 2198

评论数 35

原创 pytorch用VGG11识别Kaggle的猫狗大战数据集(训练+预测单张输入图片代码)

Kaggle猫狗大战的数据集下载链接:https://www.kaggle.com/c/dogs-vs-cats-redux-kernels-edition 这是VGG的结构,红色框的则是VGG11。 一,写VGG代码时,首先定义一个vgg_block(n,in,out)方法,用来构建VG...

2019-06-12 17:03:58

阅读数 1268

评论数 0

原创 pytorch用VGG11识别cifar10数据集(训练+预测单张输入图片代码)

首先这是VGG的结构图,VGG11则是红色框里的结构,共分五个block,如红框中的VGG11第一个block就是一个conv3-64卷积层: 一,写VGG代码时,首先定义一个vgg_block(n,in,out)方法,用来构建VGG中每个block中的卷积核和池化层: n是这个blo...

2019-06-11 14:17:26

阅读数 1191

评论数 6

原创 pytorch用LeNet5识别cifar10数据集(训练+预测单张输入图片代码)

先找到LeNet5的模型结构 训练代码: import torch import torch.nn as nn import torch.nn.functional as F from torch.autograd import Variable import torch import t...

2019-06-04 15:59:49

阅读数 724

评论数 3

原创 pytorch用LeNet5识别Mnist手写体数据集(训练+预测单张输入图片代码)

首先,在论文上的LeNet5的结构如下,由于论文的数据集是32x32的,mnist数据集是28x28的,所有只有INPUT变了,其余地方会严格按照LeNet5的结构编写程序: 训练代码: import torch import torch.nn as nn import torch.nn...

2019-05-30 23:07:48

阅读数 1221

评论数 2

原创 mnist手写体数据集里的标准化参数transforms.Normalize((0.1307,), (0.3081,))

很多人在处理mnist数据集时,看别人的代码都会看到这么一串数字: 其中,0.1307和0.3081是mnist数据集的均值和标准差,因为mnist数据值都是灰度图,所以图像的通道数只有一个,因此均值和标准差各一个。要是imagenet数据集的话,由于它的图像都是RGB图像,因此他们的均值和...

2019-05-30 17:23:26

阅读数 1855

评论数 1

原创 SE-NET效果测试

一,resnet-18 + se-net(数据集cifar-10) resnet-18的网络结构: 如下图,在每个Residual block中,引入SE-net : 数据集:cifar-10, 学习率0.1 跑了45个epochs之后,cifar-10测试集的精度对比: (r...

2019-05-09 17:23:38

阅读数 394

评论数 0

原创 使用Keras画神经网络准确性图

1.在搭建网络开始时,会调用到 keras.models的Sequential()方法,返回一个model参数表示模型 2.model参数里面有个fit()方法,用于把训练集传进网络。fit()返回一个参数,该参数包含训练集和验证集的准确性acc和错误值loss,用这些数据画成图表即可。 ...

2019-04-12 15:20:26

阅读数 636

评论数 0

原创 卷积神经网络的特征图可视化

原图: Keras代码: from keras.models import Sequential from keras.layers.convolutional import Convolution2D,MaxPooling2D,AveragePooling2D from keras....

2019-04-11 15:50:49

阅读数 699

评论数 7

提示
确定要删除当前文章?
取消 删除