caffe生成标签文件均值

参考博客https://blog.csdn.net/pangyunsheng/article/details/79434300
一、数据集介绍 在本实验中我采用的数据集是fer2013人脸表情数据集。fer2013,即Kaggle facial expression recognition challenge dataset,是目前较大的人脸表情识别公开数据库。 该数据库共包含35887张人脸图片,其中训练集28709张、验证集3589张、测试集3589张。数据库中的图片均为灰度图片,大小为48*48像素,样本被分为0=anger(生气)、1=disgust(厌恶)、2=fear(恐惧)、3=happy(开心)、4=sad(伤心)、5=surprised(惊讶)、6=normal(中性)七类,各种类型分布基本均匀。 数据分布(训练集):angry:3995 、disgust:436 、fear:4097 、happy:7215 、sad:4830 、surprise:3171 、normal:4965
二、数据集处理
1.下载数据集 fer2013数据库实际为kaggle一个比赛项目提供的数据,官方给出的文件格式为csv,我手动将其转换成了图片格式,提供下面链接供大家下载。 https://pan.baidu.com/s/1i6p40jb 下载完成后解压得到三个目录,分别是训练集、验证集和测试集的图片数据,每个目录下都有7个子目录,分别存储了7类不同表情的图片数据。
2.准备数据 首先我创建了一个名为myfile的文件夹,用来存放该实验用到的所有文件和数据,然后在该目录下创建了一个名为datasets的文件夹用来存放我们的数据集,并将刚刚下载的三个文件夹(训练集、验证集、测试集)放到data目录下。
1)准备labels.txt文件,表示分类序号于分类对应关系
在data目录下创建一个空白文档,取名为labels.txt,并输入下面内容:

0 anger     生气
1 disgust   厌恶
2 fear        恐惧
3 happy     开心
4 sad         伤心
5 surprised 惊讶
6 normal    中性

2)准备train.txt,标明训练图片路径及其对应分类,windows系统需要下载git,git文件链接https://pan.baidu.com/s/1S_y9zXOn7ZlRyepKHGCLgA 提取码:vwfd 编写文本文档将其后缀改为.sh,打开git brash用cd命令进入.sh所在的目录
生成标签文件的脚本如下
#!/bin/bash DATA=D:/caffe-master/myfile/datasets/datasets DATASAVE=D:/caffe-master/myfile echo "Create train.txt..." find $DATA/train/0 -name "*.jpg" | cut -d '/' -f1-10 | sed "s/$/ 0/" > $DATASAVE/traintmp1.txt find $DATA/train/1 -name "*.jpg" | cut -d '/' -f1-10 | sed "s/$/ 1/" > $DATASAVE/traintmp2.txt find $DATA/train/2 -name "*.jpg" | cut -d '/' -f1-10 | sed "s/$/ 2/" > $DATASAVE/traintmp3.txt find $DATA/train/3 -name "*.jpg" | cut -d '/' -f1-10 | sed "s/$/ 3/" > $DATASAVE/traintmp4.txt find $DATA/train/4 -name "*.jpg" | cut -d '/' -f1-10 | sed "s/$/ 4/" > $DATASAVE/traintmp5.txt find $DATA/train/5 -name "*.jpg" | cut -d '/' -f1-10 | sed "s/$/ 5/" > $DATASAVE/traintmp6.txt find $DATA/train/6 -name "*.jpg" | cut -d '/' -f1-10 | sed "s/$/ 6/" > $DATASAVE/traintmp7.txt cat $DATASAVE/traintmp1.txt >> $DATASAVE/train.txt cat $DATASAVE/traintmp2.txt >> $DATASAVE/train.txt cat $DATASAVE/traintmp3.txt >> $DATASAVE/train.txt cat $DATASAVE/traintmp4.txt >> $DATASAVE/train.txt cat $DATASAVE/traintmp5.txt >> $DATASAVE/train.txt cat $DATASAVE/traintmp6.txt >> $DATASAVE/train.txt cat $DATASAVE/traintmp7.txt >> $DATASAVE/train.txt rm -rf $DATASAVE/traintmp1.txt rm -rf $DATASAVE/traintmp2.txt rm -rf $DATASAVE/traintmp3.txt rm -rf $DATASAVE/traintmp4.txt rm -rf $DATASAVE/traintmp5.txt rm -rf $DATASAVE/traintmp6.txt rm -rf $DATASAVE/traintmp7.txt echo "Create val.txt..." find $DATA/val/0 -name "*.jpg" | cut -d '/' -f8 | sed "s/$/ 0/" > $DATASAVE/valtmp1.txt find $DATA/val/1 -name "*.jpg" | cut -d '/' -f8 | sed "s/$/ 1/" > $DATASAVE/valtmp2.txt find $DATA/val/2 -name "*.jpg" | cut -d '/' -f8 | sed "s/$/ 2/" > $DATASAVE/valtmp3.txt find $DATA/val/3 -name "*.jpg" | cut -d '/' -f8 | sed "s/$/ 3/" > $DATASAVE/valtmp4.txt find $DATA/val/4 -name "*.jpg" | cut -d '/' -f8 | sed "s/$/ 4/" > $DATASAVE/valtmp5.txt find $DATA/val/5 -name "*.jpg" | cut -d '/' -f8 | sed "s/$/ 5/" > $DATASAVE/valtmp6.txt find $DATA/val/6 -name "*.jpg" | cut -d '/' -f8 | sed "s/$/ 6/" > $DATASAVE/valtmp7.txt cat $DATASAVE/valtmp1.txt >> $DATASAVE/val.txt cat $DATASAVE/valtmp2.txt >> $DATASAVE/val.txt cat $DATASAVE/valtmp3.txt >> $DATASAVE/val.txt cat $DATASAVE/valtmp4.txt >> $DATASAVE/val.txt cat $DATASAVE/valtmp5.txt >> $DATASAVE/val.txt cat $DATASAVE/valtmp6.txt >> $DATASAVE/val.txt cat $DATASAVE/valtmp7.txt >> $DATASAVE/val.txt rm -rf $DATASAVE/valtmp1.txt rm -rf $DATASAVE/valtmp2.txt rm -rf $DATASAVE/valtmp3.txt rm -rf $DATASAVE/valtmp4.txt rm -rf $DATASAVE/valtmp5.txt rm -rf $DATASAVE/valtmp6.txt rm -rf $DATASAVE/valtmp7.txt echo "Done"
在这里插入图片描述

生成train.txt和val.txt文件
3.生成lmdb文件 lmdb是caffe使用的一种输入数据格式,在训练前,我们必须把图片转换成caffe支持的格式才能进行训练,caffe中提供了create_imagenet.sh脚本,可以使图片转换为lmdb格式。 首先在myfile目录下创建一个文件夹,命名为fer_2013_lmbd。 将caffe/examples/Imagenet目录下的create_iamgenet.sh脚本拷贝到项目文件夹myfile的目录下,并修改其中的部分内容:
在这里插入图片描述
执行create_imagenet.sh脚本,其中我没有对gray进行修改。
4.生成均值(mean_file)文件
若是生成标签文件的过程中,无错误,无标签文件可能是不兼容的问题,解决办法就是找到这个程序名(应用程序名: compute_image_mean.exe),然后右击属性-兼容性-以兼容模式运行这个程序-改为自己可兼容的系统(例如Windows 7)-应用-确定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值