Spracovanie multimédií
Multimodálne rozhranie

Multimodálne rozhrania sú v súčasnosti veľmi populárne. Každý o nich hovorí – o tom, že sú veľmi prirodzené a obľúbené medzi používateľmi. Multimodálne rozhrania ponúkajú riešenie mnohých problémov s používateľským rozhraním a taktiež umožňujú aplikovať nové služby.

Multimodálne rozhranie predstavuje kombináciu viacerých modalít, čiže spôsobov interakcie s počítačovými systémami. Multimodálne rozhranie slúži na identifikáciu hovoriaceho rozpoznaním tváre a hlasu, teda využíva rozpoznanie a autentifikáciu používateľa pomocou foriem ako hlas, tvár, atď. Okrem toho sa multimodálne rozhranie používa aj na ovládanie set top boxu (STB) pomocou hlasu alebo gest.

Jedným z príkladov, kde je integrované multimodálne rozhranie, je projekt HBB-Next. Úlohou projektu je napomôcť zlučovaniu vysielania a internetu vyvinutím technológie s ohľadom na koncových používateľov. Projekt má obohatiť klasickú TV o sociálny aspekt – implementovať sociálne siete, možnosť prístupu k filmom z viacerých zariadení (TV, PC, mobil) a odporúčania k filmom. Taktiež má napomôcť mixovaniu vysielaných filmov, doplnkových videí na internete a filmov vytvorených používateľom.

HBB-Next je založený na modulárnej architektúre. Moduly v HBB (Hybrid Broadcast Broadband – hybridná širokopásmová televízia) sú navrhnuté tak, aby navzájom spolupracovali. Napríklad, ak používateľ vstúpi do miestnosti, systém ho rozpozná a automaticky sa nastaví podľa jeho požiadaviek. Ak potom používateľ otvorí aplikáciu AppStore, systém mu dovolí otvoriť, kúpiť a inštalovať zvolenú aplikáciu bez ďalšej autentifikácie. Každá aktivita alebo operácia používateľa môže vyžadovať niekoľko-násobnú autentifikáciu určitým bezpečnostným stupňom. Tu napríklad vidieť spoluprácu modulu rozpoznania tváre používateľa a modulu, ktorý zabezpečuje autentifikáciu.

Identifikácia viacerých hovoriacich vychádza z nahraného audio signálu, ktorý môže obsahovať vyhovorenia viacerých osôb. Táto úloha sa môže rozdeliť do niekoľkých kategórií podľa viacerých detailov. Jednou kategóriou sú prípady, keď hovoriaci je známy a chceme zistiť, či sa jeho hlas nachádza v nahranom signáli – to je možné vtedy, ak bol súčasťou trénovacej fázy detektora. Potom sa úloha mení na identifikáciu jedného konkrétneho hovoriaceho. V prípade, že žiaden hovoriaci nie je známy, musia sa použiť techniky klastrovania a segmentácie. Cieľom väčšiny aplikácií tohto druhu je to, aby nepretržite fungovali: „počúvali“ prichádzajúci zvuk zakódovaný v PCM vzorkách, detegovali prítomnosť hlasu (voice activity detection, VAD), dokázali rozpoznať ticho a šum v pozadí a rozpoznali prekrývanie rečníkov. Ak aplikácie zaznamenajú dlhší hlasový záznam, musia identifikovať hovoriaceho s určitou presnosťou. Pri identifikácii jedného hovoriaceho je pritom cieľom identifikovať ho bez ohľadu na významové hľadisko vety.

Každý systém na identifikáciu hovoriaceho pozostáva z dvoch hlavných častí. Prvá je rozpoznanie rečových parametrov z nahraného audio signálu, druhá je klasifikačná metóda, ktorá na základe už vybraných parametrov s určitou pravdepodobnosťou určí hovoriaceho. Tieto systémy sú väčšinou navrhované na konkrétny účel a zatiaľ nie sú univerzálne - navrhovateľ aplikácie musí na základe typu úlohy vybrať správnu kombináciu metód a ich modifikácií.

V prípade rozpoznania rečových príkazov sa implementuje systém na rozpoznanie izolovaných slov. Najúspešnejšie a najpoužívanejšie sú tie, ktoré pracujú na princípe HMM, štatistického modelovania reči, obzvlášť tie, ktoré používajú ako základnú jednotku pre modelovanie kontextovo závislé fonémy. Ak sa používa pevne určená skupina príkazov, potom sa môžu na modelovanie použiť celé slová, a tak dosiahnuť potenciálne lepšia presnosť (lepšie zachytený koartikulačný efekt).

Vo všeobecnosti sú dve kategórie postupov sledovania gest používateľa: vzhľad a postup založený na 3D modeli. Postup založený na 3D modeli porovnáva vstupné parametre končatiny v 2D projekcii 3D modelu končatiny. Postup založený na vzhľade používa obrazové vlastnosti na modelovanie vizuálneho vzhľadu končatiny a porovnáva s vybranými obrazovými vlastnosťami z video vstupu. Pri druhom postupe výsledok závisí od schopností výpočtového zariadenia. Ak sa používa RGB kamera, metódy sa zameriavajú na sledovanie farby kože alebo tvaru gestikulujúcej časti tela. Avšak postup vysoko závisí od svetelných podmienok rovnako ako od stability popredia a pozadia sledovaného subjektu. Taktiež sa vo vyhodnocovanej oblasti nemôžu objaviť iné objekty farby kože alebo objekty v tvare končatiny, pretože môžu zmiasť algoritmus. Infračervená hĺbková kamera používa svoj vlastný zdroj IR svetla, a je preto oveľa odolnejšia voči svetelným podmienkam scény. Navyše je kamera schopná poskytnúť hĺbkovú mapu, pseudo 3D obraz scény, čo môže byť veľmi užitočné pri sledovaní gestikulujúcich častí tela, napr. ruky.

V súčasnosti je niekoľko metód, ako sa dá implementovať ovládanie a kontrola očami. Najdôležitejším bodom je správna detekcia očnej zreničky. V HBB-Next projekte bola použitá najjednoduchšia a najprirodzenejšia metóda, ktorá využíva RGB kameru zariadenia Kinect. Princíp je nasledujúci: osoba sediaca pred monitorom bude bez pohybu pozerať na vyznačené body na obrazovke. Aplikácia odmeria vzdialenosť hlavy od monitora. Pre potreby ďalších výpočtov je potrebné zadať aj veľkosť monitora a následne sa na základe Pytagorovej vety dajú vypočítať parametre pohybu zreničiek – ich uhol a pohyb. Aplikácia určí maximálny rozsah pohybu zreničky tak, že nasmeruje používateľa, aby sa pozrel na okraje monitora, a vypočítajú sa aj uhly odklonenej zreničky od základnej pozície. Pri známej vzdialenosti hlavy od monitora vieme teda prepočítať rozptyl a uhly pri zmene polohy zreničky tak, aby bolo stále zabezpečené ovládanie.

Techniky pre rozpoznanie tváre boli podrobne popísane v kapitole Rozpoznanie obrazu. V reálnom systéme je definovaný zoznam požiadaviek podľa toho, čo všetko systém musí/mal by/môže:

- Systém musí identifikovať používateľa v miestnosti na základe jeho tváre, ak patrí do skupiny lokálnych používateľov.
- Systém musí rozpoznať používateľa a porovnať jeho profil s uloženými profilmi, bez prístupu na internet.
- Systém môže identifikovať používateľa v miestnosti na základe jeho tváre, pričom používateľ je neznámy (nepatrí medzi lokálnych používateľov).
- Systém môže rozpoznať používateľa aj v tmavom prostredí.