+ All Categories
Home > Documents > 5. ESTIMAREA MIùC - comm.pub.ro · tipul „block matching” o reprezint împ r irea cadrului...

5. ESTIMAREA MIùC - comm.pub.ro · tipul „block matching” o reprezint împ r irea cadrului...

Date post: 11-Nov-2018
Category:
Upload: tranlien
View: 217 times
Download: 0 times
Share this document with a friend
24
5. ESTIMAREA MIùCĂRII BIDIMENSIONALE ÎN SECVENğELE VIDEO 5.1. Introducere Estimarea miúcării este deseori folosită în procesele de compresie/decompresie video. Indiferent de standardul ales, toate schemele de compresie úi decompresie video au o structură similară celei reprezentate în Figura 5.1 [10]. În partea de compresie se estimează miúcarea din cadrul curent în raport cu cadrul anterior. Se creează apoi o imagine cu miúcare compensată care este construită din blocuri ale imaginii din cadrul anterior. Vectorii de miúcare ai blocurilor folosite pentru compensarea miúcării se transmit împreună cu diferenĠa dintre imaginea compensată úi imaginea din cadrul curent codată JPEG. Imaginea codată care este transmisă, este decodată úi în partea de compresie úi este folosită ca úi cadru de referinĠă pentru cadrele ce urmează. Decodorul realizează procesul invers úi creează un cadrul întreg din vectorii de miúcare, cadrul de referinĠă úi diferenĠa dintre cadre. Ideea de bază a compresiei pe baza miúcării estimate o reprezintă micúorarea numărului de biĠi folosiĠi prin transmiterea vectorilor de miúcare úi a diferenĠei dintre imagini codată JPEG, diferenĠă care are mai puĠină energie úi care poate fi comprimată mai mult decât un cadru întreg. Se pot obĠine rate de compresie ridicate prin estimarea miúcării úi codare JPEG [11]. Figura 5.1. Schemă generală de compresie/decompresie video
Transcript

5. ESTIMAREA MI C RII BIDIMENSIONALE ÎN SECVEN ELE VIDEO

5.1. Introducere

Estimarea mi c rii este deseori folosit în procesele de compresie/decompresie video. Indiferent de standardul ales, toate schemele de compresie i decompresie video au o structur similar celei reprezentate în Figura 5.1 [10]. În partea de compresie se estimeaz mi carea din cadrul curent în raport cu cadrul anterior. Se creeaz apoi o imagine cu mi care compensat care este construit din blocuri ale imaginii din cadrul anterior. Vectorii de mi care ai blocurilor folosite pentru compensarea mi c rii se transmit împreun cu diferen a dintre imaginea compensat i imaginea din cadrul curent codat JPEG. Imaginea codat care este transmis , este decodat i în partea de compresie i este folosit ca i cadru de referin pentru cadrele ce urmeaz . Decodorul realizeaz procesul invers i creeaz un cadrul întreg din vectorii de mi care, cadrul de referin i diferen a dintre cadre. Ideea de baz a compresiei pe baza mi c rii estimate o reprezint mic orarea num rului de bi i folosi i prin transmiterea vectorilor de mi care i a diferen ei dintre imagini codat JPEG, diferen care are mai pu in energie i care poate fi comprimat mai mult decât un cadru întreg. Se pot ob ine rate de compresie ridicate prin estimarea mi c rii i codare JPEG [11].

Figura 5.1. Schem general de compresie/decompresie video

64 Analiza i prelucrarea digital a semnalelor video

Vectorii de mi care coda i în secven ele video sunt utili în extragerea descriptorilor de mi care MPEG-7, îns atunci când ace tia nu sunt con inu i de secven ele video este necesar extragerea lor utilizând algoritmi de estimare a mi c rii. De asemenea, ace tia pot fi utiliza i în opera iile de segmentare a cadrelor video pentru o mai bun detec ie a regiunilor i a obiectelor [12]. De aceea în continuare sunt prezenta i cei mai reprezentativi algoritmi de estimare a mi c rii.

5.2. Algoritmi de estimare a mi c rii pe baz de blocuri

Ipoteza care st la baza estim rii mi c rii este aceea c structurile corespunz toare obiectelor i a fundalului dintr-un cadru al unei secven e video se deplaseaz în cadrul respectiv i creeaz obiective corespondente în cadrul urm tor. Ideea de baz a algoritmilor de tipul „block matching” o reprezint împ r irea cadrului curent într-o matrice de macro-blocuri care sunt apoi comparate cu blocurile corespondente din cadrul anterior i cu blocurile vecine [13]. În urma compara iei se ob ine un vector care descrie mi carea unui bloc dintr-un loc în altul. Aceast mi care calculat pentru toate blocurile dintr-un cadru constituie mi carea estimat a cadrului curent. Zona de c utare pentru un bloc se întinde pân la p pixeli în toate cele patru p r i ale blocului corespondent din cadrul precedent. Termenul p este denumit parametru de c utare. Pentru mi care ampl este nevoie de o valoare p mai mare i atunci procesul de estimare a mi c rii devine consumator de resurse de calcul. De obicei, se alege dimensiunea blocurilor de 16x16 pixeli i parametrul p egal cu 7. Potrivirea unui bloc cu un altul se bazeaz pe ie irea unei func ii de cost. Blocul ce are ca rezultat costul minim este acela care se potrive te blocului curent. Exist numeroase func ii de cost utilizate, dintre care cea mai utilizat i cu complexitate aritmetic redus este Diferen a Medie Absolut (DMA) i este dat de ecua ia (5.1). O alt func ie cost este Eroarea Medie P tratic (EMP) dat de

rela ia (5.2) [14], [15].

1 1

20 0

1 N N

ij iji j

DMA C RN

(5.1)

21 1

20 0

1 N N

ij iji j

EMP C RN

(5.2)

N este dimensiunea blocului;

ijC i ijR sunt pixelii din blocul curent i din cel de referin .

Raportul semnal-zgomot de vârf (PSNR - Peak Signal to Noise Ratio) este dat de ecua ia (5.3) i este utilizat ca m sur a similarit ii dintre cadrul curent i imaginea cu mi care compensat ob inut din blocurile cadrului anterior i vectorii de mi care [16].

2

10lg ,ppVPSNR

EMP (5.3)

5. Estimarea mi c rii bidimensionale în secven ele video 65

ppV este valoarea vârf-vârf a datelor originale din cadrul curent,

EMP este eroarea medie p tratic dintre cadrul curent i cadrul ob inut din cadrul anterior i vectorii de mi care.

O valoare mare a PSNR-ului înseamn o eroare mic între cadrul curent i cadrul cu mi care compensat , adic o estimare bun a vectorilor de mi care.

Un al doilea parametru folosit în evaluarea performan elor algoritmilor de estimare a mi c rii se refer la complexitatea de calcul. Acest parametru este evaluat prin num rul de blocuri din fereastra de c utare folosite pentru determinarea celui mai potrivit bloc [17].

Performan ele algoritmilor de estimare a vectorilor de mi care sunt astfel evaluate prin cei doi parametri: PSNR i num rul de blocuri folosite.

5.2.1. Algoritmul de c utare complet (Full Search – FS) Unul dintre primii algoritmi de tipul „block matching” folosit pentru estimarea mi c rii

este algoritmul denumit „Full Search” adic algoritmul cu „c utare complet ” [18]. Pentru acesta fiecare bloc din interiorul unei ferestre de c utare este comparat cu blocul curent i se alege cea mai bun potrivire pe baza unui criteriu de compara ie. De i acest algoritm este cel mai bun din punctul de vedere al calit ii predic iei i al simplit ii, este i cel mai complex din punctul de vedere al complexit ii aritmetice. Pentru a mic ora complexitatea aritmetic s-au c utat algoritmi mai eficien i care s conduc la un raport calitate/complexitate mai bun. Astfel s-au elaborat numero i algoritmi denumi i suboptimali, deoarece nu ofer aceea i calitate a predic iei precum algoritmul cu „c utare complet ”.

Exist mai multe abord ri de reducere a complexit ii aritmetice. De exemplu: exist algoritmi baza i pe semn tur („Signature Based Algorithms”) care mic oreaz complexitatea aritmetic utilizând mai multe etape, în fiecare etap folosindu-se un alt criteriu de compara ie a blocurilor [19]. În prima etap sunt evaluate toate blocurile folosind un criteriu simplu, cu complexitate aritmetic redus , apoi pe baza rezultatelor din aceast etap se selecteaz un subset de blocuri pentru etapa urm toare. În etapa urm toare se folose te un criteriu cu complexitate mai mare.

Exist algoritmi care exploateaz limit rile observatorilor umani. Astfel de algoritmi mic oreaz complexitatea aritmetic prin reducerea num rului de blocuri pe baza faptului c ochii umani nu pot detecta mi carea rapid la rezolu ie maxim . De aceea se realizeaz o cuantizare brut a vectorilor, adic în jurul centrului zonei de c utare sunt evaluate toate blocurile, iar mai departe de centru se evalueaz numai un subset de blocuri. Aceast idee este ilustrat în Figura 5.2.

Anumi i algoritmi se bazeaz pe tipul datelor imaginii prin presupunerea c cele mai bune potriviri se g sesc în vecin tatea potrivirilor rezonabil de bune. De i acest lucru poate fi neadev rat, este util pentru reducerea complexit ii aritmetice deoarece c utarea se poate realiza în mai multe etape în care algoritmul mic oreaz succesiv num rul de regiuni care se potrivesc. Exist un num r mare de algoritmi care folosesc aceast ipotez i pot fi clasifica i

66 Analiza i prelucrarea digital a semnalelor video

ca algoritmi baza i pe principiul pozi ion rii. Principala problem a algoritmilor de acest tip este convergen a c tre un minim local i nu c tre minimul global.

Figura 5.2. Exemplu de selectare a blocurilor

Ace ti algoritmi pot fi modifica i prin schimbarea modului de reducere a num rului de

blocuri. De exemplu: gradul de reducere a ariei de c utare poate fi o func ie care depinde de dou dintre cele mai mici distorsiuni ale etapei precedente i nu doar de distorsiunea minim . Astfel de algoritmi sunt cunoscu i sub numele de algoritmi dinamici de c utare [20].

Exist o alt categorie de algoritmi care caut s exploateze dependen a spa ial natural care exist în imagini. Astfel vectorul de mi care a unui bloc poate fi determinat pe baza vectorilor de mi care a blocurilor vecine [21]. Se poate utiliza i dependen a temporal prin predic ia vectorilor de mi care ai blocului curent pe baza vectorilor de mi care ai aceluia bloc dar din cadrul precedent. Exist i alte abord ri, precum estimarea ierarhic a vectorilor de mi care folosind piramida medie care descompune imaginea în componente cu rezolu ie mai mic , iar vectorii de mi care determina i pentru imaginea de rezolu ie mai mic sunt propaga i de-a lungul structurii piramidale de imagini cu rezolu ie din ce în ce mai bun .

5.2.2. Algoritmul de c utare „în trei pa i” (Three Step Search –

TSS) O variant de implementare a unui algoritm rapid de „block matching” este algoritmul

de c utare „în trei pa i” [22]. Ideea de baz a acestui algoritm este prezentat în Figura 5.3. Se începe c utarea din centrul ferestrei i se seteaz pasul de c utare 4S pentru o

valoare a parametrului de c utare egal cu 7. Apoi se caut în cele 8 loca ii aflate la distan a S de prima loca ie. Dintre aceste nou blocuri comparate se alege acela cu costul cel mai mic i se folose te ca un nou punct de c utare. Se înjum t e te pasul de c utare i se caut apoi

cele 8 loca ii în jurul lui .a.m.d., pân se ob ine 1S . În acest moment se g se te blocul cu costul minim i acesta va reprezenta cea mai bun potrivire cu blocul de referin . Vectorul de mi care calculat este salvat pentru a fi transmis. Se ob ine o mic orare a costului de calcul de aproximativ 9 ori. De exemplu pentru 7p algoritmul FS va evalua 255 de blocuri, în timp ce TSS va evalua numai 25 de blocuri.

5. Estimarea mi c rii bidimensionale în secven ele video 67

