Новая программа отслеживает движения сотен людей в толпе
Программисты написали код, способный различать на видео движения многих людей одновременно. Трудная даже для человека задача слежения за множественными траекториями впервые решена для нескольких целей сразу. Описание разработки опубликовано в журнале IEEE Transactions on Pattern Analysis and Machine Intelligence.
Автоматическое отслеживание людей на видеозаписи может спасти множество жизней. Анализ этой информации поможет предотвратить опасные скопления или определить подозрительное поведение. Предыдущие реализации фокусировались на отслеживании одного человека и отождествляли его на разных кадрах по внешнему виду.
В новой программе используется математическая функция, предсказывающая положение человека, основываясь на пяти факторах, вычисленных на основе предыдущих кадров. Первый — внешность, то есть соответствие между группами пикселей. Второй — движение: где может находиться человек, зная его координаты и скорость. Третий — соседи: если человека заслонили, то его положение вычисляется на основе движения соседей. Четвертый — пространственная близость: программа понимает, что два человека не могут занимать одно и то же положение в пространстве. Последний фактор — это группы: если несколько людей движутся согласованно, то программа определяет это и предполагает, что они будут сохранять относительное положение.
«Для большого количества людей точное решение найти невозможно», — говорит соавтор Афшин Дегхан из Университета Центральной Флориды. Программу протестировали на толпах от 57 до 747 людей. Она смогла отследить траектории с точностью от 67 до 99%, что намного превосходит альтернативные алгоритмы. Однако требуется около секунды для анализа каждого кадра, что не позволяет использовать программу для обработки видео в реальном времени.