Sunteți pe pagina 1din 6

VIZIUNEA ARTIFICIALA

E un domeniu care folsoeste metode statistice care infereaza date din imagini cu ajutorul metodelor matematice, a fizii si
a teoriei invrii automate. Procesarea imaginilor se ocupa cu studiul prop. Imaginilor si cu transformarea acestora.
Utilizare: imbunatatirea calitatii imaginilor prin transformarea imaginilor (punerea in evidenta a detaliilor ascunse, a
trasaturilor de interes), compresie (reprez. compacta a imaginilor pt transmisie), restaurare (eliminarea elem de
degradare cunoscute), extragerea de trasaturi (localizarea anumitor sabloane). Domenii de cercetare: detectia de
trasaturi, reprezentarea conturelor, analiza imaginilor de profunzime, modelarea si reprezentarea formelor, stereo
viziunea, viziunea color, analiza miscarii, viziunea activa, invarianti, detectia obiectelor, recunoasterea obiectelor 3D,
arhitectura sistemelor de viziune. Domenii de aplicare: inspectie industriala, inginerie inversa, supraveghere si
securitate, recunoasterea fetei si a gesturilor, monotorizarea traficului, aplicatii spatiale, analiza imaginilor medicale,
realitatea virtuala, teleprezenta, telerobotica, vehicule autonome, cartografiere automata.
MODELUL CAMEREI. FORMAREA IMAGINII (MODELUL CU LENTILE SUBTIRI)
Elem. unei camere de luat vederi: ecran-sistem optic-apertura (prin ele trece axa optica). Parametrii senzorului: Sx, Sy
latimea i nlimea dispozitivului CCD[mm]; Ncx, Ncy nr elem senzoriale pe oriz/vert; dx=Sx/Ncx, dy =Sy/Ncy dist
dintre centrele a dou elem senzoriale consecutive pe oriz/vert. Parametrii imaginii (din memorie): Nfx, Nfy nr de
pixeli pe oriz/vert, prin eantionarea unei linii de imagine oriz/vert de ctre calculator; dpx=dx*Ncx/Nfx, dpy=dy*Ncy/Nfy
dimensiunea oriz/vert efectiv a unui pixel din memorie; Ncx/Nfx factorul de eantionare a liniilor de imagine oriz.
Tipuri de senzori: CCD(Charged Coupled Device) i CMOS. Procesul de formare a imaginii: Modelul cu lentile
subiri: 1. Raza optic care intr prin lentil paralel cu axa optic, trece pe cealalt parte prin punctul focal. 2. Raz
optic care intr prin lentil trecnd prin punctul focal emerge paralel cu axa optic. 3. Raza optic care intr n lentil
prin centrul O, nu i schimb traiectoria la ieire (raz principal). Focalizarea imaginii. Se realiz. prin: 1. reducerea
diametrului aperturii la un pct model teoretic; 2. introducerea unui sistem optic cmpus din lentile, diafragme i alte
componente, proiectat pt a face ca toate razele optice care i au originea de la acelai pct 3D din scen s convearg
ntr-un pct unic pe planul imagine. Imaginea e defocalizat dac proiecia cercului de confuzie pe planul imagine > 1
pixel i e focalizat dac e < 1 pixel.

MODELUL PERSPECTIVA AL CAMEREI PARAM INTRINSECI SI EXTRINSECI DISTORSIUNEA LENTILELOR
Ec.fundamentale ale modelului perspectiv: x=f*Xc/Zc, y=f*Yc/Zc (Xc,Yc,Zc coord pct P n sist de coord al camerei;
x,y,-f coord pct p n sist de coord al camerei). Param intrinseci: descriu caracteristicile optice i geometrice ale
camerei (carac. interne): distana focal (dist dintre centrul optic al sist de lentile al obiectivului i planul imagine), punctul
principal (coord centrului real al imaginii n pixeli), coeficienii de distorsiune radial i tangenial ai lentilelor obiectivului.
Distorsiunea lentilelor. Gradul de degradare al imaginilor datorat distorsiunii lentilelor este proporional cu valoarea
coef. Valoarea acestor coef depinde de calitatea lentilelor, distana focal. Ponderea cea mai mare n degradarea
imaginii o au componentele radiale. Alg de corectie: Pentru fiecare pixel de la locaia ntreaga (u,v) din imaginea
corectat D: 1. se calc coord (x,y) n sist de coord al camerei: x=u-u0/fx, y=v-v0/fy; 2. se calc coord coresp din imaginea
distorsionat (x,y)=(x+x,y+y); 3. pt (x,y) se calc coord coresp in pixeli: u=u0+x*fx, v=v0+y*fy; 4. se atribuie valorii
intensitatii de la locaia (u,v) din imaginea corectat D, valoarea interpolat din imaginea distorsionat S de la locaia
(u,v): D(u,v)=S(u,v). Param extrinseci: sunt necesari pt a transforma coord unui pct din sist de coord al lumii in sist e
coord al camerei si invers vectorul de translaie T = [Tx,Ty,Tz]^T; vectorul de rotaie r = [Rx,Ry,Rz]^T. n sist stereo cu
mai multe camere, param extrinseci ne permit s exprimm si relaia spaial dintre aceste camere. Mapare direct (din
sist lumii in sist camerei): XXw = [Xw,Yw,Zw]^T (sist. de coord. al lumii) -> XXc=[Xc,Yc,Zc]^T(sist.de coord.al
camerei). XXc = Rwc*XXw+Twc (Twc=[Tx,Ty,Tz]^T vect de translatie din sist lumii in sist camerei; Rwc matricea de
rotatie din sist lumii in sist camerei). Mapare inversa: XXw=Rcw*XXc+Tcw (Tcw=[Tx,Ty,Tz]^T=-Rwc^T*Twc;
Rcw=Rwc^T)

