mov = mmreader(filename);
frames=read(mov, [1, 100]); % Reads from frame 1 to frame 100
具体请查看两个函数的帮助
支持的格式:
AVI (avi),
MPEG-1 (mpg),
Windows Media Video (wmv, asf, asx),
and any format supported by Microsoft DirectShow
MPEG2可以先转换格式再用将视频转换为帧mov=aviread('D:\road2avi');
%读入
fnum=size(mov,2);
%读取视频的祯数,mov为1fnum矩阵for
i=1:fnum
strtemp=strcat('D:\cc\',int2str(i),'','bmp');%将每祯转成bmp格式的
imwrite(mov(i)cdata(:,:,:),strtemp);end我的视频是D盘中的road2,存入的文件是D盘CC文件夹,你按你的路径输现在我是想能把连成视频的指令,谁有呀?这样,matlab的数值运算如果小数太长系统自动要四舍五入,你用符号计算吧:
a=sym('112345678901234222');
b=sym('112345678901234221');
c=a-b;
c=double(c);
符号计算是不四舍五入的,是完全精确的,用c的正负来判断a,b的大小
matlab不自带loadyuv这个函数,你需要下载这个函数并把它与你的m文件放在同一个目录下,或者加入把它所在的路径加到path里。可以从这里下载:>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)