win7 caffe使用笔记——创建数据以及数据转换leveldb

1.在caffe根目录data文件夹下存放图像数据

数据需要尺寸归一化。训练集和测试集分别为train和test文件夹,对应的train.txt,test.txt格式如下:  ./train/pic_name.jpg 0|1,./test/pic_name.jpg 0|1

2.利用caffe/tools/bin/Release/convert_imageset.exe将原始数据转换到leveldb或lmdb。

转换好处是提高了I/O速率,lmdb类型更为高效,ubuntu下通过测试,但是在windows中可能还有兼容问题,可能是caffe版本的原因,可以转换lmdb,后面计算lmdb均值会有问题。这里在windows下转换到leveldb。



ROOTFOLDER——数据集路径

LISTFILE——对应的标记txt

DB_NAME——转换的数据格式


在根目录examples下编写脚本create_leveldb.bat

<span style="font-size:24px;">set EXAMPLE=../../examples/Planthopper
set DATA=../../data/Planthopper
set TOOLS=../../tools/bin/Release
set TRAIN_DATA_ROOT=../../examples/Planthopper/train/
set VAL_DATA_ROOT=../../examples/Planthopper/test/

set gray=true
set shuffle=true
set backend=leveldb
set resize_width=32
set resize_height=64

set GLOG_logtostderr=1

echo "Creating train leveldb..."

"%TOOLS%/convert_imageset.exe" -gray=%gray% -shuffle=%shuffle% -backend=%backend% -resize_width=%resize_width% -resize_height=%resize_height% %DATA% %DATA%/train.txt %EXAMPLE%/planthopper_train_leveldb

echo "Creating test leveldb..."
"%TOOLS%/convert_imageset.exe" -gray=%gray% -shuffle=%shuffle% -backend=%backend% -resize_width=%resize_width% -resize_height=%resize_height% %DATA% %DATA%/test.txt %EXAMPLE%/planthopper_test_leveldb

echo "Done."

pause</span>

注:创建之前不能有leveldb文件夹,不然报错


可选参数设置
     gray:bool类型,默认为false,如果设置为true,则代表将图像当做灰度图像来处理,否则当做彩色图像来处理
     shuffle:bool类型,默认为false,如果设置为true,则代表将图像集中的图像的顺序随机打乱
     backend:string类型,可取的值的集合为{"lmdb", "leveldb"},默认为"lmdb",代表采用何种形式来存储转换后的数据
     resize_width:int32的类型,默认值为0,如果为非0值,则代表图像的宽度将被resize成resize_width
     resize_height:int32的类型,默认值为0,如果为非0值,则代表图像的高度将被resize成resize_height
     check_size:bool类型,默认值为false,如果该值为true,则在处理数据的时候将检查每一条数据的大小是否相同
     encoded:bool类型,默认值为false,如果为true,代表将存储编码后的图像,具体采用的编码方式由参数encode_type指定
     encode_type:string类型,默认值为"",用于指定用何种编码方式存储编码后的图像,取值为编码方式的后缀(如'png','jpg',...)






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值