生成dlib-android庫(libandroid-dlib.so)

dlib作者已經(jīng)把dlib移植到Android平臺旁仿,本文介紹在CentOS上生成dlib Android動態(tài)庫的方法足陨,當(dāng)作備忘琴拧。

為了生成dlib-android動態(tài)庫蝌借,只要執(zhí)行build.py即可卿啡。build.py需要以下支持:

1.Android NDK

2.a(chǎn)db

3.dlib-android源碼

4.OpenCV SDK



1.安裝Android NDK

dlib以及第三方代碼都是用native實現(xiàn)的吟吝,顯然,我們需要準(zhǔn)備好NDK颈娜。

下載android-ndk-r16b-linux-x86_64.zip

然后解壓到用戶的一個文件夾里:

$mkdir –p android

$cd android

$unzip android-ndk-r16b-linux-x86_64.zip

修改~/.bashrc剑逃,把NDK路徑加入到PATH里

export ANDROID_NDK_HOME=/home/samson/android/android-ndk-r16b

export PATH=$PATH:$ANDROID_NDK_HOME

Android NDK已經(jīng)準(zhǔn)備就緒浙宜。


2.安裝adb

(注:如果屏蔽build.py中的setDeviceABI(),這一步可以省略)

dlib-android 的build.py里setDeviceABI()需要啟動adb以獲得設(shè)備CPU的ABI類型蛹磺,所以必須先安裝adb粟瞬。adb在sdk tools里,先下載:

https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip

然后安裝platform-tools:

$sudo mkdir -p? /usr/local/share/android

$sudo unzip sdk-tools-linux-3859397.zip?-d /usr/local/share/android

$cd? /usr/local/share/android

$sudo yes | ./tools/bin/sdkmanager --licenses? #若遇到有關(guān)repositories.cfg的警告萤捆,忽略它裙品,或創(chuàng)建一個空的repositories.cfg即可

$sudo ./tools/bin/sdkmanager "tools" "platform-tools"

修改~/.bash_profile,把platform-tools路徑加入到PATH里:

PATH=$PATH: /usr/local/share/android/sdk/platform-tools

lsusb命令查看USB id.

lsusb集成在usbutils里俗或,安裝usbutils后就可以執(zhí)行l(wèi)susb指令了

$sudo yum install usbutils

$lsusb

? Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub

Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse

Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

? 接入一個Android設(shè)備后市怎,

$lsusb

Bus 001 Device 003: ID 22d9:2774

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub

Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse

Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

新增加的“Device 003: ID 22d9:2774”就是android設(shè)備

在/etc/udev/rules.d/50-android.rules中

$sudo touch /etc/udev/rules.d/50-android.rules

并寫入內(nèi)容

SUBSYSTEM=="usb", SYSFS{""}=="22d9:2774", MODE="0666"

注意用真實的id替換文中的"22d9:2774"

重啟udev服務(wù):

$sudo start_udev

$sudo systemctl restart system-udev-trigger.service

至此,adb安裝完成辛慰,驗證一下:

$adb version

Android Debug Bridge version 1.0.39

Version 0.0.1-4500957

Installed as /usr/local/share/android/sdk/platform-tools/adb

這一步稍有些麻煩焰轻。但是一步步做,也很容易昆雀。


3.準(zhǔn)備dlib-android源碼

$cd ~/android

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

$cd dlib-android


4.準(zhǔn)備OpenCV

實際上,執(zhí)行envsetup蝠筑,就能下載并解壓好OpenCV狞膘。手動準(zhǔn)備OpenCV就可以選擇專業(yè)的工具加快下載速度;另外什乙,envsetup固定下載3.1.0版本挽封。

下載好最新版OpenCV,opencv-3.4.1-android-sdk.zip臣镣,并解壓到dlib-android/third_party:

$unzip opencv-3.4.1-android-sdk.zip

創(chuàng)建symbolic link供build.py使用:

$ln –s ~/android/dlib-android/third_party/OpenCV-android-sdk/sdk/native ~/android/dlib-android/third_party/opencv


5.生成Andorid動態(tài)庫

$python build.py

幾分鐘后辅愿,dlib-android/libs文件夾里就生成4個子文件夾,每個子文件夾里都有一個libandroid_dlib.so作為對應(yīng)ABI類型的動態(tài)庫忆某。

也可以修改dlib-android/jni/Application.mk定義的APP_ABI点待,只生成你需要的庫。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末弃舒,一起剝皮案震驚了整個濱河市癞埠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌聋呢,老刑警劉巖苗踪,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異削锰,居然都是意外死亡通铲,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進(jìn)店門器贩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來颅夺,“玉大人朋截,你說我怎么就攤上這事⊥胱模” “怎么了质和?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長稚字。 經(jīng)常有香客問我饲宿,道長,這世上最難降的妖魔是什么胆描? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任瘫想,我火速辦了婚禮,結(jié)果婚禮上昌讲,老公的妹妹穿的比我還像新娘国夜。我一直安慰自己,他們只是感情好短绸,可當(dāng)我...
    茶點故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布车吹。 她就那樣靜靜地躺著,像睡著了一般醋闭。 火紅的嫁衣襯著肌膚如雪窄驹。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天证逻,我揣著相機(jī)與錄音乐埠,去河邊找鬼。 笑死囚企,一個胖子當(dāng)著我的面吹牛丈咐,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播龙宏,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼棵逊,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了银酗?” 一聲冷哼從身側(cè)響起歹河,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎花吟,沒想到半個月后秸歧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡衅澈,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年键菱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡经备,死狀恐怖拭抬,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情侵蒙,我是刑警寧澤造虎,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站纷闺,受9級特大地震影響算凿,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜犁功,卻給世界環(huán)境...
    茶點故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一氓轰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧浸卦,春花似錦署鸡、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至怒医,卻和暖如春撒穷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背裆熙。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留禽笑,地道東北人入录。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像佳镜,于是被迫代替她去往敵國和親僚稿。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,871評論 2 354

推薦閱讀更多精彩內(nèi)容