Sunteți pe pagina 1din 16

LAPI – Laboratorul de Universitatea Facultatea de Electronică,

Analiza şi Prelucrarea POLITEHNICA din TelecomunicaŃii şi


Imaginilor Bucureşti Tehnologia InformaŃiei

> M5. InformaŃia de mişcare


Analiza şi Prelucrarea 5.1. [ Introducere ]
SecvenŃelor de Imagini 5.2. [ DetecŃia mişcării ]
5.3. [ Estimarea mişcării ]

Ş.l.dr.ing. Bogdan IONESCU

Bucureşti, 2010 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 1

InformaŃia de mişcare
= informaŃia fundamentală a unei secvenŃe de imagini (imagini în mişcare).

> două direcŃii de studiu (vezi şi MPEG-7):

> M5. InformaŃia de mişcare analiza mişcării globale

[ Introducere ] - este realizată la nivel de segment video (ansamblu de cadre);

- aplicaŃii: exemple, recunoaşterea mişcării camerei video, detecŃia


activităŃii de mişcare sau generarea imaginilor de tip ”mozaic”.

 tipul mişcării: mişcare translaŃională, mişcare de rotaŃie,


mişcare de apropiere;

 informaŃii reŃinute: amplitudinea mişcării, durata mişcării,


localizarea în secvenŃă.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 2 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 3

InformaŃia de mişcare InformaŃia de mişcare


= informaŃia fundamentală a unei secvenŃe de imagini (imagini în mişcare). > două direcŃii de studiu (vezi şi MPEG-7):

> două direcŃii de studiu (vezi şi MPEG-7): analiza mişcării locale


- este realizată la nivel de regiuni spaŃiale de pixeli = obiecte;
analiza mişcării globale (continuare)
- aplicaŃii principale: segmentarea şi urmărirea temporală a
 o măsură a percepŃiei vizuale pe care o avem asupra obiectelor în mişcare.
mişcării conŃinute în secvenŃă;
 determinarea regiunilor din imagine care se
 niveluri de activitate: absenŃă, intensă (ex. secvenŃe de gol, deplasează (sau se schimbă, ~segmentare);
urmăriri, ...), redusă (ex. dialog, interviu, ...);
 analiza traiectoriei acestor obiecte (ex. evoluŃie
 prin recalare centru de greutate, puncte de contur, ...) + evoluŃie
geometrică şi formă în timp (= tracking);
suprapunere imagini.
> indiferent de abordare, numitor comun: estimarea/detecŃia mişcării !

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 4 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 5
DetecŃia mişcării
> cea mai simplă abordare a conŃinutului de mişcare,

> obiectiv: identificarea pixelilor din imagine (sau a regiunilor) care se


schimbă de la imagine la alta,
> M5. InformaŃia de mişcare > mişcarea nu este percepută direct, ci prin intermediul schimbărilor
intensităŃii pixelilor din imagine (pot fi produse şi de zgomot sau fluctuaŃii
[ DetecŃia mişcării ] de intensitate luminoasă!),

decizie cu prag fix

> criteriul de decizie Bayes:


[M. Ciuc, C. Vertan, Prelucrarea Statistică a Semnalelor, 2005]

S0
observaŃie
sursă canal + zgomot recepŃie
r={r1, r2, … rN}∈RN
S1

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 6 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 7

[M. Ciuc, C. Vertan, Prelucrarea Statistică a Semnalelor, 2005]


DetecŃia mişcării DetecŃia mişcării

decizie cu prag fix decizie cu prag fix > criteriul de decizie Bayes (continuare): exemplu

> criteriul de decizie Bayes (continuare): S 0 = S 0 (t ) = 0, S1 = S1 (t ) = A t ∈ [0; T ]


D0 r = (r1 , r2 ) ∈ R 2 , N = 2 eşatioane,
 deducerea unui criteriu
observaŃie
recepŃie de decizie asupra R2  dreaptă
r={r1, r2, … rN}∈RN
D1 semnalului recepŃionat

= determinarea unui hiperplan ce separă RN în ∆1


două clase: ∆0 şi ∆1, r
∆0
∆ 0 ∩ ∆1 = 0 r ∈ ∆ 0 ⇒ D0
∆ 0 ∪ ∆1 = R N r ∈ ∆1 ⇒ D1
spaŃiul observat RN fără zgomot cu zgomot

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 8 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 9

DetecŃia mişcării DetecŃia mişcării


decizie cu prag fix decizie cu prag fix

> criteriul de decizie Bayes (continuare): > criteriul de decizie Bayes (continuare):
 situaŃii posibile: costuri decizie ⇒ C = C00 ⋅ P0 ⋅ P( D0 / S 0 ) + C01 ⋅ P0 ⋅ P ( D1 / S 0 ) +
1. am emis S0 (ipoteza H0)  am decis D0 (corect) C00
C10 ⋅ P1 ⋅ P ( D0 / S1 ) + C11 ⋅ P1 ⋅ P ( D1 / S1 )
2. am emis S0 (ipoteza H0)  am decis D1 (alarmă falsă) C10
3. am emis S1 (ipoteza H1)  am decis D0 (non detecŃie) C01 unde P0 este probabilitatea de emisie a simbolului S0 iar P1 a
4. am emis S1 (ipoteza H1)  am decis D1 (corect) C11 simbolului S1.

C00 < C10 , C11 < C01 ⇒ C = C00 ⋅ P0 ⋅ ∫ ω ( r / S0 ) dr + C01 ⋅ P0 ⋅ ∫ ω (r / S 0 ) dr +


∆0 ∆1
 regula de decizie Bayes este în sensul minimizării costului mediu:
C10 ⋅ P1 ⋅ ∫ ω ( r / S1 ) dr + C11 ⋅ P1 ⋅ ∫ ω ( r / S1 ) dr
C = C00 P( D0 ∩ S 0 ) + C01 P( D1 ∩ S 0 ) + ∆0 ∆1

