V rámci 3D-HEVC byla rozšířena koncepce výběru kandidátů pro predikci pohybu v MCL (Merge Candidate List) tak, aby bylo možné zohlednit prostorovou souvislost mezi pohledy. Protože více pohledů zachycuje tutéž scénu z různých úhlů pomocí synchronizovaných kamer, existuje vysoká pravděpodobnost, že odpovídající bloky v různých pohledech budou sdílet stejnou pohybovou informaci. K tomu se využívá disparity, která propojuje odpovídající bloky napříč pohledy, což umožňuje předpovídat pohybové vektory závislého pohledu na základě dříve zakódovaného referenčního pohledu.

Pro účely přesnější reprezentace scény byl v rámci 3D-HEVC představen režim hloubkově řízeného dělení bloků – Depth-Based Block Partitioning (DBBP). Tento režim umožňuje rozdělit blok textury podle masky binárního segmentačního pole (BSM), která je vypočtena z odpovídající hloubkové mapy. Segmentace odpovídá oddělení popředí a pozadí, přičemž každé z těchto regionů je predikováno zvlášť. Základem generování masky je určení hodnoty prahu, která je vypočtena jako průměr hodnot v příslušném bloku hloubkové mapy. Pokud je konkrétní hloubka větší než tento práh, pixel v masce je označen jako 1, jinak jako 0. Výsledné predikce dvou oblastí se následně slučují na základě této masky.

DBBP se uplatňuje výhradně pro typy PU dělení 2N×N a N×2N, a to na úrovních CU o velikostech 64×64, 32×32 a 16×16. Pohybové parametry jsou odhadnuty pro obě části bloku a kombinovány podle hodnot v masce, čímž vzniká výsledný predikovaný blok.

Kódování hloubkových map v rámci 3D-HEVC využívá základní principy z HEVC, jako je Intra predikce, pohybová kompenzace a transformace, nicméně některé nástroje jsou vypnuty a jiné výrazně upraveny. Jelikož hloubkové mapy obsahují ostré hrany, interpolace s vysokou přesností (7–8tiskové filtry) používaná v HEVC může vést k artefaktům, které narušují syntetizované pohledy. Z toho důvodu je v 3D-HEVC zakázána frakcionální predikce při mezisnímkové i mezivrstvové predikci. Stejně tak jsou deaktivovány všechny in-loop filtry (například deblocking a SAO), které byly navrženy pro texturové video, ale pro hloubkové mapy se ukázaly jako nevhodné.

Další úpravou je rozšíření seznamu kandidátů pro merge i v případě hloubkových map. Avšak zásadní novinkou, která zvyšuje účinnost Intra predikce v oblastech s ostrými hranami nebo homogenním obsahem, jsou Depth Modeling Modes (DMM).

Hloubkové mapy jsou charakteristické kombinací ploch s téměř konstantní hodnotou a výrazných hran, které reprezentují kontury objektů. Standardní Intra režimy z HEVC jsou efektivní pro oblasti s plynulou změnou, ale selhávají při reprezentaci ostrých přechodů. DMM režimy proto doplňují sadu klasických 35 Intra režimů HEVC (33 směrových, DC a Planar), aby umožnily věrnější reprezentaci těchto specifických oblastí.

Z navržených čtyř DMM režimů byly v konečné verzi 3D-HEVC zachovány dva: DMM-1 (Explicit Wedgelet Signaling) a DMM-4 (Inter-component-predicted Contour Partitioning). Oba režimy podporují bloky velikosti 4×4, 8×8, 16×16 a 32×32.

V režimu DMM-1 je blok rozdělen rovnou čarou na dvě oblasti (P1 a P2). Toto rozdělení je signalizováno explicitně pomocí počátečního a koncového bodu přímky (S a E). Každá část bloku je reprezentována konstantní hodnotou, která je určena jako průměr hloubkových hodnot v dané oblasti (tzv. CPV – Constant Partition Value). Výsledný reziduální signál, který odpovídá rozdílu mezi aproximací a původní hloubkovou mapou, je následně zakódován pomocí transformace.

DMM-4, na rozdíl od DMM-1, nepoužívá předem definované segmentace, ale využívá predikci kontur mezi komponentami. Tím se dosahuje vyšší flexibility při reprezentaci složitějších hranových struktur.

Důležité je pochopit, že přínos těchto technik nespočívá pouze ve vyšší kompresní účinnosti, ale především v zachování vizuální kvality při syntéze nových pohledů. Při nesprávném zakódování hloubkových map totiž dochází k výraznému zkreslení rekonstruovaných scén, což deg

Jak optimalizovat hardwarový návrh pro 3D videa s vysokou energetickou efektivitou?

Významnou výzvou v oblasti komprese 3D videí je dosažení rovnováhy mezi kódovací účinností a energetickou náročností. Především, v případě 3D-HEVC (High Efficiency Video Coding) je nutné navrhnout hardwarové řešení, které nejen že podporuje víceúhlové kódování, ale také šetří energii, což je klíčové pro mobilní zařízení.

Jednou z technik, která byla v poslední době zkoumána, je využití různých režimů intra-předpovědí, konkrétně DMM-1 (Depth Map Mode 1), který slouží k efektivnímu zakódování hloubkových map s ostrými okraji. DMM-1 funguje na základě použití wedgeletů (klínů), které rozdělují bloky na dvě oblasti. Tento přístup umožňuje, aby všechny vzorky, které patří do jedné oblasti, byly reprezentovány stejnou hodnotou, obvykle průměrem všech hodnot v dané oblasti. Výběr nejlepšího wedgeletu pro každý blok se provádí na základě minimální hodnoty Sumy Absolutních Rozdílů (SAD), která vyjadřuje míru zkreslení mezi původním blokem a zakódovaným blokem.

V roce 2019 byla navržena specializovaná hardwarová architektura pro implementaci tří režimů intra-předpovědí, včetně DMM-4 a DMM-1. Tento design se soustředil na optimalizaci kódování pro různé velikosti predikčních bloků (PU). Nicméně, výsledky ukázaly, že tento přístup vedl k určitému snížení efektivity kódování o 1,115 % (BD-rate). Tento pokles byl částečně způsoben tím, že při testování byly použity pouze čtyři z osmi doporučených sekvencí z dokumentu Common Test Conditions (CTC), a navíc nebyly dostatečně zohledněny vlivy inter-předpovědi.

Pro optimální využití 3D videí je kladeno důraz na návrh hardwaru, který bude mít dostatečný průchod pro zpracování videí v reálném čase a zároveň minimalizuje spotřebu energie, což je nezbytné pro mobilní aplikace. Například, vývoj speciálního hardwarového návrhu pro 3D-HEVC intra režimy, schopného zpracovávat až devět pohledů videa Full HD 1080p při 30 fps s maximální spotřebou energie 263,7 mW, je v současnosti nejlepší energeticky efektivní řešení.

V kontextu tohoto vývoje bylo zavedeno zjednodušení algoritmu DMM-1, který vylepšuje klasický postup hodnocení wedgeletů. Nový algoritmus, známý jako 6WR (Six Wedgelets and six Refinements), snižuje počet hodnocených wedgeletů, a tím výrazně zlepšuje energetickou efektivitu. Tento algoritmus omezuje počet wedgeletů, které je nutné vyhodnotit, na šest pro každou fázi (hlavní a refinační), přičemž tyto wedgelety jsou vybírány na základě nejvyššího gradientu okrajů aktuálního bloku. Tento přístup umožňuje výrazné zrychlení procesu a snížení výpočetní složitosti.

Významným krokem je rovněž optimalizace procesu generování wedgeletů. V klasickém postupu je generováno až 1908 wedgeletů, což zahrnuje různé možnosti pro velikosti bloků 4×4, 8×8, 16×16 a 32×32. Avšak tento počet může být snížen na 12 pro predikci velikosti 4×4 a 12 pro velikost 8×8, což vede k výraznému zrychlení celkového procesu komprese.

Účinnost tohoto algoritmu byla ověřena v rámci testovacího modelu 3D-HEVC (verze 16.2), kde bylo provedeno hodnocení na základě osmi video sekvencí definovaných v dokumentu CTC. Tento test ukázal, že použití 6WR vede k zanedbatelnému poklesu kódovací účinnosti, což je v porovnání s předchozími metodami významně pozitivní výsledek.

Při návrhu energeticky úsporného hardwaru pro kódování 3D videí je třeba vzít v úvahu nejen výkon, ale i spotřebu energie, která je klíčová pro mobilní aplikace. Architektura navržená s ohledem na DMM-1 a využívající algoritmus 6WR ukazuje, že je možné dosáhnout optimálního výkonu při minimální spotřebě energie, což je nezbytné pro efektivní využívání této technologie v praxi.

Jak optimalizovat výkon a spotřebu energie v architekturách pro zpracování 3D video predikcí

Vývoj hardware pro zpracování 3D video predikcí je stále aktuálním a náročným problémem, zejména v oblasti zpracování vysokokapacitních videí, jako je HD 1080p při 30 snímcích za sekundu. V tomto kontextu se stále hledají efektivní způsoby, jak optimalizovat výkon a spotřebu energie, přičemž klíčovým faktorem je správné řízení výkonu procesů spojených s predikcí mezi snímky a prostorovou predikcí. Důležitým aspektem tohoto vývoje je i správná volba algoritmů a heuristik, které mohou dramaticky ovlivnit spotřebu energie a rychlost zpracování.

Jedním z řešení tohoto problému je implementace různých úrovní heuristik pro optimalizaci predikce intra-snímku. V tomto případě bylo prokázáno, že přidání úrovní heuristik, jako je ICDSD (Intra-frame Coding Decision with Spatial Directional Information) a LC-ICDSD (Low-Complexity ICDSD), může výrazně snížit spotřebu energie při zachování nebo zlepšení kvality predikce. Když jsou tyto heuristiky aktivovány, jednotlivé jednotky, které se podílejí na predikci (například Directional Units nebo DMM-1 Units), jsou inteligentně deaktivovány nebo aktivovány podle potřeby, čímž dochází k výraznému snížení dynamické spotřeby energie.

Jedním z důležitých aspektů je i to, jaký vliv na celkový výkon má volba správné úrovně heuristiky. Úroveň 0, která nevyužívá žádné heuristiky pro optimalizaci výběru predikčních módů, vykazuje nejvyšší spotřebu energie, avšak poskytuje nejnižší dopad na efektivitu kódování. Na druhé straně, s aktivovanými heuristikami, jako jsou ICDSD a LC-ICDSD, dojde k optimalizaci nejen v oblasti energetické účinnosti, ale i z hlediska výkonu, kde je možné dosáhnout nižší spotřeby při zajištění vysoké kvality výsledného videa.

Pokud bychom se zaměřili na samotnou architekturu hardwaru, která zpracovává 3D-HEVC intra-predikci, ukazuje se, že vyžaduje kombinaci vzorků textury, hloubky a sousedních vzorků bloků pro efektivní zpracování predikcí. Hardware musí být schopen nejen zpracovávat širokou škálu predikčních módů, ale také efektivně nakládat s pamětí pro uchování těchto vzorků, což je důležité pro zachování vysoké rychlosti zpracování. Čím více vstupních vzorků hardware zpracovává, tím vyšší je požadavek na šířku pásma paměti.

Velmi důležitým faktorem při hodnocení výkonnosti hardwaru je i počet cyklů, které jsou potřeba k zpracování jednotlivých bloků. Když se zpracovávají bloky o velikosti 64 × 64 pixelů, může být počet cyklů při nejhorším scénáři, kdy bloky nemají směrové informace, výrazně vyšší. To znamená, že frekvence procesoru musí být dostatečně vysoká, aby bylo možné zvládnout zpracování všech bloků v reálném čase, což v tomto případě znamená 471,6 MHz pro HD video.

Tato architektura byla navržena tak, aby byla schopna zpracovávat tři pohledy na HD video při 30 fps, což vyžaduje přístup k oběma kanálům – textuře a hloubkovým mapám – a také vzorkům jasu a chrominance. Hardware musí mít dostatečnou kapacitu pro zpracování těchto informací, což vyžaduje vysoký přenos dat mezi procesorem a pamětí. Při práci s video signálem ve vysokém rozlišení a při více pohledech se požadavky na šířku pásma paměti a spotřebu energie ještě zvyšují.

Aby bylo možné optimalizovat celkový výkon a spotřebu energie, je důležité věnovat pozornost nejen volbě správného hardwarového řešení, ale i specifikaci algoritmů a heuristik, které výrazně ovlivňují efektivitu kódování. Například, využívání jediného směrového režimu v případě, že kolokovaný predikční blok má směrové informace, může výrazně snížit spotřebu energie ve srovnání s klasickými metodami zpracování.

Endtext

Jak navrhnout efektivní algoritmus pro odhad disparity v 3D-HEVC?

Při hledání hardware-efektivních řešení pro krok odhadu disparity (DE) v kontextu 3D-HEVC se v odborné literatuře nachází pouze několik návrhů, přičemž žádný se konkrétně nezaměřuje na tuto specifickou technologii. Mezi těmito pracemi lze zmínit řešení, která se zaměřují na zrychlení algoritmů pro krok motion estimation (ME) v rámci standardu HEVC (Fan et al. 2018; Perleberg et al. 2018). Tyto přístupy využívají modifikované verze algoritmu Test Zone Search (TZS), které jsou kompatibilní s krokem DE v 3D-HEVC. Přesto stále existuje potřeba vyvinout efektivní hardware-friendly algoritmy a architektury, které umožní reálné zpracování všech 24 velikostí PU definovaných pro 3D-HEVC. Tento text se tedy zaměřuje na tento problém a nabízí nový, nízkoenergetický a kódově efektivní návrh architektury pro odhad disparity.

Krok odhadu disparity a zjednodušení algoritmu

