Referat

Regasirea informatiei vizuale pe baza caracteristicii culoare

În ultimii ani, din ce în ce mai multă informaţie multimedia în format digital este
generată şi pusă la dispoziţia diverşilor utilizatori. În multe domenii de activitate precum
biomedicină, meteorologie, comerţ, explorarea spaţiului, educaţie, divertisment,
apărare, etc., cantităţi voluminoase de date apar în format imagine.
Ca rezultat, a apărut nevoia dezvoltării unor noi metode de organizare şi găsire a
datelor dintr-o bază de date multimedia. Aşa au apărut sistemele CBIR (“content based
image retrieval”), bazate pe mecanisme de extragere a imaginilor din baza de date în
funcţie de conţinutul lor. Aceasta a constituit o mare provocare pentru cercetătorii
ultimei decade, datorită complexităţii cuantificării unei imagini într-o mulţime adecvată
de caracteristici şi a găsirii unei modalităţi eficiente de aflare a imaginilor similare pe
baza acestor caracteristici. Într-un sistem vizual uman, culoarea şi forma sunt aspecte
fundamentale. Deci, şi într-un sistem CBIR, se vor utiliza în principal caracteristici ale
imaginilor precum culoare şi formă.

Diagrama procesului de regăsire a imaginii.

1

Mai mult, întrucât bazele de date multimedia sunt în general voluminoase, este
foarte important ca, determinarea porţiunilor din baza de date care sunt relevante
pentru cererile utilizatorilor, să se facă rapid şi eficient. De aceea, procesul de extragere
a imaginilor în funcţie de conţinut, trebuie să fie susţinut de tehnici adecvate de
indexare care să suporte execuţia interogărilor bazate pe similaritate.
O imagine poate fi reprezentata ca un set de caracteristici vizuale de nivel jos
cum ar fi caracteristica culoare, textura si forma. În timp ce mai multe sisteme de
regasire de imagine se bazează pe o singură caracteristică pentru extragerea de imagini
relevante, s-a arătat că o combinație adecvată de caracteristici relevante pot duce la
obtinerea unei performanțe mai bune de regăsire.
Continutul poate fi modelat ca o ierarhie abstracta, unde la nivelul de jos sunt
pixelii si informatiile neprocesate cum ar fi culoarea, stralucirea. Nivelul intermediar
este format din obiecte si atributele acestora, iar la nivel inalt sunt implicate
interpretarile obiectelor si a conceptelor umane.Bazata pe aceasta ierarhie
caracteristicile extrase din cadrele cheie si folosite pentru regasirea bazata pe continut
pot fi clasificate in:
Caracteristici vizuale




Culoare
Textura
Forma
Contururi
Miscarea camerei

Caracteristici semantice
 Cadrul probabilistic
 Abstractizarea datelor

Spaţiul de culoare (Color space)
Este o metodă matematică de a reprezenta culorile, ca o tuplă de numere. Spaţiul
de culoare se defineşte ca fiind mulţimea punctelor dintr-un spaţiu, definit printr-un
2

model matematic abstract, cărora li s-au asociat descrierile tuturor culorilor din spectrul
vizibil care pot fi reprezentate şi reproduse pe baza modelului respectiv. Un spaţiu de
culoare dezvoltat pe baza unui model de culoare este definit de funcţii matematice care
asociază fiecărui punct din spaţiu o descriere unică care exprimă, prin parametri de
culoare, modul în care creierul uman sau un anumit tip de echipament, interpretează o
culoare din spectrul vizibil.
Un spaţiu de culoare este cu atât mai bun cu cât reproduce mai multe culori
distincte din spectrul vizibil, deci cu cât are gama de culori mai.
Spaţii de culoare:
• RGB şi SRGB -- Red Green blue;
• CMYK -- Cyan Magenta Yellow Black;
• HSV -- Hue Saturation Value;
• HSL -- Hue Saturation Luminance;
• CIE XYZ.

Caracteristica culoare include histograma conventionala de culoare ( CCH),
histograma de culoare neclara (FCH), corelograma de culoarare (CC) si cea mai recenta
caracteristica bazata pe forma culorii. Extragerea caracteristicilor bazate pe culoare
urmaresc o progresie similara celor patru metode:
i)

Selectarea spatiului culorii,

ii)

cuantificarea spatiului de culoare,

iii)

extragerea caracteristici culoare,

iv)

derivata functiei distantei corespunzatoare.

Exista diverse scheme de identificare ale culorii luandu-se in consideratie mai
multe modele de culoare. Deşi, cel mai popular model este RGB (“Red, Green, Blue”)
datorită simplităţii sale de implementare, acesta nu este şi cel mai adecvat pentru
separarea componentelor de luminozitate şi cromatică.

3

Modelul RGB
Modelul RGB este un model aditiv,in cadrul acestui model fiecare culoare este
reprezentată folosind componentele spectrale primare de roşu (red), verde (green) şi
galben (yellow), celelalte culori constituindu-se din anumite procente ale culorilor de
baza.
Acest model se bazează pe un sistem de coordonate cartezian. Spaţiul culorilor este
reprezentat de un cub (Figura 1) de culori care are în trei colturi culorile roşu, verde şi
albastru iar în celelalte colturi sunt culorile: cyan, magenta, galben, negru şi alb.
Culoarea neagră se află în originea sistemului RGB iar culoarea albă este situată
diagonal opusă culorii negre. Culoarea alb are prezente toate culorile fundamentale, iar
culoarea negru se caracterizeaza prin absenta lor.
Originea (0, 0, 0) este considerata culoarea negru, iar coltul opus (1, 1, 1) corespunde
culorii alb.
Scara nivelelor de gri (punctele cu valori egale ale celor trei componente RGB)
pornind de la negru la alb se află pe linia dreaptă ce uneşte aceste două puncte de
culoare. Culorile din cadrul acestui model se află fie pe suprafaţa fie în interiorul cubului
RGB şi sunt definite prin vectori ce pleacă din origine.

Figura 1 Cubul RGB

În cazul Figurii 1 se consideră că valorile celor trei componente RGB sunt normalizate
în domeniul *0,1+.
Imaginile reprezentate în modelul de culoare RGB constau din trei imagini
componente, câte una pentru fiecare culoare primară. Numărul de biţi utilizaţi pentru
reprezentarea fiecărui pixel în spaţiul RGB poartă numele de adâncimea pixelului. Se
consideră o imagine RGB, în care fiecare imagine componentă (în roşu, verde şi albastru)
este o imagine pe 8 biţi (fiecare punct dintr-o astfel de imagine este o valoare pe 8 biţi).
4

În acest context, fiecare pixel de culoare RGB (este un triplet de valori (R,G,B)) v-a avea o
adâncime de 24 de biţi. Termenul de imagine total-color (full-color) este utilizat de
obicei pentru a indica o imagine color RGB pe 24 de biţi. Numărul total de culori într-o
imagine RGB pe 24 de biţi este de (28)3= 16.777.216.
Un spaţiu de culoare bazat pe modelul RGB este cu atât mai larg cu cât este
implementat într-un număr mai mare de biţi de culoare, deoarece numărul de culori
distincte creşte odată cu acest parametru.
Modelul RGB se potriveşte foarte bine percepţiei ochiului uman care este puternic
sensibil la culorile (primare) roşu, verde şi albastru. Uneori este de preferat ca în lucrul
cu materiale de artă, imagini digitale sau alte mijloace media, să se folosească modelul
de culoare HSV în locul modelelor alternative, cum este RGB, datorită diferenţei modului
în care modele emulează percepţia culorii de către oameni.

Modelul de culoare HSV
Modelul de culoare HSV(“Hue, Saturation, Value”) creat în 1978 de Alvy Ray
Smith, deşi noţiunea de a descrie culorile în trei dimensiuni datează din secolul 18.
Modelul HSV defineşte un spaţiu de culoare în funcţie de trei componente constituente:
 Hue (nuanţă) – tipul culorii (cum ar fi roşu, albastru, sau galben). Primeşte valori