C10 P( D0 ∩ S1 ) + C11 P ( D1 ∩ S1 ) unde w(r/S0) reprezintă densitatea de probabilitate de ordinul N în


ipoteza emiterii simbolului S0 (densit. de prob. a punctelor ◊ anterioare),

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 10 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 11
DetecŃia mişcării DetecŃia mişcării
decizie cu prag fix decizie cu prag fix

> criteriul de decizie Bayes (continuare): > criteriul de decizie Bayes (continuare):

C = C00 ⋅ P0 ⋅ ∫ ω (r / S 0 ) dr + C01 ⋅ P0 ⋅ ∫ ω ( r / S 0 ) dr + C = C01 ⋅ P0 + C11 ⋅ P1 +


∆0 ∆1

C10 ⋅ P1 ⋅ ∫ ω ( r / S1 ) dr + C11 ⋅ P1 ⋅ ∫ ω ( r / S1 ) dr ∫ [P ⋅ (C
∆0
1 10 − C11 ) ⋅ ω ( r / S1 ) − P0 ⋅ (C01 − C00 ) ⋅ ω ( r / S 0 )]dr
∆0 ∆1
 alegerea intervalului ∆0 care minimizează costul mediu:
∫ ω (r / S )dr + ∫ ω (r / S )dr = ∫ ω (r / S )dr = 1
0 0 0
∆0 ∆1 R N
{
∆ 0 = r ∈ R N | P1 ⋅ (C10 − C11 ) ⋅ ω (r / S1 ) − P0 ⋅ (C01 − C00 ) ⋅ ω ( r / S 0 ) < 0 }
⇒ C = C01 ⋅ P0 + C11 ⋅ P1 +

∫ [P ⋅ (C
1 10 − C11 ) ⋅ ω ( r / S1 ) − P0 ⋅ (C01 − C00 ) ⋅ ω ( r / S 0 )]dr {
∆1 = r ∈ R N | P1 ⋅ (C10 − C11 ) ⋅ ω ( r / S1 ) − P0 ⋅ (C01 − C00 ) ⋅ ω ( r / S 0 ) > 0 }
∆0

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 12 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 13

DetecŃia mişcării DetecŃia mişcării


decizie cu prag fix > aplicarea criteriului Bayes la detecŃia mişcării:
decizie cu prag fix [J. Konrad, Motion Detection and Estimation, 2009]

> criteriul de decizie Bayes (continuare):


- ipoteza HS (~H0)  un pixel este staŃionar,
D1 - ipoteza HM (~H1)  un pixel este în mişcare.
r ∈ ∆ 0 ⇒ D0 ω ( r / S1 ) > P0 ⋅ (C01 − C00 )
⇒ I k ( n) = I k −1 ( n) + w
r ∈ ∆1 ⇒ D1 ω (r / S 0 ) < P1 ⋅ (C10 − C11 )
D0 unde Ik(n) reprezintă pixelul de coordonate n=(x,y) la momentul k iar w
este zgomotul survenit în imagine.
> P0  modelare zgomot w:
Λ (r ) ⋅ϑ
< P1 - HS: zgomot alb Gaussian de medie 0 şi dispersie σ2 (motivat de
faptul că în zonele staŃionare schimbarea este dată de zgomotul
camerei video);
raport de plauzibilitate pragul testului - HM: zgomot cu distribuŃie uniformă în [-L;L] (diferenŃele sunt date
de mişcare fiind nepredictibile);

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 14 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 15

DetecŃia mişcării DetecŃia mişcării


> aplicarea criteriului Bayes la detecŃia mişcării > aplicarea criteriului Bayes la detecŃia mişcării
decizie cu prag fix decizie cu prag fix
(continuare): (continuare):

 dacă ceea ce observăm (echivalent vector r) este: DM 1 DM


ω ( ρ k (n) / S M ) > PS 2L > PS
ρ k (n) = I k ( n) − I k −1 ( n) ⋅ϑ ⇒ ρk (n)
⋅ϑ
ω ( ρ k ( n) / S S ) < PM 1 −
2σ 2
< PM
DS e DS
 criteriul de decizie Bayes poate fi formulat astfel:
2πσ 2
DM
ω ( ρ k (n) / S M ) > PS
⋅ϑ DM DM
ω ( ρ k ( n) / S S ) < PM ρk (n)
> 2 ⋅ L ⋅ PS ⋅ ϑ ρ (n) > 2 ⋅ L ⋅ PS ⋅ ϑ
DS ⇒e 2σ 2
⇒ k 2 ln
< PM ⋅ 2πσ 2 2σ < PM ⋅ 2πσ 2
unde PS probabilitatea absenŃei mişcării, PM este probabilitatea DS DS
mişcării, DM şi DS sunt deciziile prezenŃei mişcării şi respectiv absenŃei
iar ϑ depinde de costurile deciziilor.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 16 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 17
DetecŃia mişcării DetecŃia mişcării
> aplicarea criteriului Bayes la detecŃia mişcării > aplicarea criteriului Bayes la detecŃia mişcării
decizie cu prag fix decizie cu prag fix
(continuare): (continuare):
DM DM
> 2 ⋅ L ⋅ PS ⋅ϑ 1 > > limitări: obiecte mari netexturate, tendinŃa de a
⇒ ρ k (n) 2 ⋅ σ ⋅ ln
<
2

N
∑ρ k ( m) θ
<
selecta doar conturul exterior;
PM ⋅ 2πσ 2 m∈Wn
DS DS [J. Konrad, Motion Detection and Estimation, 2009]
> limitări: - pentru valori mici ale lui θ se marchează şi zgomotul
(regiuni mici izolate);
- pentru valori mari ale lui θ tendinŃa este să fie marcate doar
contururile obiectelor cât şi zonele mai texturate;
DM
1 > : medierea pixelilor într-o anumită fereastră  ameliorare:

