嵌入式视觉的发展趋势及其算法示例
扫描二维码
随时随地手机看文章
在这篇文章中,前赛灵思机器视觉市场战略总监Aaron Behman 针对嵌入式视觉方面的问题进行了介绍,并解读了赛灵思 All Programmable Zynq® SoC 的独特解决方案。希望能为读者了解该领域的问题有所帮助。
一、嵌入式视觉四大普遍趋势
嵌入式视觉可划分为两个高级类别;感知环境和采取行动。视觉导向的机器人和无人机属于后面的采取行动类。
在民用领域,目前无人机是商业、医疗、农业、广播和执法应用中最热门的话题之一。对许多这样的应用,无人机可提供显著的优势。在广播和执法领域,无人机能够以低得多的成本提供之前需要直升机才能提供的能力。无人机还能执行预订服务,例如即将推出的 Amazon Prime 交货服务,或者如乌干达偏远地区的医疗产品交货服务。在农业应用中,无人机能使用高光谱成像来判断作物的健康状况。而这些应用,只不过是目前已经在使用或正在考虑使用无人机技术应用的冰山一角。
农业无人机应用示例
这些应用,综合起来体现着我们在嵌入式视觉总体环境中观察到的嵌入式视觉当前四大普遍趋势中的三大趋势:
1、边缘(edge)端通过机器学习获得的智能化 – 智能化嵌入在无人机本身内部,需要从它的摄像头提取信息并根据该信息采取行动,达成自己的目标。
2、开放式高级语言和框架 – 在无人机中实现智能化需要高级框架和语言。这些中最常用的是开源多平台框架,比如嵌入式环境里的 OpenCV、OpenVX,以及在机器学习环境里的 Tensor Flow 和 Caffe。
3、多层次的安全性 – 用于确保无人机不仅能够运行,且不能影响安全性和信息获取。这种方法要求在器件、系统和网络层面实现多层次的安全性。
第四个趋势是嵌入式视觉的普及化。虽然视觉导向的机器人和无人机还不像我们的手机一样普及——我们常在旅行中用手机来翻译标牌等用途,随着新用例被发掘出来,使用视觉导向的机器人和无人机的应用正处于快速发展中。
在架构层面无人机拥有一些关键的子系统,包括实时精准的马达控制系统、提供与无人机双向通信的软件无线电和精确的嵌入式视觉系统。视觉导向的机器人和无人机主要针对大部分电池供电的应用,因此设计高能效解决方案的能力极为重要。
高精度嵌入式视觉系统提供高帧率,其处理图像和根据图像采取行动的能力要远超过人眼。对许多应用来说,需要使用多个摄像头来形成立体多视觉,以完整掌握无人机周边环境。这也称为传感器融合。虽然许多应用使用多摄像头方法来观察环境,部分应用还会把设计用于观测电磁场频谱不同组成部分的摄像头结合起来使用,例如在超光谱或红外应用中的情况。在使用多个相同类型传感器的时候这一般称为同构,在使用不同传感器技术的时候称为异构。
在算法层面,这种高精度嵌入式视觉系统运行的算法有同步定位与地图构建(SLAM)和稠密光流(Dense OpTIcal Flow),以为平台提供增强型感知和避障系统。这些算法还与更传统的模式和对象识别算法结合。
稠密光流设计
视觉导向的机器人和无人机因此不仅需要强大的处理能力,还需要有能力进行功耗优化,提供面向未来且具有可扩展性的解决方案。
All Programmable Zynq® SoC 可针对您面临的问题提供独特的解决方案。Zynq 提供的高性能逻辑,与双核 ARM® A9 处理器集成可打造出紧密集成的异构处理单元。该异构处理单元能够在处理器内或可编程逻辑内实现高效率的功能细分。
使用基于 ARM 的处理系统,可以在边缘开展极为复杂的实时视觉分析。在与可编程逻辑架构结合后,它提供实时检测对象然后使用处理器系统分类对象的能力。分类完成后,视觉导向机器人系统或无人机就能针对检测出的对象类采取适当的行动。
为在边缘实现实时视觉分析,我们运用了机器学习提供的智能化技术。要执行这些算法,我们首先需要模型并提供大型培训数据集,使模型能够进行分析。在极高性能工作站上进行培训,得到的分类器被用于实现方案中。开展这类机器学习有多种不同的方法可供选择,例如卷积神经网络、深度神经网络或递归神经网络。
当我们在边缘实现这些模型时,我们不需要与培训相同水平的性能。可以使用整数或浮点数学,两者都能方便地实现在 All Programmable SoC 中。