lmdb
caffe中经常使用的数据类型是lmdb或者leveldb。在caffe的tools文件夹下,提供了这样一个文件:conver_imageset.cpp,编译后,生成的可执行文件convert_imageset放在build/tools/下,这个文件的作用就是用于将原始图像转换成lmdb或者leveldb文件。
图片列表清单
转换命令需要提供图像文件列表清单,一般为.txt文件,每行为[path/to/image.jpeg] [label]。比如:
cat.jpg 1
dog.jpg 0
如果图片比较少,可以选择人工编辑该文件;但是对于图片数量非常多的情况,需要通过python脚本生成。
转换命令
回到转换命令convert_imageset上,语法如下:
convert_imageset [FLAGS] ROOTFOLDER/ LISTFILE DB_NAME
参数:
- FLAGS:参数组
-gray:是否以灰度图的方式打开图片,默认为false
-shuffle:是否打乱图片顺序,默认为false
-backend:db文件格式,可为lmdb或者leveldb,默认为lmdb
-resize_width/resize_height:改变图片的大小,默认为0表示不改变
-check_size:检查所有图片是否有相同size,默认为false表示不检查
-encoded: