mediapipe教程3:在安卓上运⾏mediapipe的helloworld
androidsdk安装步骤⼀、前⾔
mediapipe教程2中提到,我最终需要在安卓设备上运⾏,因此本节开始,我们开始研究mediapipe的安卓相关内容;
⼆、准备
(1)我们本节的步骤是在ubuntu下编译出.apk⽂件,然后连接安卓设备,⽤adb命令在安卓设备上⽣成应⽤程序,再开启使⽤即可;
(2)与mediapipe教程2⼀样,需要多注意两个重要⽹址:官⽹的代码、官⽹的教程;还有mediapipe的版本、bazel的版本与安装配置、其他库安装都与mediapipe教程2⼀样;
(3)安装java_runtime、android sdk 28.03以上、ndk版本在18到21之间
###注意,java runtime千万不能⽤sudo apt-get install openjdk-8-jre-headless命令来安装,我⼀开始就是这样安装的,结果后⾯的步骤出现了问题才到这⾥;
安装完成后使⽤下⾯命令查看:
java -version
安卓sdk和ndk的安装使⽤mediapipe中的脚本即可,但需要安装curl,步骤如下:
sudo apt-get install curl
cd /mediapipe/
sudo chmod 777 -R *
sudo ./setup_android_sdk_and_ndk.sh
#然后配置android sdk和ndk(根据你⾃⼰的路径)
sudo chmod 777 -R /home/lzc/Android/
sudo gedit ~/.bashrc
export ANDROID_HOME=$PATH:/home/lzc/Android/Sdk
export ANDROID_NDK_HOME=$PATH:/home/lzc/Android/Sdk/ndk-bundle/android-ndk-r19c
source ~/.bashrc
三、安卓上运⾏mediapipe的helloworld
允许两种⽅式编译安卓程序,⼀种是命令⾏cmd中,另⼀种是在Android Stdio中;
我运⾏的设备是⼀个安卓的机顶盒,使⽤数据线直连ubuntu系统,ubuntu桌⾯出现⼀个类似⼿机的图标即表⽰已连接设备;
(1)编译
你会发现编译时候会⼀直卡在“Fetching @maven;”过不去,
bazel build -c opt --config=android_arm64 mediapipe/examples/android/src/java/com/google/mediapipe/apps/basic:helloworld
(2)使⽤adb命令在安卓系统上⽣成应⽤程序
adb install bazel-bin/mediapipe/examples/android/src/java/com/google/mediapipe/apps/basic/helloworld.apk
(3)运⾏
在设备的应⽤程序中到刚刚⽣成的程序(Hello World),运⾏应⽤程序,该例⼦为sobel算⼦边缘检测。
四、其他例⼦(没有运⾏起来,也应该运⾏不起来)
1、hand
(1)编译
bazel build -c opt --config=android_arm64 mediapipe/examples/android/src/java/com/google/mediapipe/apps/handtrackinggpu:handtrackinggpu
(2)使⽤adb命令在安卓系统上⽣成应⽤程序
adb install bazel-bin/mediapipe/examples/android/src/java/com/google/mediapipe/apps/handtrackinggpu/handtrackinggpu.apk
(3)运⾏(注意,这⾥我没有运⾏起来,因为原始例⼦也并不是调⽤相机检测⼿部关键点,原始例⼦详情⾃⼰看MainActivity.java中的内容)
2、pose
(1)编译
bazel build -c opt --config=android_arm64 mediapipe/examples/android/src/java/com/google/mediapipe/apps/posetrackinggpu:posetrackinggpu
(2)使⽤adb命令在安卓系统上⽣成应⽤程序
adb install bazel-bin/mediapipe/examples/android/src/java/com/google/mediapipe/apps/posetrackinggpu/posetrackinggpu.apk
(3)运⾏(注意,这⾥我没有运⾏起来,因为原始例⼦也并不是调⽤相机检测⼿部关键点,原始例⼦详情⾃⼰看MainActivity.java中的内容)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。