N
∑ρ
m∈Wn
k (m) θ
<
centrată în punctul n (Wn) ρ k (n) = I k (n) − Bk ( n)
(optimală pentru zgomot alb);
DS unde Bk() este cea ce numim fundalul secveŃei la momentul k.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 18 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 19

DetecŃia mişcării DetecŃia mişcării

estimarea fundalului estimarea fundalului

metode nerecursive
- diferenŃa cadrelor succesive,
timp
y - aplicarea principiului filtrului median;
• fundal (background) ~ ceea ce
- metode statistice neparametrice, ...
rămâne neschimbat;
• prim plan (foreground) ~ ceea ce se metode recursive
modifică = obiect de interes.
- amestec de Gaussiene,
> robusteŃe:
- schimbări de iluminare, - medie alunecătoare;
- mişcări oscilatorii, - bazate pe filtrul Kalman, ...
- modificări ale geometriei.
0 x

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 20 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 21

[Tamersoy 09]
DetecŃia mişcării DetecŃia mişcării
estimarea fundalului estimarea fundalului

> diferenŃa cadrelor succesive: > diferenŃa cadrelor succesive, exemple:

...
Ik I k +1 I k +2 I k + N −1 I k+ N

d k ,k +1 d k +1,k + 2 d k + 2,... d k + N −1,k + N Ik mască, τ = 25 mască, τ = 50

Bk +1 = I k unde Bk+1 reprezintă fundalul estimat la momentul k+1;

d k ,k +1 =| I k +1 − Bk +1 |
> dacă dk,k+1(n) > τ ⇒ pixelul n=(x,y) face parte din obiect. Ik+1 mască, τ = 100 mască, τ = 200

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 22 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 23
DetecŃia mişcării DetecŃia mişcării
estimarea fundalului estimarea fundalului

> filtrul medie: > filtrul medie, exemple:

1 N −1
Bk (n) = ⋅ ∑ I k −l ( n )
N l =0
unde Bk reprezintă fundalul estimat la momentul k, n=(x,y)
coordonatele pixelului curent iar N este numărul de imagini
fundal, N = 10 obiecte, N = 10
considerate (fereastra temporală),

→ d k =| I k − Bk | Ik

> dacă dk(n) >τ ⇒ pixelul n=(x,y) face parte din obiect.
fundal, N = 50 obiecte, N = 50

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 24 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 25

DetecŃia mişcării DetecŃia mişcării


estimarea fundalului estimarea fundalului

> medie alunecătoare: (1 − α ) ⋅ Bk > filtrul median:

Ik α ⋅ Ik Bk +1 Bk Bk (n) = medianl∈{0,..., N −1}{I k −l (n)}


X Σ întârziere X
unde Bk reprezintă fundalul estimat la momentul k, n=(x,y)
coordonatele pixelului curent, median{} este operatorul ce returnează
α 1−α valoarea mediană a unui vector iar N reprezintă numărul de imagini
Bk +1 = α ⋅ I k + (1 − α ) ⋅ Bk considerate (fereastra temporală);

unde Bk+1 reprezintă fundalul estimat la momentul k+1 iar α este


→ d k =| I k − Bk |
un parametru (rată de învăŃare, ex. α =0.05);

→ d k +1 =| I k +1 − Bk +1 | > dacă dk(n) >τ ⇒ pixelul n=(x,y) face parte din obiect.

> dacă dk+1(n) >τ ⇒ pixelul n=(x,y) face parte din obiect.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 26 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 27

[Tamersoy 09]
DetecŃia mişcării DetecŃia mişcării
estimarea fundalului estimarea fundalului

> filtrul median, exemple: > aproximarea filtrului median:

Bk (n) = Bk −1 (n) + sgn( I k ( n) − Bk −1 (n))


unde Bk reprezintă fundalul estimat la momentul k iar sgn() este
funcŃia signum:
− 1 x<0 - dacă Ik(n) > Bk-1(n)
fundal, N = 10 obiecte, N = 10  ⇒ pixelul de fundal în n, +1;
sgn(x) = 0 x=0
- dacă Ik(n) < Bk-1(n)
1 x>0 ⇒ pixelul de fundal în n, -1;
Ik 
→ d k =| I k − Bk |
> dacă dk(n) >τ ⇒ pixelul n=(x,y) face parte din obiect.
fundal, N = 50 obiecte, N = 50
> ~ converge către un filtru median.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 28 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 29
DetecŃia mişcării DetecŃia mişcării
estimarea fundalului decizie cu prag fix

> estimarea probabilităŃii de distribuŃie a fundalului:


> estimarea fundalului, exemple comparative: [J. Konrad, Motion Detection and Estimation, 2009]
N
1
ΓS ( I k ( n)) =
N
∑ Γ(I
i =1
k ( n) − I k −i ( n))
unde Γ este o distribuŃie Gaussiană de medie 0 şi dispersie σ2 care
este considerată a fi constantă pe parcursul secvenŃei iar N este
fereastra temporală.
 presupunând o distribuŃie uniformă a intensităŃilor pixelilor de
mişcare în intervalul [-L;L], atunci decizia devine:
diferenŃa cadrelor media alunecătoare aproximarea filtrului DS
consecutive median > PM
⇒ ΓS ( I k ( n)) =θ > decizia are loc în spaŃiul
< 2 ⋅ L ⋅ ϑ ⋅ PS probabilităŃilor,
[R. Dumitrescu, D. Grama, B. Ionescu, 2010] DM

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 30 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 31

[J. Konrad, Motion Detection and Estimation, 2009]


DetecŃia mişcării DetecŃia mişcării
decizie cu prag fix decizie cu prag adaptiv

> estimarea probabilităŃii de distribuŃie a > metodele anterioare plecau de la ipoteza că nu există informaŃii
fundalului (continuare): despre distribuŃia pixelilor de mişcare (consideraŃi uniform distribuiŃi);
DS
> PM > ipoteza: pe măsură ce un obiect se deplasează în timp, intensităŃile
⇒ ΓS ( I k ( n)) =θ
< 2 ⋅ L ⋅ ϑ ⋅ PS Ik(n), Ik+1(n), ... sunt de fapt valori ce aparŃin acestui obiect;
DM
 putem folosi istoricul spaŃial în locul celui temporal (ergodicitate în
 pixelul la locaŃia n este considerat staŃionar dacă domeniul spaŃial);
