Caffe学习笔记10:图像数据生成caffe需要的(laveldb和lmdb)数据文件
来源:互联网 发布:情义我心知 编辑:程序博客网 时间:2024/05/29 14:20
在深度学习的实际应用中,我们经常用到的原始数据是图片文件,如jpg,jpeg,png,tif等格式的,而且有可能图片的大小还不一致。而在caffe中经常使用的数据类型是lmdb或leveldb,因此就产生了这样的一个问题:如何从原始图片文件转换成caffe中能够运行的db(leveldb/lmdb)文件?
在caffe中,作者为我们提供了这样一个文件:convert_imageset.cpp,存放在根目录下的tools文件夹下。编译之后,生成对应的可执行文件放在 Buile/x64/Release下面,这个文件的作用就是用于将图片文件转换成caffe框架中能直接使用的db文件。
小菜在这一步中吃了不少苦,主要是小菜不熟悉sh的脚本文件的编写和linux的指令。使得小菜在生成db文件后的是错误的,自己还不知道,直接就利用生成的db文件去生成均值文件,结果老是出错不能生成均值文件,一开始还以为是生成均值文件这一步哪里出错了,找了半天也没找出来,最后在大牛的帮助下,才知道是我生成的db文件错了,生成的db文件大小很小。
小菜将介绍db文件的生成的步骤:
Ø 首先准本图像数据集(train和test)
Ø 然后需要生成图像对应的列表清单,保存为txt文件(train.txt和test.txt),这里小菜编写了一个sh脚本文件直接生成,脚本文件的代码如下图所示。
要想在cygwin中执行sh脚本文件,还需要将脚本文件的格式换成Unix格式也就是LF格式,小菜当时在这上面吃了苦,后来是我的实习老师张xx跟我说的。生成txt中对应的ID号一定要是从0开始,依次递增。
在cygwin中直接运行这个sh脚本文件,会在你指定的路径生成两个文本文件,分别是train.txt和test.txt。一般生成的效果如下:
好了,到这里图像列表生成完了。接下来就是生成db文件了,小菜是生成了lmdb数据文件,小菜把生成的代码写到一个脚本文件中,代码如下:
小菜当时在红色标记的地方废了很大劲,要改为自己的数据路径,一开始代码是从网上下载的,后来在牛人的指导下进行了修改。这里将修改完的代码直接放出来,是希望你不要走小菜走的弯路,希望对你有帮助。在cygwin中运行此脚本文件,最后在你指定的文件路径下生成两个你命名的lmdb文件,小菜这里提醒一下,生成了lmdb后一定要看看文件的大小,一般生成的lmdb文件会比原始的图像集的大小要大。
- Caffe学习笔记10:图像数据生成caffe需要的(laveldb和lmdb)数据文件
- 【caffe】caffe中通过图像生成lmdb格式的数据
- caffe学习笔记(四)--制作自己的数据集train.txt和val.txt,生成LMDB文件
- caffe:图像数据 lmdb的写入和读出
- caffe学习笔记11:图像数据转换为db(leveldb/lmdb)文件
- caffe生成lmdb和mean_binaryproto的方法
- Caffe入门学习(7)将自己的图像数据转成lmdb格式
- 深度学习文章3:将自己的图像数据转换成caffe需要的db(leveldb/lmdb)文件
- Caffe中图像写入LMDB(以及多标签)和读取LMDB数据
- 将自己的图像数据转换成caffe需要的db(leveldb/lmdb)文件
- CAFFE学习笔记(四)将自己的jpg数据转成lmdb格式
- caffe学习笔记1:转化自己的数据为(leveldb/lmdb)文件
- CAFFE学习笔记(四)将自己的jpg数据转成lmdb格式
- Caffe学习:图像数据转换成db(leveldb/lmdb)文件
- 【用Python学习Caffe】3. 图像训练测试数据集LMDB的生成
- 用caffe将自己的图像数据转换成lmdb
- caffe非图像数据转换为lmdb
- caffe AlexNet 做图像训练lmdb数据
- POJ 1064 Cable master (二分)
- Gridview 点击修改布局
- 机器学习-车牌识别框架学习
- android 完美隐藏软键盘
- IOCTL函数用法
- Caffe学习笔记10:图像数据生成caffe需要的(laveldb和lmdb)数据文件
- java生成图片验证码
- 密码提示语
- windows中Python串口编程(一)
- PHP Yii2.0 basic基础框架中添加yii2-redis
- Atitit.去除水印的方案
- APNS推送消息
- ioctl用法详解
- EasyUI表单验证(扩展)