可以在Roboflow上上传自定义的YOLOv5权重,并且通过几行代码,就可以将训练的YOLOv5模型权重上传到云基础设施上,实现无限可扩展、稳健的模型部署。模型将在几分钟内准备就绪,并且可以立即利用SDK、教程和开源软件,在各种设备上部署模型,无论是在Web浏览器中使用还是在NVIDIA Jetson边缘设备上工作。
在本指南中,将详细介绍如何将YOLOv5权重部署到Roboflow。现在,让开始吧!💡 现在支持从更多架构上传模型权重到Roboflow。了解更多信息,请查看帖子。
要将模型权重上传到Roboflow,可以使用deploy()函数。这个函数将把指定的权重发送到Roboflow云,并部署模型,使其准备好在想要的任何部署设备上使用(例如Luxonis OAK、Web浏览器、NVIDIA Jetson)。
要上传模型权重,请使用以下代码行:
project.version(dataset.version).deploy(model_type="yolov8", model_path=f"{HOME}/runs/detect/train/")
需要将“dataset.version”替换为数据集关联的版本号,并将HOME值替换为正在工作的主目录。如果按照上面的笔记本操作,这些值将已经设置好了。
当运行这行代码时,Roboflow仪表板将更新以显示模型权重正在加载。过一段时间后,模型页面将更改为显示现在有一个训练好的模型可用。
将出现一个声明“YOLOv5 MODEL UPLOAD”,记录模型正在使用上传的自定义权重:
现在有一个训练好的模型,可以在项目中使用!可以以多种方式使用模型。使用Roboflow仪表板侧边栏中的链接导航到“部署”选项卡。这个页面列出了各种不同的部署项目的方法,并附有代码片段和参考材料。
可以尝试通过上传照片或视频或允许访问流式传输网络摄像头,在浏览器中测试模型。
这里有一个模型在上传的图像上运行推理的示例:
# 假设这是一段示例代码,展示模型在图像上运行推理
模型成功地识别了数据集中的各种类别!从这里,可以使用Roboflow pip包在Python脚本中使用模型。
将模型部署到浏览器中,使用roboflow.js和Repl.it等工具。
使用Luxonis OAK等边缘设备进行部署。
更多!在文档的“推理 - 目标检测”部分记录了所有可用的部署选项。
使用Roboflow的Label Assist功能,可以使用训练好的模型来协助标注。Label Assist在想要标注的图像上运行模型,并推荐标注。
随着模型的不断完善,Label Assist将能够以更高的准确度标注图像,从而减少花在标注图像上的时间。
要利用Label Assist,请上传新图像进行标注。选择一个图像进行标注,然后点击标注工具右侧面板上的魔杖图标。可以选择上传的YOLOv5模型的版本。
在本教程中,将训练一个能够识别照片和视频中的建筑设备和安全指导违规的模型。在能够训练这个模型之前,需要收集图像数据并用所需的类别标注图像。
为了加快创建项目的过程,将使用Roboflow Universe上的开源数据集。Universe是一个拥有超过110,000个图像数据集的开放仓库,可以在计算机视觉项目中使用。已经创建了一个名为“Construction Site Safety”的项目,其中包含了建筑设备和安全违规的标注图像。
以下是数据集中的一个示例标注图像:
要使用该数据集,首先需要一个Roboflow账户。免费创建一个,然后前往Construction Site Safety项目页面。点击“Download this Dataset”按钮,并选择下载数据集的压缩版本:
在计算机上解压缩数据集,然后导航到Roboflow仪表板。可以通过点击导航栏中的“Projects”来做到这一点。点击按钮创建一个新项目,并填写有关项目的信息。在这种情况下,将项目称为“Construction Safety”。
创建项目后,可以上传数据。将从Universe下载的解压缩文件夹(或自己的自定义数据)拖到Roboflow仪表板中。
上传数据所需的时间将取决于上传的数据量——上传的图像和标注越多,过程将需要更长的时间。
一旦文件被处理,请点击“Save and Continue”按钮以保存图像和标注。
如果图像没有标注,请使用仪表板侧边栏中可访问的“Annotate”功能来标注图像。有一份图像标注最佳实践指南,它将为提供有效标注图像所需的知识。
标注完图像后,点击侧边栏中的“Generate”以创建一个新的项目版本。可以在这个阶段添加图像增强和预处理步骤。
有关可能适合项目的步骤的指导,请查看图像增强和预处理指南。
配置好数据集版本后,点击“Generate”。这将创建一个数据的快照,可以在其中上传模型权重。
现在已经创建了数据集的版本,可以开始训练YOLOv5模型了。团队准备了一个开源的Google Colab笔记本,介绍了如何训练YOLOv5模型。这个笔记本附带了一份书面教程,有评论和更多指导,以帮助利用笔记本。
如果还没有训练好的模型,请导航到笔记本并在自己的Google账户中创建一个副本:
然后,按照笔记本中记录的步骤来检索标注的数据,配置模型,并开始训练。在下面的视频教程中,介绍了如何使用YOLOv5笔记本来训练自定义模型:
在YOLOv5笔记本中,定义了一个YAML脚本,说明了模型的配置。可以根据自己的愿望调整模型的配置,权重将与Roboflow平台兼容:
在运行完笔记本中的所有单元格并拥有一组权重后,可以将它们上传到Roboflow并部署模型的一个版本。
随着YOLOv5部署功能的推出,现在可以轻松地将自定义YOLOv5模型部署到云端。
通过几行Python代码,可以将权重上传到基础设施,并拥有一个可以运行推理的托管API。