este probabil ca aceasta să fie extras din ΓS(),
 model local-în-timp ≈ model local-în-spaŃiu;
 ΓS() este bazat pe N cadre ceea ce îi permite să
 astfel, la un moment dat, trebuie identificaŃi toŃi pixelii obiectului ce se
se adapteze la schimbări lente de fundal (variaŃii de
deplasează din care face parte pixelul curent n;
iluminare, zi-noapte),

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 32 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 33

[J. Konrad, Motion Detection and Estimation, 2009]


DetecŃia mişcării DetecŃia mişcării

decizie cu prag adaptiv decizie cu prag adaptiv


S (staŃionar)
> dacă notăm cu ek (n) = o decizie la momentul k
> probabilitatea de mişcare a pixelului este calculată ca fiind:
pentru pixelul n=(x,y);
M (mişcare)
1
>
DS
PM
PM i ( I k (n)) = ∑ Γ( I k (n) − I k (m))
| seti (n) | m∈seti ( n )
a. e (n) ← ΓS ( I k (n))
0

k
< 2 ⋅ L ⋅ ϑ ⋅ PS unde Γ este o distribuŃie Gaussiană de medie 0 şi dispersie σ2 iar
DM seti(n) este setul de pixeli determinat anterior.
> iteraŃia 0 = o mască iniŃială de detecŃie;
> decizia devine:
b. {
seti (n) = m ∈ N (n) / eki −1 (m) = M } DS
PS ( I k (n)) > PM
> pornind de la n se identifică pixelii vecini ce aparŃin obiectului în ⇒ =θ ce produce decizia → eki (n)
mişcare din care n face parte, unde i este iteraŃia curentă, N(n) este o PM i ( I k (n)) < ϑ ⋅ PS
vecinătate mică iar M = decizia de mişcare. DM

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 34 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 35
DetecŃia mişcării
[J. Konrad, Motion Detection and Estimation, 2009]

decizie cu prag adaptiv

> decizia devine:

DS
> M5. InformaŃia de mişcare
P ( I (n)) > PM [ Estimarea mişcării ]
⇒ S k =θ ce produce decizia → e (n)
i

PM i ( I k (n)) < ϑ ⋅ PS
k

DM

c. eki (n) devine masca iniŃială şi se determină în continuare noul


seti+1(n) şi noua probabilitate PM (se reia pasul b.)
i+1

> dacă la un moment dat seti+1(n)=0 atunci se poate folosi ipoteza că PM


are o distribuŃie uniformă.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 36 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 37

[Marichal 98]
Estimarea mişcării plan imagine Estimarea mişcării
plan imagine
> punerea problemei: > punerea problemei (continuare): obiect 3D
y y y y

R’
x ro x R x x R
r’p
rp rp
z z
camera video obiect 3D camera video

distanŃa focală mişcare aparentă mişcare reală


> formarea imaginii:
> scena 3D este proiectată în imagini plane 2D;
- proiecŃie de perspectivă: imaginea rp a punctului R este obŃinută
prin raza ce uneşte R cu lentila camerei; > informaŃia 3D de mişcare este de asemenea proiectată în plan;

- proiecŃie ortogonală: imaginea ro a punctului R este obŃinută prin > în imagine mişcarea se manifestă prin schimbări ale intensităŃii pixelilor
raza perpendiculară pe planul imaginii (distanŃă) de-a lungul timpului ⇒ estimarea este bazată pe intensitate.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 38 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 39

Estimarea mişcării Estimarea mişcării


> principiul estimării mişcării: estimarea deplasării unui pixel sau bloc de
pixeli între cadre succesive:

A. minimizarea variaŃiei intensităŃii

r r r r r
DFD(r , d , ∆t ) = I (r + d , t + ∆t ) − I (r , t )
r
under r reprezintă poziŃia pixelului/blocului de pixeli în imaginea curentă
I(t), d reprezintă vectorul de deplasare între momentele t şi t+∆t exprimat
în funcŃie de deplasarea pe cele două axe, oX şi respectiv oY:
DFD = Displaced Frame Difference
r r
d = (dx, dy), r = ( x, y )
⇒ exemplu estimare …
[”The Wicker Man”, Copyright 2006 Warner Bros Pictures]

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 40 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 41
Estimarea mişcării Estimarea mişcării
r r r r r
DFD(r , d , ∆t ) = I (r + d , t + ∆t ) − I (r , t )
B. flux optic (continuare)
B. flux optic r r r
r r ∂I (r , t ) ∂I (r , t ) ∂I (r , t )
> dacă considerăm imaginile ca fiind funcŃii continue, atunci putem aplica DFD(r , d , ∆t ) = ⋅ dx + ⋅ dy + ⋅ dt
o descompune în serie Taylor (ordin 1), ⇒ ∂x ∂y ∂t
r r
r r r ∂I (r , t ) ∂I (r , t ) > minimizând DFD obŃinem:
I ( r + d , t + ∆t ) = I ( r , t ) + ⋅ dx + ⋅ dy r r r
∂x ∂y ∂I (r , t ) ∂I (r , t ) ∂I (r , t )
r ⋅u + ⋅v + =0 ecuaŃia fluxului optic
∂I (r , t ) ∂x ∂y ∂t
+ ⋅ dt + ...
∂t unde u şi v definesc vectorul de deplasare din imagine:
> înlocuind în ecuaŃia anterioară, rezultă:
r r r  dx dy 
r r ∂I (r , t ) ∂I (r , t ) ∂I (r , t ) (u, v) =  , 
DFD(r , d , ∆t ) = ⋅ dx + ⋅ dy + ⋅ dt  dt dt 
∂x ∂y ∂t

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 42 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 43

