参考网站:https://www.stubbornhuang.com/1555/
命令行输入
pacman -Syu
然后等待各种包下载升级安装即可
继续输入
pacman -Su
等待升级完成
由于MSYS2没有内置unzip,故需要手动安装,打开cmd.exe,直接输入:
pacman -S git patch unzip
等待安装即可,MSYS2配置完成
需要在电脑上安装Python,Anaconda并配置系统环境。在Python环境中需要装好tensorflow cpu,如果准备编译GPU版本需要安装gpu版本的tensorflow。建议安装PyCharm,Python需要的库可以在里面直接添加。
WinSDK在VS安装的时候会自动安装
VS官网:https://visualstudio.microsoft.com/zh-hans/free-developer-offers/
下载
下载地址:https://github.com/bazelbuild/bazel/releases,这个是国外的网站,需要一些技术手段(这里就不说了)
还有一个国内网站:https://mirrors.huaweicloud.com/bazel/
下载的版本需要是3.7.2版本以上的
例如:bazel-3.7.2-windows-x86_64.exe
配置环境变量
把下载的exe文件放到指定盘下,直接复制过去就可以,改个名,将路径配置到环境变量的系统变量里
这个路径一定要准确,bazel尽量不要存于桌面,我第一次进行编译的时候因为放到桌面造成了路径混乱,分不清了。
若出现以上结果便是安装成功
打开MSYS,输入:
# Please find the exact paths and version numbers from your local version.
C:\> set BAZEL_VS=C:\Program Files\Microsoft Visual Studio\2022\Community
C:\> set BAZEL_VC=C:\Program Files\Microsoft Visual Studio\2022\Community\VC
C:\> set BAZEL_VC_FULL_VERSION=
C:\> set BAZEL_WINSDK_FULL_VERSION=
BAZEL_VS: VS的安装路径,这里有个注意的地方,如果你的安装路径是在Program Files (x86)下,这个括号需要进行转义,所以应该变成Program Files \(x86\)
BAZEL_VC: VS安装目录下C++主要目录
BAZEL_VC_FULL_VERSION: VS中VC版本号,可以在C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Redist\MSVC下找到,如图
14.30.30704便是版本号
BAZEL_WINSDK_FULL_VERSION:WinSDK的版本号,这可以在控制面板-程序-程序和功能中查看,找到Windows Software Development Kit,后面跟的数字就是WinSDK的版本号,如下图所示。
完整的:
set BAZEL_VS=C:\Program Files\Microsoft Visual Studio\2022\Community
set BAZEL_VC=C:\Program Files\Microsoft Visual Studio\2022\Community\VC
set BAZEL_VC_FULL_VERSION=14.29.30036
set BAZEL_WINSDK_FULL_VERSION=10.0.19041.685
下载运行exe,解压到自己想要的路径(不要用中文路径),防止后边编译出错
git迁移Mediapipe官方仓库,cmd.exe执行
git clone https://github.com/google/mediapipe.git
迁移完成之后,打开该仓库根目录下的WORKSPACE文件,并在该文件中搜索“windows_opencv”,并将OpenCV的路径修改为你本地保存OpenCV的路径
修改后:
new_local_repository(
name = "windows_opencv",
build_file = "@//third_party:opencv_windows.BUILD",
path = "C:\\Program Files\\opencv\\build",
)
打开cmd,切换到Mediapipe仓库根目录下
bazel build -c opt --define MEDIAPIPE_DISABLE_GPU=1 --action_env PYTHON_BIN_PATH="C:\\Users\\m1986\\AppData\\Local\\Programs\\Python\\Python310\\python.exe" //mediapipe/examples/desktop/hello_world
其中PYTHON_BIN_PATH是Python的安装路径
编译完成后看到如下信息:
我在这遇见了缺少numpy模块,该模块是python用来存储和运算大型矩阵的。
解决方案:
打开PyCharm,在工作空间中加载Mediapipe仓库根目录,将整个文件夹导入。
依次点击File-Settings-Project:mediapipe-Python Interpreter。选择 + 号,搜索numpy,将找到的选中后点击Install Package,等待出现Successfully即可解决。
set GLOG_logtostderr=1
bazel-bin\mediapipe\examples\desktop\hello_world\hello_world.exe
运行结果如下:
如果运行成功,那么就说明Mediapipe的Windows C++编译环境配置完成