Imagenes en escala de grises - RixFlores/Multiprocesadores GitHub Wiki
En esta práctica vamos a cambiar el color de una imagen alterando pixel por pixel, y debemos considerar que toda imagen a color esta compuesta por una mezcla de RGB, Red, Blue y Green, por lo que cada pixel involucra 3 partes, una por cada color, en sus debidos porcentajes.
Una vez considerado esto, explicaremos el código que ejecutamos para conseguir este cambio de colores:
Primero declaramos en la parte superior todas nuestras librerías, incluida "omp.h", ya que vamos a paralelizar nuestras tareas.
Después de esto inicializamos nuestras variables, el número de threads, el nuevo documento que generaremos que será de tipo imagen, para almacenar pixel por pixel con escala de grises nuestra imagen original.
También crearemos un ciclo for para copiar cabecera a una nueva imagen, y dentro del for se encuentra comentado un fragmento de código cuyo propósito es obtener el número de pixeles que contiene la imagen que vamos a alterar, es importante recalcar que necesitamos imágenes con formato ".bmp", y el número de pixeles es necesario para crear otro ciclo for que tome el porcentaje de R, de G y de B de cada pixel, para con ellos crear un promedio, y cambiarlo para generar una escala de grises.
Cabe mencionar que el promedio nuevo que generará nuestra imagen con escala de grises, fue tomado de páginas de internet y no creado por nosotros mismos, después de reacomodar cada pixel en su lugar (recorrido por el ciclo for), cerramos nuestro código y generamos nuestra nueva imagen con escala de grises implementada.
Imagen original:
Imagen en escala de grises: