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

经过前面几篇博文的介绍,我们已经对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、特征提取

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

有点长,我打出来
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中,要注意区分

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人工智能LeadAI

五分钟喝不完一杯咖啡,但五分钟可以带你入门TensorFlow

本文是《人人都能学人工智能-TensorFlow系列》文章的第一篇,这个系列会对TensorFlow的基础使用,SoftMax,交叉熵,Dropout,CNN,...

4259
来自专栏AI科技评论

开发 | 深度学习训练时 GPU 温度过高?输入这几行命令就能迅速降温

AI科技评论按:本文作者胡智豪,原载于作者个人博客,AI科技评论经授权发布。 新买回来的不带水冷公版GPU,在满负载运行的时候,温度从室温马上飙升到85度,而且...

34712
来自专栏IT派

这一篇就够了 python语音识别指南终极版

【导读】亚马逊的 Alexa 的巨大成功已经证明:在不远的将来,实现一定程度上的语音支持将成为日常科技的基本要求。整合了语音识别的 Python 程序提供了其他...

1160
来自专栏人工智能LeadAI

毫秒级检测!你见过带GPU加速的树莓派吗?

30510
来自专栏FreeBuf

根据目标用户信息,Python生成WPA2密码字典

如何根据目标WiFi的用户信息,用Python生成一份独特的WPA2密码表? 随着无线网络的不断发展,几乎所有场合都会覆盖WIFI信号,无论是公共地点还是家庭之...

3505
来自专栏人工智能头条

Python语音识别终极指南

3204
来自专栏AI科技大本营的专栏

深度学习训练时GPU温度过高?几个命令,为你的GPU迅速降温

图来自网络 作者 | 人工智豪(ID:Aihows) 新买回来的不带水冷公版GPU,在满负载运行的时候,温度从室温马上飙升到85度,而且模型训练不是几分钟完事,...

4439
来自专栏机器学习算法与Python学习

Python语音识别终极指北,没错,就是指北!

2023
来自专栏梦里茶室

毫秒级检测!你见过带GPU的树莓派吗?

树莓派3B+英特尔神经计算棒进行高速目标检测 转载请注明作者梦里茶 ? 代码: 训练数据预处理: https://gist.github.com/ahan...

2.3K8
来自专栏MixLab科技+设计实验室

自己动手做一个识别手写数字的web应用02

继续上文。 自己动手做一个识别手写数字的web应用01 01 再次进入docker容器 接着上一篇文章,我们继续使用上次新建好的容器,可以终端输入 : d...

3317

扫码关注云+社区