Настройка параметров для отслеживания BLOB-объектов OpenCV - PullRequest
0 голосов
/ 03 марта 2020

Я работаю над проектом, использующим камеру с верхней глубиной для отслеживания людей и определения их положения в пространстве (используя OpenFrameworks с OpenCV в C ++ и Intel Realsense). Тем не менее, я не смог настроить параметры SimpleBlobTracker, чтобы получить довольно большие объекты, которые указывают на людей. Вот как выглядят мои параметры на данный момент.

//params.minThreshold = 10;

params.filterByArea = true;
params.minArea = 250;

params.filterByCircularity = false;
params.minCircularity = 0.01;

params.filterByConvexity = false;
params.minConvexity = 0.01;

params.filterByInertia = false;
params.minInertiaRatio = 0.01;

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

На этом изображении видно, что на нем появляются гораздо более мелкие капли (например, нижняя часть обведена синим цветом), но не большая, несколько странной формы, которую я хочу. Кажется, это не вопрос размера, так как я попытался отключить filterByArea. Blue circle indicates detected blob. The large black spot in the upper right is a person

Я много фильтровал, чтобы получить реальный вклад, но пока не повезло. Раздражающе, когда я вытягиваю руки, чтобы сделать круг, он обычно может обнаружить это как каплю. Время от времени я могу заставить его распознавать части моего тела, но не целое. Как только я получу показ тела, я планирую изменить параметры, чтобы отфильтровать все остальные шумы.

Есть предложения? Возможно ли, что пятна, которые я ищу, слишком велики, и было бы полезно уменьшить изображение?

Спасибо за любую помощь заранее.

...