深度学习中,我们所用到的图片格式大多是jpg,jpeg,png等,而且图片的大小尺寸有时也会不一样。但是在caffe中数据类型是lmdb或leveldb,那么我们需要将图片格式转换为caffe环境需要的格式。
一、将图片转为db格式
caffe常用的格式db(leveldb/lmdb),在caffe安装目录caffe/.build_release/tools下,convert_imageset.cpp可以将图片转换为caffe框架中的直接使用的db文件。
使用方式:
convert_imageset [FLAGS] ROOTFOLDER/ LISTFILE DB_NAME
(1)参数1:FLAGS:图片参数组;
(2)参数2:ROOTFOLDER/:图片存放的绝对路径;
(3)参数3:LISTFILE,图片文件列表清单,一般为txt文件,一行一张图片;
(4)参数4:DB_NAME:最终生成的db文件存放目录。
??图片文件列表清单生成
!!创建sh脚本文件
sudo vi examples/images/create_filelist.sh
create_filelist.sh写入:
# /usr/bin/env sh
DATA=examples/images
echo "Create train.txt..."
rm -rf $DATA/train.txt
find $DATA -name *xxx.jpg | cut -d '/' -f3 | sed "s/$/ 1/">>$DATA/train.txt
find $DATA -name *xxx.jpg | cut -d '/' -f3 | sed "s/$/ 2/">>$DATA/tmp.txt
cat $DATA/tmp.txt>>$DATA/train.txt
rm -rf $DATA/tmp.txt
echo "Done.."
生成lmdb脚本文件:
sudo vi examples/images/create_lmdb.sh
#!/usr/bin/en sh
DATA=examples/images
rm -rf $DATA/img_train_lmdb
build/tools/convert_imageset --shuffle \
--resize_height=256 --resize_width=256 \
/home/xxx/caffe/examples/images/ $DATA/train.txt $DATA/img_train_lmdb
执行脚本文件
sudo sh examples/images/create_lmdb.sh
二、binaryproto
caffe安装目录下/home/xxx/caffe/.build_release/tools提供了计算均值的compute_image_mean.cpp文件,执行:
sudo build/tools/compute_image_mean examples/mnist/mnist_train_lmdb examples/mnist/mean.binaryproto
包含两个参数:
(1)examples/mnist/mnist_train_lmdb:表示计算均值的数据,格式为lmdb的训练数据;
(2)examples/mnist/mean.binaryproto:表示计算出来的结果保存文件。
---------------------
作者:蹦跶的小羊羔
来源:CSDN
原文:https://blog.csdn.net/yql_617540298/article/details/82872626
版权声明:本文为博主原创文章,转载请附上博文链接!
|
|