Change Detection in Point Clouds — Processing and Visualising Changes in Multi-epoch Datasets

dc.contributorAalto-yliopistofi
dc.contributorAalto Universityen
dc.contributor.advisorIngman, Matias
dc.contributor.advisorEl-Mahgary, Sami
dc.contributor.authorSarlin, Markus
dc.contributor.schoolSähkötekniikan korkeakoulufi
dc.contributor.supervisorVaaja, Matti
dc.date.accessioned2022-03-27T17:06:49Z
dc.date.available2022-03-27T17:06:49Z
dc.date.issued2022-03-21
dc.description.abstractIn the past decade, 3D models and point clouds in particular have spread from research laboratories to the public and means of obtaining point clouds have become both easily available and affordable. As a consequence, point clouds representing co-located areas at different times are becoming commonplace. The aim of this thesis was to develop a processing chain and a Python program for detecting and visualising changes in a temporally separated, co-located sequence of point clouds. To accomplish this, suitable open-source Python libraries were identified and used for developing a pair of programs. The two programs are a point cloud processing pipeline and a visualising program. The processing pipeline identifies changes in the point clouds and stores the differences to a local database file. Storing only the changes minimises the resulting file size. The visualisation pipeline extracts the stored point clouds from the database and loads them in an interactive visualiser-window for the user to inspect. The most important libraries used were NumPy, Pandas, Open3D, DuckDB, and PPTK. The first two are standard Python scientific computing and data analysis libraries. Open3D is a library for processing 3D models. The last two are a visualisation library and a serverless database management system. The implemented method for change detection computes the nearest neighbour distance from the compared point cloud epoch to the reference epoch and uses a global threshold to determine whether the point has changed. This approach yields results that are comparable to the level of accuracy obtained from the industry standard software, CloudCompare. Furthermore, a visualisation mask was implemented to remove points obstructing the changes from the visualisation. The pipeline was successfully tested with datasets of up to 35 million points per epoch.en
dc.description.abstractViimeisen vuosikymmenen aikana kolmiulotteiset mallit ja pistepilvet ovat löytäneet tutkijakammioista yleisön käyttöön. Nykyään pistepilvien tuottaminen on maallikoillekin mahdollista. Samalla samaa paikkaa kuvaavat pistepilviaikasarjat ovat yleistyneet. Tämän diplomityön tavoitteena oli kehittää pistepilvien prosessointiketju ja Python ohjelma pistepilvien muutostulkintaan ja visualisointiin. Tarkoitusta varten etsittiin sopivat ohjelmointikirjastot ja niillä toteutettiin ohjelmapari. Ensimmäinen ohjelma prosessoi sarjan pistepilviä, tunnistaa niistä muutokset ja tallettaa ne paikalliseen tietokantatiedostoon. Ohjelma tallentaa vain muutokset. Näin saadaan minimoitua tietokannan tiedostokoko. Toinen ohjelma lukee tietokantaa ja lataa pistepilvet interaktiiviseen visualisointi-ikkunaan. Tärkeimmät ohjelmointikirjastot olivat NumPy, Pandas, Open3D, PPTK ja DuckDB. Ensimmäiset ovat Pythonin tieteellisen laskennan peruskirjastoja. Open3D on kirjasto kolmiulotteisen datan käsittelyyn. Viimeisenä mainitut kirjastot ovat visualisointia ja tietokantaa varten. Muutostulkinta tehtiin laskemalla verrattavasta pistepilvestä pistekohtaiset etäisyydet referenssipistepilveen. Jos etäisyys oli suurempi kuin raja-arvo, piste katsottiin muuttuneeksi. Menetelmä tuotti vastaavia tuloksia kuin tarkoitukseen yleisesti käytetty ohjelma, CloudCompare. Visualisointia varten ohjelma etsii referenssipistepilvestä pisteet, jotka peittäisivät alleen muutokset ja jättää ne näyttämättä. Ohjelmat toimivat hyvin testiaineistolla, jossa suurimmissa pistepilvissä oli jopa 35 miljoonaa pistettä.fi
dc.format.extent94
dc.format.mimetypeapplication/pdfen
dc.identifier.urihttps://aaltodoc.aalto.fi/handle/123456789/113692
dc.identifier.urnURN:NBN:fi:aalto-202203272574
dc.language.isoenen
dc.locationP1fi
dc.programmeAEE - Master’s Programme in Automation and Electrical Engineering (TS2013)fi
dc.programme.majorControl, Robotics and Autonomous Systemsfi
dc.programme.mcodeELEC3025fi
dc.subject.keywordtemporal point cloudsen
dc.subject.keywordmulti-epoch point cloudsen
dc.subject.keywordchange detectionen
dc.subject.keywordvisualisationen
dc.subject.keywordPythonen
dc.subject.keywordOpen3Den
dc.titleChange Detection in Point Clouds — Processing and Visualising Changes in Multi-epoch Datasetsen
dc.titlePistepilvien muutostulkinta — Aikasarjojen prosessointi ja visualisointi Pythonillafi
dc.typeG2 Pro gradu, diplomityöfi
dc.type.ontasotMaster's thesisen
dc.type.ontasotDiplomityöfi
local.aalto.electroniconlyyes
local.aalto.openaccessyes
Files
Original bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
master_Sarlin_Markus_2022.pdf
Size:
105.6 MB
Format:
Adobe Portable Document Format