dlib-android 다운로드
우측의 사이트에서 dlib-android 라이브러리를 다운받는다. (https://github.com/tzutalin/dlib-android)
dlib-android-app가 정상적으로 잘 동작하면 위의 라이브러리를 굳이 다운받을 필요는 없지만, 안타깝게도 기존 소스에 버그가 있어서 수정해서 컴파일을 해줘야 한다.
dlib-android 소스 변경 및 재컴파일
다운 받은 폴더 내에서 "jni/jnilib_ex/jni_people_det.cpp"를 열어서 아래의 처럼 변경한다.
원소스
void JNIEXPORT DLIB_JNI_METHOD(jniNativeClassInit)(JNIEnv* env, jclass _this) { jclass detRetClass = env->FindClass("com/tzutalin/dlib/VisionDetRet"); CHECK_NOTNULL(detRetClass); gVisionDetRetOffsets.label = env->GetFieldID(detRetClass, "mLabel", "java/lang/String"); |
변경된 소스
void JNIEXPORT DLIB_JNI_METHOD(jniNativeClassInit)(JNIEnv* env, jclass _this) { jclass detRetClass = env->FindClass("com/tzutalin/dlib/VisionDetRet"); CHECK_NOTNULL(detRetClass); gVisionDetRetOffsets.label = env->GetFieldID(detRetClass, "mLabel", "Ljava/lang/String;"); |
컴파일 방법의 위의 사이트에 자세히 나와 있으므로 잘 따라하기만 하면 된다.
dlib-android-app 다운로드
우측의 사이트에서 dlib-android-app 패키지를 다운 받는다. (https://github.com/tzutalin/dlib-android-app)
안드로이드 프로젝트에 등록하기 쉽지 않아서 dlib-android를 직접 이용하지 않고 dlib-android-app 내의 dlib를 등록한다.
dlib-android에서 빌드한 동적 라이브리 복사
dlib-android에서 빌드한 동적 파일들을 dlilb-android-app로 복사한다.
원본 경로
/home/jbkim/Workspace/Library/dlib-android/dlib-android-app/dlib/src/main/jniLibs |
복사 경로
/home/jbkim/Workspace/Library/dlib-android-app/dlib/src/main/jniLibs |
프로젝트에 dlib 등록
New Module로 dlib-android-app/dlib를 등록한다.
dlib 환경 설정
먼저, 안드로이드 SDK 버전을 프로젝트와 동일하게 설정한다.
프로젝트 최상단의 build.gradle에서 ext 부분을 dlib-android-app에서 프로젝트의 build.gradle로 복사한다.
추가로 "buildscript/dependencies"내의 추가 classpath들을 프로젝트의 build.gradle로 복사한다.
'안드로이드 > 얼굴인식' 카테고리의 다른 글
OpenCV로 얼굴인식 환경 구축 (0) | 2016.08.04 |
---|