Быстрый, очень легкий алгоритм для обнаружения движения камеры? - PullRequest
13 голосов
/ 09 декабря 2010

Я работаю над приложением дополненной реальности для iPhone, которое использует очень интенсивный процессорный алгоритм распознавания объектов (увеличивая процессор на 100%, который он может проходить, возможно, через 5 кадров в секунду), и стараясь сэкономить батареюи сделать все это менее "нервным". Я пытаюсь найти способ запускать этот распознаватель объектов только тогда, когда пользователь фактически перемещает камеру.

Моей первой мыслью было просто использоватьАкселерометры / гироскоп iPhone, но при тестировании я обнаружил, что очень часто люди перемещают iPhone с достаточно стабильной ориентацией и скоростью, чтобы не было никакого способа сказать, что он все еще находится в движении.

Так чтооставил возможность анализа фактической подачи видео и обнаружения движения в этом.Я запустил OpenCV и попытался запустить их пирамидальный алгоритм оптического потока Лукаса-Канаде, который работает хорошо, но, кажется, почти так же интенсивно использует процессор, как и мой распознаватель объектов - я могу получить его на приемлемой частоте кадров, если снизу уровни глубины / уменьшуизображение / трек меньше точек, но затем страдает точность, и он начинает пропускать некоторые большие движения и срабатывает на мелкие дрожащие руки.

Так что мой вопрос, есть ли другой алгоритм оптического потока, который быстрее, чем Лукас-Канаде, если я просто хочу определить общую величину движения камеры?Мне не нужно отслеживать отдельные объекты, мне даже не нужно знать, в каком направлении движется камера, все, что мне действительно нужно, это способ подать что-то в два кадра видео, и он скажет мне, как далеко они находятся друг от друга.

Ответы [ 2 ]

4 голосов
/ 11 января 2011

есть проект с открытым исходным кодом (бесплатный для частного использования), который использует обнаружение углов FAST здесь: http://www.hatzlaha.co.il/150842/FAST-Corner-V2

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

- РЕДАКТИРОВАТЬ -

Теперь есть проект оптического потока Lucas-Kanade - http://www.success -ware.com / 150842 / Lucas-Kanade-Detection-for-the-iPhone Вы можете скачать исходный код, а также ссылку на AppStore, чтобы поэкспериментировать с ним и посмотреть, отвечает ли он вашим потребностям.

HTH,

Одед.

2 голосов
/ 09 декабря 2010

Почему бы не использовать комбинацию акселерометра / гироскопа, чувствительного к движению, и трекера изображения с очень низким разрешением?Кажется, что каждый метод смущен совершенно разными движениями пользователя.

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