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

求助解决:无法从object_detection.protos导入string_int_label_map_pb2的ImportError

解决 cannot import name 'string_int_label_map_pb2' from 'object_detection.protos' 导入错误

出错根源

这个问题本质是TensorFlow Object Detection API的protos目录里的.proto定义文件没编译成Python能识别的.py文件,或者Python路径配置不对,导致找不到对应模块。

解决步骤

1. 确保安装protobuf工具

打开终端执行以下命令,检查是否已安装protobuf编译器:

protoc --version

如果没有输出版本号,用pip安装:

pip install protobuf

2. 编译所有proto文件

进入本地models/research文件夹(即object_detection所在的上级目录),执行以下命令,将所有.proto文件编译为Python可导入的.py文件:

protoc object_detection/protos/*.proto --python_out=.

执行完成后,去object_detection/protos目录查看,会发现生成了一堆*_pb2.py文件,其中就包含需要的string_int_label_map_pb2.py。

3. 修正Python路径配置

不要只给代码添加object_detection目录路径,需要把上级的research和slim目录也加入Python路径:
在你的代码中修改路径配置:

sys.path.append('models/research')
sys.path.append('models/research/slim')

或者在终端临时设置环境变量(根据系统选择):

  • Linux/macOS:
    export PYTHONPATH=$PYTHONPATH:/你的本地路径/models/research:/你的本地路径/models/research/slim
    
  • Windows:
    set PYTHONPATH=C:\你的本地路径\models\research;C:\你的本地路径\models\research\slim
    

4. 验证编译结果

确认object_detection/protos目录下存在string_int_label_map_pb2.py文件后,重新运行代码,导入错误即可解决。


内容的提问来源于stack exchange,提问作者Rajkot Khodiyar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 16:55:06