1首先要准备几样东西:
(1)要预测的图像,需要32×32大小;
(2)网络配置文件,prototxt,以及每个图像的路径及其序号。
(3)训练好的caffemodel以及均值二进制文件,貌似可以定值,需要通过数据训练计算得到。
(3)预测的主程序
内容:
View Code
2结果:
View Code
各个类别图示:
3后记
上面是用CPU跑的,我还等了几秒钟,用了下GPU处理,瞬间,真的很快,Enter完就出结果了。
可以参照前一篇文章配置windows下的ssd,本文假设ssd已经通过windows下的编译。
1准备数据
需要根据PASCAL VOC格式 准备对应的数据,推荐一个好用的贴标签软件(>
CUDA安装(包括nvidia显卡驱动和cuda库文件):CUDA(ComputeUnifiedDeviceArchitecture),是显卡厂商NVIDIA推出的运算平台CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。开发人员现在可以使用C语言来为CUDA™架构编写程序,C语言是应用最广泛的一种高级编程语言。所编写出的程序于是就可以在支持CUDA™的处理器上以超高性能运行。CUDA30已经开始支持C++和FORTRAN。通过英伟达安装包来分别安装库的驱动程序而不是使用apt-get来安装。如果只有CPU可以跳过这步。主板BIOS里面要选择自由选择显卡,这样才能识别nvidia的显卡并进行驱动更新。快捷键ctrl+alt+T打开命令终端,加入官方ppa源(ppa简介)。[html]viewplaincopy需要输入密码并按enter键确认。之后刷新软件库并安装最新驱动。[html]viewplaincopy安装完成后通过下面命令查看是否安装成功。[html]viewplaincopy注意安装完成后要重启,有如下效果则安装完成,否则就说明安装有问题,尝试关闭UEFI保护试试。$nvidia-settings$sudoapt-getupdate$sudoapt-getinstallnvidia-367nvidia-settingsnvidia-prime$sudoadd-apt-repositoryppa:graphics-drivers/ppa
所谓三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交换。
一般linux下c++程序移植主要有以下问题: 文件路径不同,linux有根目录,windows分盘 基础库是基本一致的,扩展库windows下可能没有,有源文件的可以下载,经过编译的就没法了 系统api可能需要改 讲道理你问这个问题说明你要移植的程序不复杂,
步骤1:安装所需的依赖库
1
命令如下。
(1)sudo apt-get update
(2)sudo apt-get install -y --no-install-recommends \
build-essential \
cmake \
git \
libgoogle-glog-dev \
libprotobuf-dev \
protobuf-compiler \
python-dev \
python-pip
(3)sudo pip install numpy protobuf
END
步骤2:可选的GPU支持
1
概述。如果您打算使用GPU而不是CPU,那么您应该安装NVIDIA CUDA 8和cuDNN v51或v60,这是GPU加速的深度神经网络的原生类型库。
2
首先更新您的显卡驱动程序(NVIDIA CUDA 8)! 否则您可能会遇到各种难以诊断的错误。
1、适用Ubuntu 1604的命令行。
(1)sudo apt-get update && sudo apt-get install wget -y --no-install-recommends
(2)wget ">
(3)sudo dpkg -i cuda-repo-ubuntu1604_8061-1_amd64deb
(4)sudo apt-get update
(5)sudo apt-get install cuda
2、适用Ubuntu 1404的命令行。
(1)sudo apt-get update && sudo apt-get install wget -y --no-install-recommends
(2)wget ">
(3)sudo dpkg -i cuda-repo-ubuntu1404_8061-1_amd64deb
(4)sudo apt-get update
(5)sudo apt-get install cuda
3
安装cuDNN(适用所有Ubuntu版本)。
(1)CUDNN_URL=">
(2)wget ${CUDNN_URL}
(3)sudo tar -xzf cudnn-80-linux-x64-v51tgz -C /usr/local
(4)rm cudnn-80-linux-x64-v51tgz && sudo ldconfig
END
步骤3:可选依赖库
libgflags库安装。注意:libgflags2是用于Ubuntu 1404;libgflags-dev是用于Ubuntu 1604。这两个不能搞混,否则安装会报错。
(1)适用Ubuntu 1404的命令行。
sudo apt-get install -y --no-install-recommends libgflags2
(2)适用Ubuntu 1604的命令行。
sudo apt-get install -y --no-install-recommends libgflags-dev
安装其他可选依赖库(适合Ubuntu 1404和1604)。
(1)sudo apt-get install -y --no-install-recommends \
libgtest-dev \
libiomp-dev \
libleveldb-dev \
liblmdb-dev \
libopencv-dev \
libopenmpi-dev \
libsnappy-dev \
openmpi-bin \
openmpi-doc \
python-pydot
(2)sudo pip install \
flask \
future \
graphviz \
hypothesis \
jupyter \
matplotlib \
pydot python-nvd3 \
pyyaml \
requests \
scikit-image \
scipy \
setuptools \
six \
tornado
几百KB到几十MB之间。
实现一个基本的Faster R-CNN算法所需的程序大小可能在几百KB到几十MB之间。如果考虑到训练和测试数据集的大小,以及各种依赖库和工具,程序的总大小可能更大。
Faster R-CNN程序指的是实现Faster R-CNN算法所需的计算机程序,通常使用深度学习框架(如TensorFlow、PyTorch、Caffe等)进行开发和实现。
观察caffe-master的第三方程序包,这个与caffe-master本文件夹都需要加上去的。所以在属性表里,先后需要include以下这些:(路径请自行修改)
D:\caffe-master\include
D:\NugetPackages\boost15900\lib\native\include
D:\NugetPackages\glog0330\build\native\include
D:\NugetPackages\gflags2121\build\native\include
D:\NugetPackages\protobuf-v120261\build\native\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v75\include
D:\NugetPackages\OpenBLAS02141\lib\native\include
D:\caffe-master\include\caffe\layers
D:\NugetPackages\OpenCV2410\build\native\include
D:\NugetPackages\OpenCV2410\build\native\include\opencv
D:\NugetPackages\OpenCV2410\build\native\include\opencv2
最后一项是CUDA的配置路径,找一下应该就可以找到。
那么我们的附加依赖项需要添加:
libcaffelib
libprotobuflib
opencv_highgui2410lib
opencv_core2410lib
opencv_imgproc2410lib
libgloglib
gflagslib
libopenblasdlla
hdf5lib
hdf5_hllib
cublaslib
cublas_devicelib
cudalib
cudadevrtlib
cudnnlib
cudartlib
cufftlib
cudart_staticlib
cufftwlib
cusparselib
cusolverlib
curandlib
nppclib
OpenCLlib
对了,最后别忘了配置环境变量哟,配置完之后重启一遍:
D:\NugetPackages\gflags2121\build\native\x64\v120\dynamic\Lib
D:\NugetPackages\hdf5-v120-complete18152\lib\native\bin\x64
D:\NugetPackages\glog0330\build\native\bin\x64\v120\Release\dynamic
D:\NugetPackages\OpenBLAS02141\lib\native\bin\x64
D:\NugetPackages\gflags2121\build\native\x64\v120\dynamic\Lib
D:\NugetPackages\OpenCV2410\build\native\bin\x64\v120\Release
D:\caffe-master\Build\x64\Release
那么在做完这些之后,我们就可以在新建工程里使用Caffe的接口了
以上就是关于如何在caffe中实现矩阵 *** 作全部的内容,包括:如何在caffe中实现矩阵 *** 作、如何使用ssd训练自己的数据、安装caffe 必须安cuda吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)