Much better structure

main
Gašper Spagnolo 2023-08-26 18:13:11 +02:00
parent 021694978c
commit 6f132c187f
No known key found for this signature in database
GPG Key ID: 2EA0738CC1EFEEB7
3 changed files with 84 additions and 33 deletions

Binary file not shown.

View File

@ -990,13 +990,13 @@ Siamske mreže za primerjavo vzorcev so se izkazale za izjemno koristne v števi
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}
\chapter{Podatkovna mnozica}
\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.
V raziskovalnem svetu je podatkovna mnozica ključnega pomena za razvoj, testiranje in validacijo modelov.
Kljub pomembnosti modela WAMF-FPI avtorji niso javno delili originalne podatkovne mnozice, 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šo lastno podatkovno mnozico, ki odraža realne pogoje in scenarije uporabe.
Podatkovni set, ki smo ga oblikovali, temelji na dveh glavnih virih vizualnih podatkov.
Podatkovna mnozica, ki smo jo 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.
@ -1004,7 +1004,8 @@ Te slike nudijo bogate detajle in so ključne za razumevanje fine strukture tere
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.
Skupno naša podatkovna mnozica 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}
@ -1037,20 +1038,33 @@ 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]
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.
\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}
Na Sliki \ref{fig:region_structures} je prikazana vizualna razdelitev zelenih površin in stavb za različna mesta, temelječ na analizi slik, ki smo jih zajeli v našem podatkovnem naboru.
Vsako mesto razkriva svojo edinstveno strukturo in raven urbanizacije.
Te razlike so ključnega pomena pri razumevanju izzivov, s katerimi se srečujejo brezpilotni letalniki pri lokalizaciji in navigaciji v različnih mestnih okoljih.
Dodatno je bil v nabor dodan tudi testni nabor podatkov za Ljubljano, ki vključuje 1.000 slik.
Nekatera mesta, kot sta Gradec in Pula, kažejo višjo stopnjo urbanizacije z minimalno prisotnostjo zelenih površin.
To pomeni, da bodo droni v teh okoljih večinoma navigirali med zgradbami.
Na drugi strani pa mesta kot je Zagreb predstavljajo večjo mešanico zgradb in zelenih površin.
Takšne razlike lahko vplivajo na algoritme lokalizacije in navigacije dronov, saj se morajo prilagajati različnim scenarijem in oviram.
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.
\begin{figure}[H]
\centering
\includegraphics[width=0.9\textwidth]{./img/region_structures.png}
\caption{Graf prikazuje razmerje med zelenimi površinami in stavbami za vsako mesto.}
\label{fig:region_structures}
\end{figure}
Ta nabor podatkov ponuja vpogled v izzive in možnosti, ki jih brezpilotni letalniki srečujejo v različnih mestnih okoljih,
in je ključnega pomena za razvoj naprednih algoritmov za lokalizacijo in navigacijo.
Na sliki \ref{fig:drone_image_example} je prikazan primer dronske slike, zajete v Ljubljani.
\begin{figure}[h]
\centering
@ -1059,24 +1073,24 @@ in je ključnega pomena za razvoj naprednih algoritmov za lokalizacijo in naviga
\label{fig:drone_image_example}
\end{figure}
\section{satelitske slike}
Za vsako dronsko sliko sem poiskal ustrezen satelitski "tile" ali ploščico.
Ta korak je bil ključnega pomena, saj je zagotovil, da so satelitske slike popolnoma usklajene z dronskimi slikami v smislu geografske lokacije.
Ko sem identificiral ustrezen satelitsko ploscico, sem jo prenesel neposredno iz Mapbox API-ja, priznanega vira za visokokakovostne satelitske slike.
Da bi zagotovil dodatno globino in kontekst za vsako lokacijo, nisem prenesel samo osrednje ploscice, temveč tudi vse njegove sosednje ploščice.
Te sosednje ploščice so bile nato združene z osrednjo ploscico za ustvarjanje enotne TIFF datoteke.
Ta pristop je omogočil, da sem imel na voljo širšo regijo za analizo in učenje.
\section{Satelitske slike}
Za vsako dronsko sliko smo poiskali ustrezen satelitski "tile" ali ploščico.
Ta korak je bil ključnega pomena, saj je zagotovil, da so satelitske slike popolnoma usklajene z dronskimi slikami v smislu geografske lokacije.
Ko smo identificirali ustrezen satelitsko ploščico, smo jo prenesli neposredno iz Mapbox API-ja, priznanega vira za visokokakovostne satelitske slike.
Da bi zagotovili dodatno globino in kontekst za vsako lokacijo, nismo prenesli samo osrednje ploščice, temveč tudi vse njene sosednje ploščice.
Te sosednje ploščice smo nato združili z osrednjo ploščico za ustvarjanje enotne TIFF datoteke.
Ko sem imel pripravljene TIFF datoteke, sem začel z učnim procesom. Za vsako iteracijo učenja sem iz vsake TIFF datoteke naključno izrezal regijo velikosti 400x400 pikslov.
Ključnega pomena je bilo, da se je točka lokalizacije vedno nahajala nekje znotraj te izrezane regije. Ta metoda je zagotovila, da je bil model izpostavljen širokemu naboru scenarijev in kontekstov, hkrati pa je ohranila natančnost in relevantnost lokalizacijskih podatkov.
S tem pristopom sem uspešno sestavil nabor podatkov, ki združuje najboljše iz obeh svetov: detajlnost dronskih slik in širino satelitskih slik, kar omogoča poglobljeno analizo in učinkovito učenje.
Ta pristop nam je omogočil, da smo imeli na voljo širšo regijo za analizo in učenje.
Ko smo imeli pripravljene TIFF datoteke, smo začeli z učnim procesom.
Za vsako iteracijo učenja smo iz vsake TIFF datoteke naključno izrezali regijo velikosti 400x400 pikslov.
Ključnega pomena je bilo, da se je točka lokalizacije vedno nahajala nekje znotraj te izrezane regije.
Ta metoda nam je zagotovila, da je bil model izpostavljen širokemu naboru scenarijev in kontekstov, hkrati pa smo ohranili natančnost in relevantnost lokalizacijskih podatkov.
S tem pristopom smo uspešno sestavili nabor podatkov, ki združuje najboljše iz obeh svetov: detajlnost dronskih slik in širino satelitskih slik, kar omogoča poglobljeno analizo in učinkovito učenje.
Ko govorimo o ploscicah v kontekstu kartografije in GIS (Geografski informacijski sistem), se običajno nanašamo na kvadratne segmente,
ki pokrivajo Zemljo in se uporabljajo za hitrejše in učinkovitejše prikazovanje zemljevidov na spletu.
Sistem ploscic je zelo priljubljen v spletnih kartografskih aplikacijah, kot je Google Maps.
Ko govorimo o ploščicah v kontekstu kartografije in GIS (Geografski informacijski sistem), se običajno nanašamo na kvadratne segmente, ki pokrivajo Zemljo in se uporabljajo za hitrejše in učinkovitejše prikazovanje zemljevidov na spletu.
Sistem ploščic je zelo priljubljen v spletnih kartografskih aplikacijah, kot je Google Maps.
Za pretvorbo geografskih koordinat (latitude in longitude) v ploscicne koordinate (x, y) na določeni ravni povečave z uporabo Mercatorjeve projekcije,
lahko izrazimo:
Za pretvorbo geografskih koordinat (latitude in longitude) v ploščične koordinate (x, y) na določeni ravni povečave z uporabo Mercatorjeve projekcije, lahko izrazimo:
\begin{itemize}
\item Pretvorba geografskih koordinat v radiane:
@ -1097,6 +1111,8 @@ lahko izrazimo:
\end{align*}
\end{itemize}
Na sliki \ref{fig:corresponding_sat_image_example} je prikazan primer pripadajoče satelitske slike za dronsko sliko.
\begin{figure}[h]
\centering
\includegraphics[width=0.8\textwidth]{./img/corresponding_sat_image_example.png}
@ -1104,10 +1120,28 @@ lahko izrazimo:
\label{fig:corresponding_sat_image_example}
\end{figure}
\chapter{Implementacija}
\chapter{Rezultati}
\label{ch2}
\subsection{Motivacija}
V tem poglavju bodo podrobno predstavljeni rezultati, ki so bili doseženi skozi različne faze implementacije in optimizacije modela WAMF-FPI.
Naš začetni korak je bil zagotoviti stabilno osnovo, kar smo dosegli z implementacijo modela v skladu z metodologijo, opisano v izvirnem članku.
Ta pristop nam je zagotovil referenčno točko, s katere smo lahko izvajali nadaljnje optimizacije in izboljšave.
Model smo trenirali na računalniku opremljenem z Intel(R) Xeon(R) CPU E5-2690 v3 in NVIDIA GeForce RTX 3060, z uporabo okolja PyTorch.
Z optimizacijo modela smo se nato poglobili v iskanje optimalne kriterijske funkcije.
Da bi razumeli, katera funkcija bi lahko prinesla najboljše rezultate v našem kontekstu, smo izvedli serijo eksperimentov z različnimi funkcijami in jih evalvirali glede na njihovo učinkovitost in zanesljivost.
Kot naslednji korak je bilo preučevanje stratificiranega vzorčenja, tehnike, ki bi lahko izboljšala natančnost in robustnost modela z zagotavljanjem bolj uravnoteženega nabora treninga.
Prav tako nismo mogli spregledati vpliva Hanningovega okna, zato smo analizirali, kako različne velikosti okna vplivajo na končne rezultate modela.
Končna faza naših eksperimentov je bila osredotočena na regularizacijo, zlasti na tehniko izpuščanja nevronov.
Glede na kompleksnost modelov globokega učenja smo želeli razumeti, kako bi takšna regularizacija lahko pomagala preprečiti prekomerno prilagajanje in izboljšala splošno zmogljivost modela.
Vsako od teh področij je v nadaljevanju podrobno obravnavano, pri čemer so podane analize, interpretacije in ključne ugotovitve, ki smo jih pridobili skozi ta proces
\section{Implementacija}
Pri sledenju objektov raziskovalci sledenje izvajajo z izračunom podobnosti med predlogo in iskalnim območjem v trenutnem okviru.
Metoda iskanja točk znotraj slike izhaja iz metode na področju sledenja objektov, vendar je ta metoda bolj zapletena kot sledenje objektov.
To je zato, ker sta predloga (dronska slika) in iskalna slika (satelitske slike) iz različnih pogledov, kar povzroča veliko variabilnost.
@ -1138,7 +1172,6 @@ Na izhodu dobimo toplotno karto iste velikosti kot vhodna satelitska slika v WAM
\label{fig:model_architecture}
\end{figure}
\subsection{Modul za ekstrakcijo značilnosti}
WAMF-FPI uporablja strukturo, podobno omrežju Siamese, vendar se razlikuje od tradicionalnega sledenja objektom.
Med satelitskimi in slikami brezpilotnega letalnika je velika razlika, saj izvirajo iz različnih naprav.
@ -1268,15 +1301,33 @@ Kjer so:
\item \( k \) je faktor merila, ki je v tem delu postavljen na 10.
\end{itemize}
\section{Učenje modela}
\chapter{Eksperimenti}
\label{ch3}
Model smo učili na računalniški konfiguraciji, opremljeni z visokozmogljivim procesorjem Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz s 12 jedri.
Dodatno je računalnik vseboval grafično kartico NVIDIA GeForce RTX 3060 s 12 GB pomnilnika, kar je omogočalo efektivno paralelizacijo in optimizacijo operacij, ki jih zahteva model med treningom.
V tem poglavju se bom osredotocil na eksperimente, ki sem jih izvedel.
Naš razvoj je temeljil na platformi Ubuntu z uporabo knjižnice PyTorch.
S to kombinacijo smo lahko izkoristili tako fleksibilnost razvoja kot tudi zmogljivosti, ki jih ponuja takšna strojna oprema.
Da bi povečali produktivnost in optimizirali proces, smo razvili avtomatizirane skripte, imenovane \texttt{push-ml-node} in \texttt{train-ml-node}.
Prva skripta je bila uporabljena za sinhronizacijo virov z računalnikom, medtem ko je bila druga skripta uporabljena za zagon samega učenja.
\begin{lstlisting}[language=bash]
train-ml-node: push-ml-node # Zagon ucenja na oddaljenem racunalniku
@echo "Training on ml-node"
ssh ml-node "tmux new-session -d -s training && \
tmux send-keys -t training 'cd /home/ml-node/Documents/uav-localization-2023 && \
. .venv/bin/activate && python3 train.py --config configuration-ml-node' C-m && \
tmux split-window -h -t training && \
tmux send-keys -t training 'nvtop' C-m"
\end{lstlisting}
Uporaba teh skript nam je omogočila, da hitro in enostavno zaženemo proces učenja, medtem ko smo lokalno nadaljevali z drugimi razvojnimi nalogami.
Skripta je avtomatizirala zagon učenja in spremljanje napredka s pomočjo orodja \texttt{nvtop}, kar je omogočilo nemoteno delo in hitro iteracijo modelov.
\section{Izbira kriterjiske funkcije}
Zanimalo me je kako se bo model obnesel, ko izbiramo razlicne kriterijske funkcije.
Zanimalo nas je kako se bo model obnesel, ko izbiramo razlicne kriterijske funkcije.
\subsection{Hanningova kriterijska funkcija}

BIN
img/region_structures.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB