You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MediaPipe Hands模块.task文件路径解析错误问题求助

问题描述

按照官方文档操作时,BaseOptions解析模型路径出现异常——未使用项目目录,反而给路径添加Python包路径前缀,生成了无效路径。面部/姿态模型在相同配置下可正常运行,尝试用pathlib解决但无效,询问问题原因及解决方法。

代码示例

base_options = BaseOptions(model_asset_path='hand_landmarker.task')
options = HandLandmarkerOptions(
    base_options=base_options,
    running_mode=VisionRunningMode.IMAGE,
    num_hands=2
)

生成的无效路径

C:\Users\User\AppData\Roaming\Python\Python310\site-packages/C:\Users\User\source\repos\JFLewelery_Bot_AI\hand_landmarker.task
Errno 22

尝试的pathlib代码

task_path = Path(__file__).resolve().parents[2] / "hand_landmarker.task"
if not task_path.exists():
    raise FileNotFoundError(f"Model file not found at: {task_path}")

options = HandLandmarkerOptions(
    base_options=BaseOptions(model_asset_path=str(task_path)),
    running_mode=VisionRunningMode.IMAGE,
    num_hands=2
)
原因分析
  • MediaPipe旧版本的BaseOptions存在路径解析bug:当传入绝对路径时,会错误地将其与Python包目录拼接,导致生成无效路径。
  • 面部/姿态模型能正常运行,是因为这类模型在MediaPipe包内有默认的路径映射,或模型文件被默认放置到了包目录中,手部模型无此默认处理逻辑。
解决方法
  • 方法1:将模型放在工作目录并使用相对路径
    把hand_landmarker.task放到Python脚本的运行目录(当前工作目录),直接使用相对路径即可:

    base_options = BaseOptions(model_asset_path='hand_landmarker.task')
    options = HandLandmarkerOptions(
        base_options=base_options,
        running_mode=VisionRunningMode.IMAGE,
        num_hands=2
    )
    
  • 方法2:通过asset_dir指定模型目录
    手动指定模型所在的目录,覆盖BaseOptions的默认路径拼接逻辑:

    from pathlib import Path
    
    # 获取模型所在目录的绝对路径
    task_dir = str(Path(__file__).resolve().parents[2])
    base_options = BaseOptions(model_asset_path='hand_landmarker.task', asset_dir=task_dir)
    options = HandLandmarkerOptions(
        base_options=base_options,
        running_mode=VisionRunningMode.IMAGE,
        num_hands=2
    )
    
  • 方法3:升级MediaPipe到最新版本
    该路径解析bug已在MediaPipe的后续版本中修复,直接升级即可解决:

    pip install --upgrade mediapipe
    

内容的提问来源于stack exchange,提问作者Anastasiya Miklashevich

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 16:12:20