我有一个 30 分钟长的视频(编码为 mp4:h264),我需要计算影片中的剪辑次数。它应该包括剪切和交叉淡入淡出。
所以一些与 i-Frame 检测非常相似的东西......
我有带 ffmpeg/libav 的 Linux 以及带 Adobe Premiere 的 Windows。
有什么线索吗?还是其他软件?
最佳答案
正如其他答案所指出的那样,很难通过自动解决方案获得良好的准确性。交叉淡入淡出、缩放、平移等...都让自动工具难以断定连续帧是否属于同一场景。
也就是说,我会尝试使用 OpenCV库来分析连续帧之间的差异,并尝试使用一些经验阈值来确定它们是否足够相似以考虑来自同一场景(选择帧的间隔,不一定是每一帧)。
使用 VideoCapture 从视频中提取帧很容易类。
提取帧后,您可以使用各种方法来尝试确定两个帧是否相关。
一些想法:
- 使用Lucas-Kanade find the optical flow 的方法帧之间的差异,并得出差异是否确实是由帧中对象的运动引起的,或者是否是完全不同的场景。
- 使用 features detection算法( SIFT , SURF 等)来表征帧和 compare it到其他框架。另见讨论 here .
祝你好运!
关于video - 30 分钟视频文件的剪辑次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20637591/