利用caffe训练的模型,写一个测试程序
2016-04-27 20:02
573 查看
前两篇关于配置caffe和使用它训练。
但是,有时候希望用它训练,但分类的时候在自己的程序里面。
所以研究了一下调用caffe库的方法。
在caffe的官方文件里面,就有classification.cpp作为demo。
如果自己建一个工程,首先需要把所有依赖库都加上。
包括:caffe(废话),boost,glog,gflag,hdf5,openblas,opencv,protobuf(后面这些事caffe要用的)
对于caffe,要把它的include文件夹和libcaffe.lib导入到工程里。
其他库由于nuget已经帮我们下好了,一样
1,在包含目录里添上:
../caffelib/include;
../caffelib/include/caffe/proto;
H:\NugetPackages\boost.1.59.0.0\lib\native\include;
H:\NugetPackages\gflags.2.1.2.1\build\native\include;
H:\NugetPackages\glog.0.3.3.0\build\native\include;
H:\NugetPackages\protobuf-v120.2.6.1\build\native\include;
H:\NugetPackages\OpenBLAS.0.2.14.1\lib\native\include;
H:\NugetPackages\OpenCV.2.4.10\build\native\include;
2,在库目录里添上
../caffelib/lib;
H:\NugetPackages\boost_date_time-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\boost_filesystem-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\boost_system-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\boost_thread-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\boost_chrono-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\glog.0.3.3.0\build\native\lib\x64\v120\Release\dynamic;
H:\NugetPackages\protobuf-v120.2.6.1\build\native\lib\x64\v120\Release;
H:\NugetPackages\OpenBLAS.0.2.14.1\lib\native\lib\x64;
H:\NugetPackages\hdf5-v120-complete.1.8.15.2\lib\native\lib\x64;
H:\NugetPackages\OpenCV.2.4.10\build\native\lib\x64\v120\Release;
H:\NugetPackages\gflags.2.1.2.1\build\native\x64\v120\dynamic\Lib;
3,在附加依赖项里面添上
libcaffe.lib
libopenblas.dll.a
libprotobuf.lib
opencv_highgui2410.lib
opencv_core2410.lib
opencv_imgproc2410.lib
libglog.lib
gflags.lib
hdf5.lib
hdf5_hl.lib
然后把classification.cpp作为demo运行就可以了。当然,也可以根据需要修改这部分代码,不难。
注,根据nuget默认目录不同,上面的目录也做出相应变化
但是,有时候希望用它训练,但分类的时候在自己的程序里面。
所以研究了一下调用caffe库的方法。
在caffe的官方文件里面,就有classification.cpp作为demo。
如果自己建一个工程,首先需要把所有依赖库都加上。
包括:caffe(废话),boost,glog,gflag,hdf5,openblas,opencv,protobuf(后面这些事caffe要用的)
对于caffe,要把它的include文件夹和libcaffe.lib导入到工程里。
其他库由于nuget已经帮我们下好了,一样
1,在包含目录里添上:
../caffelib/include;
../caffelib/include/caffe/proto;
H:\NugetPackages\boost.1.59.0.0\lib\native\include;
H:\NugetPackages\gflags.2.1.2.1\build\native\include;
H:\NugetPackages\glog.0.3.3.0\build\native\include;
H:\NugetPackages\protobuf-v120.2.6.1\build\native\include;
H:\NugetPackages\OpenBLAS.0.2.14.1\lib\native\include;
H:\NugetPackages\OpenCV.2.4.10\build\native\include;
2,在库目录里添上
../caffelib/lib;
H:\NugetPackages\boost_date_time-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\boost_filesystem-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\boost_system-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\boost_thread-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\boost_chrono-vc120.1.59.0.0\lib\native\address-model-64\lib;
H:\NugetPackages\glog.0.3.3.0\build\native\lib\x64\v120\Release\dynamic;
H:\NugetPackages\protobuf-v120.2.6.1\build\native\lib\x64\v120\Release;
H:\NugetPackages\OpenBLAS.0.2.14.1\lib\native\lib\x64;
H:\NugetPackages\hdf5-v120-complete.1.8.15.2\lib\native\lib\x64;
H:\NugetPackages\OpenCV.2.4.10\build\native\lib\x64\v120\Release;
H:\NugetPackages\gflags.2.1.2.1\build\native\x64\v120\dynamic\Lib;
3,在附加依赖项里面添上
libcaffe.lib
libopenblas.dll.a
libprotobuf.lib
opencv_highgui2410.lib
opencv_core2410.lib
opencv_imgproc2410.lib
libglog.lib
gflags.lib
hdf5.lib
hdf5_hl.lib
然后把classification.cpp作为demo运行就可以了。当然,也可以根据需要修改这部分代码,不难。
注,根据nuget默认目录不同,上面的目录也做出相应变化
相关文章推荐
- CUDA搭建
- 稀疏自动编码器 (Sparse Autoencoder)
- 白化(Whitening):PCA vs. ZCA
- softmax回归
- 卷积神经网络初探
- Some Notes of Caffe Installation
- Some Notes of Python Interfaces Pycaffe (Caffe)
- TensorFlow人工智能引擎入门教程之九 RNN/LSTM循环神经网络长短期记忆网络使用
- TensorFlow人工智能引擎入门教程所有目录
- 如何用70行代码实现深度神经网络算法
- 近200篇机器学习&深度学习资料分享(含各种文档,视频,源码等)
- 安装caffe过程记录
- DIGITS的安装与使用记录
- 图像识别和图像搜索
- 卷积神经网络
- 用于对象识别的最好的多级结构是什么?(What is the Best Multi-Stage Architecture for Object Recognition)
- deep learning 在各对象数据集上的识别率比较
- 深度学习札记
- 51CTO学院优质新课抢先体验-5折好课帮你技能提升、升职加薪
- caffe ubuntu 14.04 install