【问题标题】:can ffmpeg perform frame wise image calculations?ffmpeg 可以执行逐帧图像计算吗?
【发布时间】:2016-03-20 09:23:52
【问题描述】:

我想将视频的每一帧除以我想作为附加输入提供的图像。 ffmpeg 可以进行这样的图像计算吗?我找不到任何示例。

这将是一种背景校正。输入图像是背景,例如大量帧的中值。 (经常有人用backgroundSUBTRACTION,但我想用除法)

目前我在 openCV 和 python 中执行此操作。我这样处理每一帧:

(vidMed为背景图片)

import cv2
vidIn=cv2.VideoCapture(input.avi)
vidOut=cv2.VideoVriter(output.avi)

while true
    ret, frame = vidIn.read()
    bgDiv=frame/vidMed
    vidOut.write(bgDiv)

我希望这可以使用 ffmpeg 运行得更快

【问题讨论】:

  • 我不明白你在做什么。您能否更详细地解释或添加显示所需结果的图像?
  • 我希望我用一个代码示例来澄清我的问题。现在更有意义了吗?
  • 也许blend filter 使用除组件模式会做你想要的。

标签: video ffmpeg video-processing video-editing


【解决方案1】:

是的,混合有效!

ffmpeg.exe 
-i videoIn.avi 
-i imageIn.avi 
-filter_complex "[1:0] setsar=sar=1 [1sared];[0:0][1sared]blend=all_mode='divide':repeatlast=1[int];
-out.avi

(imageIn.avi 只是一帧)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-23
    • 2023-03-29
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多