MATLAB 帮助中心
读取一个或多个视频帧
video = read(v)
video = read(v,index)
video = read(___,'native')
video = read(v) 从与 v 相关联的文件读取所有视频帧。
video
v
video = read(v,index) 只读取 index 指定的帧。
index
示例
video = read(___,'native') 以 VideoFormat 属性指定的格式返回数据,且可包含上述语法中的任何输入参量。
'native'
VideoFormat
全部折叠
为示例视频文件 xylophone_video.mp4 创建一个 VideoReader 对象。
xylophone_video.mp4
VideoReader
v = VideoReader("xylophone_video.mp4");
只读取第一个视频帧。
firstFrame = read(v,1);
只读取最后一个视频帧。
lastFrame = read(v,Inf);
读取第 5 帧到第 10 帧。
earlyFrames = read(v,[5 10]);
从第 50 帧开始读取到视频文件结束。
lateFrames = read(v,[50 Inf]);
显示视频帧变量的大小和类型信息。
whos *Frame*
Name Size Bytes Class Attributes earlyFrames 240x320x3x6 1382400 uint8 firstFrame 240x320x3 230400 uint8 lastFrame 240x320x3 230400 uint8 lateFrames 240x320x3x92 21196800 uint8
清除 VideoReader 对象。
clear v
输入 VideoReader 对象。使用 VideoReader 函数根据您的视频文件创建一个 VideoReader 对象。
[1 Inf]
要读取的帧,指定为数值标量或二元数组。
要读取单个帧,请指定数值标量。
要读取某一范围的帧,请指定一个两元数组。
第一帧编号为 1,Inf 表示文件的最后一帧。
Inf
示例: 10
10
示例: Inf
示例: [1 20]
[1 20]
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
single
double
int8
int16
int32
int64
uint8
uint16
uint32
uint64
视频帧数据,以数值数组或结构体数组的形式返回。video 的大小和格式取决于 v 的 VideoFormat 属性。如果 v 的 VideoFormat 属性为 'Indexed' 或 'Grayscale',则 video 的数据类型和维度取决于您是否使用 'native' 参量调用 read。对于大多数文件,video 的数据类型和维度如下所示。
'Indexed'
'Grayscale'
read
H 是图片帧高度,W 是图片帧宽度,F 是读取的帧数。
H
W
F
obj.VideoFormat
'RGB24'
H×W×3×F
RGB24 图片
H×W×1×F
灰度图片
struct
1×F
MATLAB® 影片,是由帧结构体数组构成的数组,每个数组都包含 cdata 和 colormap。
cdata
colormap
对于 Motion JPEG 2000 文件,video 的数据类型和维度如下所示。
'Mono8'
黑白图片
'Mono8 Signed'
黑白签名图片
'Mono16'
'Mono16 Signed'
'RGB24 Signed'
RGB24 签名图片
'RGB48'
RGB48 图片
'RGB48 Signed'
RGB48 签名图片
全部展开
用法说明和限制:
read 的代码生成不支持可选的位置参量 native。
native
生成使用行优先布局的代码 - Generate Code That Uses Row-Major Array Layout (MATLAB Coder)。
在 R2010b 中推出
movie | VideoReader | readFrame
movie
readFrame
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处