【问题标题】:Grabbing consecutive frames in android using opencv使用opencv在android中抓取连续帧
【发布时间】:2011-12-24 10:56:21
【问题描述】:

我正在尝试使用 opencv VideoCapture 类从 android 中获取连续帧。实际上我想在需要 2 帧的 android 上实现光流。我首先在 C 中实现了光流,我使用 cvQueryFrame 抓取了帧,并且一切正常。但是在我打电话时在android中

 if(capture.grab())
  {
     if(capture.retrieve(mRgba))

        Log.i(TAG, "first frame retrived");

  }
  if(capture.grab())
  {
    if(capture.retrieve(mRgba2))

    Log.i(TAG, "2nd frame retrived");
  }

然后使用 Imgproc.subtract(mRgba,mRgba2,output) 减去矩阵,然后显示输出它给我黑色图像,表明 mRgba 和 mRgba2 是具有相同数据的图像帧。任何人都可以帮助如何抓取两个不同的图像。根据 opencv 文档 mRgba 和 mRgba2 应该是不同的。

【问题讨论】:

  • 抱歉是 core.subtract() 不是 Imgproc.subtract()

标签: android image-processing opencv android-camera


【解决方案1】:

这个问题与

完全相同

read successive frames OpenCV using cvQueryframe

您必须将图像复制到另一个内存块,因为捕获总是返回相同的指针。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-08
    相关资源
    最近更新 更多