între 0-360 (dar normalizat ia valori între 0-100%)
 Saturation (saturaţie) – puritatea nuanţei culorii. Primeşte valori între 0-100% .
Cu cât saturaţia este mai mică, cu atât culoarea va apărea mai ştearsă.
 Value (valoare) – luminozitatea culorii. Primeşte valori între 0-100% .

5

Fig. 2: Spaţiul de culoare HSV

Modelul HSV este frecvent utilizat în aplicaţii grafice. În diferite contexte de
aplicare, un utilizator trebuie să aleagă o culoare pentru a fi aplicată la un anumit
element grafic. Atunci când este utilizată în acest fel, roata de culoare HSV este adesea
folosită. În aceasta, nuanţa culorii este reprezentată printr-o regiune circulară; separat, o
regiune triunghiulară poate fi utilizată pentru a reprezenta saturaţia şi valoarea. În mod
obişnuit, axa verticală a triunghiului indică saturaţia, în timp ce axa orizontală
corespunde valorii. În acest fel, o culoare poate fi aleasă culegând prima dată nuanţa de
culoare de pe regiunea circulară, apoi selectând saturaţia şi valoarea dorită de pe
regiunea triunghiulară.
 Nuanţele sunt reprezentate de unghiul fiecărei culori în con relativ la linia 0°, care
este tradiţional atribuită la culoarea roşie

6

Fig 3 Reprezentarea nuantei in functie de unghi
 Saturaţia este reprezentată de distanţa de la centrul unei secţiuni circulare
transversale a conului, iar valoarea este distanţa de la sfârşitul ascuţit, punctual al
conului. Culorile foarte saturate sunt pe marginea exterioară a conului, iar cele în
tonuri de gri (care nu au nici o saturaţie) sunt înspre centru.
 Valoarea reprezintă luminozitatea culorii şi variază cu saturaţia. Aceasta variază
de la 0 la 1, acestea fiind valori normalizate. În cazul în care valoarea este "0"
spaţiul de culoare va fi complet negru. Odată cu creşterea valorii creşte şi
luminozitatea spaţiului de culoare şi arată culori diferite. Valoarea „1” nu va arăta
culoare albă, ci va arăta cea mai luminoasă culoare posibilă.
O altă metodă de vizualizare a modelului HSV este conul. În această reprezentare,
nuanţa de culoare este înfăţişată ca un complet conic tridimensional al roţii de culoare.
Reprezentarea spatiului HSV este derivat din spatiul cubului RGB, cu diagonala
principala a modelului RGB ca axa verticala in modelul HSV. La fel cum saturatia variaza
de la 0.0 la 1.0, culoarea variaza de la nesaturat (gri ) la saturat ( fara componenta alba).
Limita nuantei de la 0 la 360 de grade, incepe variatia de la rosu, trece prin galben ,
verde, cyan, alabastru si magenta si ajunge iar la rosu. Aceste spatii de culoare
corespund intuitiv modelului RGB din care ele pot dervia prin transformare ne-liniara sau
liniara.
În timp ce modelul RGB defineşte culorile în termenii combinaţiilor posibile a trei
culori primare, modelul HSV încapsulează informaţia despre culoare într-un mod similar
cu felul în care oamenii percep culoarea: “Ce culoare este?”, “Cât de intensă este
nuanţa culorii?”, “Cât de luminoasă (deschisă sau închisă) este culoarea?”.

7

Conversia culorii din modelul RGB în modelul HSV
Modelul de culoare HSV este o transformare non-lineară a modelului RGB.
Dându-se o culoare definită de (R, G, B) unde R, G, şi B sunt între 0.0 şi 1.0, cu 0.0 fiind
cea mai mică cantitate iar 1.0 fiind cea mai mare cantitate a culorii, o culoare (H, S, V)
echivalentă se poate determina utilizând formulele de mai jos. Fie MAX maximul dintre
valorile (R, G, B), şi MIN minimul dintre aceleaşi valori. Atunci:

GB

 0  MAX  MIN   60, daca R  MAX



