Я создаю API отслеживания объектов для своей команды.
Мой код распознает объекты переднего плана в сцене камеры.Со временем он вызовет методы для addObject(id, pos)
, updateObject(id, newPos)
и removeObject(id)
в экземплярах, которые реализуют мой интерфейс слушателя.Это события после фрейма, поэтому они могут происходить 30 раз в секунду.
Как я могу убедиться, что объекты не мерцают и не исчезают?Мне нужно дать объектам минимальное время жизни.Если объект исчезает в течение одного кадра и появляется в том же месте в следующем кадре с новым идентификатором, это также нежелательное мерцание.
(Мои мысли пока) Я думал об использовании объектаМаска-аккумулятор как основа для реализации.Я представляю себе изображение в градациях серого, где области-кандидаты для объектов будут усиливаться в аккумуляторе каждый кадр, а затем, как только область объекта превышает пороговое значение, оно создается, и мы вызываем метод addObject(id, pos)
.Теперь проблема в том, что объект может колебаться вокруг порога в аккумуляторе и все еще может проявлять мерцание.Итак, я бы добавил некоторое постоянное значение к объектной области, как только он будет создан, чтобы у него было время жизни в аккумуляторе.Эта константа будет вычтена, когда область пересекает порог аккумулятора.