Current Page: | Greybox » Authoring » Course ID: medieninformatik » Modules » Module ID: m06 » Learning Units » Unit ID: 1_3_10 |
---|---|
Last Modified: | Tuesday, 2015-05-05 - 08:09:02 |
Tools: | Validate — Preview XML Preview HTML Preview PDF |
Alternative: | Printable HTML |
Title: | Multimedia Anfrageverarbeitung | ||
---|---|---|---|
Abstract: | Diese LU behandelt die wichtigsten Aspekte der Multimedia Anfrageverarbeitung: Anfrageoperatoren und Anfragealgebra. Um diese beiden Aspekte einzuführen, wiederholen wir die Anforderungen an Multimedia Anfragen und geben einige Beispiele. Außerdem führen wir eine Datenmodellierung ein, um später unsere ähnlichkeitsbasierte Anfragealgebra zu definieren. | ||
Status: | Review II: done | Version: | 8.0 |
History: |
Codeformatierung sieh LU10+11.ppt - Done, please check and remove xIgnore. Done (bt). Urheberrechthinweis in LOD2 ausgebessert. "siehe Folie" geändert. Acronyme, Absätze, Wordanführungszeichen done. Review von Prof. Kosch eingearbeitet. Formeln inline gestellt. |
Author 1: | Harald Kosch | E-Mail: | harald.kosch@itec.uni-klu.ac.at |
---|---|---|---|
Author 2: | (empty) | E-Mail: | (empty) |
Author 3: | (empty) | E-Mail: | (empty) |
Author 4: | (empty) | E-Mail: | (empty) |
Author 5: | (empty) | E-Mail: | (empty) |
Organization: | Universität Klagenfurt - Institut für Informatik-Systeme |
Beispiele von Multimedia Anfragen1Multimedia Anfragen - BeispielAuto PCAuto PDA_PhoneAutoZwei Bildtabellen ÜB und MA:
Anfrage 1: Finde ausgehend von einem bestimmten Bild einer Person in Tabelle ÜB die ähnlichsten Fotos in der Tabelle MA.
Betrachten wir ein weiteres Beispiel: Anfrage 2: Für alle Bilder in Tabelle ÜB, die gestern zwischen 16:00 und 18:00 aufgenommen wurden, sollen die ähnlichsten Bilder in Tabelle MA ausgegeben werden, samt ihrer zugehörigen Namen und Adressen.
Betrachten wir Anfrage 2:
Die Anfrage lautet in einer Anfragesprache wie SQL: AnfrageSELECT * FROM ÜB, MA WHERE ÜB.F ≈ MA.F AND ÜB.A'.Datum = 31-12-2003 AND ÜB.A'.Zeit BETWEEN (16:00 AND 18:00); Auto
2Multimedia Anfragen - BeispielAnfragen auf Multimediadatenbanksysteme werden mit der steigenden Masse an gespeicherten Multimediadaten immer häufiger eingesetzt, wie das Anwendungsbeispiel einer Überwachungskamera zeigt. Auto PCAuto PDA_PhoneAutoObige Abbildung veranschaulichen ein computergestütztes Überwachungssystem in einem Bürogebäude. Eine Überwachungskamera im Eingangsbereich nimmt von jeder Person, die das Gebäude betritt, ein Bild auf. Dieses Bild wird in die Datenbanktabelle ÜB gespeichert. Ein Eintrag in dieser Tabelle beinhaltet neben dem Überwachungsbild auch einen Signaturvektor (z.B. Farbhistogramm) des jeweiligen Bildes. Zeit und Datum der Aufnahme werden ebenfalls gespeichert. Eine zweite Tabelle MA beinhaltet Informationen über die Mitarbeiter im Bürogebäude. Neben textuellen Informationen wie Name und Tätigkeit wird in dieser Tabelle auch ein Foto des Mitarbeiters samt Signaturvektor gespeichert. Das relationale Schema der zwei Tabellen lässt sich wie folgt darstellen: ÜB(Foto, SigVektor, Zeit, Datum) Eine sinnvolle Anfrage auf diesem Schema wäre zum Beispiel: Diese und ähnliche Anfragen basierend auf Metadaten werden von bestehenden
Datenbanksystemen weitgehend unterstützt. Betrachten wir ein weiteres Beispiel: Für alle Bilder in Tabelle ÜB, die gestern zwischen 16:00 und 18:00 aufgenommen wurden, sollen die ähnlichsten Bilder in Tabelle MA ausgegeben werden, samt ihrer zugehörigen Namen und Adressen. Diese Anfrage wird von bestehenden Datenbanksystemen nicht unterstützt. Hier wäre es nötig, mehrere Operationen in den Tabellen durchzuführen, da umfassende Informationen der Personen gefragt sind, deren Bilder in der Tabelle ÜB gespeichert sind. Durch ähnlichkeitsbasierte Operationen werden keine präzisen Vergleiche durchgeführt, deshalb ist es üblich nach einer Reihe sehr ähnlicher Bilder zu suchen. Um die obige Anfrage durchzuführen, benötigt man eine relationale Selektion auf der Tabelle ÜB und einen ähnlichkeitsbasierten Join über die Tabellen ÜB und MA. Es müssen also relationale und ähnlichkeitsbasierte Operationen in Bildtabellen kombiniert und verarbeitet werden. Noch einmal zur Anfrage 2, die vorher behandelt wurde: Gegeben sei das folgende relationale Schema: In einer Anfragesprache wie SQL könnte man somit die obige Anfrage wie folgt formulieren: AnfrageSELECT * FROM ÜB, MA WHERE ÜB.F ≈ MA.F AND ÜB.A'.Datum = 31-12-2003 AND ÜB.A'.Zeit BETWEEN (16:00 AND 18:00); AutoDas Symbol "≈" steht hierbei für die ähnlichkeitsbasierte Join-Operation. Diese Operationen werden später detaillierter behandelt. Anforderungen der Multimedia Anfrageverarbeitung und Optimierung1AutoMultimedia Anfrageverarbeitung und -optimierung beinhaltet:
Allgemeine ZieleDBMS401:
Computer Vision:
Ein System mit Anfragen auf Bilder und mehreren Kriterien:
2AutoDie Anfrageverarbeitung und -optimierung in multimedialen Datenbanken beinhaltet speziell folgende Punkte:
Allgemeine ZieleDie Möglichkeiten der Anfrageverarbeitung und Optimierung, die in herkömmlichen Datenbanksystemen zur Verfügung gestellt werden, können den Anforderungen in multimedialen Datenbanken oft nicht genügen. Im Folgenden werden die Möglichkeiten verschiedener Ansätze einer
Anfrageverarbeitung betrachtet. Modellierung von Bilddaten1AutoAuto PCAuto PDA_Phone2AutoUm eine Anfrageverarbeitung und Optimierung für multimediale Daten
zu erleichtern, muss eine geeignete Darstellung der Bilddaten gefunden
werden. Einen objektorientierten Ansatz bietet das Repository Modell
der Bilddaten. Dieses Modell kann als Bildtabelle mit fünf Komponenten
betrachtet werden:
Für ähnlichkeitsbasierte Anfragen ist natürlich das Bild selbst das wichtigste Objekt in der Bildtabelle. Der Signaturvektor und die anderen Attribute, die es näher beschreiben, sind vom jeweiligen Bild abhängig. Auto PCAuto PDA_PhoneEine ähnlichkeitsbasierte Algebra1Inhaltsbasierte Retrieval-Methodenk-NN424: Bereichsanfrage: wobei |o'-q| die Distanz zwischen o' und q beschreibt. Inhaltsbasierte Retrieval-Methoden
Ähnlichkeitsbasierte Operatoren für BilddatenbankenEin ähnlichkeitsbasierter Selektionsoperator
Ein ähnlichkeitsbasierter Join-Operator
Auto PCAuto PDA_PhoneAutoProble ist nicht symmetrisch Bedarf für einen "symmetrischen
ähnlichkeitsbasierten Join-Operator" Additive VereinigungM1(id1, O1, F1, A1, P1) und M2(id2, O2, F2, A2, P2) sind zwei Bildtabellen. Die Additive Vereinigung von M1 und M2 wird definiert als: Symmetrischer ähnlichkeitsbasierter Join-OperatorAuto PCAuto PDA_PhoneAutoEigenschaft: ist symmetrisch Der Mine-Operator
Vorteil:
Auto PCAuto PDA_PhoneAndere relevante ähnlichkeitsbasierte Operatoren
2Inhaltsbasierte Retrieval-MethodenIm Folgenden sind eine ähnlichkeitsbasierte Algebra eingeführt, welche es einem Datenbanksystem ermöglicht, Multimedia-Anfragen abzuarbeiten und zu optimieren. Der erste Operator der Algebra ist der ähnlichkeitsbasierte Selektionsoperator, der auf der k-Nächsten-Nachbar-Suche basiert. Diese Suche liefert k Bilder zurück, die einem Anfragebild q am ähnlichsten sind. Die Nächste-Nachbar-Suche ist wie folgt definiert: für
i = 1,...,k wobei |o'-q| die Distanz zwischen o' und q beschreibt. Wenn man die k-Nächste-Nachbar-Suche mit der Bereichsanfrage vergleicht, zeigt sich, dass bei der k-NN424-Suche die Anzahl der zurückgegebenen Bilder k ist, bei der Bereichsanfrage hingegen ist die Anzahl ε -abhängig. Das Ermitteln der Werte von k und ε ist bei der k-NN424-Suche einfach, bei der Bereichsabfrage nicht. Dafür sind hier symmetrische Join-Operationen möglich, außerdem hat man den Vorteil der Optimierung. Das ist bei der k-NN424-Suche nicht der Fall. Inhaltsbasierte Retrieval-Methoden
Ähnlichkeitsbasierte Operatoren für BilddatenbankenEin ähnlichkeitsbasierter SelektionsoperatorFür ähnlichkeitsbasierte Anfragen in Bilddatenbanken können mehrere Operatoren verwendet werden. Der erste Operator, der hier behandelt wird, ist der ähnlichkeitsbasierte Selektionsoperator, ein unärer Operator in einer Bildtabelle M, der auf einer Komponente f, dem Signaturvektor, ausgeführt wird. Dieser lässt sich formal wie folgt definieren: Gegeben sei ein Bildanfrageobjekt x mit dem Signaturvektor, eine Bildtabelle M und ε > 0 . Die ähnlichkeitsbasierte Selektion ist dann definiert als:
Ein ähnlichkeitsbasierter Join-OperatorEin weiterer ähnlichkeitsbasierter Operator in Bilddatenbanken ist der ähnlichkeitsbasierte Join-Operator, ein binärer Operator in Bildtabellen, der auf den Signaturvektoren f ausgeführt wird. Gegeben seien zwei Bildtabellen M1(id1, O1, F1, A1, P1) und M2(id2, O2, F2, A2, P2), und ein ε >0. Die ähnlichkeitsbasierte Join-Operation wird mit M1M2 bezeichnet und ist folgend definiert: Diese Operation liefert als Ergebnis wieder eine Bildtabelle zurück, die die Einträge der Tabelle M1 mit einer veränderten Komponente P beinhaltet. P' besteht nach der ähnlichkeitsbasierten Join-Operation aus Referenzen zur Tabelle M2. Diese Referenzen beinhalten auch die Information über die Distanz zwischen den Bildobjekten. Es folgt ein Beispiel zur Erläuterung. Auto PCAuto PDA_PhoneAutoObige Abbildung zeigt die Tabelle M1', die das Ergebnis der ähnlichkeitsbasierten Join-Operation beinhaltet. Wie die Definition erkennen lässt, ist der ähnlichkeitsbasierte Join-Operator im Gegensatz zum relationalen Join-Operator nicht symmetrisch. Das heißt, dass die Reihenfolge der Bildtabellen wichtig ist. Steht eine Bildtabelle auf der linken Seite der Join-Operation, werden die Objekte dieser Tabelle als Referenz für die Ähnlichkeitsoperation verwendet. Kommen wir noch einmal auf die Anfrage 2 am Anfang dieser LU zurück:
Bei dieser Anfrage sollte die Bildtabelle ÜB auf der linken Seite der ähnlichkeitsbasierten Join-Operation stehen, da wir ja zuerst daran interessiert waren, welche Personen das Gebäude betraten. Durch die Eigenschaft, dass der ähnlichkeitsbasierte Join-Operator nicht symmetrisch ist, wird jedoch eine Anfrageoptimierung erschwert. Deshalb wird nach einem ähnlichkeitsbasierten Join-Operator mit symmetrischen Eigenschaften gesucht. Additive VereinigungUm den ähnlichkeitsbasierten Join-Operator an ähnlichkeitsbasierte Anfrageoptimierung anzupassen, erweitern wir den multimedialen Join zu einem symmetrischen ähnlichkeitsbasierten Join. Dazu definieren wir zuerst einen grundlegenden Operator, nämlich die Additive Vereinigung. Die Additive Vereinigung von M1 und M2 wird definiert als: wobei M1(id1, O1, F1, A1, P1) und M2(id2, O2, F2, A2, P2) wieder zwei Bildtabellen darstellen. Die Additive Vereinigung von M1 und M2 liefert als Ergebnis eine Bildtabelle, die alle Instanzen aus M1 und M2 enthält, und sie ist eine symmetrische Operation. Symmetrischer ähnlichkeitsbasierter Join-OperatorDer symmetrische ähnlichkeitsbasierte Join-Operator setzt sich aus dem nicht symmetrischen ähnlichkeitsbasierten Join und der symmetrischen Additiven Vereinigung zusammen. Der symmetrische Join-Operator lässt sich wie folgt definieren, wobei M1 und M2 wieder zwei Bildtabellen darstellen: Dieser Operator ist jetzt durch die Kombination von ähnlichkeitsbasiertem Join und Additiver Vereinigung symmetrisch. Auto PCAuto PDA_PhoneAutoIn obiger Abbildung wird die Ergebnisbildtabelle dargestellt, die nach dem symmetrischen ähnlichkeitsbasierten Join aus M1 und M2 besteht. M1 und M2 beinhalten in der veränderten Komponente P die Referenzen zu Bildobjekten der jeweils anderen Tabelle. Der Mine-OperatorDas Ergebnis eines symmetrischen ähnlichkeitsbasierten Joins ist die Additive Vereinigung von M1M2 und M2M1. Durch die Verwendung eines zusätzlichen Operators kann der symmetrische Join mit geringeren Kosten berechnet werden. Dieser Operator heißt Mine. Folgende Vorgangsweise ist möglich: Zuerst wird nur einer der beiden einseitigen Joins mit dem ähnlichkeitsbasierten Join-Operator berechnet. Die zweite Ergebnistabelle kann nachträglich durch den Mine-Operator erzeugt werden. Die formale Definition des Mine-Operators lautet: Mine (M1M2)
= M2M1 Der Operator verwendet die Komponente P1 von M1M2 und baut daraus die Tabelle M2M1. Der Vorteil ist, dass die Kosten verglichen mit ähnlichkeitsbasierten Operationen vergleichbar gering sind, und so vernachlässigt werden können. Ist nun die Tabelle M1M2 vorhanden, kann M2M1 mit viel weniger Kosten berechnet werden, als der symmetrische ähnlichkeitsbasierte Join verursachen würde. Das ergibt einen großen Vorteil für die Anfrageoptimierung. Ein Anfrageoptimierer kann nun beispielsweise auswählen, ob er nun zuerst M1M2 oder M2M1 berechnet, je nachdem, welche Join-Operation mehr Kosten verursacht. Mit dem Mine-Operator kann danach die jeweils andere Tabelle kostengünstig erzeugt werden. Der Mine-Operator nützt die Vorteile der Bereichsanfrage aus (siehe folgender Abschnitt). Die folgende Abbildung soll die Arbeitsweise des Mine-Operators näher erklären: Auto PCAuto PDA_PhoneAutoObige Abbildung stellt eine Repräsentation der Bilddatenpunkte von
M1 und M2 dar (zu Visualisierungszwecken im zweidimensionalen Raum).
Durch die ähnlichkeitsbasierte Join-Operation M1M2
wird eine Bereichsanfrage durchgeführt. Ausgehend von einem Objekt
o1i in M1 sucht die Bereichsanfrage alle Objekte o2 aus M2, die innerhalb
einer gewissen Distanz ε vom Anfrageobjekt liegen. Es werden also
die Objekte o2^t, o2^u, o2^v und o2^w ausgewählt. Durch den Multimedia-Join
werden diese Ergebnisobjekte in der Komponente P der Ergebnistabelle
als Referenz gespeichert. Andere relevante ähnlichkeitsbasierte OperatorenEin weiterer relevanter ähnlichkeitsbasierter Operator, ist beispielsweise der mehrfache ähnlichkeitsbasierte Join M1M2... Mn, der mehrere Tabellen miteinander verknüpft. Da diese Operation nicht symmetrisch ist, spielt natürlich die Reihenfolge der Tabellen eine Rolle. Um Symmetrie zu erhalten muss der Operatorverwendet werden. Wenn zwei Bildtabellen M1 und M2 gegeben sind, können folgende Operationen durchgeführt werden:
Ist eine relationale Tabelle R und eine Bildtabelle M gegeben, kann man folgende Operationen definieren:
Nähere Details zu den Operationen findet man in: ABK01 Bibliographie2AutoABK01 |
(empty) |