- 博客(407)
- 资源 (19)
- 收藏
- 关注
原创 python中yield用法
yield在函数中的功能类似于return,不同的是yield每次返回结果之后函数并没有退出,而是每次遇到yield关键字后返回相应结果,并保留函数当前的运行状态,等待下一次的调用。如果一个函数需要多次循环执行一个动作,并且每次执行的结果都是需要的,这种场景很适合使用yield实现。
2017-09-28 20:54:41 26769 1
原创 ubuntu下tesseract 4.0安装及参数使用
tesseract是一个开源的OCR引擎,最初是由惠普公司开发用来作为其平板扫描仪的OCR引擎,2005年惠普将其开源出来,之后google接手负责维护。目前稳定的版本是3.0,4.0版本加入了基于LSTM的神经网络技术,并且支持中文识别。ubuntu下安装:终端输入以下命令:sudo add-apt-repository ppa:alex-p/tesseract-oc
2017-09-28 20:53:27 13725 1
原创 python中list用法及遍历删除元素
列表(list)是python的基本数据结构,list中每一个元素都分配一个位置索引,可以通过索引访问元素值,list不要求数据项有相同的数据类型。list初始化list由一个方括号加内部由逗号分割出的不同数据项组成,初始化:list1 = [1,2,3]list2 = ['a','b',1,2]list3 = []list4 = [0]*10 #分配10个值都为0的元素
2017-09-25 20:24:28 13197
原创 ubuntu中使用apt-get安装zbar
apt-get是linux中常用的shell命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。apt-get命令一般需要root权限执行,所以前边一般跟着sudo命令。Zbar是一个开源的二维码(包括条形码)解码器,可以识别来至于视频流,图像文件、手持扫码器和视频设备(如摄像头)等二维码识别,支持EAN-13/UPC-A, UP
2017-09-23 16:48:35 6048 6
原创 Linux下使用pip安装keras
Keras是一个底层使用Theano或TensorFlow的深度学习框架,它的设计参考了Torch,用Python语言编写,也很方便使用Python调用,是一个高度模块化的神经网络库,支持使用GPU和CPU。pip是一个安装和管理Python包的工具。在Pip的帮助下,可以方便的安装一些依赖包。Keras的后端默认使用的是TensorFlow,安装的第一步可以先安装TensorFlow:pip i
2017-09-23 07:11:26 12397
原创 python中optparse模块用法
python中optparse模块用法optparse模块主要用来为脚本传递命令参数,采用预先定义好的选项来解析命令行参数。首先引入optparser模块,然后执行初始化,实例化一个OptionParser对象(可以带参,也可以不带参数),再为命令行添加选项,示例:from optparse import OptionParserusage="show something us
2017-09-20 21:12:05 15083
转载 Python里的一些注释规范
写代码注释是一件很重要的事情,如果你写的一段函数给别人调用那么往往都需要配上一些基本的注释。写好代码可以让别人容易阅读你的代码。试想一 下:如果你在github上面找到一段你想要的代码,这段代码有200行,可能这些代码我们要进行改造,那么这时候如果代码中都没有恰当的注释,我们可能要用比较久的时间去通读一下他的代码。相反,如果这些代码有一些恰当的注释,我们可能会更加好理解一点。学会注释是编码
2017-09-19 22:26:34 30486
原创 python中的异常处理try/except/finally/raise
异常发生在程序执行的过程中,如果python无法正常处理程序就会发生异常,导致整个程序终止执行,python中使用try/except语句可以捕获异常。try/except异常的种类有很多,在不确定可能发生的异常类型时可以使用Exception捕获所有异常:try:except Exception,e:print Exception,":",etry/excep
2017-09-19 09:23:17 7673
原创 Python之Split函数
python中的split()函数用来拆分一个字符串,通过指定的分隔符对字符串进行切割,返回切割后的字符串列表listsplit()函数用法:str.split(str=' ',num=string.count(str))参数str表示分隔符,默认为空格,但是不能为空(''),若字符串中没有查找到指定的分隔符,则把整个字符串作为列表的一个元素参数num表示分割次数,如果存在
2017-09-16 15:22:56 12803
原创 ubuntu中pytesseract 安装与使用示例
1. 安装 tesseract-ocr 包安装方法: sudo apt-get install tesseract-ocr++2. 安装 PILPIL(python imaging library)是python中的图像处理库安装方法: sudo apt-get install python-imaging++3. 安装 pytesseract
2017-09-16 10:31:07 8752 5
原创 在ubuntu中搜索文件或文件夹的方法
whereis+文件名用于程序名的搜索,搜索结果只限于二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s),如果省略参数,则返回所有信息。 特点:快速,但是是模糊查找,例如 找 #whereis mysql 它会把mysql,mysql.ini,mysql.*所在的目录都找出来.2.find / -name 文件名 特点:准确,但速度慢
2017-09-16 09:18:27 165724 1
转载 优化VMware提高虚拟机运行速度的技巧
vmware虚拟机如何设置不当的话会造成运行速度慢,并影响主机运行,甚至会出现死机。以下是提高vmware虚拟机运行速度的几个技巧:文章来自:http://blog.csdn.net/shanzhizi1 修改preference中的选项(全局设置)a 进入设置界面的方法如下图所示:b 修改虚拟机
2017-09-15 21:06:37 18681
转载 在 Ubuntu 16.04 中安装支持 CPU 和 GPU 的 Google TensorFlow 神经网络软件
TensorFlow 是用于机器学习任务的开源软件。它的创建者 Google 希望提供一个强大的工具以帮助开发者探索和建立基于机器学习的应用,所以他们在去年作为开源项目发布了它。TensorFlow 是一个非常强大的工具,专注于一种称为深层神经网络deep neural network(DNN)的神经网络。深层神经网络被用来执行复杂的机器学习任务,例如图像识别、手写识别、自然语言处理、聊天机器人等
2017-09-13 23:03:40 1027
原创 Ubuntu+anaconda环境里安装opencv
在Ubuntu的Anaconda环境下安装OpenCV比较方便,直接在终端中输入以下命令:conda install --channel https://conda.anaconda.org/menpo opencv这个方式安装的是OpenCV2.4.11版本,如果要安装OpenCV 3版本,把上述命令中的 opencv换成 opencv3就行了,安装的是3.2.0版本...
2017-09-13 22:37:23 24284 8
转载 SecureCRT连接(内网和外网)虚拟机中的Linux系统(Ubuntu)
最近在学习Linux,看了网上很多SecureCRT连接本地虚拟机当中的Linux系统,很多都是需要设置Linux的配置文件,有点繁琐,所以自己就摸索了一下,把相关操作贴出来分享一下。 SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。这样操作的时候不必进入到linux桌面,可以更方便的在命令行
2017-09-10 15:24:35 3512
转载 一文弄懂神经网络中的反向传播法——BackPropagation
原文地址: http://www.cnblogs.com/charlotte77/p/5629865.html最近在看深度学习的东西,一开始看的吴恩达的UFLDL教程,有中文版就直接看了,后来发现有些地方总是不是很明确,又去看英文版,然后又找了些资料看,才发现,中文版的译者在翻译的时候会对省略的公式推导过程进行补充,但是补充的又是错的,难怪觉得有问题。反向传播法其实是神经网络的基础了,
2017-07-30 00:09:20 659
原创 神经网络常用激活函数及其应用举例
神经网络中数据从数据层到最后输出层的流动过程其实就是数据从一种形态到另一种形态,从一个维度到另一个维度的变换过程,例如在Minst数据集训练中,就是把28*28维的图像数据经过变换,映射成0~9之间的一个数字。完成这种数据变换的一个重要工具就是激活函数。一个典型的人工神经元的模型可以用下图表述:图中X1~Xn是神经元的输入信号;θ表示一个阈值,或称为偏置(b
2017-07-27 23:44:53 21884
转载 梯度下降优化算法综述
本文转载自:http://blog.csdn.net/heyongluoyao8/article/details/52478715梯度下降优化算法综述 该文翻译自An overview of gradient descent optimization algorithms。 总所周知,梯度下降算法是机器学习中使用非常广泛的优化算法,也是众多机器学习算法中最常
2017-07-27 22:29:15 895
原创 【撸码caffe 五】数据层搭建
caffe.cpp中的train函数内声明了一个类型为Solver类的智能指针solver:// Train / Finetune a model.int train() {…… shared_ptr > solver(caffe::SolverRegistry::CreateSolver(solver_param));…… }之后调用Solver
2017-07-27 20:55:09 578
原创 【撸码caffe四】 solver.cpp&&sgd_solver.cpp
solver.cpp中的Solver提供了执行模型训练的入口,在caffe.cpp中train函数的最后通过 solver->Solve()调用:template void Solver::Solve(const char* resume_file) { //检查是否是root_solver,有多个GPU的情况下,允许设置多个solver,GPU间并行工作, //第一个solver设置为
2017-07-25 23:14:41 1329
原创 【撸码caffe 三】 caffe.cpp
caffe.cpp文件完成对网络模型以及模型配置参数的读入和提取,提供了网络模型训练的入口函数train和对模型的测试入口函数test。文件中使用了很多gflags和glog指令,gflags是google的一个开源的处理命令行参数的库,glog是一个有效的日志记录工具。补充一点查询GPU设备信息的知识:CUDA C中的cudaGetDeviceProperties函数可以
2017-07-21 22:46:43 1632
原创 【撸码caffe 二】 blob.hpp
blob是caffe中基本的数据存储单元,可以用来存储图像数据,网络中的中间数据变量,各层的输入和输出,以及反向传播中的梯度等。
2017-07-20 22:16:29 1007
原创 【撸码caffe 一】syncedmen.hpp
SyncedMemory类主要负责在主机(CPU)和设备(GPU)之间管理内存分配和数据同步工作,封装了CPU和GPU之间的数据交互操作。补充一点GPU的相关知识:对CUDA架构而言,主机端的内存被分为两种,一种是可分页内存(pageable memroy)和页锁定内存(page-lock或 pinned)。可分页内存是由操作系统API malloc()在主机上分配的,
2017-07-20 20:10:35 1017
原创 C++中explicit关键字用法
在C++类的实例化过程中,存在一种隐式转换,即可以用单个实参来调用的构造函数定义了从形参类型到该类类型的一个隐式转换。一个简单的例子:#include #include using namespace std;class Book{public: Book(){} Book(const string name, const int price = 100) : _
2017-07-19 21:31:54 5567 1
原创 python绘制caffe中网络模型
caffe-master/python/draw_net.py 实现绘制caffe中定义的网络模型功能,将.prototxt文件可视化。需要先安装pydot和protobuf工具通过Anaconda安装pydot和protobuf工具:sduo chmod 777 -R ~/anaconda2conda install protobufconda insta
2017-07-18 21:40:25 745
原创 Ubuntu+caffe训练cifar-10数据集
1. 下载cifar-10数据库ciffar-10数据集包含10种物体分类,50000张训练图片,10000张测试图片。在终端执行指令下载cifar-10数据集(二进制文件):[html] view plain copy print?cd ~/caffe-master ./data/cifar
2017-07-18 19:38:17 1932 2
转载 [译] 理解 LSTM 网络
译作,原文地址: http://www.jianshu.com/p/9dc9f41f0b29本文译自 Christopher Olah 的博文Recurrent Neural Networks人类并不是每时每刻都从一片空白的大脑开始他们的思考。在你阅读这篇文章时候,你都是基于自己已经拥有的对先前所见词的理解来推断当前词的真实含义。我们不会将所有的东西都全部丢弃,
2017-07-18 19:29:01 489
转载 循环神经网络(RNN, Recurrent Neural Networks)介绍
原文地址: http://blog.csdn.net/heyongluoyao8/article/details/48636251#循环神经网络(RNN, Recurrent Neural Networks)介绍 这篇文章很多内容是参考:http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-pa
2017-07-18 19:22:58 2587
原创 ubuntu16.04+caffe训练mnist数据集
1. caffe-master文件夹权限修改下载的caffe源码编译的caffe-master文件夹貌似没有写入权限,输入以下命令修改:sudo chmod -R 777 ~/caffe-master/2. 下载mnist数据库cd ~/caffesduo ./data/mnist/get_mnist.shcaffe中的./data/mnist
2017-07-16 20:05:34 2380
原创 ubuntu16.04下配置caffe无GPU
1. 安装依赖项 1 sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler2 sudo apt-get install --no-install-recommends libboost-all-dev3 sudo
2017-07-16 17:13:56 2334 1
原创 Spyder调试快捷键
Ctrl+1: 注释、取消注释Ctrl+4/5: 块注释 / 取消块注释F12: 断点 / 取消断点F5: 运行Ctrl+F5: 启动调试Ctrl+F10: 单步调试,跳过函数内部实现Ctrl+F11: 单步调试,进入函数内部实现F9: 从当前光标所在行开始执行F8: 查看编译结果(包括Erro和W
2017-07-13 22:25:34 5054 2
原创 python类的继承和多态,获取对象信息
继承类的继承机制使得子类可以继承父类中定义的方法,拥有父类的财产,比如有一个Animal的类作为父类,它有一个eat方法:class Animal(object): def __init__(self): print("Animal 构造函数调用!") def eat(self): print("Anima
2017-07-13 22:18:27 1705
原创 Anaconda安装及PyCharm环境配置
1. Anaconda下载Anaconda 官方下载链接: https://www.continuum.io/downloads根据自己的系统选择下载32位还是64位。2. 进入下载目录如果没有修改的话,默认的下载目录是在 /home/下载/下,Ctrl+Alt+T打开终端,输入 cd /home,然后按两次Tab键,终端会自动补上用户名以及该用户名下的文件目录:可以看到排列出的所有文件夹,继续输...
2017-07-13 06:59:34 10910
原创 python中类的定义、实例化、封装以及私有变量/方法
1. 定义类python中定义一个类的格式如下:class MyClass(object): def __init__(self,data1,data2): self.__data1=data1 self.data2=data2 def __func1(self): print("MyCla
2017-07-12 21:46:32 26722 4
原创 Ubuntu桌面基础介绍
1. 目录结构和文件系统ubuntu的文件系统也是一个又层次的树形结构,文件系统的最上层是 / ,表示根目录,所有其他文件和目录都位于跟目录下,在linux中,一切皆为文件,包括硬盘、分区和拔插介质。跟目录下的常见目录列表:/bin - 重要的二进制 (binary) 应用程序,如cp,ls等;/boot - 启动 (boot) 时用到的核心配置
2017-07-11 20:51:59 3295
原创 caffe训练CIFAR数据库
CIFAR-10是一个用于普适物体识别的数据集。Cifar-10由60000张32*32的RGB彩色图片构成,50000张训练图片,10000张测试图片,分为10类。cifar下载地址: http://www.cs.toronto.edu/~kriz/cifar.html数据集分为3个版本,分别是Matlab、python和二进制格式的,这里选择二进制格式的下载。包含五
2017-07-10 21:33:21 1041
原创 python+caffe训练自己的图片数据流程
1. 准备自己的图片数据训练图片分为三类,分别是猫,狗和老虎的图片:2. 重命名收集的图片重命名一下,名称前边第一个数字代表各自的分类:import osdef renameImage(pathFile,startNum,label): for files in os.listdir(pathFile): oldDir=o
2017-07-05 06:50:11 7918 10
原创 VMware虚拟机ubuntu显示屏幕太小解决办法
使用VMware安装的ubuntu虚拟机的显示屏幕太小,可以通过在VMware里安装“VMware Tool”插件解决,安装步骤记录一下。1. 更改ISO文件路径安装VMware Tool需要用到虚拟光驱,加载一个ISO文件,在安装的时候加载的是ubuntu安装文件“ubuntu-16.04.2-desktop-amd64.iso”,如果不更改这个加载路径,相当于在虚拟机
2017-07-02 09:21:27 171255 75
原创 Win10使用VMware虚拟机安装ubuntu
Win10专业版自带有虚拟机安装工具Hyper-V,也可以使用其他如VMware工具安装,也挺方便。所需工具:1. VMware-workstation2. ubuntuubuntu-16.04.2 下载链接:https://www.ubuntu.com/download1. 下载安装VMware之后打开,大概是这个样子的:2. 点击左上角文件-&g...
2017-07-01 19:26:50 30680 9
原创 PyCharm基本设置、常用快捷键
1. 下载安装PyCharm官方下载地址: https://www.jetbrains.com/pycharm/download/index.html#section=windows安装完成后在弹出的界面中选择新建一个工程:2. 首次使用首次使用需要配置一下控制台,才能正常调试python点击灰色的倒三角,选择“Edit Configur...
2017-07-01 15:20:15 11489
Tensorflow-Multi-GPU-Training.rar
2020-07-28
pytorch训练图像分类模型pth转ONNX并测试
2019-10-29
基于生成对抗网络的图像去模糊
2018-08-22
SqueezeNet模型文件及使用
2018-03-15
tensorflow训练的识别验证码模型
2018-01-08
python中xlutils模块(版本2.0)
2017-10-26
jTessBoxEditorFx-2.0-Beta part2(part1&&part2;)
2017-10-14
jTessBoxEditorFx-2.0-Beta part1(part1&&part2;)
2017-10-14
Windows平台下 Java运行时环境(虚拟机)安装包javaSetup8u144.exe
2017-10-14
tesseract简体中文语言包chi_sim.traineddata
2017-10-14
Windows下Tesseract 4.0安装包
2017-10-14
张正友相机标定Opencv实现(完整程序+棋盘图)实例源码
2016-10-26
贪吃蛇小游戏实现
2016-08-01
90年代经典“手游”—拼图板小游戏Opencv实现
2016-07-29
直方图反向投影的肤色检测
2016-07-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人