[Marichal 98]
Estimarea mişcării Estimarea mişcării
> principalele limitări:
B. flux optic (continuare)
problema estimării într-o ferestră (apertură):
vector real
r r r fereastră de
∂I (r , t ) ∂I (r , t ) ∂I (r , t )  fluxul optic nu este
⋅u + ⋅v + =0 analiză
unic determinat de
∂x ∂y ∂t vectori posibili informaŃia locală din
flux optic = imaginea în care valoarea fiecărui pixel reprezintă
imaginea ce se schimbă;
estimarea proiecŃiei vitezei de translaŃie ce corespunde unui punct de
pe suprafaŃa obiectului ce se află în mişcare relativă în câmpul vizual t t+1
al camerei video.
problema corespondenŃei:
mişcare reală  dacă viteza unghiulară
> mişcare este estimată doar pe direcŃia gradientului spaŃial. mişcare aparentă π
a roŃii > nr.spite ⋅ cadre / s
> este posibil ca fluxul optic să nu poată fi estimat în toate punctele. roata se va roti aparent
invers;

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 44 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 45

[Marichal 98]
Estimarea mişcării Estimarea mişcării
> principalele limitări (continuare):
> pentru a reduce erorile implicite de estimare sunt adoptate o serie de
sensibilitate la fluctuaŃii de intensitate: ipoteze iniŃiale, exemplu:

 zgomot, schimbare pixelii blocurilor/regiunilor din imagine au acelaşi tip de mişcare de


mişcare reală
intensitate = mişcare; translaŃie de la o imagine la alta;
A. câmp miscare nul vs.
în realitate mişcare; funcŃia DFD trebuie să aibă o evoluŃie monoton crescătoare;
B. câmp mişcare vs. în
situaŃia A situaŃia B realitate inexistent; intensitatea pixelilor din imagine este constantă cu mişcarea;
suprapunere obiecte:
miscarea este considerată a fi constantă pentru mici volume
> apariŃia/dispariŃia precum şi suprapunerea obiectelor conduce spaŃio-temporale;
la crearea de regiuni unde intensitatea observată la momentul t
nu are corespondenŃă în imaginea la momentul t+1.
> în funcŃie de metodă pot fi adoptate una, mai multe sau toate ipotezele
 absenŃă informaŃie de mişcare ! TOF
anterioare.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 46 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 47
Estimarea mişcării Estimarea mişcării
> în funcŃie de nivelul de detaliu şi de precizia câmpului vectorial de > două tipuri de implementări (continuare):
mişcare (ansamblul vectorilor de mişcare), întâlnim două tipuri de
implementări:
2. multi-scală
1. multi-rezoluŃie nivel grosier
 foloseşte imaginile în
 estimarea mişcării se rezoluŃia iniŃială, dar
face pentru mai multe nivel mediu furnizează mai multe
reprezentări, de rezoluŃii niveluri de detaliu pentru
diferite, ale aceleaşi vectorii de mişcare;
imagini;

nivel fin

piramida estimării piramida rezoluŃiilor piramida estimării imagine iniŃială


de mişcare imaginii de mişcare

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 48 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 49

Estimarea mişcării Estimarea mişcării


> din punct de vedere temporal, întâlnim: > tehnici de estimare a mişcării:

metode diferenŃiale (bazate pe flux optic)


estimare de tip “forward”
 câmp de mişcare dens, sensibile la zgomot, complexitate de
calcul importantă;
> noua poziŃie este căutată
în imaginea următoare; metode parametrice
 estimarea parametrilor unui anumit model de mişcare;
I(t) I(t+1)
metode stohastice
estimare de tip “backward”
 explorarea spaŃiului parametrilor este ghidată în acest caz de
procese aleatoare (ex. modele Bayesiene, Markov, ...);
> noua poziŃie este căutată
metode bazate pe blocuri
în imaginea anterioară;
 estimare la nivel de bloc, compromis complexitate de calcul –
precizie estimare, adoptate de MPEG;
I(t-1) I(t)

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 50 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 51

Estimarea mişcării Estimarea mişcării

I. metode diferenŃiale I. metode diferenŃiale

> bazate pe calculul gradientului (ecuaŃie flux optic): metode directe: metode iterative
r r r
∂I (r , t ) ∂I (r , t ) ∂I (r , t ) • [Horn 81] pentru a rezolva ecuaŃia fluxului optic adoptă o ipoteză
=− ⋅u − ⋅v  u şi v sunt deplasările suplimentară: modulul gradientului să aibă valori mici, condiŃie valabilă
∂t ∂x ∂y în realitate doar pentru micile deplasări ale pixelilor din imagine;

diferenŃa dintre componentele orizontale şi  problema estimării = problema minimizării funcŃiei de cost:
cadre succesive verticale ale gradientului

metode directe ∫∫[( I x ⋅ u + I y ⋅ v + I t ) 2 + λ ⋅ (u x2 + u y2 + v x2 + v y2 ) 2 ]dx ⋅ dy


 principiu: anularea valorilor gradientului; unde Ia reprezintă derivata parŃială a lui I după componenta a, ux, uy, vx
şi respectiv vy reprezintă derivatele parŃiale de ordinul întâi ale celor
metode indirecte
două componente (u, v) ale fluxului optic iar λ este multiplicatorul
 principiu: convergenŃa funcŃiei DFD către o soluŃie în direcŃia Lagrange.
gradientului;

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 52 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 53
Estimarea mişcării Estimarea mişcării

I. metode diferenŃiale I. metode diferenŃiale

metode directe: metode iterative (continuare) metode directe: metode iterative (continuare)

∫∫[( I x ⋅ u + I y ⋅ v + I t ) 2 + λ ⋅ (u x2 + u y2 + v x2 + v y2 ) 2 ]dx ⋅ dy > o posibilă soluŃie nerecursivă:

∂I ( x, y , t ) 1  I ( x, y + 1, t ) − I ( x, y, t ) + I ( x + 1, y + 1, t ) − I ( x + 1, y , t ) + 
≈  
4  I ( x, y + 1, t + 1) − I ( x, y , t + 1) + I ( x + 1, y + 1, t + 1) − I ( x + 1, y, t + 1) 
 o posibilă soluŃie sunt:
∂x
P P
uˆ = um − I x ⋅ , vˆ = vm − I y ⋅
D D ∂I ( x, y , t ) 1  I ( x, y + 1, t ) − I ( x + 1, y + 1, t ) + I ( x, y , t ) − I ( x + 1, y , t ) + 
≈  
unde um şi vm sunt valorile medii locale ale lui u şi v, iar P şi D sunt doi ∂y 4  I ( x, y + 1, t + 1) − I ( x + 1, y + 1, t + 1) + I ( x, y, t + 1) − I ( x + 1, y, t + 1) 
parametri definiŃi astfel:
∂I ( x, y , t ) 1  I ( x, y , t + 1) − I ( x, y, t ) + I ( x + 1, y, t + 1) − I ( x + 1, y , t ) + 
P = I x ⋅ u m + I y ⋅ vm + I t , D = λ + I x2 + I y2 ≈  
∂t 4  I ( x, y + 1, t + 1) − I ( x, y + 1, t ) + I ( x + 1, y + 1, t + 1) − I ( x + 1, y + 1, t ) 

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 54 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 55

Estimarea mişcării Estimarea mişcării

I. metode diferenŃiale II. metode parametrice

> deplasarea pixelilor din imagine este modelată pe baza unui anumit
metode directe: metode iterative (continuare)
set de parametri (model).
 soluŃia este calculată iterativ:  estimare = determinare parametri.
(uˆi , vˆi ) = f {(uˆi −1 , vˆi −1 )} > ipoteză geometrică: obiectele din imagine sunt suprafeŃe
unde i reprezintă iteraŃia curentă; soluŃia adoptată fiind soluŃia furnizată plane şi rigide.
de iteraŃia pentru care este îndeplinit un anumit criteriu de convergenŃă.

- câmp vectorial dens (fiecare pixel are asociat un vector de y y’  x' = x + u



 y' = y + v
mişcare);
- complexitate de calcul ridicată (nu este folosit la codare  folosit x x’
la analiză);
t t+1
u = u ( x, y )
= componentele
- deplasări importante ale pixelilor ? v = v ( x, y ) de mişcare

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 56 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 57

Estimarea mişcării Estimarea mişcării

II. metode parametrice II. metode parametrice

> având la dispoziŃie un vector de parametrii de model, p, mişcarea • model cu 3 parametri:


poate fi exprimată astfel:
 x'  x  t x 
u = f ( x, y ; p )  y ' = C ⋅  y  + t 
unde f şi g determină modelul de mişcare;      y
v = g ( x, y; p ) unde C este un parametru de scală suplimentar.
• modelul translaŃional (cel mai simplu):
• model cu 4 parametri:
 x '   x  t x   x' C x 0   x  t x 
 y ' =  y  + t   y ' =  0 ⋅ +
     y    C y   y  t y 
unde (x,y) reprezintă coordonatele pixelului curent, (x’,y’) noua sa
unde Cx şi Cy reprezintă factorii de scală pe cele două axe.
poziŃie iar tx şi ty deplasările pe cele două axe.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 58 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 59
Estimarea mişcării Estimarea mişcării

II. metode parametrice II. metode parametrice

• model de rotaŃie: • model afin (se separă rotaŃia pe cele două axe):

 x'  cos θ sin θ   x  t x   x' C x ⋅ cos θ x − C y ⋅ sin θ y   x  t x 


 y ' = − sin θ ⋅ +   y ' =  C ⋅ sin θ ⋅ +
C y ⋅ cos θ y   y  t y 
   cos θ   y  t y     x x
unde factorul de scală a fost înlocuit cu un factor de rotaŃie cu un unde θx şi θy reprezintă rotaŃiile pe cele două axe.
anumit unghi θ.
 rezultatul proiecŃiei ortogonale a mişcării pe suprafaŃa imaginii.
• model cu 5 parametri (combinaŃia ultimelor două modele):
• model cu 8 parametri:
 x'  cos θ sin θ  C x 0   x  t x  a1 + a2 ⋅ x + a3 ⋅ y a + a ⋅ x + a6 ⋅ y
 y ' = − sin θ ⋅ + x' = , y' = 4 5
   cos θ   0 C y   y  t y  1 + a7 ⋅ x + a8 ⋅ y 1 + a7 ⋅ x + a8 ⋅ y
unde Cx şi Cy reprezintă factorii de scală pe cele două axe.  rezultatul proiecŃiei de perspectivă.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 60 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 61

Estimarea mişcării Estimarea mişcării u = f ( x, y; p )


v = g ( x, y; p )
II. metode parametrice II. metode parametrice

• model al transformării biliniare: > estimarea mişcării este realizată prin introducerea în ecuaŃia fluxului
x ' = a1 ⋅ x + a2 ⋅ y + a3 ⋅ x ⋅ y + a4 optic a modelului de mişcare şi estimarea parametrilor prin
minimizarea unei funcŃii de cost:
y ' = a5 ⋅ x + a6 ⋅ y + a7 ⋅ x ⋅ y + a8
p = arg min Ψ (I x ⋅ f ( x, y; p) + I y ⋅ g ( x, y; p ) + I t )
• modele ce iau în calcul acceleraŃia mişcării, [Sanson 81]: p

 x2  unde p reprezintă modelul parametric, Ψ este o funcŃie de cost iar Ia


 x'  a x a xy   x  bxx bxy    t x 
x 2 2
bxxy reprezintă derivata lui I după componenta a.
= 
 y ' a x  ⋅ +  2  ⋅  xy  +  
a yy   y  byx
2
   y byxy b yy   2  t y  • Motion2D: bibliotecă de funcŃii C pentru estimarea parametrică a
