C/Visual C - Dividir una imagen en bloques

   
Vista:

Dividir una imagen en bloques

Publicado por Miguel (1 intervención) el 17/02/2010 13:33:14
Buenas, he de decir que soy muy novato en esto de programar en C++ pero necesito hacer una tarea y no hay forma. Quiero poder dividir una imagen cualquiera de ancho W y alto H en bloques submúltiplos del tamaño de la imagen por ejemplo de 16x16. Esos bloques poder operar con ellos de forma individual, es decir, poder sumar los píxeles de cada bloque. ¿Alguien puede echarme una mano? Muchas gracias de antemano. Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Dividir una imagen en bloques

Publicado por Capitan Kirk (94 intervenciones) el 17/02/2010 18:40:44
Básicamente, un archivo de imagen (si no está comprimido) consiste en una cabecera que contiene la información sobre la imagen, seguida de los datos de los pixels de la imagen. Por indicar algo sencillo, mira la estructura de un archivo .BMP (no la tengo a mano en este momento, pero es muy fácil de encontrar en la red): Después de la cabecera, están los valores correspondientes a los pixels, comenzando por la esquina superior izquierda y terminando por la esquina inferior derecha. Una vez que conoces las dimensiones, información que tendrás en la cabecera del archivo, puedes generar, por ejemplo, un array de dos dimensiones y leer los datos (ten en cuenta el número de bits de color). Una vez que lo tienes en un array de dos dimensiones, puedes obtener fácilmente las porciones rerctangulares de la imagen que necesites, y operar con ellas según convenga.

De todos modos,en este y en otros foros hay notas sobre este tema, solamente hay que buscar un poco.

Si tienes alguna duda, ya sabes donde estamos. Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar