Sunteți pe pagina 1din 31

Procesarea Imaginilor

Curs 12
Procesarea imaginilor color:
Modele de culoare. Segmentare imagini color.
Intoducere
Segmentare := identificare zone omogene din imagine
Segmentare imagini color := identificare regiuni (componente conexe) care
satisfac anumite criterii de omogenitate, bazate pe trasaturi derivate din
componentele spectrale. Aceste componente sunt definite in spatiul de culoare
considerat.
(1) Regiune (definitie bazata pe notiunea de pixel) := componenta conexa a unui
set de pixeli specificata printr-o functie de aparteneta la o clasa definita in spatiul
de culoare considerat:
(a) Culoare pixelului este intr-un semispatiu definit de un plan;
(b) Culoare pixelului se incadreaza intr-un poliedru;
(c) Culoare pixelului se incadreaza intr-o celula Voronoi data de niste puncte
reprezentative;
(d) Functie de apartenta fuzyy la o classa defuzzificata de o operatie de
taiere/separare
Voronoi decomposition := in the simplest case, we are given a set
of points S in the plane, which are the Voronoi sites. Each site s has
a Voronoi cell V(s) consisting of all points closer to s than to any
other site. The segments of the Voronoi diagram are all the points in
the plane that are equidistant to two sites. The Voronoi nodes are
the points equidistant to three (or more) sites
IMAGE PROCESSING Technical University of Cluj Napoca
Computer Science Department
Intoducere
(2) Regiune (definitie bazata pe notiunea de regiune) := setul maximal de
pixeli pentru care este satisfacuta o conditie de uniformitate (predicat de
omogenitate):
(a) Regiuni uniforme obtinute prin cersterea unui bloc/seed prin unirea altor
pixeli sau blocuri de pixeli
(b) Regiuni uniforme obtinute prin impartirea unor regiuni mai mari care nu
sunt omogene

(3) Regiune (definitie bazata pe notiunea de muchie) := set de pixeli


delimitati de pixeli de muchie (countur) - (predicat de ne-omogenitate):

(4) Regiune := corespunde unei suprafete a unui obiect din material


omogen (physics based vision methods – modele de reflexie bazate pe
proprietatile materialelor)

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Achizitia imaginilor color
Senzori color
http://www.siliconimaging.com/RGB%20Bayer.htm
http://www.zeiss.de/c1256b5e0047ff3f/Contents-Frame/c89621c93e2600cac125706800463c66

decodificarea direct
pattern-ului Bayer

IMAGE PROCESSING
Imagine RGB Technical University of Cluj Napoca
Computer Science Department
Achizitia imaginilor color
Decodificarea pattern-ului Bayer

IMAGE PROCESSING
Calitatea imaginii (Bayer pattern vs. 3CCD) ??? Technical University of Cluj Napoca
Computer Science Department
Spatiul de culoare: RGB
RGB ⇒ Culoarea fiecărui pixel (atât pentru
echipamentele de achiziŃie – camere) cât şi
pentru afişare (TV, CRT, LCD) se obŃine prin
combinaŃia a trei culori primare: roşu, verde
şi albastru. (Red, Green şi Blue)
⇒ spaŃiu de culoare aditiv (R+G+B ⇒ Alb)

Modelul de culoare RGB mapat pe un cub.


În acest exemplu fiecare culoare este
reprezentată pe câte 8 biŃi (256 de nivele)
(imagini bitmap RGB24). Numărul total de
culori este 28x28x28 = 224 = 16.777.216.

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Spatiul de culoare: CMY
CMY: spaŃiu de culoare complementar
fata de RGB folosit la dispozitive de
imprimare color.
CMY model diferential (“substractive”):
Alb = absenta componentelor de culoare
Negru = C + M + Y

CMYK

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Spatiul de culoare: RGB normalizat
Reduce dependenta de iluminare a obiectului
Se poate aplica doar daca variatiile de intensitate sunt uniforme de-a lungul
spectrului RGB

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Modele de culoare: HSI (HSV, HSB, HSL)
HSI: (H, S, I), H=0 .. 2π, S=0 .. 1, I=0 .. 255

I=
1
(R + G + B )
3
1

S =1−
3
[min (R, G, B )]
(R + G + B )
0

 Φ if G ≥ B
H = 
 2 Π − Φ if G < B
 

1
[(R − G ) + (R − B )] 
Φ = cos −1  2 
 
( ) ( )( )
1
− + − −
2
 R G R B G B 2
 
IMAGE PROCESSING   Technical University of Cluj Napoca
Computer Science Department
Alte modele
XYZ tristimulus - transformare liniara asupra RGB:

CIE(Lab) space

CIE(Luv) space

YIQ (US)

YIQ (EU)

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Propritati ale trasaturilor cromatice
Invarianta la translatie si scalare

Hue – invarianta la scalarea uniforma a RGB:

RGB-norm – invarianta la scalarea uniforma RGB:

Hue – invarianta la translatia uniforma RGB:

RGB-norm – nu prezinta invarianta la scalarea uniforma RGB:

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Propritati ale trasaturilor cromatice
Singularitate Hue pt. RGB ≈ 0
R=G=B=0 ⇒ H nedefinit
Exemple:
H(1,0,0) = 0, H(0,1,0) = 2π/3
H(1,1,0) ⇒ H(2,1,0) : δH = π/6
Concluzie: calcularea H in zone cu intensitatea mica ⇒ erori numerice

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Procesari pe imagini color
Similare cu cele pe imagini grayscale
Procesarile se aplica pe fiecare componenta de culoare in parte.

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
1. Segmentare la nivel de pixel
Segmentare se face in spatiul trasaturilor (culorilor)
Abordari:
1. Bazate pe histograma: detectia maximelor si gruparea culorilor (clustering) in
jurul maximelor + clasificarea pixelilor in aceste clustere
2. Clusering in spatiul de culoare – punctele din spatiul de culoare sunt grupate
in jurul unor centre reprezentative + clasificarea pixelilor in aceste clustere
3. Clusterring fuzzy – functi de aparteneta fuzzy evaluate pentru totii pixelii si
clusterele fuzzy + obtinerea clusterilor de pixeli prin defuzzificare si diviziune
in seturi connexe maximale

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
1.1. Segmentare bazata pe impartirea histogramei

Detectia maximelor histogramei Hue (filtrate) si impartirea spatiului Hue in Clusteri


avand ca centre aceste varfuri + clasificare pixeli

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
1.1. Segmentare bazata pe impartirea histogramei
Stable segmentation using color information [1]
F = (0.25r + 4g - b) ⇒ thresholding (minimul histogramei bimodale)
Picture segmentation using a recursive region splitting method [1]
RGB, HSI, and YIQ ⇒ gasirea recursiva a maximelor histogramelor: separarea
regiunilor uniforme

Color information for region segmentation [1] ⇒ gasirea recursiva a maximelor


histogramelor: separarea regiunilor uniforme

Opponent colors as a 2-dimensional feature within a model of the


first stages of the human visual system [1] ⇒ histograma 2D (RG,YB)

Segmentation of colour pictures with the aid of colour information


and spatial neighbourhoods [1] ⇒ histograma 2D (RG,YB) + clasificare pe
regiuni de 3x3

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
1.2 Clustering in spatiul de culoare

Gruparea culorilor (din spatul culorilor) si asignarea ficarui grup a unei culori
echivalente (medie)
- cuantizare/posterizare (impartirea spatiului trasaturilor in subspatii de
dimensiuni fixe);
- clustering:
- supervizat - info. apriori: se stiu nr. clusterilor / pozitiile centrelor)
- nesupervizat – fara informatii apriori

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Algoritmi de tip clustering
Clustering in spatiul trasaturilor
- intensitate
- culoare
- trasaturi de textura
- etc.

Un cluster este o colectie de date cu trasaturi similare.

Fie X ∈ RNxM, unde RNxM este un set de date reprezentand N puncte xi in spatiul
RM:
• xi ={ xi1…….. xiM} cu i =1..N
• se noteaza cu Ck clusterul k.
• K reprezinta numarul total de clusteri
• mCkj reprezinta centrul celui de-al k-lea cluster la iteratia j.

Scopul aplicarii acestei metode il constituie partitionarea lui X in K grupuri Ck, astfel
incat datele grupate sa fie asemanatoare din punctul de vedere al unei/unor
trasaturi alese. Rezultatul este o mapare bijectiva X→C a setului de date xi in
clusterii Ck cu k=1..K.

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Clustering in R2

X2

m1(x11,x12) m2(x21,x22)
Θ Θ

C1 C2 m3(x31,x32)

C3 Θ

X1

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Clustering nesupervizat
Modified basic Sequential Algorithm Scheme (MBSAS)
- nesupervizat, secvential Input:
• q – nr maxim clusteri
• Set de N puncte xi cu trasaturi (xi1, xi2,
.. xiM)
• Pragul Θ
Output:
m clusteri Ck, avand ca element
reprezentativ mCk = (xk1, .. xkM) –
centroidul clasei

Masura de distanta in spatiul


M-dimensional al trasaturilor

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Metrici de distanta
Exemple pt. cazul 2D:
- doua puncte P1 = (x1, y1) si P2 = (x2, y2)

Distanta Euclidiana - distanta geometrica intre doua puncte in spatiul


bidimensional definita ca linia dreapta care le uneste:

d Euclidian ( P1 , P2 ) = ( x1 − x 2 ) 2 + ( y1 − y 2 ) 2 = P1 − P2

