• Nebyly nalezeny žádné výsledky

DIPLOMOVÁ PRÁCE Jan Ulrych Databáze znaků českého znakového jazyka

N/A
N/A
Protected

Academic year: 2022

Podíl "DIPLOMOVÁ PRÁCE Jan Ulrych Databáze znaků českého znakového jazyka"

Copied!
80
0
0

Načítání.... (zobrazit plný text nyní)

Fulltext

(1)

Univerzita Karlova v Praze Matematicko-fyzikální fakulta

DIPLOMOVÁ PRÁCE

Jan Ulrych

Databáze znaků českého znakového jazyka

Katedra softwarového inženýrství

Vedoucí diplomové práce: RNDr. Michal Kopecký, Ph. D.

Studijní program: Informatika, Softwarové systémy

2007

(2)

Tato práce by nevznikla bez pomoci s přípravou podkladů znakového jazyka. Děkuju proto Bc. Petru Vysučkovi z FF UK za určení minimálních párů znakového jazyka a Mgr. Lence Okrouhlíkové (rovněž z FF UK) za jejich zápis pomocí notace pro zápis znaků českého znakového jazyka.

Zvláště bych chtěl poděkovat vedoucímu této diplomové práce, kterým byl RNDr. Michal Kopecký, Ph. D., za mnoho užitečných rad při psaní této práce a několikanásobné pečlivé přeč- tení celého textu.

Prohlašuji, že jsem svou diplomovou práci napsal samostatně a výhradně s použitím citovaných pramenů. Souhlasím se zapůjčováním práce a jejím zveřejňováním.

V Praze dne 7. srpna 2007 Jan Ulrych

(3)

Obsah

1 Úvod 5

2 Teoretický úvod 7

2.1 Znakový jazyk . . . 7

2.2 Slovníky znakového jazyka . . . 12

2.3 Podobnost . . . 13

2.4 Minimální páry . . . 14

2.5 Rotace . . . 16

3 Existující řešení 18 3.1 Notace . . . 18

3.2 Podobnost, vyhledávání, rozpoznávání . . . 21

4 Návrh řešení 24 4.1 Modely . . . 24

4.2 Kritéria . . . 26

4.3 Podobnost stavů modelů . . . 30

4.4 Podobnost dvou interpolovaných modelů (znaků) . . . 31

4.5 Nedostatky zvoleného řešení . . . 35

5 Implementace 39 5.1 Požadavky na implementaci . . . 39

5.2 Původní stav slovníku ZNAK . . . 40

5.3 Návrh a implementace . . . 45

5.4 Uživatelská příručka . . . 54

6 Experimenty a testy 59 6.1 Stanovení vah kritérií . . . 59

6.2 Ukládání stavů kritérií . . . 60

6.3 Původní řešení implementované ve slovníku ZNAK . . . 60

6.4 Srovnání s výchozím řešením . . . 64

6.5 Výsledky navrženého algoritmu . . . 64

6.6 Srovnání . . . 67

7 Možnosti dalšího rozvoje 74

8 Závěr 76

Popis přiloženého CD 77

Literatura 79

(4)

Název práce: Databáze znaků českého znakového jazyka Autor: Jan Ulrych

Katedra (ústav): Katedra softwarového inženýrství Vedoucí diplomové práce: RNDr. Michal Kopecký, Ph. D.

e-mail vedoucího: michal.kopecky@mff.cuni.cz

Abstrakt: V této práci se zabýváme návrhem a implementací algoritmu pro porovnávání znaků Českého znakového jazyka na základě jejich vzájemné vizuální podobnosti. Navržený algoritmus analyzuje posloupnost pro znak charakteristických statických pozic znakující osoby v průběhu ukazování znaku. Geometrickou podobu ukazování znaku získáváme převodem znaku zapsa- ného v notaci na virtuální 3D model implementovaný ve slovníku ZNAK. Navržený algoritmus porovnávání znaků jsme zpětně do tohoto slovníku implementovali. Implementovaná rozšíření lze ve slovníku využít dvěma způsoby — pro zobrazení znaků, které jsou podobné aktuálně vybranému znaku a pro vyhledávání znaků ve slovníku na základě jejich vizuální podobnosti se zadanou předlohou.

Klíčová slova: Český znakový jazyk, vizuální podobnost, fonémická podobnost, vyhledávání, porovnávání

Title: Czech sign language database Author: Jan Ulrych

Department: Department of Software Engineering Supervisor: RNDr. Michal Kopecký, Ph. D.

Supervisor’s e-mail address: michal.kopecky@mff.cuni.cz

Abstract: In this diploma thesis we present an algorithm for evaluating similarity of pairs of signs in Czech sign language. The proposed algorithm is based on the sign visual appearance and compares static positions of signing person. Geometric form of sign is obtained by the transformation from its written notation to animated 3D model already implemented in the ZNAK dictionary. The proposed algorithm has been implemented into ZNAK and can be used in two ways — for retrieval of visually similar signs for currently selected sign and for searching signs in dictionary according to partial information obtained from the user.

Keywords: Czech sign language, search, visual similarity, phonetic similarity

(5)

Kapitola 1

Úvod

Český znakový jazyk je přirozeným jazykem Neslyšících. Na rozdíl od mluveného jazyka, na- příklad češtiny, se jedná o vizuálně-motorický jazyk, který se ukazuje pohyby rukou, těla a mi- mikou obličeje. Vzhledem k tomu, že znakový jazyk není odvozen z jazyka mluveného, nemá ani svoji psanou formu. Neexistence psané formy záznam znaků jazyka velmi komplikuje. Znak lze totiž nejlépe zaznamenat pomocí videosekvence, která ovšem nemůže být součástí tištěných slovníků. Slovníky a učebnice jsou přitom jediné typické aplikace, kde potřebujeme znakování znaku zaznamenat. Další možností záznamu znaku je buďto sled statických obrázků popisují- cích postup znakování, nebo obrázek naznačující znakování pomocí šipek. Tato forma už může být použita v tištěné verzi, a je proto také ve slovnících často používaná. Její použití ale značně komplikuje vyhledávání znaků při překladu ze znakového jazyka do jazyka mluveného. Elektro- nické verze slovníků, například v podobě multimediálního počítačového programu, mohou pro zobrazení znakování znaků s výhodou využít právě videosekvence. Nevýhoda spojená s vyhle- dáváním ovšem stále zůstává. Analýza videa či obrázku je sama o sobě extrémně náročná, navíc by musel existovat způsob, kterým může uživatel zadat znak nebo část, kterou hledá. Z této myšlenky vychází další možnost záznamu znaku, a to popis znaku v textové formě. Ve světě existuje mnoho notačních systémů, které se snaží zachytit znaky znakového jazyka co nejvěrněji a nejpřehledněji. V této práci využíváme jednu z notací, která vznikla v České republice na Filozofické fakultě Univerzity Karlovy v Praze. Jako mnoho jiných notací zachycuje pouze po- hyby rukou. Výhodou zápisu znaku v textové notaci je možnost jejího algoritmického převodu na přibližnou prostorovou animaci. Tuto animaci lze v elektronických verzích slovníků využít tam, kde není dočasně k dispozici obrázek nebo video. Navíc, jak v práci dále ukážeme, ji lze využít i pro zadávání a vyhledávání znaků. Zápis znaků pomocí některé z existujících notací může být použit v tištěném i elektronickém slovníku a lze jej mnohem lépe zpracovávat a vyhle- dávat podle něj, i když zejména u tištěné verze slovníku je jednoduchost takového vyhledávání diskutabilní. Zápis znaků pomocí textové notace má ovšem i své nevýhody. Hlavní nevýhodou je, že nejde o přirozený popis znaků, ale o uměle vymyšlený způsob jejich reprezentace. Mnoho Neslyšících tedy o textové notaci znaků nemusí mít vůbec žádnou představu, natož ji rutinně ovládat. Zjednodušení zápisu v některé z notací přinášejí různí průvodci, kteří vedou uživatele zapsáním znaku. Je-li k dispozici animovaný 3D model, který dosud vytvořený částečný notační zápis vizualizuje, může si na něm uživatel ověřit, zda vytvořený zápis reprezentuje takový znak, jaký skutečně zamýšlel. Problémem, na který bylo nutné při návrhu práce brát zřetel, je rovněž možná nejednoznačnost v zápisu znaku v textové notaci. Některé znaky mohou být zapsány více způsoby, a to díky ne zcela stejnému znakování různými osobami, i díky ne zcela stejnému vnímání znakování různými osobami.

Cílem této práce je navrhnout mechanismus porovnávání a vyhledávání znaků českého zna- kového jazyka na základě částečné informace o jejich podobě. Práce se proto zaměřuje na návrh a implementaci algoritmu pro určování vzájemné podobnosti znaků vzhledem k jejich vizuální podobě. Vyhledávání neúplného znaku, kdy si tazatel pamatuje pouze charakteristické části celého znaku, pak realizujeme s pomocí nalezení nejpodobnějších znaků v databázi znaků.

