Augmented-Reality (AR) is a technology that combines the real 3D world with digital features, with the possibility of reflecting digital components directly on the real environment through the use of transparent screens or lenses. Since AR allows the user to interact with the surrounding environment, augmented with virtual elements, it can be successfully applied in many different fields including racing applications. Herein the creation of an AR video for racing applications has been considered: a virtual car (i.e., Ghost) is projected on the frames captured by a camera mounted on a real vehicle (i.e., Ego) providing AR images from the driver-like POV. Correctly computing the Ghost car pose (position and orientation) with respect to Ego for each captured frame is essential to obtain a realistic video. The heading angle is the most important quantity to estimate since it directly affects how the Ghost car moves in the generated video: an imprecise or noisy estimate results in a flickering Ghost, moving late with respect to Ego. Also, precisely knowing the camera mounting angles is fundamental so to faithfully reproduce what would happen in the real world inside the virtual environment. This estimation procedure is known as camera boresighting. The aim of this thesis project is to analyze different techniques for heading estimation, providing two effective solutions in terms of noise reduction and delay introduction, suitable for off-line and real-time working scenarios respectively. Moreover, an algorithm to automatically perform camera boresighting has been designed, overcoming the limitations of the standard manual procedure. Finally, in order to build a standalone application for AR video generation, a complete framework has been developed in Python, proposing a unique and standardized pipeline from input data to the output AR video. The result of this work is an executable program that takes data from different sensors on the Ego car (e.g., GPS and IMU) and video frames as input. It then computes the Ghost car relative pose by collecting all the innovative aspects mentioned above, and provides an Augmented-Reality video showing a Ghost car racing from the Ego-driver's point of view.

La Realtà Aumentata (RA) è una tecnologia che combina mondo reale ed elementi virtuali, che possono essere proiettati direttamente sulla realtà attraverso l'uso di schermi trasparenti o lenti. Dal momento che la RA permette di interagire con l'ambiente circostante, arricchito da elementi virtuali, essa trova applicazione in molti ambiti diversi, tra cui il mondo racing. Qui viene presa in considerazione la creazione di un video in realtà aumentata in cui una macchina virtuale, denominata Ghost, viene proiettata sui frame raccolti da una camera montata su una macchina reale, denominata Ego, fornendo quindi una visuale dal punto di vista del pilota. Per ottenere un video realistico, è cruciale calcolare correttamente posizione ed orientamento del Ghost rispetto a Ego per ogni frame. L'angolo di heading è la quantità più importante da stimare, dato che influenza direttamente come la Ghost si muove nel video: una stima imprecisa o rumorosa provoca dei tremolii e dei ritardi nel movimento del Ghost rispetto a quello di Ego. Inoltre anche conoscere precisamente gli angoli di montaggio della camera è di fondamentale importanza, per riprodurre fedelmente ciò che accadrebbe nel mondo reale all'interno di quello virtuale. Questa procedura di stima è nota come boresighting della camera. L'obiettivo di questa tesi è quello di analizzare diverse tecniche per la stima dell'heading, proponendo due soluzioni efficaci dal punto di vista di rumore e ritardo, adatte rispettivamente ad applicazioni off-line e real-time. Inoltre è stato sviluppato un algoritmo per automatizzare il boresightig della camera, superando così i limiti dell'approccio standard manuale. Infine, nell'ottica di costruire un'applicazione per la realizzazione di video in RA, è stato progettato su Python un framework completo, definendo una pipeline standardizzata dai dati di input al video di output. Il risultato finale del lavoro svolto è un programma eseguibile che prende in input dati provenienti da diversi sensori localizzati sulla macchina Ego (come GPS o IMU) insieme ai frame raccolti dalla camera. Dopodichè calcola la pose relativa del Ghost e produce un video in RA che mostra la Ghost car gareggiare, dal punto di vista del pilota all'interno di Ego.

Augmented reality in racing applications: development of a framework for heading estimation and camera automatic boresighting

RETTORE, FRANCESCO
2021/2022

Abstract

