Google 的姿态识别技术 mediapipe 使用效果不错,但是安装起来总是会遇到各种问题,因此本人在此讲自己安装过程中遇到的各种困难都讲解出来,希望对后来的人有所帮助
在 windows 上安装mediapipe
在 windows 上安装 mediapipe 相对比较简单,只需要用 pip 安装就好了
安装命令:
pip install mediapipe
基本上能完成安装
在 Linux 上安装 mediapipe
首先是官方教程:
点击进入官方安装界面
可以解决一部分的问题
但是一切的一切最好先使用docker!!!
虽然 官方有 docker 的镜像,但是本人安装的时候在安装 mediapipe 的时候出现了问题,考虑到一些因素,因此最终还是放弃了,有兴趣的朋友可以尝试。
但是本人是在 jetson 上安装,mediapipe 没有提供aarch64的wheel文件,因此需要源码编译,mediapipe官方github解决方案 => jiuqiant/mediapipe_python_aarch64,官方是ubuntu 20.04,最终本人尝试了 ubuntu18.04 也能安装成功 python 库
可能按照解决方案能够完成安装,但是如果没有的话,因此继续
首先按照 官方的步骤开始:
安装bazel (官方的编译器, arm64 上安装是真的烦!!!)
1.1 首先推荐安装 bazel 4.0.0,本人在使用 bazel 3.7.2 编译的时候出现了版本问题的警告,可能这对最后的结果没有影响但是还是选择了 bazel 4.0.0
安装可以参考这篇文章 bazel-3.1.0
bazel 官方传送门
安装完之后记得检查版本, 一般不会出太大的问题,(环境变量问题需要注意)
bazel version
1
1.2 按照官方教程,该安装的安装,该修改的修改,这里不再赘述。
这里主要提出一些本人遇到的问题,并提出自己的解决方案。
一般也是到 第7步 编译的时候问题才会显示出来
问题1: return tensor 的问题
如图所示:
官方github issue 中的解决方案(可解决问题):
github issue 1733
↑↑↑↑↑ 想了解详细内容可以进入issue ↑↑↑↑↑
将那边的文章翻译过来就是:
将报错中的那个文件中的
return tensor;
1
改为
return absl::StatusOr<mediapipe::Tensor> ( mediapipe::Tensor(std::move(tensor));
1
本人尝试的是以上的方法(有时候还需要改另一个文件,这取决于你的报错是怎么样的,当时我是改了两个文件的),当然 issue 中还有一种办法是将 gcc7 升级为 gcc8 也解决了问题,这个我没有去尝试。
问题2 Httpconnect 问题 !!!
(已经忘记在什么地方出现了这个问题了)
但是这是网络问题,多重复几次或者*问题解决应该就行了
最后:附上一些曾搜索过的有用的资料
相对完整的安装流程 - github - yockgen/mediapipe_jetson_nano
github: AndreV84/mediapipe —> Jetson Xavier AGX. aarch64,Linux Tegra
流程大部分都与官方的相同,基本上都是解决了各自遇到的问题。
(AndreV84,也是一个在安装上煞费苦心的人)
安装 bazel 也可以参照这篇文章(Jetson Nano结合MediaPipe实现-水蓝城城主),不过还是建议安装 bazel 4.0.0
————————————————
版权声明:本文为CSDN博主「only_tao」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/only_tao/article/details/120027858