PROP GEOMETRICE ALE OBIECTELOR DIN IMAG BINARE 0=alb(255); 1=negru(0)
Aria = Suma(1,n)[Suma(1,m) {b(i,j)}]. Poziia/centrul de mas = acel pct al ob in care poate fi concentrata ntreaga
masa a sa fr a schimba momentul de ord 1 al ob pe direcia oricrei axe. Coord (x,y): x = (Suma(1,n)[Suma(1,m)
{i*b(i,j)}])/ Arie; y = (Suma(1,n)[Suma(1,m) {j*b(i,j)}])/ Arie. Orientarea = direcia de alungire/axa cu cel mai mic moment
de ord 2. Ea trece prin centrul de greutate. Proiecia oriz = v[i] = suma pixelelilor negri de pe linia i. Proiecia vert = v[i] =
suma pixelelilor negri de pe coloana i. Aria = suma proieciilor oriz = suma proieciilor vert.
DEFINITII. ETICHETARE ITERATIVA.
Vecini: 2 pixeli sunt intr-o relatie de vecinatate de tip N4 daca au o frontiera comuna. 2 pixeli sunt intr-o relatie de
vecinatate de tip N8 daca au cel putin un colt comun. Cale: Path(p[i0,j0] p[in,jn]) := { [i0,j0], [i1,j1], , [in,jn] | [ik,jk]
N4/8 [ik+1,jk+1] pt orice k=0 .. n-1}. Obiect: S := {p[i,j] | p[i,j] = 1}. Conectivitate: pS <-> qS (connected) if E Path (p
q) c S. Componente conexe: {pi e S , i = 1 n | pk <-> pj, pt orice (pk, pj) e S; k,j = 1 n}. Fundal: setul tuturor
componentelor conexe ale C(S) care au elem pe marginea imaginii. Toate celelalte componente conexe din C(S) se
numesc goluri. Frontiera: Boundary (S): = S = { p e S | E q e N4/8(p), q e C(S)}, C(S) complement of S. Interior:
Interior (S) = S - S. Etichetare alg iterativ: 1. Pas de initializare; 2. repeat propagare top-down & left-right a
etichetelor; propagare bottom-up & right-left a etichetelor; until nu mai apare nici o schimbare. procedure Iterate; //
Initializare a fiecarui pixel de 1 cu o eticheta unica / for L:=1 to NLINES do / for P:=1 to NCOLUMNS do / if I(L,P) =1 /
then LABEL(L,P):=NEWLABEL() / else LABEL(L,P):=0 / end for / end for / repeat / CHANGE:=false; // Iteratie top-down /
for L:=1 to NLINES do / for P:=1 to NCOLUMNS do / if LABEL(L,P)<>0 then / begin /
M:=MIN(LABELS(NEIGHBORS(L,P)U(L,P))); / if M <> LABEL(L,P) / then CHANGE:=true; / LABEL(L,P):=M / end / end
for / end for; / // Iteratie bottom-up / for L:= NLINES to 1 by 1 do / for P:= NCOLUMNS to 1 by 1 do / if LABEL(L,P)<>0
then / begin / M:=MIN(LABELS(NEIGHBORS(L,P)U(L,P))); / if M<> LABEL(L,P) / then CHANGE:=true; / LABEL(L,P):=M
/ end / end for / end for; / until CHANGE:=false / end Iterate.

ETICHETARE CU CLASE DE ECHIVALENTA. DETECTIE CONTUR
Necesita doar 2 iteratii peste imagine, dar are nevoie de o table (mare) pt inregistrarea echivalentelor. 1. Propagarea
etichetelor: De fiecare data cand se intalneste situatia in care doua etichete diferite se pot propaga la acelasi pixel, se va
propaga eticheta cea mai mica si echivalenta gasita se introduce intr-o tabela de echivalente; Fiecare intrare din tabela
de echivalenta consta intr-o pereche ordonata, valorile continute in fiecare pereche fiind valorile etichetelor gasite
echivalente; Dupa acest pas se gasesc clasele de chivalenta; Fiecarei clase de echivalenta i se asigneaza o eticheta
unica (valoarea minima sau cea mai veche din clasa). 2. Se parcurge imaginea si se asigneaza fiecarui pixel valoarea
etichetei coresp clasei de chivalenta din care face parte. procedure Classical / Initializare tabela de echivalente
globale si matricea de etichete / EQTABLE:=CREATE(); LABEL:=CREATE(); / Top-down pass 1 / for L:= 1 to NLINES
do / Initialize all labels on line L to zero / for P:= 1 to NCOLUMNS do / LABEL(L,P):=0 / end for / Process the line / for
P:=1 to NCOLUMNS do / if I(L,P):= 1 then / begin / A:= NEIGHBORS((L,P)); / if ISEMPTY(A) / then M:=NEWLABEL() /
else M:= MIN(LABELS(A)); / LABEL(L,P):=M; / for X in LABELS(A) and X<>M / ADD(X, M, EQTABLE) / end for; / end /
end for / end for; / Find equivalence classes / EQCLASSES:=Resolve(EQTABLE); / for E in EQCLASSES /
EQLABEL(E):= min(LABELS(E)) / end for; / Top-down pass 2 / for L:= 1 to NLINES do / for P:= 1 to NCOLUMNS do / if
I(L,P) = 1 / then LABEL(L,P) := EQLABEL(CLASS(LABEL(L,P))) / end for / end for / end Classical. Resolve() - alg pt.
gasirea comp conexe ale grafului definit de setul de echivalente (EQTABLE). Pb acestui alg: pt imagini mari cu multe
regiuni, tabela de echivalente poate deveni foarte mare. Alg det contur: 1. Cauta in imagine (top-down si left-right) pana
gaseste un pixel de start P0. Se defineste o variabila dir care stocheaza valoarea directiei ultimei mutari de-a lungul
conturului, de la pixelul precedent la cel curent. Valorile initiale se asigneaza astfel: dir = 0 pt. N4, dir = 7 pt. N8; 2. Se
cauta urmatorul pct de contur intr-o vecinatate de 3x3 n jurul pixelului curent in sens anti-orarar, ncepand cu directia:
(dir + 3) mod 4 (N4), (dir + 7) mod 8 if dir par (N8), (dir + 6) mod 8 if dir impar (N8). Primul pixel de 1 gasit este noul
elem de contur curent Pn. In acelasi timp se
actualizeaza valoarea dir. 3. Daca elem de contur curent Pn este egal cu elemntul P1 si daca elem Pn-1 este egal cu
P0, STOP. Altfel repeta pasul 2. 4. Conturul detectat este reprezentat de multimea: P0 Pn-2.

