Advertisement

caffe HDF5Data层的数据处理和生成

阅读量:

有时候我们的输入并非典型的图片而是诸如频谱图、特征向量等其他形式,在这种情况下这些工具(如LMDB、Leveldb和ImageData layer)就不再适用了。这时候我们引入了一个新的统一接口——HDF5Data。

(1) 在Matlab中生成HDF5文件

这里直接以例子的形式说明如何生成:

问题:输入data是512*1的矢量,共1000个样本,label是标量。

代码如下:

复制代码
    % 创建HDF5文件,包含data和label两个变量,数据类型是caffe支持的float型数据
    
    h5create('train.h5','/data',[1 1 512 1000],'Datatype','single');
    h5create('train.h5','/label',[1 1 1 1000],'Datatype','single');
    
    %reshape: width x height x channels x num,注意MATLAB读数据是列优先,是和C++里面相反的。所以写数据的时候也要倒着写。
    
    train_data  = reshape(train_data,[1 1 512 1000]);
    train_label = reshape(train_label,[1 1

全部评论 (0)

还没有任何评论哟~