Фильтр частиц для OpenCV-2.4.3?

Я использую opencv-2.4.3 в c, я застрял в части отслеживания лица, я хочу использовать фильтры частиц для отслеживания, я получил его в версии opencv-2.1, но новая версия opencv, похоже, не имеет этого фильтра или может быть имя будет быть другим, кто-нибудь работал с opencv-2.4.3 и может сказать мне, как использовать фильтр частиц (конденсата) в opencv-2.4.3


person shreya    schedule 06.02.2013    source источник


Ответы (3)


Фильтр частиц — это очень специфическая реализация байесовских методов вывода. Конденсация — это особый фильтр частиц, который стал популярным, потому что он использовался для отслеживания визуальных объектов. Однако фильтры частиц следует рассматривать как основу или архитектуру, которая может быть реализована для каждой проблемы.

Насколько мне известно, OpenCV включает алгоритм уплотнения, но вы должны предоставить функции правдоподобия. Честно говоря, я бы не стал использовать сгущение для отслеживания лиц, потому что оно, скорее всего, не будет работать должным образом: внешний вид лиц сильно меняется, и трудно определить динамическую модель, которая следует потенциальным вариациям лица в последовательностях.

Существуют гораздо более продвинутые и надежные методы отслеживания лиц (упомянем только один — онлайн-модели внешности, http://www.cs.toronto.edu/~fleet/research/Papers/cvpr-01A.pdf). Но если вам нужно что-то простое, я бы начал использовать детектор лиц, такой как те, которые дают каскады ( http://docs.opencv.org/doc/tutorials/objdetect/cascade_classifier/cascade_classifier.html#cascade-classifier ) и обнаружения ссылок с помощью cv::KalmanFilter::KalmanFilter. Кроме того, вы получите примерно те же результаты, что и при конденсации с использованием cv::CamShift.

person marcos.nieto    schedule 28.03.2013

Как сказал marcos.nieto, фильтр частиц — это инструмент аппроксимации, который ускоряет моделирование объекта (описание объекта) и процедуру поиска (вместо жадного поиска по каждому пикселю окна поиска, как это делал бы классификатор).

Кроме того, скорость обновления моделирования недостаточна, как сказал Маркос, чтобы покрыть внезапные изменения внешнего вида, и если вы увеличите ее, ваш трекер в конечном итоге уйдет.

Я предлагаю попробовать комбинацию VideoSurveillance и файла Каскадный классификатор для создания объектно-ориентированного трекера с ассоциацией данных ответов по кадрам.

person LovaBill    schedule 29.03.2013

Хотя вы в основном работаете с OpenCV, взгляните на реализацию C# алгоритма фильтрации частиц (и Kalman тоже) в библиотеке расширений Accord.NET. Образцы включены. Ссылка: https://github.com/dajuric/accord-net-extensions

person dajuric    schedule 08.08.2014