matlab下將圖片序列轉化爲視頻文件 && 將爲視頻文件轉化圖片序列

將圖片序列轉化爲視頻文件ide

程序以下:spa

framesPath = 'E:\img\';%圖像序列所在路徑,同時要保證圖像大小相同
videoName = 'Bolt.avi';%表示將要建立的視頻文件的名字
fps = 25; %幀率
startFrame = 1; %從哪一幀開始
endFrame = 350; %哪一幀結束

if(exist('videoName','file'))
    delete videoName.avi
end

%生成視頻的參數設定
aviobj=VideoWriter(videoName);  %建立一個avi視頻文件對象,開始時其爲空
aviobj.FrameRate=fps;

open(aviobj);%Open file for writing video data
%讀入圖片
for i=startFrame:endFrame
    fileName=sprintf('%04d',i);    %根據文件名而定 我這裏文件名是0001.jpg 0002.jpg ....
    frames=imread([framesPath,fileName,'.jpg']);
    writeVideo(aviobj,frames);
end
close(aviobj);% 關閉建立視頻
將爲視頻文件轉化圖片序列

程序以下:.net

fileName = 'E:\flip.mp4'; 
obj = VideoReader(fileName);
numFrames = obj.NumberOfFrames;% 幀的總數
%若不存在文件夾,則新建文件夾
if ~exist('ImageTest')
     mkdir('ImageTest');
end
 for k = 1 : numFrames
     frame = read(obj,k);% 讀取數據
     %imshow(frame);%顯示幀
     imwrite(frame,strcat('./ImageTest/',sprintf('%04d.jpg',k)),'jpg');% 保存幀
     %保存格式爲0001.jpg,0002.jpg,...
end
轉自:http://blog.csdn.net/hjl240/article/details/52402543
相關文章
相關標籤/搜索