粤嵌解读机器学习如何提升嵌入式视觉应用

更新时间: 2017-08-02 14:37:02来源: 粤嵌教育浏览量:4132

  在目前的嵌入式视觉领域中,热门的话题之一就是机器学习。机器学习涵盖多个产业重要趋势,不仅是嵌入式视觉,而且在工业物联网和云端运算中均发挥极为显著的作用。下面粤嵌为你解读一下机器学习如何提升嵌入式视觉应用。

  机器学习是一个复杂的课题,尤其是如果每一次都得从头开始,定义网络、网络架构以及产生训练算法。为了协助工程师实作网络和训练网络,有一些产业标准架构可供使用,例如Caffe和Tensor Flow。Caffe架构为机器学习开发人员提供各种工具库、模型以及具有C++库的预训练权重,同时提供Python和Matlab绑定。该架构能让使用者无需从头开始,就能建立并训练网络,以执行所需的运算。

  对于许多应用来说,低延迟的决策与反应时间极为重要,例如视觉导向的自主机器人,其响应时间对于避免对人员造成伤害、对环境造成破坏至关重要。增加反应时间的具体方法是使用可编程逻辑,实作视觉处理流水线,以及使用机器学习推断引擎实现机器学习。相较于传统的解决方案,在这方面使用可编程逻辑,能够减少系统瓶颈问题。在使用基于CPU/GPU的方法时,每一阶段的运算都必须使用外部DDR,因为影像不能在有限的内部快取功能之间传递。可编程逻辑途径让内部RAM得以按需要提供缓冲,从而实现串流的方法。如此则可免于DDR内储存中介元素,不仅减少图像处理的延迟,同时也降低了功耗,甚至提高了确定性,因为无需与其他系统资源共享存取。

  在异质SoC中实现图像处理算法和机器学习网络,可透过诸如reVISION堆栈等工具来实现。reVISION能同时支持传统影像应用,以及基于SDSoC工具的机器学习应用;reVISION并同时支持OpenVX和Caffe Framework。为了支持OpenVX架构,核心的图像处理功能可被加速至可编程逻辑中,以建立图像处理管线。同时,机器学习推论环境支持可编程逻辑中的硬件优化工具库,以实现执行机器学习实作方案的推论引擎。机器学习推论引擎实作方案中所使用的数值显示系统,也对机器学习的性能发挥重要影响。

  真实世界性能。在嵌入式视觉应用中使用机器学习的应用实例之一是车辆的避免碰撞系统。以reVISION堆栈针对Xilinx UltraScale+MPSoC开发相关应用,使用SDSoC为可编程逻辑的各项功能进行加速,以达到优化性能,能明显提高反应程度。

  机器学习结合处理器核心与可编程逻辑的异质SoC,能打造出十分高效、反应快且可重配置的解决方案。以上是粤嵌为你解读一下机器学习如何提升嵌入视觉应用。




免费预约试听课