1

Я работаю над проектом, в котором я собираю людей, делающих броски с удачным броском через видеокамеру. Мне нужен способ как можно быстрее обнаружить момент, когда мяч освобождается от руки игрока. Я пытался исследовать множество алгоритмов обнаружения/отслеживания, но все, что я нашел, больше подходит для отслеживания самого шара. Хотя я, возможно, в конце концов захочу это сделать, сейчас все, что мне нужно знать, - это время выпуска.Обнаружение выпуска шара в режиме реального времени

Я также открыт для других решений, которые не используют камеру (у меня есть приличный бюджет), но, конечно, я бы хотел использовать камеру, если это возможно/достаточно быстро. Я также могу возиться с позиционированием/настройкой камеры и тем, что я даже хочу в FOV.

У кого-нибудь есть идеи? Я просто застрял прямо сейчас и не смог найти что-нибудь в Интернете, которое может помочь.

ответ

2

Решение состоит в использовании визуальных маркеров (движителей) на метательных руках и на шаре. Точность основана на FPS камеры.

Предполагается, что вы знаете размер шара и ручное сцепление на шаре, которое может варьироваться. Используя визуальные маркеры/трекеры, вы можете знать положение мяча относительно руки. Когда расстояние между начальным захватом шара и рукой больше, чем расстояние между центром шара и его оконечностью, тогда вы получаете свое освобождение. Schema of the method

Лучшее решение - использовать градуированную панель счетчика (чередуя между черными и белыми полосами, такими как те, которые используются на выставках мифов, для отслеживания скорости объектов). На данный момент есть цветовой разрыв между рукой и мячом, который у вас есть. Недостатком этого подхода является то, что вам нужно зафиксировать изображение под углом или сверху вниз и использовать панели для хранения градуировки.

Ваша проблема аналогична обнаружению столкновения бильярдного шара. Надеюсь, вы найдете this paper полезным.

Edit:

Существует мощный инструмент, который не так дорого по имени Microsoft Kinect используется для захвата движения. Недостатком этого инструмента является то, что камера работает с частотой 30 кадров в секунду, и вы не можете точно ее использовать на очень солнечной сцене. Однако я нашел научную статью об использовании kinect для записи спортсменов, включая бесплатные броски в баскетболе. Paper here

Это мой первый ответ на так. Любые отзывы о том, как улучшить мои будущие ответы, приветствуются.

+0

Спасибо за ваш ответ и иллюстрации. Думаю, я понимаю ваш первый момент, но просто чтобы убедиться, что вы говорите, что я должен самостоятельно определять руку и мяч в каждом кадре, пока критерии расстояния не будут удовлетворены? Разве это не было бы дорогостоящим вычислительным? Может быть, я не уверен, какие маркеры вы имели в виду. У меня возникла проблема представить вашу вторую идею (я не смотрю на мифов: /). Вы говорите, что у вас есть какой-то тип рисунка на полу, а затем обнаружите, когда появляется этот шаблон (я думаю, что это, безусловно, будет быстро)? Или вы говорите, чтобы каким-то образом использовать физический бар? –

+0

Кстати, ваш первый ответ был отличным. Мне нравится, что вы дали ссылки и даже зашли так далеко, чтобы рисовать иллюстрацию вашей первой идеи. Ваш ответ, по-видимому, красноречивый, просто потому, что для меня это все новое (видеозапись/анализ изображений), поэтому у меня есть свои проблемы. –

+0

@JohnAlperto Да, вы должны независимо определять руки и мяч в каждом кадре или, по крайней мере, в интересующих вас кадрах [link] https://en.wikipedia.org/wiki/Motion_capture Я не могу сказать точно о используемая вычислительная мощность, но по моему опыту с microsoft Kinect у меня не было проблем с отслеживанием нескольких объектов на моем ниже среднем ноутбуке. На второй идее, вот 1 минута видео youtube того, что я говорил [link] https://www.youtube.com/watch?v=BLuI118nhzc –