C++讀取mat文件

讀取mat文件配置的環(huán)境

我的計算機環(huán)境是win7 64位系統(tǒng),VS2010跌捆,matlab R2010b。

工程配置:
1.C/C++->常規(guī)->附加包含目錄 添加:(兩個都要加)
MATLAB\R2010b\extern\include
MATLAB\R2010b\extern\include\win64
2.鏈接器->常規(guī)->附加庫目錄 添加:(兩個都要加)
MATLAB\R2010b\extern\lib\win64\microsoft
MATLAB\R2010b\extern\lib\win32\microsoft
3.鏈接器->輸入->附加依賴庫 添加:
libmat.lib
libmx.lib
libmex.lib
libeng.lib

由于所安裝的matlab為64位胆描,要調(diào)用其函數(shù),需要將工程轉(zhuǎn)換為X64
4.頂菜單->生成->配置管理器->平臺:X64
5.鏈接器->高級->目標計算機:
MachineX64(/MACHINE:X64)

6.計算機環(huán)境變量->path 添加:
E:\DevTools\MATLAB\R2010b\extern\lib\win64\microsoft;
E:\DevTools\MATLAB\R2010b\bin\win64;

讀取文件的基本操作

MATFile *pmatFile = NULL;  
mxArray *pMxArray = NULL;  
  
// 讀取.mat文件(例:mat文件名為"initUrban.mat"指煎,其中包含"initA")  
double *initA;  
  
pmatFile = matOpen("initUrban.mat","r");  
pMxArray = matGetVariable(pmatFile, "initA");  
initA = (double*) mxGetData(pMxArray);  
M = mxGetM(pMxArray);  
N = mxGetN(pMxArray);  
//獲取元素,直接以1維向量
initA[M*j+i];

詳細說明參見:
C++讀寫.mat文件

讀取文件的注意事項

  1. matlab中的數(shù)據(jù)都是按列存儲的
    無論在mat文件是幾維的數(shù)據(jù)便斥,讀出來都是1維向量至壤,需要自己讀取矩陣的維數(shù),然后按列一個一個讀出來
  2. matlab中的數(shù)據(jù)如果是uint8枢纠,讀出來都是錯的
    一般數(shù)據(jù)都是double像街,但是如果你的數(shù)據(jù)恰好是uint8,那么從C++讀出來一定會非常奇怪晋渺,因為uint8是8位(1個字節(jié))镰绎,但是讀取的時候是多個字節(jié)。
    解決方案:
    #define BYTE unsigned char BYTE *initA; initA = (BYTE*)mxGetData(pMxArray); (int)initA[0]//最后使用的時候轉(zhuǎn)換成int
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末木西,一起剝皮案震驚了整個濱河市畴栖,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌八千,老刑警劉巖吗讶,帶你破解...
    沈念sama閱讀 212,383評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異恋捆,居然都是意外死亡照皆,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,522評論 3 385
  • 文/潘曉璐 我一進店門沸停,熙熙樓的掌柜王于貴愁眉苦臉地迎上來膜毁,“玉大人,你說我怎么就攤上這事愤钾∥帘酰” “怎么了?”我有些...
    開封第一講書人閱讀 157,852評論 0 348
  • 文/不壞的土叔 我叫張陵能颁,是天一觀的道長室奏。 經(jīng)常有香客問我,道長劲装,這世上最難降的妖魔是什么胧沫? 我笑而不...
    開封第一講書人閱讀 56,621評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮占业,結(jié)果婚禮上绒怨,老公的妹妹穿的比我還像新娘。我一直安慰自己谦疾,他們只是感情好南蹂,可當我...
    茶點故事閱讀 65,741評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著念恍,像睡著了一般六剥。 火紅的嫁衣襯著肌膚如雪晚顷。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,929評論 1 290
  • 那天疗疟,我揣著相機與錄音该默,去河邊找鬼。 笑死策彤,一個胖子當著我的面吹牛栓袖,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播店诗,決...
    沈念sama閱讀 39,076評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼裹刮,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了庞瘸?” 一聲冷哼從身側(cè)響起捧弃,我...
    開封第一講書人閱讀 37,803評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎擦囊,沒想到半個月后塔橡,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,265評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡霜第,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,582評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了户辞。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片泌类。...
    茶點故事閱讀 38,716評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖底燎,靈堂內(nèi)的尸體忽然破棺而出刃榨,到底是詐尸還是另有隱情,我是刑警寧澤双仍,帶...
    沈念sama閱讀 34,395評論 4 333
  • 正文 年R本政府宣布枢希,位于F島的核電站,受9級特大地震影響朱沃,放射性物質(zhì)發(fā)生泄漏苞轿。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,039評論 3 316
  • 文/蒙蒙 一逗物、第九天 我趴在偏房一處隱蔽的房頂上張望搬卒。 院中可真熱鬧,春花似錦翎卓、人聲如沸契邀。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,798評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽坯门。三九已至微饥,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間古戴,已是汗流浹背欠橘。 一陣腳步聲響...
    開封第一講書人閱讀 32,027評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留允瞧,地道東北人简软。 一個月前我還...
    沈念sama閱讀 46,488評論 2 361
  • 正文 我出身青樓,卻偏偏與公主長得像述暂,于是被迫代替她去往敵國和親痹升。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,612評論 2 350

推薦閱讀更多精彩內(nèi)容

  • 一察郁、 matlab對路徑的操作 filesep用于返回當前平臺的目錄分隔符,Windows是反斜杠()转唉,Linux...
    李彪_哈工大閱讀 58,453評論 7 28
  • 一個基本的計算機系統(tǒng)由“硬件”和“軟件”組成皮钠,一臺Linux設備,主要的組成如下圖所示: 一般情況下赠法,我們所說的L...
    時待吾閱讀 1,636評論 0 16
  • 閉嘴是最好的選擇麦轰,不管是在哪里。所有的痛苦必須自己承受砖织,放心款侵,別人不會替你承受。熬過了就好了侧纯,堅持新锈,親愛的自己。
    受傷的雨閱讀 188評論 0 0
  • 懂眶熬, 是一種簡簡單單的感動妹笆, 懂得你的眼淚, 給你最暖的安慰娜氏; 深知你的憔悴晾浴, 怪你為何不知疲憊。 懂牍白, 是一種難...
    愛上一葉浮萍閱讀 292評論 6 17
  • 簡悅直播教練恬源閱讀 337評論 3 1