APROX CONTUR PRIN LINII POLIGONALE
Orice alg de aprox poligonala necesita ca pct sa fie divizate in grupuri, fiecare din acestea fiind aprox de cate o latura a
poligonului. O simplificare e de a duce o linie intre capetele fiecarui grup In loc sa cautam solutia optimala. Daca eroarea
de aprox e prea mare, grupul se poate sparge in subgrupuri pana eroarea de aprox devine acceptabila. Fie Q un contur
alcatuit din pct Pi(xi,yi) i=1,2,,n, si e eroarea maxima. Procedure POLIGONAL_APROX(Q) / begin / A:=Create_List();
/ B:=Create_List(); / i=Indexul_primului_pct(Q); / j=Indexul_celui_mai_indepartat_pct(Q); / Insert(j,A); Insert(j,B); // B =
(Pj) / Insert(i,A); // A = (Pj, Pi) / while((A!=NULL) { / Fie k l indecii ultimelor elem din A i B; / Fie Pk i Pl segmentelul
generat de ele; / Fie m indexul pct cel mai ndeprtat de segmentul PkPl de pe contur, ncepnd cu Pk i terminnd cu
Pl, parcurgnd conturul n direcie invers. / if ((d=Distance(Pm,PkPl)>e)/then Insert(m, A)/else
{Delete(k,A)/Insert(k,B);}}/end.
OPERATII MORFOLOGICE. APLICATII
Dilatare: A+B={z e Z^2 | z= a+b pt. un a e A si b e B}. Se aplica elem struct peste imag sursa. 1.Daca orig elem struct
coincide cu un pixel 0 (alb) din imag sursa nu fac nimic. 2. Daca orig elem struct coincide cu un pixel 1 negru din imag
sursa -> OR logic intre pixelii coresp elem struct si pixelii coresp din imag sursa. Apl: Umplere goluri, unire legaturi slabe
intre obiecte(istmuri). Eroziunea: AB={x e Z^2 | x+b e A pt. orice b e B}. Se aplica elem struct peste imag sursa. 1.
Daca orig elem struct(B) coincide cu un pixel 0 din imag sursa nu fac nimic. 2.Daca orig elem struct(B) coincide cu un
pixel 1 din imag sursa(pixel curent) si oricare dintre pixelii de 1 din elem struct se extind in afara ob(A) atunci schimb val
pixelului curent din imag sursa in 0. Apl: Eliminare ob mici(zgomote), spargere legaturi slabe intre ob(istmuri).
Deschidere: AB = (AB)+B. Apl: netezire contur, umplere goluri mici in ob, spargere legaturi slabe intre ob(istmuri).
nchidere: AB = (A+B)B. Apl: netezire contur, eliminare goluri mici intre ob, unire legaturi slabe intre ob(istmuri).
Proprieti: 1.A+B = B+A; 2.(A B)^C=A^C+B; 3.AB c A; 4.CcD=>CB c DB; 5.(AB)B=AB; 6.A c AB;
7.CcD=>CB c DB; 8.(AB)B = AB. Extragere contur: A-(AB) (cont int); (A+B)-A (cont ext). Umplere regiuni:
p in int conturului A (tb umplut in int cu 1"). 1. X0 = p, (p=1); 2. Xk=(Xk-1+B) A^C k=1,2,... 3. Daca Xk= Xk-1->stop.
Altfel repeta 2. Ob. final (umplut): AU Xk. Extragere comp conexe: A={Y1,Y2,....Yn}, Yicomp conexe; YcA; 1.p e Y.
X0=p; 2.Xk=(Xk-1+B)A k=1,2...; 3. Dak. Xk=Xk-1->stop (Y=Xk). Altfel repeta 2.Transf hit & miss a unui set A cu
elem struct(J,K): Ax (J,K)=(AJ) (A^CK).


TRASATURI STATISTICE HISTOGRAMA SIST FIR SI IIR
h(g)=Ng; Ng nr de pixeli din imag care au nivelul de intensitate egal cu g. 0<=g<=255. Fct distributiei de prob a
nivelelor de gri P(g) := prob ca nivelul de intensitate dintr-o regiune sa fie mai mica sau egala cu g: 0 <= P(g) <= 1. Fc
densitatii de prob a nivelelor de gri p(g)g := prob ca nivelul de intensitate dintr-o regiune sa fie cuprins intre g si g+g
p(g)*g = (dP(g)/dg)*g; p(g)=h(g)/M (M=height*width). Media: masur a intensitii medii dintr-o imag; u = Suma(0,H-
1)[Suma(0,W-1) {I(i,j)}] / M. Prag de binarizare: 1.Se calc histograma; T0=(gmax+gmin)/2; 2.La pasul k: G1: h(i)<Tk-1
=> uG1; G2: h(i)>Tk-1 => uG2; 3.Tk=(uG1+uG2)/2; 4.Se repeta 2-3 pana Tk-Tk-1 < eps. Deviaia standard: masura
contrastului mediu al imaginii (cat de lbrat e histograma); sigma=rad( Suma(0,H-1)[Suma(0,W-1){I(i,j)-u}^2] ).
Contrast ridicat histogram lat; contrast sczut histograma ngust. Deplasarea histogramei: Slide(I[i,j]) = I[i,j] +
offset; offset> 0 => imag mai luminoasa, offset < 0 => imag mai intunecata. Latirea/ingustarea histogramei:
Strecth/Shrink (I[i,j]) = FinalMIN + (FinalMAX - FinalMIN)* (I[i,j]- gMIN)/(gMAX - gMIN). Informaia: inf asociata nivelului
de intensitate g: Ig= -log2(p(g)) [bits]; info este ridicata cand este generat un nivel de gri cu prob mica. Entropia: info
medie din imag: H = - Suma(0,L) {p(g)*log2(p(g))} [bits]; cati biti avem nevoie pentru a codifica datele din imag: H(mare)
val. pixelilor sunt distribuite pe multe nivele de gri. Energia cum sunt distribuite nivelele de gri: E = Suma(0,L)
{p(g)^2}; E(mica) nr de nivele de gri este mare. Egalizarea histogramei: pr(rk)=nk/n, k=0..L, rk=k/L;
sk=T(rk)=Suma(j=0,k){pr(rj)} = Suma(j=0,k) {nj/n}, k=0..L. Remaparea nivelelor de gri ale imag de ieire: rk->sk.
Specificarea histogramei: 1.rk<->sk : sk=T(rk) = Suma(j=0,k) {pr(rj)} = Suma(j=0,k) {nj/n}; 2.sk<->vk :
vk=G(zk)=Suma(j=0,k){pz(zj)} = sk; 3.sk<->zk Fie z = zk, k = 0...L, zk va fi cea mai mica val a lui z care satisface cond:
(G(z)-sk)>=0.
Imag continua = fc continua de 2 var independente. Imag discreta (digitala) = secventa 2D de nr reale/intregi.
Regiune suport a raspunsului la impuls = cea mai mica regiune din planul (m,n) cu prop ca in afara acestei regiuni
raspunsul la impuls (h) este nul. Sist FIR sist a caror raspuns la impuls au o regiune suport finita. Sist IIR sist a caror
raspuns la impuls au o regiune suport infinita. Sist invariant la translatie = sist pt. care o translatie a intrarii va
determina o translatie coresp a iesirii -> forma raspunsului la impuls nu se schimba odata cu deplasarea impulsului in
planul (m,n).

CONVOLUTIE. FOURIER. ZGOMOT.
Convoluia intrrii cu rspunsul la impuls: y(m,n)=Suma(m= -inf,inf)[Suma(n= -inf,inf) {h(m-m,n-n)*x(m,n)}].
ImgSrc(i,j) -> ImgDst(i,j) = Gx*ImgSrc(i,j). Filtrarea imaginilor n domeniul frecvenelor: f(x,y) h(x,y)
F(u,v)*H(u,v); f(x,y) * h(x,y) F(u,v) H(u,v). 1.Se nmulete imag de intrare cu (-1)^(x+y) pt a centra transformata;
2.Se calc Transformata Fourier Discreta a imag F(u,v) din 1; 3.Se * F(u,v) cu o fc de filtrare H(u,v); 4.Se calculeaz
inversa Transformatei Fourier Discrete a rez din 3; 5.Se obine partea real a rezultatului din 4; 6.Se * rez din 5 cu (-
1)^(x+y).
Zgomot = Orice proces (n) care afecteaza imag (f) si nu face parte din scena semnalul initial - s): f(i,j) = s(i,j) + n(i,j)
(modelul zgomotului aditiv). Tipuri de zgomot: Salt&Pepper, Uniform, Gausian, Rayleigh, Exponential. Salt & Pepper:
Cauze: functionarea proasta a celulelor din senzorii camerelor, greseli ale locatiilor de memorie, erori de sincronizare in
procesul de digitizare, erori (pierderi de biti) pe canalul de comunicatie in cazul transmisilor imag. In modelul de zgomot
de tip salt & peper exista doar 2 val posibile, a si b. Se mai numeste si zgomot de tip impuls (speckle). Prob de aparitie a
fiecaruia este mai mica de 0.1; la valori mai mari decat acestea, zgomotul va domina imag. Pt o imag de 8 biti, valoarea
de intensitate tipica pentru zgomotul peper este 0 si pentru zgomotul salt este in jur de 255. FDP = A, pt g=a(piper); B, pt
g=b (sare). Zgomot uniform: Folosit pt generarea oricarui alt tip de zgomot. Folosit la degradarea imag pt evaluarea alg
de restaurare. FDP = 1/(b-a), pt a<=g<=b; 0, altfel. Zgomot gausian: Folosit pt modelarea proceselor naturale care
introduc zgomote i pt a modela zgomotul datorat naturii discrete a radiatiei si procesului de conversie in semnal electric.
Acest zgomot se datoreaza procesului de masurare. Pt modelarea acestui zgomot ar trebui folosita o distributie poisson,
dar cu aceasta este dificil de lucrat (matematic), deci se aprox printr-o distributie gaussiana. FDP = e^( (g-u)^2 / (2*
^2)) / (* rad(2*pi)). g=niv de gri, u=media zgomotului, =deviatia standard a zgomotului. Nucleu gausian: G(x,y)=
(1/(2*pi* ^2)) * e^ ( ((x-x0)^2+(y-y0)^2) / (-2* ^2)). Filtrare: Id(x,y)=G(x,y)I(x,y). SNR = rad((f^2/n^2) -1). 1.Se calc
f pe toata imag; 2.Se selecteaza o regiune cu intensitate uniforma S =0 si se calculeaza f= n.

FILTRE. DETECTIA MUCHIILOR. CANNY.
Filtrul Trece-Jos las s treac frecvenele joase i le blocheaz pe cele nalte. Se util. pt reducerea zgomotului aleator.
Filtrul Gaussian Trece-Jos obine o imag smooth; muchiile se netezesc foarte tare i nu se mai pot detecta. Filtrul Trece-
Sus las s treac frecvenele nalte i le blocheaz pe cele joase. Util pt mbuntirea muchiilor. Filtru medie
nlocuiete fiecare pixel cu media vecinilor; are efectul unui filtru trece-jos, reducnd zgomotul. Filtru median
nlocuiete pixelul cu pixelul din mijlocul secvenei vecinilor.
Segmentare = din info de nivel coborat a imag se extrage info de nivel ridicat: pct de muchie-contur-trasaturi de forma-
analiza; pct de muchie-trasaturi pt stereoreconstructie. Muchie = frontiera care separa 2 regiuni de intensitate diferita
(intensitatea variaza brusc intre cele 2 regiuni). Gradient = G[f(x,y)] = [f/x /n f/y]. Gx=[-1 1], Gy=[-1 / 1]. Gradientul
se poate aprox prin operatorii: Roberts, Prewitt, Sobel. Magnitudinea = |G|=rad(Gfx^2+Gfy^2). Directia = arctg(Gfy/Gfx).
Metoda Canny de detectie a muchiilor. Carac: maximizarea raportului semnal zgomot pt. o detectie corecta; localizare
buna la marcarea pct de muchie; minimizarea nr. de raspunsuri pozitive la o singura muchie(eliminarea nonmuchiilor).
Alg: 1.Filtrare zgomot cu un filtru Gaussian; 2.Calculul modulului si directiei gradientului(ex. Sobel); 3.Supresia non-
maximelor; 4.Thresholding cu histereza. 1 Zgomotul din imag este o info de frecven nalt care se suprapune peste
imag original. Aceasta induce apariia unor pct de muchie false. Zgomotul inerent procesului de achiziie a imaginilor
are un model Gausian i se poate elimina cu un filtru omonim; 2 Gfx(x,y) = f(x,y)*Sx(x,y); Gfy(x,y) = f(x,y)*Sy(x,y). 3
subierea muchiilor prin pstrarea doar a pct de muchie care au modulul maxim al gradientului de-a lungul direciei de
variaie a intensitii. Primul pas const n cunatificarea direciilor gradientului n 4 intervale de 45 grade: de la 0 invers
2 1 0 3 2 1 0 3 (22,5 nainte de 0 si dupa). n funcie de direcia gradientului ntr-un punct dac modulul gradientului n
acel pct este mai mare dect cei 2 vecinii (de pe direcie), atunci pct se reine, altfel se elimin. 4 unirea pct de muchie
de pe un contur 1. Se fol 2 praguri: L (low) i H si se aplica schema de binarizare: fiecare pct cu magnitudinea sub L
se eticheteaza ca non-muchie (non-edge); fiecare pct cu magnitudinea peste H se eticheteaza ca punct de muchie-tare
(strong edge); fiecare pct cu magnitudinea cuprinsa intre L si H se eticheteaza ca punct de muchie slaba (weak edge).
2. Aplica un alg similar celui de etichetare pentru marcarea pct de muchie slabe daca acestea sunt conexe cu pct de
muchie tari si eliminarea acelora care nu sunt conexe cu pct de muchie tari.

