工业显示器,工业平板电脑
咨询热线:0571-87080366
解决方案
位置:首页 > 解决方案
解决方案
浩腾E3在机器视觉技术领域的应用
2019/07/19

3D机器视觉系统.jpg

怎样让成本降下来?可以想象的空间很多,嵌入式机器视觉系统会是个不错的选择,而系统的核心当然离不开工控机。从20世纪90年代,微处理器、半导体技术与机器视觉技术相伴螺旋上升:微处理器、半导体技术是机器视觉的发源地,欧美在其中大量应用图像技术,后来慢慢演化成今天的机器视觉技术。机器视觉在欧美的应用普及,同样主要体现在半导体及电子行业。现在,微处理器性能变得更强劲、功耗大大降低、尺寸越加紧凑,价钱却没有变高。

机器视觉的工作原理很简单,它很像一个单一功能的工业机器人,如它用摄像机获取被检测对象的图像,而特殊光源使被检测目标的特征在图像中得到强化,如尺寸特征、表面缺陷特征等。这些特征明确的图像被高速传输到工控机经过专业化的图像分析、处理软件计算出特征,针对计算结果工控机可以控制执行机构进行分类、剔除、报警等动作。如果跟人进行比较的化,那么摄像机如人的眼睛,工控机如人的大脑,软件如人的思维,那么执行机构就如同人的手脚。实际上机器视觉系统就如同一个思维快速、动作敏捷、不知疲倦的人一样。

视觉系统一般包括光源、镜头、CCD照相机、图像处理单元、图像处理软件、监视器、通讯/输入输出单元等。视觉系统的输出并非图像视频信号,而是经过运算处理之后的检测结果(如尺寸数据)。

机器视觉测试就是用机器代替肉眼来做测量和判断,所以要求精度高。首先采用CCD照相机将被摄取目标转换成图像信号,传送给专用的图像处理系统,根据像素分布和亮度、颜色等信息,转变成数字化信号。图像系统对这些信号进行各种运算来抽取目标的特征,如:面积、长度、数量、位置等。最后,根据预设的容许度和其他条件输出结果,如:尺寸、角度、偏移量、个数、合格/不合格、有/无等。上位机实时获得检测结果后,指挥运动系统或I/O系统执行相应的控制动作。

近年来,工控机技术发展迅速,依托工控机的强力支持,机器视觉技术越来越多的被应用到工业生产的在线检测中,实现对产品质量毫无遗漏的快速全检,进而实现产品质量的零缺陷。工业4.0是关于连接生产技术和信息技术的,而机器视觉是为工业4.0提供信息的最重要的基础技术之一。嵌入式系统会在未来的机器视觉系统中扮演更重要的角色。它们可以实现紧凑型产品的设计,满足大多数图像处理的要求,并且与基于PC的独立系统相比,其与工厂流程的集成度更高。

深度学习,人工智能

作为人工智能领域的当红炸子鸡,深度学习技术近年来得到了学术界与产业界的大力追捧。目前,深度学习技术已在计算机视觉、自然语言处理以及语音识别等领域大放异彩,相关产品正如雨后春笋般涌现。由于深度学习模型需要进行大量的计算,因此基于深度学习的智能通常只存在于具有强大计算能力的云计算数据中心。考虑到当下移动终端设备的高度普及,如何将深度学习模型高效地部署在资源受限的终端设备,从而使得智能更加贴近用户这一问题以及引起了学术界与工业界的高度关注。针对这一难题,边缘智能(Edge Intelligence)技术通过协同终端设备与边缘服务器,来整合二者的计算本地性与强计算能力的互补性优势,从而达到显著降低深度学习模型推理的延迟与能耗的目的。




图1. 基于终端设备与边缘服务器协同的深度学习推断

边缘智能的核心研究问题在于如何在资源受限的边缘端高效部署深度学习模型,其中包括边缘设备深度学习模型优化,深度学习计算迁移,边缘服务器与终端设备间的协同调度等问题。

研究问题

对于常见的常见的深度学习模型,如深度卷积神经网络CNN,是由多层神经网络相互叠加而成。由于不同网络层的计算资源需求以及输出数据量都具有显著的差异性,那么一个直观的想法是将整个深度学习模型切分成两部分,其中计算量大的一部分卸载到边缘端服务器进行计算,而计算量小的一部分则保留在终端设备本地计算,如图2所示。显然,上述终端设备与边缘服务器协同推断的方法能有效降低深度学习模型的推断时延。然而,选择不同的模型切分点降导致不同的计算时间,我们需要选择最佳的模型切分点从而最大化发挥终端与边缘协同的优势。




图2. 边缘服务器与终端设备协同推理示例

除了对模型进行切分(DNN partitioning),加速深度学习模型推断的另一手段为模型精简(DNN right-sizing),即选择完成时间更快的“小模型”,而非对资源需求更高的“大模型”。如图3所示,对于任意深度学习任务,我们可以离线训练具有多个退出点的分支网络,其中,退出点越靠后,模型越“大”, 准确率也越高但相应地推断时延越大。因此,当深度学习任务的完成时间比较紧迫时,我们可以选择适当地牺牲模型的精确度来换取更优的性能(即时延)。值得注意的是,此时我们需要谨慎权衡性能与精度之间的折衷关系(tradeoff)。




图3. 具有多个退出点的深度学习分支网络

综合运用上述模型切分和模型精简等两种调节深度学习模型推断时间的优化手段,并小心权衡由此引发的性能与精度之间的折衷关系,本文定义如下研究问题:对于给定时延需求的深度学习任务,如何联合优化模型切分和模型精简这两个决策,从而使得在不违反时延需求的同时最大化深度学习模型的精确度。

研究结果

针对上述问题,我们提出了基于边缘与终端协同的深度学习模型运行时优化框架Edgent。如图4所示,Edgent的优化逻辑分为三个阶段:离线训练阶段,在线优化阶段以及协同推断阶段。

首先,在离线训练阶段,Edgent训练深度学习任务对应的分支网络,并生成回归模型来预测分支网络中不同网络层在边缘服务器以及在终端设备上的计算时间。其次,在在线优化阶段,Edgent实时测量当前移动终端与边缘服务器之间链路的网络带宽,以便于估算移动终端与边缘服务器间的数据传输时延。紧接着,Edgent沿着尺寸从大到小的网络分支(如图3中从右至左的5个网络分支),依次遍历每个网络分支上不同的切分点,并基于当前网络带宽和不同网络层计算时间估算所选网络分支与切分点对应的端到端延迟与模型精确度。在遍历完所有的分支网络与切分点后,Edgent输出满足时延需求的所有网络分支与切分点组合中具有最大精确度的一个组合。最后,在协同推断阶段,根据上述在线优化阶段所输出的最优网络分支与切分点组合,边缘服务器与移动终端对深度学习模型进行协同推断。

为了论证上述面向边缘智能的优化框架Edgent的高效性,我们编码实现了原型系统,并将其部署在了由树莓派(终端设备)和边缘服务器组成的真实设备上,实验表明其能在网络边缘端高效支撑计算机视觉这一典型深度学习应用。




图4. 基于边缘与终端协同的深度学习模型运行时优化框架Edgent



在线咨询
工业平板电脑
触控POS机咨询