【caffe-Windows】caffe+VS2013+Windows+GPU配置+cifar使用

前言

国际惯例,先来波地址:

CUDA WIN7:链接:http://pan.baidu.com/s/1nvyA3Qp 密码:h0f3   官方网址:https://developer.nvidia.com/cuda-toolkit

CUDA WIN10:链接:http://pan.baidu.com/s/1eRDJYmA 密码:1m4e

此处可以下载各种cuda版本:https://developer.nvidia.com/cuda-toolkit-archive

cudnn:链接:http://pan.baidu.com/s/1hr3Ug76 密码:vmdq  官方网址:https://developer.nvidia.com/cudnn     【可下载V5.0版本】

【更新日志2017-8-9】

偶然间发现了一条重要信息,caffe的微软分支竟然明确标出了支持cudnn v4.0和v5.0,而且BVLC的分支也明确标出只支持cudnn v3.0和cudnn4.0,原来一直忽视掉了这条信息,尴尬,还自己踩进了用cudnn v5.0编译BVLC -caffe分支的坑。特在此提示大家,目前微软的caffe支持cuda8.0+cudnn v5.0的编译,而这两个依赖都是目前NVIDIA官方网站推荐的,编译的时候只需要把CommonSettings.props的cuda版本改成<CudaVersion>8.0</CudaVersion>即可。

第一步:

为了方便,直接拷贝一个无GPU版本的caffe,根据情况修改一下名字,一般来说路径最好不要带中文,避免不必要麻烦,此处命名为CaffeDev-GPU文件夹。

安装CUDA(一直下一步就行了),然后解压cudnn

第二步:

修改配置文件路径E:\CaffeDev-GPU\caffe-master\windows下的CommonSettings.props,此处可对比无GPU版本。将GPU版本的配置文件修改如下:


更新日志2017-11-1

如果你没有cudnn或者当前的CUDA版本仅支持CUDNNv5,而caffe版本仅支持CUDNNv3和v4,那么上面的UseCuDNN也可以设置成false, 也就是说类似于这样

<CpuOnlyBuild>false</CpuOnlyBuild>
<UseCuDNN>false</UseCuDNN>
<CudaVersion>8.0</CudaVersion>

第三步:

修改系统环境变量,为了不出现什么麻烦,将解压的D:\caffe tool\cudnn-7.0-win-x64-v4.0-prod\cuda中的bin、include、lib三个文件夹拷贝到环境变量中CUDA_PATH显示的路径中的文件夹去去,直接覆盖,需要替换的替换~~~【此处非加环境变量哦,因为拷贝过去以后就已经存在环境变量中了】

然后在系统变量中添加变量名为:CuDnnPath 变量值为:D:\caffe tool\cudnn-7.0-win-x64-v4.0-prod的路径,此处的路径是你解压的cudnn地方,读者根据自己电脑做修改。接下来和CPU版本一样,运行caffe.sln,分别用debug和release都生成一遍。


第四步:

其实差不多完了,这里简要说一下:按照前面无GPU版本,建立input_folder,与它并列建立两个bat文件,内容如下:

convert.bat

convert_cifar_data.exe  input_folder output_folders leveldb
pause

mean.bat

compute_image_mean.exe output_folders/cifar10_train_leveldb mean.binaryprotopause

运行之

第五步:

将output_folders内的两个文件和mean.binaryproto拷贝到E:\CaffeDev-GPU\caffe-master\examples\cifar10下,并且修改cifar10_quick_solver.prototxt最后一句的CPU为GPU

在E:\CaffeDev-GPU\caffe-master下建立一个bat文件:

train.bat

.\Build\x64\Release\caffe.exe train --solver=examples/cifar10/cifar10_quick_solver.prototxt
pause
同样运行之

不得不说,这速度,呼呼地~~~~比用CPU训练四个小时快不知道多少倍

第六步:

在E:\CaffeDev-GPU\caffe-master\Build\x64\Release下建立一个bat:

classification.bat

classification.exe E:\CaffeDev-GPU\caffe-master\examples\cifar10\cifar10_quick.prototxt E:\CaffeDev-GPU\caffe-master\examples\cifar10\cifar10_quick_iter_4000.caffemodel.h5 E:\CaffeDev-GPU\caffe-master\examples\cifar10\mean.binaryproto E:\CaffeDev-GPU\caffe-master\examples\cifar10\synset_words.txt E:\CaffeDev-GPU\caffe-master\examples\cifar10\dog.jpg
pause

