gpt4 book ai didi

php - 用图像替换帧中检测到的对象。(图像处理)

转载 作者:行者123 更新时间:2023-12-04 23:16:39 28 4
gpt4 key购买 nike

概述:

我正在做一个视频创作项目。我使用的技术有:imageMagick、php、ffmpeg。

当前状态:

目前,该项目能够使用图像和文本以及很少的基本过渡来创建视频。我这样做的方式是使用 imagemagick 使用输入图像(其中带有过渡效果)创建 gif,然后将所有 gif 转换为视频并最终将视频连接在一起。

下一步(我的问题):

我现在准备把它提升到一个新的水平。所以,我所拥有的是一个视频(1920x1080),其中有一些白帧(1280x720),每帧都在不断变化。我想用我希望使用的一些图像(1280x720)替换出现在视频某些帧中的那些白帧。请在此处查看图片,您会有所了解:这些只是我视频中的两帧。如果您可以仔细观察,图像正在移动(空白不是恒定的)。

enter image description here

enter image description here

期望:

所以,我想用我自己的一张图片来填充那些空白。如果这种情况仅适用于一帧,我可以使用 ffmpeg 将图像覆盖在确切的宽度和高度上。但是这里的空白不是固定的,并且在所有帧中都在不断移动,并且有很多帧。因此,我正在寻找类似 opencv 或其他一些技术,可用于在视频或一组帧中进行对象检测,并用其他图像替换检测到的区域。

我只需要一脚。因此,如果有人已经从事过类似的工作,请建议我可以使用什么技术。提前致谢。

最佳答案

这完全取决于您可以假设的内容:

如果您可以安全地假设您的矩形边界永远不会以某种方式被遮挡(隐藏),您可以尝试在图像中找到边缘(如 OpenCV 的 Canny 边缘),然后寻找矩形形状(形成扭曲矩形的角,或非常流行的 Hough行)。

如果您要查找的矩形始终为白色,您可以在 HSV 等色彩空间中对图像进行阈值处理以查找最大值(HSV 中的 V ~ 亮度),然后在二进制图像中进行矩形形状搜索。

如果您的角落有时被遮挡,您必须对图像进行一些调整,例如形态学操作(“增长和收缩”二进制阈值图像),那么霍夫线可以解决问题。

请注意,此答案假定一旦您知道矩形在哪里,“您就完成了”,您只需用自定义内容覆盖矩形。
我也不检查任何时间连续性:您的视频帧可能会根据矩形的逐帧外观跳来跳去。你必须包括一些关于以前职位的知识。

关于php - 用图像替换帧中检测到的对象。(图像处理),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30971894/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com