使用opencv在android中抓取连续帧
Posted
技术标签:
【中文标题】使用opencv在android中抓取连续帧【英文标题】:Grabbing consecutive frames in android using opencv 【发布时间】: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() 【参考方案1】:这个问题与
完全相同read successive frames OpenCV using cvQueryframe
您必须将图像复制到另一个内存块,因为捕获总是返回相同的指针。
【讨论】:
以上是关于使用opencv在android中抓取连续帧的主要内容,如果未能解决你的问题,请参考以下文章