Documente noi - cercetari, esee, comentariu, compunere, document
Documente categorii

Elemente privind procesarea de imagini

Elemente privind procesarea de imagini

1. Elemente introductive

Scopul procesarii automate computerizate a imaginilort este considerat in general de a oferi capabilitati asemanatoare cu cele umane. Printre caracteristicile urmarite in vederea obtinerii unor sisteme inteligente avem:

1. posibilitatea extragerii unor informatii prelucrabile (pertinente) din detalii, in general irelevante,

2. posibilitatea de a invata din exemple si de a generaliza cunostinte astfel incat ele sa poata fi folosite in circumstante noi si diferite,



3. posibilitatea de a efectua inferente din informatii incomplete.

Structura generala a unui sistem cu viziune artificiala este data in Figura 1.

Figura 1. Structura generala a unui sistem cu viziune artificiala

Etapele urmarite de catre un sistem cu viziune artificiala sunt:

a) achizitia imaginii, care duce la digitizarea imaginii intr‑o memorie de imagini,

b) pretratarea, prin metode de restaurare a imaginii si eliminarea zgomotelor si a defectelor de iluminare,

c) determinarea de caracteristici din imagine, prin extragere de atribute, determinare de primitive in vederea stabilirii unui procedeu de invatare pentru sistemul cu viziune,

d) descrierea simbolica si clasificarea, care pregateste interpretarea finala prin gasirea zonelor de interes cu ajutorul tehnicilor de segmentare a imaginii si eventual caracterizarea acestor zone de interes cu atribute sau descrieri structurale. Pe baza acestor date se face o clasificare a zonelor de interes, care va fi validata de urmatoarea etapa,

e) interpretarea, prin care scena de analizat va fi inteleasa, ceea ce implica cunoasterea domeniului de aplicabilitate.

In ultima perioada, un lucru tot mai important de care trebuie sa tina seama un sistem de procesare a imaginilor il reprezinta transmiterea datelor si a imaginilor. Pentru a realiza o transmisie de date la distanta cu ajutorul sistemelor de calcul, datele trebuie codificate intr-o forma adecvata atat sistemelor de calcul, cat si dispozitivelor prin care acestea sunt transmise. Sistemele de calcul inmagazineaza datele ca semnale digitale exprimate in biti, in timp ce dispozitivele de comunicare utilizeaza semnale analogice care sunt exprimate sub forma unor frecvente.

2. Caracteristicile de baza ale domeniului procesarii de imagini

Procesarea imaginilor consta din utilizarea informatiilor bidimensionale sau tridimensionale de la un captor vizual, utilizand tratari numerice, cu ajutorul calculatoarelor in procesul de analiza.

Patru factori au influentat in mod decisiv dezvoltarea unor sisteme de analiza a imaginilor de cost redus:

-larga disponibilitate a unor sisteme de calcul relativ ieftine (compatibile IBM PC sau Macintosh) cu posibilitati de calcul si memorare ridicate precum si cu posibilitati de interfatare la dispozitive de stocare a imaginilor de tip frame-grabber sau placi multimedia

-dezvoltarea unor circuite integrate care permit o conversie a semnalelor video de inalta calitate si la o rata de transfer ridicata

-cresterea calitatii dispozitivelor de achizitie de imagini combinata cu reducea preturilor de vanzare si aparitia in ultima vreme a camerelor digitale la preturi accesibile

-disponibilitatea atat hardware, cat si software pentru calculatoare compatibile IBM PC sau Macintosh, a unor placi de achizitie de imagini precum si a unor programe aplicative sau biblioteci de functii (API) la un pret din ce in ce mai redus si cu posibilitati de calcul din ce in ce mai mari.

2.1. Achizitia si pastrarea imaginilor

Prin digitizare, scena din realitate este convertita intr-o imagine compusa din unitati digitizate (pixeli in cadrul spatiului 2D, voxeli in spatiul 3D) carora in general le este asociata o valoare, valoarea de gri, cuprinsa uzual intre 0 si 255, reprezentand intensitatea spotului luminos convertit.

Scena reprezinta acea zona 'vazuta' de catre captor formata dintr‑o multime de obiecte fizice intr‑o zona a mediului, iar imaginea reprezinta in general o matrice de pixeli stocata intr‑o memorie de imagini care urmeaza a fi prelucrata de catre un sistem de calcul, reprezentand proiectia scenei pe un plan bidimensional.

In Figura 2. se prezinta definirea imaginii si a scenei.

Figura 2. Definirea imaginii si a scenei

2.1.1. Camerele video si achizitia imaginilor

Prima diferenta importanta intre vederea umana si imaginea analizata de sistemul de calcul este modul in care se achizitioneaza imaginea. Cei mai obisnuiti senzori utilizati pentru a capta imagini sunt camera video si scanerul.

In general imaginile se memoreaza in calculator ca si o matrice bidimensionala de numere. Aceste numere corespund diferitelor informatii cum ar fi:

-intensitatea nivelelor de gri

-luminanta

-crominanta, etc.

Pentru a putea procesa o imagine, ea trebuie trecuta in calculator intr-o forma digitala. Pentru a digitiza imaginile analogice ele trebuie esantionate si cuantizate.

Esantionarea presupune procesul de captura de esantioane din semnalul analogic, adica preluarea punctelor de informatie aflate la diferite distante unele de altele.

Cuantizarea reprezinta procesul asignarii unei valori binare pentru fiecarea valoare esantionata.

Un digitizor (camera sau scaner analogic) considera initial imaginea analogica si continua. Digitizorul esantioneaza imaginea convertind de fapt lumina intr-un semnal ce reprezinta stralucirea. Acest lucru se realizeaza cu ajutorul unor traductoare. Dupa aceea un convertor A/D cuantizeaza semnalul produs care apoi poate fi memorat digital in calculator. Aceste valori memorate reprezinta intensitati astfel incat de obicei Negru = 0 si Alb este valoarea maxima posibila (de obicei 255).

Camerele de achizitie a imaginilor pot fi impartite in:

a) Camere standard, care utilizeaza cipuri care au o multime de senzori pentru pixeli (elemente de imagine) -cca. 500.000 senzori /cmp. Senzorii functioneaza ca numaratori de fotoni, astfel ca semnalul sumat si amplificat de la fiecare linie a acestor senzori produce un voltaj analog. Exista diferite circuite care citesc informatia data de senzori CCD (charge couple device) circuite cu transfer de sarcina, CID (charge injection device) sau altele. Efectul dat de diferentele acestea este ca sunt camere care permit acumularea in cip a unor imagini intunecoase pe perioade mai lungi de timp sau din contra capturarea rapida a imaginii intr-o scurta perioada de timp. Camerele utilizate pentru a capta imagini de intensitate foarte joasa sunt utilizate in astronomie, microscopia fluorescenta, etc.

Figura 3. Dispozitiv CCD

Dispozitivele CCD executa 2 functii:

-convertesc fotonii intr-o sarcina electrica

-permit deplasarea sarcinii (bucket brigade) astfel incat citirea reprezinta un flux serial de date.

Aceste circuite CCD reprezinta inima camerelor si scanerelor, avand un raspuns foarte liniar, Figura 4.

Figura 4. Raspunsul camerelor CCD si vidicon

b)Camerele cu vidicon -camere de tip vechi cu tub de vacuum sunt camere mai ieftine si servesc ca prototip de comparatie cu camerele solide, iar principiul de functionare este cel al fotoconductibilitatii, o imagine ce patrunde pe suprafata tubului, altereaza conductibilitatea unui invelis al acestuia. Un fascicul de electroni bombardeaza fata posterioara a acestui invelis fotosensibil si prin neutralizarea sarcinilor electrice creeaza o diferenta de potential care produce pe un electrod colector un curent. Prin esantionarea si cuantificarea acestui semnal se obtine imaginea digitala. (Figura 5.)

Figura 5. Camera cu vidicon

Camerele standard si cele cu vidicon produc un semnal analogic ce corespunde intensitatii luminoase a diferitelor puncte ale imaginii, insa intre camerele standard si cele cu vidicon exista unele diferente (Figura 4.) - in camerele cu vidicon poate aparea o marire a spotului luminos (datorita imprastierii luminii sau electronilor in invelis) sau poate aparea efectul "cozii de cometa" langa spotul luminos sau pot aparea diferite deformari ale imaginii in "perna" sau in "butoi", (Russ, 1999). Tot aceste camere au materiale de invelis care au raspuns spectral si astfel poate surveni o modificare a culorilor adica acelasi obiect apare diferit la iluminare diferita. Sistemul de lentile si neizolarea individuala a tranzistorilor din interiorului camerelor cu cip (care s-a micsorat progresiv de la 1 inch la 1/3 inch) fac ca lumina sa se imprastie de la un tranzistor la altul si astfel un procent uneori pana la 50 % din lumina este pierdut. Solutia este de a asocia o singura lentila de dimensiuni mici fiecarui tranzistor si astfel colectarea luminii este de 100%. De asemenea camerele standard au senzitivitate mare la partea de sfarsit a spectrului vizibil mai ales la rosu sau chiar lumina infrarosie care daca nu este eliminata din sistemul optic al camerei produce incetosarea sau patarea imaginilor.

c) Camereler digitale - majoritatea inca nu sunt potrivite pentru aplicatii tehnice datorita unor limitari de optica si a rezolutiei limitate, datorita faptului ca folosesc compresii de tip JPEG ceea ce poate produce pierderi. Sunt unele camere mai avansate care nu pierd prin compresie si acestea s-ar preta la aplicatii tehnice. Camerele utilizate in domeniul tehnic nu au facilitati de comprimare, ele folosind sistem optic flexibil si asigurand o rezolutie inalta.

Exista trei tipuri principale de camere digitale in acest moment:

- cu cip monocrom; se pot realiza capturi color daca se folosesc trei filtre RGB si trei secvente de imagini

- cu scanare liniara; au rezolutie mare si timp indelungat de scanare, sunt folositoare doar pentru imagini statice

- care utilizeaza cipuri de megapixel de provenienta RGB. O camera de aceast tip este lenta, direct legata la interfetele SCSI ale sistemelor de calcul, nu realizeza compresii, posibilitati mari de depozitare a imaginilor; inca sunt foarte costisitoare.

Tendinta actuala este de a imbunatati camerele standard prin imbunatatirea continua a rezolutiei spatiale (numarul senzorilor individuali), uniformitatea realizarii lor si reducerea costurilor acestor camere. Ramane de vazut in ce masura HDTV (High Definition TeleVision - televiziune de inalta rezolutie), va aduce imbunatatiri remarcabile camerelor video in viitorul apropiat. De asemenea camerele digitale sunt intr-o continua dezvoltare piata oferind in acest moment camere la preturi rezonabile si cu facilitati tot mai mari. Exista camere de tip firewire care respecta standardul IEEE 1394 si care astfel permit prin intermediul unor placi simple de achizitie introducerea direct in memoria calculatorului a imaginilor. De asemenea standardul USB mai ales varianta 2.0 permite interfatarea simpla intre un sistem de calcul si o camera digitala care introduce direct datele in cadrul memoriei calculatorului.

Indiferent de camera care se poate folosi pentru achizitia de imagini este important ca sistemul optic al camerei sa focalizeze corect pentru a captura detalii fine ale imaginii. Exista camere care realizeaza acest lucru automat - sisteme de microscopie automata sau unele sisteme de urmarire (ex. de trafic). Uneori acest lucru se face cu ajutorul unui circuit electronic atasat camerei sau realizat cu ajutorul unui software dedicat care incearca sa determine o serie de parametrii alegand astfel parametrii care duc la obtinerea imaginii celei mai bune.

Focalizarea automata in imaginile macroscopice utilizeaza tehnologii de masurat distanta cum ar fi sunet de inalta frecventa sau in infrarosu pentru a determina distanta fata de subiect si astfel se ajusteaza sistemul optic obtinandu-se imaginea cea mai buna. Exista algoritmi pentru a detecta calitatea imaginii si acestea sunt aplicabile tuturor imaginilor in care exista un bun contrast si detalii fine. Acestea se realizeaza cu ajutorul unor filtre care sunt aplicate fie hardware fie software.

Intre camere si convertorul analog-digital exista cabluri, conectori care impreuna cu circuitele de compensare ale luminozitatii si care tin in mod obisnuit de camera, ele producand pierderi de semnal si modificari ai parametrilor imaginii (ex., modificari de contrast). Achizitia imaginilor folosind camere video este considerata achizitie in timp real, in multe aplicatii rata de achizitie nu trebuie insa sa fie foarte mare.

Achizitia imaginilor folosind dispozitive CCD poate fi facuta folosind o singura linie CCD sau o matrice bidimensionala care ofera o rezolutie marita si un tip de achizitie mai scurt insa la un pret mai ridicat. In acest sens distingem notiunile de scanare:

-intretesuta, linii pare/impare

-neintretesuta sau progresiva, utilizata mai ales la HDTV.

Tehnica progresiva este folosita de:

-camerele de inalta performanta

-microscoapele cu scanare directa, SEM - Scanning Electron Microscope, STM - Scanning Tunneling Microscope, AFM - Atomic Force Microscope

-digitizoare de film si cadre, etc.

In HDTV densitatea pixelilor este mare in raportul 16:9 fata de raportul 4:3 existent actualmente la norma NTSC. Pixelul este considerat si in acest caz patrat iar o imagine tipica este de 1920x1080 la o rata de 30 cadre/sec rezulta ca se vehiculeaza multa informatie care trebuie prelucrata.

Scanerele se pot clasifica in:

- reflective, cele care masoara lumina reflectata de sursa originala

- transmisive, cele care masoara lumina transmisa de sursa.

Aceste scanere pot scana imagini:

- alb-negru

- color, folosind diferite tehnici. Se prefera in general intai o prescanare si apoi o sanare finala. In domeniul razelor X se folosec scanere SEM, Scanning Electron Microscope.

Placile de achizitie a imaginilor sunt dispozitive intercalate intre camerele video si sistemul de calcul. Ele pot fi de tip frame-grabber, sau mai nou placile multimedia de cost relativ scazut pot indeplini rolul acestor placi de achizitie in cadrul unor aplicatii uzuale. Aceste placi de achizitie au ajuns astazi la performante deosebite atat ca viteza de achizitie, ca rezolutie dar si ca posibilitati de a prelucra intr-o oarecare masura imaginea capturata.

Tendinta actuala pe piata placilor de achizitie este de a realiza placi extrem de performante cu soft de analiza si prelucrari de imagini care sunt utilizate mai ales in scopuri profesionale. Stereoviziunea a impulsionat dezvoltarea placilor de achizitie multicanal care permit achizitia simultana pe mai multe canale a semnalelor provenite de la mai multe dispozitive de achizitie.

2.1.2. Stocarea imaginilor digitale

Cand se lucreaza cu un sistem de analiza computerizata a imaginilor, imaginile trebuie salvate pe disc sub forma de fisiere care sunt oarecum asemanatoare cu celelalte tipuri de fisiere, (text, programe, etc.), dar din anumite motive, fisierele cu imagini digitale trebuie sa fie considerate distincte din anumite puncte de vedere.

Fisierele de imagini sunt de obicei mari. O singura imagine de 640x480 pixeli monocrom ocupa aproximativ 300 KB in timp ce o imagine color necesita aproximativ 1 MB. Imaginile 3D sunt mult mai mari (de exemplu 500 x 500 x 500 imagine de reconstructie tomografica 3D ocupa aproximativ 125 MB), deci necesita o mare capacitate de stocare.

2.1.3. Memorarea imaginilor

O imagine digitala pe 8 biti de dimensiuni 1024 x 1024 pixeli necesita 106 biti, adica un spatiu foarte mare, de aceea memoria ocupa un loc important in sistemele de prelucrare de imagini.

Pentru aplicatii de prelucrare a imaginilor se poate realiza:

- memorare pe termen scurt, necesara procesarii propiu-zise, ea reprezinta memoria temporara de lucru, intr-un calculator fiind memoria de tip RAM

- memorarea on-line, necesara pentru accesare rapida sau memoria de scurta durata de obicei fiind realizata pe discuri de tip Whinchester. Tendinta actuala este de a folosi suporturi magneto-optice si chiar stocarea holografica.

- memorarea in vederea arhivarii, de lunga durata in care accesul la imagine este mai putin frecvent.

Memoria de arhivare se caracterizeaza prin capacitati foarte mari de memorare necesare dar cu accesare mai putin frecventa. Acestea sunt discurile optice si benzile magnetice. CD-ROM-ul este o modalitate ieftina de stocare si de aceea CD-urile reprezinta modalitatea cea mai frecventa de a avea la dispozitie bilioteci de imagini. Exista CD-uri de inalta densitate (DVD - Digital Video Disk) care ofera stocarea unei cantitati mai mari de informatie pe acelasi format.

Discurile optice (WORM - drives = write once read many) ofera mai multe posibilitati ca CD-ROM-ul, oferindu-ne atat arhivarea si stocarea imaginilor cat si accesul acestora prin citire / scriere. Acestea sunt utile mai ales in medicina dar si in alte domenii in care imaginile trebuie stocate in mod permanent acestea avand o capacitate mare, in medie de aproximativ 1GB/disc.

Floppy discurile sunt de capacitate redusa si astazi sunt mai putin utilizate pentru transportul si stocarea unui numar extrem de mic de imagini (una singura), cu capacitati intre 1.4 si 120MB acestea din urma fiind denumite floptical disc deoarece au nevoie de o unitate prevazuta cu senzor optic necesar pentru citirea informatiei.

Discurile de mare capacitate (ZIP-drive), cu o capacitate in medie de peste 100MB, sunt astazi competitive ca pret si performanta cu discurile optice, avand o viteza de acces sub cea a hard-discurilor dar sunt mult mai rapide decat CD-urile.

Benzile magnetice sunt extrem de lente, dar au capacitate mare de stocare.

La alegerea mediului de stocare a imaginilor trebuie avut in vedere volumul de imagini care va fi stocat, scopul utilizarii acestor imagini (viteza de acces ) si pretul de cost al stocarii.

2.1.4. Formate de imagine

Tentatia de a realiza un format de imagine propriu este foarte mare, mai ales in cazul firmelor de marca care doresc sa-si impuna standardele, ajungandu-se astfel la multe formate de imagini diferite. Acestea pot fi apreciate dupa mai multe criterii cum ar fi, gradul de compresie pe care il realizeaza si timpul necesar impachetarii si despachetarii acestora. Cele mai importante formate din aceasta categorie sunt: PCX, BMP, IMG, TARGA, IBM, TIFF, GIF, WPG, JPEG, PIC, CDR, PCD, PNG, PPG, PPM,etc.

O imagine 2D este un tablou bidimensional de pixeli, denumit adesea rastru (raster). Fiecare linie orizontala este numita linie de scanare, sau linie de rastru. In calculator, culoarea fiecarui pixel este reprezentata printr-una din urmatoarele metode:

- daca imaginea este binara, culoarea fiecarui pixel este exprimata printr-o valoare de 1 bit - 1 - 0, iar daca e monocroma fiecare pixel va avea o intensitate intr-o plaja de obicei 0,255.

- pentru o imagine True Color, culoarea fiecarui pixel este exprimata in general, in termenii intensitatilor de rosu (R), verde (G) si albastru (B) care creeaza culoarea. De obicei, fiecare componenta a unei culori este reprezentata pe un octet, astfel exista 256 de nivele pentru fiecare componenta de culoare. Aceasta abordare necesita trei octeti pentru fiecare pixel si permite pana la 256 x 256 x 256 = 16777216 sau peste 16 milioane de combinatii distincte ale valorilor RGB (culori).

- pentru o imagine bazata pe o paleta de culori, valoarea fiecarui pixel este interpretata ca un index intr-un tabel cu valori RGB cunoscut sub numele de paleta de culori, sau harta de culori (Colormap). Pentru fiecare pixel se afiseza valoarea RGB corespunzatoare continutului acelui pixel. Numarul de biti necesari pentru stocarea valorii fiecarui pixel depinde de numarul de culori din paleta. Dimensiunile obisnuite ale paletelor de culori sunt 16 (necesita 4 biti pe pixel) si 256 (necesita 8 biti pe pixel).

Caracteristici comune ale fisierelor de imagine

Pentru a va asigura ca puteti citi, interpreta si afisa o imagine stocata electronic, imaginea trebuie sa contina cel putin urmatoarele informatii:

- dimensiunile imaginii - latimea si inaltimea

- numarul de biti pe pixel

- tipul imaginii - daca valorile pixelilor trebuie interpretate ca fiind culori RGB sau elemente intr-o paleta de culori

- paleta de culori - daca imaginea foloseste vreuna

- datele imaginii, care reprezinta tabloul cu valorile pixelilor

Aproape toate fisierele imagine (vezi Figura ) contin acest set de informatii, dar fiecare format specific de fisier organizeaza aceste informatii intr-un alt mod.


Antet

Paleta de culori

(daca exista)

Datele imaginii

(tabloul de pixeli)

FiguraFormat tipic de fisier imagine

Aceasta figura reprezinta structura unui fisier imagine tipica. Fisierul incepe cu un scurt antet - avand de la cativa, pana la 128 sau chiar mai multi octeti. Urmeaza apoi o paleta de culori daca valorile pixelilor din imagine folosesc paleta de culori. Datele imaginii - tabloul cu valorile pixelilor - apar dupa paleta de culori. De obicei tabloul de pixeli este stocat linie cu linie. Tabloul de pixeli ocupa cea mai mare parte a fisierului imagine. De exemplu, o imagine de dimensiune 640 x 480 pixeli cu 256 culori necesita 640 x 480 = 307200 octeti pentru stocare, deoarece valoarea fiecarui pixel ocupa un octet. Desigur, spatiul de stocare necesar pentru datele imaginii poate fi redus recurgand la compresia datelor, fie printr-un algoritm de codare pe baza lungimii, fie cu alte scheme de compresie.

Cu toate ca multe fisiere imagine au un aspect similar celui prezentat anterior este loc pentru mai multe variatii:

- ordinea informatiilor din antet poate sa difere de la un format de fisier la altul.

- formatele dependente de ecran sar peste intreaga paleta de culori si stocheaza numai tabloul de pixeli.

- tabloul de pixeli poate fi stocat de sus in jos sau de jos in sus.

- daca valorile pixelilor sunt componente RGB, ordinea rosu, verde, albastru poate fi modificata.

- valorile pixelilor pot fi stocate in format impachetat sau ca planuri de biti. In formatul impachetat, toti bitii apartinand unui pixel sunt stocati unul dupa altul. Cand imaginea este stocata pe planuri de biti, bitii pentru fiecare pixel sunt separati conform pozitiei bitului, cei mai putin semnificativi biti ai tuturor pixelilor sunt stocati linie cu linie, apoi se trece la bitii urmatoarei pozitii de bit si asa mai departe.

- valorile pixelilor pot fi stocate intr-un format comprimat.

Formate uzuale pentru fisiere imagine

Exista mai multe metode de stocare a unei imagini intr-un fisier, acesta fiind motivul pentru care veti gasi atat de multe tipuri diferite de formate pentru fisiere imagine. Iata cateva dintre cele mai populare formate de fisiere imagine:

-Formatul PCX, folosit la inceput de programul Paint Brush al companiei Zsoft, este un format pentru fisiere imagine pe care-l suporta multe programe de desenare si scanere. Fisierele PCX folosesc o schema de codare pe baza lungimii (Run-Length-Encoding - RLE) pentru a stoca imaginea intr-o forma comprimata.

- Formatul BMP Windows sau DIB (un format introdus de Microsoft Windows 3.0) stocheaza imaginea ca pe o harta de biti independenta de dispozitiv. Formatul DIB include o paleta de culori si stocheaza datele imaginii intr-o maniera standard pentru a face fisierul imagine independent de dispozitiv. Formatul Windows BMP poate stoca imagini folosind 1 (monocrom), 4 (16 culori), 8 (256 culori) sau 24 (16 milioane de culori) de biti pe pixeli. Formatul BMP nu este la fel de eficient ca PCX si alte formate, dar interpretarea fisierelor BMP este relativ usoara.

-Formatul pe 24 de biti Truevision Targa provine de la adaptoarele de ecran de inalta performanta pentru PC-uri Truevision. Exista cateva tipuri diferite de fisiere Targa. Cea mai populara este versiunea cu 24 de biti pe pixel care foloseste 8 biti pentru fiecare dintre componentele R, G si B. Acest format poate stoca fisiere imagine cu pana la 16 milioane de culori. Totusi, dimensiunea fisierului pentru o imagine pe 24 de biti este foarte mare - o imagine 640 x 480 pe 24 de biti necesita 3 x 640 x 480 = 921600 octeti, adica aproximativ un 1Mb.

-TIFF, sau Tagged Image File Format a fost dezvoltat in colaborare de Microsoft Corporation si Aldus Corporation ca un format flexibil, independent de sistem, pentru stocarea de imagini monocrome pana la imagini cu culori pe 24 de biti. Multe programe de tehnoredactare computerizata si procesoare de texte pot citi si folosi imagini TIFF. In plus, toate scannerele dispun de programe de control care pot salva imagini in formatul TIFF.

-GIF sau Graphics Interchange Format a fost dezvoltat de CompuServe pentru stocarea intr-o forma compacta a imaginilor cu pana la 256 de culori. Fisierele GIF stocheaza imagini folosind schema de compresie LZW (denumita astfel dupa autorii ei, Lempel-Ziv-Welsh).

-JPEG (Joint Photographers Expert Group) este cel mai utilizat format de imagine in reteaua Internet. Este un format comprimat de imagine ceea ce ii confera avantaje extrem de mari in comparatie cu celelalte formate de imagine.

2.1.5. Metode de compresie a imaginilor

Metodele de compresie ale imaginilor faciliteaza comunicarea rapida intre diferite sisteme pe baza imaginilor, precum si stocarea lor in vederea unei utilizari ulterioare. In ultimii ani s‑a trecut la standardizarea procesului de compresie a imaginilor in vederea utilizarii imaginilor in diverse aplicatii de prelucrari de imagini.

Prin rata de compresie, Cr intelegem raportul dintre cantitatea initiala de date necompresate si cantitatea de date compresata.

Exista metode de compresie a imaginilor care conduc la degradarea informatiilor in momentul decompresiei lor, functie de gradul de compresie ales (lossy compression). Aceste metode duc la pierderea informatiilor neesentiale si redundante. Ratele de compresie sunt relativ mari necesitand insa algoritmi mai complicati si mai multe calcule. Aceste metode pot fi folosite la imagini care urmeaza doar sa fie vizualizate, omul nesesizand pierderile.

Exista si metode de compresie a imaginilor, metode care nu duc la degradarea informatiilor (lossles compresion) prin refacerea lor prin decomprimare, insa eficienta acestor metode este relativ scazuta fiind tot mai putin folosite. Un sistem care suporta compresia datelor trebuie sa contina in configuratia sa un codor si un decodor (Figura 7.).



Figura 7. Sistem care suporta compresia datelor

Cele mai importante trei standarde de compresie de imagini (care s‑au impus in mod deosebit la inceput in domeniul compresiilor de date) sunt:

‑ JPEG (Joint Photographic Experts Group), utilizat in cazul imaginilor statice. Codorul JPEG converteste imaginea intr‑o reprezentare de frecventa spatiala folosind o transformare DCT (Discret Cosine Transform) 2D.

‑ MPEG (Moving Pictures Expert Group), utilizat in cadrul imaginilor in miscare, cu diverse variante care s-au dezvoltat in ultimii ani. Codorul MPEG este mult mai complex decat codorul JPEG. Acest codor cauta sa faca o predictie asupra evolutiei unei imagini, printr‑un estimator de miscare, transformand si codificand apoi diferenta intre imaginea prevazuta si imaginea in sine. Predictia imaginilor poate fi facuta pe baza imaginilor viitoare precum si pe baza celor trecute. Astfel codorul trebuie sa reordoneze imaginile punand imaginea de referinta inaintea celor prevazute. Decodorul pune imaginile inapoi intr‑o ordine de afisare corecta.

‑ P*64 , reprezinta standardul CCITT H.261, ca si codor/decodor in videotelefonie. Codorul P*64 codifica de asemenea imagini prevazute a fi eronate, dar care trebuie sa le ia asa cum vin. Poate alege intre o imagine curenta si una prevazuta cu ajutorul unui sistem ' block‑by‑block'. Predictia codorului este bazata in mod normal pe acelasi bloc al imaginii precedente, codorul putand include ca si optiuni un estimator de miscare, precum si un filtru.

Alte considerente referitor la compresia imaginilor

Compresia este necesara stocarii si transmisiei imaginilor deoarece reduce marimea lor. Stocarea este esentiala in mai multe domenii, unul important fiind tehnica video digitala, in timp ce transmisia de imagini se intalneste la retelele de telecomunicatii , teleconferinte, etc.

Exista mai multe criterii dupa care metodele de compresie pot fi judecate, si anume:

- timpul necesar comprimarii/decomprimarii - acest criteriu este important mai ales in transmisiile in timp real, cum ar fi videoconferintele

- gradul de conservare al imaginii

- costurile impuse de algoritmii alesi si resursele de calcul

- standardul de compresie utilizat, daca este sau nu universal pentru a putea fi utilizat si de catre altii.

Metodele de compresie

Metodele de compresie sau codare a imaginilor se impart in doua categorii:

- codarea predictiva

- codarea prin transformari.

Codarea predictiva exploateaza redundanta existenta in imagine, in vreme ce codarea prin transformari realizeaza modificarea structurii de date a imaginii intr-o alta matrice, astfel ca o mare cantitate de informatii este impachetata intr-un numar mai mic de esantioane.

Exista algoritmi care combina aceste categorii. In primul caz este vorba, mai bine zis, de o codificare decat o compresie si permite reconstructia imaginii initiale. Aceasta codificare este utilizata mai ales in transmisiile de imagini. Se bazeaza pe asemanarea (diferenta) dintre pixelii unei imagini astfel ca se folosesc un numar mai mic de biti pe pixel pentru a memora ceea ce au comun acesti pixeli. Viitoarea abordare a compresiei de imagini este de a utiliza algoritmi predictivi, care examinand mai multi pixeli precedenti anticipeaza si stocheaza diferentele dintre acestia.

RLE (Run Length Encoding) este una din metodele cele mai simple de compresie fiind folosita in cazul in care avem date care se repeta (zone din imagine care au aceeasi valore a pixelilor). Astfel, secventa de caractere:

AAAABBBBBCCCCCCCCDEEEE

devine,

4A5B8C1D4E

si deci, in acest caz:

Cr = 22/10 = 2.2

In cazul in care zona care urmeaza a fi codata nu este repetitiva, metoda este foarte ineficienta putand duce chiar la factori de compresie subunitari. De aceea metoda RLE va pastra aceste zone nemodificate si deci necodate, urmand a fi codate doar zonele repetitive, lucru ce va fi precizat printr-un caracter special. Astfel secventa:

ABCDDDDDDDDEEEEEEEEE

ar deveni ,

ABC+8D+9E

Formatul PCX foloseste metoda RLE de compresie pe planele separate ale imaginii. Metoda se preteaza imaginilor specifice desenelor animate si nu imaginilor naturale.

O metoda care da rezultate mai bune foloseste mai putini biti pentru a reprezenta datele ce apar mai fercvent si cele ce apar mai putin frecvent necesita mai multi biti. Aceasta codare de lungime variabila reprezinta ideea codarii Huffman. Aceasta metoda furnizeaza o densitate mai mare a datelor decat tehnicile de codare de lungime fixa. Lungimea datelor codate este invers proportionala cu frecventa datelor. Se aseamana cu tehnica Morse care foloseste mai putine linii si puncte pentru literele care apar mai frecvent. Codarea Huffman necesita doua treceri, prima determina frecventa caracterelor, a doua face compresia. Se pot folosi tabele fixe care nu vor duce la compresii optimale dar vor avea o singura trecere. Exista si alte metode de compresie cum ar fi Huffman modificat utilizata pentru date de la fax-uri sau metoda READ derivata din Huffman folosita pentru imagini alb-negru inclusiv fax-uri. Aceste metode se limitau la codarea unui caracter la un moment dat.

LZW (Lempel Ziv Welch) este un algoritm care permite codarea unor siruri de caractere folosind tabele de codare existand si alti algoritmi care permit aceasta codare.

Standardul JPEG (Joint Photographers Expert Group) reprezinta efortul colaborarii intre CCITT (International Telegraph and Telephone Consultative Committee) si ISO (International Standard Organization).

Acest standard defineste trei sisteme diferite de codare:

- un sistem de codare de baza cu pierderi, care este bazat pe transformata DCT si este adecvat pentru o gama larga de aplicatii,

- un sistem de codare extinsa pentru aplicatiile de precizie inalta sau reconstructie progresiva fara pierderi,

- un sistem de codare cu pierderi mai mici pentru conversia reversibila.

Modul de compresie progresiv JPEG se obtine prin realizarea unui set de subimagini si fiecare subimagine va fi codata cu un set specific de coeficienti DCT. Compresia progresiva JPEG poate fi obtinuta folosind trei tipuri de algoritmi: un algoritm progresiv de selectie spectrala, un algoritm progresiv de aproximari succesive si un algoritm progresiv combinat.

Standardul JPEG permite si folosirea unor algoritmi de compresie fara pierderi, respectiv un algoritm de compresie predictiva in locul transformarii DCT.

Compresia ierarhica JPEG permite o reprezentare progresiva a imaginii decodate, intr-un mod similar cu algoritmul progresiv, dar permite in plus fata de acesta, imagini codate cu rezolutii multiple. JPEG nu specifica un format de fisier fiind considerat doar printr-un flux de biti. Sunt mai multe formate de imagini care memoreaza imagini JPEG cele mai folosite fiind JFIF si JPEG pentru TIFF 0.

Standardul H.261 este dezvoltat pentru aplicatii de telecomunicatii video. Deoarece acestea sunt in general aplicatii care nu implica modificari importante ale continutului cadrelor succesive datorate miscarii obiectelor din imagine, algoritmul folosit limiteza strategiile de cautare si estimare a miscarii, in scopul obtinerii unei rate de compresie cat mai ridicate. Folosind acest standard se pot atinge rate de compresie intre 100:1 si 2000:1.

Compresia fractalica, este o metoda diferita de compresie prin care se memoreaza instructiuni sau formule de creare a imaginilor. De aceea metoda este independenta de rezolutie, imaginile putand fi scalate la o rezolutie mai mare decat imaginea originala.

Fractalii sunt imagini compuse din imagini mai mici. Metoda permite rate de compresie de peste 100 fiind considerata o metoda asimetrica. Aceasta metoda duce la un timp mare de compresie dar decompresia este rapida. Compresia fractalica incearca sa gaseasca relatiile din imagine care leaga imaginile mai mici prin formule matematice. Decompresia tine cont de aceste formule si da rezultate foarte bune pornind practic de la ori ce set de date, practic contand relatiile matematice si nu imaginile. Cu cat codarea este mai buna ea este mai lenta si decodarea oferind imagini de calitate superioara.

Compresia Wavelet, se aseamana cu cea DCT, care insa este limitata la utilizarea functiei cosinus. Wavelet foloseste functii mai simple, complexitatea calculelor scazand fara insa a sacrifica major calitatea imaginii obtinute.

Compresia holografica este o noua metoda care se bazeaza pe o reprezentare frecventiala 3D a imaginilor. Metoda este in curs de elaborare. Rezultatele pe care le ofera par sa fie spectaculos de bune.

In cadrul imaginilor dinamice initial au existat standardele Apple Qucktime si Microsoft Video for Windows, VfW. Actualmente Microsoft incearca sa introduca standardul DirectX respectiv Direct Shaw un standard mai flexibil si mai eficient.

In acest caz se utilizeaza variate metode de compresie si decompresie, denumite CODECs (Compressor DECompressor).

