caffe制作lmdb数据以及均值(简单暴力流)
来源:互联网 发布:千牛自己装淘宝店铺 编辑:程序博客网 时间:2024/06/09 20:52
假设我们的数据就两类,train0和train1两个文件夹,这两个文件夹存在多个子目录,并且每个子目录中还存在子目录,这给制作list列表带来了较大的麻烦
我们建立下面shell文件,文件名为creat_list.h
# /usr/bin/env sh DATA=/media/hjxu/luhaoda/from_xhj/metastasis_data/train0TxtPath=/media/hjxu/luhaoda/from_xhj/metastasis_data/txt_list rm -rf $TxtPath/train0.txt echo "Create test.txt..." for file_C in ${DATA}/*; do temp_file=`basename $file_C` path1=$DATA/${temp_file} echo $path1 #echo "====================================================================" echo "====================================================================" for file_b in ${path1}/*;do path2=${file_b} #echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>" echo $path2 #cd $path1 #echo "---------------------------------------------------------------" find ${path2} -name *.jpg | sed "s/$/ "0"/">>$TxtPath/train0.txt #echo "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" echo $file_b done done echo "train Done.." DATA=/media/hjxu/luhaoda/from_xhj/metastasis_data/train1TxtPath=/media/hjxu/luhaoda/from_xhj/metastasis_data/txt_list rm -rf $TxtPath/train1.txt echo "Create test.txt..." for file_C in ${DATA}/*; do temp_file=`basename $file_C` path1=$DATA/${temp_file} echo $path1 #echo "====================================================================" echo "====================================================================" for file_b in ${path1}/*;do path2=${file_b} #echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>" echo $path2 #cd $path1 #echo "---------------------------------------------------------------" find ${path2} -name *.jpg | sed "s/$/ "1"/">>$TxtPath/train1.txt #echo "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" echo $file_b done done echo "train1 Done.." cat $TxtPath/train1.txt>>$TxtPath/train0.txtrm -rf $TxtPath/train1.txt
然后我们可以得到train1.txt列表,同理可以得到val数据的列表
上述列表txt文件得到的是图像的绝对路径,也就是从系统的根目录开始
然后根据caffe的convert_imageset函数制作lmdb格式,具体这个函数的用法在这里可见http://blog.csdn.net/hjxu2016/article/details/68064831
我们这边直接贴代码,创建一个sh脚本,create_lmdb.sh
#!/usr/bin/env shEXAMPLE=/media/hjxu/LENOVO/metastatic_ndpi_dataDATA=/media/hjxu/luhaoda/from_xhj/metastasis_data/txt_listTOOLS=/home/hjxu/caffe-master/caffe/build/toolsTRAIN_DATA_ROOT=/RESIZE=falseif $RESIZE; then RESIZE_HEIGHT=256 RESIZE_WIDTH=256else RESIZE_HEIGHT=0 RESIZE_WIDTH=0fiecho "Creating train lmdb..."GLOG_logtostderr=1 $TOOLS/convert_imageset \ --resize_height=$RESIZE_HEIGHT \ --resize_width=$RESIZE_WIDTH \ --shuffle \ $TRAIN_DATA_ROOT \ $DATA/train0.txt \ $EXAMPLE/train_lmdb
得到lmdb文件后,就可以直接制作均值了,caffe同样提供compute_image_mean函数,具体用法在这里http://blog.csdn.net/hjxu2016/article/details/68065094
我们直接上代码,简单暴力,创建一个create_mean.sh的shell脚本文件
#!/usr/bin/env shEXAMPLE=/media/hjxu/LENOVO/metastatic_ndpi_dataTOOLS=/home/hjxu/caffe-master/caffe/build/tools$TOOLS/compute_image_mean $EXAMPLE/train_lmdb \ $EXAMPLE/train_ndpi_mean.binaryproto#$TOOLS/compute_image_mean $EXAMPLE/test_lmdb \ #$EXAMPLE/train_ndpi_mean.binaryprotoecho "Done."
然后就可以欢快得到图像的均值了
阅读全文
0 0
- caffe制作lmdb数据以及均值(简单暴力流)
- caffe 制作lmdb数据集
- Caffe中图像写入LMDB(以及多标签)和读取LMDB数据
- 基于caffe的图像分类(2)——制作lmdb和计算均值
- caffe学习笔记(四)--制作自己的数据集train.txt和val.txt,生成LMDB文件
- Caffe: LMDB 及其数据转换
- Caffe︱构建lmdb数据集、binaryproto均值文件及各类难辨的文件路径名设置细解
- windows10+GPU下caffe数据集Lmdb格式制作+训练自己数据集
- Caffe实战Day2-准备lmdb文件和均值文件
- Caffe转换图像为lmdb并计算均值
- 深度学习caffe平台--制作自己.lmdb格式数据集及分类标签文件
- 深度学习caffe平台--制作自己.lmdb格式数据集及分类标签文件
- 使用cifar100,转化lmdb及制作均值文件
- caffe非图像数据转换为lmdb
- caffe-图片转为lmdb数据集
- caffe AlexNet 做图像训练lmdb数据
- Caffe学习笔记10:图像数据生成caffe需要的(laveldb和lmdb)数据文件
- 【caffe】caffe中通过图像生成lmdb格式的数据
- 简单的mysql数据库连接
- HBase的体系结构
- 使用 Sublime + PlantUML 高效地画图
- fresco加载本地图片
- Hdu6140 Hybrid Crystals(2017多校第8场)
- caffe制作lmdb数据以及均值(简单暴力流)
- [LeetCode]105. Construct Binary Tree from Preorder and Inorder Traversal
- jsp中的basePath和path
- 数据结构——查找(1)
- ElasticSearch配置
- Java习惯用法总结
- 输入一个字母,输出后五个字母
- 杀进程BAT写法
- Android日历开发详解