python的h5py讀取matlab生成的.mat文件
這次希望把matlab中保存的mat文件讀取到python中,本來以爲是要h5py很容易可以讀取,但是發現還是遇到了坑
首先,看看報錯OSError: Unable to open file (File signature not found)
不應該呀,在matlab中讀取這個文件是沒有問題的。於是,終於找到了解決方案,是由於matlab保存文件版本的問題。
在matlab中保存該mat文件時,最後面要加一個version參數,該參數可以是‘-v4’,‘-v5’,‘-v6’,‘-v7’,‘-v7.3’
將原來的
save(filename,'nodule_candidates_features');
改爲
save(filename,'nodule_candidates_features', '-v7.3');
即可。
然後可以使用,以下方法讀取~~
import h5py
path = 'result/detection .mat'
data = h5py.File(path,'r')
print(list(data.keys()))