在数据管理和注释解决方案方面,Roboflow平台迎来了许多新功能。这些功能旨在帮助团队成员共同构建计算机视觉模型。提供了一个网页界面和API,通过它们,可以注释和管理数据,然后训练、评估、测试和部署计算机视觉模型。
为了帮助开发者利用这些特性,并减少在Roboflow上执行各种操作所需的时间,发布了新的API端点,使可以在计算机视觉流程和应用程序中构建Roboflow。今天,宣布推出五个新的REST API端点。这些新端点旨在为开发者提供自动化平台上的任务的能力,并将Roboflow更紧密地集成到团队运行的计算机视觉流程中。
在这篇文章中,将讨论每个新端点以及如何使用它们。让开始吧!要了解如何获取用于API的密钥,请查看。
Roboflow平台上的数据集可以通过语义搜索功能进行查询,允许找到符合查询条件的图像。例如,在安全帽数据集中,可以找到所有在室内拍摄的安全帽图像。现在,这个特性可以通过RoboflowAPI使用。这个端点返回符合搜索查询的图像文件名和关于图像的高级信息。
可以通过提供以下内容进行搜索:
{
"query": "hard hat",
"in_dataset": true,
"limit": 125,
}
要检索工作区和项目ID,请查看。要了解更多关于如何使用此功能的信息,请查看。
用户可以上传视频到平台,用于构建数据集的新版本。通过网页界面,可以上传视频并选择帧率间隔。将按照此间隔提取帧并添加到数据集中。例如,如果上传视频并选择2 FPS的帧率,每秒钟将提取两幅图像。
要将视频数据上传到Roboflow平台,请查看。这个笔记本展示了如何使用ffmpeg、Roboflow Python包和Python文件实用程序将视频帧上传到Roboflow平台。
Roboflow CLI提供了API的各种功能,以命令行界面的形式提供。可以使用Roboflow CLI上传一个或多个文件。要开始使用,请先安装CLI:
npm i roboflow-cli
然后,使用以下命令进行身份验证:
roboflow login
浏览器将被打开,将进入一个流程,以授予一个或多个工作区的访问权限,以便与CLI一起使用。然后,将收到一个令牌。当从网页界面获得一个令牌时,将其复制到CLI并按Enter键。
现在已经准备好通过CLI上传文件了。要上传文件,请使用“roboflow upload”命令。例如,要上传“images”目录中所有具有“.jpeg”扩展名的图像,可以使用此命令:
roboflow upload images/*.jpeg
可以通过指定要创建的批次的名称以及要与图像关联的批次,以“批次”(可以通过API分配给注释器的一组)的形式上传图像:
roboflow upload images/*.jpeg –batch=camera-1
此命令创建了一个带有批次标签“camera-1”的图像批次。要了解更多关于上传CLI特性的信息,请使用-h标志。此标志打开一个帮助菜单,提供有关使用方式的更多信息:
roboflow upload -h
现在,可以通过API将批次分配给注释器,方法是提供与图像关联的批次ID(可以在通过REST API或使用CLI上传图像时指定一个)。要创建一个注释作业,请向“/jobs”API端点发送一个POST请求,其中包含批次ID、批次中的图像数量以及标签员(将注释图像的人)和审核员(将负责验证注释质量的人)的电子邮件:
curl --location --request POST 'https://api.roboflow.com/${WORKSPACE}/${PROJECT}/jobs?api_key=${ROBOFLOW_API_KEY}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Job created by API",
"batch": "",
"num_images": 10,
"labelerEmail": "lenny@roboflow.com",
"reviewerEmail": "lenny@roboflow.com"
}'
200响应表示图像已成功注释。可以在中查看返回的JSON有效负载,该示例在RoboflowAPI文档中。
Roboflow API旨在可扩展,并为提供将Roboflow集成到项目工作流程所需的功能。通过API和CLI,可以自动化许多常见操作——从创建数据集批次到分配注释作业给标签员——以便可以构建更高效的计算机视觉流程。