Základní pojmy, které jsou společné pro celou práci, jsou popsány v kapitole 2 Teoretický úvod. Popis několika existujících řešení pro porovnávání znaků znakových jazyků jsme provedli

(6)

v kapitole 3 Existující řešení. Hlavní částí práce je vlastní návrh algoritmu pro porovnávání znaků Českého znakového jazyka, který je detailně popsán v kapitole4 Návrh řešení. Toto řešení může být využito jak pro vyhledávání neúplných znaků, tak i pro nalezení homonym — znaků, které se stejně/podobně znakují, ale mají různý význam. Návrh je přizpůsoben existujícímu slovníku ZNAK [1], do něhož byl algoritmus implementován. Výhodou tohoto slovníku je již implementovaná animace znaku zadaného v textové notaci pomocí virtuálního trojrozměrného modelu osoby. Této vlastnosti jsme využili k návrhu porovnávání znaků na základě jejich geo- metrické podobnosti, na rozdíl od podobnosti založené na notaci samotné. Implementační část je popsána v kapitole5 Implementace, jejíž součástí je i uživatelská příručka popisující přidané i upravené funkce slovníku. Výsledky porovnávání znaků na testovacích datech jsou uvedeny v kapitole6 Experimenty a testy. Při práci na návrhu algoritmu pro porovnávání znaků jsme narazili na řadu myšlenek, kterými by bylo možné v této práci pokračovat. Ty jsou stručně popsány v kapitole7 Možnosti dalšího rozvoje. Součástí práce je i instalační CD se slovníkem ZNAK, do něhož byl implementován navržený algoritmus porovnávání znaků. Popis obsahu CD a návod na instalaci je v kapitole8 Popis přiloženého CD.

(7)

Kapitola 2

Teoretický úvod

2.1 Znakový jazyk

V této kapitole blíže vysvětlíme obecné pojmy, z nichž některé jsme používali už v úvodu této práce. Tyto pojmy budeme používat i v dalším textu a ne vždy se lze spolehnout na intuitivní pochopení jejich významu. Představíme slovník ZNAK a řekneme více o porovnávání znaků a podobnosti.

2.1.1 Základní pojmy

Následující pojmy čerpáme z [2].

Znakový jazyk je přirozený jazyk1 Neslyšících s vlastním slovníkem a vlastní gramatikou, který není odvozený z mluveného jazyka. Od mluveného jazyka se liší i způsobem své existence. Mluvené jazyky jsou tzv. jazyky audio-orální, které se

”slyší a mluví“ a mají svoji psanou podobu. Naproti tomu znakové jazyky jsou vizuálně-motorické, které se

”vidí a ukazují“. Jsou produkovány v trojrozměrném prostoru a psanou podobu postrádají.

Neexistuje jediný celosvětový — univerzální — znakový jazyk. Většina národů má své národní znakové jazyky, které se vyvíjely v dané společnosti a přestože mají mnohdy společný základ, navzájem se výrazně liší.

Národní znakový jazyk je obecné pojmenování pro znakový jazyk Neslyšících nějakého ná- roda.

Český znakový jazyk (ČZJ) je konkrétní formou znakového jazyka, která je hlavní formou komunikace českých Neslyšících. ČZJ je národním znakovým jazykem. Od ostatních ná- rodních znakových jazyků, ale i od češtiny, se liší svým slovníkem a gramatikou, která jednotlivé znaky spojuje ve složitější významové celky.

Znakovaná čeština je umělý jazykový systém založený na gramatice češtiny. Znakovaná češ- tina je využívána k vyučování češtiny u neslyšících dětí a k tlumočení neslyšícím lidem.

Přestože znakovaná čeština čerpá slovní zásobu ze znakového jazyka, obsahuje další prvky, které jsou odvozené gramatiky češtiny. Zejména se jedná o zachycení struktury mluvené češtiny. Jeho velkým významem je také výuka psané češtiny.

Znaková řeč je termín stanovený Zákonem o znakové řeči č. 155/1998 Sb. a rozumí se jím znakový jazyk a znakovaná čeština.

Slovo budeme dále používat jako termín pro označení prvku českého jazyka ve významu, na který jsme zvyklí.

Znak budeme dále používat jako termín pro označení prvku znakového jazyka. Pro zvýšení čitelnosti textu budeme všechny znaky v textu uvádět bezpatkovým písmem velkými písmeny, napříkladSPRAVEDLNOST.

1jazyk = systém jednotek a pravidel jejich spojování

(8)

Čeština: Chceš vodu, čaj, nebo Coca-colu?

ČZJ: CHTÍT VODA ČAJ KOLA CHTÍT

Čeština: Máma pojede v květnu v neděli do Polska.

ČZJ: KVĚTEN NEDĚLE MÁMA JET POLSKO Čeština: Prodám bílé kolo a koupím si hnědého koně.

ČZJ: KOLO BÍLÝ PRODAT KOUPIT KŮŇ HNĚDÝ

Čeština: V obchodě jsem si objednal knihy a zaplatil jsem je.

ČZJ: OBCHOD DŮM JÍT DOVNITŘ KOUPIT KNIHA ZAPLATIT KONEC Tabulka 2.1: Slovosled vět v češtině a ČZJ

Znakovat, znakování, ukazování znaku označujeme projev osoby ve znakovém jazyce.

Příklad

Pro lepší pochopení rozdílu mezi českým znakovým jazykem a českým jazykem je v tabulce 2.1 uvedeno několik příkladů, které ukazují rozdíl v konstrukci vět v obou jazycích. Věty zapsala Mgr. Lenka Okrouhlíková2. Slova uvedená v řádcích ČZJ představují jednotlivé znaky ČZJ.

Znak znakového jazyka obecně nemusí odpovídat slovu českého jazyka. Mnoho znaků zna- kového jazyka mnohdy odpovídá spíše větě nebo fragmentu věty.

2.1.2 Notace znakového jazyka

Na rozdíl od češtiny, která má podobu mluvenou, vnímanou sluchem, a psanou, vnímanou zrakem, má znakový jazyk jen podobu vizuálně-motorickou. Je založen na tvarech, pozicích a pohybu, a vnímá se zrakem. Tato forma je velmi obtížně graficky zachytitelná. Proto je důležitý popis pomocí obrázku, či ještě lépe krátkého videozáznamu, který znak téměř dokonale a názorně ukazuje.

Na druhou stranu, video či obrázek je obtížně automaticky zpracovatelný a špatně se v nich vyhledává. Navíc video i obrázek zachycují znakování pouze z určitého úhlu pohledu — jedná se o projekci do dvourozměrného prostoru. Tím se některé pohyby mohou stát méně zřetelnými nebo se mohou ztratit úplně. Při fyzickém pohledu na znakující osobu je však lidský mozek tento pohyb schopen zachytit.

Alternativou k videozáznamu či obrázku je zápis znaku pomocí formy textového popisu znaku.

Notační systémy

Absenci psané podoby znakového jazyka se lingvisté pokusili vyřešit vytvořením notačních sys- témů jednotlivých národních znakových jazyků. Manuální složka znaku (tvary, pohyby a pozice rukou) se zachycuje pomocí souboru značek, například pro místo artikulace, tvar ruky, pohyb.

Bohužel, žádný z vytvořených notačních systémů nebyl široce přijat a výhradně používán.

Obecným problémem notačních systémů je nejednoznačnost zápisu znaků. Některé znaky v nich mohou být zapsány různými způsoby. Navíc notační systém nemůže nikdy pokrýt všechny aspekty znakování, protože se vždy jedná o určitý druh zjednodušení.

Použitá notace

Notace, kterou tato práce uvádí a používá, byla použita pro zadávání a ukládání znaků ve slovníku ZNAK. Tato notace vychází z notace vytvořené na FF UK v Praze pod vedením prof.

Aleny Macurové [3]. Notace pracuje se statickým tělem a pohybujícíma se rukama. Statické tělo slouží pro určení místa znakování. Nemůže tak být zachycena mimika obličeje, ani pohyb těla,

2Lektorka na FF UK, zaměření komunikace neslyšících, členka České komory tlumočníků znakového jazyka

(9)

který se u některých znaků vyskytuje. Tato informace je tedy přepisem do notace ztracena.

Rozšíření notace provedl Karel Beneš, který systém obohatil o šikmé směry a dále podrobněji rozpracoval pohyby3. Další úpravy provedli autoři slovníku ZNAK s Mgr. Lenkou Okrouhlíko- vou, kteří notaci výrazně zjednodušili, díky čemuž je lépe automaticky zpracovatelná. Zejména omezili počet skupin znaků. Zápis ruky v této notaci se skládá ze dvou částí — popisu výchozí pozice a tvaru rukou při znakování a popisu samotného pohybu.

Zápis jedné ruky znaku v notaci má tvar

TAB DEZORI1 ORI2SIG, kde význam jednotlivých částí je následující:

TAB (tabula), umístění znaku v prostoru (místo, kde se znak provádí). Notace rozlišuje celkem 41 míst znakování, jejich kódy jsou na obrázku 2.1a. Na obrázcích 2.1b, 2.1c a 2.1d je vidět jejich prostorové uspořádání. Z obrázků je rovněž názorně vidět, že kódy pro levou (resp.

pravou) polovinu těla jsou zapisovány z pohledu znakující osoby.

DEZ (designator), tvar ruky (rukou). Notace rozlišuje 42 tvarů rukou, zobrazeny jsou na ob- rázku 2.2a.

ORI1 (orientation), orientace dlaně (vzhledem k tělu), zobrazeny na obrázku 2.2b; zapisuje se jako dolní index.

ORI2 (orientation), orientace prstů (vzhledem k tělu), zobrazeny na obrázku 2.2b; zapisuje se jako dolní index.

SIG (signator), pohyb ruky (rukou); zapisuje se jako horní index.

Složky TAB, DEZ, ORI1 a ORI2 popisují výchozí pozici ruky při znakování, složka SIG specifikuje pohyb, který je proveden vzhledem k výchozí pozici.

(a) Seznam kódů (b) Pohled zepředu (c) Pohled zleva (d) Perspektiva

Obrázek 2.1: Seznam míst znakování

Příklad

Zápis znakuSPRAVEDLNOSTjeqBagG9, kde jednotlivé složky zápisu jsou TAB = q — místo znakování je neutrální prostor, viz obrázek 2.1, DEZ = B — tvar dlaně pravé ruky ukazuje obrázek 2.3a,

ORI1 = a — orientace dlaně je doleva, ORI2 = g — orientace prstů je nahoru,

SIG =G9 — pohyb je půlobloukový pohyb od lokte, ruka od těla.

Výchozí pozice při znakování je zobrazena na obrázku 2.3b, koncová pozice na obrázku 2.3c.

3Karel Beneš svou práci nikdy samostatně nepublikoval, zmiňuje se o něm Bímová ve své diplomové práci.

(10)

(a) Tvary ruky (b) Orientace

Obrázek 2.2

(a) Tvar ruky (b) Výchozí pozice (c) Koncová pozice (d) Pohyb

Obrázek 2.3: ZnakSPRAVEDLNOST

Příklad

Zápis znakuVĚDĚTjer-exfáx0(r-,W)í1, kde jednotlivé složky zápisu jsou TAB = r- — místo znakování je pravý spánek, viz obrázek 2.1, DEZ = e — tvar dlaně pravé ruky ukazuje obrázek 2.4a, ORI1 = x — orientace dlaně je dozadu,

ORI2 = f — orientace prstů je doleva nahoru,

SIG =áx0(r-,W)í1 — pohyb je opakovaný pohyb dozadu s dotykem špičky ukazováčku na spánku. Podrobně:

1 je opakování pohybu nebo skupiny pohybů, která předchází tento symbol á. . .í je sekvence pohybů,

x je přímý pohyb dozadu,

0(. . . , . . .) je kontakt, první složka udává místo kontaktu, druhá pak nástroj kontaktu, r- je pravý spánek

W je špička ukazováčku

Výchozí pozice při znakování je zobrazena na obrázku 2.4b, koncová pozice na obrázku 2.4c.

Oproti notaci Karla Beneše byl zjednodušen systém dělení znaků do skupin podle typu artikulace (symetrie, kontakt, místo artikulace). V notaci existují pouze tři skupiny znaků:

Ax znaky artikulované jednou rukou;

(11)

(a) Tvar ruky (b) Výchozí pozice (c) Koncová pozice (d) Pohyb

Obrázek 2.4: ZnakVĚDĚT

B1 znaky artikulované oběma rukama, obě ruce aktivní;

B2 znaky artikulované oběma rukama, jedna ruka aktivní, druhá pasivní.

Skupina Ax jsou znaky znakované jednou (dominantní) rukou, což je obvykle ruka pravá.

Druhá ruka se znakování vůbec neúčastní, a proto se ani nezapisuje. Notace znaku ze skupiny Ax je tedy shodná s notací zápisu jedné ruky, tj.

Ax: TAB DEZORI1 ORI2SIG. Do této skupiny patří oba znaky uvedené v předchozích příkladech.

U obouručních znaků, což jsou znaky ze skupin B1 a B2, se ke znakování používají obě ruce. Kromě výchozích pozic a pohybu obou rukou (u znaku typu B2 pouze dominantní ruky) se navíc uvádí i výchozí vzájemná pozice rukou. Tu zachycuje složka

HA (hand arrangement), uspořádání rukou (vzájemná poloha rukou).

Forma zápisu obouručních znaků je

• B1: TAB DEZORI1 ORI2SIG HA TAB DEZORI1 ORI2SIG,

• B2: TAB DEZORI1 ORI2 HA TAB DEZORI1 ORI2SIG,

kde u skupiny B2 je zcela vynechán zápis pohybu u pasivní ruky. Vlevo od vzájemné po- lohy rukou (HA) je zapsána notace pro levou (pasivní) ruku, vpravo od HA je zapsána pravá (dominantní) ruka znaku, viz kapitola 8 v [1]

Například znakPOČASÍ, viz obrázek 2.5, se zapíše jakoqBawA91d qBdwA91a jednotlivé složky zápisu jsou následující:

TAB = q — místo znakování je neutrální prostor, viz obrázek 2.1, DEZ = B — tvar dlaně pravé ruky ukazuje obrázek 2.5a,

ORI1 = a — orientace dlaně je doprava, ORI2 = w — orientace prstů je dopředu,

SIG =A91 — pohyb je opakovaný kruhový pohyb, ruka od těla, HA =d — pravá ruka je vpravo od levé,

TAB = q — místo znakování je neutrální prostor, DEZ = B — tvar dlaně pravé ruky ukazuje obrázek 2.5a, ORI1 = d — orientace dlaně je doleva,

ORI2 = w — orientace prstů je dopředu,

SIG =A91 — pohyb je opakovaný kruhový pohyb, ruka od těla.

(12)

(a) Tvar ruky (b) Výchozí pozice

Obrázek 2.5: Znak POČASÍ

Jednotlivé parametry notace jsou výběrem z možností. Vybíráme vždy jedno z možných míst znakování pro každou ruku, jeden z možných tvarů ruky, jednu z možných vzájemných polohy rukou. Obdobně postupujeme u orientace dlaně a prstů.

Popis pohybu je mnohem složitější než ostatní parametry. Jednotlivé pohyby se skládají za sebe a není omezen jejich potenciální počet. Navíc mohou některé pohyby být prováděny současně (simultánní pohyby) a některé pohyby či skupiny pohybů mohou být modifikovány — pohyb (či skupina pohybů) může být krátký, prudký či opakovaný. Pokud chceme modifikovat skupinu pohybů, použijeme sekvenci pohybů — což je forma zápisu sdružující několik po sobě následujících pohybů, které jsou společně modifikovány, například se celá sekvence opakuje.

Uvnitř takové sekvence se mohou vyskytovat simultánní pohyby, ale ne sekvence. Simultánní pohyb se pak skládá jen z atomických pohybů. V příkladu zápisu znaku VĚDĚT je uvedeno i detailní vysvětlení zápisu pohybu. Pro podrobnější vysvětlení zápisu pohybu lze doporučit [1]

nebo [3].

2.2 Slovníky znakového jazyka

Přestože první slovníky znakových jazyků vznikaly již od 18. století, skutečné slovníky podle lexikografických zásad4 vznikaly až od 60. let 20. století, kdy byly jednotlivé národní znakové jazyky uznány za přirozené a začalo jejich lingvistické zkoumání.

2.2.1 Slovník ZNAK

Slovník, který vznikl v rámci SW projektu na MFF UK je obousměrným překladovým slovníkem mezi českým znakovým jazykem a českým jazykem. Cílem bylo vytvořit softwarové dílo, které by po lexikograficky korektním naplnění slovníku bylo kvalitním překladovým slovníkem z českého znakového jazyka do češtiny a z češtiny do českého znakového jazyka. Slovník pokrývá jak kódovací, tak dekódovací potřeby slyšících i Neslyšících. Podle lexikografických zásad v sobě vytvoření obousměrného slovníku vlastně skrývá vytvoření slovníků dvou. Pro každý z nich by měl hesla vybírat a tvořit někdo jiný. Práce na slovníku byla průběžně konzultována s Ústavem českého jazyka a teorie komunikace, obor Čeština v komunikaci Neslyšících.

