jueves, 7 de febrero de 2013

Actividad 1 de Laboratorio - Escala de grises, Umbral, Imágenes Borrosas

En esta actividad la tarea es era aplicar filtros a las una imagen para cambiar su aspecto, yo realice los filtros  escala de grises y el un umbral para que cambie a blanco y negro. Me quede a medio camino con el de volverla borrosa.

Dejo el link del github, ahí estan los códigos: https://github.com/alexgzz/Vision-Computacional

Escala de Grises
El primero que hice fue el de escala de grises. Aquí algunos resultados, jugando con los valores del umbral y la imagen de la cual se partió.
       Imagen Original:
       
 Resultados:                                                                                          
                          
                                  Promedio de los 3 colores
Elección del valor más grande

                             
Elección del valor más pequeño

Este filtro se aplico utilizando la librería PIL para Python, obteniendo una lista con todos los valores de los pixeles de la imágen en formato RGB (1,2,3) mediante la función .load() y recorriendo esto pixel por pixel. El formato de grises se logra estableciendo el mismo valor en los tres espacios del color del pixel, por ejemplo (0,0,0).

  • En la primera imagen se obtuvo el promedio de los tres valores de cada pixel y se sobrescribió en cada pixel.
  • En la segunda se obtuvo el valor más grande de los tres que formaban cada pixel y se sobre escribió en cada pixel. 
  • En la tercera se hice lo mismo que en la segunda, solo que con el valor más mínimo.

Umbral Binario
Para la conversión a blanco y negro, se cargo la imágen original con PIL y se obtuvieron los valores RGB de cada pixel, para establecer si un pixel debería ser blanco o negro, se obtuvo el promedio de los tres valores de cada pixel y se comparo un umbral, dependiendo si pasaba o no, se convertiría en negro o blanco. Aquí algunos resultados:

                
Imágen Original
Aplicando promedio y umbral 125













También en este caso se podía partir de una imagen previamente convertida a escala de grises, así solo sería necesario leer un valor de los tres ya que todos sería exactamente iguales. Se establece el umbral si lo pasa toma negro y si no, blanco. Algunos resultados, todos con umbral 125, pero partiendo de diferentes escalas de grises:


                   
                          Partiendo de grises con valores máximos

Partiendo de grises con valores mínimos













Lo de volverlo borrosa me quede a medio camino, pero lo que avance esta en el repositorio.

Tambíén trate de hacer algo para cargar las imagenes en una ventana y que se pudieron visualizar ya con los filtros que se manejaron aquí. El código también esta en el git y aquí dejo una captura:


1 comentario:

  1. Hay que incrustar el código en la entrada. También ocupo que cuides la ortografía (en particular los acentos). Van 7 pts.

    ResponderEliminar