Re: [問題] 請教如何解決fread遇到out of memory?

看板MATLAB作者 (阿斯斯)時間10年前 (2014/11/21 15:54), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
推 Evanny:每次只讀需要的部分 輸出後就清掉 再接著讀下一段 09/07 09:36 → Evanny:效率當然比一次讀完在一次輸出還差 不過為了不爆記憶體 09/07 09:36 → Evanny:也只能這樣做了 小弟目前也遇到一樣的困難 上網查了許多資料 都只能控制取點數 請問有人知道fread如何控制讀取的範圍 以便讀取下一段嗎??? ※ 引述《brook ()》之銘言: : 因為我用labview的程式連拍250張的680*512pixels的影像 : 然後存成1D binary的file(.bin) : 檔案大小約末166MB左右 : 我用以下的code去讀此檔案(xxx.bin) : fid= fopen(['C:\xxx.bin']); : fseek(fid, 12 , 'bof'); : g=fread(fid,'int16', 'b'); : 如果打開的檔案小 沒有問題 : 但是開的檔案比較大時 : 就會跑出來Out of memory : 想請教版上的專家該如何解決 : 我同學是跟我說Matlab沒有辦法讀那麼多element的1D array : 所以他建議我擷取照片時先存成2D的檔案(如xls) : 然後再由xlsread去將檔案讀進來 : 不過因為我用labview將照片存成2D時 : 換成labview跳出來out of memory : 所以我現在很頭大 : 不知道還有沒有其他建議的方法可行 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.115.152.124 ※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1416556482.A.E86.html
文章代碼(AID): #1KRk_2w6 (MATLAB)
文章代碼(AID): #1KRk_2w6 (MATLAB)