Zpracování multimédií
Multimodální rozhraní

Multimodální rozhraní jsou dnes velmi populární. Každý o nich mluví – o tom, že jsou velmi přirozené a oblíbené mezi uživateli. Multimodální rozhraní nabízejí řešení mnohých problémů s uživatelským rozhraním a taktéž umožňují aplikovat nové služby.

Multimodální rozhraní představuje kombinaci více modalit, čili způsobů interakce s počítačovými systémy. Multimodální rozhraní slouží k identifikaci hovořícího rozpoznáním obličeje a hlasu, tedy využívá rozpoznání a autentifikaci uživatele pomocí forem jako hlas, obličej, atd. Kromě toho se multimodální rozhraní používá i na ovládání set top boxu (STB) pomocí hlasu anebo gest.

Jedním z příkladů, kde je integrováno multimodální rozhraní, je projekt HBB-Next. Úlohou projektu je napomoci slučování vysílání a internetu vyvinutím technologie s ohledem na koncové uživatele. Projekt má obohatit klasickou TV o sociální aspekt – implementovat sociální sítě, možnost přístupu k filmům z více zařízení (TV, PC, mobil) a odkazy k filmům. Taktéž má napomoci mixování vysílaných filmů, doplňkových videí na internetu a filmů vytvořených uživatelem.

HBB-Next je založen na modulární architektuře. Moduly v HBB (Hybrid Broadcast Broadband – hybridní širokopásmová televize) jsou navržené tak, aby navzájem spolupracovaly. Například jak uživatel vstoupí do místnosti, systém ho rozpozná a automaticky se nastaví podle jeho požadavků. Když potom uživatel otevře aplikaci AppStore , systém mu dovolí otevřít, koupit a instalovat zvolenou aplikaci bez další autentifikace. Každá aktivita anebo operace uživatele může vyžadovat několikanásobnou autentifikaci určitým bezpečnostním stupněm. Zde je například zřejmá spolupráce modulu rozpoznání obličeje uživatele a modulu, který zabezpečuje autentifikaci.

Identifikace více hovořících vychází z nahraného audiosignálu, který může obsahovat hovory více osob. Tato úloha se může rozdělit do několika kategorií podle více detailů. Jednou kategorií jsou případy, kdy hovořící je známý a chceme zjistit, zda se jeho hlas nachází v nahraném signálu – to je možné tehdy, když byl součástí trénovací fáze detektoru. Potom se úloha mění na identifikaci jednoho konkrétního hovořícího. V případě, že žádný hovořící není znám, musí se použít techniky klastrování a segmentace. Cílem většiny aplikací tohoto druhu je to, aby nepřetržitě fungovaly: „poslouchaly“ přicházející zvuk zakódovaný v PCM vzorcích, detekovaly přítomnost hlasu (voice activity detection, VAD), dokázaly rozpoznat ticho a šum v pozadí a rozpoznaly překrývání řečníků. Když aplikace zaznamenají delší hlasový záznam, musí identifikovat hovořícího s určitou přesností. Při identifikaci jednoho hovořícího je přitom cílem identifikovat ho bez ohledu na významové hledisko věty.

Každý systém na identifikaci hovořícího se skládá ze dvou hlavních částí. Prvá je rozpoznání řečových parametrů z nahraného audio signálu, druhá je klasifikační metoda, která na základě už vybraných parametrů s určitou pravděpodobností určí hovořícího. Tyto systémy jsou většinou navrhovány pro konkrétní účel a zatím nejsou univerzální - navrhovatel aplikace musí na základě typu úlohy vybrat správnou kombinaci metod a jejich modifikací.

V případě rozpoznání řečových příkazů se implementuje systém na rozpoznání izolovaných slov. Nejúspěšnější a nejpoužívanější jsou ty, které pracují na principu HMM, statistického modelování řeči, obzvlášť ty, které používají jako základní jednotku pro modelování kontextově závislé fonémy. Když se používá pevně určená skupina příkazů, potom se mohou na modelování použít celá slova, a tak dosáhnout potenciálně lepší přesnosti (lépe zachycený koartikulační efekt).

Obecně jsou dvě kategorie postupů sledování gest uživatele: vzhled a postup založený na 3D modelu. Postup založený na 3D modelu porovnává vstupní parametry končetiny v 2D projekci 3D modelu končetiny. Postup založený na vzhledu používá obrazové vlastnosti pro modelování vizuálního vzhledu končetiny a porovnává s vybranými obrazovými vlastnostmi z video vstupu. Při druhém postupu výsledek závisí na schopnostech výpočetního zařízení. Když se používá RGB kamera, metody se zaměřují na sledování barvy kůže anebo tvaru gestikulující části těla. Avšak postup hlavně závisí na světelných podmínkách stejně jako na stabilitě popředí a pozadí sledovaného subjektu. Taktéž se ve vyhodnocované oblasti nemohou objevit jiné objekty barvy kůže anebo objekty ve tvaru končetiny, protože mohou zmást algoritmus. Infračervená hloubková kamera používá svůj vlastní zdroj IR světla, a je proto mnohem odolnější vůči světelným podmínkám scény. Navíc je kamera schopna poskytnout hloubkovou mapu, pseudo 3D obraz scény, což může být velmi užitečné při sledování gestikulujících částí těla, např. ruky.

V současnosti je několik metod, jak se dá implementovat ovládání a kontrola očima. Nejdůležitějším bodem je správná detekce oční zorničky. V HBB-Next projektu byla použita nejjednodušší a nejpřirozenější metoda, která využívá RGB kameru zařízení Kinect. Princip je následující: osoba sedící před monitorem se bude bez pohybu dívat na vyznačené body na obrazovce. Aplikace odměří vzdálenost hlavy od monitoru. Pro potřeby dalších výpočtů je třeba zadat i velikost monitoru a následně se na základě Pythagorovy věty dají vypočítat parametry pohybu zorniček – jejich úhel a pohyb. Aplikace určí maximální rozsah pohybu zorničky tak, že nasměruje uživatele, aby se podíval na okraje monitoru, a vypočítají se i úhly odkloněné zorničky od základní pozice. Při známé vzdálenosti hlavy od monitoru umíme tedy přepočítat rozptyl a úhly při změně polohy zorničky tak, aby bylo stále zabezpečeno ovládání.

Techniky pro rozpoznání obličeje byly podrobně popsány v kapitole Rozpoznávání obrazu. V reálném systému je definován seznam požadavků podle toho, co všechno systém musí/měl by/může:

- Systém musí identifikovat uživatele v místnosti na základě jeho obličeje, když patří do skupiny lokálních uživatelů.
- Systém musí rozpoznat uživatele a porovnat jeho profil s uloženými profily, bez přístupu na internet.
- Systém může identifikovat uživatele v místnosti na základě jeho obličeje, přičemž uživatel je neznámý (nepatří mezi lokální uživatele).
- Systém může rozpoznat uživatele i v tmavém prostředí.