tensorflow - 如何安装 TensorFlow 2 和 object_detection 模块?
问题描述
背景
我一直在尝试按照此视频中的教程进行操作。目标是尝试安装 TensorFlow 和 TensorFlow 的 object_detection 模块。
目标
如何安装它以便我可以按照教程的其余部分进行操作?我只想安装CPU版本。
附加信息
我遇到的错误
ERROR: Could not find a version that satisfies the requirement tensorflow==2.1.0 (from versions: None) ERROR: No matching distribution found for tensorflow
ERROR: tensorflow.whl is not a supported wheel on this platform.
##研究##
解决方案
序幕
我发现这非常复杂,如果其他人有更简单的方法来安装这个包,请让其他人知道。
主要资源是https://tensorflow-object-detection-api-tutorial.readthedocs.io/en/latest/install.html#set-env
步骤总结
- 您可以在此处安装的 python(x64 位)的最新更新 -
- 从最新版本的 python 创建一个虚拟环境
- 从 Google 获取最新版本的 TensorFlow - https://www.tensorflow.org/install/pip#package-location
- 使用带有 --upgrade 标签和上述步骤链接的 pip 安装最新版本的 TensorFlow
- 获取最新版本的 protoc(数据传输协议) - https://github.com/protocolbuffers/protobuf/releases
- 安装 protoc 并将位置添加到路径,以便您以后可以轻松调用它
- 从这里获取 TensorFlow Garden 文件 - https://github.com/tensorflow/models
- 复制到一个位置并添加一个文件夹结构模型
- 使用 protoc 为 TensorFlow Garden 中的每个模型编译 Protobufs
- 设置 COCO API 以连接 COCO 数据集
- 从 TensorFlow Garden object_detection 模块中的 TensorFlow2 复制设置文件
- 运行 object_detection 模块的安装并希望最好
详细说明
- 我在第一次尝试安装 object_detection 时遇到了一个问题,因为不支持我的 python
版本通过转到此页面获取最新版本 - https://www.python.org/downloads/
单击“下载 Python 3.9.X”
下载后,运行安装文件 - 导航到安装 python 的位置并将路径复制到可执行文件。
通过转到 Windows 键打开命令提示符 - > cmd使用 then 类型
导航到要创建虚拟环境的位置cd "path/to/change/directory/to"
"previously/copied/python/executable/path/python.exe" -m venv "name_of_your_virtual_environment"
- 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 - 通过从虚拟环境“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
请注意,出于某种原因,您必须使用升级标签 - 因为 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 - 要安装这个东西,请提取 .zip 文件并放入“C://Program Files/Google Protoc”
获取具有 protoc 可执行文件的文件夹位置并将其添加到您的环境变量中
要编辑您的环境变量,请按 Windows 键并搜索对于“环境变量”单击“编辑系统环境变量”
然后单击“环境变量”
导航到用户下的“路径”环境变量,选择它并单击编辑
单击新建并粘贴 protoc 的可执行位置,即“C” :/程序文件/GoogleProtoc/bin" - 现在获取 object_detection 模块的实际代码,该模块由研究人员支持,与基础 TensorFlow 分开
导航到 TensorFlow Garden - https://github.com/tensorflow/models
下载或克隆存储库 - 使用以下结构将文件复制到另一个位置
- TensorFlow
- -> 模型(您必须添加此文件夹)-> 社区
- -> 官方
- -> 轨道
- -> 研究
- -> 模型(您必须添加此文件夹)-> 社区
- TensorFlow
- 重新启动命令提示符。需要重新启动以考虑环境变量的变化。在这种情况下
,路径是因为您在那里添加了 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=.
- 安装 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
- 将 TensorFlow 2 的设置 python 文件移动到将安装 object_detection 模块的目录中。
进入“TensorFlow/models/research/object_detection/packages/tf2/setup.py”并将其移至“TensorFlow/models/research/object_detection/setup.py” - 现在运行 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。
推荐阅读
- ruby-on-rails - Rails 迁移将列添加到模式而不是 postgresql 数据库
- javascript - 检测到的坐标偏离鼠标点击
- ruby-on-rails - 如何在rails中没有另一个元素的情况下验证元素的存在
- angular - 在模板中使用服务
- matlab - Matlab命令窗口与同一命令的Matlab gui平台显示不同
- c# - 为了保存变量的值并让它们在 WinForms 之间传递,最好的方法是什么?
- python - 如何使用 discord.py 中的频道 ID 设置频道对象?
- accessibility - 使用 Pa11y 和 Supertest
- makefile - 生成的 Makefile.in 是用什么语言编写的?
- java - 为什么正则表达式最后少匹配一个字符?