首页 > 解决方案 > 如何安装 TensorFlow 2 和 object_detection 模块?

问题描述

背景

我一直在尝试按照视频中的教程进行操作。目标是尝试安装 TensorFlow 和 TensorFlow 的 object_detection 模块。

目标

如何安装它以便我可以按照教程的其余部分进行操作?我只想安装CPU版本。

附加信息

我遇到的错误

  1. ERROR: Could not find a version that satisfies the requirement tensorflow==2.1.0 (from versions: None) ERROR: No matching distribution found for tensorflow
  2. ERROR: tensorflow.whl is not a supported wheel on this platform.

##研究##

  1. https://github.com/tensorflow/tensorflow/issues/39130
  2. TensorFlow 安装错误:此平台上不受支持的轮子

标签: tensorflowobject-detection-api

解决方案


序幕

我发现这非常复杂,如果其他人有更简单的方法来安装这个包,请让其他人知道。

主要资源是https://tensorflow-object-detection-api-tutorial.readthedocs.io/en/latest/install.html#set-env

步骤总结

  1. 您可以在此处安装的 python(x64 位)的最新更新 -
  2. 从最新版本的 python 创建一个虚拟环境
  3. 从 Google 获取最新版本的 TensorFlow - https://www.tensorflow.org/install/pip#package-location
  4. 使用带有 --upgrade 标签和上述步骤链接的 pip 安装最新版本的 TensorFlow
  5. 获取最新版本的 protoc(数据传输协议) - https://github.com/protocolbuffers/protobuf/releases
  6. 安装 protoc 并将位置添加到路径,以便您以后可以轻松调用它
  7. 从这里获取 TensorFlow Garden 文件 - https://github.com/tensorflow/models
  8. 复制到一个位置并添加一个文件夹结构模型
  9. 使用 protoc 为 TensorFlow Garden 中的每个模型编译 Protobufs
  10. 设置 COCO API 以连接 COCO 数据集
  11. 从 TensorFlow Garden object_detection 模块中的 TensorFlow2 复制设置文件
  12. 运行 object_detection 模块的安装并希望最好

详细说明

  1. 我在第一次尝试安装 object_detection 时遇到了一个问题,因为不支持我的 python
    版本通过转到此页面获取最新版本 - https://www.python.org/downloads/
    单击“下载 Python 3.9.X”
    下载后,运行安装文件
  2. 导航到安装 python 的位置并将路径复制到可执行文件。
    通过转到 Windows 键打开命令提示符 - > cmd使用 then 类型
    导航到要创建虚拟环境的位置cd "path/to/change/directory/to"
    "previously/copied/python/executable/path/python.exe" -m venv "name_of_your_virtual_environment"
  3. TensorFlow 似乎由 google storage api 而不是 pip 支持 找到最新稳定 TensorFlow 的链接 使用
    此网站https://www.tensorflow.org/install/pip#package-location
    现在获取匹配的 TensorFlow 安装链接你的python版本。
    由于我的是 3.9 版和 windows 我得到了这个链接 - https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow_cpu-2.6.0-cp39-cp39-win_amd64.whl
  4. 通过从虚拟环境“name_of_your_virtual_environment”获取 python.exe 来安装 TensorFlow
    "name_of_your_virtual_environment/Scripts/python.exe" -m pip install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow_cpu-2.6.0-cp39-cp39-win_amd64.whl
    请注意,出于某种原因,您必须使用升级标签
  5. 因为 TensorFlow 是谷歌的东西,他们使用一种称为 Protobuffs 的特殊数据交换格式
    通过导航到他们的网站来查找该工具的最新版本 - https://github.com/protocolbuffers/protobuf/releases
    在最新版本下找到与您的匹配的链接操作系统又名 windows 和架构 x64
    我选择了https://github.com/protocolbuffers/protobuf/releases/download/v3.17.3/protoc-3.17.3-win64.zip
  6. 要安装这个东西,请提取 .zip 文件并放入“C://Program Files/Google Protoc”
    获取具有 protoc 可执行文件的文件夹位置并将其添加到您的环境变量中
    要编辑您的环境变量,请按 Windows 键并搜索对于“环境变量”单击“编辑系统环境变量”
    然后单击“环境变量”
    导航到用户下的“路径”环境变量,选择它并单击编辑
    单击新建并粘贴 protoc 的可执行位置,即“C” :/程序文件/GoogleProtoc/bin"
  7. 现在获取 object_detection 模块的实际代码,该模块由研究人员支持,与基础 TensorFlow 分开
    导航到 TensorFlow Garden - https://github.com/tensorflow/models
    下载或克隆存储库
  8. 使用以下结构将文件复制到另一个位置
    • TensorFlow
      • -> 模型(您必须添加此文件夹)-> 社区
        • -> 官方
        • -> 轨道
        • -> 研究
  9. 重新启动命令提示符。需要重新启动以考虑环境变量的变化。在这种情况下
    ,路径是因为您在那里添加了 protoc,以便更容易从命令提示符调用
    再次是 Windows 键 - > 搜索 cmd
    在研究文件夹中导航,使用cd "TensorFlow/models/research/"
    运行命令下载和编译 Protobuf 库for /f %i in ('dir /b object_detection\protos\*.proto') do protoc object_detection\protos\%i --python_out=.
  10. 安装 COCO API 以便您可以访问数据集。这是 TensorFlow 的 object_detection api 的要求
    确保您仍在“TensorFlow/models/research/”
    文件夹中 将 setup python 文件复制到您正在使用的文件夹中copy object_detection/packages/tf2/setup.py .
    现在使用 pip 执行安装"name_of_your_virtual_environment/Scripts/python.exe" -m pip install --use-feature=2020-resolver
  11. 将 TensorFlow 2 的设置 python 文件移动到将安装 object_detection 模块的目录中。
    进入“TensorFlow/models/research/object_detection/packages/tf2/setup.py”并将其移至“TensorFlow/models/research/object_detection/setup.py”
  12. 现在运行 object_detection 模块的安装过程
    打开 CMD 并使用 cd 命令导航到“TensorFlow/models/research/object_detection/”
    使用您的虚拟环境运行脚本"name_of_your_virtual_environment/Scripts/python.exe" setup.py

错误指南

ERROR: Could not find a version that satisfies the requirement tensorflow==2.1.0 (from versions: None) ERROR: No matching distribution found for tensorflow

发生这种情况是因为您的 Python 版本不正确或架构错误 32 位而不是 64 位。通过下载新版本的 Python 并创建新的虚拟环境来解决此问题。

ERROR: tensorflow.whl is not a supported wheel on this platform.

与上面类似,您的 Python 版本可能是错误的,或者您从 Google Storage API 的 TensorFlow 存储库中选择了错误的链接。从头开始,下载最新版本的 Python,创建新的虚拟环境,然后下载与 Python 版本、操作系统(例如 MAC、Linux 或 Windows)相匹配的正确版本的 TensorFlow。


推荐阅读