Monitoraggio della posizione della palla nel cloud con PGA TOUR | Servizi Web di Amazon

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Servizi Web di Amazon

Il PGA TOUR continua a migliorare l'esperienza del golf con dati in tempo reale che avvicinano i fan al gioco. Per offrire esperienze ancora più ricche, stanno perseguendo lo sviluppo di un sistema di tracciamento della posizione della pallina di prossima generazione che traccia automaticamente la posizione della pallina sul green.

Il TOUR attualmente utilizza ShotLink basato su CDW, un sistema di punteggio di prim'ordine che utilizza un complesso sistema di telecamere con calcolo in loco, per monitorare da vicino la posizione iniziale e finale di ogni ripresa. Il TOUR voleva esplorare le tecniche di visione artificiale e apprendimento automatico (ML) per sviluppare una pipeline di prossima generazione basata su cloud per individuare le palline da golf sul putting green.

L'Amazon Generative AI Innovation Center (GAIIC) ha dimostrato l'efficacia di queste tecniche in un set di dati di esempio tratto da un recente evento PGA TOUR. Il GAIIC ha progettato una pipeline modulare che collega a cascata una serie di reti neurali convoluzionali profonde che localizza con successo i giocatori all’interno del campo visivo di una telecamera, determina quale giocatore sta mettendo e segue la palla mentre si muove verso la coppa.

In questo post descriviamo lo sviluppo di questa pipeline, i dati grezzi, la progettazione delle reti neurali convoluzionali che compongono la pipeline e una valutazione delle sue prestazioni.

Dati

Il TOUR ha fornito 3 giorni di riprese video continue di un recente torneo da tre telecamere 4K posizionate attorno al green su una buca. La figura seguente mostra un fotogramma di una telecamera ritagliato e ingrandito in modo che il giocatore che lancia sia facilmente visibile. Si noti che nonostante l'elevata risoluzione delle telecamere, a causa della distanza dal green, la pallina appare piccola (solitamente 3×3, 4×4 o 5×5 pixel) e bersagli di queste dimensioni possono essere difficili da localizzare con precisione.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Oltre ai feed della telecamera, il TOUR ha fornito al GAIIC dati di punteggio annotati su ogni ripresa, inclusa la posizione mondiale della sua posizione di riposo e il timestamp. Ciò ha consentito la visualizzazione di ogni putt sul green, nonché la possibilità di estrarre tutti i video clip dei giocatori che mettono, che potrebbero essere etichettati manualmente e utilizzati per addestrare i modelli di rilevamento che compongono la pipeline. La figura seguente mostra le tre viste della telecamera con sovrapposizioni approssimative del percorso del putt, in senso antiorario dall'alto a sinistra. La puntina viene spostata ogni giorno, dove il giorno 1 corrisponde al blu, il giorno 2 al rosso e il giorno 3 all'arancione.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Panoramica della pipeline

Il sistema complessivo è costituito sia da una pipeline di addestramento che da una pipeline di inferenza. Il diagramma seguente illustra l'architettura della pipeline di training. Il punto di partenza è l'acquisizione dei dati video, sia da un modulo di streaming come Cinesi amazzonica per video dal vivo o posizionamento direttamente in Servizio di archiviazione semplice Amazon (Amazon S3) per video storici. La pipeline di formazione richiede la preelaborazione video e l'etichettatura manuale delle immagini con Amazon SageMaker verità fondamentale. È possibile addestrare i modelli Amazon Sage Maker e i relativi artefatti archiviati con Amazon S3.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

La pipeline di inferenza, mostrata nel diagramma seguente, è costituita da una serie di moduli che estraggono successivamente informazioni dal video grezzo e infine predicono le coordinate mondiali della palla ferma. Inizialmente, il green viene ritagliato dal campo visivo più ampio di ciascuna telecamera, in modo da ridurre l'area dei pixel in cui i modelli devono cercare giocatori e palline. Successivamente, viene utilizzata una rete neurale convoluzionale profonda (CNN) per trovare la posizione delle persone nel campo visivo. Un'altra CNN viene utilizzata per prevedere quale tipo di persona è stata trovata per determinare se qualcuno sta per fare un putt. Dopo che un probabile putter è stato localizzato nel campo visivo, la stessa rete viene utilizzata per prevedere la posizione della palla vicino al putter. Una terza CNN segue la palla durante il suo movimento e, infine, viene applicata una funzione di trasformazione dalla posizione dei pixel della fotocamera alle coordinate GPS.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Rilevamento del giocatore

