notwendige multimedia- erweiterungen für anfragesprachen
DESCRIPTION
Notwendige Multimedia- Erweiterungen für Anfragesprachen. Niko Zenker Email: [email protected]. Gliederung. Anforderungen an eine Multimedia-Anfragesprache Object Query Language vs. TIGUKAT Query Language Inhaltsbasierte & unscharfe Anfragen Spatial Primitives Temporal Primitives - PowerPoint PPT PresentationTRANSCRIPT
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
1
Notwendige Multimedia- Erweiterungen für Anfragesprachen
Niko Zenker
Email: [email protected]
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
2
Gliederung
1. Anforderungen an eine Multimedia-Anfragesprache
2. Object Query Language vs. TIGUKAT Query Language
3. Inhaltsbasierte & unscharfe Anfragen
4. Spatial Primitives
5. Temporal Primitives
6. Präsentationsfunktionen
7. Zusammenfassung
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
3
Anforderungen an eine Multimedia-Anfragesprache
Zusätzlich zu den Eigenschaften, die eine Anfragesprache erfüllen muss, sollten folgende Attribute geltenUniversell Inhaltsbasierte AnfragenRäumliche AnfragenZeitliche AnfragenUnscharfe AnfragenPräsentation
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
4
Object Query Language orthogonale Sprache SQL92 + objektorientierte Erweiterungen (komplexe
Objekte, Objektidentität, Pfadausdrücke, Polymorphismus, Aufruf von Operationen, late binding, Strukturen, Listen, Felder
GrundstrukturSELECT [DISTINCT] projection_attributesFROM query [[AS] identifier} {, query [[AS] identifier]}[WHERE query][GROUP BY pratition_attributes][HAVING query][ORDER BY sort_criterion {, sort_criterion}]
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
5
Object Query Language II
Erweiterungen zu OQL sind meistens in der WHERE Klausel zu finden
spatial_expression (räumliche Objekte, Linien, Punkte, Kreise, ...)
spatial_functions (length, area, intersection) spatial_expression, temporal_functions,
temporal_predicates contain_predicates
contain_predicate ::= media_object CONTAINS salientObject
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
6
Object Query Language: Beispiele
SELECT STRUCT (a:e.age, s:e.salary)FROM (SELECT f
FROM Employees f WHERE f.seniority>20) AS e
WHERE e.name = „John“
SELECT mFROM Images m, Persons pWHERE m CONTAINS p
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
7
TIGUKAT Query Language
tee-goo-kat, bedeutet „Objekte“ bei kanadischen Inuits Typische Objektorientierte Features werden unterstützt SQL-like (ad-hoc), zusätzlich werden Pfadausdrücke
unterstützt Grundstruktur
SELECT object_variable_list
[INTO [PERSISTENT [ALL]]] collection_reference
FROM range_variable_list
WHERE boolean_formular
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
8
TIGUKAT Query Language
in der WHERE Klausel werden drei neue Ausdrücke definiert spatial_expression temporal_expressionboolean_expression
boolean_expression ::=contain_predicate | boolean_function
Beispiel:SELECT mFROM m IN C_image, p IN C_personWHERE m CONTAINS p
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
9
Inhaltsbasierte & unscharfe Anfragen
Informationen gewinnen aus extrahierten Features oder Metadaten
Schlüsselwort-basierte Ansätze Feature-basierte Ansätze Konzept-basierte Ansätze Manuelle Abschwächung / Verschärfung Automatische Abschwächung / Verschärfung auch bei wenigen Informationen müssen adäquate
Resultate geliefert werden
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
10
Spatial Primitives
Anforderungen an Räumliche Anfragesprachenkomplexe Objekte setzen sich aus kleineren zusammenDirekte räumliche SucheHybride AnfragenKomplexe Anfragen über gesamte DB räumliche Berechnungen von Objekten mit räumlichen
EigenschaftenRäumlich-Zeitliche Anfragen
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
11
Spatial Primitives II
jedes Objekt wird mit Eigenschaften verglichen Bilder werden in abstraktes Format überführt
<SalientSet, SpatialSet, ColorSet, TextualSet>SalientSet: hervorstechende Objekte im BildSpatialSet: räumliche Eigenschaften der salienten Objekte
im Bild (Umrisse, Positionen, ...)ColorSet: Farbeigenschaften der salienten Objekte und
des HintergrundesTextualSet: Texte im salienten Objekt oder im
Hintergrund
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
12
Spatial Primitves III
identical 2 Bilder sind gleich, wenn sie im Salient-, Spatial-, Color- und
TextualSet übereinstimmen coincident
identische SpatialSets subpicture
Teil des ersten Bildes ist identisch mit dem gesamten zweiten similar
Ähnlich, wenn es räumliche Beziehungen, Farben, Texturen gibt contains
Gehört ein salientes Objekt zum SalientSet
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
13
Spatial Primitives IV
Punkte, Linie und Regionen werden als räumliche Zustände definiert
andere Formen (Kreise, Rechtecke, etc.) werden als Sonderformen von Regionen behandelt
räumliche BeziehungenRichtungsbeziehungen
left, right, above, below, front, back, south, north, west, east, northwest, ...
Distanzbeziehungenz.B. euklidische Distanz
topologische Beziehungen
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
14
topologische Beziehungen
A A A
A A A B
BB
B
B B
A disjont B A touch B A inside B
A overlap B A cover B A equal B
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
15
Räumliche Funktionen
führt Berechnungen mit Objekten aus und liefert Werte zurück
Ergebnis abhängig von den Objektenmbr – Minimal umfassendens Rechteckdistance – Entfernung region – Konvertierung zur Regionpan – nur Teilstücke aus dem Bild resize – Grössenänderung superimpose – fügt Bilder zusammen
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
16
Räumliche Anfragen
MOQLSELECT o.nameFROM SalientObjects o, Images mWHERE m CONTAINS o AND (o INSIDE a
OR a COVER o) MTQL
SELECT o.B_nameFROM o IN C_salientObject, m IN C_image WHERE m CONTAINS o AND (o INSIDE a
OR a COVER o)
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
17
Temporal Primitives
Essentiell für MM-Anfragesprache vor allem für Geschichtsdatenbanken zeitliche Beziehungen zwischen realen Objekten in den
Multimedia Daten grosses Interesse besteht vor allem bei salienten Objekten „Finde das letzte Video, in dem Gerhard Schröder erscheint“ „...letzte...“ stellt besondere Anforderungen an Anfragesprachen Zeitintervall stellt eine Basis für eine verankerte Spezifikation
der Zeit J.F. Allen 1983:
equal, before, after, meet, metBy, overlap, overlapedBy, during, include, start, startedBy, finish, finishedBy
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
18
Zeitliche Funktionen
unäre Funktionen: Anfang (LB), Ende(UP), Länge binäre Funktionen: Vereinigung, Durchschnitt, Differenz time interval
verankerter Zeitpunkt in der Zeit Vergleiche (<,>) Hinzufügen, Abziehen von Zeiten neue time instant time interval mit gleichem LB u. UB
time span Nichtverankerte Zeitdauer ist unabhängig von interval und instant
year, month, day, hour, minute, second, ms
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
19
Stetige Zeitliche Funktionen
Videodaten Sequenz von clips, und ein clip ist eine Sequenz von frames (Bild) jeder Frame hat: Zeitstempel oder time instant; clip, video wird
mit time interval assoziiert haben alle Eigenschaften, die auch Bilder haben (Farbe, Umrisse,
Objekte, Texturen) Zusätzlich: Zeitliche Beziehungen, z.B. Bewegungen
Audiodaten Sequenz von Tönen jeder Ton hat unterschiedliche Länge, Lautstärke und Frequenz Auch hier zeitliche Beziehungen: z.B. gesprochene Sprache
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
20
Videoanalyse
lokale Objektbewegungen
globale Kamerabewegungen
tatsächliche Kamerabewegungen (6 Freiheitsgrade) aber auch Zoombewegungen (Fokusänderung der Linse)
Funktionen: zoomIn, zoomOut, panLeft, panRight, tiltUp, tiltDown, cut, fade, wipe, dissolve
Clips müssen segmentiert werden sind Mengen von salienten Objekten zu verschiedene Zeiten
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
21
Zeitliche Anfragen
MOQLSELECT c1, c2
FROM Clips c1, Clips c2, p.prSet pr
WHERE c1 CONTAINS p AND c2 CONTAINS p AND pr.timestamp DURING intersection(c1.timestamp, c2.timestamp)
MTQLSELECT c1, c2
FROM c1 IN C_clip, c2 IN B_clip, pr IN p.prSet
WHERE c1 CONTAINS p AND c2 CONTAINS p AND pr.B_timestamp DURING intersection(c1.B_timestamp, c2.B_timestamp)
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
22
Präsentationsfunktionen
Synchronisation von Audio und Videofiles räumliches Layout
Anzahl der Fenster Grösse Lage
zeitliches Layout welches Objekt startet zuerst Länge der Präsentation
Szenario Layout Verwendung von räumlichen und zeitlichen Layoutfunktionen
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
23
Präsentationsfunktionen II
atWindow(identifier, point, point) atTime(absoluteTime) display(identifier, start_offset, duration) play(identifier, start_offset, duration, speed) thumbnail(identifier) resize(identifier, width, height) parStart parEnd after
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
24
Präsentationsfunktionen Beispiel
MOQLSELECT mFROM Images mWHERE m CONTAINS pPRESENT resize(m, 100, 100) AND display(m, 0, 10)
MTQLSELECT mFROM m IN C_imageWHERE m CONTAINS pPRESENT resize(m, 100, 100) AND display(m, 0, 10)
Niko Zenker Seminar: Ähnlichkeitssuch in MMDB
25
Zusammenfassung
leichte Anfragesprache hilft Benutzern bei der Arbeit auf MMDB
sollte so allgemein sein wie möglich, d.h. verschiedenen Datentypen unterstützen und daraus auch Information zu finden
viele Sprachen enthalten vorgestellte Funktionen nicht, sind daher speziell für einzelne Anwendungsgebiete
komplexere Anfragen nur für qualifizierte Anwender verstehbar
Entwicklung von grafischen BNO (z.B. VisualMOQL)