随着机器视觉的改进和基于深度学习的方法在自动化和缺陷检测工艺中取得长足进步,许多应用从集成深度学习技术中受益匪浅。工业自动化和家居自动化流程(特别是那些涉及武器、车辆或其他机器人元素的流程)从观察、理解和响应其环境以完成一系列动作的能力中受益颇多。
由于这些智能设备和嵌入式系统的工作环境复杂多变,因此越来越有必要在机器视觉中使用深度学习方法。这种增强的智能化水平可用于完成自主活动,如送货、地面维护、智能门铃和楼宇门禁、吸尘、制造和仓库打包。这些应用的其中一部分也涉及监控和缺陷检测。
对于使用无人机或其他小型自动驾驶车辆检测管道、电线、信号塔和其他资产是否存在缺陷等应用,添加基于深度学习的机器视觉也可以提高效率。有了足够的数据,这些模型就不那么脆弱,在不同条件下比传统的机器视觉模型表现得更加稳健。
然而,将深度学习引入机器视觉不仅成本高昂,还要考虑几个能够决定成功与否的计算和硬件要求。由于这些应用需要实时检测、分类和响应自动化流程中的缺陷或其他感兴趣的对象,通过网络发送数据以获得结果的时间就常常很有限。
因此,一旦将模型部署到设备上,所选择的硬件就需要具有较低的深度学习推理延迟。而且,根据具体应用,电源效率也可能是一个考虑因素,特别是对于像无人机或探测器这种使用内置电源执行检测工作的自动驾驶车辆。它们在充满电后的持续工作时间越长,工作效率就越高。由于深度学习需要大量的计算功能,因此确保其高效运行并对所使用硬件进行低功耗优化就十分关键。
这些机器视觉应用的深度学习算法选择在很大程度上要受上述要求的影响。设计人员需要特别注意磁盘上的模型大小、内存和推理延迟。对于任何涉及从相机数据流中检测物体(例如缺陷、人、汽车、动物)的情况,都可能存在一个对大多数视觉输入有着广泛理解的预先训练或“基础”模型。这些开源模型会接触大量的数据,并且可以扩展到更细微的应用。
但是,当需要执行的任务与用于训练模型的任务显著不同时,性能测试就变得十分重要。例如,与识别人或汽车的任务相比,识别电线缺陷或管道内部缺陷的任务就涉及不同的对象和数据。
设计人员还应确保预先训练的模型架构针对嵌入式设备进行了优化。具体而言,应该选择一个足以在设备上运行的超小模型架构——目标为一个兆字节(而不是千兆字节)大小的模型。此外,模型的加载和使用不应过于缓慢,通常较大的模型才会出现这种情况。一般来说,已经采用了特定的技术来优化这些架构和模型权重,例如,权重剪枝或量化有助于在保持性能的同时缩小尺寸和降低复杂性。
选择嵌入式深度学习视觉模型还需要确保格式相对标准(如TensorFlow Lite),以便可能直接将其转换为设备的需求。幸运的是,开源视觉模型的可用广度意味着从头开始设计和训练深度学习模型在很大程度上已成为过去。