V kroku odhadu disparity je kladeno důraz na minimalizaci výpočetního úsilí, přičemž běžně používané metody využívají metodu block-matching algorithm (BMA), která se aplikuje v definované zúžené vyhledávací oblasti (SA). Tato oblast závisí na velikosti CTU (coding tree unit) a parametru Search Range (SR), který určuje, jak široká bude oblast pro hledání vhodných bloků disparity. Krok DE je velmi výpočetně náročný, což znamená, že optimalizace tohoto procesu je klíčová pro dosažení efektivního zpracování v reálném čase.

Existuje několik variant BMA, které byly původně navrženy pro ME, ale lze je aplikovat i na DE (Fan et al. 2018; Perleberg et al. 2018). Standardní software 3D-HTM pro 3D-HEVC používá TZS, který je navržen pro zpracování jak ME, tak DE kroků. TZS poskytuje dobrý výkon při výrazném snížení výpočetního úsilí (až 23krát) ve srovnání s Full Search (FS) algoritmem (Li et al. 2014b). TZS však nevychází z charakteristik DE, protože zahrnuje vyhledávání v horizontálních i vertikálních směrech, což je v případě disparity méně efektivní. Vzhledem k tomu, že 3D-HEVC se zaměřuje na pohledy s horizontálním posunem, je efektivnější použít algoritmy, které optimalizují pouze horizontální směr.

UDS: Unidirectional Disparity-Search Algoritmus

Pro zlepšení výkonnosti kroků DE je navržen algoritmus Unidirectional Disparity-Search (UDS), který se skládá z několika kroků a vychází z přístupu zaměřeného na horizontální hledání s ohledem na specifika 3D-HEVC. Tento algoritmus využívá tři základní kroky:

  1. První krok (First Step) spočívá v horizontálním hledání, které vyhodnocuje bloky v definované vyhledávací oblasti podle parametru S1. Tento parametr je nastaven na základě širších offline hodnocení, jak ukazuje příklad s hodnotou S1 = 12, což představuje podvzorkování bloku 12:1.

  2. Druhý krok (Second Step) opět provádí horizontální hledání, ale s nižším podvzorkováním, což umožňuje upřesnit hledání ve srovnání s prvním krokem.

  3. Třetí krok (Horizontal Refinement) se soustředí na jemné doladění odhadu disparity mezi dvěma vyhodnocenými sousedními bloky.

Tento přístup umožňuje efektivně vyhodnotit pouze omezený počet kandidátských bloků, což vede k zjednodušení přístupu k paměti a návrhu zpracovatelských jednotek, čímž se snižuje náročnost na výpočetní prostředky a zlepšuje celkový výkon systému.

Výpočty a hodnocení algoritmu

Počet kandidátských bloků hodnocených v rámci algoritmu UDS závisí na nastavení parametrů S1 a S2, což lze vyjádřit matematickými rovnicemi pro každý z kroků algoritmu. Celkový počet kandidátů se vypočítá podle vzorců:

\text{#CBS1} = 2 \times \text{SR} + 1 \text{#CBS2} = 2 \times S1 - 1 \text{#CBS3} = 2 \times (S2 - 1) \text{#CBTotal} = \text{#CBS1} + \text{#CBS2} + \text{#CBS3}

Různé kombinace hodnot S1 a S2 byly testovány na vzorcích 3D video sekvencí a výsledky ukázaly, že zvolená hodnota S1 = 4 a S2 = 2 poskytla nejlepší kompromis mezi nízkým dopadem na kódovací efektivitu a přijatelným počtem zpracovávaných kandidátů.

Výsledky hodnocení

Testování s různými hodnotami parametrů S1 a S2 ukázalo, že nejlepší výsledky z hlediska kódovací efektivity byly dosaženy při použití hodnoty S1 = 4 a S2 = 2, přičemž nárůst BD-Rate činil pouze 0.4037 %. Tento přístup se zároveň ukázal jako efektivní z hlediska počtu zpracovávaných bloků, což má pozitivní vliv na propustnost, spotřebu energie a paměťovou náročnost.

Pro čtenáře, který se zajímá o hlubší pochopení této problematiky, je důležité si uvědomit, že klíčem k efektivnímu zpracování 3D-HEVC je optimalizace výpočetní náročnosti, která zohledňuje specifika disparity. Důležité je nejen to, jaký algoritmus je použit, ale i jakým způsobem je navržen hardware pro jeho implementaci. UDS algoritmus, ačkoliv se ukazuje jako výkonný v porovnání s předchozími přístupy, je pouze jedním krokem na cestě k dosažení plně optimalizovaných a energeticky efektivních systémů pro zpracování 3D videa v reálném čase.