×
嵌入式 > 嵌入式开发 > 详情

M1808 AI核心板AI算力性能有多强

发布时间:2020-12-17 发布时间:
|

AIoT概述

 

AIoT(Artificial Intelligence & Internet of Things)中文译为人工智能物联网,是将人工智能(AI)与物联网(IoT)两者有机结合的一种技术。AI在这个系统中充当了大脑的角色,赋予了物联网更多的可能性,将万物互联提升到万物智联,如目前的智能医护助手、人体测温摄像头、智能配送机器人都是在AI的加持下得以实现。

 

据2019年的市场调查报告显示,2020年中国AIoT硬件市场及相关产业的规模将突破万亿元。目前AIoT的主流方案以边缘计算和云计算结合为主,相比之下,边缘计算有部署灵活、稳定性强、网络依赖度低、安全性强更有利于保护隐私的特点。作为布局AIoT的重要产品,ZLG发布了M1808 AI核心板。本文将针对M1808核心板的AI性能参数做具体讲解。

 

M1808平台简介

 

M1808平台是由M1808-T核心板和M1808-EV-Board评估底板组成,是基于Rockchip 的RK1808 AIoT处理器开发。RK1808处理器芯片采用CPU(Central Processing Unit,中文译为中央处理单元)+NPU(Network Process Unit,中文译为神经网络处理单元)双架构,其中CPU为1.6GHz双核Cortex-A35架构,NPU的峰值算力高达3.0TOPs,支持INT8/INT16/FP16混合运算,最大程度兼顾性能、功耗、运算精度,支持TensorFlow/MXNet/PyTorch/Caffe等一系列框架的网络模型转换,兼容性强。VPU视频处理单元支持1080P视频编解码,支持麦克风阵列,并具有硬件VAD功能,支持低功耗侦听远场唤醒,还支持摄像头视频信号输入,并具有内置ISP。M1808平台具有高性能、低功耗、易编程、集成NPU等特点。

 

AIoT硬件平台AI性能对比

 

算力和功耗是衡量硬件平台AI性能的重要参数。为了充分验证M1808的高性能、低功耗特点,表格1提供了M1808与其他产品的AI性能参数对比。通过对比可知,M1808 AI核心板能够最大程度的兼顾算力与功耗。这也使其在AIoT硬件平台上具有领先地位。

 

 

表格 1

 

常见AI功能的算力花销

 

考虑到读者对3.0 TOPs的算力很难有一个清晰的概念,在表格2中我们列出了常见AI功能所需要的算力花销:

 

 

表格 2

 

由表格可知,除了自动驾驶这种多模型融合、实际场景十分复杂多变的情形,大部分单一功能的实现所需的算力要求在1TOPS这个数量级。M1808作为目前具有代表性的嵌入式AI平台,具备了3.0 TOPs的基础算力,基本可以满足大部分场景的使用,如人脸门禁、扫脸支付、智能餐桌等。此外,如果对照片处理的实时性要求不高,比如山火识别,面对这种对网络模型的查全率要求很高的场景,就可以使用上结构更深的模型,来达到精度更高的效果。

 

神经网络推理速度

 

为了更直观地认识M1808的AI计算能力,在图表1中,我们分别在三种相同的神经网络模型下,对比M1808与常见手机芯片的网络神经网络运行时间。运行时间的长短可以反应出硬件平台AI计算能力。可以看到,对比当今主流的手机芯片,M1808的AI算力也毫不逊色,足以满足大部分AI功能需求。

 

 

图表 1

 

软件层面

 

除了提供强大的AI算力,M1808也提供了对应的AI开发套件来支持研发人员的开发工作。目前M1808的套件支持主流的tensorflow、tensroflow lite、caffe、darknet、onnx、pytorch等框架训练的模型,可以对其进行模型转换以便将模型部署到开发板上,我们还提供了自动量化及模型运行效率的评估功能,减少模型适配的工作量。

 

同时,M1808也提供了一些常用的AI模型可供开发人员调用,目前支持以下功能:人脸识别,司机疲劳驾驶检测系统,人脸关键点定位,人脸检测,物体检测,物体分类,纽扣方向的功能。目前的人脸识别精度在lfw上达到了99.7%,一万人脸库的情景下达到每秒10帧左右,支持年龄跨度、人脸部分遮挡和摘戴眼镜等户外及室内场景,更多的功能正在开发测试完善中,敬请期待。

 

以上即为M1808的算法算力性能介绍,大家是会能够真切的感受到这款AI核心板的性能呢?若是想了解我司基于M1808提供的算法可查阅往期文章《立功科技嵌入式平台“软”实力——人脸识别算法篇》,若是再想更近距离的感受M1808性能的强大,欢迎咨询小致,可有机会实际感受M1808 AI核心板的强劲性能。

 

M1808 AI核心板硬件性能


近年来,随着人工智能技术的不断发展,相应的AI算法与产品方案也层出不穷。但是技术门槛高,产品稳定性参差不齐成为了制约行业发展的主要瓶颈。M1808 AI核心板是ZLG布局AI及计算机视觉领域的重要产品,旨在为用户提供“嵌入式”+“AI”解决方案平台,以AI算法赋能传统嵌入式硬件,除了提供稳定可靠的硬件平台之外,同时免费提供基于各种应用数据集训练的AI算法,极大降低了“嵌入式”和“AI”的开发门槛。

 

