450 likes | 603 Views
BIT 3193 MULTIMEDIA DATABASE. CHAPTER 4 : QUERING MULTIMEDIA DATABASES. What is QUERY ??. Language expression that describes the data to be retrieved from database. Query. omponents. Data item : as output. Information base : search is to be made.
E N D
BIT 3193 MULTIMEDIA DATABASE CHAPTER 4 : QUERING MULTIMEDIA DATABASES
What is QUERY ??.. Language expression that describes the data to be retrieved from database.
Query omponents Data item : as output Information base : search is to be made Condition : have to be satisfied for a data item to be selected
MMDBMS perations Manipulation (editing and modifying data) Presentation Analysis (indexing and searching)
Query Processing • Multimedia queries can be of different types (deal with different media and with different properties) • The process of querying multimedia data is complex and it can approach this in TWO ways: • WHAT INFORMATION CAN BE RETRIEVED • HOW THE INFORMATION CAN BE RETRIEVED
1st Approach : WHAT ?? • There are THREE levels of complexity associated with the “WHAT”: • Level 1 : • Retrieval of primitive features such as color, shape, texture, spatial location and object movement. • Query example: • “ find clips of objects flying from top-right to bottom-left of screen”
1st Approach : WHAT ?? • b) Level 2 : • Retrieval of logical features related to the identity of the object within the media. • Query example: • “ find clips of an aeroplane taking off”
1st Approach : WHAT ?? • c) Level 3 : • Retrieval of abstract attributes associated with an understanding of the nature or purpose of the object. • Query example: • “ find a picture of nutritional disasters"
2nd Approach : HOW?? • The “ HOW” can also be classified on the basis of whether the information is retrieved by: • Query on the Content (Content based query) • Query by Example (QBE) • Time Indexed Query • Spatial Query • Application Specific Query
The content of media information is • described by the metadata associated • with media objects. • Hence, these queries have to be • processed by: • accessing directly the metadata • then the media objects • Example: • “Show the details of the movie where • a cartoon character says: • “I like you” Content Based Query
Have to be processed by finding a • similar object that matches the one in • the example. • The query processor has to identify • exactly the characteristics of the • example object the user wants to match. • The similarity matching required by the • user can be on texture, color, spatial • characteristics or the shape of the • object. Query by Example (QBE)
Matching can be exact or partial. • For partial matching, the query • processor has to identify the degree • of mismatch that can be tolerated. • Then the query processor has to apply • the cluster generation function for the • example media object. • These cluster generating functions map • the example object into an m- • dimensional feature space. Query by Example (QBE)
Object present within this distance d • are retrieved with a certain measure • of confidence and are presented as an • ordered list. • Here the distance d is proportional to • the degree of mismatch that can be • tolerated. • Example: • “ Show me the movie which contains • this song: Flying Without Wings” Query by Example (QBE)
These queries are made on the • temporal characteristics of the media • objects. • The temporal characteristics can be • stored using segment index trees. • The query processor has to process the • time indexed queries by accessing the • index information stored using segment • trees or other similar methods. Time Indexed Query
Example : • “Show me the movie 30 minutes after • its start” Time Indexed Query
There are made on the spatial • characteristics associated with the • media objects. • These spatial characteristics can be • generated as metadata information. • The query processor can access this • metadata information to generate the • response. • Example: • “ Show me the image where Ali is seen • to the left of Abu” Spatial Query
Application specific descriptions can be • stored as metadata information. • The query processor can access this • information for generating purposes. • Example : • “ Show me the video where the river • changes its course” Application Specific Query
Simple Query Process • Involve single media. • Example : text Text Index Text Database Other Media DBs Text Media Query Response to Query Figure 4.1 : Processing Single Media Query
Simple Query Process • Query Process: • Assuming the existence of metadata for the text • information: • the indexed file is accessed first • and the information is presented to the user
Multiple Query Process • Involve more than one media. • Example : text and image Text & Image Media Query Text Index Text Database Image Index Image Database Response to Query a) Accessing Text Index First Text & Image Media Query Image Index Image Database Text Index Text Database Response to Query a) Accessing Image Index First Figure 4.2 : Processing Multiple Media Query
Multiple Query Process • Query Process: • can be in TWO different ways: • a) Accessing Text Index First • Select an initial set of documents • This set of documents are examined to determine whether any documents contains the image object specified in the query. • This implies that documents carries the information regarding the contained images.
Multiple Query Process • b) Accessing Image Index First • Select a set images. • Examined to determine whether images are part of any document. • This strategy assumes that the information regarding the containment of images in documents are maintained as a separated information base.
Multimedia Data Access • Access to multimedia information must be quick so that retrieval time is minimal. • Metadata must be stored using appropriate index structure to provide efficient access. • Index structures to be used depend on the media, the metadata and the types of the query. • SQL language is relevant to multimedia data.
What is SQL ??.. Standard language for dealing with relational databases
Introduction to SQL • developed from an earlier Structured English Query Language, SEQUEL. • with a lot of improvement, SQL become the de facto standard of the database world. • includes the specification for a data dictionary called the information schema.
Creating Table • Involves TWO process: • create the structure of the table • followed by inserting the data • example: • Create the structure • CREATE TABLE employee • (employee_no CHAR (4), • employee_name VARCHAR2(30), • salary NUMBER(6,2))
Manipulating Data • Insert: • INSERT INTO employee • (employee_no CHAR (4), • employee_name VARCHAR2(30), • salary NUMBER(6,2)) • VALUES • (‘123B’, ‘Ali Ahmad’, ‘1666.22’)
Manipulating Data • Update: • UPDATE employee • SET employee_name =‘Abu Ahmad’ • WHERE employee_no = ‘123B’
Retriving Data • SQL statements: • SELECT (select list) • FROM (table list) • WHERE (search condition) • Example: • SELECT employee_name • FROM employee • WHERE employee_no = ‘123B’
Retrieving Text Data • Text objects consist of words. • Easy to recognize because within the body of text can be delineated by spaces. • Words consist of character strings. • These features enable to process easily using query language such as SQL.
Retrieving Text Data • However there are some problems with words • meaningless words such as “and, but, the, from, to” • these are called stop words • deal with them by removing or ignoring them • synonymy when a word has the same meaning as another word • polysemy when a word has more than one meaning in different context
Retrieving Text Data • Principles of techniques specialized for text: • text retrieval (TR) • Schema-directed extraction (SDE) • query-directed extraction (QDE)
simplest form of processing • documents are returned in the result • set if they are considered relevant to • the query • method to achieve: • exact matching • inexact matching • proximity searches • intelligent searches, ect. Text Retrieval
Exact Matching • using BOOLEAN queries • SELECT cocoa_name, price • FROM cocoa_list • WHERE region = ‘Ghana’ AND category = ‘ABC’
Inexact Matching • the uncertain spelling problem can be solved by using SOUNDEX function • SELECT cocoa_name, SOUNDEX (cocoa_type) • FROM cocoa_list • WHERE SOUNDEX (cocoa_type)=SOUNDEX (‘couverture’) • Coco-type SOUN • ------------------------------- • couverture C130
Inexact Matching • SOUNDEX codes Table 4.1 : SOUNDEX codes
Inexact Matching • vowel sounds “A,E,H,I,O,U,W,Y” are not assigned a value.
LIKE operator • can be used in both exact and inexact search conditions. • LIKE keyword is used to match a column with a known string or part of a string • example: • SELECT coco_type • FROM coco_list • WHERE coco_type LIKE ‘cou%’
Proximity Searches • also use LIKE to search topics within character data • example: • SELECT coco_type • FROM coco_list • WHERE character LIKE ‘%chocolate%’ • This query can be expressed using natural language as • “Give me type of each cocoa that has character that is described by a string that contains the substring “chocolate” with any number of characters before or after”
it is useful for semi-structured text • documents such as business or scientific • domains where documents are laid out • to conform to a pattern Query- Directed extraction
process that manipulates large • collections of related text objects such • as e-mail • schema : • e-mail {sender, receiver, date, subject, • persons, places} Schema- Directed extraction