dlib-android

2a726cd991c88efd5fc6a3ce81708ed3.png

Purpose

Port dlib to Android platform

You can build it to dynamic or static library for Android. You can also build dlib's sample to Android executable file.

You can refer to dlib-android-app which demonstrates dlib-android features

Grab the source

$ git clone --recursive https://github.com/tzutalin/dlib-android.git

$ cd dlib-android

$ ./envsetup

Prerequisites

Download Android-NDK from Android website.

After downloading, go to the directory to which you downloaded the package to extract it

Export ANDROID_NDK_HOME in ~/.bashrc

$ vim ~/.bashrc

export ANDROID_NDK_HOME=[NDK_PATH]/android-ndk-[version]

export PATH=$PATH:$ANDROID_NDK_HOME

Install Android Debug Bride (ADB). You can download it via Android SDK Manager or $ sudo apt-get install android-tools-adb

Prepare an Android device for test

Build JNI code and shared library for Android application

You can change the compiler architecture in dlib-android/jni/Application.mk

The way to build the shared library for Android application

$ cd [dlib-android]

$ python build.py

Alternative way to build native code and copy to the Android Studio's project manually:

$ cd [dlib-android]

$ ndk-build -j 2

$ cp -r libs/* androidstudio-examples/dlib-android-app/dlib/src/main/jniLibs

Run Android application

Open Android Studio's projects in androidstudio-examples/dlib-android-app to run face detection, face landmark, and so on

Folder structure

├── data # Test data or the models for detection and landmarks

├── dlib # Source files of dlib. It is a submodule

├── jni # Source files of JNI codes and their make files

├── androidstudio-examples # Android Studio's projects use the shared library built by this repo

├── tools # Tools and utilities

├── third_party # Like OpenCV and [miniglog](https://github.com/tzutalin/miniglog)

├── CMakeLists.txt # Use CMake to build instead of using Android.mk

├── LICENSE

└── README.md

Do you want to contribute

If you have any improvement or you've found any bug, send a pull request with the code.

Give me a star on this repository

09bec42bb47b9c831503cc51ab076820.png

Future tasks

Add more examples to dlib-android-app

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