首页 > 解决方案 > 上传图片生成特效视频

问题描述

我被视频处理功能所困扰,具体来说,上传图像,然后根据各种视频模板生成视频。

以下是视频模板:

  1. http://video-static.biku8.com/data/video/template/3286012076458048/7437ab55-2e83-4a36-9046-5708fcddf4c1.mp4
  2. http://video-static.biku8.com/data/video/template/3274256089907264/ae8fa3f7-6c9c-45ca-810f-48db92cc14cb.mp4
  3. http://video-static.biku8.com/data/video/template/3213894231425088/bf107d439b9043a58c1ea0ba26f811db_template.mp4
  4. ...

如上面的视频模板所示,我只需要上传一张照片就可以生成一个很棒的视频。

我的问题

  1. 实现这个视频的具体想法是什么?
  2. 需要哪些第三方库?(ffmpeg,opencv)

PS:我正在使用 dlib 和 opencv 进行人脸识别。我可以生成人脸图像,但我不知道如何将人脸图像插入这些模板视频的正确位置。

标签: imageopencvvideoffmpegvideo-processing

解决方案


我建议您按照以下 3 个步骤操作

  1. 通过opencv加载模板视频,可以逐帧访问视频
  2. 逐帧修改。
  3. 将帧保存到视频流写入器

关于第2步,实际上,您必须通过掩码将上传的图像复制到每一帧(如果掩码上的坐标为非黑色,则源图像中的像素将被复制到目标图像)。掩码可以由点列表或图像定义。您应该为文件中的每一帧预先定义一个掩码。然后为每一帧加载蒙版并复制。

在此处输入图像描述

如何读取视频、保存视频OpenCV 读写视频

如何将图像插入另一个图像复制非矩形ROI


推荐阅读