El formato BMP
El formato BMP es uno de los más simples. Fue desarrollado por Microsoft e IBM en
forma conjunta, lo que ex...












o F0 para OS/2 2.x
El ancho de la imagen (en 4 bytes), es decir, el número de píxeles contados de
fo...


Las imágenes de colores reales usan 24 bits por píxel, lo que significa que se
necesitan 3 bytes para codificar cada pí...
4 bytes - Cantidad de colores usados (No lo usaremos)
4 bytes - Cantidad de colores importantes (Tampoco usaremos)

Suman ...
Próxima SlideShare
Cargando en…5
×

El formato bmp

279 visualizaciones

Publicado el

Publicado en: Tecnología
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
279
En SlideShare
0
De insertados
0
Número de insertados
2
Acciones
Compartido
0
Descargas
2
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

El formato bmp

  1. 1. El formato BMP El formato BMP es uno de los más simples. Fue desarrollado por Microsoft e IBM en forma conjunta, lo que explica su uso particularmente amplio en plataformas Windows y OS/2. Un archivo BMP es un archivo de mapa de bits, es decir, un archivo de imagen de gráficos, con píxeles almacenados en forma de tabla de puntos que administra los colores como colores reales o usando una paleta indexada. El formato BMP ha sido estudiado de manera tal que permite obtener un mapa de bits independiente del dispositivo de visualización periférico (DIB, Mapa de bits independiente del dispositivo). La estructura de un mapa de bits es la siguiente: Encabezado del archivo El encabezado del archivo proporciona información acerca del tipo de archivo (mapa de bits) y su tamaño, así como también indica dónde comienza realmente la información de la imagen. El encabezado comprende cuatro campos:     La firma (en 2 bytes), que indica que se trata de un archivo BMP con dos caracteres o BM, 424D en hexadecimal, que indica que se trata de un mapa de bits de Windows o BA que indica que se trata de un mapa de bits OS/2 o CI que indica que se trata de un icono de color de OS/2 o CP indica que es un puntero de color de OS/2 o IC indica que es un icono de OS/2 o PT indica que es un puntero de OS/2 El tamaño total del archivo en bytes (codificado en 4 bytes) Un campo reservado (en 4 bytes) El desajuste de la imagen (en 4 bytes), es decir, la ubicación del comienzo de la información de la imagen en relación con el comienzo del archivo Encabezado de información del mapa de bits El encabezado de información del mapa de bits proporciona información acerca de la imagen, en especial las dimensiones y los colores. La información del mapa de bits comprende cuatro campos:  El tamaño del encabezado de información del mapa de bits en bytes (codificado en 4 bytes). Los siguientes valores hexadecimales son posibles según el tipo de formato BMP: o 28 para Windows 3.1x, 95, NT o 0C para OS/2 1.x
  2. 2.           o F0 para OS/2 2.x El ancho de la imagen (en 4 bytes), es decir, el número de píxeles contados de forma horizontal La altura de la imagen (en 4 bytes), es decir, el número de píxeles contados de forma vertical El número de planos (en 2 bytes). Este valor es siempre 1 La profundidad del modelo de color (en 2 bytes), es decir, el número de bits usados para codificar el color. Este valor puede ser equivalente a 1, 4, 8, 16, 24 ó 32 El método de compresión (en 4 bytes). Este valor es 0 cuando la imagen no está comprimida o 1, 2 ó 3 según el tipo de compresión usado: o 1 para la codificación RLE de 8 bits por píxel o 2 para la codificación RLE de 4 bits por píxel o 3 para la codificación de campo de bits, lo que significa que el color fue codificado por una máscara triple representada por la paleta El tamaño total de la imagen en bytes (en 4 bytes). La resolución horizontal (en 4 bytes), es decir, el número de píxeles por metro contado de forma horizontal La resolución vertical (en 4 bytes), es decir, el número de píxeles por metro contado de forma vertical El número de colores de la paleta (en 4 bytes) El número de colores importantes de la paleta (en 4 bytes). Este campo puede equivaler a 0 cuando todos los colores son importantes. Paleta de imágenes La paleta es opcional. Cuando se define la paleta, ésta contiene 4 bytes de forma sucesiva para cada una de las entradas, que representan:     El componente azul (en un byte) El componente verde (en un byte) El componente rojo (en un byte) Un campo reservado (en un byte) Codificación de imágenes La codificación de imágenes se realiza escribiendo en forma sucesiva los bits que corresponden a cada píxel, línea por línea, comenzando por el píxel del extremo inferior izquierdo.    Las imágenes de 2 colores usan 1 bit por píxel, lo que significa que un byte permite codificar 8 píxeles Las imágenes de 16 colores usan 4 bits por píxel, lo que significa que un byte permite codificar 2 píxeles Las imágenes de 256 colores usan 8 bits por píxel, lo que significa que se necesita un byte para codificar cada píxel
  3. 3.  Las imágenes de colores reales usan 24 bits por píxel, lo que significa que se necesitan 3 bytes para codificar cada píxel, respetando la alternancia del orden de los colores para el azul, el verde y el rojo. Cada línea de la imagen debe comprender un número total de bytes que sea múltiplo de 4; si este esquema no se cumple, la línea se debe completar con todos los 0 necesarios para respetar el criterio. FORMATO BMP (24 BITS) Existe una gran variedad de formatos de imágenes tal como BMP, TIFF, GIF, PNG, JPEG, etc. El más sencillo de todos es el formato BMP de 24 bits. Características: No es comprimido (Una desventaja con respecto a espacio pero ventaja por su simplicidad) Por no ser comprimido es de alta calidad Se puede ver en cualquier visor de imágenes por ser el mas básico. Veamos que hay dentro... Los Primeros 54 Bytes contienen los metadatos de nuestra imagen y su estructura es la siguiente: 2 bytes - contienen siempre 'BM', para poder identificar que es un bmp 4 bytes - tamaño del archivo (en bytes) 4 bytes - Reservados, contienen ceros (reservados para usos futuros) 4 bytes - offset, distancia entre cabecera y píxels (no lo usaremos) 4 bytes - Tamaño de Metadatos (tamaño de esta estructura = 40) 4 bytes - Ancho (numero de píxeles horizontales) 4 bytes - Alto (numero de pixeles verticales) 2 bytes - Numero de planos de color (No lo usaremos, valdrá 1) 2 bytes - Profundidad de color (debe ser 24 para nuestro caso) 4 bytes - Tipo de compresión (valdrá 0, ya que es descomprimido) 4 bytes - Tamaño de la estructura Imagen 4 bytes - Píxeles por metro horizontal (No lo usaremos) 4 bytes - Píxeles por metro vertical (No lo usaremos)
  4. 4. 4 bytes - Cantidad de colores usados (No lo usaremos) 4 bytes - Cantidad de colores importantes (Tampoco usaremos) Suman 54 bytes, y son los primeros 54 bytes que debemos leer de nuestro archivo. Podemos leerlo uno a uno pero lo mejor es crear una estructura y leerlos todo de un solo paso. Cada Píxel se almacena en 24 bits (3 bytes) De los 24 bits = 3 bytes, se utilizan 1 byte por cada color básico es decir... Un byte parta R, Un byte para G, Un byte para B NO, no son los colores rastas :P, son los colores básicos para el BMP, cada color puede ser obtenido mediante una combinacion de R (red), G (green) y B (blue). Considerando que un byte puede almacenar 256 valores diferentes, tenemos: 256 (R) x 256 (G) x 256 colores (B) = 16777216 Colores RGB Por alguna razón que desconozco al momento de diseñar el formato los ordenaron BGR y no RGB es decir primero el byte para azul, luego el byte para verde y luego el byte para verde.

×