Standardul de compresie MPEG (Motion Picture Experts Group) a fost propus pentru aplicatii video care se caracterizeaza prin modificari importante intre doua cadre succesive, datorate miscarii obiectelor din imagine. Metoda de compresie utilizeaza un algoritm de codare intercadre si poate realiza o compresie de pana la 200:1 prin memorarea numai a diferentelor dintre cadre succesive. Totodata standardul MPEG prevede si compresia unui canal audio cu rata de 5:1 pana la 10:1. Se bazeaza pe similitudinea unor blocuri de pixeli al unor imagini succesive transmitand doar 2 frame-uri pe secunda, restul fiind informatie codificata ca diferenta dintre frame-uri prin asa numitele keyframe-uri. Standardul MPEG este in continua dezvoltare, actualmente folosindu-se cu precadere MPEG4.

2.2. Analiza modulului de ameliorare a imaginilor

Modulul de ameliorare (preprocesare) a imaginii urmareste restaurarea imaginii numerice degradate de diversi factori cum ar fi: zgomote, defecte de iluminare, miscarea sau defocalizarea imaginii, etc.

Preprocesarea imaginii se efectueaza inaintea operatiei de analiza efectiva a ei. Preprocesarea imaginilor are ca scop eliminarea erorilor aparute in cursul procesului de achizitie, erori cauzate de procesul de conversie a semnalului video analogic in semnal digital sau datorate parazitilor indusi aleator pe calea de achizitie a semnalului analogic.

2.2.1. Restaurarea imaginilor digitale

Corectarea (restaurarea) imaginilor digitale se refera la inlaturarea sau minimizarea degradarii cunoscute intr-o imagine. Orice imagine achizitionata prin mijloace optice, electro-optice sau electronice este degradata intr-o anumita proportie. Degradarea se poate datora zgomotului, proastei focalizari a camerei, miscarii relative obiect-camera, etc. Restaurarea se face prin filtrarea efectelor degradarii.

Reducerea zgomotului unei imagini se poate realiza prin inlocuirea unui pixel cu media lui si a vecinilor lui pe o regiune variabila si este cu atat mai eficienta cu cat regiunea este mai mare (filtru de mediere), insa astfel imaginea apare mai incetosata. Acesta metoda de a reduce zgomotul unei imagini imbunatateste calitatea imaginii, insa se repercuteaza asupra rezolutiei imaginii.

O alta metoda este cea a filtrului Olympic; pe o anumita zona se elimina pixelii cu valori extreme ale intensitatii luminoase ale pixelilor vecini si pe urma se face o medie a pixelilor ramasi, insa rezultatele metodei nu sunt bune deoarece imaginea ramane incetosata si zgomotul nu este eliminat in totalitate.

Filtrul median este utilizat mai ales pentru a elimina zgomotul produs de pixelii care sunt distrusi sau lipsesc din imagine, inlocuindu-i cu valoarea de mijloc (ca pozitie) a pixelilor invecinati care sunt ordonati in functie de intensitatea luminoasa.

Eliminarea zgomotelor se poate face apeland si la unii operatori ai morfologiei matematice. Eroziunea si dilatarea imaginilor de intensitate, este o metoda de filtrare care utilizeaza minimul si maximul valorilor intensitatilor luminoase. Astfel, valoarea pixelului cu cea mai mare intensitate luminoasa in fiecare regiune este utilizata pentru a inlocui valorile originale ale pixelilor. Ca si operator morfologic in vederea imbunatatirii imaginii se mai poate folosi si operatorul top hat. Acest operator inlocuieste supradenivelarile cu valori medii sau mediane luate din marginea top hat.

Entropia maxima poate fi utilizata si ea in procesul imbunatatirii imaginilor. Imaginile contin alte defecte cum ar fi incetosarea datorata miscarii obiectului sau focalizarea defectuoasa. In aceste conditii se vor aplica filtrele inverse. Acestea sunt utile pentru corectarea semnalului de intrare anticipand degradarile cauzate de sistem.

Cresterea contrastului este operatia prin care se imbunatateste vizibilitatea structurilor unei imagini. Pixelii intunecati din imagine devin negri, cei deschisi devin albi, iar cei gri din imaginea originala iau valori noi care sunt interpolate liniar intre negru si alb. Reasignarea valorilor pixelilor din imaginea originala creste contrastul vizual al pixelilor prezenti dar nu creste abilitatea de a discrimina variatii subtile in nuantele de gri.

2.2.2. Imbunatatirea imaginilor

Exista metode care cresc vizibilitatea unei portiuni a imaginii, a unui aspect sau a unei componente a imaginii, scopul fiind de accentuare a anumitor caracteristici (contrast, contururi), etc., (pentru analiza sau redarea acestora fara modificari de date din structura imaginilor). Avand in vedere utilitatea lor practica in toate aplicatiile legate de prelucrari de imagini, aceste metode sunt extrem de importante.

Din punctul de vedere al algoritmului utilizat pentru imbunatatirea imaginii se disting patru categorii mari de tehnici de imbunatatire:

Operatii punctuale: marirea contrastului, atenuarea zgomotului, operatiuni de tip fereastra (transformari, pseudocolorari, etc.) si atenuarea imaginii prin histograme;

Operatii spatiale (pe arii): filtarea de zgomot, filtrarea mediana, tehnica de "zooming" a imaginii, alte tipuri de filtrari;

Operatii de tranformare a imaginilor: filtrarea liniara, filtrarea de tip radical sau filtrarea homomorfica;

Operatii de pseudocolorare intre care se disting tehnicile de colorare si pseudocolorare a imaginilor, Look Up Table (LUT).

Modificarea de contrast este necesara mai ales in cazul imaginilor cu contrast mic datorat iluminarii slabe, aceasta trasformare imbunatateste vizibilitatea pixelilor de amplitudine mica fata de pixelii de amplitudine mare.

Negativarea imaginilor sau inversarea acestora este utilizata mai ales in medicina, imaginile fiind mai usor de interpretat.

Histogramele sunt reprezentarea frecventei de aparitie a diferitelor nivele de gri intr-o imagine. Egalizarea histogramelor modifica intensitatea luminoasa a pixelilor permitand astfel evidentierea unor detalii in anumite arii.

Amplificarea Laplaciana accentueaza contururile mai ales cele liniare, permitand interpretatea mai usoara a imaginilor.

Scaderea imaginilor este utila cand este necesara compararea a doua imagini complexe cu elemente avand insa deosebiri relativ mici intre ele.

In ceea ce priveste marirea si interpolarea imaginilor (zoom-ul) exista mai multe modalitati ca: dublarea imaginii, interpolarea liniara sau bazata pe alte metode. In cazul dublarii imaginii fiecare pixel de-a lungul unei linii si fiecare linie este repetata. Interpolarea liniara este o multiplicare a imaginii la care pixelii care se intercaleaza pot fi media aritmetica a pixelilor vecini din imaginea originala. Aceasta transformare este necesara pentru a vizualiza si masura anumite detalii din imagine.

2.2.3. Operatii specifice modulului de ameliorare a imaginilor

O prima metoda specifica preprocesarii de imagini o constituie corectia optica.

a) Corectia optica urmareste:

‑ pastrarea in timp a nivelului de gri al obiectului de analizat in conditii de achizitii multiple de imagini,

‑ eliminarea imperfectiunilor sistemului optic,

‑ accentuarea contrastului in imaginea achizitionata.

b)Histograma este functia care asociaza la fiecare nivel de gri un anumit numar de pixeli avand acest nivel de gri din imaginea analizata.

La reprezentarea ei grafica, pe axa x sunt trecute intensitatile disponible ale pixelilor, iar pe axa y sunt trecute numarul de aparitii pentru fiecare intensitate.

Figura 8. Histograma unei imagini

Imaginile intunecate au histograma grupata in partea stanga, cele luminoase o au grupata in partea dreapta, iar imaginile complet luminate au histograma in toata plaja de distributie.

De obicei, histograma este folosita pentru identificarea simpla a obiectelor, obiectele similare avand de obicei intensitati similare.

De asemenea, varfurile si vaile permit separarea obiectelor de intensitati diferite din imagine, vaile permitand definirea pragurilor de separare.

c)Egalizare de histograma - imaginile care nu au o distributie uniforma a intensitatilor pot fi modificate, fara insa a le uniformiza. Intensitatile se vor redistribui astfel incat, daca histograma initiala avea varfuri si vai si dupa egalizare se vor pastra, dar vor fi shiftate (deplasate). Practic, histograma va fi intinsa (imprastiata).

Egalizarea histogramei se efectueaza in urmatorii pasi:

1). se calculeaza histograma obtinand un vector de 256 de elemente (pentru o imagine cu 8 biti/pixel)

2). Se calculeaza suma normalizata a histogramei, obtinand tot un vector de 256 de elemente, astfel:

-elementul 0 este neschimbat,

-elementul 1 va fi suma dintre elementul 1 si 0,

-elementul 2 va fi suma dintre elementul 2, 1 si 0,

-elementul 255 va fi suma dintre elementul 255, 254, . 1 si 0.

Aceste valori vor fi apoi normalizate, inmultind fiecare element cu:

In acest mod (ajustand la cel mai apropiat intreg) se obtine un LUT care poate fi folosit pentru pasul urmator.

3). se modifica imaginea in imaginea destinatie, folosind acest LUT.

Egalizarea histogramei lucreaza cel mai bine pe imaginile care au detalii fine in zona intunecoasa.

d)Specificarea histogramei - egalizarea histogramei aproximeaza o histograma, relativ uniforma, dar uneori se doreste intunecarea sau iluminarea ei, sau marirea contrastului. In aceste cazuri se foloseste specificarea histogramei, care necesita:

-o imagine ca intrare,

-o histograma dorita.

Ea se efectueaza astfel:

-se egalizeaza histograma imaginii originale,

-se determina inversa histogramei egalizate pornind de la imaginea egalizata si histograma dorita.

Figura 9. Specificarea de histograma

Determinarea inversei histogramei egalizate necesita sa generam LUT corespunzator histogramei dorite si apoi sa calculam transformarea inversa a LUT. Acesta transformare inversa este calculata analizand iesirile lui LUT. Cea mai apropiata iesire pentru o intrare particulara devine valoarea inversa.

e)Normalizrea imaginii (extinderea contrastului, contrast stretching) - asa cum am aratat, contrastul unei imagini este dat de distributia pixelilor luminosi si intunecosi.

Imaginile cu contrast scazut au histograme in care pixelii sunt concentrati la stanga, la dreapta sau in mijloc. Practic, se foloseste un domeniu redus de valori din histograma.

Imaginile care au contrastul mare au regiuni largi de intensitati inchise si luminoase. In general, imaginile de contrast ridicat au doua varfuri mari, unul in zona inferioara, iar celalalt in zona superioara.

Normalizarea este aplicata la o imagine pentru a extinde histograma astfel incat sa umple tot domeniul dinamic al imaginii. Este utilizata pentru a imbunatati imagini de contrast redus, lucrand cel mai bine pe imagini care au o distributie Gaussiana sau aproape Gaussiana.

Exista doua metode de normalizare:

-normalizarea de baza (basic contrast stretching)

Aceasata lucreaza bine pe imaginile care au toti pixelii concentrati intr-o parte a histogramei. Metoda va expanda histograma imaginii astfel incat sa fie acoperit tot domeniul pixelilor.

Relatia de transfer este:

unde low si high reprezinta extremele domeniului de expandare.

-ends-in-search

Aceasta metoda lucreaza pentru imaginile care au toate intensitatile, dar au o concentrare de pixeli intr-o parte a histogramei. In acest caz, relatia care permite calculul LUT pentru transfer este:

f)Transformarea intensitatii - are rolul de a converti un pixel vechi intr-unul nou folosind o functie predefinita. Aceste transformari sunt implementate cu LUT. Se prefera o reprezentare grafica (pe x, valorile pixelilor originali, iar pe y valorile pixelilor de iesire).

Ca si transformari avem:

-transformare null → pixel_nou = pixel_vechi

-negativare → se vor negativa valorile

-corectie gama → iesire = intrare 1/γ

care este folosta la compensarea raspunsurilor neliniare.

Pentru:

γ < 1.0 → curba exponentiala,

γ = 1.0 → null,

γ > 1.0 → curba logaritmica.

Monitoarele RGB au γ cuprins intre 1.4 si 2.8.

g)O alta metoda utilizata in preprocesarea imaginii o reprezinta netezirea (filtrarea) imaginilor. La achizitia oricaror semnale de frecventa inalta peste semnalul dat apare o componenta de zgomot. Acest zgomot daca nu este inlaturat, poate influenta negativ analizele ulterioare.

In cazul procesarii imaginilor, un accent important s‑a pus pe gasirea unui filtru care sa inlature zgomotul alb (datorat componentelor aleatoare de inalta frecventa a semnalului video digitizat). Aceste zgomote apar in campul imaginii sub forma unor pixeli izolati cu nuante mult diferite de nuanta pixelilor inconjuratori si poarta numele de zgomot sare si piper.

De remarcat ca pierderea frecventelor inalte din imagine poate duce si la pierderea unor detalii semnificative pentru procesul de recunoastere. De aici rezulta ca alegerea filtrului este deosebit de importanta.

Netezirea imaginilor poate fi realizata cu:

1. filtre spatiale liniare ‑ aceste filtre se caracterizeaza prin raspunsul lor impulsional h(m,n) caz in care filtrarea unei imagini f(i,j) se obtine prin convolutie discreta:

Daca limitele m si n sunt finite, filtrul este cu raspuns impulsional finit (RIF), in caz contrar avem filtre cu raspuns impulsional infinit (RII). Cele mai utilizate filtre sunt de tip RIF, de dimensiune redusa (3 x 3) din cauza procesoarelor de convolutie specializate.

Convolutia - este folosita in procesarea de imagini pentru:

-netezire (smoothing)

-accentuare a contrastelor (crispening)

-detectie de contur, etc.

In principiu, convolutia reprezinta o suma ponderata de pixeli preluati din vecinatatea pixelului curent, suma utilizata pentru a determina noua valoare a pixelului central.

Ponderile sunt determinate de o matrice relativ mica (3 x 3, 37 x 37) numita matrice masca, nucleu de convolutie. In general dimensiunea este impara, putandu-se astfel localiza centrul care va corespunde pixelului de iesire.

Aceasta matrice se va plimba peste toata imaginea initiala, obtinand astfel valorile pixelilor de iesire (vezi Figura 10.).

Trebuie avut grija ca la procesarea pixelilor de iesire sa nu stricam valorile celorlalti pixeli, de aceea se prefera ca rezultatul sa fie memorat intr-o alta matrice, altfel se obtine un sistem cu raspuns infinit in impuls, ceea ce nu este de dorit.

Daca suma ponderilor din matricea de convolutie este 1, atunci imaginea obtinuta va avea aceeasi intensitate cu cea originala. Daca aceasta suma este 0 (sunt si coeficienti negativi), in mod obisnuit se adauga la valoarea obtinuta o constanta si daca tot se obtine un pixel negativ el va fi setat pe 0.

O alta problema care se pune la convolutie este modul in care sunt tratate marginile imaginii. Pentru aceasta sunt mai multe cazuri:

noua valoare = I0 x M0 + I1 x M1 + . + I7 x M7 + I8 x M8

Figura 10. Modul de calcul pentru convolutia imaginii, cazul wrap

-se considera pixelii care nu apartin imaginii ca fiind egali cu 0,

-se porneste convolutia doar din locul in care se suprapune pe imagine,

-dublarea marginilor pentru o matrice de 3 x 3,

-considerarea valorilor in celelalte extremitati (wrap).

Multe masti de convolutie sunt considerate separabile, adica, convolutia poate fi efectuata prin executia a doua convolutii cu o masca unidimensionala.

O functie separabila satisface relatia:

f(x,y) = g(x) x h(y) ,

ele reducand numarul de calcule atunci cand se folosesc masti de dimensiuni mari. De exemplu, convolutia cu masca:

poate fi operata prin,

insa economia nu e spectaculoasa (6 inmultiri in loc de 9).

Printre filtrele spatiale liniare amintesc:

Scoaterea in relief (embossing) - se poate obtine cu matricea



dupa convolutie adaugand valoarea 128.

In cadrul imaginilor color exista in general doua tehnici care se aplica:

-lucrul cu imagini HSI, caz in care se lucreaza doar asupra intensitatii, culoarea fiind pastrata (cea mai des folosita),

-lucrul cu cele trei planuri R, G, B, caz care ofera rezultate mai bune, dar e costisitoare ca timp de calcul.

Blurring (contururi neclare)

Reprezinta un filtru trece jos care elimina detaliile fine din imagine. E folosit pentru a simula defocalizarea unei camere, a nu scoate in evidenta fondul, etc.

Tehnica este folosita in domeniul fotografierii cand se introduc diverse filtre. Ea se poate realiza cu o masca de convolutie in care toti coeficientii sunt egali:

- la3 x 3 , toti au valoarea 1/9 caz in care masca h(3,3) este:

,

fiind un filtru trece jos.

Ca si valori in matricea de convolutie pot avea toti valoarea 1 si in fata folosesc 1/9 sau1/25.

Acest filtru reduce zgomotul Gaussian din imagine nefiind insa eficient pentru zgomotul in impuls, care reprezinta un zgomot cu valori extreme 0 si 255 (zgomot sare si piper). Filtrul elimina zgomotele din imagine, fiind eficace in cazul regiunilor uniforme. El deterioreaza marginile contururilor, efectul lui fiind o usoara defocalizare a imaginii ce poate fi corectata prin deconvolutie.

Medierea micsoreaza contrastul, valorile tinzand sa se alinieze la valori de mijloc.

Pentru blurring se mai foloseste urmatoarea masca:

care se apropie cel mai mult de profilul Gaussian.

Suma coeficientilor este egala cu 1 si deci, intensitatea imaginii de iesire nu este afectata.


Filtrele Gaussiene de netezire sunt de forma:


unde σ controleaza imprastierea efectiva.

Mastile care au valoare mica pentru σ sunt ascutite, iar cele cu σ mare sunt late. σ influenteaza si dimensiunea mastilor. Ele trebuie sa fie suficient de mari ca sa contina toti coeficintii diferiti de zero.

Pentru:

σ = 2.0 este nevoie de o masca de 15x15

σ = 3.0 este nevoie de o masca de 23x23

Pentru 3x3 se folosesc valorile (-1,-1) , (-1,0) , (-1,1) , (-1,0) , (0,0) , (0,-1) , (1,0) , (0,1) si (1,1) pentru coordonatele x si y.

Filtrele trece jos elimina zgomotele, dar contururile devin neclare, de aceea filtrul median este mai eficient.

Sharpening, ascutirea detaliilor are efect opus celui de blurring. Este referita ca accentuarea contrastelor (crispening), dar scotand in evidenta detaliile din imagine. Aceasta tehnica poate fi folosita la restaurarea imaginilor, marind in acelasi timp si contrastul. Matricea de convolutie are un coeficient pozitiv in centru si in general negativi in rest. Ca si masti de convolutie avem:

sau masca

Filtrele trece sus, se pot constitui din doua filtre liniare a caror iesire reprezinta estimarea gradientului din imagine.

Amplitudinea gradientului poate fi estimata cu:

sau

g = max ( |gx | , |gy | )

Orientarea dupa care variatia intensitatii este maxima, este data de:

In cazul discret avem :

Dx f(x,y) = gx = f(x,y) ‑ f(x‑1,y)

Dy f(x,y) = gy = f(x,y) ‑ f(x,y‑1)

Derivata functiei imagine fata de o directie a, este data de:

Da f(x,y) = gx cos a + gy sin a

Operatorul Laplace, este un operator derivativ de ordin par, cu rol de accentuare izotropica. Se defineste ca :

In cazul discret derivatele partiale de ordinul al doilea pe directiile x si y, sunt aproximate prin relatiile:

Nucleul de convolutie este o singura matrice de 3 x 3 care poate fi:

Pentru marirea preciziei se lucreaza cu un nucleu de convolutie de forma:

,

care sintetizeaza media laplacianului corespunzator axelor originale, cu laplacianul unui sistem de axe ortogonale rotite cu 45o fata de axele originale, sau cu matricea:

Imaginea accentuata va fi | 2 f(x,y) | .

Filtrele trece sus maresc detaliile dar si amplifica zgomotele din imagine.

2. filtre spatiale neliniare

Aceste filtre se constituie ca o multitudine de metode care depind in general de aplicatia utilizata. Unul dintre aceste filtre il constituie filtrul median.

Filtrul median inlocuieste valoarea fiecarui punct al imaginii cu valoarea mediana a tuturor pixelilor din vecinatatea punctului ales. Rezultatele sunt foarte bune, insa costul e destul de mare din cauza necesitatii sortarii in fiecare punct. Filtrul elimina zgomotele izolate din regiunile uniforme, pastrand tranzitiile dintre regiuni.

Zgomotul Gaussian este inlaturat de filtrele trece-jos. Zgomotul in impuls este cel mai bine eliminat cu filtrul median.

Filtrul median pastreaza contururile si detaliile si deci frecventele inalte din imagine. Omul este foarte sensibil la frecventele inalte din imagine. Filtrul median consta din suprapunerea si translatarea unei ferestre in general cu un numar impar de linii si coloane. Pixelii din imagine peste care se suprapune fereastra sunt ordonati crescator, iar pixelul din mijloc va fi introdus in locul pixelului curent (cel din mijlocul ferestrei). Ca si fereastra se ia de obicei un bloc patrat impar, dar daca se doresc anumite operatii speciale putem avea:

X

 


- filtrul vertical

care elimina zgomotul corelat orizontal, cum ar fi o linie scanata care a disparut.

- daca aplicam un filtru orizontal, atunci pixelul disparut va fi imprastiat in ambele directii. Acest filtru elimina zgomotele care apar in coloane de pixeli.

- se pot alege elemente si in forma de X sau de diamant.

La alegerea unui bloc pentru filtrul median trebuie sa se tina cont de timpul de procesare si de faptul ca un filtru median de latime 3 pixeli elimina zgomotele din imagine de pe o linie, iar un filtru median de latime 5 pixeli, elimina zgomotele din imagine de pe doua linii, s.a.m.d.

Filtrul median poate fi aplicat si in spatiul 3D (2D + timp) mai ales in televiziune, fiind numit filtru median temporal. Se elimina zgomotele de burst (varf), pastrand de asemenea si miscarea, mai bine decat filtrul temporal clasic.

Se pune problema de a optimiza acest filtru median pentru ca odata ce este aplicat pe o fereastra, in pasul urmator, cand se trece la urmatorul pixel, se va modifica doar o coloana. Sunt metode care tin cont de pixelii procesati realizand un algoritm de sortare adaptiv.

Se poate considera si un filtru median separabil. Acest lucru implica, mai intai filtrarea imaginii cu un filtru orizontal si apoi urmata de o filtrare verticala. Acest lucru va reduce timpul de calcul, sortand 2n numere, fata de n x n = n2. Iesirea filtrului separabil este similara cu cea a filtrului neseparabil.

In cadrul imaginilor color, algoritmul de calcul este diferit. Se poate aplica pe fiecare plan R, G, B, si in final se combina cele trei planuri, dar se pierde corelatia dintre componentele lor. O proprietate importanta a filtrului median este aceea ca el nu inventeaza alte valori, in pixelul curent fiind introdus un pixel din imagine ales ca urmare a sortarii. Deci, un pixel obtinut din filtrarea mediana color trebuie sa fie un pixel din imaginea initiala. In cadrul filtrarii mediane color se poate exploata proprietatea ca suma diferentelor dintre valoarea mediana si toate celelalte valori va fi mai mica decat suma diferentelor pentru orice alte valori din multime:

,

unde: N = 9 pentru un bloc 3 x 3,

y este o valoare arbitrara si xmed este valoarea mediana.

Pe baza acestei proprietati putem insuma diferentele dintre componentele R, G si B. Pixelul avand cea mai mica suma va fi considerat ca si iesire a filtrului median.

Pentru a face calculele pentru filtrul median color se porneste cu N elemente aflate in fereastra filtrata. Pentru fiecare pixel color se determina distanta:

,

unde i reprezinta pixelul procesat si j sunt ceilalti pixeli din fereastra. Valorile x si y din ecuatia precedenta vor fi componentele R, G si B.

x i =

, va corespunde iesirii filtrului, xi .

Metoda poate fi folosita pentru ferestre pare si impare, insa cum, traditional, pixelul de iesire este asociat valorii centrale din fereastra, este de preferat ca numarul pixelilor de intrare ai filtrului sa fie impar.

Filtrul minim/maxim este un filtru asemanator cu cel median, doar ca in loc de a inlocui cu valoarea mediana pixelul din centru, el va fi inlocui cu valoare minima sau maxima. Aceste filtre elimina zgomotele impulsionale extreme (minimul elimina varfurile albe, iar maximul elimina varfurile negre).

Filtrul minim/maxim poate fi folosit pentru a largi trasaturile din cadrul unei imagini cu contrast ridicat. Acest filtru nu poate elimina zgomotele impulsive mixte atata timp cat imbunatatesc varfurile negative si cele pozitive. O cascada de filtre minim/maxim poate elimina sarea si piperul.

Un filtru maxim urmat de un filtru minim se numeste un filtru de inchidere (closing). Un filtru minim urmat de un filtru maxim se numeste un filtru de deschidere (opening).

Filtrul median poate fi usor transformat in filtru minim/maxim.

3. filtrarea temporala a imaginilor

Acest tip de filtru reuseste sa pastreze detaliile fine din imagine fara a deteriora informatia utila din imagine.

Metoda consta in preluarea mai multor cadre ale aceleiasi scene de analizat si medierea rezultatelor. Desi imbunatatirea este spectaculoasa, ea este aplicabila doar in cazul unor scene statice si necesita un timp destul de mare afectat doar procesului de achizitie.

h) Operatii de adiacenta

Operatiile de adiacenta formeaza structuri din pixelii individuali. Sunt impuse reguli de conectivitate (care din pixelii din vecinatate sunt considerati pentru expansiunea structurii) si de admisie (ce valori ale pixelilor candidati pot fi luate pentru expansiune).

1.Concatenarea reprezinta cel mai simplu exemplu de operatie de adiacenta. Ea poate opera asupra imaginilor binare folosind in general conectivitatea pentru 8 pixeli invecinati. Toti pixelii candidati cu o valoare de 1 sunt admisi. Concatenarea repetata da un obiect.

2.Operatia de inlantuire in cadrul imaginilor binare reprezinta un mod de a obtine conturul unui obiect. Operatia cauta in mod secvential in sensul acelor de ceasornic printre pixelii aflati in adiacenta punctului curent. Primul pixel avand valoarea 1 reprezinta urmatorul centru de cautare. Printr-o operatie repetata de inlantuire se obtine conturul ordonat cu conditia ca punctul de start sa fie pe contur.

3.Cu ajutorul morfologiei matematice se pot extrage dintr‑o imagine anumite caracteristici specifice, functie de scopul urmarit prin aplicarea unei succesiuni de operatori adecvati.

O transformare morfologica elementara f este caracterizata prin:

‑ tipul ei : erodare, dilatare, etc.,

‑ elementul structural, B,

‑ iteratorul sau : o constanta n, o limita,

‑ o masca, in cazul transformarilor geodezice.

Morfologia matematica a fost dezvoltata si pentru cazul digital in vederea utilizarii in cadrul aplicatiilor de prelucrari de imagini. Exista operatori definiti in cazul imaginilor binare precum si in cazul imaginilor de intensitate.

Principalii operatori morfologici sunt:

a). Dilatarea

Daca notam:

- X ansamblul de puncte (albe) din imagine marcate cu 1 ce reprezinta obiectul, fondul fiind marcat cu 0,

- B, un ansamblu de puncte, numite element structural. Unul din punctele elementului structural yo, e numit centrul lui B, celelalte puncte fiind numite marcatoare,

- By reprezinta translatarea lui B cu y,yo = y,

- B' simetricul lui B fata de originea reperului,

atunci, dilatarea lui X cu B este definita ca :

Y = X + B' ,

ca un ansamblu de puncte

Y =

Operatia de dilatare revine la marcarea (cu alb) a tuturor punctelor interceptate de elementul structural B atunci cand centrul elementului structural baleiaza ansamblul punctelor multimii X. Daca elementul structural e o bula (sfera, cerc) dilatarea largeste obiectul cu o grosime constanta.

b). Erodarea

Erodarea lui X cu B este data prin :

Y = X ‑ B'

si reprezinta ansamblul de puncte,

Y = ,

adica Y e formata din punctele y astfel incat elementul structural centrat in y , By, sa fie inclus in X, deci plasand centrul elementului structural pe punctele ansamblului de puncte erodate, toti marcatorii reacopera un punct al obiectului ce a fost erodat..

Daca elementul structural e o bula, erodarea subtiaza obiectul cu o grosime constanta.

Erodarea si dilatarea sunt duale fata de complement,

( X + B')C = XC ‑ B',

adica e echivalent a dilata punctele albe sau a eroda punctele negre.

Erodarea si dilatarea reprezinta cazuri speciale ale operatorilor de votare. Votarea majoritara sau minoritara admite pixelul daca un set de pixeli din conectivitate are valoarea 1. Daca setul este 1 peste tot operatia de votare degenereaza la dilatare sau erodare.

c). Deschiderea

Deschiderea este definita ca o erodare urmata de o dilatare,

X = ( X ‑ B') + B ,

reprezentand domeniul B baleiat de toate translatarile lui B incluse in X.

Operatia netezeste contururile, suprima neregularitatile, taie istmurile.

Daca elementul structural este o bula, operatia rotunjeste unghiurile, suprimand unicele regiuni conexe.

d). Inchiderea

Inchiderea este definita ca o dilatare urmata de o erodare,

XB = ( X + B') ‑ B,

unghiurile fiind rotunjite, iar gaurile umplute.

Deschiderea si inchiderea sunt duale prin complementaritate:

( X B)C = ( XC ) B si ( XC )B = ( XB )C

Ca si operatii asupra imaginilor, inchiderea si deschiderea reduc mult din complexitatea datelor ce reprezinta conturul corpurilor, retinand caracteristicile lor cele mai pregnante.

e). Scheletizarea unei imagini binare

Scheletul unei forme X oarecare poate fi definit ca centrul bulelor maximale incluse in forma. Putem de asemenea considera ca, contururile formelor sunt erodate din exterior pana cand fronturile eroziunilor se reintalnesc in puncte care reprezinta scheletul.

Algoritmii morfologiei matematice, prin abstractizare elimina informatia redundanta in sensul scopului, punand in evidenta corpul de analizat.

Cu ajutorul morfologiei matematice se pot extrage din imagine o sumedenie de caracteristici cu o succesiune de primitive adecvate.

Primitivele morfologiei matematice pot fi privite din doua puncte de vedere:

‑ al continutului matematic si algoritmic, ca si primitive operator, de transformare,

‑ al efectului pe care il au asupra imaginii ca si primitive de efect, de criteriu, de caracteristica.

Primitivele se clasifica functie de gradul de selectivitate intr‑o scara ierarhica, complexitatea crescand cu selectivitatea.

Operatorii morfologici pentru imagini de intensitate au la baza definirea operatorilor definiti pentru imagini binare, doar ca selectarea valorii care urmeaza a fi inscrisa in imagine ca urmare a unei transformari morfologice se face pe baza unui criteriu de minim sau maxim, aplicat asupra pixelilor din vecinatatea de lucru.

Prin operatiile de adiacenta definite pentru imaginile de intensitate se poate obtine o mai mare flexibilitate.

2.3. Procesarea geometrica a imaginilor

Acest mod de procesare modfica arnjamentul pixelilor pornind de la unele transformari geometrice. Ideea consta doar din deplasarea pixelilor in cadrul imaginii astfel incat in mod ideal valorile sa nu fie modificate. El poate fi efectuat atat in etapa de preprocesare cat si in cea de analiza a imaginilor.

Daca acest proces se refera la un pixel a carui localizare nu exista, atunci el va fi generat. Aceasta generare se numeste interpolare. Interpolarea nu este un proces geometric, dar este utilizata de multe transformari geometrice.

a). Inverse mapping

In cazul in care se utilizeza transformari geometrice asupra imaginilor, deseori se folosesc coordonatele imaginii destinatie pentru a genera coordonatele imaginii sursa. Acest proces se numeste "potrivire inversa" (inverse mapping).

b). Forward mapping

Procesarea punctuala permite transferul unui pixel de intrare de coordonate (x,y) in unul de iesire printr-un proces numit "potrivire inainte" (forward mapping). La aceasta potrivire apar doua probleme:

-gaurile (holes) reprezinta pixeli nedefiniti, pixelii destinatie neavand corespondenta in sursa,

-suprapunerile (overlaps) apar atunci cand doi pixeli de intrare se potrivesc pe acelasi pixel de iesire.

c). Interpolarea

Din cauza potrivirii putem avea anumite probleme. Fie transformarea:


Pixelul de la destinatia [0][0] va porni de la sursa [0][0]. Pentru destiantia [1][1] sursa ar trebui sa fie [0.5][0.5], pixel care, insa, nu exista in imagine (doar la rezolutie subpixel).

Interpolarea reprezinta procesul generarii de valori ce pot apartine intre pixeli, deci pentru domeniul subpixel. Ea genereaza un pixel nou analizand pixelii din jur, astfel incat sa poata face o asociere cat mai corecta in functie de transformarea dorita si de pixelii din jur.

Functia de interpolare este dependenta de aplicatia dedicata, astfel incat cu cat procesul de interpolare este mai sofisticat, procesul de calcul va fi mai complicat si mai lung.

Principalele tehnici de interpolare sunt:

-interpolarea bazata pe cel mai apropiat vecin, pixelul fiind asignat pixelului cel mai apropiat adresei nou generate, ca si pixel de iesire. Adresele fractionare calculate pentru pixelii sursa vor fi rotunjite la cel mai apropiat pixel, valid ca adresa.

-interpolarea biliniara, noul pixel generat fiind o sursa ponderata a patru pixeli, cei mai apropiati. Ponderile sunt direct proportionale cu distanta de la fiecare pixel existent. Sunt necesare trei interpolari liniare pe pixel rezultand o imagine mai neteda (smoother) decat la metoda precedenta.

-interpolare de nivel inalt, foloseste zone mai mari pentru pixelii din vecinatate in vederea generarii pixelului de iesire. La acest nivel avem tehnicile de interpolare cubice si B-spline care folosesc saisprezece pixeli vecini pentru a genera pixelul de iesire. Principiul se bazeaza pe convolutia unidimensionala. Convolutia unidimensionala cubica este data de relatia:

cu valori pentru a:

- 0.5 pentru precizie aritmetica mare,

- 0.75 si

- 1.0 pentru vizualizare buna.

In procesul de calcul se impun optimizari pentru a creste viteza de calcul.

Functia ideala de interpolare reprezinta un filtru trece jos, in acest caz interpolarea B-spline oferind un rezultat foarte bun. Functia este strict pozitiva, oferind netezirea cea mai buna. Functia unidimensionala B-spline este data de relatia:

d). Scalarea imaginilor

Scalarea permite modificarea anumitor dimensiuni dintr-o imagine. Procesul prin care o imagine sau o portiune din imagine este scalata se numeste:

-magnificare

-scaling up

-zooming

-upsampling

-stretching, daca se face prin marire, respectiv:

-shrinking

-scaling down

-decimare

-downsampling

-minificare, daca se face prin micsorare.

Prin scalare nu se va imbunatati rezolutia pentru ca nu sunt mai multe date decat cele capturate. Prin interpolare se mai pot genera noi valori, dar ele, practic, vor altera imaginea originala.

Scalarile se fac avand ca referinta imaginea originala, imaginea rezultata va fi modificata tinand cont de anumiti factori de scala, iar daca se revine la marimea initiala, noua imagine va fi deteriorata fata de cea originala datorita procesului de interpolare.

In principiu, scalarea este un proces simplu:

-magnificare - repetari de pixeli, in functie de metoda de interpolare aleasa,

-shrinking - duce la posibilitatea pierderii detaliilor fine din imagine.

De aceea pot fi folosite diverse tehnici, cum ar fi:

-reprezentarea mediana a unui bloc de pixeli, care inlocuieste blocul cu valoare lui mediana,

-reprezentarea medie a unui bloc de pixeli, care inlocuieste blocul cu valoare lui medie, etc.

e). Rotatia imaginii

Rotatia imaginii se face centrat la un pixel sau la origine, cu un unghi dat α, pe baza relatiilor:


xsursa = xdestinatie·cos α + ydestinatie·sin α

ysursa = ydestinatie·cos α - xdestinatie·sin α,

referitor la origine.

Aceasta relatie roteste imaginea raportat la punctul (0,0), dar daca imaginea este centrata in (xcentr,ycentr), relatia devine:

xsursa = (xdestinatie - xcentr)·cos α + (ydestinatie - ycentr)·sin α

ysursa = (ydestinatie - ycentr)·cos α - (xdestinatie - xcentr)·sin α

f). Translatia

Consta din deplasarea unei sectiuni a imaginii la o alta locatie in imagine. Este posibil ca destinatia sa se suprapuna peste sursa si in acest caz trebuie memorate aceste valori pentru a evita distrugerea imaginii.

g). Oglindirea

Reprezinta oglindirea imaginii dupa axa Ox sau Oy. Oglindirea orizontala se face dupa axa Oy, iar oglindirea verticala se face dupa axa Ox. Practic, pixelii vor fi reorganizati, neefectuandu-se nici o operatie de transformare.

2.4. Procesarea pe cadre

Implica considerarea a doua sau mai multe imagini, imaginea de iesire obtinandu-se ca urmare a unei operatii care se efectueaza intre mai multe imagini.

Principalele operatii care se efectueaza sunt:



-adunarea,

-scaderea,

-operatii logice (SI / SAU),

-media.

a)Adunarea

De obicei nu se face adunare simpla pentru ca poate sa apara depasire. De aceea se foloseste relatia:

Noul_pixel = α · pixel1 + (1 - α)· pixel2

Astfel, α poate fi specificat astfel incat una dintre imagini sa fie predominanta.

b)Scaderea

Este folosita pentru a determina diferentele dintre imagini, folosita mai ales in procesul de supraveghere. In acest caz se considera un prag care declanseaza alarma (algoritmii mai complicati se ghideaza si in functie de stralucire, etc.).

c)Operatii logice

Operatia AND (SI)se foloseste pentru a masca o parte din imagine.

Operatia OR (SAU)este folosita pentru a adauga parti dintr-o alta imagine peste imaginea initiala.

d)Media

Practic, reprezinta filtrul temporal si deci imaginile trebuie sa fie statice.

Media elimina doar zgomotele necorelate.

2.5. Modulul de segmentare a imaginilor

Etapa de separare respectiv detectare a corpurilor din campul imaginii are ca efect o reducere importanta a volumului informatiilor prin definirea indicilor de imagine care poseda o semnificatie. Distinctia dintre fond si obiect, numita segmentare, poate fi facuta prin punerea in evidenta a zonelor de variatie rapida a intensitatii luminoase.

In cazul unei imagini de intensitate, procesul de segmentare depinde de geometria obiectelor, reflectanta suprafetei vizibile, iluminarea scenei si originea captorului.

Segmentarea se poate face in mai multe moduri:

Binarizare ‑ o segmentare care imparte imaginea in doua clase, obiect si non‑obiect.

Extragere de contur ‑ segmentarea care imparte imaginea in zone de contur si non‑contur.

Conturul reprezinta zone din imagine a caror valoare a pixelilor variaza intr‑un mod brusc. Conturul fizic este reprezentat in general prin linii de discontinuitate a suprafetei, margini tangentiale ale suprafetei, limitele umbrelor sau reflectiilor sau linii de discontinuitate date de reflectanta diferita a unor zone.

Pornind de la conturul fizic, conturul unei imagini este dat in general printr‑o aproximare prin segmente de dreapta care pot fi considerate indici de imagine.

‑ Extragere de regiuni ‑ o segmentare care detecteaza regiunile din imagine, ca indici de imagine.

Regiunile reprezinta zone omogene ale imaginii tinand cont de un anumit criteriu cum ar fi, nivelul de gri, culoare, textura, etc.

Formarea regiunilor poate fi facuta printr‑un procedeu bazat pe aplicarea pragurilor deduse din histograma imaginii sau prin metode mai complicate cum ar fi cele bazate pe aproximare functionala.

In cazul segmentarii bazate pe intensitate, deseori apar detectate regiuni false. Aparitia regiunilor false este data in general de zgomotul de inalta frecventa si de tranzitia neteda intre regiuni uniforme. Rafinarea regiunilor poate fi facuta in mod interactiv sau automat.

Principiile generale ale segmentarii se refera la faptul ca obiectul de interes poate fi gasit prin descoperirea zonelor unde valorile pixelilor sunt omogene si in cazul in care obiectele nu difera apreciabil fata de vecini, trebuie sa ne bazam pe detectia de muchii.

2.5.1. Detectia de prag (Thresholding)

Pe baza detectiei de prag putem efectua:

-binarizarea unei imagini, caz in care o imagine de intensitate (cu nivele de gri) va fi convertita intr-una alb-negru (binarizare). Aceasta noua imagine trebuie sa contina toate informatiile necesare referitor la numarul, pozitia si forma obiectelor.

-extragere de contur,

-extragere de regiuni.

Utilizarea nivelelor de gri ale pixelilor face ca anumiti pixeli avand nivele de gri apropiate sa poata fi impartiti pe baza unei proceduri de clasificare in obiect sau nou obiect.

Detectia de prag, aproape intotdeauna este esentiala inainte de:

-subtierea contururilor (thinning)

-vectorizare

-operatii morfologice, etc.

Cea mai folosita metoda de conversie a unei imagini de intensitate intr-una alb-negru este de a selecta un singur prag, T. In acest mod:

-daca I(i,j)<T , I(i,j)=0 , colectia pixelilor negrii

I(i,j) T , I(i,j)=1 , colectia pixelilor albi

Selectia pe baza unui singur prag ne ofera o solutie bruta de segmentare, oferind o solutie globala utilizabila mai ales in cazul in care imaginile se preteaza a fi tratate astfel (documente scanate, imagini simple de test, etc.)

Algoritmii de detectie de prag se pot baza:

-pe histograma imaginii

-pe anumite valori din imagine, etc.

O metoda simpla, dar relativ ineficienta consta din a considera valoarea medie a intensitatilor din imagine ca si prag. Aceasta implica, ca imaginile au aceeasi pondere pentru negru si alb, lucru care nu este realist. In general procentul de negru poate fi constant, dar nu egal cu cel de alb. La o foaie tiparita el variaza in general intre 8,46% si 15,67%, in functie de existenta formelor, imaginilor, etc.

In general histograma este cea mai folosita in procesul detectiei de prag. Adesea pragul este considerat a fi punctul cel mai de jos intre doua varfuri semnificative ale histogramei. Daca histograma este doar cu doua varfuri, aceasta alegere este cea mai buna.

Segmentarea bazata pe prag a imaginilor se bazeaza pe faptul ca o muchie (edge) este data de pixelii care sunt apropiati de contur, intre obiect si fond sau intre doua obiecte care aproape se ating. Histograma punctelor care constituie muchia este foarte regulata si din acest motiv se pot detecta muchiile pornind de la Laplacian, care este un operator de detectie de muchii nedirectional. Cel mai simplu mod in acest caz este de a folosi un nucleu de convolutie adecvat pentru acest Laplace.

In continuare se vor considera doar acei pixeli care au valori largi ale Laplacian-ului. Acei pixeli care au Laplacian-ul mai mare cu 85% fata de veciniii lor vor fi pastrati in imagine; dupa aceea pragul va fi determinat pornind de la noua histograma a imaginii obtinute.

O metoda de detectie de prag care nu se bazeaza pe histograma considera valoarea medie Tmed a intensitatii din imagine ca un prim prag, care apoi este rafinat printr-un proces de selectie iterativ. Urmatorul prag se determina considerand media nivelelor de gri a tuturor pixelilor de la 0 la Tmed , Tb , respeciv de la Tmed la 255, de unde obtinem To . Noua valoare va fi:

.

Procesul se repeta pana cand nu mai avem o schimbare a pragului. Acest proces poate fi implementat hardware, varianta software se poate implementa mai usor, pornind de la histograma.

La detectia de prag se poate folosi si entropia. Entropia este o masura a continutului informational a unei imagini.

Multimile fuzzy pot fi si ele folosite la detectia de prag, precum si alte diverse metode.

Oricum, procesul de detectie de prag in vederea segmentarii este foarte dependent de natura si calitatea imaginilor utilizate.

2.5.2. Detectia de contur (muchii)

Muchiile dintr-o imagine permit izolarea obiectelor, determinarea formei, dimensiunii si anumite informatii legate de textura.

O muchie reprezinta locul in care intensitateta unei imagini se modifica brusc de la o valoare low la o valoare high sau invers.

Sunt multe aplicatii, uneori folosite doar ca si efecte speciale unde iesirea unui detector de muchii se poate suprapune peste imaginea initiala pentru a accentua muchiile.

Detectia de muchii reprezinta cel mai complex element din "procesarea" imaginii, neexistand o metoda universal valabila pentru ca muchiile sunt foarte diverse.

De multe ori se fac diferite experimente pentru a alege cea mai buna tehnica de detectie de contur.

Cel mai simplu si rapid detector de muchii determina valoarea maxima prin scaderea din valoarea pixelului central a celor opt vecini (separat), valoarea de iesire fiind maximul valorii absolute a fiecarei diferente. Acesta este operatorul de omogenitate.

Operatorul diferenta este mai rapid, el facand mai putine operatii, facand scaderi in vecinatate in modul urmator:

Ceilalti detectori globali de contur folosesc unele masti de convolutie si putem avea in acest caz:

a) Operatori derivativi de ordin 1

-Operatorii de tip gradient obisnuit, (sau gradient ortogonal) detecteaza muchii orizontale si verticale. Acesti operatori lucreaza prin convolutie. Mastile cele mai utilizate sunt:

HrHc

Roberts

Prewitt

Sobel

Frei - Chen

Amplitudinea poate fi determinata calculand vectorul suma al Hr si Hc:

Orientarea muchiilor poate fi gasita prin:

-Operatorul gradient compass, detecteaza muchii pentru opt orientari diferite. Practic, imaginea va fi convolutionata cu opt masti, iesirea fiind maximul dintre cele opt valori obtinute.

Ceea ce este de remarcat este faptul ca mastile de dimensiune mica sunt senzitive la zgomote.

b) Operatori derivativi de ordin 2

Operatorii gradient au un raspuns larg asupra zonei tratate. Ei sunt buni pentru muchiile care au o rampa lenta.

Detectarea oricarui contur se numeste localizare, dar in general este dificil a detecta conturul muchiilor de cativa pixeli. De multe ori se foloseste un proces de subtiere (thinning) pentru a reduce latimea muchiilor la un pixel.

Operatori derivativi de ordin 2 ofera rezultate mai bune. De asemenea, contururile obtinute sunt inchise.

Operatorul Laplacian este cel care este untilizat cel mai frecvent fiind prezentat anterior. El va produce muchii mai ascutite decat majoritatea celorlalte tehnici.

Utilizand anumite masti, in imagine apar valori ale pixelilor care duc la o schimbare de semn la muchiile imaginii. Aceste schimbari de semn sunt numite "treceri prin zero" sau zero crossing. Dupa convolutie imaginea trebuie sa fie procesata pentru a detecta aceste treceri prin zero si pentru a seta pixelii de iesire in mod adecvat.

Operatorul Laplace este sensibil la zgomote, si de aceea "trecerile prin zero" indica mai multe muchii decat sunt in realitate. De aceea se foloseste un prag pentru a determina magnitudinea muchiilor care vor fi marcate. De multe ori se prefera folosirea Laplacianului Gaussianului, LOG, care este un operator mai eficient. El presupune, mai intai, aplicarea netezirii Gaussiene si apoi a Laplacianului. Se poate defini astfel masca:

Functia este numita "filtrul palaria Mexicana".

Primul punct "zero crossing"a lui LOG este la .

De obicei acest operator este folosit cu masti de dimensiuni mari mai mari de 7x7 si de aceea numarul de calcule este foarte mare. Pentru cazul 37x37 se prefera a se folosi o aproximare data de operatorul DoG (Difference of Gaussians):

Practic se va face convolutia cu DoG prin scaderea a doua masti Gaussiene cu valori σ diferite. Raportul σ12=1.6 da o aproximare buna pentru LOG. Un avantaj a lui DoG este abilitatea de a specifica latimea muchiilor de detectat modificand valorile lui σ1 si σ2 ; masca de 9 x 9 va detecta muchii mai largi decat masca de 7 x 7.

De asemenea, DoG inchide contururile detectate.

c) Filtrul Canny

A fost propus in 1986 de catre John Canny. Acesta propunea ca un detector de muchii este necesar sa satisfaca trei criterii:

-detectie buna,

-localizare buna,

-un singur raspuns la o singura muchie.

Acest filtru se implementeaza considerand urmatorii pasi:

-se face o convolutie a imaginii cu o masca Gaussiana,

-se calculeaza componentele gardientului pentru fiecare pixel,

-se calculeaza directia gradientului pentru fiecare pixel rezultat,

-se calculeaza derivata de ordin 2 in lungul acestei directii a gradientului pentru fiecare pixel,

-se localizeaza valorile de zero in aceasta derivata de ordin 2,

-se clasifica valorile de zero ca puncte de pe contur.

d) Detectia color

Intr-o imagine color trebuie vazuta care este diferenta muchiilor. In cazul in care suntem in spatiul HSI (sau unul corespondent), detectia se face tinand cont de canalul de intensitate. In spatiul RGB, detectia de contur se face pe cele trei planuri separate, dupa care, combinand cele trei planuri, rezulta o imagine color segmentata. Cele trei componente pot fi si adunate pentru a crea o scala de gri, sau pot fi adunate vectorial rezultand tot nivele de gri, astfel:

In general majoritatea muchiilor detectate in spatiul HSI se gasesc si in spatiul RGB, deci este suficient a se face detectia pornind de la componenta de intensitate.

In cazul in care avem imagini de contrast scazut, detectia pornind de la intensitate nu este suficienta si atunci se face o detectie tinand cont si de crominanta imaginii.

2. Modulul de analiza si interpretare a imaginilor

Analiza si interpretarea imaginilor grupeaza doua tehnici principale si fundamentale de abordare:

a) tratari numerice, care permit dupa ameliorarea imaginilor, utilizand diferite tehnici de segmentare, extragerea de caracteristici generale cum ar fi, linii de contrast, segmente si unghiuri de referinta, etc. Algoritmii asociati in acest caz depind intr‑o mica masura de natura problemei de tratat, ei fiind algoritmi generali de recunoastere de forme.

b) metode de judecata, fondate pe cunostinte explicite precum si pe reprezentarea lor. Cunostintele sunt legate de problemele puse spre rezolvare, domeniul de aplicatie, tehnica utilizata, etc.

Majoritatea metodelor practice de recunoastere a formelor permit identificarea obiectelor pe baza corespondentei cu o baza de modele. Modelele pot fi perceptuale, functionale sau semantice.

Aceste cunostinte sunt organizate in cadrul unui sistem de reprezentare, sistem in cadrul caruia se definesc:

-tipul de cunostinte care se doreste a fi reprezentat, utilizand:

‑ atribute caracterizand forma obiectelor, cum ar fi factor de forma, factor de ondulatie, factor de aplatizare, orientare, etc.,

‑ atribute depinzand de natura suprafetei obiectelor cum ar fi textura, culoare, etc.,

‑ relatii intre obiecte, de apartenenta sau de pozitie relativa.

-reprezentarea informatica a acestor cunostinte prin, reguli de productie, reprezentari procedurale, utilizarea de limbaje orientate obiect, etc.

Combinarea metodelor de analiza a imaginilor, in special in cazul tratarilor imaginilor de o calitate mediocra, faciliteaza obtinerea unor rezultate deosebit de utile.

In vederea vizualizarii imaginilor prelucrate atat in cazul unor sisteme cu posibilitati de lucru cu imagini de intensitate cat si color, se pune problema recodificarii lor in vederea scoaterii in evidenta a unor detalii de interes care duc la o metoda de interpretare cat mai precisa a rezultatelor.

Metodele de recodificare a imaginilor pe baza de LUT (Look Up Table) sunt intens folosite datorita vitezei mari de prelucrare a volumului de informatie continut de semnalul imagine. Aceasta viteza se datoreza si setului ortogonal de instructiuni al procesoarelor moderne.

In principiu, metoda consta in schimbarea intensitatii si/sau a nuantei pixelilor unei imagini conform unei tabele construite in prealabil. In vederea pastrarii intensitatii pixelilor din imagine se prefera ca recodificarea sa fie facuta tinand cont doar de crominanta, astfel ca ulterioarele prelucrari care se efectueaza asupra imaginii sa beneficieze de aceleasi valori pentru intensitati. In sistemele moderne de prelucrari de imagini LUT‑ul este un dispozitiv hard. Tabelele de recodificare, LUT implementeaza cel mai usor algoritmii referitor la operatiile punctuale asupra imagnilor.

Deci LUT sunt tablouri simple, care folosesc valoarea curenta a pixelului ca un index in cadrul acestor tabele, de unde se va lua o noua valoare care va fi introdusa in imaginea de iesire in aceeasi pozitie in care a fost in imaginea de intrare.

Imaginea de intrare  LUT Imaginea de iesire


Figura 7.11. Tabele de recodificare LUT

Utilizarea LUT evita efectuarea de operatii de calcul inutile. In cazul de mai sus (3 biti / pixel), practic, doar trei valori sunt procesate, indiferent de dimensiunea imaginii (in general, la imagini cu opt biti per pixel sunt procesate 256 de valori).

2.7. Tehnici specifice utilizate in procesarea imaginilor

2.7.1. Analiza texturala

Analiza texturala este inclusa in cadrul analizei imaginilor fiind o parte integranta a vederii artificiale. Tinand cont de diferenta existenta intre teoria elaborata in vederea definirii texturilor si aplicatiile practice care urmeaza a le implementa este necesara definirea si descrierea unor primitive care sa caracterizeze textura.

Analiza texturala se incadreaza in cadrul analizei imaginilor nonfigurative. In acest caz imaginile contin anumite modele care se repeta dupa o anumita regula. Printre domeniile in care analiza texturala isi gaseste diferite aplicatii avem medicina cu deosebire genetica, morfopatologia, histopatologia, biofizica etc.

Uneori diferenta intre doua texturi e data de acest aspect aleator al texturii sau de distributia statistica gasita intre textoni (sabloane care se pot repeta fie in mod exact, fie cu unele mici modificari).


Figura 12. Imagini avand regiuni caracterizate prin texturi

(a, b) Textura arificiala

(c, d, e) Textura naturala delimitata din imagini reale

In Figura 12. este prezentata o mica colectie de texturi, cateva naturale si altele artificiale. Analiza texturala este strans legata de procesul de segmentare a texturilor mai degraba decat de caracterizare a lor.

O textura este considerata a fi o structura spatiala construita prin organizarea unor primitive cu aspect aleator. Este extrem de dificil a segmenta texturi. Liniile de separatie desenate intre texturi deseori sunt arbitrare, functia de perceptie deseori este matematica. Este posibil ca anumite combinatii de operatii sa ofere rezultate rezonabile. Noi metode se incearca a fi utilizate, in general metode bazate pe fractali si analiza fractalica.

Se pot incerca unele metode simple de detectie a texturilor folosind intensitatea din cadrul unor ferestre (de 3 x 3, pana la 37 x 37) unde se poate determina intensitatea medie precum si unii parametrii statistici specifici.

Utlizarea unor ferestre care se suprapun printr-un anumit algoritm asupra imaginii poate sa ofere unele rezultate acceptabile. Acest lucru este explicabil tinand cont de faptul ca textura se refera la regiuni de pixeli si nu la pixeli individuali. In consecinta delimitarea texturilor se poate face considerand o distanta de W pixeli, unde W reprezinta latimea ferestrei alese.

Figura 13. Segmentarea texturilor folosind fereastra de suprapunere

(a) Media intensitatilor intr-o fereastra de 14x14 considerand imaginea din 7.12.b.

(b) Binarizarea acestei imagini.

(c) Zona de separatie apartine unei plaje de separatie incerte

In Figura 13. este ilustrat urmatorul principiu. Se foloseste media intensitatilor pentru a segmenta imaginea din Figura 12.b.

Valoarea medie da rezultate acceptabile in acest caz dar in general in cadrul altor tipuri de imagini rezultatele sunt nesatisfacatoare. Se mai poate considera in acest sens si deviatia standard a nivelelor de gri.

Figura 14. ne arata regiunile identificate folosind deviatia standard locala la segmentarea texturilor. Asfel, Figura 12.a poate fi segmentata prin aceasta metoda si chiar si celelalte imagini cu exceptia 12.d.

Figura 14. Utilizarea deviatiei standard la segmentarea imaginilor din Figura 12.



3. Bibliografie

1. Albert R., Schindewolf Th., Baumann I., Harms H., Three‑Dimensional Image Processing for Morphometric Analysis of Epithelium Sections, Cytometry, Vol. 13, 1992, pp. 759‑765


2. Ammeral Lendert, Programming Principles in Computer Graphics, Academic Press, 1992


3. Canny J., A Computational Approach to Edge Detection, IEEE Trans. on PAMI, Vol. 8, nr. 6, november 1986, pp. 679‑698


4. Crane R., A Simplified Approach to Image Processing: Classical and Modern Techniques in C, Prentice Hall, 1997


5. Glassner Andrew S., 3D Computer Graphics. A User's Guide for Artists and Designers, The Herbert Press, London, 1991


Goldfarb L., On the foundation of intelligent processes. An evolving model for pattern learning, Pattern Recognition, nr. 6, 1990, pp. 595‑616


7. Marr D., Hilderth E., Theory of Edge Detection, Proc. Royal Soc. London, Vol. B207, 1980, pp. 187‑217


8. Marshal Garry, Student's Guide to Expert Systems, Heinemann Newnes, Halley Court, Jordan Hall, Oxford, 1990


9. Meyer F. , Feature Extraction by Mathematical Morphology in the Field of Quantitative Cytology, Biomedical Image and Computer, Ed. Sklansky J. and Bisconte J. C. , France Seminar, 1980, pp. 56‑65


10. Olinici C.D., Vaida M.-F., Metode de analiza cantitativa si morfologica in biologie si medicina, Edit. Tehnica Bucuresti, 1997


11. Parker J.R., Algorithms for Image Processing and Computer Vision, Wiley Computer Publishing, John Wiley & Sons, 1996


12. Pavlidis T., Algorithms for Graphics and Image Processing, Springer‑Verlag, Berlin‑Heidelberg, 1982


13. Quinnell R. A., Image compression‑ Part 1, EDN, january 21, 1993a, pp. 62‑71


14. Quinnell R. A., Image compression‑ Part 2, EDN, march 4, 1993b, pp. 120‑126


15. Rosenfeld A., Kak A. C., Digital Picture Processing, Second Edition, Academic Press, 1982


1 Schmitt M., Des algoritmes morphologiques a l'intelligence artificielle, These docteur, Universitι Paris‑sud, 1989


17. Selinger S., Kovacs S., Analiza si clasificarea texturilor microscopice, Raport de cercetare 811 IS Software-ITC Bucuresti, filiala Cluj-Napoca, mai 1993


18. Serra J., Image Analysis and Mathematical Morphology, Vol. 1, Academic Press, 1982


19. Serra J., Image Analysis and Mathematical Morphology, Vol. 2, Academic Press, 1988


20. Russ J.F.C., The Image Processing Hand book, Third Edition, CRC Press with IEEE Press, Springer, 1999


21. Mircea-Florin Vaida, Procesarea Imaginilor medicale. Ingineria programarii in vederea dezvoltarii de aplicatii in domeniul bio-medical, Casa Cartii de Stiinta, 2000