¿Podemos técnicamente desenfocar imágenes?


17

Dado que existe un algoritmo para desenfocar imágenes, de modo que parte de él no puede reconocerse, ¿podemos revertir el algoritmo y desenfocar parte de esa imagen?

¿Existe algún programa que ya lo haga? ¿Es eso posible, incluso en un futuro cercano?


¿Te refieres a como en un desenfoque completo de imágenes, o lo suficiente como para que puedas decir qué era algo con un alto grado de precisión?
rjzii

lo suficiente para que usted puede decir lo que algo estaba con un alto grado de exactitud
mahen23

2
Bueno ... supongo que depende de qué es algo y de lo borroso que sea. Entonces la respuesta es ... ¡Quizás! Vea la respuesta de @Greg Jackson para los detalles técnicos.
FrustratedWithFormsDesigner

2
Te puede interesar esta competencia clásica de Stackoverflow: stackoverflow.com/questions/891643/…
MatrixFrog

Respuestas:


36

La desconvolución (también ver aquí y aquí ) puede eliminar parcialmente una foto. Hay un montón de software por ahí que lo implementa, y esto fue incluso un ejercicio bastante básico en una clase de procesamiento de imágenes que tomé en la universidad. No es posible revertir completamente el desenfoque, ya que es con pérdida, pero se puede restaurar mucha información (también vea aquí (PDF)).

Una foto borrosa en movimiento será más fácil de restaurar que algo que simplemente está desenfocado, aunque ambos pueden restaurarse hasta cierto punto.


Sí, probé un software llamado Focus Magic, pero necesito jugar más con él.
mahen23

1
Cuando la convolución aplicada es finita y se preservan los márgenes (es decir, la imagen se deja crecer sin recortar), ¿es una operación totalmente reversible?
viñas

@vines: Seré sincero, ha pasado mucho tiempo desde que me ocupé de esto para darte una buena respuesta. Mi instinto dice que no, un desenfoque es con pérdida incluso si permite que se extienda fuera de la imagen original, pero también recuerdo que había algo especial en tales desenfoques. En una configuración de prueba muy limitada, puede ser posible. Sin embargo, lo importante es que en el mundo real, nunca se encontrará con una imagen así, por lo que, aunque matemáticamente es interesante, es un punto discutible, prácticamente hablando, si ese es el caso o no.
Greg Jackson

2
los enlaces ya no funcionan
jgauffin 01 de

1
Adobe mostró esta tecnología hace 3 años. tv.adobe.com/watch/max-2011-sneak-peeks/…
Adrian J. Moreno

7

La inversión de la manipulación de imágenes depende de cómo se haya manipulado algo.

Dado que la imagen es una representación del objeto y solo tenemos los datos visuales en esa imagen, no podemos "desenfocarla", ya que no tenemos los datos.

Imagine que una imagen borrosa (como una cara pixelada) es similar a un correo electrónico sin todos los caracteres, no podríamos tomar los caracteres que tenemos disponibles para componer las palabras exactas del correo electrónico original.

Puede haber formas de hacer una apropiación aproximada de lo que puede ser la imagen, pero solo serán aproximaciones, nada como la película de acción "¡mejorar!" Representación de la manipulación de imágenes.

Actualización: enlace obligatorio a una página sobre la "cara arremolinada" http://sciencenotes.wordpress.com/2007/10/20/what-computers-can-swirl-computers-can-unswirl/


He visto algunos usos asombrosos en el mundo real de la manipulación de imágenes para desenfocar cosas que parecían completamente irrecuperables. Aunque sí, una aproximación ... se están volviendo muy buenos para aproximarse. No hay nada como un área borrosa en una imagen, pero las imágenes mal enfocadas se enfocan de tal manera que puede comenzar a ver detalles incluso en cosas lejanas.
Edward Strange

2
"puede haber formas?" En otras palabras, realmente no sabes mucho sobre eso, ¿verdad?
Jeremy

1
@StuperUser: ese es exactamente el enfoque adoptado por la deconvolución basada en la máxima entropía. Si el objeto fuera una línea recta, cómo se vería el desenfoque, compárelo con la imagen, ajuste la línea y repita.
Martin Beckett

1
@David: una gran diferencia es que usa tus lentes, toda la información sigue ahí, solo necesita ser ajustada. Sin embargo, las imágenes de Wrt, la información no está allí y tiene que ser recreada / aproximada.
Edward Strange

2
Ni siquiera golpea las varillas y los conos, está distorsionado por la lente y equivale a una compresión con pérdida. Aún así, puede interpolar la información que falta.
Jeremy


2

No, no puedes revertir el algoritmo. En algún nivel, la mayoría de los filtros de desenfoque funcionan sumando y promediando los valores de píxeles. Si agrega dos valores de píxel y reemplaza cada número con el promedio de ambos, no podrá determinar más adelante qué valores tenía originalmente.

pixel1 = 3
pixel2 = 5

blurredPixel = (pixel1 + pixel2) / 2 = 4

newPixel1 = blurredPixel = 4
newPixel2 = blurredPixel = 4

Si solo tiene nuevos Pixel 1 y 2, no puede averiguar si los píxeles originales eran 3 y 5, 1 y 7 o cualquier otra combinación posible.


8
Pero en una imagen con muchos datos, puede usar modelos probabilísticos para predecir cuáles podrían haber sido.
Greg Jackson

1
Si originalmente había píxeles 1..N, y lo que tiene es el promedio de cada píxel adyacente, entonces el valor de cada píxel está completamente determinado por el valor de cualquier píxel. Si tiene alguna idea de cuál podría ser el original (tal vez límites en los valores probables), es posible que pueda encontrar algo muy cercano al original.
David Thornley

2

No, porque el desenfoque es como una compresión con pérdida: elimina la información que no se puede recuperar después.


2
¿Elimina? ¿Cómo es eso?
vides

@vines: Vea la respuesta de TheFogger para la lógica matemática detrás de esta respuesta.
Mason Wheeler

55
Piense en el desenfoque como una función, como redondear. Si la ronda (x) es 3, ¿fue x 3.1? 2.9? 3.499? 2.501? No hay forma de saberlo. La información ha sido eliminada.
Malvolio

2
@Mason Wheeler, @Malvolio: La respuesta de TheFogger es una suposición de sentido común. Ver en.wikipedia.org/wiki/Deconvolution para la teoría .
vides

0

Si la función de convolución es continua, entonces debería ser posible. Pero como lo pasamos a un filtro de banda limitada, la función no puede ser continua, se pierde parte de la información. Pero aún puede encontrar una aproximación cercana.


2
¿Podría explicar su respuesta hasta el punto en que alguien que no haya tenido una clase de procesamiento de señales (pero no obstante un programador profesional) pueda entenderla?
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.