Ballposisjonssporing i skyen med PGA TOUR | Amazon Web Services

Ballposisjonssporing i skyen med PGA TOUR | Amazon Web Services

PGA TOUR fortsetter å forbedre golfopplevelsen med sanntidsdata som bringer fansen nærmere spillet. For å levere enda rikere opplevelser, jobber de med utviklingen av et neste generasjons system for ballposisjonssporing som automatisk sporer ballens posisjon på greenen.

TOUR bruker for øyeblikket ShotLink drevet av CDW, et førsteklasses scoringssystem som bruker et komplekst kamerasystem med databehandling på stedet, for å nøye spore start- og sluttposisjonen til hvert skudd. TOUR ønsket å utforske teknikker for datasyn og maskinlæring (ML) for å utvikle en neste generasjons skybasert pipeline for å lokalisere golfballer på puttinggreenen.

Amazon Generative AI Innovation Center (GAIIC) demonstrerte effektiviteten til disse teknikkene i et eksempeldatasett fra et nylig PGA TOUR-arrangement. GAIIC designet en modulær rørledning som fosser inn i en serie dype konvolusjonelle nevrale nettverk som vellykket lokaliserer spillere innenfor et kameras synsfelt, bestemmer hvilken spiller som setter, og sporer ballen når den beveger seg mot koppen.

I dette innlegget beskriver vi utviklingen av denne rørledningen, rådataene, utformingen av de konvolusjonelle nevrale nettverkene som utgjør rørledningen, og en evaluering av ytelsen.

Data

TOUREN ga 3 dager med kontinuerlig video fra en nylig turnering fra tre 4K-kameraer plassert rundt greenen på ett hull. Følgende figur viser en ramme fra ett kamera beskåret og zoomet slik at spilleren er lett synlig. Merk at til tross for den høye oppløsningen til kameraene, på grunn av avstanden fra greenen, virker ballen liten (vanligvis 3×3, 4×4 eller 5×5 piksler), og mål av denne størrelsen kan være vanskelig å lokalisere nøyaktig.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

I tillegg til kamerafeedene, ga TOUR GAIIC kommenterte poengdata for hvert skudd, inkludert verdensplasseringen for hvileposisjonen og tidsstemplet. Dette muliggjorde visualiseringer av hver putt på greenen, samt muligheten til å trekke alle videoklippene av spillere som puttet, som kunne merkes manuelt og brukes til å trene deteksjonsmodeller som utgjør rørledningen. Følgende figur viser de tre kameravisningene med omtrentlige puttbaneoverlegg, mot klokken fra øverst til venstre. Pinnen flyttes hver dag, der dag 1 tilsvarer blått, dag 2 til rødt og dag 3 til oransje.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Rørledningsoversikt

Det overordnede systemet består av både en treningsrørledning og inferensrørledning. Følgende diagram illustrerer arkitekturen til treningsrørledningen. Utgangspunktet er inntak av videodata, enten fra en strømmemodul som Amazon Kinesis for direktesendt video eller plassering direkte i Amazon enkel lagringstjeneste (Amazon S3) for historisk video. Opplæringspipelinen krever videoforbehandling og håndmerking av bilder med Amazon SageMaker Ground Truth. Modeller kan trenes med Amazon SageMaker og deres gjenstander lagret med Amazon S3.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Inferensrørledningen, vist i følgende diagram, består av en rekke moduler som suksessivt trekker ut informasjon fra råvideoen og til slutt forutsier verdenskoordinatene til ballen i ro. Til å begynne med beskjæres greenen fra det større synsfeltet fra hvert kamera, for å kutte ned på pikselområdet der modellene må søke etter spillere og baller. Deretter brukes et dypt konvolusjonelt nevralt nettverk (CNN) for å finne plasseringene til mennesker i synsfeltet. En annen CNN brukes til å forutsi hvilken type person som er funnet for å avgjøre om noen er i ferd med å putte. Etter at en sannsynlig putter har blitt lokalisert i synsfeltet, brukes det samme nettverket til å forutsi plasseringen av ballen nær putteren. En tredje CNN sporer ballen under bevegelsen, og til slutt brukes en transformasjonsfunksjon fra kamerapikselposisjon til GPS-koordinater.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Spillergjenkjenning

