Отслеживание объектов в сжатом видео h.264

Я работаю над проектом, который требует, чтобы я обнаруживал и отслеживал человека в живом видео с веб-камеры, подключенной к Beagleboard xm.
Я выполнил эту задачу с помощью Opencv в домене пикселей. Результаты на доске очень точные, но очень медленные. Многие люди предлагали мне покинуть пиксельный домен и выполнять ту же задачу в сжатом видео h.264 / MPEG-4, поскольку это значительно уменьшило бы вычислительные затраты.
Я прочитал много научных работ, но не смог найти ни одного программная платформа или библиотека что я могу использовать для анализа и обработки сжатых видео h.264.
Я буду благодарен, если кто-то может предложить мне некоторую библиотеку для анализа сжатого видео h.264 и вести меня дальше.

Спасибо и С уважением.

2

Решение

Я не уверен, насколько это практично (я никогда не пытался это сделать), но мой Угадай было бы то, что они ссылаются на поиск макроблоков, которые имеют (почти) идентичные векторы движения.

Например, предположим, что у вас есть камера, которая не панорамирует, а на рисунке показана машина, проезжающая по экрану. Глядя на векторы движения, вы должен иметь (примерно) автомобильную связку макроблоков, которые имеют одинаковые векторы движения (обозначающие движение автомобиля). Затем, вместо того, чтобы посмотреть на всю картину для интересующего вас объекта, вы можете посмотреть на этот блок изолированно и попытаться идентифицировать его. Точно так же, если бы камера выполняла панорамирование с автомобилем, у вас был бы блок в форме автомобиля с маленькими векторами движения, и большая часть фона имела бы аналогичные векторы движения в направлении, противоположном движению автомобиля.

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

0

Другие решения

В конечном итоге вы сможете проанализировать и определить, что h.264 имеет объект, но это не будет «отслеживание объекта», как вы ищете. openCV — отличное программное обеспечение и что оно делает лучше всего. Рассматривали ли вы масштабирование видео до меньшего разрешения для облегчения анализа с помощью openCV?

Я думаю, вы сильно переоцениваете вычислительную мощность этого компьютера за 45 долларов. Распознавание и отслеживание объектов ОЧЕНЬ сложно в вычислительном отношении. Я хотел бы начать с того, сколько кадров в секунду ваша доска может отслеживать и оптимизировать оттуда. Начните смотреть, где находятся ваши узкие места, возможно, вам лучше обрабатывать необработанное видео вместо того, чтобы сначала декодировать видео h.264. Опять же, RAW-видео занимает много ОЗУ, а обработка через него занимает много ЦП.

Минимизируйте накладные расходы при декодировании видео, минимизируйте накладные расходы ОЗУ, уменьшив объем видео перед анализом, но, в конце концов, вы запрашиваете много с 1 ГГц 32-битного процессора ARM.

0

FFMPEG — очень старая библиотека, которая не поддерживается уже несколько дней. Он имеет очень ограниченные возможности с точки зрения обработки и отслеживания объектов в сжатом видео h.264. Большинство команд обычно устарели.
Лучше всего было бы тщательно изучить h.264, а затем попытаться реализовать свой собственный API на каком-либо языке, таком как Java или c #.

0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector