Articulo de referencia

Imagen de Silicon Graphics

.sgi , .rgb ''(among others)''"},"mime":{"wt":"image/sgi .sgi [[MIME]] type not [https://www.iana.org/assignments/media-types/media-types.xhtml#image registered] at [[Internet A...

El formato de archivo SGI ( Silicon Graphics Image ) o RGB es el formato de archivo de gráficos rasterizados nativo para las estaciones de trabajo de Silicon Graphics . [ 4 ] El formato fue inventado por Paul Haeberli . [ 4 ] Puede codificarse mediante codificación de longitud variable (RLE). FFmpeg e ImageMagick , entre otros, admiten este formato.

Fondo

Las extensiones de archivo comunes son:

.sgio.rgb
3 canales de color
.rgba
3 canales de color y alfa
.bwo.int
en blanco y negro
.inta
blanco y negro y alfa

Este formato fue desarrollado originalmente para IRIX . Los archivos maestros del conjunto de pruebas multiformato de alta definición SVT son SGI. [ 6 ] [ 7 ] [ 8 ] El fotograma 200 de la secuencia ParkJoy en este conjunto (15722.sgi, 3840×2160, 47,4  MB) se utilizó en comparaciones WebP .

Detalles técnicos

El formato de imagen SGI utiliza el orden big-endian . Los datos de la imagen se escanean de izquierda a derecha, de abajo hacia arriba.

Firma de archivo/Número mágico

Debe ser igual 0x010xdapara el archivo SGI.

Compresión

0Si el archivo no está comprimido; 1para compresión RLE.

Bytes por canal de píxeles

El valor es 1para 8 bits por canal  ; 2para 16 bits por canal.

Dimensión

El valor es 1para 1 canal, 1 línea de exploración imagen; 2para 1 canal, múltiples líneas de exploración imagen; 3para múltiples canales, múltiples líneas de exploración imagen (lo más común).

Talla X

Ancho de línea de exploración en píxeles.

Tamaño Y

Número de líneas de escaneo en la imagen.

Número de canales

Número de canales en la imagen. El valor es 1para imágenes en escala de grises; 3para RGB; 4para RGBA. SGI admite más de 4 canales.

Valor mínimo de píxeles

Valor de píxel más pequeño en todos los canales. Dado que SGI utiliza tipos de caracteres sin signo o cortos para los canales, el valor más pequeño posible suele ser 0.

Valor máximo de píxeles

Valor de píxel más grande en todos los canales. Dado que SGI utiliza tipos de caracteres sin signo o cortos para los canales, el valor más grande posible suele ser 0xffpara 8 bits/canal y 0xffffpara 16 bits/canal.

Ficticio

4 bytes sin usar.

Nombre de la imagen

Nombre de la imagen, cadena C de 80 bytes (máximo 79 caracteres 0x00). Si el nombre es más corto que 79 caracteres, todos los bytes subsiguientes deben 0x00completar el espacio de 80 bytes.

ID del mapa de colores

SGI admite 4 tipos de mapeo de color:

  1. 0x00normal: la imagen tiene 1 canal (escala de grises), 3 canales (RGB) o 4 canales (RGBA).
  2. 0x01tramado: la imagen tiene RGB empaquetado. Los primeros 3 bits son para el canal R, los siguientes 3 bits para el canal G y los últimos 2 bits para el canal B.
  3. 0x02Pantalla: la imagen utiliza un mapa de colores. Los datos de píxeles son índices en el mapa de colores y la imagen solo tiene 1 canal.
  4. 0x03Mapa de colores: este archivo solo contiene datos para un mapa de colores (puede usarse para diferentes archivos de imagen). Este archivo no contiene datos de imagen.

Ficticio

404 bytes. Normalmente no se utiliza. Ajusta el tamaño del encabezado a 512 bytes.

Datos de imagen

Sin compresión

Los datos de la imagen comienzan en el byte 512 del archivo. La longitud de los datos se puede calcular utilizando lo siguiente:

(Tamaño X) × (Tamaño Y) × (Número de canales) × (Bytes por canal)

Los datos se separan para cada canal. Por ejemplo, si una imagen utiliza RGBA, el primer conjunto de líneas de exploración representa el canal R, el siguiente conjunto corresponde al canal G, luego al canal B y, por último, al canal A. Por lo tanto, se puede acceder a cada conjunto de líneas de exploración directamente mediante la siguiente fórmula (donde C = índice del canal):

(Tamaño X) × (Tamaño Y) × ( C ÷ Número de canales) × (Bytes por canal)

Compresión RLE

Las tablas de desplazamiento comienzan en el byte 512. Su longitud se puede calcular con lo siguiente:

(Tamaño Y) × (Número de canales) × 4 bytes de longitud

Cada entero sin signo en una tabla representa un desplazamiento (desde el inicio del archivo) hasta el inicio de los datos comprimidos de cada línea de exploración en cada canal. Los datos se separan para cada línea de exploración del canal. Si una imagen tiene canales RGBA, el orden se mantiene R, G, B y A.

A continuación se muestra la tabla de longitud de datos, que también se puede calcular con la fórmula:

(Tamaño Y) × (Número de canales) × 4 bytes de longitud

Esta tabla almacena el tamaño de los datos comprimidos (entero sin signo) de cada línea de exploración. Este tamaño debe ser igual a la diferencia de los números en la tabla de desplazamiento.

El último bloque de datos contiene datos de imagen comprimidos con RLE. Si el número de bytes por canal es 1, los datos comprimidos son de tipo unsigned char. De lo contrario, si el número de bytes por canal es 2, los datos comprimidos son de tipo unsigned short. El último byte de los datos de línea de exploración comprimidos tiene un valor de 0.

En ambos casos, tanto para `unsigned char` como para `unsigned short`, los 7 bits menos significativos indican el contador. Si el bit 8 es cero, el contador es el número de copias del valor después del contador. Si el bit 8 es uno, el contador es el número de copias de la serie de valores después del byte del contador. Para una imagen de 2 bytes por canal, el contador y el valor son de tipo `unsigned short`, y el byte superior del contador siempre es cero.

Véase también

Referencias

  1. El tipo MIME .sgino está registrado en IANA.
  2. "CGImageSource.SupportedTypes" . Complemento Claris FileMaker MBS . MonkeyBread Software.
  3. Paul Haeberli (1996). "The SGI Image File Format 0.97" . Silicon Graphics . Archivado del original el 6 de julio de 2017. Consultado el 7 de marzo de 2014 .URL alternativa
  4. 1 2 3 James D. Murray; William van Ryper (abril de 1996). "Resumen del formato de archivo de imagen SGI" . Enciclopedia de formatos de archivo de gráficos, segunda edición . O'Reilly . ISBN 1-56592-161-5. Consultado el 7 de marzo de 2014 .
  5. Paul Haeberli (1996). "The SGI Image File Format 1.00" . Silicon Graphics ( FTP ) . Consultado el 7 de marzo de 2014 .(Para ver los documentos, consulte Ayuda:FTP )
  6. ^ Lars Haglund (febrero de 2006). "El conjunto de pruebas multiformato de alta definición SVT" (PDF) . SVT . Consultado el 23 de febrero de 2014 .
  7. "SVT_MultiFormat/2160p50_CgrLevels_Master_SVTdec05" . Video Quality Experts Group ( VQEG ) ( FTP ). 2006. Consultado el 1 de marzo de 2014 .(Para ver los documentos, consulte Ayuda:FTP )
  8. Marta Mrak; Mislav Grgicb; Murat Kunt (2010). Experiencia visual de alta calidad: creación, procesamiento e interactividad de señales de vídeo de alta resolución y alta dimensión . Signals and Communication Technology. Springer . pp. 147–154 . ISBN  978-3-642-12802-8. LCCN 2010925849 .