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

TensorFlow 2.12.0环境下Object Detection API测试失败求助

问题排查与解决方案

1. 解决tensorflow.python.keras.layers.preprocessing模块缺失问题

TensorFlow 2.10+版本对keras模块结构做了调整,preprocessing相关层已从tensorflow.python.keras.layers迁移至tensorflow.keras.layers或独立的tensorflow.keras.preprocessing包:

  • 修改导入路径:把from tensorflow.python.keras.layers.preprocessing import ...替换为from tensorflow.keras.layers import ...(比如TextVectorization这类预处理层直接在tensorflow.keras.layers下);若使用的是数据预处理工具,改用from tensorflow.keras.preprocessing import ...。
  • 修复TensorFlow安装:执行pip show tensorflow确认版本为2.12.0,若安装损坏,强制重新安装:
pip install --force-reinstall tensorflow==2.12.0

2. 修复Object Detection API安装与测试问题

(1)补全依赖包

Object Detection API与TensorFlow 2.12.0匹配的依赖版本如下,先安装或升级:

pip install --upgrade pip
pip install numpy==1.23.5 pillow==9.4.0 matplotlib==3.7.1 opencv-python==4.7.0.72 protobuf==3.20.3

(2)解决pip install .异常

该异常多因protobuf未编译或Visual Studio环境不全导致:

  • 确认Visual Studio 2017已安装C++桌面开发组件(需勾选"Desktop development with C++",仅安装VS主程序不够)。
  • 编译protobuf文件:在Object Detection API根目录下执行(Windows环境):
protoc object_detection/protos/*.proto --python_out=.

如果找不到protoc命令,需下载3.20.x版本的protobuf工具,将protoc.exe所在路径添加到系统环境变量PATH中。

(3)重新安装API并测试

改用开发模式安装API,避免文件复制问题:

pip install -e .

激活虚拟环境后,运行测试文件:

python object_detection/builders/model_builder_tf2_test.py

(4)验证环境路径

确保当前终端已激活目标虚拟环境,执行where python(Windows)或which python(Linux/macOS)确认Python解释器路径指向虚拟环境内的版本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 05:00:03