前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >caffe随记(六)---tools工具举例

caffe随记(六)---tools工具举例

作者头像
TeeyoHuang
发布2017-12-28 14:18:45
6800
发布2017-12-28 14:18:45
举报
文章被收录于专栏:Deep learning进阶路

经过前面几篇博文的介绍,我们已经对caffe有了个大概的了解,知道它的数据结构,而且也尝试了caffe的Hello World---mnist例程。

前一篇博文介绍了tools工具中caffe.bin的用法,索性我这一篇继续来看一看tools其他工具

可以看到有很多可执行文件,我就举几个常用的例子

1、compute_image_mean.bin(计算图像平均值)

一般在数据读取层的Transform阶段,需要去均值操作。均值文件一般需要用原始数据计算得到,caffe提供了计算均值的工具

返回根目录下执行 ./build/tools/ compute_image_mean.bin

显示这个工具的用法:

compute_image_mean   [参数]  INPUT_DB [输出文件夹]

参数中就是选择输入数据的类型leveldb 还是lmdb,默认为lmdb

2、conver_imageset.bin(图像数据转换成db(leveldb/lmdb)文件)

caffe数据输入层的数据一般都以LEVELDB或者LMDB输入,所以要把原始数据进行转换,caffe中也提供了这样的工具

根目录下输入:./build/tools/compute_image_mean.bin

显示其用法

 convert_imageset      [FLAGS]        ROOTFOLDER/ LISTFILE      DB_NAME

convert_imageset      -此工具的名字

[FLAGS]                   -参数组,详细如下:

-backend 选择lmdb或者leveldb格式来保存结果,默认为lmdb

-check_size (当这个选项打开时,要检测输入图像是否拥有同样大小的尺寸,默认为false)

-encode_type(可选:将图片编码为哪一个格式,从cpp中来看,如果这一个不设置的话,它其实可以自己去根据图片的后缀名来识别图片的类型)

-encoded(是否将原图片编码放入最终的数据中,默认为false,当这个选项打开,被编码的图片就会被存储进datum中)

-gray(但这个选项打开,表示图片都是灰度图)

-resize_height(重置图片高度为:xx,默认为0)

-resize_width(重置图片宽度为:xx,默认为0)

-shuffle(随机的打乱图片顺序和标签,默认为false)

 ROOTFOLDER/        - 图片存放的绝对路径,从linux系统根目录开始

LISTFILE                    -图片文件列表清单,一般为一个txt文件,一行一张图片

DB_NAME                  - 最终生成的db文件存放目录

然后cpp中还提到一句这个工具的正常运行要依赖于opencv,有兴趣的同学可以去看看cpp

再推荐一篇博文:http://www.cnblogs.com/denny402/p/5082341.html

3、特征提取

该工具需要一个训练好的网络和一个数据输入层,运行后可得到相应数据通过网络某个中间层产生的特征图并保存到磁盘

代码语言:javascript
复制
有点长,我打出来
代码语言:javascript
复制
extract_features \                           //这个程序的名称
pretrained_net_param \                       //预训练的网络, **.caffemodel
feature_extraction_proto_file \              //网络描述文件,**.prototxt
extract_feature_blob_name1 [,name2,...] \    // 需要提取的Blob名字,可以写多个用逗号分开
save_feature_dataset_name1[,name2,...] \     //保存特征名字
num_mini_batches \                           //做特征提取的数据批量数目
db_type \                                    //输入数据的格式,lmdb或者leveldb
[CPU/GPU] \                                  //gpu还是cpu模式
[DEVICE_ID=0] \                              // 选择gpu设备号

基本上常用的就是这几个,还有一些工具已经弃用,而融入到其他地方去了,比如下面两个都被Deprecated(弃用)了

大家想要了解tools中工具的一些更为细节的东西,可以去 caffe目录下的tools中寻找cpp源码,

这里我们看的可执行文件是在caffe的build目录下的tools中,要注意区分

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-08-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、compute_image_mean.bin(计算图像平均值)
  • 2、conver_imageset.bin(图像数据转换成db(leveldb/lmdb)文件)
  • 3、特征提取
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档