2020年8月5日 机器视觉与计算机视觉技术

工业机器视觉应用有必要使用边缘计算吗?

作者| 贸泽电子 Mark Patrick

随着我们对工业4.0领域以及工业物联网(IIoT)的深入研究,自动化技术越来越显得尤为重要。伴随着机器视觉技术的快速发展,在提高制造商产品质量水平的同时加快生产效率,可以说拥有巨大的潜力。这项技术的影响范围也在不断地扩大,各种新的应用注定会在我们的日常生活中发挥更大的作用。比如,在汽车的ADAS系统中处理目标检测与识别,使基于面部的安全机制集成到便携式电子设备以及无数其他关键任务中。

为了降低延迟并在必要时能够立即采取行动,很大一部分工业机器视觉需要在边缘网络实现计算处理。通过这一点,将有可能避免代价高昂的生产线停机风险,并防止员工的生命受到威胁。不过,还有一些重大的影响因素需要考虑,因为这意味着必须在边缘端拥有巨大的自主权。

通过机器学习推断,从捕获的数据中提取特征,以便将来在处理类似场景时作出更好的决策。然而,必须指出的是,在边缘端应用这种人工智能(AI)具有与之相关的重大技术挑战,特别是在资源有限的情况下。

无处不在的机器视觉系统!

机器视觉系统无处不在,它们是你所使用产品的一部分,无论走到哪里,你都会发现它们的踪影。从垃圾邮件过滤器到图像识别和处理,它们已经渗透到我们的日常生活中的方方面面,无论是在家里、在公司,还是在通勤的路上。在工业制造和生产环境中,已经部署了许多基于机器视觉的系统。最基本的方法是用数码相机拍摄,比如包装和密封大米的图像。实际上,计算机算法被用来处理图像,并通过与已知的“好”图像进行比较来发现问题,也许袋子裂开了,或者密封时留下了一个角落。随着机器视觉技术的发展,其检测潜在故障的能力也越来越强,从而提高了生产质量和生产能力。

这种机器视觉系统中使用的算法被广泛归类为基于人工智能(AI)的算法,并利用深度学习神经网络对要检查的对象进行数字化的“检查”。随着工业4.0和工业物联网(IIoT)等举措不断改变制造业厂商,机器视觉应用将在提高运营效率方面发挥越来越大的作用。与早期需要大量计算资源的人工智能实现不同,这些计算资源往往被限制在数据中心内,今天的人工智能机器视觉应用需要更靠近“边缘”端,以便提供高精度、快速和可操作的图像检测。

深度学习和神经网络

传统的计算机程序是为了在给定的输入条件下输出一组结果而编写的。当你知道会输入什么并且输入的数量有限时,这是有效的一种方法。然而,当一个系统遇到它以前从未遇到过的情况时,将会发生什么———你如何使它以适当和有用的方式作出反应?

机器学习概念允许算法从过去的数据中学习特征,以便在未来遇到数据时作出决策或预测。分析数据或图像可以采取多层的方法,其中每一层都比上面一层更详细。通过这种方法,一个系统就可以通过学习对以前从未见过的场景作出恰当的反应。机器学习在目标检测和识别中特别流行,通常使用人工神经网络或卷积神经网络(CNN)来实现。

卷积神经网络是对部分大脑处理视觉信息的数字解释。与任何神经网络(见图1)一样,CNN 包含多层节点,但它们的不同之处在于,某些神经元只连接起来选择其他神经元,这是因为CNN 就像我们的大脑一样,强调数据的空间结构。例如,当看起来像是汽车图像(例如车轮、挡风玻璃和车门后视镜)时,我们会在相同区域内寻找其他元素来证实或反驳这一假设,例如方向盘、车门立柱或灯组。观察图像其他区域的价值会降低,因为它不太可能让我们对图像是否真的是一辆汽车有一个明确的答案(增强学习)。CNN的工作原理与此相同,因此比全连接网络的效率更高,特别是在处理大型图像时。

图1 神经网络基本概念

CNN在机器视觉中的应用

CNN的结构被称为“网络拓扑结构”,并且已经发展成为标准,其中包括流行的AlexNet和GoogleNet,这些都得到了快速的普及,并且比AlexNet复杂得多。其他拓扑结构包括VGG和ResNet。从开发的角度来看,有许多开源库、CNN框架和跨平台并行编程语言可用于帮助CNN的编码和快速部署。Caffe是一个流行框架的例子,它包含创建、训练、测试和刷新CNN所需的所有网络元素。

如何建立CNN 网络将取决于目前和将来要实现的目标。你要找的“东西”有多少个不同的类别———是有限数量,还是成千上万? 你将使用哪种图像分辨率或帧速率? 这些参数会增加吗? 你只需要检测一个物体,还是需要对目标进行详细的细节描述并跟踪它的运动轨迹?

对于工业机器视觉应用,例如在快速移动的生产线上有许多特定的图像识别挑战,其中大部分与检测图像的质量有关,可能涉及到一定程度的CNN 算法前图像处理。除了能够在检测区域内隔离物体外,物体照明的均匀性也是另一个考虑因素。例如,要识产品标签是否正确地固定在瓶子上,需要检测标签的边缘和瓶子的边缘。如果瓶子是由透明玻璃制成的,标签背面是透明的,图像处理需要产生更多的暗像素,这样边缘就可以清晰地识别。同时,它还需要避免由于生产设备或其他运动部件的光线反射而导致的错误识别。在这些情况下,通常使用边缘检测和阈值算法来提高识别的可靠性。

选择在哪个硬件平台上运行机器视觉应用程序涉及许多因素。尽管现场可编程门阵列(FPGA)一直是热门的候选,随着处理器性能的提升,在高性能CPU 或GPU上运行现实更受欢迎。FPGA 使您能够动态地构建一个专门解决自己问题的计算体系结构,并能够提供极高的性能。这是由于FPGA 的特性决定的,其包括数千个专用的单精度浮点乘法器和累加器块,以及一个可以配置成一系列缓冲和缓存结构,并且能够和FPGA 计算单元紧密耦合的嵌入式高带宽存储器。这使得片上系统具有非常低的延迟和片间可编程互连的功能,同时能够结合逻辑,来构建所需的拓扑结构。最终,硬件的选择将取决于视觉检测系统能够检测到的速度,如果超出可选界限,则会提示错误,以便另一个进程可以干预。

对基于人工智能的机器视觉应用的需求日益增长,导致许多制造商打包开发完整的系统评估和开发平台,以加快系统验证和原型制作。例如,专业的嵌入式视觉摄像机制造商Basler[1]为其Dart系列摄像机[2]提供了一个完整的评估工具包,其中包括挂架摄像机软件套件(见图2)。基于Intel Atom 四核处理器,图3[3]所示的AAEONUP嵌入式视觉套件还包括一个Basler摄像头和配套软件。

图2 塔式相机软件套件(来源:Basler)
图3 AAEON UP开发工具包(来源:AAEON UP)

上述两个工具都为简单的机器视觉应用提供了一个良好的起点,但功能齐全的基于人工智能的方法保证了更多的计算资源和能力来加速神经网络处理过程。例如,Intel就提供了许多不同的机器视觉方法。如前所述,FPGA长期以来一直与机器视觉联系在一起,非常适合运行神经网络。Intel Max 10 FPGA系列[4]是一个很受欢迎的设备系列,它非常适合许多基于人工智能的视觉应用程序,其功能块如图4所示。

图4 Intel Max 10机器视觉基本功能体系结构(来源:Intel)

最新发布的OpenVINO(开放式视觉推理与神经网络优化)软件工具包(见图5)完全支持Intel的FPGA 和CPU,它有助于加速应用程序设计,并优化一系列Intel硬件设备的工作负载性能。OpenVINO 支持通过一个公共API跨CPU、FPGA和GPU 异构地执行CNN 任务,它使用一个函数库和预优化的内核来帮助缩短整个开发周期并加快产品上市速度。它还托管OpenCV 计算机视觉库和OpenVX 跨平台计算机视觉来加速API的优化调用。

该工具包包括三个部分———深度学习、基于CNN 的计算机视觉技术和硬件加速———同时,工具包还包括一些预先训练的深度学习模型。计算机视觉方面包括一个基于Python的优化器,可以通过命令行接口从Caffe等框架中导入经过训练的模型。

图5 Intel OpenVINO 框架(来源:Intel)

加速,即添加重要的计算资源(通常是并行计算资源)的过程,不仅限于机器视觉应用程序,还可以在越来越多的其他应用程序中找到,例如用于加快浏览器搜索速度的数据中心。然而,许多工业视觉应用更强调在“边缘”端进行计算,即系统可以在不依赖云服务的情况下正常运行。

Intel最近宣布了Intel神经计算棒2——一个基于Intel Movidius Myriad X视觉处理单元(VPU)的USB神经网络处理平台。Movidius VPU 包括16个128位超长指令字(VLIW)可用C 语言编程的混合架构矢量引擎(SHAVE)内核,以及一个专用的神经计算加速器引擎。Movidius Myriad XVPU 能够为神经网络处理提供每秒1万亿次运算处理(TOPS),如图6所示。

图6 Intel神经计算棒2(来源:Intel)

神经计算棒可以使深入学习神经网络在一台笔记本电脑中进行部署,它提供了Intel OpenVINO发行版,以进一步帮助用户快速实现与部署。一旦实现了工作原型系统,它就可以快速部署在基于Movidius的单板模块上,如基于AAEON UP AI 核的mini PCI Express系统[5]。

