Labdahelyzet követése a felhőben a PGA TOUR | segítségével Amazon webszolgáltatások

Labdahelyzet követése a felhőben a PGA TOUR | segítségével Amazon webszolgáltatások

Forrás csomópont: 3057379

A PGA TOUR továbbra is javítja a golf élményét valós idejű adatokkal, amelyek közelebb hozzák a rajongókat a játékhoz. A még gazdagabb élmények biztosítása érdekében egy új generációs labdahelyzet-követő rendszer kifejlesztésén dolgoznak, amely automatikusan követi a labda helyzetét a greenen.

A TOUR jelenleg a CDW által üzemeltetett ShotLink-et használja, egy elsőrangú pontozási rendszert, amely egy komplex kamerarendszert használ helyszíni számítással, hogy szorosan nyomon követhesse minden felvétel kezdő- és véghelyzetét. A TOUR a számítógépes látást és a gépi tanulási (ML) technikákat kívánta felfedezni, hogy egy következő generációs felhőalapú csővezetéket fejlesszen ki a golflabdák elhelyezésére a golfpályán.

Az Amazon Generative AI Innovation Center (GAIIC) egy közelmúltbeli PGA TOUR esemény példáján mutatta be e technikák hatékonyságát. A GAIIC egy moduláris csővezetéket tervezett, amely mély konvolúciós neurális hálózatok sorozatát lépcsőzi, amely sikeresen lokalizálja a játékosokat a kamera látóterében, meghatározza, melyik játékos helyezi el, és követi a labdát, ahogy az a csésze felé halad.

Ebben a bejegyzésben ismertetjük ennek a csővezetéknek a fejlesztését, a nyers adatokat, a csővezetéket alkotó konvolúciós neurális hálózatok tervezését és teljesítményének értékelését.

dátum

A TOUR 3 napos folyamatos videót biztosított egy közelmúltbeli versenyről három 4K kamerával, amelyek egy lyukon helyezkedtek el a green körül. A következő ábra egy kamera keretét ábrázolja, amely úgy van levágva és nagyítva, hogy a játékos elhelyezése jól látható legyen. Megjegyzendő, hogy a kamerák nagy felbontása ellenére a zöldtől való távolság miatt a labda kicsinek tűnik (általában 3×3, 4×4 vagy 5×5 pixeles), és az ilyen méretű célpontokat nehéz lehet pontosan lokalizálni.

A kamera feedjein kívül a TOUR a GAIIC-nek minden felvételen megjegyzésekkel ellátott pontozási adatokat adott, beleértve a nyugalmi helyzetének világbeli helyét és az időbélyeget. Ez lehetővé tette a greenen minden putt megjelenítését, valamint a játékosok dobásáról készült összes videoklip lekérését, amelyeket manuálisan fel lehetett címkézni és felhasználni a folyamatot alkotó észlelési modellek betanítására. A következő ábra a három kameranézetet mutatja hozzávetőleges puttolási útvonal fedvényekkel, az óramutató járásával ellentétes irányban a bal felső sarokban. A gombostűt minden nap áthelyezik, ahol az 1. nap a kéknek, a 2. nap a pirosnak, a 3. nap pedig a narancsnak felel meg.

Csővezeték áttekintése

A teljes rendszer egy tanítási folyamatból és egy következtetési folyamatból áll. A következő diagram a képzési folyamat felépítését mutatja be. A kiindulópont a videó adatok bevitele, akár egy streaming modulból, például Amazon kinezis élő videóhoz vagy közvetlen elhelyezéshez Amazon egyszerű tárolási szolgáltatás (Amazon S3) történelmi videóhoz. A képzési folyamathoz videó előfeldolgozásra és a képek kézi címkézésére van szükség Amazon SageMaker Ground Truth. A modellekkel lehet oktatni Amazon SageMaker és az Amazon S3-mal tárolt műtermékeik.

A következő diagramon látható következtetési csővezeték számos modulból áll, amelyek egymás után információt nyernek ki a nyers videóból, és végül előrejelzik a nyugalmi labda világkoordinátáit. Kezdetben a zöldet levágják a nagyobb látómezőből minden kameráról, hogy lecsökkentsék azt a pixelterületet, amelyben a modelleknek játékosokat és labdákat kell keresniük. Ezután egy mély konvolúciós neurális hálózatot (CNN) használnak az emberek helyzetének meghatározására a látómezőben. Egy másik CNN-t arra használnak, hogy megjósolják, milyen típusú személyt találtak, annak megállapítására, hogy valaki puttolni készül-e. Miután egy valószínű puttert lokalizáltak a látómezőben, ugyanazt a hálózatot használják a labda helyzetének előrejelzésére a putter közelében. Egy harmadik CNN követi a labdát a mozgása közben, végül pedig egy transzformációs funkciót alkalmaz a kamera pixel pozíciójából a GPS koordinátákba.

