Formatos de Imagen 1
Formatos de Imagen Un Formato de Imagen en una forma estándar de organizar y almacenar imágenes En el dispositivo de despliegue o de captura, el tamaño de una imagen esta relacionado con la resolución de la imagen y la profundidad del píxel en la imagen Cuando la imagen se almacena, el tamaño del mismo no solo depende del tamaño de la imagen almacenada sino también del formato en que se almacena la imagen 2
Formatos de Imagen Los archivos de imágenes se pueden clasificar en: Archivos de Mapas de Bits: bitmap files, pixmaps files, raster images, etc. Archivos Vectoriales: geometry files, vector data Metarchivos: mezcla de los dos anteriores Lenguajes de descripción de páginas: describen el formato de una página que contiene texto y/o imágenes y/o objetos. Recuerda: Sin importar el formato, siempre se despliega una matriz de pixeles!! 3
Formatos de Imagen Los archivos de imágenes se pueden organizar como: Solo una secuencia de valores de pixeles, o muestras, o información sin formato aparente Datos con Formato: Encabezado + Datos de la Imagen Los datos de la imagen pueden ser: Una secuencia de valores de pixeles o muestras Lista de índices + paleta de colores Datos con Formato: Secuencia de chunks de Información Referencias a archivos externos (imágenes, geometrías, etc.) Descripción de objetos o clases Descripción de operaciones sobre los objetos 4
Formatos de Imagen Adicionalmente, se suele tomar en cuenta: Si aquellos archivos referenciados están embedidos El número de imágenes almacenadas en el archivo El orden de los bits El modelo de color El rango de los valores almacenados Si los datos están comprimidos, se toma en cuenta el tipo de compresión Compresión con pérdida (lossy) Compresión sin pérdida (lossless) 5
Formatos de Imagen Lossy vs. Lossless 6
Formatos de Imagen El encabezado suele contener, por ejemplo: Un número mágico (en Hexadecimal): Una constante usada para identificar el formato El tamaño de los datos Dimensiones de la imagen y/o profundidad del píxel Dimensiones del píxel (en milímetros) Numerosas banderas, e.g., si hay una paleta de colores o no. Información propietaria del dispositivo, software o compañía que produjo la imagen Tipo de compresión Numero de imágenes almacenadas Desplazamiento hasta los datos 7
Formatos de Imagen Existen cientos de formatos de imágenes Algunos de los formatos más conocidos son: RAW BMP, JPEG, GIF, TIFF, PNG, DICOM DXF, OFF EPS 8
Formato RAW RAW (crudo) no es un formato en si, sino una denominación para cualquier archivo que contenga datos con un mínimo de procesamiento, obtenidos directamente del dispositivo de captura. Usualmente corresponde a un archivo de mapa de bits. Usualmente no tiene encabezado, simplemente los datos de las muestras. Extensión: RAW, o ninguna. 9
Formato RAW Muchas compañías llaman RAW a versiones sencillas de sus propios formatos propietarios. Muchas personas califican de RAW a aquellos formatos que no son públicos, ni estándar, y son completamente desconocidos. Algunas cámaras digitales pueden guardar las fotos en formato RAW Ventaja Mayor calidad de imagen Desventaja Las imágenes ocupan mayor tamaño La cámara está atada a un software propietario para leer las imágenes 10
Formato RAW Por ejemplo, en 2004, Adobe System desarrollo y promovió un formato RAW estándar llamado DNG (Digital Negative) Fue recibido entusiastamente por desarrolladores opensource Tuvo poco soporte por parte de los fabricantes de cámaras. Se conocen: Pentax K20D Sansumg GX-20 11
Formato BMP Archivo de mapa de bits Extensión: BMP. Espacio de Color: RGB Ampliamente aceptado, aunque particularmente compatible con MS Windows y OS/2 En el contexto de Windows es también llamado DIB (Device-Independent Bitmap) El encabezado se escribe en orden big-endian. El resto del archivo se escribe en orden littleendian 12
Formato BMP Organización Encabezado (14 bytes): Contiene el número mágico 0x42 0x4D (Hex de B y M), el tamaño del archivo, 4 bytes reservados para la aplicación y el desplazamiento hasta los datos. Información del BMP (variable): alto, ancho, profundidad del píxel, resolución espacial, etc. Paleta de Colores (variable): lista de colores disponibles en una imagen indexada. Se utiliza 1, 4 o 8 bits por píxel. La paleta no se utiliza si el BMP es 16-bits o mayor. Datos (variable): Lista de valores de los pixeles. De abajo hacia arriba y de izquierda a derecha. Al final de cada línea, se incluye un valor de padding, para alinear la próxima línea a frontera de palabra. Es posible comprimir esto Run-Length Encoding (RLE). 13
Run-Length Encoding (RLE) Es una forma sencilla de compresión de datos en la cual secuencias del mismo dato (runs) se almacenan de acuerdo a la longitud de la secuencia. Esto es muy útil en imágenes relativamente sencilla. Ejemplo, suponga un texto negro en un fondo blanco. Habrán muchas secuencias de pixeles blancos y pocos pixeles en negro. Supóngase la siguiente secuencia de pixeles negros (B) y blancos (W): WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWW WWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW La codificación RLE para esta secuencias es: 12W1B12W3B24W1B14W 14
Formato GIF Graphic Interchange Format (GIF) Archivo de mapa de bits Extensión: GIF. Espacio de Color: RGB Creado por CompuServe en 1987 (versión 87a) Mejorado en 1989 (versión 89a) Limitado a 256 colores (paleta de 8-bits) Soporta animación, transparencia y entrelazado Utiliza el algoritmo Lempel-Ziv-Welch (LZW) para proveer compresión sin pérdida 15
Formato GIF Organización Firma GIF: Los primeros seis bytes en ASCII contienen el texto GIF87a o GIFT89a Descriptor de Pantalla: color de fondo, profundidad del píxel, anchura, altura, radio aspecto, etc. Tabla de Colores Global (opcional) Extensiones: datos de transparencia, animación, etc. De 1 a N veces: Descriptor de imagen: posición local y tamaño de la imagen Tabla de Color Local (opcional) Datos de la imagen: lista de pixeles de la imagen (en LZW) Terminación GIF: character 0x3B 16
Formato JPEG Joint Photographic Experts Group (JPEG) Archivo de mapa de bits Extensión: JPEG, JPG, JIF (JPEG Interchange Format). Espacio de Color: YCbCr Soporte de color 24-bit Compresión al costo de la calidad de la imagen (lossy compression) Altos niveles de compresión causan artefactos Bajos niveles de compresión reducen el tamaño del archivo dejando la imagen casi intacta 17
Formato JPEG JPEG es adecuado para fotos y escenas, pero no para dibujos con líneas y estructuras geométricas No solo los archivos JPEG tienen compresión JPEG. Otros formatos también pueden comprimir sus datos usando compresión JPEG, e.g., TIFF y DICOM. Existen también muchas variantes, e.g., JPEG/Exif que es una popular variante de JPEG que se utiliza en cámaras digitales 18
Formato JPEG También existe el JPEG progresivo Los datos se comprimen en múltiples pasos con niveles de detalle progresivos 19
Formato JPEG Estándares JPEG (lossy y lossless): ITU-T T.81, ISO/IEC IS 10918-1 JPEG (extensiones): ITU-T T.84 JPEG-LS (lossless, mejorado): ITU-T T.87, ISO/IEC IS 14495-1 JBIG (imágenes en blanco y negro): ITU-T T.82, ISO/IEC IS 11544-1 JPEG 2000 (sucesor de JPEG/JPEG-LS): ITU-T T.800, ISO/IEC IS 15444-1 JPEG-2000 (extensiones): ITU-T T.801 20
Otros formatos de Bitmaps PNG (Portable Network Graphics): Sucesor de GIF. Color 24-bit. Lossless. Transparencia. Entrelazado Adam7. TIFF (Tagged Image File Format): 8, 16, 24-bit. Flexible y genérico. Lossy o Lossless. Varios tipos de compresión, incluyendo JPEG y LZW. Soporta RGB o CMYK, o imágenes binarias. DICOM (Digital Imaging and Communications in Medicine): 8, 16-Bit. Flexible y genérico. Encabezado con gran cantidad de información (paciente, medico, escáner, etc.). Varios tipos de compresión, incluyendo JPEG y JPEG 2000. Tablas de Colores. Muestras de rangos y valores variables. y muchos otros más!!!. 21
Algoritmo Adam7 Algoritmo de entrelazado para PNG La imagen se divide en 7 sub-imágenes, definidas por la replicación de un patrón de 8x8 a lo largo de la imagen. Las sub-imágenes se almacenan en orden numérico en el PNG 22
Algunas Librerías Algunas librerías para tratar con imágenes de mapas de bits GIF zlib JPEG jpeglib PNG libpng TIFF libtiff DICOM dcmkt (DICOM Tookit) Y muchas otra más La mayoría de los lenguajes actuales incluyen instrucciones en el API para abrir/guardar imágenes 23
Formato DXF Drawing Exchange Format (DXF) Extensión: DXF Archivo Vectorial Creado por AutoDesk para AutoCAD (1982) Intento de representación exacta en ASCII de un DWG (Drawing) de AutoCAD ASCII (todas) o Binario (luego del R10) Empezó a perder utilidad a medida que AutoCAD avanzaba Muchos modelos 2D y 3D aún se almacenan y distribuyen en formato DXF. 24
Formato DXF Organización Encabezado: Información general de la imagen. Compuesta de variables con valores asociados Clases: Definición de clases especificas de una aplicación. Las instancias aparecen en las secciones de Bloques, Entidades y Objetos. Tablas: Definición de dimensión, estilo del texto, tipos de línea, sistema de coordenadas, etc. Bloques: La imagen puede subdividirse en bloques. Esta sección define cada uno de los bloques de la imagen. Entidades: Entidades de dibujo de la imagen Objetos: Contiene datos referentes a objetos no gráficos. Thumbnail: Contiene un preview de la imagen. Final de archivo 25
Formato OFF Object File Format (OFF) Extensión: OFF Archivo Vectorial Usados para representar la geometría de un modelo especificando los polígonos que forman su superficie Son archivos ASCII El formato es ampliamente conocido y es bastante sencillo 26
Formato OFF Organización Encabezado: Palabra OFF Parámetros globales: # de vértices, # de caras, # de aristas Lista de vértices: coordenadas de los vértice (x,y,z) Lista de polígonos: # de vértices, lista de vértices. 27
Formato OFF Un cubo OFF 8 6 12-0.500000-0.500000 0.500000 0.500000-0.500000 0.500000-0.500000 0.500000 0.500000 0.500000 0.500000 0.500000-0.500000 0.500000-0.500000 0.500000 0.500000-0.500000-0.500000-0.500000-0.500000 0.500000-0.500000-0.500000 4 0 1 3 2 4 2 3 5 4 4 4 5 7 6 4 6 7 1 0 4 1 7 5 3 4 6 0 2 4 28
Formato EPS Un Encapsulated PostScript (EPS) es una imagen o dibujo descrito via PostScript Extensión: EPS Metarchivo La imagen en el EPS está autocontenida en un BoundingBox. Esto le permite a otras aplicaciones formatear fácilmente la página que contiene la imagen La aplicación que abre el EPS o despliega una página con una EPS, debe renderizar la imagen PostScript dentro del BoundingBox 29
Formato EPS Un EPS puede contener datos vectoriales (líneas, rectángulos, etc.) o mapas de bits (JPEGs, BMPs, TIFFs, etc.) Esto es lo que lo hace un Metaformato Son especialmente útiles para ser incluidos en documentos generados por Lenguajes de Descripción de Páginas, e.g., documentos PostScript (PS) o Portable Document Format (PDF) Se utilizan en múltiples plataformas (Mac, Windows, UNIX) 30
Formato EPS La organización del formato (header, thumbnail, etc.) varia con la plataforma y la aplicación Adobe EPS 31