鸣谢分享用户:
Mediapipe - Windows10 编译Mediapipe C++版本保姆级教程
https://stubbornhuang.blog.csdn.net/article/details/119546019
Mediapipe在win11下C++编译踩坑集合
https://zhuanlan.zhihu.com/p/1828932610
有效资源:Mediapipe 实现3D人脸检测
https://blog.csdn.net/liang_baikai/article/details/127849714
用MediaPipe实现一个DLL满足各种姿态捕捉
https://zhuanlan.zhihu.com/p/446265661
用户变量:

系统变量:

其它准备工作:
!正确跨栏!
Microsoft C++ 生成工具 - Visual Studio
https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/
C:\Program Files\jdk-21.0.6
本机windows10x64版本所需版本参考
bazel-7.6.0
https://github.com/bazelbuild/bazel/tags?after=7.6.0
mediapipe-0.10.21
https://github.com/google-ai-edge/mediapipe/releases/tag/v0.10.21
1.python 3.11.9
需要安装:pip install tensorflow
2.opencv 3.4.10
解压到C盘根目录c:\opencv,这样避免修改默认文档里面的对应路径
3.下载mediapipe-0.8.10,主要是里面有两个模型文档,其后的版本就没包含了
mediapipe\modules\face_landmark:
face_landmark.tflite
face_landmark_with_attention.tflite
上述两个模型,在hello world编译成功后,编译face_mesh中要用到,解压后复制到mediapipe版本的对应目录下,之前需修改cpp文档的摄像头的编号,默认是0,如果本机编号为1。
------------------编译hello world错误修正------------------
1.python版本更正,...根据本机管理员用户名确定,tn25e5e3会根据实际运行情况有所不同:
C:/users/.../_bazel_.../tn25e5e3/external/org_tensorflow/third_party/py/python_repo.bzl
version = _get_python_version(ctx)
Fix:
version = "3.11"
2.合计二处,PY2,PY3,python执行文件路径更正:
C:/users/.../_bazel_.../tn25e5e3/external/local_execution_config_python/BUILD:16:11:
interpreter_path = interpreter,
Fix:
interpreter_path = "D:\\Python311\\python.exe"

------------------编译face_mesh错误修正------------------
1.四个qs8-qc8w-文档按出场顺序报错,格式转换更正:
external/XNNPACK/src/qs8-qc8w-gemm/gen/qs8-qc8w-gemm-1x8c8-minmax-fp32-avxvnniint8-prfm.c(71): error C2440: '=': cannot convert from 'int' to '__m256i'
...
vacc0x0123 = _mm256_dpbssd_epi32(vacc0x0123, va0x01234567, vb01234567x0123);
...
Fix:
vacc0x0123 = _mm256_dpbusd_avx_epi32(vacc0x0123, va0x01234567, vb01234567x0123);
参考来源:
C:\Users\...\_bazel_...\tn25e5e3\execroot\_main:
目录下qs8-qc8w-系列文件,有原始正确代码
2.stablehlo_reduce_window.cc系列报错:
external/org_tensorflow/tensorflow/lite/kernels/stablehlo_reduce_window.cc
...
// 3
// ┌────┐
// ┌─┐ ┌─┐
// │X│X X│X│┐
// └─┘ └─┘│2
// X X X X ┘
// ┌─┐ ┌─┐
// │X│X X│X│
// └─┘ └─┘
Fix:
全部去掉354-371行的注释。
至此再无错误。


合计修正编译成功时间,约30分钟。
然而...此前...在不同版本的Mediapipe,Bazel,windosSDK纠错捣鼓了...2天,差点就放弃了。
--------------------------------------Time is life!-------------------------------