Formalization for sign units creation based on 3d human model for Ukrainian sign language

Formalization for sign units creation based on 3d human model for Ukrainian sign language is proposed. A formal description and results of testing of the proposed approach are described.

Збережено в:
Бібліографічні деталі
Дата:2015
Автори: Krivonos, Yu.G., Krak, Yu.V., Barmak, O.V., EfImov, G.M.
Формат: Стаття
Мова:Ukrainian
Опубліковано: PROBLEMS IN PROGRAMMING 2015
Теми:
Онлайн доступ:https://pp.isofts.kiev.ua/index.php/ojs1/article/view/95
Теги: Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
Назва журналу:Problems in programming
Завантажити файл: Pdf

Репозитарії

Problems in programming
id pp_isofts_kiev_ua-article-95
record_format ojs
resource_txt_mv ppisoftskievua/d8/8f5378c470be42168a0812dd619e19d8.pdf
spelling pp_isofts_kiev_ua-article-952018-09-26T12:50:56Z Formalization for sign units creation based on 3d human model for Ukrainian sign language Формалізація жестоутворення за допомогою трьохмірної моделі людини для української жестової мови Krivonos, Yu.G. Krak, Yu.V. Barmak, O.V. EfImov, G.M. sign language UDC 004.8 Жестова мова УДК 004.8 Formalization for sign units creation based on 3d human model for Ukrainian sign language is proposed. A formal description and results of testing of the proposed approach are described. Запропоновано формалізацію для створення жестових одиниць за допомогою трьохмірної моделі людини для української жестової мови. Наведено формальний опис та результати тестування запропонованого підходу. PROBLEMS IN PROGRAMMING ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ ПРОБЛЕМИ ПРОГРАМУВАННЯ 2015-09-10 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/95 PROBLEMS IN PROGRAMMING; No 2-3 (2012) ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 2-3 (2012) ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 2-3 (2012) 1727-4907 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/95/94 Copyright (c) 2015 ПРОБЛЕМИ ПРОГРАМУВАННЯ
institution Problems in programming
baseUrl_str https://pp.isofts.kiev.ua/index.php/ojs1/oai
datestamp_date 2018-09-26T12:50:56Z
collection OJS
language Ukrainian
topic sign language
UDC 004.8
spellingShingle sign language
UDC 004.8
Krivonos, Yu.G.
Krak, Yu.V.
Barmak, O.V.
EfImov, G.M.
Formalization for sign units creation based on 3d human model for Ukrainian sign language
topic_facet sign language
UDC 004.8


Жестова мова
УДК 004.8
format Article
author Krivonos, Yu.G.
Krak, Yu.V.
Barmak, O.V.
EfImov, G.M.
author_facet Krivonos, Yu.G.
Krak, Yu.V.
Barmak, O.V.
EfImov, G.M.
author_sort Krivonos, Yu.G.
title Formalization for sign units creation based on 3d human model for Ukrainian sign language
title_short Formalization for sign units creation based on 3d human model for Ukrainian sign language
title_full Formalization for sign units creation based on 3d human model for Ukrainian sign language
title_fullStr Formalization for sign units creation based on 3d human model for Ukrainian sign language
title_full_unstemmed Formalization for sign units creation based on 3d human model for Ukrainian sign language
title_sort formalization for sign units creation based on 3d human model for ukrainian sign language
title_alt Формалізація жестоутворення за допомогою трьохмірної моделі людини для української жестової мови
description Formalization for sign units creation based on 3d human model for Ukrainian sign language is proposed. A formal description and results of testing of the proposed approach are described.
publisher PROBLEMS IN PROGRAMMING
publishDate 2015
url https://pp.isofts.kiev.ua/index.php/ojs1/article/view/95
work_keys_str_mv AT krivonosyug formalizationforsignunitscreationbasedon3dhumanmodelforukrainiansignlanguage
AT krakyuv formalizationforsignunitscreationbasedon3dhumanmodelforukrainiansignlanguage
AT barmakov formalizationforsignunitscreationbasedon3dhumanmodelforukrainiansignlanguage
AT efimovgm formalizationforsignunitscreationbasedon3dhumanmodelforukrainiansignlanguage
AT krivonosyug formalízacíâžestoutvorennâzadopomogoûtrʹohmírnoímodelílûdinidlâukraínsʹkoížestovoímovi
AT krakyuv formalízacíâžestoutvorennâzadopomogoûtrʹohmírnoímodelílûdinidlâukraínsʹkoížestovoímovi
AT barmakov formalízacíâžestoutvorennâzadopomogoûtrʹohmírnoímodelílûdinidlâukraínsʹkoížestovoímovi
AT efimovgm formalízacíâžestoutvorennâzadopomogoûtrʹohmírnoímodelílûdinidlâukraínsʹkoížestovoímovi
first_indexed 2025-07-17T09:38:01Z
last_indexed 2025-07-17T09:38:01Z
_version_ 1850409923694821376
fulltext Прикладне програмне забезпечення УДК 004.8 ФОРМАЛІЗАЦІЯ ЖЕСТОУТВОРЕННЯ ЗА ДОПОМОГОЮ ТРЬОХМІРНОЇ МОДЕЛІ ЛЮДИНИ ДЛЯ УКРАЇНСЬКОЇ ЖЕСТОВОЇ МОВИ Ю.Г. Кривонос, Ю.В. Крак, О.В. Бармак, Г.М. Єфімов Інститут кібернетики ім. В.М.Глушкова НАН України, 03680, Київ, МСП, проспект Академіка Глушкова, 40. Запропоновано формалізацію для створення жестових одиниць за допомогою трьохмірної моделі людини для української жестової мови. Наведено формальний опис та результати тестування запропонованого підходу. Formalization for sign units creation based on 3d human model for Ukrainian sign language is proposed. A formal description and results of testing of the proposed approach are described. Вступ і актуальність проблеми Жестова мова (ЖМ) є одним із основних засобів спілкування для людей з вадами слуху. У ЖМ для передачі інформації використовуються візуально-кінетичні засоби - жести рук, артикуляція губ, мімічні прояви емоцій тощо, які поєднують у собі як безпосередньо жести глухих людей, так і загальноприйняті рухи ( головою, тулубом тіла тощо). Українська ЖМ (УЖМ) поєднує у собі декілька різновидів жестової комунікації: дактильну абетку для передачі букв української абетки та ЖМ для передачі слів, мовних конструкцій та семантичних концептів. Система ЖМ розпадається на дві підсистеми: безпосередньо ЖМ та калькулюючу ЖМ, яка повністю копіює розмовну мову. Основне, що об’єднує всі жестові системи – це спосіб передачі та сприйняття інформації. Базовою смисловою одиницею тут виступає жест (візуально-кінетичний акт), в якому беруть участь руки, міміка обличчя та артикуляція губ. Кінетична природа жесту і його візуальне сприйняття зумовлюють особливості ЖМ: можливість певним чином розташувати жест у просторі, виконати одночасно два жести двома руками тощо. Лексичні жестові елементи і в самій ЖМ, і в дактильній абетці формуються практично однаково і можуть бути формалізовано описані наступним чином: за конфігурацією (форма руки або рук); за місцем виконання (де знаходяться руки, що виконують жест); за характером руху (як саме рухаються руки; що вони роблять). Такий підхід вперше запропоновано У.Стокоу [1], де для опису американської ЖМ застосовано фонологічний принцип для транскрибування жестів. Під фонологічним принципом розуміється розкладання будь-якого жесту на мінімальні регулярно повторювані жестові примітиви (хіреми). Хіреми, за концепцією Стокоу, визначаються по тому, де вони жестикулюються (наприклад, у чола, у щоки, на рівні грудей тощо), і як саме вони жестикулюються (наприклад, рука рухається вперед, здійснює хвилеподібні рухи тощо). Крім того, для хірем необхідна третя ознака - форма руки або рук. Ці три ознаки (місце виконання, спосіб утворення і форма руки) використовуються у всіх сучасних системах нотації ЖМ, що призначені для формалізації елементів жестового лексикону. Для комп’ютерної реалізації ЖМ і жестовий словник повинні бути певним чином записані, щоб комп'ютер міг обробляти і синтезувати жести. Для опису жесту за його ознаками є кілька різних систем нотації (жестової транскрипції), що дозволяють зафіксувати уявлення жесту в записі. Так, система нотації [1] базувалася на латинській системі письма, тобто для кодування хірем використовувалися букви латинського алфавіту, допоміжними елементами були арабські цифри і різні діакритики. Однак запропонований запис не підходив для освітніх цілей, оскільки був абсолютно не наочним, тому розроблялися інші системи нотацій ЖМ, що використовують символи, які більш наочно демонструють положення рук і їх переміщення. Одна з найбільш відомих систем нотації SignWriting [2], в якій знаки символізують міміку, рухи рук і тіла ЖМ і пишуться зверху вниз. До недоліків такої системи можна віднести дуже великий набір знаків (понад тисячу), наприклад, кожній специфічній формі руки відповідає окремий знак, що важко запам'ятати і використовувати на практиці. Набагато практичніше скоротити кількість окремих випадків конфігурації руки, описуючи їх як змінні (наприклад, кількість пальців, що показуються) при одній константі (формі долоні). Такій вимозі, наприклад, задовольняє система нотації жестів, запропонована у роботі [3], де виділяється більше 30 конфігурацій рук, близько 50 характеристик місця виконання жесту і більше 70 характеристик локалізації. У нотації [3] структура жесту складається з окремих елементів і має такі сталі характеристики: 1) форму руки (рук); 2) місце розташування жесту (жестовий простір); 3) характер руху. Перший елемент припускає строго певне положення долонь і напрямок пальців, він складається з трьох частин - форми руки, положення долоні, напрямки пальців, необхідних для правильного кодування (запису) та декодування (відтворення) окремих хірем. Другий елемент структури може виконуватися над головою, біля обличчя, на рівні плечей, шиї тощо. Локалізація кожного ©Ю.Г. Кривонос, Ю.В. Крак, О.В. Бармак, Г.М. Єфімов. 2012 ISSN 1727-4907. Проблеми програмування. 2012. № 2-3. Спеціальний 398 Прикладне програмне забезпечення жесту строго стала і зміна жестового простору впливає на сенсове значення жесту в російській ЖМ. За характером виконання жести поділяються на одноручні; дворучні з однаковою формою рук; дворучні з різною формою рук. На рис. 1 показано приклад кодування жесту – числівника «чотири». Перший знак (буква П) вказує на те, що жест виконується правою рукою; другий знак іконографічно вказує форму руки – чотири розведених пальці; третій символ схематично зображує розворот долоні – вона спрямована до себе, до корпусу того, хто говорить; четвертий знак вказує на орієнтацію долоні – пальцями вгору; останній символ означає, що жест виконується на рівні грудей людини. Найбільш широке поширення отримала система нотації HamNoSys (від англ. Hamburg Notation System) [4]. На початок 2011 року актуальна система HamNoSys версії 4.0 [5]. Вона відрізняється найбільшою пропрацьованістю і придатна для використання в комп'ютерних програмах за рахунок того, що її знаки переведені в систему кодування Unicode з відповідними комп'ютерними шрифтами. Інвентар HamNoSys дозволяє записати практично будь-який жест, що робить цю систему універсальною і придатною для будь-якої ЖМ. Фактично, за своїми функціями HamNoSys є аналогом міжнародного фонетичного алфавіту і використовується багатьма лінгвістами, що займаються дослідженням ЖМ. В системі HamNoSys спочатку задається форма кисті; потім її орієнтація за двома параметрами (напрям пальців і розворот кисті), і місце, де розташовується рука під час жесту і характер самого руху. Жести можуть бути одноручним і дворучними, тому в другому випадку до запису додаються оператори для дворучних жестів, що дозволяють поєднати дії обох рук у рамках одного висловлювання. Конфігурація пальців і долоні, задається кількома простими знаками (див. рис. 2), що символічно зображують долоню і пальці. Рис. 1. Приклад запису жесту – числівника «чотири» у нотації [3] Рис. 2. Символи HamNoSys, що призначені для формального запису конфігурації пальців та долоні Одним з найбільш ефективних засобів навчання і людино-машинної взаємодії є мультимедійні комп'ютерні програми, тому, створення інформаційних програм, здатних працювати з ЖМ (синтезувати і розпізнавати), є одним з пріоритетних завдань при роботі з глухими і слабочуючими людьми. Можливим варіантом комп'ютерного синтезу ЖМ є використання анімованого аватара людини, який керується за допомогою символів жестової нотації, описуючи необхідні конфігурації рук і різні типи рухів. Жести з лексикону в такій системі синтезу є ланцюжком символів в обраній нотації, тому словник може легко модифікуватися і розширюватися без використання спеціального обладнання. Мета роботи та постановка задачі Для УЖМ запропонована концепція [6] інформаційної технології невербального спілкування людей з вадами слуху. Концепція полягає у використанні мультимедійних можливостей сучасної комп’ютерної техніки та систем комунікацій а саме - використання просторових моделей людей для відтворення ЖМ. В рамках цієї концепції запропонована математична модель та її комп’ютерна реалізація для отримання та відтворення ЖМ за допомогою трьохмірних моделей людей. Для реалізації можливостей генерації анімації процесу мовлення за допомогою ЖМ з використанням віртуальних моделей людей були розроблені відповідні інформаційні та математичні моделі [7, 8]: 1) інформаційна та математична моделі для фіксації морфем (мінімально значимих одиниць) жестової мови; 2) технологія та відповідне програмне забезпечення для отримання, збереження та відтворення жестів. Запропонована технологія моделювання рухів віртуального персонажа для просторового відтворення жестової мови крім явних переваг перед іншими системами містить суттєвий недолік: необхідність оцифровування всієї множини жестів за допомогою носія ЖМ для кожної нової моделі. Затратність такого підходу як по часу так і по вартості спонукає до пошуку інших підходів, що враховують таке обмеження. Крім того існування систем нотацій для ЖМ [2–5] спонукає до пошуку такої моделі формалізації ЖМ, яка б дозволила описувати жести у цих системах. Метою даної роботи є розробка такої моделі формалізації для українського ЖМ. Отже, сформульована наступна постановка задачі: запропонувати модель для формалізації жестових одиниць з метою створення побудовника довільного жесту на віртуальній моделі з використанням фіксованих множин ключових станів, траєкторій тощо. Формальний опис фіксації жесту Процес відтворення жесту трьохмірною моделлю людини можна вважати анімацією з відповідною частотою різних станів скелетної моделі людини. Скелетна модель людини спрощено відтворює скелет живої людини. Її можна формалізувати як ієрархічну структуру яка складається з поєднаних кінематичних пар, які відтворюють основні кістки скелету людини. Сучасні пакети трьохмірного моделювання (Poser, 3D Studio Max) 399 Прикладне програмне забезпечення вміють генерувати анімацію з допомогою віртуальної статичної моделі та інформації про зміну відповідних кутів скелета. Отже, для формального опису процесу фіксації жесту можна використовувати множину, що відображає спрощений скелет людини та зміни значення кутів Ейлера і порядок їх застосування для відповідних кісток цього скелету з плином часу (дискретно, з відповідною частотою (1/30 сек тощо) [7, 8]: { }{ }MMdkHHH iiii ∈== ,,: , (1) де – i-а кістка скелету ( , – кількість кісток у скелеті); – індекс кістки-предка; – координати точки – кінця кістки у системі координат, яка пов’язана з початком цієї кістки; iH 1,,0 −= Ni L N k [ T iiii zyxd ,,= ] { }{ }j iiii orderMMM θ,: == , (2) де – для i-ї кістки значення кутів Ейлера та порядок застосувань обертань для кістки з плином часу; - порядок застосування обертання навколо відповідних координатних осей для i-ї кістки (1-XYZ, 2-XZY, 3-YXZ, 4-YZX, 5-ZXY, 6-ZYX); iM { 6,1L∈iorder } ( ){ }Z j iY j iX j i j i j i jj ϕϕϕθθθθθ ,,:),( === – множина зміни кутів Ейлера для i-ї кістки з плинном часу ( , K – кількість кадрів відтворення руху з заданою частотою). 1,,0 −= Kj L Для отримання множини кутів, що відтворюють процес анімації жестів використовувалась технологія «захоплення» руху (Motion Capture). Множина кутів отримувалась з людини – носія ЖМ. Це дозволило отримати досить реалістичні, людиноподібні рухи. Для синтезу процесу анімації жестів та міміки трьохмірною моделлю людини було запропоновано наступний формальний опис, який використовує відповідні множини параметрів та алгоритми роботи з ними. Трьохмірна модель людини, на якій реалізується процес анімації жестів та міміки, має наступні атрибути: – множина вершин трикутників для тріангуляції поверхні трьохмірної моделі людини; - множина нормалей до вершин; { },,{: zyxvvV ii == } }{ },,{: zyxnnN ii == { }},{: stttT ii == – множина текстурних координат до вершин; – множина індексів, які вказують порядок побудови трикутників з множини вершин; { },,{: 321 kkkVVV ind i ind i ind == } { }{ imgIII ii }== : – множина фотографічних зображень елементів моделі – текстури. Для моделювання скелетної анімації потрібно вміти розраховувати нові значення вершин трикутників (V ). Для цього запропоновано використовувати механізм скінінга. Скінінг можна означити як алгоритм прив’язки множини вершин трикутників, які означують поверхню моделі до значень кутів скелету. Тоді модель скелетної анімації можна формалізувати наступним чином: { }{ }iiimii OrderGlbdllkHMMHMH ,,},,{,: 1 L== – опис спрощеного скелету людини (ієрархія кісток) для реалізації скелетної анімації, де – i-а кістка скелету ( , – кількість кісток у скелеті); – індекс кістки-предка; iMH 1,,0 −=i NL N k { }mll L1 – множина індексів нащадків кістки, – координати точки – кінця кістки у системі координат, яка пов’язана з початком цієї кістки; – вектор для визначення координат кістки у глобальній системі координат, – порядок застосування обертання. [ T iiii zyxd ,,= ] Glb iOrder ( ){ }{ L,,: 11 WeightxIndexVerteSkinSkinSkin ii }== – множини вершин, які впливають на поточну вершину при зміні кутів. Скінінг розраховується для кожної вершини наступним чином: , ({∑ = = N i HHHjj iii JWJMIBMvv 0 ' *** ) } де – кількість кісток, пов’язаних з вершиною v; – інверсна матриця для кістки ; – матриця переміщення для кіски ; – ваговий коефіцієнт для застосування впливу точок кістки на вершину v. n iHIBM iH iHJM iH i Для моделювання анімації промовляння та емоційного забарвлення запропоновано використовувати механізм морфінгу. Морфінг можна означити як алгоритм плавного переходу від одного стану об’єкта до іншого. При використанні морфінгу використовуються лише опорні стани, з допомогою яких розраховуються проміжні стани і моделюється процес анімації. Модель морфінга міміки промовляння можна формалізувати наступним чином: HJW iH Відображення або побудова міміки на обличчі трьохмірної моделі досягається при застосуванні відносного (сегментного) морфінгу до моделі голови і мімічного процесу. Формула відносного морфінгу для М морфів у формалізмі моделі матиме наступний вигляд: , ∑ = ⋅+= M m mm TMwVV 1 ' де – вагові коефіцієнти, – меш базової моделі без морфінгу, – вхідний меш (морф) для блендінгу (blending). Результатом операції є лінійна комбінація мешів моделі та мімік. mw V mTM 400 Прикладне програмне забезпечення Метод сегментного морфінгу дає змогу: формувати декілька виразів обличчя на основі невеликої кількості морфів та змінювати стан обличчя при анімації промовляння. Додатковою перевагою сегментного морфінгу є те, що можна анімувати щелепу незалежно від губ та очі (кліпання), незалежно від емоційного прояву на обличчі. Модель відтворення жесту Для відтворення процесу анімації жестів та міміки трьохмірною моделлю людини було створено засіб, який реалізує скелетну (для відтворення жесту) та морфемну (для відтворення міміки промовляння та емоцій) анімацію. Реалізована відповідна програмна функціональність, що відтворює по означеним атрибутам модель людини (рис. 3) та, з використанням алгоритмів скінінга та морфінгу відтворює анімацію жестових одиниць (рис. 4) [7, 8]. Рис. 3. Відтворення трьохмірної моделі людини Рис. 4. Кадри анімації жесту «Ти» Для формалізації жесту використовується підхід [1], згідно якого, запропоновано розкласти жест на наступні елементи, які його однозначно характеризуватимуть: 1) конфігурацію пальців руки; 2) локалізацію виконання; 3) траєкторію (напрямок) та характер руху. Можливі у жестовій мові основні конфігурації пальців руки подаються за допомогою наступних параметрів (стан кожного пальця, взаємне положення пальців та долоні, положення долоні, напрямок пальців): • для кожного з пальців (великого, вказівного, середнього, безіменного та мізинця) введені наступні можливі стани: випрямлений, випрямлений в горизонтальному положенні, зігнутий, напівзігнутий, притиснений до долоні або інших пальців (табл. 1); Таблиця 1. Можливі стани пальців руки Пальці руки Можливі стани Великий Вказів- ний Середній Безіменний Мізинець 1. Випрямлений 2. Випрямлений в горизонтальному положенні 3. Зігнутий 4. Напівзігнутий 5. Притиснутий до долоні чи інших пальців • для подання взаємного положення пальців та долоні введені наступні ознаки: пальці розведені або зведені (стиснуті); лежать один на одному; притиснуті подушечками; притиснуті один поверх іншого (інших) (див. табл. 2); 401 Прикладне програмне забезпечення Таблиця 2. Взаємне положення пальців та долоні: Пальці руки Можливі положення Великий Вказівни й Середній Безіменний Мізинець 1. Розведені / Зведені (стиснуті) 2. Лежать один на одному 3. Притиснені подушечками 4. Притиснені один поверх іншого (інших) • положення долоні визначені наступними значеннями: вниз; вверх; до себе; від себе; вліво; вправо; одна до однієї горизонтально; одна долоня вверх, інша вниз, одна над іншою; одна до іншої вертикально, торкаються подушечками пальців; вверх, торкаючись одна до іншої тильною та внутрішньою сторонами; дві долоні до себе не торкаючись одна іншої; дона до іншою з торканням; одна вверх, інша вниз, торкаючись одна одної;обидві вниз з торканням одна одної сторонами вказівних пальців; обидві від себе з торканням одна однієї сторонами вказівних пальців; • напрямок пальців визначений наступними значеннями: вниз; вверх; від себе; до себе; вліво; вправо; горизонтально, назустріч з торканням; горизонтально, назустріч без торкання; вертикально, назустріч без торкання; вертикально, назустріч з торканням; горизонтально, в протилежні сторони з торканням; горизонтально, в протилежні сторони без торкання. Для визначення локалізації (місця) виконання жесту запропоновано використовувати наступні горизонтальні рівні: над маківкою; на рівні лобу; лінія брів; лінія очей, рівень правого і лівого вуха; рівень щік; рот; підборіддя; під підборіддям; лінія шиї; плечі; груди; талія; лінія нижче талії. Для кожного горизонтального рівня вказується вертикаль: зліва, в центрі, справа. Для кожної області (перетин горизонталі та вертикалі) вказується ознака: з дотиком чи без дотику. Напрямок та характер руху вказується за допомогою наступних характеристик: вліво, вправо, вверх, вниз, під кутом вліво вверх, під кутом вправо вверх, під кутом вправо вниз, під кутом вліво вниз, назустріч горизонтально, в протилежні сторони – горизонтально, назустріч вертикально, в різні сторони – вертикально, догори-донизу – за чергою, до себе, від себе. Для кожної перерахованої характеристики вказуються параметри: рухи повторюються чи ні; швидкість руху: звичайна, швидко, повільно (плавно), уривчасто. Крім того можливі рухи по певним траєкторіям: півкругом (вниз чи догори, від себе чи до себе), кругом (за часовою стрілкою чи проти), ромбом, хвилеподібно (дрібна чи глибока хвиля), криволінійно, східчастий рух тощо. У роботах [7, 8] авторами запропонована технологія для синтезу проміжних траєкторій-переходів між жестовими одиницями у конструкціях-реченнях. В рамках моделі, що використовується, знайдено функціональний перехід від кінцевого стану спрощеного скелету (вектор узагальнених координат – значення кутів обертання навколо відповідних осей при кожній ланці (кістці)) одного жесту до початкового стану (інший вектор узагальнених координат) іншого жесту. Даний функціональний перехід породжував траєкторію, що візуально близька до траєкторії людини при аналогічному переході. Для формалізації жесту та з метою подальшого використання механізму аглютинації (для створення жестових конструкцій типу речень) використано наступну множину: { }{ }i end i beg i end i beg iii SSffGGG θ,,,,: == , (3) де – конкретний жест який відповідає послідовності зміни станів спрощеного скелета з дискретним (з відповідною частотою) плином часу (1)(2); – номер стану, що відповідає початку жесту; – номер стану, що відповідає кінцю жесту; – координати кінців кісток спрощеного скелета для стану (у системі координат, пов’язаній з кореневою кісткою спрощеного скелета); – аналогічно для стану ; iG beg if end if ({ zyxS beg i ,,= )} beg if end iS end if iθ – множина змін кутів Ейлера (із (2)). Для розрахунку траєкторії (θ ) між жестами та значення узагальнених координат знаходяться наступним чином: lG mG ( ) ( ) ( )( ) 1,,1, , 1 0 −=−+= = − kikGG G lendmbegii lend Lθθθθ θθ (4) 402 Прикладне програмне забезпечення де ( )lend Gθ – значення узагальнених координат для останнього стану ( ) жесту ; end if lG ( )mbeg Gθ – значення узагальнених координат для першого стану ( ) жесту ; k – кількість станів між цими двома жестами. beg if mG Кількість станів між двома жестами є фактично часом за який потрібно перейти з кінцевого положення одного стану до початкового положення іншого. Для автоматичного визначення кількості станів обраховується коефіцієнт який є відношенням кількості станів переходу між двома жестами до відстані, на яку зроблено переміщення деякої точки скелету, тобто: L kkoef = , де k – кількість станів між двома положеннями (отриманими з людини-носія жестової мови при фіксованій швидкості показу жесту); L – відстань на яку перемістилась деяка точка скелету. Оцифрування жестів множини проводилось у одному (середньому) темпі. Розрахувавши коефіцієнт для різних жестів, отримується його середнє значення яке використовується для розрахунку кількості перехідних станів (К) між двома жестами. G koef За коефіцієнтом , та координатами (для кожного жесту) початку кісток спрощеного скелета для стану та для стану визначається кількість станів переходу від одного жесту до іншого (k): , де koef beg iS beg if end iS end if maxLkoefk ⋅= ( ) ( )( ) ⎭⎬ ⎫ ⎩⎨ ⎧ −= 2 max max m beg il end i GSGSL – максимальна відстань між двома відповідними точками-кінцями кожної кістки спрощеного скелету ( 1,,0 −= Ni L , – кількість кісток у скелеті) між станами (для жесту ) і (для жесту ). N end lf lG beg mf mG Враховуючи те, що існують деякі доволі складні жести (що відтворюють двома руками складні асоціації з реального життя), можливі ситуації коли отримана означеним чином траєкторія (4) приведе до колізії при відтворенні просторовою моделлю (неприродні перетини рук, занурення однієї руки в іншу тощо). Для подолання таких ситуацій пропонується обраховувати траєкторії з використанням проміжних станів. Тобто для таких складних рухів вводяться додаткові проміжні стани, розрахунок траєкторії через які, не приводитиме до колізій. Аналіз отриманих результатів Тестування алгоритму синтезу проміжних траєкторій-переходів між жестами показало їх спроможність та реалістичність для відтворення, побудованих на основі жестів, жестових конструкцій. На рис. 5 та 6 показано побудовані та реальні траєкторії для проміжних станів між жестами у жестових конструкціях. Можна констатувати, що побудовані, за допомогою запропонованого підходу, траєкторії реалістичні і відповідають оцифрованим траєкторіям-переходам. Рис. 5. Порівняння траєкторій руху при переході між жестами «ТИ» і «Початковий» Носій жесту Розрахунок Рис. 6. Кадри переходу від жесту «ТИ» до початкового жесту Якщо розкласти жест на елементи, що його однозначно характеризують (конфігурацію пальців руки; локалізацію виконання; траєкторію (напрямок) та характер руху), то стає можливим отримати довільний жест з Кістка rForeArm (оберт. навколо осі Z) обертання навколо осі X обертання навколо осі Y Носій жеста Розрахунок 403 Прикладне програмне забезпечення множин і ї уальних моделей. Використовуючи формалізований опис довільного жесту автомат орити on-line ресурс, що включатиме у себе жестівник основни ж ння я відображення що дозволяє підключати контекст WebGL; • Web матрицями. ю WebGL з використанням тег’а «canvas» HTML5 th="800" height="600"></canvas>. Прив’язка контест и (3) не за допомогою оцифрування руху носія ЖМ, а синтетичним шляхом. Запропонований формальний опис жесту складається з певних ключових станів узагальненого скелета (отриманих оцифруванням руху з носія ЖМ) та функціонально розрахованих траєкторій-рухів. Множини цих станів та траєкторій ф ксовані, тому за допомогою х, та алгоритму синтезу проміжних траєкторій стає можливим синтезувати довільний жест . Таким чином, за допомогою носіїв ЖМ створюється фіксована множина станів узагальненого скелета для довільної кількості вірт ично синтезується множина жестів для ЖМ. В рамках запропонованої авторами концепції [7, 8] інформаційної технології невербального спілкування людей з вадами слуху запропоновано ств х жестів та використання їх у жестових конструкціях. За допомогою такого ресурсу планується вирішити наступні задачі: 1) розширення кола фахівців в області сурдоперекладу; 2) створення автоматизованого перекладу жестової мови в режимі on-line для полегшення комунікації глухих та чуючих; 3) уніфікації естів для різних груп людей з вадами слуху; 4) створе нових жестів для різних областей знань. Для реалізації on-line ресурсу, запропонована WEB-реалізація для відтворення трьохмірного зображення у мережі Інтернет, що використовує запропоновану математичну та інформаційну моделі дл ЖМ за допомогою віртуальної моделі. Клієнтська частина on-line ресурсу розроблена за допомогою наступних технологій: • HTML5 – тому, що в ньому реалізований елемент «canvas», • JavaScript – для виклику функцій WebGL та маніпуляцій з вершинами моделі при скіннігу; GL – для рендерингу тривимірної графіки; • Бібліотека «webgl-utils.js» - для перетворень над Серверна частина реалізована на Microsoft ASP.NET 4.0. Рендерінг віртуальної моделі реалізовано за допомого : <canvas id="webgl-canvas" style="border: none;" wid у WebGL виконується у методі initGL: gl = canvas.getContext("experimental-webgl"). Нормалі, текстурні координати, індекси вершин - завантажуються до відео-пам’яті лише один раз – на етапі ініціалізації, оскільки вони не змінюються під час виконання: ... cubeVertexNormalBuffer = gl.createBuffer(); gl.bindBuffer(gl.ARRAY_BUFFER, cubeVertexNormalBuffer); gl.bufferData(gl.ARRAY_BUFFER, new window.Float32Array(vertexNormals), gl.STATIC_DRAW); cubeVertexNormalBuffer.itemSize = 3; cubeVertexNormalBuffer.numItems = vertexNormals.length; ... Так як, до вершин застосовується скіннінг, то вони розраховуються під час рендерингу кожного кадру: ... Skin(0, matIdent); cubeVertexPositionBuffer = gl.createBuffer(); gl.bindBuffer(gl.ARRAY_BUFFER, cubeVertexPositionBuffer); gl.bufferData(gl.ARRAY_BUFFER, new window.Float32Array(points), gl.STATIC_DRAW); cubeVertexPositionBuffer.itemSize = 3; cubeVertexPositionBuffer.numItems = points.length; ... Функція скіннігу реалізована рекурсивно і проходить по всіх вузлах моделі починаючи з кореневого. function Skin(nodeIndex, mat) { var m = mat4.multiply(mat, transforms[frameNum][nodeIndex]); var i; var v; var bone; var weight; for(i = 0; i < bones[nodeIndex].length; i++) { bone = bones[nodeIndex][i][0]; weight = bones[nodeIndex][i][1]; v = [vertices[bone * 3], vertices[bone * 3 + 1], vertices[bone * 3 + 2]]; points[bone * 3] += (v[0] * m[0] + v[1] * m[4] + v[2] * m[8] + m[12]) * weight; points[bone * 3 + 1] += (v[0] * m[1] + v[1] * m[5] + v[2] * m[9] + m[13]) * weight; points[bone * 3 + 2] += (v[0] * m[2] + v[1] * m[6] + v[2] * m[10] + m[14]) * weight; } for (i = 0; i < children[nodeIndex].length; i++) { Skin(children[nodeIndex][i], m); } } аметри моделі та інформація по ключПар стову ових параметрах значень кутів зберігаються у базі даних та ються для відправки його клієнту за допомогою відповідного http-hendler’а. викори 404 Прикладне програмне забезпечення Запропонована реалізація відтворення віртуальної моделі дозволяє отримати анімацію ЖМ у реальному часі на комп’ютерах з мінімальними вимогами: наявність відео-карти і браузера, що підтримує HTML5 і WebGL (рис. 7). Рис. 7. Рендерінг віртуальної моделі у браузері (HTML5, WebGL) Висновки стовуючи модель для фіксації рухів, що відтворюють УЖМ та носія ЖМ, була оцифрована 0 жестів. Використовуючи певні стани із цієї множини були синтезовані аналогічні жести. Порівн волить вирішити проблему відмінностей для одних і тих самих жестів, яка виник : станів пальців, взаємного положення пальців та долоні 1. Stokoe W.C. Sign Language Structure: An Outline of the Visual Communication Systems of the American Deaf. // Studies in Linguistics: Occasional papers. – 1960. – № 8. –78 p. Викори множина із 5 яння та відтворення жестів як із оцифрованої так і з синтезованої множин показало спроможність запропонованої технології досить реалістично відтворювати рухи на трьохмірній моделі. Синтез проміжних траєкторій між довільними жестами дозволив будувати довільні жестові конструкції – речення з множини синтезованих жестових одиниць. Розроблене, на основі запропонованої технології, програмне забезпечення може стати основою для створення стандарту ЖМ. Це доз ає від того, що жести, які вивчаються, містять особливості конкретного викладача. Запропонований підхід до формалізації жестоутворення дозволить отримувати множину одиниць ЖМ та підтримувати її у актуальному стані (додавання нових одиниць ЖМ не потребуватиме залучення носіїв ЖМ а буде синтезуватись як композиція сталих станів та синтез сталих траєкторій-рухів). Подальші дослідження направленні на вдосконалення запропонованої технології для формалізації жестоутворення для УЖМ: унормування необхідних множин , положень долоні та напрямків пальців; визначення для цих множин відповідних значень кутів для станів кісток узагальненого скелета; унормування необхідної множини локалізацій жестів та визначення відповідних значень кутів для кісток узагальненого скелета; формалізація функціональних побудовників траєкторій з урахуванням напрямку та характеру руху. 2. Система жестової нотації SignWriting // Доступ: http://www.signwriting.org/about/. Димскис Л.С. Изучаем жестовый язик. – 3. М.: Академия, 2002. – 128 c. r Sign Languages. An introductory guide. Hamburg: 4. Prillwitz S., Hanke T., et al. HamNoSys. Version 2.0; Hamburg Notation System fo Signum, – 1989. – 46 p. 5. Система жестової нотації Hamburg Notation System // Доступ: http://www.sign-lang.uni-hamburg.de/projects/hamnosys.html. 6. Кривонос Ю.Г [та ін.]. Інформаційна технологія для моделювання української мови жестів // Штучний інтелект. – 2009. – № 3. – C. 186–197. 7. Кривонос Ю.Г., Крак Ю.В., Бармак О.В. Моделювання рухів віртуального персонажа для просторового відтворення жестової мови // Реєстрація, зберігання і обробка даних. – 2010. – Т. 12, № 2. – С. 181–189. 8. Кривонос Ю.Г. Крак Ю.В., Бармак О.В. Комп'ютерне моделювання української жестової мови. // Системні дослідження та інформаційні технології. – 2011. – № 4. – С. 48–60. 405