The purpose of this study is to detect all swimmers inside the pool by a moving camera video race. The camera is free to move in any direction and rotation. Swimmer tracking and estimation of its position will follow by applying detection algorithms. The problem of swimmer detection is the same as distinguishing foreground and background. Refer to the video race, all background objects will move in the swimmers’ opposite direction. Regarding this view, the optical dense flow method has been used to form a mask of swimmers and background items. In some frames, swimmer detection fails when the relative speed between the camera and swimmer is zero. To deal with this problem, Lucas- Kanade method is used to follow important Shi-Tomasi feature points linked to the swimmers. By approaching the watershed method, swimmers will be followed in almost all video frames. By having the position of swimmers at each video frame, a transformation has been carried out to show their explicit positions. This transformation has been implemented in two steps; first, a panorama view of the pool has been used to determine the 3D geometry transformation from video frames to panorama view. The panorama view has been constructed from the video file using RANSAC algorithm applied to features between different frames. Then, the transformation from the panorama view to the top view of the pool has been computed using fixed features of the pool. The Kalman filtering approach is used to eliminate noise and extend the truthfulness of the results. Implementation of all concepts has been done in Python, with a combination of computer vision and machine learning libraries.

Lo scopo di questo studio è quello di rilevare tutti i nuotatori all'interno della piscina da una gara video con telecamera in movimento. La telecamera è libera di muoversi in qualsiasi direzione e rotazione. Seguiranno il monitoraggio del nuotatore e la stima della sua posizione applicando algoritmi di rilevamento. Il problema del rilevamento del nuotatore è lo stesso di distinguere il primo piano e lo sfondo. Fai riferimento alla gara video, tutti gli oggetti sullo sfondo si muoveranno nella direzione opposta dei nuotatori. Per quanto riguarda questa vista, il metodo del flusso denso ottico è stato utilizzato per formare una maschera di nuotatori e oggetti di sfondo. In alcuni fotogrammi, il rilevamento del nuotatore non riesce quando la velocità relativa tra la telecamera e il nuotatore è zero. Per affrontare questo problema, il metodo Lucas-Kanade viene utilizzato per seguire importanti punti caratteristici Shi-Tomasi legati ai nuotatori. Avvicinandosi al metodo spartiacque, i nuotatori saranno seguiti in quasi tutti i fotogrammi video. Avendo la posizione dei nuotatori in ogni fotogramma video, è stata effettuata una trasformazione per mostrare le loro posizioni esplicite. Questa trasformazione è stata implementata in due fasi; in primo luogo, è stata utilizzata una vista panoramica della piscina per determinare la trasformazione della geometria 3D dai fotogrammi video alla vista panoramica. La vista panoramica è stata costruita dal file video utilizzando l'algoritmo RANSAC applicato a elementi tra diversi fotogrammi. Quindi, la trasformazione dalla vista panoramica alla vista dall'alto della piscina è stata calcolata utilizzando le caratteristiche fisse della piscina. L'approccio di filtraggio di Kalman viene utilizzato per eliminare il rumore ed estendere la veridicità dei risultati. L'implementazione di tutti i concetti è stata eseguita in Python, con una combinazione di librerie di visione artificiale e apprendimento automatico.

Swimmer tracking and position estimation in active camera video race

KALAGAR, BASHIR
2020/2021

Abstract

The purpose of this study is to detect all swimmers inside the pool by a moving camera video race. The camera is free to move in any direction and rotation. Swimmer tracking and estimation of its position will follow by applying detection algorithms. The problem of swimmer detection is the same as distinguishing foreground and background. Refer to the video race, all background objects will move in the swimmers’ opposite direction. Regarding this view, the optical dense flow method has been used to form a mask of swimmers and background items. In some frames, swimmer detection fails when the relative speed between the camera and swimmer is zero. To deal with this problem, Lucas- Kanade method is used to follow important Shi-Tomasi feature points linked to the swimmers. By approaching the watershed method, swimmers will be followed in almost all video frames. By having the position of swimmers at each video frame, a transformation has been carried out to show their explicit positions. This transformation has been implemented in two steps; first, a panorama view of the pool has been used to determine the 3D geometry transformation from video frames to panorama view. The panorama view has been constructed from the video file using RANSAC algorithm applied to features between different frames. Then, the transformation from the panorama view to the top view of the pool has been computed using fixed features of the pool. The Kalman filtering approach is used to eliminate noise and extend the truthfulness of the results. Implementation of all concepts has been done in Python, with a combination of computer vision and machine learning libraries.
ING - Scuola di Ingegneria Industriale e dell'Informazione
15-dic-2020
2020/2021
Lo scopo di questo studio è quello di rilevare tutti i nuotatori all'interno della piscina da una gara video con telecamera in movimento. La telecamera è libera di muoversi in qualsiasi direzione e rotazione. Seguiranno il monitoraggio del nuotatore e la stima della sua posizione applicando algoritmi di rilevamento. Il problema del rilevamento del nuotatore è lo stesso di distinguere il primo piano e lo sfondo. Fai riferimento alla gara video, tutti gli oggetti sullo sfondo si muoveranno nella direzione opposta dei nuotatori. Per quanto riguarda questa vista, il metodo del flusso denso ottico è stato utilizzato per formare una maschera di nuotatori e oggetti di sfondo. In alcuni fotogrammi, il rilevamento del nuotatore non riesce quando la velocità relativa tra la telecamera e il nuotatore è zero. Per affrontare questo problema, il metodo Lucas-Kanade viene utilizzato per seguire importanti punti caratteristici Shi-Tomasi legati ai nuotatori. Avvicinandosi al metodo spartiacque, i nuotatori saranno seguiti in quasi tutti i fotogrammi video. Avendo la posizione dei nuotatori in ogni fotogramma video, è stata effettuata una trasformazione per mostrare le loro posizioni esplicite. Questa trasformazione è stata implementata in due fasi; in primo luogo, è stata utilizzata una vista panoramica della piscina per determinare la trasformazione della geometria 3D dai fotogrammi video alla vista panoramica. La vista panoramica è stata costruita dal file video utilizzando l'algoritmo RANSAC applicato a elementi tra diversi fotogrammi. Quindi, la trasformazione dalla vista panoramica alla vista dall'alto della piscina è stata calcolata utilizzando le caratteristiche fisse della piscina. L'approccio di filtraggio di Kalman viene utilizzato per eliminare il rumore ed estendere la veridicità dei risultati. L'implementazione di tutti i concetti è stata eseguita in Python, con una combinazione di librerie di visione artificiale e apprendimento automatico.
File allegati
File Dimensione Formato  
BashirKalagar914336.pdf

accessibile in internet per tutti

Dimensione 123.83 MB
Formato Adobe PDF
123.83 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/175287