Anche se sarebbe possibile far funzionare una CNN per il rilevamento della palla su un intero fotogramma 4K a un intervallo prestabilito, data la dimensione angolare della palla a queste distanze della telecamera, qualsiasi piccolo oggetto bianco attiva un rilevamento, provocando molti falsi allarmi. Per evitare di cercare la palla nell'intero fotogramma dell'immagine, è possibile sfruttare le correlazioni tra la posa del giocatore e la posizione della palla. Una palla che sta per essere lanciata deve essere accanto a un giocatore, quindi trovare i giocatori nel campo visivo limiterà notevolmente l'area di pixel in cui il rilevatore deve cercare la palla.

Siamo stati in grado di utilizzare una CNN pre-addestrata per prevedere i riquadri attorno a tutte le persone in una scena, come mostrato nella figura seguente. Sfortunatamente, spesso c'è più di una pallina sul green, quindi è necessaria un'ulteriore logica oltre al semplice trovare tutte le persone e cercare una pallina. Ciò richiede che un'altra CNN trovi il giocatore che stava attualmente mettendo.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Classificazione dei giocatori e rilevamento della palla

Per restringere ulteriormente il campo in cui potrebbe trovarsi la palla, abbiamo messo a punto una CNN pre-addestrata per il rilevamento di oggetti (YOLO v7) per classificare tutte le persone sul green. Una componente importante di questo processo è stata l'etichettatura manuale di una serie di immagini utilizzando SageMaker Ground Truth. Le etichette hanno permesso alla CNN di classificare il giocatore che mette con elevata precisione. Nel processo di etichettatura, anche la palla veniva delineata insieme al giocatore che metteva il putt, quindi questa CNN è stata in grado di eseguire anche il rilevamento della palla, disegnando un perimetro iniziale attorno alla palla prima di un putt e inserendo le informazioni sulla posizione nella CNN di tracciamento della palla a valle. .

Utilizziamo quattro diverse etichette per annotare gli oggetti nelle immagini:

  • giocatore che mette – Il giocatore con in mano una mazza e nella posizione di putt
  • giocatore che non mette – Il giocatore non è nella posizione di putt (potrebbe anche avere in mano una mazza)
  • altra persona – Qualsiasi altra persona che non sia un giocatore
  • pallina da golf – La pallina da golf

La figura seguente mostra una CNN messa a punto utilizzando le etichette di SageMaker Ground Truth per classificare ogni persona nel campo visivo. Ciò è difficile a causa dell’ampia gamma di apparizioni visive di giocatori, caddie e tifosi. Dopo che un giocatore veniva classificato come puttatore, una CNN ottimizzata per il rilevamento della palla veniva applicata alla piccola area immediatamente attorno a quel giocatore.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Tracciamento del percorso della palla

Una terza CNN, un'architettura ResNet pre-addestrata per il tracciamento del movimento, è stata utilizzata per tracciare la palla dopo che è stata lanciata. Il tracciamento del movimento è un problema studiato a fondo, quindi questa rete ha funzionato bene quando è stata integrata nella pipeline senza ulteriori perfezionamenti.

Uscita della pipeline

La cascata di CNN posiziona dei riquadri attorno alle persone, classifica le persone sul green, rileva la posizione iniziale della palla e segue la palla una volta che inizia a muoversi. La figura seguente mostra l'output video etichettato della pipeline. Le posizioni dei pixel della palla mentre si muove vengono tracciate e registrate. Tieni presente che le persone sul green vengono tracciate e delineate da riquadri di delimitazione; il putter in basso è etichettato correttamente come "giocatore che mette" e la palla in movimento viene tracciata e delineata da un piccolo riquadro blu.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Prestazione

Per valutare le prestazioni dei componenti della pipeline, è necessario disporre di dati etichettati. Anche se ci veniva fornita la posizione mondiale della palla, non avevamo punti intermedi per la verità a terra, come la posizione finale in pixel della palla o la posizione in pixel del giocatore che mette. Con il lavoro di etichettatura che abbiamo svolto, abbiamo sviluppato dati concreti per questi output intermedi della pipeline che ci consentono di misurare le prestazioni.

Classificazione dei giocatori e precisione nel rilevamento della palla