在当前热门的人脸识别领域,ZlG将人脸识别算法免费植入M1808 AI核心板中,为用户提供“硬件+软件+算法”系统化解决方案。这一方案既能够满足客户快速开发的需求,又能最大程度保证验证结果的精准度,可广泛应用于火车站、安检卡口、校园、小区、写字楼等出入管理场景。

 

本文将从主控平台,配套硬件以及检测Demo这三个方面对ZLG人脸识别解决方案做具体介绍。

 

主控平台

 

人脸识别的应用领域广泛,但解决方案的框架大体类似。ZLG紧跟行业发展,归纳出如下图所示人脸识别方案的框图。

 

 

 

由框图可知,主控平台选择ZLG最新推出的M1808 AI核心板。作为一款面向人工智能开发平台的产品,M1808在视觉处理方面有着高运算速率、高运算精度以及低功耗的高性能表现。

 

 

图1.2 M1808核心板产品

 

如上图所示,M1808 AI核心板板载1.6GHz双核64位Cortex-A35架构的处理器RK1808,集成NPU峰值算力可达3.0TOPs,支持INT8/INT16/FP16混合运算,最大程度兼顾性能、功耗、运算精度,并支持TensorFlow/MXNet/PyTorch/Caffe等一系列框架的网络模型转换,兼容性强。其VPU视频处理单元支持全格式的1080P视频编解码,支持摄像头视频信号输入,并具有内置ISP。如图1.3所示为RK1808芯片功能方框图。

 

 

图1.3 处理器RK1808功能方框图

 

核心板整体功能特点一览:

 

MPU采用高性能64位的Cortex™-A35处理器RK1808,工作频率可达1.6GHz;

 

集成 32KByte 一级指令缓存;集成 32KByte 一级数据缓存;

 

集成NPU(神经网络处理单元)协处理器;

 

支持最大1920 Int8 MAC operations per cycle;

 

支持最大64 FP16 MAC operations per cycle;

 

支持最大192 Int16 MAC operations per cycle;

 

512Kbyte内部缓冲空间;

 

支持支持全格式的H.264 1080p@60fps解码和H.264 1080p@30fps编码;

 

集成高品质的JPEG编/解码器;

 

内存:1GByte DDR4 SDRAM;

 

存储:4GByte eMMC;

 

Linux操作系统。

 

如图1.4所示为M1808_EV_Board评估板产品图片。

 

 

图1.4  M1808_EV_Board评估板产品

 

配套硬件

 

图像数据采集方面,M1808_EV_Board评估板为开发用户提供了1路CSI摄像头接口和1路可扩展USB接口。人脸检测识别方案可以选用USB接口的双目摄像头,以支持具有活体检测功能的人脸识别算法库。双目摄像头如图1.5所示。

 

 

图1.5  双目摄像头

 

图像显示方面,M1808评估板为用户提供MIPI-DSI接口和RGB接口两种液晶显示接口。本文介绍的人脸识别Demo运行显示是采用一款由ZLG生产的10.1寸LVDS接口的液晶显示屏LCD-1280800W101TC,如图1.6所示。摄像头采集的人脸将会以实时方框形式在液晶屏上标记显示。

 

 

图1.6  LCD-1280800W101TC 10.1寸LVDS液晶显示屏套件

 

人脸识别检测Demo

 

开发环境搭建

 

将M1808平台的交叉编译工具m1808-sdk-1.0-ga.tar.gz拷贝至开发主机Ubuntu下,并执行如下命令解压安装:

 

$ sudo mkdir -p /opt/zlg

 

$ sudo tar -xf m1808-sdk-1.0-ga.tar.gz –C /opt/zlg

 

在用户配置文件~/.bashrc中添加如下语句,保存后重新打开终端就可以直接使用该平台工具链,完成工具链环境搭建:

 

$ export PATH=/opt/zlg/m1808-sdk-1.0-ga/host/bin:$PATH

 

Demo程序

 

Demo采用Qt图形界面开发框架。在工程文件中添加OpenCV库、Sqlite3库和由ZLG算法团队研发的人脸识别算法库等相关库,之后内部程序通过调用相关库提供的各种接口,包括数据存储、模型构建初始化、人脸检测、人脸比对等API进行相关人脸检测识别功能的实现。

 

例如有关人脸检测功能实现,先定义rockx_handle_t类型的句柄,通过操作该句柄调用如下API完成指定功能模块的初始化:

 

rockx_ret_t rockx_create(rockx_handle_t* handle,rockx_module_t m,void* config,size_t config_size);

 

再调用人脸检测API实现人脸检测功能:

 

rockx_ret_t rockx_face_detect(rockx_handle_t handle,rockx_image_t* in_img,rockx_object_array_t* face_array,rockx_async_callback callback);

 

Demo整体流程框图如下图1.7所示:

 

 

图1.7  Demo程序流程图

 

Demo效果

 

实际检测的人脸以绿色选框标记出来,Demo运行显示效果展示如图1.8所示:

 

 

图1.8  Demo展示效果

 


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
mini 2440 test 的Delay函数分析