BR

H   2 
  60, daca G  MAX
MAX

MIN




R G

  60, daca B  MAX
 4 
MAX  MIN 

S

MAX  MIN
MAX

V  MAX

Valorile rezultate sunt în forma (H,S,V), unde H variază de la 0.0 la 360.0, indicând
unghiul, exprimat în grade, din jurul cercului de culoare unde valorea Hue este
localizată. S şi V variază de la 0.0 la 1.0, cu 0.0 fiind cantitatea cea mai mică iar 1.0 fiind
cantitatea cea mai mare, a saturaţiei sau a luminozităţii. Orice valoare H din afara
intervalului *0.0, 360.0+ poate fi încadrată în acest interval printr-o divizare modulo
360.0 a lui H. (De exemplu, -30 este echivalent cu 330, iar 480 este echivalent cu 120).
Formulele de mai sus, reflectă şi anumite proprietăţi ale modelului HSV:
 Dacă MAX = MIN (S = 0), atunci H este nedefinită. Este evident că dacă S=0,
atunci culoarea se întinde de-a lungul linie centrale de gri (vezi Fig. 1), deci nu are
componenta Hue.
 Dacă MAX = 0 (V = 0), atunci S este nedefinită. Acest lucru se observă mai bine în
Fig. 2 (spaţiul HSV vizualizat ca un con). Dacă V = 0, atunci culoarea este negru
pur, deci nu are nici componenta Hue, nici saturaţie.

8

După convertirea imaginii din spaţiul de culoare original (RGB) în spaţiul HSV, aşa
cum s-a arătat anterior, se v-a reţine pentru fiecare pixel al imaginii numai componenta
Hue, întrucât se consideră că furnizează o descriere suficient de precisă a distribuţiei
culorii.
Schema de calcul a elementelor vectorului caracteristic pentru culoare este
extrem de simplă şi rapidă. Imaginea este segmentată într-un număr de blocuri, iar
pentru fiecare bloc în parte se calculează media componentei Hue a pixelilor din bloc.
Valorile rezultate vor forma elementele vectorului caracteristic pentru culoare.
Segmentarea unei imagini color presupune izolarea zonelor de o anumita culoare
fata de celelalte zone.
Conversia culorii din modelul HSV în modelul RGB
Având valorile componentelor H, S, V, valori normalizate în domeniul *0,1+, pentru a
obţine valori R, G, B folosim următorii paşi:
H=6XH
I <= H
Fie
F=H-I
M = V * (1 – S)
N = V * (1 – S * F)
K = V * (1 – S * (1 – F))
In funcţie de I vom avea mai multe cazuri :
Cazul 0: (R,G,B) = (V, K, M)
Cazul 1: (R,G,B) = (N, V, M)
Cazul 3: (R,G,B) = (M, N, V)
Cazul 4: (R,G,B) = (K, M, V)
Cazul 5: (R,G,B) = (V, M, N)
Floor(x) reprezintă întregul mai mic sau egal cu x. Doar un singur caz va fi
executat în funcţie de valoarea lui I, iar expresia (R, G, B) = (X, Y, Z) este echivalentă cu
R=X, G=Y, B=Z.
9

HSI
O altã metodã de clasificare a culorilor este prin nuantare (Hue), saturatie
(Saturation) si intensitate (Intensity),rezultând modelul HSI.
Nuanta reprezintã pozitia relativã a culorii în spectru si, în modelul HSI,
corespunde unghiului pe care îl face culoarea în cercul de culori. Domeniul de nuantare
se întinde de la 0 la 360 de grade.
Saturatia reprezintã puritatea culorii. Valoarea saturatiei se exprimã în procente
si variazã de la 0 (fãrã culoare)pânã la 100 (culoare purã, asa cum este definitã de
valoarea nuantãrii).
Ultimul parametru reprezintã intensitatea culorii. O reprezentare simbolicã a
modelului HSI este datã în figura de urmatoare:

2. Nuanta determinã culoarea (unghi = 60° - Yellow, 180°- Cyan etc.) Saturatia este
mãsuratã în procente de lacentrul cercului de bazã la suprafata conurilor.
Intensitatea se mãsoarã pe linia Black-White.

Histograma unei imagini
Reprezintă distribuţia nivelelor de gri în cazul imaginilor în tonuri de gri, sau a
nivelelor celor trei canale în cazul imaginilor RGB, în cadrul imaginii.
Histograma este un grafic ce indică numarul de pixeli corespunzători unui canal
de culoare. In reprezentarea culorii prin intermediul histogramei nu se ţine cont de
poziţia culorilor (se pierde informaţia regională).
În funcţie de tipul imaginii (respectiv spaţiul de culori - RGB, HSV, LaB etc.) se pot
afişa graficele corespunzătoare fiecărui canal al unei imagini. Pentru o imagine pe 8 biţi,
histograma va afişa pe numărul de pixeli pentru fiecare valoare de culoare posibilă (256
valori).

10

Descriptori de culoare ai imaginilor pot fi globali sau locali si consta dintr-un
numar de descriptori de histograme si descriptori de culoare reprezetati de momentele
de culoare, vectorii de coerenta ai culori si corelogramele de culoare.
Histograma de culoare descrie distribuția de culori într-un întreg sau într-o
regiune de interes de imagine. Histograma este invariant la rotație, translatie și scalarea
unui obiect dar histograma nu conține informație semantică, iar două imagini cu
histograme de culoare similare pot poseda conținuturi diferite.
O histograma color H pentru o imagine data este definita ca un vector H= {h[1],
h[2],....h[i],...h[N]} unde i reprezinta o culoare in histograma color, h[i] este numarul de
pixeli de culoare i in acea imagine, si N este numarul de containere in histograma de
culoare.
Pentru a compara imagini de diferite marimi, histogramele de culoare trebuie
normalizate. Normalizarea histogramei H’ este definita pentru h’*i+=h[i]/XY unde CY este
numarul total de pixeli din imagine.
Masura standard a similaritati folosite pentru histogramele color:
-

histograma color H(i) este generata pentru fiecare imagine h in baza de
date;
histograma este normalizata astfel incat suma sa este egala cu unitate
(elimină dimensiunea imaginii)
histograma este stocata apoi in baza de date

11

Concluzii

Ca şi concluzii, ar fi de menţionat următoarele:

Modelul HSV este mai aproape de percepţia umană decât modelul RGB, în
principal datorită faptului că se pot ajusta mai “uşor” luminozitatea sau
saturaţia unei culori.

RGB este dat de ponderea celor 3 culori primare ( Red, Green şi Blue), fiecare
având valori curpinse între 0 şi 255. Astfel, 255 0 0 este Red (roşu), 0 255 0
este Green (verde), 0 0 255 este Blue (abastru).

HSV este dat de valoarea corespunzătoare nuanţei (Hue), valoarea
luminozităţii acelei culori (Value) şi de saturaţia acelei culori (Saturation).
Astfel, 0 100% 100% este Red (roşu), 120 100% 100% este Green (verde), 240
100% 100% este Blue (albastru). De menţionat că 360 100% 100% este tot
Red pentru că s-a închis cercul.

Domenile de aplicabilitate a modelelor spatiului de culoare sunt vaste :
• Fotografie şi tipărire
• Arhivarea şi consultarea electronică a documentelor
• Medicină
-

Diagnosticare asistată

• Prelucrarea imaginilor din satelit (Satellite imagery)
-

Meteorologie

-

Prospectări

-

Ecologie

• Explorarea universului
• Inteligenţă artificială
-

Recunoaşterea feţelor

-

Recunoaşterea formelor

• Computer Vision

12

Referinte

 http://www.engineering.upm.ro/master-ie/sacpi/mat_did/calc033/curs/curs.pdf
 http://www.ginfo.ro/revista/12_2/babel.pdf
 http://cobra.rdsor.ro/cursuri/managementul_culorii.pdf
 http://shonen.naun.org/multimedia/NAUN/bio/bio-2.pdf

13