如何使用OpenFrameworks和OpenCV从视频生成.gif文件?

时间:2016-07-28 07:19:15

标签: c++ opencv gif openframeworks

我正在尝试使用openframeworks创建一个具有实时摄像头的应用程序,当它检测到动作时,它会开始录制视频3秒钟并创建a.gif。

有人知道怎么做吗?

运动检测的一部分是用OpenCV完成的。

2 个答案:

答案 0 :(得分:0)

要实现这一目标,您需要实现一些部分:

  1. 带有ofVideoGrabber的视频抓取器输入。
  2. 然后,您可以通过openCV动态检测分析来自ofPixel
  3. ofVideoGrabber帧。
  4. 一旦检测到足够的动作,就开始将ofPixel帧发送到ofxGifEncoder,直到3秒钟过去。然后保存。
  5. 有关具体示例,您可以在此处查看ofxGifEncoder中包含的代码:

    https://github.com/jesusgollonet/ofxGifEncoder

    除了包含的示例,您可以查看使用它在OSX上创建gif屏幕抓取的项目:

    https://github.com/bakercp/ofxofxAddonsThumbnailGenerator

答案 1 :(得分:0)

ofxGifFrameofxGifEncoder标头中的结构。 您所要做的就是删除#include ofxGifFrame.h并且它有效。 您还必须修改ofApp.h。将vector <ofxGifFrame *> pxs;更改为vector <ofxGifEncoder::ofxGifFrame *> pxs;