[請益]如何把約三千張的照片存成影片
大家好
我想使用Matlab把2880張png照片(每張約500kb)存成影片。
但是程式碼寫完之後,跑了平行處理,還是會把伺服器的記憶體吃光光
貌似是暫存在cell中吃的記憶體太大,導致我還沒匯入完所有照片就掰了
想請大家幫我看看程式碼如何改進比較好,謝謝
--------------------------------------------
p = gcp;
poolSize = 8;
略過參數設定、路徑定義、輸出檔名;
idx1=1;
idx2=2880;
f = dir([figpath '*.png']);
imagecell= cell(idx2-idx1+1,1);
c = 1;
for i = idx1:idx2
figname = f(i).name;
II = imread([figpath figname]);
imagecell{c,1} = II;
c=c+1;
end
v = VideoWriter(gifname);
v.FrameRate = 12;
%v.Quality = 0;
open(v);
for k = 1:numel(imagecell)
writeVideo(v,imagecell{k,1});
end
close(v);
movefile([gifname '.avi'],outpath);
-------------------------------------------------
想請問各位前輩哪裡可以優化,我一直想不通總大小約2G的2880張png
怎麼在處理時會吃掉快30 40 G的記憶體,然後就掰了
謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.24.214
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1495678945.A.82A.html
→
05/25 11:05, , 1F
05/25 11:05, 1F
→
05/25 14:09, , 2F
05/25 14:09, 2F
您好 我的圖檔都是尺寸4096*3072
※ 編輯: ecogod (140.116.24.214), 05/25/2017 14:50:00
→
05/25 15:11, , 3F
05/25 15:11, 3F
我輸出彩色的 print('-dpng','-r300',[outpath, 'i' , num2str(i) ])
※ 編輯: ecogod (140.116.24.214), 05/25/2017 15:19:02
→
05/25 16:31, , 4F
05/25 16:31, 4F
→
05/25 16:32, , 5F
05/25 16:32, 5F
→
05/25 16:32, , 6F
05/25 16:32, 6F
→
05/25 16:33, , 7F
05/25 16:33, 7F
→
05/25 16:35, , 8F
05/25 16:35, 8F
→
05/25 16:39, , 9F
05/25 16:39, 9F
推
05/25 18:19, , 10F
05/25 18:19, 10F
→
05/25 23:37, , 11F
05/25 23:37, 11F
→
05/25 23:38, , 12F
05/25 23:38, 12F
→
05/25 23:44, , 13F
05/25 23:44, 13F
→
05/25 23:44, , 14F
05/25 23:44, 14F
推
05/25 23:49, , 15F
05/25 23:49, 15F
→
05/26 02:47, , 16F
05/26 02:47, 16F
→
05/26 02:48, , 17F
05/26 02:48, 17F
→
05/26 02:53, , 18F
05/26 02:53, 18F
→
05/26 02:54, , 19F
05/26 02:54, 19F
→
05/26 02:55, , 20F
05/26 02:55, 20F
→
05/26 02:55, , 21F
05/26 02:55, 21F
→
06/05 17:02, , 22F
06/05 17:02, 22F
→
06/06 10:22, , 23F
06/06 10:22, 23F
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章