Novou vlastností tohoto slovníku je především znakující 3D model, který na bázi notačního systému znakuje jednotlivé znaky. Uživateli slovníku poslouží jako doplněk videozáznamu se znakujícím mluvčím. Uživatel si generovanou animaci může prohlížet z libovolného pohledu a při libovolném zpomalení. Kromě toho může animace videozáznam částečně nahradit tam, kde videozáznam dosud není k dispozici. Pomocí 3D modelu je také možné uživatelsky přívětivě zadávat složky znaku pro vyhledávání. Obrázky a zobrazené 3D modely, týkající se znakování, jsou převzaty z tohoto programu.

Slovník je naplněn, a i v budoucnu by měl být naplňován výhradně znakovým jazykem a nikoli znakovanou češtinou, protože jinak by se stal jakýmsi hybridem. Slovník je otevřený

4[4] Lexikografie je jazykovědný úsek, který podle jistého postupu zpracovává lexikální jednotky, slova a slovní spojení v jednotlivá hesla a sestavuje z nich slovníky různých druhů a typů.

(13)

všem varietám (regionálním podobám znaku). O jakou konkrétní varietu se jedná, je možné zachytit v dalších charakteristikách jednotlivých lemmat.

Jednou z vlastností slovníku ZNAK je možnost vytváření testů pro zkoušení uživatele, na- příklad ze slovíček. Uživatel může definovat sadu zkušebních otázek tak, že vybere jedno slovo (resp. znak) a k němu několik dalších znaků (resp. slov), které představují možné varianty odpovědí, z nichž jsou některé správné.

Dalším druhem testů jsou testy s videosekvencí a následnými otázkami. Uživatel nejprve shlédne videosekvenci a poté odpovídá na otázky a odpověď vybírá z nabídnutého seznamu.

Otázky mohou být například

”Počet znaků videosekvence?“,

”Kolik bylo v videosekvenci zmí- něno nápojů?“,

”Jaký je druh znakované věty? (tázací/rozkazovací/oznamovací)“ a další. Testy tedy mohou být s jednou, nebo i více správnými odpověďmi. Vytváření testů se ve slovníku provádí na záložceVýuka a jsou vytvářeny uživatelem. Zatím nebyl navržen způsob pro jejich automatické generování.

Slovník umožňuje i jednoduché vyhledávání znaků znakového jazyka. Hledání ovšem probíhá pouze podle typu znaku, místa znakování a tvaru ruky. Pro znaky typu B1 a B2 lze zadat místo znakování a tvar ruky pro obě ruce. Mezi místy znakování, resp. tvary ruky, je zavedena jednoduchá lineární metrika. Místa znakování, resp. tvary ruky, jsou seřazena do posloupnosti tak, aby podobná místa znakování, resp. podobné tvary ruky, ležela v této posloupnosti blízko u sebe. Vyhledávání tak obsahuje i jistou míru neurčitosti — ve výsledcích se mohou objevit i znaky, které nevyhovují přesně zadaným parametrům.

Podrobnější informace o slovníku lze nalézt v [1].

Znakující 3D model

Notace, v níž jsou znaky zadány do slovníku, je zpracována a převedena na 3D model virtuální osoby, která znakuje vybraný znak. Řešení implementované ve slovníku využívá k tomuto účelu jazyk VRML a přehrávač VRML skriptů.

Model znakující osoby vychází z použité notace a modelu lidské kostry. Model je tedy rea- lizován dvěma pažemi, každá je modelována 18 klouby (rameno, loket, zápěstí a tři klouby pro každý prst) a jejich rotacemi oproti výchozím pozicím.

Výsledkem převodu znaku zapsaného v notaci na 3D model je pro každý kloub seznam dvojic [rotace; čas, kdy má být tato rotace uskutečněna], a to pro obě ruce. Změna stavu kloubu z ak- tuálního natočení do natočení zadaného následujícím prvkem v seznamu rotací tohoto kloubu probíhá postupně pomocí lineární interpolace. Pohyb je proveden postupně (interpolovaně) mezi aktuálním stavem rotace kloubu (a časem daným u této rotace v seznamu rotací) a časem u prováděné rotace. Čas konce rotace je tedy čas začátku další rotace a mezi těmito dvěma časy je rotace kloubu lineárně interpolována. Všechny klouby mají v prvním prvku seznamu definovaný počáteční stav se stejným časovým indexem. Podle něj je rotace kloubu nastavena při inicializaci modelu bez jakékoliv interpolace.

Z této reprezentace znaku je následně vygenerován skript pro VRML prohlížeč, který provede animaci znakování.

2.3 Podobnost

Podobností se obvykle rozumí míra shody daných dvou objektů. Uvedeme několik příkladů:

• Podobnost dvou slov (editační vzdálenost) je vyjádřena minimálním potřebným počtem operací odstranění písmena, vložení písmena nebo záměna písmena pro změnu jednoho slova na druhé.

• Podobnost dvou barev může být definována jako jejich vzdálenost v prostoru RGB.

Podobností v této práci rozumíme míru vizuální shody dvou znaků znakového jazyka. Defi- nování podobnosti na znacích českého znakového jazyka lze provést několika způsoby:

• Podobnost lze odvodit pouze s pomocí notace znakového jazyka.

Výhodou je jednoduchost, jsme z ní schopni dobře poznat stejný pohyb, stejné místo, atd.

(14)

Nevýhodou je absence skutečné geometrické polohy rukou při znakování, hlavně neznáme vzdálenosti. Jeden znak může být v notaci zaznamenán více způsoby. To může být dáno různými osobami, které různě znakují tentýž znak, ale rovněž různým vnímáním znakování u osoby, která znak zapisuje.

• Podobnost lze rovněž odvodit pouze ze znalosti geometrické polohy rukou během znako- vání. Buď musíme pro každý znak zaznamenat polohu rukou při znakování, nebo, jako v našem případě, můžeme využít již existujícího převodu notace na animaci znakujícího 3D modelu.

Výhodou je podoba bližší realitě, mohou být snadno zahrnuty geometrické rozměry mo- delu, jako například poměr délek kostí v ruce. Navíc i při různém zápisu znakování téhož znaku nemusí vzájemná podobnost klesat tak, jako u předchozího způsobu, právě díky znalosti geometrie modelu. Oproti předchozímu bodu, lze takto vyhodnocovanou podob- nost znaků aplikovat na model získaný analýzou videozáznamu nebo model získaný po- mocí záznamu pozic těla znakující osoby, což je obvykle prováděno pomocí speciálních

”rukavic“, které zaznamenávají pozici lokte, orientaci ruky a ohyb prstů, případně další informace.

Nevýhodou je složitější porovnávání znaků. K dispozici jsou dvě základní metody — po- rovnávání statických pozic a detekce a porovnání pohybu. Porovnání statických pozic špatně řeší problém opačných pohybů, například kruhový pohyb doleva vs. kruhový po- hyb doprava. Metoda detekce pohybu může tento nedostatek odstranit. Je ale mnohem náročnější na implementaci. Složitá (a v některých situací nepřesná) je i analýza videozá- znamu.

• Kombinace předchozích dvou metod.

Výhodou je, že podobnost je pak založena na modelu, který bere v potaz geometrickou podobu znaku, ale rovněž využívá podobnost v zápisu notace, která může být v geomet- rické podobě těžko rozpoznatelná (viz. opačné pohyby v předchozím odstavci).

Nevýhodou je složitější realizace.

2.4 Minimální páry

Z důvodu praktického přínosu podobnosti je nutné při jejím definování vycházet z lidského vnímání znakování. Potřebujeme zjistit, které znaky jsou lidským okem a mozkem vnímány jako podobné. K tomuto účelu můžeme využít tzv. minimální páry. Dvojice znaků tvoří minimální pár, pokud je jeden znak převeditelný na druhý změnou jediného parametru — tvaru ruky, místa znakování, orientace prstů, orientace dlaně nebo změnou pohybu.

Pro naše účely není nezbytný předpoklad změny jediného parametru, může jich být změněno i více. Důraz je v našem případě kladen hlavně na vizuální podobnost. Budeme proto pojem minimální pár chápat volněji jako dvojici vizuálně podobných znaků. V práci uváděný seznam minimálních párů, byl dodán Bc. Petrem Vysučkem5. Jelikož je pro něj znaková řeč přirozeným jazykem, byl schopen uvedené minimální páry sepsat podle svého vnímání znakování. Jednotlivé minimální páry uvedené v tabulkách 2.2, 2.4 a 2.3, jsou od sebe odděleny vodorovnou čarou.

Ve sloupci poznámka uvádíme odlišnosti oproti titulku tabulky. Z přiložených notací znaků je vždy vidět, v čem se znaky minimálních párů mezi sebou liší.

Všimněme si, že minimální páryVĚDĚT—POCTIVÝ,MYSLET—SIROTEK,ZUBY—VEJCE aŽIVOT—ČEKATse liší i zápisem pohybu. Pohyb rukou při znakování je ovšem ve skutečnosti stejný. Důvod, proč se zápisy liší je, že díky jiné výchozí pozici znakování se při stejném pohybu liší i koncová pozice znakování. Zejména se jedná o případy, kdy znakování zahrnuje kontakt na těle, viz například dvojiceZUBY—VEJCE. Podobné případy lze najít i v tabulkách 2.4 a 2.3

5odborný asistent na FF UK (obor Čeština v komunikaci neslyšících), člen Asociace organizací neslyšících, nedoslýchavých a jejich přátel, člen expertní komise tlumočnické služby, předseda Pevnost — České centrum znakového jazyka

(15)

Znak Typ Notace Poznámka ŘEDITEL B1 .jykeáqcí1c k-ykqáyeí1

SPORT B1 .gykeáqcí1c h-ykqáyeí1

VĚDĚT Ax r-exfáx0(r-,W)í1 Rozdíl i v zápisu pohybu POCTIVÝ Ax .gexfáx0(.g,W)í1

MYSLET Ax r-Bxfá(A50(r-,S))í1 Rozdíl i v zápisu pohybu SIROTEK Ax uBxfá(A50(u,S))í1

ZUBY Ax oexgx0(o,W) Rozdíl i v zápisu pohybu

VEJCE Ax uexgx0(u,W)

ŽIVOT B1 .gDdtá(g0(.g,J))í1d h-Datá(g0(.g,J))í1 Rozdíl i v zápisu pohybu ČEKAT B1 .gDdtá(k0(.g,J))í1 d h-Datá(k0(.g,J))í1

BÁT SE B1 qdxlá4/daúí1 d qdxjá4/adúí1 Liší se i orientací ruky a pohybem MIMINKO B1 ydwfá4/daúí1 d dwhá4/daúí1

Tabulka 2.2: Minimální páry lišící se místem znakování

Znak Typ Notace Poznámka

UTAHANÝ Ax oExhG9 Liší se i orientací ZVRACET Ax oOagG9

MUSET Ax qdagG9 SPRAVEDLNOST Ax qBagG9

PRAVIDELNÝ B2 qdkd b qdatái0(S,S)í1 NEMOCNÝ B2 qpkd b qpatái0(S,S)í1

MOBIL Ax sdagy0(s,S) Liší se i orientací TELEFON Ax syxqy0(s,S)

VYCHOVAT B1 qvdwA91d qvawA91

POČASÍ B1 qBdwA91d qBawA91 MAMINKA Ax seeg0(s,S)j0(u,S)

Liší se i orientací a pohybem BABIČKA Ax sqg0(s,S) (j+(s)) 0(u,J)

HONEM B2 qBhe b qBjfái(0(GS,GS)w)wí1 Liší se i orientací PAPÍR B2 qadt b qaatái(0(S,S)i)ií1

VĚDĚT Ax r-exfáx0(r-,W)í1

Vyskytuje se i v tabulce 2.2 PAMATOVAT Ax r-Nxfáx0(r-,A)í1

Liší se i orientací a pohybem LITOVAT Ax r-axgáx0(r-,S)í1

ŠOK Ax r-Swgº

MYSLET Ax r-Bxfá(A50(r-,S))í1 Vyskytuje se i v tabulce 2.2 HLOUPÝ Ax rNxf(A60(r,A))1 Liší se i pohybem

DIVIT SE Ax r-exfA61

Tabulka 2.3: Minimální páry lišící se tvarem ruky

(16)

Znak Typ Notace Poznámka SVOBODA B1 ysxgº d xsxgº

MRÁZ B1 yswg° d xswg°

PROČ B2 qBdw d qBaw4/xú0(G,A)(4/xú+(C))

ODMÍTAT B2 qBdw c qCxa4/wú0(G,A)(4/wú¥(B))

SVATBA B2 qHdw e qHaw0(SH,SG)A90(SG,SH) Liší se pouze pohybem MILOST B2 qHdw c qHaw0(SG,SH)A90(SH,SG)

HLÍDAT B2 qslz n qvqgu0(J,G) KLAMAT B2 qslz e qvxgy0(K,G)

PONDĚLÍ Ax rbag0(r,S)S90(u,S) Liší se pouze orientací

KŮŇ Ax rbka0(r,S)S90(u,S)

POČÍTAČ B1 q6kw8 d q6kw8

Liší se pouze pohybem PIÁNO B1 q6kw(8agk):d q6kw(8dgk):

KOMPOT B1 qGlhA4

d qGjfA4

Liší se pouze pohybem VÝZKUM B1 qGlh(6k): d qGjf(6k):

Tabulka 2.4: Minimální páry lišící se pohybem i orientací

2.5 Rotace

Základním prvkem pro popis tvaru kostry v prostoru jsou rotace jednotlivých kloubů. Rotace je určena osou, kolem níž se ohyb provádí a úhlem natočení. Budeme používat rotace v homo- genním prostoru, tj. rotace kolem počátku soustavy souřadnic.

Definice 1. Rotace je dvojice (o, α), kdeo∈R3 je vektor v třírozměrném prostoru reprezen- tující osu rotace,α∈[0,2π]je úhel rotace. Pro vektor specifikující osu rotace platíkok= 1.

Zavedeme několik operací na rotacích, které budeme dále v textu využívat.

Důvodem, proč vůbec rotace zavádíme je jejich využití k otáčení systému souřadnic kolem zadané osy o daný úhel.

Definice 2. Nechťr= (o, α)je rotace,v∈R3 je vektor. Výsledkem použití rotacerna vektor vje dle [5] vektor

v0 =o(o·v) + (v−o(o·v)) cosα+ (v×o) sinα.

Geometrický význam uvedeného vztahu popisuje obrázek 2.6. Operaci aplikace rotace r na vektorvznačíme r(v).

Základní operací na rotacích je skládání rotací, která říká, že postupná aplikace dvou rotací na vektor má stejný efekt, jako aplikace složené rotace.

Definice 3. Buďte r a s rotace. Složením rotací r a s, značímer◦s, nazveme rotaci t, pro kterou platí

∀v∈R3:t(v) =s(r(v)).

V případě, že to zvýší čitelnost textu, budeme operaci skládání rotací nazývat sčítáním rotací.

Definice 4. Buď r = (o, γ) rotace, k ∈ R číslo. Potom r/αk = (o,γk). Operaci /α nazveme operací dělení úhlu rotace.

Definice 5. Buďte ra srotace. Rozdílem rotacír a s, značíme r−s, nazveme rotacit, pro kterou platí vztahr=s◦t.

Rozdílem rotacír a sje tedy rotace, jejímž složením s rotacíszískáme rotaci r (nebolico chybí rotacis do rotacer).

(17)

o(o·v) v0 v N

O

P α

Q

v×o N P

α

Q

Obrázek 2.6: Geometrický význam vztahu aplikace rotace na vektor.

2.5.1 Realizace operací nad rotacemi pomocí kvaternionů

Rotaci v homogenním prostoru lze reprezentovat kvaternionem, viz [8]. Operace nad rotacemi lze pak vyjádřit pomocí operací nad kvaterniony.

Definice 6. Kvaterniony jsou prvky nekomutativního tělesa, které jsou vytvořeny z reálných čísel přidáním prvkůi,j ak, pro něž platí

i2=j2=k2=ijk=−1.

Dle [6] lze každý kvaternion qpsát jako lineární kombinaci q=a1+a2i+a3j+a4k,

kdea1, a2,a3,a4∈R. Někdy bývají kvaterniony zapisovány jako dvojice (skalár; vektor), tj.

q=a1+a2i+a3j+a4k= (a1,a),

proa = (a2, a3, a4). Právě posledně uvedenou notaci s výhodou využijeme při převodu rotací na kvaterniony.

Rotace r= (v, α)je reprezentována kvaternionem q=

cosα 2

,vsinα 2

.

Dle [7] kvaternion q=a1+a2i+a3j+a4k reprezentuje rotaci r=

p

kpk,2 arccosa4

,

kdep= (a1, a2, a3)je vektor tvořený prvními třemi složkami kvaternionu.

Jsou-lif,grotace av,wpříslušné kvaterniony, pak dle [8] kvaternionvwreprezentuje rotaci f◦g.

Definice 7. Konjungovaný kvaternion ke kvaternionu w=a1+a2i+a3j+a4kje kvaternion w=a1−a2i−a3j−a4k.

Jsou-li f, g rotace a v, w příslušné kvaterniony, pak kvaternion wwwv reprezentuje rotaci f −g. Snadno nahlédneme, že takto definovaný rozdíl rotací splňuje vlastnost g◦(f−g) =f požadovanou v definici 5, neboť

w· wv

ww =ww wwv=v.

(18)

Kapitola 3

Existující řešení

V této kapitole stručně popíšeme existující řešení pro porovnávání znaků na základě jejich vizuální podobnosti. Všechna řešení jsou navržena pro jiné jazyky, než je Český znakový jazyk, ale mnoho principů je platných pro libovolný znakový jazyk.

3.1 Notace

Nejprve představíme dvě notace, které se používají pro zápis znakových jazyků, z nichž jedna je známá a používaná i u nás.

3.1.1 Stokoe notace

Vůbec první notací pro zápis znaků Amerického znakového jazyka byla notace vytvořená v roce 1960 v USA [9]. Jejím autorem je Dr. William C. Stokoe, po němž je dnes nazývána. Jedná se o notaci, která je fonémická, tj. jednotlivé symboly reprezentují fonémy znakového jazyka.

Foném je základní prvek jazyka, v případě znakového jazyka je to pohyb, například přímý pohyb, kruhový pohyb, spirálový pohyb, obloukový pohyb a mávání. Notace je lineární, je zapisovaná podobně jako slova psaného jazyka, a k zápisu používá latinskou abecedu. Běžně ale bývá používán speciální typ písma, který by měl zjednodušovat čtení. Každý znak v Stokoe notaci je zapsán jako trojice [místo znakování; tvar ruky; pohyb a orientace]. Z této notace vychází celá řada dalších notací, které ovšem vesměs jen zvětšují počet fonémů, či zjednodušují zápis jednotlivých složek znaku zvyšováním počtu složek. Ze Stokoe notace vychází i notace představená v kapitole2.1.2 Použitá notace.

Výhodou této notace — a samozřejmě dalších, které z ní vycházejí — je její lineární forma.

Jednotlivé symboly jsou zapisovány za sebou a lze jednoduše určit hranice mezi nimi. Místo znakování i tvar ruky jsou každý určeny jediným znakem, zbytek zápisu reprezentuje pohyb a orientaci. Taková notace je výborně automaticky zpracovatelná. Její hlavní nevýhodou je malé rozšíření mezi laickou veřejností, které je způsobeno neintuitivním zápisem znaků. Hlavní1 doménou použití je akademická sféra. Žádná z modifikací Stokoe notace nebyla nikdy široce přijata.

3.1.2 SignWriting

Notace vyvinutá v roce 1974 Valerií Sutton na University of Copenhagen v Dánsku [10]. Sig- nWriting představuje oproti Stokoe notaci zcela jiný způsob zápisu. Hlavním rozdílem je zápis znaků ve dvou rozměrech jako obrázku, který se skládá z několika symbolů. Ukazování znaku je dáno vzájemnou pozicí a natočením jednotlivých symbolů. Každý znak zapsaný v této notaci je popsán čtyřmi základními parametry — tvarem ruky, místem znakování, pohybem a mimikou obličeje.

Hlavní výhodou SignWriting oproti Stokoe notaci je její intuitivnější čitelnost pro člověka, například tvary rukou či místo znakování je vidět na první pohled. Notace je navíc psaná

1Tento typ notace byl ale často využíván i ve slovnících znakových jazyků

(19)

z pohledu znakující osoby, a tedy se podle ní dobře znakuje — jako bychom se viděli v zrcadle.

Do této notace byly přeloženy například i pohádky pro děti. Nevýhodou tohoto systému je jeho obtížné automatické zpracování bez zásahu lidské ruky.

SignWriting je známý i v České republice, zmiňují se o něm [13], [14]. Na obrázku 3.1 jsou zapsány některé znaky z minimálních párů popsané v kapitole2.4 Minimální páry. Můžeme tak porovnat zápisy těchto znaků v SignWriting notaci a v notaci používané ve slovníku ZNAK. Pro srovnání zápisu v SignWriting notaci s vizuální podobou znaku jsou uvedeny i výchozí pozice vygenerovaných VRML modelů. Za povšimnutí stojí znak MOBIL, který je zapsán ve dvou variantách a ukazuje tak nejednoznačnost ve znakování. Zajímavé je rovněž srovnání zápisu znakůMOBILaTELEFON. Ze SignWriting zápisu je vidět, že nejsou příliš podobné.

Zejména pro zpřístupnění znaků zapsaných v notaci SignWriting na webu byl navržen jazyk SWML (SignWriting Markup Language) [15]. Jazyk SWML je založen na jazyce XML a je omezen DTD schématem (viz [15]). SWML pouze popisuje umístění a orientaci jednotlivých symbolů v tzv. Sign Box, což je prostor, v němž je umístěn jeden znak. V tomto jazyce lze zapsat více znaků za sebou, dělit znaky do řádků a tvořit tak i celé dokumenty. Pro grafický výstup na webu se používají znaky ve formátu SVG. Pro správné zobrazení textu ve formátu SWML je nutný pochopitelně vhodný software. SWML je i vhodný formát pro automatické zpracování znaků zapsaných v SignWriting.

Vše o SignWriting a SWML je dostupné v [12].

3.1.3 Pozice rukou a rotace kloubů

Nejedná se sice přímo o notační systém, ale přesto jej zde popíšeme, protože je v praxi velmi užitečný. Znak není zapsán člověkem jako v notačních systémech. Místo toho jsou automaticky zjištěny pozice rukou při znakování. Existují tři základní způsoby, jak tyto údaje získat:

Analýza videozáznamu. Znakování je zaznamenáno na video, popř. i z více úhlů, a poté je videozáznam automaticky analyzován a jsou vypočteny pozice rukou, ohyb prstů a pří- padně další charakteristiky znaku. Z videozáznamu mohou být rozpoznány tvar rukou jako celek, například výběrem z předdefinovaných možností. Výhodou této metody je jednoduchost jejího použití, například u automatických tlumočníků, informačních panelů apod. Bohužel analýza videozáznamu není jednoduchá a navíc nemusí vždy dávat dobré výsledky, protože některé charakteristiky znaku nemusí být na videozáznamu dobře pa- trné. Věnuje se jí například [16].

Záznam znakování je v principu možné provést dvěma způsoby. Prvním je záznam kamerou, při kterém má osoba předvádějící pohyb má označeny klouby a další významné body těla výraznou barvou. Záznam je poté automaticky analyzován, přičemž označené body na těle tuto činnost významně ulehčují. Oproti předchozímu bodu se liší právě speciálním ozna- čením kloub a případně i speciálním pozadím scény. Druhou metodou je záznam pohybu pomocí speciálního obleku a rukavic, například [17], [18] nebo [19], které zaznamenávají pohyby rukou, orientace dlaní, ohyby prstů a případně další charakteristiky. Velkou výho- dou této techniky je její přesnost a jednoduchost na implementaci. Obtížné je naopak její použití, které nelze používat v běžném životě. Obvykle je její použití omezeno například na vkládání slov do slovníku. Tato i předchozí metoda výborně zachycují časovou složku znakování, tedy hlavně prudkost a rychlost pohybů.

Převod notace na virtuální model je další možností získání geometrického modelu. Tato metoda je specifická tím, že nejde o primární metodu převodu, tou je zápis znaků do notace, ale až o metodu sekundární. Lze ji použít pouze tam, kde už známe notaci znaku, například při vyhledávání znaků2 dle geometrické podoby, nebo při syntéze znakování

— informační kiosek, automatický překladač. Nelze ji použít například při rozpoznávání znakové řeči.

2myšleny znaky ve slovníku

(20)

(a)HLOUPÝ (b)HLOUPÝ (c)

PAMATOVAT

(d)

PAMATOVAT

(e)VEJCE (f)VEJCE (g)POCTIVÝ (h)POCTIVÝ

(i)PONDĚLÍ (j)PONDĚLÍ (k)TELEFON (l)TELEFON

(m)MOBIL (1) (n)MOBIL (1) (o)MOBIL (2) (p)MOBIL (2)

(q)MYSLET (r)MYSLET (s)NEMOCNÝ (t)NEMOCNÝ

(u)MUSET (v)MUSET (w)POČÍTAČ (x)POČÍTAČ Obrázek 3.1: Příklady znaků zapsaných v SignWriting, zdroj [11].

(21)

3.2 Podobnost, vyhledávání, rozpoznávání

Všechna hesla uvedená v nadpisu mají jedno společné. Ať už je úkolem provádět libovolnou činnost z nich, vždy se nakonec dostáváme k porovnávání dvou znaků. Nyní popíšeme několik návrhů vyhledávacích/porovnávacích metod pro znakové jazyky. Každá z nich je založena na jiném principu. Stejně tak je každá z nich navržena pro jiný znakový jazyk. To ale není příliš důležité, protože podstata znakování je ve všech jazycích stejná.

3.2.1 Vyhledávání v SignWriting

Grafická reprezentace znaků v notaci SignWriting je sice dobře čitelná pro člověka, ale auto- matické zpracování činí obtížným. Autoři v [21] popisují problémy, které jsou s vyhledáváním spojeny:

Typ pohybu je dobře definován díky reprezentaci různými symboly. Obtížné je ovšem algorit- micky určit část těla, které se pohyb týká. Navíc [22] ukazuje, že různé umístění některých symbolů nemusí obecně měnit význam zápisu, viz obrázek 3.2.

Obrázek 3.2: Tři zápisy znaku NÁPADv Brazilském znakovém jazyce.

Směr pohybu je podle autorů téměř nemožné zjistit. Rozdíl mezi horizontálním a vertikálním pohybem závisí na kontextu a jednoduše ho může určit pouze člověk.

Místo znakování lze poměrně dobře určit pokud znak obsahuje kontakt s tělem. V opačném případě lze místo znakování jen odhadovat.

Tvar ruky je velmi přesně popsán, zejména díky různým symbolům pro orientaci a tvar ruky.

Autoři dále navrhují algoritmus pro porovnávání znaků zapsaných v SignWriting, který by měl být implementován do slovníku Vlámského3znakového jazyka (Vlaamse Gebarentaal), který autoři implementují. V době psaní [21] se jednalo pouze o návrh. Algoritmus v té době nebyl implementován. Popsaný algoritmus hledá v databázi znaků takové znaky, které mají stejný typ kontaktu a tvar ruky. Výběr znaků je ponechán na databázi a provádí se hledání na shodu. Znaky, které byly vráceny z databáze jsou dále zpracovány. Hledá se shoda v místech kontaktů při znakování. Problém nastává v situaci, kdy je míst kontaktu více. Autoři zhruba navrhují míru relevance, podle níž je možné znaky seřadit pro uživatele.

Jiným pokusem o vyhledávání záznamů zapsaných v SignWriting je navržen v [22]. Tento článek popisuje porovnávání znaků pro eliminaci vlivu nejednoznačnosti zápisu. Na obrázku 3.2 je stejnými symboly třikrát zapsán tentýž znak. Přesto jsou tyto znaky z pohledu SignWriting různé, protože se liší pozice některých symbolů. Autoři článku navrhují algoritmus pro určení významově stejných znaků. Algoritmus označí dva znaky jako významově shodné, pouze pokud jsou stejného typu, tj. obsahují stejné symboly, a mají stejnou orientaci, ale mohou se lišit v jejich umístění. To, jak moc mohou být symboly od sebe v jednotlivých znacích vzdáleny, může uživatel ovlivnit nastavením parametrů algoritmu. Algoritmus sám o sobě pro nás není až tak podstatný. Autoři ovšem při práci narazili na problémy s různou důležitostí umístění některých symbolů. Například na obrázku 3.2 nezáleží na umístění šipky určující pohyb — všechny tři zápisy reprezentují tentýž znak. Naopak umístění znaku hvězdička, která reprezentuje kontakt, je podstatné. Hvězdička nemůže být posunuta jinam v takové míře jako šipka, aniž by se tím změnil význam znaku. Zde se ukazují další problémy, které je nutné uspokojivě vyřešit, aby už jen vyhledávání znaku na úplnou shodu poskytovalo dobré výsledky.

To, že je zápis pomocí SignWriting zpracovatelný i automaticky, ukazují například autoři v [23], kteří navrhli a implementovali systém pro animaci znaků zapsaných právě pomocí Sig- nWriting. Jako vstupní formát znaků využívají formát SWML. Animovaný model je imple- mentován pomocí standardizovaného H-Anim modelu člověka [24], což je standard pro popis

3severní část Belgie

(22)

humanoida ve formátu VRML97. Autoři dosáhli významných úspěchů v animování znaků v Sig- nWriting. Zároveň však upozorňují, že SignWriting neposkytuje pro některé znaky dostatečné množství informací pro automatické znakování. Zejména se jedná o velmi složité pohyby a o po- hyby zahrnující kontakt rukou nebo kontakt ruky na těle. V těchto případech je obtížné dosáh- nout dobrých výsledků. Přesto lze tyto problémy řešit, například analýzou ukazování znaku na člověku. Odtud lze vyextrahovat některé obecné závislosti pozic a orientací rukou, které mohou být následně automatickým systémem využity.

3.2.2 Vyhledávání ve Stokoe notaci

Autoři v [25] stručně popisují návrh a implementaci multimediálního slovníku Amerického zna- kového jazyka. Cílem je vytvořit slovník, který by netrpěl nedostatky, jako běžné tištěné slov- níky. Zejména se tedy jedná o zobrazení znaku ve formě videozáznamu a rozšíření možností vyhledávání znaků. Znaky jsou ve slovníku uloženy v Stokoe notaci a ke každému znaku je na- víc uložen videozáznam. Vyhledávání probíhá výhradně podle zápisu v notaci. Zajímavý krok, k němuž se autoři odhodlali, je maximální zjednodušení zadávání znaku při vyhledávání. Před- pokládali totiž, že uživatelé nebudou mít znalosti na dostatečně přesný popis znaku, zejména části udávající pohyb. Proto se rozhodli vytvořit jakési předdefinované skupiny obecných po- hybů, z nichž uživatel jen vybírá. Každý takový pohyb je zachycen ve velmi krátké videosekvenci a uživatel tak zvolí pohyb na základě vizuálního vjemu a vůbec se nedostane do styku s notací.

Toto zjednodušení má samozřejmě své výhody i nevýhody. Výhodou je zjednodušení zadávání dotazu z hlediska uživatele. Zhlediska implementace lze velmi omezeného množství možných do- tazů na pohyb využít k efektivnější, a hlavně rychlejší, implementaci vyhledávacích algoritmů.

K nevýhodám patří omezení pro vyjádření pohybu, které může uživatel zadat. Lze ovšem před- pokládat, že případným rozšířením možnosti výběru pohybu o další, složitější, vzory, by se tato nevýhoda minimalizovala. Vyhledání znaků pak nutně využívá jistý druhfuzzy algoritmu. Ten ovšem není dále popsán.

Z našeho pohledu jsou zajímavější vlastností parametry vyhledávání. Autoři umožňují vyhle- dávat podle počáteční a koncové pozice znakování, podle počátečního a koncového tvaru ruky a podle pohybu. U pozice a tvaru ruky může uživatel navíc zadat, zda má být hledání provedeno na přesnou shodu, nebo fuzzy. Tímto způsobem může uživatel dobře omezit vyhledávání.

3.2.3 Vyhledávání podle geometrické pozice

Hlavním cílem autorů v [20] je návrh a implementace automatického tlumočníka mezi japonš- tinou a Japonským znakovým jazykem. Tento úkol má dva důležité aspekty. Prvním je auto- matické rozpoznání znakování bez jakéhokoliv předzpracování člověkem. Druhým aspektem je rozpoznání znaků ve větách, tj. určení míst, kde jeden znak končí a druhý začíná.

Struktura celého systému je zobrazena na obrázku 3.3. Základním principem celého algo- ritmu je rozdělení znakování na základní prvky jazyka —fonémy, v obrázku nazývané chreme.

Kromě pohybů se do fonémů zahrnuje i pozice znakování a orientace rukou. Pro detekci kaž- dého pohybu je použit samostatný filtr. Jednotlivé fonémy jsou tak detekovány zcela nezávisle.

Autoři nepopisují přený algoritmus pro jejich rozpoznání.

Posloupnost fonémů je předána pro další zpracování, kterým je rozpoznání znaků. Pro tento účel byl vytvořen speciální model popisu znaku, který ilustruje obrázek 3.4. V tomto modelu obsahuje tzv.

”C-element“ (concurrent element) obsahuje fonémy stejného typu.

”S-element“

(sequential element) dále obsahuje několik současně znakovaných C-elementů. Znak znakového jazyka je reprezentován jako posloupnost několika S-elementů, viz obrázek 3.4. K rozpoznání znaků z jednotlivých fonémů jsou analyzovány časové vztahy mezi fonémy. Detekce C-elementů je provedena na základě analýzy časových vztahů — mezer a překryvů při provádění jednotli- vých fonémů. Autoři nepopisují konkrétní vztahy, které pro C-elementy mají platit. Rozpoznání znaků je provedeno porovnáním rozpoznaných S-elementů s S-elementy znaků v databázi. Au- toři dále popisují možné optimalizace tohoto kroku.

(23)

Obrázek 3.3: Struktura systému pro rozpoznávání znaků podle [20].

Obrázek 3.4: Model znaku podle [20].

(24)

Kapitola 4

Návrh řešení

Tato práce vychází a rozšiřuje [26], v níž je popsán návrh algoritmu pro porovnávání znaků českého znakového jazyka na základě jejich geometrické podoby. Navržený algoritmus ovšem porovnává pouze výchozí pozice při znakování.

V této diplomové práci navrhujeme algoritmus porovnávající znaky pouze na základě jejich geometrické reprezentace v prostoru, ovšem oproti [26] zahrnujeme i pohyb. Přestože máme ke každému znaku k dispozici i jeho notaci, rozhodli jsme se ji nevyužívat — ve smyslu přímého využití textové notace při porovnávání znaků. Výhodou řešení, které je založené čistě na geo- metrické podobě znaků je jednoduchost jeho aplikace pro různé účely. Navržený algoritmus tak lze implementovat nejen do slovníku ZNAK, ale i do mnoha jiných slovníků, které využívají znakující modely. Dokonce by bylo možné navržený algoritmus použít i pro rozpoznávání znaků, například za pomocí záznamu pohybu. Pro tento účel však algoritmus nebyl testován.

Navržený algoritmus využívá pro porovnávání znaků co největšího počtu charakteristik znaků. Každý znak je charakterizován osmi parametry — typem znaku, místem znakování, tva- rem ruky, orientací dlaně, orientací prstů, pohybem rukou, pohybem těla a mimikou. Všechny uvedené charakteristiky lze získat přímo ze znakujícího modelu nebo ze zaznamenaného pohybu znakující osoby. Vzhledem k tomu, že při návrhu vycházíme z geometrické reprezentace modelu získaného z notace, která nepopisuje mimiku ani pohyb těla, při porovnávání znaků budeme používat pouze prvních šest parametrů znaku.

Algoritmy pro výpočet podobnosti, které jsou známy hlavně z dokumentografických infor- mačních systémů musí být navrženy tak, aby byly rychlé i na kolekcích obsahujících miliony dokumentů. V tomto směru je návrh algoritmu pro výpočet podobnosti znaků znakového jazyka jednodušší. Nelze očekávat, že by ve slovníku vznikaly stejně objemné kolekce znaků. V tomto případě zacházíme s maximálně několika tisíci znaky, které jsou uloženy ve slovníku nebo da- tabázi. Při návrhu algoritmu pro porovnávání znaků si tak můžeme dovolit složitější výpočty.

Přesto se budeme snažit navrhnout výpočty tak, abychom minimalizovali časovou složitost vý- počtů, které je nutné provádět pro každou dvojici znaků. Toho lze dosáhnout jednak návrhem samotného algoritmu a dále i vhodnou implementací.

Cílem návrhu algoritmu je co nejlépe rozpoznávat minimální páry, které byly popsány v ka- pitole 2.4 Minimální páry. Předpokládáme totiž, že dvojice znaků z minimálních párů jsou podobnější, než dvojice znaků, v nichž je každý znak z jiného minimálního páru. Platnost tohoto předpokladu lze ověřit porovnáním notací znaků nebo prohlédnutím videozáznamu se znakováním minimálních párů, který je přiložen k této práci, viz8 Popis přiloženého CD. Testy kvality algoritmu jsou popsány v kapitole6 Experimenty a testy.

4.1 Modely

Výpočet podobnosti znaků je založen na geometrickém modelu znakující osoby, který je ge- nerován z notace popsané v kapitole 2.1.2 Použitá notace. Model obsahuje pouze informace o kostře obou rukou. Každá ruka obsahuje 18 kloubů, kterými jsou po řadě rameno, loket, zápěstí a tři klouby pro malíček, prsteník, prostředník, ukazovák a palec v pořadí od dlaně směrem ke konci prstu. Každému kloubu přísluší kost, která z něj vychází. Ramennímu kloubu

(25)

odpovídá kost ramenní, loketnímu kloubu kost loketní atd. Každá kost je charakterizována svoji relativní délkou.

Znakování každého znaku lze rozdělit do dvou fází:

• Nastavení rukou do výchozí pozice znakování, tj. natočení všech kloubů kostry o odpoví- dající úhel dle stanovené osy. Výsledkem je umístění rukou na místo znakování, správná orientace dlaně a prstů a nastavení tvaru ruky.

• Pohyb, tj. postupné změny v natočení kloubů, které animují pohyb v prostoru.

Pro výpočet podobnosti znaků využijeme obou charakteristik — výchozí pozice i pohybu.

Pohyb je rozložen na rotace kloubů v čase, jak bylo popsáno v kapitole 2.2.1 Slovník ZNAK. Podobnost znaků je vyhodnocena na základě podobnosti statických pozic ve stanovených oka- mžicích. Popis vzájemné podobnosti statických pozic je popsán v kapitole4.3 Podobnost stavů modelů.

Geometrický model znaku, který získáme převodem z notace obsahuje pro každý kloub seznam dvojic (čas; rotace), jak je popsáno v kapitole2.2.1 Znakující 3D model.

Definice 8. Vygenerovaný model znakuzje dvojice((L0, L1, . . . , L18),(R0, R1, . . . , R18)), v níž první (resp. druhá) složka je seznam časů a rotací pro klouby levé (resp. pravé) ruky. Konkrétně Li = ((ti,0, ui,0), . . . ,(ti,ni, ui,ni)), (resp. Ri = ((si,0, vi,0), . . . ,(si,mi, vi,mi))), kde ti,j (resp.

si,j) je čas, kdy má nastat rotaceui,j (resp.vi,j)i-tého kloubu levé (resp. pravé) ruky. Navíc platí, že seznam Li (resp. Ri) vždy obsahuje alespoň jeden prvek, a to se složkou ti,0 (resp.

si,0) rovnou hodnotě−1, která reprezentuje výchozí pozici znakování. Hodnota −1 je zvolena pouze z technických důvodů. Seznamy jsou setříděny podle času, tj. ti,k < ti,l⇔ k < l(resp.

si,k < si,l ⇔k < l). ti,1, . . . , ti,ni ∈[0,1](resp.si,1, . . . , si,mi ∈[0,1]). Rotace je relativní vůči nadřazené kosti v modelu. Pro zjištění absolutní orientace například loketní kosti v prostoru je proto nutné složit rotace v ramenním a loketním kloubu.

Z definice vygenerovaného modelu je vidět, že počty rotací mohou být v jednotlivých klou- bech různé. Dokonce ani v rámci jednoho znaku nemusí být definovány rotace všech kloubů pro daný čas.

Definice 9. Stavem modelu (pro čas t) znaku z nazveme trojici (t, l, r), kde t ∈ R je čas, v němž rotace kloubů levé (resp. pravé) ruky mají hodnoty uvedené v l = (l1, . . . , l18), resp.

r= (r1, . . . , r18), kdeli a ri jsou rotace proi= 1, . . . ,18.

Příkladem stavu modelu je výchozí stav geometrického modelu znaku, tj. výchozí pozice rukou při znakování.

Z předchozích odstavců je vidět, že z vygenerovaného modelu nemůžeme přímo získat stav modelu pro libovolný čast, a dokonce ani pro libovolný čas, který se ve vygenerovaném modelu vyskytuje. Z tohoto důvodu budeme interpolovat neznámé rotace pro zvolené časy. Nechť(ti, ri) a(ti+1, ri+1)jsou dvě dvojice z některého ze seznamůL1,. . .,L18,R1,. . .,R18vygenerovaného modelu. Pro libovolné t∈(t1, t2)bude rotace příslušná časutinterpolována z rotacíri a ri+1. Abychom mohli porovnávat stavy modelů dvou znaků, je nutné upravit vygenerovaný model tak, aby pro každý čas v první složce prvků seznamůLi,Ri, byly definovány rotace všech kloubů modelu. Potřebujeme tedy znát stav modelu pro každý čast vyskytující se ve vygenerovaném modelu. Modelu, který tuto podmínku splňuje budeme říkat interpolovaný model.

Definice 10. Interpolovaný stav modelu znaku z je stav(t,(l1, . . . , l18),(r1, . . . , r18))modelu znakuz, pro který platí:

1. je-li dvojice (t, s) v seznamu Li (resp. Ri) vygenerovaného modelu, pak li = s (resp.

ri=s).

2. jinak nechť t1 je největší čas menší než t, pro který platí bod 1 (existuje vždy), t2 je nejmenší čas větší než t, pro který platí bod 1 (nemusí existovat). Označme s1 rotaci příslušnou času t1 as2 rotaci příslušnou časut2, existuje-li. Pokudt2 neexistuje, jeli =

Odkazy

Související dokumenty

Na současném programu lze dále vylepšovat algoritmy pro měření, implementovat rozpoznávání znaků na dně nábojnice, paralelní zpracování všech dvojic dat a naimplemen-

Každému záznamu v první tabulce (ne nutně každému) je přiřazen nanejvýš jeden záznam druhé

chce umět sladit verbální a neverbální projev se chce naučit vést jednání a chce umět vytvořit zápis. nechce mít problémy se slohovými útvary, referátem počínaje,

chce umět sladit verbální a neverbální projev se chce naučit vést jednání a chce umět vytvořit zápis. nechce mít problémy se slohovými útvary, referátem počínaje,

chce umět sladit verbální a neverbální projev se chce naučit vést jednání a chce umět vytvořit zápis. nechce mít problémy se slohovými útvary, referátem počínaje,

chce umět sladit verbální a neverbální projev se chce naučit vést jednání a chce umět vytvořit zápis. nechce mít problémy se slohovými útvary, referátem počínaje,

Výstupní podmínky Úpravy nadefinované uživatelem jsou promítnuty do databáze a uživatel je o výsledku táto akce informován.. Alternativní toky

Popis českého znakového jazyka z úhlu pohledu kognitivní lingvistiky je ale na samém začátku (srov. Myslivečková; Hudáková; Vysuček 2001);.. diplomové práce z této