查看单个帖子
旧 2019-12-14, 20:13   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 如何在MATLAB中获取表示视频帧的矩阵?

我有一个avi视频文件。我想将此视频中的帧表示为3个矩阵(因为颜色是通过3个数字([红色,绿色,蓝色]或[色相,饱和度,值]或其他参数)进行参数化的。

目前,我有此代码:

videoObject = mmreader(fname); imageData = read(videoObject, [1 5]) 因此,据我了解,我从视频中提取了前5帧。但是我不明白imageData是用什么格式给出的。例如,如何从位于行号17和列号32第三帧中获得像素颜色的绿色分量?

有人可以帮我吗?



回答:

据我了解,可以通过以下方式完成。可以通过以下方式达到特定的帧:

% Take frame number 7: imageData = read(videoObject, 7); 现在,如果我们想知道第1列和第2行中像素的读取,绿色,蓝色分量,我们需要这样做:

impixel(imageData,1,2) 它将返回3个数字(像素颜色的RGB分量)。



更多&回答...
poster 当前离线   回复时引用此帖