Per il rilevamento del giocatore che mette e della posizione iniziale della palla, abbiamo etichettato un set di dati e messo a punto un modello CNN YOLO v7 come descritto in precedenza. Il modello ha classificato l'output del modulo di rilevamento della persona precedente in quattro classi: un giocatore che mette, un giocatore che non mette, altre persone e la pallina da golf, come mostrato nella figura seguente.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Le prestazioni di questo modulo vengono valutate con una matrice di confusione, mostrata nella figura seguente. I valori nelle caselle diagonali mostrano la frequenza con cui la classe prevista corrispondeva alla classe effettiva in base alle etichette di verità di base. Il modello ha un ricordo dell'89% o migliore per ogni classe di persona e un ricordo del 79% per le palline da golf (cosa prevedibile perché il modello è pre-addestrato su esempi con persone ma non su esempi con palline da golf; questo potrebbe essere migliorato con palline da golf più etichettate nel set da allenamento).

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Il prossimo passo è attivare il ball tracker. Poiché l'output del rilevamento della palla è una probabilità di confidenza, è anche possibile impostare la soglia per la "palla rilevata" e osservare come ciò modifica i risultati, riepilogati nella figura seguente. C'è un compromesso in questo metodo perché una soglia più alta avrà necessariamente meno falsi allarmi ma mancherà anche alcuni degli esempi meno certi di palle. Abbiamo testato soglie di confidenza del 20% e 50% e abbiamo rilevato un rilevamento della palla rispettivamente al 78% e al 61%. Con questa misura la soglia del 20% risulta migliore. Il compromesso è evidente in quanto per la soglia di confidenza del 20%, l’80% dei rilevamenti totali erano effettivamente palline (20% falsi positivi), mentre per la soglia di confidenza del 50%, il 90% erano palline (10% falsi positivi). Per un minor numero di falsi positivi, la soglia di confidenza del 50% è migliore. Entrambe queste misure potrebbero essere migliorate con più dati etichettati per un set di formazione più ampio.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

La velocità effettiva della pipeline di rilevamento è dell'ordine di 10 fotogrammi al secondo, quindi nella sua forma attuale una singola istanza non è abbastanza veloce per essere eseguita continuamente sull'input a 50 fotogrammi al secondo. Raggiungere il limite di 7 secondi per l'output dopo i passaggi della palla richiederebbe un'ulteriore ottimizzazione della latenza, magari eseguendo più versioni della pipeline in parallelo e comprimendo i modelli CNN tramite quantizzazione (ad esempio).

Precisione del tracciamento del percorso della palla

Il modello CNN pre-addestrato di MMTracking funziona bene, ma ci sono casi di fallimento interessanti. La figura seguente mostra un caso in cui il tracker inizia sulla palla, espande il suo riquadro di delimitazione per includere sia la testa del putter che la palla, quindi sfortunatamente traccia la testa del putter e dimentica la palla. In questo caso, la testa del putter appare bianca (probabilmente a causa della riflessione speculare), quindi la confusione è comprensibile; i dati etichettati per il monitoraggio e la messa a punto del monitoraggio CNN potrebbero contribuire a migliorare questo in futuro.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Conclusione

In questo post, abbiamo discusso dello sviluppo di una pipeline modulare che localizza i giocatori all'interno del campo visivo di una telecamera, determina quale giocatore sta mettendo e segue la palla mentre si muove verso la coppa.

Per ulteriori informazioni sulla collaborazione di AWS con PGA TOUR, fare riferimento a PGA TOUR collabora con AWS per reinventare l'esperienza dei fan.


Informazioni sugli autori

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Giacomo Dorato è uno scienziato applicato presso Amazon Bedrock con un background in apprendimento automatico e neuroscienze.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Enrico Wang è uno scienziato applicato presso Amazon Generative AI Innovation Center, dove ricerca e crea soluzioni di intelligenza artificiale generativa per i clienti AWS. Si concentra sui settori dello sport, dei media e dell'intrattenimento e in passato ha lavorato con varie leghe, squadre ed emittenti sportive. Nel tempo libero gli piace giocare a tennis e golf.

Monitoraggio della posizione della palla nel cloud con PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Tryambak Gangopadhyay è uno scienziato applicato presso l'AWS Generative AI Innovation Center, dove collabora con organizzazioni in un ampio spettro di settori. Il suo ruolo prevede la conduzione di ricerche e lo sviluppo di soluzioni di intelligenza artificiale generativa per affrontare le sfide aziendali cruciali e accelerare l'adozione dell'intelligenza artificiale.

Timestamp:

Di più da Apprendimento automatico di AWS