Extensiones | .bmp, .dib,.rle |
---|---|
Tipo de Mimica | image/bmp, image/x-bmp, image/x-ms-bmp |
Firma | 42 4D( hexa ) |
Desarrollado por | Microsoft |
Tipo de formato | Imagen de la trama |
El mapa de bits de Windows (también conocido con la abreviatura de BitMaP en BMP , en inglés, mapa de bits independiente del dispositivo o DIB), es un tamaño de mapa de bits abierto desarrollado por Microsoft e IBM . Es uno de los formatos de imagen más fáciles de desarrollar y utilizar para la programación. Casi todos los visores y editores de imágenes pueden leerlo. Se introdujo con Windows 3.0 en 1990 .
El archivo se divide en tres áreas:
El archivo se divide en dos partes, a saber:
Offset # (número de línea) | Tamaño | Valor |
---|---|---|
0x0000 | 2 bytes | el número mágico correspondiente al uso del archivo BMP
|
0x0002 | 4 bytes | el tamaño del archivo BMP en bytes |
0x0006 | 2 bytes | reservado para el identificador de la aplicación que creó el archivo |
0x0008 | 2 bytes | reservado para el identificador de la aplicación que creó el archivo |
0x000A | 4 bytes | el desplazamiento (la dirección inicial) del contenido del BMP |
Estos incluyen el tamaño del archivo en bytes, la ubicación de inicio de los datos, el número de bits por píxel en la imagen, el tipo de compresión utilizada, el número de colores en la paleta, el ancho y alto de la imagen. 'Imagen, etc.
El software de lectura utiliza tres bytes para codificar el color (sistema rojo verde azul , RGB):
La paleta es, por tanto, una tabla de correspondencia del tipo:
Valor para mostrar | Rgb | |
---|---|---|
0 | R = r0 , B = b0 , V = v0 + byte 00 | |
... | ||
255 | R = r255 , B = b255 , V = v255 + byte 00 |
Por ejemplo, para una imagen en escala de grises (256 tonos), los tres valores R, G y B serán iguales y variarán entre 0 y 255 .
Por tanto, la estructura del archivo BMP se convierte en:
Esto debe tenerse en cuenta al calcular el encabezado. También hay un formato BMP de 1 y 4 bits.
El formato BMP admite varias variaciones, dependiendo de la cantidad de colores posibles deseados . La profundidad de color es el número de bits asociados con cada píxel para codificar su color .
Así, las imágenes BMP pueden estar en 2 colores (1 bit ), 16 colores (4 bits), 256 colores (8 bits), 65.536 colores (16 bits) o 16,8 millones de colores (24 bits).
Las imágenes de 24 bits tienen tres canales de 8 bits para las tres luces principales (rojo, verde, azul) que pueden tomar 256 valores diferentes cada uno. Las imágenes en 256 niveles de gris son posibles con un solo canal de 8 bits.
El formato BMP es casi inexistente en la Web : no degrada la imagen y generalmente no usa compresión, por lo que es muy pesado. Sin embargo, existe compresión RLE para el formato BMP.
Para calcular el tamaño aproximado del archivo BMP final, multiplique la profundidad de color (1, 4, 8, 16 o 24 bits) por la altura y el ancho en píxeles: (Profundidad de color en bits) × (Altura en píxeles) × (Ancho en píxeles) bits.
Por ejemplo, una imagen en 800 × 600 (800 píxeles de ancho por 600 píxeles de alto) en 24 bits (16,8 millones de colores) tendrá un tamaño de (800 × 600 × 24) bits o 1,44 MB (1, 37 Mio ) o la capacidad de un disquete de alta densidad de 3 ″ ½ (por lo tanto, una imagen de este tipo no se puede grabar en un disquete de 1,44 Mb , en particular debido a la tabla de asignación de archivos que ocupa algo de espacio, al igual que el encabezado de la imagen).
A diferencia de la mayoría de los formatos de imagen, los píxeles de la imagen se codifican comenzando desde la línea inferior de la imagen. Cada línea (codificada de izquierda a derecha) debe ocupar siempre un número de bytes múltiplo de 4, excepto si la imagen está comprimida . Si la línea no tiene se añade un número de múltiplo de 4 bytes FF, 00FFo 0000FFal final de cada línea.
Si la imagen está codificada en 24 bits, cada píxel está codificado por un entero de 24 bits (RGB), orden little-endian , es decir que los tres bytes codifican sucesivamente los niveles de azul, verde y rojo.
Si la imagen está codificada con menos de 16 bits, cada píxel se codifica como un índice en la tabla de colores (la paleta), de ahí el nombre "imagen indexada". En el caso de imágenes que codifican los píxeles en 1 bit o 4 bits, es decir, si se codifican varios píxeles en el mismo byte, los bits más significativos se refieren al píxel más a la izquierda.
El formato BMP permite el uso del algoritmo de compresión RLE para imágenes de 8 bits (256 colores) y 4 bits (16 colores).
Sin embargo , la compresión RLE, introducida en el formato BMP en el momento de Windows 3.x , no fue totalmente compatible hasta Windows 95 . Rara vez se usa porque solo es realmente efectivo en imágenes en las que la mayoría de los píxeles adyacentes tienen el mismo color.
El principio :