Játékos észlelés

Bár lehetséges lenne egy CNN-t futtatni a labda észlelésére egy teljes 4K-s képkockán meghatározott időközönként, tekintettel a labda szögméretére ezeknél a kameratávolságoknál, minden kis fehér tárgy észlelést vált ki, ami sok téves riasztást eredményez. Annak elkerülése érdekében, hogy a teljes képkeretben keressük a labdát, kihasználhatjuk a játékos póza és a labda elhelyezkedése közötti összefüggéseket. A lerakni készülő labdának a játékos mellett kell lennie, így a játékosok látómezőben való megtalálása nagymértékben korlátozza azt a pixelterületet, amelyben a detektornak meg kell keresnie a labdát.

Sikerült egy olyan CNN-t használni, amelyet előre kiképeztek a jelenetben szereplő összes ember körüli határolódobozok előrejelzésére, amint az a következő ábrán látható. Sajnos gyakran egynél több labda van a greenen, így további logikára van szükség az összes ember megtalálásán és a labda keresésén túl. Ehhez egy másik CNN-re van szükség, hogy megtalálja azt a játékost, aki éppen rakott.

Játékosok besorolása és labdaérzékelés

Annak érdekében, hogy tovább szűkítsük, hol lehet a labda, finomhangoltunk egy előre betanított objektumészlelési CNN-t (YOLO v7), hogy besoroljuk az összes embert a greenen. Ennek a folyamatnak egy fontos összetevője volt egy képkészlet manuális címkézése a SageMaker Ground Truth segítségével. A címkék lehetővé tették a CNN számára, hogy nagy pontossággal minősítse a játékos dobásokat. A címkézési folyamat során a labda is körvonalazódott a játékos dobásával együtt, így ez a CNN képes volt labdaérzékelést is végrehajtani, egy kezdeti határolókeretet rajzolva a labda köré putt előtt, és a pozícióinformációkat betáplálta a CNN utáni labdakövetőbe. .

Négy különböző címkét használunk a képeken szereplő objektumok megjegyzésére:

  • játékos-elhelyezés – Az a játékos, aki ütőt tart és helyező pozícióban van
  • játékos-nem-elhelyezés – Az a játékos, aki nincs helyezési pozícióban (lehet, hogy ütőt is tart)
  • más személy – Bármely más személy, aki nem játékos
  • Golf labda – A golflabda

A következő ábra azt mutatja, hogy egy CNN-t a SageMaker Ground Truth címkéivel finomhangoltak, hogy minden egyes személyt besoroljanak a látómezőbe. Ez nehéz a játékosok, caddie-k és rajongók vizuális megjelenésének széles skálája miatt. Miután egy játékost dobónak minősítettek, a CNN-t a labdaérzékelésre finoman beállították a játékos körüli kis területen.

Labdaút követése

Egy harmadik CNN-t, egy mozgáskövetésre előképzett ResNet architektúrát használtak a labda nyomon követésére a felhelyezés után. A mozgáskövetés alaposan feltárt probléma, így ez a hálózat további finomhangolás nélkül a csővezetékbe integrálva jól teljesített.

Csővezeték kimenet

A CNN-ek kaszkádja határoló dobozokat helyez el az emberek körül, osztályozza az embereket a zölden, érzékeli a labda kezdeti helyzetét, és követi a labdát, amint az elkezd mozogni. A következő ábra a csővezeték feliratozott videokimenetét mutatja. A labda mozgás közbeni pixelpozícióit követi és rögzíti. Vegye figyelembe, hogy a zölden lévő embereket határoló dobozok követik és körvonalazzák; az alján lévő putter helyesen „player putting”-ként van megjelölve, a mozgó labdát pedig egy kis kék határolókeret követi és körvonalazza.

teljesítmény

A csővezeték összetevőinek teljesítményének értékeléséhez címkézett adatokra van szükség. Habár megadtuk a labda földi igazság világpozícióját, nem voltak köztes pontjaink az alapigazsághoz, mint például a labda végső pixelpozíciója vagy a játékos helyezésének pixelhelye. Az általunk elvégzett címkézési munkával megalapozott igazságadatokat dolgoztunk ki a folyamat ezen közbenső kimeneteihez, amelyek lehetővé teszik a teljesítmény mérését.

A játékosok besorolása és a labdaérzékelés pontossága