Selv om det ville være mulig å kjøre en CNN for balldeteksjon over en hel 4K-ramme med et bestemt intervall, gitt vinkelstørrelsen på ballen ved disse kameraavstandene, utløser enhver liten hvit gjenstand en deteksjon, noe som resulterer i mange falske alarmer. For å unngå å søke i hele bilderammen etter ballen, er det mulig å dra nytte av korrelasjoner mellom spillerens positur og ballplassering. En ball som er i ferd med å bli puttet må være ved siden av en spiller, så å finne spillerne i synsfeltet vil i stor grad begrense pikselområdet der detektoren må søke etter ballen.

Vi var i stand til å bruke en CNN som var forhåndsopplært til å forutsi avgrensende bokser rundt alle menneskene i en scene, som vist i følgende figur. Dessverre er det ofte mer enn én ball på greenen, så ytterligere logikk kreves utover å bare finne alle mennesker og lete etter en ball. Dette krever en annen CNN for å finne spilleren som for øyeblikket satt.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Spillerklassifisering og balldeteksjon

For ytterligere å begrense hvor ballen kunne være, finjusterte vi en forhåndstrent objektdeteksjon CNN (YOLO v7) for å klassifisere alle personene på greenen. En viktig komponent i denne prosessen var å manuelt merke et sett med bilder ved hjelp av SageMaker Ground Truth. Etikettene gjorde det mulig for CNN å klassifisere spilleren med høy nøyaktighet. I merkeprosessen ble ballen også skissert sammen med spillerens putting, så denne CNN var i stand til å utføre balldeteksjon også, tegne en innledende grenseboks rundt ballen før et putt og matet posisjonsinformasjonen inn i nedstrøms ballsporing CNN .

Vi bruker fire forskjellige etiketter for å kommentere objektene i bildene:

  • spiller-putting – Spilleren som holder en kølle og er i putteposisjon
  • spiller-ikke-putting – Spilleren som ikke er i puttingposisjon (kan også holde en kølle)
  • annen person – Enhver annen person som ikke er en spiller
  • Golf ball – Golfballen

Følgende figur viser et CNN som ble finjustert ved å bruke etiketter fra SageMaker Ground Truth for å klassifisere hver person i synsfeltet. Dette er vanskelig på grunn av det store spekteret av visuelle opptredener til spillere, caddier og fans. Etter at en spiller ble klassifisert som putting, ble en CNN finjustert for balldeteksjon brukt på det lille området rett rundt spilleren.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Ballbanesporing

En tredje CNN, en ResNet-arkitektur som er forhåndstrenet for bevegelsessporing, ble brukt til å spore ballen etter at den ble puttet. Bevegelsessporing er et grundig undersøkt problem, så dette nettverket presterte bra når det ble integrert i rørledningen uten ytterligere finjustering.

Rørledningsutgang

Kaskaden av CNN-er plasserer grensebokser rundt mennesker, klassifiserer folk på greenen, oppdager den første ballposisjonen og sporer ballen når den begynner å bevege seg. Følgende figur viser den merkede videoutgangen til rørledningen. Pikselposisjonene til ballen når den beveger seg, spores og registreres. Merk at folk på greenen blir sporet og skissert av avgrensningsbokser; putteren nederst er korrekt merket som "spillerputting", og den bevegelige ballen spores og omrisses av en liten blå grenseboks.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Ytelse

For å vurdere ytelsen til komponenter i rørledningen, er det nødvendig å ha merket data. Selv om vi ble forsynt med jordsannhetens verdensposisjon for ballen, hadde vi ikke mellompoeng for jordsannheten, som den endelige pikselposisjonen til ballen eller pikselplasseringen til spilleren som puttet. Med merkejobben vi utførte, utviklet vi grunnleggende sannhetsdata for disse mellomresultatene av rørledningen som lar oss måle ytelse.

Spillerklassifisering og balldeteksjonsnøyaktighet

