GEGL - GEGL
![]() | |
První vydání | 2000 |
---|---|
Stabilní uvolnění | 0.4.22 / 18. února 2020[1] |
Úložiště | ![]() |
Napsáno | C |
Operační systém | Cross-platform |
Typ | Zpracování obrazu knihovna |
Licence | GNU Lesser General Public License |
webová stránka | www![]() |
The Obecná grafická knihovna (GEGL) je programovací knihovna ve vývoji pro zpracování obrazu aplikace. Je vyvinut hlavně pro GIMP za účelem přidání podpory pro vyšší bitová hloubka obrázky a nedestruktivní úpravy. Byl částečně implementován v GIMP 2.6,[2] s dalšími přidanými v 2.8 a budou[potřebuje aktualizaci ] použito přímo v 2.10.[3] Používají jej také GNOME Fotky a Gedl.
Design
GEGL je modelován podle a směrovaný acyklický graf, kde každý uzel představuje obrázek úkon (nazývané „operátoři“ nebo „ops“) a každý okraj představuje obraz. Operace mohou obecně pořídit několik vstupních obrazů a dát několik výstupních obrazů, což odpovídá tomu, že v daném uzlu (operaci) je několik příchozích hran (obrazů) a několik odchozích hran (obrazů). Systém používá model na vyžádání a pracuje pouze podle potřeby. To umožňuje funkce, jako je mít velmi rychlé náhledy během úprav, a jakmile uživatel dokončí provádění změn, GEGL bude opakovat stejné operace v plném rozlišení pro finální obraz na pozadí.
Operace
Operace (op) je uzel v grafu GEGL odpovědný za jednu akci; operace mohou být:
- jednoduché, například „přidat“ (převzetí dvou vstupů) nebo „premultiply alfa“ (převzetí jednoho vstupu)
- složité, například převody barevného prostoru
GEGL má také pojem meta operací, kde lze jednu operaci vytvořit z jiných operací (např. neostrá maska je kombinací přidat, násobit, odčítat a Gaussovské rozostření ops).
babl
babl, knihovna podpory pro GEGL, poskytuje obecný způsob řešení barevný prostor konverze;[4]babl provádí abstrahování základních barevných operací, takže o nich GEGL nemusí vědět. Prostřednictvím babl poskytuje GEGL optimalizovaný a výkonný (volitelně s SIMD podpora) zpracování libovolných barevných dat; To umožňuje závislým aplikacím účinně podporovat širokou škálu barevných prostorů (od 8 bitů RGB naplno plovoucí bod CMYK ) s minimem dalšího kódu aplikace.
OpenRaster
OpenRaster je XML formát souboru použitý k uložení rastrová grafika. Hlavní vývojář společnosti GEGL Øyvind Kolås pomohl specifikovat OpenRaster, aby byl schopen uložit graf GEGL.
Dějiny

GEGL byl původně koncipován jako výměna jádra GIMP v roce 2000 společností Rhythm & Hues softwaroví inženýři, konečně v roce 2006 externí API byl považován za dostatečně stabilní a schopný nahradit jádro GIMP. Dne 20. prosince 2007 byl přidán do vývojové verze GIMP. Některé z nástrojů GIMP již byly převedeny na operace GEGL; většinou byly převedeny nástroje, které upravují barvy, jas nebo kontrast.
Verze 0.2.0 je součástí Gimp 2.8.xx a Series 0.3.xx je součástí 2.9.xa v 2.10.0 Release Candidate. 0.4.0 je první verze pro verzi 2.10.0 Gimpu.
Od nestabilní řady 2.9.x se všechna jádra GIMP spoléhají na GEGL a téměř polovina filtrů byla nahrazena operacemi GEGL. Cíl je 100% filtrů v GEGL ve verzi 2.10 a novější.
Historicky maskot GEGL, koza s pěti nohama, kterou vytvořil George (Jiří) Lebl,[5]našel život jako velikonoční vajíčko v GNOME pracovní plochy.[6]
OpenCL
Některé z operací GEGL jsou k dispozici v hardwarově akcelerované verzi založené na OpenCL. Snaha třetí strany s názvem GEGL-OpenCL,[7] převodu více operací na OpenCL bylo zahájeno Streamujte HPC v roce 2016.[8] Od května 2017 projekt stagnoval, ale v létě 2019 byl obnoven.
Reference
- ^ „tagy“.
- ^ „Vydání GIMP 2.6“. Citováno 2008-10-01.
- ^ „Oznámení Gimp 2.10 na Google+“. Citováno 2012-03-15.
- ^ web babl
- ^ George (Jiří) Lebl (16. 12. 2007). "Věc Jiřího Lebla (nebo George)". Citováno 2008-03-21.
Jsem velkým zastáncem svobodného softwaru a pokud pracuji na svobodném softwaru, je to většinou na GNOME.
- ^ Christian a Steve (02.02.2002). „Souhrn GNOME - 2002-01-20 - 2002-02-02“. Novinky pro vývojáře GNOME. Archivovány od originál dne 18. 4. 2009. Citováno 2008-03-19.
Až do tohoto bodu byla souhrnnými editory tato hra považována pouze za další Urban Legend, ale už ne.
- ^ https://github.com/OpenCL/GEGL-OpenCL
- ^ https://www.gimp.org/news/2016/01/28/gegl-opencl-streamcomputing/