Ask Your Question

neemasa's profile - activity

2013-11-21 10:24:05 -0600 received badge  Student (source)
2013-04-16 08:47:28 -0600 asked a question low frame from camera ,opencv android

The problem I have is when I display camera in my UI the frames from camera are so slow.
the logcat also says:
"Frame size is 622080"
"Preview Frame received. Need to create MAT and deliver it to clients"

and the code is:
public class Main extends Activity implements CvCameraViewListener2{

private CameraBridgeViewBase mOpenCvCameraView;
private String TAG = "TAG";
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
    @Override
    public void onManagerConnected(int status) {
        switch (status) {
            case LoaderCallbackInterface.SUCCESS:
            {
                Log.i(TAG, "OpenCV loaded successfully");
                mOpenCvCameraView.enableView();
            } break;
            default:
            {
                super.onManagerConnected(status);
            } break;
        }
    }
};

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
    setContentView(R.layout.activity_main);

    mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.javaCameraView1);
    mOpenCvCameraView.setVisibility(SurfaceView.VISIBLE);
    mOpenCvCameraView.setCvCameraViewListener(this);
}
@Override
protected void onResume() {
    super.onResume();
    Toast.makeText(getApplicationContext(), "Loading Libraries...", Toast.LENGTH_SHORT).show();
    if (OpenCVLoader.initDebug()){
        Toast.makeText(getApplicationContext(), "Libraries Loaded!", Toast.LENGTH_SHORT).show();
        mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
    }else{
        Toast.makeText(getApplicationContext(), "failed to load libraries", Toast.LENGTH_SHORT).show();
    }
}
@Override
protected void onPause() {
    super.onPause();
    if (mOpenCvCameraView != null)
        mOpenCvCameraView.disableView();
}
@Override
protected void onDestroy() {
    super.onDestroy();
    if (mOpenCvCameraView != null)
        mOpenCvCameraView.disableView();
}
public void onCameraViewStarted(int width, int height) {
}
public void onCameraViewStopped() {
}
public Mat onCameraFrame(CvCameraViewFrame inputFrame) {
    return inputFrame.rgba();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}

The device I use for testing is Nexus 7.