【技术进展】人工智能、深度学习在嵌入式视觉和图像处理系统中的应用
为嵌入式系统开发人工智能的企业,必须在开发其解决方案时考虑这个后加的软件层,并将其设计为与不同类型的硬件兼容。
近年来,人工智能(AI)已经成为了一种非常流行的表达方式。上个世纪是一个富有创新的世纪,特别是在数学方面,为实现人工智能带来了希望,可是很多技术上和概念上的差距让各种各样的方案都胎死腹中。然而,得益于过去20年来在计算能力、数据累积、数学工具等方面取得的巨大进步,而且所有这些都能以更低的成本实现,今天,人工智能已经开始融入各个行业。
为了使机器能够理解周围的世界,科技的发展从生物学方面获得了启发。通过眼睛可以获得80%的信息,使得人类可以自我定位、并且和在他们视力范围内的世界进行互动。
因此,大多数人工智能方面的研究都是集中在分析来自于视觉系统图像的能力上。来自于生物学方面的另一个启发是允许机器分析这些图像的数学结构:人工神经网络、人类大脑的微型结构复制品。
存在多种不同的神经网络,主要取决于神经元之间的连接的拓扑,所使用的聚合函数、阈值函数和反向传播方法。这些数学方法都是人工智能领域的一部分,称为“深度学习”,通常被分为两部分:训练和推理。
根据要实现的目标不同,绝大多数的神经网络都有着种类非常多的“训练”算法(有监督的或无监督的)。算法可根据在网络输入处呈现的数据集修改突触权重。训练的目标是使神经网络可以从示例中“学习”。
如果正确执行训练,则网络将提供与训练数据集的输入值非常相似的输出响应。推理引擎是对应于演绎推理的模拟的软件算法,在深度学习的情况下是神经网络。该软件通常嵌入在设备中。
在过去10年中,深度学习在许多领域都取得了进展。基于图像的技术包括面部识别、虹膜和手势监控、对象和自由空间检测,以及最新的行为识别。
从市场角度来看,从汽车上可以注意到最惊人的进展,因为这些用于高级驾驶辅助系统(ADAS)的技术被用在了检测障碍物、识别指示牌、信号灯、汽车、行人以及其他类似的目标上。图像来自于布置在车身及其周围的一系列摄像头,而训练是在位于数据中心的特定的计算机上进行的。对于半自动驾驶的车辆,推理算法是内嵌在引擎控制单元(ECU)内的,对于机器人驾驶或全自动驾驶的车辆,推理算法是完全内嵌在计算机内的。
生物识别技术是深度学习被广泛使用的另一个主要部分。我们发现它的算法用于个人身份验证,例如最新的智能手机很多都采用3D面部识别。在国土安全领域,通过专用摄像机的使用,面部识别被用于边境控制以及身份证明文件的制作。
基于深度学习的虹膜识别也越来越多地用于移动设备的个人身份认证。未来,我们可以在这一部分中添加行为识别,虽然目前仍处于研发阶段,不过所取得的初步成果已经令人鼓舞了。深度学习已经可以集成在手势识别中,但目前主要集中在娱乐、车载计算机、游戏和商用无人机控制领域。在过去10年中,很多公司在人工智能领域的投资持续增加。市场研究机构Yole预计到2025年复合年增长率将达到50%,收入主要集中在使用深度学习的技术上。
不可否认,人工智能的发展也离不开专门的硬件开发。值得注意的是,视觉处理器的设计者和研发人员还通过嵌入式操作系统和软件开发工具包(SDK)提供了软件层。
这使得实施软件解决方案变得非常容易,而且可以让硬件的性能发挥到最大。市场上已经有很多专属于平台的开发工具包可选,例如:ARM公司的embedOS、NVIDIA公司的Jetson、Xilinx公司的XSDK以及CEVA公司的CDNN工具包。
为嵌入式系统开发人工智能的企业,必须在开发其解决方案时考虑这个后加的软件层,并将其设计为与不同类型的硬件兼容。随着其发展势头的继续,人工智能视觉系统将迎来一个光明的未来,无论是硬件层面、专用处理器市场,还是软件层面,都将有越来越强大的算法,以期在物体、面部和手势识别方面实现更高的精度。
本文来自于《控制工程中文版》(CONTROL ENGINEERING China )2018年8月刊《机器视觉专刊》栏目,原标题为:人工智能在嵌入式视觉和图像处理中的应用
————编辑推荐————
————本期杂志封面————
想要免费阅读每期杂志内容,请关注《控制工程中文版》微信订阅号。
推荐阅读