pobierz plik referatu - BDAS

Transkrypt

pobierz plik referatu - BDAS
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
Rozdział 21
w
Wykorzystanie baz danych do zarządzania
multimedialnymi metadanymi w systemach
monitoringu
w
1 Wstęp
da
.b
w
Streszczenie. Aktualnie dominującym problemem w zakresie systemów monitoringu jest składowanie oraz indeksowanie materiału audiowizualnego.
Dynamiczny rozwój i znaczne upowszechnienie systemów monitorujących
powoduje, iż kluczowym dla skuteczności i poprawności pracy systemu jest
właściwe zorganizowanie systemu składowania oraz opisu obrazu. Prezentowana praca przedstawia podejście do tworzenia tego typu systemów z wykorzystaniem systemów zarządzania bazami danych.
pl
s.
Aktualnie dominującym problemem w zakresie systemów monitoringu jest składowanie
oraz indeksowanie materiału audiowizualnego. Duży postęp w możliwościach akwizycji,
przesyłu, jakości materiału oraz znacząca obniżka cen kamer wideo spowodował dynamiczny rozwój i znaczne upowszechnienie systemów monitorujących. Powoduje to powstawanie dużych ilości zbiorów wizualnych. Charakter tych zasobów, operacje jakie na nich
można wykonywać powodują, iż kluczowym dla skuteczności i poprawności pracy systemu
jest właściwe zorganizowanie systemu składowania oraz opisu obrazu.
W niniejszym rozdziale przedstawiony zostanie aspekt organizacji indeksacji materiału
z nadzoru wizualnego. Przedstawione podejście może zostać zastosowane zarówno do materiału będącego rejestracją ciągłą jak i poklatkowego zapisu.
Zgodnie z najbardziej rozpowszechnioną definicją baza danych jest zbiorem danych będących zapisem informacji opisujących pewien aspekt modelowanego (rejestrowanego)
fragmentu świata rzeczywistego. W myśl tej definicji systemy monitoringu wydają się być
idealnym przykładem wysoce zaawansowanej bazy danych. Wysoki poziom zaawansowania wynika z faktu, iż w odróżnieniu od pozostałych systemów baz danych, systemy monitoringu posiadają unikalną zdolność samodzielnego, w pełni automatycznego pozyskiwania
danych. Dane w postaci cyfrowego zapisu są pozyskiwane i składowane. W rzeczywistości
jednak systemy te posiadają pewne słabe punkty. Najważniejszym z nich jest fakt, iż jak
wspomniano co prawda samodzielnie pozyskują dane, jednak dane te są generalnie dla samego systemu „nieczytelne”. Dopiero wykorzystanie zaawansowanych, dziedzinowych
technik wizji komputerowej lub analizy dźwięku pozwala dotrzeć do semantyki pozyskanych zasobów. Dotychczas działające systemy baz danych posiadając dane przetworzone,
o charakterze prostym, jednoznacznie interpretowalnym [17], wykazywały się dużą dokładAdam Duszeńko, Michał Maćkowski, Karolina Nurzyńska, Krzysztof Skoroniak
Politechnika Śląska, Instytut Informatyki, ul. Akademicka 16, 44-100 Gliwice, Polska
email:{Adam.Duszenko, Michal.Mackowski, Karolina.Nurzynska,
Krzysztof.Skoroniak}@polsl.pl
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
A.Duszeńko, M. Maćkowski, K.Nurzyńska, K. Skoroniak
w
nością i adekwatnością uzyskiwanych wyników. W przypadku automatycznego pozyskiwania opisu semantycznego, zazwyczaj wobec dużej niedokładności metod analizy, metadane
obarczone są często istotnym błędem [2] wprowadzającym do systemu rozmycie. Fakt ten
musi być uwzględniony na etapie projektowania i realizacji metod wyszukiwania.
Użyty termin metadane zgodnie z [13] oznacza uporządkowany zbiór atrybutów opisujących określony zasób. W klasycznych bazach danych, gdzie dane mają charakter prosty,
metadane zasadniczo ograniczają się do określania struktury rekordów oraz przyjętych
form reprezentacji. Innymi słowy są to metadane strukturalne. W przypadku zasobów złożonych pojawiają się metadane odnoszące się do zawartości zasobów. W tym kontekście
mówimy o metadanych semantycznych, opisujących pewien aspekt informacji złożonej zawartej w zasobie multimedialnym. Przedmiotem prezentowanych prac jest użycie opisu
semantycznego w aspekcie detekcji ruchu na obrazach.
Jawne wprowadzenie metadanych semantycznych, jako ukrytej a zarazem trwałej warstwy reprezentacji zasobów złożonych, umożliwia rozbudowanie funkcjonalności systemu
zarządzającego bazą danych (SZBD) o operacje, które ze względów wydajnościowych nie
są możliwe do wykonania bezpośrednio na zasobach złożonych w czasie realizacji zapytania. Dodatkowym utrudnieniem jest wielorozdzielczy charakter niektórych metadanych semantycznych. Powoduje to konieczność budowy mechanizmów analizy posiadających
zdolność swobodnej i szybkiej zmiany poziomu granulacji analizowanych danych.
Dla budowy systemu zarządzającego danymi z monitoringu najistotniejszym jest rodzaj
operacji, jakie można wykonać. Podstawowe operacje to wizualizacja oraz wyszukiwanie.
Dotychczas systemy monitoringu były tworzone bez wykorzystania systemów bazodanowych. Aktualnie wobec istotnego postępu w systemach zarządzania bazą danych SZBD
możliwe, a nawet wskazane jest wykorzystanie systemów SZBD jako podstawowego elementu konstrukcji systemów zarządzających materiałem audiowizualnym. Prezentowana
praca ma za zadanie zweryfikowanie możliwości użycia SZBD do pełnej organizacji składowania oraz głównej platformy implementacji mechanizmów zarządzania tymi zasobami.
da
.b
w
w
2 Opis podobnych rozwiązań
pl
s.
Zasadniczą funkcją nowoczesnych systemów monitoringu wizyjnego jest możliwość obserwacji chronionego obiektu poprzez sieć Internet. Ostatnie lata wskazują na gwałtowny rozwój tego typu rozwiązań, nazywanych często Web Cam Service. Bazują one na różnych podejściach: z wykorzystaniem apletów, serwerów FTP, baz danych oraz różnych systemów
operacyjnych. Przykładem takiego rozwiązania jest system szerzej opisany w publikacji
[15] jego cechą charakterystyczną jest wykorzystanie baz danych do indeksacji zdjęć w celu ich późniejszego odtworzenia na żądanie. Aplikacja serwerowa (ang. Web Cam Management Agent) działa w systemie Linux i udostępnia użytkownikom zdalnym (po przejściu
procesu uwierzytelniania) dostęp do konfiguracji systemu poprzez aplety Javy działające
w przeglądarce internetowej. Zadaniem aplikacji serwera jest również kompresja obrazu
oraz dostosowanie jego jakości do przepustowości łącza. Baza danych posłużyła jako element wspomagający zapisywanie i późniejsze odtwarzanie materiału wideo. Przedstawiony
system nie umożliwia jednak analizy obrazu wideo w celu wykrycia w nim ruchu, co jest
jego główną wadą – w znaczący sposób zwiększa to koszty archiwizacji danych. Wykorzystanie algorytmów rozpoznawania ruchu w obrazie oraz wykorzystanie baz danych do
przechowywania obrazów wraz z ich opisem semantycznym pozwala w znaczny sposób
rozwinąć możliwości systemu. Ponadto rozwiązanie takie umożliwia stworzenie aplikacji
pozwalającej na wyszukiwanie i prezentację tylko tych obrazów, w których ruch nastąpił
220
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
Wykorzystanie baz danych do zarządzania multimedialnymi metadanymi w systemach monitoringu
w
w wyznaczonym przez użytkownika obszarze, co jest jednym z głównych celów systemu
przedstawionego w niniejszym rozdziale.
Systemy monitoringu można podzielić ze względu na technologię transmisji wizji
na systemy analogowe i cyfrowe. Główną zaletą systemów analogowych [14] jest ich cena
oraz prostota instalacji, posiadają one także pewne wady: ograniczony zasięg transmisji czy
wrażliwość na zakłócenia elektromagnetyczne. Systemy te najczęściej wykorzystywane
są w układach lokalnych, przy niewielkich odległościach transmisji. Elementami wchodzącymi w ich skład są:
− kamera służąca do rejestracji obrazu,
− kanał transmisji w tym kabel koncentryczny, para przewodów miedzianych (skrętka)
czy światłowód,
− urządzenia przełączające umożliwiające monitoring przy wykorzystaniu więcej niż
jednej kamery,
− monitor wyświetlający obraz z kamer.
Transmisja sygnału na większe odległości wymaga wykorzystania systemów cyfrowych.
Głównym zadaniem takich systemów jest digitalizacja i kompresja obrazu wideo. W zależności od wymagań, digitalizacja i kompresja mogą występować w różnych punktach struktury systemu (rys. 1):
− na poziomie kamer wyposażonych w interfejs sieciowy oraz układ konwertera analogowo cyfrowego,
− w urządzeniach zewnętrznych (wideo serwerach) dokonujących konwersji wejściowego sygnału analogowego z kamery na sygnał cyfrowy,
− podczas archiwizacji danych z wykorzystaniem cyfrowych systemów zapisu.
pl
s.
da
.b
w
w
Rys. 1. Przykłady różnych sposobów digitalizacji w systemach monitoringu
Głównymi zaletami takich systemów są:
− możliwość podglądu obiektu monitorowanego i sterowania systemem z praktycznie
dowolnego miejsca,
− rozszerzenie możliwości sterowania i automatyzacji w stosunku do systemów analogowych,
− duża skalowalność systemu poprzez łatwą możliwość dodania nowych urządzeń,
− możliwość integracji z istniejącymi systemami (systemami alarmowymi czy
telekomunikacyjnymi),
− łatwa możliwość cyfrowej obróbki i przetwarzania pozyskanego obrazu wideo.
221
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
A.Duszeńko, M. Maćkowski, K.Nurzyńska, K. Skoroniak
3 System monitoringu oparty na bazie danych
3.1 Opis systemu
w
Zaproponowana struktura systemu składa się z trzech warstw. Każda warstwa spełnia jedno
z trzech zadań akwizycji, buforowania oraz składowania i indeksacji materiału monitoringu.
Warstwa akwizycji zbudowana jest w oparciu o dwie analogowe kamery (Simtec WK9406-3) oraz sprzętowo zrealizowany serwer wideo (Planet IVS-100 [3]) połączony za pośrednictwem łącza w standardzie Fast Ethernet z routerem (Planet XRT-401D [4]) umożliwiającym obserwowanie obiektu z dowolnego miejsca, w którym dostępna jest sieć Internet
(rys. 2). Wszystkie urządzenia zasilane są z centrali posiadającej akumulatorowe podtrzymanie napięcia. Wpływa to istotnie na zwiększenie bezpieczeństwa całego systemu, który
w razie zaniku zasilania nadal będzie dawał możliwość obserwacji monitorowanego obiektu.
Serwer wideo posiada detekcję ruchu. W każdym przypadku, kiedy obraz z kamery ulegnie zmianie, wysyłany jest on za pomocą sieci Internet do serwera FTP, gdzie następuje
wstępne składowanie pozyskanego materiału.
da
.b
w
w
pl
s.
Rys. 2. Struktura systemu akwizycji, buforowania oraz składowania i indeksacji materiału
monitoringu
Kamery oraz serwer video wysyłający pozyskane obrazy za pomocą Internetu do serwera
FTP dają możliwość obserwacji obiektu „na żywo”, a także pozwalają na przeglądanie materiału zarchiwizowanego. Taka konfiguracja nie jest jednak wystarczająca w przypadku, w
którym istnieje konieczność zaawansowanego przetwarzania czy wyszukiwania obrazów
zawierających interesujące informacje. Wówczas wymagane jest rozszerzenie systemu o
bazę danych oraz kilka dodatkowych funkcji analizy treści (semantyki) obrazów (warstwa
trzecia przedstawianego systemu), które łącznie pozwalają uzyskać wymaganą funkcjonalność.
Warstwa druga, buforowania wyniku monitoringu, zrealizowana jest w oparciu o serwer
FTP oraz aplikację działającą w trybie demona oczekującą na nowe zasoby przesyłane
z serwera wideo. Obecność serwera FTP spełnia w tym miejscu dwojakie zadanie.
Po pierwsze stanowi element buforujący obrazy nadsyłane przez serwer wideo. Zważywszy
na fakt, iż charakter zdarzeń wyzwalających przesył obrazów z serwera wideo ma charakter
incydentalny i powoduje chwilową, ale intensywną aktywność konieczne jest zapewnienie
222
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
Wykorzystanie baz danych do zarządzania multimedialnymi metadanymi w systemach monitoringu
w
elementu mogącego zbuforować dane zanim zostaną one przetworzone przez serwer bazy
danych. Analiza czasowa wydajności serwera bazy danych jako stanowiska obsługi oraz
serwera wideo jako źródła zgłoszeń stanowi odrębne zagadnienie, którego analiza pozwoliłaby oszacować parametry elementów zapewniające możliwość pracy systemu w czasie
rzeczywistym. Drugą funkcją serwera FTP wraz z aplikacją monitorującą jest realizacja
interfejsu umożliwiającego przesył obrazu z serwera wideo do bazy danych.
Baza danych, stanowiąca realizację trzeciej warstwy systemu, również spełnia kilka zadań. Po pierwsze organizuje składowanie samych obrazów. Po drugie jest platformą implementacji metod ekstrakcji opisu semantycznego obrazów. Po trzecie realizuje zarządzanie
metadanymi obrazów i tworzeniem w oparciu o nie stosownych struktur indeksujących.
Wspomniana ekstrakcja metadanych na obecnym etapie sprowadza się do detekcji ruchu
i jest dokładnie opisana w punkcie 3.3.
Logiczny obraz proponowanego systemu został zilustrowany na rys. 3.
da
.b
w
w
Rys. 3. Diagram aktywności systemu
pl
s.
3.2 Składowanie danych w bazie
Wykorzystanie bazy danych w systemie monitoringu jest podyktowane faktem, że jest to
naturalny sposób gromadzenia danych w systemach komputerowych. Często rezygnuje się
z nich ze względu na spowalnianie działania pracy systemu. W przypadku systemów przechowujących tylko informację w postaci obrazu jest to dobre rozwiązanie, jednak kiedy
chcemy poza samymi obrazami przechowywać informacje uzyskane z ich przetwarzania
korzyści wypływające z przechowywania metadanych w bazie wzrastają, szczególnie
w przypadku wyszukiwania obrazów na podstawie dodatkowych kryteriów.
W opisywanym systemie struktura bazy składała się z dwóch tablic OBRAZ i REGIONY_UDT (rys. 4). W pierwszej zawarte są informacje dotyczące obrazu, w tym data utworzenia, nazwa pliku i sam obraz. Druga tablica zawiera informacje uzyskaną w wyniku działania programu poszukującego ruchu w poszczególnych klatkach. Każdy rekord odpowiada
osobnemu regionowi ruchu opisanemu przez współrzędne prostokąta określonego w procedurze detekcji ruchu oraz informację, na którym obrazie znajduje się ten region.
223
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
A.Duszeńko, M. Maćkowski, K.Nurzyńska, K. Skoroniak
w
Rys. 4. Schemat bazy danych
pl
s.
da
.b
w
w
Elementem, na który należało zwrócić szczególną uwagę jest sposób dostępu do kolumny,
w której będą znajdowały się obrazy. A dokładniej na sposób zarządzania polami typu
BLOB (ang. binary large object) w systemach zarządzania bazą danych. W celu testów
zostały stworzone dwie instancje bazy dla naszego systemu. Jedna z nich została stworzona
na MS SQL Server 2005, druga na serwerze IBM DB2 9.1.
Składowanie dużych danych w MS SQL [16] może być zrealizowane na kilka sposobów. Pierwszy z nich polega na przechowywaniu w wierszu tylko wskaźnika do danych.
Zazwyczaj wskaźnik ten jest 16 bajtowy i wskazuje na korzeń drzewa zbudowanego
z wewnętrznych wskaźników, które wskazują na strony, gdzie zostały zapisane obiekty.
W celu przyspieszenia wyszukiwania, jeżeli jest wystarczająca ilość miejsca w wierszu zostają zapisane wszystkie wskaźniki z drzewa i ono samo zostaje usunięte, dzięki czemu nie
jest już potrzebna operacja dojścia do strony ze wskaźnikami. Kolejny sposób polega na
składowaniu danych w samym wierszu, w celu umożliwienia takiej opcji należy włączyć
opcję text in row. Opcja ta jednak jest dostępna ze względu na kompatybilność z poprzednimi wersjami i w kolejnych wersjach SZBD nie będzie już wspierana. Jej miejsce zajmie opcja large value types out of row, która jeżeli nie jest włączona również umożliwia składowanie dużych obiektów binarnych bezpośrednio w wierszach tabeli. Główną różnicą między tymi opcjami jest narzucony z góry rozmiar wiersza w przypadku drugiej opcji (8 000
bajtów). Jeżeli rozmiar składowanego obiektu będzie przekraczał założoną wielkość kolumny to tak jak w pierwszym przypadku w wierszu zostanie zapisany wskaźnik.
Umieszczenie dużych zasobów bezpośrednio w plikach tabeli zawierających pozostałe
kolumny powodowałoby bardzo duże koszty przy wykonywaniu sekwencyjnego przejścia
przez tabelę. Plik zawierający tabelę (lub jej fragment) w takiej sytuacji musi być wczytany
w całości, co przy obecności kolumn typu LOB powodowałoby bardzo duży koszt. W celu
uniknięcia takiej sytuacji dla obiektów LOB w przypadku SZBD IBM DB2 [1], [6] tworzone są osobne pliki, natomiast w tabeli właściwej umieszczany jest jedynie indykator wskazujący miejsce złożenia zasobu LOB. Dzięki temu nie występuje zjawisko gwałtownego
przyrostu plików tabel i nie wrasta koszt operacji dyskowych przy sekwencyjnych przejściach przez tabele.
W przypadku wykonania selekcji z uwzględnieniem kolumny typu LOB [10] pobierany
jest jedynie indykator obiektu binarnego. Dopiero w momencie uzyskiwania dostępu do takiego obiektu następuje materializacja indykatora sprowadzająca się do odczytania ze
struktur dyskowych wskazywanego zasobu.
Opisane w punkcie 4 zadanie wyszukiwania sprowadza się do wyszukiwania regionów
spełniających zadane kryterium, dzięki czemu możliwe jest zidentyfikowanie właściwych
obrazów. Wyznaczane na etapie ładowania danych regiony stanowią metadane semantyczne charakteryzujące się, w odróżnieniu do opisywanych zasobów, jednoznaczną interpretacją i jednolitą strukturą. Tego typu dane są łatwe do analizowania w SZBD. W systemach
tego typu możemy zasadniczo wyznaczyć dwie grupy zapytań. Pierwsza obejmuje zadanie
wyszukiwania w oparciu o metadane opisowe lub strukturalne. Są to metadane zasadniczo
224
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
Wykorzystanie baz danych do zarządzania multimedialnymi metadanymi w systemach monitoringu
w
w relacji 1 do 1 względem obrazu typu: data stworzenia, dominujący kolor, histogram kolorów itp. Tego typu metadane można składować w tej samej tabeli co właściwy obraz. Użycie indeksów jak również fakt realizacji pól typu LOB w oparciu o indykatory zapewnia
wystarczającą wydajność przy przeszukiwaniu takiej tabeli. Drugą grupę zapytań stanowią
zapytania realizujące wyszukiwanie semantyczne, gdzie poszukujemy zasobu uwzględniając niesioną przez niego informację. W naszym przypadku informacją tą jest ruch zaobserwowany pomiędzy dwoma kolejnymi ujęciami tej samej sceny. Mamy tutaj relację typu 1
do n, gdyż na jednym obrazie możemy wykryć wiele rozłącznych obszarów ruchu. Oczywiście jest to tylko jeden z wielu przykładów możliwości w pełni automatycznego generowania metadanych o charakterze semantycznym.
Przy modelowaniu metadanych, a zwłaszcza metadanych semantycznych, istotna, a nawet kluczowa dla wydajności całego rozwiązania, jest granulacja przyjętego opisu. W prezentowanym przykładzie informację o wykrytych obszarach ruchu można zrealizować na
wielu poziomach. Możliwe jest atomowe opisanie całego obrazu i skondensowanie informacji o obszarach ruchu do pojedynczego rekordu. Z drugiej strony można dowolnie rozbić
tę informację zapisując ją w postaci wielu rekordów odnoszących się do tego samego obrazu. W pierwszym przypadku otrzymujemy wygodną relację 1 do 1 pomiędzy obrazem i jego metadanymi jednak kosztem wyraźnego skomplikowania operacji porównywania i wyszukiwania, gdyż taki opis charakteryzuje się złożoną i niejednolitą strukturą. W drugim
przypadku mamy proste jednolite rekordy pozwalające łatwo je porównywać i wyszukiwać,
jednak do zrealizowania głównego wyszukiwania niezbędna staje się operacja grupowania,
a nawet agregowania danych z niskiego poziomu do odpowiednio wysokiego względem zadanych kryteriów wyszukiwania. Zastosowane w tym przypadku operacje agregacji i podwyższania poziomu granulacji opisu przedstawiono w punkcie 4.
da
.b
w
w
3.3 Analiza obrazów
pl
s.
Systemy monitoringu zapewniają podstawową formę akwizycji i składowania danych multimedialnych. Ilość składowanych w ten sposób informacji rozrasta się w szybkim tempie,
stąd też niewystarczające jest już samo ich składowanie i możliwość przeglądania. Dla
użytkowników coraz większe znaczenie mają ułatwienia w wyszukiwaniu potrzebnych danych przechowywanych przez taki system. Do takich informacji w pierwszym rzędzie należą oczywiście czas i miejsce pobrania danych, jednak na szeroką skale mogą one być niewystarczające. Stąd też dąży się do wzbogacenia systemów o opis tego, co przechowują poszczególne jego rekordy, w naszym przypadku opis obrazów. Analiza obrazu niesie za sobą
dodatkowe obciążenie dla efektywności działania systemu, dlatego też poszukuje się jak
najprostszych, a jednocześnie dających użyteczne informacje algorytmów, takich jak określenie regionów ruchu w obrazie czy regionów zawierających poszukiwany kolor. Można
również wykorzystać algorytmy detekcji tablic rejestracyjnych, czy twarzy, jednak charakteryzują się one o wiele większą złożonością obliczeniową.
W przypadku opisywanego systemu ograniczyliśmy się do detekcji ruchu w obrazie.
Jednym z podstawowych algorytmów, stanowiącym podstawę detektora ruchu w obrazach
kolorowych opracowanym przez autorów pracy [12], jest obliczanie różnicy między klatką
bieżącą oraz obrazem odniesienia, zgodnie ze wzorem:
1 gdy
M ( x, y ) = 
0 gdy
K ( x, y ) − R ( x, y ) > próg
K ( x, y ) − R( x, y ) ≤ próg
gdzie:
M(x,y) - maska opisująca obszary ruchu w obrazie,
225
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
A.Duszeńko, M. Maćkowski, K.Nurzyńska, K. Skoroniak
w
K(x,y) – bieżący obraz,
R(x,y) – obraz referencyjny,
próg – wartość określająca czułość algorytmu na ruch oraz ograniczająca wpływ zmiany
oświetlenia na błędną detekcję ruchu.
Dodatkowo został wykorzystany filtr medianowy oraz określony minimalny rozmiar obszaru ruchu, aby zmniejszyć ilość rozpatrywanych regionów i dzięki temu przyspieszyć
działanie systemu. Następnie do opisu regionów zdecydowano, że zostaną wykorzystane
prostokąty – czyli każdy region będzie w bazie opisany przez cztery zmienne odpowiadające odpowiednio współrzędnym górnego lewego i dolnego prawego wierzchołka prostokąta.
Tak określone regiony stają się analizowanym i zarządzanym w prezentowym systemie opisem semantycznym – metadanymi semantycznymi. Założono również na podstawie doświadczeń, że aby zapewnić dużą dokładność określania obszaru ruchu przez system przy
jednoczesnym niewielkim wzroście czasu działania funkcji tworzącej prostokąty, każdy
prostokątny region powinien być wypełniony w 70% przez znaleziony obszar ruchu.
W przypadku, gdy warunek ten nie jest spełniony prostokąt opisujący region jest dzielony
na cztery tak długo, aż założenie zostanie spełnione.
Przyjęte kryterium opisu semantycznego obrazów jest tylko przykładem. Innymi mogą
być na przykład detekcja koloru skóry [9], lub rozpoznawanie twarzy [7] jak i wiele innych
zależnych od charakteru wykonywanego przeszukiwania.
da
.b
w
w
4 Opis doświadczeń
pl
s.
Zrealizowany system składa się z dwóch modułów. Pierwszy jak wspomniano realizuje
operację ładowania i przygotowania danych pochodzących z monitoringu. Pobiera on obrazy z serwera FTP, generuje opis w postaci regionów ruchu, po czym zarówno obraz jak i jego opis umieszcza na serwerze bazy danych. Druga aplikacja wyposażona w prosty interfejs umożliwia realizację operacji wyszukiwania wg kryterium obszaru zawierającego ruch.
Na zdefiniowanie zadania wyszukiwania składa się określenie minimalnego i maksymalnego obszaru ruchu, jaki ma zostać uwzględniony w wyszukiwaniu. Pozwala to szacunkowo
określić, jakiej wielkości ruchomych obiektów szukamy zapewniając większą adekwatność
wyszukiwania. Drugim kryterium jest określenie obszaru sceny, w którym poszukujemy
obrazów zawierających ruch. Okno aplikacji wyszukiwania z przykładowym wynikiem
przedstawiono na rys. 5. Zostały tam określone dwa obszary zainteresowania natomiast
wielkość analizowanych obszarów obrazu została określona jako pomiędzy 1 a 5%
wielkości całego obrazu.
226
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
Wykorzystanie baz danych do zarządzania multimedialnymi metadanymi w systemach monitoringu
w
w
w
Rys. 5. Okno aplikacji wyszukiwania obrazów wg zadanych kryteriów
da
.b
Oczywiście zwrócenie wszystkich obrazów, na których w zakreślonych obszarach wykryto
ruch w dowolnym porządku nie daje satysfakcjonującego wyniku. Wynikiem znacznie
lepszym jest zbiór obrazów posortowanych zgodnie ze stopniem pokrycia wybranego obszaru ruchu. Innymi słowy obrazy, które w zaznaczonych obszarach mają „najwięcej” ruchu powinny być umieszczone na początku listy wyników. Ta operacja sprowadza się do
agregacji metadanych semantycznych, czyli innymi słowy podwyższenia poziomu ich granulacji [8], [19], realizowanej na przykład za pomocą funkcji użytkownika (ang. user
defined function, UDF) [11]. W prezentowanym systemie osiągnięte to zostało z pomocą
funkcji agregujących użytkownika. Zgodnie z naszymi oczekiwaniami otrzymane wyniki
charakteryzowały się dużą precyzją wyszukiwania, co potwierdza słuszność przyjętego modelu opisu obrazu oraz zastosowanych mechanizmów organizacji procesu wyszukiwania.
pl
s.
5 Wnioski
Zaprezentowany system wykorzystuje jedną z najprostszych metod ekstrakcji metadanych
semantycznych z sekwencji obrazów statycznych w postaci detekcji obszarów ruchu. Dla
rozszerzenia możliwości wyszukiwania należałoby zastosować bardziej złożone, semantycznie posiadające większą siłę ekspresji metadane wysokopoziomowe. Nie zmienia to
jednak sytuacji, iż zarządzanie metadanymi dowolnego rodzaju i dowolnego poziomu będzie przebiegało zgodnie z przedstawionym scenariuszem i z wykorzystaniem tych samych
mechanizmów. Prezentowane wnioski i praktyczne rozwiązania mają zastosowanie również
w pokrewnych aplikacjach jak na przykład systemach gromadzących multimedialne reprezentacje obiektów muzealnych [18].
227
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007
Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007
A.Duszeńko, M. Maćkowski, K.Nurzyńska, K. Skoroniak
Literatura
1.
2.
w
3.
4.
5.
6.
7.
8.
9.
10.
11.
13.
14.
15.
16.
17.
18.
19.
pl
s.
da
.b
12.
w
w
Bhogal K.: Thinking big – java development with LOBs in DB2 Universal Database. IBM
Redbooks, 2003.
Chmielewski L.: Metody akumulacji danych w analizie obrazów cyfrowych. Akademicka
Oficyna Wydawnicza EXIT, Warszawa, 2006.
Datasheet Planet IVS-100, www.planet.com.tw, 2007.
Datasheet Planet XRT-401D, www.planet.com.tw, 2007.
Duszeńko A.: Multimedialna baza danych DB2. Common News, ISSN 1896-0790, str.: 20-22,
vol.1, Bytom 2006.
Duszeńko A.: Multimedialne Bazy Danych. Bazy Danych; Modele, Technologie, Narzędzia,
ISBN 83-206-1572-0, str.: 233-239, WKŁ, Gliwice, 2005.
Duszeńko A., Kawulok M.: Automatyczne rozpoznawanie twarzy jako istotny element
multimedialnych baz danych. Bazy Danych Struktury, Algorytmy, Metody,
ISBN 83-206-1611-5, str. 377-384, WKŁ, Gliwice 2006.
Duszeńko A., Nurzyńska K.: Funkcje Agregujące Użytkownika. Bazy Danych, Aplikacje
i Systemy, Ustroń, 2007.
Duszeńko A., Nurzyńska K.: Porównanie metod detekcji skóry (jako wstępny etap
rozpoznawania twarzy i gestów). Systemy Informatyczne z Ograniczeniami Czasowymi, ISBN
83-106-1612-3, str.: 457-469, WKŁ, Gliwice 2006.
IBM Corp.: IBM® DB2 Universal Database™SQL Reference, USA, 2006.
IBM Corp.: IBM® DB2 Universal Database™Application Development Guide: Programming
Server Applications, USA, 2004.
Jing Guo, Chng Eng Siong, Rajan D.: Foreground motion detection by difference-based spatial
temporal entropy image. The IEEE X Regional Conference TENCON, vol. A, 2004.
Kosch H.: Distributed Multimedia Database Technologies Supported by MPEG-7 and MPEG21. Auerbach Publications, 2004.
Krol P., Dzioch M.: Internet CCTV Guide, www.dipol.com.pl/bib21e.htm, 2007.
Lee M.M.-O., Chil-Woo Lee, Young-Cheol Kim: Network accessible security Web-based
camera server system using index search algorithm. ICII, Beijing 2001.
MSDN, msdn.microsoft.com, 2006.
Pankowski T.: Podstawy baz danych. Państwowe Wydawnictwo Naukowe, Warszawa 1992.
Skarbek K., Winiarczyk R.: Gromadzenie oraz upowszechnianie obiektów wirtualnych.
Konferencja Sieci Komputerowe, Zakopane 2006.
Stolze K.: Grouping support for user-defined aggregates in DB2 Universal Database. IBM
developerWorks, kwiecień, 2004.
228
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007

Podobne dokumenty