Roboflow 模型推理指南

Roboflow提供了多种方式来运行模型推理,包括Python SDKREST API和命令行界面(CLI)。本文将详细介绍如何使用这些工具来执行模型推理任务。

使用Python SDK进行模型推理

若要使用Python SDK进行模型推理,首先需要导入Roboflow库,并使用 API 密钥创建一个 Roboflow 实例。然后,可以加载项目和模型,并设置置信度和重叠阈值。最后,可以对本地图像或托管图像进行预测,并以交互式环境展示预测结果或将预测结果转换为 JSON 格式。

import roboflow as rf # 使用 API 密钥创建 Roboflow 实例 rf = roboflow.Roboflow(api_key="YOUR_API_KEY_HERE") # 加载项目 project = rf.workspace().project("PROJECT_ID") # 加载模型 model = project.version("1").model # 设置置信度和重叠阈值(可选) model.confidence = 50 model.overlap = 25 # 对本地图像进行预测 prediction = model.predict("YOUR_IMAGE.jpg") # 对托管图像通过文件名进行预测 prediction = model.predict("YOUR_IMAGE.jpg", hosted=True) # 对托管图像通过 URL 进行预测 prediction = model.predict("https://...", hosted=True) # 在交互式环境中绘制预测结果 prediction.plot() # 将预测结果转换为 JSON 格式 prediction.json()

在本地运行的推理服务器容器中使用图像

如果通过容器部署(如 NVIDIA Jetson 或 Raspberry Pi 容器)运行了本地推理服务器,可以通过指定本地运行的推理服务器的 IP 地址来指向该服务器,而不是远程端点。在执行 Python 脚本之前,必须确保本地推理服务器正在运行并且可以进行通信。当使用带有 --net=host 标志的 Docker 容器时,建议通过 localhost 格式进行引用。

local_inference_server_address = "http://localhost:9001/" version_number = 1 local_model = project.version(version_number=version_number, local=local_inference_server_address).model

使用REST API进行模型推理

REST API提供了不同的端点,取决于想要在其上运行推理的项目类型。以下是针对每种项目类型运行推理的相关文档:对象检测、分类、实例分割和语义分割。

使用CLI进行模型推理

要从CLI运行推理,可以使用以下命令。-m 选项指定了用于推理的模型和版本。如果已经训练了自己的自定义模型,可以替换为自己的模型/版本。这适用于对象检测、分类、实例分割或语义分割模型。有关此 CLI 命令的更多信息,请参考 CLI 文档中的推理部分。

roboflow infer -m <project-name>/<version-number> <image-name>
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485