2014-01-30 158 views
-3

我想开发一个使用OpenCV检测道路的Android应用程序。 但我无法检查它。所以我需要阅读一个视频并处理每一帧,并且我想同时显示它。我怎样才能做到这一点? 读取视频并获取函数中的每个帧并返回处理后的帧并在屏幕上显示该帧?处理视频帧

VideoCapture capture; 
capture.open(R.raw.vid); 
if (!capture.isOpened()) 
{ 
    Log.i(TAG,"capture isn't open. closing..");  
} 

for(; ;) 
{ 
capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA); 
if(mRgba.empty()){ 
     break; } 

Imgproc.cvtColor(mRgba, mRgba, Imgproc.COLOR_RGB2BGRA); 
Bitmap bmp = Bitmap.createBitmap(mRgba.cols(), mRgba.rows(), Bitmap.Config.ARGB_8888); 
Utils.matToBitmap(mRgba, bmp); 

ImageView imgView = (ImageView) findViewById(R.id.imageView1); 
imgView.setImageBitmap(bmp);    
}   

这段代码有什么问题?

谢谢

+0

这是如何在C++中的OpenCV中完成的。 http://stackoverflow.com/questions/13709274/reading-video-from-file-opencv – wbest

+0

在什么语言?你应该标记它。 – herohuyongtao

+0

sry,我忘了,我想开发一个android应用程序,并在母语中使用opencv4android(C/C++) – user3229169

回答

0

遗憾的坏消息,但读/从OpenCV中写的视频文件,不支持在Android(由于缺少ffmpeg的后端有)

你必须拿出你的拥有(本地)解决方案。

+0

谢谢!真是个坏消息! – user3229169