¿Qué algoritmos de visión por computadora se pueden usar para aumentar la claridad de una imagen?

Si solo desea enfocar una región local de una imagen, otras respuestas ya han proporcionado varias formas de hacerlo (por ejemplo, con marcado de enfoque).

En el caso de las imágenes con turbidez, es posible hacer unborrado de imagen” / “eliminación de turbidez” para eliminar la turbidez de todos los píxeles, bajo algunas suposiciones. Parece que la imagen que adjuntaste aquí también pertenece a esta categoría.

(Consulte el resultado a continuación para tener una idea de lo que hace).


(Lo siguiente se basa en lo que sabía mientras hacía investigación de la visión por computadora hace unos años. Quizás el estado del arte ha cambiado, pero esta es una forma posible de resolver este problema).

Eliminación de neblina: formulación

Sea J el resplandor de la escena (es decir, el color original que queremos recuperar), A como la luz atmosférica (o la luz aérea), yo sea ​​la intensidad observada (es decir, el color de la imagen dada), podríamos escribir [1] :

  • [matemáticas] \ textbf {I} = \ textbf {J} t + \ textbf {A} (1 – t) [/ math]

Aquí t es el coeficiente de transmisión, y una t más pequeña significa que el píxel tiene más turbidez y su color es más similar al del avión. Como puede ver, el píxel de la imagen se modela como una combinación lineal de su color original y el color del avión.

Por lo general, modelaríamos t como:

  • [matemáticas] t = e ^ {- \ beta {d}} [/ matemáticas]

Aquí, d es la profundidad del píxel, y este modelo supone que, para un píxel correspondiente a un objeto más alejado de la cámara, habrá más turbidez; matemáticamente, cuanto más grande es d , más pequeño es t , y por lo tanto el píxel será más similar al avión aéreo, lo cual tiene sentido.


Eliminación de neblina: algoritmo

Para recuperar el color original de cada píxel, dado I , tenemos que resolver para A , J , t (o d ). Hay bastantes artículos por ahí que usan esta formulación, por ejemplo, el mejor artículo en CVPR 2009 – Eliminación de turbidez de imagen única usando Dark Channel Prior – Citando un conjunto de datos de este documento:

Una imagen original con neblina (es decir, I ):

La imagen recuperada (es decir, J ):

El mapa de profundidad (es decir, d ) [2]:


[1]: Muchos documentos realmente usan esta formulación. Una vez más, puede consultar “Eliminación de turbidez de imagen única con Dark Channel Prior” – http://research.microsoft.com/en…
[2]: Un subproducto que obtienes de este algoritmo es que obtendrás un mapa de profundidad bastante decente para la imagen de entrada.

Hola,

Creo que hay un par de métodos para agudizar los detalles de la imagen, a continuación hay una explicación del método de alto impulso.

Primero toma una FFT 2D (Transformada rápida de Fourier) de la imagen, asígnele el nombre A y luego aplica un filtro de paso alto a A, HPF (A). Después de eso, agregue la imagen filtrada de paso alto a la imagen original y obtendrá una mayor claridad. Por lo tanto, la imagen de mayor claridad se crea de la siguiente manera, high_clarity_image = original_image + HPF (A);

Al tomar el FFT y luego aplicarle un filtro de paso alto, se mantienen todos los cambios rápidos en el brillo de la imagen, por lo tanto, se mantienen todos los bordes de los objetos, al agregar estos bordes a la imagen original, los bordes se mejoran, por lo tanto, cuanto mayor sea claridad.

Se dan ejemplos en Transformadas de Fourier – Ejemplos de IM v6
Simplemente busque “Detección de bordes en una imagen”, debajo del encabezado se proporciona una buena explicación y ejemplos de imágenes.

Máscara de enfoque con radio amplio

Mejora de detalles de imagen.

More Interesting

¿Qué piensa la comunidad informática actual de Alan Kay?

¿Se pueden reemplazar los párrafos de correo electrónico por mensajes de viñeta?

¿Por qué Gran Bretaña no desarrolló más investigación e innovación en IA y computadoras después de la Segunda Guerra Mundial a pesar de tener un genio como Alan Turing?

Cómo hacer un raspado de datos si quiero extraer el nombre y la dirección de correo electrónico de un CRM

¿Puedo alojar mi propio sitio web con mi propia computadora? ¿Cómo voy a hacer eso?

¿De qué manera el trabajo de Turing en las máquinas de Turing realmente influyó significativamente en el desarrollo histórico de la tecnología informática?

¿Soy el único que piensa que la carga diferida de módulos / código de AngularJS es increíblemente estúpida?

Cómo ejecutar una función si sé su dirección

¿Cuál era el objetivo de las Apple 1 y 2 cuando estaban siendo diseñadas?

¿Cuáles son los pasos que debo seguir para ser bueno en el aprendizaje automático teniendo que solo sé programar?

¿Cuáles son algunos ejemplos de computación generalizada?

¿Qué debería preferir: CSE en IIT-G o IIT-BHU o IIT-H?

Con respecto a estas últimas noticias de NSA pirateando nuestras bases de datos e invadiendo incluso redes gubernamentales altamente confidenciales, tengo una fuerte motivación para dedicarme al campo de la Criptografía. ¿Desde dónde y cómo debo comenzar?

¿Qué es la cuantización de 1 bit?

¿Vale la pena obtener un título en informática en línea?