当前位置: 代码迷 >> 综合 >> matlab读取视频文件的图像数据
  详细解决方案

matlab读取视频文件的图像数据

热度:99   发布时间:2024-01-22 00:35:41.0

本文转载自  新浪博客   视频图像的MATLAB处理(1)存取图像数据   作者:bigfish

以后肯定会用到,先转载过来,用到了在这里补充~

读取图像数据:.avi,.mpeg,.wmv,.asf,asx;默认为.avi;

mov=aviread('filename',index);

mov中包括图像数据cdata和图像索引colormap;index为读取的帧,省略为读取整个视频

当mov为真彩时cdata(:,:,3),colormap为空;其中cdata(:,:,i)即分别为mov的RGB像素值

当mov为图像索引时,cdata(:,:),colormap(3*M);

获取图像帧数:fnum=size(mov,2);

将图像转化为图片并存储:

for i=1:fnum
 
  strtemp=strcat(int2str(i),'.jpeg');
 
  imwrite(mov(i).cdata,strtemp);
end

存取.mat文件用save/load filename data1 data2 ...

附实例:

mov=aviread('Sample.avi');
fnum=size(mov,2);
for i=1:fnum
 
  strtemp=strcat(int2str(i),'.jpeg');
 
  imwrite(mov(i).cdata(:,:,1),strtemp);
end



  相关解决方案