MATLAB創建hdf5數據集

官方文檔:https://ww2.mathworks.cn/help/matlab/ref/h5create.html

順着官方文檔讀就行,不懂的敲一敲代碼試試就知道了;

1、用到的函數:

h5create(filename,datasetname,size,Name,value)

h5write(filename,datasetname,data,start,count,stride)

2、參數說明:filename:hdf5/h5文件的文件名,包含擴展名,如'LLD-logo.hdf5';

                       datasetname:數據集名字,就是在h5文件中創建的dataSet名字,如'data'、‘data_LL’

                       size: 表示數據集的大小,也就是數據的shape,如果你以後要寫入的數據的個數維度不確定,可以把個數維度設置爲INF;

                       data: 要寫入的數據,其大小的'size'應該與之前創建dataSet的size一致。

                       Name,value:表示名稱-值形式的鍵值對,有些參數是可選的,通過  ‘參數名’-‘值’  的形式進行賦值,一般都有默認值

start、count表示寫入data的一個子集,start表示開始的索引值,指定要寫入的第一個元素,count指沿每個維度要寫入的元素數。

stride表示間距、步幅。start、count、stride構成了data的一個超切片。

比如我要寫入一個大小(size)爲[12,12,3,24]的數組到‘myfile.h5’文件中的‘ds’數據集:可以使用命令:

h5create('myfile.h5','/ds',[12,12,3,24])

如果不存在‘myfile.h5’文件則會自動創建一個;如果有則向已有文件中寫入;

這裏我們創建一個形狀爲[12,12,3,24],作爲寫入數據集的數據,實際情況都是根據你要寫入數據的形狀來定義size。

然後寫入一個與size相同的數組到ds數據集中:

h5write('myfile.h5','/ds',mats)

這樣就可以把一個數據寫入ds數據集中了。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章