TRESHOLDING CU HISTEREZA
O implementare eficient a pasului 2 fol o coad pentru a ine coord pct de muchie tare. Alg: 1.Parcurge imag de la stg
la dr si de sus n jos si gseste primul punct de MUCHIE_TARE si pune coord sale n coad. 2.Ct timp coada nu e vid
: extrage primul pct din coad; gseste toi vecinii de tip MUCHIE_SLAB ai acestui pct; marcheaz n imag vecinii
acestui pct ca puncte de MUCHIE_TARE; pune coord acestor pct n coad; continu cu urm pct din coad; 3. Continu
de la pasul 1 cu urm pct de MUCHIE_TARE. 4. Elimin toate pct de MUCHIE_SLAB din imag, dndu-le valoare
NON_MUCHIE (0).
MAPARE DIRECTA COMPLETA
Metod aprox de msurarea a dist cu o camera mono: Date de intrare: Param intrinseci ai camerei: fx,fy = distanta
focala in unitati de pixeli orizontali/verticali, (u0, v0) = coord pct principal; Param extrinseci ai camerei: = unghiul de
inclinare al camerei fata de orizontala (valoare pozitiva), height = inaltimea camerei fata de originea sist de coord al
lumii, (us, vs) = coord imagine ale punct curent (de masurat) P0(X,0,Z) din planul orizontal, (u, v) = coordo imagine ale
unui punct P(XX,YY,Z) aflat la o inaltime YY deasupra planului orizontal si la un offset lateral XX fata de axa
longitudinala a sist de coord al lumii OZW. Date de iesire: Coord 3D ale pct P0 si P in sist de coord al lumii. Obs: pt a
calcula inaltimea pct P tb ca acesta sa aiba aceasi adancime ca si P0 (pct din planul orizontal). Cele 2 pct pot avea
ofseturi laterale X si respective XX diferite). P0 si P tb sa fie ambele continute intr-un plan perpendicular pe OZW.
STEREOVIZIUNE ETAPELE PROCESULUI DE STEREOVIZIUNE
Ec. fundamentale ale modelului pinhole: x = f * X/Z, y = f * Y/Z. P(X,Y,Z) pct 3D in sist. coord. al camerei, p(x,y,-f)
proiecia pe planul imagine. Plecnd de la (x,y) putem estima doar ec dreptei de proiecie dar nu si adancimea Z.
Msurarea lui Z -> Stereoviziune. Configuraii sisteme stereo: 1.Canonica(cu axe paralele) - model teoretic imposibil de
obtinut practic -> rectificarea imaginilor; 2. Cu axe coplanare (neparalele) model teoretic; 3. Generala. Etape: 1.
Realizarea sist stereo prin montarea a 2 camere pe un suport rigid, in configuraia dorita; 2.Calibrarea camerelor(param
intrinseci: f, punct principal; param extrinseci: RCW, TCW). 3. Achiziia de perechi imag sincrone. 4.Rectificarea
imaginilor 5. Extragerea si selecia de trasaturi de interes din ambele imag (muchii verticale sau pixeli la reconstrucia
dens.). 6.Realizarea corespondentei dintre trasaturile imag stnga si dreapta. 7. Calculul coord 3D ale pct reconstruit in
sist de coord al camerei / lumii.

