NPT1 Teorija

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

Interpolacija se javlja kad se menja velicina ili oblik slike, vrsi se aproksim., tj.

Kada
treba promeniti broj piksela na slici, nuzna kod promene perspektive ili rotacije.
Neadaptivni algoritmi interpolacije tretiraju sve piskele jednako. Sto vise susetnih
piksela obuhvataju to su tacniji, time se povecava i vreme obrade, koriste se za
preoblikovanje i promenu velicine slike. Neadaptivni algoritmi interpolacije su:
najblizi sused, bilinearna, bikubicna, spline, lanczos..
Adaptivni algoritmi interpolacije se menjaju u zavisnosti sta interpoliraju.
Dizajnirani kako bi smanjli pojaviljivanje artefakata prilikom povecanja fotografija.

Najblizi sused: Interpolacija nutlog reda, ponavljaju se vrednosti piksela.


Najjednostavniji algoritam u kojem se za interpoliranu vrednost uzima poznata
vrednost najblize tacke u osnovnom rasteru. Prednost je sto je jednostavan, a
mana to sto se javljaju stepenicaste ivice i neprirodna tekstura slike.

Bilinearna interpolacija: Interpolacija prvog reda. Koeficijenti interpolacije se


racunaju na osnovu udaljenosti tacaka iz osnovnog rastera od interpolac. Tacke.
Za razliku od najblizeg suseda, ovaj algoritam koristi 4 najblize vrednosti tacaka
locirane u dijagonalnim pravcima. Zahtevnija od najblizeg suseda, ali su i rezultati
bolji. Interpolacija se zasniva na usrednjavanju 4 vrednosti po formuli: Y=(1-a)(1-
b)X(m,n)+(1-a)bX(m+1,n)+a(1-b)X(m,n+1)+abX(m+1,n+1)

Bikubicnu isterpolacija: Dostra slozeniji algoritam sa dosta boljim kvalitetom


interpolirane slike. Koeficijent interpolacije se racuna na osnovu udaljenosti od
tacaka iz osnovnog rastera od interpolacione tacke. Koristi se 16 piksela odnosno
okolina 4x4. Pikseli blizi interpoliranom pikselu imaju veci uticaj. Osnovna ideja
ovog algoritma je da se prvo uradi kubicna interpolacija po 1 dimenziji pa po 2.

Kubicna interpolacija: jednodimenzioni algoritam interpolacije opisan


jednacinom : Y(n)= (suma od m=0 do 3) X(m)*w(d) .Izracunavanje vrednosti
intepolacione tacke pri bikubicnoj interpolaciji vrsi tako sto se nad 4 reda od po 4
tacke poziva kubicna interpolacija. Dobijena 4 rezultat smestaju se u niz od 4 el., i
nad njima se ponovo radi kubicna.

Nedostaci nedaptivne interpolacije: Najblizi sused-ponavljaju se vrednosti piksela,


bilinearna-usrednjavanje vrednosti (2x2), bikubicna- uzima se u obzir udaljenost
suseda (4x4). Cesto dovode do blur-ovanja slike, stvaraju stepenicaste ivice,
odnosno artifakte, pa se zato koriste adaptivne metode.
Geometrijske transformacije menjaju polozaj piksela, dok interpolacioni algoritmi
menjaju vrednost piksela.
Pomeraj (translacija): Tx: x’=x+dx, Ty: y’=y+dy
Skaliranje: Tx: x’=sx*x, Ty: sy*y
Smicanje: x’=x+bx*y, y’=y+by*x
Rotacija: x’= x*cosα-y*sinα, y’= x*cosα+y*sinα
Afine geometrijske transformacije: kod njih linija ostaje linija, trougao ostaje
trougao, pravougaonik postaje paralelogram, udaljenost izmedju tacaka se ne
menja, paralelne linije ostaju paralelne.
Nelienarne (projektivne) transformacije: kod njih linija ostaje linija, udaljenost
izmedju tacaka se menja, paralelne linije ne ostaju paralelne. Za ovu
transformaciju su nam potrebne 4 tacke na ulaznoj slici i odgovarajuce 4 tacke na
izlaznoj slici.

Refleksija oko proizvoljne prave koja prolazi kroz koordinatni pocetak : refleksija
oko proizvoljne prave y=mx (m koeficijent pravca),vazi: m=tg(teta), d=xsinθ-ycosθ
Izlazne tacke dobijamo osnom simetrijom tj. x’=xcos2θ+ysin2θ,y=xsin2θ-ycos2θ,
x’=x-2dsinθ, x treba da se translira na levo pa je zato –, transila se za 2dsinθ
Kada iskoristimo d=xsinθ-ycosθ i adicione: x’=xcos2θ+ysin2θ
Odgovarajuca matricna jednacina za ovo :

Rektifikacija je postupupak kojim se ispravlja perspektivna distorzija (osobina kod


koje se prave koje se ne seku u prostoru seku na slici).
Kako naci matricu homografije?
Resavamo sistem sa slike(levo): (posle toga podelimo prve 2 jednacine sa trecom,
pa iz dobijene 2 jednacine pomnozimo sa istom tom trecemom, pa pomnozimo x’
sa onim iz zagrade, pa poredjamo po koeficijentima aij), rezultat je levo:

Otklanjanje perspektivne distorzije: korekcija do tacnosti slicnosti. Potrebno je da


znamo 4 ili vise korespodentnih tacaka. Na osnovu njih trazimo matricu
homografije, za koju na u opstem slucaju nije potrebno da znamo parametre kam.

Otklanjanje perspektivne distorzije do tacnosti afinosti: pretpostavimo da imamo


manje informacija, da imamo samo 4 tacke na slici sa perspektivnom distorzijom.
Nemamo tacke koje su im korespodentne na slici bez distorzije. Mozemo da
izvrsimo korekciju do te mere da paralelne linijie ostaju paralelne, ovo se moze
uraditi pomocu projektivne geometrije.

Harris formula:

