在自动化系统中,如果标签放置不当,可能会导致无法读取或读取不完整。例如,如果一个标签没有正确放置在进入仓库的包裹上,该物品可能不会被正确地库存或路由。本指南将展示如何使用计算机视觉来验证包裹上的标签放置。将使用一个预训练的模型来演示需要的验证逻辑。然后,将讨论如何训练一个模型,以实现用例的最高准确率。
计算机视觉和机器视觉系统都可以用来确保标签正确放置在包裹上。尽管如此,计算机视觉系统更加灵活,允许使用一个摄像头同时运行多个检查,并在不更换硬件的情况下更新系统。例如,可以使用单个摄像头来验证标签放置,并扫描条形码以确保条形码可以被机器读取。这比为每个单独的检查购买专用摄像头要经济得多。
要校验包裹上的标签放置,将使用计算机视觉模型来识别标签,然后使用自定义逻辑确保标签位于正确的位置。首先,创建一个免费的Roboflow账户。可以使用此账户获取API密钥,以便在本指南中使用的包裹和标签检测模型进行查询。
一旦拥有Roboflow账户,请导航到Roboflow宇宙中的Box Detection model
。此模型已训练用于识别两个对象:一个盒子和标签。使用识别出的盒子和标签的位置,可以运行一个检查以确保标签位于正确的位置(即左上角或右下角)。在构建这个逻辑之前,让测试一下模型。可以通过将图像拖放到Box Detection model
页面上来做到这一点。也可以上传视频或从测试集中选择图像。测试集包含可以使用的示例图像,以评估模型。
可以使用Roboflow Inference
在自己的硬件上部署此计算机视觉模型。Inference是一个高性能服务器,用于运行计算机视觉模型,这些模型被企业用于制造和物流用例。要安装Inference,请运行:pip install inference
。还需要安装supervision
,这是一个Python包,包含用于处理视觉模型输出的实用工具:pip install supervision
。需要将Roboflow API密钥设置在一个名为ROBOFLOW_API_KEY
的环境变量中。为此,请运行:export ROBOFLOW_API_KEY="key"
。将“key”替换为Roboflow API密钥。
已经拥有一个可以识别图像中盒子和标签位置的系统。在系统完成之前,缺少一个部分:校验标签的放置。为确保标签位于正确的位置,可以检查每个标签的坐标是否在盒子的特定区域内。在本指南中,假设标签需要位于包裹的左上角,以确保它们可以被自动化系统读取。
当计算机视觉系统在自己的数据上进行训练时,表现最佳,这些数据代表了模型将被部署的场景。例如,如果模型将在装配线上运行,那么训练一个模型来识别装配线上的包裹上的标签,将使能够获得最佳结果。可以在一个下午内训练出视觉系统的第一个版本。要遵循的步骤是:收集图像、标记图像、训练模型、使用本指南前面的代码部署模型,然后可以在Roboflow中评估模型,以识别改进的机会。要开始训练自己的模型,请参考Roboflow Getting Started guide
。