For å oppdage spillerens putting og den første ballplasseringen, merket vi et datasett og finjusterte en YOLO v7 CNN-modell som beskrevet tidligere. Modellen klassifiserte utdataene fra den forrige persondeteksjonsmodulen i fire klasser: en spiller som putter, en spiller som ikke putter, andre personer og golfballen, som vist i følgende figur.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Ytelsen til denne modulen vurderes med en forvirringsmatrise, vist i følgende figur. Verdiene i de diagonale boksene viser hvor ofte den forutsagte klassen samsvarte med den faktiske klassen fra grunnsannhetsetikettene. Modellen har 89 % tilbakekalling eller bedre for hver personklasse, og 79 % tilbakekalling for golfballer (som er å forvente fordi modellen er forhåndstrent på eksempler med mennesker, men ikke på eksempler med golfballer; dette kan forbedres med flere merkede golfballer i treningssettet).

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Neste trinn er å utløse ballsporeren. Fordi balldeteksjonsutgangen er en konfidenssannsynlighet, er det også mulig å sette terskelen for "oppdaget ball" og observere hvordan det endrer resultatene, oppsummert i følgende figur. Det er en avveining i denne metoden fordi en høyere terskel nødvendigvis vil ha færre falske alarmer, men også gå glipp av noen av de mindre sikre eksemplene på baller. Vi testet terskler på 20 % og 50 % konfidens, og fant balldeteksjon på henholdsvis 78 % og 61 %. Ved dette tiltaket er 20 %-terskelen bedre. Avveiningen er tydelig ved at for 20 % konfidensgrensen var 80 % av de totale deteksjonene faktisk baller (20 % falsk positive), mens for 50 % konfidensgrense var 90 % baller (10 % falsk positive). For færre falske positiver er 50 % konfidensgrense bedre. Begge disse tiltakene kan forbedres med mer merkede data for et større treningssett.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Deteksjonsrørledningens gjennomstrømning er i størrelsesorden 10 bilder per sekund, så i sin nåværende form er ikke en enkelt forekomst rask nok til å kjøres kontinuerlig på inngangen med 50 bilder per sekund. Å oppnå 7-sekundersmerket for utgang etter kuletrinnene vil kreve ytterligere optimalisering for ventetid, kanskje ved å kjøre flere versjoner av rørledningen parallelt og komprimere CNN-modellene via kvantisering (for eksempel).

Ballbanesporingsnøyaktighet

Den ferdigtrente CNN-modellen fra MMTracking fungerer bra, men det er interessante feiltilfeller. Følgende figur viser et tilfelle der trackeren starter på ballen, utvider grenseboksen til å inkludere både putterhodet og ballen, og så dessverre sporer putterhodet og glemmer ballen. I dette tilfellet virker putterhodet hvitt (muligens på grunn av speilrefleksjon), så forvirringen er forståelig; merket data for sporing og finjustering av sporingen CNN kan bidra til å forbedre dette i fremtiden.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

konklusjonen

I dette innlegget diskuterte vi utviklingen av en modulær pipeline som lokaliserer spillere innenfor et kameras synsfelt, bestemmer hvilken spiller som putter, og sporer ballen når den beveger seg mot koppen.

For mer informasjon om AWS-samarbeid med PGA TOUR, se PGA TOUR starter opp med AWS for å gjenskape fanopplevelsen.


Om forfatterne

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.James Golden er en anvendt vitenskapsmann ved Amazon Bedrock med bakgrunn innen maskinlæring og nevrovitenskap.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Henry Wang er en anvendt vitenskapsmann ved Amazon Generative AI Innovation Center, hvor han forsker på og bygger generative AI-løsninger for AWS-kunder. Han fokuserer på sport og media og underholdningsindustri, og har jobbet med ulike sportsligaer, lag og kringkastere tidligere. På fritiden liker han å spille tennis og golf.

Ball position tracking in the cloud with the PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Tryambak Gangopadhyay er en Applied Scientist ved AWS Generative AI Innovation Center, hvor han samarbeider med organisasjoner på tvers av et mangfoldig spekter av bransjer. Hans rolle innebærer å drive forskning og utvikle generative AI-løsninger for å møte viktige forretningsutfordringer og akselerere AI-adopsjon.

Tidstempel:

Mer fra AWS maskinlæring