【问题标题】:How is it possible to mask a certain window or region in a Video如何屏蔽视频中的某个窗口或区域
【发布时间】:2014-01-15 18:42:55
【问题描述】:

我有大约 50000 帧大小为 1920x720 的 mp4 视频。我必须删除视频中的特定区域(所有帧)。你能推荐一个 MATLAB 中的方法吗?

【问题讨论】:

  • 想一想如何对每张图像应用蒙版,然后读取视频的每一帧,将其视为图像并应用相同的方法。查看this页面了解更多信息。

标签: c matlab image-processing video-processing


【解决方案1】:

为视频的每个单独帧指定一个 ROI(感兴趣区域),其中 ROI 是您要移除的特定区域。非常简单。希望我的建议有所帮助。如果您仍然不确定,请对此答案发表评论,我会添加更多提示。

【讨论】:

  • 我有 1920*1080 的图像。我想在图像的某个坐标中选择大小为 430*270 的 roi 并将其设为黑色。 ROI 的语法是什么
  • 那里有一个例子。查看“在没有关联图像的情况下创建 ROI”。这很简单。 (:
  • 另一种更直接、更简单的方法可以在这里找到:mathworks.com/help/imaq/roiposition.html。如果您确实需要一个示例,请再次告诉我,我将编辑我的答案以向您展示。指定 ROI 后,您只需要将指定的 ROI 中的像素设置为掩码,如 Amro 所述,将其设置为零(:
【解决方案2】:

如果您逐帧阅读视频文件,那么删除特定区域(如您所说使其变黑)是一个简单的矩阵索引问题:

for i=1:numFrames
    % read next frame
    frame = <.. get i-th frame..>;

    % black out region
    frame(100:200, 300:350) = 0;
end

如果帧是 RBG,只需适当调整索引:frame(a:b,c:d,:)=0

【讨论】:

    猜你喜欢
    • 2014-09-20
    • 1970-01-01
    • 1970-01-01
    • 2014-05-13
    • 1970-01-01
    • 1970-01-01
    • 2012-11-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多