在微控制器上执行人工智能应用 -凯发app官网登录

在微控制器上执行人工智能应用

 

人工智能(ai)算法是一项相当消耗计算资源的应用,想要在使用微控制器(mcu)的嵌入式系统中执行人工智能计算,以往被视为不可能的任务。如今随着技术的进步,已经不再是痴人说梦的事。本文将为您介绍在微控制器上执行人工智能应用的发展现况与凯发app官网登录的解决方案,以了解最新的科技发展趋势。

运用mcu执行人工智能计算已是大势所趋

谈到人工智能,其相关技术还包括机器学习和深度学习,这些技术都需要耗费大量的计算资源,通常也跟功能强大的cpu、gpu和fpga等处理技术有关,但随着ai技术朝向云到边缘运算发展,人工智能计算引擎将可允许mcu推动嵌入式应用到更宽广的世界。至少,它将使得嵌入式设计能够提高对网络攻击的实时响应能力,并提升设备的安全性。

目前市面上很多电子产品都是运用mcu进行设计,mcu已经普遍地融入在人们的生活当中。如今,随着人工智能的快速发展,有越来越多的智能产品具备人工智能功能,像是物联网(iot)装置、智能家电、智能音箱等,这使得越来越多的公司开始重视在采用mcu的嵌入式设备上运用ai的特点,更注重mcu结合ai的开发。

 

在mcu上面运用ai有相当多的好处,它可以降低产品的功耗与成本,加快产品上市的速度,且直接在前端处理,而不需要再进行云计算,可加快ai计算的效能,不过,由于mcu的算力较弱,计算的频率也较低,跟cpu的算力相比有着明显的差距。

此外,mcu缺少建模和训练工具,因此要在mcu上实现ai计算,通常还是需要pc端的工具来协助,且其建立完成后的模型通常较大,并不适合mcu使用,且在集成的流程与开发工具的应用上,都还有些难度。

新技术解决mcu运行人工智能计算的难题

面对着强劲的市场需求,已经有许多厂商投入心力,解决想要在mcu上执行人工智能计算的难题,目前已经出现许多凯发app官网登录的解决方案,像是在对象识别、启用语音的服务和自然语言处理等应用,已经可以使mcu具备ai算法的能力,还可为物联网、可穿戴设备和医疗应用中的电池供电设备,提供了更高的准确性和数据隐私性。

 

 

其中想要让mcu执行ai算法最常见的第一种方法,涉及到用于一系列神经网络(neural network, nn)框架(例如caffe 2、tensorflow lite和arm nn)的模型转换,用于在mcu上部署云训练的模型和推理引擎,目前已经有一些软件工具,可以从云中获取经过预训练的神经网络,并通过将其转换为c代码来针对mcu进行优化。

在mcu上运行的优化代码可以在语音、视觉和异常检测应用中执行ai功能,工程师可以将这些工具下载到mcu配置中,并运行优化神经网络的推论,这些ai工具集还提供了基于神经网络ai应用的代码示例。

第二种方法则是绕过了从云借用的预训练神经网络模型的需求,设计人员可以将ai库集成到微控制器中,并将本地ai训练和分析功能纳入其代码中,随后,开发人员可以基于从边缘的传感器、麦克风和其他嵌入式设备获取的信号来创建数据模型,并运行诸如预测性维护和模式识别之类的应用。

第三种方法,则是提供ai专用协处理器,使mcu供应商能够加快机器学习功能的部署,像是arm cortex-m33之类的协处理器,可以利用诸如cmsis-dsp之类的流行api来简化代码的可移植性,从而允许mcu与协处理器紧密耦合,以加速ai功能(如协同相关和矩阵运算)。

 

 

针对计算机视觉的人工智能功能包

为了协助采用stm32 mcu能够支持ai功能,意法半导体推出了用于高性能的stm32cube的fp-ai-vision1功能包,可用于计算机视觉的人工智能应用。fp-ai-vision1具有基于卷积神经网络(cnn)的计算机视觉应用示例,fp-ai-vision1由x-cube-ai扩展包生成的软件组合所组成,并补充了专用于基于ai的计算机视觉应用的应用软件组合。

功能包中提供的应用示例包括食物识别(可识别18类的常见食物),以及人身检测(可识别图像中是否存在人)。fp-ai-vision1使用stm32_ai_runtime神经网络库实现了高级计算机视觉应用,库是基于预训练的模型,并通过stm32cubemx工具的x-cube-ai扩展包所生成。

 

 

提供完整功能与示例加快产品的开发速度

fp-ai-vision1功能包演示了两种类型的神经网络模型的集成:32位浮点模型和8位量化模型。它还演示了在不同存储器配置中的模型集成(仅依赖于mcu内部存储器或额外使用外部存储器)。

fp-ai-vision1功能包具有一个图像预处理库stm32_image,可与特定的硬件板组合在一起,用于开发特定的计算机视觉应用,它包括各种处理功能来处理帧缓冲区的内容。fp-ai-vision1功能包还包括usb网络摄像机的驱动程序,可用于创建图像和视频数据集收集,以及用于将图像捕获到帧缓冲区、预处理帧缓冲区的内容,以及运行神经网络推理的框架,可在主机上执行实时测试。

fp-ai-vision1还可以连接到b-cams-omv摄像机模块捆绑包(建议)或stm32f4dis-cam摄像机子板(仅限旧版)的stm32h747i-disco discovery板上运行,在连接到主机时可以充当usb摄像机(uvc)设备。

fp-ai-vision1具备完整的固件,可在stm32微控制器上开发计算机视觉应用,具有基于浮点模型和量化模型的集成示例,以及可以对嵌入式应用进行测试、调试和验证的库,并具有免费且用户友好的许可条款,方便厂商进行产品的开发。

结语

人工智能应用已经成为当前最热门的科技发展方向,人工智能结合物联网应用(aiot),将翻转各种产品的应用方式,真正实现更为智能的万物互联,彻底改变人类的生活方式。目前在mcu上执行人工智能运算已经成为现实,为更多嵌入式系统的人工智能应用开启了更广阔的大门,未来的科技发展将更令人期待。

 

网站地图