Я пытаюсь получить последовательные кадры с Android с помощью класса opencv VideoCapture.На самом деле я хочу реализовать оптический поток на Android, для которого мне нужно 2 кадра.Сначала я реализовал оптический поток в 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 должны быть разными.