Tipos de Archivo

Tamaño de las fotos

Para una fotografía normal, cada uno de los tres canales (rojo - Red, verde - Green, y azul - Blue) están representados por un byte de datos para cada píxel.  Esto significa que se requiere de tres bytes de datos para cada píxel, esto se refiere a menudo como el color de 24 bits (24 bits, ya que 8 bits es igual a 1 byte y hay tres bytes).  Debido a que cada byte puede teer 2^8 o 256 valores diferentes, cada canal puede tener 256 niveles diferentes de ese color (1/256 o 0.39% de variación por nivel, si todo se hace de manera uniforme).  Puede haber notado que los valores R, G, y B en la demostración que hicimos en la sección de canales sólo tenían 256 opciones diferentes -- si no recuerdas, vuelva atrás y compruébelo ahora:

http://developer.yahoo.com/yui/examples/slider/slider-rgb_clean.html

Debido a que hay tres canales diferentes, eso significa que cada píxel puede representar 256x256x256 colores o más de 16 millones de combinaciones de color diferentes.  Eso es mucho más que aún la más grande caja de crayones de cera.

Para una imagen de 12 megapíxeles de una cámara moderna, esto significa que se requeriría 36 megabytes (MB) de espacio de almacenamiento!  Eso es mucho cuando sale con su cámara y quiere tomar un montón de fotos.  Si usted tiene una tarjeta de memoria de un 1 gigabyte (GB) para su cámara, sólo le permitiría almacenar aproximadamente 30 imágenes. 

Debio al enorme tamaño de los archivos que contienen sólo los píxeles, con el tiempo se han creado diversas formas de comprimir (to compress) imágenes en archivos más pequeños.  Estos se pueden poner en dos grupos diferentes: sin pérdidas (Lossless) y con pérdida (Lossy).

Compresión Sin Pérdidas

La compresión sin pérdidas (lossless compression) toma los archivos y encuentra maneras para hacerlos más pequeños matemáticamente, de una manera que puede ser completamente reversible. La manera más fácil de hacer esto es ejecutar la imagen a través de una herramienta de compresión general como Zip.  Zip es una herramienta que está disponible en todos los equipos, que toma cualquier archivo (no sólo imágenes) y encuentra la manera de hacerlo más pequeño.  Una manera simple de hacer esto es si hay muchos píxeles en un área que son del mismo color, el Zip puede crear una instrucción (una línea de código dentro del archivo) para que cuando la computadora dibuje la imagen, que esa zona completa se cubra con dicho color.  El tamaño del texto de esa instrucción dentro del archivo puede ser cientos de veces menor que la cantidad de espacio que requeriría almacenar cada uno de los píxeles de esa zona.  Hay muchas otras maneras de comprimir archivos, pero en general son muy complicados y más allá del ámbito este curso.

http://es.wikipedia.org/wiki/Compresión_sin_pérdida
http://en.wikipedia.org/wiki/Lossless_data_compression

Compresión Con Pérdida

La compresión con pérdida (lossy compression) es diferente en que una vez que un archivo se haya comprimido no hay forma de volver exactamente al mismo archivo, algún detalle siempre se pierde.  Dado que las imágenes están hechas de millones de píxeles, cada uno capaz de representar a millones de colores diferentes, hay margen para eliminar detalles sin de que el ojo humano note la diferencia.  Esto se puede hacer con una combinación de métodos de compresión sin pérdidas, al igual que cosas como suponer que el color de un píxel es similar a los píxeles que lo rodean, y otros métodos mucho mas complicados, también más allá del alcance de este material.  


Abajo hay tres ejemplos que ilustran la compresión con pérdida. El ejemplo de la izquierda es el original y se comprimió con compresión sin pérdidas.  La imagen central se comprimió con compresión con pérdida, hecha para no perder mucho datos.  La imagen de la derecha usa compresión con pérdida, con ajustes muy agresivos.  Esa última imagen hizo un tamaño de archivo mucho más pequeño que la del medio (1.1KB comparado con 9.4KB) pero obviamente la compresión elimina partes de la imagen que son importantes para hacer que se vea bien.

LossyDemonstration-Original.pngLossyDemonstration-84less.jpgLossyDemonstration-98less.jpg

http://es.wikipedia.org/wiki/Compresión_con_pérdidas
http://en.wikipedia.org/wiki/Lossy_compression

Almacenamiento de Archivos

Hay muchos tipos diferentes de archivos (files) que se utilizan para imágenes, la mayoría de los cuales soportan uno o más métodos específicos de compresión sin pérdida o con pérdida.  El siguiente es un resumen general de estos tipos de archivos; hay muchos otros formatos menos utilizados que no figuran en esta lista.  Ver:  http://en.wikipedia.org/wiki/Image_file_formats o http://en.wikipedia.org/wiki/Comparison_of_graphics_file_formats para más información.

Bitmap/Mapa de bits (.bmp, otros) -- Contiene todos los píxeles de la imagen, sin compresión.  El formato .bmp concreto es utilizado por Microsoft en sus programas para la visualización de imágenes, pero métodos similares se utilizan en todo tipo de computadoras.  Ya que almacena todos los píxeles, este es un formato sin pérdidas, de hecho por defecto no se comprime en absoluto.  http://es.wikipedia.org/wiki/BMP

JPEG (.jpg, .jpeg) -- Significa Joint Photographic Experts Group (grupo conjunto de expertos fotográficos), se desarrolló específicamente para el almacenamiento de imágenes tomadas por cámaras digitales, y es por mucho, el formato más utilizado para fotografías digitales.  Se trata de un formato con pérdida, sin embargo con la configuración típica es muy difícil de detectar cualquier degradación de la imagen.  http://es.wikipedia.org/wiki/JPEG

PNG (.png) -- Portable Network Graphics (gráficas portátiles para la red) es mejor para el almacenamiento de imágenes que no tienen muchos detalles, tales como gráficos en las páginas web.  Este es un formato sin pérdidas.  http://es.wikipedia.org/wiki/Portable_Network_Graphics

GIF (.gif) -- Graphics Interchange Format (formato de intercambio de gráficos) es similar pero más viejo que el PNG.  En general PNG se debe utilizar en su lugar, sin embargo hay una característica que el GIF tiene que PNG no tiene, que es poder tener varias imágenes almacenadas en su interior, que se pueden reproducir como una animación sencilla. http://es.wikipedia.org/wiki/GIF

JPEG2000 (.jp2) -- Este fue un intento de crear una mejor versión del formato JPEG. Sin embargo no ha tenido mucho éxito y se utiliza sobre todo en situaciones profesionales, tales como imágenes médicas.  Este formato tiene opciones que pueden hacerlo sin pérdida o con pérdida.  http://es.wikipedia.org/wiki/JPEG_2000

JPEG XR/HD Photo (.jxr) -- Este es otro intento de crear una mejor versión del formato JPEG, originalmente desarrollado por Microsoft como "HD Photo" que se presentó a la Joint Photographic Experts Group (grupo conjunto de expertos fotográficos), que lo aceptó como un nuevo estándar.  Aún no ha prendido en uso corriente.  Este formato tiene opciones que pueden hacerlo un formato sin pérdida o con pérdida.  http://es.wikipedia.org/wiki/HD_Photo

WebP (.webp) -- Este es un nuevo formato desarrollado por Google que está diseñado para reemplazar JPEG (y algunos PNG) para su uso en las imágenes en la web.  Actualmente no es soportado por todos los navegadores web, pero se está trabajando en él.  Este formato es con pérdida.  http://es.wikipedia.org/wiki/WebP

