Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > Как отобразить 3D анимацию по верх видеопотока


Автор: fkassl 16.11.2012, 08:34
Всем доброго времени.

Есть задача - отрисовать 3D- анимацию по верх изображения с видеокамеры.
В результате должно получиться изображение как в этом примере - http://projects.developer.nokia.com/camerality .
Но сушествуют определённые требования к программно-аппаратной платформе:
 - приложение должно работать на PC;
 - приложение должно быть реализовано на языке python c использованием библиотеки QT4.

Поиск по интернет ресурсам показал подобные задачи:

Здесь задача не решена
http://stackoverflow.com/questions/12275989/how-to-overlay-a-qt-phonon-video-with-an-opengl-scene

Здесь прдлагается использовать что-то вроде двухслойного виджета. На "нижнем" слое выводим видео, а в "верхний" - анимацию. 
На практике получается, что во время перерисовки "верхнего" виджета он своим фоном полностью закрывает "нижний".
http://stackoverflow.com/questions/4473709/play-a-video-with-custom-overlay-graphics

Есть реализация:
http://mateuszstankiewicz.eu/?cat=5
Этот способ не подходит по двум причинам:
 - выводится изображение ограниченное областью 4-х угольника (в целевой задаче накладываемое, анимированое изображение может содержать прозрачные "дырки").
 - для "захвата" изображения используется библиотека openCV (у openCV несколько другое назначение и использование её толко для "захвата" видео потока не целесобразно. Необходимо использовать для этой цели что-то более профильное например gstreamer or ffmpeg.)

В виду выше изложенного прошу подсказать - как можно реализовать анимацию с прозрачными элементами в нутри области отображения, по верх изображения потока свидео камеры?

Буду благодарен, за любую информацию по задаче.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)