米尔科技提醒您:您的浏览器版本过低或者使用了兼容模式,为了获得更好的浏览体验,建议使用IE10以上的浏览器或使用极速模式。 请升级浏览器以获得更好的体验!

米尔边缘AI计算盒子FZ5体验评测:一款极高性价比AI开发板

文章来源:电路城 发布日期:2020.12.23 浏览次数:317 次

相信大部分人都听过近几年大火的绝地求生游戏(吃鸡)里“落地成盒”的梗,形象、不失风趣,一度成为网络流行语,但是,这是贬义。而边缘AI计算盒子FZ5“落地成盒”的故事又是另一回事了。

在几个月前,笔者有幸试玩过米尔科技与百度合作推出的一款深度学习计算卡FZ3,有兴趣的可以点击看看,是一款基于赛灵思SoC设计的极高性价比AI开发板,与百度大脑工具平台(飞浆AI框架)的无缝兼容更是大大降低了AI应用门槛,但是,事情显然没有到此为止,现在FZ5来了。

FZ5边缘AI计算盒子

言归正传,FZ5,看名字就知道是FZ3的传承和升级,再进一步的话可以细分为FZ5C以及FZ5D。两者在主要功能上没什么差异,C为4GB运存,而D为8GB运存,我拿到的是C版本,价格3499元,D版本在此基础上加400元。

FZ5摒弃了米尔科技传统的包装风格,可能盒子不像板子,是太厚了(笑哭)?内部配件:一个AI BOX包含MicroSD卡(FZ5C边缘AI计算盒子),一根MicroUSB线,一份说明书,一个12V的电源适配器包含4种插头。

FZ5完全看不到板子,真正切切一个“黑盒”的模样。实物外观如下图所示。

外部功能接口示意图如下。

非常硬核的接口配置,4个USB3.0口,值得注意的是,这里的HDMI是输入源接口,而不是作为输出的,视频输出接口是miniDP,这些接口在传统的开发板上是并不常见的,可能这是今后AI开发板与传统嵌入式开发板的一个分水岭。FZ5具体的硬件框图如下。

“黑盒”核心,全能SoC XCZU5EV

AI BOX FZ5虽然只一个成人巴掌大小的尺寸,但是拥有专业的AI应用潜力。核心采用赛灵思Zynq UltraScale + MPSoC  SoC XCZU5EV系列产品,记得FZ3采用的是XCZU3EG系列,从这点上也可大致推断,FZ3,FZ5的命名有参考产品核心SoC的选型。

XCZU5EV完整规格型号为XCZU5EV-SFVC784,集成了 ARM 四核 Cortex-A53(PS),双核 Cortex-R5(PS),Mali-400 MP2 图形处理单元和Kintex Ultrascale + FPGA(PL)。四核 Cortex-A53 具有强大的计算能力,双核 Cortex-R5 可用于实时处理应用,Mali-400 MP2 可用于加速图形处理,VCU 可用于硬件视频编解码加速应用,而 FPGA 具有完全可编程性。简直就是一个全能选手,配合丰富且常用的接口以及可扩展接口,可适应各种应用场景。

上手体验

说那么说,实际上手体验又是如何呢?

相比FZ3开发板类型,FZ5的黑盒装无论是携带还是实际操作更加方便了,尤其加上出厂烧录的MicroSD镜像,让你真正体验什么叫开箱即用。

根据你实际的外设可以选择不同的调试方式,比如USB转串口,SSH,或者外接显示器,可能只有外接显示器比较麻烦,这里的输出显示是miniDP接口。而采用USB转串口工具是最为方便的,真正的开箱即用。

但是USB转串口调试对应设备的控制台,在进行一般调试时可能会有冗余的打印信息,并且初次使用的话还需要安装串口驱动 CP210x_Windows_Drivers。所以建议用户使用网口调试,FZ5默认的IP是192.168.1.254,所以网口调试需将计算机的IP段设置为192.168.1.x

无论是USB转串口调试,还是网口调试,FZ5在启动后都要求用户输入login和password,即root & root,输入成功,即可登录设备系统。

FZ5 出厂搭载了Linux系统,开发者可以基于Linux系统进行应用程序进行开发,系统中也有自带的深度学习预装环境以及为模型推理的例程,用户也可以直接使用。

主要调用流程:1.应用程序获取视频输入->2.调用预测库加载模型->3.调度模型和底层驱动加速模块进行计算->4.获得运行结果。

下面就来看看实际的体验如何。

分类模型示例

读取一张本地图片,调用模型进行推理,并输出结果。

考虑到简单通用性,该示例从json文件中读取模型和图片信息,加载并执行。 执行时需要指定相应的配置文件。而配置文件其实是大同小异,我们可以看下Inceptionv2神经网络模型的配置文件示例,以此为例。

其中各个参数的含义如下表所示。

因为FZ5上具有编译能力,所以这里实际演示一下,进入到sample/classification示例的build目录下进行编译,如下如所示是已经编译过的结果。

编译结束后会在build 目录生成如下几个文件。

image_classify 为读取本地图片推理示例,运行./image_classify ../configs/resnet50/drink.json执行结果如下。


而video_classify 则是读取摄像头数据进行推理,需要连接摄像头,这里是使用USB摄像头,这个还好,但是,非常可惜的是官方没有配miniDP转接口,因此就没法连接显示器,因此下面的demo演示只能看看系统打印的log。

运行./video_classify ../configs/resnet50/drink.json

执行结果如下。

目标检测示例

和分类不同,物体检测除了能知道物体的类型,还能检测出物体所在的位置坐标。物体检测也分了两个示例,一个是在图片上检测物体,并绘制出坐标信息。还有通过摄像头采集视频,检测在屏幕上绘制坐标信息。

同样image_classify 读取本地图片推理示例。

运行./image_detection ../configs/vgg-ssd/screw.json


video_classify 则是读取摄像头数据进行推理。不过这里由于没有外接显示器而无法显示。

不过,值得一提的是,针对一些需要将HDMI作为视频源输入接口的工业应用场景,FZ5提供了一路HDMI IN接口支持,系统以及软硬件均做了相关适配,可以直接使用,非常人性化。

此外,FZ5的软核仍在持续升级中,性能也将同步提升。相同网络结构不同版本对算力要求不同,如有具体项目应用,也可联系米尔科技官方申请定制优化。同样,FZ5也可以像FZ3一样运行EasyDL平台模型预测示例,与FZ3也是异曲同工之妙,差别在于FZ5具有不同的接口和更高的性能,本文就要不再赘述,如有需要可以查看先前FZ3的评测

小结

从面向评估研发阶段的计算卡到面向批量化AI项目落地的高可靠性AI BOX,FZ3到FZ5完成“落地成盒”的蜕变,而它想传达给你的就是:你只需要专注于你的应用,将AI加速的事交给边缘AI计算盒子FZ5就是了。