Figura 5.3. Calea de convergen a pentru o c utare în 3 pa i

Dezavantajul acestui tip de c utare îl reprezint faptul c folose te un model de

verificare alocat uniform în prima etap , model ineficient pentru estimarea mi c rilor cu amplitudine mic .

5.2.3. Algoritmul de c utare „bidimensional logaritmic ” (Two

Dimmensional Logaritmic Search – TDLS) De i acest algoritm este similar celui cu c utare „în trei pa i”, poate fi mai precis mai

ales dac fereastra de c utare este mare [23]. Algoritmul este descris de urm torii pa i: Pasul 1. Se alege pasul ini ial. Se verific blocul din centru i cele 4 blocuri aflate la

distan a S pe axele x i y. Pasul 2. Dac pozi ia celui mai adecvat bloc este în centru, atunci se înjum t e te

pasul. Dac unul dintre celelalte patru blocuri este cel mai potrivit, atunci acesta devine centrul i se repet pasul 1.

Pasul 3. Când pasul de c utare devine 1 toate cele 8 blocuri din jurul centrului, plus centrul, sunt folosite pentru c utare i cel mai potrivit dintre ele este selectat.

Un exemplu de cale de convergen a acestui algoritm este prezentat în Figura 5.4. 5.2.4. Algoritmul „nou” de c utare „în trei pa i” (New Three Step

Search – NTSS) NTSS reprezint o îmbun t ire a algoritmului TSS prin folosirea unei scheme de

c utare modificat pentru a reduce costurile de calcul. Acesta este unul dintre primii algoritmi rapizi de c utare i a fost utilizat frecvent pentru implementarea standardului de compresie video MPEG-1/H.261 [24].

68 Analiza i prelucrarea digital a semnalelor video

Figura 5.4. Calea de convergen a pentru o c utarea bidimensional logaritmic

Algoritmul TSS folose te un model de evaluare cu alocare uniform i este predispus la

pierderea mi c rii cu amplitudine mic . NTSS verific în primul pas 16 blocuri în plus fa de blocul origine pentru determinarea costului minim. Dintre acestea 8 blocuri sunt la distan a

4S de centru (ca la TSS), iar celelalte 8 sunt la distan a 1S . Dac se ob ine costul minim pentru blocul origine, atunci c utarea se opre te. Dac acest costul se ob ine pentru unul dintre blocurile aflate la distan a 1S , atunci se mut originea în acest bloc i se verific vecinii. În func ie de pozi ia blocului cu costul minim se pot evalua 5 blocuri sau 3 blocuri (Figura 5.5). Blocul cu func ia de cost minim va reprezenta cea mai bun potrivire cu blocul de referin i pentru acesta se va determina vectorul de mi care. Dac acest cost se ob ine pentru unul dintre cele 8 blocuri aflate la distan a 4S de origine, atunci se folose te procedeul de la TSS. Chiar dac acest algoritm are nevoie de un num r de minim 17 blocuri pentru estimare mi c rii, în cel mai defavorabil caz se vor verifica 33 de blocuri [25]. În concluzie acest algoritm va avea o precizie de estimare mai mare cu costuri de calcul relativ mici.

Figura 5.5. Blocurile evaluate în func ie de pozi ia blocului cu costul minim [26]

5. Estimarea mi c rii bidimensionale în secven ele video 69

5.2.5. Algoritmul de c utare „simpl i eficient ” (Simple and Efficient Search – SES)

Algoritmul SES este o alt variant a TSS i exploateaz ipoteza de suprafa unimodal a erorii. Ideea de baz a acestui algoritm este aceea c pentru o suprafa unimodal nu pot exista dou minime în direc ii opuse i de aceea modelul de c utare în 8 puncte al TSS poate fi modificat astfel încât s fie încorporat aceast prezum ie i s se poat reduce costul de calcul [27].

Algoritmul are tot trei pa i ca i TSS, dar fiecare pas mai cuprinde înc dou faze. Zona de c utare este împ r it în patru cadrane i algoritmul verific trei loca ii A, B i C ca în Figura 5.6. Loca ia A este blocul origine, iar B i C sunt blocurile aflate la distan a S de origine pe direc ii ortogonale. În func ie de distribu ia func iei de cost în cele trei loca ii, în a doua faz se selecteaz blocuri adi ionale.

Regula de alegere a cadranului pentru faza a doua este urm toarea: Dac i seselecteaz b)

Dac i seselecteaz c)

Dac i seselecteaz d)

Dac i seselecteaz e)

DMA A DMA B DMA A DMA C

DMA A DMA B DMA A DMA C

DMA A DMA B DMA A DMA C

DMA A DMA B DMA A DMA C Odat selectate blocurile pentru faza a doua se determin loca ia cu func ia de cost

minim i se seteaz ca origine. Se modific pasul de c utare ca la TSS i se repet procedeul de mai sus pân se ob ine 1S . Blocul cu ponderea cea mai mic este blocul c utat i pentru acesta se determin vectorii de mi care ce urmeaz a fi transmi i. Un exemplu de convergen a acestui algoritm este prezentat în Figura 5.7.

Figura 5.6. Modelul de c utare al SES în func ie de cadranul selectat: a) blocurile ini iale i împ r irea

în cadrane; b) - e) Alegerea blocurile în func ie de cadran

70 Analiza i prelucrarea digital a semnalelor video

Figura 5.7. Convergen a modelului de c utare al SES [28]

Chiar dac acest algoritm mic oreaz costul de calcul fa de TSS, utilizarea sa nu s-a

realizat la scar larg din dou motive: ipoteza de suprafa unimodal a erorii nu este întotdeauna îndeplinit i de aceea PSNR-ul este mai mic în raport cu TSS; exist un alt algoritm („c utare în patru pa i”) care are un cost de calcul mai mic decât TSS i valori PSNR mai bune.

5.2.6. Algoritmul de c utare „în patru pa i” (Four Step Search – FSS)

Algoritmul FSS alege un pas de c utare 2S pentru primul pas indiferent de valoarea parametrului de c utare p . Astfel va evalua 9 blocuri într-o fereastr de dimensiune 5x5. Dac se ob ine costul minim pentru blocul origine, se trece la pasul 5. În caz contrar se alege blocul g sit ca bloc origine i se trece la pasul 2. Dimensiunea ferestrei de c utare se men ine de 5x5. În func ie de loca ia blocului cu costul minim se pot verifica mai departe 5 blocuri sau 3 blocuri.

Figura 5.8. Alegerea punctelor pentru c utarea în patru pa i: a) configura ia ini ial ; b) punctul cu

distorsiune minim în col ; c) punctul cu distorsiunea minim în margine

5. Estimarea mi c rii bidimensionale în secven ele video 71

Modelul de alegere a blocurilor este identic cu cel de la NTSS. Dac blocul cu costul minim este blocul origine, se trece la pasul 4, în caz contrar se trece la pasul 3. Pasul 3 este identic cu pasul 2. La pasul 4 se mic oreaz dimensiunea ferestrei la 3x3, adic 1S [29].

Blocul cu costul minim este cea mai bun potrivire i se determin vectorul de mi care pentru acel bloc. Un exemplu al acestui algoritm este prezentat în Figura 5.9. Acest algoritm are în cel mai bun caz 17 blocuri de evaluat i în cel mai defavorabil caz 27 de blocuri de evaluat.

Figura 5.9. Convergen a modelului de c utare al 4SS

5.2.7. Algoritmul de c utare „ortogonal ” (Orthogonal Search – OS) Acest algoritm este o combina ie între algoritmul de c utare „în trei pa i” i algoritmul

de c utare „bidimensional logaritmic ”. Algoritmul are o etap de c utare orizontal urmat de o etap de c utare vertical i poate fi descris astfel [30]:

Pasul 1. Se alege pasul de c utare; de regul se alege egal cu jum tate din deplasarea maxim în fereastra de c utare. Se aleg dou puncte aflate la distan e fa de centru egale cu pasul pe direc ia orizontal i se determin punctul cu distorsiunea minim . Se mut centrul în acest punct.

Pasul 2. Se aleg dou puncte la distan e egale cu pasul pe direc ia vertical fa de centru i se g se te punctul cu distorsiunea minim . Se mut centrul în acest punct.

Pasul 3. Dac pasul de c utare este mai mare decât 1, se înjum t e te i se repet pa ii unu i doi. În caz contrar se opre te algoritmul.

Un caz particular al convergen ei acestui algoritm este prezentat în Figura 5.10.

72 Analiza i prelucrarea digital a semnalelor video

Figura 5.10. Exemplu de convergen a algoritmului de c utare ortogonal

5.2.8. Algoritmul de c utare „punct cu punct” (One at a Time

Search – OTS) Acest algoritm este unul simplu i eficient. În etapa de c utare orizontal se identific

punctul cu distorsiunea pe direc ia orizontal . Apoi, începând de la acest punct, se caut punctul cu distorsiunea minim pe direc ia vertical . Algoritmul poate fi descris astfel [31]:

Pasul 1. Se aleg trei puncte în jurul centrului ferestrei de c utare. Pasul 2. Dac distorsiunea minim se ob ine pentru punctul din centru, se trece la etapa

vertical . În caz contrar se verific punctul cel mai apropiat de punctul cu distorsiunea minim , tot pe direc ia orizontal . Se continu c utarea în aceea direc ie pân când se g se te punctul cu distorsiune minim (punctul urm tor trebuie s aib distorsiune mai mare).

Pasul 3. Se trece la etapa de c utare pe vertical cu puncte alese în jurul punctului cu distorsiune minim determinat la pasul doi.

În Figura 5.11 este reprezentat o variant a c ii de convergen pentru algoritmul de c utare „punct cu punct”. Avantajul acestui algoritm este timpul minim de lucru, iar dezavantajul este calitatea sc zut a estim rii mi c rii.

Figura 5.11. Exemplu de convergen a algoritmului de c utare punct cu punct

5. Estimarea mi c rii bidimensionale în secven ele video 73

5.2.9. Algoritmul de c utare „încruci at ” (Cross Search – CS) Acesta este un algoritm similar algoritmului de c utare „logaritmic ” cu diferen a c

loca iile de c utare sunt alese la capetele unui „x” i nu la capetele unui „+”, a a cum se întâmpl pentru algoritmul de c utare „logaritmic ”. Acest algoritm poate fi descris astfel [32]:

Pasul 1. Blocul din centru este comparat cu blocul curent i dac distorsiunea este mai mic decât o valoare de prag, algoritmul se opre te. În caz contrar se trece la pasul 2.

Pasul 2. Se alege primul set de puncte în form de „x” în jurul centrului. Pasul de c utare este selectat, de obicei, jum tate din deplasarea maxim a ferestrei. Se alege dintre aceste puncte punctul cu distorsiunea minim i se mut centrul în acest punct.

Pasul 3. Dac pasul de c utare este mai mare decât 1, se înjum t e te i se repet pasul 2. În caz contrar se trece la pasul 5.

Pasul 5. Dac în ultima etap punctul de distorsiune minim se afl în stânga jos sau în dreapta sus, se evalueaz distorsiunea pentru înc patru puncte în jurul acestuia cu o arie de c utare în form de „+”. Dac punctul de distorsiune minim se afl în stânga-sus sau în dreapta-jos, se evalueaz distorsiunea pentru înc patru puncte în jurul acestuia cu o arie de c utare în form de „x”.

Un exemplu de cale de c utare pentru acest algoritm este prezentat în Figura 5.12. Algoritmul de c utare „încruci at ” necesit 25 2 log wcompara ii, w reprezint deplasarea

maxim . Complexitatea aritmetic este sc zut , dar totu i algoritmul nu conduce la rezultate foarte bune [33].

Figura 5.12. Exemplu de convergen a algoritmului de c utare încruci at .

74 Analiza i prelucrarea digital a semnalelor video

5.2.10. Algoritmul de c utare „în spiral ” (Spiral Search – SS) Acest algoritm combin ideile algoritmului de c utare „în trei pa i” i a algoritmului de

c utare „binar ”. În acest fel se mic oreaz nu numai timpul de c utare, dar se i elimin dezavantajul c ut rii binare în care anumite zone nu erau niciodat evaluate. Algoritmul poate fi descris astfel [34]:

Pasul 1. Se alege pasul de c utare; de obicei se alege egal cu jum tate din deplasarea maxim în fereastra de c utare. Punctul de distorsiune minim se alege din nou puncte selectate astfel: cinci puncte se aleg în form de „+” în jurul centrului ferestrei de c utare, iar celelalte patru puncte sunt alese în col urile ferestrei de c utare.

Pasul 2. Pasul de c utare se mic oreaz i c utarea se face în jurul punctului cu distorsiunea minim g sit în pasul 1.

Pasul 3. Se repet pasul 2 pân se ob ine valoarea pasului de c utare egal cu 1. C utarea „în spiral ” nu conduce la rezultate mai eficiente decât c utarea „în patru

pa i”, dar are rezultate comparabile aceasta i complexitate aritmetic mai sc zut . O posibil modalitate de c utare pentru acest algoritm este prezentat în Figura 5.13.

Figura 5.13. Exemplu de convergen a algoritmului de c utare în spiral

5.2.11. Algoritmul de c utare „în romb” (Diamond Search – DS) Algoritmul DS urmeaz aceea i pa i ca i algoritmul FSS, dar modelul de c utare nu

mai este p trat, ci romb i num rul de pa i al algoritmului nu mai este limitat. DS folose te dou modele fixe diferite de c utare: modelul mare i modelul mic. Aceste dou modele i pa ii algoritmului DS sunt reprezentate în Figura 5.14 [35]. Ca i în cazul algoritmului de c utare „în patru pa i”, în primul pas se folose te modelul de romb mare i dac blocul cu costul minim este blocul origine, se sare la pasul patru. Pa ii 2 i 3 sunt similari FSS i se folose te modelul de romb mare, iar pentru acest algoritm num rul de blocuri care sunt evaluate poate fi trei sau cinci a a cum se observ în Figura 5.14. Ultimul pas folose te modelul de romb mic în jurul noului bloc origine i blocul cu costul minim rezultat va fi cea mai bun potrivire cu blocul de referin . Deoarece modelul de c utare nu este nici prea mare

5. Estimarea mi c rii bidimensionale în secven ele video 75

i nici prea mic acest algoritm poate g si minimul global cu o precizie ridicat . Rezultatul final va avea o valoare a PSNR apropiat de cea ob inut cu algoritmul FS i o complexitate de calcul semnificativ mai mic .

Se observ c , dup primul pas în care se folose te un model de romb mare, se verific înc cinci blocuri. Dup pasul 2, datorit pozi iei minimului, se verific doar 3 blocuri. Se mai observ c pasul 3 se repet pân se ob ine minimul pentru blocul origine (în acest exemplu pasul 3 se repet de dou ori). La pasul 4 se folose te modelul de romb mic pentru a determina cea mai bun potrivire [36].

Figura 5.14. Convergen a modelului de c utare al DS

5.2.12. Algoritmul de c utare „adaptiv în cruce” (Adaptive Rood

Pattern Search – ARPS) Algoritmul ARPS utilizeaz informa ia conform c reia mi carea general dintr-un

cadrul este de obicei coerent , adic dac blocurile din jurul blocului curent se deplaseaz într-o direc ie atunci este foarte probabil ca i blocul curent s se deplaseze în aceea i direc ie. Acest algoritm folose te vectorul de mi care al blocului situat în stânga blocului curent pentru a estima vectorul de mi care al acestuia. Un exemplu este prezentat în Figura 5.15. Este verificat blocul indicat de vectorul de mi care al blocului vecin i în plus blocul origine împreun cu alte patru blocuri a ezate în model de cruce. Pasul de c utare al modelului este

determinat din valorile vectorului de mi care ca max ,S x y unde x i y sunt

coordonatele loca iei indicate de vectorul de mi care [37]. Acestea se raporteaz la blocul origine i sunt exprimate ca num r de blocuri. Blocul cu func ia cost minim devine origine pentru pasul urm tor în care se folose te un model de romb mic. Acest pas se repet pân când se ob ine minimul pentru blocul origine, minim care va corespunde celei mai bune potriviri cu blocul de referin . O alt îmbun t ire care poate fi adus acestui algoritm este verificarea situa iei de mi care zero, verificare prin care c utarea se opre te dac dup primul pas blocul cu func ia de cost minim este în centrul modelului în cruce. În acest caz nu se mai trece la pasul urm tor cu verificarea DS.

76 Analiza i prelucrarea digital a semnalelor video

Figura 5.15. C utare adaptiv în cruce. Vectorul de mi care al blocului vecin: (4,-2)

Principalul avantaj al acestui algoritm fa de algoritmul DS îl reprezint faptul c dac

vectorul de mi care este 0,0 , atunci nu se mai irose te timpul cu c utarea în model de romb

mare, ci se trece direct la modelul de romb mic. În plus, dac vectorul de mi care este departe de centru, atunci se avanseaz direct în zona respectiv i se utilizeaz modelul de romb mic, mic orându-se costul i timpul de calcul. O aten ie sporit trebuie acordat urm toarelor aspecte: s nu se verifice blocurile care s-au verificat deja; s nu se verifice un bloc de dou ori dac el corespunde i blocului indicat de vectorul de mi care i unuia dintre blocurile modelului în cruce. Pentru blocurile din prima coloan a cadrului, pentru care nu exist vector de mi care a vecinului, se alege un pas de c utare fix egal cu 2 pixeli [38].

5.3. Evaluarea algoritmilor de estimare a mi c rii Vectorii de mi care sunt necesari pentru extragerea descriptorilor de mi care MPEG-7.

În subcapitolul 5.2 sunt prezenta i 12 algoritmi pe baz de blocuri de estimare a mi c rii. În continuare sunt prezentate rezultatele unor simul ri pentru estimarea mi c rii utilizând algoritmi rapizi pe baz de blocuri. Pentru o evaluare cât mai precis a acestor algoritmi s-au implementat algoritmul cu performan ele cele mai bune, algoritmul de estimare a mi c rii cu c utare total (FS) care nu este îns un algoritm rapid.

Evaluarea rezultatelor algoritmilor s-a realizat prin compararea valorilor PSNR i a complexit ii aritmetice, prin num rul mediu de blocuri folosite pentru determinarea celui mai adecvat bloc.

5.3.1. Parametri de implementare a algoritmilor de estimare a

mi c rii Implementarea algoritmilor a fost realizat în mediul de simulare Matlab. Pentru fiecare

dintre cei 12 algoritmi a fost creat o func ie corespunz toare. Aceste func ii utilizate pentru simularea algoritmilor con in ca i parametri de intrare un bloc al cadrului curent de

5. Estimarea mi c rii bidimensionale în secven ele video 77

dimensiune 8x8 sau 16x16 i o fereastr de c utare. Parametrul p corespunz tor ferestrei de c utare exprim extensia ferestrei de c utare în jurul blocului curent în toate cele patru direc ii i s-a ales pentru simul ri valoarea 7. O valoare prea mic poate duce la o estimare mai pu in

precis a vectorilor de mi care, în timp ce o valoare prea mare poate duce la un timp de rulare ridicat. Cu aceast valoare a parametrului p fereastra de c utare va avea dimensiunea 22x22 sau 30x30.

Estimarea mi c rii unui bloc al cadrului curent se realizeaz prin identificarea blocului cel mai adecvat în fereastra de c utare ob inut din cadrul anterior. Cel mai adecvat bloc reprezint blocul pentru care s-a ob inut un cost minim. Pentru func ia de cost s-a folosit diferen a medie absolut dintre blocul de referin , al cadrului curent i blocul curent al ferestrei de c utare. Rezultatul va fi reprezentat de o pereche de valori semnificând pozi ia celui mai adecvat bloc. Valoarea vectorului de mi care al unui bloc va fi determinat ca diferen a dintre pozi ia blocului de referin al cadrului curent i pozi ia celui mai bun bloc.

Pentru fiecare bloc se re ine valoarea num rului de blocuri verificate. Dup parcurgerea în totalitate a cadrului curent se realizeaz o mediere a tuturor valorilor num rului de blocuri verificate. Aceast valoare este un parametru de compara ie a algoritmilor întrucât cu cât valoarea medie este mai mic , cu atât algoritmul este mai rapid.

Dup determinarea vectorilor de mi care corespunz tori tuturor blocurilor cadrului curent se ob ine cadrul cu mi care compensat pe baza cadrului anterior i al vectorilor de mi care a blocurilor.

Un alt parametru pentru realizarea unei compara ii între diver i algoritmi îl reprezint valoarea PSNR-ului corespunz toare cadrului cu mi care compensat . Acesta este definit ca fiind raportul dintre valoarea vârf-vârf a datelor originale din cadrul curent i eroarea medie p tratic dintre cadrul curent i cadrul cu mi care compensat . Cu cât PSNR-ul este mai mare, cu atât algoritmul este mai bun. Algoritmul cu PSNR-ul cel mai bun este algoritmul de c utare total (FS), algoritm care compar toate blocurile din fereastra de c utare, dar care este i cel mai lent, având o complexitate aritmetic ridicat [PR 7].

Din acest motiv, dintre to i algoritmii rapizi implementa i, se va lua decizia ca cel mai eficient s fie algoritmul cu care se ob ine un PSNR apropiat de cel al algoritmului FS i care are o complexitate aritmetic sc zut .

Pentru simul ri se utilizeaz : un set de imagini corespunz toare cadrelor unei secven e video (imagini generate în Matlab de Aroh Barjatya), set numit „motion”; o secven video foarte utilizat pentru evaluarea algoritmilor de estimare a mi c rii „caltrain”, precum i alte secven e video alese din baze de date multimedia utilizate pentru estimarea mi c rii.

5.3.2. Simularea algoritmilor de estimare a mi c rii Prima secven video utilizat pentru evaluarea rezultatelor algoritmilor descri i este

format din 10 cadre generate în Matlab i con ine atât mi care a obiectelor, cât i mi care a camerei. 6 din cele 10 cadre sunt prezentate în Figura 5.16.

78 Analiza i prelucrarea digital a semnalelor video

Figura 5.16. Cadrele video corespunz toare secven ei video „Motion”

În simul ri s-a considerat cadrul curent cadrul n i cadrul de referin cadrul 1n astfel

încât s-au estimat vectorii de mi care ai cadrului curent. Sunt prezentate rezultatele pentru dou cazuri: blocuri de dimensiune 16x16 i blocuri de dimensiune 8x8.

Pentru primul caz sunt prezentate rezultatele în Tabelul 5.1 i Tabelul 5.2. Parametri de simulare includ o dimensiune bloc=16x16, iar parametru fereastr de c utare este p=7.

Tabelul 5.1. PSNR pentru secven a video „Motion”

Algoritm

Cadru referin – Cadru curent 1-2 2-3 3-4 4-5 5-6 6-7 7-8 8-9 9-10

FS 34,06 31,93 30,28 29,27 30,43 29,47 29,92 27,72 27,89 TSS 33,98 31,81 30,15 29,25 30,27 29,33 29,75 27,55 27,81

NTSS 33,94 31,8 30,15 29,25 30,21 29,33 29,79 27,6 27,83 SES 33,72 31,6 29,96 28,93 29,99 29,1 29,51 27,49 27,57 FSS 31,73 30,2 28,93 28,05 28,88 28,07 28,78 27,05 27,04 DS 33,44 31,16 29,44 28,52 29,46 28,56 29,16 27,31 27,25 OS 33,86 31,44 29,56 28,41 29,26 27,66 28,51 25,82 27,04

OTS 29,09 27,85 27,02 26,41 26,99 26,04 27,24 25,02 25,87 TDLS 32,77 30,81 29,46 28,57 29,43 28,44 28,99 27,14 27,18

CS 32,89 31,25 29,6 28,74 29,5 28,24 28,67 26,73 27,09 SS 32,74 31 29,98 28,97 30,03 29,16 29,47 27,45 27,53

ARPS 33,67 31,72 30,01 29,07 30,01 29,1 29,47 27,48 27,6

5. Estimarea mi c rii bidimensionale în secven ele video 79

Tabelul 5.2. Num rul mediu de blocuri verificate pentru secven a video „Motion”

