You are on page 1of 37

Baze de date multimedia

~ Partea I ~

Date Multimedia

Tipuri de date multimedia:


Texte, Imagini statice, Grafice, Secvene audio, Secvene video, Animaii.

Date multimedia

Clase de date multimedia:


Statice coninutul i semnificaia acestora nu sunt dependente de timp. Tipuri: date alfanumerice, grafice i imagini statice. Dinamice sunt dependente de timp; semnificaia i corectitudinea lor depind de viteza cu care sunt prezentate informaiile. Tipuri: animaii, audio i video. Sunt denumite date continue sau sincrone.

Dimensiunea fiierelor multimedia depete limita tipurilor de date tradiionale, utilizate pentru datele convenionale stocate n baza de date, Dependena de factorul timp cadrele secvenelor video, de exemplu, trebuie redate, la o anumit rat, n ordinea succesiunii lor, chiar dac sunt stocate i gestionate separat n baza de date, Caracteristica semantic a datelor multimedia este mult mai complex dect a celor convenionale i n consecin cutarea bazat pe coninut este mult mai dificil, Majoritatea aplicaiilor multimedia presupun reprezentarea simultan a mai multor date multimedia sincronizate n timp i spaiu, Semnificaia datelor multimedia este uneori vag i subiectiv, aceeai imagine, de exemplu, putnd fi interpretat diferit de persoane diferite, Datele multimedia au coninut informaional bogat; sunt necesari muli parametrii pentru a putea reprezenta coninutul n mod adecvat.

Caracteristici generale ale datelor multimedia

Premisele dezvoltrii aplicaiilor multimedia


Creterea volumului resurselor multimedia existente n format digital; Creterea gradului de utilizare a resurselor, echipamentelor i dispozitivelor multimedia precum: playere MP3, camere video, dispozitive de nregistrare i de redare a secvenelor video; Dezvoltarea reelelor de comunicaie.

Domenii de Utilizare
Financiar, Management de documente, Marketing, Medical, Cercetare, Art, Uz personal.

Probleme de rezolvat
Pentru ca datele multimedia s poat fi utilizate eficient/ disponibile, trebuie identificate soluii pentru:
Stocarea datelor multimedia, Regsirea datelor multimedia, Gestiunea datelor multimedia, Vizualizarea datelor multimedia, Livrarea datelor multimedia.

Metadate multimedia
Metadatele sunt:
Date despre date, Elemente eseniale ale bazelor de date, Necesare pentru interpretarea altor date.

Metadatele multimedia sunt referitoare la coninutul, structura i semantica datelor. Generarea i extragerea metadatelor:
Analiza fluxului datelor multimedia, Generarea implicit a metadatelor, Generarea semi-automat, Descrierea i introducerea manual.

Crearea i gestiunea metadatelor este un proces extrem de complex n contextul regsirii bazat pe coninut.

Moduri de asociere a metadatelor cu datele multimedia


n acelai container cu datele multimedia, de exemplu n antetul fiierului multimedia sau ca parte a definiiei obiectuale (n Oracle interMedia), mpachetat n datele multimedia; exemplu Universal Preservation Format (UPF), Stocat ntr-un tip special de dicionar al datelor pentru metadate.

Manipularea datelor multimedia

Manipularea datelor multimedia presupune anumite operaii care nu se aplic aplicaiilor tradiionale. Aceste operaii pot fi grupate n urmtoarele categorii:
Manipulare (editarea sau modificarea datelor), Prezentare, Analiz (indexarea i cutare). Text Audio Manipulare la nivel de eantion Manipularea la nivel de sinusoid Editare audio Imagine Manipulare geometric Operaii la nivel de pixel Filtrare Animaie Editare la nivel de primitive Editare structural Video Manipularea cadrelor Operaii la nivel de pixel

Manipulare Manipulare la nivel de caracter Manipulare la nivel de ir de caractere Editare Prezentare

Formatare
Criptare Analiza Indexare Cutare

Sincronizare
Compresie

Compoziie
Compresie

Sincronizare
Compresie

Sincronizare
Compresie Efecte video Indexare Cutare

Indexare Cutare

Indexare Cutare

Indexare Cutare

Evoluia soluiilor de stocare i gestiune a datelor multimedia


Cea mai simpl soluie= set de fiiere ntr-un director (director de gestiune pentru datele multimedia) care:
Necesit cunoaterea utilizatorilor care acceseaz resursele, Gestiunea corect a resurselor depinde de buna credin a utilizatorilor, Utilizat pentru colecii mici de date multimedia, Se folosete pentru stocri temporare, Unul dintre avantajele soluiei: lipsa informaiilor despre datele multimedia (metadate). Se pot crea indeci, sub forma fiierelor individuale, pentru a surmonta lipsa metadatelor.

Indexarea metadatelor s-a realizat utiliznd algoritmi de hashing, arbori B+ i ulterior folosind baze de date. Indecii pot fi stocai separat de datele multimedia. Gestiunea indecilor i a datelor multimedia folosind instrumente/ proceduri diferite. Gestiunea i stocarea datelor multimedia i a metadatelor folosind un sistem de gestiune a bazelor de date.

Reprezentarea datelor multimedia

Reprezentarea datelor baza gestiunii datelor multimedia


Stocarea i accesarea eficient a datelor multimedia, n special ntr-un mediu eterogen, distribuit presupune realizarea urmtoarelor operaii:
Reprezentarea eficient a entitilor multimedia stocate n baza de date, Utilizarea unei soluii de indexare a bazei de date multimedia adaptat specificului acestor date, Utilizarea unor tehnici adecvate i eficiente de cutare i interogare a obiectelor de ctre sistemele de gestiune a bazelor de date.

Reprezentarea datelor ofer baza pentru indexarea, clasificarea i prelucrarea interogrilor. Reprezentarea adecvat a entitilor multimedia are un impact semnificativ asupra eficienei indexrii i regsirii datelor multimedia.

Reprezentarea datelor multimedia


Scopul principal al reprezentrilor datelor multimedia este obinerea unei descrieri concise a coninutului, n vederea analizei obiectelor multimedia. Pentru reprezentarea pot fi folosite 4 abordri:
Bazat pe clusterizare, Folosind regiuni semnificative, Bazat pe arbore decizional, Folosind adnotri.

Reprezentarea bazat pe clusterizare


Unete n mod recursiv obiectele multimedia cu coninut similar n clusteri, folosind algoritmi de clasificare automat sau folosind informaii furnizate de utilizatori pentru obinerea reprezentrii obiectelor multimedia. Exist 2 tipuri de scheme de clusterizare: supervizate sau nesupervizate.
Schemele de clusterizare supervizate folosesc cunotinele utilizatorului pentru clusterizarea obiectelor multimedia. Schemele nesupervizate nu presupun intervenia utilizatorului. Clusterele sunt organizate ntr-un mod ierarhic un supercluster poate fi descompus n mai muli subclusteri i poate fi reprezentat ca o uniune de subclusteri.

Caracteristicile datelor multimedia sunt folosite n procesul de decompoziie pentru a indica diferena dintre subclustere. Un subcluster motenete caracterisiticile superclusterului su i i pstreaz propriul coninut.

Reprezentarea folosind regiuni semnificative


Reprezentarea folosind regiuni semnificative selecteaz cteva regiuni dintr-un obiect multimedia i construiete o descriere simpl a obiectului, pe baza regiunilor selectate. Regiunile reprezentative sunt zonele de mici dimensiuni care au cele mai importante caracteristici din ntregul obiect. Reprezentarea bazat pe regiuni este obinut n urma aplicrii urmtorului algoritm:
Selecia regiunii. Obiectul multimedia original este format dintr-o serie de regiuni de mici dimensiuni. Selecia regiunilor reprezentative este procesul de analiz a diferenelor dintre aceste regiuni mici. Diferena fa de regiunile nvecinate este cuantificat ca o valoare numeric. n final, pe baza unei evaluri cantitative, regiunile sunt ordonate i cele mai notabile regiuni sunt selectate. Algoritmul de maximinare a ateptrii este folosit pentru maximizarea probabilitii funciei de estimare, cnd obiectul multimedia este reprezentat printr-un numr mic de regiuni selectate. Algortimul este mprit n 2 pai:
n primul pas sunt estimate caracteristicile regiunilor neselectate. n al 2-lea pas sistemul calculeaz funcia de maximizare a probabilitii, estimat folosind caracteristicile obinute n pasul anterior. Cei 2 pai alterneaz pn cnd funciile sunt suficient de apropaite de caracteristicile originale, n regiunile neselectate.

