Advanced Driver Assistance System for Occlusion Removal : From System Design to Software-in-the-Loop Testing
Leppäaho, Arttu (2026)
Leppäaho, Arttu
2026
Tietotekniikan DI-ohjelma - Master's Programme in Information Technology
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
Hyväksymispäivämäärä
2026-03-06
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202603063013
https://urn.fi/URN:NBN:fi:tuni-202603063013
Tiivistelmä
Cars have advanced far since their invention in the 19th century, but road safety remains a challenge even in the present day. Electronics are continuously playing a larger role in the pursuit of safer driving, a trend partially driven by the recent proliferation of autonomous vehicles. Sensors in particular are vital in enabling a vehicle to operate autonomously without human intervention, but they also enable new kinds of advanced driver assistance systems (ADAS) which—as the term implies—assist a human driver without assuming full control of the vehicle.
This thesis explores the idea of expanding a driver’s field of vision by using digital image processing to make occluding objects in the environment transparent. This technique has the potential to prevent accidents by allowing the driver to react to things that would not otherwise be visible. The transparency effect can be achieved through depth-image-based rendering (DIBR), which requires image data from different viewpoints in the environment around the vehicle. The acquired data is combined into a 3D model that contains more spatial information of the environment than would fit into a flat 2D image. An intuitive way to visualize the 3D model is to show it from the driver’s perspective without drawing any of the occlusions, allowing the driver to see through them. Using the driver’s own perspective makes it easier to understand the true locations of the objects in the image, which is important so that the driver can parse the view quickly and react immediately if the situation demands it.
As part of this thesis, a software solution is proposed for generating see-through views using DIBR. The software had to be lightweight enough to run in real time on a low-power embedded platform that could be reasonably placed inside a real car. An NVIDIA Jetson development board was used to represent such a platform. Furthermore, fast and reliable wireless communication was needed to share data with the vehicle. High Efficiency Video Coding (HEVC) was used to compress the sensor data and thus keep the network bandwidth manageable without sacrificing visual quality.
Simulations cannot fully replace real-world testing, but they are a good way to preliminarily test vehicular systems without the risk of damage or injury should something go wrong. The proposed ADAS was tested in a software-in-the-loop (SIL) simulation with a simulation framework that replicated the real execution environment of the software by providing virtual sensors and traffic. The existing framework was extended with a flexible data processing module to achieve the desired functionality. SOLID software development principles were used to create an object-oriented design that is easy to extend for future use cases.
Based on visual and performance evaluations, the proposed ADAS was found suitable for real-time use in low-velocity traffic assuming that sufficient sensor coverage and network availability can be provided. The latency of the system was measured to be around 32 ms when using 256×256 images. The see-through views are useful even at such low image resolutions, but the sensors must be positioned parallel to the viewing direction for the best results. All implemented software is cross-platform and exclusively uses open-source tools. Autot ovat kehittyneet paljon siitä, kun ne alun perin keksittiin 1800-luvulla, mutta liikenneturvallisuus on mittava haaste vielä nykymaailmassakin. Elektroniikan rooli turvallisuuden parantamisessa on kasvanut jatkuvasti, osittain itseajavien ajoneuvojen yleistymisen myötä. Sensoreiden avulla ajoneuvot kykenevät toimimaan itsenäisesti ilman ihmisen apua, mutta niitä hyödyntäen voidaan myös rakentaa uudenlaisia ajoavustinjärjestelmiä (ADAS), jotka nimensä mukaisesti avustavat ihmiskuljettajaa ottamatta kuitenkaan ajoneuvoa kokonaan hallintaansa.
Tässä diplomityössä tutkitaan liikenteessä esiintyvien näköesteiden muuttamista läpinäkyviksi digitaalisen kuvankäsittelyn keinoin. Näin voitaisiin mahdollisesti parantaa kuljettajan havainnointikykyä ja siten ehkäistä liikenneonnettomuuksia. Läpinäkyvyysefekti voidaan toteuttaa hyödyntäen syvyyskuvapohjaista renderöintiä (DIBR), johon tarvitaan kuvadataa ajoneuvon ympäristön eri kuvakulmista. Kerätty data yhdistetään 3D-malliksi, joka sisältää enemmän tietoa ympäristöstä kuin yksittäiset 2D-kuvat. Seuraavaksi 3D-malli voidaan piirtää kuljettajan perspektiivistä ilman näköesteitä, jolloin kuljettaja näkee niiden läpi. Kuljettajan oman perspektiivin käyttäminen auttaa hahmottamaan kuvassa näkyvien kohteiden todelliset sijainnit paremmin, ja nopea hahmottaminen on tärkeää, jotta kuljettaja voi tarpeen tullen reagoida tilanteeseen välittömästi.
Osana tätä diplomityötä esitetään ohjelmistoratkaisu näköesteiden poistoon DIBR:n avulla. Ohjelmiston täytyi olla tarpeeksi kevyt toimiakseen pienitehoisella sulautetulla alustalla, joka voitaisiin sijoittaa oikeisiin henkilöautoihin. NVIDIA Jetson -kehityslauta valittiin edustamaan tällaista alustaa. Datan jakaminen liikkuvan ajoneuvon kanssa edellyttää lisäksi nopeaa ja luotettavaa langatonta tiedonsiirtoa. Tässä hyödynnettiin High Efficiency Video Coding (HEVC) -pakkausstandardia, joka kykenee pienentämään sensoridatan kaistanleveyttä merkittävästi huonontamatta kuitenkaan sen visuaalista laatua.
Simulaatiot eivät korvaa todellisessa maailmassa tapahtuvaa testausta kokonaan, mutta ne soveltuvat ajoneuvojärjestelmien alustavaan testaamiseen turvallisesti ilman onnettomuus- ja loukkaantumisriskejä. Esitettyä ajoavustinjärjestelmää testattiin software-in-the-loop (SIL) -simulaatiossa, joka mallinsi ohjelmiston todellista ajoympäristöä virtuaalisten sensoreiden ja liikenteen avulla. Olemassa olevaa simulaatioympäristöä laajennettiin joustavalla tiedonkäsittelymoduulilla halutun toiminnallisuuden saavuttamiseksi. SOLID-ohjelmistokehitysperiaatteita hyödynnettiin muihin käyttötarkoituksiin helposti laajennettavan oliopohjaisen arkkitehtuurin luomiseksi.
Visuaalis- ja suorituskykyanalyysin perusteella työssä esitetty ajoavustinjärjestelmä soveltuu reaaliaikaiseen käyttöön matalanopeuksisessa liikenteessä olettaen, että riittävä sensoreiden kattavuus ja langattoman verkon saatavuus voidaan taata. Järjestelmän viiveen mitattiin olevan noin 32 ms käytettäessä 256×256 pikselin kuvia. Näinkin pienet läpinäkyvyyskuvat ovat vielä käyttökelpoisia, mutta parhaan kuvanlaadun saavuttamiseksi sensorit tulee sijoittaa samansuuntaisesti katselusuuntaan nähden. Kaikki toteutetut ohjelmistot ovat alustariippumattomia ja hyödyntävät ainoastaan avoimen lähdekoodin työkaluja.
This thesis explores the idea of expanding a driver’s field of vision by using digital image processing to make occluding objects in the environment transparent. This technique has the potential to prevent accidents by allowing the driver to react to things that would not otherwise be visible. The transparency effect can be achieved through depth-image-based rendering (DIBR), which requires image data from different viewpoints in the environment around the vehicle. The acquired data is combined into a 3D model that contains more spatial information of the environment than would fit into a flat 2D image. An intuitive way to visualize the 3D model is to show it from the driver’s perspective without drawing any of the occlusions, allowing the driver to see through them. Using the driver’s own perspective makes it easier to understand the true locations of the objects in the image, which is important so that the driver can parse the view quickly and react immediately if the situation demands it.
As part of this thesis, a software solution is proposed for generating see-through views using DIBR. The software had to be lightweight enough to run in real time on a low-power embedded platform that could be reasonably placed inside a real car. An NVIDIA Jetson development board was used to represent such a platform. Furthermore, fast and reliable wireless communication was needed to share data with the vehicle. High Efficiency Video Coding (HEVC) was used to compress the sensor data and thus keep the network bandwidth manageable without sacrificing visual quality.
Simulations cannot fully replace real-world testing, but they are a good way to preliminarily test vehicular systems without the risk of damage or injury should something go wrong. The proposed ADAS was tested in a software-in-the-loop (SIL) simulation with a simulation framework that replicated the real execution environment of the software by providing virtual sensors and traffic. The existing framework was extended with a flexible data processing module to achieve the desired functionality. SOLID software development principles were used to create an object-oriented design that is easy to extend for future use cases.
Based on visual and performance evaluations, the proposed ADAS was found suitable for real-time use in low-velocity traffic assuming that sufficient sensor coverage and network availability can be provided. The latency of the system was measured to be around 32 ms when using 256×256 images. The see-through views are useful even at such low image resolutions, but the sensors must be positioned parallel to the viewing direction for the best results. All implemented software is cross-platform and exclusively uses open-source tools.
Tässä diplomityössä tutkitaan liikenteessä esiintyvien näköesteiden muuttamista läpinäkyviksi digitaalisen kuvankäsittelyn keinoin. Näin voitaisiin mahdollisesti parantaa kuljettajan havainnointikykyä ja siten ehkäistä liikenneonnettomuuksia. Läpinäkyvyysefekti voidaan toteuttaa hyödyntäen syvyyskuvapohjaista renderöintiä (DIBR), johon tarvitaan kuvadataa ajoneuvon ympäristön eri kuvakulmista. Kerätty data yhdistetään 3D-malliksi, joka sisältää enemmän tietoa ympäristöstä kuin yksittäiset 2D-kuvat. Seuraavaksi 3D-malli voidaan piirtää kuljettajan perspektiivistä ilman näköesteitä, jolloin kuljettaja näkee niiden läpi. Kuljettajan oman perspektiivin käyttäminen auttaa hahmottamaan kuvassa näkyvien kohteiden todelliset sijainnit paremmin, ja nopea hahmottaminen on tärkeää, jotta kuljettaja voi tarpeen tullen reagoida tilanteeseen välittömästi.
Osana tätä diplomityötä esitetään ohjelmistoratkaisu näköesteiden poistoon DIBR:n avulla. Ohjelmiston täytyi olla tarpeeksi kevyt toimiakseen pienitehoisella sulautetulla alustalla, joka voitaisiin sijoittaa oikeisiin henkilöautoihin. NVIDIA Jetson -kehityslauta valittiin edustamaan tällaista alustaa. Datan jakaminen liikkuvan ajoneuvon kanssa edellyttää lisäksi nopeaa ja luotettavaa langatonta tiedonsiirtoa. Tässä hyödynnettiin High Efficiency Video Coding (HEVC) -pakkausstandardia, joka kykenee pienentämään sensoridatan kaistanleveyttä merkittävästi huonontamatta kuitenkaan sen visuaalista laatua.
Simulaatiot eivät korvaa todellisessa maailmassa tapahtuvaa testausta kokonaan, mutta ne soveltuvat ajoneuvojärjestelmien alustavaan testaamiseen turvallisesti ilman onnettomuus- ja loukkaantumisriskejä. Esitettyä ajoavustinjärjestelmää testattiin software-in-the-loop (SIL) -simulaatiossa, joka mallinsi ohjelmiston todellista ajoympäristöä virtuaalisten sensoreiden ja liikenteen avulla. Olemassa olevaa simulaatioympäristöä laajennettiin joustavalla tiedonkäsittelymoduulilla halutun toiminnallisuuden saavuttamiseksi. SOLID-ohjelmistokehitysperiaatteita hyödynnettiin muihin käyttötarkoituksiin helposti laajennettavan oliopohjaisen arkkitehtuurin luomiseksi.
Visuaalis- ja suorituskykyanalyysin perusteella työssä esitetty ajoavustinjärjestelmä soveltuu reaaliaikaiseen käyttöön matalanopeuksisessa liikenteessä olettaen, että riittävä sensoreiden kattavuus ja langattoman verkon saatavuus voidaan taata. Järjestelmän viiveen mitattiin olevan noin 32 ms käytettäessä 256×256 pikselin kuvia. Näinkin pienet läpinäkyvyyskuvat ovat vielä käyttökelpoisia, mutta parhaan kuvanlaadun saavuttamiseksi sensorit tulee sijoittaa samansuuntaisesti katselusuuntaan nähden. Kaikki toteutetut ohjelmistot ovat alustariippumattomia ja hyödyntävät ainoastaan avoimen lähdekoodin työkaluja.