Algoritm

Cadru referin – Cadru curent 1-2 2-3 3-4 4-5 5-6 6-7 7-8 8-9 9-10

FS 225 225 225 225 225 225 225 225 225 TSS 25 25 25 25 25 25 25 25 25

NTSS 19 19 21 19 19 21 21 24 23 SES 18 18 17 18 18 17 17 16 17 FSS 18 18 20 18 18 20 25 27 22 DS 20 20 24 21 21 28 29 34 32 OS 13 13 13 13 13 13 13 13 13

OTS 7 7 7 7 7 7 10 9 10 TDLS 18 18 19 18 18 19 20 23 20

CS 9 9 10 9 9 10 10 12 10 SS 25 25 25 25 25 25 25 25 25

ARPS 11 11 13 12 12 15 15 13 18

Figura 5.17. Varia ia PSNR în func ie de indicele cadrelor pentru secven a video „Motion” Pentru realizarea Tabelul 5.3 parametri de simulare sunt: dimensiune bloc=8x8,

parametru fereastr de c utare p=7.

80 Analiza i prelucrarea digital a semnalelor video

Tabelul 5.3. PSNR pentru secven a video „Motion”

Algoritm

Cadru 1-2 2-3 3-4 4-5 5-6 6-7 7-8 8-9 9-10

FS 34,61 32,53 31,28 30,78 31,91 31,21 31,94 28,71 29,06 TSS 34,19 32,24 30,96 30,49 31,57 30,85 31,54 28,46 28,9

NTSS 34,16 32,23 30,94 30,49 31,54 30,92 31,69 28,56 28,97 SES 33,62 31,55 30,64 30,13 30,67 30,19 30,89 28,09 28,54 FSS 32,03 30,44 29,65 29,11 29,83 29,21 29,87 27,82 27,82 DS 33,01 31,1 30,1 29,67 30,34 29,53 30,35 28,02 28,12 OS 34,09 31,68 29,91 28,88 29,97 28,78 30,03 26,53 27,76

OTS 29,17 27,93 27,13 26,53 27,12 26,22 27,39 25,16 25,99 TDLS 33,11 31,27 30,16 29,3 30,29 29,83 30,49 27,9 28,09

CS 32,88 30,65 28,91 28,1 28,91 27,62 28,24 25,63 26,48 SS 33,54 31,7 30,74 30,17 31,21 30,64 31,22 28,33 28,57

ARPS 33,27 31,76 30,46 30,02 30,75 30 30,97 28,29 28,59

Figura 5.18. Varia ia PSNR în func ie de indicele cadrelor pentru secven a video „Motion” Al doilea set de rezultate prezentat este ob inut pentru 10 cadre video ale secven ei

„Stop start walking”. 6 din cele 10 cadre sunt prezentate în Figura 5.19.

5. Estimarea mi c rii bidimensionale în secven ele video 81

Figura 5.19. Cadrele video corespunz toare secven ei video “Stop start walking”

În simul ri s-a considerat cadrul curent cadrul n i cadrul de referin cadrul 1n astfel

încât s-au estimat vectorii de mi care dintre cadrul de referin a i cadrul curent. Sunt prezentate rezultatele pentru dou cazuri: blocuri de dimensiune 16x16 i blocuri de dimensiune 8x8 [PR 8].

Pentru primul caz (dimensiune bloc=16x16, parametru fereastr de c utare p=7) sunt prezentate rezultatele în Tabelul 5.4 i Tabelul 5.5.

Tabelul 5.4. PSNR pentru secven a video “Stop start walking”

Algoritm

Cadru referin – Cadru curent 1-2 2-3 3-4 4-5 5-6 6-7 7-8 8-9 9-10

FS 16,72 18,27 16,34 18,63 16,72 18,52 16,57 18,37 16,36 TSS 16,66 18,27 16,15 18,63 16,72 18,45 16,57 18,37 16,28

NTSS 16,66 18,27 16,15 18,57 16,71 18,42 16,57 18,33 16,28 SES 16,66 18,27 16,14 18,63 16,71 18,44 16,52 18,37 16,24 FSS 16,61 18,27 15,67 18,63 16,51 18,45 16,25 18,37 15,78 DS 16,48 18,27 15,84 18,63 16,66 18,45 16,32 18,37 15,86 OS 16,47 18,11 15,82 18,63 16,56 18,43 16,09 18,31 16,09

OTS 15,43 17,34 14,95 17,51 15,36 17,59 15,18 17,34 15,03 TDLS 16,19 17,97 15,47 18,36 16,12 18,25 15,95 18,15 15,62

CS 16,19 17,71 15,79 17,63 16,18 18,02 16,03 17,71 15,84 SS 16,11 17,97 15,43 18,36 16,12 18,25 15,89 18,15 15,63

ARPS 16,54 18,27 15,86 18,63 16,64 18,44 16,3 18,37 15,92

82 Analiza i prelucrarea digital a semnalelor video

Tabelul 5.5. Num rul mediu de blocuri verificate pentru secven a video “Stop start walking”

Algoritm

Cadru referin – Cadru curent 1-2 2-3 3-4 4-5 5-6 6-7 7-8 8-9 9-10

FS 225 225 225 225 225 225 225 225 225 TSS 25 25 25 25 25 25 25 25 25

NTSS 23 22 22 23 22 21 23 22 23 SES 17 18 17 17 17 18 17 18 17 FSS 20 21 20 22 21 21 20 21 20 DS 26 25 26 26 27 24 25 26 26 OS 13 13 13 13 13 13 13 13 13

OTS 8 8 7 7 8 7 8 7 8 TDLS 18 18 18 18 18 18 18 18 18

CS 10 10 10 10 10 10 10 10 10 SS 25 25 25 25 25 25 25 25 25

ARPS 14 11 14 11 14 10 14 11 13

Figura 5.20. Varia ia PSNR în func ie de indicele cadrelor pentru secven a video “Stop start walking”

Pentru al doilea caz (dimensiune bloc=8x8, parametru fereastr de c utare p=7) sunt

prezentate rezultatele în Tabelul 5.6.

5. Estimarea mi c rii bidimensionale în secven ele video 83

