Sunteți pe pagina 1din 31

Cursul 3

Cap. 2 Formarea imaginii


o 2.7 Relații de bază între pixeli
o 2.8 Dispozitive de captare
Cap. 3 Preprocesarea imaginilor
o 3.1 Transformări ale nivelurilor de gri
o 3.2 Transformări geometrice

1
Cap. 2. Formarea imaginii

2.7 Relatii de baza intre pixeli

Reprezentarea imaginii digitale

Imagine digitala: M linii si N coloane (MxN pixeli) => reprezentare matriceala

1 2 N x
1 f(1,1) f(1,2) … f(1,N)

2 f(2,1) f(2,2) … f(2,N)

… … … …

f(M,1) f(M,2) … f(M, N)


M

y
Cap. 2. Formarea imaginii

 Distanta

• Proprietati pentru distanta


a) d (( x1 , y1 ), ( x 2 , y 2 ) ) = 0 ⇒ x1 = x 2 , y1 = y 2 reflexivitate
b) d (( x1 , y1 ), ( x 2 , y 2 ) ) = d (( x 2 , y 2 ), ( x1 , y1 ) ) simetrie
c) d (( x1 , y1 ), ( x 2 , y 2 ) ) + d (( x 2 , y 2 ), ( x3 , y 3 ) ) ≥ d (( x1 , y1 ), ( x3 , y 3 ) )
tranzitivitate
d E (( x1 , y1 ), ( x 2 , y 2 ) ) = ( x1 − x 2 ) + ( y1 − y 2 )
2 2
- euclidiana
d 4 (( x1 , y1 ), ( x 2 , y 2 ) ) = x1 − x 2 + y1 − y 2 - “city block”
d 8 (( x1 , y1 ), ( x 2 , y 2 ) ) = max { x1 − x 2 , y1 − y 2 } - “chessboard”

• d4, d 8 = numarul de pasi efectuati pe grila de la punctul de start


la cel final
Cap. 2. Formarea imaginii

 Distanta

• distanta “city block”

d 4 ( ( x1 , y1 ),( x2 , y2 ) ) = x1 − x2 + y1 − y2

• distanta “chessboard”
d 8 ( ( x1 , y1 ), ( x2 , y 2 ) ) = max { x1 − x2 , y1 − y 2 }
Cap. 2. Formarea imaginii

• Vecinatatea unui pixel

 V4 – vecinatate tetraconectata

d 4 = 1→ V4 (i,j) p(i,j) => V4(p): {(i+1,j), (i-1,j), (i,j+1), (i,j-1)}

 V8 – vecinatate octoconectata

d8 = 1→ V8 (i,j) p(i,j) => V8(p): {(i+1,j), (i-1,j), (i,j+1), (i,j-1),


(i+1,j+1),(i+1,j-1),(i-1,j+1),(i-1,j-1)}
Cap. 2. Formarea imaginii

• Conectare, adiacenta
- 2 pixeli p si q sunt conectati => - sunt vecini
- nivelurile de gri sunt similare (de exemplu egale)
- adiacenta: se considera multimea nivelurilor de gri G
• adiacenta tetraconectata => p , q ∈ G , q ∈ V4 ( p )
• adiacenta octoconectata => p , q ∈ G , q ∈ V8 ( p )
traiectorie
-P cale Q ⇒ A1, A2,…, An cu A1= P, An= Q si Ai+1 adiacent cu Ai

- traiectorie (cale) simpla ⇒ fara pixeli care se repeta, un pixel are


cel mult doi vecini
- traiectorie (cale) inchisa ⇒ traiectorie simpla: primul pixel → vecin
al ultimului pixel (A1= An)
- S => submultime de pixeli dintr-o imagine
p , q ∈ S , p , q ⇒ conectati daca ∃ o cale intre ei cu pixeli din S
Cap. 2. Formarea imaginii

• Regiune, frontiera
Regiune = multime de pixeli conectati (R) ⇒ exista o traiectorie intre orice
pereche de pixeli

Frontiera (conturul) unei regiuni R = multimea pixelilor care apartin lui R si au


cel putin un vecin in afara lui R

Ri: regiuni disjuncte dintr-o imagine + nu ating limitele imaginii

R = ∪ Ri
Regiune i

Rc: multimea complementara a regiunii R in raport cu imaginea

Rc conectata cu limitele imag. = fundal


restul neconectat = gauri
Cap. 2. Formarea imaginii

Regiuni: cu gauri => simplu conectata


fara gauri => multiplu conectata

Regiuni ↔ obiecte din scena

Gasirea regiunilor din imagini care sunt obiecte = segmentare

Nivelul de gri ⇒ gasirea obiectelor

⇒ prag > prag: obiect +conectivitate


< prag + puncte ale obiectului = gaura
< prag + puncte ale obiectului + celelalte puncte = fundal
Cap. 2. Formarea imaginii

• Muchia

Muchia = prop. unui pixel => vector (magnitudine, directie)


grad f(x, y) intr-o vecinatate > prag
magnitudinea => modulul gradientului
directia => ⊥ pe directia grad. orientata dupa
cresterea functiei imagine

⇒ Muchii “crack”
Cap. 2. Formarea imaginii

Grila patrata ⇒ paradoxuri

Fig. 2.6.5. Paradoxul curbei inchise

Remediu: pixelii obiectului tetraconectati si


pixelii fundalului octoconectati
Cap. 2. Formarea imaginii

2.8 Dispozitive de captare

Fig. 2.7.1 Reflectarea radiatiei primita de la o singura


sursa de iluminare
Cap. 2. Formarea imaginii

Fig. 2.7.2 Camera CCD: Charge-Coupled Device


Cap. 2. Formarea imaginii

• Fotodetector – jonctiunea unui semiconductor care la interactiunnea cu fotonii


produce sarcini electrice;
• Jonctiune polarizata: curent electric ce incarca cu sarcini un condensator;
• Circuit separat de descarcare la inceputul unui interval de expunere
• Sarcina acumulata in acest interval => proportionala lumina incidenta ≈
luminanta (stralucirea) obiectului focalizata prin lentile
Cap. 2. Formarea imaginii

Schema bloc a unei camere CCD


Cap. 3. Preprocesarea imaginilor

Preprocesare:
- imbunatatirea imaginii
- evidentierea trasaturilor primare: muchii si colturi
- analiza morfologică a imaginilor

• transformări ale nivelului de gri


Metode de preprocesare • transformări geometrice
• preprocesări locale
• refacerea imaginii
Cap. 3. Preprocesarea imaginilor

3.1. Transformări ale nivelurilor de gri

• corectarea nivelului de gri (depinde de poziţie)


Metode
• modificarea scalei nivelurilor de gri
Cap. 3. Preprocesarea imaginilor

3.1.1. Corectarea nivelului de gri

Ideal: sensibilitatea dispozitivelor de achizitie nu depinde de pozitia obiectului in imagine

Distorsiuni: lentile, fotodetectorul senzorului, iluminarea ⇒ corecţia nivelului de gri

e(x, y): coeficientul multiplicativ al erorii


f ( x, y ) = e( x, y ) g ( x, y ) g(x, y): imaginea originală nedistorsionata
f(x, y): imaginea cu distorsiuni

Determinarea coeficientului multiplicativ al erorii: imagine de referinta cunoscuta

f ( x, y ) g(x, y): imagine de referinta cu acelaşi nivel de gri (c)


e( x , y ) = c
c fc(x, y): imagine cu distorsiuni
Cap. 3. Preprocesarea imaginilor

3.1.2. Transformarea scalei nivelului de gri


• Transformari ale nivelului de gri
T
p ∈[ p0 , pk ]→q ∈[q0 , qk ] ⇒ q = T ( p )
qk − q0
(a) q = q0 + ( pk − p ) : negativă
q (c) pk − p0
qk
q2
β αp p0 ≤ p < p1
(b)  : contrast
q = q1 + γ ( p − p1) p1 ≤ p < p2
(b) q + β ( p − p ) p ≤ p ≤ p
 2 2 2 k (p1, p2)
γ
q1
(a)
q0 α
p0 pp p1 p2 pk p

Fig. 3.1.1. Transformări ale scalei


nivelului de gri
q0 p0 ≤ p < p p
(c) q= : alb/negru
qk p0 ≤ p ≤ p p
Cap. 3. Preprocesarea imaginilor

Modificarea histogramei

• Histograma = frecvenţa de apariţie a unui anumit nivel de gri p (H(p))


H ( p) = Card
i =1, M
{(i, j ) | f (i, j ) = p}
j =1, N

• Histograma → un maxim în domeniul frecvenţelor joase


→ detaliile caracterizate prin niveluri de gri joase
nu sunt perceptibile
H(p)
• Modificarea histogramei (cresterea contrastului):
forma prestabilite:- constantă
- exponenţial p
- hiperbola Fig. 3.1.2. Histograma unei
imagini continue
Cap. 3. Preprocesarea imaginilor

• Egalizarea histogramei
H(p) Imaginea iniţială: M × N ; k niveluri de gri: p1, p2 ,…, pk
k
Pe fiecare nivel: ni pixeli ⇒ ∑ ni = MN
i =1
l
Imaginea finală: l niveluri de gri cu mi pixeli/nivel ⇒ ∑ mi = MN ; (l < k )
i =1
k1 −1 k1

He(q)
pk p • p1 , p2 ,…, pk → q1 ⇒ i∑=1 ni < m1 ≤ i∑=1 ni
1
k2 −1 k2
• indexul k2 ⇒ ∑ ni < m1 + m2 ≤ i∑=1 ni
i =1

• nivelul q2 → - o parte din pixeli cu nivelul pk1

- pixeli cu nivelul: pk1 +1,…, pk2 −1

q1 ql q - o parte din pixeli cu nivel pk 2


Fig. 3.1.3. Egalizarea histogramei
Procedura continuă pentru toate nivelurile de gri.
Cap. 3. Preprocesarea imaginilor

Exemplul 3.1
Se consideră imaginea din figură cu 8 niveluri de gri. Se cere:
a) să se reprezinte histograma nivelurilor de gri;
b) să se egalizeze histograma astfel încât să se obtină o imagine cu 4
niveluri de gri și m1=15, m2=m3=16, m4=17; să se deducă indicii ki,
i=1-4;
3 2 0 1 1 0 2 3
2 0 1 5 5 1 0 2
3 1 6 6 6 6 1 3
1 5 6 7 7 6 5 1
1 5 6 7 7 6 5 1
4 1 6 6 6 6 1 4
2 0 1 5 5 1 0 2
3 2 0 1 1 0 2 3
Cap. 3. Procesarea imaginilor

Imagini ale aceleiasi scene cu diferite nivele de iluminare: a,b,c

Imagine prelucrata: contrast marit: d

a) c)

b) d)
Cap. 3. Preprocesarea imaginilor

3.2. Transformări geometrice

– Eliminarea distorsiunilor geometrice ce apar la achizitie


– Compararea imaginilor diferite pentru acelaşi obiect ⇐T

Transformarea geometrică ⇒ funcţia vectorială T:(x, y) → (x′,y′)


x' = Tx ( x, y ), y ' = T y ( x' , y ' ) T-1 ⇒
Tx, Ty: rotaţii,translaţii, scalări, etc.
Fig. 3.2.1. Transformarea geometrică a unui plan
Transformare geometrica ⇒ doi paşi:
– transf. coordonatelor pixelilor din imaginea originală ⇒ nr. reale
– găsirea punctului de pe grilă şi calculul nivelului de gri prin interpolare
Cap. 3. Preprocesarea imaginilor

3.2.1. Transformarea coordonatelor unui pixel

• relaţii polinomiale
m m−r m m−r
r k
x'= ∑ ∑ ark x y , y ' = ∑ ∑ brk x r y k
r =0 k =0 r =0 k =0

• Transformare liniară în raport cu ark, brk ⇒ perechi de puncte corespondente (x, y), (x', y')
m = 2 sau 3, 6 ÷ 10 perechi de puncte
• Transformarea x' = a0 + a1x + a2 y + a3 xy
: 4 perechi de puncte
biliniară y ' = b0 + b1x + b2 y + b3 xy
• Transformarea x' = a0 + a1x + a2 y
: 3 perechi de puncte
afină y ' = b0 + b1x + b2 y
: rotaţia, translaţia, scalarea şi înclinarea
Cap. 3. Preprocesarea imaginilor

Transformare aplicata imaginii ⇒ schimbarea sistemului de coordonate ⇒ Jacobianul J


∂x' ∂y '
∂ ( x', y ') ∂x ∂x J = 0 ⇒ nu ∃ inversa transformatei
J= = :
∂ ( x, y ) ∂x' ∂y ' J = 1 ⇒ aria imaginilor invariantă la transformări
∂y ∂y
• Transformare biliniară: J = a1b2 − a2b1 + ( a1b3 − a3b1) x + (a3b2 − a2b3 ) y
• Transformarea afină: J = a1b2 − a2b1

Transformări:
- înclinarea cu unghiul φ pe direcţia y
x' = x + ytgφ ; J = 1
y '= y

- scalarea cu a pe x şi b pe y:
x' = ax ; J = ab
y ' = by
Cap. 3. Procesarea imaginilor

- translaţia cu a pe x şi b pe y:

x'= x − a ; J = 1
y'= y − b

- rotaţia cu unghiul φ:
y
 x'= ρ cos(θ − φ ) =  ρ cos θ cosφ + ρ sin θ sin φ y′ (x, y)

 
 x y (x′ , y′ )
 ρ θ x′
 y ' = ρ sin(θ − φ ) = −

ρ cos

θ sin φ + 
ρ sin

θ cosφ
 x y φ
 x'= x cosφ + y sin φ ; J = 1 x

 y '= − x sin φ + y cosφ Fig. 3.2.2. Rotaţia cu unghiul φ
Cap. 3. Preprocesarea imaginilor

(a) (b) (c)

(d) (e)
Fig. 3.2.3. Tipuri de distorsiuni (captarea imaginii de la distanta)

(a) distorsiunea panoramică (scanare liniare cu viteză const. de rotire a oglinzii)


(b) distorsiunea neliniară (distanţe neegale ale obiectului faţă de oglinda scanerului)
(c) distorsiunea de înclinare (scanare mecanică la prelucrarea imaginilor din satelit)
(d) distorsiunea de scalare (schimbarea distanţei obiectului faţă de senzor)
(e) distorsiunea de perspectivă (proiecţie de perspectivă)
Cap. 3. Procesarea imaginilor

Imaginea initiala: a Imaginea inclinata dupa axa Oy: c

Imagine rotita cu 45 grade: b Transformare geometrica de tip proiectie: d

a)
c)

b)
d)
Cap. 3. Preprocesarea imaginilor

3.2.2. Interpolarea nivelurilor de gri

x ′ = Tx ( x y ), y ′ = T y ( x, y ) ⇒ nu rezultă numere întregi ⇒ poziţia nouă nu se suprapune peste

grila imaginii noi ⇒ interpolarea nivelului de gri vecinul cel mai apropiat (a)
liniară (b)
bicubică (c)
• Problema interpolării ⇒ se exprimă în mod dual
• Se determină nivelul de gri al pixelului din imaginea originală ce corespunde pixelului
din a doua imagine

( x, y ) = T −1( x′, y′) nu rezultă coordonate întregi: (x, y) – nr. reale; (x′, y′) –nr. întregi
Imaginea iniţială f(x, y) → valori cunoscute: f s (l∆x, k∆y )

∞ ∞
Interpolar ea : f n ( x, y ) = ∑ ∑ f s (l∆x, k∆y )hn ( x − l∆x, y − k∆y )
l =−∞ k = −∞
1 2 3
n : (a), (b), (c) ; hn: nucleul interpolării (vecinătate redusă)
Cap. 3. Preprocesarea imaginilor

• Interpolarea (a) grila II mapată de T-1 în imaginea originală


grila discretă a imaginii originale
(x, y): nivelul de gri al celui mai apropiat vecin
h1
f1 ( x, y ) = f s (  x  ,  y  )

 x  = cel mai mic întreg ≥ x (plafon sau partea întreagã în exces) 1D

• Interpolarea (b)
-0.5 0 0.5 x
(x, y): nivelul de gri = combinaţie liniară (4 pixeli vecini) hs
f 2 ( x, y ) = (1 − a )(1 − b) f s (l , k ) + a (1 − b) f s (l + 1, k ) +
+b(1 − a ) f s (l , k + 1) + abf s (l + 1, k + 1) 1D
l =  x  , a = x − l ; k =  y  , b = y − k
 x  = cel mai mare întreg ≤ x (partea întreagã) -1 1 x

• Interpolarea (c) h3
(x, y): nivelul de gri = aprox. locală cu o suprafaţă bicubică 1D
(8 pixeli vecini)
-2 -1 1 2 x
1− 2 x 2 + x 3 0 < x <1

 2 3 “pălărie mexicană”
Nucleul 1D; h3 = 4 − 8 x + 5 x − x 1 < x < 2
0 in rest

Cap. 3. Preprocesarea imaginilor

Exemplul 3.2
Se consideră două grile (Fig. 1) obţinute în urma unei transformări geometrice T. Dacă valorile
nivelurilor de gri ale pixelilor situaţi pe grila discretă a imaginii originale (punctele „●”) sunt cele din
tabelul 1, să se determine nivelurile de gri ale pixelilor p1, p2, p3, p4 ce aparţin grilei deformate
( punctele „o”), prin:
a) metode vecinului cel mai apropiat;
b) interpolare liniară.
1 2 3
i
p1 p2
Tabelul 1 Valorile nivelurilor de gri
2 Pixel (i,j) (1,1) (1,2) (1,3) (2,1) (2,2) (2,3) (3,1) (3,2) (3,3)

p3 p4 Nivel gri 2 5 4 3 4 5 2 1 1
3

j
Figura 1

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