Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Веб-сервіси Amazon

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Веб-сервіси Amazon

PGA TOUR продовжує покращувати враження від гольфу завдяки даним у реальному часі, які наближають уболівальників до гри. Щоб отримати ще більше можливостей, вони розробляють систему відстеження положення м’яча наступного покоління, яка автоматично відстежує положення м’яча на зеленому майданчику.

Наразі TOUR використовує ShotLink на основі CDW, першокласну систему підрахунку балів, яка використовує складну систему камер із обчисленням на місці, щоб ретельно відстежувати початкову та кінцеву позиції кожного пострілу. TOUR хотів вивчити методи комп’ютерного бачення та машинного навчання (ML), щоб розробити хмарний конвеєр наступного покоління для визначення місцезнаходження м’ячів для гольфу на майданчику для гольфу.

Amazon Generative AI Innovation Center (GAIIC) продемонстрував ефективність цих методів на прикладі набору даних з нещодавнього заходу PGA TOUR. GAIIC розробив модульний конвеєр, що каскадує низку глибоких згорткових нейронних мереж, які успішно локалізують гравців у полі зору камери, визначають, який гравець кладе, і відстежують м’яч, коли він рухається до чашки.

У цій публікації ми описуємо розробку цього конвеєра, необроблені дані, дизайн згорткових нейронних мереж, що входять до конвеєра, і оцінюємо його продуктивність.

дані

TOUR надав 3 дні безперервного відео з нещодавнього турніру з трьох камер 4K, розташованих навколо грина на одній лунці. На наступному малюнку зображено кадр з однієї камери, обрізаний і збільшений, щоб було легко видно гравця. Зауважте, що незважаючи на високу роздільну здатність камер, через відстань до зеленого м’яч виглядає маленьким (зазвичай 3 × 3, 4 × 4 або 5 × 5 пікселів), і цілі такого розміру може бути важко точно локалізувати.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

На додаток до каналів камери, TOUR надав GAIIC анотовані дані оцінки для кожного знімка, включно зі світовим місцезнаходженням місця спокою та міткою часу. Це дозволяло візуалізувати кожен патт на гріні, а також можливість витягувати всі відеокліпи гравців, які кладуть, які можна було вручну позначати та використовувати для навчання моделей виявлення, які складають конвеєр. На наступному малюнку показано три види камери з приблизними накладеннями траєкторії удару проти годинникової стрілки з верхнього лівого кута. Булавка пересувається щодня, де день 1 відповідає синьому, день 2 — червоному, а день 3 — помаранчевому.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Огляд трубопроводу

Загальна система складається як з навчального конвеєра, так і з конвеєра висновку. Наступна діаграма ілюструє архітектуру конвеєра навчання. Відправною точкою є прийом відеоданих, або з потокового модуля, наприклад Амазонський кінезіс для живого відео або розміщення безпосередньо в Служба простого зберігання Amazon (Amazon S3) для історичного відео. Навчальний конвеєр вимагає попередньої обробки відео та ручного маркування зображень Основна правда Amazon SageMaker. З моделями можна тренуватися Amazon SageMaker та їхні артефакти, що зберігаються в Amazon S3.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Конвеєр виведення, показаний на наступній діаграмі, складається з кількох модулів, які послідовно витягують інформацію з необробленого відео та в кінцевому підсумку передбачають світові координати м’яча в стані спокою. Спочатку зелений колір обрізається з більшого поля зору кожної камери, щоб зменшити область пікселів, у якій моделі повинні шукати гравців і м’ячі. Потім глибока згорточна нейронна мережа (CNN) використовується для визначення місцезнаходження людей у ​​полі зору. Інший CNN використовується, щоб передбачити, який тип людини було знайдено, щоб визначити, чи хтось збирається зробити удар. Після локалізації ймовірного патера в полі зору ця ж мережа використовується для прогнозування розташування м’яча біля патера. Третій CNN відстежує м'яч під час його руху, і, нарешті, застосована функція перетворення з положення пікселя камери в координати GPS.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Виявлення гравця

Хоча було б можливо запустити CNN для виявлення кулі на всьому кадрі 4K із заданим інтервалом, враховуючи кутовий розмір кулі на цих відстанях камери, будь-який маленький білий об’єкт ініціює виявлення, що призводить до багатьох помилкових тривог. Щоб уникнути пошуку м’яча по всьому кадру зображення, можна скористатися кореляцією між позою гравця та розташуванням м’яча. М’яч, який збирається поставити, має бути поруч із гравцем, тому знаходження гравців у полі зору значно обмежить область пікселів, у якій детектор має шукати м’яч.

Ми змогли використати CNN, який був попередньо навчений передбачати обмежувальні рамки навколо всіх людей у ​​сцені, як показано на наступному малюнку. На жаль, часто на зеленому полі є більше однієї кулі, тому потрібна додаткова логіка, крім простого пошуку всіх людей і пошуку кулі. Для цього потрібен інший CNN, щоб знайти гравця, який зараз клав.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Класифікація гравців і виявлення м'яча

Щоб ще більше звузити коло м’яча, ми налаштували попередньо навчену систему виявлення об’єктів CNN (YOLO v7), щоб класифікувати всіх людей на зеленому полі. Важливим компонентом цього процесу було ручне маркування набору зображень за допомогою SageMaker Ground Truth. Мітки дозволили CNN класифікувати гравця з високою точністю. У процесі маркування м’яч також був окреслений контуром разом із гравцем, який кидає його, тому цей CNN також міг виконувати виявлення м’яча, малюючи початкову обмежувальну рамку навколо м’яча перед ударом і надаючи інформацію про положення в CNN, що відстежує м’яч. .

Ми використовуємо чотири різні мітки для позначення об’єктів на зображеннях:

  • гравець кладе – Гравець, який тримає ключку і знаходиться в позиції кладки
  • гравець не кладе – Гравець не в позиції виведення (також може тримати ключку)
  • інша людина – Будь-яка інша особа, яка не є гравцем
  • м'яч для гольфу – М’яч для гольфу

На наступному малюнку показано, що CNN було налаштовано за допомогою міток від SageMaker Ground Truth для класифікації кожної людини в полі зору. Це складно через широкий діапазон візуального вигляду гравців, кедді та вболівальників. Після того, як гравець був класифікований як гравець, CNN, налаштований на виявлення м’яча, застосовувався до невеликої області безпосередньо навколо цього гравця.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Відстеження шляху м'яча

Третій CNN, архітектура ResNet, попередньо навчена для відстеження руху, використовувалася для відстеження м’яча після того, як його було введено. Відстеження руху є ретельно дослідженою проблемою, тому ця мережа працювала добре, якщо її інтегрувати в конвеєр без подальшого тонкого налаштування.

Конвеєрний вихід

Каскад CNN розміщує обмежувальні рамки навколо людей, класифікує людей на зеленому полі, визначає початкове положення м’яча та відстежує м’яч, коли він починає рухатися. На наступному малюнку показано позначений відеовихід конвеєра. Позиції пікселів кульки під час її руху відстежуються та записуються. Зауважте, що люди на зеленому полі відстежуються та окреслюються обмежувальними рамками; клюшка внизу правильно позначена як «гравець кладе», а м’яч, що рухається, відстежується та обводиться маленькою синьою обмежувальною рамкою.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

продуктивність

Щоб оцінити продуктивність компонентів конвеєра, необхідно мати позначені дані. Незважаючи на те, що нам було надано реальну позицію м’яча у світі, у нас не було проміжних точок для правдивості на землі, як-от остаточне піксельне положення м’яча або піксельне розташування гравця, який кладе. За допомогою роботи з маркування, яку ми виконали, ми розробили базові дані правдивості для цих проміжних виходів конвеєра, які дозволяють нам вимірювати продуктивність.

Класифікація гравців і точність визначення м'яча

