Python讀取MATLAB儲存的mat檔案

2021-07-24 15:32:55 字數 912 閱讀 6731

最近專案中需要在python下讀取mat檔案,遇到以下問題,現在已經成功使用python的h5py庫完全解決:

首先,嘗試了文章1中的scipy.io庫來讀取mat檔案,但是出現了:

1:please use hdf reader for matlab v7.3 files的錯誤,

2:另乙個錯誤是windows下python讀取檔案絕對路徑的問題,假設當前目錄是c:\program files,那麼在python中這個目錄就必須寫成path_full=』c:/program files』,這樣才能正確讀取

出現這個問題後在stackoverflow找到解決辦法,就是使用h5py庫,接下來貼出**與大家分享

#coding:utf-8

from numpy import *

import h5py

#load idt feature in python

path_full='c:/test.mat'

#需要讀取的mat檔案路徑

feature=h5py.file(path_full) #讀取mat檔案

train_set_data = feature['feature_data'][:]#讀取mat檔案中所有資料儲存到array中

#測試print type(train_set_data),train_set_data.shape

train_set_data=train_set_data.t

print type(train_set_data),train_set_data.shape

**輸出結果是:

 (7743l, 426l)

(426l, 7743l)

可見已經成功讀取mat檔案到array中,並且可以執行轉置操作。

matlab 讀取 分層影象

a imread pepper.bmp 讀入 bmp檔案 g rgb2gray a g 為原始bmp圖案的grayscale版本 h,w size g 讀入g的高和寬 bitplane zeros h,w,8 建立8層空plane,分別儲存1 8個分層 subplot 3,3,1 畫在九宮格的第1個...

matlab讀取mat檔案

今天無意中用到了 mat檔案,用matlab讀取後要和另乙個矩陣相乘,結果一直出錯。顯示 mat格式資料為struct,而不能和數字矩陣相乘。最後用兩個matlab命令將之轉化為矩陣。h load mat 這樣顯示錯誤 要用如下命令代替這一命令 h load mat h cell2mat struc...

Matlab讀取pfm檔案

原文 關於pfm格式,從來沒有官方權威的定義,但是常常在一些場合用到,如生物醫學成像,紅外成像等,尤其是其浮點方式的儲存的點陣圖使得其在科研和學習場合應用都很方便,middlebury資料庫中的視差影象就是以pfm格式進行儲存的。一 pmf格式 pmf格式主要有兩部分組成 頭 元資料。頭有三行 第一...