Caffe 在 win10 环境下配置

2023-11-03

参考:

Caffe
windows10下caffe安装?
Windows 10下安装配置Caffe并支持GPU加速


整了好几天,终于实现 windows 环境下的 caffe 编译,实现 win10 + caffe + vs2013 + anaconda2.7 + cuda8.0 + cuDNN_v5


主要内容

  1. 软件安装
  2. caffe 编译
  3. 测试
  4. mnist 数据集和 LeNet 网络训练
  5. 小结

软件安装

当前运行环境:Win10 + Nvidia 940MX

需要安装软件:

vs2013:VS2013 社区版

anaconda2.7:https://www.continuum.io/downloads#windows

cuda8.0:https://developer.nvidia.com/cuda-downloads

cudnn_v5:https://developer.nvidia.com/cudnn

Note 1:安装 cuda 过程中可能会遇到如下情况

这里写图片描述

忽略继续即可

Note 2:安装 cuda 过程中不要改变安装的路径

在win10安装CUDA 8.0后,安装目录竟然消失了,重新安装了三遍,还是消失???

Note 3:安装 anaconda 时需要注意添加路径到环境变量

C:\software\anaconda\Anaconda2
C:\software\anaconda\Anaconda2\Scripts
C:\software\anaconda\Anaconda2\Library\bin

caffe 编译

下载 caffe(这里使用 microsoft 版本):Microsoft/caffe

配置

复制 .\windows\CommonSettings.props.example.\windows\CommonSettings.props

打开 CommonSettings.props 文件,修改如下:

默认 <CudaVersion>7.5,修改为 <CudaVersion>8.0</CudaVersion>

默认 <PythonSupport>false,修改为 <PythonSupport>true</PythonSupport>

同时需要修改下面的 <PythonDir> 路径,替换为当前 anaconda 的安装路径:<PythonDir>C:\software\anaconda\Anaconda2\</PythonDir>

使用 python 还需要安装以下文件:

conda install --yes numpy scipy matplotlib scikit-image pip
pip install protobuf

编译

打开 .\windows\Caffe.sln

编译 libcaffe

刚开始编译的是 libcaffe,右击 libcaffe -> Properties

这里写图片描述

左侧选择 Configuration Properties -> C/C++,右侧选择 Treat Warnings As ErrorsNo

这里写图片描述

Note:选择 Release 模式和 x64 平台

配置完成,点击运行即可

问题 1:\INCLUDE\CAFFE\PROTO\CAFFE.PB.H - 找不到此类文件或文件夹

网上有其他的答案,我的解决方法是修改上面的属性后重新编译就可以了

问题 1:Unable to start Program libcaffe.lib

编译完成最后,弹出上面错误。其实 libcaffe.lib 已经编译完成(在 ./build/x64/Release 文件夹)。或者右击 libcaffe 重新编译即可

编译全部工程

完成 libcaffe 的编译后,就可以编译其它子工程了。右击解决方案,点击 Build Solution,等待编译完成


测试

编译生成的文件均放置在 .\build\x64\Release 文件夹内

测试 caffe.exe

生成的 caffe.exe.\build\x64\Release 目录下

打开命令行窗口,转到 .\build\x64\Release 路径下,输入 caffe 运行:

这里写图片描述

测试 pycaffe

有两种方法

第一种,将 caffe_root\Build\x64\Release\pycaffe 文件夹放置到 anaconda_root\Lib\site-packages 路径下

第二种,将 caffe_root\Build\x64\Release\pycaffe 路径加入到 PythonPath 环境变量中

完成后,打开 python 窗口,输入 import caffe 测试:

这里写图片描述


mnist 数据集和 LeNet 网络训练

参考:windows 10 环境安装caffe并测试mnist成功详解

下载 mnist 数据集

如果在 linux 环境下,执行 ./data/mnist/get_mnist.sh 文件即可

windows 环境下,需要手动下载

官网地址:THE MNIST DATABASE of handwritten digits

我的地址:mnist

.\data\mnist\ 路径下新建文件夹 mnist_train_lmdbmnist_test_lmdb

  • mnist_train_lmdb 文件夹中放置 train-images-idx3-ubytetrain-labels-idx1-ubyte
  • mnist_test_lmdb 文件夹中放置 t10k-images-idx3-ubytet10k-labels-idx1-ubyte

制作 lmdb 格式数据集

在根路径下新建批处理文件 create_mnist.bat

.\Build\x64\Release\convert_mnist_data.exe .\data\mnist\mnist_train_lmdb\train-images-idx3-ubyte .\data\mnist\mnist_train_lmdb\train-labels-idx1-ubyte .\examples\mnist\mnist_train_lmdb
.\Build\x64\Release\convert_mnist_data.exe .\data\mnist\mnist_test_lmdb\t10k-images-idx3-ubyte .\data\mnist\mnist_test_lmdb\t10k-labels-idx1-ubyte .\examples\mnist\mnist_test_lmdb
pause

双击执行:

这里写图片描述

.\examples\mnist\ 文件夹下生成文件夹 mnist_train_lmdbmnist_test_lmdb

训练 LeNet 网络

在根路径下新建批处理文件 train_lenet.bat

SET GLOG_logtostderr=1
.\Build\x64\Release\caffe.exe train --solver=.\examples\mnist\lenet_solver.prototxt
pause

双击执行:

这里写图片描述

训练识别精度达到 99.07%

.\examples\mnist\ 文件夹下生成文件

lenet_iter_5000.caffemodel
lenet_iter_5000.solverstate
lenet_iter_10000.caffemodel
lenet_iter_10000.solverstate`

小结

目前使用的 caffe 版本是 githubMicrosoft 提供的,但是这个库已经不维护了,用于学习还是可以滴

编译好的版本:caffe

最新的版本:BVLC/caffe

测试发现,这个库很难编译成功

也有人自己维护了 caffe in windows

hyppynearcaffe
happynear/caffe-windows

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Caffe 在 win10 环境下配置 的相关文章

  • 打印机的共享设置方法

    共享打印机的前提是 共享的这台电脑和要连接打印机的这些电脑必须在同一个局域网中 第一步 在开始菜单当中 找到设备和打印机 这里有个前提 就是要共享的这台打印机必须已经连接并安装好驱动程序 第二步 找到我们要共享的这台打印机图标 第三步 在这

随机推荐

  • TOMCAT-部署项目-tomcat 不能多启动问题解决方案

    tomcat 不能多启动问题 解决方案 更改tomcat server xml 所有涉及端口 8089 端口 8005 8089 8443 8009 8088 端口 8006 8088 8444 8010
  • Python数据分析-绘图-2-Seaborn进阶绘图-7-网格图

    一 FacetGrid 该函数可以绘制最多三个维度 row col hue 行 列和颜色 使用数据集构造网格的变量初始化对象 可以通过调用map函数或map dataframe函数将一个或多个绘图函数应用于每个子集 或包含在relplot
  • tcl系列之列表操作

    目录 1 列表定义 2 列表操作命令 2 1 concat 2 2 lrepeat 2 3 llength 2 4 lindex 2 5 lrange 2 6 linsert 2 7 lreplace 2 8 lset 2 9 lappen
  • linux 升级内核 需要重启吗,如何在不重新启动的情况下升级服务器内核?

    问题描述 这是一个加载的问题 因为我已经知道 并且对ksplice非常感兴趣 问题在于 由于他们被Oracle收购 他们被迫从产品中提取大量服务器 答案并不像以前那么简单 You can build your own ksplice pat
  • 解决Adobe Acobat设置了背景色,显示出现白条的问题!

    目录 问题描述 解决办法 问题描述 改变了Adobe Acobat原本的白色背景 如设置了护眼色 PDF文档打开出现很多白色横条 如下图所示 解决办法 取消2D图形加速即可 步骤如下 进入 编辑 首选项 种类 页面显示 渲染 取消勾选使用
  • wc命令

    Linux wc命令用于计算字数 利用wc指令我们可以计算文件的Byte数 字数 或是列数 若不指定文件名称 或是所给予的文件名为 则wc指令会从标准输入设备读取数据 语法 wc clw help version 文件 参数 c或 byte
  • 配置方法数超过 64K 的应用

    https developer android com studio build multidex html 配置方法数超过 64K 的应用 本文内容 关于 64K 引用限制 Android 5 0 之前版本的 Dalvik 可执行文件分包
  • 《区块链基础知识25讲》-第十四讲-存储交易数据

    目标 是利用区块链技术 以有序的方式维护交易数据的整个历史记录 挑战 是如何按交易顺序存储发生的交易数据 并且找到一种能够快速检测到交易数据发生变化的方法 通过创建一个交易数据库 并维护一个保留了将交易添加到交易数据库中顺序的目录来实现对历
  • 深入理解Java IO流:高效数据输入输出的利器

    文章目录 简介 基本概念 字节流 字节输出流 OutputStream 抽象类 字节输出流的子类 FileOutputStream 字节输入流 InputStream 抽象类 字节输入流的子类 FileInputStream 字符流 字符输
  • css开启第一张简单式网页图

    参考链接 https www runoob com try try cdnjs php filename trycss website layout blog 我是参考上述链接 稍微做些修改 然后如下
  • poi 顺序解析word_POI解析word文档,支持DOC和DOCX版本

    一 简介 Apache POI是一个开源的利用Java读写Excel WORD等微软OLE2组件文档的项目 最新的3 5版本有很多改进 加入了对采用OOXML格式的Office 2007支持 如xlsx docx pptx文档 二 POI组
  • fetch详细讲解

    fetch 是一种网络通信协议 用于在客户端和服务器之间传输数据 该协议使用 HTTP 请求和响应进行通信 与传统的 AJAX 方式相比 fetch 更加简单易用 并提供了许多现代化的功能 1 fetch 介绍 使用 fetch 可以方便地
  • Qt重新加载内存中的QSS样式

    什么叫重新加载内存中的QSS样式 当QSS被封装到QSS文件时 需要使用这个QSS 需要将其读出来 理论上说 读出来后 其在程序结束之前应该就一直保存在内存中 当我们给控件设置一个动态属性 在该QSS中存在不同属性 不同样式的时候 在程序运
  • benchmark woa wsl arm64 go

    code 利用比特币的pow算法的简易版本对woa arm64 与 woa wsl arm64 版本的go进行benchmark测试 源码随便从网上摘的 这个东西学习过比特币区块链的人都写过 大同小异 package main import
  • FTP工具upload失败,上载失败

    目标服务器FTP没开 去目标服务器的终端 LInux 输入一下 service vsftpd start ps ef grep ftp
  • 【Linux基础】第29讲 Linux用户和用户组权限控制命令(一)

    1 useradd 添加新用户 注意 当前用户必须有添加用户的权限 1 基本语法 useradd 用户名 功能描述 添加新用户 2 案例 root sue virtual machine usr local useradd hadoop 2
  • 完美解决ModuleNotFoundError: No module named pip._internal

    解决方案 命令1 1 curl https bootstrap pypa io get pip py o get pip py 命令2 2 python get pip py force reinstall 如果提示curl不是内部或外部命
  • PING 192.168.5.13 (192.168.5.13 ) 56(84) data bytes后长时间不响应

    PING 192 168 5 13 192 168 5 13 56 84 data bytes后长时间不响应 原因 没有关闭电脑的防火墙 解决办法 关闭电脑防火墙 解决后 ping通了
  • 虚幻4学习笔记(8)动手制作一个小游戏

    动手制作一个小游戏 新节点介绍 前期准备 搭建场景 门蓝图 灯蓝图 创建关卡蓝图 B站UP谌嘉诚课程 https www bilibili com video BV164411Y732 新节点介绍 前期准备 搭建场景 H隐藏 场景中当前选中
  • Caffe 在 win10 环境下配置

    参考 Caffe windows10下caffe安装 Windows 10下安装配置Caffe并支持GPU加速 整了好几天 终于实现 windows 环境下的 caffe 编译 实现 win10 caffe vs2013 anaconda2