搭载昇腾310NPU的Orange Pi AIpro开箱体验以及深度学习样例测试

Orange Pi AIpro开箱体验以及样例测试

随着人工智能和物联网技术的快速发展,单板计算机(Single Board Computer, SBC)在创客和开发者社区中越来越受到欢迎。我最近入手了一款高性能的单板计算机——Orange Pi AIpro。

在入手此款AI开发板之前,作为一个热爱计算机技术的大学生,本人经常参加各种竞赛,正是因为这样我在前面的大学三年中使用过主控为Jetson Nano B01的ROS机器人,得益于英伟达的cuda,英伟达几乎拥有深度学习框架的原生支持,这就大大降低了,我们普通开发者的开发难度,但是高昂的价格又令人难以接受,直到后来拿到了地平线公司的旭日派X3板卡,价格很便宜但是算力是Jetson Nano的数倍,虽然不支持原生的pytorch,tensorflow等流行模型,好在可以使用模型转换工具转换成可以使用的模型,随着后来的使用,我也逐渐发现了旭日派X3的不足,首先就是并不是所有的深度学习模型都可以跑在旭日派X3的BPU上,例如,我在使用yolov5目标检测模型时,只有yolov5-2.0版本的全部算子可以运行在旭日派X3的BPU上,这使得新版本的网络中无法将所有算子运行在BPU上,这就使得运行时帧率大大降低,第二个问题就是地平线适配的模型并不是很多,样例很少。

最近,我有幸受到了香橙派官方的邀请,评测他们最新推出的AI开发板Orange Pi AIpro。据了解这款设备是Orange Pi与华为合作推出的,内置了华为自研的昇腾310 NPU(Neural Processing Unit),使用了华为自研达芬奇架构,相对其他国产产品,我个人认为华为的昇腾社区,资源更为丰富,并且也有很多课程,这可以大大降低学习的难度。

本文旨在为零基础用户提供一个详细的开箱体验和Orange Pi AIpro的产品介绍,帮助大家快速掌握Orange Pi AIpro的基本使用方法,以及了解昇腾强大的生态。我还会具体测试几个简单的AI样例,分享自己的探索过程和心得体会。希望通过这个教程,能让大家更好地了解这款强大的AI开发板。

产品介绍

话不多说先放两张Orange Pi AIpro的全身照,可以看到板子还是很漂亮的。

9ce018ff4332172dc85b71424012818

3462a3f1a109bd7765c50500f9f8409

Orange Pi AIpro主要参数配置

  1. 处理器:配备华为昇腾310 NPU,支持高效的人工智能计算,适用于深度学习和推理任务。
  2. 内存:8GB LPDDR4内存,确保多任务处理和数据密集型应用的流畅运行。
  3. 存储:提供eMMC存储接口和MicroSD卡插槽,方便用户扩展存储空间。
  4. 接口:丰富的接口配置,包括USB 3.0、USB 2.0、HDMI、以太网口、音频输出、GPIO等,满足多种外设连接需求。
  5. 网络:内置千兆以太网接口和Wi-Fi模块,支持高速网络连接和无线传输。
  6. 操作系统:兼容多种操作系统,包括Ubuntu、Debian和Android,提供广泛的软件支持和开发环境。

Orange Pi AIpro的AI处理器

昇腾310 NPU简介

Atlas 200计算模块作为开发板的CPU与NPU。模块集成了Ascend 310处理器,可以高效地在端侧部署典型的深度学习推理应用以下是昇腾310的主要特点:

  1. 高效能低功耗: 昇腾310采用7nm工艺制造,拥有高效的能耗比,能够在提供强大计算能力的同时保持较低的功耗,非常适合嵌入式和边缘计算应用。
  2. 强大计算能力: 昇腾310能够提供多达16 TOPS(Tera Operations Per Second)的整数计算能力和8 TFLOPS(Tera Floating Point Operations Per Second)的浮点计算能力,能够高效处理复杂的深度学习模型。
  3. 丰富的接口支持: 昇腾310支持多种接口,包括PCIe、I2C、UART等,方便与各种外设进行连接,适用于广泛的应用场景。
  4. 全场景AI支持: 昇腾310支持包括图像处理、语音识别、自然语言处理等多种AI任务,提供灵活的AI推理能力。
  5. 优秀的开发工具: 昇腾310配备了丰富的开发工具和软件生态,包括华为的MindSpore、TensorFlow、PyTorch等主流深度学习框架的支持,使开发者能够快速上手并进行模型训练和部署。

样例测试

准备工作
  1. 查看开发板IP地址

命令行输入

ifconfig

image-20240523124949299

  1. 开启notebooks服务器

首先进入这个目录

 cd ~/samples/notebooks

开启notebook服务器

./start_notebook.sh 192.168.31.186 #IP是开发板的IP

image-20240523165928546

看到这个就说明服务器启动成功,接下来把复制的内容粘贴到我们电脑的浏览器,注意电脑要与开发板在一个局域网下

输入后我们可以在我们电脑浏览器右边看到很多例程

image-20240523170248724

在这里插入图片描述

接下来我们来一个一个运行试试吧

1.YoloV5

首先是yolov5的例程

在这里插入图片描述

我们可以看到例程提供了三种模式分别是照片检测,视频检测和相机实时检测

图片检测

也没有什么图片就把手边的饮料瓶上传到了开发板

先修改一下模式和图片路径

image-20240523170819674

可以看到正确识别出来了,不过旁边的饮料瓶没有识别出来,可能是训练集中没有

image-20240523170958912

视频检测

接下来我们来试一下视频检测,我从网上随便找了一个电影的片段

首先还是修改检测模式和视频文件路径

image-20240523171132123

我们来看一下效果,也是ok的帧率非常高,不愧是8TOPS算力的板子

image-20240523171205954

我把检测效果的视频也同时上传到了B站链接

摄像头实时检测

找一个USB摄像头插入OrangePi AIpro的接口上

image-20240523172542082

修改模式

image-20240523172615980

开始检测,可以明显的感觉出来帧率比Jetson nano B01高的不是一点点

image-20240523172739072

2. OCR文字识别

可以看到正确识别了图片中的文字

image-20240523173020401

3. ResNet50分类

image-20240523173200485

4. image_HDR_enhance图像增强

功能介绍:使用模型对曝光不足的输入图片进行HDR效果增强。
样例输入:png图像。
样例输出:增强后png图像。

image-20240523173509237

可以看出原来灰暗的图像经过处理后变得明亮清晰

5. cartoonGAN图片卡通化

ArtGAN是一种基于生成对抗网络(GAN)的图像生成模型,旨在将现实世界的图像转换为卡通风格。该模型由生成器和判别器组成,通过对抗训练,使生成器能够生成逼真的卡通图像,而判别器则不断提高其区分真实卡通图像和生成图像的能力。ArtGAN利用卷积神经网络(CNN)来捕捉图像的细节和风格信息,通过不断迭代训练,生成器学会捕捉和重现卡通风格的特征,从而实现高质量的图像风格迁移。

功能:使用cartoonGAN模型对输入图片进行卡通化处理。
样例输入:原始图片jpg文件。
样例输出:卡通图象。

这个应该是我觉得最有意思的网络了,话不多说多上几个图

原始图像

image-20240523173755910

处理后的图像

image-20240523173820074

想到手机中还有老君山的照片,我这就来转化一下

这是原始图片

test

卡通化后

原图

image-20240523175648350

卡通化后

image-20240523175703708

原图

image-20240523175744036

卡通化后

image-20240523175802201

原图

image-20240523175828452

卡通化后

image-20240523175845473

是不是

6.蛋白质分类

香橙派也可以为专业领域赋能

功能:对蛋白质图像进行自动化分类评估
样例输入:未标注的蛋白质荧光显微图片
样例输出:已经标注分类的蛋白质图谱

image-20240523180204931

7.Unet++分割

功能:对图像中的细胞核进行分割
样例输入:未标注的生物细胞图像
样例输出:已经分割的细胞核图像

image-20240523180440049

8.PortraitNet人像分割和背景替换

功能:将人物和背景拼接

样例输入人物和背景

样例输出拼接后的图片

背景

image-20240523181409909

人物

image-20240523181434206

拼接后

image-20240523181636964

8.WeNet语音识别

功能将语音转换成文字

样例输入:一段语音

样例输出:一段文字

image-20240523181953753

总结

使用昇腾开发板后,我最大的感受就是昇腾社区的生态建设做得非常好。社区里有大量的AI开发样例,这对开发者来说非常友好。特别是像我这样的普通大学生,在参加比赛时,这些样例降低了我们的开发难度,提供了很大的帮助。无论是图像识别、目标检测,还是自然语言处理,都能找到相应的参考代码和详细的教程,让我们能够更快速地上手开发。

昇腾NPU的算力高达8 TOPS(每秒万亿次运算),在处理复杂的AI任务时表现得非常出色。这个高性能的硬件让我们在实际应用中体验到了显著的性能提升。以往在其他开发板上运行的深度学习模型,到了昇腾开发板上都能更高效地完成,从而节省了大量的时间和资源。

此外,昇腾社区还提供了丰富的技术文档和交流平台,开发者可以在这里找到详细的开发指南、API文档,以及解决问题的技术支持。这些资源极大地降低了学习和使用昇腾开发板的门槛,使得即便是初学者也能在短时间内掌握基本的开发技巧。

在实际使用中,我发现昇腾开发板在处理图像分类、目标检测等任务时,效率非常高。例如,在运行YOLOv5目标检测模型时,昇腾NPU可以实现实时检测,整个过程流畅无卡顿。。

总体来说,昇腾在国产生态中确实堪称佼佼者。它不仅在硬件性能上表现出色,在软件生态和社区建设上也做得非常到位。这使得我们这些开发者能够更加专注于创新和应用开发,而不是在基础设施上浪费时间和精力。对于那些想要快速入门AI开发的用户来说,昇腾开发板无疑是一个非常好的选择。希望未来能看到更多这样的国产高性能AI硬件,助力更多开发者实现他们的创意和梦想。

建议

发现昇腾开发板在处理图像分类、目标检测等任务时,效率非常高。例如,在运行YOLOv5目标检测模型时,昇腾NPU可以实现实时检测,整个过程流畅无卡顿。。

总体来说,昇腾在国产生态中确实堪称佼佼者。它不仅在硬件性能上表现出色,在软件生态和社区建设上也做得非常到位。这使得我们这些开发者能够更加专注于创新和应用开发,而不是在基础设施上浪费时间和精力。对于那些想要快速入门AI开发的用户来说,昇腾开发板无疑是一个非常好的选择。希望未来能看到更多这样的国产高性能AI硬件,助力更多开发者实现他们的创意和梦想。

建议

建议昇腾社区增加更多ROS的例程和教程,感觉这点没有地平线做的好,地平线定制的TROS在ROS中直接集成了AI开发接口,使得我们ROS开发者可以更快的上手

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机小混子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值