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

运行Sentdex的TensorFlow脚本时遭遇两类报错,求解决方案

解决运行Sentdex脚本时遇到的两个错误

1. TensorFlow NotFoundError: data/mscoco_label_map.pbtxt 文件不存在

这个错误是因为脚本默认尝试从data/mscoco_label_map.pbtxt路径读取COCO数据集的标签映射文件,但该路径下没有对应文件,可按以下步骤修复:

  • 先确认文件来源:mscoco_label_map.pbtxt是TensorFlow Object Detection API的标准文件,通常存放在API目录的models/research/object_detection/data路径下(如果你是按官方流程部署的API)。
  • 复制文件到指定位置:找到该文件后,将它复制到你的脚本所在目录下的data文件夹中(如果data文件夹不存在,先手动创建)。
  • 或修改脚本路径:打开脚本找到加载该文件的代码行,把相对路径data/mscoco_label_map.pbtxt替换成文件的绝对路径(比如/home/your_username/models/research/object_detection/data/mscoco_label_map.pbtxt),确保TensorFlow能准确定位到文件。

2. Matplotlib 后端初始化错误

这个问题核心是matplotlib.use()的调用时机错误——它必须在第一次导入pyplot、pylab或任何Matplotlib后端相关模块之前执行,但你的脚本在第11行已经先导入了from matplotlib import pyplot as plt,导致后续use()调用失效,解决方法如下:

  • 调整代码顺序:找到脚本中matplotlib.use()的代码行,把它移动到所有Matplotlib相关导入的前面。示例:
    import matplotlib
    matplotlib.use('Agg')  # 可替换为你需要的后端,比如'Qt5Agg'等
    from matplotlib import pyplot as plt
    
  • 无需手动指定后端则删除调用:如果没有特殊的后端需求,直接删掉脚本中的matplotlib.use()语句即可,Matplotlib会自动适配当前环境支持的后端(比如你的环境默认的'TkAgg'本身是可用的)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:25:31