Добрый день. Возникла такая задача, подумал, может быть вы покажете пути решения. Я уже совсем замучался, но, кажется, не вижу чего-то совсем простого.
Есть камера, которая зафиксирована и смотрит вертикально вниз. Есть люди, которые там ходят или стоят. Задача - отслеживать людей в видеопотоке. Как следить за движущимися людьми - вполне понятно (считать разность интенсивности цвета каждого пикселя по нескольким кадрам, делать threshold и т.п. Проблемы начинаются тогда, когда объект останавливается. У меня было две идеи: следить за каждой областью, где есть движение, при помощи чего-то вроде camshift, либо стягивать вокруг этой области активный контур (snake), который будет отслеживать эту область даже тогда, когда она остановится. С обоими идеями возникли проблемы (гистограммы кадра с человеком и без очень похожи, а параметры активного контура не получилось нормально подобрать). Возможно есть решение проще и лучше. Может чего подскажете? Прилагаю примеры кадров с человеком и без оного: