簡體   English   中英

對如何在 matlab 中的 HDF5 文件中存儲 3D 矩陣感到困惑?

[英]Confused on how to store 3D matrices in HDF5 file in matlab?

我有多個 3D 矩陣需要存儲在 hdf5 文件中。 我到處找,但我對在 hdf5 文件中存儲數據的過程感到困惑。 我可以在 hdf5 文件的單個數據集中存儲多個 3D 矩陣,還是必須為每個 3D 矩陣創建單獨的數據集? 我需要這個數據集來訓練 3D CNN 模型。 如果兩種方式都可以,哪種方式最適合訓練目的?

附加信息:矩陣大小為 12x24x12,單個數據占用不到 100 kb 的存儲空間。 數據集在 matlab 中創建,生成的文件將在 python 中使用(模型將在其中訓練)。

在 matlab 中,您指定 -v3.7 以將內容保存在 hdf5 中。 您可以像這樣保存矩陣:

mat0 = zeros(12,24,12);
mat1 = ones(12,24,12);
mat2 = 2*ones(12,24,12);
save data.mat mat0 mat1 mat2 -v7.3

在 python 中,你可以這樣閱讀它們:

import numpy as np
import h5py
f = h5py.File('/home/innereye/data.mat','r')
mat1 = f.get('mat1')
mat1 = np.array(mat1)

你在 Stackoverflow 上有很多關於用 python 讀取 mat 文件的材料,例如, 這里這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM