利用Roboflow提升计算机视觉模型构建效率

在本文中,将深入探讨Roboflow平台动作,并展示如何利用它们来缩短构建计算机视觉模型所需的时间。通过使用Roboflow的Python包,可以轻松地生成数据集版本、导出数据集,并在Python代码中训练模型。

在Roboflow上训练模型之前,需要创建一个数据集版本。数据集版本允许创建一个模型的检查点,以便以后可以引用。例如,可以创建一个应用了特定增强的数据集版本,使用该版本训练模型,然后使用另一个增强重复此过程。现在,将拥有两个可以比较和评估的检查点。此外,版本确保对数据集所做的更改不会影响之前训练的模型的结果。现在,使用Python几行代码就可以生成数据集版本。

from roboflow import Roboflow rf = Roboflow(api_key="API_KEY") project = rf.workspace("YOUR_WORKSPACE").project("YOUR_PROJECT") new_version = project.generate_version()

可以传递一个包含想要应用的增强和预处理步骤的字典。通过这个更改,可以创建一个系统,让可以轻松地根据本地存储的现有配置创建新项目的版本。考虑一个场景,维护多个航拍图像项目。如果发现一个在某个项目上有效的增强,可以使用Python包为所有其他项目创建一个应用该增强的新版本。

version_info = {"augmentation": {"flip": {"horizontal": True}}} new_version = project.generate_version(version_info)

这段代码创建了一个数据集版本,其中仅应用了翻转增强。有关增强和预处理选项的完整列表,请参见。当生成一个新版本时,它将显示在Roboflow Web界面中。

新的Python export()方法允许从Roboflow平台导出数据集,只需一行代码。然后可以使用download()将包含数据的文件保存到本地计算机。这在在Roboflow中注释和处理数据并需要在自定义训练管道中使用时非常有用。可以将数据导出为多种支持的格式之一。有关支持格式的完整列表,请参见。

from roboflow import Roboflow rf = Roboflow(api_key="API_KEY") project = rf.workspace("YOUR_WORKSPACE").project("YOUR_PROJECT") version = project.version("v1") version.export("yolov5pytorch") version.download("yolov5pytorch")

此代码将模型导出为包含YOLOv5 PyTorch数据的zip文件。此功能支持对象检测、单标签分类、多标签分类、实例分割和语义分割数据集的导出。

训练模型

Roboflow Python包现在允许以两种不同的方式训练模型:使用生成的数据集的特定版本,以及在生成新数据集版本后立即在该数据集上训练模型。这两个新功能意味着,一旦将项目初始化到代码中,现在只需一行代码就可以使用Roboflow平台训练模型。

from roboflow import Roboflow rf = Roboflow(api_key="API_KEY") project = rf.workspace("YOUR_WORKSPACE").project("YOUR_PROJECT") version = project.version("v1") version.train()

要使用现有版本的数据集训练模型,请使用此代码。

from roboflow import Roboflow rf = Roboflow(api_key="API_KEY") project = rf.workspace("YOUR_WORKSPACE").project("YOUR_PROJECT") project.train()

可以使用train()方法在“项目”对象上生成新的数据集版本。通过这个更改,可以设置新模型版本的自动部署。例如,如果希望每天重新训练模型,因为每天注释许多图像,现在可以在Python包内实现。还可以在注释了一定数量的新图像后设置自动部署。例如,对于注释的每200个新图像,可以生成一个新模型。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485