y  mişcării [IRISA – INRIA http://www.irisa.fr/vista/],
unde a şi b reprezintă seturile de parametri folosiŃi la modelare.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 62 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 63

Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri

> estimarea mişcării este realizată pe baza diferenŃelor dintre blocuri > principiul estimării:
de pixeli;
 un vector de mişcare pentru fiecare bloc;

 cel mai bun compromis între complexitatea de calcul şi precizia


estimării (adoptată standarde de compresie MPEG):

sensibilitate ridicată: blocuri de pixeli de dimensiuni reduse,


utilă când este nevoie de precizie (analiza deplasărilor fine) I(t)
dar sensibilă la zgomot;
• imaginea curentă analizată la momentul t, I(t), este împărŃită în
robusteŃe ridicată: blocuri de dimensiuni mai mari ⇒ blocuri disjuncte de pixeli de dimensiune BxB;
vectorii de mişcare reprezintă o aproximare mai grosieră a
fluxului optic, utilă pentru o analiză globală, complexitate .  B este ales ca 2x, x=1,2,... (optimizare hardware).

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 64 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 65
Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri


> principiul estimării (continuare): fereastra S > principiul estimării (continuare): fereastra S

I(t) I(t+l) I(t) I(t+l)


• pentru fiecare bloc din I(t) se caută noua sa poziŃie în imaginea
următoare la momentul t+l (l= pasul de analiză); • noua poziŃie a blocului curent este determinată pe baza minimizării
unei funcŃii de cost, FC, ce estimează eroarea de aproximare a
 reducere complexitate, căutarea se face doar într-o fereastră S de blocului curent cu blocurile din fereastra S.
dimensiune (2B+1)x(2B+1).

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 66 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 67

Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri

> principiul estimării (continuare): > funcŃii de cost uzuale (Fc):

( )
r r r r Mean Absolute Difference (MAD)
d min = argr min FC I (r + d , t + l ), I (r , t )
d ∈S X Y
r 1
unde d min reprezintă deplasarea blocului
r
r curent I ( r , t ) pentru care MAD(b1 , b2 ) =
X ⋅Y
∑∑ | b ( x, y) − b ( x, y ) |
x =1 y =1
1 2
funcŃia Fc este minimă, iar valorile lui d sunt toate deplasările
posibile ale blocului de comparare în interiorul ferestrei S. unde b1 şi b2 reprezintă două blocuri de pixeli iar X şi Y dimensiunile
imaginii.
> căutare completă (full search) = compararea se face cu toate
blocurile posibile din fereastra S; Mean Square Difference (MSD)
X Y
1
⇒ complexitate de calcul maximă vs. precizie maximă. MSD(b1 , b2 ) =
X ⋅Y
∑∑ [b ( x, y ) − b ( x, y )]
x =1 y =1
1 2
2

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 68 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 69

Estimarea mişcării Estimarea mişcării a. HDuncomp: frame 17;


b. The Holiday frame 31623;
III. metode bazate pe blocuri frame 45796;
III. metode bazate pe blocuri frame 109038;
frame 1;
> funcŃii de cost uzuale (Fc, continuare): > demonstraŃie: frame 7636.

Pel Difference Classification (PDC)


X Y
PDC (b1 , b2 ) = ∑∑ ord {| b1 ( x, y ) − b2 ( x, y ) |≤ τ }
x =1 y =1
unde ord(P) returnează valoarea 1 dacă propoziŃia P este adevărată
şi 0 altfel, iar τ este un prag ales arbitrar.
X Y Y
Integral IP(b1 , b2 ) = ∑ ∑ b1 ( x, y ) − ∑ b2 ( x, y ) +
Projection x =1 y =1 y =1

(IP) Y X X

∑ ∑ b ( x, y) − ∑ b ( x, y )
y =1 x =1
1
x =1
2
[http://alpha.imag.pub.ro/VideoIndexingRP2/]
Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 70 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 71
Estimarea mişcării Estimarea mişcării fereastra S

III. metode bazate pe blocuri III. metode bazate pe blocuri

> complexitatea de calcul depinde de:


> observaŃii practice: în general în urma minimizării funcŃiei de cost
apar următoarele situaŃii: - modul de căutare în fereastra S,
I(t+l)
- valoarea minimală este obŃinută pentru blocul de pixeli din imaginea - dimensiunea ferestrei S,
la momentul t+l pe acceaşi poziŃie cu blocul curent, - funcŃia de cost folosită, etc.
 vector nul = absenŃa mişcării;
> metodele existente diferă în funcŃie de modul de căutare a noii
- valoarea minimală a funcŃiei de cost este foarte mare (>τdisc), poziŃii a blocului curent în imaginea următoare:

 vector inexistent = discontinuitatea mişcării; - căutare în 3 paşi, - căutare intercalată,


- căutare logaritmică, - căutare ierarhică,
- valoarea minimală este nenulă şi < τdisc,
- căutare binară, - căutare hibridă,
 mişcare.
- căutare ortogonală, ...

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 72 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 73

Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri

> căutarea în 3 paşi (varianta H.263+): noua poziŃie este căutată în > căutarea în 3 paşi (continuare):
bloc curent nou
direcŃia minimului local al funcŃiei de cost:
minim FC

S
S

I(t+l) minim FC
I(t+l) bloc curent
• se repetă procesul pentru noul bloc curent (la t+l) şi vecinii acestuia:
• funcŃia de cost este estimată între blocul curent (la t) şi cele patru N, E, S şi V,
blocuri vecine la distanŃă de 1 pixel (la t+l): N, E, S şi V, II
I • D2D1; D1 = noua valoare minimă FC ; blocul respectiv devine bloc
• D1 = valoarea minimă FC ; blocul respectiv devine bloc curent în
curent în imaginea la t+l;
imaginea la t+l;

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 74 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 75

Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri

> căutarea în 3 paşi (continuare): > căutarea în 3 paşi (continuare):


bloc curent nou bloc curent nou

S S

I(t+l) minim FC I(t+l)


minim FC
• se repetă procesul pentru noul bloc curent (la t+l), • se repetă procesul pentru noul bloc curent (la t+l),
• D3D2; D2D1 ; D1 = noua valoare minimă FC ; • D3D2; D2D1 ; D1 = noua valoare minimă FC ;
III IV
• dacă D3 ≤ D1 şi D2 ≤ D1  STOP • dacă D1, D2 şi D3 nu satisfac condiŃia anterioară  repetă IV,
altfel blocul ce a furnizat FC minim devine bloc curent la t+l; dacă condiŃia este satisfăcută  vector de mişcare.
Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 76 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 77
Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri

> căutarea logaritmică (mai multe variante): complexitatea de calcul este > căutarea logaritmică (continuare):
logaritmică
minim FC p pixeli
p pixeli

S S

bloc curent I(t+l) bloc curent nou minim FC


I(t+l)

• funcŃia de cost este estimată între blocul curent (la t) şi cele patru • funcŃia de cost este estimată între blocul curent (la t) şi cele patru
blocuri vecine la distanŃă de p pixeli (la t+l): N, E, S şi V, blocuri vecine la distanŃă de p pixeli (la t+l): N, E, S şi V,
it.1 it.2
• blocul pentru care FC este minim devine bloc curent în imaginea la • blocul pentru care FC este minim devine bloc curent în imaginea la
t+l; pp/2, t+l;

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 78 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 79

Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri

> căutarea logaritmică (continuare): > căutarea intercalată: similară cu cea logaritmică, căutare în X:
bloc curent nou
1 pixel

S S

I(t+l) minim FC I(t+l) bloc curent


• funcŃia de cost este estimată între blocul curent (la t) şi cele patru • funcŃia de cost este estimată între blocul curent (la t) şi blocul
blocuri vecine la distanŃă de p pixeli (la t+l): N, E, S şi V, omolog (la t+l),
it.n
• p==1 STOP; blocul pentru care FC este minim determină vectorul de • dacă FC < τ atunci STOP,
mişcare.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 80 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 81

Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri bloc curent nou
minim FC p pixeli
> căutarea intercalată (continuare): bloc curent
> căutarea intercalată (continuare):

S
S

I(t+l) p pixeli minim FC


I(t+l)
• altfel, funcŃia de cost este estimată între blocul curent (la t) şi patru
blocuri vecine în X la distanŃă de p pixeli (la t+l), • dacă p>1 atunci pp/2;

• blocul pentru care FC este minim devine bloc curent în imaginea • se repetă pasul anterior blocul pentru care FC este minim devine
la t+l; bloc curent în imaginea la t+l;

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 82 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 83
Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri

> căutarea intercalată (continuare): bloc curent nou > căutarea intercalată (continuare): bloc curent nou

S S

minim FC minim FC
I(t+l) I(t+l)

• dacă p==1 şi FC minim este obŃinut pentru vecinul din stânga jos sau • dacă p==1 şi FC minim este obŃinut pentru vecinul din stânga sus
dreapta sus al ultimului bloc curent sau dreapta jos al ultimului bloc curent
 se re-evaluează FC în +;  se re-evaluează FC în X;

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 84 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 85

Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri


minim FC
> căutarea ortogonală: combinaŃie între căutarea în trei paşi şi cea > căutarea ortogonală (continuare):
logaritmică
minim FC p pixeli

S S

p pixeli
I(t+l) bloc curent I(t+l) bloc curent nou

• iniŃial, funcŃia de cost este estimată între blocul curent (la t) şi două • funcŃia de cost este estimată între blocul curent (la t) şi alte două
blocuri vecine la distanŃă de p pixeli pe orizontală (la t+l), blocuri vecine la distanŃă de p pixeli pe verticală (la t+l),

• blocul pentru care FC este minim devine bloc curent în imaginea • blocul pentru care FC este minim devine bloc curent în imaginea
la t+l; la t+l;

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 86 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 87

Estimarea mişcării Estimarea mişcării

III. metode bazate pe blocuri III. metode bazate pe blocuri


bloc curent nou
> căutarea ortogonală (continuare): > căutarea binară (MPEG): fereastra de căutare este împărŃită în mai
… multe regiuni urmând să se realizeze o căutare completă în una dintre
acestea

S
S
minim FC
I(t+l)
I(t+l)
• dacă p>1, pp/2 şi se repetă paşii anteriori; • se defineşte o grilă de 9 puncte
S
• altfel  STOP repartizată după cele 8 direcŃii cardianale
(accentul se pune pe regiunea centrală ~ cea mai probabilă);

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 88 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 89
[Petrescu 09]
Estimarea mişcării Estimarea mişcării
> exemple: mişcare de translaŃie spre
III. metode bazate pe blocuri III. metode bazate pe blocuri
stânga:
> căutarea binară (continuare):

I(t+l)

• funcŃia de cost este estimată


S
între blocul curent (la t) şi 9 blocuri din regiunile definite;

• în regiunea ce furnizează FC minim este realizată o căutare


căutare
căutare logaritmică,
căutareortogonală,
intercalată,
completă, B=16
B=16
completă.

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 90 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 91

Estimarea mişcării Estimarea mişcării


> exemple: mişcare de translaŃie spre
III. metode bazate pe blocuri
stânga: III. metode bazate pe blocuri > exemple: mişcare de mărire (zoom-in):

căutare completă căutare logaritmică

căutare
căutare
căutare
logaritmică,
intercalată,
ortogonală,
completă, B=16
B=16
căutare intercalată căutare ortogonală

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 92 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 93

Estimarea mişcării

III. metode bazate pe blocuri > câteva cifre estimative:

> Sfârşit M5. InformaŃia de mişcare

Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 94 Analiza şi Prelucrarea SecvenŃelor de Imagini, Ş.l. Bogdan IONESCU 95

S-ar putea să vă placă și