我正在尝试从我拥有的大型视频中提取关键帧。我看到的问题是,它提取的太多了,给我留下了许多非常相似的图像。
以下是我当前正在使用的(从终端)
ffmpeg -i video.mov -vf“ select = eq(pict_type \,I)” -vsync vfr thumb%04d.png -hide_banner
如果有一种方法可以使它只能在5个关键帧中输出1,那就太好了。或什至更好的是,如果有一种方法可以使我仅在帧与前一个帧的差异超过x%时才输出。
答案 0 :(得分:1)
5个关键帧中的1个:
ffmpeg -i video.mov -vf "select=eq(pict_type\,I),select='not(mod(n\,5))'" -vsync vfr thumb%04d.png
帧与前一个帧有x%的差异:
ffmpeg -i video.mov -vf "select=eq(pict_type\,I),select='gt(scene\,x/100)'" -vsync vfr thumb%04d.png