2013-10-17 2 views
4

opencv manager app 인 opencv 라이브러리를 사용하는 Android 앱을 개발 중입니다. 내가는 OpenCV의 관리자에게android app에 opencv manager를 통합하는 방법

+0

가능한 중복 [안드로이드에서 OpenCV의 관리자를 통합하는 방법 응용] (http://stackoverflow.com/questions/20259309/how-to-integrate-opencv-manager-in-android-app) – Kiran

답변

4

1 사전에 외부

감사를 설치할 필요가 없습니다 있도록 내 응용 프로그램 내부의 OpenCV의 관리자를 통합하려는 , OpenCV의 관리자를 필요로 이전에 설치 될 - OpenCV의 라이브러리를 추가 프로젝트 -> 속성 -> 안드로이드 -> 라이브러리 -> 프로젝트의 OpenCV Java SDK에 대한 참조를 추가하십시오. (프로젝트 메뉴에서 파일 -> 가져 오기 -> 기존 프로젝트를 사용하십시오.)

2 - OpenCV 라이브러리 선택 - 2.4.8을 추가하십시오.

3 - 폴더를 추가하고 이름을 "JNI"

4 - Android.mk는 JNI 폴더에 파일을 추가합니다. 그 몸체는 다음과 같아야합니다 :

LOCAL_PATH := $(call my-dir) 

include $(CLEAR_VARS) 

# OpenCV 
OPENCV_CAMERA_MODULES:=on 
OPENCV_INSTALL_MODULES:=on 
OPENCV_LIB_TYPE:=STATIC 
include ../../sdk/native/jni/OpenCV.mk 

5 - jni 폴더에 Application.mk 파일을 추가하십시오. (OpenCVLoader.OPENCV_VERSION_2_4_8를, 사용자의 작업에 다음 코드를 추가 한 경우 OpenCVLoader.initAsync을 주석 - 당신의 활동

static { 
     if (!OpenCVLoader.initDebug()) { 
      // Handle initialization error 
     } 
    } 

7이 추가 -

APP_STL := gnustl_static 
APP_CPPFLAGS := -frtti -fexceptions 
APP_ABI := armeabi-v7a 
APP_PLATFORM := android-9 

6 : 그것의 몸은 아래와 같이 보일 것입니다 , this, mLoaderCallback); 더 이상 이벤트를 다시 시작하지 않아도 OpenCV를로드 할 필요가 없습니다.

@Override 
    public void onResume() { 
     super.onResume(); 
     //OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_8, this, mLoaderCallback); 
    } 

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

도 이것 좀 유무 : http://docs.opencv.org/trunk/doc/tutorials/introduction/android_binary_package/dev_with_OCV_on_Android.html#application-development-with-static-initialization

+0

고마워, 나는 당신이 제안한 것을 시도 할 기회가 없었습니다. 솔루션이 합리적인 것처럼 보일 때마다 솔루션에 투표 할 것입니다. –

+0

OpenCVLoader.initDebug()가 여전히 false를 반환합니다. –

0

있어이 lib 디렉토리를 사용하여 내 응용 프로그램에서 열려 이력서를 설치하여 다른 솔루션 AutoInstaller

관련 문제