caffe对图片提取特征

栏目: 数据库 · 发布时间: 6年前

内容简介:caffe对图片提取特征

一、生成lmdb格式文件

实际经常碰到图片大小不一致,如何从原始图片文件转换成caffe中能够运行的db(leveldb/lmdb)文件?

1. 创建图片列表清单,包含类标签,存为txt

如图片目录 example/pic/

创建create_filelist.sh脚本文件,调用 linux 命令来生成图片清单file_list.txt:

$ sudo vi examples/create_filelist.sh

内容如下:

mkdir examples/_temp

find `pwd`/examples/pic -type f -exec echo {} \; > examples/_temp/temp.txt

sed "s/$/ 0/" examples/_temp/temp.txt > examples/_temp/file_list.txt

2. 生成lmdb格式文件

命令:

convert_imageset [FLAGS] ROOTFOLDER/ LISTFILE DB_NAME

使用 build/tools/下的convert_imageset可执行文件,命令行读取图片文件列表,设置打乱次序与否,resize大小与否等参数,生成lmdb格式文件。

sudo vi examples/_temp/create_lmdb.sh

内容如下:

#!/usr/bin/en sh

DATA=examples/_temp

rm -rf $DATA/img_train_lmdb

build/tools/convert_imageset --shuffle \

--resize_height=256 --resize_width=256 \

/ $DATA/file_list.txt  $DATA/img_train_lmdb

然后执行:

$ sudo sh examples/_temp/create_lmdb.sh

生成_temp/img_train_lmdb/下的文件,即为所需lmdb文件。

二、取所有图片的均值

一般地,图片减去均值后再进行训练和测试,会提高速度和精度。

二进制格式的均值计算:

caffe中使用格式binaryproto,并提供了compute_image_mean.cpp计算均值,放在tools目录下。编译后可执行文件在 build/tools/ 下,可直接调用

sudo build/tools/compute_image_mean examples/_temp/img_train_lmdb data/mb/mean.binaryproto

其中参数,

examples/mnist/mnist_train_lmdb, 格式为lmdb的训练数据,用来计算均值。自己的数据可自行生成lmdb格式文件,并放置相应目录

data/mb/mean.binaryproto, 计算结果

三、提取特征

cp examples/feature_extraction/imagenet_val.prototxt examples/_temp/mb_val.prototxt

修改mb_val.prototxt中mean文件的定义,

vi examples/_temp/mb_val.prototxt

第10行改为:

mean_file: "data/mb/mb_mean.binaryproto"

提取特征:

./build/tools/extract_features.bin models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel examples/_temp/mb_val.prototxt fc7 examples/_temp/features 10 leveldb

得到的features存在 examples/_temp/features。

如果出现错误“Check failed: status.ok() Failed to open leveldb examples/_temp/features”,是上次运行已经生成了目录,删除掉。

rm -rf examples/_temp/features/

以上所述就是小编给大家介绍的《caffe对图片提取特征》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python Cookbook 中文版,第 3 版

Python Cookbook 中文版,第 3 版

David M. Beazley、Brian K. Jones / 陈舸 / 人民邮电出版社 / 2015-5-1 / 108.00元

《Python Cookbook(第3版)中文版》介绍了Python应用在各个领域中的一些使用技巧和方法,其主题涵盖了数据结构和算法,字符串和文本,数字、日期和时间,迭代器和生成器,文件和I/O,数据编码与处理,函数,类与对象,元编程,模块和包,网络和Web编程,并发,实用脚本和系统管理,测试、调试以及异常,C语言扩展等。 本书覆盖了Python应用中的很多常见问题,并提出了通用的解决方案。......一起来看看 《Python Cookbook 中文版,第 3 版》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具