自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 Python os.path() 模块

os.path模块主要用于获取文件的属性。将目前用到过的几种记录如下:1. os.path.exists(path)如果路径path存在,返回True;如果路径path不存在,返回false;if not os.path.exists(path): os.makedirs()2. os.path.basename(path)返回文件名os.path.basen...

2020-05-08 11:07:27 202

原创 将在python2下生成的pkl文件转换成可被python3读取的pkl

import osimport dillimport pickleold_pkl_file = " "new_pkl_file = " "dill._dill._reverse_typemap["ObjectType"] = objectwith open(old_pkl_file, 'rb') as f: loaded = pickle.load(f, encoding=...

2020-05-08 10:41:01 882

原创 python 循环删除list中的元素

随便写的一个代码, 发现不加红框内的那句,可以输出满足条件的18个结果,而加上那句之后就只有9个输出. 下面我们用一个简单的例子来做演示:a = [1, 2, 3, 4, 5, 6]for i in a: a.remove(i)print(a)返回: [2, 4, 6]循环a删除a中的所有元素, 但最终的输出却不为空??因为在循环a并删除a的元素时,列表的位置发生了...

2020-03-10 16:54:57 952 1

原创 2020年因疫情在家科研

事情还要从上周说起, 因为疫情的原因, 不得不在家科研.说起在家科研,效率低不说,真的是各种不便捷. 首先, 因为去年在外面实习, 我在实验室的电脑就被师弟征用了. 所以我只能远程(Teamview)连接服务器进行实验. 我要下一个220G的数据集, 因为数据集的网址要翻墙, 实验室服务器下载速度大概只有几十kb/s这我得下几个月啊. 于是乎, 我就去找啊找啊,找到了一个公众号发布的该数据的网盘下...

2020-03-10 11:31:50 283

原创 Arxiv上传Latex文章

Arxiv上面支持上传PDF,但如果是Latex编译过得到的PDF是不能直接上传的,需要上传Latex源文件才可以编译通过.首先,外面默认编译latex需要的是bib的reference,而Arxiv要求上传的是bbl的reference.关于将bib转换成bbl格式文件请参考如下链接bib转bbl其次, 你需要将bbl文件命名为和tex同名,比如main.tex, main.bbl这样才...

2019-12-04 19:22:56 1000

原创 Ubuntu 安装docker

最近实验室在搞集群,每个人在集群上面的操作依赖的都是镜像文件。刚好借此机会,学习了一些关于docker的基本知识。今天先从最基本的安装和配置开始~ 参考文章(测试有效):docker安装更新apt包索引 apt-get update 请确保此处没有问题。如果有出现Error,一般需要更换镜像源。可以选择清华镜像,具体设置可以参考此博文,亲测有效!清华源镜像设置 安装apt依赖包,...

2019-12-02 19:27:15 358 11

原创 TSN-denseflow提光流和RGB帧

因为又重新处理别的数据集,需要在服务器上重新配置denseflow的环境。叫组里的师弟,倒腾了2周,也没弄好。我这个急性子的人实在是按耐不住了,干脆自己来吧(不吃饭不睡觉也得把它弄好,哈哈哈,然后并没有,也是倒腾了大半天)。记录一下,过程中遇到的问题,希望对你有所帮助!首先,贴几个有用的流程可以参考。(1) build_all.sh这个是TSN给的安装opencv,denseflow和caff...

2019-08-29 09:44:47 4434 5

原创 PyTorch documentation 学习与使用---持续更新

参考:https://pytorch.org/docs将在项目中用到的模块总结如下:(1) torch.nn.AvgPool1d:在时间轴进行avgpooling操作,将一定长度的sequence信息聚合.注意,输入的维度顺序为: input size (N, C, L)import torchimport torch.nn as nninput_tensor = torch...

2019-08-10 20:07:09 424

原创 numpy array To One-hot

import numpy as npnum_classes = 5targets = np.array([[2, 3, 4, 0]]).reshape(-1)one_hot_targets = np.eye(num_classes)[targets]The one_hot_targets is now:array([[[ 0., 0., 1., 0., 0., 0.], ...

2019-08-10 12:34:38 694

原创 Git实用指南

更加详细的教程可参考Git教程|菜鸟教程以及Git教程-廖雪峰本文只对git一些常用的命令进行整理.1.克隆仓库#克隆完整的仓库到./temporal-segment-networks目录下git clone https://github.com/yjxiong/temporal-segment-networks.git#只克隆lib分支到./lib目录下git clone -...

2019-04-21 08:36:43 154 4

原创 nvcc: command not found

已经安装了CUDA-8.0,仍然出现上述问题,解决方案如下:添加环境变量,打开~/.bashrc ,添加环境变量如下:export LD_LIBRARY_PATH=/usr/local/cuda/libexport PATH=$PATH:/usr/local/cuda/bin...

2019-03-20 09:13:05 14764 5

原创 Tensorflow深度学习环境搭建

使用Anaconda 搭建深度学习环境教程(1) 首先,创建python2.7下的名为tensorflow的环境:conda create --name tensorflow python=2.7(2) 激活名为tensorflow的环境,后续将在此环境下安装tensorflow(activate 能将我们引入anaconda设定的虚拟环境中, 如果你后面什么参数都不加那么会进入an...

2019-03-18 20:15:22 259

原创 linux常用命令学习

stat cuda #查看cuda连接到的软连接touch a.txt#新建文件a.txtmkdir build#新建文件夹build/rm -rf a.txt#删除文件mv a.txt b.txt#文件重命名du -sh#查看当前目录总占用量,不单独列出各项占用量du -lh --max-depth=1#查看当前目录下一级子文件和子目录磁盘占用情况ls -lht #查...

2019-03-17 20:17:52 237

原创 Caffe-TSN 多GPU并行运算OpenMPI

TSN算是Action Recognition比较经典的方法,之前在刚入门的时候跑过一遍这个代码,当时只用了一块GPU来跑,并没有关注该版本的caffe是使用了openMPI来实现并行运算的.貌似从没有关注过多GPU训练,因为只有一张卡啊~一开始以为按照通用的设置caffe中多GPU的使用方法,设置完成以后,总是提示数值无效的错误.然后我又看到解决方案里面有人说需要打开nccl编译的选...

2019-03-10 17:39:45 750 4

原创 小白教程-Linux下安装ffmpeg

搬去了新的工作环境,意味着要重新配置各种环境.大实验果然福利待遇好,上来就给分了个8卡(TITAN X)服务器,以后妈妈再也不用担心宝宝没卡跑实验了~(忧喜参半)这边的课题工作还是围绕视频中的人体动作,视频数据的预处理需要使用ffmpeg工具来提取视频帧.以下步入主体:1.下载ffmpeggit clone https://git.ffmpeg.org/ffmpeg.git2.配...

2019-03-05 16:12:36 391 1

原创 Pytorch深度学习环境搭建-Anaconda版

安装Anaconda关于Anaconda的概述、安装、管理等可参考Anaconda使用总结-简书在Anaconda3-5.3.0-Linux-x86_64.sh文件所在文件夹下执行命令:sudo ./Anaconda3-5.3.0-Linux-x86_64.sh直接进入Anaconda安装界面,就可以完成安装。安装pytorch在安装之前,需要在Anaconda下创建虚拟环境,...

2018-12-03 19:25:45 1195 1

原创 用PDB库调试Python代码

Python提供了一个有用的模块PDB,它是一个交互式源代码调试器。通常需要如下两行代码来使用该模块:import pdbpdb.set_trace()如下代码中通过以上两行代码使用了该模块:for video_count, video in enumerate(videos): sys.stdout.write('\rDownloading video: %d/%d'...

2018-09-03 10:34:05 284

原创 Github上下载指定文件夹的方法

一般地,在Github上下载项目文件只需要复制项目网址通过命令“git clone 网址”即可完成下载。有的时候,我们并不需要整个项目文件,而是只需要下载其中的某个文件或文件夹,可以利用SVN。SVN是基于文件方式存储的,Git是基于元数据方式分布式存储文件信息的,它会在每次git clone时将所有文件信息都取回本地。以下介绍通过SVN下载某个文件夹的流程:(1) 首先,安装SVN:...

2018-09-01 15:25:55 2134

原创 ubuntu进程出现killed

在ubuntu操作系统下,通过python脚本文件处理视频数据,如下图所示,最新一行出现‘killed‘,同时程序终断,没有任何错误提示。百度了一下,说是内存溢出,导致程序异常终止。使用top查看进程及内存占用(关于top命令参数解析可参考链接)发现在执行程序期间,KiB Swap这一项中的used一直在增长。应该是程序在执行期间的某个变量一直在存储没有进行清零操作占用了较大的内存空间。查...

2018-08-02 09:01:29 14864

原创 python-enumerate( )函数

参考菜鸟教程文档假设在当前路径下有多个文件夹,我们想要统计文件夹的名称和其对应的索引:import osframe_folder = os.listdir('路径名称')//该路径下所有文件名称for i, f in enumerate(frame_folder): print i, f //文件对应索引和名称在我当前路径下共有64701个.mp4视频文件,输出如下:索引...

2018-07-27 19:37:22 457

原创 python-glob用法

glob是python自己带的一个文件操作相关模块。(1) 如果在我当前文件夹下有多个“.mp4”视频文件,我们需要获取当前路径下所有‘.mp4’文件的名称,可以通过glob进行操作。import osimport globvid = glob.glob('*.mp4')(2) 如果当前路径下有多个文件夹(以上述视频名称命名的文件夹),每个文件夹下面包含有大量的'.jpg'图...

2018-07-22 11:00:18 714

原创 python读取csv文件

import csvcsv_file = '/路径/'with open('csv_file','r') as csvfile: reader = csv.reader(csvfile) data = [row for row in reader]data[1:]//get rid of the first row-data[0] 我的csv文件内容如下(此处...

2018-07-09 17:15:27 624

原创 python保存与加载pkl文件

cPickle保存使用cPickle.dump来将对象(train_roidb)序列化到文件(train_data_25fps.pkl)中。import cPicklecPickle.dump(train_roidb, open('train_data_25fps.pkl','w'), cPickle.HIGHEST_PROTOCOL)cPickle装载使用python的cPickle库中的...

2018-05-15 11:32:31 20457 1

原创 caffe | Python Layer

首先来看官网给出的该层的定义:The Python layer allows users to add customized layers without modifying the Caffe core code.在不改变caffe核心代码的情况下,可以使用Python 来定义Layer层。caffe编译:修改caffe根目录下的Makefile.config文件(WITH_PYTHON_LAY...

2018-05-15 10:45:07 520

原创 caffe编译-/usr/bin/ld:cannot find -lcurand cufft

2018-4-3 成都 晴 caffe编译遇到如下问题,记录一下自己调bug心得。 1.分析原因 会发生这样的原因有以下三种情形: (1) 系统没有安装相对应的lib (2) 相对应的lib版本不对 (3) lib(.so.)的symbolic link 不正确,没有连结到正确的函式库文件(.so) 将原因定位: (1) 如果是没有安装相应的lib,可以通过apt-get inst

2018-04-03 17:00:41 2837

转载 SaCNN(论文解读)-人群计数

本文主要对论文《Crowd counting via scale-adaptive convolutional neural network》的核心思想进行简单介绍。   先来看一下效果:在Shanghai Tech数据集上(分为Part A和Part B两部分),关于这个数据集的介绍见下表:Part A 共有418张图片,图片的分辨率是不同的,每张图片上包含的人数最少有33个,最多包含3139;

2018-04-01 14:15:17 2909 1

原创 caffe源码解读(13)-blob.hpp

caffe使用称为blob的四维数组用于存储和交换数据。Blob提供了统一的存储器接口,持有一批图像或其他数据、权值、权值更新值。Blob在内存中表示四维数组,维度从低到高为[width_,height_,channels_,num_],其中,width_和height_表示图像的宽和高,channes_表示颜色通道RGB,num_表示第几帧,用于存储数据或权值(data)和权值增量(diff),在

2018-03-30 14:53:00 262

原创 AttributeError: 'NoneType' object has no attribute 'astyp

  这几天在调R-C3D的模型,记录一下自己遇到的一些问题,以及自己在这个过程中的成长和收获。   在Github上放出的代码,可能会有很多细节的问题,加上编译环境的不同,所以在复现代码时会遇到很多问题,像我这种小白级的会先去浏览一下issue里有没有相关的问题以及解决办法,再就是去google,Baidu等各种论坛搜索。对于一般性的问题,会与很多解决办法。然而科研问题更多的是这种针对性的问题,...

2018-03-28 16:41:44 22152 2

原创 caffe源码解读(12)-convert_imageset.cpp

caffecaffe中允许输入的数据类型可以是LMDBLMDB或LEVELDBLEVELDB,caffecaffe中提供了将图片转化为LMDB的工具,位于caffe_dir/tools/convert_imageset.cpp,下面对源码进行简单解析:首先是一些参数的设置选项,包括shuffle、resize等using namespace caffe; // NOLINT(build/names

2018-03-23 10:46:45 963

原创 Action Recognition-Two Stream CNN论文笔记

本文主要针对论文:《Two-Stream Convolutional Networks for Action Recognition in Videos》记录自己的理解。 考虑到视频由空间和时间两个部分组成,空间部分更多表征Appearence信息,比如目标、场景等;而时间部分更多表征Motion信息,包括摄像机的运动或者目标物体的运动信息。所以该网络结构的设计考虑两个部分。 Two-strea

2018-03-14 20:58:13 1372

原创 Action Recognition-iDT代码解析

主要参考博文 行为识别笔记:iDT算法用法与代码解析 以及Improved Dense Trajectory用法及源码分析 上一篇博文iDT论文笔记已经从原理上对iDT算法进行了介绍,本文将重点介绍其代码的使用及解析。源代码下载官网链接iDT代码代码结构iDT代码中主要包含以下几个代码文件: DenseTrackStab.cpp:iDT算法主程序 DenseTrackStab.h:轨迹跟

2018-03-13 10:59:25 810 1

原创 Action Recognition:iDT论文解读(Improved Dense Trajectories)

  主要参考博文 行为识别笔记:improved dense trajectories算法(iDT算法)   一.DT介绍   先简单介绍DT(Dense Trajectories)方法:利用光流场来获得视频序列中的轨迹,在沿着轨迹提取轨迹形状特征和HOF,HOG,MBH特征,然后利用BoF(Bag of Features)方法对特征进行编码,最后基于编码结果训练SVM分类器。     ...

2018-03-12 17:26:54 4860 3

原创 Caffe-Batch Normalization解析

BatchBatch Normalization Normalization(BNBN)的提出:paper[链接](https://arxiv.org/pdf/1502.03167.pdf) 论文中对BNBN的解释:Making normalization a part of the model architecture and performing the normalization for e

2018-03-08 15:31:56 1142

原创 caffe-Reshape层配置

layer { //层作用:改变输入数据的维度 name: "data_reshape" type: "Reshape"//reshape层 bottom: "data" top: "data_reshape" reshape_param{//reshape层参数 shape { dim: -1 dim: 3 dim: 16 dim: 112 dim: 112 }

2018-03-05 09:28:01 2289

原创 caffe源码解读(11)-triplet_loss_layer.cpp

定义TripletLoss" role="presentation">TripletLossTripletLossTriplet Loss 的提出,是在这篇论文中——FaceNet: A Unified Embedding for Face Recognition and Clustering,论文中对TripletLoss" role="presentation">TripletLossT

2018-02-01 15:16:17 500

原创 caffe源码解读(10)-hinge_loss_layer.cpp

公式参数:两个输入bottom[0]、bottom[1],一个输出top[0]。 bottom[0]: N*C*1*1 预测值; bottom[1]: N*1*1*1 真实值; p: 范数,可选L1、L2L_{1}、L_{2}范数; δ{ln=k}\delta \left \{ l_{n}=k \right \}: 示性函数,如果第nn个样本的真实标签为kk,则δ{ln=k}=1\delta

2018-01-31 17:23:34 276

原创 caffe源码解读(9)-euclidean_loss_layer.cpp

公式参数:bottom[0]、bottom[1]、top[0] 1. (N*C*H*W) the predictions: yn^" role="presentation">yn^yn^ \hat{y_{n}}–>bottom[0] 2. (N*C*H*W) the targets: yn" role="presentation">ynyn{y_{n}}–>bottom[1]

2018-01-31 11:19:23 448

原创 caffe源码(8)-video_data_layer.cpp

video_data_layer层是在caffe里面新添加的一个DataLayer,该层允许caffe的输入data层数据为视频。由于视频是由一帧一帧的图像组成,因此该层的定义主要参考image_data_layer层。 同样遵循:VideoData层参数定义->VideoData数据层声明->VideoData数据层实现的顺序,介绍如下:一.caffe.proto层参数定义层参数定

2018-01-30 15:18:42 1787 2

原创 caffe源码解读(7)-data_transformer.cpp

DataTransformer类主要负责对数据进行预处理,比如减去均值、进行crop,镜像mirror,强制设置为彩色图像force_color,强制设置为灰度图像force_gray以及像素值的缩放scale,此外该类还将Datum、const vector、cv::Mat&、vector 、Blob*类型的数据变换到目标大小的blob,负责对上述类型的数据推断其shape。 一.数据结

2018-01-30 12:40:26 2044

原创 caffe源码解读(6)-数据读取层DataLayer

数据读取层,除了读取LMDB、LEVELDB之外,也可以从原始图像直接读取(ImageDataLayer).一.数据结构描述message DataParameter { enum DB { LEVELDB = 0;//使用LEVELDB LMDB = 1;//使用LMDB } optional string source = 1; optional

2018-01-29 16:20:19 1047

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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