2016-05-26 86 views
1

关闭问题之前:我已经完成了其他所有答案,但他们都没有展示如何使用Android Studio解决此问题。如何在不安装opencv管理器的情况下使用openCV Camera?

我使用OpenCV库检测卡在我的应用程序。该应用程序就像文档扫描仪,但它使用JavaCameraView而不是图像位图。

mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.live_camera_frame); 

我的问题是,使用JavaCameraView它总是要求从Play商店安装OpenCV的经理。

即使按照机器人工作室OpenCV的静态初始化步骤后,它是asking me for download openCV manage APK from playstore。我采用了android 1.5的工作室和OpenCV库3.1.0

谁能告诉如何使用OpenCV的摄像头,无需安装opencv的经理作为独立的应用程序?

由于summury的,我不希望用户被提示对话框,在图像。如果我们可以将openCV库作为项目的一部分,并且我们可以在不安装的情况下使用它。

我按照这里的步骤application-development-with-static-initialization 但它是用于eclipse,我使用的是android studio。我试图为Eclipse同样的事情,但后来它给在标准OpenCV库错误 class not found.

+1

[检查此链接(http://stackoverflow.com/questions/36551069/using-android-opencv-apps-without-downloading-opencv-sdk-manager?rq=1)否则,如果您有通过另一种方法来解决..请分享.. –

+0

检查的第一个答案在此[链接](http://stackoverflow.com/questions/27406303/opencv-in-android-studio) –

回答

2

做这个

下你的主文件夹中创建一个jniLibs文件夹(相同的位置,你的java文件夹)

只需从/ sdk/native/libs /拷贝相应的OpenCV本地库(应该有七个文件夹,mips,x86等等),拷贝你需要的,取决于你的应用程序将在哪个cpu上运行)文件夹jniLibs

然后在您的活动

@Override 
public void onResume() { 
    super.onResume(); 
    if (!OpenCVLoader.initDebug()) { 
     Logger.d("Internal OpenCV library not found. Using OpenCV Manager for initialization"); 
     OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_1_0, this, mLoaderCallback); 
    } else { 
     Logger.d("OpenCV library found inside package. Using it!"); 
     mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS); 
    } 
} 

private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) { 
    @Override 
    public void onManagerConnected(int status) { 
     switch (status) { 
      case LoaderCallbackInterface.SUCCESS: 
      { 
       Logger.d("OpenCV loaded successfully"); 
       //mOpenCvCameraView.enableView(); 
      } break; 
      default: 
      { 
       super.onManagerConnected(status); 
      } break; 
     } 
    } 
}; 
+0

它的工作,感谢u代表ü后@Jerffrey Liu –

相关问题