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
Posted by 제이비콥스