ploug03.pdf

(393 KB) Pobierz
Microsoft Word - 13 interMedia.doc
IX Konferencja PLOUG
Koœcielisko
PaŸdziernik 2003
Oracle interMedia na tle standardu
SQL/MM i prototypowych systemów
multimedialnych baz danych
Marek Wojciechowski, £ukasz Matuszczak
Politechnika Poznañska
Przetwarzanie danych multimedialnych od lat by³o przedmiotem wielu projektów badawczych i tematem prac naukowych. Obecnie jeste-
œmy œwiadkami kszta³towania siê standardu SQL/MM, który w du¿ej czêœci poœwiêcony jest obs³udze danych multimedialnych z poziomu
jêzyka SQL. Obs³ug¹ obrazów, dŸwiêku, sekwencji wideo i heterogenicznych danych multimedialnych w ramach systemu zarz¹dzania
baz¹ danych Oracle9i zajmuje siê Oracle interMedia. Celem niniejszego artyku³u jest ocena mo¿liwoœci oferowanych przez Oracle inter-
Media w œwietle specyfikacji SQL/MM i funkcjonalnoœci prototypów badawczych.
Informacja o prowadz¹cym:
dr in¿. Marek Wojciechowski – pracownik naukowo-dydaktyczny Instytutu Informatyki Politechniki Poznañskiej. Specjalizuje siê w
dziedzinach systemów baz danych, eksploracji danych oraz technologii internetowych.
Oracle interMedia na tle standardu SQL/MM i prototypowych systemów...
121
1. Wprowadzenie
Zadaniem współczesnych systemów zarządzania bazami danych jest już nie tylko efektywna
obsługa danych o prostej strukturze (danych relacyjnych), ale również danych o strukturze złożo-
nej (danych obiektowych), danych nie w pełni strukturalnych (tzw. semi-strukturalnych) oraz mul-
timediów. Dane multimedialne definiuje się jako dane zakodowane w jednym lub wielu mediach,
spośród których co najmniej jedno medium nie jest alfanumeryczne. W praktyce, mianem danych
multimedialnych określa się obecnie zakodowane w postaci zrozumiałej dla komputera obrazy,
sekwencje audio, filmy wideo (sekwencje wideo, zazwyczaj uzupełnione o sekwencję audio
i opcjonalnie napisy w postaci tekstowej) oraz heterogeniczne dokumenty multimedialne (np. pre-
zentacje). W porównaniu z innymi rodzajami danych, dane multimedialne stanowią szczególnie
trudne wyzwanie dla projektantów systemów informatycznych ze względu na duży rozmiar i brak
struktury (postać binarna).
System zarządzania bazą danych Oracle9i wspiera wszystkie wspomniane wyżej rodzaje da-
nych. Oracle9i jest określany jako system obiektowo-relacyjny, czyli oparty o model relacyjny
rozszerzony o elementy modelu obiektowego, dostępne przede wszystkim poprzez mechanizm
typów strukturalnych (zgodnych ze standardem SQL99 [13]). Do przetwarzania danych semi-
strukturalnych (mających postać dokumentów XML) w Oracle9i służy XML DB, z kolei za funk-
cjonalność dotyczącą składowania i przetwarzania danych multimedialnych odpowiada interMedia
[16].
Celem niniejszego artykułu jest przedstawienie i ocena możliwości oferowanych przez Oracle
interMedia w zakresie wsparcia dla składowania i przetwarzania danych multimedialnych w bazie
danych. Punktem odniesienia dla oceny funkcjonalności interMedia będzie kształtujący się stan-
dard SQL/MM [12] oraz rozwiązania zaproponowane w ramach prototypów badawczych. Artykuł
odnosi się do najnowszej dostępnej obecnie wersji serwera bazy danych Oracle: Oracle9i Release
2 (9.2).
Struktura artykułu przedstawia się następująco. Rozdział 2 zawiera ogólną charakterystykę
danych multimedialnych oraz opis trzech najpowszechniej obecnie wykorzystywanych typów
multimediów: obrazów, sekwencji audio i filmów wideo. Rozdział 3 stanowi przegląd najciekaw-
szych prototypowych systemów multimedialnych baz danych. Rozdział 4 poświęcony jest stan-
dardowi SQL/MM. Rozdział 5 przedstawia funkcjonalność i architekturę Oracle interMedia. Roz-
dział 6 zawiera szczegółową analizę różnic między interMedia i innymi rozwiązaniami dla multi-
medialnych baz danych. Rozdział 7 stanowi krótkie podsumowanie.
2. Charakterystyka danych multimedialnych
Dane multimedialne to dane zakodowane w jednym lub wielu mediach, spośród których co
najmniej jedno medium nie jest alfanumeryczne. Obecnie, w praktycznych zastosowaniach wyko-
rzystywane są media ukierunkowane na ludzkie zmysły wzroku i słuchu, choć nie można wyklu-
czyć, że w przyszłości przekazy multimedialne zostaną uzupełnione np. o zapach, smak, czy też
dotyk (prowadzone są już eksperymenty w tym zakresie). Podstawowa klasyfikacja mediów to
podział na media niezmienne w czasie (dyskretne, statyczne) i zmienne w czasie (ciągłe, dyna-
miczne). Do pierwszej grupy należą: teksty, obrazy (fotografie) i grafiki (rysunki, schematy). Dru-
ga grupa obejmuje: filmy wideo, sekwencje audio (muzyka, mowa) oraz animacje komputerowe.
W praktyce, mianem danych multimedialnych określa się najczęściej obrazy oraz dane audio
i wideo.
Wspólną cechą obiektów multimedialnych jest ich duży rozmiar i powszechność stosowania
różnych metod kompresji. Celem kompresji jest redukcja rozmiaru danych, co zmniejsza wyma-
gania w zakresie pojemności pamięci masowych i przepustowości kanałów transmisyjnych. Prze-
twarzanie danych skompresowanych wymaga jednak dużych mocy obliczeniowych, choć typowo
122
Łukasz Matuszczak, Marek Wojciechowski
dekompresja jest znacznie mniej czasochłonna niż kompresja. Metody kompresji danych multime-
dialnych można ogólnie podzielić na metody bez utraty jakości (ang. lossless compression) i z
utratą jakości (ang. lossy compression). W przypadku metod bez utraty jakości, po dekompresji
otrzymana postać jest identyczna z postacią źródłową poddaną kompresji. Metody z utratą jakości
wykorzystują niedoskonałość ludzkich zmysłów. Ceną za lepszy stopień kompresji jest w ich
przypadku wprawdzie utrata części informacji, jednak metody te są tak projektowane, aby utrata
jakości była niezauważalna lub prawie niezauważalna dla człowieka.
Typowe operacje w zakresie przetwarzania danych multimedialnych to różnego rodzaju ope-
racje edycyjne, konwersje formatów oraz prezentacja danych (kwestia nietrywialna i niezwykle
istotna w przypadku danych ciągłych, gdzie wymagana jest synchronizacja i odpowiednia przepu-
stowość kanałów komunikacyjnych dla akceptowalnej jakości przekazu). Podstawowe zadanie,
które stawiane jest systemom multimedialnych baz danych, to wyszukiwanie obiektów spełniają-
cych kryteria zadane przez użytkownika, czyli innymi słowy przetwarzanie zapytań.
W kontekście multimedialnych baz danych można wyróżnić dwa typy zapytań: zapytania o
metadane i wyszukiwanie w oparciu o zawartość (ang. content-based retrieval). Metadane stano-
wią alfanumeryczny opis obiektu multimedialnego i dotyczą jego parametrów (np. rozmiar, meto-
da kompresji) lub zawartości (np. autor, wykonawca, tytuł, słowa kluczowe). Obsługa zapytań o
metadane, takich jak np. „wyszukaj wszystkie obrazy w formacie GIF o rozmiarze poniżej 30
KB”, czy też „znajdź wszystkie filmy reżysera X, zapisane w formacie AVI”, w zasadzie nie wy-
kracza poza funkcjonalność tradycyjnych systemów relacyjnych. Wyzwanie dla twórców syste-
mów zarządzania multimedialnymi bazami danych stanowi wyszukiwanie ze względu na zawar-
tość, np. „wyszukaj obiekty (obrazy, utwory muzyczne) podobne do danego”, czy też „znajdź ob-
razy, na których dominuje kolor niebieski”. Jest to silny mechanizm, wymagający złożonych algo-
rytmów analizy zawartości obiektów multimedialnych. Jego atrakcyjność, w porównaniu z selek-
cją opartą o metadane, wynika głównie z tego, że wprowadzanie metadanych przy dodawaniu
kolejnych obiektów do bazy jest uciążliwe, a ponadto nie wszystkie właściwości można łatwo
opisać słownie (np. tekstury obrazów). Wyszukiwanie ze względu na zawartość znajduje zastoso-
wanie np. przy wykrywaniu plagiatów, projektowaniu mody, przeszukiwaniu wirtualnych galerii
sztuki, czy też projektowaniu wnętrz.
2.1. Obrazy
Obrazy zapisane w postaci cyfrowej najczęściej tworzone są przy użyciu aparatu cyfrowego
lub skanera. Mogą być również przechwytywane z sekwencji wideo pochodzących z kamery lub
odtwarzanych np. z magnetowidu albo też generowane programowo. Obrazy mają postać dwu-
wymiarowej tablicy punktów zwanych pikselami. Podstawowe charakterystyki opisujące parame-
try obrazów zapisanych w postaci cyfrowej to: format, wymiary, liczba kolorów i metoda kompre-
sji. Typowe metadane opisujące zawartość obrazów to: opis (np. opis obiektów przedstawionych
na obrazie), data i miejsce wykonania fotografii, dane fotografa, czy też tytuł obrazu i dane o jego
autorze (w przypadku fotografii dzieł malarskich)
2.2. Dane audio
Cyfrowe dane audio powstają przy użyciu urządzeń do rejestracji dźwięku, pochodzą z takich
źródeł jak mikrofon, ale również mogą być generowane programowo. Urządzenia do cyfrowego
zapisu dźwięku dostają na wejściu sygnał analogowy pochodzący z mikrofonu lub zapisany wcze-
śniej na nośnikach magnetycznych i dokonują jego konwersji na zapis cyfrowy o zadanych charak-
terystykach. Podstawowe charakterystyki opisujące parametry cyfrowych danych audio to: format,
typ kodowania, liczba kanałów, częstotliwość próbkowania, rozmiar próbki, metoda kompresji i
czas trwania. Typowe metadane opisujące zawartość danych audio to: opis, data nagrania oraz
autor, kompozytor lub wykonawca
Oracle interMedia na tle standardu SQL/MM i prototypowych systemów...
123
2.3. Wideo
Cyfrowe dane wideo pochodzą najczęściej z kamery wideo, choć mogą być również genero-
wane programowo. Urządzenia do cyfrowego zapisu wideo mogą otrzymać na wejściu sygnał
analogowy pochodzący np. z kamery i dokonać jego konwersji na zapis cyfrowy o zadanych cha-
rakterystykach. Podstawowe charakterystyki opisujące parametry cyfrowych danych wideo to:
format, typ kodowania, liczba klatek na sekundę, rozmiar klatki, metoda kompresji, liczba kolo-
rów, czas trwania oraz częstotliwość strumienia bitów (ang. bit rate). Typowe metadane opisujące
zawartość danych wideo to: opis, data nagrania, producent, reżyser, obsada, itp.
3. Przegląd prototypowych rozwiązań do obsługi danych multi-
medialnych w bazach danych
Rozwój technologiczny spowodował, że idea przechowywania dużej ilości danych multime-
dialnych w bazach danych stała się realna. Okazało się jednak, że tradycyjne struktury, a przede
wszystkim języki zapytań nie uwzględniają złożonej charakterystyki mediów. Problem ten stał się
prawdziwym wyzwaniem dla wielu informatyków, co zaowocowało niezliczoną wręcz liczbą sys-
temów i języków eksperymentalnych. Rozwiązań aspirujących do roli standardu obejmującego
całość zagadnienia powstało jednak niewiele. Zdecydowana większość systemów koncentrowała
się na jednym typie danych multimedialnych (np. statyczne obrazy) lub na konkretnych zastoso-
waniach multimediów (np. medycyna). Szczególnie dużą uwagę poświęcono konstrukcji języków
zapytań, które często odchodziły od postaci ściśle tekstowej. Miało to nie tylko ułatwić korzysta-
nie z nich użytkownikom, ale umożliwiało również tworzenie zapytań dotychczas bardzo trudnych
do skonstruowania. Przykładem mogą tu być języki, w których użytkownik rysuje na ekranie pe-
wien obraz, a następnie próbuje odnaleźć w bazie danych obraz najbardziej podobny do naryso-
wanego.
Przy tworzeniu systemów prototypowych wykorzystano dwa główne podejścia:
•
rozszerzanie języka SQL lub OQL
Największą zaletą jest duża popularność języka SQL. Język ten będąc od dawna standar-
dem dla baz relacyjnych ma dobrze opracowane podstawy teoretyczne. Rozszerzenia języka
SQL do zastosowań multimedialnych na ogół opierają się na systemach postrelacyjnych
i elementach obiektowych wprowadzonych do języka zapytań. Równie dobrze różnorodność
typów mediów oraz mnogość zastosowań uwzględniają systemy typowo obiektowe i po-
dobny do języka SQL język OQL.
Poniżej przedstawiono kilka przykładów systemów prototypowych, które pokazują różnorod-
ne podejścia do kwestii przechowywania i wyszukiwania danych multimedialnych.
3.1. SCORE (a System for COntent based REtrieval of pictures)
SCORE [1] proponuje specjalny model reprezentacji zawartości obrazów. Każdy z obrazów w
bazie danych jest opisany przez zmodyfikowany diagram encji-związków. Encje nie oznaczają tu
jednak typów, ale konkretne obiekty. Podobnie symbol związku dotyczy jednego konkretnego
powiązania, a nie zbioru powiązań.
tworzenie nowych języków zapytań od podstaw
Największą wadą jest w tym przypadku brak akceptacji użytkowników, których trudno
przekonać do nauki i użytkowania nowego języka. Zwykle jednak języki tego typu w spo-
sób bardziej naturalny są dopasowane do wymagań, które stawia się przed multimedialną
bazą danych. Nowe języki są często stosowane w zupełnie nowych, prototypowych syste-
mach zarządzania bazą danych.
•
124
Łukasz Matuszczak, Marek Wojciechowski
DRZEWO
na prawo
RZEKA
nad
MOST
na lewo
NIEBO
wysokie
WZGÓRZE
zielone
niebieskie
niskie
Rys. 1. Przykładowy diagram E-R reprezentujący zawartość obrazka z krajobrazem
Oprócz związków skierowanych (jak na Rys. 1) mogą istnieć powiązania symetryczne, np. so-
sna stoi obok brzozy. Wyróżniono dwa typy związków. Akcje opisują pewne sytuacje obecne na
obrazku (pies goni kota). Relacje przestrzenne określają względne pozycje obiektów na obrazie
(na lewo, pod, z przodu).
Tworzenie zapytania polega na graficznym wyborze kilku obiektów z palety ikon. Następnie
użytkownik określa dodatkowe parametry i atrybuty obiektów (kolor, rozmiar, liczba) oraz defi-
niuje żądane związki między obiektami. Wykonanie zapytania uwzględnia następujące elementy:
•
Przybliżone dopasowywanie wartości atrybutów oraz akcji. Wykorzystywana jest hie-
rarchia generalizacji dla stosowanych pojęć. Przykładowo poszukiwanie drzewa za-
kończy się dopasowaniem również dla obrazków z sosną, o ile w hierarchii zdefinio-
wano, że sosna jest drzewem.
•
Reguły dedukcji dla związków przestrzennych, które określają np. przechodniość ta-
kich relacji jak na lewo.
•
Sortowanie wyników wg ściśle określonej miary podobieństwa.
•
Użytkownik może iteracyjnie udoskonalać zapytanie (ang. selective relevance fe-
edback). Wyniki zapytania przedstawione są jako pary (obrazek, jego symboliczna re-
prezentacja). Poprzez przenoszenie pewnych fragmentów wyniku do okna zapytania,
można stopniowo dochodzić do pożądanego rezultatu.
3.2. TVQL (Temporal Visual Query Language)
Język TVQL [3] koncentruje się na analizie czasowej danych wideo, wykorzystując przy tym
ich cechy przestrzenno-temporalne. Te cechy, jak i pewna informacja semantyczna, są przecho-
wywane w specjalnym modelu adnotacji (Rys. 2). Adnotacje przypisują sekwencji wideo informa-
cje na temat zdarzenia, które jest na niej przedstawione.
, m.in. :
- początkowa klatka,
- czas trwania
adnotacja
zawartość:
- podmiot akcji
- akcja
- obiekt akcji
- kategoria
informacja
przestrzenna:
- pozycja
- szerokość
- wysokość
obiekt opisu
komentarze
historia:
- autor
- data stworzenia
- data modyfikacji
...
Rys. 2. Fragment modelu adnotacji
informacja
temporalna
39775568.001.png 39775568.002.png
Zgłoś jeśli naruszono regulamin