V architekturách pro výpočty odhadu disparity, jako je například implementace iUDS, se SAD (Sum of Absolute Differences) stromy ukázaly jako klíčové pro efektivní zpracování bloků. Tyto stromy mají za úkol spočítat SAD hodnotu mezi řádky referenčních bloků a aktuálními bloky, přičemž výpočet zahrnuje několik kroků: získání rozdílu mezi hodnotami vzorků, výpočet jejich absolutní hodnoty a jejich následné sečítání. Každý SAD strom tedy poskytuje jednu výslednou hodnotu SAD pro každý zpracovávaný řádek.

Po výpočtu hodnoty SAD pro každý řádek bloku se tyto hodnoty akumulují v SAD akumulátorech, které zajistí, že výstupní hodnoty odpovídají celkové SAD hodnotě mezi referenčním a aktuálním blokem. Akumulátory, jak ukazuje ilustrace ve Figure 5.16, používají signál pro resetování hodnoty, když začíná zpracování nového bloku, čímž se udržuje správný tok dat.

Zajímavé je, že velikost vzorku (m) a bitová hloubka výstupu (n) závisí na šířce a výšce zpracovávaného PU (Processing Unit). Výpočty těchto hodnot jsou podmíněny vztahy uvedenými v rovnicích (5.7) a (5.8). Tyto vztahy nám ukazují, jak se mění nároky na zpracování s velikostí bloků. Čím širší a vyšší jsou bloky, tím více cyklů bude zapotřebí pro jejich zpracování, což je kladeno na váhu při optimalizaci rychlosti a energetické náročnosti.

Pokud jde o samotný proces zpracování, po dokončení výpočtu SAD hodnoty pro všechny řádky bloku přichází na řadu fáze komparátoru, který porovnává všechny SAD hodnoty spolu s příslušnými vektory disparity. Cílem této fáze je nalézt nejmenší SAD hodnotu, která odpovídá nejvhodnějšímu pohybovému vektoru pro daný blok. Komparátor využívá nejvýznamnější bit (MSB) z rozdílu mezi dvěma SAD hodnotami k výběru toho nejvhodnějšího vektoru disparity.

Architektura řídící jednotky je zodpovědná za výběr kandidátů bloků pro následné zpracování. Tento výběr probíhá lineárně zleva doprava a na základě parametrů subsamplingu se určuje, kolik kandidátů bude vybráno pro porovnání. Různé úpravy v rámci vertikálního, diagonálního nebo plného zpřesnění mají vliv na počet těchto kandidátů, přičemž maximální počet dosahuje až 6 pro plné zpřesnění.

Když systém přechází na zpracování dalších kroků, kontrolní jednotka zajišťuje komunikaci s pamětí. Tato paměťová komunikace je nezbytná pro správné zpracování každého CTU (Coding Tree Unit), což znamená, že při zpracování každého PU je potřeba několik dalších hodinových cyklů. Tento faktor je zásadní pro správné plánování časování a minimalizaci energetické náročnosti.

V souvislosti s časováním a efektivitou zpracování jednotlivých iUDS kroků je důležité vzít v úvahu celkové množství hodinových cyklů potřebných pro jeden krok, což závisí na velikosti PU a parametrech subsamplingu. Každý krok vyžaduje optimální nastavení pro vyplnění pipeline a dosažení co nejvyšší rychlosti zpracování při minimální spotřebě energie. Použití techniky clock-gating u pomalejších modulů umožňuje optimalizovat spotřebu energie tím, že se zajišťuje, že moduly, které již dokončily zpracování, budou deaktivovány.

Ve fázi syntézy a porovnání výkonu je zřejmé, že iUDS architektura spotřebovává více prostředků než některé předchozí návrhy, ale její výhodou je výrazně nižší spotřeba energie. Srovnání výsledků ukazuje, že iUDS dosahuje až o 62 % nižší spotřeby energie než jiné technologie, přičemž výkon je optimalizován pro různá testovací prostředí a video sekvence.

Dalším klíčovým faktorem je také výběr vhodné technologie pro implementaci. Zatímco některé dřívější návrhy používaly technologii 65 nm, iUDS využívá pokročilejší 45 nm technologii, což přináší výhody nejen v oblasti výkonu, ale i v úspoře energie.

Pokud se zaměříme na energetickou efektivitu a výkon, pak je zřejmé, že architektura iUDS nejen zlepšuje výkon, ale zároveň zajišťuje vyvážený poměr mezi spotřebou energie a dostupnými prostředky pro zpracování datových bloků. Efektivní správa těchto modulů, která se zaměřuje na optimalizaci počtu hodinových cyklů a správu paměti, umožňuje dosáhnout vysoké efektivity v reálných aplikacích, což je klíčové pro oblasti jako je 3D video zpracování.

Proč je důležitý energeticky efektivní návrh hardwaru pro 3D-HEVC a vysoce kvalitní video?

Zvyšující se nároky na kvalitu videa, zejména ve formátech jako 4K, 8K a stereoskopický 3D, přinášejí dramatické zvýšení výpočetní složitosti. HEVC (High Efficiency Video Coding), známý také jako H.265, a jeho 3D rozšíření (3D-HEVC), vznikly jako reakce na potřebu efektivnější komprese videa bez ztráty kvality. Tato efektivita je však vykoupena vysokými požadavky na výpočetní výkon a spotřebu energie, zejména v reálném čase a při vysokém rozlišení.

Výzkum se tak přirozeně orientuje na hardwarové implementace, které by umožnily zpracování těchto náročných formátů bez kompromisů v oblasti výkonu nebo mobility zařízení. Zvláštní důraz je kladen na návrhy, které jsou optimalizované z hlediska energetické náročnosti, průchodnosti a adaptability. Klíčovým konceptem se zde stává tzv. Pareto efektivita, tedy vyvážení mezi kvalitou obrazu, datovým tokem a energetickou náročností.

Příkladem těchto řešení je návrh architektur pro odhad pohybu, disparity nebo intra-frame predikce. V oblasti disparity byla například vyvinuta hardwarová řešení schopná pracovat v reálném čase s vysokou propustností, často postavená na flexibilní konfiguraci kvality a spotřeby. Některé návrhy umožňují dynamicky měnit pořadí kódování v závislosti na cílech systému – například prodloužení výdrže baterie u mobilních zařízení bez ztráty srozumitelnosti obrazu.

Významnou oblastí optimalizace je také binární aritmetické kódování (CABAC), které v HEVC představuje úzké hrdlo z hlediska paralelizace. Efektivní architektury využívající vícenásobné zpracování bypass binů ukazují, že i v této oblasti lze dosáhnout dramatického zvýšení rychlosti při zachování přesnosti komprese.

Dalším zásadním aspektem je snížení složitosti predikčních režimů. V 3D-HEVC jsou depth mapy (hloubkové mapy) klíčovým nástrojem, avšak jejich zpracování je velmi výpočetně náročné. Řešením je například použití zjednodušených algoritmů pro detekci hran, které umožňují reálné nasazení v embedded systémech a mobilních zařízeních. V této oblasti vznikly i architektury zaměřené na škálovatelnost, které jsou schopné pracovat s různým počtem pohledů bez zásadního navýšení hardwarové složitosti.

Vývoj směřuje k architekturám, které jsou přizpůsobitelné jak z hlediska kvality, tak z hlediska energetické spotřeby – takzvané "quality-power configurable" systémy. Tyto návrhy jsou klíčové pro nasazení v prostředí s omezenými zdroji, jako jsou nositelná zařízení, AR/VR headsety nebo mobilní kamery. Vedle samotné komprese je nezbytné optimalizovat i paměťovou hierarchii – například hybridní přístup kombinující scratchpad a cache paměť umožňuje efektivní přístup k datům s minimálním energetickým dopadem.

Důležitou roli hrají také metody pro přesné odhady spotřeby energie v ASIC implementacích. Bez spolehlivého modelování není možné navrhnout reálně nasaditelný systém. S tím souvisí i vývoj nástrojů pro návrh a testování, které umožňují simulaci komplexních architektur v realistických scénářích vysokého rozlišení a vícekanálového vstupu.

Důvod, proč tato problematika nabývá na významu, nespočívá jen v technickém pokroku. Jde o nezbytnou odpověď na rostoucí globální poptávku po kvalitním vizuálním obsahu v prostředí, kde každý watt energie a každý milimetr čipu hraje roli. Vývoj tedy směřuje k udržitelnému videokódování – technicky vyspělému, energeticky efektivnímu a připravenému pro budoucí multimediální aplikace.

Dále je třeba si uvědomit, že komplexita těchto systémů není jen výzvou z hlediska návrhu, ale i z pohledu interoperability, standardizace a škálovatelnosti. Nové algoritmy a architektury musí být plně kompatibilní s existujícími standardy a zároveň dostatečně flexibilní pro integraci do různých platforem – od mobilních zařízení až po datová centra. Standardizované rozšíření HEVC a jeho 3D varianty tedy nejsou jen technologickým pokrokem, ale nutnou podmínkou rozvoje celého videoekosystému.

Jak efektivně kódovat 3D videa: Výzvy a pokroky v 3D video-kódovacích standardech

Pokud se podíváme na současné možnosti kódování 3D videa, zjistíme, že různé aplikace, jako jsou stereoskopické a autostereoskopické zobrazování, televizory s trojrozměrným obrazem (3D-TV) nebo televize s volným pohledem (FTV), vyžadují zpracování více pohledů téže scény. To přináší nové výzvy pro kódování videí v těchto formátech, protože v případě vysokého rozlišení se objem dat potřebných pro přenos nebo ukládání videa neúměrně zvyšuje s počtem pohledů. Tato výzva byla jedním z hlavních důvodů pro vznik různých standardů pro kódování 3D videí, jejichž cílem je optimalizace přenosu a komprese.

