首先找一个梯子,不要用百度搜索,搜不到,自己用的quikq,不然很多东西弄不了,几十块一个月,比起多花的时间,太值了
1 安装 MediaPipe
1.1 安装bazel
安装Bazel有好几种方式,按照官方推荐的第一种,先按装Bazelisk,安装BazeLisk又有几种方式的,但是按照BazeLisk的前两种方式都尝试了,似乎都没成功
然后使用第二种Using Bazel’s apt repository,成功了
1.2 1.3 按照官方文档走,
其中遇到OpenCV没有安装成功的问题,然后用第二种,脚本安装,但是脚本安装失败,自己把脚本的代码拿来一步步执行成功的
1.4 执行了第一行命令,后面两行命令不知道什么意思,似乎没什么用
1.5 Run the Hello World! in C++ example
这里面需要Android的SDK和NDK,教程没详细介绍
首先通过Android Studio或者Android SDK Manager 或者setup_android.sh 这个命令 下载SDK和NDK
然后设置SDK和NDK的路径,按照网上教程设置到环境变量里面,没用
实际上是设置到MediPipe的WORKSPACE文件里面的android_ndk_repository路径下面,如下
You may run setup_android.sh to install Android SDK and NDK.
android_ndk_repository(
name = “androidndk”,
path = “/D/Android/sdk_linux/ndk/NDK版本号”, # 这里注意新版本的Android Studio NDK目录变了,要写ndk下面的版本号
)
android_sdk_repository(
name = “androidsdk”,
path = “/D/Android/sdk_linux”,
)
然后运行
bazel run --define MEDIAPIPE_DISABLE_GPU=1 mediapipe/examples/desktop/hello_world:hello_world
命令,成功了
运行第二条命令也可以了
bazel run --copt -DMESA_EGL_NO_X11_HEADERS --copt -DEGL_NO_X11 mediapipe/examples/desktop/hello_world:hello_world
2、编译Android aar
怎么选择编译的模型,参考
https://blog.doiduoyi.com/articles/1594190216572.html
https://blog.doiduoyi.com/articles/1594190216572.html
其中,如果使用默认的配置,会使用最新的Android sdk版本,但是似乎最新版有些东西缺少,所以采用低一些的版本
android_sdk_repository(
name = “androidsdk”,
api_level = 30,
build_tools_version = “30.0.3”,
path = “/D/Android/sdk_linux”,
)
然后编译,还要下载,时间挺久,还是那个东西,梯子
最后编译成功了
3、导入aar到Android项目,不说了