¿Es posible falsificar imágenes borrosas a través de imágenes?

Estoy usando libGDX para un juego de Android; por lo que puedo decir, no tiene una API para difuminar.

Al leer en Wikipedia, parece que la falta de nitidez se forma al configurar cada valor de píxeles RGB en el promedio de todos los valores adyacentes. Lo cual no parece fácilmente posible en libGDX: configuration de datos de píxeles.

Entonces mi pregunta es simple:

¿Es posible falsificar (decente) una image borrosa usando solo imágenes?

Posiblemente puedo superponer varias imágenes (en número, transparencia, tipo); pero ¿puedo crear un desenfoque convincente como este?

Estoy tentado de decir "no", pero tal vez alguien más haya logrado algo similar. Para mayor claridad, quiero un set de 1+ imágenes genéricas que pueda renderizar encima de CUALQUIER image para generar un efecto borroso.

Si puedes mezclar aditivamente imágenes y multiplicarlas por una constante mientras lo haces, entonces puedes hacer un desenfoque. En lugar de promediar los píxeles en una vecindad, promediará varias copys de la image desplazada por un número pequeño de píxeles entre sí. O, de forma más general, puede hacer un desenfoque Gaussiano o cualquier tipo de desenfoque, controlando los pesos, es decir, multiplicando cada copy desplazada de la image por una constante a medida que se agrega al rest.

Algorítmicamente, se vería algo como esto:

clear output_image to 0 foreach offset, weight in filter_kernel: output_image += input_image * weight, shifted by offset 

Utilizaría los mismos desplazamientos y pesos que en la forma estándar de hacer borrosidad. Hay muchos artículos en la Web sobre cómo generar los pesos para un desenfoque Gaussiano, por ejemplo.

La borrosidad puede ser una operación costosa, quizás un enfoque diferente podría funcionar, por ejemplo:

  1. Almacene varias copys de la image borrosa en varias direcciones diferentes (por ejemplo, múltiplos de 45 grados), luego visualice la image más cercana que coincida en el time de ejecución. Esto ofrecerá el más alto performance, a costa del uso de la memory.
  2. Escala la image hacia abajo y luego vuelve al tamaño completo con suavizado / alisado. A menudo, esto se puede hacer con hardware de charts con muy poco impacto en el performance.