Tabelul 5.6. PSNR pentru secven a video “Stop start walking”

Algoritm

Cadru 1-2 2-3 3-4 4-5 5-6 6-7 7-8 8-9 9-10

FS 16,82 18,45 16,44 18,73 16,81 18,68 16,65 18,5 16,47 TSS 16,75 18,39 16,23 18,69 16,67 18,63 16,49 18,46 16,25

NTSS 16,73 18,36 16,22 18,63 16,65 18,62 16,46 18,45 16,2 SES 16,73 18,39 16,18 18,7 16,69 18,63 16,46 18,45 16,26 FSS 16,54 18,4 15,82 18,69 16,38 18,65 16,32 18,49 15,96 DS 16,49 18,41 15,82 18,7 16,47 18,66 16,33 18,49 15,92 OS 16,47 18,1 15,94 18,5 16,43 18,5 16,14 18,27 16,06

OTS 15,52 17,46 15,07 17,61 15,47 17,66 15,29 17,43 15,12 TDLS 16,35 18,09 15,75 18,45 16,23 18,38 16,11 18,25 15,84

CS 15,46 17 15,07 17,22 15,48 17,25 15,29 17,05 15,12 SS 16,25 18,11 15,73 18,45 16,23 18,42 16,04 18,28 15,85

ARPS 16,5 18,4 15,99 18,71 16,47 18,66 16,28 18,49 15,97

Figura 5.21. Valorile medii ale PSNR în func ie de indicele cadrelor pentru secven a video „Stop start

walking” Pe baza rezultatelor se poate face o clasificare a algoritmilor prezenta i. Clasificarea se

face în func ie de PSNR i num rul de blocuri verificate. Cei mai eficien i algoritmi sunt ARPS i OS deoarece ofer o estimare bun a mi c rii i verific un num r mic de blocuri. Ceilal i algoritmi au fie un PSNR bun, dar un num r mare de blocuri verificate, fie un PSNR mai slab i un num r mic de blocuri verificate.

84 Analiza i prelucrarea digital a semnalelor video

5.4. Concluzii Descrierea con inutului video folosind elementele specificate în standardul MPEG-7

permite caracterizarea eficient a imaginilor i a secven elor video din punct de vedere semantic. Secven ele video sunt privite ca fiind grupuri de imagini succesive astfel încât majoritatea elementelor de descriere a secven elor video specificate în standard sunt ob inute pe baza elementelor de caracterizare a imaginilor. Mi carea reprezint principalul element caracteristic al secven elor video i nu poate fi descris pe baza elementelor descriptive ale cadrelor video. De asemenea mi carea con inut în secven ele video are o deosebit importan semantic întrucât determinarea precis a caracteristicilor mi c rii dintr-o secven video este foarte important pentru descrierea semantic i pentru opera iile de indexare i identificare pe baza con inutului.

Algoritmii rapizi de estimare a mi c rii pe baz de blocuri sunt algoritmi suboptimali în raport cu precizia de estimare, dar au avantajul unei complexit i de calcul reduse. În acest capitol au fost prezenta i i evalua i cei mai utiliza i algoritmi rapizi de estimare a mi c rii.

Cele mai importante concluzii care se pot deduce din simularea algoritmilor sunt: Algoritmii rapizi prezenta i au rezultate bune în estimarea mi c rii i se apropie destul de mult, din punct de vedere al preciziei de estimare, de algoritmul de c utare complet . Diferen a semnificativ apare în ceea ce prive te num rul de blocuri verificate. Astfel se observ din rezultatele simul rilor c raportul semnal-zgomot de vârf este mai mare pentru algoritmii care verific un num r mai mare de blocuri. Algoritmul cu cel mai mare raport semnal-zgomot ob inut în urma simul rilor este algoritmul TSS, iar algoritmul cu cel mai mic raport semnal-zgomot de vârf este OTS. Din punctul de vedere al complexit ii de calcul, exprimat prin num rul de blocuri verificate, algoritmul cu cea mai mic valoare a complexit ii de calcul este OTS, iar algoritmul cu cea mai mare valoare este TSS. Exist un algoritm care are un raport semnal-zgomot de vârf foarte apropiat de cel al TSS i cu o complexitate de calcul apropiat de OTS, acesta fiind algoritmul ARPS (cel care utilizeaz în estimarea mi c rii informa ia de mi care a blocurilor vecine). Algoritmii prezenta i pot fi clasifica i în dou clase în func ie de dependen a num rului de blocuri verificate de dimensiunea ferestrei de c utare. Din clasa algoritmilor independen i de dimensiunea ferestrei de c utare fac parte: TSS, NTSS, SES, FSS, DS, OS, OTS. Din cea de-a doua clas fac parte: TDLS, CS, SS, ARPS. Prin cre terea dimensiunii ferestrei de c utare pentru doi dintre algoritmii din cea de-a doua clas rezult o cre tere semnificativ a raportului semnal-zgomot de vârf i o cre tere redus a num rului de blocuri verificate. Pentru secven ele video în care exist mi care cu amplitudine mare, m rirea dimensiunii ferestrei de c utare duce la o cre tere semnificativ a raportului semnal-zgomot de vârf pentru 2 dintre algoritmii din a doua clas : TDLS i ARPS. Tot

5. Estimarea mi c rii bidimensionale în secven ele video 85

pentru ace tia cre terea num rului de blocuri verificate este mic astfel c se ob ine o precizie de estimare mai bun decât a algoritmului TSS i chiar mai bun decât a algoritmului FS. Pentru secven ele video care con in mi care cu amplitudine mic cre terea dimensiunii ferestrei de c utare nu duce la m rirea raportului semnal-zgomot de vârf pentru algoritmii TDLS i ARPS, îns nici complexitatea de calcul nu cre te semnificativ. De aceea se poate alege o valoare a dimensiunii ferestrei de c utare mai mare, de exemplu o extensie de 15 pixeli în jurul blocului curent în loc de 7 pixeli i se vor ob ine rezultate satisf c toare în ambele cazuri: mi care cu amplitudine mic i mi care cu amplitudine mare.

86 Analiza i prelucrarea digital a semnalelor video


Recommended