Historie 3D video-kódování začala s konceptem kódování více pohledů, což vedlo k vývoji standardu Multiview Video Coding (MVC), který byl definován jako rozšíření již existujícího kódování H.264/AVC. Tento přístup, nazývaný predikce mezi pohledy (Inter-view prediction), využívá redundanci mezi sousedními pohledy pro efektivnější kódování dat. Použití nástroje odhadu disparity (Disparity Estimation - DE) na bázi pohybové predikce (Motion Estimation - ME) se ukázalo jako zásadní pro zvýšení účinnosti kódování ve více pohledovém kontextu. Podle studií může tento přístup snížit objem dat potřebných pro kódování až o 20–50% ve srovnání s tradičním přístupem k simulcastu, kdy se každému pohledu přiřazuje samostatný datový tok.

Nicméně, MVC není bez svých nedostatků. Přestože tento standard zlepšuje efektivitu kódování, jeho bitrate roste lineárně s počtem pohledů, což není ideální pro aplikace, které vyžadují mnoho pohledů pro zajištění vysoké kvality zobrazení. Tato omezení vedla k dalšímu vývoji novějších a komplexnějších standardů, jako je HEVC (High Efficiency Video Coding), a jeho rozšíření pro kódování 3D videí s názvem MV-HEVC. Tento nový standard využívá stejné nástroje jako H.264/AVC, ale s vylepšenou efektivitou a složitějšími kódovacími nástroji, což umožňuje ještě efektivnější kompresi videí, zejména při práci s mnoha pohledy.

I přes pokroky, které MV-HEVC přináší, stále čelí výzvám při zpracování scén s velkým množstvím pohledů. Proto experti z JCT-3V (Joint Collaborative Team on 3D Video Coding Extension Development) vyvinuli novou HEVC rozšířenou verzi pro 3D videa, známou jako 3D-HEVC. Tento standard se zaměřuje na použití konceptu více pohledů a hloubky (MVD), kde každému texturovanému snímku je přiřazen mapovací údaj o hloubce. Tento přístup umožňuje redukci počtu potřebných snímků kódovaných v textuře, což na straně dekodéru usnadňuje generování virtuálních pohledů a tím snižuje požadavky na šířku pásma.

Ve srovnání s MV-HEVC je 3D-HEVC výkonnější, ale i náročnější na výpočetní kapacitu. Kódování 3D videí, které zahrnuje jak texturu, tak hloubkovou mapu, vyžaduje nové nástroje pro efektivní kódování těchto specifických informací. K tomu byly přidány nové kódovací režimy, jako například Depth Modeling Modes 1 a 4 (DMM-1 a DMM-4) a nástroj pro vynechání intra-frame predikce Depth Intra Skip (DIS), které optimalizují kódování těchto typů dat. I přesto, že 3D-HEVC zdědil většinu nástrojů z HEVC, jeho výhody se projeví především v kontextu specifických 3D aplikací.

Významným krokem směrem k širší kompatibilitě 3D videa je i rozšíření 3D-HEVC pro různé technologie zobrazení, ať už jde o tradiční 2D zobrazení, stereoskopické displeje nebo autostereoskopické technologie s různým počtem pohledů. Dekodér tak může vybrat podbitstream vhodný pro technologii použitého displeje, což zajišťuje lepší flexibilitu v různých aplikačních scénářích.

Důležitým vývojem v oblasti 3D videí je také standard MPEG Immersive Video (MIV), který se zaměřuje na kompresi reálných nebo virtuálních 3D scén získaných z více kamer. MIV umožňuje přehrávání videí s šesti stupni volnosti (6DoF), což přináší zcela novou úroveň interaktivity a imerzivity. Na rozdíl od 360° videa, které podporuje pouze tři stupně volnosti, MIV dokáže zohlednit pohybovou paralaxu, což znamená, že relativní poloha objektů se mění podle pohybu diváka. Tento přístup zlepšuje uživatelský zážitek a eliminuje některé nežádoucí efekty, jako je nevolnost u některých diváků.

MIV má oproti jiným standardům jednu zásadní výhodu: je navržen tak, aby nevyžadoval příliš mnoho vzorků, což zajišťuje, že komprese zůstává efektivní i na zařízeních s nižší výpočetní kapacitou, jako jsou chytré telefony a VR zařízení. MIV tak nachází široké uplatnění v oblastech, jako jsou virtuální realita (VR), rozšířená realita (AR) a smíšená realita (MR), čímž posouvá hranice možného v oblasti imerzivního videa.

V současnosti, jak 3D video-kódovací standardy jako 3D-HEVC a MIV, tak i novější přístupy, stále vyžadují další výzkum a vývoj, aby byla zajištěna maximální efektivita kódování a přenosu dat, zejména pro reálné aplikace, které mají vysoké nároky na kvalitu obrazu a interaktivitu. Při vývoji nových algoritmů a architektur pro kódování 3D videí je kladeno důraz na dosažení vyváženosti mezi energetickou náročností a kompresní účinností, což je klíčové pro aplikace běžící na bateriových zařízeních.