- 博客(274)
- 资源 (17)
- 收藏
- 关注
原创 计算机视觉知识点之RCNN/Fast RCNN/Faster RCNN
Rcnn第一步:输入图像,采用Selective Search 从原始图片中提取2000个左右区域候选框第二步:划分区域提案,进行归一化:将所有候选框变为固定大小的(227*227)区域,对每个候选区域,使用深度网络提取特征第三步:CNN网络提取特征 送入每一类的SVM分类器,判别是否属于该类第四步:NMS(非极大值抑制)区域边框,采用DPM精修边框的位置先模型输入为一张图片,然后在图片上提出了约2000个待检测区域,然后这2000个待检测区域一个一个地(串联方式)通过卷积...
2020-09-17 16:46:04
1955
原创 计算机视觉知识点之COCO数据集和pytorch
COCO数据集方面:COCO数据集现在有3种标注类型:1, object instances(目标实例), 2, object keypoints(目标上的关键点), 3, image captions(看图说话)使用JSON文件存储。每种类型又包含了训练和验证,所以共6个JSON文件。Object Instance 类型的标注格式1,整体JSON文件格式数据集中的instances_train2017.json、instances_val2017.json这两个文件就.
2020-09-17 16:36:21
1743
原创 《机器学习》实战之分类
1.k-means优点:精度高,对异常值不敏感,无数据输入假定缺点:计算复杂度高,空间复杂度高适用范围:数值型和标称型最近的邻居输入:inX:与现有数据集进行比较的向量(1xN)数据集:大小m已知向量的数据集(NxM)标签:数据集标签(1xM向量)k:用于比较的邻居的数量(应该是奇数)输出:最流行的类标签创建数据集和标签:def createDataSet(): group = array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]])...
2020-09-17 13:19:17
631
原创 智能数字图像处理:图卷积SGN代码(pytorch)之main.py解读
1.os.environ["CUDA_VISIBLE_DEVICES"] = '0'->目的:使用CUDA环境变量CUDA_VISIBLE_DEVICES来限定CUDA程序所能使用的GPU设备.2.parser = argparse.ArgumentParser(description='Skeleton-Based Action Recgnition')-》创建解析器,使用 argparse 的第一步是创建一个 ArgumentParser 对象。fit.add_fit_args(parser
2020-09-15 15:51:40
2847
1
原创 智能数字图像处理:图卷积SGN代码(pytorch)之fit.py和util.py解读
fit.py作用:解析器:argparse.ArgumentParser返回一个添加了fit所需参数的解析器args = parser.add_argument_group('Training', 'model training')-》对命令行参数进行概念型分组。 args.add_argument('--network', type=str, help='the neural network to use')-》用于命令项选项与参数解析的模块...
2020-09-15 14:00:31
679
原创 智能数字图像处理:图卷积SGN代码(pytorch)之data.py解读
解读NTUDataset类:定义3个方法:初始化方法,求长度方法,求x,y索引def __init__(self, x, y): self.x = x self.y = np.array(y, dtype='int') def __len__(self): return len(self.y) def __getitem__(self, index): return [self.x[index], int(self....
2020-09-13 18:30:35
1246
1
原创 智能数字图像处理:图卷积SGN代码(pytorch)之model.py解读
1.self.dim1 = 256 self.dataset = dataset self.seg = seg num_joint = 25-》关节数为252.if args.train: self.spa = self.one_hot(bs, num_joint, self.seg)-》独热编码 self.spa = self.spa.permute(0, 3, 2, 1).cuda()-》转置 ...
2020-09-13 17:51:09
2382
1
原创 智能数字图像处理:图卷积SGN代码(pytorch)之get_raw_denoised_data.py解读
1.root_path = './'raw_data_file = osp.join(root_path, 'raw_data', 'raw_skes_data.pkl')save_path = osp.join(root_path, 'denoised_data')-》载入上一个文件处理后的.pkl文件路径2.if not osp.exists(save_path): os.mkdir(save_path)-》如果保存路径不存在则创建此路径3.rgb_ske_path = osp.jo..
2020-09-13 16:18:27
1212
原创 智能数字图像处理:图卷积SGN代码(pytorch)之seq_transformation.py解读
1.加载前面处理的各种文件路径root_path = './'stat_path = osp.join(root_path, 'statistics')setup_file = osp.join(stat_path, 'setup.txt')camera_file = osp.join(stat_path, 'camera.txt')performer_file = osp.join(stat_path, 'performer.txt')replication_file = osp.join(s
2020-09-13 16:14:20
3143
1
原创 成功解决Windows MemoryError: Unable to allocate 6.38 GiB for an array with shape (38
因为运行文件所在的磁盘分配内存不够问题造成的,解决方法如下:打开我的电脑-右键属性-高级-性能设置-选择高级-更改-点击E盘-点击自定义大小-设置分配内存,我选择6G,6144kb.点击确定完成,再次运行文件,问题解决!...
2020-09-12 19:00:06
56622
19
原创 智能数字图像处理:图卷积SGN代码(pytorch)之get_raw_denoised_data.py解读
1.root_path = './'raw_data_file = osp.join(root_path, 'raw_data', 'raw_skes_data.pkl')save_path = osp.join(root_path, 'denoised_data')-》载入上一个文件处理后的.pkl文件路径2.if not osp.exists(save_path): os.mkdir(save_path)-》如果保存路径不存在则创建此路径3.rgb_ske_path = osp...
2020-09-11 20:09:11
787
原创 智能数字图像处理:图卷积SGN代码(pytorch)之get_raw_skes_data.py解读
主目录:data文件夹目录:首先介绍main函数1. skes_path = './nturgb+d_skeletons/' stat_path = osp.join(save_path, 'statistics')-》定义数据集路径,准备传参。2. if not osp.exists('./raw_data'): os.makedirs('./raw_data')-》如果不存在raw_data这个文件夹的话,递归创建目录raw_data3....
2020-09-11 19:12:26
1386
1
原创 论文翻译:混合维在庞加莱几何三维骨架的动作识别
Graph Convolutional Networks (GCNs)已经展示了其对不规则数据(如人体动作识别中的骨骼数据)建模的强大能力,这提供了一种令人兴奋的新方法,为居住在图中不同部分的节点融合丰富的结构信息。在人类动作识别中,现有的研究引入了动态图形生成机制,以更好地捕捉隐含的语义骨架连接,从而提高了识别性能。在本文中,我们提供了一种正交的方法来探索底层连接。而不是引入昂贵的动态。我们认为这是一个更适合对图数据进行建模的空间,可以使提取的表示与嵌入矩阵相匹配。具体来说,我们提出了一种新的时空GCN
2020-09-11 11:48:31
1099
原创 智能数字图像处理:MobileNetV2代码(pytorch)之train.py解读
1.net = MobileNetV2(num_classes=5)-》实例化模型2.torch.load()函数载入预训练模型。3.pre_dict = {k: v for k, v in pre_weights.items() if "classifier" not in k}-》遍历权重字典,看是否有classifier整个参数,如果不在层名称当中则进行一个保存。4.missing_keys, unexpected_keys = net.load_state_dict(pre_dict,
2020-09-10 14:44:54
1700
原创 智能数字图像处理:MobileNetV2代码(pytorch)之model.py解读
1. def __init__(groups=1):-》group=1表示是普通卷积,group=2表示Depthwise(DW)卷积。2.padding = (kernel_size - 1) // 2-》padding由kernel_size来决定。3.然后定义网络结构:super(ConvBNReLU, self).__init__( nn.Conv2d(in_channel, out_channel, kernel_size, stride, padding, ...
2020-09-10 12:58:36
1860
原创 智能数字图像处理:ResNet代码(pytorch)之train.py解读
导入pytorch官方的预训练模型:from model import resnet34, resnet101载入预训练模型方法:model_weight_path = "./resnet34-333f7ec4.pth"missing_keys, unexpected_keys = net.load_state_dict(torch.load(model_weight_path), strict=False)# for param in net.parameters():# par..
2020-09-10 00:37:45
1513
1
原创 智能数字图像处理:VGGNet代码(pytorch)之train.py解读
唯一与其他模型的train.py不同的是VGGNet有一个实例化模型的方法,即能选择model.py中不同的模型进行实例化再训练。model_name = "vgg16"net = vgg(model_name=model_name, num_classes=5, init_weights=True)net.to(device)loss_function = nn.CrossEntropyLoss()optimizer = optim.Adam(net.parameters(), lr=0.00
2020-09-09 16:00:41
1149
原创 智能数字图像处理:VGGNet代码(pytorch)之model.py解读
1.self.features = nn.Sequential():精简模块代码,提高复用。放入conv层代码或者全连接层代码。2.分类层classifier:Dropout层:nn.Dropout(p=0.5)-》随机损失一半权重参数全连接层:nn.Linear(128 * 6 * 6, 2048),-》输入128通道的6*6图像,连接层节点个数为2048个ReL激活层:nn.ReLU(inplace=True),-》减少计算量,防止梯度消失。Dropout层:nn.Dr...
2020-09-09 15:51:26
1904
1
原创 数字图像处理:GoogleNet代码(pytorch)之train.py解读
解释顺序就是代码阅读顺序训练数据集处理:1.device = torch.device()->调用GPU还是CPU进行训练2.传入参数其实是一个判断函数:cuda:0" if torch.cuda.is_available() else "cpu"-》如果有GPU使用GPU进行计算训练,否则使用CPU。3.预处理函数:transforms.Compose()4.transforms.RandomResizedCrop(224)-》随机裁剪,裁剪到224x224大小。5.tran
2020-09-09 10:58:40
2858
3
原创 数字图像处理:GoogleNet代码(pytorch)之model.py解读
GoogleNet网络结构:1.首先定义一个基本卷积模块包含一个卷积层和一个Relu激活层和一个正向传播函数。class BasicConv2d(nn.Module): def __init__(self, in_channels, out_channels, **kwargs): super(BasicConv2d, self).__init__() self.conv = nn.Conv2d(in_channels, out_channels,...
2020-09-09 01:42:33
1018
原创 数字图像处理:AlexNet代码(pytorch)之train.py解读
解释顺序就是代码阅读顺序训练数据集处理:1.device = torch.device()->调用GPU还是CPU进行训练2.传入参数其实是一个判断函数:cuda:0" if torch.cuda.is_available() else "cpu"-》如果有GPU使用GPU进行计算训练,否则使用CPU。3.预处理函数:transforms.Compose()4.transforms.RandomResizedCrop(224)-》随机裁剪,裁剪到224x224大小。5.tran
2020-09-08 20:24:54
2028
2
原创 数字图像处理:AlexNet代码(pytorch)之model.py解读
首先看一下网络架构:非常简单的一个训练文件,一个测试文件,一个模型文件。模型结构图:亮点(2012):缺点:1.model.py对照表:self.features = nn.Sequential():精简模块代码,提高复用。放入conv层代码或者全连接层代码。第一层:Conv1-》nn.Conv2d(3, 48, kernel_size=11, stride=4, padding=2), 卷积核大小=11,卷积核个数=48,RGB图像:3通道...
2020-09-08 17:43:15
1368
原创 使用tensorflow预测轨迹
import tensorflow as tfimport numpy as npimport matplotlib.pyplot as plt#使用numpy随机生成200个随机点x_data = np.linspace(-0.5,0.5,200)[:,np.newaxis]noise = np.random.normal(0,0.02,x_data.shape)y_data = np.square(x_data)+noise#定义两个placeholderx=tf.placehol.
2020-08-24 16:53:22
712
原创 使用tensorflow预测一元一次方程组系数
import tensorflow as tfimport numpy as np#使用numpy 随机生成100个随机值x_data = np.random.rand(100)#生成y值y_data = x_data*0.1+0.2#构造一个线性模型b=tf.Variable(0.)w=tf.Variable(0.)#模型要预测的方程式y=w*x_data+b#二次代价函数-定义损失loss= tf.reduce_mean(tf.squqre(y_data-y))#定义一.
2020-08-24 08:18:39
223
原创 搭建一个最简单的神经网络实现二分类
import numpy as np#定义激活函数def sigmoid(x,deriv=False): if(deriv==True): return x(1-x) return 1/(1+np.exp(-x))#定义训练数据集x=np.array([ [0,0,1], [0,1,1], [1,0,1], [1,1,1], [0,0,1]].
2020-08-17 16:09:27
1798
原创 tensorflow矩阵张量的加减法和循环赋值
import tensorflow as tfx = tf.Variable([1,2])a=tf.constant([3,3])#矩阵的减法sub=tf.subtract(x,a)#矩阵加法add=tf.add(x,sub)init= tf.global_variables_initializer()with tf.Session() as sess: sess.run(init) print(sess.run(sub)) print(sess.run(ad...
2020-08-17 12:39:39
2047
原创 tensorflow张量的计算
tensorflow实验版本:1.14.0import tensorflow as tf#创建一个横向张量m1=tf.constant([[3,3]])#创建一个纵向张量m2=tf.constant([[2],[3]])product=tf.matmul(m1,m2)print(product)#定义一个会话启动默认图sess=tf.Session()#调用sess的run方法来执行矩阵乘法result=sess.run(product)print(result)sess...
2020-08-17 11:18:47
261
原创 论文翻译:MARS: Motion-Augmented RGB Stream for Action Recognition
最先进的动作识别方法包括一个具有3D卷积的双流架构:RGB帧的外观流和光流帧的运动流。虽然将流与RGB相结合提高了性能,但计算准确的光流的成本较高,并增加了动作识别延迟。这限制了在需要低延迟的实际应用程序中使用两流方法。在本文中,我们介绍了两种培训标准的学习方法3 d CNN...
2020-08-14 15:59:06
1089
1
原创 HMDB51数据处理之avi视频转化为帧
import osimport numpy as npimport cv2video_src_src_path = 'data/hmdb_data_demo'label_name = os.listdir(video_src_src_path)label_dir = {}index = 0for i in label_name: if i.startswith('.'): continue label_dir[i] = index index += .
2020-08-14 14:03:40
1220
1
原创 pynvml.NVMLError_InvalidArgument: Invalid Argument
gpu启动报错,把pynvml.nvmlInit() for i in gpus: handle = pynvml.nvmlDeviceGetHandleByIndex(i)改为pynvml.nvmlInit() for i in gpus: handle = pynvml.nvmlDeviceGetHandleByIndex(0)
2020-08-13 22:32:29
3232
1
原创 pynvml.NVMLError_LibraryNotFound: NVML Shared Library Not Found
解决办法如下A、出现这个提示的原因是安装后的Nvidia显卡目录C:\Program Files\NVIDIA Corporation\NVSMI不存在,造成的。B、搜索文件Nvidia-SMI.exe,找到这个文件的目录,我的电脑在C:\Windows\System32\DriverStore\FileRepository\nvlti.inf_amd64_83a389b28f4c421e目录下,添加到系统Path下。C、进入Nvidia驱动的默认安装目录C:\Program Files\.
2020-08-13 18:49:04
8178
4
原创 BrokenPipeError: [Errno 32] Broken pipe
解决方案:修改调用torch.utils.data.DataLoader()函数时的num_workers参数。该参数官方API解释如下: num_workers(int,optional) – how many subprocesses to use for data loading. 0 means that the data will be loaded in the main process. (default: 0) 该参数是指在进行数...
2020-08-13 17:16:36
341
原创 jupyter自由切换anaconda环境
1.查看所有环境 :conda env list2.激活你要用的环境:conda activate <环境名称>3.继续输入:conda install ipykernel4.conda环境注入:python -m ipykernel install --user --name your_env --display-name "your_display"①your_env 是你的conda环境名称②your_display...
2020-08-13 15:02:49
566
1
原创 数据处理:视频转化为帧
import subprocessimport argparsefrom pathlib import Pathfrom joblib import Parallel, delayeddef video_process(video_file_path, dst_root_path, ext, fps=-1, size=240): if ext != video_file_path.suffix: return ffprobe_cmd = ('ffprobe .
2020-08-09 11:00:09
1106
2
原创 下载安装使用Git
Windows下配置Git1、从git官网下载windows版本的git:http://git-scm.com/downloads2、一般使用默认设置即可:一路next,git安装完毕!3、找到git安装路径中bin的位置,如:D:\Program Files\Git\bin找到git安装路径中git-core的位置,如:D:\Program Files\Git\libexec\git-core;注:"D:\Program Files\Git\"是安装路径,可能与你...
2020-08-09 10:24:08
319
原创 论文翻译:Would Mega-scale Datasets Further Enhance Spatiotemporal 3D CNNs?
我们如何收集和使用视频数据集来进一步改进时空三维卷积神经网络(3 d cnn) ?为了肯定地回答视频识别中的这个开放问题,我们利用一些大规模视频数据集和3D进行了探索性研究美国有线电视新闻网。在深度神经网络早期,在视频识别的背景下,2D的CNNs优于3D的CNNs。最近的研究表明,3D CNNs比在大规模视频数据集上训练的2D CNNs更好。然而,我们严重依赖于架构探索,而不是对数据集的考虑。因此,在本文中,我们对改进时空三维cnn网络进行了如下的探索研究:(i)最近提出的大规模视频数据集有助于改进时空三维
2020-08-09 09:24:05
494
原创 CNN网络的使用
上一节中我们搭建了CNN网络,这一节我们开始使用:第一:调用CNNmodel = CNN()第二:设置损失函数,优化器和准确率(损失函数和优化器的选择不同情况不一样选择)model.compile(loss=tf.keras.losses.categorical_crossentropy,# 分类的交叉熵损失 #loss传值有三种方式 optimizer=tf.keras.optimizers.Adam(),# 随机梯度下降 metri
2020-08-08 16:53:19
1714
1
原创 定义CNN网络结构
class CNN(tf.keras.Model): def __init__(self): super().__init__() self.conv1 = tf.keras.layers.Conv2D( filters=32, # 卷积层神经元(卷积核)数目 kernel_size=[5, 5], # 感知域大小(滤波器大小) padding=2 stride.
2020-08-08 14:39:12
728
原创 论文翻译:Deep Progressive Reinforcement Learning for Skeleton-based Action Recognition
在本文中,我们提出了一种深度递进强化学习(DPRL)方法来识别基于骨架的视频中的动作,其目的是提取最有信息的帧,并丢弃序列中不明确的帧来识别动作。由于每个视频选择代表性帧的数量众多,我们通过深度强化学习将帧选择建模为一个渐进的过程,在此过程中我们考虑两个重要因素对选择的帧进行逐步调整:(1)所选帧的质量;(2)所选帧与整个视频的关系。另外,考虑到人体的拓扑结构本质上是基于图形的结构,顶点和边分别表示铰接关节和刚性骨骼,我们采用基于图形的卷积神经网络捕捉关节之间的依赖关系,进行动作识别。我们的方法在三个广泛使
2020-08-08 10:23:15
526
VirtualBoxSDK-5.2.32-132073.zip
2019-08-26
res10_300x300_ssd
2021-02-10
Navicat_Premium_11.0.10
2018-09-06
vc6精简版[中文版]
2018-09-06
apache-tomcat-7.0.57
2018-09-06
hibernate-3.2源码
2017-09-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