裁剪具有定义的宽度、长度和像素位置的视频文件

Cropping a video file with defined width, length, and pixel location

本文关键字:像素 位置 的视频 文件 定义 裁剪      更新时间:2023-10-16

我正在尝试创建一个程序来检测视频中的人脸。在我接受"脸"之前,有几个要求必须通过。在所有的要求都得到满足之后,我想要把"脸"的帧进行裁剪,使脸成为焦点区域。程序会遍历每一帧,然后将新视频制作成视频文件。

我从来没有处理过视频文件或图像文件,所以这对我来说都是新的。我目前正在编写所有用于确定人脸是否被接受的算法,以及人脸的定位。我也有一个视频处理器,这是我在这个项目中得到的。视频处理器用于检测人脸。如果有一个检测到的脸,视频将在一个红色矩形中标记脸,并给我脸的x和y轴,以及脸的长度和宽度。

程序中我完全不知道如何做的唯一区域是面部的实际裁剪,以及新框架(聚焦于面部)在原始框架上的位置。

我也不知道如何制作视频文件。我假设它与创建文本文件一样,只是使用了不同的方法和类。这是正确的吗?如果不是,我该如何处理?

我仍然处于设计阶段(我有视频处理器和其余程序的设计,但我想确保我能够在我告诉那个家伙我可以做到之前裁剪和放置脸部)。我有视频处理器的代码(它很长,但我可以张贴一些方法,如果需要)。

有什么好的资源可以让我看看或建议吗?

(我不知道这个最好的标签。

您有几个选择。如果你想在运行应用程序之前对视频进行预处理(如果它是某种不寻常的格式),我建议使用VirtualDub。据我所知,你可以在控制台运行它。如果你的视频是标准格式的,你可以忽略这一段。

对于应用程序本身,我建议使用OpenCV(因为它是你做这类事情时常用的工具)。我建议你阅读这个很棒的教程。然后,OpenCV允许你"逐帧"浏览视频。

裁剪本身然后通过所谓的ROI完成。如果我没理解错的话,你是想用图片制作一个新的视频。稍后,当你将尝试OpenCV,你可能不需要这个提示了,但看看函数cvCreateVideoWriter和cvWriteFrame