Această lucrare prezintă o metodă robustă pentru detecția pupilei bazată pe procesarea imaginilor cu ajutorul transformatei Hough circulare si… [307403]
Rezumat
Această lucrare prezintă o metodă robustă pentru detecția pupilei bazată pe procesarea imaginilor cu ajutorul transformatei Hough circulare si eliptice. Transformata Hough este un algoritm propus de Paul Hough în anul 1962 [anonimizat].
Cele două metode de implementare a software-[anonimizat], forme geometrice cu care se aproximează pupila.
1. Introducere
Identificarea persoanelor devine din ce în ce mai importantă societatea modernă. [anonimizat]. [anonimizat], irisul, retina, geometria mâinilor; amprenta etc. [anonimizat], vocea … etc. Un sistem biometric exploatează legătura incontestabilă și indestructibilă dintre o persoană și datele sale biometrice. [anonimizat] o mare atenție deoarece irisul fiecărei persoane este unic și nu se schimbă în timpul vieții acesteia.
Majoritatea metodelor utilizate pentru localizarea irisului se bazează pe presupunerea incorectă că centrul irisului se identifică cu centrul pupilei și că irisul prezintă o formă perfect circulară. [anonimizat]: [anonimizat], tremurul fiziologic al ochiului și altele. [anonimizat], așa cum se va arăta în capitolele următoare.
Cunoasterea punctul de privire al utilizatorului a [anonimizat], având in vedere ca mișcarea ochilor poate fi utilizata ca un indicator al starii de atenție al utilizatorului.
Utilizarea unui dispozitiv de detecție a direției privirii facilitează interacțiunile cu computerele și alte dispozitive atunci când utilizatorul nu poate sau nu dorește să folosească mâinile pentru folosirea sistemului de calcul. Măsurătorile obținute asupra punctului de privire a ochilor sunt utilizate de două tipuri de interfețe „om-mașina” – interfațe active si interfațe pasive. Interfețele active permit utilizatorilor sa controleze in mod explicit interfața prin utilizarea mișcărilor ochiului. [anonimizat] o tastatura virtuala in loc de butonarea unei tastaturi tradiționale. O astfel de interfață activă a fost destul de eficienta ajutand utilizatorii cu dizabilitati de mișcare sa interactioneze cu calculatoarele. Aceste tehnici pot fi deasemenea utile pentru utilizarea normala a interfeței dat fiind faptul ca atunci cand utilizatorii intentioneaza sa selecateze o pictograma intr-o [anonimizat]. [anonimizat]. [anonimizat], urmareste privirea ochilor in mod activ si prezintă un nivel înalt de detalii la punctul privirii in timp ce se ignoră nivelul de detalii la periferii unde utilizatorul nu atrage atenția.
Deși algoritmi de urmarirea a mișcării ochiului a fost implementați in câteva sisteme de cercetare si intr-un oarecare grad mai mic pe piața de consum, aceaștea nu si-au atins încă potentialul maxim. Foarte important, tehnologia de urmarire a ochiului a fost disponibila de-a lungul anilor prin utilizarea mai multor metode (ex: Purkinje bazat pr reflexie, contact-lens based eye coil systems, electro – oculography; pentru un studiu al tehnologiei clasice de urmărire a ochilor). Principalul obstacol ce a stat in calea integrarii acestor tehnici intr-o interfata „om-mashina” a fost ca erau fie prea invazive fie prea scumpe pentru utilizarea de rutina. Recent, invazitivitatea dispozitivilor de detecție a direcției privirii a fost redusă semnificativ prin miniaturizare dispozitivului cu montare pe cap. De asemenea, tehnologia detecției privirii de la distanță iși micșorează volumul, cu observația că se reduce din precizia acestuia. Având in vedere cele de mai sus, principalul obstacol care stă in calea integrării a miscarilor oculare intr-o interfață actuală este disponibilitatea unui sistem de urmarire a ochilui disponibil în mod liber, sigur si la un preț mic.
În prezent sunt disponibile câteva dispozitive de detecție a privirii pe piață și prețul lor variază de la aproximativ 5.000 până la 40.000 $ US. De remarcat că cea mai mare parte a acestui cost nu se datorează parții hardware, având in vedere că prețul unei camere digitale de înaltă calitate a scăzut brusc in ultimii zece ani. Acest cost este asociat destul de mult cu implementări de soft personalizate, uneori integrate cu procesoare digitale special adaptate pentru a obține performanță in viteză.
Această analiză indică in mod clar că pentru ca tehnologia de detecție a dierecției privirii să poată fi integrată in interfața „om – calculator” de zi cu zi, fiind disponibilă pe scară largă, se impune dezvoltarea unor algoritmi de încredere și de mare viteză care pot sa ruleze pe orice dispozitiv de calcul.
Dispozitivele de detecție a direcției privirii pot achiziționa imaginile în două moduri: in spectrul vizibil sau in spectrul infraroșu. Spectrul vizibil este o abordare pasivă care captează lumina ambiantă reflectată de ochi. De cele mai multe ori în acest caz cele mai bune caracteristici de detectat este conturul dintre iris și sclerotică. Caracteristicile de interes sunt: pupila – apertura ce lasă lumina să patrundă in ochi, irisul – disc circular colorat ce controlează diametrul pupilei, și sclerotica – țesutul alb protector. Detecția direcției privirii în spectrul vizibil este complicată prin faptul că utilizeză ca sursă de lumină, lumina ambiantă ce nu poate fi controlotă, și care poate avea componente nedorite. Camera în infraroșu elimină aceste componente nedorite prin iluminarea continuă și uniformă a ochiului și care in același timp nu este percepută de utilizator. Un alt beneficiu în imagistica infraroșu este că pupila este cea mai proiminentă caracterestică intr-o imagine a ochiului. Sclerotica și irisul, ambele reflectă puternic lumina infraroșu, pe când sclerotica reflectă puternic lumina vizibilă. Este preferabil urmărirea conturului pupilei dat fiind faptul că pupila este mai mică si mai clar definită în comaparație cu conturul irisului.Mai mult, datorită dimensiunii sale, pupila are o probabilitate mai mică de a fi acoperită de pleoape. Principalul dezavantaj al tehnicilor de imagistică în infraroșu este că nu pot fi utilizate în aer liber în timpul zilei.
Detecția pupilei în infraroșu utilizează in mod obișnuit fie tehnica pupilei luminoase, fie tehnica pupilei întunecate. Tehnica pupilelor luminoase iluminează ochiul cu o sursă care se află pe, sau aproape de axa optică a camerei. Rezultatul unei asemenea iluminări este că pupila apare demarcată ca o regiune foarte iluminată in imagine. Tehnica pupilei întunecate, care s-a folosit și în această lucrare, iluminează ochiul cu o sursă din afara în afara axei optice a camerei, astfel încât pupila apare ca cea mai întunecată regiune din imagine, pe când sclerotica, irisul și pleoapele, toate reflectă relativ mai multă lumină. În oarecare dintre aceste metode este vizibilă reflexia corneană.
În general, algoritmii de detecție a privirii folosesc două de tehnici de procesare: procesare pe bază de trăsături și procesare pe bază de model . Tehnica de procesare pe bază de model detectează și localizează în imagine caracteristici cu privire la pozționarea ochiului. O similitudine între abordărilor pe bază de caracteristici este aceea că este necesar un criteriu (de ex. o valoare de prag) pentru a decide când o caracteristică este prezentă sau absentă. Determinarea unui prag adecvat este de obicei lăsat ca un parametru liber care este ajustat de utilizator. Caracteristicile urmărite variază foarte mult de la algoritmi la algoritmi, dar de cele mai multe ori se bazează pe nivele de intensitate sau gradienți de intensitate. De exemplu, în imaginile în infraroșu, tehnica pragului dual folosește pragurile de intensitate stabilite în mod corespunzător pentu a extrage regiunea corespunzătoare pupilei și reflexiei corneene. Pe de altă parte, tehnicile de procesare pe bază de model nu detectează în mod explicit trăsăturile (caracteristice), ci se orientează pe determinarea celui mai potrivit model geometric al imaginii de detectat. Aceste tehnci pot furniza o estimare mult mai precisă a conturului pupilei decât tehnicile de procesare pe bază de trăsături. Cu toate acestea, abordările pe bază de model necesită căutarea unui spațiu complex de parametri care să poată fi încărcat cu minimele locale și, prin urmare, nu pot fi utilizate fără o aproximare bună a valorilor inițiale. Creșterea acurateții unei tehnici de procesare bazate pe model se obține la un cost semnificativ in ceea ce priveste viteza de calcul si flexibilitatea.
Un algoritm de detecție a direcției privirii (detectează pupila) este algoritmul Starbust. Acesta combină tehnicile de procesare bazate pe model și pe tehnicile de procesare bazate pe caracteristici, pentru a obține un raport performant între timpul de rulare și acurateția detecției pupilei. Reflexia coneeană și pupila sunt localizate prin tehnica de procesare pe bază de trăsături. Apoi este aplicată paradigma RANSAC pentru a maximiza acurateția în prezența erorilor survenite în urma procesării pe bază de caracteristici. În cele din urmă se aplică o procesare pe bazată pe model pentru a reface ulterior elipsa. Mai există și alți algoritmi de detecție a privirii printre care și transformata Hough, subiect care va fi tratat cu precădere în această lucrare.
Transformata Hough clasică este un algoritm standard utilizat pentru detecția liniilor și a cercurilor. Acesta poate fi aplicat în multe aplicații de procesare de imagini, deoarece majoritatea imaginilor conțin trăsături ale contururilor (marginilor), care pot fi descrise prin curbe regulate. Un mare avantaj al transformatei Hough este că tolerează golurile și imperfecțiunele și nu este relativ afectată de zgomotul suprapus peste imagini. Datorită avantajelor menționate mai sus, transformata Hough a fost utilizat pe scară largă în multe aplicații. De exemplu, aplicații 3D, detectarea obiectelor și a formelor, recunoașterea benzii și a semnelor rutiere, aplicații industriale și medicale, inspecția conductelor și cablurilor, și urmărirea subacvatică.
Transformata Hough circulară și eliptică poate fi utilizată pentru determinarea razei și a coordonatelor centrului pupilei, putând fi astfel utilizată pentru detecția direcției privirii în timp real.
Wildes, Kong și Zhang ,Tisse și alții au utilizat transformata Hough pentru localizarea irisului. Metoda de localizare utilizată de aceștia se bazează pe calculul derivatei întâi a intensității imaginii. În metoda propusă de Wildes se obține mai întâi imaginea cu contururile detectate prin aplicarea unui prag amplitudinii gradientului intensității imaginii, direcția gradientului reprezintă direcția în care funcția imagine prezintă o creștere maximă, de exemplu de la negru spre alb, așa cum se arată în :
(1.1)
unde:
(1.2)
G(x, y) reprezintă funcția de filtrare de netezire Gaussiană, cu parametrul de scalare σ, utilizat pentru selectarea celei mai potrivite valori pentru analiza performantă a marginilor detectate. Imaginea cu contururile detectate este apoi utilizată în procesul de votare pentru maximizarea transformatei Hough definite pentru conturul dorit. Punctul maxim în spațiul Hough corespunde cercului de rază r și coordonate ale centrului xc și yc, care este cel mai bine definit de punctele detectate pe contur, conform cu următoarea ecuație:
xc2 + yc2 – rc2 = 0
Wildes și alții și Kong și Zhang utilizează transformata Hough parabolică pentru detecția pleoapelor, aproximând marginile superioare și inferioare ale acestora prin arcuri parabolice.
Metoda care se bazează pe transformata Hough necesită o valoarea de prag, utilizată pentru detecția conturului, care poate determina extragerea obiectelui de interes din fundal (pupila), astfel evitânduse eventuale erori în detecția cercurilor și a arcurilor de cerc.
Transformata Hough necesită putere de procesare mare, care este din ce în ce mai disponibilă în cadrul computerelor actuale.
2. Binarizarea imaginii ochiului pe bază de histogramă
O imagine poate fi definită ca o funcție bidimensională, f(x,y), unde x și y sunt coordonatele spațiale (în plan), și amplitudinea funcției f în orice punct definit de perechea de coordonate (x, y) se numește intensitatea imaginii în punctul respectiv. Termenul de nivel de gri este cel mai des se referă la intensitatea imaginilor monocromatice.
Transformarea unei imagini analogice într-o formă digitală presupune digitalizarea coordonatelor precum și a amplitudinii. Așadar, imaginea se împarte în elemente foarte mici care se numesc pixeli. Caracteristicele de amplitudine și poziție în sistemul (x,y) ale unui pixel sunt codificate rezultatul final alacestei digitalizări fiind un șir de numere care sunt memorate cu ajutorul calculatoarelor.
Histograma unei imagini reprezintă nivelurile de gri în cazul imaginilor în tonuri de gri, sau a nivelurilor celor trei canale RGB, în cazul imaginilor color. Aceasta afișează numărul de pixeli (frecvența) pentru fiecare intensitate din imaginea respectivă. Pentru o imagine pe 8 biți, histograma va afișa numărul de pixeli pentru fiecare valoare de culoare posibilă (256 valori).
Mediul matlab suportă mai multe tipuri de imagine:
imagine RGB (imagine color) – fiecare pixel este caraterizat de trei valori, câte una pentru fiecare componentă: roșu, verde și respectiv albastru.(imaginea este stocată într-o matrice ).
imagine indexată – imagine (matrice a× b ) a caror pixeli conține valoarea indicelui culorii dintr-o gamă de culori. Gama de culori este un tablou c ×3 , cele trei coloane reprezentând valorile RGB, unde c reprezintă numărul de nuanțe;
imagine in nuanțe de gri – valorile tabloulu imagine (matrice a× b ) conține direct nuanta de gri, fără a fi nevoie de o paletă de culori;
imagine binară – imagine ce conține doar pixeli albi sau negri, reprezentată sub forma unor tablouri de valori de 1(alb) și 0(negru) – informațiile vor fi stocate într-o matrice a×b ;
Binarizarea unei imagini are ca obiectiv obținerea unei imagini alb negru dintr-o imagine care conține și alte nuanțe nedorite provenite din diverse motive tehnice. Aceasta poate fi:
globală, cu un singur prag T pentru întreaga imagine,
locală, cu prag variabil.
Împarțirea imaginii în zone de interes după anumite criterii reprezintă segmentarea. Fiecarui pixel i se va atribui o valoare, 0 sau 1 , reprezentând apartenența acestuia la o anumită zonă sau regiune de interes. Zonele sau regiunile care alcătuiesc o imagine poartă numele de segmente.
Separarea modurilor histogramei, și deci identificarea obiectelor din imagine, se face prin alegerea unor nivele de gri, numite praguri de segmentare. De obicei aceste praguri se aleg ca fiind corespunzătoare minimelor locale ale histogramei.
În continuare se prezintă o metodă de segmentare a imaginii ochiului care utilizează un prag global, determinat din histograma imaginii acestuia, care se calculează pentru imagine statică prelucrată. Segmentarea prin metode de prag se bazează pe alegerea unui nivel de gri care să
realizeze extragerea obiectelor din fundal
Determinarea adaptivă de la cadru la cadru a pragului din histogramă se bazează pe alura specifică a acesteia pentru imagini ale ochiului preluate cu o cameră video în infraroșu. Pupila este reprezentată de regiunea cu pixelii având cel mai închis nivel de gri din imagine, având in vedere că se utilizează tehnica pupilei întunecate (negre). Deoarece dimensiunea pupilei este mică in comparație cu întreaga imagine a ochiului, este de remarcat că pixelei corespunzători pupilei au o probabilitate mai mică de apariție. Astfel, nivelele de gri ale pixelilor corespunzători pupilei vor fi poziționate în histograma imaginii ochiului, ilustrată în Fig. 2,1, în zona cuprinsă între origine (corespunzătoare nivelului de negru, egal cu 0 în histogramă) și punctul A. Primul maxim al histogramei (notat cu M) corespunde nivelului de gri majoritar al pixelilor din cadrul pupilei, iar primul minim (notat cu N) corespunde nivelului de gri al pixelilor aflați undeva pe conturul pupilei, la granița dintre pupilă și începutul irisului. Acest minim poate fi utilizat ca prag global pentru binarizarea imaginii, în vederea detecției conturului pupilei. În cazul histogramei ilustrată în Fig. 4.1, acest prag are valoarea T = 24.
fig. 2.1 Histograma imaginii ochiului
În continuare se prezintă secvența de program MATLAB implementată pentru determinarea pragului de segmentare global din histograma imaginii ochiului.
%% Citirea si filtrarea imaginii ochiului
img = imread('img_eye.jpg');
% Achiziționare imagine
I2 = rgb2gray(img);
%rgb2gray convertește imaginile de nuanțe RGB intr-o imagine cu nivele de gri.
h = fspecial('average',[3 3]);
% mediere, masca de filtrare de dimensiune NxN; 1/N^2, N=3 in cazul de față
img_filt = imfilter(I2,h,'replicate');
% efectuiaza filtrare multidimensional. 'replicate' -> valorile de intrare in tablou care sunt in afara intervalului, se presupun egale cu cel mai apropiat
capăt.
%% Determinarea pragului de segmentare global
h=imhist(img_filt);
%afișeaza histograma pentru imaginea „img_filt” a cărei număr de nivele este specificată de tipul imaginii. Dacă imaginea este in tonuri de gri, „imhist”
utilizează implicit 256 de valori, daca este o imagine binarizată utilizează doar 2 valori (0 sau 1)
h2 = h(10:125);
minx=8+find(h2==min(h2)) ;
% se adauga 8, deoarece primele 9 esantioane ale lui h au fost eliminate din h2, iar histograma incepe de la indexul 0
level = minx(1)/255;
% daca sunt mai multe minime egale, se ia ca prag primul minim gasit
% level = 0.12; % prag fix pentru imag statice 0.12
În continuare, binarizarea imaginii ochiului cu pragul detectat din histogramă și detecția conturului pupilei se pot realiza cu ajutorul secvențelor de program MATLAB ilustrate mai jos.
%% Binarizarea imaginii ochiului si detectia conturului pupilei
img_BW = im2bw(img_filt,level);
% converteste intensitatea imaginii img_BW in alb si negru
figure(2);imshow(img_BW);axis on;
title('Imaginea binarizata a pupilei detectate','FontSize',14,'FontWeight',
'bold');
set(gca,'fontsize',14);
imgBW = edge(img_out);
figure(3),imshow(img_out);axis on;
title('Imaginea binarizata a pupilei refacute','FontSize',14,'FontWeight',
'bold');
set(gca,'fontsize',14);
fig. 2.1 Imaginea binarizată a ochiului
fig 2.2 Detecția conturului pupilei
Experimentele efectuate pe întregul set de imagini statice ale ochiului, dar și pe imagini video ale ochiului, preluate în timp real, confirmă o detecție foarte precisă a pragului de segmentare, ceea ce determină o foarte bună localizare a centrului pupilei detectate. În cazul algoritmilor pentru detecția pupilei prin diferite metode este foarte importantă forma geometrică a imaginii pupilei. Aceasta este influențată în mare măsură de reflexia corneană. Precizia detecției centrului pupilei poate fi îmbunătățită semnificativ prin înlăturarea reflexiei corneene, cu ajutorul tehnicilor de reconstrucții morfologice.
O altă metodă de segmentare ar mai fi pe bază de gradient – au la bază derivatele locale ale funcției imagine; deorece derivatele sunt mai mari atunci cand variațiile imaginii sunt mai mari, aceste operații accentuează zonele de trecere de la o nuanță la alta. Pixelii paraziți dintr-o imagine conduc de asemenea la variații ale funcției imagine. De aceea, aplicarea acestor operatori unor imagini afectate de zgomote va duce la creșterea nedorită a nivelului dezgomot. Direcția gradientului reprezintă direcția în care funcția imagine prezintă o creștere maximă.
3. Principiul transformatei Hough
Transformata Hough clasică este un algoritm standard utilizat pentru detecția liniilor și a cercurilor. Acesta poate fi aplicat în multe aplicații de procesare de imagini, deoarece majoritatea imaginilor conțin trăsături ale contururilor (marginilor), care pot fi descrise prin curbe regulate.
Transformata Hough este o metodă ce rezolvă o problemă clasică din viziunea artificială: găsirea unor figuri geometrice într-o imagine ce conține o mulțime de puncte de interes. Într-o imagine, o curbă, în orice formă, poate fi definită printr-un set de puncte. Există astfel un set de parametri care face legătura dintre aceste puncte și informațiile lor spațiale reprezentate de coordonatele acestora în imagine. Aceasta înseamnă că orice curbă este parametrizată, putând fi modelată printr-o ecuație matematică (de exemplu ecuația unei linii, a unui cerc, a unei parabole, a unei elipse, etc.). În principiu, transformata Hough poate fi utilizată pentru orice curbă para- metrizată, pentru orice formă pentru care se poate vota pentru parametrii de care este descrisă.
Principiul general al transformatei Hough constă în proiecția spațiului imaginii N-dimensional (notat cu I și definit prin variabilele i = 1 : N) într-un spațiu parametric de dimensiune M (notat cu H și definit prin variabilele j = 1 : M). Legătura dintre cele două spații se face printr-un model matematic xi = f(ai). Deci, obiectivul este să se găsească parametrii ce definisesc formele care urmează a fi detecate.
De exemplu, o linie dreaptă este determinată de ecuația: y = mx + p, unde m reprezintă panta, iar p este intercepția dreptei cu axa Oy. Pentru fiecare punct de interes din imagine, se calculează toate posibilele drepte ce trec prin el, și se incrementează elementele din spațiul parametric, numit și acumulator Hough. Dreptele relevante sunt localizate în maximele locale ale spațiului parametric. Astfel, transformata Hough este definită de ecuația:
I = {x, y} H = {m, p} (3.1)
Există două tipuri de transformate Hough, care depind de formularea ecuației matematice care leagă cele două spații:
– transformarea 1 la m (un punct din I este asociat cu m puncte din H);
– transformarea m la 1 (m puncte din I sunt asociate cu un punct din H).
În aplicațiile practice spațiul Hough H este discretizat. Rezultatul transformatei Hough este stocat într-un tabel cu două dimensiuni (în cazul spațiului (m, p) numit acumulator Hough). Prin urmare, fiecare poziție din tabel mi, pi are propriul său acumulator.
3.1 Transformata Hough pentru detecția cercurilor
Transformata Hough poate fi aplicată pentru detecția prezenței formelor circulare într-o imagine dată. Ecuația caracteristică a unui cerc de rază r și centru (a, b) este dată de:
(x – a)2 + (y – b)2 = r2 (3.2)
Acest cerc poate fi descris prin următoarele ecuații parametrice:
x = a + rcos
y = b + rsin (3.3)
Unde ia valori de la 0 la 360 de grade.
Astfel, cu ajutorul transformatei Hough se caută un triplet de parametri (a, b, r) care determină punctele (xi, yi) (Fig. 7.1). În Fig. 3.1 se ilustrează modul de operare al transformatei Hough pentru câteva puncte de pe cerc.
fig. 3.1 . Transformarea unui punct într-un cerc
fig. 3.2 Reprezentarea transformatei Hough pentru câteva puncte de pe cerc
Există două situații:
– cazul razei cunoscute;
– cazul razei necunoscute.
3.2 Cazul razei cunoscute
Dacă se cunoaște raza cercului ce urmează a fi detectat in imagine, atunci parametrii căutați de transformare se reduc la perechea (a, b) și prin urmare spațiul H este bimensional.
Se consideră un cerc de rază R si cu centrul (a0, b0), transformarea fiecărui punct (xi, yi) din spațiul I determină un cerc in spațiul H având centrul xi, yi si rază R – fig 3.1.
În mod similar se transformă toate punctele cercului din imagine. Rezultatul va fi reprezentat de mai multe cercuri a căror intersecție reprezintă punctul (a0, b0). Acest punct este determinat de valoarea maximă a acumulatorului, așa cum se va arăta în cele ce urmează.
Pentru determinarea unor forme geometrice mai complexe (de exemplu elipse, care aproximează mai bine pupila), dimensiunea spațiului Hough crește odată cu numărul de variabile necesare, dar aceasta determină creșterea considerabilă a timpului de rulare al algoritmului.
fig. 3.3 Reprezentarea grafică a principiului transformatei Hough pentru cercuri
Conform cu transformata Hough pentru cercuri, fiecare pixel în spațiul imaginii (I) corespunde unui cerc în spațiul Hough (H) și invers . Toate punctele cercului C din imagine sunt transformate în mai multe cercuri (C1, C2, C3, C4, …) cu aceeași rază r, iar intersecția acestora, O, reprezintă centrul cercului detectat (fig. 3.3). Coordonatele pe axa Oy ale celor două puncte simetrice A și B (cu aceleași coordonate x0 pe axa Ox) de pe cercul Hough C1 din fig. 3.3 sunt exprimate de următoarele ecuații:
(3.4)
în care ofsetul pe axa Oy este dat de:
(3.5)
Rezultatul transformatei Hough este stocat într-un tabel de dimensiunea imaginii numit acumulator Hough. Pentru fiecare cerc generat prin transformata Hough, valoarea acumulatorului este actualizată. Astfel, valorile termenilor din acumulator cu adresele determinate de punctele de pe cercurile Hough (C1, C2, C3, C4, …) sunt crescute cu o unitate. Valoarea maximă a acumulatorului reprezintă centrul O al cercului detectat, C .
3.3 Cazul razei necunoscute
În acest caz transformata Hough constă in determinarea a trei parametri (a0, b0, r0) care definesc puctele de interes de pe cerc. Aceste puncte se obțin prin căutarea punctului maxim din acumulator. De această dată spațiul va fi tridimensional.
Pentru fiecare punct (xi, yi) din spațiul I se va determina un con in spațiul H, determinat de variația razei r de la 0 la o valoare specificată. După transformarea tuturor punctelor de pe contur in același fel, intersecția acestora va determina o suprafață sferică care corepunde valorii maxime a acumulatorului. Aria este caracterizată de centrul (a0, b0) si de raza căutată r0.
fig. 3.4 . Transformarea unui punct în cazul utilizării transformatei Hough cu raza necunoscută
3.4 Algoritmul pentru detecția pupilei cu ajutorul transformatei Hough circulară (THC)
Organigrama pe care se bazeză algoritmul pentru detecția pupilei cu ajutorul transformatei Hough circulară (THC) este ilustrată în fig. 3.5
Deoarece în lucrarea de față se utilizează algoritmul THC pentru cazul razei necunoscute, matricea acumulator este un tablou cu trei dimensiuni, reprezentate de: coordonatele (x0, y0) ale imaginii și razele cercurilor r care se testează în vederea determinării razei optime a cercului care aproximează cel mai bine pupila .
Ecuția cercului poate fi scrisă în următoarea formă, caracterizată de ce de cei trei parametri (x0, y0, r):
(3.6)
În continuare se dorește a se detecta pupila care se știe că are formă ciculară, informație indispensabilă la aplicarea algoritmului Hough, deci, se ia în considerație aceasta referință în tehnica de segmentare, de detecție a formei dorite. Fiecare punct de pe cerc afirmă ecuația (3.6) unde centrul cercului este dat de și , aceastea sunt coordonatele centrului care urmează a se detecta și raza cercului care este deasemenea necunoscută – . Se dorește a se afla cei trei parametri, deci matricea acumulator va fi tridimensională. Mai întâi se vor de detecta contururile pe imaginea binarizată (în cazul de față s-a detectat cu funcția edge din matlab – detectează contururi folosind diverși operatori), apoi fiecare punct de pe contur (în imaginea binarizată fiecare pixel de valoare unu este pixel candidat pentru funcția houghcircle) va purcede la procesul de votare, returnând coordonatele sale x și y ca centrul unui cerc. Fiecare punct va vota pentru multiple centre și pentru multiple raze . Desigur se poate limita centrul pentru că se cunoaște dimensiunea. De asemenea se poate limita intervalul de voturi pentru raze, pentru că se cunoaște cât de voluminos poate fi obiectul care se caută în imagine. Prin urmare se caută un triplet (, , ) care este determinat de numărul maxim de suprapuneri ale contururilor cercurilor Hough. Astfel, acumalatorul iși incrementează valorile de la adresele punctelor de pe cercurile Hough. Cele mai multe voturi pentru parametrii căutați va determina un maxim în acumulator care reprezintă centrul cercului detectat.
Deoarece nu se cunoaște raza pupilei care urmează să se detecteze, algoritmul se execută
pentru un număr de 2n +1 valori de raze, în jurul valorii razei determinate în cadrul anterior.
Conform cu organigrama ilustrată în fig. 3.5, etapele principale ale acestui algoritm
sunt reprezentate de:
1. Achiziția imaginii ochiului (imaginile statice ale ochiului);
2. Filtrarea imaginii ochiului;
3. Binarizarea imaginii ochiului prin segmentare cu prag fix (0.12) pentru imagini statice în vederea extragerii pupilei (cu prag global/local adaptiv în funcție de condițiile de iluminare, pentru datele preluate in timp real cu o cameră in infrarșu);
4. Refacerea imaginii pupilei prin înlăturarea/diminuarea reflexiei corneene;
5. Extragerea conturului pupilei refăcute;
6. Se calculează matricea acumulator (un tabel de dimensiunea imaginii) pentru toate valorile razei, cuprinse în intervalui (rk-1 – n) și (rk-1 – n), unde rk-1 este valoarea optimă a razei pupilei, determinată în cadrul anterior, k -1. Pentru primul cadru, valoarea razei este egală cu 27 pixeli, determinată experimental. Pentru fiecare valoare de rază analizată, valoarea finală a matricei acumulator se obține prin actualizarea iterativă a valorii acesteia pentru fiecare cerc generat prin transformata Hough la parcurgerea întregi imagini.
7. Se determină valoarea maximă a acumulatorului, care reprezintă coordonatele cercului detectat, pentru fiecare valoare a razei din intervalul definit mai sus (în total sunt 2n + 1 raze). În continuare, dintre toate aceste valori ale razei, trebuie determinată raza optimă, care aproximează cel mai bine pupila.
8. Raza optimă corespunde valorii celei mai mari dintre toate valorile maxime aleacumulatorului (corespunzătoare tuturor celor 2n+1 raze analizate), care reprezintă coordonatele cercului de rază optimă, care aproximează cel mai bine pupila.
fig 3.5 Organigrama algoritmului pentru detecția pupilei cu ajutorul transformatei Hough circulare
3.5 Transformata Hough pentru detecția elipselor
Se cunoaște ca transformata Hough poate fi aplicată pentru orice tip de curbă, care poate fi descrisă parametrică astfel:
f (X, A) = 0 (3.7)
unde X este vectorul de poziție al punctului curent al curbei, iar A este vectorul de parametri, a cărui dimensiune depinde de tipul curbei.
Prin urmare, pentru detecția cercurilor dintr-o imagine, avem o descriere cu trei parametri, (x0, y0, r) , cum s-a arătat in paragraful precedent (3.6).
Problema majoră care apare în aceste cazuri este reprezentată de dimensiunea mare ocupată de matricea de acumulare, care devine un tablou cu trei dimensiuni pentru cazul cercului cu rază necunoscută.
Elipsa este descrisa de 5 parametri (x0, y0, a, b, ) , x0, y0 – coordonatele centrului elipsei, a – semiaxa majoră , b – semiaxa minoră și respectiv , care reprezintă inclinarea elipsei față de sistemul cartezian. Dacă s-ar implemeta transformata Hough cu toți acesti parametri, ar apărea problema unui spațiu de stocare foarte mare, necesar matricii de acumulare.
Pentru simplificarea analizei în cazul utilizării transformatei Hough pentru elipse se introduce parametrul de mai jos:
(3.8)
Prin urmare, pentru detecția cercurilor dintr-o imagine, avem o descriere cu trei parametri, (x0, y0, a, b ), de forma :
(3.9)
unde a și b reprezintă axele majoră și minoră ale elipsei.
Pupila poate fi aproximată cel mai bine printr-o elipsă. Atunci când pupila este plasată în centrul scleroticei, imaginea acesteia prezintă o formă circulară, rezultând a = b și k = 1 .
Atunci când pupila este plasată la extremitățile laterale (stânga/dreapta) ale scleroticei, imaginea acesteia devine eliptică, iar a < b, și k < 1 . Când pupila este plasată la extremitățile de sus și jos ale scleroticei, imaginea acesteia devine de asemenea eliptică, dar în acest caz a > b si k > 1.
Conform cu transformata Hough pentru elipse, fiecare pixel în spațiul imaginii (I) corespunde unei elipse în spațiul Hough (H) și invers. Toate punctele elipsei E din imagine sunt transformate în mai multe elipse (E1, E2, E3, E4, …) cu aceleași semiaxe, a și b, iar intersecția acestora, O, reprezintă centrul elipsei detectate (fig 3.6). Coordonatele pe axa Oy ale celor două puncte simetrice A și B (cu aceleași coordonate x0 pe axa Ox) de pe elipsa Hough E1 din
Fig. 3.6 sunt exprimate de următoarele ecuații:
(3.10)
în care ofsetul pe axa Oy este dat de:
(3.11)
Rezultatul transformatei Hough este stocat într-un tabel de dimensiunea imaginii numit acumulator Hough. Pentru fiecare elipsă generată prin transformata Hough, valoarea acumulatorului este actualizată. Astfel, valorile termenilor din acumulator cu adresele determinate de punctele de pe elipsele Hough (E1, E2, E3, E4, …) sunt crescute cu o unitate. Valoarea maximă a acumulatorului reprezintă centrul O al elipsei detectate, E.
fig. 3.6 Reprezentarea grafică a principiuluitransformatei Houghpentru determinarea elipselor
Astfel, conform cu ecuația (3.8), pentru detecția elipselor cu ajutorul transformatei Hough, matricea de acumulare poate fi reprezentată de un tablou cu patru dimensiuni: x0, y0 – coordonatele centrului detectat al elipsei, a – semiaxa majoră a elipsei și raportul k, care reprezintă raportul dintre semiaxa majoră și cea minoră a elipsei.
Prin utilizarea transformatei Hough pentru determinarea elipselor se îmbunătățește semnificativ detecția pupilei, astfel:
– când pupila este plasată în centrul scleroticei, k = 1 și elipsa descrisă de ecuația (3.8) devine un cerc de rază a, având coordonatele centrului x0, y0, iar matricea de acumulare prezintă trei dimensiuni (x0, y0, a); este cazul transformatei Hough pentru cercuri cu rază necunoscută prezentat în Paragraful 3.3.
– când pupila este plasată la marginile laterale (stânga/dreapta) ale scleroticei, imaginea acesteia poate fi aproximată printr-o elipsă cu k < 1 , iar matricea de acumulare prezintă patru dimensiuni (x0, y0, a, k);
– când pupila este plasată la marginile de sus și jos ale scleroticei, imaginea acesteia poate fi aproximată printr-o elipsă cu k > 1 , iar matricea de acumulare prezintă de asemenea, patru dimensiuni (x0, y0, a, k).
Față de transformata Hough pentru cercuri, avantajul acestei metode constă în faptul că se corectează semnificativ conturul detectat al pupilei, atunci când aceasta este plasată la extremitățile (stânga, dreapta, sus, jos) scleroticei, deoarece în aceste cazuri aceasta este aproximată printr-o elipsă, formă geometrică foarte apropiată de forma reală a pupilei.
3.6 Algoritmul pentru detecția cu ajutorul transfomatei Hough pentru elipse (THE)
Algoritmul pentru detecția pupilei cu ajutorul transformatei Hough pentru elipse (THE) se bazează pe organigrama ilustrată în fig. 3.5.
Deoarece, de această dată, se dorește determinarea elipsei optime, care aproximează cel mai bine pupila, algoritmul THE se execută pentru un număr de 2n + 1 valori ale semiaxei majore pentru fiecare valoare a raportului k în intervalul 0,6 – 1,3 (totalizând m valori). Aceasta înseamnă că algoritmul se va executa de (m (2n+1)) ori pentru fiecare imagine statică, respectiv pentru fiecare cadru al imaginilor video preluate cu o cameră in infraroșu in cazul prelucrării în timp real.
Timpul de execuție va crește foarte mult in acest caz si de aceea este importantă determinarea valorilor optime pentru m și n, astfel încât algoritmul THE să poată fi rulat in timp real într-un sistem de detecție a privirii. Se va considera că valoarea optimă a lui n este 3, iar pentru m se iau valori echidistante in intervalul
0.6 – 1.3. Deci în total se vor testa un număr de 105 valori pentru imagine statică. Evident, valorile lui m și n depind de puterea de procesare a unității de calcul disponibilă în sistemul pentru detecția privirii.
În acest caz se calculează matricea acumulator după metoda descrisă în Paragraful 3.5 pentru toate valorile semiaxei majore a, cuprinsă în intervalul și (ak-1 – n) și (ak-1 + n), pentru fiecare valoare a raportului k cuprins în intervalul 0,6 – 1,3, unde ak-1 este valoarea optimă a semiaxei majore a elipsei care aproximează pupila, determinată în cadrul anterior, k – 1. Pentru primul cadru, valoarea lui a este egală cu 27 pixeli, determinată experimental. Pentru fiecare valoare a lui a și k, valoarea finală a matricei acumulator se obține prin actualizarea iterativă a valorii acesteia pentru fiecare elipsă generată prin transformata Hough la parcurgerea întregi imagini.
În continuare se determină valoarea maximă a acumulatorului, care reprezintă parametrii elipsei detectate, pentru fiecare pereche a și k din intervalele definite mai sus (în total sunt m(2n+1) valori testate). Dintre toate aceste valori, trebuie determinată perechea optimă, care determină elipsa care aproximează cel mai bine pupila.
Perechea optimă aoptim, koptim corespunde valorii celei mai mari dintre toate valorile maxime ale acumulatorului (corespunzătoare tuturor celor m (2n+1) valori analizate), care reprezintă parametrii elipse optime, care aproximează cel mai bine pupila.
Acest algoritm este foarte asemănător cu cel prezentat în organigrama ilustrată în 3.7, cu deosebirea că de această dată matricea acumulator este un tablou cu patru dimensiuni, reprezentate de: coordonatele (x, y) ale imaginii, valoarea semiaxei majoră a a elipsei și valoarea raportului k dintre semiaxa majoră și cea minoră (așa cum rezultă din ecuația (3.11)).
Pentru simplificarea reprezentării, în organigrama ilustrată în fig 3.7, primele cinci etape ale algoritmului, identice cu cele utilizate în cadrul algoritmului THC, nu sunt reprezentate.
fig 3.7 Organigrama algoritmului pentru detecția pupilei cu ajutorul transformatei Hough pentru elipse
4. Reconstrucția imaginii pupilei
În ceea ce privește urmărirea ochilor în spectrul infraroșu folosind tehnica pupilei întunecate, forma imaginii pupilei proiectate intr-o imagine 2D nu este perfect circulară. Forma și raza acesteia depind de mai mulți factori, cum ar fi: poziția pupilei, condițiile de iluminare, reflexia corneeană, clipirile involuntare, tremurul fiziologic al ochiului, etc.
Înlăturarea reflexiei corneene se face prin reconstrucții morfologice. Se determină zona luminoasă de pe pupilă care reprezintă reflexia corneeană in cazul in care asceasta există în imaginea prelucrată, se face o dilatare a imaginii care este o operație morfologică ce realizeză creșterea ariei unei zone de „0” dintr-o imagine binară urmărind frontiera acesteia, pe exterior, cu un element morfologic dat. În continuare, se umplu golurile corespunzătoare reflexiei corneene, mai exact, umplerea este operația de colorare de imagine ce conțin pixeli cu același nivel de gri. Folosind această operatie morfologică, se poate realiza închiderea contururilor formate din lanturi de muchii. Se urmareste obținerea conturului obiectului de interes.
Din păcate, tehnica nu se poate utiliza in cazul în care reflexia corneeană se află pe conturul pupilei.
Se prezintă in continuare secvența de program implementată in MATLAB cu care s-a realizat reconstrucțiile morfologice ale pupilei:
img_BW = im2bw(img_filt,level); % convertește intensitate imaginii in 2 nivele: alb și negru
figure(2);imshow(img_BW);axis on;
title('Imaginea binarizata a pupilei detectate','FontSize',14, 'FontWeight'
,'bold');
set(gca,'fontsize',14);
se90 = strel('line', 3, 90);
se0 = strel('line', 3, 0);
%reprezintă secvențe de structurare a elementelor prin netezirea morfologică
BWsdil = imdilate(~img_BW, [se90 se0]);
%dilata ~imaginea img_BW conform cu structurile morfologice definite mai sus
BWdfill = imfill(BWsdil, 'holes');
%umple regiunile de imagine demarcate de contur si gaurile
img_out=~BWdfill;
imgBW = edge(img_out);
% funcție ce are ca input o imaginea binarizată sau intensitatea acestei imagini, și care returnează o altă imagine binarizată de aceeași dimensiune ca și cea care i s-a dat ca intrare, cu biți de unu unde funcția detectează contur și zero in rest.
figure(3),imshow(img_out); axis on;
title('Imaginea binarizata a pupilei refacute','FontSize',14,'FontWeight',
'bold');
5. Structura hardware a unei interfețe pentru detectarea direcției privirii
În acest capitol se va descrie cum se poate construi un detector al direcției privrii la un preț foarte mic (mai puțin de 50 €).
Soluția propusă a fost făcută din piesele disponibile pe piață. Ramele de protecție a ochilor reprezintă partea principală a designului. Un cablu de aluminiu care este un mâner pentru cablu USB și modulul de capturare este atașat la ochelarii de protecție. Modulul de capturare este alcătuit din camerele modificate (LED LifeCam VX-1000) și leduri IR. Imaginea ochiului este transmisă pe computer folosind conectorul USB. Construcția ochelarilor poate fi împărțită în trei etape: crearea modulului de captare, montarea hardware-ului și crearea illuminării în infraroșu. O listă de elemente care au fost utilizate în timpul construcției ochelari este prezentată în următoarea imagine:
fig. 5.1 Elemente necesare: 1) tub termocontractibil, 2)film negativ, 3)rezistori de carbon, 4)benzi de montare, 5) cablu de aluminiu, 6)leduri infraroșu 7)cameră web LifeCam VX-1000, 8)ochelari de protecție
5.1 Crearea modulului de capturare a imaginii
Modulul de capturare este reponsabil pentru furnizarea imaginii ochiului către calculator.
Este localizat aproape de ochi (aproape 5 cm), trebuie să fie cât mai mic posibil.
fig. 5.2 Dispozitiv de urmărire a privirii
Transformata Hough este un algoritm bazat pe prelucrarea imaginilor obținute în lumină infraroșu. Camerele web disponibile pe piață lucrează în spectrul vizibil. Este necesar de a modifica camera și de a monta un filtru adecvat care permite capturarea imaginilor in spectrul infraroșu. Primul pas în modificarea a camerei web este dezansamblarea carcasei exterioare. (fig. 5.3 A) Cipul cu senzor fotosensibil și obiectivul camerei este amplasat în interior. Următorul pas este îndepărtarea butonului de funcții suplimentare aflat în partea superioară a carcasei și a microfonului (fig. 5.3 B). Pentru a scoate complet circuitul integrat, trebuie să deșurubeze două șuruburi, să deconecteze cablurile conectorilor și să taie cablurile de alimentare ale microfonului (fig. 5.3 C). Acest circuit integrat este elementul central al modulului de captare în structura ochelarilor. Funcția modulului de captare este de a transfera imaginile pe care le-a luat în infraroșu unui computer. În obiectivul camerei trebuie instalat un filtru care oprește razele luminii vizibile și care emite radiații infraroșu. (fig. 5.3) afișează lentila defiletată a obiectivelor Microsoft LifeCam VX-1000 cu filtru de lumină vizibilă încorporat (cutia din sticlă). Acesta permite camerei web să capteze imagini într-un mod similar cu ochiul uman. Filtrul a fost eliminat. În loc de acesta este adăugat filtru infraroșu. Filtrele IR profesionale sunt relativ scumpe, de aceea ca o metodă alternativă se poate crea filtru infraroșu utilizat în construcția modulului de captare din film negativ. Această soluție academică nu pare însă foarte profesională, totuși dă rezultatele dorite. În acest fel modulul de captare este gata.
În ultima etapă de extracție a unei camere web este să pregătească cablul de conectare a modulului la computer. (fig 5.3G). În consecință, modificările actuale au primit o versiune minimalistă a camerei Microsoft LifeCam VX-1000 sub forma unui circuit integrat care va înregistra imaginea în spectrul infraroșu..
fig. 5.3 Extracția camerei web Microsoft LifeCam VX-1000: A) Îndepărtarea carcasei B) Îndepărtarea microfonului C) Demontarea circuitului integrat D) Modulul de captare E) Lentila camerei cu un filtru al lumini vizibele F) Asamblarea filtrului infraroșu G) Îndepartarea carcasei cablului H) Îndepărtarea elementelor inutile ale cablului
Mai jos se prezintă trei imagini ale ochiului în diferete spectre (fig. 5.4)
fig. 5.4 Ochiul obținut cu camera: A) fără modificări, B) fără filtre pentru spectrul vizibil, C) cu filtru IR
5.2 Montarea hardware
Modificarea ochelarilor de protecție este partea principală a construcției. Acestă se face prin tăiere acestora. În rama obținută se va monta un cablu de aluminiu. Modulul de captare se va plasa la capăutul firului.
5.3 Iluminăria în infraroșu
Se va monta 3 leduri IR în modulul de captare. Modulul va fi în prealabil conectat la calculator prin USB.
fig. 5.5 Diagrama de conectare a ledurilor
Pentru a calcula punctul de privire al utilizatorului este necesar a se face o mapare între poziția ochiului și coordonatele punctelor de pe calculator. Maparea se face prin stabilirea unei relații între poziția cunoscută a ochiului și poziția cunoscută de pe ecran. Procedura tipică în metodologia de urmărire a ochilor este măsurarea acestei relații printr-o operație de calibrare.
6. Rezultate experimentale ale algoritmului pentru detecția pupilei cu ajutorul
transformatei Hough circulară (THC)
În cazul transformatei Hough așa cum s-a menționat și în capitolele anterioare, procesarea imaginei se realizează pe bază de model. Deci algoritmul urmărește cel mai potrivit model geometric al imaginii care urmează a fi detectat.
Simulările sau efectuat pe un două set de imagini statice ale ochiului în vederea determinării preciziei algoritmului în situații diferite.
În cazul algoritmului ce aproximează pupila cu un cerc, componenta software a sistemului pentru detecția privirii utilizează transformata Hough circulară (THC) cu rază necunoscută. Principala problemă a acestei metode de detecție a direcției privirii este aceea că în realitate, forma imaginii pupilei nu este perfect circulară. Forma și raza acesteia depind de mai mulți factori, cum ar fi: poziția pupilei, condițiile de iluminare, reflexia corneeană, clipirile involuntare, tremurul fiziologic al ochiului, etc.
Algoritmul implementat pe baza transformatei Hough cu rază necunoscută se rulează pentru un interval de valori ale razei pupilei în jurul valorii determinate în cadrul anterior, având ca valoare de start al razei anterioare egală cu 27 de pixeli, valoare determinată experimental. Această metodă îmbunătățește semnificativ precizia determinării coordonatelor centrului pupilei, dar cu prețul creșterii timpului de execuție al algoritmului. Acesta reprezintă principalul dezavantaj al acestui algoritm și se datorează faptului că în cadrul aplicațiilor de detecție a direcției privirii, raza cercului detectat prin transformarea Hough (care aproximează cel mai bine conturul pupilei) nu este cunoscută. Se pune deci problema determinării numărului minim de raze care trebuie testate în jurul valorii razei determinate în cadrul anterior, astfel încât precizia algoritmului să nu scadă sub o valoare impusă.
6.1 Rezultatele experimentale ale algoritmului THC pe imagini statice ale ochiului
Algoritmul implementat testează pe 2 seturi de imagini statice: un set de 184 de imagini respectiv 40 de imagini (cu pupila plasate în diferite poziții ale ochiului). Pentru fiecare imagine se determină cu precizie conturul și centrul pupilei.
Pentru a aprecia precizia algoritmului, calitatea măsurării, este necesar a se determina erorilor relative de poziționare ale centrului detectat al pupilei față de centrul real al acesteia, pe cele două axe ale sistemului de coordonate Cartezian cu ajutorul următoarelor ecuații: (6.1), (6.2).
(6.1)
(6.2)
unde , sunt erorile absolute de poziționare ale centrului detectat în sistemului de coordonate Cartezian și se calculează cu următoarele ecuații (6.3), (6.4):
(6.3)
(6.4)
Pentru fiecare imagine, eroarea relativă a poziției centrului detectat al pupilei față de poziția sa reală s-a calculat cu ajutorul ecuației: (6.5)
(6.5) este distanța euclideana sau metrica euclidiana dintre centrul ideal și centrul detectat.
Pentru ambele seturi de imagini de test s-a calculat histograma erorilor relative de poziționare
ale centrului pupilei detectate față de poziția sa ideală în cazul utilizării algoritmului THC cu rază necunoscută.
6.1.1. Rezultatele experimentale ale algoritmului THC pentru setul 1 de imagini
În următoarele figuri (fig. 6.1.a), b) se prezintă conturul ideal al pupilei și cel detectat de algoritm, precum și centrul real al pupilei și cel detectat de algoritm, suprapuse peste imagini ale ochiului conținând două poziționări (centrală și respectiv laterală) ale pupilei față de sclerotică.
Din rezultatele simulării se observă că atunci când pupila este plasată în centrul scleroticii, eroarea relativă a poziționării centrului detectat al pupilei față de poziția sa sa reală este mai mică (ε = 2.3970%). În schimb, când pupila este plasată la una dintre marginile scleroticei această eroare crește (ε = 3.3898%), ca urmare a transpunerii cadrului într-o imagine 2D rezultă astfel o formă eliptică a pupilei și în același timp se micșorează raza acesteia.
fig. 6.1 a) Conturul ideal al pupilei și cel detectat cu transformata Hough circulară pentru poziționarea centrală a pupilei (ε = 2.3970%).
fig. 6.1 b) Conturul ideal al pupilei și cel detectat cu transformata Hough circulară pentru
poziționarea laterală a pupilei(ε = 5.3898%)
Algoritmul propus se bazează pe utilizarea transformatei Hough circulară cu rază necunoscută ca urmare a faptului că raza pupilei variază de la o imagine la alta în timpul testelor sau în timpul preluării imaginilor în vederea unei prelucrări statice ulterioare, din diferite motive (condițiile de iluminare, parametrii fiziologici ai ochiului, gradul de oboseală).
Pentru determinarea razei optime a cercului care aproximează cel mai bine conturul pupilei, algoritmul este rulat pentru diferite seturi de valori posibile ale razei pupilei.
Astfel, pentru imagini statice ale ochiului, pentru fiecare imagine, se testează un număr de valori posibile de raze, cuprinse în intervalul și , pentru 2n+1 valori posibile de raze, pentru n=0,1,…,10.
Rezultatele experimentale obținute pentru aceste valori testate sunt prezentate în restrâns în tabelul 6.1.
Se preferă testarea unui număr determinat de raze (dependent de precizia necesară pentru aplicație și puterea de procesare a unității de calcul) în vederea creșterii preciziei algoritmului în cadrul aplicațiilor pentru detecția privirii timp real, testare care se face în jurul razei optime determinată în cadrul anterior.
În figurile de mai jos (fig. 6.2 a) , 6.3 a), 6.2 a)) se prezintă erorile relative ale centrului detectat al pupilei față de centrele reale pe cele două direcții ale sistemului de coordonate (determinate cu ajutorul ecuațiilor (6.1, 6.2) întregul set de imagini de test și distanțele euclidiene dintre centrele detectate și cele ideale ale pupilei, pentru diferite valori ale numărului posibil de raze analizate (3, 7, 11).
De asemenea (fig. 6.2 b), 6.3 b) , 6.2 b)) se reprezintă erorile relative medii ale centrului pupilei detectate pe cele două direcții ale sistemului de coordonate ( , ), precum și eroarea relativă medie de poziționare a centrului pupilei detectate () pentru diferite valori ale numărului de raze testate (3, 7, 11).
fig. 6.2.a) Erorile relative ale centrului detectat al pupilei pe cele două direcții ale sistemului de coordonate și distanțele euclidiene dintre centrele detectate și cele ideale ale pupilei pentru algoritmul THC cu rază necunoscută (n = 1; 3 raze testate; 0.5810%, 1.2059%)
fig. 6.2 a) Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale și histograma acestora pentru întregul set de imagini de test în cazul algoritmului THC cu rază necunoscută (n = 1; 3 raze testate; %)
fig. 6.3.a) Erorile relative ale centrului detectat al pupilei pe cele două direcții ale sistemului de coordonate și distanțele euclidiene dintre centrele detectate și cele ideale ale pupilei pentru algoritmul THC cu rază necunoscută (n = 3; 7 raze testate; 0.5121%, 1.2368%)
fig. 6.3 b) Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale și histograma acestora pentru întregul set de imagini de test în cazul algoritmului THC cu rază necunoscută (n = 3; 7 raze testate; %)
fig. 6.4.a) Erorile relative ale centrului detectat al pupilei pe cele două direcții ale sistemului de coordonate și distanțele euclidiene dintre centrele detectate și cele ideale ale pupilei pentru algoritmul THC cu rază necunoscută (n = 5; 11 raze testate; 0.5148%, 1.0223%)
fig. 6.4b) Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale și histograma acestora pentru întregul set de imagini de test în cazul algoritmului THC cu rază necunoscută (n = 5; 11 raze testate; %)
tabel 6.1. Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale în cazul algoritmului THC cu rază necunoscută (raza inițială r = 27 pixeli) pentru setul 1 de imagini
Conform cu rezultatele experimentale ilustrate în tabelul 6.1 se remarcă creșterea preciziei algoritmului THC la creșterea numărului de raze testate într-un cadru, dar cu prețul creșterii timpului de execuție al algoritmului.
Astfel se observă că cea mai performantă detecție a pupilei se realizează pentru n = 3, când se testează un număr de 7 raze pentru fiecare cadru.
Principala problemă a acestei metode de detecție a pupilei este reprezentată de creșterea erorilor de detecție pentru situațiile în care pupila este plasată în marginile (stânga, dreapta, sus, jos) scleroticei. În aceste situații, deoarece imaginea pupilei nu mai este circulară (fiind mai apropiată de o formă eliptică), transformata Hough circulară determină creșterea erorilor de detecție, așa cum rezultă pentru cazul imaginii pupilei ilustrată în fig 6.1 b)
Rezultatele experimentale obținute pentru imagini statice ale ochiului ilustrează o detecție precisă a centrului pupilei, confirmând posibilitatea utilizării acestui algoritm pentru detecția direcției privirii în timp real pentru implementarea aplicațiilor în cadrul tehnologiilor asistive.
Viteza de rularea a algoritmului pe baza transformatei Hough poate fi crescută dacă se reduce numărul de raze posibile ale pupilei, testate de algoritm pentru fiecare cadru furnizat de camera video, astfel încât eroarea relativă în poziționarea centrului pupilei să nu depășească anumite limite impuse, dependente de aplicație.
6.1.2. Rezultatele experimentale ale algoritmului THC pentru setul 2 de imagini
Algoritmul se testează și pentru un alt set de imagini în care în care apar surse de zgomot după segmentarea imaginii, surse introduse de pixelii cu intensități foarte apropiate ca valoare de cei ai pupilei.
S-a testat un număr de valori posibile de raze, pentru un număr de 2n + 1 raze, cuprinse în intervalul (47 + n) și (47 – n) pentru n=0:5.
De asemenea, segmentarea pe bază de histogramă nu mai este eficientă în cazul de față, de aceea pentru elimina incertitudinea introdusă de această metodă, se aplică aplică segmentare cu prag fix de valoare egală cu 0.04, prag care nu ar da roade pentru setul de imagini anterior.
Atunci când pupila este plasată în centrul scleroticii, eroarea relativă a poziționării centrului detectat al pupilei față de poziția sa reală este mai mică (ε = 2.3970%). În schimb, când pupila este plasată la una dintre marginile scleroticei această eroare crește (ε = 3.3898%).
Reprezentarea erorilor relative pentru numărul de raze testate egal cu 7 (n = 3) și 11 (n = 5 se ilustrează în figurile 6.6 a) ,b) , repsectiv 6.7 a) b).
fig. 6.5 a) Conturul ideal al pupilei și cel detectat cu transformata Hough circulară pentru poziționarea centrală a pupilei (ε = 2.0725%)
fig. fig 6.5 b) Conturul ideal al pupilei și cel detectat cu transformata Hough circulară pentru poziționarea laterală a pupilei(ε = 6.5539%)
tabel 6.2 Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale în cazul algoritmului THC cu rază necunoscută (raza inițială r = 47 pixeli) pentru setul 2 de imagini
fig. 6.6.a) Erorile relative ale centrului detectat al pupilei pe cele două direcții ale sistemului de coordonate și distanțele euclidiene dintre centrele detectate și cele ideale ale pupilei pentru algoritmul THC cu rază necunoscută (n = 3; 7 raze testate; 1.3942%, 2.1132%)
fig. 6.3 fig. 6.6 b) Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale și histograma acestora pentru întregul set de imagini de test în cazul algoritmului THC cu rază necunoscută (n = 3; 7 raze testate; %)
fig. 6.7.a) Erorile relative ale centrului detectat al pupilei pe cele două direcții ale sistemului de coordonate și distanțele euclidiene dintre centrele detectate și cele ideale ale pupilei pentru algoritmul THC cu rază necunoscută (n = 5; 11 raze testate; 1.4798%, 3.2255%)
fig. 6.7 b) Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale și histograma acestora pentru întregul set de imagini de test în cazul algoritmului THC cu rază necunoscută (n = 5; 11 raze testate; %)
6.2 Rezultate experimentale ale algoritmului pentru detecția pupilei cu ajutorul transformatei Hough pentru elipse (THE) pe imagini statice ale ochiului
Algoritmul de detecție pupilei cu ajutorul transformatei Hough pentru elipse a fost testat pe aceleași două seturi de imagini statice ale ochiului ca și în paragraful anterior
Pentru fiecare imagine se determină cu precizie conturul și centrul pupilei, după cum
s-a arătat în paragraful 3.6
6.2.1 Rezultatele experimentale ale algoritmului THC pentru setul 1 de imagini
În figurile (fig. 6.8 a), b) ) se prezintă conturul ideal al pupilei și cel detectat de algoritm, precum și centrul real al pupilei și cel detectat de algoritm, suprapuse peste imagini ale ochiului conținând două poziționări (lateral dreapta și respectiv la marginea de sus) ale pupilei față de sclerotică, atunci când pupila prezintă o formă eliptică cu a < b (fig. 6.8 a) și respectiv a>b (fig. 6.8 b)).
Conform cu (fig. 6.8 a) când pupila este plasată în partea laterală a scleroticei, eroarea relativă a poziționării centrului detectat al pupilei față de poziția sa reală este mai mică (ε = 3,88%), decât în cazul utilizării transformatei Hough pentru cercuri pe o imagine cu pupila plasată similar în laterală, caz ilustrat în (fig. 6.8 b)) .
Când pupila este plasată la marginea de sus a scleroticei (așa cum se arată în fig. 6.8 b))
eroarea relativă a poziționării centrului detectat al pupilei față de poziția sa reală este practic
nulă, evidențiind creșterea semnificativă a precizie algoritmului THE, față de algoritmul THC.
Deoarece testele se efectuează pe un număr semnificativ de imagini ale ochiului, cu pupila plasată în diferite poziții și având diferite dimensiuni și forme (circulare sau eliptice), eventual cu variații ale condițiilor de iluminare, precizia algoritmului trebuie apreciată cu ajutorul metodelor de prelucrare statistică a rezultatelor experimentelor efectuate.
După cum s-a arătat în paragraful 3.5, matricea acumulatorului este reprezentată de un tablou cu patru dimensiuni (x0, y0, a, k). Astfel, pentru imagini statice ale ochiului, pentru fiecare imagine și pentru fiecare valoarea a raportului k cuprins în intervalul 0,6 – 1,3 se testează un număr de 2n + 1 valori posibile ale semiaxei majore a, cuprins în intervalul (27 – n) și (27 + n) (27 fiind raza medie determinată experimental pentru setul de imagini testat), pentru n = 0:5.
fig. 6.8 .a) Conturul ideal și cel detectat cu transformata Hough pentru elipse pentru poziționarea pupilei în partea dreaptă a scleroticei (ε = 3,88%)
fig. 6.8 .b) Conturul ideal și cel detectat cu transformata Hough pentru elipse pentru poziționarea pupilei în partea de sus a scleroticei (ε = 0%)
Precizia algoritmului THE este cu atât mai bună cu cât se testează un număr mai mare
de valori ale parametrului k din intervalul menționat mai sus pentru un număr cât mai mare de
valori ale semiaxei majore a elipsei, a. Indiscutabil acest lucru va determina creșterea semnificativăa timpului de execuție al algoritmului. Din acest motiv, în aplicațiile practice trebuie realizat un compromis între precizia dorită a algoritmului și timpul de execuție al acestuia. Astfel, în ceeace privește valorile testate pentru semiaxa majoră a elipsei se va proceda analog situației parametrului care reprezintă raza cercurilor testate în cazul algoritmului THC cu rază necunoscută. Conform cu forma pupilei din setul de imagini de test, pentru a se aproxima cât mai bine pupila printr-o elipsă, valorile parametrului k trebuie să fie cuprinse în intervalul
cuprins între 0,6 – 1,3. Desigur că cu cât numărul de valori testate din acest interval este mai mare, cu atât va fi mai mare și precizia aproximării pupilei printr-o elipsă. În cadrul algoritmului THE a cărui rezultate se vor prezeneta în continuare s-a considerat un număr de 15 valori echidistante ale parametrului k din intervalul cuprins între 0,6 – 1,3.
În cazul în care k = 1 ( a = b) , este de remarcat faptul că se obține cazul particular al algoritmului THC, când semiaxa majoră a elipsei este egală cu semiaxa minoră a acesteia și atunci pupila detectată nu mai este o elipsă ci este un cerc.
Pentru determinarea parametrilor optimi ai elipsei care aproximează cel mai bine conturul pupilei, algoritmul THE este rulat pentru 15 valori echidistante ale parametrului k și pentru diferite seturi de valori posibile ale semiaxei majore a a pupilei eliptice, pornind de la o valoare inițială egală cu 27 de pixeli, determinată experimental.
Rezultatele experimentale obținute pentru aceste valori testate sunt prezentate restrâns în tabelul 6.3.
tabel 6.3 Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale în cazul algoritmului THE cu rază necunoscută (raza inițială r = 27 pixeli) pentru setul 1 de imagini
În vederea creșterii preciziei algoritmului în cadrul aplicațiilor pentru detecția privirii în
timp real se preferă testarea unui număr determinat de semiaxe majore (dependent de precizia
necesară pentru aplicație și puterea de procesare a unității de calcul), în jurul valorii optime a
semiaxei majore, determinată în cadrul anterior.
În (fig. 6.9 a)) se prezintă erorile relative ale centrului pupilei detectate față de centrele reale pe cele două direcții ale sistemului de coordonate (determinate cu ajutorul ecuațiilor 6.1, 6.2) pentru întregul set de imagini de test și distanțele euclidiene dintre centrele detectate și cele ideale ale pupilei, pentru 15 valori echidistante ale parametrului k, pentru fiecare valoare a semiaxei majore a dintr-un număr total de 7 valori analizate (n = 3).
În (fig. 6.9 b)) se prezintă erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale, precum și histograma acestora pentru întregul set de imagini de test în cazul algoritmului THE, calculate cu ajutorul ecuației (6.5), pentru 15 valori echidistante ale parametrului k, pentru fiecare valoare a semiaxei majore a dintr-un număr total de 7 valori
analizate (n = 3).
De asemenea, pentru întregul set de imagini de test se reprezintă erorile relative medii ale centrului pupilei pe cele două direcții ale sistemului de coordonate (), precum șieroarea relativă medie de poziționare a centrului pupilei detectate ( ) pentru 15 valori echidistante ale parametrului k, pentru fiecare valoare a semiaxei majore a dintr-un număr total de 7 valori analizate (n = 3).
fig. 6.9.a) Erorile relative ale centrului detectat al pupilei pe cele două direcții ale sistemului de coordonate și distanțele euclidiene dintre centrele detectate și cele ideale ale pupilei pentru algoritmul THE
(n = 3; 7 valori ale lui a testate; k = 0,6:0,05:1,3; 0.4122 %, 0.7729%)
fig. 6.9 .b) Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale și histograma acestora pentru întregul set de imagini de test în cazul algoritmului THE (n = 3; 7 valori ale lui a testate; k = 0,6:0,05:1,3; )
Conform rezultatelor experimentale ilustrate în tabelul tabelul 6.3 se remarcă creșterea semnificativă a preciziei algoritmului THE față de algoritmul THC.
De asemenea, se remarcă creșterea preciziei algoritmului la creșterea numărului de parametri testați într-un cadru, dar cu prețul creșterii timpului de execuție al algoritmului.
Prin urmare se observă că cea mai performantă detecție a pupilei se realizează pentru n = 3 , când se testează un număr de 7 valori ale semiaxei majore a elipsei, pentru 15 valori echidistante ale parametrului k într-un cadru.
Algoritmul THE determină îmbunătățirea semnificativă a preciziei detecției pupilei pentru situațiile în care aceasta este plasată la extremitățile scleroticei (când aceasta devine eliptică) față de situațiile similare analizate cu algoritmul THC.
Rezultatele experimentale obținute pentru imagini statice ale ochiului ilustrează o
detecție foarte precisă a centrului pupilei, dar cu prețul creșterii semnificative a timpului de
execuție al algoritmului.
6.2.2 Rezultatele experimentale ale algoritmului THC pentru setul 2 de imagini
În continuare, pentru setul 2 de imagini, se prezintă în figurile (fig. 6.10 a), b) ) conturul ideal al pupilei și cel detectat de algoritm, precum și centrul real al pupilei și cel detectat de algoritm, în două poziționări diferite ale pupilei (lateral stânga și respectiv la marginea de sus) față de sclerotică, atunci când pupila prezintă o formă eliptică cu a < b (fig. 6.10 a) și respectiv a > b (fig. 6.10 b)).
Și de acestă dată se observă un rezultat mai bun în cazul în care pupila este plasată (fig. 6.10 a) în partea laterală stângă a scleroticei, eroarea relativă a poziționării centrului detectat al pupilei față de poziția sa reală este mai mică (ε = 3.277%), decât în cazul utilizării transformatei Hough pentru cercuri pe aceeași imagine, caz ilustrat în (fig 6.5 b)) ) .
În continuare se prezintă analiza statistică pe baza calculului erorilor relative pentru întreg setul de imagini pentru pentru 15 valori ale parametrului k, pentru fiecare valoare a semiaxei majore a dintr-un număr total de 7 valori analizate (n = 3).
fig. 6.10 .a) Conturul ideal și cel detectat cu transformata Hough pentru elipse pentru poziționarea pupilei în partea stângă a scleroticei (ε = 3.277%)
fig. 6.10 .b) Conturul ideal și cel detectat cu transformata Hough pentru elipse pentru poziționarea pupilei în partea de sus a scleroticei (ε = 2.9310%)
fig. 6.11.a) Erorile relative ale centrului detectat al pupilei pe cele două direcții ale sistemului de coordonate și distanțele euclidiene dintre centrele detectate și cele ideale ale pupilei pentru algoritmul THE
(n = 3; 7 valori ale lui a testate; k = 0,6:0,05:1,3; 1.4887%, 2.1158%)
fig. 6.11 b) Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale și histograma acestora pentru întregul set de imagini de test în cazul algoritmului THC cu rază necunoscută (n = 3; 7 raze testate;
tabelul 6.4. Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale în cazul algoritmului THE (raza inițială r = 47 pixeli) pentru setul 2 de imagini
Pentru utilizarea acestui algoritm în cadrul aplicațiilor pentru detecția privirii în timp real este necesară utilizarea unei unități de calcul foarte performantă și/sau scăderea numărului de parametri testați într-un cadru.
Conform rezultatelor prezentate, în vederea creșterii vitezei de execuție a algoritmului THE se poate reduce numărul de valori testate pentru parametrul k în jurul valorii 1, păstrându-se numărul de 7 valori testate pentru parametrul a, care determină detecția optimă a pupilei, așa cum rezultă din valorile experimentale obținute pentru ambii algoritmi, respectiv pentru ambele seturi de imagini (1 și 2), ilustrate în tabele (tabel 6.1, tabel 6.2 ) , respectiv (tabel 6.3, tabel 6.4) . Astfel, numărul de valori testate pentru parametrii a și k se aleg în funcție de precizia dorită a algoritmului pentru detecția pupilei în timp real și de puterea de procesare a unității de calcul disponibilă în cadrul sistemului.
În fig. 6.12 se prezintă comparativ rezultatele erorilor medii de poziționare ale centrului
pupilei detectate față de pozițiile sale reale, obținute în cazul ambilor algoritmi pentru detecția
pupilei, pe baza transformaei Hough circulară și pentru elipse.
Conform cu rezultatele ilustrate în fig…. se observă scăderea erorii medii de poziționare a centrului pupilei detectate față de poziția sa reală la creșterea numărului de raze testate într-un cadru în cazul algoritmului THC. Binențeles că acest lucru are ca consecință creșteria timpului de execuție al algoritmului la creșterea numărului de raze testate într-un cadru. Scăderea erorii se realizează până la o valoare minimă (corespunzătoare lui n = 3) după care aceasta rămâne aproximativ constantă, observându-se chiar o ușoară creștere a erorii pentru valori foarte mari ale lui n > 9. Când se testează un număr foarte mare de raze este posibil ca valoarea maximă acumulatorului să nu corespundă centrului cercului optim, care aproximează cel mai bine pupila, ci unui alt cerc de rază mai mică sau eventual mai mare (deoarece acesta poate conține un număr mai mare de puncte obținute prin aplicarea transformate Hough) al cărui centru va fi în acest caz diferit față de centrul real al pupilei. Cazurile corespunzătoare lui n>3 nu prezintă aplicativitate practică, datorită creșterii semnificative a timpului de execuție al algoritmului, cu menținerea aproximativ constantă a erorii de detecție.
Conform cu rezultatele experimentale ilustrate în fig…. se observă că eroarea medie minimă de poziționare a centrului pupilei detectate față de poziția sa ideală se obține pentru n = 3 când se testează un număr total de 7 raze.
În fig… se prezintă erorile medii de poziționare ale centrului pupilei detectate față de pozițiile sale reale pentru algoritmul THE în funcție de numărul de semiaxe majore testate.
Se observă o scăderea semnificativă a erorilor de poziționare ale centrului pupilei detectate față de cele obținute în cazul utilizării algoritmului THC (fig…, dar pe seama creșterii semnificative a timpului de execuție al algoritmului, așa cum rezultă din tabelul…
Conform cu rezultatele ilustrate în fig…. se observă că și în acest caz, eroarea minimă de poziționare a centrului pupilei detectate față de poziția sa reală se obține pentru n = 3 , când
se testează un număr de 7 valori pentru semiaxa majoră a elipsei.
Situațiile corespunzătoare lui n> 3 nu prezintă aplicativitate practică datorită creșterii
semnificative a timpului de execuție al algoritmului.
Concluzii:
Algoritmul de față demonstrează o precizie foarte bună pentru imagini cu o acuratețe înaltă și în același timp se observă o îmbunătățire dramatică atunci când este rulat pe un sistem de calcul mai mult mai performant (vezi anexele 1, 2 rezultate procesor i7).
Pe de altă parte, pentru imagini în care apar nuanțe cu aceeași intensitate ca a pupilei (gene, sprâncene) nu s-a mai aplicat segmentarea pe bază de histogramă ci s-a aplicat un prag de segmentare fix de 0.4. Cu toate acestea, s-a observat o detecție mai slabă în comparație cu imaginile în care genele și sprâncenele nu reprezintă o problemă.
Bibiografie:
ALGORITMI PENTRU DETECȚIA PUPILEI CU AJUTORUL
TRANSFORMATEI HOUGH
Digital Image Processing Using Matlab_complet
Rafael C. Gonzalez, Richard. Woods, Steven L. Eddins
Circular Hough Transform for Iris localization
Noureddine Cherabit, Fatma Zohra Chelali, Amar Djeradi
Circle Detection Using Hough Transforms Documentation
COMS30121 – Image Processing and Computer Vision
Jaroslav Borovika
openEyes: a low-cost head-mounted eye-tracking solution
Dongheng Li, Jason Babcock, and Derrick J. Parkhurst
The Human Computer Interaction Program
Iowa State University, Ames, Iowa, 50011
Starburst: A robust algorithm for video-based eye tracking
Dongheng Li, Derrick J. Parkhurst
Human Computer Interaction Program
Iowa State University, Ames, Iowa, 50011
Development of an untethered, mobile, low-cost head-mounted eye tracker
Elizabeth S. Kim, Carla Wall Linda Friedlaender, Adam Naples, Michael Perlmutter, Jennifer Kowitt, Giuliana Vaccarino Gearty , Fred Volkmar, Frederick Shic, Quan Wang, Seth Wallace
How to build low cost eye tracking glasses for head mounted system
Michał Kowalik
Faculty of Computer Science and Information Technology The West Pomeranian University of Technology, Szczecin Poland September 2010
Anexe
Anexa 1
Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale în cazul algoritmului THC cu rază necunoscută (raza inițială r = 27 pixeli
Anexa 2
Erorile relative de poziționare ale centrului pupilei detectate față de pozițiile sale ideale în cazul algoritmului THE (raza inițială r = 27 pixeli)
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Această lucrare prezintă o metodă robustă pentru detecția pupilei bazată pe procesarea imaginilor cu ajutorul transformatei Hough circulare si… [307403] (ID: 307403)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
