【发布时间】:2022-01-27 09:41:40
【问题描述】:
我想从捕获的视频中移除螺旋桨叶片,或者至少通过以某种方式与后续帧进行平均来使它们不那么明显。在我看来,这应该是可能的,因为在随后的帧中,螺旋桨叶片处于非常不同的旋转角度。
我不需要实时处理,仅用于视频后期处理。如果它很慢也没关系。 我已经有其他几个 ffmpeg 处理选项链,所以如果有一个带有 ffmpeg(在 linux 上)的解决方案,那将是理想的。
这是一个示例图像:
【问题讨论】:
我想从捕获的视频中移除螺旋桨叶片,或者至少通过以某种方式与后续帧进行平均来使它们不那么明显。在我看来,这应该是可能的,因为在随后的帧中,螺旋桨叶片处于非常不同的旋转角度。
我不需要实时处理,仅用于视频后期处理。如果它很慢也没关系。 我已经有其他几个 ffmpeg 处理选项链,所以如果有一个带有 ffmpeg(在 linux 上)的解决方案,那将是理想的。
这是一个示例图像:
【问题讨论】:
您可以降低帧速率并将其丢弃的帧与剩余的帧混合。
ffmpeg -i input.mov -vf minterpolate=fps=30 output.mov
如果您的视频是 60 fps,将其降低到 30 fps,您基本上将有 2 个原始帧覆盖同一个新帧。通过将它们混合,它可以将带有叶片的框架与没有叶片的框架进行平均,从而显着模糊螺旋桨叶片。 您丢弃的帧越多,它与背景的融合就越多。 显然,您需要在源素材中具有高帧率。
【讨论】:
ffmpeg 的 tblend 过滤器怎么样:
ffmpeg -i 98Ymysd.mp4 -vf decimate=cycle=2,tblend=all_mode=lighten
corrected.mp4
我添加了 decimate,因为您链接的视频有 60 fps 但每一帧都重复。也许您可以跳过对原始 30 Hz 视频的操作。
tblend 留下了一些色度伪影,但螺旋桨叶片不见了......
不幸的是,由于 tblend=all_mode 应用于所有像素,因此总体上会降低图像质量。也许有人可以开发一个智能公式,仅在一个像素比另一个像素暗得多时才对其进行校正。
要真正做到这一点,可以估计相机相对于山脉的 3d 运动,然后对相应像素应用一些低通滤波(超过 2 帧作为 tblend),只调整颜色刀片在前景中,从相邻帧中获取颜色,并调整了运动。这超出了 ffmpeg。
【讨论】: