System wraz z biblioteką modułów dla zaawansowanej analizy i interaktywnej syntezy ruchu postaci ludzkiej. Motion. Dokumentacja techniczna projektu



Podobne dokumenty
Rozszerzony konspekt preskryptu do przedmiotu Podstawy Robotyki

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

MODEL MANIPULATORA O STRUKTURZE SZEREGOWEJ W PROGRAMACH CATIA I MATLAB MODEL OF SERIAL MANIPULATOR IN CATIA AND MATLAB

10. Redukcja wymiaru - metoda PCA

ANALIZA KINEMATYCZNA PALCÓW RĘKI

Rozszerzony konspekt preskryptu do przedmiotu Teoria Maszyn i Mechanizmów

Informatyka studia stacjonarne pierwszego stopnia

Wyznaczanie sił w przegubach maszyny o kinematyce równoległej w trakcie pracy, z wykorzystaniem metod numerycznych

RÓWNANIE DYNAMICZNE RUCHU KULISTEGO CIAŁA SZTYWNEGO W UKŁADZIE PARASOLA

Symulacje komputerowe

FIZYKA klasa 1 Liceum Ogólnokształcącego (4 letniego)

Jan Awrejcewicz- Mechanika Techniczna i Teoretyczna. Statyka. Kinematyka

OPISY PRZESTRZENNE I PRZEKSZTAŁCENIA

KINEMATYKA I DYNAMIKA CIAŁA STAŁEGO. dr inż. Janusz Zachwieja wykład opracowany na podstawie literatury

Opinia o pracy doktorskiej pt. On active disturbance rejection in robotic motion control autorstwa mgr inż. Rafała Madońskiego

Wizja maszynowa w robotyce i automatyzacji Kod przedmiotu

ANALIZA SEMANTYCZNA OBRAZU I DŹWIĘKU

Mechanika ogólna / Tadeusz Niezgodziński. - Wyd. 1, dodr. 5. Warszawa, Spis treści

Efekty kształcenia na kierunku AiR drugiego stopnia - Wiedza Wydziału Elektrotechniki, Automatyki i Informatyki Politechniki Opolskiej

Aproksymacja funkcji a regresja symboliczna

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka

METODY OBLICZENIOWE. Projekt nr 3.4. Dariusz Ostrowski, Wojciech Muła 2FD/L03

Równa Równ n a i n e i ru r ch u u ch u po tor t ze (równanie drogi) Prędkoś ędkoś w ru r ch u u ch pros pr t os ol t i ol n i io i wym

Techniki animacji komputerowej

ANALIZA OBCIĄŻEŃ JEDNOSTEK NAPĘDOWYCH DLA PRZESTRZENNYCH RUCHÓW AGROROBOTA

ROBOTYKA. Odwrotne zadanie kinematyki - projekt.

Roboty przemysłowe. Wprowadzenie

Spis treści. Wstęp Część I STATYKA

Notacja Denavita-Hartenberga

Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30

3. KINEMATYKA Kinematyka jest częścią mechaniki, która zajmuje się opisem ruchu ciał bez wnikania w jego przyczyny. Oznacza to, że nie interesuje nas

Sposoby modelowania układów dynamicznych. Pytania

Biomechanika Inżynierska

II. Równania autonomiczne. 1. Podstawowe pojęcia.

ZASTOSOWANIE RACHUNKU OPERATORÓW MIKUS- IŃSKIEGO W PEWNYCH ZAGADNIENIACH DYNAMIKI KONSTRUKCJI

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Kierunek i poziom studiów: Matematyka, studia I stopnia (licencjackie), rok I

Transformata Fouriera. Sylwia Kołoda Magdalena Pacek Krzysztof Kolago

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora.

Kierunek i poziom studiów: Matematyka, studia I stopnia (licencjackie), rok I

Tematy prac dyplomowych w Katedrze Awioniki i Sterowania. Studia: I stopnia (inżynierskie)

Wymagania edukacyjne z matematyki w klasie III gimnazjum

ANALIZA KINEMATYKI MANIPULATORÓW NA PRZYKŁADZIE ROBOTA LINIOWEGO O CZTERECH STOPNIACH SWOBODY

Szybkie prototypowanie w projektowaniu mechatronicznym

Zintegrowana teoria autyzmu Obliczenia płynowe w modelo

Fuzja sygnałów i filtry bayesowskie

Podstawy robotyki - opis przedmiotu

Tematy prac dyplomowych w Katedrze Awioniki i Sterowania Studia I stopnia (inżynierskie)

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

PRZEWODNIK PO PRZEDMIOCIE

SYSTEM BIOMETRYCZNY IDENTYFIKUJĄCY OSOBY NA PODSTAWIE CECH OSOBNICZYCH TWARZY. Autorzy: M. Lewicka, K. Stańczyk

Przedmowa 11 Ważniejsze oznaczenia 14 Spis skrótów i akronimów 15 Wstęp 21 W.1. Obraz naturalny i cyfrowe przetwarzanie obrazów 21 W.2.

Integracja systemu CAD/CAM Catia z bazą danych uchwytów obróbkowych MS Access za pomocą interfejsu API

Fizyka 1 Wróbel Wojciech. w poprzednim odcinku

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

Opis efektów kształcenia dla programu kształcenia (kierunkowe efekty kształcenia) WIEDZA. rozumie cywilizacyjne znaczenie matematyki i jej zastosowań

OpenAI Gym. Adam Szczepaniak, Kamil Walkowiak

Komputerowe Systemy Sterowania

Detekcja punktów zainteresowania

DIGITALIZACJA GEOMETRII WKŁADEK OSTRZOWYCH NA POTRZEBY SYMULACJI MES PROCESU OBRÓBKI SKRAWANIEM

Politechnika Wrocławska, Wydział Informatyki i Zarządzania. Modelowanie

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa

Diagnostyka procesów

PRZEWODNIK PO PRZEDMIOCIE

Kinematyka robotów mobilnych

Modelowanie i obliczenia techniczne. dr inż. Paweł Pełczyński

Algorytmy sztucznej inteligencji

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

INSTRUKCJA DO ĆWICZENIA NR 4

Nowe metody analizy i optymalizacji architektury złożonych sieci telekomunikacyjnych następnej generacji

Problem eliminacji nieprzystających elementów w zadaniu rozpoznania wzorca Marcin Luckner

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

KARTA PRZEDMIOTU. Techniki przetwarzania sygnałów, D1_3

UKŁADY WIELOCZŁONOWE Z WIĘZAMI JEDNOSTRONNYMI W ZASTOSOWANIU DO MODELOWANIA ZŁOŻONYCH UKŁADÓW MECHANICZNYCH

Manipulatory i roboty mobilne AR S1 semestr 5

Politechnika Warszawska Wydział Samochodów i Maszyn Roboczych Instytut Podstaw Budowy Maszyn Zakład Mechaniki

Relacja: III Seminarium Naukowe "Inżynierskie zastosowania technologii informatycznych"

Przygotowała Elżbieta Pastucha na podstawie CityGML OGC Standard for Photogrammetry by Thomas H. Kolbe, Claus Nagel, Alexandra Stadler

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

Manipulator OOO z systemem wizyjnym

O strukturze przestrzeni konfiguracji w trójwymiarowym ruchu obrotowym

W poszukiwaniu sensu w świecie widzialnym

Pattern Classification

Spacery losowe generowanie realizacji procesu losowego

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

RUCH OBROTOWY- MECHANIKA BRYŁY SZTYWNEJ

Maciej Oleksy Zenon Matuszyk

Zastosowanie stereowizji do śledzenia trajektorii obiektów w przestrzeni 3D

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY III

2.2 Opis części programowej

Systemy. Krzysztof Patan

RUCH OBROTOWY- MECHANIKA BRYŁY SZTYWNEJ

Sylabus do programu kształcenia obowiązującego od roku akademickiego 2012/13

Kierunek i poziom studiów: Matematyka, studia I stopnia (licencjackie), rok I

Systemy uczące się Lab 4

Modelowanie procesów współbieżnych

Informatyka I Lab 06, r.a. 2011/2012 prow. Sławomir Czarnecki. Zadania na laboratorium nr. 6

przetworzonego sygnału

Spis treści. Przedmowa... 7

Transkrypt:

PROGRAM OPERACYJNY INNOWACYJNA GOSPODARKA System wraz z biblioteką modułów dla zaawansowanej analizy i interaktywnej syntezy ruchu postaci ludzkiej Motion Dokumentacja techniczna projektu Wyciąg z raportu technicznego Zakres: Zadanie 2.1.2.Podsumowanie analizy i dekompozycji modelu ruchu wraz z zakresem podmodeli 1

Spis treści Rozdział 1: Wprowadzenie... 3 1.1 Cel dokumentu... 3 1.2 Charakterystyka problemu... 3 1.2.1 Złożonośd modelu ruchu... 3 1.2.2 Kompatybilnośd z systemami zewnętrznymi... 4 1.2.3 Zakres funkcjonalny modelu... 4 Rozdział 2: Dekompozycja modelu ruchu... 5 2.1 Architektura i wydzielenie obszarów modelu... 5 2.2 Obszar danych... 6 2.2.1 Rodzaje danych rozpatrywanych w ramach systemu... 6 2.2.2 Problematyka synchronizacji strumieni danych... 8 2.2.3 Zagadnienie parametryzacji danych... 9 2.3 Obszar modeli... 13 2.3.1 Model szkieletowy... 13 2.3.2 Model dynamiczny... 16 2.4 Obszar metod... 18 2.4.1 Metody podstawowe... 18 2.4.2 Metody przestrzenne... 18 2.4.3 Metody czasoprzestrzenne... 19 2.5 Obszar wyników... 20 2.6 Uwagi dotyczące specyfiki danych w systemie... 20 Rozdział 3: Podsumowanie... 22 Rozdział 4: Bibliografia... 23 2

Rozdział 1: Wprowadzenie 1.1 Cel dokumentu W ramach realizacji systemu analizy i syntezy ruchu niezbędne jest opracowanie modelu ruchu będącego podstawowym elementem wszystkich algorytmów wykorzystywanych w każdym module systemu. Zagadnienie to może byd bardzo szeroko rozumiane. Dlatego istotne jest zakreślenie minimalnych granic w ramach opracowywanego modelu, jakie są niezbędne do realizacji założonych zadao projektowych. Celem prezentowanego dokumentu jest podsumowanie przeprowadzonych założeo dotyczących wysokopoziomej dekompozycji modelu ruchu. Wybrane elementy modelu zostały przeanalizowane z większą szczegółowością. Wypracowane podstawy i założenia niezbędne będą w dalszej pracy do implementacji konkretnych algorytmów w ramach przygotowywanego systemu. 1.2 Charakterystyka problemu Modelowanie ruchu ma na celu opracowanie takiego sposobu opisu ruchu, aby możliwa była realizacja bardziej złożonych zadao, w tym także funkcjonalnych aspektów opracowywanego systemu ruchu. Model taki posiada szereg pośrednich i bezpośrednich uwarunkowao. 1.2.1 Złożoność modelu ruchu Poszczególne elementy modelu ruchu można rozpatrywad na różnym poziomie szczegółowości. Pod tym kątem należy rozpatrzed następujące kwestie: Zakres podmodeli składowych. Każdy podmodel zawiera opis odrębnych właściwości problemu. Z tego punktu widzenia należy rozpatrywad opis na różnym poziomie ogólności: modelu szkieletowego, dynamicznego oraz stochastycznego. Szczegółowośd podmodeli składowych. Należy przyjąd założenie, że wystarczy modelowad tylko te elementy zagadnienia ruchu, które są niezbędne do osiągnięcia założonych celów projektu. Dlatego też zostaną uwzględnione własności statyczne, dynamiczne oraz statystyczne modelu ruchu. W ramach modelu nie będą natomiast rozpatrywane kwestie: modelowania aktywacji mięśni przez neurony, charakterystyki mięśniowej, dokładnego odwzorowania wszystkich kości szkieletu, modelowania skóry postaci, modelowania ubrao, modelowania interakcji. Zakres danych przetwarzanych w ramach modelu. Planowana funkcjonalnośd systemu narzuca koniecznośd rejestracji i przetwarzania danych określonego rodzaju. Zakres danych będzie również wynikał z dostępnych urządzeo do akwizycji pomiarów. Należą do nich między innymi: dane wideo, kinematyczne, EMG, GFR. 3

Zakres metod dotyczących modelu. Istnieje bardzo dużo różnych metod dotyczących przetwarzania danych rozpatrywanych w ramach modelu ruchu. Niniejsze opracowanie ogranicza się do krótkiego omówienia głównych metod przetwarzania danych ruchu w zakresie metod podstawowych (związanych z parametryzacją przestrzeni), przestrzennych oraz czasoprzestrzennych. Zakres wyników pomiarów i przetwarzania. W ramach niniejszego dokumenty zakres wyników będzie omówiony skrótowo. Temat ten powinien byd rozwinięty niezależnie, gdyż zakres wyników potrzebnych do dalszych badao merytorycznych w projekcie wymaga zdefiniowania ze współpracą z grupą docelową użytkowników. 1.2.2 Kompatybilność z systemami zewnętrznymi Należy zwrócid uwagę, aby opracowywany model był kompatybilny z zastosowanymi systemami pomiarowymi. Dotyczy to następujących kwestii: Wspominanego już zakresu danych pomiarowych. Sposobu odczytu danych wejściowych i wewnętrznego sposobu reprezentacji danych. Kompatybilnością w zakresie struktur danych (np. w szczególności w zakresie spójności stosowanej struktury szkieletu). 1.2.3 Zakres funkcjonalny modelu Przy konstrukcji modelu ruchu założono, że powinien on spełniad wymagania funkcjonalne zdefiniowane w dwóch obszarach: możliwości przeprowadzania badao poprawności ruchu (aspekt medyczno-diagnostyczny), możliwości przetwarzania i syntezy sekwencji ruchu dla zastosowao komercyjnych (aspekt syntetyczny). Przyjęto modułową konstrukcję modelu, dzięki czemu możliwe jest jego dalsze rozszerzenie tak, aby zapewniał on odpowiednie własności dla szerszego zakresu funkcjonalnego systemu. 4

Rozdział 2: Dekompozycja modelu ruchu W oprcowaniu model ruchu przedstawiony zostanie w ramach fragmentu architektury systemu i będzie rozpatrywany w ramach następujących obszarów: model ruchu, metody, dane oraz wyniki. 2.1 Architektura i wydzielenie obszarów modelu Architektura systemu i dekompozycja modelu ruchu Modele Metody Dane Model stochastyczny / generatywny Model dynamiczny/fizyczny Model mięśniowy Model kolizji Model szkieletowy Graf szkieletu, specyfikacja parametrów, reprezentacja jednej ramki ruchu Filtr cząsteczkowy Metody przewidywanie i filtrowania danych ruchu Metody filtracji trajektorii Metody przekształceo Podstawowe Transformacje reprezentacji Przestrzenne Forward/backward kinematic Czasoprzestrzenne Operacje na trajektoriach Obserwacje / dane syntetyczne Dane kinematyczne Dane EMG Dane kinetyczne Dane video Wyniki Rysunek 2-1: Architektura obszarów systemu z dekompozycją modelu ruchu. W ramach architektury modelu wyróżnia się zagadnienia, w ramach których model może byd rozpatrywany: modele (rozumiane jako pod-modele ogólnego modelu ruchu), metody, dane oraz wyniki. 5

2.2 Obszar danych W ramach modułu danych rozpatruje się sposoby akwizycji, transformacji i przechowywania wyników będących rezultatem obserwacji obiektów wykonujących ruch. W ramach tego samego obszaru można także uwzględniad ten sam zestaw funkcjonalności do operowania na wynikach będących rezultatem nowej syntezy ruchu. 2.2.1 Rodzaje danych rozpatrywanych w ramach systemu W ramach systemu będzie przeprowadzana akwizycja różnego rodzaju danych reprezentujących ruch. Wśród najważniejszych typów przetwarzanej informacji należy uwzględnid następujące elementy. Dane video W ramach systemu ruchu będzie następowała akwizycja i przetwarzanie danych wideo. Tego rodzaju dane są określane jako dane nieprzetworzone stanowiące materiał do dalszej wstępnej analizy. Aktualnie zakłada się, że rejestracja danych wideo realizowana będzie przez zewnętrzny system śledzenia i zgrywania ruchu. Na ich podstawie system zgrywania ruchu (ang. motion capture) wyznacza oraz dostarcza zestawu danych kinematycznych. Jednakże w przyszłości możliwe jest także wykorzystywanie tego rodzaju danych do przetwarzania niezależnie od zewnętrznego systemu. Poziom przetworzenia Dane nieprzetworzone zapisywane bezpośrednio z kamery rejestrującej ruch. Objętośd Bardzo duża objętośd danych niezbędne kompresja przy zapisie i składowaniu. Objętośd dla skompresowanych danych może byd rzędu od 150 kb 1000 kb / sekundę rejestracji. Struktura Brak struktury znaczeniowej danych bezpośrednia klasyfikacja i analiza nie są możliwa. Przetwarzanie Wymaga przygotowania rozbudowanego toru przetwarzającego (algorytmy przetwarzania obrazów, analizy obrazu wideo) Wykorzystanie Potencjalnie wykorzystywane mogą byd w ramach wizualnej oceny wykonywanego ruchu. W przyszłości ocena taka może byd zautomatyzowana. Dane kinematyczne Podstawową funkcjonalnością opracowywanego systemu jest rejestracja oraz analiza danych kinematycznych. W ramach tego typu danych rozumie się zestaw informacji reprezentujących ruch wykonywany przez obserwowanego pacjenta. Na dane kinematyczne składa się następujące zestaw informacji wykorzystywanych na różnych etapach przetwarzania informacji o ruchu: Położenie czujników ruchu zapisane w przestrzeni translacji względnych lub bezwzględnych Konfiguracja łaocucha kinematycznego jest wyznaczana na podstawie analizy danych wideo, detekcji położenia czujników ruchu (zapis translacyjny) oraz z uwzględnieniem ograniczeo czasoprzestrzennych. 6

Dane mogą byd pogrupowane w struktury czasoprzestrzenne, które są reprezentowane w postaci wielowymiarowych trajektorii. Poziom przetworzenia Dane wstępnie przetworzone przez zewnętrzny system pobierania ruchu. Objętośd Dane nie są wymagające objętościowo dla krótkich sekwencji nie stosuje się kompresji. Objętośd danych nieskompresowanych może byd rzędu 20-50 kb / sek. Struktura Struktura danych wynika ze struktury przestrzennej oraz czasoprzestrzennej (definicja trajektorii). Przetwarzanie Metody przetwarzające są specyficzne dla reprezentacji użytej do zapisu danych (zagadnienie parametryzacji przestrzeni danych) Wykorzystanie Dane kinematyczne będą stanowid podstawowy zakres informacji wykorzystywany we wszystkich elementach systemu. Dane EMG Elektromiografia jest metodą akwizycji danych opisujących pracę mięśni. Oparta jest na analizie czynności elektrycznej mięśni przez rejestrację potencjału polaryzacyjnego w stanie spoczynku oraz w stanie pobudzenia czynnościowego mięśnia. Badania tego rodzaju są używane w diagnostyce do określenia prawidłowości pracy układu mięśniowego i nerwów obwodowych. W prezentowanym systemie planuje się, że dane EMG (elektromiograficzne) [18] mogą byd również wykorzystywane, jako dodatkowe źródło danych do dalszej analizy ruchu. Dane EMG posiadają swoją specyfikę, która wymaga zastosowania dedykowanych metod do detekcji, dekompozycji, przetwarzania i klasyfikacji [18], [19]. Próba wykorzystania danych EMG sprzężonych z danymi kinematycznymi może pozwolid na stworzenie nowego podejścia do analizy oraz syntezy ruchu ludzkiego. Poziom przetworzenia Objętośd Struktura Przetwarzanie Wykorzystanie Zależny od zastosowania możliwy dostęp do cyfrowej postaci danych surowych. Na poziomie 50-100 kb / sek. Brak zdefiniowanej struktury należy określid na poziomie modelu z uwzględnieniem zachowania spójności z używaną strukturą szkieletową. Niezbędne do dalszego wykorzystania danych. Rozpatruje się wykorzystanie danych w ramach sprzężonej analizy ruchu. Dane GFR Dane GFR (ang. Ground Force Reaction) należą do danych typu kinetycznego. Często w nowoczesnych systemach akwizycji pomiarowej odpowiednie czujniki są już zintegrowane z całym systemem. Największa wartośd wynika z możliwości analizy danych GFR zsynchronizowanych z pozostałymi strumieniami danych. Przykładowa analiza danych typu GFR przedstawiona została w pracach [63], [64]. 7

Poziom przetworzenia W większości przypadków otrzymuje się dane nieprzetworzone. Objętośd Na poziomie 50-100 kb / sek. (częstotliwośc do 4 khz, typowa rozdzielczośd 16 bit) Struktura Struktura danych odzwierciedla strukturę geometryczną zamontowanych czujników. Przetwarzanie Istotne jest przetwarzani zsynchronizowane z pozostałymi strumieniami danych. Wykorzystanie Dane GFR będą ważnym elementem do analizy łącznie z synchronizowanymi danymi innego typu. Dane kinetyczne Dane kinetyczne stanowid mogą uzupełnienie informacji o ruchu zbieranych w ramach realizowanego systemu. W ramach tego typu danych najczęściej rejestruje się informacje ściśle powiązane z dynamiką ruchu lokalne przyspieszenia i siły generowane w trakcie wykonywania ruchu. Tego rodzaju dane nie są w zamierzeniu podstawowym źródłem do analizy ruchu, jednakże mogą stanowid cenne uzupełnienie. W ramach opracowywania modelu dynamicznego planuje się konstrukcję metod, które w powiązaniu z filtrami cząsteczkowymi pozwolą na określenie dynamicznych parametrów wykonywanego ruchu. Zadanie dynamiki odwrotnej ma na celu określenie sił, które musiały byd wygenerowane do wykonania zarejestrowanego ruchu. Jeżeli w czasie przeprowadzanych badao możliwa będzie rejestracja tego rodzaju wielkości, to pozwoli na weryfikacje opracowanych metod dynamiki określania parametrów dynamicznych ruchu na podstawie skonstruowanych modeli kinematycznego i dynamicznego. Rejestracja danych kinetycznych może również byd pomocna do określenia wewnętrznych parametrów modelu dynamicznego, na podstawie których kolejne obliczenia nie będą wymagały pomiarów kinetycznych. Poziom przetworzenia Objętośd Struktura Przetwarzanie Wykorzystanie Typowo dane nieprzetworzone wymagające dalszej obróbki Na poziomie 20-100 kb / sek. Niezbędne będzie zdefiniowane struktury w powiązaniu ze strukturą kinematyczną oraz dynamiczną Przetwarzanie danych kinetycznych należy zsynchronizowad z danymi kinamatycznymi. Potencjalnie ważny element modelu dynamicznego ruchu rozwijanego w ramach systemu. W ramach planowanego zakresu projektu planuje się jednak wykorzystanie jedynie podstawowych danych kinetycznych. 2.2.2 Problematyka synchronizacji strumieni danych Przy implementacji modelu należy zwrócid szczególną uwagę na kwestię synchronizacji różnych strumieni danych. W ramach aktualnej wersji raportu kwestia ta nie będzie dokładnie rozwijana. Ogólne zalecenia/uwagi dotyczące synchronizacji strumieni: Synchronizacja strumieni powinna byd realizowana w trakcie akwizycji danych pomiarowych. Zakłada się, że sprzęt oraz oprogramowanie akwizycyjne zapewniają odpowiedni poziom synchronizacji. 8

Synchronizacja danych powinna byd wspierana przez format zapisu danych używany w systemie. Zapis danych do bazy danych nie powinien usuwad informacji synchronizacyjnych. Szczególną uwagę należy poświęcid przy tworzeniu i implementacji metod przetwarzania danych ruchu. Należy pamiętad, że niektóre operacje wykonywane na trajektoriach ruchu (np. zmiana częstotliwości próbkowania, interpolacja itp.) mogą wymagad sprzężonej modyfikacji odpowiadającym im danym zapisanych w ramach innego obszaru akwizycji. 2.2.3 Zagadnienie parametryzacji danych Każdy rodzaj danych wykorzystywanych w systemie musi mied określoną spójną ich parametryzację, aby poszczególne elementy systemu mogły się ze sobą poprawnie komunikowad. Szczególnie istotną kwestią jest parametryzacja przestrzeni danych kinematycznych kwestia ta będzie dotyczyd modeli, metod oraz wyników rozpatrywanych w ramach systemu. Tego rodzaju niskopoziomowa reprezentacja wykorzystuje wybraną parametryzację przestrzeni (zarówno części translacyjnej, jak i rotacyjnej). Wybór parametryzacji będzie pośrednio wpływał na własności całego modelu ze względu na wydajnośd obliczeniową, a także charakterystyczne cechy określonej parametryzacji (np. występowanie zjawiska gimbal lock). Parametryzacja przestrzeni translacji Pełny opis położenia ciała sztywnego (bryły, segmentu szkieletu) w przestrzeni wymaga określenia pozycji i orientacji. Pozycja obiektu podawana jest dla wybranego punktu najczęściej jest to początek lub koniec segmentu, a w niektórych zastosowaniach środek geometryczny obiektu. Pozycja zdefiniowana jest w postaci wektora P reprezentującego translację względem wybranego układu współrzędnych A. Parametryzacja przestrzeni orientacji Przy realizacji opisu położenia obiektu należy rozróżnid dwa pojęcia: orientację obiektu oraz rotację. Orientacja jest określona przez położenie osi lokalnego układu współrzędnych B względem osi układu odniesienia A. Orientacja jest więc częścią składową opisu położenia obiektu. Rotacja jest natomiast ortogonalną transformacją F : V V, która przekształca pewien wektor (lub układ współrzędnych) w inny wektor przy spełnieniu własności: v1, v2 Fv1, Fv2, (2 1) gdzie, oznacza iloczyn skalarny. Przekształcenie jednorodne pozwala na odwzorowanie układów przy jednoczesnym uwzględnieniu rotacji i translacji. Niech wektor P określony będzie względem układu B. W wyznaczeniu położenia wektora względem układu B uwzględnid należy translację układu A: A B T oraz rotację A B R układu B względem A A B A P BR P BT, (2 2) co zapisuje się w postaci przekształcenia jednorodnego: 9

A P A B R A B T B P 1 0 0 0 1 1. (2 3) Rysunek 2-2: Wizualizacja przekształcenia układu współrzędnych B względem A przez złożenie przekształceo translacji i rotacji. Dodatkowy wiersz macierzy przekształcenia można modyfikowad, aby otrzymad przekształcenia dla operacji rzutowanie i skalowanie. Twierdzenie Eulera pozwala przedstawid operację rotacji w postaci mniejszej ilości zmiennych: Każde przekształcenie zmieniające orientację wektora (lub układu współrzędnych) znajdującego się w przestrzeni 3 R może byd opisane za pomocą osi obrotu nˆ oraz kąta obrotu. To pozwala na określenie alternatywnych parametryzacji przestrzeni orientacji służących do dalszej budowy modelu ruchu. Wśród nich należy wyróżnid: Parametryzacja oś-kąt. Parametryzacja orientacji przez obrót wokół osi ustalonego układu współrzędnych. Parametryzacja wykorzystująca kąty Eulera. Parametryzacja oparta na przestrzeni kwaternionów. Ostatnia z parametryzacji (przestrzeo kwaternionów) posiada szereg unikalnych własności, które powodują, że jest ona bardzo często używana jako opis danych w systemach przetwarzających ruch: Do opisu orientacji wystarczające są 4 wartości (składowa skalarna kwaternionu oraz 3 elementy składowej wektorowej). Możliwośd prostego składania obrotów przy pomocy mnożenia kwaternionów. Brak efektu gimbal lock. 10

Dobrze zdefiniowane i numerycznie stabilne procedury interpolacji położenia (liniowa, sferyczno-liniowa [25], [23], sferyczno-kwadratowa [25] oraz szerg złożonych metod interpolacji pozwalającej uzyskanie krzywej o zadanych właściwościach różnickowalności [27], [28], [29], [26]) Opis orientacji przy wykorzystaniu przestrzeni kwaternionów bazuje na podstawowej własności składania obrotów. Niech kwaternion q 21 reprezentuje rotację z położenia v 1 do v 2. Z uwagi na możliwośd składania obrotów otrzymuje się: q 20 q10q21 (2 4) Wizualizacja tej operacji przedstawiona jest na rysunku. Kwaternion q21 Rysunek 2-3: Wizualizacja przykładowej zmiany orientacji lokalnego układu współrzędnych przy zastosowaniu parametryzacji kwaternionowej. przyjmuje następującą postad: 1 * 21 q10 q20 q10 q20 q, (2 5) pod warunkiem, że oba kwaterniony są jednostkowe. Zakres zastosowania interpolacji Interpolacja wykorzystywana jest w systemach przetwarzających 1 zakresach: najczęściej w następujących Element konstrukcyjny przekształcenia o ogólnym przeznaczeniu. W przypadku wielu operacji przetwarzających niezbędne jest skorzystanie z własności interpolacji ze względu na brak odpowiedniego bezpośredniego odwzorowania przekształceo algebraicznych stosowanych w przypadku danych rzeczywistych. W takim przypadku możliwe jest 1 W ogólności interpolacja często jest używana w różnego rodzaju systemach przetwarzających. Przetwarzanie ruchu ma swoją specyfikę, która pozwala (a także czasami wymaga) na wykorzystanie interpolacji danych. 11

wykorzystanie interpolacji do konstrukcji analogicznego rozwiązania operującego na danych kwaternionowych. Wyznaczanie brakujących danych pomiarowych. Przy przeprowadzaniu pomiarów może się okazad, że pewne dane nie zostały prawidłowo zarejestrowane. W takim przypadku można zastosowad własności interpolacyjne w celu próby uzupełnienia brakujących elementów. Synteza danych. W przypadku syntezy ruchu niezbędne jest określenie nowej wartości elementu (rozpatrując to na wyższym poziomie nowej pozycji animowanej postaci), jako złożenie kilku wybranych wartości źródłowych. To specyficzne zadanie przekształcenia danych (często parametryzowane) również realizowane jest najczęściej za pomocą operacji interpolacji. Zmiana częstości próbkowania sygnału (skalowanie sygnału). Przy użyciu interpolacji nie będzie możliwe uzyskanie nowych rzeczywistych danych pomiarowych reprezentujących wartości obserwowanej funkcji pomiędzy punktami pomiarowymi. Jednakże możliwa jest zmiana częstotliwości próbkowania, która nie zwiększa jakości sygnału, ale może pozwolid na porównywanie sygnałów o różnych długościach (np. przez proste skalowanie Euklidesowe lub bardziej zaawansowane techniki jak dynamiczne zniekształcanie dziedziny czasu). Przestrzeo kwaternionów posiada dobrze zdefiniowane metody interpolacji jedną z najczęściej wykorzystywaną jest interpolacja sferyczno liniowa przedstawiona schematycznie na rysunkach. Rysunek 2-4: Wizualizacja przykładowej interpolacji orientacji wektorów przy użyciu kwaternionów. 12

Rysunek 2-5: Interpretacja interpolacji orientacji dla kwaternionów w przestrzeniach S 3, TS 3 ( na podstawie [26]) Interpolacja taka zdefiniowana jest zależnością: 1 1 qp slerp q1, q2, p q1 exp plog q1 q2 q1 q1 q2 gdzie p 0, 1 jest punktem interpolacji. p, (2 6) 2.3 Obszar modeli W ramach prezentowanych założeo zostaną przeanalizowane i opisane modele składowe definiujące sposób opisu ruchu w różnych aspektach. W ramach modeli rozpatrywane następujące obszary: model szkieletowy, model dynamiczno-fizyczny oraz wysokopoziomowy model generatywny/stochastyczny. 2.3.1 Model szkieletowy W ramach modelu szkieletowego należy przede wszystkim uwzględnid określenie następujących elementów: Modelowanie trajektorii Trajektoria jest jednym z elementów składowych reprezentujących ruch. Nie należy bezpośrednio do modelu szkieletowego, jednakże powinna zagadnienie to powinno byd rozpatrywane wspólnie ze względu na możliwości określenia zależności czasoprzestrzennych. Ruch zapisywany będzie przy użyciu modelu szkieletowego (z punktu widzenia przestrzennego) wykorzystując model trajektorii (aspekt czasowy) tworząc w ten sposób strumieo danych ruchu o charakterze czasoprzestrzennym. W ogólności model trajektorii może wykorzystywad dowolną parametryzację przestrzeni rotacji. Jednakże w dalszej części będzie oparty na parametryzacji kwaternionowej, która posiada bardzo dobre własności opisu rotacji, a jednocześnie pozwala na dowolne przekształcenie do i z innych parametryzacji. Proponowany model danych posiada następujące własności: 13

Prototyp orientacji definiuje się jako orientację referencyjną, względem której definiowane będą wszelkie rotacje q 1, 0,0, 0 0 Określony jest zbiór indeksów dla siatki czasowej definiujących kolejne chwile czasowe IT 1 ;n Indeksy parametryzują trajektorię w całym odcinku czasowym, który jest rozpatrywany. Istnieje zdefiniowane przekształcenie prototypu orientacji w dowolny punkt należący do rozpatrywanej trajektorii. W IT definiuje się relację sąsiedztwa przy użyciu dyskretnej funkcji odległości : E i jest sąsiadem E i, wtedy i tylko wtedy, gdy i,i' 1. W praktyce oznacza to relację dwusąsiedztwa: dla i,i 1 1 jest to sąsiad lewy L, i,i 1 1 jest to sąsiad prawy P. Trajektoria orientacji w przestrzeni kwaternionów określona jest przez krzywą kwaternionową realizującą przyporządkowanie: 3 q : R S, (2 7) co oznacza, że funkcja q (t) jest jednoznacznym przyporządkowaniem wybranej chwili czasowej do przestrzeni orientacji układu względem orientacji referencyjnej w przestrzeni kwaternionowej. Zależnośd definiuje przyporządkowanie ciągłe. W przypadku rozpatrywania dyskretnej wersji trajektorii (co ma miejsce we wszystkich praktycznych zastosowaniach) przyporządkowanie dotyczy zbioru indeksów dyskretnych chwil czasowych: 3 q : IT S (2 8) Otrzymuje się uporządkowany zbiór kwaternionów reprezentujący trajektorię w przestrzeni orientacji lokalnego układu współrzędnych 3 q i S : i N 1, n, (2 9) gdzie n jest liczbą elementów składających się na trajektorię. W modelu danych reprezentujących trajektorię określona została miara odległości pomiędzy jej elementami. Miara ta realizuje funkcję odległości zdefiniowaną dla przestrzeni S 3 : d ij d q, q i j 2 log q q * i j (2 10) W praktyce implementacyjnej trajektoria jest rozpatrywana jako szereg czasowy składający się z elementów zapisanych w tej samej parametryzacji. Realizowane jest to w postaci tablicy będącej odwzorowaniem kolejnych elementów. Połączenia kinematyczne Zagadnienie opracowania modelu szkieletowego rozpatrywane jest jako szczególny przypadek problemu modelowania łaocucha kinematycznego wykorzystywanego w robotyce. Duża grupa problemów kinematycznych może byd rozpatrywana dla manipulatorów składających się z członów 14

(ciał sztywnych) połączonych ze sobą w otwarty łaocuch kinematyczny [1] 2. Sąsiadujące człony manipulatora mogą posiadad połączenie ruchome lub stałe 3. Parą niższego rzędu nazywa się połączenie ruchowe dwóch członów, których względny ruchu realizowany jest przez dwie współpracujące ze sobą powierzchnie. Przy tak rozumianym połączeniu możliwe jest wyróżnienie następujących typów par niższego rzędu: obrotowe, cylindryczne, śrubowe, przesuwne, płaskie, kuliste. Typ połączenia będzie wpływał na liczbę stopni swobody, co jest istotnym elementem konstrukcji szkieletu postaci. W niektórych przypadkach często wykorzystuje się połączenia obrotowe i przesuwny o jednym stopniu swobody. Wynika to z założenia, że układ kinematyczny o n stopniach swobody można zamodelowad przez złożenie n członów i jednym stopniu swobody. Przy konstrukcji szkieletu postaci można założyd, że połączenia są typu kulistego ze zdefiniowanym dodatkowym stożkiem ograniczeo, który określa zakres dopuszczalny wykonywanego ruchu w każdej płaszczyźnie. Konstrukcja struktury kinematycznej szkieletu postaci graf szkieletu Wstępnie proponuje się, żeby struktura szkieletu wykorzystywana w ramach projektu była zgodna z wybraną normą, przykładowo ISO/IEC FCD 19774 [31]. W ramach tej struktury definiuje się strukturę połączeo (stawów), które powiązane są przez segmenty (kości). Zakłada się, że struktura ta może zostad dopasowana do konkretnego przypadku. Postad struktury będzie zależed przede wszystkich od danych otrzymywanych z systemu pomiarowego, a te z kolei od przyjętych punktów pomiarowych, dla których realizowane są obserwacje. Parametry szkieletu Poza określeniem struktury szkieletu należy zdefiniowad dodatkowe parametry charakteryzujące modelowaną postad. Wśród nich należy uwzględnid: geometryczne wymiary każdego z segmentów w praktyce najczęściej wystarczy zdefiniowad długośd segmentu, gdyż ta wielkośd identyfikuje postad struktury opisanej w postaci relatywnej hierarchii, pozostałe fizyczne uwarunkowania segmentu masa, środek ciężkości, liczba stopni swobody dla stawu, ograniczenia dla możliwych stopni swobody modelowane przy pomocy na przykład stożka ograniczeo [32]. Nie istnieją uniwersalne parametry postaci, które mogłyby stanowid wzorcową strukturę dla wszystkich postaci. Własności te zależed mogą od wielu czynników wewnętrznych (np. zdrowy staw ma inny zakres ruchu od chorego). 2 W niektórych przypadkach otwarty łaocuch kinematyczny (np. człowieka poruszającego się po płaszczyźnie) przekształca się w zamknięty łaocuch, gdzie podłoże pełni rolę domknięcia. 3 Stałe połączenie członów redukuje połączone człony do jednego o nowych parametrach geometrycznych. 15

W projekcie [33] badane są rezultaty pomiarów parametrów szkieletu wykonanych dla populacji reprezentujących różne regiony świata. W ramach projektu definiowane są punkty charakterystyczne, których położenie jest parametrem pośrednim modelu szkieletowego. 2.3.2 Model dynamiczny W prezentowanym raporcie model dynamiczny nie będzie dokładnie opisywany ze względu na koniecznośd odrębnej analizy tego zakresu tematycznego. W szczególności w ramach tego podmodelu należy rozpatrywad zagadnienie dynamiki prostej i odwrotnej. Dynamika prosta Na schemacie zobrazowane zostało w uproszczony zagadnienie problem dynamiki prostej. Zagadnienie to jest podstawą konstrukcji modelu dynamicznego będącego składową modelu ruchu. Rysunek 2-6: Uproszczony schemat obrazujący problem dynamiki prostej na podstawie [34] W ramach dynamiki prostej (ang. forward dynamics) wyznacza się konfigurację struktury szkieletu na podstawie sił wygenerowanych przez mięśnie po otrzymaniu impulsu nerwowego. Na podstawie zadanego pobudzenia możliwe jest wyznaczenie prędkości i przyspieszenia struktury szkieletu. Jednakże w ogólności model dynamiczny może byd bardzo skomplikowany w tym przypadku. Należy pamiętad, że dla przypadku symulacji postaci człowieka, rezultat wykonywanego ruchu wpływa pośrednio na pobudzenie (ze względu na zmianę sytuacji, a także oddziaływao zewnętrznych), jak i na elementy składowe procesu. Z tego względu ostateczna postad modelu dynamiki prostej uwzględniad może różnego rodzaju sprzężenia zwrotne, a także wpływ oddziaływao zewnętrznych. Dla przypadku uproszczonego, kiedy model nie podlega ograniczeniom konfiguracyjnym oraz fazowym etc, równania dynamiki układu przyjmują postad:.. Q ( ) C(, ) D( ).. u, (2 11) 16

gdzie jest konfiguracją położenia, a jego kolejne pochodne odpowiednio prędkością i przyspieszeniem; D jest symetryczną i dodatnio-określoną macierzą inercji; C- reprezentuje macierz sił Coriolisa i odśrodkowych; G jest wektorem sił wynikających z grawitacji; u w ogólności jest wektorem sił i momentów nie potencjalnych (np. opory ruchu, tarcie, oddziaływanie od sterowania itp.). Szczegółowy przegląd metod do rozwiązywania zagadnienia dynamiki prostej został przedstawiony w [35]. Przykładowe metody używane do rozwiązywania tego typu zadao to przykładowo Composite Rigid Body Algorithm (CRBA), Articulated Body Algorithm (ABA) [36]. Zagadnienie dynamiki prostej dotyczy przede wszystkim symulacji systemów. W ramach realizowanego projektu zagadnienie to może byd niezbędne do realizacji zadania syntezy ruchu na podstawie danych pomiarowych (np. danych EMG) lub syntetycznych funkcji aktywacji mięśni. Dynamika odwrotna Zagadnienie dynamiki odwrotnej jest bardzo często wykorzystywane do modelowania i analizy obserwowanego ruchu. W problemie tym dla określonego warunku początkowego (konfiguracji położenia systemu) oraz zaobserwowanych wielkości dodatkowych (pomiary sił EMG, GFR i innych) należy wyznaczyd pobudzenie, które mogło byd przyczyną takiej konfiguracji. Uproszczony schemat zagadnienia przedstawiony jest na rysunku. Rysunek 2-7: Uproszczony schemat obrazujący problem dynamiki odwrotnej na podstawie [34] Najczęściej cytowanym algorytmem do wyznaczania rozwiązania w problemie dynamiki odwrotnej jest RNEA (ang. Recursive Newton-Euler Algorithm) [37]. Jeszcze wydajniejsza implementacja obliczeo możliwa jest na podstawie rozwiązania przedstawionego w [38]. Algorytm dynamiki odwrotnej może byd wykorzystywany w ramach projektu do analizy ruchu na podstawie zebranych danych pomiarowych. W kolejnym kroku, po wykonaniu przetwarzania tak 17

otrzymanych danych, mogą one byd wykorzystywane jako sygnał sterujący do syntetycznego tworzenia ruchu w sposób symulacyjny oparty na dynamice prostej. 2.4 Obszar metod W systemie zostaną zaimplementowane metody, które wykorzystując modele składowe ruchu oraz uwzględniając zgromadzone obserwacje pozwalają na otrzymanie nowych wyników. Wyróżnid można pewne grupy metod potencjalnie wykorzystywanych w systemie. 2.4.1 Metody podstawowe W tej grupie rozpatruje sie metody dotyczące przekształcenia pomiędzy parametryzacjami danych. Każde przekształcenie odnosi się do parametryzacji źródłowej i docelowej. W większości przypadków przekształcenia tego typu są jednoznaczne. Jednakże należy pamiętad, że zmiana parametryzacji oznacza również zmianę własności przestrzeni, w jakiej dane są opisane. Implikuje to również koniecznośd wykonywania dalszych operacji z uwzględnieniem własności oraz ograniczeo przestrzeni wykorzystywanej przez daną parametryzację. Wzajemne przekształcenia powinny uwzględniad następujące parametryzacje wykorzystywane w różnych częściach składowych systemu (lub w systemach/strukturach zewnętrznych, ale powiązanych z rozatrywanym obszarem): macierze rotacji, kąty Eulera, parametryzacja oś-kąt, kwaterniony. 2.4.2 Metody przestrzenne W ramach metod przestrzennych powiązanych z konstrukcją modelu ruchu można wyróżnid między innymi problematykę kinematyki prostej i odwrotnej. W ramach zadania kinematyki prostej wyznacza się położenie 4 wybranego punktu manipulatora (struktury kinematycznej) względem globalnego układu odniesienia. W przypadku ogólnym zagadnienie dotyczy wszystkich punktów rozpatrywanej struktury. Jednakże ze względu na założenie sposobu konstrukcji struktury (zespół połączonych ciał sztywnych) wystarczające jest wyznaczenie jedynie wybranych punktów określonych członów pozostałe punkty mogą byd wyznaczone w prosty sposób przy znajomości własności geometrycznych struktury. W zadaniach praktycznych czasami wyznacza się konfigurację punktów manipulatora względem innego niż globalny układ odniesienia. Do alternatywnych układów zalicza się miedzy innymi [1]: układ odniesienia podstawy, stanowiska, kiści, narzędzia, układ docelowy. W ramach zagadnienia kinematyki odwrotnej wyznacza się parametry przestrzeni konfiguracyjnej łaocucha na podstawie znanych parametrów położenia koocówki manipulatora w przestrzeni kartezjaoskiej. Określa się przestrzeo roboczą manipulatora, jako podzbiór punktów przestrzeni, które są osiągalne dla koocówki roboczej manipulatora. Manipulacyjna przestrzeo robocza jest podzbiorem przestrzeni roboczej zawężonym do punktów, które manipulator osiągnąd może z dowolną orientacją. Określa się osiągalną przestrzeo roboczą manipulatora składającą się z punktów przestrzeni, które mogą byd osiągnięte dla przynajmniej jednej orientacji. Aby zadanie kinematyki 4 Możliwe jest także wyznaczanie wielkości pochodnych takich jak prędkośc lub przyspieszenie. 18

odwrotnej istniało, punkt docelowy (parametry przestrzeni kartezjaoskiej) muszą należed do osiągalnej przestrzeni roboczej. Problem kinematyki odwrotnej może byd wykorzystywany w ramach opracowywanego modelu ruchu na etapie wstępnego przetwarzania i analizy ruchu na podstawie obserwacji położenia szkieletu postaci wyznaczone mogą byd parametry konfiguracyjne (orientacja) poszczególnych stawów. Na tej podstawie określid można trójwymiarową postad przestrzeni konfiguracyjnej (na przykład przy uwzględnieniu jedynie analizy obrazu wideo). 2.4.3 Metody czasoprzestrzenne Ruch w przestrzeni trójwymiarowej ze swojej natury jest zjawiskiem czasoprzestrzennym. Może byd rozpatrywany jako wielowymiarowy zbiór trajektorii w przestrzeni translacyjno-rotacyjnej opisanych przy określonej parametryzacji. Już przy modelu ruchu dla pojedynczego stawu (członu łaocucha kinematycznego) trajektoria tworzy reprezentację czasoprzestrzenną. Z tego względu bardzo istotne będzie rozwinięcie metod przetwarzania, których zakres stosowalności dotyczyd będzie trajektorii (obszaru czasoprzestrzennego). Wśród istotnych metod uwzględniono w opracowaniu następujące: Adaptacja klasycznych miar odległości dla trajektorii ruchu W wielu zastosowaniach konieczne jest porównanie dwóch lub więcej trajektorii ruchu tak, aby można było zdefiniowad miarę podobieostwa między nimi. W przestrzeni rzeczywistej miara taka jest dobrze zdefiniowana. Dla przestrzeni orientacji miara może byd różnie interpretowana. Jeszcze trudniejsze może byd określenie miary odległości w problematyce czasoprzestrzennej, czyli operującej na trajektoriach. Analiza tego problemu została przedstawiona w pracy [42]. Możliwe jest opracowanie odpowiedników standardowych miar podobieostwa sygnałów, które uwzględniają rotacyjny charakter trajektorii odwzorowujących ruch. Wśród nich opracowano odpowiedniki następujacych miar: kwaternionowy błąd średniokwadratowy MSE, znormalizowany współczynnik MSE, kwaternionowy stosunek sygnału do szumu. Przy ich używaniu należy jednak pamiętad o interpretacji zastosowanej miary odległości. Uogólnienie metody dynamicznego zniekształcania dziedziny czasu Metoda DTW (ang. Dynamic Time Warping) jest rozwiązaniem, które pomaga zbudowad miarę podobieostwa sygnałów uwzględniającą lokalny charakter i zmiennośd sygnałów. Metoda ta została oryginalnie opracowana do porównywania sygnałów mowy [44], jednakże wkrótce została z powodzeniem stosowana w przypadku sygnałów o różnym charakterze. Porównywanie ruchu jest jednym z częściej stosowanych. Metoda może zostad uogólniona do analizy czasoprzestrzennej trajektorii reprezentującej ruch z możliwością uwzględnienia charakterystycznych własności powiązanych ze specyfiką danych opisujących ruch. Metody przetwarzania czasoprzestrzennej struktury szkieletu Jak to zostało pokazane przy opisie modelu szkieletowego oraz reprezentacji danych do opisu ruchu wymagane jest określenie składowej translacyjnej i rotacyjnej. Z tego względu metody przetwarzania danych powinny byd przystosowane do danych dotyczących obu składowych opisu. Częśd translacyjna jest zapisywana w postaci wektorów przestrzeni rzeczywistej. Dlatego wszystkie metody 19

przetwarzania sygnałów zdefiniowane dla przestrzeni Rn mogą byd w tym przypadku bezpośrednio zastosowane. Dla części rotacyjnej metody te nie mogą byd bezpośrednio użyte ze względu na inne własności parametryzacji stosowanych do składowej rotacyjnej. Został więc zaproponowany szereg metod przetwarzania trajektorii przestrzeni orientacji, które zostaną pokrótce scharakteryzowane w niniejszym rozdziale. Rozważane są metody dotyczą przede wszystkim filtracji lub interpolacji trajektorii. Jednakże na ich podstawie możliwe będzie skonstruowanie metod, które będą miały inny cel, a będą wykorzystywad własności podejścia filtracyjnego. W ogólności metody te można podzielid na 3 grupy: przetwarzające trajektorię w przestrzeni stycznej TS 3 ([47], [48], [49], [51]), przetwarzające trajektorię bezpośrednio w przestrzeni S 3 w ramach problemu optymalizacji funkcji celu ([52], [53], [54], [55]), przetwarzające trajektorię przez wykorzystanie sformalizowanego modelu procesu np. dyfuzję ([56], [57]), pozostałe metody niesklasyfikowane do innej grup: przetwarzanie trajektorii oparte na algorytmach genetycznych [58], realizacje przetwarzania oparte o filtr Kalmana [60], [59], estymacja położenia obiektów przy wykorzystaniu filtru Kalmana dla kwaternionów dualnych *61+, przetwarzane i generacja ruchu przez modelowanie układu dynamicznego *62+. 2.5 Obszar wyników W obszarze wyników rozpatruje się otrzymywanie wszelkiego rodzaju informacji będących rezultatem przetworzenia danych ruchu w jednym z pozostałych obszarów danych wejściowych, metod lub modelu. Wyniki te mogą byd zapisywane w systemie (także jako dane wejściowe) lub byd dostarczane użytkownikowi jako odpowiedź na skierowane do systemu zapytanie. Należy zauważyd, że zapytania mogą byd formułowane także przez wewnętrzne procesy zdefiniowane w systemie. W ten sposób rozpatruje się wykorzystanie wyników pośrednich w bardziej złożonym procesie przetwarzającym. 2.6 Uwagi dotyczące specyfiki danych w systemie W systemie, a także w ramach modelu ruchu rozważane będą dwa rodzaje danych, które należy uwzględnid: Dane aprioryczne. Zakłada się, że są to dane, które są znane na etapie implementacji części modelu (na przykład informacja o strukturze szkieletu, która jest wykorzystywana w urządzeniu pomiarowym) lub na etapie określania właściwości obiektu będącego przedmiotem modelowania (np. informacja o wzroście/wadze pacjenta nie wynika ona z danych uzyskanych w ramach toru przetwarzającego w systemie, lecz jest podawana niezależnie). Dane pomiarowe. W ramach tego rodzaju danych rozważa się wszystkie dane, które pochodzą z toru przetwarzającego zintegrowanego w ramach systemu. Istotną kwestią jest interpretacja danych przetwarzanych w ramach systemu: 20