Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: chigui89 en 23 Mayo 2010, 22:08 pm



Título: Cargado de imagen en escala de grises en extensión BMP a una matriz N x M
Publicado por: chigui89 en 23 Mayo 2010, 22:08 pm
Hola a toda la comunidad! Queria consultar cual es una de las mejores formas de poder cargar una imagen en escala de grises en extension BMP a una matriz de enteros NxM en la que cada entero representa el valor de un pixel y su posicion i,j es relativa al pixel en la imagen  ;D :D


Título: Re: Cargado de imagen en escala de grises en extensión BMP a una matriz N x M
Publicado por: do-while en 25 Mayo 2010, 17:22 pm
¡Buenas!

Aqui tienes un enlace con codigo para manejar ficheros en formato bmp.

http://www.4shared.com/file/2OoPhQTE/BMP.html

No se como estara de comentada esta version de los ficheros, si tienes alguna duda preguntame. De todas formas, busca informacion sobre el formato en si. La estructura de los ficheros no es muy complicada. En este caso en concreto tendras que comprobar que se trata de un fichero en formato bmp, leer la cantidad de bits por pixel, y si esta cantidad es de 8 bits por pixel, sera una imagen de 256 colores (una escala de grises no es nada mas que un caso particular de una imagen de 256 colores). Acto seguido tendras que saber en que posicion esta la paleta de colores (que estara formada por cuaternas del tipo 00RRGGBB) y los datos de la imagen no seran nada mas que el indice que tiene dentro de la paleta el color que ocupa dicha posicion.

En codigo que te he dejado carga las imagenes de forma automatica, y los datos que te he dicho puedes leerlos de las estructuras que estan definidas, el resto lo puedes hacer sin tener que añadir muchas lineas de codigo.

¡Saludos!