diff --git a/diploma.pdf b/diploma.pdf index a093cfe..57bd382 100644 Binary files a/diploma.pdf and b/diploma.pdf differ diff --git a/diploma.tex b/diploma.tex index 4010e3d..de3c130 100644 --- a/diploma.tex +++ b/diploma.tex @@ -412,125 +412,158 @@ A proper abstract should contain around 100 words which makes this one way too s \pagestyle{fancy} \chapter{Uvod} -Brezpilotni letalniki in sateliti se uporabljajo za iskanje in reševanje, kartiranje terena, kmetijsko spremljanje, navigacijo dronov in podobne naloge. -Raznolikost platform za tehnologijo oddaljenega zaznavanja prinaša veliko prednosti na teh področjih. -Ljudje ne lahko le prek satelitov pridobijo podatkov velikega obsega, temveč tudi s pomočjo platform dronov pridobijo bolj jasne lokalne slike. -Trenutno se brezpilotni letalniki v glavnem zanašajo na satelitske signale za navigacijo in določitev položaja med letom. -Vendar se v praksi satelitski signal močno oslabi po dolgi razdalji, kar lahko povzroči motnje sprejetega satelitskega signala na dronu. -Zlasti na vojaškem področju je izguba satelitskega signala pogosta. -Samozadostna lokalizacija in navigacija dronov v okoljih, kjer so satelitski signali omejeni ali moteni, postaja vse pomembnejša. +Brezpilotni letalniki so postali nepogrešljivo orodje v številnih sektorjih, od vojaških operacij do kmetijskega nadzora. +Kljub njihovi široki uporabi pa se soočajo z izzivi pri avtonomni navigaciji, še posebej v okoljih, kjer je satelitski signal omejen ali nezanesljiv. +V idealnih razmerah brezpilotni letalniki za svojo navigacijo uporabljajo GPS signale. +Vendar pa lahko te signale motijo naravne in človeške ovire, kot so visoke stavbe, gorske formacije ali celo elektronske motnje. +Izguba GPS signala lahko postane kritična, še posebej v tistih trenutkih, ko je natančna lokacija letalnika ključna za njegovo nalogo. +Zato je iskanje alternativne metode za lokalizacijo brezpilotnih letalnikov postalo nujno. -Da bi rešili problem avtonomne navigacije brezpilotnih letalnikov v okolju, kjer je uporaba satelitskih signalov omejena, so bile prejšnje metode večinoma izvedene z uporabo prepoznavanja slik. -Lokalizacija naprave se doseže z ujemanjem slike letalnika z vsako sliko v satelitski slikovni bazi. -Med procesom ucenja so neprestano skrajševali razdaljo med slikami letalnikov in satelitskimi slikami podobnih regij preko metrike učenja. -Metoda prepoznavanja slik je na nekaterih naborih podatkov dosegla odlične rezultate. Vendar ima več problemov: +Tradicionalne metode prepoznavanja slik se v kontekstu lokalizacije brezpilotnih letalnikov zdi kot obetavna alternativa. +Vendar pa se ob njihovi uporabi pojavi cela paleta izzivov. Prvič, potrebujemo ogromno slikovno bazo, ki vključuje kompresirane satelitske slike območij, nad katerimi letalnik leti. +Velikost in obseg te baze lahko povzroči precejšnje računske in pomnilniške zahteve, kar lahko oteži njeno integracijo v realnočasovih sistemih, kot so brezpilotni letalniki. +Drugič, vsaka posodobitev ali sprememba v osnovni nevronski mreži, ki se uporablja za prepoznavanje slik, zahteva ponovno obdelavo celotne slikovne baze. +To ne le da je časovno potratno, ampak tudi poveča stroške, saj morajo vse slike ponovno potekati skozi postopek predprocesiranja in razpoznave. +Tretjič, ko brezpilotni letalnik zajame sliko za primerjavo, mora ta slika biti primerjana z vsako sliko v bazi, da se ugotovi najboljše ujemanje. +V praksi to pomeni, da če imamo bazo sestavljeno iz milijonov slik, bo vsaka nova poizvedovalna slika potrebovala milijone primerjav, kar je zelo časovno potratno in računsko intenzivno. -\begin{itemize} - \item Pred praktično uporabo je treba vnaprej pripraviti slikovno bazo za prepoznavanje, in vse slike v bazi so poslane modelu za izvleček značilnosti. - \item Za doseganje bolj natančnega pozicioniranja, mora baza pokrivati čim večji obseg in slika poizvedbe mora biti izračunana z vsemi slikami v bazi. To prinaša večji skladiščenjski in računski pritisk na računalnik. - \item Ko se model posodobi, je treba posodobiti tudi ustrezno bazo. -\end{itemize} -Povzemajoč, metoda prepoznavanja slik zahteva veliko predobdelovalnih operacij. Hkrati pa so tudi zahteve za skladiščno zmogljivost in računalniško moč precej velike. +V luči omejitev tradicionalnih metod prepoznavanja slik so raziskovalci razvili inovativen pristop imenovan FPI (Finding Point with Image) \cite{dai2022finding}. +Ta pristop se močno razlikuje od običajnih metod v smislu strukture in delovanja. +V osnovi metoda FPI vzame dva vhodna podatka: sliko posneto z dronom in pripadajočo satelitsko sliko. +V kontekstu te satelitske slike je mesto, kjer je bila dronska slika posneta. -S hitrim razvojem računalniškega vida se pojavlja geolokacija dronov na podlagi satelitskih slik, kjer iscemo tocko v sliki. -Ta metoda, podobna sinergiji med človeškimi očmi in možgani, omogoča iskanje ustrezne lokacije v iskalnem zemljevidu (satelitska slika) na podlagi slike drona. -Ko je lokacija iskanja najdena na iskalnem zemljevidu, lahko iz podatkov o zemljepisni širini in dolžini iskalnega zemljevida sklepamo o trenutnem položaju drona. +Za obdelavo vsake slike se uporablja posebna nevronska mreža, kjer vsaka mreža obdeluje svoj nabor podatkov brez deljenja uteži z drugo. +Ko sta obe sliki obdelani in njihove značilke ekstrahirane, se med njima izvede operacija korelacije. +Ta korelacija se izraža v obliki toplotne karte, ki podaja podrobnosti o ujemanju med dronsko in satelitsko sliko. +Najvišja vrednost na toplotni karti natančno označuje mesto, kjer je dron posnel svojo sliko na večji satelitski sliki. +Ta informacija nato neposredno prevede v natančno lokalizacijo drona na satelitski sliki. -\chapter{Teoreticno Ozadje} -\label{ch0} +Kot je pogosto v znanosti, se iz ene inovacije rodijo druge. +Nadgradnja metode FPI, znana kot WAMF-FPI, je nadaljnje izboljšala natančnost in učinkovitost lokalizacije dronov \cite{dai2022finding}. +Ta metoda si je sposodila koncepte iz sledenja objektov in jih uporabila za lokalizacijo, kljub težavam, ki jih povzročajo razlike med slikami UAV in satelitskimi slikami. +Z uporabo dveh različnih uteži za izvleček značilnosti UAV in satelitskih slik, WAMF-FPI omogoča natančnejše in bolj zanesljivo ujemanje s slikami. +Dodatno izboljšanje je bilo doseženo z uporabo WAMF modula in Hanning loss, ki sta povečala učinkovitost modela. -\section{Osnovni pojmi in terminologija} +WAMF-FPI je evolucija osnovne metode FPI in prinaša številne izboljšave v procesiranju slik. +Ključna prednost WAMF-FPI je njegova napredna piramidna struktura ekstrakcije značilk, ki omogoča bolj natančno in raznoliko analizo vhodnih podatkov. +Z uporabo te piramidne strukture se značilke ekstrahirajo na več različnih merilih in se nato skalirajo ter medsebojno primerjajo, da se pridobi bolj robusten in natančen sklop informacij. + +Poleg tega WAMF-FPI optimizira kompresijske zmogljivosti, kar pripomore k hitrejšemu in učinkovitejšemu procesiranju podatkov. +Medtem ko je v osnovni FPI metodi končna velikost značilk bila stisnjena na 16-krat manjšo od izvorne satelitske slike, je v WAMF-FPI ta kompresijski faktor zmanjšan na samo 4-krat manjšo velikost. To omogoča WAMF-FPI, da ohrani več informacij in pridobi boljšo lokalizacijsko natančnost ob hkratnem zmanjšanju računske obremenitve. + +Zaradi pomanjkanja dostopnih podatkovnih zbirk smo se odločili, da bomo ustvarili svojo. +To smo storili s pomočjo Google Earth Studio. +Naša zbirka vključuje 11 večjih evropskih mest z raznoliko strukturo. +Cilj izdelave te zbirke je bil zagotoviti raznolike podatke, ki bi lahko služili kot robustna osnova za testiranje in validacijo naše implementacije WAMF-FPI. +Zato smo se odločili, da bomo v tej diplomski nalogi sami implementirali WAMF-FPI, kakor je opisano v izvornem članku, in preverili njegovo delovanje. +Implementirali smo vse, kakor je v članku opisano, z namenom dobiti objektivno sliko o učinkovitosti in natančnosti metode. +V tej diplomski nalogi bomo podrobno raziskali te tehnike, njihove prednosti in pomanjkljivosti ter potencialne aplikacije in izboljšave za prihodnost. +Ocenjevali bomo njihovo učinkovitost in natančnost, s poudarkom na njihovi uporabi v realnih scenarijih lokalizacije brezpilotnih letalnikov. +Naš cilj je ponuditi temeljito analizo metode WAMF-FPI in njenih aplikacij, da bi olajšali nadaljnji razvoj in uporabo v industriji brezpilotnih letalnikov. + +\section{Osnonvi pojmi in terminologija} \subsection{Brezpilotni letalnik} - -Brezpilotni letalniki ali droni so zračna plovila, ki se lahko upravljajo na daljavo ali avtonomno preko programske opreme, ki je integrirana s senzorji in GPS sistemi. -Droni imajo široko paleto uporabe v različnih industrijah, vključno z vojaško, komercialno, znanstveno in rekreativno uporabo. -Droni so postali izjemno pomembni za zbiranje podatkov v realnem času, izvajanje raziskav in analiz na terenu, kot tudi za opravljanje nalog, ki so lahko za človeka nevarne ali nedostopne. -Zaradi svoje fleksibilnosti in prilagodljivosti se uporabljajo v nalogah, kot so iskanje in reševanje, zaznavanje okoljskih sprememb, kmetijski nadzor, inspekcija infrastrukture, filmska produkcija, dostava paketov in še veliko več. -Trg dronov je hitro rastoč in vključuje široko paleto proizvajalcev, ki ponujajo različne modele za različne namene in proračune. -Kot tehnologija napreduje, se pojavljajo tudi novi izzivi, vključno z vprašanji zasebnosti, varnosti in zakonodajnimi ureditvami. -Zato je to področje postalo predmet intenzivnih raziskav in razvoja, s ciljem optimizacije zmogljivosti, zanesljivosti in dostopnosti brezpilotnih letalnikov. +Brezpilotni letalniki, znani tudi kot droni, so daljinsko vodena ali avtonomna zračna plovila, opremljena s senzorji in GPS tehnologijo. +Uporabljajo se v različnih sektorjih, od vojaških do rekreativnih, in so postali ključni za zbiranje podatkov v realnem času, terenske raziskave in opravljanje potencialno nevarnih nalog. +Njihova prilagodljivost omogoča uporabo v številnih aplikacijah, kot so inspekcije, filmska produkcija in dostava. +Kljub hitremu razvoju in rasti trga pa tehnologija prinaša izzive, povezane z zasebnostjo, varnostjo in zakonodajo, kar spodbuja nadaljnje raziskave na tem področju. \subsection{Satelit} - -Sateliti so objekti, ki krožijo okoli Zemlje ali drugih nebesnih teles in se uporabljajo za številne namene, vključno z komunikacijo, opazovanjem vremena, znanstvenimi raziskavami, navigacijo in še veliko več. -Za komercialno in vojaško uporabo je pomembna zlasti komunikacijska satelitska tehnologija. -Ta omogoča globalno povezljivost in prenos podatkov, kot so televizijski signali, telefonski klici in internet. -Vremenski sateliti so ključni za napovedovanje vremena in spremljanje okoljskih sprememb, saj zagotavljajo nenehne in natančne podatke o atmosferskih razmerah. -Navigacijski sateliti, kot je sistem Global Positioning System (GPS), omogočajo določanje položaja in časa na skoraj katerem koli mestu na Zemlji. -Ta tehnologija je ključna za številne aplikacije, od vojaške navigacije do vsakodnevnega usmerjanja v prometu. -Znanstveni sateliti se uporabljajo za študij nebesnih teles, vključno z Zemljo. -Ta opazovanja lahko pomagajo pri razumevanju podnebnih sprememb, geoloških procesov in drugih pomembnih znanstvenih vprašanj. -Lansiranje satelita je kompleksno in drago opravilo, ki zahteva natančno načrtovanje in usklajevanje. -Sateliti morajo biti postavljeni na natančno določeno orbito, da bi zagotovili optimalno delovanje in izogibanje trkom z drugimi objekti v vesolju. +Sateliti so tehnološke naprave, ki krožijo okoli Zemlje ali drugih nebesnih teles. +Uporabljajo se za različne namene, kot so komunikacija, vremensko opazovanje, navigacija in znanstvene raziskave. +Komunikacijski sateliti omogočajo globalno povezovanje in prenos podatkov, medtem ko vremenski sateliti pomagajo pri napovedovanju vremena. +Sistem GPS, ki temelji na navigacijskih satelitih, je postal ključen za določanje lokacije. Znanstveni sateliti prispevajo k razumevanju vesolja in Zemlje. \subsection{Geolokalizacija} - -Geolokalizacija je proces določanja geografske lokacije objekta, kot je mobilni telefon, računalnik, vozilo ali kateri koli druga povezana naprava. -Ta postopek je postal ključen del sodobnih tehnologij in se uporablja v številnih aplikacijah in storitvah. -Geolokalizacija je bistvena za sistem GPS in druge navigacijske sisteme, ki voznikom, pohodnikom in drugim omogočajo natančno navigacijo po poti do cilja. -Podjetja uporabljajo geolokalizacijo za ciljno usmerjanje oglasov glede na lokacijo uporabnikov, kar omogoča, da so oglasi prilagojeni lokalnim zanimanjem in potrebam. -Geolokalizacija se uporablja tudi v varnostnih aplikacijah, kot so sledenje vozil, iskanje izgubljenih ali ukradenih naprav in nadzor nad dostopom do določenih storitev na podlagi lokacije. -V socialnih omrežjih in aplikacijah, ki uporabljajo lokacijo, je geolokalizacija omogočila uporabnikom, da delijo svojo lokacijo, najdejo prijatelje v bližini ali odkrijejo lokalne dogodke in atrakcije. -Geolokalizacija se uporablja tudi v različnih znanstvenih raziskavah, kot je spremljanje selitve živali, raziskovanje tektonskih premikov in analiza podnebnih sprememb. -Kljub številnim uporabam obstajajo tudi izzivi pri uporabi geolokalizacije. -Natančnost geolokalizacije je odvisna od številnih dejavnikov, vključno z dostopnostjo satelitskih signalov, gostoto urbanih območij in uporabljeno tehnologijo. -Prav tako se pojavljajo vprašanja glede zasebnosti in varnosti, saj lahko nepooblaščeno sledenje vodi v zlorabo informacij o lokaciji. - -\subsection{Iskanje tocke v sliki} - -Iskanje točke v sliki (ang. Finding Point in Image, FPI)je postopek identifikacije in določanja posebnih točk ali predmetov v določeni sliki ali seriji slik. -Ta tehnologija se je izkazala za pomembno v različnih aplikacijah, vključno z navigacijo in geolokalizacijo. - -FPI je pozicijski standard, kjer je vhodna slika, ki jo je treba pozicionirati, poimenovana kot \textit{query}, in slika, ki jo je treba pridobiti, se imenuje \textit{search map}. -Ta proces se lahko uporablja za različne naloge lokalizacije, kot so lokalizacija brezpilotnih letalnikov (UAV) in prečno geolokalizacijo. Glavni cilj je najti ustrezno lokacijo v iskalnem zemljevidu. -FPI neposredno vnese poizvedbo in iskalni zemljevid v model, ki nato napove toplotno karto, ki predstavlja napovedano lokacijsko porazdelitev poizvedbe v iskalnem zemljevidu. -Ena od ključnih prednosti metode FPI je, da ne zahteva veliko pripravljalnih podatkov ali operacij ekstrakcije značilnosti vnaprej. Edino shranjevanje, ki je potrebno, je iskalni zemljevid. -Ta metoda omogoča hitro in natančno določanje lokacij v kompleksnih slikah in lahko služi številnim namenom. -Na primer, v scenarijih brezpilotnih letalnikov bi FPI lahko uporabili za identifikacijo in sledenje specifičnih lokacij ali objektov na tleh iz zraka. -V geolokacijskih aplikacijah bi FPI lahko uporabili za določanje lokacije na satelitskih posnetkih. -Skupno gledano iskanje točke v sliki, še posebej s pomočjo FPI metode, predstavlja pomemben korak naprej v tehnologijah lokalizacije in navigacije. -Ponuja elegantno rešitev za težave, ki jih lahko tradicionalne metode imajo pri obdelavi kompleksnih slik in informacij, in je primerna za široko paleto aplikacij in industrije. - -\subsection{Konvolucijska nevronska mreza} - -Konvolucijska nevronska mreža (CNN - Convolutional Neural Network) je posebna vrsta nevronskih mrež, zasnovana za obdelavo vizualnih podatkov. -S svojo zmožnostjo avtomatičnega in prilagodljivega učenja hierarhičnih značilnosti iz vhodnih podatkov se CNN pogosto uporablja v nalogah strojnega vida, kot so razpoznavanje vzorcev, klasifikacija slik in iskanje točk v slikah. -Struktura CNN vključuje konvolucijske plasti, ki izvajajo konvolucijsko operacijo s pomočjo majhnih filtrirnih matrik za odkrivanje lokalnih značilnosti, kot so robovi, teksture in oblike. -To sledi združevalnim plastem, ki zmanjšajo dimenzionalnost slike, hkrati pa ohranijo pomembne informacije. -Na koncu se uporabljajo polno povezane plasti, ki združijo lokalne značilnosti v globalno razumevanje slike, kar omogoča klasifikacijo ali regresijo. -CNN se izkaže za zelo učinkovito v primerjavi z drugimi tipi nevronskih mrež v nalogah, povezanih z obdelavo slik, zlasti zaradi sposobnosti zajemanja prostorskih hierarhij značilnosti. -To pomeni, da so sposobne razumeti in reprezentirati sliko na več ravneh abstrakcije. - -\subsection{Siamska nevronska mreža} -Siamska nevronska mreža (Siamese Neural Network) je posebna vrsta nevronske mreže, ki se uporablja predvsem za primerjavo ali razlikovanje med dvema vhodoma. -Glavna značilnost siamske nevronske mreže je, da vsebuje dve ali več identičnih podmrež, ki delijo iste uteži in parametre. -Te podmreže vzporedno obdelujejo vhodne podatke in na koncu se rezultati združijo, da se določi razlika ali podobnost med vhodnimi podatki. - -Struktura: -\begin{itemize} - \item \textbf{Dva vhoda}: Siamska mreža sprejme dva vhoda, ki ju želi primerjati. - \item \textbf{Dve identični podmreži}: Vsak vhod se obdeluje skozi svojo podmrežo. Obe podmreži imata enako strukturo in delita iste uteži. - \item \textbf{Združevanje rezultatov}: Na koncu se izhodi obeh podmrež združijo, da se določi razlika ali podobnost med vhodnimi podatki. -\end{itemize} - -Siamske nevronske mreže se pogosto uporabljajo v nalogah, kot so preverjanje podobnosti, prepoznavanje obrazov, preverjanje pristnosti in druge naloge, kjer je pomembno ugotoviti, ali sta dva vzorca podobna ali različna. - +Geolokalizacija je proces ugotavljanja geografske lokacije naprav, kot so mobilni telefoni ali vozila. +Ključna je za GPS in navigacijske sisteme, omogoča ciljno usmerjanje oglasov, sledenje vozil, iskanje izgubljenih naprav in deljenje lokacij v socialnih omrežjih. +Uporablja se tudi v znanstvenih raziskavah, kot je spremljanje selitve živali. +Vendar natančnost varira glede na tehnologijo in okolje, prav tako pa se pojavljajo izzivi v zvezi z zasebnostjo in varnostjo. \subsection{Toplotna karta} -Toplotna karta je grafična predstavitev podatkov, kjer vrednosti v matriki predstavljajo različne barve. -Ponavadi se uporablja za prikazovanje, kako se določena spremenljivka razporedi po dvodimenzionalnem prostoru. -To je zelo uporabno pri vizualizaciji razmerij, povezav ali gostote v velikih naborih podatkov. -Toplotne karte so priljubljene v mnogih znanstvenih in poslovnih aplikacijah. -V statistiki in strojnem učenju se lahko uporabljajo za prikaz korelacij med različnimi značilnostmi. -V biologiji se pogosto uporabljajo za prikazovanje izražanja genov, v geografiji pa za vizualizacijo gostote prebivalstva ali druge geolokacijske podatke. -Ena od prednosti toplotne karte je, da omogoča hitro in intuitivno razumevanje kompleksnih naborov podatkov. -Vizualizacija barvnih prehodov pomaga opazovalcu, da hitro zazna vzorce in trende, ki bi jih bilo težje zaznati v tabelaričnih ali tekstovnih prikazih. +Toplotna karta vizualno predstavlja podatke z barvami, ki odražajo vrednosti v matriki. +Uporabljena je za vizualizacijo razporeditve spremenljivk v dvodimenzionalnem prostoru in je koristna v znanstvenih ter poslovnih aplikacijah, kot so statistika, biologija in geografija. +Omogoča hitro razumevanje kompleksnih podatkov, saj barvni prehodi razkrivajo vzorce in trende. + +\chapter{Metodologija} +\label{ch0} + +V svetu računalniškega vida in strojnega učenja je razvoj učinkovitih metod za lokalizacijo specifičnih točk ali značilnosti v sliki ključnega pomena za številne aplikacije. +V okviru pristopa WAMF-FPI je ta problematika še posebej izpostavljena, saj se osredotoča na natančno določanje točke v sliki. +Da bi to dosegli, je potrebno uporabiti kombinacijo različnih arhitektur in tehnik, ki so se izkazale kot učinkovite v različnih scenarijih obdelave slik. + +V tem poglavju bomo predstavili osnovne komponente, ki jih uporabljamo v našem modelu. +Začeli bomo s konvolucijskimi nevronskimi mrežami, ki so temeljni gradnik v večini modelov za obdelavo slik in nudijo močno orodje za izluščenje značilnosti iz vizualnih podatkov. +Nadaljevali bomo s predstavitvijo transformerske arhitekture, ki je revolucionirala področje obdelave naravnega jezika in se v zadnjem času vedno bolj uporablja tudi v računalniškem vidu. +Podrobneje se bomo osredotočili na zgradbo transformerja in njegove ključne komponente. +V nadaljevanju bomo razpravljali o Vision Transformerju (ViT) in njegovi razširjeni verziji - Piramidnem vision transformerju (PVT). +Posebno pozornost bomo posvetili tudi prilagojeni različici PVT, ki upošteva lokalne značilnosti, imenovani PCPVT. +Zaključili bomo s siamskimi nevronskimi mrežami, ki predstavljajo ključno komponento pri primerjavi vzorcev. +Te mreže so še posebej pomembne, ko želimo primerjati dva ali več podobnih vzorcev in ugotoviti, ali med njimi obstajajo razlike. + +Z vključitvijo vseh teh komponent in tehnik v naš model WAMF-FPI želimo razviti robusten in natančen sistem za lokalizacijo točk v slikah. +V nadaljevanju poglavja bomo vsako od teh komponent podrobno raziskali, da bi bolje razumeli njihove lastnosti in kako prispevajo k celotnemu modelu. + +\section{Konvolucijske nevronske mreze} +Konvolucijske nevronske mreže (CNN - Convolutional Neural Networks) so globoka učna metoda, specializirana za obdelavo vizualnih podatkov, zasnovana tako, +da avtomatsko in adaptivno izvaja izvleček značilnosti iz slik. + +\subsection{Struktura in delovanje} + +Osnovna struktura CNN vključuje stiri glavne vrste plasti: konvolucijsko, aktivacijsko, združevalno (pooling) in polno povezano plast. + +\begin{enumerate} + \item \textbf{Konvolucijska plast}: + Vsak nevron v tej plasti je povezan z le majhnim območjem v prejšnji plasti, namesto da bi bil povezan z vsemi nevroni, kot je to v običajnih nevronskih mrežah. + Ko se filter (ali jedro) premika preko slike, izvaja konvolucijsko operacijo: + \begin{equation} + (I * K)(x,y) = \sum_{m} \sum_{n} I(m,n) \cdot K(x-m, y-n) + \end{equation} + + \item \textbf{Aktivacijska funkcija}: + Po konvolucijski operaciji se uporabi aktivacijska funkcija za vsak izhod. Najpogosteje se uporablja funkcija \texttt{ReLU}: + \begin{equation} + \text{ReLU}(x) = \max(0, x) + \end{equation} + + \item \textbf{Združevalna plast}: + Po konvolucijski in aktivacijski operaciji sledi združevalna plast, ki zmanjšuje dimenzije slike z uporabo operacij, kot je "max pooling": + \begin{equation} + P(i,j) = \max_{m,n \in R} I(i+m, j+n) + \end{equation} + + \item \textbf{Polno povezane plasti}: + Delujejo kot klasične plasti v običajnih nevronskih mrežah. Vsak nevron je povezan z vsemi izhodi prejšnje plasti. +\end{enumerate} -\chapter{Transformerske nevronske mreze} -\label{ch1} +\subsection{Učenje in optimizacija} + +Glavni mehanizem učenja v CNN je nazajno širjenje napak (backpropagation). +To je iterativna metoda, ki minimizira kriterijsko funkcijo, da bi ugotovili optimalne uteži mreže. +Za mnoge naloge v obdelavi slik je kvadratna napaka (MSE) izbrana kot kriterijska funkcija: + +\begin{center} + \begin{equation} + J(w) = \frac{1}{N} \sum_{i=1}^{N} (y_i - \hat{y}_i)^2 + \end{equation} +\end{center} + +Za optimizacijo uteži se uporablja gradientni sestop. +Za vsako iteracijo se uteži posodobijo v smeri negativnega gradienta kriterijske funkcije funkcije: + +\begin{center} + \begin{equation} + w_{\text{novi}} = w_{\text{stari}} - \eta \nabla J(w_{\text{stari}}) + \end{equation} +\end{center} + +\subsection{Značilnosti in prednosti} +Konvolucijske mreže so sposobne avtomatskega zaznavanja hierarhičnih značilnosti. +Na nižjih ravneh mreže so zaznane nizkonivojske značilnosti, kot so robovi in teksture, na višjih ravneh pa se zaznavajo kompleksnejše strukture, kot so oblike in objekti. +To hierarhično značilnost je tisto, kar CNN omogoča, da dosega izjemno natančnost pri različnih nalogah obdelave slik. \section{Transformerska arhitektura} @@ -919,11 +952,62 @@ Kjer je CPE pogojno pozicijsko kodiranje, $ f $ je funkcija, ki generira kodiran Twins-PCPVT združuje prednosti tako PVT kot CPVT, kar ga naredi enostavnega za učinkovito implementacijo. Eksperimentalni rezultati so pokazali, da ta preprosta zasnova lahko doseže zmogljivost nedavno predlaganega Swin transformerja \cite{liu2021swin}. +\section{Siamska nevronska mreža za primerjavo vzorcev} + +Pri obdelavi slik in vizualni analitiki je ena izmed ključnih nalog primerjava ali ujemanje vzorcev, znano tudi kot "template matching". +Tradicionalne metode, ki temeljijo na neposrednem ujemanju ali korelaciji, so občutljive na spremembe svetlobe, rotacije, deformacije in druge variacije v sliki. +S prihodom globokih nevronskih mrež, zlasti siamskih mrež, se je učinkovitost te naloge znatno povečala. + +\subsection{Osnovna arhitektura siamske mreže za primerjavo vzorcev} +Klasična siamska mreža za primerjavo vzorcev sestoji iz dveh identičnih podmrež, ki delijo enake uteži. +Vsaka podmreža prejme sliko: ena je ciljna slika, druga pa je iskana slika. +Oba vhoda se preoblikujeta v značilnostne vektorje prek teh podmrež. +Nato se izračuna razdalja med obema vektorjema, običajno z evklidsko razdaljo, da se ugotovi, kako sta sliki podobni. + +Matematično, za dve sliki $x_1$ in $x_2$, podmreži proizvedeta predstavitve $f(x_1; \theta)$ in $f(x_2; \theta)$. +Razdalja $D$ med tema dvema predstavitvama je določena kot: + +\begin{center} + \begin{equation} + D(f(x_1; \theta), f(x_2; \theta)) = \| f(x_1; \theta) - f(x_2; \theta) \|_2 + \end{equation} +\end{center} + +\subsection{Učenje siamske mreže za primerjavo vzorcev} +Da bi siamsko mrežo usposobili za učinkovito primerjavo vzorcev, potrebujemo nabor učnih podatkov, ki vsebuje pare podobnih in različnih slik. +Med učenjem je cilj zmanjšati razdaljo med podobnimi slikami in povečati razdaljo med različnimi slikami. +Kriterijska funkcija, običajno uporabljena pri učenju siamskih mrež za primerjavo vzorcev, je kontrastna kriterijske funkcija, definirana kot: + +\begin{center} + \begin{equation} + L(y, D(f(x_1; \theta), f(x_2; \theta))) = y \cdot \frac{1}{2} D^2 + (1-y) \cdot \frac{1}{2} \max(0, m - D)^2 + \end{equation} +\end{center} +Kjer $y$ označuje oznako podobnosti (1 za podobne in 0 za različne), $m$ pa je prag, ki določa mejo med podobnimi in različnimi slikami. + +\subsection{Aplikacije in prednosti} +Siamske mreže za primerjavo vzorcev so se izkazale za izjemno koristne v številnih aplikacijah, kot so prepoznavanje in sledenje objektom, biometrija ter varnost in nadzor. +V primerjavi s tradicionalnimi metodami imajo siamske mreže večjo odpornost na variacije v svetlobi, rotaciji, lestvici in drugih deformacijah. +Zaradi globlje hierarhične predstavitve slike so sposobne zaznati in primerjati kompleksne značilnosti, ki jih manj kompleksne metode morda ne bi opazile. + \chapter{Podatkovni set} -\label{ch2} +\label{ch1} +V raziskovalnem svetu je podatkovni set ključnega pomena za razvoj, testiranje in validacijo modelov. +Kljub pomembnosti modela WAMF-FPI avtorji niso javno delili originalnega podatkovnega seta, kar je postavilo pred nas izziv pri pripravi ustreznih podatkov za našo analizo. +Za doseganje konsistentnosti in kvalitete rezultatov smo se odločili samostojno kreirati in kurirati naš lastni podatkovni set, ki odraža realne pogoje in scenarije uporabe. +Podatkovni set, ki smo ga oblikovali, temelji na dveh glavnih virih vizualnih podatkov. +Prvi vir predstavljajo slike, pridobljene z brezpilotnimi letalniki. +Te slike so bile pridobljene preko orodja Google Earth Studio, ki omogoča natančno in realno reprezentacijo terenskih značilnosti iz ptičje perspektive. +Te slike nudijo bogate detajle in so ključne za razumevanje fine strukture terena. -\section{Dronske slike} +Drugi vir podatkov predstavljajo satelitske slike, pridobljene preko Mapbox API. +Satelitske slike prinašajo širši pogled na regijo in omogočajo razumevanje večjih geografskih in prostorskih vzorcev. +V kombinaciji z dronskimi slikami te slike nudijo celovito sliko terena z različnih višin in ločljivosti. +Skupno naš podatkovni set vključuje več kot 11.000 dronskih slik in njihovih pripadajočih satelitskih slik. +Ta obsežna zbirka podatkov nam omogoča, da model WAMF-FPI testiramo in validiramo v številnih različnih scenarijih in pogojih, s čimer zagotavljamo njegovo robustnost in splošno uporabnost. + +\section{Slike brezpilotnega letalnika} Nabor podatkov, ki ga predstavljamo, je bil zasnovan z namenom raziskovanja in analize dronov v različnih mestnih scenarijih. Osredotoča se na dve ključni območji: \begin{enumerate} @@ -953,6 +1037,14 @@ Mesta, vključena v ucni nabor podatkov, so: \item \textbf{Benetke:} Nadmorska višina: -1m, Višina drona: 150m, Skupaj: 149m nad morsko gladino. \end{itemize} +\begin{figure}[h] +\centering +\includegraphics[width=0.9\textwidth]{./img/cities.png} +\caption{Slika prikazuje lokacije mest, ki so vključena v nabor podatkov.} +\label{fig:cities} +\end{figure} + + Dodatno je bil v nabor dodan tudi testni nabor podatkov za Ljubljano, ki vključuje 1.000 slik. Vsaka slika je opremljena z oznakami lokacije kamere v sistemu ECEF. Sistem ECEF (Earth Centered, Earth Fixed) je globalni koordinatni sistem z izhodiščem v središču Zemlje. @@ -1013,7 +1105,7 @@ lahko izrazimo: \end{figure} \chapter{Implementacija} -\label{ch3} +\label{ch2} \subsection{Motivacija} Pri sledenju objektov raziskovalci sledenje izvajajo z izračunom podobnosti med predlogo in iskalnim območjem v trenutnem okviru. @@ -1178,7 +1270,7 @@ Kjer so: \chapter{Eksperimenti} -\label{ch4} +\label{ch3} V tem poglavju se bom osredotocil na eksperimente, ki sem jih izvedel. @@ -1479,7 +1571,12 @@ Nasprotno, preveliko okno lahko privede do izgube natančnosti. Čeprav kriterij V naših testiranjih smo ugotovili, da je najbolje najti uravnoteženo velikost Hanningovega okna, ki omogoča modelu, da efektivno uči in hkrati ohranja natančnost pri predikcijah. V ta namen smo izvedli več iteracij, kjer smo eksperimentirali z različnimi velikostmi oken. -TUKAJ SE PRIDEJO GRAFI Z REZULTATI, 27, 29, 31, 33, 35, 37, 39, 41 velikosti hanningovega okna treba malo pocakat se +\begin{figure}[H] +\centering +\includegraphics[width=0.9\textwidth]{./img/plot_different_hann_kernels.png} +\caption{Primerjava rezultatov ob uporabi razlicnih velikosti Hanningovega okna.} +\label{fig:corresponding_sat_image_example} +\end{figure} \section{Regularizacija v modelu z uporabo izpuščanja nevronov} @@ -1488,7 +1585,7 @@ V svetu strojnega učenja je regularizacija ključna tehnika, ki se uporablja za Prekomerno prilagajanje se pojavi, ko model postane preveč specifičen za učni nabor podatkov, kar pomeni, da se "preveč nauči" podrobnosti in šuma v učnih podatkih, kar vodi v slabo zmogljivost na novih, nevidenih podatkih. Med različnimi tehnikami regularizacije je "izpuščanje nevronov" (v angleščini "dropout") ena izmed najbolj priljubljenih in učinkovitih metod za nevronske mreže. -Koncept izpuščanja nevronov je preprost, a močan: med usposabljanjem se določen odstotek nevronov v mreži naključno "izklopi" ali izpusti. To pomeni, da se med posameznim prehodom naprej določeni nevroni (in njihove povezave) začasno odstranijo iz mreže. +Koncept izpuščanja nevronov je preprost, a močan: med ucenjem se določen odstotek nevronov v mreži naključno "izklopi" ali izpusti. To pomeni, da se med posameznim prehodom naprej določeni nevroni (in njihove povezave) začasno odstranijo iz mreže. V modelu sem uporabil izpuščanje nevronov na več ključnih mestih: diff --git a/img/cities.png b/img/cities.png new file mode 100644 index 0000000..d42d63e Binary files /dev/null and b/img/cities.png differ diff --git a/img/plot_different_hann_kernels.png b/img/plot_different_hann_kernels.png new file mode 100644 index 0000000..5e25c34 Binary files /dev/null and b/img/plot_different_hann_kernels.png differ