HDf5 数据维度从 (512,1080) 更改为 (512,1080,1)

Posted

技术标签:

【中文标题】HDf5 数据维度从 (512,1080) 更改为 (512,1080,1)【英文标题】:HDf5 Data Dimenssion change from (512,1080) to (512,1080,1) 【发布时间】:2018-10-28 15:57:15 【问题描述】:

您好,我有一个关于 hdf5 的问题。我有一个尺寸像(512,1080)的数据,但我需要将其转换为(512,1080,1),1代表通道颜色我该怎么做?转换后,.it 应该是和 hdf5 一样的格式,而不是在 numpy 数组中

【问题讨论】:

您尝试过什么?什么不工作? 我试图在 hdf5 中找到 reshape 函数,但我没有得到任何这样的函数 【参考方案1】:

您可以使用HDFql 重新定义数据集(从512x1080512x1080x1),如下所示(假设数据集名为dset 的32 位整数数据类型,并且它存储在一个名为test.h5):

import HDFql

HDFql.execute("USE FILE test.h5")  # open file "test.h5"

HDFql.execute("SELECT FROM dset")  # read data from dataset "dset" into HDFql cursor

HDFql.execute("CREATE TRUNCATE DATASET dset AS INT(512, 1080, 1)")  # re-create dataset "dset" with dimensions 512x1080x1

HDFql.execute("INSERT INTO dset")  # write data from HDFql cursor into dataset "dset"

【讨论】:

以上是关于HDf5 数据维度从 (512,1080) 更改为 (512,1080,1)的主要内容,如果未能解决你的问题,请参考以下文章

获取 HDF5 数据集的维度

将时间序列数据存储在具有可扩展时间维度的 HDF5 中

将输入测试数据更改为特征矩阵的维度

Xarray合并两个具有不同维度长度的hdf5文件

如何在片段着色器中将分辨率从静态更改为动态

将 HDF5 文件中的大型数据集读入 x_train 并在 keras 模型中使用