TIFF (.tif, .tiff) -- Tagged Image File Format (formato etiquetado de archivo de imagen) se usa principalmente para imágenes de documentos (como imágenes escaneadas).  Tiene soporte para múltiples páginas de imágenes, así como metadatos como de dónde la imagen se capturó, quíene la tomó, etc.  Por lo general, se utiliza como un formato sin pérdida, pero tiene la habilidad de usar JPEG o otro tipo de compresión interiormente.  http://es.wikipedia.org/wiki/TIFF

RAW (.raw, .cr2, .crw, .nef, .nrw, dng, y más) -- Las imágenes RAW no son de un formato específico, sino una agrupación de diferentes formatos, construidos por diferentes modelos de cámaras.  Las cámaras por defecto suelen producir imágenes JPEG, que son con pérdidas y no contienen todos los datos básicos que la cámara registró sobre la imagen.  Cuando un fotógrafo recibe una imagen "raw", él or ella recibe todos los datos recogidos por la cámara, lo que puede ser útil cuando se hace procesamiento avanzado de las imágenes en una computadora.  http://es.wikipedia.org/wiki/RAW_(formato)

XCF (.xcf) -- eXperimental Computing Facility (facilidad de computación experimental) es el nombre del formato de archivo usado para almacenar proyectos en el editor de imágenes GIMP.  Almacena fotografías sin pérdidas y puede almacenar varias capas de fotos y otros datos tales como texto, líneas, selecciones, y mas. 

PSD (.psd) -- PhotoShop Document (Documento PhotoShop) muy similar al formato XCF, pero utilizado por Adobe Photoshop.  También es sin pérdidas y puede almacenar varias capas de fotografías y datos.

Bono, los formatos de imagenes no-rasterizadas:

EXIF - Exchangeable Image File Format (formato de archivo de imagen intercambiable) se utiliza para los metadatos sobre una imagen, no es un archivo en sí mismo, sino que se incorpora en otros archivos como JPEG.  Puede contener un gran número de campos de datos diferentes, incluyendo: la fecha se tomó la imagen, ajustes de la cámara, el tiempo de exposición, tamaño de la abertura, nivel de zoom, coordenadas GPS de la cámara, dirección en que la cámara estaba mirando, y muchos más.  http://es.wikipedia.org/wiki/Exchangeable_image_file_format

SVG (.svg) -- Scalable Vector Graphics (gráficos vectoriales escalables) Estos archivos se utilizan para almacenar las imágenes generadas en una computadora, no fotografías.  Estos archivos no almacenan píxeles, sino que almacenan información sobre donde las líneas, círculos, texto y otros componentes están en relación con cada uno (estas relaciones se refieren usando vectores).  Se llama escalable porque las instrucciones para la creación de la imagen se pueden dar usando cualquier unidad de longitud y toda la imagen se genera basada en esa unidad.  Además las instrucciones para generar la imagen pueden incluir referencias a cantidades de tiempo, por lo que la imagen se puede cambiar a medida que se dibuja para hacer una animación.  Ya que no hay píxeles para calcularse, se trata de un formato sin pérdida inherente.  http://es.wikipedia.org/wiki/SVG

EPS (.eps) -- Archivos Encapsulated Post Script (Encapsulados Post Script) son similares a los archivos SVG, pero algo mas antiguos, y tiene funciones  más limitadas, como no ser capaz de hacer animaciónes.  http://es.wikipedia.org/wiki/PostScript_encapsulado

Reconocimiento

Lossy Demonstration Lossless, Shlomi Tal, http://en.wikipedia.org/wiki/File:LossyDemonstration-Original.png , CC-BY-SA
Lossy Demonstration Medium, Shlomi Tal, http://en.wikipedia.org/wiki/File:LossyDemonstration-84less.jpg, CC-BY-SA
Lossy Demonstration High, Shlomi Tal, http://en.wikipedia.org/wiki/File:LossyDemonstration-98less.jpg, CC-BY-SA