基于人工智能的机器视觉应用如今能够快速开发和部署,要归功于神经网络软件和开发工具包的完备性,比如和Caffe近似的OpenVINO和CNN 框架。紧凑、低功耗硬件原型平台的发展进一步加快了边缘节点视觉系统的开发速度。

Banner
Related Posts

机器视觉相机类型以及接口标准详解

2018年8月9日

2018年8月9日

随着成像技术的进步,相机及其接口的类型不断演变,以满足大量应用的需求。对于检测和分析至关重要的半导体,电子,生物技术,装配和制造行业中的机器视觉应用而言,使用最好的相机系统来完成手头的任务对于获得最佳图像质量至关重要。

智能高光谱成像与食品安全的未来

2020年3月9日

2020年3月9日

智能高光谱成像技术有望快速准确地检测病原体、异物以及产品的新鲜度和损伤。

机器视觉这条河,未来也会浑浊吗?

2019年3月21日

2019年3月21日

机器视觉的实质是一种计算机图像处理在工业领域的应用,其在机器人行业的应用方向有两种。AGV和机械臂,AGV上的应用已经很明了,主要存在于导航上面,但是在机械臂上的应用可谓是越来越广。

改善机器视觉系统的十大方法

2018年8月9日

2018年8月9日

机器视觉是一个新兴领域,如果设置正确,可以减少过程效率低下。任何使用机器视觉作为机器人引导或检查的设施都应重视这一领域,以寻求可能的改进。

机器视觉系统集成发展的现状和前景

2019年7月10日

2019年7月10日

机器视觉系统集成是一门学科,随着新成像技术的不断发展,这门学科的发展势头依然强劲。

深度学习在产品缺陷检测中面临的考验

2019年12月13日

2019年12月13日

人工智能(AI)的发展促使数很多公司投资于深度学习软件,对于视觉行业来说是个好兆头,因为需要在技术上实现飞跃。但是,对于采购或投资相关产品的的用户而言,重要的是要了解如何正确地评估深度学习软件可用性 ,以及它们如何工作的。

自动化金属表面缺陷检测系统

2019年6月25日

2019年6月25日

近年来,生产制造企业对于金属的需求快速增长,对于产品质量的要求也是日益严格。如何对金属产品质量进行有效控制,我们的方法很简单:提供针对每种金属产品应用优化的表面缺陷检测解决方案,以高效一致方法的进行在线检查。事实证明,实时信息在为客户解决问题方面具有无可估量的价值,通过消除对生产后物理带材检验的依赖,制造商能够克服重大障碍。

基于计算机视觉和深度学习的智能缺陷检测

2019年9月4日

2019年9月4日

自亨利·福特首次引入装配线系统以来,质量控制一直是制造中的一个关键因素。其理念是,质量可以通过大规模生产流水线来实现,只要每个人在生产过程中各尽其责。从那时起,我们显然已经走了很长一段路。传统的装配线仍然以许多形式存在,尽管机器已经取代了许多手工过程。

自动印刷代码检查解决方案

2019年4月17日

2019年4月17日

AutoCoding Systems将在米尔顿凯恩斯即将举行的UKIVA机器视觉会议上展示他们最新的视觉创新成果。由SICK AppSpace提供支持的4Sight解决方案是自动打印检测领域真正的行业突破。

嵌入式视觉:通过软硬件协作获得成功

2019年3月21日

2019年3月21日

在可预见的未来,嵌入式视觉技术不会完全取代传统的、基于PC或智能相机的机器视觉系统。然而,从技术和经济的角度来看,它确实在许多应用领域提供了非常有效的解决方案。

用于目标识别的自学习机器视觉系统

2019年7月8日

2019年7月8日

机器视觉是工业4.0,即工业物联网背景下高度自动化和无缝联网过程的关键技术。使用诸如深度学习之类的新的人工智能过程变得越来越重要。许多好处使这项技术具有吸引力,但同时它也有局限性。

快速创建三维纳米结构图像的新方法

2019年4月17日

2019年4月17日

通过X射线激光脉冲从两个方向照射物体(在图像中心切出十字)。在下一步骤中,将星形衍射图像重建为3-D对象

韩国开发用于检测机械故障的机器视觉技术

2019年7月4日

2019年7月4日

韩国机械与材料研究所(KIMM)周二宣布,它已开发出一种新的机器视觉技术,可自动检测各种机器的故障。

机器视觉成为防治农作物减产的新式武器

2019年5月15日

2019年5月15日

农作物的损失对农民来说是毁灭性的。随着生态波动性的增加,这也是生活中的事实。

红外、中国和3D堆叠:CMOS的发展趋势

2019年3月29日

2019年3月29日

3月13日在伦敦举行的Image Sensors欧洲会议的开幕式上,Analog Value的首席技术官兼创始人Vladimir Koifman在会议上上介绍了红外传感技术的进步、堆叠式传感器以及中国市场的价格趋势。

Comments
发表评论

电子邮件地址不会被公开。 必填项已用*标注