首先cifar-10数据集下载( 网址:http://www.cs.toronto.edu/~kriz/cifar.html )
1.把文件放在需要的位置,然后打开Caffe的安装目录,找到convert_cifar_data.exe程序。我的convert_cifar_data.exe是在D:\caffe-Microsoft\caffe-master\Build\x64\Debug\文件夹下,具体的位置取决于你的Caffe安装位置。
2.Windows+R键或者右键桌面左下角窗口图标按运行,在弹出的窗口下输入cmd,打开命令提示符窗口。
3.输入convert_cifar_data.exe,记得要用绝对路径,比如我的convert_cifar_data.exe在D:\caffe-Microsoft\caffe-master\Build\x64\Debug\文件夹下,所以我输入了
D:\caffe-Microsoft\caffe-master\Build\x64\Debug\convert_cifar_data.exe
这时会弹出convert_cifar_data.exe的帮助:
This script converts the CIFAR dataset to the leveldb format used
by caffe to perform classification.
Usage:
convert_cifar_data input_folder output_folder db_type
Where the input folder should contain the binary batch files.
The CIFAR dataset could be downloaded at
http://www.cs.toronto.edu/~kriz/cifar.html
You should gunzip them after downloading.
可以从Usage:convert_cifar_data input_folder output_folder db_type看出convert_cifar_data.exe的使用方法
convert_cifar_data.exe的位置+空格+ 输入文件夹+空格+输出文件夹+空格+输出文件夹的格式
比如我要对我桌面上的cifar-10-batches-py文件夹中的cifar-10数据集进行转换,输入
D:\caffe-Microsoft\caffe-master\Build\x64\Debug\convert_cifar_data.exe C:\Users\tianshan\Desktop\cifar-10-batches-py C:\Users\tianshan\Desktop\ldb leveldb
其中C:\Users\tianshan\Desktop\ldb是输出文件的目录(桌面上不存在的话会新建一个)
这时发现桌面就有了一个ldb文件夹,内含cifar10_test_leveldb和cifar10_train_leveldb两个子文件夹。
######################################################################################
可能会出现的错误
1.
I0512 10:05:21.802996 11100 convert_cifar_data.cpp:52] Writing Training data
I0512 10:05:21.802996 11100 convert_cifar_data.cpp:55] Training Batch 1
F0512 10:05:21.803997 11100 convert_cifar_data.cpp:60] Check failed: data_file Unable to open train file #1
*** Check failure stack trace: ***
可能是你的data_batch_1文件没有加bin后缀,加上后缀就可以了。
2.
F0512 10:06:46.111758 12232 db_leveldb.cpp:16] Check failed: status.ok() Failed to open leveldb C:\Users\tianshan\Desktop\ldb/cifar10_train_leveldb
Invalid argument: C:\Users\tianshan\Desktop\ldb/cifar10_train_leveldb: exists (error_if_exists is true)
*** Check failure stack trace: ***
可能是你已经在该目录下已经有转换完成的数据集了,删除文件夹再次运行即可。