Reprezentarea coninutului. Reprezentarea coninutului este procesul de integrare a regiunilor selectate n descrieri simple, care reprezint coninutul obiectului multimedia.

Reprezentarea bazat pe arbore decizional


Este procesul de obinere a coninutului obiectelor multimedia folosind reguli de decizie. Regulile de decizie sunt standarde generate automat, care indic relaia dintre caracteristicile multimedia i coninutul informaional. n procesul de comparare a obiectelor multimedia cu reguli de decizie se construiesc arbori de decizie. Abordarea este aplicabil n domenii n care regulile decizionale pot fi folosite ca standarde de facto pentru clasificarea obiectelor multimedia. Reprezentarea bazat pe arbore de decizie poate fi mbuntit d.p.d.v. al preciziei i acurateii pe msur ce numrul obiectelor multimedia analizate crete. Deoarece regulile decizionale sunt obinute din analiza statistic a obiectelor multimedia, utilizand mai multe exemple de obiecte multimedia duce la creterea acurateii.

Reprezentarea utiliznd adnotri


Adnotarea textul descriptiv ataat obiectelor multimedia. Sistemele de gestiune a bazelor de date tradiionale permit adugarea de adnotri manuale pentru facilitarea recunoaterilor bazate pe coninut. Construirea unui sistem pentru generarea automat a adnotrilor multimedia este extrem de dificil i complex. Eterogenitatea bazelor de date locale introduce elemente suplimentare de complexitate n operaia de adnotare. Pentru a obine descriere extins a coninutului multimedia folosind abordarea bazat pe adnotri trebuie folosit analiza semantic.

Baze de date multimedia

Utilizarea abordrii relaionale:

Stocarea datelor multimedia n baze de date

Se bazeaz pe tipurile de date SQL standard i pe cele implementate n Oracle. Prima opiune presupune restricionarea bazei de date la tipurile de date standard specificate n SQL:1999 pentru tipurile de date LOB (large object). Tipurile de date LOB includ:
BLOB (binary large object):
utilizat pentru stocarea oricrui tip de date, inclusiv text, dar n mod tradiional sunt folosite pentru date binare precum date multimedia sau documente de mari dimensiuni. Tipul BLOB nu ofer informaii asupra tipului coninutului i ce metadate li se pot asocia.

CLOB pentru date de tip caracter poate stoca documente mari i sunt manipulate prin Oracle Text i BFILES.

SQL:1999 furnizeaz un cadru de lucru pentru crearea tipurilor obiectuale care poate fi folosit pentru baze de date multimedia.

Utilizarea abordrii obiectual-relaional:


Definete un tip specific pentru stocarea datelor media, aplicaiile pot manipula tipurile multimedia n mod automat. Metadatele sunt extrase automat. Folosind metadatele tabelelor, orice aplicaie poate determina tabele care au tipuri multimedia stocate. Aplicaiile pot folosi ulterior metadatele stocate pentru afiarea datelor multimedia.

Utilizarea tipurilor de date large object


Tipul de date Large object (LOB) permite stocarea fiierelor de mari dimensiuni i accesul aleator. n Oracle10g limita maxim pentru LOB este ntre 8128 terabytes (n funcie de dimensiunea blocului bazei de date). Poate fi manipulat din medii de programare:
Java (JDBC), OCI, PL/SQL.

Tipurile LOB de pn la 4 KB pot fi stocate inline, la fel ca celelalte tipuri de date. Tipurile LOB sunt manipulate prin LOB locator. Locator este o valoare binar unic ce funcioneaz ca un surogat pentru obiectul binar stocat n baza de date.

Utilizarea tipului BFILE


BFILE este un tip de dat LOB extern. Fiierele multimedia se stocheaz n afara bazei de date i sunt gestionate de sistemul de operare. Locaia i atributele fiierelor sunt stocate n baza de date. LOB-ul extern este accesat folosind tipul de dat SQL numit BFILE. BFILE= tip de dat read-only. Dezavantaje:
Nu se supune restriciilor de securitate ale bazei de date, controlului tranzaciilor Nu pot face obiectul operaiilor de backup i recovery asupra bazei de date.

