Sunteți pe pagina 1din 14

Facultatea de Inginerie Electrică, secţia Calculatoare

Universitatea „Ştefan cel Mare” Suceava, ©2004 Iunie

Aplicaţie ce ridică contrastul


unei imagini prin metode de
Histogramă
- Proiect semestrial Procesare de Imagini -
Nesteriuc Alexandru
Grupa 1143A

Profesor Îndrumător: Student: Nesteriuc Alexandru


Remus Prodan Grupa: 1143A
Introducere

Prelucrarea (digitală) a imaginilor reprezintă un domeniu foarte larg, de sine


stătător. Acest domeniu are la bază o teorie matematică riguroasă, bine pusă la punct, dar
în general implementările pe diverse maşini de calcul sunt destul de mari consumatoare
de resurse (putere de calcul, memorie), în special dacă ne referim la utilizarea în timp real
a informaţiilor extrase din imagini. Totuşi, înainte de a continua trebuie specificat ce este
o imagine. Într-un sens cât mai general, o imagine este o descriere a variaţiei unui
parametru pe o suprafaţă. De exemplu, imaginile (în sensul clasic) sunt rezultatul variaţiei
intensităţii luminii într-un plan bidimensional. Dar acest parametru nu este singurul
folosit; de exemplu o imagine poate fi generată de temperatura unui circuit integrat,
emisiile de radiaţii (cu diverse lungimi de undă) ale unor galaxii etc. Însă aceste tipuri de
imagine sunt,de obicei, convertite în imagini clasice (prin pseudocolorare de exemplu)
pentru ca operatorul uman să poate face o evaluare vizuală a variaţiei unor parametrii.
Din aceste considerente, pe parcursul lucrării toate referirile se vor face la imagini
în sensul clasic. O imagine este deci un semnal bidimensional; prin urmare prelucrarea
imaginilor poate fi considerată şi o ramură a prelucrării digitale de semnal (care mai
include prelucrearea audio, telecomunicaţii etc.). După cum s-a menţionat anterior,
prelucrarea de imagine şi în genereal prelucrarea digitală a semnalelor presupune un
consum relativ mare de resurse de calcul şi memorie. Implementarea algoritmilor
specifici se poate face pe sisteme clasice (PC-uri, evoluţia microprocesoarelor oferă
puterea de calcul necesară), dar pentru sistemele dedicate, de timp real, se
folosesc în general procesoare dedicate numite procesoare digitale de semnal (DSP =
Digital Signal Processing). Aceste tipuri de procesoare au implementate hardware diverse
optimizări şi paralelisme pentru a oferi puterea de calcul necesară (de obieci la frecvenţe
mult mai mici decât microprocesoarele clasice); evident ele presupun şi un consum mai
mic de energie faţă de microprocesoare.
Prelucrarea imaginilor include sau este legată mai multe discipline:
- preluarea, compresia şi stocarea imaginilor;
- restaurarea şi ameliorarea imaginilor prin corecţii geometrice, radiometrice,
ajustări de contrast, filtrarea zgomotului etc;
- fotogrammetrie, adică măsurători ale unor obiecte, fenomene făcute pe baza
unor imagini;
- recunoaşterea formelor (pattern matching, shape recognition, face recognition);
- vederea artificială (computer vision, robot vision);
- inteligenţa artificială;
- sinteza de imagini, imagini generate de calculator;
Inteligenţa artificială şi prelucrearea imaginilor sunt domenii ce se întrepătrund.
Un număr important din algoritmii performanţi folosiţi la prelucrarea imaginilor
utilizează metode şi tehnici din domeniul inteligenţei artificiale, cum ar fi: reţele
neuronale, logica fuzzy. Pe de altă parte, inteligenţa artificială presupune proiectarea şi
2
Nesteriuc Alexandru
Grupa 1143A

construirea de sisteme capabile să realizeze funcţii ale intelectului uman: învăţarea prin
experienţă, înţelegerea limbajului natural, utilizarea unui raţionament pentru rezolvarea
unor probleme sau luarea unor decizii. Toate aceste presupun însă şi acumularea unei
anume cantităţi de informaţie (baza de cunoştinţe, informaţii din mediu etc.).
Această informaţie este preluată de sistemele inteligente prin senzori şi crează o
imagine a mediului în momentul preluării datelor (snapshot). Din imaginea astfel obţinută
trebuie extrase informaţiile utile. Toate acestea ţin de domeniul vederii artificiale
(Computer Vision, Robot Vision).

Histograma

Histograma este un grafic ce indică numarul de pixeli (un pixel este reprezentat pe
1 byte) corespunzători unui canal de culoare. În funcţie de tipul imaginii (respectiv
spaţiul de culori - RGB - mod de culoare bazat pe culorile roşu, verde şi albastru; HSV -
mod de culoare bazat pe tentă, saturaţie şi luminozitate; LaB - mod de culoare
independent de dispozitiv; HDRI - imagini în care culorile pot avea orice valoare) 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).
Utilitatea histogramei este cea mai evidentă în prelucrarea imaginilor (sau
filmelor) care sunt digitizate după peliculă sau sunt capturate direct in format digital.
Fiecare metodă de a transforma o imagine reală în una digitală are neajunsurile ei, de aici
apărând necesitatea unei caracterizări mai precise decât observarea cu ochiul liber (care
implică şi un anumit talent). Evaluând o imagine cu ajutorul histogramei permite o
apreciere rapidă a paşilor necesari pentru a imbunătăţii calitatea imaginii, adică la o
corecţie a culorilor de calitate.
Pentru cei veniţi din lumea fotografiei tradiţionale, se poate spune că histograma
permite corectarea problemelor de expunere. În lumea digitală ajustarea expunerii este de
cele mai multe ori automată (putând fi eventul modificaţi parametrii de gain), iar în cazul
imaginilor renderizate este practic inexistentă. În special în ultimul caz sunt necesare
multe imagini de test pentru a reuşi o potrivire a luminilor care să cuprindă întregul
spectru.
În principiu, aceeaşi corecţie a unei imagini se poate face în mai multe feluri.
Histograma şi Curves (Curves - ajustarea imaginii cu ajutorul unei curbe care reprezintă
relaţia între input şi output) duc cam la aceleaşi rezultate, diferenţa fiind ca în cazul al
doilea spline-urile care permit o ajustare mult mai fină.
Unele aparate foto digitale de nivel avansat calculează distribuţia pixelilor dintr-o
imagine si afişeaza un grafic de frecvenţa pe 256 nivele (fiecărui pixel din imagine i se
calculeaza nivelul - de la 0 = negru absolut, la 255 = alb pur). O histogramă este deci un
grafic ce ilustrează modul în care sunt distribuţi intr-o imagine pixelii grupaţi după
intensitatea de culoare. Analizind aspectul curbei, putem sa determinam amploarea
detaliilor in umbre (in partea stanga), la nivelul gri-mijlociu (in mijlocul graficului) şi în
lumini (in partea dreapta a graficului). Histograma permite fotografului ca, dintr-o analiza

3
Nesteriuc Alexandru
Grupa 1143A

simplă, sa decidă dacă rezultatul este mulţumitor sau dacă trebuie să repete fotografia cu
alte valori ale indicelui de expunere (EV).
Programele avansate de prelucrare a fotografiilor dispun de analiza prin
histograma a imaginilor (de ex. Photoshop, chiar 3D Studio Max prin introducerea unor
scripturi) şi oferă utilizatorului metode precise şi fine de corectare. Identificarea zonelor
celor mai luminoase, respectiv cele mai intunecoase zone dintr-o imagine este, de
asemenea importantă in procesul de imprimare. Putem astfel stabili, in procesul de
fotoeditare, amploarea ajustărilor, pentru a nu expanda inutil tonalităţile si la nivelul unor
zone izolate, unde nu avem detalii care sa poata fi imprimate. Trebuie menţionat aici ca
imprimantele nu pot printa detalii la nivele foarte inalte de alb, si nici de negru (cuprind
nivele de la 10 până la 245 sau chiar mai puţin, in funcţie de model).

Cum se citeşte o histogramă?

Histograma unei imagini este o funcţie care indică câţi pixeli au un anume nivel
de gri. Pe axa orizontala este reprezentat nivelul de strălucire, de la stânga (negru) la
dreapta (alb); fiecare pixel este analizat din acest punct de vedere şi i se atribuie o
valoare. Se numără apoi toţi pixelii cu o anumită valoare de strălucire iar numărul lor se
afişeaza pe axa verticală. Cu cât se inregistrează mai multi pixeli de un anumit nivel de
strălucire, cu atat graficul va urca mai sus in dreptul acelui nivel.
Ca idee generală putem să ne dăm seama imediat că o imagine corect expusa
prezintă o distribuţie relativ uniformă a pixelilor pe intreaga scală de strălucire, în timp ce
o imagine cu contrast redus va arăta aglomerări pronunţate ale pixelilor la anumite valori,
simultan cu zone întinse, slab populate.

