Filtro FFMPEG para desenfocar y escalar grises un video usando máscara alfa

Filtro FFMPEG para desenfocar y escalar grises un video usando máscara alfa

¿Alguien puede mostrarme cómo mejorar el ejemplo que se encuentra aquí? FFmpeg: aplica desenfoque sobre la cara

Para hacer lo siguiente:

  1. Utilice una máscara alfa de entrada PNG en lugar de una región rectangular declarada
  2. ambos borrososyescala de grises la región enmascarada

Este es otro ejemplo: muestra cómo utilizar un archivo de máscara alfa. Recortar área triangular con FFMPEG

Gracias

Respuesta1

He aquí un método que utilizaalphamerge,hue,boxblur, yoverlay.

original borroso mascarilla

Entrada original, salida filtrada, imagen de máscara.

Ejemplo:

ffmpeg -i input -loop 1 -i mask.png -filter_complex \
"[0:v][1:v]alphamerge,hue=s=0,boxblur=5[fg]; \
 [0:v][fg]overlay[v]" -map "[v]" -map 0:a -c:a copy output
  • La máscara debe tener el mismo tamaño que la entrada. Si no es así, podrías usarscaleoscale2refpara cambiar su tamaño.

  • El audio esflujo copiadopara evitar codificaciones innecesarias.

información relacionada