City block sau Manhattan - distanta este definita ca si


calea de parcurgere prin unul din cei 4 vecini (sus, jos,
stanga, dreapta - fara a parcurge ca directie diagonala intre
pixeli):
d CityBlock ( P1 , P 2 ) = x 2 − x1 + y 2 − y1

Chessboard sau Chebyshev (miscarea regelui pe tabla de sah) - parcurgerea se


poate realiza in cele opt directii spatiale:

d Chessboard ( P1 , P2 ) = max( x 2 − x1 , y 2 − y1 )

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Algoritm MSABS
Exemplu: clustering in spatiu metric (2D)

2D clustering in the (YOZ) space using: 0.3m threshold (left), 0.5m threshold (right). The cluster centers are figured with circles (‘o’).

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Clustering supervizat
Segmentation of color topographic maps in perception based color spaces
(4.2.4-[1])
- detectie maxime in histograma (u,v) in spatiul CIE(Luv)
- impartire plan (u,v) drepte acl (aditive color matching lines)
- clasificare pixeli pe baza acl si distanta la centrele claselor

Thresholding and fuzzy c-means clustering (4.3.1-[1])


Coarse segmentation Algorithm
- calcul histograma pt fiecare componenta de culoare
- detectie maxime si intervale in jurul acestora (scale space histogram analysis)
- definire clusteri valizi si claisifcare pixeli
- alocare pixeli neclasificati la clase pe baza functii de apartenenta Fuzzy

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
2. Segmentare la nivel de regiune
 In spatiul imagine
 Criterii de uniformitate
1. Region Growing
2. Region Splitting
3. Split & merge

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Region Growing
Metoda region growing are la baza un proces iterativ prin care regiuni ale imaginii
sunt fuzionate incepand de la regiuni primare (care pot fi pixeli sau alte
regiuni mici – celule de baza). Iteratiile de crestere se opresc atunci cand nu
mai sunt pixeli de procesat !

Algoritm:
1. Se segtmenteaza imagine in celule de baza (dimensiune >= 1 pixel).
2. Fiecare celula este comparata cu vecinii ei folosind o masura de similaritate.
In caz afirmativ (valoarea metricii de similaritate < prag) celulele sunt
fuzionate intr-un fragment mai mare si se actualizeza trasaturile regiunii
folosite la masura similaritatii (de obicei prin mediere ponderata).
3. Se continua procesul de crestere al fragmentelui prin examinarea tuturor
vecinilor pana cand nu se mai pot realiza fuziuni.
4. Se trece la urmatoarea celula ramasa nemarcata si se repeta pasii 2-3.
Algoritmul se opreste atunci cand nu au mai ramas celule nemarcata.

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Exemplu de implementare
O implementare eficientă foloseşte o coadă (similar cu pasul 4 de la Canny).
Algoritmul rulează astfel:
1. Parcurge imaginea de la stânga la dreapta şi de sus în jos şi găseşte primul
seed point (celula de baza) şi pune coordonatele sale în coadă sii stabileste
o etichita unica
2. Cât timp coada nu este vidă, repeta:
• Extrage primul punct din coada
• Găseşte toŃi vecinii acestui punct care satisfac conditia de similaritate
• Marchează în imagine vecinii acestui punct cu eticheta seed pointului
initial
• Pune coordonatele acestor puncte în coadă
• Continuă cu următorul punct din coadă
3. Continuă de la pasul 1 cu următorul seed point (neparcurs inca).

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Region Growing - examples
RG from a user defined RG a set of grid based seed
seed point in (H,S) space points in (R,G,B) space

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Region growing
Color image segmentation using boundary relaxation (5.2.1 – [1])
• Boundary relaxation method
• Alternative segmentation technique

Color image segmentation (using the topographic watershed algorithm) (5.2.6


– [1])

Real-time color image segmentation method (5.2.5 – [1])


- Teste de omognitate
- Region growing

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Region splitting
Segmentation of image I by splitting
(1) Subdivide the image I into blocks B of size N N; N = 2n, where n is the rank
of block.
(2) For each block B:
(3) If NONUNIFORMITY(B) > T and k = rank(B) > 0; then
- divide the block B into four equal blocks B1;B2;B3;B4;
- repeat step (3) in turn for B1;B2;B3;B4;
Otherwise output B as the uniform block.

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Region splitting and merging

A segmentation algorithm for color images (5.3.1 – [1])

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department
Referinte

[1] W. Skarbek, A. Koschan, Colour Image Segmentation: A Survey, Tchnical


report 94-32, Technische Universitat Berlin, Fachbereich 13 Informatik
Franklinstrasse 28/29, 10587 Berlin, Germany

Algoritmii referiti in [1] sunt optionali !!!

IMAGE PROCESSING Technical University of Cluj Napoca


Computer Science Department

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