Roboflow Workflows:构建复杂的计算机视觉应用

在高级项目中,可能需要编写大量的代码,这些代码随后需要在所有需要应用的地方进行测试和部署。Roboflow 兴奋地宣布了一个新的功能——Workflows,它允许利用最先进的计算机视觉技术构建复杂的应用。Workflows 提供了一个基于Web的编辑器,可以在其中构建应用逻辑。一旦Workflow准备就绪,可以复制一个代码片段,将其部署到所有的设备上,无论是在图像、视频还是实时视频流上。

以下是一个检测常见物体的Workflow示例。点击“尝试Workflow”,并上传包含常见物体(例如猫、手机、咖啡杯)的图像,以查看Workflow的工作情况:使用此Workflow,点击Workflow底部的“运行预览”,然后拖入任何包含常见物体(例如汽车、动物、家用物品)的图像。点击“运行预览”以查看模型的输出。这里是一个模型返回的示例输出:

在这篇博客文章中,将探索Workflows中可能的内容:可用的功能以及用例,以激发想象力,让在实验和构建新项目时有所启发。可以在Roboflow Workflow Templates库中看到一系列Workflow模板,可以尝试立即使用它们。

介绍Workflows

Roboflow Workflows允许在浏览器中构建复杂的计算机视觉应用。Workflows基于块构建,每个块执行一个特定功能,并且可以连接到其他块以创建一个应用。使用Workflows,可以构建使用以下内容的应用:

  • 托管在Roboflow上的微调模型;
  • 像CLIP和SAM-2这样的最先进的基础模型;
  • 可视化工具,显示模型返回的检测结果;
  • 像GPT-4这样的LLMs与视觉;
  • 条件逻辑,如果满足条件,则运行Workflow的一部分;
  • 像SIFT、主色检测等经典计算机视觉算法;
  • 等等。

Workflows可以包含任意多的块,以表示应用逻辑。让讨论一些可以使用Workflows构建的高级用例,而无需编写任何代码。

可以构建运行对象检测或分割模型的视觉系统,并将结果与输入图像一起保存到数据集中。这可以用于构建主动学习管道,其中模型的输入数据被保存到数据集中,用于训练未来的模型版本。

可以构建主动学习系统,将所有通过工作流的图像添加到数据集中。这可以与像SAM-2这样的基础模型一起使用,以自动标记数据。

还可以使用Workflows构建只上传满足特定条件的图像到数据集的主动学习系统,例如预测的置信度在特定范围内。这有助于收集可以用来提高模型性能的数据。

可以构建基于特定条件做出判断的Workflows。例如,可以构建一个系统,监控装配线上的堵塞情况,这由给定区域内物品过多表示。

可以使用Workflows为零售应用构建高级库存管理系统。例如,可以使用YOLO World,这是一个零样本模型,来识别通用产品(例如咖啡袋),裁剪感兴趣的对象,然后将每个对象发送给GPT以获取有关对象的更多信息。

可以构建包含多个条件语句的Workflows。为了好玩,Roboflow团队制作了一个Workflow,让可以玩石头剪刀布。

可以使用Workflows构建运行对象检测模型、处理预测,然后对结果运行业务逻辑的系统。例如,构建了一个系统,用四个Workflow块读取集装箱ID。该系统:

部署Workflows

可以通过以下三种方式部署Workflow:

  • 使用Roboflow API部署到Roboflow云;
  • 在由Roboflow托管并专为使用的专用部署服务器上;
  • 在自己的硬件上。

Workflows部署文档详细介绍了如何使用上述各种方法部署Workflows。如果需要一个API来运行Workflows而不需要管理自己的硬件,那么部署到云端是理想的。话虽如此,对于减少延迟至关重要的用例,建议在自己硬件上部署。

如果在Roboflow云中部署模型,可以在图像上运行推理。如果在专用部署或自己的硬件上部署,可以在图像、视频、网络摄像头源和RTSP流上运行推理。

要部署一个Workflow,点击Roboflow工作区中的“部署Workflow”。然后会打开一个窗口,提供有关如何部署Workflow的信息。

当第一次在自己的硬件或专用部署上运行Workflow时,Workflow中使用的所有模型将被下载到设备上,以供与Workflow一起使用。这个过程需要的时间将取决于使用哪些模型。Roboflow模型应该只需要几秒钟就可以下载,但像CLIP和SAM 2这样的基础模型可能需要几分钟才能下载。然后,模型将被缓存以供在自己的硬件上使用。这将导致后续运行的响应速度更快。

更多示例

Roboflow Workflows模板库中有许多Workflow示例。以下是制作的一些示例:

  • 检测车辆
  • 检测鱼类
  • 从图像中移除背景
  • 使用SAHI检测小物体
  • 检测和读取车牌

还编写了几篇指南,详细介绍了特定Workflows的逐步操作,包括:

  • 如何构建自动化多模态数据标注管道
  • 如何使用计算机视觉创建零售平面图
  • 如何构建计算机视觉主动学习工作流
  • 使用计算机视觉监控装配线吞吐量
  • 使用计算机视觉识别太阳能板位置
  • 如何构建CPG库存目录系统
  • 如何构建自动化车牌阅读应用
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485