Может ли ffmpeg выполнять расчеты изображений по кадрам?

Я хотел бы разделить каждый кадр видео на изображение, которое я хотел бы предоставить в качестве дополнительного ввода. Может ли ffmpeg выполнять такие вычисления изображений? Я не мог найти ни одного примера.

Это своего рода коррекция фона. Входное изображение является фоном, например медианой большого количества кадров. (часто люди используют backgroundSUBTRACTION, но я хочу использовать деление)

в настоящее время я делаю это в openCV и python. Я обрабатываю каждый кадр следующим образом:

(видМед — фоновое изображение)

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


person jlarsch    schedule 14.12.2015    source источник
comment
Я не понимаю, что ты пытаешься сделать. Можете ли вы объяснить более подробно или добавить изображения, демонстрирующие желаемый результат?   -  person llogan    schedule 14.12.2015
comment
Надеюсь, я разъяснил свой вопрос на примере кода. Теперь это имеет больше смысла?   -  person jlarsch    schedule 15.12.2015
comment
Возможно, смешивающий фильтр, использующий режим разделения компонентов, сделает то, что вам нужно.   -  person llogan    schedule 16.12.2015


Ответы (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 — это всего лишь один кадр)

person jlarsch    schedule 19.12.2015