4
Nesteriuc Alexandru
Grupa 1143A

Tema Proiectului şi Consideraţii Teoretice

Tema acestui proiect este realizarea unui program care să mărească contrastul
unei imagini cu ajutorul metodei histogramei. Modelarea histogramei este de obicei
introdusă folosind funcţii de proces continue în locul celor discrete. Aşadar, vom
presupune că imaginile care ne interesează vor avea nivele de intensitate continue (în
intervalul [0,1]) şi că funcţia de transformare f care mapează o imagine de intrare A(x,y)
într-o imagine de ieşire B(x,y) este continuă în acest interval. Vom mai presupune că
funcţia de transfer (care mai poate fi scrisă în termeni ai nivelului de intensitate a
densităţii, de exemplu: DB = f ( D A ) este monoton crescătoare şi cu o singură valoare
(cum este cazul în egalizarea histogramei) deci este posibil să definim funcţia inversă
D A = f −1 ( DB ) . Un exemplu al unei astfel de funcţie de transfer este ilustrată în figura 1:

Figura 1. O Funcţie de Transformare a Histogramei

Toţi pixelii din imaginea de intrare cu densităţi de la D A la D A + dD A vor avea


valorile pixelilor reatribuite în aşa fel încât densitatea pixelilor de ieşire va fi între D B şi
DB + dD B . Deci suprafeţele h A ( D A ) dD A şi hB ( D B ) dD B vor fi egale rezultând:

df ( x)
hB ( DB ) = h A ( D A ) ÷ d ( D A ) unde d ( x ) =
dx

Acest rezultat poate fi scris în limba teoriei probabilităţii dacă histograma h este
considerată o funcţie a densităţii cu probabilitate continuă p ce descrie distribuţia
nivelelor de intensitate (presupuse random):

5
Nesteriuc Alexandru
Grupa 1143A

p B ( DB ) = p A ( D A ) ÷ d ( D A )

În cazul egalizării histogramei, probabilitatear densităţii de ieşire ar trebui sa fie


toate o parte egală din numărul maxim al nivelului intensităţii a imaginii de intrare, DM
(unde nivelul minim considerat este 0). Funcţia de transfer necesară atingerii acestui
rezultat este:
DA
d ( D A ) = DM * p A ( D A ) , deci f ( D A ) = ∫ p A (u )du = DM * FA ( D A )
0

unde FA ( D A ) este o histogramă cumulativă a imaginii originale. Deci o imagine


care este transformată folosing histograma cumulativă are ca rezultat o histograma
aplatizată.
O implementare digitală a egalizării histogramei este de obicei executată prin
definirea unei funcţii de transfer de forma:

f ( D A ) = max( 0, round [ DM * n K / N 2 ] − 1)

Unde N este numărul de pixeli ai imaginii şi n K este numărul de pixeli la


intensitatea de nivel k sau mai mic.
În implementarea digitală, imaginea de output nu e neapărat egalizată în
totalitate şi pot exista „găuri” în histogramă (adica nivele de intensitate nefolosite). Este
posibil ca aceste efecte să descrească o dată cu creşterea pixelilor şi a cantităţii nivelelor
intensităţii în imaginea de input.

Exemple de Histograme

Aspectul histogramei depinde deci nivelul de contrast al cadrului ales pentru


fotografie dar şi de modul în care alegem expunerea.
Dacă fotografia are contrast redus, aceasta se va traduce prin aglomerarea spre
centru a graficului histogramei (ca în histograma care se obţine pentru fotografia 1 - foto-
01-contrast-redus.bmp).
O imagine cu contrast crescut va avea graficul in forma de "doua cocoaşe" (ca în
histograma care se obţine pentru fotografia 2 - foto-02-contrast-mare.bmp).
Imaginea cu contrast normal are (teoretic), forma unei benzi negre, uniforme,
dispuse în partea de jos a graficului. Desigur fotografiile reale nu sunt ca şi cele
teoretice , dar graficul unei astfel de poze ar trebui să tinda către aspectul teoretic
(graficul histogramei din fotografia 3 - foto-03-contrast-normal.bmp).
Aspectul curbei histogramei ne permite să determinăm obiectiv nivelul cel mai
adânc de negru ca şi albul cel mai luminos, adică punctul de alb şi punctul de negru.
Intervalul dintre aceste două puncte reprezintă intervalul dinamic, tonal sau contrastul
imaginii. O imagine cu contrast redus concentrează cele doua puncte intr-un interval mic,
mult mai mic decat cele permise de cele 256 de trepte. De asemenea, o imagine

6
Nesteriuc Alexandru
Grupa 1143A

supraexpusă aglomereză pixelii in zona din dreapta, iar una subexpusă in zona din stânga
(o astfel de fotografie este fotografia 4 - foto-04-interval-redus.bmp).
Analiza histogramei arată absenţa pixelilor cu grad ridicat de alb, şi deci o
reducere marcată a intervalului dinamic.
Corectarea acestui aspect se poate face in mai multe feluri, dar cel prezentat aici
este cel al întinderii histogramei. Desigur corectarea pe această cale nu este cea mai
impresionantă dar există programe specializate de prelucrare a imaginilor care pot duce la
un rezultat final mult mai bun decât originalul.
Histograma fotografiei ajustate arată acum un interval dinamic „mai” corect
(histograma fotografiei 4 corectate - foto-04-interval-redus-Corectata.bmp). Un alt
exemplu de corectare a unei imagini este si extinderea liniară a histogramei fotografiei 5
care iniţial aproape ca nici nu se pot distinge formele din poză. (foto-05-
scara_de_gri.bmp).
Extinderea liniară a histogramei este folosita îndeosebi la mărirea contrastului
imaginilor cu nuanţe de gri (dar si la cele color) iar rezultatele sunt mai interesante şi mai
vizibile la fotografiile cu nuanţe de gri. Folosirea acestei metode la imaginile color duce
la un rezultat ce constă într-o imagine cu contrastul ridicat dar de cele mai multe ori va
schimba culorile în moduri nedorite; de exemplu când va fi aplicată metoda întinderii
histogramei la o imagine cu contrastul slab cu o pară galbenă cu frunze verzi rezultatul
va fi o para galbenă dar frunzele vor fi (foarte probabil) albastre. Se poate urmari
histograma fotografiei 5 (foto-05-scara_de_gri-Corectata.bmp) pentru vizualizarea
schimbărilor. Deasemenea următorul exemplu evidenţiaza schimbarea histogramei unei
imagini cu nuanţe de gri (foto-06-scara_de_gri_2.bmp -> foto-06-scara_de_gri_2-
Corectata.bmp).

Egalizarea Histogramei

Pentru a ilustra utilitatea egalizării histogramei vom considera următoarea


imagine în scara de gri (pe 8 biti) care este o fotografie a suprafeţei lunii (foto-07-
Moon.bmp). Histograma va confirma ce putem vedea prin inspecţia vizuală adică faptul
că are un contrast redus. Pentru a îmbunătăţi contrastul acestei imagini, fără a afecta
structura (geometria) informaţiei ce o conţine, vom aplica egalizarea histogramei.
Imaginea ce rezultă este (foto-07-Moon-Corectata.bmp) nu va avea o histogramă
aplatizată (ca în exemplul cazului continuu) dar intervalul dinamic si contrastul au fost
intensificate. A se observa că la egalizarea imaginilor cu histograme înguste şi relativ
puţine nivele de gri, mărind intervalul dinamic are efectul invers efectului de creştere a
particolelor (grainyness effect).
În continuare vom mai lua un exemplu de imagine pentru a scoate în evidenţă
utilitatea egalizării histogramei şi pentru aceasta vom lua o poză a Monumentului Scott
din Scoţia (foto-08-Monument.bmp). Deşi contrastul clădirii este acceptabil, regiunea în
care este cerul este reprezentată aproape în totalitate de pixeli deschişi la culoare. Aceasta
face ca majoritatea pixelilor histogramei să fie „împinşi” într-un pisc îngust în regiunea
de sus de nivele de gri. Operatorul de egalizarea a histogramei defineşte o mapare bazată
pe histograma cumulativa din Figura 2 care duce la un rezultat final nesatisfăcător
(foto-08-Monument-Corectata.bmp).
7
Nesteriuc Alexandru
Grupa 1143A

Figure 2 Histograma Cumulativă pentru foto-08-Monument.bmp

În timp ce egalizarea histogramei a mărit contrastul în regiunea cerului din imagine, poza
arată acum artificială pentru că este prea puţină varietate în regiunea de mijloc a nivelelor
de gri. Asta se întâmplă deoarece funcţia de transfer este bazată pe panta puţin adâncă a
histogramei cumulative în regiunea de mijloc a nivelelor de gri şi duce la maparea multor
pixeli din această regiune a imaginii originale în nivele de gri similare în imaginea de
output. Acest lucru poate fi rezolvat dacă se defineşte o mapare bazată pe sub-secţiuni ale
imaginii care conţin o distribuţie mai bună a intensităţii densităţii din partea de jos si
mijloc a nivelelor de gri. Dacă tăiem o bucată din imagine care conţine mai multă clădire
decât cer (foto-08-Monument-Taiat.bmp), se poate folosi histograma cumulativă (Figura
3) a acelei bucăţi pentru egalizarea întregii poze care va duce la un rezultat final mult mai
natural.

Figure 3 Histograma Cumulativă pentru foto-08-Monument-Taiat.bmp

În cazul de faţă nu a fost implementată o asemenea rezolvare a problemei dar se


poate folosi extinderea liniară a histogramei pentru rezultate mai bune decat cele a
egalizării histogramei.
Egalizarea histogramei este limitată în sensul că poate produce doar un rezultat: o
imagine cu o distribuţie uniformă a intensităţii. Câte o dată este bine să putem modifica
forma histogramei de ieşire pentru a putea ridica anumite nivele de intensitate la o
imagine.
8
Nesteriuc Alexandru
Grupa 1143A

Extinderea Liniară a Histogramei

La o analiză a histogramei diverselor tipuri de imagini, se constată că, de obieci,


o imagine are mai multe nivele de gri şi prezintă două maxime locale. Folosind această
caracteristică se poate face o segmentare cu prag a imaginii iniţiale, alegând pragul ca
fiind, de regulă, minimul local dintre cele două puncte de maxim. Astfel, pixelii cu nivel
de gri mai mic decât pragul ales pot fi consideraţi ca fiind, de exemplu, fundalul (li se
atribuie valoarea corespunzătoare negrului), iar cei pentru care nivelul de gri este mai
mare decât pragul sunt pixelii obiectului. Datorită iluminării slabe, neuniforme, pot
rezulta imagini cu contrast scăzut, imagini pentru care pixelii nu iau valori în întreaga
gamă de nivele de gri. Pentru a corecta aceste defecte se folosesc de regulă: egalizarea
histogramei sau extinderea liniară la întreaga gama de nivele de gri. Prin aceste operaţii,
unui pixel din noua imagine i se atribuie o valoare de gri calculată pe baza unei funcţii
(liniare sau exponenţiale), funcţii ce se determină pe baza imaginii iniţiale.
Extinderea liniară a histogramei este o tehnică simplă de imbunătăţire a imaginii
care încearcă să crească contrastul imaginii prin „extinderea” intervalului valorilor de
intensitate, pe care le conţine, într-un interval de valori dorit (de exemplu întreg intervalul
de valori ale pixelilor pe care îl permite tipul de imagine care ne interesează). Se
diferenţiază faţă de egalizarea histogramei pentru ca poate să aplice doar o funcţie liniară
la gama valorilor pixelilor imaginii. Ca rezultat „imbunătăţirea” este mai puţin vizibilă.
Înainte ca extinderea să fie făcută este necesar specificarea limitelor de jos si de
sus a valorilor pixelilor în care imaginea va fi normalizată. De cele mai multe ori aceste
limite vor fi chiar minimul şi maximul valorilor pixelilor pe care îl permite tipul de
imagine care ne interesează (de exemplu pentru imagini pe 8 biti limitele de jos şi sus pot
fi 0 şi 255). Vom nota limita de jos şi limita de sus a şi respectiv b. Apoi folosind cea mai
simpla metodă de normalizare scanăm imaginea pentru a găsi valoarea cea mai mică şi
cea mai mare a pixelilor prezenţi în imagine. Vom numi aceste valori c şi d. Apoi fiecare
pixel este reglat folosind următoare funcţie:

b −a 
Pout = ( Pin − c ) +a
d −c 
Problema în acest caz este că un singur pixel cu o valoare foarte mică sau foarte
mare poate afecta în mod drastic valoarea lui c sau d şi asta poate duce la o imagine de
output greşită. Astfel o abordare mai interesantă ar fi ca în primul rând să se facă o
histogramă a imaginii, şi apoi se selectează c şi d la, să zicem, 5% si 95% din histogramă
(adică 5% din pixelii din histogramă vor avea valori mai mici decât c şi 5% din pixeli vor
avea valori mai mari decât d). Acest lucru va împiedica acei pixeli „rebeli” să afecteze
rezultatul întinderii.
Alt mod prin care scăpa de acei pixeli este folosirea unei histograme de intensitate
pentru găsirea celui mai comun nivel de intensitate intr-o imagine (cum ar fi vârful
histogramei) şi apoi o fracţie de tăiere care este de fapt intervalul minim al magnitudinii
vârfului sub care datele vor fi ignorate. În alte cuvinte, toate nivelele de intensitate cu
date în histogramă sub valoarea acestei fracţii de tăiere vor fi „tăiate” (duse la valoarea
9
Nesteriuc Alexandru
Grupa 1143A

intensităţii 0) şi restul intervalului de intensităţi va fi mărit pentru a umple întregul


interval a imaginii în discuţie.
Unele implementări funcţionează şi cu imagini colorate. În accest caz toate
canalele vor fi întinse folosing aceeaşi compensare şi scalare pentru a menţine corect
raportul de culori.

Exemple de Extindere Liniară a Histogramei

Această tehnică este folosită de obicei pentru a îmbunătăţi contrastul unei imagini
fără a modifica intensităţile relative a nivelelor de gri într-un mod prea semnificant.
Vom lua pentru exemplu o poză (foto-09-Woman.bmp) care poate fi uşor
îmbunătăţită chiar şi de unele implementări foarte simple de mărire a contrastului pentru
că histograma intensităţii formează o grupare strânsă dar subţire cum se vede prin
observarea histogramei. După extinderea histogramei, folosind o simpla interpolare
liniară vom obţine o imagine îmbunătăţită (foto-09-Woman-Corectata.bmp) şi daca vom
compara histogramele vom vedea de asemenea o schimbare radicală. Dar deşi imaginea
rezultată este o imbunătăţire faţă de original, imaginea intensificată arată cam plată. Daca
folosim egalizarea histogramei în acest caz, contrastul imaginii va fi mărit considerabil
dar rezultatul (foto-09-Woman-Egalizata.bmp) lasă de dorit.

10
Nesteriuc Alexandru
Grupa 1143A

Manual de Utilizare

Interfaţa grafică a programului este simplă, formată din 2 forme, 2 imagini, 7


butoane în forma principală şi 2 butoane, 3 check box-uri şi un grafic în a 2-a formă. În
prima formă (forma principală care nu este redimensionabilă) avem în partea de jos, de la
stânga la dreapta, următoarele butoane:
- Încãrcare Imagine: încarcă imaginea (în format *.bmp) care urmează să fie:
extinsă liniar, egalizată sau pentru care se va trasa histograma;
- Salvare Imagine: care iniţial este dezactivat, se va activa dupa ce imaginea
încărcată va fi supusă uneia din cele 2 metode de mărire a contrastului. Iar
dacă întradevăr vom folosi una din metode atunci rezultatul va putea fi salvat
in format *.bmp;
- Extindere Liniară: butonul este dezactivat până când se încarcă o imagine cu
ajutorul butonului „Încarcare Imagine”, iar în momentul apăsării va aplica o
extindere liniară asupra histogramei imaginii încărcate iar rezultatul va fi
afişat în dreapta spaţiului ferestrei de lucru.
- Egalizare: şi acest buton este dezactivat până după încărcarea unei imagini şi
după activare la acţionarea sa se va aplica o egalizare a histogramei imaginii
încarcate şi rezultatul ca şi în cazul anterior va fi afişat în dreapta spaţiului
ferestrei de lucru.
- Histograma: la fel ca şi „Extindere Liniară” şi „Egalizare” acest buton va fi
activat după ce este încărcată o imagine asupra căreia se poate trasa o
histogramă. Dacă este apăsat dupa ce a fost încărcată o imagine cea de-a 2-a
formă (care de asemenea nu este redimensionabilă) va fi deschisă şi vom
putea distinge:
o R o s uR e d[ R ]
o V e r d eG r e e[G
n ] acestea sunt cele 3 check box-uri care iniţial sunt
o A lb a s tru
B lu [B
e ]
bifate dar la alegere pot fi debifate si la acţionarea lor se va trasa
histograma pentru roşu, verde şi respectiv albastru.
o Închidere Histogramă: se înţelege de la sine ce face acest buton adică
va inchide Forma2 readucând focusul pe Forma1 adica fereastra
principală a programului.
o Resetează Histograma Precedentă: acest buton este dezactivat până la
trasarea unei a 2-a histograme cu o imagine sursă diferită de prima
imagine. Acest buton va reseta vechile histograme pentru RGB şi va fi
afişată doar histograma imaginii încărcate ultima oară.
- Informaţii Autor: va afişa informaţii despre autor, nume, grupa, an.
- Ieşire: acest buton va închide Forma1 sau fereastra principală a programului.

11
Nesteriuc Alexandru
Grupa 1143A

Cerinţe Minime

Cerinţele minime de funcţionare ale programului sunt următoarele:

Cerinţe Hardware:
- procesor: Intel Pentium sau AMD Duron/Athlon de la 400Mhz în sus;
- spaţiu ocupat pe hard disk: 2MB (executabil + surse);
- spaţiu ocupat de imagini (în format *.bmp de 24 biti): 61MB
- memorie: minim 32MB RAM;
- VGA display cu rezoluţie de macar 800*600 (de preferat 1024*768) în
high/true color display mode;

Cerinţe Software:
- sistem de operare: Windows 95/98/NT/2000/XP;
- programul este stand-alone dar şi sursele au fost incluse pe CD-ul ataşat;
- pentru recompilare este nevoie de Borland C++ Builder 6.0 sau mai nou;
- programul a fost creat cu ajutorul lui Borland C++ Builder 6.0 (Build 10.57)
instalat sub Windows XP Professional, SP 1 (V. 5.1 - 2600);
- ca menţiune aş vrea să adaug că nu s-a folosit nimic în plus faţă de instalarea
standard a builderului adică nu s-a instalat nici un pachet în plus

12
Nesteriuc Alexandru
Grupa 1143A

Concluzii

Prelucrarea imaginilor este un domeniu complex, dinamic, cu numeroase aplicaţii


în diverse domenii. Noile tehnologii folosite în industria circuitelor integrate (s-au creat
circuite integrate dedicate pentru achiziţie de imagine sau pentru o serie de prelucrări) au
permis aplicarea a noi algoritmi şi metode pentru extragera informaţiilor utile din
imagine: algoritmi paraleli, clasificatoare bazate pe reţele neuronale etc. Există acum
diverse implementări de sisteme în timp real, bazate pe prelucrarea de imagini, sisteme
utilizate în industria militară, medicină, sisteme de control automat a proceselor
industriale.
S-au adus diverse îmbunătăţiri pentru sisteme de procesare a amprentelor
digitale, recunoaşterea feţei, a scrisului. Pentru zonele aglomerate sau de interes strategic
au fost proiectate şi implementate sisteme de securitate şi supraveghere bazate pe
vederea artificială (machine-vision). De asemeni, prelucrarea computerizată a imaginilor
are un rol foarte important în medicină, în domeniul tehnicii medicale: tomografia
asistată de calculator, analiza şi interpretarea imaginilor microscopice celulare. În
centrele de cercetare din universităţi s-au creat sisteme autonome mobile (roboţi mobili),
care folosesc, pentru deplasare sau luarea diverselor tipuri de decizii, subsisteme de
vedere artificială.

13
Nesteriuc Alexandru
Grupa 1143A

Bibliografie

http://www.cee.hw.ac.uk/hipr/html/

http://terraweb.wr.usgs.gov/software/mips/link/table.html

http://www.canr.uconn.edu/nrme/nrme238/Exercise3.htm

http://www.ece.arizona.edu/~dial/tclsadie

http://supportweb.cs.bham.ac.uk/documentation/visilog5/html/refguide/chap4.html

http://www.olympusmicro.com/primer/digitalimaging/imageprocessingintro.html

http://www.netnam.vn/unescocourse/computervision/22.htm

http://homepages.inf.ed.ac.uk/rbf/HIPR2

14

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