показать отслеживаемый объект в видео с помощью OpenGL

0

Я расширяю существующий проект OpenGL с новыми функциями.

Я могу воспроизводить видеопоток с помощью OpenGL с FFMPEG. Некоторые объекты движутся в видеопотоке. Мне известны координаты этих объектов.

Мне нужно показать отслеживание движения для этого объекта, например, непрерывно рисовать точку или прямоугольник вокруг объекта, когда он перемещается по экрану.

Любая идея, как начать с этого?

Теги:
ffmpeg
opengl
video

1 ответ

0

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

Если вы используете OpenGL, вы можете взглянуть на этот вопрос, потому что в этом случае, я думаю, вы рисуете рамки как текстуры.

  • 0
    Спасибо за ваш ответ Sigroad. Да, я должен сделать это в OpenGL. Я собираю информацию о движении объекта, используя алгоритмы отслеживания движения. После этого видеопоток будет воспроизводиться в видеоплеере на основе OpenGL (уже разработан, и я его расширяю). Мне нужно показать отслеживание движения на видео во время его воспроизведения. Я все еще работаю над пониманием того, как координаты видеопотока [640x480] будут переведены в координаты openGL [-1,1], есть еще идеи о том, как это сделать?
  • 0
    Не видя соответствующих частей кода, я не могу помочь слишком много, и я не эксперт OpenGL. Но я предполагаю, что вы привязываете фрейм как текстуру к какому-либо четырехугольнику и т. Д. В этом случае координаты текстуры равны [0,1] x [0,1], поэтому (x, y) координаты фрейма будут переведены в (x / 640). , y / 480) текстурные координаты. Координаты OpenGL практически не зависят от этого, они связаны с координатами вашего многоугольника, к которому вы привязали текстуру.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню