caffe中需要将数据存储为lmdb、hdf5等数据库格式,caffe自带的convert_image工具可以完成lmdb数据格式的转换,但是遇到浮点数,这个工具就不行了,所以,只有存成hdf5了。对于python存储hdf5,本文分析多个demo的数据生成代码,并作出总结(主要就是贴代码了):

        首先来看几个生成hdf5的demo,(代码并不完整,这里只给出和存储数据有关部分,完整代码参见本人之前的博客)这是之前安德烈花卉的demo,这个demo中,要存储的数据data是(150,1,1,4)的四维结构,label是(150,3)的二维结构,当然了,第一维是样本,需要一一对应,我们来看存储数据的python代码:

        上面的是浮点型data,类别数组型label接下来,我们看一个,和人脸特征点检测有关的多标签数据hdf5生成工具,下面这段代码同样不完整,我们就来看一看:

        到这里,我们大概就明白了,python中hdf5文件的写入非常简单,我们只需为标签指定存储到label位置,数据存储到data位置,就可以被接收了,注意label是二维而data是四维,就像这样:

        博主由于使用需求比较特别,在windows平台采集数据,存储为npy文件,然后在linux中加载npy文件,将其转储为hdf5文件,下面给出博主的源码:

是不是感觉非常简单呀~

OK, See You Next Chapter!

发表评论

电子邮件地址不会被公开。 必填项已用*标注