Image Upscaler
Zvětšete obrázek 2x, 3x nebo 4x pomocí skutečného Lanczosova nebo bikubického konvolučního převzorkování, zobrazené poctivě vedle sebe oproti výchozímu bilineárnímu škálování prohlížeče – klasické převzorkování, nikoli AI.
Výsledek
Spousta stránek slibuje „upscaling AI“, díky kterému bude malá fotografie vypadat, jako by byla natočena na profesionálním vybavení. Tento nástroj dělá něco poctivějšího: zvětší váš obrázek pomocí skutečných, desítky let starých, matematicky dobře srozumitelných převzorkovacích algoritmů – stejné rodiny používané v profesionálním softwaru pro úpravu obrázků dávno předtím, než kdokoli nazval cokoli „AI“ – a ukáže vám přesně, jak se to srovnává s škálováním, které váš prohlížeč již dělá zdarma.
Jsou implementovány dva skutečně odlišné algoritmy, nikoli jeden algoritmus se dvěma štítky. Lanczosovo převzorkování používá okénkové jádro sinc — sinc(x) vynásobené sinc(x/a) v rámci poloměru podpory a=3 — které funguje jako téměř ideální dolní propust a má tendenci vytvářet nejostřejší hrany s nejvyšším kontrastem z těchto dvou. Bkubické převzorkování používá klasické Keys (1981) kubické konvoluční jádro s a=-0,5 (ekvivalentní Catmull-Rom splajnu), kubický polynom po částech s poloměrem podpory 2, který poskytuje hladší, měkčí výsledky s menším zvoněním u tvrdých hran. Oba se používají jako skutečné oddělitelné konvoluce: každý řádek je nejprve převzorkován horizontálně, poté je každý sloupec převzorkován vertikálně, přičemž váhy jádra jsou vypočítány na výstupní pixel a normalizovány tak, aby byly vždy součtem 1.
Pro srovnání, nástroj také vykresluje stejné zvětšení pomocí vlastního výchozího měřítka drawImage v prohlížeči (imageSmoothingEnabled = true, výchozí kvalita) – rychlá bilineární metoda rodiny, ke které se každý nástroj založený na plátně vrátí, pokud neimplementuje nic lepšího. Umístěním vedle vámi zvoleného Lanczosova nebo bikubického výsledku bude viditelná hodnota skutečného převzorkování: ostřejší okraje a menší rozmazání při stejném cílovém rozlišení, ze stejných zdrojových pixelů.
Co tento nástroj neudělá, je vymýšlet detaily, které nebyly nikdy zachyceny. Neexistuje žádná neuronová síť, která by hádala, jak by „měla“ vypadat rozmazaná skvrna vlasů nebo vzdálená poznávací značka – každý výstupní pixel je matematicky definovaná vážená kombinace skutečných zdrojových pixelů. Vyberte 2x, 3x nebo 4x, zvolte Lanczos nebo bikubický a stáhněte si výsledek jako PNG v plném rozlišení. Vše běží lokálně pomocí vlastních API Canvas 2D a ImageData v prohlížeči – váš obrázek se nikdy nikam nenahraje.