项目简介
本项目构建了一个集成式开发环境,在配置好 Caffe 环境后,只需将准备好的图片放入 data 目录,就能一键完成生成 lmdb 数据文件、均值文件、标注文件、测试评估模型、找出错误样本以及部署模型等操作。该环境具有跨平台特性,可在 Windows 和 Linux 系统间无缝切换。
项目的主要特性和功能
- 跨平台:支持在 Windows 和 Linux 系统间自由切换。
- 一键式操作:配置好 Caffe 环境,将图片放入指定目录,就能一键完成从数据准备到模型部署的全流程操作。
- 自动化数据处理:借助 preprocess/preprocess.py 自动获取文件夹下所有文件路径及对应标签,输出训练和验证集文件以及标签映射文件。
- 模型评估:通过 evaluation.py 对 data 文件下的数据进行评估,计算模型错误率,打印误识别图片信息并保存错误样本。
- 高效部署:提供 C++ 部署工程,采用单例模式避免每次预测都加载模型,可一行代码使用 CNN,同时也支持调用 Caffe 自身进行分类识别。
安装使用步骤
1. 配置 Caffe
Windows
plaintext
::为了减少日后不必要的麻烦,建议 VS2015,Cuda8.0,cudnn5.1 及以上,python2.7
cd caffe
git checkout windows
scripts\build_win.cmd
Linux
plaintext
cd caffe
mkdir build
cd build
cmake ..
make -j8
2. 数据准备
(文档未提供具体步骤,需进一步补充)
3. 定义模型
(文档未提供具体步骤,需进一步补充)
4. 训练模型
plaintext
./train.sh
5. 评估模型
(文档未提供具体步骤,需进一步补充)
6. 部署模型
C++ 部署
在 cpp 文件夹下的 evaluationcpp 工程,使用单例模式,只需使用如下代码即可在项目中一行代码使用 CNN:
plaintext
cv::Mat img=cv::imread("imagepath.jpg");
string result=CnnPredictor::getInstance()->predict(img);
调用 Caffe 自身进行分类识别
plaintext
"../build/examples/cpp_classification/classification" "modeldef/deploy.prototxt" "trainedmodels/platerecognition_iter_1000.caffemodel" "modeldef/mean.binaryproto" "modeldef/labels.txt" "data/0/4-3.jpg"
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】