日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人工智能 > pytorch >内容正文

pytorch

java基于安卓的人脸识别_基于android studio开发的 opencv关于android人脸识别的DEMO

發(fā)布時(shí)間:2023/12/20 pytorch 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java基于安卓的人脸识别_基于android studio开发的 opencv关于android人脸识别的DEMO 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

(2018年11月23日 在 鏈接 補(bǔ)充了一個(gè)新的BUG)

一個(gè)新項(xiàng)目的導(dǎo)入 可能會(huì)遇到多個(gè)問(wèn)題,就這些問(wèn)題 做個(gè) 解決集合,以便日后回顧,

版本 : android studio3.1.4 ,opencv-3.4.1-android-sdk

首先 我們要給 IDE 安裝 ndk 的環(huán)境:

打開 AS的 Settings:? ? ? File->Settings

(PS: 好像是這些。。。。具體的忘記了。。。  ̄□ ̄||)

Apply 后 就等著 下載安裝吧~~~~~

環(huán)境弄好后 我們開始 看具體的 實(shí)施步驟:

一、下載OpenCV android 的SDK ,

二、導(dǎo)入項(xiàng)目

8、next完后直接 finish就好了。

不過(guò) 項(xiàng)目導(dǎo)入后 還沒(méi)完,接下來(lái)

include?':openCVLibrary341'

然而這時(shí)候 還沒(méi)有結(jié)束:

我在編譯后報(bào)出了 一個(gè)問(wèn)題:

這是因?yàn)?OpenCV 的 compileSdkVersion 太低了

我這里是 改成了和 27 就編譯通過(guò)了

到這里 導(dǎo)入工作 也就進(jìn)行了一半了:

接下來(lái) 還要導(dǎo)入 .so文件,.mk文件

這些文件分別在:

1、.so文件:

2、.mk文件在

然后接下來(lái) 在 android studio 的 src/main目錄下 分別 新建 jni 和 jniLibs兩個(gè)目錄,如圖

然后將 之前 的? ? ....\OpenCV-android-sdk\samples\face-detection\jni? 目錄下的所有文件復(fù)制到項(xiàng)目的jni目錄下

然后將? ? ? ?.....\OpenCV-android-sdk\sdk\native\libs 目錄下的所有內(nèi)容復(fù)制到 jniLibs目錄下

如圖:

這時(shí)候 還要配置下 jni 的目錄,配置方式如圖:

externalNativeBuild{

ndkBuild{

path?}

}

ok 我們編譯下看看~~~

結(jié)果 Duang的一下 搞了一個(gè)錯(cuò)誤~~~

其實(shí) 這個(gè)東西 就是在我們剛剛 復(fù)制過(guò)來(lái)的 Android.mk中

只要將這個(gè) 按照我們自己的實(shí)際路徑改一下 就ok了

這樣再次編譯 ok 通過(guò)了~ 贊一個(gè)先

不過(guò)這里先說(shuō)一下 配置還是有問(wèn)題的, 但是我們先使用OpenCV 中的 simple 看看吧

simple 路徑:OpenCV-android-sdk\samples\face-detection

因?yàn)檫@是個(gè) Eclipse的項(xiàng)目, 我就簡(jiǎn)單的將 Samples 中的相關(guān)代碼 復(fù)制到 項(xiàng)目中了。主要有這幾樣?xùn)|西:

1、OpenCV-android-sdk\samples\face-detection\res\raw 這個(gè)目錄中是 人臉用到的文件所以是必須的

2、OpenCV-android-sdk\samples\face-detection\src\org\opencv\samples\facedetect? ? ?目錄中是 activity文件 和一個(gè)工具的java文件

3、需要用到的權(quán)限(在這里我沒(méi)遇到什么問(wèn)題,所以就不多說(shuō)了)

4、

5、最后 還有FdActivity 的 layout 別忘了

ok 這個(gè)時(shí)候 可以運(yùn)行 看看了,不過(guò)我可以提前說(shuō)明,現(xiàn)在運(yùn)行會(huì)崩潰的~~~

不過(guò)沒(méi)關(guān)系 我們看一下bug~~~

09-10 11:17:15.555 21819-21819/com.example.china_yzh.demoopencv E/zygote64:No implementation found for long com.example.china_yzh.demoopencv.DetectionBasedTracker.nativeCreateObject(java.lang.String, int) (tried Java_com_example_china_1yzh_demoopencv_DetectionBasedTracker_nativeCreateObject and Java_com_example_china_1yzh_demoopencv_DetectionBasedTracker_nativeCreateObject__Ljava_lang_String_2I)

09-10 11:17:15.555 21819-21819/com.example.china_yzh.demoopencv D/AndroidRuntime: Shutting down VM

09-10 11:17:15.557 21819-21819/com.example.china_yzh.demoopencv E/AndroidRuntime: FATAL EXCEPTION: main

Process: com.example.china_yzh.demoopencv, PID: 21819

java.lang.UnsatisfiedLinkError: No implementation found for long com.example.china_yzh.demoopencv.DetectionBasedTracker.nativeCreateObject(java.lang.String, int) (tried Java_com_example_china_1yzh_demoopencv_DetectionBasedTracker_nativeCreateObject and Java_com_example_china_1yzh_demoopencv_DetectionBasedTracker_nativeCreateObject__Ljava_lang_String_2I)

at com.example.china_yzh.demoopencv.DetectionBasedTracker.nativeCreateObject(Native Method)

at com.example.china_yzh.demoopencv.DetectionBasedTracker.(DetectionBasedTracker.java:9)

at com.example.china_yzh.demoopencv.FdActivity$1.onManagerConnected(FdActivity.java:91)

at com.example.china_yzh.demoopencv.FdActivity.onResume(FdActivity.java:149)

at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1361)

at android.app.Activity.performResume(Activity.java:7361)

at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3765)

出錯(cuò)的原因 就是我上面紅色 標(biāo)出的內(nèi)容:

No implementation found for long com.example.china_yzh.demoopencv.DetectionBasedTracker.nativeCreateObject

這個(gè)問(wèn)題 我是找了好久 才 弄明白的。。。。

其實(shí) 這個(gè)就是我之前 導(dǎo)包是 留下的那個(gè)問(wèn)題 ,? 之前在 jni目錄下 導(dǎo)入了 四個(gè)文件 分別是

之前 OpenCV.mk找不到 是因?yàn)?Android.mk

這次的錯(cuò)誤 是后面兩個(gè) 文件 , 一個(gè) .ccp文件 和一個(gè) .h文件。

我們來(lái)看看文件的內(nèi)容:

看到這個(gè)是不是覺得眼熟 ,沒(méi)錯(cuò) 我們之前的 bug中 有類似的 文本說(shuō)明:

很簡(jiǎn)單 將 上面說(shuō)的 .h和.cpp中的 所有 都改成這個(gè)目錄就好了,(ps:這里的內(nèi)容是因項(xiàng)目路徑而異的,根據(jù)實(shí)際情況來(lái))

不用擔(dān)心 Replace吧~

改完后 我們?cè)賮?lái)運(yùn)行看看

perfect~~~

修改日期:2018年11月23日

修改原因:遇見新的BUG

BUG:?Android NDK: APP_STL gnustl_static is no longer supported.

AS 不再支持 gnustl_static 要換成?c++_static 或作者?c++_shared(是不是這么寫的忘記了。。。不過(guò)報(bào)錯(cuò)的時(shí)候會(huì)有顯示的)

修改位置:

來(lái)看看 運(yùn)行效果

額 可能邊上兩個(gè)太黑了 -_-||~~~ 我不是有意的 。。。

總結(jié)

以上是生活随笔為你收集整理的java基于安卓的人脸识别_基于android studio开发的 opencv关于android人脸识别的DEMO的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。