使用OpenCV从视频讲座中提取幻灯片

时间:2011-06-20 20:07:28

标签: opencv

我想使用OpenCV从视频讲座中提取出所有幻灯片。以下是讲座的示例:http://www.youtube.com/watch?v=-hxOpz9c0bY

您会推荐哪些方法?到目前为止,我已经尝试过:

  • 比较帧与帧之间灰度强度的变化。当前景中的对象四处移动时,这可能会出现问题。例如,在这个讲座中,有一只手移动:http://www.youtube.com/watch?v=mNzu42FrlHo#t=07m00s

  • 使用SURF功能并逐帧进行比较。这种做法似乎有点慢。

有没有人有其他想法?

4 个答案:

答案 0 :(得分:0)

大部分工作很可能已由视频编码器完成。您只需要提取关键帧并检查它们之间的帧压缩程度。

区分静止图像也应该相当容易。通过只检查关键帧,您可以节省大量时间。幻灯片可能具有高对比度,坚固的形状,坚实的背景。演讲厅形状模糊,对比度低。

答案 1 :(得分:0)

您需要的是场景变化检测。之后,您必须将场景分类为“演讲厅”或“演示”。至于手的问题 - 您可以使用具有自适应背景的背景减法(只需确保掩盖前景......您不希望前景成为背景的一部分)。

答案 2 :(得分:0)

您可以尝试边缘检测并查找矩形对象 - 幻灯片(高于特定区域阈值)。您可以通过在矩形内查找一些文本来进一步减少FP。

答案 3 :(得分:0)

从视频演示中提取幻灯片/框架的原因有很多,尤其是在教育或会议相关视频的情况下。它使您无需观看整个视频即可访问学习笔记。

我多次遇到过这个问题,所以我决定使用 python 自己创建一个解决方案。我已将代码开源,您可以轻松设置此工具并通过几个简单的步骤运行它。

有关 youtube video tutorial 的信息,请参阅此内容。如何使用此工具的步骤。

  • 克隆 this project video2pdfslides
  • 通过运行“pip install -r requirements.txt”设置您的环境
  • 复制您的视频路径
  • 运行“python video2pdfslides.py ” 繁荣! pdf 幻灯片将在输出文件夹中可用 做笔记并享受!