Реализовать функцию «Уровни» в Adobe Photoshop с помощью ffmpeg - PullRequest
0 голосов
/ 05 ноября 2019

В Adobe Photoshop я использовал функцию «Уровни» для настройки теней, полутонов и бликов изображения. Мне нужно элегантное решение с использованием ffmpeg для реализации того же эффекта. Реализация ffmpeg поможет мне выполнить операцию программно.

Я пытался использовать фильтр цветового баланса, доступный в ffmpeg.

ffplay -i input -vf colorbalance=rs=-0.75:gs=-0.75:bs=-0.75:rm=-0.875:gm=-0.875:bm=-0.875:rh=-1:gh=-1:bh=-1

В фотошопе я могудля достижения ожидаемых результатов со следующими настройками,

Shadows - 199
Midtones - midpoint
Highlights - 255

1 Ответ

0 голосов
/ 06 ноября 2019

colorlevels

Используйте фильтр colorlevels и интерполируйте значения в соответствии с Photoshop:

enter image description here
enter image description hereenter image description here
Оригинал, Photoshop, ffmpeg

ffmpeg -i input.jpg -vf "colorlevels=rimin=199/255:gimin=199/255:bimin=199/255" -frames:v 1 output.jpg

Поскольку вы только непосредственно настраиваете входные черные точки, вы тольконеобходимо настроить параметры *min, как показано в примере.

кривые

Если вы знакомы с кривыми в Photoshop, вы можете сохранить предустановку и загрузить файл ACV с помощью Кривые Фильтр:

ffmpeg -i input.jpg -vf "curves=psfile=file.acv" -frames:v 1 output.jpg
...