stringtranslate.com

Abrir EXR

OpenEXR es un formato de archivo raster multicanal de alto rango dinámico , publicado como un estándar abierto junto con un conjunto de herramientas de software creadas por Industrial Light & Magic (ILM), bajo una licencia de software libre similar a la licencia BSD . [3]

Se destaca por admitir múltiples canales de tamaños de píxeles potencialmente diferentes, incluidos números enteros sin signo de 32 bits, valores de punto flotante de 32 bits y 16 bits, así como varias técnicas de compresión que incluyen algoritmos de compresión con y sin pérdida . También tiene canales arbitrarios y codifica múltiples puntos de vista, como imágenes de la cámara izquierda y derecha. [4]

Descripción general

Una introducción técnica completa del formato está disponible en el sitio web de OpenEXR. [4]

OpenEXR, o EXR para abreviar, es un formato rasterizado profundo desarrollado por ILM y ampliamente utilizado en la industria de gráficos por computadora, tanto en efectos visuales como en animación.

El formato de múltiples resoluciones y canales arbitrarios de OpenEXR lo hace atractivo para la composición , ya que alivia varios elementos complicados del proceso. Dado que puede almacenar canales arbitrarios ( especular , difuso, alfa , RGB, normales y varios otros tipos) en un solo archivo, elimina la necesidad de almacenar esta información en archivos separados. El concepto de múltiples canales también reduce la necesidad de "hornear" los datos antes mencionados en la imagen final. Si un compositor no está satisfecho con el nivel actual de especularidad , puede ajustar ese canal específico. [5]

La API de OpenEXR hace que el desarrollo de herramientas sea relativamente fácil para los desarrolladores. Dado que casi nunca hay dos canales de producción idénticos, siempre es necesario desarrollar herramientas personalizadas para solucionar problemas (por ejemplo, problemas de manipulación de imágenes). La biblioteca de OpenEXR permite un acceso rápido y sencillo a los atributos de la imagen, como mosaicos y canales. [5]

La biblioteca OpenEXR está desarrollada en C++ y está disponible en formato fuente y en formato compilado para Microsoft Windows , macOS y Linux . Los enlaces de Python para la biblioteca también están disponibles para la versión 2.x. [6]

Historia

OpenEXR fue creado por ILM en 1999 y lanzado al público en 2003 junto con una biblioteca de software de código abierto . [7] [8] Pronto recibió una amplia adopción por parte del software utilizado en gráficos de computadora , particularmente para la producción de cine y televisión . El formato se ha actualizado varias veces, agregando soporte para mosaicos, mapas MIP , nuevos métodos de compresión y otras características. [8] En 2007, OpenEXR fue honrado con un Premio de la Academia por Logros Técnicos . [8]

OpenEXR 2.0 se lanzó en abril de 2013, ampliando el formato con soporte para buffers de imágenes profundos y múltiples imágenes incrustadas en un solo archivo. [8] [9] [10] La versión 2.2, lanzada en agosto de 2014, agregó el formato de compresión DWA con pérdida. [11]

Distribución

La distribución del software OpenEXR incluye:

Bibliotecas

Profundidad de color

OpenEXR tiene soporte para profundidad de color usando:

Métodos de compresión

OpenEXR cuenta con tres tipos generales de compresión sin pérdida de calidad, con dos métodos diferentes de compresión Zip. Para la mayoría de las imágenes sin mucho grano, los dos métodos de compresión Zip parecen funcionar mejor, mientras que el algoritmo de compresión PIZ es más adecuado para imágenes granuladas. Están disponibles las siguientes opciones: [15]

Ninguno
Desactiva toda compresión.
Codificación de longitud de ejecución (RLE)
Esta es una forma básica de compresión comparable a la utilizada por los archivos Targa estándar .
Código postal (por línea de escaneo)
Desinflar la compresión con el contenedor zlib aplicado a líneas de escaneo individuales (no se basa en el formato de archivo ZIP a pesar de su nombre).
Zip (bloques de 16 líneas de escaneo)
Compresión deflacionaria aplicada a bloques de 16 líneas de escaneo a la vez. Este suele ser el estilo de compresión más eficaz para usar con imágenes renderizadas a las que no se les aplica grano de película.
PIZ ( compresión wavelet )
Este método sin pérdida utiliza una nueva compresión combinada de wavelet y Huffman . Esta forma de compresión es bastante eficaz cuando se trabaja con imágenes granuladas y, a menudo, supera a cualquiera de las otras opciones en condiciones granuladas.
PXR24 (conversión de datos de 24 bits y luego compresión deflacionaria)
Esta forma de compresión de Pixar Animation Studios convierte los valores de punto flotante de 32 bits en valores de 24 bits y luego utiliza la compresión deflate. No tiene pérdida para datos de medio bit y enteros de 32 bits, y tiene una ligera pérdida para datos de punto flotante de 32 bits.
B44
Esta forma de compresión tiene pérdidas para la mitad de los datos y almacena datos de 32 bits sin comprimir. Mantiene un tamaño de compresión fijo de 2,28:1 o 4,57:1 y está diseñada para la reproducción en tiempo real. B44 comprime de manera uniforme independientemente del contenido de la imagen. [16]
B44A
Una extensión de B44 donde las áreas de color plano se comprimen aún más, como los canales alfa.
DWAA
Formato de compresión con pérdida similar al JPEG, aportado por DreamWorks Animation . Comprime 32 líneas de escaneo juntas. [11]
DWAB
Igual que DWAA, pero comprime bloques de 256 líneas de exploración.

Créditos

De la Introducción técnica de OpenEXR.org:

El formato de archivo OpenEXR de ILM fue diseñado e implementado por Florian Kainz, Wojciech Jarosz y Rod Bogart. El esquema de compresión PIZ se basa en un algoritmo de Christian Rouet. Josh Pines ayudó a extender el algoritmo PIZ para 16 bits y encontró optimizaciones para las conversiones de flotante a medio. Drew Hess empaquetó y adaptó el código fuente interno de ILM para su lanzamiento público y mantiene la distribución del software OpenEXR. El método de compresión PXR24 se basa en un algoritmo escrito por Loren Carpenter en Pixar Animation Studios. [4]

Véase también

Referencias

  1. ^ "CGImageSource.SupportedTypes". Complemento Claris FileMaker MBS . MonkeyBread Software.
  2. ^ "Versión v3.3.1 · AcademySoftwareFoundation/openexr" . Consultado el 20 de octubre de 2024 .
  3. ^ "Licencia". openexr.com .
  4. ^ abc Florian Kainz; Rod Bogart; Piotr Stanczyk; Peter Hillman (5 de noviembre de 2013). "Introducción técnica a OpenEXR" (PDF) . Industrial Light & Magic . Consultado el 9 de noviembre de 2015 .
  5. ^ ab "Diseño de archivo OpenEXR" . Consultado el 25 de mayo de 2023 .
  6. ^ "OpenEXR 1.3.0: índice de paquetes de Python". pypi.python.org . Consultado el 11 de abril de 2018 .
  7. ^ "Industrial Light & Magic lanza el formato de archivo de imagen de rango dinámico extendido patentado OpenEXR a la comunidad de código abierto" (PDF) (Nota de prensa). 22 de enero de 2003. Archivado desde el original (PDF) el 21 de julio de 2017 . Consultado el 11 de abril de 2013 .
  8. ^ abcd "OpenEXR". 16 de enero de 2023 – vía GitHub.
  9. ^ Stanczyk, Piotr (9 de abril de 2013). "Anuncio de lanzamiento de v2.0.0.0 (GM)". openexr-announce (Lista de correo).
  10. ^ "OpenEXR 2.0". The CGSoceity . 10 de abril de 2013.
  11. ^ ab "DreamWorks Animation contribuye con la compresión con pérdida a OpenEXR 2.2" (nota de prensa). Glendale, CA. 8 de agosto de 2014. Consultado el 18 de agosto de 2014 .
  12. ^ "Lectura y escritura de archivos de imagen OpenEXR con la biblioteca IlmImf" (PDF) .
  13. ^ "nombre · Número 879 · AcademySoftwareFoundation/openexr". GitHub .
  14. ^ "Imath". 21 de enero de 2023 – vía GitHub.
  15. ^ "Introducción técnica a OpenEXR" (PDF) . Archivado desde el original (PDF) el 17 de julio de 2011. Consultado el 23 de febrero de 2006 .
  16. ^ "Introducción técnica a OpenEXR" (PDF) . Archivado desde el original (PDF) el 17 de julio de 2011. Consultado el 23 de febrero de 2006 .

Enlaces externos