Utilizarea abordrii relaionale pentru crearea bazei de date multimedia


Paii pentru crearea unei tabele care s includ i elemente multimedia:
Crearea tabelei (tabelelor) utiliznd pentru cmpurile cu date multimedia, un tip BLOB sau BFILE, Iniializarea cmpurilor multimedia pentru a putea stoca date, folosind funcia EMPTY_BLOB(). Crearea unui obiect de tip directory corespunztor folderului (de pe disc) care conine fiierele multimedia. Crearea unei zone temporare de stocare pentru datele multimedia folosind BFILE i iniializarea lor folosind funcia BFILENAME(). Stocarea resursei multimedia n BFILE i transferul acesteia n cmpul de tip BLOB al bazei de date folosind pachetul DBMS_LOB.

Este dificil de manipulat tipurile LOB n SQL deoarece nu exist funcii standard i editoarele SQL nu pot fi conectate cu funciile de afiare a datelor multimedia. Variante pentru manipularea tipurilor LOB n Oracle:
Folosind Oracle API, ca Oracle Objects pentru OLE i JDBC API, Folosind pachetul DBMS_LOB, Folosind Oracle Call Interface (OCI).

DBMS_LOB este un pachet de baz pentru lucru cu locator al LOB, format din rutine pentru manipularea LOB-urilor.

Abordarea obiectual-relaional
Folosind baze de date obiectual-relaionale se pot crea tipuri obiectuale care sunt mai complexe dect tipurile de date simple din SQL. Tipurile de date definite de utilizatori permit dezvoltatorilor de aplicaii, s utilizeze date complexe. Aceast abordare ofer dezvoltatorilor maxim de felxibilitate n proiectare, deoarece pot fi exploatate att proprietile obiectuale ct i cele relaionale. Se pot crea tipuri obiectuale cu structuri complexe; ca exemplu datele multimedia i metadatele se pot stoca ntr-un acelai tip de dat. n Oracle, un tip obiectual este echivalent cu conceptul de clas i poate avea 3 tipuri de componente:
Nume l identific n mod unic n schema bazei de date, Atribute - pot avea tipuri standard sau tipuri obiectuale, Metode - descriu operaiile care pot fi aplicate tipului obiectual.

Oracle interMedia

Prezentare general
InterMedia este o component care extinde funcionalitile sistemului de gestiune a bazelor de date Oracle, permind stocarea, gestiunea i regsirea datelor multimedia: a imaginilor, a secvenelor video, a datelor audio i a altor tipuri media eterogene, ntr-o manier integrat cu tipuri de date tradiionale. Oracle interMedia nu controleaz dispozitivele de captur multimedia i nu are funcii pentru redarea datelor multimedia, ci faciliteaz gestiunea datele multimedia stocate n baza de date. InterMedia permite stocarea, gestiunea i regsirea datelor multimedia provenind din diferite surse de date. Funcionalitatea cheie ntr-o baz de date multimedia este modalitatea de regsire eficient, pe baz de coninut, a datelor multimedia continue i non-continue.

Prezentare general (cont.)


n interMedia, Oracle a folosit concepte relaional-obiectuale pentru a crea un set de tipuri obiectuale multimedia uurnd crearea aplicaiilor multimedia cu suport pentru baze de date. Folosete standardele media existente. Folosete cele mai populare caracteristici ale datelor multimedia. Poate fi extins prin includerea de noi codeci, surse de date i algoritmi specializai de prelucrare a datelor pentru datele audio i video. Tipurile obiectuale au asociate metode legate de cerinele generale ale datelor multimedia i de prelucrare a acestora. Avantaje:
Aceast abordare permite crearea bazei de date ntr-o manier generic cu schimbarea coninutului multimedia de la o aplicaie la alta. Tipurile de date pot fi accesate ntr-o manier realional folosind PL/SQL sau OCI sau ntr-o manier obiectual, n C sau Java.

Proiectanii bazei de date pot folosi interMedia pentru:


Crearea de noi tipuri obiectuale sau tipuri obiectuale compuse folosind ca baz tipurile interMedia, Crearea de plug-ins specializate pentru a utiliza noi surse de date externe pentru datele multimedia sau noi formate de date, folosind schema ORDPLUGINS, Prelucrarea datelor audio i video n maniere noi.

Utiliznd tipurile de date definite n interMedia se pot accesa metode pentru:


Manipularea informaiilor despre sursa datelor, Prelucrarea i manipularea datelor stocate pe servere web i pe alte servere, Realizarea de operaii asupra fiierelor: deschidere, citire, scriere - datelor audio i video, Extragerea atributelor metadatelor pentru datele multimedia.

Soluii de stocare a datelor n Oracle interMedia Principalele faciliti oferite:


Folosete tipurile de date BLOB sau BFILE, Suport standardele multimedia existente, Suport un set de baz pentru caracteristicile multimedia cele mai rspndite, Poate fi extins cu noi surse de date i algoritmi specifici de prelucrare a datelor multimedia, Ofer un set de tipuri multimedia definite de utilizator pentru a uura crearea unei aplicaii multimedia cu suport de baze de date. Tipurile obiectuale includ o serie de metode de manipulare a datelor specifice fiecrui tip de dat.

Tipurile obiectuale disponibile n interMedia sunt:


ORDAudio pentru date audio, ORDImage pentru date de tip imagine, ORDImageSignature pentru semnturile imaginilor folosit la cutarea bazat pe coninut, ORDVideo pentru date de tip video, ORDDoc pentru date eterogene.

Toate tipurile aparin schemei ORDSYS i stocheaz informaii despre sursa datelor ntr-un tip obiectual- relaional. Toate tipurile obiectuale definite pentru datele multimedia au acelai model de stocare a datelor, ORDSource. Datele multimedia pot fi stocate n BLOB, sub controlul SGBD sau n afara bazei de date ca BFILE. n cazul BFILE, n baza de date se stocheaz un pointer iar fiierul multimedia se stocheaz ca BFILE , pe un server media extern sau ca pe un server web i accesat prin intermediul URL-ului, folosind protocolul HTTP.

ORDSource
Atribute:
LocalData de tip BLOB localizeaz datele multimedia stocate, SrcType de tip Varchar2(4000) tipul sursei de date pentru surse externe (FILE, HTTP), SrcLocation de tip Varchar2(4000) locaia datelor: Directory pentru FILE, URL pentru HTTP, SrcName tip Varchar2(4000) numele obiectului sau fiierului, UpdateTime- tip Date data+ora ultimei modificari, Local tip NUMBER datele sunt locale memorate ca BLOB (=1 sau NULL) sau extern (=0).

Metodele tipului ORDSource nu pot fi apelate direct, ci prin intermediul tipurilor dedicate datelor multimedia. Toate tipurile obiectuale definite n interMedia ofer metode pentru urmtoarele operaii:
Seteaz sursa datelor: local sau extern, Modific data/ora la care un obiect a fost actualizat, Seteaz informaii despre tipul sursei externe, locaie i numele datei, Transfer date n sau din baza de date, Obine informaii despre coninutul datelor precum lungime, locaie, Acceseaz sursa datelor.

Metadate folosite n interMedia


Tipul multimedia
Audio, video Audio, video, imagine, document Audio, video, document

Denumire metadat
Description MIME type

Scop, comentariu
Descrie semantica resursei Folosit de browser-ele Web pentru a afia/rula datele multimedia. Scop semantic, utilizat la regsirea bazat pe caracteristica text Dimensiunea - influeneaz calitatea transferului la distan

Comments

Audio

Dimensiunea - influeneaz calitatea transferului la distan

Imagine

Dimensiunea - influeneaz calitatea transferului la distan


Dimensiunea - influeneaz calitatea transferului la distan Source, format, content length

Dimensiunea - influeneaz calitatea transferului la distan


Dimensiunea - influeneaz calitatea transferului la distan Dimensiunea - influeneaz calitatea transferului la distan

Video

Document

Utilizarea interMedia pentru manipularea


Imaginilor

Metadate
Pentru o serie de formate de fiiere de tip imagine, Oracle interMedia poate extrage i gestiona metadate, ca de exemplu:
Lungimea, Limea, Dimensiunea fiierului, Formatul fiierului, Formatul de compresie.