A játékos elhelyezésének és a labda kezdeti helyének észleléséhez felcímkéztünk egy adatkészletet, és finomhangoltunk egy YOLO v7 CNN modellt a korábban leírtak szerint. A modell az előző személyészlelési modul kimenetét négy osztályba sorolta: egy játékos dob, egy játékos, aki nem dob, más emberek és a golflabda, amint az alábbi ábrán látható.

Ennek a modulnak a teljesítményét a következő ábrán látható zavarmátrix segítségével értékeljük. Az átlós mezőkben lévő értékek azt mutatják, hogy az előrejelzett osztály milyen gyakran egyezik az alapigazság-címkékből származó tényleges osztállyal. A modell 89%-os vagy jobb felidézéssel rendelkezik minden egyes személyi osztályban, és 79%-ban a golflabdák visszahívásában (ami várható is, mert a modellt előre kiképezték az emberekkel végzett példákra, de nem a golflabdákra; ez javítható több feliratú golflabdát az edzőkészletben).

A következő lépés a labdakövető aktiválása. Mivel a labdaérzékelés kimenete egy megbízhatósági valószínűség, beállítható az „észlelt labda” küszöbértéke is, és megfigyelhető, hogy ez hogyan változtatja meg az eredményeket, amelyet a következő ábra foglal össze. Van egy kompromisszum ebben a módszerben, mert magasabb küszöb esetén szükségszerűen kevesebb téves riasztás lesz, de kihagy néhány kevésbé biztos golyót is. 20%-os és 50%-os megbízhatósági küszöböt teszteltünk, és 78%-nál, illetve 61%-nál találtuk a labdaérzékelést. Ezzel az intézkedéssel a 20%-os küszöb jobb. A kompromisszum abban nyilvánul meg, hogy a 20%-os megbízhatósági küszöb esetén az összes észlelés 80%-a valójában golyó volt (20%-a hamis pozitív), míg az 50%-os megbízhatósági küszöb esetén 90%-a golyó volt (10%-a hamis pozitív). Kevesebb téves pozitív esetén az 50%-os megbízhatósági küszöb jobb. Mindkét intézkedés javítható több címkézett adattal egy nagyobb képzési sorozathoz.

Az észlelési csővezeték átviteli sebessége 10 képkocka/másodperc nagyságrendű, így jelenlegi formájában egyetlen példány sem elég gyors ahhoz, hogy a bemeneten folyamatosan 50 képkocka/s sebességgel futtasson. A golyós lépések utáni kimenet 7 másodperces jelölésének elérése további optimalizálást igényel a várakozási idő tekintetében, talán a folyamat több verziójának párhuzamos futtatásával és a CNN-modellek kvantálás útján történő tömörítésével (például).

Labdaút követési pontosság

Az MMTracking előre betanított CNN-modellje jól működik, de vannak érdekes meghibásodási esetek. A következő ábra egy olyan esetet mutat be, amikor a nyomkövető elindul a labdán, kibontja a határoló mezőt, hogy magában foglalja a putter fejet és a labdát is, majd sajnos követi a putter fejét és elfelejti a labdát. Ebben az esetben a putter fej fehérnek tűnik (esetleg a tükörreflexió miatt), így érthető a zavar; a nyomkövető CNN nyomon követéséhez és finomhangolásához szükséges címkézett adatok segíthetnek ennek javításában a jövőben.

Következtetés

Ebben a bejegyzésben egy olyan moduláris csővezeték fejlesztését vitattuk meg, amely lokalizálja a játékosokat a kamera látóterében, meghatározza, hogy melyik játékos helyezi el, és követi a labdát, ahogy az a csésze felé halad.

Az AWS és a PGA TOUR együttműködésével kapcsolatos további információkért lásd: A PGA TOUR az AWS-szel párosul, hogy újragondolhassa a rajongói élményt.


A szerzőkről

James Golden az Amazon Bedrock alkalmazott tudósa, gépi tanulási és idegtudományi háttérrel.

Henry Wang az Amazon Generative AI Innovation Center alkalmazott tudósa, ahol generatív AI-megoldásokat kutat és épít az AWS-ügyfelek számára. A sportra, valamint a média- és szórakoztatóiparra összpontosít, és korábban különböző sportligákkal, csapatokkal és műsorszolgáltatókkal dolgozott együtt. Szabadidejében szeret teniszezni és golfozni.

Tryambak Gangopadhyay az AWS Generative AI Innovation Center alkalmazott tudósa, ahol az iparágak legkülönbözőbb skáláján működő szervezetekkel működik együtt. Feladata a kutatások lefolytatása és a generatív mesterségesintelligencia-megoldások fejlesztése a kulcsfontosságú üzleti kihívások kezelésére és a mesterséges intelligencia elterjedésének felgyorsítására.

Időbélyeg:

Még több AWS gépi tanulás