Odziv Harris-a: Vrednost koju odredjujemo za svaki prozor, a koji nam odredjuje
psotojanje moguceg kornera je : R=det(M)-k(trace(M))2 , gde je
det(M= λ1λ2, trace(M)= λ1+λ2 , k-empirijska const
Prozor za koji vazi da je R vece od neke vrednosti sadrzi kornere
Harris je invarijantan na rotaciju, a nije invarijantan na skaliranje.
Ukoliko je λ1 >> λ2 onda je vertikalna ivica, λ2 << λ1 horizontalna, ako su priblizno isti
onda je to korner, ako nije nista od ovoga onda se radi o ravni.
HoG koraci hoga:
1.Predobrada slike – radimo resize da velicina bude 64x128, odnosno da je 1:2
2.Racunanje gradijenata slike – da bi dobili HoG deskriptor lokalnih obelezja
trebamo odrediti horizontalne i vertikalne gradijente slike da bismo odredili
histogramgradijenata. To radimo pomocu kernela (i po vertikali). Mozemo
koristiti i Sobel sa velicinom kernela 1, na osnovu ovoga dobijamo intenzitet i
orjentaciju gradijenata pomocu formula
g=(koren iz) gx2+gy2, (teta)=arctan(gy/gx)
Gx daje vertikalne, gy horizontalne ivice, int. gradij. raste gde su nagle promene
3.Racunanje gradijenata u celijama 8x8 – delimo sliku na celije 8x8 i za svaku celiju
odredjujemo histogram gradijetana. Gradijent odredjen sa intenzitetom i
orjentacijom u odnosu na x osu. Po pikselu imamo 128 brojeva koje
predstavljamo kao niz od 9 brojeva. Frekvencija koja se dodeljuje zavisi od
intenziteta koji odgovara nekoj orjentaciji i odredjuje se procentualno.
4.Normalizacija u blokovima 16x16 – malopre smo dobili histogram na osnovu
gradijenata, i oni su sada osetljivi na promenu osvetljanja pa moramo raditi
normalizaciju u blokovima 8x8. Blok se krece kroz sliku sa korakom 8.
5.Dobijanje HoG vektora lokalnog obelezja – da bi dobili konacan vektor lokalnog
obelezja neophodno je vektor koji je 36x1 (iz prethodnog koraka) smestiti u 1
vektor.

Kljucne tacke su ustvari vektori koji reprezentuju tacku. Daobijamo pozicije.


Trabaju biti sto stabilnije, sto manje osetljive na sum, osvetljenje,.., da se lako
detektuju na drugoj slici.

Deskriptori opisuju okolinu oko kljucnih tacaka. Oni su kompaktniji i stabilniji


(invarijantni su), pomocu njih se efikasno odredjuje korespodencija, moraju biti
invarijantni i distiktivni.

PANORAMA POSTUPAK: nadju se distinktivne kljucne tacke na obe slike, nadju se


deskriptori tih kljucnih tacaka, odredi se korespodencija medju deskriptorima,
zatim se pomocu tih parnjaka trazi homografija izmedju slika, primenjuje se
homografija da se prva slika dovede u perspektivu druge, i na kraju se slike spajaju
na zeljeni nacin.
SIFT - Scale Invariant Feature Transform detektor fičera koji je invarijantan na
promenu rezolucije i iluminanse i rotacije. Robustan je na šum, afinu
transformaciju... Zasniva se na DoG (Difference of Gaussians) i koristi Hessian-a.
Izlaz SIFT deskriptora je histogram sa 128 pozitivnih vrednosti.
Zeljene osobine Sift detektora: • invarijantnost na promenu rezolucije, rotaciju,
promenu iluminance • robustan na sum, afinu transformaciju, 3d view point •
dobra diskriminantnost ekstraktovanih featurea
SURF – jednostavniji je i time brzi od sifta, koristi LoG za razliku od sifta koji koristi
DoG. Moze se aproksimirati pomocu box filtera. Kao i sift i on koristi hessian
matricu.
FAST – ima piksel p koji ima verdnost Ip, uvodi se prag t. Posmatramo krug od 16
piksela kao obim. Mora da bude minimalno n=12 suseda koji su svetliki od Ip+t i
tamniji od Ip-t da bi p bio korner. Pomocu high-speed test-a se uklanja veliki broj
tacaka koje nisu korneri. Posmatraju se pikseli 1,9,5,13. Ako je p korner onda
najmanje tri od ovih piksela mora bili svetliji od Ip+t ili tamniji od Ip-t, ako to ne
vazi onda p nije korner. Ovaj test daje dobre rezultate, a slabosti su mu da ne
odbacuje puno hocih kandidata za n<12, izbor piksela nije optimalan.

Algoritam za odredjivanje korespodencije:


1. Brute-Force Matcher: uzima deskriptor kljucne tacke sa jedne slike i uporedjuje
je sa svim deskriptorima kljucnih tacaka sa druge slike. Kao mera uporedjuvanja se
uzima neka distanca
2. FLANN: Sadrzi kolekciju algoritama za optimizaciju pretrage najbližih suseda za
velike skupove i visoko-dimenz. vektore lokalnih obeležja. Brzi od Brut-Forsa.
3. ROBUST: koristi tri testa za odbacivanje losih kljucnih tacaka
-ratioTest-gleda da li su korespodentne tacke previse udaljene
-symmetryTest-korespodentne tacke moraju biti simetricno rasporedjenje
-ransacTest-odbacuju se outlier-i i odredjuje pogodna homografija.

RANSAC algoritam: slucajno selektuj cetiri para korespodentnih tacak. Iskoristi ih


da odredis homografiju. Odredi broj inlier-a za koji vazi ll pi’,Hpi ll < E
Sacuvaj najveci broj inlier-a. Preracunati H na osnovu ovih inlier-a tako da
kvadratna greska bude najmanja.

Spajanje 2 slike – najjednostavniji metod je da jednu sliku stavimo pored druge ili
iznad. Druga malo bolja metoda je alphablending: 𝛼∗𝐴+1−𝛼∗𝐵= C
Trci metod je S-kriva

You might also like