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的全身照,可以看到板子还是很漂亮的。
Orange Pi AIpro主要参数配置
- 处理器:配备华为昇腾310 NPU,支持高效的人工智能计算,适用于深度学习和推理任务。
- 内存:8GB LPDDR4内存,确保多任务处理和数据密集型应用的流畅运行。
- 存储:提供eMMC存储接口和MicroSD卡插槽,方便用户扩展存储空间。
- 接口:丰富的接口配置,包括USB 3.0、USB 2.0、HDMI、以太网口、音频输出、GPIO等,满足多种外设连接需求。
- 网络:内置千兆以太网接口和Wi-Fi模块,支持高速网络连接和无线传输。
- 操作系统:兼容多种操作系统,包括Ubuntu、Debian和Android,提供广泛的软件支持和开发环境。
Orange Pi AIpro的AI处理器
昇腾310 NPU简介
Atlas 200
计算模块作为开发板的CPU与NPU。模块集成了Ascend 310
处理器,可以高效地在端侧部署典型的深度学习推理应用以下是昇腾310的主要特点:
- 高效能低功耗: 昇腾310采用7nm工艺制造,拥有高效的能耗比,能够在提供强大计算能力的同时保持较低的功耗,非常适合嵌入式和边缘计算应用。
- 强大计算能力: 昇腾310能够提供多达16 TOPS(Tera Operations Per Second)的整数计算能力和8 TFLOPS(Tera Floating Point Operations Per Second)的浮点计算能力,能够高效处理复杂的深度学习模型。
- 丰富的接口支持: 昇腾310支持多种接口,包括PCIe、I2C、UART等,方便与各种外设进行连接,适用于广泛的应用场景。
- 全场景AI支持: 昇腾310支持包括图像处理、语音识别、自然语言处理等多种AI任务,提供灵活的AI推理能力。
- 优秀的开发工具: 昇腾310配备了丰富的开发工具和软件生态,包括华为的MindSpore、TensorFlow、PyTorch等主流深度学习框架的支持,使开发者能够快速上手并进行模型训练和部署。
样例测试
准备工作
- 查看开发板IP地址
命令行输入
ifconfig
- 开启notebooks服务器
首先进入这个目录
cd ~/samples/notebooks
开启notebook服务器
./start_notebook.sh 192.168.31.186 #IP是开发板的IP
看到这个就说明服务器启动成功,接下来把复制的内容粘贴到我们电脑的浏览器,注意电脑要与开发板在一个局域网下
输入后我们可以在我们电脑浏览器右边看到很多例程
接下来我们来一个一个运行试试吧
1.YoloV5
首先是yolov5的例程
我们可以看到例程提供了三种模式分别是照片检测,视频检测和相机实时检测
图片检测
也没有什么图片就把手边的饮料瓶上传到了开发板
先修改一下模式和图片路径
可以看到正确识别出来了,不过旁边的饮料瓶没有识别出来,可能是训练集中没有
视频检测
接下来我们来试一下视频检测,我从网上随便找了一个电影的片段
首先还是修改检测模式和视频文件路径
我们来看一下效果,也是ok的帧率非常高,不愧是8TOPS算力的板子
我把检测效果的视频也同时上传到了B站链接
摄像头实时检测
找一个USB摄像头插入OrangePi AIpro的接口上
修改模式
开始检测,可以明显的感觉出来帧率比Jetson nano B01高的不是一点点
2. OCR文字识别
可以看到正确识别了图片中的文字
3. ResNet50分类
4. image_HDR_enhance图像增强
功能介绍:使用模型对曝光不足的输入图片进行HDR效果增强。
样例输入:png图像。
样例输出:增强后png图像。
可以看出原来灰暗的图像经过处理后变得明亮清晰
5. cartoonGAN图片卡通化
ArtGAN是一种基于生成对抗网络(GAN)的图像生成模型,旨在将现实世界的图像转换为卡通风格。该模型由生成器和判别器组成,通过对抗训练,使生成器能够生成逼真的卡通图像,而判别器则不断提高其区分真实卡通图像和生成图像的能力。ArtGAN利用卷积神经网络(CNN)来捕捉图像的细节和风格信息,通过不断迭代训练,生成器学会捕捉和重现卡通风格的特征,从而实现高质量的图像风格迁移。
功能:使用cartoonGAN模型对输入图片进行卡通化处理。
样例输入:原始图片jpg文件。
样例输出:卡通图象。
这个应该是我觉得最有意思的网络了,话不多说多上几个图
原始图像
处理后的图像
想到手机中还有老君山的照片,我这就来转化一下
这是原始图片
卡通化后
原图
卡通化后
原图
卡通化后
原图
卡通化后
是不是
6.蛋白质分类
香橙派也可以为专业领域赋能
功能:对蛋白质图像进行自动化分类评估
样例输入:未标注的蛋白质荧光显微图片
样例输出:已经标注分类的蛋白质图谱
7.Unet++分割
功能:对图像中的细胞核进行分割
样例输入:未标注的生物细胞图像
样例输出:已经分割的细胞核图像
8.PortraitNet人像分割和背景替换
功能:将人物和背景拼接
样例输入人物和背景
样例输出拼接后的图片
背景
人物
拼接后
8.WeNet语音识别
功能将语音转换成文字
样例输入:一段语音
样例输出:一段文字
总结
使用昇腾开发板后,我最大的感受就是昇腾社区的生态建设做得非常好。社区里有大量的AI开发样例,这对开发者来说非常友好。特别是像我这样的普通大学生,在参加比赛时,这些样例降低了我们的开发难度,提供了很大的帮助。无论是图像识别、目标检测,还是自然语言处理,都能找到相应的参考代码和详细的教程,让我们能够更快速地上手开发。
昇腾NPU的算力高达8 TOPS(每秒万亿次运算),在处理复杂的AI任务时表现得非常出色。这个高性能的硬件让我们在实际应用中体验到了显著的性能提升。以往在其他开发板上运行的深度学习模型,到了昇腾开发板上都能更高效地完成,从而节省了大量的时间和资源。
此外,昇腾社区还提供了丰富的技术文档和交流平台,开发者可以在这里找到详细的开发指南、API文档,以及解决问题的技术支持。这些资源极大地降低了学习和使用昇腾开发板的门槛,使得即便是初学者也能在短时间内掌握基本的开发技巧。
在实际使用中,我发现昇腾开发板在处理图像分类、目标检测等任务时,效率非常高。例如,在运行YOLOv5目标检测模型时,昇腾NPU可以实现实时检测,整个过程流畅无卡顿。。
总体来说,昇腾在国产生态中确实堪称佼佼者。它不仅在硬件性能上表现出色,在软件生态和社区建设上也做得非常到位。这使得我们这些开发者能够更加专注于创新和应用开发,而不是在基础设施上浪费时间和精力。对于那些想要快速入门AI开发的用户来说,昇腾开发板无疑是一个非常好的选择。希望未来能看到更多这样的国产高性能AI硬件,助力更多开发者实现他们的创意和梦想。
建议
发现昇腾开发板在处理图像分类、目标检测等任务时,效率非常高。例如,在运行YOLOv5目标检测模型时,昇腾NPU可以实现实时检测,整个过程流畅无卡顿。。
总体来说,昇腾在国产生态中确实堪称佼佼者。它不仅在硬件性能上表现出色,在软件生态和社区建设上也做得非常到位。这使得我们这些开发者能够更加专注于创新和应用开发,而不是在基础设施上浪费时间和精力。对于那些想要快速入门AI开发的用户来说,昇腾开发板无疑是一个非常好的选择。希望未来能看到更多这样的国产高性能AI硬件,助力更多开发者实现他们的创意和梦想。
建议
建议昇腾社区增加更多ROS的例程和教程,感觉这点没有地平线做的好,地平线定制的TROS在ROS中直接集成了AI开发接口,使得我们ROS开发者可以更快的上手