【问题标题】:readFrame failed to read Frames from video in MatlabreadFrame 无法从 Matlab 中的视频中读取帧
【发布时间】:2018-04-12 12:34:40
【问题描述】:

我想从视频中读取帧并保存每一帧。但是 readFrame 无法从视频中读取帧。有人可以帮忙吗?为什么它不起作用?

clear all
close all
clc
tic
Video1 = VideoReader('D:\ywa\Matlab\experiment_3\b8_a4\hell\b8_a4_hell.mp4');
k = 1;
% frames = read(Video1,[5 10]);
while hasFrame(Video1)
    tmp = readFrame(Video1);
     frames(:,:,:,k) = tmp;
    k = k+1;
end

视频共有70帧,分辨率为3840*2160。 非常感谢。似乎while循环没有在代码中运行。

【问题讨论】:

  • “失败”是什么意思……什么?
  • 电脑爆炸?它给你圆周率的小数?您没有 MATLAB 许可证? “失败”的解释有很多!
  • 当我运行代码时,没有错误,但似乎while循环不起作用。框架未加载。
  • “似乎”怎么样? frames 是空的吗?不存在的? k 的值和 frames 在您运行代码后是否存在都应该告诉您它是否有效。
  • 帧不为空。我尝试使用 ffmpeg 从该视频中提取帧。它起作用了,框架不是空的。但是当我在 matlab 中运行时,无法读取帧

标签: matlab image-processing frame


【解决方案1】:

您在哪个平台上? Windows 7 本身不支持读取 UHD。这表明您可能已经安装了额外的编解码器来阅读可能是问题的视频。

如果在 Windows 10 上,它应该可以正常工作。

饭菜

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-07
    • 1970-01-01
    • 2020-08-29
    • 2014-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多