CORELATIE. GEOMETRIE EPIPOLARA
Stereo-corelaia const n punerea n coresponden a unui pct din imag stng PL cu corespondentul su din imag
dreapt PR, unde PL si PR sunt proieciile imagine ale aceluiasi pct 3D PW. Exist 2 abordri majore a acestei pb:
reconstrucia doar a unor trsturi de interes (ex: puncte de muchie); reconstrucia tuturor pct din imag (dac este posibil
procesul de corelaie pt un anumit punct) reconstrucie dens. Reducerea spaiului de cutare este o modalitate
crucial care permite realizarea corespondenei n timp real att prin alg software ct si hardware. n plus, se mreste
robusteea procesului de corelare prin reducerea fals-pozitivelor (prin limitarea spaiului de cutare).Reducerea spaiului
de cutare are la baz constrngerile impuse de geometria epipolar.
Planul format de pct 3D PW si centrele optice OL si OR ale celor 2 camere se numeste plan epipolar. Linia epipolar
este dreapta de intersecie dintre planul epipolar si planul imagine. Unui pct 3D PW i vor corespunde 2 linii epipolare: eL
si eR. Intersecia dreptei ce trece prin cele 2 centre optice OL si OR cu cele dou planuri imagine se realizeaz n 2
puncte fixe (a cror poziie depinde numai de param interni ai sist stereo) numite puncte epipolare (cte unul pt fiecare
camer). Toate dreptele epiploare ale unei camere se intersecteaz n punctul epipolar corespunztor. Pt fiecare pct
PL(xL,yL) din imag stng, corespondentul su din imag dreapt PR(xR,yR) se va gsi pe linia epipolar
corespunztoare eR avnd urmtoarea ec: aR*x+bR*y+cR=0. Param liniei epipolare eR pot fi calculai cunoscnd
matricea fundamental F, estimabil dac se cunosc param interni ai sistemului stereo: |aR / bR / cR| = F*Pl.
ESTIMAREA PARAMETRILOR INTERNI SI EXTERNI
Se face prin minimizarea erorii totale dintre imag mi ale pct de control detectate din imag 2D si proieciilor mi ale pct de
control 3D, calculate folosind modelul camerei care include ca si variabile param de estimat: ||mi - mi ||.



CULOARE CANNY SEGMENTAREA IMAGINILOR COLOR
Invarianta la translatie si scalare: Hue invarianta la scalarea uniforma a RGB: H(R,G,B)=H(R,G,B). RGB-norm
invarianta la scalarea uniforma RGB: r,g,b(R,G,B)=r,g,b(R,G,B). Hue invarianta la translatia uniforma RGB:
H(R+, G+, B+) = H(R,G,B). RGB-norm nu prezinta invarianta la scalarea uniforma RGB: r,g,b(R+, G+,
B+)r,g,b(R,G, B). Singularitate Hue pt. RGB ~= 0. R=G=B=0 => H nedefinit. Calcularea H in zone cu intensitatea
mica => erori numerice.
Metoda Canny pe imagini color: 1.Filtrare zgomot cu un filtru trece jos; 2.Calcul modulului si directiei gradientului;
3.Supresia non-maximelor; 4.Thresholding cu histereza. 2 Pixel (x,y) => culoarea : C(x,y)=(R,G,B). Gradient =>
Jacobian (matricea derivatelor partiale ale vectorului C). Directia - vectorul propriu al J^T*J corespunzator celei mai mici
valori propri.
Segmentarea imaginilor color: Segmentare=identificare zone omogene din imag. Segmentare imagini
color=identificare regiuni (comp conexe) care satisfac criterii de omogenitate, bazate pe trasaturi derivate din comp
spectrale. Aceste comp sunt definite in sp. de culoare considerat. 1.Regiune (def bazata pe notiunea de pixel) = comp
conexa a unui set de pixeli, specificata printr-o fc de aparteneta la o clasa definita in sp. de culoare considerat: (a)Cul
pixelului este intr-un semispatiu definit de un plan; (b)Cul pixelului se incadreaza intr-un poliedru; (c)Cul pixelului se
incadreaza intr-o celula Voronoi data de niste pct reprezentative; (d)Fc de apartenta fuzyy la o clasa defuzzificata de o
operatie de taiere/separare. (2)Regiune (def bazata pe notiunea de regiune) = setul maximal de pixeli pt care este
satisfacuta o conditie de uniformitate: (a)Regiuni uniforme obtinute prin cresterea unui bloc/seed prin unirea altor pixeli
sau blocuri de pixeli; (b)Regiuni uniforme obtinute prin impartirea unor regiuni mai mari care nu sunt omogene. (3)
Regiune(def bazata pe notiunea de muchie) = set de pixeli delimitati de pixeli de muchie (countur); (4)Regiune =
corespunde unei suprafete a unui obiect din material omogen.
SEGMENTARE LA NIVEL DE PIXEL
Se face in spatiul trasaturilor(culorilor). Abordari: 1.Bazate pe histograma: detectia maximelor si gruparea culorilor
(clustering) in jurul maximelor + clasificarea pixelilor in aceste clustere; 2.Clustering in spatiul de culoare pct din spatiul
de culoare sunt grupate in jurul unor centre reprezentative + clasificarea pixelilor in aceste clustere; 3.Clustering fuzzy
fc de aparteneta fuzzy evaluate pentru totii pixelii si clusterele fuzzy + obtinerea clusterilor de pixeli prin defuzzificare si
diviziune in seturi conexe maximale.