Augmented-Reality (AR) is a technology that combines the real 3D world with digital features, with the possibility of reflecting digital components directly on the real environment through the use of transparent screens or lenses. Since AR allows the user to interact with the surrounding environment, augmented with virtual elements, it can be successfully applied in many different fields including racing applications. Herein the creation of an AR video for racing applications has been considered: a virtual car (i.e., Ghost) is projected on the frames captured by a camera mounted on a real vehicle (i.e., Ego) providing AR images from the driver-like POV. Correctly computing the Ghost car pose (position and orientation) with respect to Ego for each captured frame is essential to obtain a realistic video. The heading angle is the most important quantity to estimate since it directly affects how the Ghost car moves in the generated video: an imprecise or noisy estimate results in a flickering Ghost, moving late with respect to Ego. Also, precisely knowing the camera mounting angles is fundamental so to faithfully reproduce what would happen in the real world inside the virtual environment. This estimation procedure is known as camera boresighting. The aim of this thesis project is to analyze different techniques for heading estimation, providing two effective solutions in terms of noise reduction and delay introduction, suitable for off-line and real-time working scenarios respectively. Moreover, an algorithm to automatically perform camera boresighting has been designed, overcoming the limitations of the standard manual procedure. Finally, in order to build a standalone application for AR video generation, a complete framework has been developed in Python, proposing a unique and standardized pipeline from input data to the output AR video. The result of this work is an executable program that takes data from different sensors on the Ego car (e.g., GPS and IMU) and video frames as input. It then computes the Ghost car relative pose by collecting all the innovative aspects mentioned above, and provides an Augmented-Reality video showing a Ghost car racing from the Ego-driver's point of view.
CENTURIONI, MARCO
FRANCESCHETTI, LUCA
GAMBAROTTO, LUCA
SAVARESI, SERGIO MATTEO
ING - Scuola di Ingegneria Industriale e dell'Informazione
4-mag-2023
2021/2022
La Realtà Aumentata (RA) è una tecnologia che combina mondo reale ed elementi virtuali, che possono essere proiettati direttamente sulla realtà attraverso l'uso di schermi trasparenti o lenti. Dal momento che la RA permette di interagire con l'ambiente circostante, arricchito da elementi virtuali, essa trova applicazione in molti ambiti diversi, tra cui il mondo racing. Qui viene presa in considerazione la creazione di un video in realtà aumentata in cui una macchina virtuale, denominata Ghost, viene proiettata sui frame raccolti da una camera montata su una macchina reale, denominata Ego, fornendo quindi una visuale dal punto di vista del pilota. Per ottenere un video realistico, è cruciale calcolare correttamente posizione ed orientamento del Ghost rispetto a Ego per ogni frame. L'angolo di heading è la quantità più importante da stimare, dato che influenza direttamente come la Ghost si muove nel video: una stima imprecisa o rumorosa provoca dei tremolii e dei ritardi nel movimento del Ghost rispetto a quello di Ego. Inoltre anche conoscere precisamente gli angoli di montaggio della camera è di fondamentale importanza, per riprodurre fedelmente ciò che accadrebbe nel mondo reale all'interno di quello virtuale. Questa procedura di stima è nota come boresighting della camera. L'obiettivo di questa tesi è quello di analizzare diverse tecniche per la stima dell'heading, proponendo due soluzioni efficaci dal punto di vista di rumore e ritardo, adatte rispettivamente ad applicazioni off-line e real-time. Inoltre è stato sviluppato un algoritmo per automatizzare il boresightig della camera, superando così i limiti dell'approccio standard manuale. Infine, nell'ottica di costruire un'applicazione per la realizzazione di video in RA, è stato progettato su Python un framework completo, definendo una pipeline standardizzata dai dati di input al video di output. Il risultato finale del lavoro svolto è un programma eseguibile che prende in input dati provenienti da diversi sensori localizzati sulla macchina Ego (come GPS o IMU) insieme ai frame raccolti dalla camera. Dopodichè calcola la pose relativa del Ghost e produce un video in RA che mostra la Ghost car gareggiare, dal punto di vista del pilota all'interno di Ego.
File allegati
File Dimensione Formato  
2023_05_Rettore_ExecutiveSummary.pdf

non accessibile

Descrizione: Executive Summary
Dimensione 3.67 MB
Formato Adobe PDF
3.67 MB Adobe PDF   Visualizza/Apri
2023_05_Rettore_Tesi.pdf

non accessibile

Descrizione: Tesi
Dimensione 59.85 MB
Formato Adobe PDF
59.85 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/211898