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

相信大部分人都听过近几年大火的绝地求生游戏(吃鸡)里“落地成盒”的梗,形象、不失风趣,一度成为网络流行语,但是,这是贬义。而边缘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就是了。

 

原创声明:本文系电路城原创测评,如需转载请注明来源出处!

 

相关方案推荐

标题:基于NXP QorIQ®LS1046A的边缘计算之人脸识别方案

图片

图片

图片

图片

 

方案简介:

预计2020年智能设备的出货量将会超过400亿台,随着越来越多的智能设备出现,从数据的获取到数据的处理到深度学习,必须要在信息当中进行挖掘。信息爆炸,设备不堪重负,边缘计算应运而生。而未来数据的产生速度会逐步超过存储能力。他指出在未来的5-10年,边缘计算比数据中心的统一计算更为重要。

 

边缘计算将改变物联网(IoT),就像云计算改变企业IT一样。我们创建安全、高度可编程和灵活的计算系统来增强人工智能(AI)和机器学习(ML),有助于开创本地AI的时代,而边缘节点不仅智能,且训练有素,知晓它们的环境和状况,使其能够脱机或采用有限的云连接。


恩智浦平台提供硬件和软件级别的安全边缘计算,提供基本技术,支持低功耗、低延迟、高吞吐量的解决方案,以实现更高的效率、便利性、隐私性和安全性。

 

方案规格

处理器:4个32/64位ARM(R) Cortex(R)V8 A72 CPU,高达1.6 GHz内核速度

 

存储器:
·  支持8 GB DDR4 SDRAM存储器


·  支持双位错误检测和单位纠错的ECC(64位数据的8位检查字)


·  支持高达2100 MT/s的数据传输速率


·  提供一个288引脚的DDR4 DIMM连接器


·  DIMM连接器支持无缓冲的X72 8 GB双排


·  SDHC端口与适配器卡槽直接连接,配备4 GB eMMC存储器器件


·1个512 MB SLC NAND闪存,带ECC支持(1.8 V)


· CPLD连接:CPLD中8位寄存器可配置复用器/解复用器选择


·  支持两个64 MB板载QSPI NOR Flash存储器

 

USB:


·  两个USB 3.0控制器,带有集成PHY


·  1个USB1 3.0端口可连接到A型主设备连接器


·  1个USB1 3.0端口可配置为带Micro-AB接头的OTG


·  1个USB2.0可连接miniPCIe接口

 

以太网:
·  支持通道2和通道3的SGMII 1G PHY


·  支持带XFI重定时器的SFP+模块


·  支持AQR106/107 10G PHY与XFI/2.5G SGMII

 

PCI Express和SATA:

 

·  PCIe express x1 (Gen1/2/3)迷你卡
·  PCIe x1 (Gen1/2/3)标准卡
·  PCIe x1 (Gen1/2/3)标准卡
·  1个SATA 3.0连接器

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个Python编写的RSA加密工具类,可以使用指定的公钥和私钥进行数据加密和解密。 ```python import base64 from Crypto.PublicKey import RSA from Crypto.Cipher import PKCS1_v1_5 class RSAUtil: def __init__(self, public_key=None, private_key=None): if public_key: self.public_key = RSA.importKey(public_key) if private_key: self.private_key = RSA.importKey(private_key) def generate_key(self, bits=2048): self.key = RSA.generate(bits) self.public_key = self.key.publickey() self.private_key = self.key def export_public_key(self): return self.public_key.exportKey().decode('utf-8') def export_private_key(self): return self.private_key.exportKey().decode('utf-8') def encrypt(self, data): cipher = PKCS1_v1_5.new(self.public_key) ciphertext = cipher.encrypt(data.encode('utf-8')) return base64.b64encode(ciphertext).decode('utf-8') def decrypt(self, ciphertext): cipher = PKCS1_v1_5.new(self.private_key) data = cipher.decrypt(base64.b64decode(ciphertext), None) return data.decode('utf-8') ``` 使用示例: ```python public_key = """-----BEGIN PUBLIC KEY----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDQ8QuKZ4kbwYpSfS+/x7c9j3q m7C4Jz4hF7QZbWkR+Yw5OfNlJN7V9yWdFyKv5/5a5e/7p8W+5g5w6x+U6H7A9Xy 6XOgB+OznPzjL6LZMcgJZM6aKj+Q2QJXOyRrmtURjI3DKb3L+1s3qE0GwX9AxRj OOJQ2F+I6rT8CnG3qQIDAQAB -----END PUBLIC KEY-----""" private_key = """-----BEGIN PRIVATE KEY----- MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBANDxC4pniRvBilJ 9L7/Htz2PeqbsLgnPiEXtBltaRH5jDk585ySTe1fclnRcir+f/lrl7/unxb7mDn DrH5TofsD1fLpc6AH47Oc/PMsotkxyAlkzpoqP5DZAlc7JGua1RGMyNwyW9y/tb N6hNBsF/QMUYziUNhfiOq0/Apxt6kAgMBAAECgYB6xJU+HcOQkFTe6LfZwzJZP6 M+0X9R6jJvI2+1rI0rC8BZqJj1f+Gdp0zB72yU9X+U6uuJU6NcU6xZJ/l2bI6+P D0i/jz/9y+XmVksjTupm2n0JrW+LzqY3s3sMz7Jqu0Wf9X7El3q+3uK7VklGmxRZ Y37hJ1t2Qz0j4OEx9QJBAOcPzKjgV+JWJ5Z5wGZfz5a1+EpMsfW2Ji7KT/ak5zL EFa+D5lGw5Y5K5zg/UfjFtW8uV7q3t+G5V7S5bRmBvECQQDQ1QOT4n4BhrE0oIb Lr1Q2rT/GJ0/cZ6Y1qIzEBZiJc0oUkXyvPc6Ugwi6U1x6uvFQZwY+ZU84gDuxzHI v7eZAkEA1iLcJx+0zLw5LV5H5lGZf1FZ5gOVf7F3tAVh9V7PzOyBjFCYiYtZP4V4 4jQO4+TmIliE9XrTnTJ2A/3qf3zN8wJBAI6zohsJvA9+hUW8yUzC6gMn6BzE6Q2 TwfzG6b0i6Gv6cWd9XgU6JF+6xkH0CQe6OXJFzg0b6P7+TTH0y9XrECQAsTJIfO s+1aZLs0GpPfOJz7VhN9l9X7V/Ox5tDgYhZiJtZ8z4ZBEmj4N7JmH2m9yjg= -----END PRIVATE KEY-----""" rsa = RSAUtil(public_key, private_key) # 加密 data = "hello world" encrypted_data = rsa.encrypt(data) print("加密后的数据:", encrypted_data) # 解密 decrypted_data = rsa.decrypt(encrypted_data) print("解密后的数据:", decrypted_data) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值