1. 程式人生 > >如何把系列圖片儲存為.mat

如何把系列圖片儲存為.mat

1)儲存為.mat檔案

pt = 'd:\imgs\';%要儲存的路徑 ext = '*.jpg'; dis = dir([pt ext]); nms = {dis.name}; for k = 1:length(nms) nm = [pt nms{k}];   % 注意要加上路徑 my_images{k} = imread(nm); end save('my_images.mat','my_images'); 呼叫的時候: clc; clear all; load my_images.mat p1 = my_images{1}; imshow(p1); 2)比如說有個資料夾,有三十張名稱規律的圖片。我想把他們儲存到一張圖,這張圖有三十幀該怎麼做?

或者如何把他們存到一個,包含所有圖片資訊的 *.mat 檔案中.
解決的方法可以將影象讀進來,拼接為一個大的圖儲存,或者建立一個MxNx30的矩陣,(如果是彩色則是三通道)
將讀進來的資料賦值在每一個通道里面即可。即:
只有gif格式支援多幀影象。如果是為了matlab處理方便的話,還是這樣方便些:
用cell陣列儲存每一個影象
  1. A = cell(30, 1);
  2. for k = 1:30
  3. A{k} = imread('___.tiff');
  4. end
  5. save('Data.mat', 'A');
複製程式碼 通過這種方法就可以把一系列的圖片儲存為mat檔案啦,然後呼叫的時候直接用load呼叫即可。