项目介绍:Overeasy
Overeasy 是一个可以创建强大零样本视觉模型的工具平台。它允许用户组建端到端的自定义流水线,用于执行特定的视觉任务,如:
- 边界框检测
- 分类
- 分割(即将推出)
这些功能实现的过程不需要收集和标记大量训练数据。Overeasy 通过结合预训练的零样本模型,使用户能够轻松构建强大的计算机视觉解决方案。
安装
安装过程非常简单,用户只需运行以下命令即可:
pip install overeasy
想了解如何安装额外功能,请参阅我们的文档。
主要特性
🤖 Agents
:专门用于执行特定图像处理任务的工具。🧩 Workflows
:定义处理图像的 Agents 的顺序,使其以结构化的方式进行。🔗 Execution Graphs
:管理和可视化图像处理流水线。🔎 Detections
:代表边界框、分割和分类。
文档与详细信息
详细的类型、库结构及可用模型,请查阅我们的文档。
示例用法
若没有本地 GPU,可以通过复制我们的 Colab 笔记本来运行示例。
下载示例图片:
!wget https://github.com/overeasy-sh/overeasy/blob/73adbaeba51f532a7023243266da826ed1ced6ec/examples/construction.jpg?raw=true -O construction.jpg
以下是识别施工现场工人是否佩戴个人防护装备(PPE)的工作流程示例:
from overeasy import *
from overeasy.models import OwlV2
from PIL import Image
workflow = Workflow([
# 检测输入图像中的每个头部
BoundingBoxSelectAgent(classes=["person's head"], model=OwlV2()),
# 应用非极大值抑制以去除重叠的边界框
NMSAgent(iou_threshold=0.5, score_threshold=0),
# 将输入图像分割为每个检测到的头部
SplitAgent(),
# 使用 CLIP 对分割的图像进行分类
ClassificationAgent(classes=["hard hat", "no hard hat"]),
# 映射返回的类名
ClassMapAgent({"hard hat": "has ppe", "no hard hat": "no ppe"}),
# 将结果合并回边界框检测中
JoinAgent()
])
image = Image.open("./construction.jpg")
result, graph = workflow.execute(image)
workflow.visualize(graph)
工作流图示
以下是此工作流程的图示。图中的每一层代表工作流程中的一个步骤:
图中每个节点的图像和数据属性结合起来用于可视化工作流程的当前状态。调用 visualize
函数将生成一个类似于 Gradio 界面的实例。
支持与帮助
如有任何问题或需要帮助,请提交问题或通过 help@overeasy.sh 联系我们。
让我们一起构建惊人的视觉模型吧 🍳!