Для виявлення кидка гравця та початкового розташування м’яча ми позначили набір даних і налаштували модель YOLO v7 CNN, як описано раніше. Модель класифікувала вихідні дані попереднього модуля виявлення особи на чотири класи: гравець кладе, гравець не кладе, інші люди та м’яч для гольфу, як показано на наступному малюнку.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Продуктивність цього модуля оцінюється за допомогою матриці помилок, показаної на наступному малюнку. Значення в діагональних прямокутниках показують, як часто передбачуваний клас збігається з фактичним класом із базових міток істинності. Модель має 89% запам’ятовування або краще для кожного класу людини та 79% запам’ятовування м’ячів для гольфу (що й слід очікувати, оскільки модель попередньо навчена на прикладах з людьми, але не на прикладах з м’ячами для гольфу; це можна покращити за допомогою більше маркованих м’ячів для гольфу в навчальному наборі).

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Наступним кроком є ​​запуск трекера куль. Оскільки вихідні дані виявлення м’яча є довірчою ймовірністю, також можна встановити поріг для «виявленого м’яча» та спостерігати, як це змінює результати, узагальнені на наступному малюнку. У цьому методі є компроміс, оскільки вищий поріг обов’язково матиме менше помилкових тривог, але також пропускатиме деякі з менш певних прикладів м’ячів. Ми протестували порогові значення 20% і 50% достовірності та виявили, що виявлення м’яча становить 78% і 61% відповідно. За цим показником поріг у 20% є кращим. Компроміс очевидний у тому, що для 20% порогу достовірності 80% від загальної кількості виявлень були фактично кульками (20% хибнопозитивними), тоді як для 50% порогу впевненості 90% були кульками (10% хибнопозитивними). Для меншої кількості хибних спрацьовувань кращим є 50% поріг достовірності. Обидва ці показники можна покращити за допомогою більш позначених даних для більшого навчального набору.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Пропускна здатність конвеєра виявлення становить близько 10 кадрів на секунду, тому в його поточному вигляді окремий екземпляр недостатньо швидкий, щоб безперервно працювати на вхідних даних зі швидкістю 50 кадрів на секунду. Досягнення 7-секундної позначки для виведення після кульових кроків вимагатиме подальшої оптимізації затримки, можливо, шляхом запуску кількох версій конвеєра паралельно та стиснення моделей CNN за допомогою квантування (наприклад).

Точність відстеження шляху м'яча

Попередньо навчена модель CNN від MMTracking працює добре, але є цікаві випадки збою. На наступному малюнку показано випадок, коли трекер починає роботу з м’ячем, розширює свою обмежувальну рамку, щоб включити голову клюшки та м’яч, а потім, на жаль, відстежує голову клюшки та забуває м’яч. У цьому випадку головка клюшки виглядає білою (можливо, через дзеркальне відбиття), тому плутанина зрозуміла; позначені дані для відстеження та тонкого налаштування відстеження CNN можуть допомогти покращити це в майбутньому.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Висновок

У цьому дописі ми обговорювали розробку модульного конвеєра, який локалізує гравців у полі зору камери, визначає, який гравець кладе, і відстежує м’яч, коли він рухається до чашки.

Додаткову інформацію про співпрацю AWS із PGA TOUR див PGA TOUR поєднується з AWS, щоб переосмислити досвід шанувальників.


Про авторів

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Джеймс Голден є прикладним науковцем в Amazon Bedrock із досвідом машинного навчання та нейронаук.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Генрі Ван є прикладним науковцем у Amazon Generative AI Innovation Center, де він досліджує та створює генеративні рішення AI для клієнтів AWS. Він зосереджується на спорті, медіа та індустрії розваг, і в минулому працював з різними спортивними лігами, командами та телекомпаніями. У вільний час він любить грати в теніс і гольф.

Відстеження положення м’яча в хмарі за допомогою PGA TOUR | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Трямбак Гангопадхяй є прикладним науковцем у Центрі інновацій AWS Generative AI, де він співпрацює з організаціями з різних галузей. Його роль включає проведення досліджень і розробку рішень Generative AI для вирішення важливих бізнес-завдань і прискорення впровадження AI.

Часова мітка:

Більше від AWS Машинне навчання