GEGL

Ajustar Compartir Imprimir Citar

La Biblioteca de gráficos genéricos (GEGL) es una biblioteca de programación en desarrollo para aplicaciones de procesamiento de imágenes. Está desarrollado principalmente para GIMP con el fin de agregar soporte para imágenes de mayor profundidad de bits y edición no destructiva. Se implementó parcialmente en GIMP 2.6, se agregaron más en 2.8 y ahora es una parte central en 2.10. Muchos filtros están listos, pero también mucho trabajo en progreso. Target es totalmente compatible con todos los filtros importantes en la hoja de ruta en la versión 3.0. También lo utilizan las fotos y gedl de GNOME.

Diseño

GEGL se modela a partir de un gráfico acíclico dirigido, donde cada nodo representa una operación de imagen (llamadas "operadores" u "ops&# 34;), y cada borde representa una imagen. Las operaciones pueden, en general, tomar varias imágenes de entrada y dar varias imágenes de salida, lo que corresponde a tener varios bordes entrantes (imágenes) y varios bordes salientes (imágenes) en un nodo dado (operación). El sistema utiliza un modelo bajo demanda, haciendo el trabajo solo según sea necesario. Esto permite funciones como tener vistas previas muy rápidas durante la edición y, una vez que el usuario haya terminado de realizar los cambios, GEGL repetirá las mismas operaciones en resolución completa para la imagen final en segundo plano.

Operaciones

Una operación (op) es un nodo dentro de un gráfico GEGL responsable de una acción; operaciones pueden ser:

GEGL también tiene una noción de metaoperaciones, donde una operación puede construirse a partir de otras operaciones (por ejemplo, máscara de enfoque es una combinación de agregar, multiplicar< /i>, restar y desenfoque gaussiano ops).

Babl

babl, una biblioteca de soporte para GEGL, proporciona una forma genérica de manejar las conversiones de espacio de color; babl opera abstrayendo las operaciones de color fundamentales para que GEGL no tenga que estar al tanto de ellas. A través de babl, GEGL proporciona un tratamiento optimizado y potente (opcionalmente con soporte SIMD) de datos de color arbitrarios; esto permite que las aplicaciones dependientes admitan de manera eficiente una amplia gama de espacios de color (desde RGB de 8 bits hasta CMYK de punto flotante completo) con un código de aplicación adicional mínimo.

Ráster abierto

OpenRaster es un formato de archivo XML que se utiliza para guardar gráficos de trama. El desarrollador líder de GEGL, Øyvind Kolås, ayudó a especificar OpenRaster para que sea capaz de guardar un gráfico GEGL.

Historia

Históricamente un huevo GNOME Easter, la mascota GEGL es una cabra de cinco patas. (Golpe de ingeniería genética, grande)

GEGL se concibió originalmente como un reemplazo del núcleo de GIMP en 2000 por Rhythm & Ingenieros de software de Hues, finalmente, en 2006, la API externa se consideró lo suficientemente estable y capaz de reemplazar el núcleo de GIMP. El 20 de diciembre de 2007, se agregó a la versión de desarrollo de GIMP. Algunas de las herramientas de GIMP ya se han convertido a operaciones GEGL; la mayoría de las herramientas que modifican los colores, el brillo o el contraste se han convertido.

La versión 0.2.0 es parte de Gimp 2.8.xy y la serie 0.3.xy es parte de 2.9.xy en 2.10.0 Release Candidates. 0.4.0 es la primera versión de la versión 2.10.0 de Gimp. La versión actual 0.4.xy también es la base de la versión de desarrollo 2.99.x para la serie 3.0 estable de Gimp. 0.5 (o superior como 1.0) será la línea de la serie estable 3.0.

A partir de la serie 2.9.x inestable, todo el núcleo de GIMP se basa en GEGL y casi la mitad de los filtros se han reemplazado con operaciones GEGL. El objetivo es el 100 % de los filtros de lienzo en GEGL en 2.10 y versiones posteriores.

Históricamente, la mascota de GEGL, una cabra de cinco patas creada por George (Jiří) Lebl [Wikidata]< /lapso>, encontró vida como un huevo de Pascua en los escritorios de GNOME.

Abrir CL

Algunas de las operaciones de GEGL están disponibles en una versión acelerada por hardware basada en OpenCL. Stream HPC inició un esfuerzo de terceros, llamado GEGL-OpenCL, para convertir más operaciones a OpenCL en 2016. El proyecto se estancó a partir de mayo de 2017, pero se revivió en el verano de 2019.