LMDB是caffe用来训练图片最常用的数据格式之一,常用于单标签数据,像分类等。
1、数据准备
新建train、val和test三个文件夹,分别包括训练图片、验证图片和测试图片。
在train和val文件夹下面各新建几个文件夹(按分类),把训练数据按分类放在相应文件夹。例如,在train下面新建train_good和train_bad两个文件夹,把良好的图片存放在train_good文件夹下。
2、文件重命名
为了使文件名更加有序和方便查找,将文件名按数列递增进行重命名,第一张图片为0。利用sh文件进行排序。
制作一个train.txt、val.txt文件,这两个文件分别包含了我们上面的训练数据的图片路径,以及其对应的标签。
把好的图片标号为1,坏的图片标记为0。标签数据文件txt的生成可以通过如下代码,通过扫描路径好、坏下面的图片,得到标签文件train.txt和val.txt:
1、数据准备
新建train、val和test三个文件夹,分别包括训练图片、验证图片和测试图片。
在train和val文件夹下面各新建几个文件夹(按分类),把训练数据按分类放在相应文件夹。例如,在train下面新建train_good和train_bad两个文件夹,把良好的图片存放在train_good文件夹下。
2、文件重命名
为了使文件名更加有序和方便查找,将文件名按数列递增进行重命名,第一张图片为0。利用sh文件进行排序。
代码如下
#!/bin/bash
clear
x=0
mkdir new #防止重命名的文件与后续文件名相同导致后面的文件被覆盖,新建一个新的文件夹在当前目录
for i in `ls *.bmp` #依次查找
do
mv $i new/$x.bmp #移动并重命名
x=`expr $x + 1` #sh中自加
done
3、标签文件.txt文件制作
制作一个train.txt、val.txt文件,这两个文件分别包含了我们上面的训练数据的图片路径,以及其对应的标签。
把好的图片标号为1,坏的图片标记为0。标签数据文件txt的生成可以通过如下代码,通过扫描路径好、坏下面的图片,得到标签文件train.txt和val.txt:
import os
def IsSubString(SubStrList,Str):
flag=True
for substr in SubStrList:
i