无法将.mat文件读入python

2024-09-27 00:12:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经尝试了好几天,在我的python项目中寻找正确的方法来读取这个文件。这是一个普通的matlab数据结构文件。在

https://drive.google.com/open?id=1E1w1eQn6pTcQ1lkhGMJzmB5ugtmaDPht

我对如何读取h5文件很熟悉,这个.mat文件似乎就是这样,因为它不允许scipy.loadmat公司去读它。所以我用了h5是的。读(). 在

import h5py
f = h5py.File('./imgIdx.mat','r')
d = f['imgIdx/anno']
print(d[1000])     # accessing an arbitrary object

[<HDF5 object reference>]

这是我无法处理的对象 这应该是一个mx4矩阵 其中m>;=0


Tags: 文件项目方法httpscom数据结构objectgoogle
1条回答
网友
1楼 · 发布于 2024-09-27 00:12:07

以下来自文档中object reference部分的提示: http://docs.h5py.org/en/latest/refs.html

In [348]: d = f['imgIdx/anno']
In [349]: d[1000]
Out[349]: array([<HDF5 object reference>], dtype=object)
In [350]: d[1000].item()
Out[350]: <HDF5 object reference>
In [351]: f[d[1000].item()]
Out[351]: <HDF5 dataset "N4": shape (4, 2), type "<f8">
In [352]: f[d[1000].item()][:]
Out[352]: 
array([[ 87., 447.],
       [158., 160.],
       [446., 586.],
       [325., 283.]])

我还在shell中使用了h5dump来查看文件及其内容。在

相关问题 更多 >

    热门问题