Мне нужна горизонтальная проекция xy двух объектов в видео. У меня есть полный контроль над окружающей средой, поэтому я помещаю камеру по центру сверху. (Я не интересуюсь самим видео, но из видео я также получаю меры для калибровки трека по соответствующим единицам).
Я думаю об использовании одного из реализованных алгоритмов отслеживания в opencv. Я играл с ними, запустив примеры кодов с примерами видео, и работал более чем хорошо.
Мой первый и самый главный вопрос:
Какой лучший маркер я могу использовать, если у меня есть свобода выбора? Я думал, что яркие светодиоды, скорее всего, самые легкие. Но я не уверен, учитывая, что этот алгоритм может работать лучше со сложными фигурами или объектами с большим количеством функций. Могут ли QR-коды работать лучше? Маркер будет двигаться и наклоняться, поэтому я не уверен. Свет звучит хорошо и достаточно устойчив к наклону.
Второй вопрос, который на самом деле, вероятно, зависит от первого:
Каков наилучший алгоритм отслеживания для этого сценария?
Я читал немного в Интернете. Очень хорошее резюме доступных методов отслеживания https://www.learnopencv.com/object-tracking-using-opencv-cpp-python/ откуда я думал, что я должен использовать трекер KCF. Но я не особо разбираюсь в алгоритмах и думаю, что, возможно, использую несовместимые идеи: например, отслеживание цвета, вероятно, является простым в том смысле, что это можно сделать с помощью некоторой цветовой фильтрации, и исходя из скорости, использующей некоторые предсказание и т. д. Но, может быть, эти алгоритмы, которые обнаруживают множество функций, не очень хорошо работают при простом освещении.
Итак, опять же, я думаю, что вопрос можно переформулировать так: какова лучшая комбинация маркера / алгоритма отслеживания в моем конкретном сценарии?
Эти алгоритмы отслеживания предназначены для отслеживания сложных рисунков, таких как лицо в видео, где меняется освещение и меняется направление головы. Если в вашем приложении вы можете использовать цвет или свет для уникальной маркировки вашего объекта, то это будет самый быстрый и простой алгоритм. если вам нужна очень точная локализация, вам следует рассмотреть возможность использования маркера, причина в том, что маркер допускает субпиксельную локализацию.
Других решений пока нет …