【此处的dog跟前面的无GPU版本一样,读者可以去网上随便下载】

dog.jpg


cat.jpg


运行此bat以后:


可以发现,和上次无GPU版本的结果貌似有点不一样吧~~~但是快哭了可怜滴狗狗依旧没摆脱被识别为猫的命运

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/246549.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【一些网站的收集】包含机器学习深度学习大牛主页等

数学概念部分 旋转矩阵、欧拉角、四元数的比较 欧拉角和四元数的表示 四元数与旋转 B样条曲线 非常好的概率统计学习的主页 误差方差偏差 编程语言学习 C#编程视频 OpenGL编程NeHe OpenGL官网 OpenGL“我叫MT“纯手工3D动画制作之1——基础介绍 【强大】非常好的Op…

Eureka源码分析

Eureka源码分析 Eureka server入口: Spring.factories PS: 意味着如果加载EurekaServerAutoConfiguration成功,需要 ConditionalOnBean(EurekaServerMarkerConfiguration.Marker.class)需加载成功. 通过Bean注入了很多类 本质上, eureka-server包含很多事件: EurekaInstanceC…

matlab程序中,如何解决矢量长度必须相同的问题

主要原因就是画图的x和y长度不一样&#xff0c;我用一个例子说明。 问题代码&#xff1a; clear all;close all;clc;x 0 : 1: 9;y sin(x);n 2*length(x);yi interpft(y, n);xi 0 : 0.5 : 10;hold on ;plot(x, y ,ro);plot(xi, yi, b.-);plot(x, sin(x),m--);legend(原始…

matlab 功率谱分析函数psd用法

psd简介 PSD(power spectrum analysis)功率谱分析&#xff0c;PSD在给定频带上的积分计算信号在该频带上的平均功率。与均值-平方谱相反&#xff0c;这个光谱中的峰值并没有反映出给定频率的能量。 单边PSD包含了信号的总功率在频率间隔从DC到一半的奈奎斯特速率。双侧PSD包含…

linux tar (打包、压缩、解压)命令

打包程序&#xff1a;tar c: 创建文档t&#xff1a; 列出存档内容x&#xff1a;提取存档f&#xff1a; filename 要操作的文档名v&#xff1a;详细信息 一&#xff1a;打包 打包&#xff1a;是指把文件整合在一起&#xff0c;不压缩 1.将文件打包&#xff1a;tar cf a.tar…

虚拟机添加硬盘扩容

1.设置→添加→硬盘 2.选择磁盘类型 3.开启虚拟机 4.用ls 命令查看&#xff1a;ls /dev/sd* 5.最后就可以对sdb进行分区操作 这里好麻烦&#xff0c;等我有空&#xff0c;在补上&#xff01; . . .

利用matlab将三维数据画成三维立体图

首先先分析对象。将数据利用matlab画出图&#xff0c;最开始是导入数据&#xff0c;然后处理数据&#xff0c;最后将处理的数据画出来。 所以我将它分为三个步骤。 第一步&#xff1a;导入数据 如果是mat数据。可以直接load如果是txt数据。可以用txtread如果是excel数据。可…

世界坐标、相机坐标、图像坐标、像素坐标的原理、关系,并用matlab仿真

世界坐标、相机坐标、图像坐标、像素坐标的原理、关系&#xff0c;并用matlab仿真 照相机是日常生活中最常见的。它能把三维的空间图片等比例缩小投影在照片上&#xff0c;称为一个二维图像。 以下我们就讲一讲原理&#xff0c;并相应的进行matlab仿真。 在学之前&#xff0…

matlab 三维高程根据图片颜色给对应点赋予颜色

目录 1. 问题分析 2. 技术分析 3. 程序代码 4. 代码运行结果 1. 问题分析 日常工作尤其是测绘、地质、遥感行业&#xff0c;需要画DEM模型&#xff0c;并在这个模型的基础上&#xff0c;进行着色、渲染。比如&#xff0c;地质分析地面三维地表形变之时&#xff0c;需要根据D…

matlab 计算N天前(后)的日期

注意时间的格式&#xff1a;是字符串、数字还是日期&#xff1f; 下面是计算明天、今天、昨天的日期。 day1 datetime(datestr(now,yyyy-mm-dd))caldays(1)%tomorrowday0 datetime(datestr(now,yyyy-mm-dd))%todayday_1 datetime(datestr(now,yyyy-mm-dd))-caldays(1)%yest…

CAT arguments dimensions are not consistent.CAT参数的维度不一致。

错误实例&#xff1a; 在写符号矩阵的时候常常会出现下面错误&#xff1a; 错误&#xff1a;CAT arguments dimensions are not consistent. CAT参数的维度不一致。 举个栗子&#xff1a; clear; close all; clc; syms A_0 B_0 B C D E F G H ;T_3 [2*A_0 C-D*1i H G*1i;C…

传感器尺寸、像素、DPI分辨率、英寸、毫米的关系

虽然网上有很多这种资料&#xff0c;但是太过于复杂&#xff0c;每个人的说法都不一样&#xff0c;看的让人云里雾里的&#xff0c;我总结了一下&#xff0c;不知道对不对&#xff01; 1. 1英寸25.4mm 2. 传感器尺寸&#xff1a;传感器的尺寸是指传感器的大小&#xff0c;一般…

利用PS将n张图制作成动态GIF图

第一步&#xff1a;打开PS,导入图片&#xff0c;文件→脚本→将文件载入堆栈… 数据量大的话&#xff0c;就耐心等待一下。 第二步&#xff1a; 创建祯动画 如果没有这个&#xff0c;可以点击窗口→时间轴 如果祯排列顺序反了&#xff0c;这样 最后按照自己要求设置祯动画时间&…

matlab padarray函数详解

本文来自于matlab帮助页面&#xff0c;命令&#xff1a;help padarray 语法&#xff1a; B padarray(A,padsize) B padarray(A,padsize,padval) B padarray(A,padsize,padval,direction) gpuarrayB padarray(gpuarrayA,___) 描述&#xff1a; B padarray(A,padsize…

matlab 三维画图函数错误提示:数据维度必须一致

用三维画图软件经常会出现下面错误 以mesh(x,y,z)为例&#xff1a; 主要原因是因为没有注意Z数据格式&#xff0c;Z必须是矩阵形式。而且Z矩阵的m*n必须与y,x相关&#xff0c; mesh(X,Y,Z) 使用 Z 确定的颜色绘制线框网格&#xff0c;因此其颜色与曲面高度成比例。如果 X 和 …

毕业论文格式修改方法

好久没更新博客&#xff0c;忙着毕业论文。刚答完辩时就想写一篇关于论文格式的博客&#xff0c;这样在修改论文的时候很轻巧很多&#xff0c;别人花一两天修改好&#xff0c;我只需要几个小时&#xff08;包括图片大小、页面调整、错别字修改&#xff09;。话不多说&#xff0…

批量下载哨兵(Sentinel)数据

由于网络的原因&#xff0c;现在下载哨兵数据很难&#xff0c;直接在国外网站上下载&#xff0c;需要科学上网。某宝上虽然也提供下载哨兵数据的服务&#xff0c;但是价格太贵了&#xff0c;因此在网上找了很久&#xff0c;发现了一个非常非常实用的工具Internet Download Mana…

carsim输出端口2的宽度无效_PIO CORE 解析 (2)

下图为一般配置的PIO CORE:具有输入&#xff0c;输出和中断信号引脚&#xff0c;通过Avalon-MM接口与系统交互。下图提供了支持双向口功能的实例图&#xff1a;PIO内核的Avalon-MM接口由单个Avalon-MM从端口组成。从端口能够进行基本的Avalon-MM读和写传输。AvalonMM从端口提供…

利用matlab提取中心线

先看看代码运行结果&#xff08;红色部分表示河流中心线&#xff0c;黑色表示河流两岸&#xff01;&#xff09;&#xff1a; 注&#xff1a; 1. 由于河流两岸的坐标不是等距采样&#xff0c;所以无法保证100%准确&#xff0c;只要按着要求处理河岸坐标数据Shape文件&#xff…

b类 蚂蚁金服_股权设计与合伙制,解析蚂蚁金服与华为的顶层结构

股权设计与合伙制商道君这篇文章讲一讲股权设计与合伙制。股权设计和合伙制两者都是企业的顶层设计&#xff0c;股权的设计和合伙人制度有不同之处&#xff0c;但核心点都只有一个那就是——争夺企业的控制权。举例&#xff1a;马云与阿里巴巴马云说&#xff0c;如果阿里巴巴不…