Pentru un numr limitat de formate de fiiere interMedia poate extrage un set extins de metadate reprezentate n documente XML. Aceste documente XML pot fi stocate ntr-o baz de date, indexate, actualizate, interogate i utilizate de alte aplicaii prin mecanismele standard ale Oracle.

Formate pentru stocarea metadatelor pentru imagini


Formatul metadata al imaginii protocoalele i tehnicile standard utilizate pentru stocarea metadatelor imaginilor n interiorul fiierului de tip imagine. Formatele pentru metadatele imaginii suportate de interMedia sunt:
EXIF - standardul pentru stocarea metadatelor imaginilor pentru aparate foto digitale. interMedia poate include metadate extrase pentru formatele de fiiere: TIFF, JPEG i JPEG2000. IPTC-IIM (International Press Telecommunications CouncilInformation Interchange Model) este folosit pentru informaii legate de nregistrarea, publicarea i difuzarea tirilor. Pot fi stocate n formate de fiiere TIFF, JPEG i JPEG2000. XMP(eXtensible Metadata Platform) este format dezvoltat de Adobe pentru crearea, prelucrarea i schimbul metadatelor ntre diferite aplicaii. Folosete tehnologia Resource Description Framework (RDF) pentru modelarea datelor. interMedia permite extragerea metadatelor XMP pentru formatele de fiiere GIF, TIFF, JPEG i JPEG2000. interMedia permite scrierea datelor XMP n formatele de fiiere GIF, TIFF, JPEG si JPEG2000.

Metadate pentru imagini


Dup extragerea metadatelor din fiierul binar ce conine imaginea, urmeaz reprezentarea metadatelor ntr-un format uor de stocat, indexat, interogat, actualizat i prezentat. interMedia returneaz metadatele imaginii n documente XML. Aceste documente se bazeaz pe scheme XML nregistrate de interMedia cu baza de date, schemele XML folosite de metodele metadatelor tipului obiectual ORDImage. Schemele XML sunt folosite de metodele metadatelor tipul obiectual ORDImage. Schemele pot fi examinate prin interogarea dicionarului ALL_XML_SCHEMAS. Schemele XML disponibile sunt:
pentru metadate DICOM, pentru metadate EXIF, pentru metadate IPTC-IIM, pentru atributele ORDImage, pentru metadate XMP.

Atributele tipului ORDImage


Nume atribut
Source Mime type ORDSource Varchar2(4000)

Tipul datei

Scop
Sursa datei stocate Tipul MIME al imaginii (ex. image/tiff....)

Height
Width

Integer
Integer

nlimea imaginii (in pixeli)


Limea imaginii (n pixeli) Dimensiunea fiierului (n bytes) Tipul fiierului (bmp, tiff....) Tipul imaginii (alb-negru,...) Formatul de compresie al imaginii (JPEG....)

contentLength fileFormat contentFormat CompressionFor mat

Integer Varchar2(4000) Varchar2(4000) Varchar2(4000)

Utilizarea tipului ORDImage


Pentru exemplificarea operaiilor de crearea a unei tabele cu atribute de tip imagine, de import a imaginilor inserare i exportul imaginilor din baza de date s-a utilizat cte o procedur PL/SQL. Pentru realizarea interfaei cu utilizatorul, apelarea procedurilor stocate i pentru afiarea imaginilor am folosit o aplicaie .NET C# . S-a creat un obiect de tip DIRECTORY pentru administrarea accesului la fiierele de tip imagine. Obiectul DIRECTORY stabilete un pseudonim pentru un director al sistemului de fiiere al severului bazei de date unde se afl fiierul care trebuie accesat.
CREATE DIRECTORY dirlucru AS d:\mydir'; GRANT READ ON DIRECTORY dirlucru TO PUBLIC WITH GRANT OPTION;
Crearea tabelei numit imags cu structura:
id NUMBER reprezentnd id-ul imaginii, descriere VARCHAR2(255) ce conine o scurt descriere a coninutului imaginii, img de tip ORDSYS.ORDImage pentru obiectul de tip imagine, img_semn de tip ORDSYS.ORDImageSignature pentru semntura imaginii.

http://comrei.intra.net.ase.ro:1158/em http://comrei.intra.net.ase.ro:5560/isqlplu s