-
MATLAB AVI
视频读取处理
1
、
用
matlab
读取
avi
视频(
只能读一定压缩各式的
avi
电影,这是因为
avi
视频文件的编码
有很多,而
matlab
只支持部分编
码格式。可见
/IdoIwill/article/details/2125838
)
aviinfo('d:');
%
显示存在
d
盘文件
的信息
,
在
matlab2010
版本中,该函数可以换成
mmreader
mov=aviread('abc:.avi');
%
读入电影
movie(mov);
%
放映电影
2
、
将
avi
视频转成图片序列
mov=aviread('d:');
%
读入
Vframes=size(mov,2);
%
读取视频的帧数,
mov
为
1*1179 struct
,
p>
struct
就是第
4
点所介绍的
for i=1: Vframes
strtemp=strcat('d:
转换的图片
< br>',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 =
aviread(filename, index);
img
=
第三种:
mov =
aviread(filename);
frame =
img = mov{index};
例:
< br>%
读取第一帧图像
mov =
aviread('highwayI_'); frame=mov(index); imshow();
4
、读取
avi
视频第
index
帧图像后,所储存帧格式是一个结构体
(struct)
,该结构
体有两个元素:
cdata
和
colormap
例:
frame =
aviread('highwayI_', i);
表示了一个数据数组,
彩色图像就是
3
维的,
灰度图像就是
2
维的。
也就是相当
于
I=i
mread(
‘
’
)
后的数组
I
ap
见(
help aviread)
%
%%%%
了解了以上四点,处理视频文件就可以相当于图像文件一样处理了
%%%%
5
、将彩色图
像转换为灰度图像,很简单:
frame =
aviread('highwayI_', i);
f_gray =
rgb2gray();
这样就可以将文件的第
i
帧转换为灰度图像。
6
、
创建<
/p>
avi
视频文件
aviobj = avifile(filename)
aviobj = avifile(filename, 'Param1',
Val1, 'Param2', Val2,...)
描述
:
aviobj =
avifile(filename)
创建一个
AVI
文件,
其名称为
filename
,
AVI
文件对象的所有属性均取默
认值。如果文件名中并不包含扩展名,则
avifile
为
filename
自动添加扩展名
.avi
。
AVI
是一种存储
声音和图像数据的文件格式。
avifil
e
返回一个指向
AVI
文件对象
aviobj
的句柄,使用该对象在其他函数中可以引用该对象。
p>
AV
I文件对象支持控制被创建的
AVI<
/p>
文件的各方面属性和方法。
aviobj = avifile(filename, 'Param1',
Val1, 'Param2', Val2,...)
使用指定的参数设置创建一个<
/p>
AVI
文件。
参数说明表:
参数名称
说明
默认值
一
个
m*3
的矩阵,
应用于索引色的
p>
AVI
视频,
其中
m<256(
如果是
Indeo
压缩格
式,
m
是
236)
。应该在使用
addframe
前设置好该参数。
'colormap'
无
这个参数只是在
'compression'
设置为
'MSVC', 'RLE',
'None'
时才可以
进行指定。
<
/p>
指定压缩格式
,
如果要创建无压缩文件,
应指定
”
None
”
< br>
在
UNIX
操作系统下,有效
值指定为
'None'
在
Windo
ws
操作系统下
,
有效参数包括:
p>
Windows
操
'MSVC'
作系统:
'RLE'
'Indeo5'
'compression'
'Indeo3'
或
'Indeo5'
(
32
-bit
系统)
< br>'Cinepak'
(
32-bit
系统)
UNIX
操作
'None'
系统:
'None'
注:为了使用传
统的
Windows
操作系统压缩编码码器,指定
4
个字符
来说明编码器。如果未能找到编码器这个会
报错。
'fps'
'keyframe'
'quality'
用来指定
AVI
视频每秒播放的帧数
< br>
压缩器支持时空压缩,这是指每秒的关键帧数目。
15fps
默认每秒
2.1429<
/p>
关键帧
为
[0
100]
之间的数值。高质量参数输出高质量视频,并且文件较大。
反之,低质量参数输出低质量视频,文件较小。
75
这个参数只对压缩电影有效
默认为文件
名
'videoname'
视频流的描述性名称。这个参数应该
不大于
64
字符
用户也可以使用结构语法来设置
AVI
对象的属性。
Avifile
对象的所有属性名字和参数表中的名字
一样,并且要完整(除了
keyframe
这个参数)
。例如,设定质量属性为
100
可以使用如下的语法
-
-
-
-
-
-
-
-
-
上一篇:部编版三年级加点字造句、四字成语
下一篇:叠字成语