CLUSTERING IN SPATIUL DE CULOARE
Gruparea culorilor si asignarea ficarui grup a unei culori echivalente (medie) prin cuantizare (impartirea spatiului
trasaturilor in subspatii de dim fixe sau clustering: supervizat - info. apriori: se stiu nr. clusterilor sau nesupervizat fara
info apriori.
REGION GROWING
Are la baza un proces iterativ prin care regiuni ale imag sunt fuzionate incepand de la regiuni primare (pixeli sau alte
regiuni mici celule de baza). Iteratiile de crestere se opresc atunci cand nu mai sunt pixeli de procesat. Alg: 1.Se
segmenteaza imag in celule de baza (dim >= 1 pixel). 2.Fiecare celula este comparata cu vecinii ei folosind o masura de
similaritate. Daca valoarea metricii de similaritate < prag celulele sunt fuzionate intr-un fragment mai mare si se
actualizeza trasaturile regiunii folosite la masura similaritatii (prin mediere ponderata). 3.Se continua procesul de
crestere al fragmentelui prin examinarea tuturor vecinilor pana cand nu se mai pot realiza fuziuni. 4.Se trece la
urmatoarea celula ramasa nemarcata si se repeta pasii 2-3. Algoritmul se opreste atunci cand nu au mai ramas celule
nemarcate. O implementare eficient foloseste o coad: 1.Parcurge imag de la stnga la dreapta si de sus n jos si
gseste primul seed point (celula de baza) si pune coord sale n coad si se stabileste o eticheta unica pentru aceea
regiune; 2. Ct timp coada nu este vid, repeta: extrage primul pct din coada, gseste toi vecinii pct care satisfac cond
de similaritate, marcheaz n imag vecinii pct cu eticheta seed pointului initial, pune coord acestor puncte n coad,
continu cu urmtorul pct din coad; 3.Continu de la pasul 1 cu urmtorul seed point (neparcurs inca).
METRICI
2 pct : P1(x1,y1), P2(x2,y2). Dist Euclidiana - dist geometrica intre 2 pct in spatiul bidimensional, definita ca linia
dreapta care le uneste: d(P1,P2) = rad((x1-x2)^2+(y1-y2)^2). City block sau Manhattan - dist e definita ca si calea de
parcurgere prin unul din cei 4 vecini (sus, jos, stanga, dreapta): d(P1,P2) = |x2-x1| + |y2-y1|. Chessboard sau
Chebyshev (miscarea regelui pe tabla de sah) - parcurgerea se poate realiza in cele opt directii spatiale: d(P1,P2) =
max(|x2-x1| , |y2-y1|).

CONTINUT PPT-URI
1 Viziune artificiala, Procesarea Imaginilor.
2 Modelul camerei, Param senzorului, Param imaginii, Tipuri de senzori, CMOS vs CCD, Pattern
Bayer, Formarea Imag, Focalizarea Imag, Modelul pinhole al camerei, Param intrinseci si
extrinseci,
Modelarea i corecia distorsiunilor lentilelor, Mapare directa si inversa, Matricea de rotatie
3 Aria, Centrul de masa, Orientare, Proiectii, Run-Length
4 Vecini, Cale, Obiect, Conectivitate, Comp conexe, Fundal, Frontiera, Interior, Etichetarea comp
conexe,
Etichetare cu clase de echivalenta, Contur tracing(detectie contur), Aprox contur prin linii poligonale
5 Dilatare, Eroziune, Deschidere, Inchidere, Extragere Contur, Umplere regiuni, Extragere
comp
conexe, Transf Hit and Miss, Skeletizare
6 Histograma, Fct distrib si dens de prob, Media, Prag binarizare, Deviatia standard (contrast),
Remaparea nivelelor de gri, Informatia, Entropia, Energia, Egalizarea si specificarea histo
7 Imag cont si discreta, Fct Dirac si Kronecker, Sist liniar, Regiune suport, Sist invariant la
translatie,
Convolutia intrarii cu rasp la impuls, Trans Fourier / inversa / discreta, Filtrarea imag in domeniul
frecv
8 Zgomot, Salt & Pepper, Uniform, Gaussian, Nucleu Gaussian, Raportul semnal zgomot(SNR)
9 Filtre: trece sus, trece jos, gauss, medie, median, Laplace, liniar,
10 Gradient, Magnitudine, Directie, Canny pt detectia muchiilor, Supresia non-maximelor,
Tresholding cu histereza, Operatori de ordin 2, Laplacianul Gaussianului, Detectia muchiilor cu
LoG
11 Mapare directa completa, Stereoviziune, Reconstructie 3D, Corelatie, Plan, linie, puncte
epipolare,
Stereocorelatie, Functia de corelatie, Calibrarea camerelor, Estimarea parametrilor
12 RGB,CMY, HSI(modele de culoare), Prop trasaturilor cromatice, Canny pe imag color,
Segmentarea imag color, Segmentare la nivel de pixel, Clustering in spatiul de culoare,
Region Growing, Metrici de distanta, Region Splitting

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