Люди считают с помощью OpenCV - PullRequest
10 голосов
/ 06 апреля 2011

Я начинаю поиск, чтобы внедрить систему, которая должна подсчитывать поток людей из какого-то места.Последняя идея - иметь что-то вроде http://www.youtube.com/watch?v=u7N1MCBRdl0.Я работаю с OpenCv, чтобы начать создавать его, я читаю и изучаю.Но я хотел бы знать, может ли кто-нибудь дать мне некоторые подсказки примеров исходного кода, статей и всего остального, что может ускорить мою сделку.

Я начал с примера blobtrack.exe для изучения,но я получил не очень хорошие результаты.

Tks в совете.

Ответы [ 2 ]

4 голосов
/ 10 июня 2011

Обнаружение BLOB-объектов является правильным способом сделать это, если вы выбираете хорошие пороговые значения и ваше освещение является равномерным и постоянным; но настоящая проблема здесь заключается в написании алгоритма отслеживания, который может отслеживать несколько BLOB-объектов, будучи устойчивым к пропущенным кадрам. По сути, вы хотите иметь возможность назначать постоянные идентификаторы каждому шарику для нескольких кадров, имея в виду, что из-за изменения условий освещения и из-за того, что люди идут очень близко друг к другу и / или пересекаются, капли могут выпадать в течение нескольких кадров, разделяться и / или объединить.

Чтобы сделать это «правильно», вам понадобится алгоритм нечеткого назначения идентификатора, устойчивый к пропущенным кадрам (то есть идентификатор блоба остается, и в идеале предсказывает движение, если капля выпадает на кадр или два). Возможно, вы также захотите сохранить историю слияния и разделения идентификаторов, так что если два идентификатора сливаются с одним, а затем один разделяется на два, вы можете переназначить отдельные объединенные идентификаторы полученным двум BLOB-объектам.

По моему опыту, базовый пример openFrameworks openCv является хорошей отправной точкой.

0 голосов
/ 22 августа 2016

Я не буду называть это правильным ответом.

Это просто вариант для тех, кто умеет читать по-португальски или может использовать переводчик.Это мой дипломный проект, и в нем есть объяснение возможности подсчитывать в нем людей.

Ограничения:

  • Он плохо себя ведет в окружающей среде, которая так сильно меняет фоновый свет.
  • Он должен быть настроен для каждого места, где вы будете его использовать.

Преимущества:

  • Это быстро!

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

Вы можете проверить его на этой бумаге

Окончательное мнение об этом проекте: он не готов к работежив, чтобы стал продуктом.Но это очень хорошо работает в качестве основы для учебы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...