『壹』 matlab能读取什么格式文件格式
1、用matlab读取avi 视频(只能读一定压缩各式的avi 电影,这是因为avi视频文件的编码
有很多,而matlab只支持部分编码格式。可见
blog.csdn.net/IdoIwill/article/details/2125838) aviinfo('d:\abc.avi');
%显示存在d 盘文件abc.avi 的信息,在matlab2010 版本中,该函数可以换成mmreader mov=aviread('abc:.avi'); %读入电影abc.avi movie(mov); %放映电影
2、将avi视频转成图片序列
mov=aviread('d:\abc.avi'); %读入
Vframes=size(mov,2); %读取视频的帧数,mov 为1*1179 struct,struct就是第4点所介绍的 for i=1: Vframes
strtemp=strcat('d:\转换的图片\',int2str(i),'.','jpg'); %将每帧转成.jpg 的图片 imwrite(mov(i).cdata(:,:,), mov(i).colormap, strtemp); % 把图像写入磁盘 end
3、读取avi视频第index帧有三种使用方式(不适用于索引图):
第一种:mov=aviread(filename); % 读入视频
frame=mov(index); %读取avi 文件的第index 帧图像; img = frame.cdata; % 读取图像的颜色信息
第二种:frame = aviread(filename, index); img = frame.cdata;
第三种:mov = aviread(filename); frame = mov.cdata; img = mov{index}; 例:%读取第一帧图像
mov = aviread('highwayI_raw.AVI'); frame=mov(index); imshow(frame.cdata);
4、读取avi视频第index帧图像后,所储存帧格式是一个结构体(struct),该结构体有两个元素:cdata 和colormap
例:
frame = aviread('highwayI_raw.AVI', i);
frame.cdata 表示了一个数据数组,彩色图像就是3 维的,灰度图像就是2 维的。也就是相当于I=imread(‘abc.jpg’)后的数组I
frame.colormap 见(help aviread)
%%%%%了解了以上四点,处理视频文件就可以相当于图像文件一样处理了%%%%
5、将彩色图像转换为灰度图像,很简单:
frame = aviread('highwayI_raw.AVI', i);
f_gray = rgb2gray(frame.cdata); 这样就可以将文件的第i帧转换为灰度图像。
6、 创建avi视频文件
aviobj = avifile(filename)
aviobj = avifile(filename, 'Param1', Val1, 'Param2', Val2,...) 描述:
aviobj = avifile(filename) 创建一个AVI文件,其名称为filename,AVI文件对象的所有属性均取默认值。如果文件名中并不包含扩展名,则avifile为filename自动添加扩展名.avi。AVI是一种存储声音和图像数据的文件格式。
avifile返回一个指向AVI文件对象aviobj的句柄,使用该对象在其他函数中可以引用该对象。AVI文件对象支持控制被创建的AVI文件的各方面属性和方法。
aviobj = avifile(filename, 'Param1', Val1, 'Param2', Val2,...)使用指定的参数设置创建一个AVI文件。 参数说明表:
用户也可以使用结构语法来设置AVI对象的属性。Avifile对象的所有属性名字和参数表中的名字一样,并且要完整(除了keyframe这个参数)。例如,设定质量属性为100可以使用如下的语法
格式:
aviobj = avifile('myavifile'); aviobj.quality = 100;
实例
这一实例显示如何使用函数avifile创建AVI文件example.avi。 t = linspace(0,2.5*pi,40); fact = 10*sin(t); fig=figure;
aviobj = avifile('example.avi') [x,y,z] = peaks; for k=1:length(fact) h = surf(x,y,fact(k)*z); axis([-3 3 -3 3 -80 80]) axis off
caxis([-90 90]) F = getframe(fig);
aviobj = addframe(aviobj,F); end
close(fig)
aviobj = close(aviobj);
7、mmreader 类---创建一个视频文件读取对象
其实在 matlab2010 中,会建议采用mmreader、mmfileinfo等函数,如果使用aviread会出现警告如下:
Warning: AVIREAD will be removed in a future release. Use MMREADER instead. 这是由于aviread接口需要要求avi文件时没有压缩的,这回导致其应用受到很大的 具体的mmreader 类描述可见matlab的help,以下摘自一些重点: mmreader类 是为了创建一个读取视频文件的多媒体读取对象 描述:
函数 mmreader可以读取所有的多媒体文件,返回值为一个结构体;然后可以用read 函数进行读取文件
mmreader 支持的文件格式由各个操作系统平台决定
Window: AVI(.avi)/MPEG-1(.mgp)Window Media Video(.wmv,.asf,.asx)
Macintosh: AVI(.avi)/MPEG-1(.mpg)/MPEG(.mp4,.m4v)/苹果Quick Time movie(.mov) 以及被QuickTime在苹果系统上所支持的视频格式
Linux: 支持系统中所安装的GStreamer 0.10 支持的视频格式,包括AVI/Ogg Theora(.ogg)
mmreader创建视频文件有两种 obj = mmreader(filename);
obj = mmreader(filename, ‘PropertyName’, ‘PropertyValue’);
第一种只需提供(默认路径名)+文件名,就可以返回一个视频对象;使用第二种方法,可以设置属性名以及属性值
obj具有的属性如下: BitsPerPixel (只读) 视频的每个像素的位数 Duration (只读) 每秒的总长度 FrameRate (只读) 每秒的帧率 Height (只读) 视频每帧图像的高度 Name (只读) 对象所对应的视频文件名 NumberOfFrames (只读) 视频流中的总帧数 Path (只读)视频文件所在的路径名 Tag 定义视频对象的标签(默认’’) Type (只读) 对象的类名—mmreader UserData 给用户自定义数据的区域 VideoFormat (只读) 视频文件压缩格式 Width (只读)视频每帧图像的宽度 通常obj对象配合read方法使用;read的使用方法如下: video = read(obj);
video = read(obj,index); 或 video = read(obj, [index1,index2])
其实第一种默认是read(obj, [1,inf]) 第一种方法读入obj视频对象的所有帧; 第二种方法读入obj视频对象的第index帧.
第一种方法返回的video对象是个4维数组,H-W-B-F H: 图像帧的高度 W: 图像帧的宽度 B: 图像帧的颜色通道 F: 图像帧的数目
第二种方法返回就是图像帧的数据,灰度图像返回二维数组,RGB24图像返回三维数组。 读取第一帧图像例子如下
obj = mmreader('abc.avi'); video = read(obj); img = video(:,:,:1); imshow(img);
『贰』 matlab中如何打开fig文件
解决这个问题的方法如下:
1、首先找到需要打开的fig文件。
『叁』 求问怎么用matlab打开格式为.dat的文件
你直接用matlab打开,闷梁或者open,然后命令load数据,蚂做运可以在workspace里面看导入的数据,然后用胡友plot命令画图
『肆』 如何打开MATLAB里的后缀名为mat的文件
你可以调用matlab的子程序库,用c或fortan调用mat格式的数据。matopen 打开mat文件
matclose 关闭mat文件
magetfp 取得mat文件的c语言句柄
matGetArray 取得一个数组
具体内容看联机文档
『伍』 matlab可以打开什么格式的文件
cmd窗口输入-guide 打开如下窗口: 切换到已经存在的gui,点击浏览便可打开fig文件,并能进行fig的修改编辑。
『陆』 MATLAB怎么打开*.mat文件
mat是MATLAB的一个数据文件,可以通过双击直接导入。或者通过命令窗口输入命令并写入要导入的m文件。
三、解析不同
1、.m文件:.m文件的文件格式是私有的,不可以自己解析里面的内容。
2、.mat文件:.mat文件的文件格式是公开的,可以自己解析里面的内容。
『柒』 matlab 如何打开wav声音文件
在matlab中,可以用wavread函数来打开wav格式的声音文件。
wavread函数的用法如下:
1、y = wavread(filename)
% 输入参数filename为指定载入的音频文件名称,为单引号引出的字符串形式。返回参数y% % 为所读取的音频数据样本。当文件无扩展名时,系统自动附加扩展名.wav。
2、[y, Fs, nbits] = wavread(filename)
% 参数filename、y的定义同上,Fs为采样频率,nbits为文件中每个样本的字节数。
3、[...] = wavread(filename, N)
% 参数N为文件每个通道的前N个样本。
4、[...] = wavread(filename,[N1 N2])
% 参数N1、N2为文件每个通道从N1到N2的样本。
举例说明如下:
[y,fs,nbits]= wavread('d:\shuisound.wav');
sound(x,fs,bits); % 播放声音
% y就是音频信号;
% fs是采样频率,比如说16000就是每秒16000次;
% nbit是采样精度,比如说16就是指16位精度的采样。
『捌』 matlab中m文件怎么打开
1.第一步在我们的电脑上打开matlab,创建一个test.m文件。
2.第二步创建m文件之后,双击m文件唤汪,输入代码,点击上面的运行。
3.第三步在命令行窗口可以看到m文件运行的结果,disp是将结果打印在命令行窗口。
4.第四步除开直接在编辑器中直接运行m文件,我们也可以直接在命令行窗口中输入m文件名称。
“m”是差闹一种文件格式虚链罩,中文名为可执行的代码文件,文件拓展名为“.m”。属于Wolfram 语言中的程序包。
打开所需的包并手动评估其命令。通常,一个包提供的命令将被放入特殊的单元格中,根据您的首选项设置,Mathematica可能会在打开文件时对其进行评估;在这种情况下,您需要做的是打开 文件,使用“文件”菜单中的“打开...”命令。
并显示询问关于初始化单元格的对话框的“确定”,如果没有这样的对话框,可以使用“评估初始化 “命令”的“评估”子菜单中的“内核”菜单。
以上内容参考:网络-m文件格式