Download - Curs Part1
-
7/24/2019 Curs Part1
1/80
Procesarea Imaginilor siViziune Artificiala
Curs 1
Conf. dr. ing. Remus BRAD, Universitatea Lucian Blaga din Sibiu
-
7/24/2019 Curs Part1
2/80
Bibliografie
Sergiu Nedevschi, Procesare de imagine si recunoasterea formelor, Editura
Albastra, Cluj-Napoca 1998
Aurel Vlaicu, Procesarea imaginilor, Editura Albastra, Cluj-Napoca 1997
Remus Brad - Procesarea imaginilor si elemente de computer vision, Editura
Universitatii "Lucian Blaga", Sibiu 2003, ISBN 973-651-739-X
FORSYTH David A., PONCE Jean, Computer Vision: A Modern
Approach, Prentice Hall, 2003, U822571160, 04/F79
GONZALEZ Rafael C., WOODS Richard E., Digital Image Processing, London;
Sydney, Pearson Prentice Hall, 2008, U822541160, 04/G69
SONKA, Milan; HLAVAC, Vaclav; BOYLE, Roger, Image Processing, Analysis
and Machine Vision, Cengage Learning, 2008, U822551160, 04/S68 STEGER Carsten, ULRICH Markus, WIEDEMANN Christian, Machine Vision
Algorithms and Applications, Wiley VCH Verlag, 2008, U822561160, 04/S82
-
7/24/2019 Curs Part1
3/80
Bibliografie
i
Google
-
7/24/2019 Curs Part1
4/80
Imaginea Digitala
Achizitia si proprietatile ei
-
7/24/2019 Curs Part1
5/80
Formarea imaginii
-
7/24/2019 Curs Part1
6/80
Formarea imaginii
-
7/24/2019 Curs Part1
7/80
Imaginile ca si elemente digitale
Scena Imagine
Continuu Discret3D 2D
Numar de culori arbitrar Numar de culori controlat
Extindere arbitrara Extindere limitata
-
7/24/2019 Curs Part1
8/80
Achizitia imaginii
tubul vidicon
matricea CCD
scanner (suprafata sau linie)
laser
rezonanta magnetica
senzor termografic
senzor ultrasonic
-
7/24/2019 Curs Part1
9/80
Charge-Coupled Devices CCD
Boyle and Smith, 1969, Bell Labs
-
7/24/2019 Curs Part1
10/80
Charge-Coupled Devices CCD
CCD - numele vine de la modalitatea prin care sint cititipixelii. Sarcinile electrice acumulate in celulele primului sint
transferate intr-un registru (read-out). De acolo, la un
amplificator si apoi intr-un ADC.
Dupa citirea primului rind, registrul este sters si rinduriledin matrice sint shiftate, astfel incit actualul prim rind ajunge
in registru.
Fiecare rind este cuplat
(transferat) la urmatorul
-
7/24/2019 Curs Part1
11/80
Charge-Coupled Devices CCD
Horizontal Transportation Register
OutputGate
Amp
lifier
V
erticalTransportR
egister
Gate
V
erticalTransportR
egister
Gate
V
erticalTransportR
egister
Gate
Fotoelemente Output
-
7/24/2019 Curs Part1
12/80
CMOS
Proces de fabricatie Complementary Metal Oxide
Semiconductor (CMOS) cel mai des utilizat in lume = produs
ieftin
Se inglobeaza logica de control si procesare intr-un singur
chip. La CCD, acestea formeaza un chip separat.
-
7/24/2019 Curs Part1
13/80
CMOS
Pixelul Noble 3T CMOS este format din:
un fotodetector JFET sau o fotodioda,
un tranzistor, Mrst, ce are rolul de a reseta
dispozitivul (Cind tranzistorul conduce,
fotodioda este conectata la VRST
, stergind
sarcina acumulata),
un tranzistor, Msf, ce are rol de buffer. Acesta amplifica
sarcina acumulata in fotoelement
un tranzistor, Msel, ce selecteaza rindul din matrice. Acesta
permite ca un singur rind sa fie citi si convertit de catre
elecronica de iesire
Exista sisteme cu 4, 5 sau 6 tranzistori, ce permit functionarea
senzorului ca si obturator global (shutter).
-
7/24/2019 Curs Part1
14/80
CCD vs. CMOS
Technologie matura si specifica
Costuri mari de productie
Consum mare de energie
Raspuns de banda larga
Citire secventiala
Tehnologie standard de CI
Ieftina
Consum mic de energie
Sensibilitate scazuta
Citirea pixelilor random
Posibilitatea de smart pixel
Integration on-chip cu alte
componente
-
7/24/2019 Curs Part1
15/80
Achizitia imaginii
-
7/24/2019 Curs Part1
16/80
Imaginile digitale
Obiect Camera Digitizare Imaginedigitala
-
7/24/2019 Curs Part1
17/80
Imaginile digitale
Imaginedigitala
0 10 10 15 50 70 80
0 0 100 120 125 130 130
0 35 100 150 150 80 50
0 15 70 100 10 20 20
0 15 70 0 0 0 15
5 15 50 120 110 130 110
5 10 20 50 50 20 250
PIXEL
0 = negru
255 = alb
(picture element)
-
7/24/2019 Curs Part1
18/80
Tipuri de imagini
nuante de gri
[0..255]
binare
{0 , 255}
color
R G B
-
7/24/2019 Curs Part1
19/80
Imagini nuante de gri
39871532
22132515372669
28161010
Valori scara de gri
-
7/24/2019 Curs Part1
20/80
Imagini color
39871532
22132515
372669
28161010
39656554
42475421
67965432
43567065
99876532
92438585
67969060
78567099
Reprezentare RGB
componente RGB
-
7/24/2019 Curs Part1
21/80
Imagini color RGB
-
7/24/2019 Curs Part1
22/80
Esantionarea imaginii
discretizarea imaginii in domeniul spatial
marimea pixelului = rezolutia spatiala / rezolutia imaginii
-
7/24/2019 Curs Part1
23/80
Esantionarea imaginii
In cazul subesantionarii se pierd detaliile imaginii !
Origin
alimage
Sampledimage
= punctele de esantionareRezolutia spatiala
-
7/24/2019 Curs Part1
24/80
Esantionarea imaginii
Originalimage
= punctele de esantionare
Perioada
minima Rata de esantionareRezolutia spatiala
Sampled image
Nu se pierd detaliile!
Rata de esantionare Nyquist:
Rezolutia spatiala trebuie sa fie mai mica
sau egala cu jumatate din perioada
minima a imaginii
2mm1mm
-
7/24/2019 Curs Part1
25/80
Rezolutia imaginii
256x256 pixeli
64x64 pixeli
128x128 pixeli
32x32 pixeli
-
7/24/2019 Curs Part1
26/80
Cuantizarea imaginii
Numarul de biti pe care se reprezinta pixelii spatiali
Rezolutie de culoare = numar de culori sau de nivele de gri
Profunzimea culorii = numar de biti pe care este reprezentat pixelul
Nivele de culoare = numarul de culori sau de nivele de gri Nc
undeb reprezinta numarul de biti
b
cN 2=
-
7/24/2019 Curs Part1
27/80
Cuantizarea imaginii
Nivele de intensitate
Niveledecuantizare
0
1
2
Nc-1
Nc-2
negru alb
-
7/24/2019 Curs Part1
28/80
Cuantizarea imaginii
-
7/24/2019 Curs Part1
29/80
Cuantizarea imaginii
256 128
3264 2
4
-
7/24/2019 Curs Part1
30/80
Achizitia imaginilor color
3 CCD-uri
sistem optic de prisme
pentru separarea
componentelor
scump
cea mai buna calitate
-
7/24/2019 Curs Part1
31/80
Achizitia imaginilor color
Bayer pattern
fiecare componenta a unui
pixel are un sensor foto cu
filtru atasat
cel mai des utilizat
necesita post-procesare
pentru reconstructia imaginii
-
7/24/2019 Curs Part1
32/80
Achizitia imaginilor color. Bayer pattern
post-procesare
= demozaicare
-
7/24/2019 Curs Part1
33/80
Achizitia imaginilor color. Bayer pattern
Demoizaicare prin interpolare
-
7/24/2019 Curs Part1
34/80
Achizitia imaginilor color. Bayer pattern
Demozaicare prin interpolare bilineara
-
7/24/2019 Curs Part1
35/80
Achizitia imaginilor color. Bayer pattern
Demozaicare prin nearest neighbor
-
7/24/2019 Curs Part1
36/80
High Dynamic Range
high dynamic range imaging (HDR)
in domeniul procesarii de imagine, al graficii computerizate
si al fotografiei,
un set de tehnici ce permit un interval mai mare de
luminanta intre zonele negre si albe din imagine decit in
fotografiile normale sa reprezinte mai precis nivelele de intensitate prezente in
scenele reale
se pastreaza contrastul
fara HDR, se realizeaza o limitare a nivelelor pe alb
respectiv negru reprezentare pe numere reale ale nivelelor, intre 0 si 1
-
7/24/2019 Curs Part1
37/80
High Dynamic Range
Se utilizeaza mai multe
imagini cu timpi de
expunere diferit
Trebuie sa fie aceeasi
incadrare
Se combina valorile
pixelilor
Se trece rezultatul in
reprezentare RGB 24 biti
-
7/24/2019 Curs Part1
38/80
Tipuri de imagini (modul de obtinere)
prin reflexia luminii prin transparenta prin ecou
ultrasunet radar sonar sau laser (range image)
-
7/24/2019 Curs Part1
39/80
Tipuri de imagini
echografie RMN
microscop radar (SAR)
-
7/24/2019 Curs Part1
40/80
Tipuri de imagini
RMN Microscopie
Raze X Angiografie
-
7/24/2019 Curs Part1
41/80
Tipuri de imagini
satelit infrarosu range
-
7/24/2019 Curs Part1
42/80
Procesarea Imaginilor
Elemente de pre-procesare
-
7/24/2019 Curs Part1
43/80
Procesarea de imagini si viziunea artificiala
-
7/24/2019 Curs Part1
44/80
Imbun#t#&irea imaginilor
Ajustarea contrastului
Imbun#t#&irea contrastului imaginilor cu nivele continue a) 'i cuantizate b).
-
7/24/2019 Curs Part1
45/80
Modificarea de contrast
Imaginea de referina) 'i histograma ei b).
-
7/24/2019 Curs Part1
46/80
Modificarea de contrast
Exemple de func&ii de transfer: fereastr#a) 'i r#d#cin#p#trat#b).
-
7/24/2019 Curs Part1
47/80
Extinderea histogramei
a) b) c)
Figura 2.3. Exemple de extindere a contrastului imaginilor.
-
7/24/2019 Curs Part1
48/80
Modificarea neadaptiv# de histogram#
Exemplu de egalizare a histogramei cu un num#r inegal de
niveluri de cuantificare.
k
k
)(khideal
)(kh
-
7/24/2019 Curs Part1
49/80
Modificarea neadaptiv# de histogram#
se calculeaz# valoarea medie a histogramei si al fiecarei benzi
ncepnd cu cel mai de jos nivel de gri al imaginii originale,
valorile din benzile de cuantificare sunt combinate pn# cndsuma lor se afl# cel mai aproape de medie. To&i pixeli sunt apoi
rescala&i la primul nivel de reconstruc&ie din mijlocul primei
benzi de cuantificare a imaginii mbun#t#&ite.
procesul e repetat'i la celelalte nivelele de gri.
-
7/24/2019 Curs Part1
50/80
Modificarea neadaptiv# de histogram#
a) originalul b) imaginea rezultat#
c) histograma original# d) func&ia de transfer e) histograma imaginii rezultate
Exemplu de egalizare a histogramei pe o imagine MRI
-
7/24/2019 Curs Part1
51/80
Modificarea adaptiv# a histogramei
Geometria calculului adaptiv al histogramei
-
7/24/2019 Curs Part1
52/80
Procesarea imaginilor digitale
procesarea in domeniul spatial
poate fi vazuta ca o transformat#
g(x,y)= H{f(x,y)}
unde
f - este imaginea originala
g- imaginea prelucrata
H- operatorul definit pe o
vecinatate a pixeluluif(x,y)
-
7/24/2019 Curs Part1
53/80
Procesarea imaginilor digitale
vecinatatea pixeluluif(x,y) poate
fi vazuta ca si un vector w(x,y)
ale valorilor pixelilor din acea
vecinatate
spre exemplu, pentru o
vecinatate de 3x3 centrata pe
pixelul de coordonatex,y
+++
+-
+
-
-+
-
--
=
)1,1(
)1,(
)1,1(
),1(
),(
),1(
)1,1(
)1,(
)1,1(
),(
yxf
yxf
yxf
yxf
yxf
yxf
yxf
yxf
yxf
yxw
-
7/24/2019 Curs Part1
54/80
Procesarea imaginilor digitale
un filtru spatial H este liniar daca si numai daca sint adevarate:
H{af(x,y)} = aH{f(x,y)}
H{f1(x,y)+f2(x,y)} =H{f1(x,y)}+H{f2(x,y)}
pentru un filtru spatialHse poate considerag(x,y) = hw(x,y)
unde
geste imaginea rezultata,
h este vectorul filtrului,
w este vecinatatea (vector) pixelului de coordonatex,y este produsul scalar
-
7/24/2019 Curs Part1
55/80
Convolutia
vectorulh se numeste masca
operatiahw se numeste convolutie
spre exemplu, pentru o vecinatate de 3 x 3:
g(x,y) =
h1 h2 h3
h4 h5 h6
h7
h8
h9
w1 w2 w3
w4 w5 w6
w7
w8
w9
h1w1+h2w2+h9w9= f(x,y)
-
7/24/2019 Curs Part1
56/80
Tipuri de procesari
locala
g(x,y) depinde doar def(x,y)
vecinatate
g(x,y) depinde de vecinatatea luif(x,y)
globala
g(x,y) depinde de toata imaginea
in out
-
7/24/2019 Curs Part1
57/80
Netezirea imaginii
g(x,y) =
1/9 1/9 1/9
1/9 1/9 1/9
1/9 1/9 1/9
w1 w2 w3
w4 w5 w6
w7 w8 w9
f(x,y)imaginea originala
8 9 83 58 15
9 11 127 34 14
10 13 160 23 14
10 19 124 17 13
10 39 93 16 14
imaginea netezita
9 35 52 57 33
10 48 58 59 23
11 54 59 58 19
14 53 56 53 16
20 47 49 41 16
-
7/24/2019 Curs Part1
58/80
10 11 10 9 10 5 6 5 4 5
10 10 10 10 8 7 5 5 5 5
contur
luminos intunecos
Contur netezit
Filtru 1 3
Netezirea imaginii
-
7/24/2019 Curs Part1
59/80
Filtrul Gaussian
g(x,y)= 1/(s2p) e- (x2+y2) /2s2
4s
gaussian 5x5 cu s=1.4
-
7/24/2019 Curs Part1
60/80
Filtrul Gaussian
-
7/24/2019 Curs Part1
61/80
Eliminarea zgomotului
Imagini de test cu zgomot uniform a) si impuls pe nivel de alb b).
-
7/24/2019 Curs Part1
62/80
Filtre trece-jos
O imagine filtrat#spa&ialg(j,k) poate fi ob&inut#prin convolu&ia discret#a unei imagini de intraref(j,k) cu omatrice de r#spuns la impuls h(j,k) de m#rimeLxLconform rela&iei:
+---= ),().,(),( CknCjmhnmfkjg (3.1)
unde C=(L+1)/2.
Masca 1 H=
1
9
1 1 1
1 1 1
1 1 1
(3.2.a)
Masca 2 H=
1
10
1 1 1
1 2 1
1 1 1
(3.2.b)
Masca 3 H=
1
16
1 2 1
2 4 2
1 2 1
(3.2.c)
Hb
b
b b b
b
=+
1
2
1 1
1 1
2
2(3.3)
-
7/24/2019 Curs Part1
63/80
Filtre trece-jos
a) masca 1 'i zgomot de tip impuls b) masca 2 'i zgomot de tip impuls
c) masca 1 'i zgomot uniform d) masca 2 'i zgomot uniform
-
7/24/2019 Curs Part1
64/80
Filtrare homomorf#
Imaginea de intraref(k,j) se presupune a fi rezultat#ca produs al unei imagini f#r#zgomot,
a(j,k) 'i a unei matrici de interferena ilumin#riiI(j,k). Astfel,
),(),(),( kjakjIkjf = (3.6)
In mod ideal,I(j,k) ar fi o constant#pentru to&i pixelii (j,k). Logaritmnd ec. 3.6, ob&inemrezultatul sub form#aditiv#:
)},(log{)},(log{)},(log{ kjakjIkjf += (3.7)
Filtrarea homomorf#
-
7/24/2019 Curs Part1
65/80
Filtrare homomorf#
a) cmp de iluminare b) imaginea observat# c) Filtrarea homomorf#
Exemplu de filtrare homomorf#
-
7/24/2019 Curs Part1
66/80
Tehnica Outlier daca X p atunci X pi
ii
i
-
> =
= = 1
8
1
81
8
1
8
e (3.8)
H=
1
8
1 1 1
1 0 1
1 1 1
(3.9)
a) zgomot uniform b) zgomot de tip impuls
Exemplu de ndep#rtare a zgomotului cu ajutorul filtrului "outlier"
-
7/24/2019 Curs Part1
67/80
Filtrul median
Medianul sirului a1, a2, ..., andeNnumere impare este acel element al 'irului pentru care(N-1)/2 elemente sunt mai mici sau egale n valoare 'i (N-1)/2 elemente sunt mai mari sau
egale in valoare.
Exemplu de filtrare median#cu fereastra de 3x3 'i 5x5 'i zgomot de tip impuls
-
7/24/2019 Curs Part1
68/80
a) fereastra 3x3 b) fereastra 5x5
c) fereastr#3x3 'i aplicare cascadat# d) fereastr#5x5 'i aplicare casacadat#
Exemple de filtrare median#pe imagini cu zgomot uniform
Filtrul median
-
7/24/2019 Curs Part1
69/80
Filtrul median
zgomot sare si piper 5 % zgomot sare si piper 20 %
filtrul median 3 x 3
-
7/24/2019 Curs Part1
70/80
Filtrul pseudomedian
Medianul unei secven&e cu 5 elemente a, b, c, d, e, poate fi exprimat prin:
M ED a b c d e M A X M IN a b c M IN a b d M IN a b e M IN a c d
M IN a c e M IN a d e M IN b c d M IN b c e
M IN b d e M IN c d e
( , , , , ) [ ( , , ), ( , , ), ( , , ), ( , , ),
( , , ), ( , , ), ( , , ), ( , , ),
( , , ), ( , , )]
=
(3.10)
In general, medianul unei 'ir de L elemente este MAX (sau MIN) din MIN (sau MAX) al
tuturor L M L M!/ [ !][( )!]- sub'irurilor, unde M L= +( ) /1 2 .
Pseudomedianul de lungime 5 este definit ca:
PM ED a b c d e M A X M IN a b c M IN b c d M IN c d e
M IN M A X a b c M A X b c d M A X c d e
( , , , , ) ( / ) [ ( , , ), ( , , ), ( , , )]
( / ) [ ( , , ), ( , , ), ( , , )]
= +1 2
1 2 (3.11)
-
7/24/2019 Curs Part1
71/80
Filtrul pseudomedianDefini&ia pseudomedianului din ec. 3.11 poate fi generalizat#la o lungime arbitrar#. Fie {SL}un 'irde elementes1,s2, ...,sL. Pseudomedianul 'irului este:
PMED S MA XIMIN S MINIMA X SL L L{ } ( / ) { } ( / ) { }= +1 2 1 2 (3.12)
undeM=(L+1)/2 'i
MA XIMIN S MA X MIN s s MIN s S
MIN s s
L M M
L M L
{ } {[ ( , ..., )], [ ( , ..., )],
..., ( , ..., )]}
=
- +
1 2
1
(3.13a)
MINIMA X S MIN MA X s s MA X s S
MA X s s
L M M
L M L
{ } {[ ( , ..., )],[ ( , ..., )],
..., ( , ..., )]}=
- +
1 2
1
(3.13b)
y
x x x
y
M C
R
1
1
M
L L
M
'irurile {XC}'i {YR} con&in pixelii afla&i pe orizontal#'i respectiv vertical#din fereastr#.
PMED MA X MA XIMIN X MA XIMIN Y
MIN MINIMA X X MINIMA X Y
C R
C R
= +( / ) [ { }, { }]
( / ) [ { }, { }]
1 2
1 2(3.14)
-
7/24/2019 Curs Part1
72/80
a) imagine cu zgomot "sare 'i piper" b) filtrul MAXIMIN
c) filtrul MINIMAX d) filtrul pseudomedian
Filtrul pseudomedian
-
7/24/2019 Curs Part1
73/80
Conturul in imaginile digitale
Ce este un contur?
treapta de intensitate
-
7/24/2019 Curs Part1
74/80
Accentuarea contururilor
filtrare trece-sus
masca 1 H =
-
- -
-
0 1 0
1 5 1
0 1 0
(4.1a)
masca 2 H =
- - -
- -
- - -
1 1 1
1 9 1
1 1 1
(4.1b)
masca 3 H = -- -
-
1 2 12 5 2
1 2 1
(4.1c)
-
7/24/2019 Curs Part1
75/80
Accentuarea contururilor
a) imaginea original#(MRI de coloana) b) contururi accentuate cu masca 1
c) contururi accentuate cu masca 2 d) contururi accentuate cu masca 3
-
7/24/2019 Curs Part1
76/80
Accentuarea contururilor
( )
-
-
-
-
-+
-
-
-
-
=
9
9
9
9
91
9
9
9
9
A
A
A
A
AA
A
A
A
A
h
A = 0 A = 1 A = 2
-
7/24/2019 Curs Part1
77/80
Embossing filter
g(x,y) =
1/9 )1/9 )1/9
)1/9 8/9 )1/9
)1/9 )1/9 )1/9
w1 w2 w3
w4 w5 w6
w7 w8 w9
f(x,y)
imaginea originala
8 9 83 58 15
9 11 127 3411 127 34 14
10 13 160 2313 160 23 14
10 19 124 1719 124 17 13
10 39 93 16 14
imaginea emboss
-1 -26 31 1 -18
-1 -37 69 -25 -9
-1 -41 101101 -35 -5
-4 -34 68 -36 -3
-10 -8 44 -25 -2
-
7/24/2019 Curs Part1
78/80
Sharpening filter
imaginea originala
8 9 83 58 15
9 11 127 3411 127 34 14
10 13 160 2313 160 23 14
10 19 124 1719 124 17 13
10 39 93 16 14
imaginea accentuata
7 0 114 59 0
8 0 196 9 5
9 0 255255 0 9
6 0 192 0 10
0 31 137 0 12
g(x,y) =
1/9 )1/9 )1/9
)1/9 17/9 )1/9
)1/9 )1/9 )1/9
w1 w2 w3
w4 w5 w6
w7 w8 w9
f(x,y)
-
7/24/2019 Curs Part1
79/80
Unsharp Masking
imaginea este scanat#cu dou#deschideri:
una cu o rezolutie normal#,F(j,k) alta cu o rezolutie de nivel sc#zut,FL(j,k).
O masc#de tip "unsharp" este generat#pe baza formulei:
G j kc
c
F j kc
c
F j kL( , ) ( , ) ( , )=
-
- -
-2 1
1
2 1
(4.2)
unde ceste constanta de pondere n domeniul [3/5, 5/6] astfel nct raportul celor dou
componente n imaginea rezultat#s#fie ntre 1.5:1 'i 5:1.
a) rezolu&ie nalt# b) rezolu&ie sc#zut# c) mascare "unsharp"
-
7/24/2019 Curs Part1
80/80
Unsharp Masking
a)L=3, c=0.6 b)L=3, c=0.8