当前位置: 首页 > news >正文

香橙派AIpro实测:YOLOv8便捷检测,算法速度与运行速度结合

香橙派AIpro实测:YOLOv8便捷检测,算法速度与运行速度结合

文章目录

  • 香橙派AIpro实测:YOLOv8便捷检测,算法速度与运行速度结合
  • 一、引言
  • 二、香橙派AIpro简介
  • 三、YOLOv8检测效果
    • 3.1 目标检测算法介绍
      • 3.1.1 YOLO家族
      • 3.1.2 YOLOv8算法理论
      • 3.1.3 病害虫检测重要性
    • 3.2香橙派开机
    • 3.3 目标检测算法训练
      • 3.3.1 安装第三方库
      • 3.3.2 开始训练
      • 3.3.3 训练结果展示
  • 四、测评流程总结

一、引言

很荣幸前几天收到了一块开发板,这款开发板是香橙派联合华为精心打造的,没错,就是被美国连年制裁的华为,所以光听到这两个公司就知道产品质量绝对是可以保证的,香橙派的宣传sologen是:“为AI而生”。这个开发板特别小,更应该说是:“迷你”,收到快递的时候,这个开发板是放在一个小盒子里,一个手掌大小的小盒子,很神奇有木有!
抱着半信半疑的态度进行目标检测算法的实践,博主成功实现了使用香橙派AIpro进行YOLOv8算法的训练同时是基于林业病害虫目标检测的。从博主自身使用体验来说,香橙派AIpro的这块板子的性价比特别高高,非要让我来描述,那就是“短小精悍”以及“麻雀虽小、五脏俱全”,衷心祝贺香橙派AIpro可以生产出这么棒的产品,这对助力AI算法的发展具有非常重要的作用。

在这里插入图片描述

二、香橙派AIpro简介

我自己描述可能会有不准确的地方,那就把官方说明贴出来吧。
来自官方的说明:
OrangePi AIpro(8T)采用昇腾AI技术路线,具体为4核64位处理器+AI处理器,集成图形处理器,支持8TOPS AI算力,拥有8GB/16GB LPDDR4X,可以外接32GB/64GB/128GB/256GB eMMC模块,支持双4K高清输出。 Orange Pi AIpro引用了相当丰富的接口,包括两个HDMI输出、GPIO接口、Type-C电源接口、支持SATA/NVMe SSD 2280的M.2插槽、TF插槽、千兆网口、两个USB3.0、一个USB Type-C 3.0、一个Micro USB(串口打印调试功能)、两个MIPI摄像头、一个MIPI屏等,预留电池接口,可广泛适用于AI边缘计算、深度视觉学习及视频流AI分析、视频图像分析、自然语言处理、智能小车、机械臂、人工智能、无人机、云计算、AR/VR、智能安防、智能家居等领域,覆盖 AIoT各个行业。 Orange Pi AIpro支持Ubuntu、openEuler操作系统,满足大多数AI算法原型验证、推理应用开发的需求。

在这里插入图片描述
在这里插入图片描述

三、YOLOv8检测效果

3.1 目标检测算法介绍

目前基于深度学习的目标检测任务主要有两大技术路线:一是以 YOLO(You Only Look Once)系列算法和 SSD(Single Shot Detection)[3]系列算法为主的 One-Stage 目标检测算法;二是以 Faster R-CNN(Faster Region with Convolutional Neural Network)[4]系列算法为主的 Two-Stages目标检测算法。其中,One-Stage 目标检测算法是将目标检测问题转化成直接回归问题,不产生候选框;Two-Stage目标检测算法是通过卷积神经网络(Convolutional Neural Network,CNN)与区域建议网络(Region Proposal Network,RPN)[4]相结合,以不同尺寸的滑动窗口自左上角向右下角滑动并扫描特征图(Feature Map)来生成若干候选区域,再提取候选区域相关的视觉特征。两种方法各有其特点和优势:One-Stage 目标检测算法检测速度快,因此实时性更有优势。如方仁渊和王敏在对商品包装类型的检测中,先精简原始 YOLO 算法的骨干网络部分,使得训练时间成本大幅减低,再提出反向连接结构得到与原始网络在平均精度上持平的检测结果。

3.1.1 YOLO家族

YOLO家族是一个经典的物体探测器。该算法自2015年第一版发布以来,以单级框架实现了领先的效率,迅速成为主流检测算法。通过不断的研究和创新,不同版本的YOLO被提出。最新版本是YOLOv8 [8]算法,由Ultralytics于2023年1月开源。这种算法引入了新的特性和改进,成为YOLO家族中最好的模型。YOLOv8包括输入、主干、颈部、输出四个部分。YOLOv8的结构如所图所示.

在这里插入图片描述

3.1.2 YOLOv8算法理论

输入主要包括颜色扰动、空间扰动、镶嵌、混合。不同数量的图片经过组合数据增强处理后拼接在一起,增加了多方向的物体视角,也丰富了图像背景的多样性。
主干主要包括卷积层、C2F层和SPPF层。C2F结构不同于YOLOv8中的C3模块,后者借鉴了YOLOv7中ELAN(高效层聚合网络)的思想[9],提高了梯度传播的效率,使网络能够快速收敛。SPPF层保持了YOLOv8中的设计。
Neck采用FPN(特征金字塔网络)和PAN(路径聚合网络)相结合的结构[10].相邻层的特征被连接,作为C2F模块的输入。当特征从上到下传递时和底层特征的高级语义特征组合在一起。
输出实现了检测和分类的解耦。底层特征用于获取小目标对象的信息,顶层特征是大目标对象的结果。每个检测层输出一个结果向量,其中包含位置和相应的类别信息。

3.1.3 病害虫检测重要性

在过去的二十年里,我们看到了物体检测技术的快速发展及其对整个计算机视觉领域的深远影响。目标检测是在图像分类基础上增加了目标定位功能的研究方向,其应用领域越来越广泛,例如小区门禁人脸识别,运动领域的动作点识别等。其中,利用目标检测识别林业病虫进行预防是林业方向的重要应用。
林业病虫害检测与常见目标检测的主要区别在于,室外环境复杂多变,数据集中的图像往往存在光照不足、反光、模糊等问题。森林存在着对林业不同的威胁,例如闪电造成的山火、滥砍滥伐、病害虫的侵蚀等,其中,闪电造成的山火不能提前预测只能在发生山火后进行扑灭防止,滥砍滥伐可以通过政策进行防治保护,病害虫却是可以通过目标检测提前识别然后进行对不同病害虫的防治工作。

3.2香橙派开机

香橙派的强大之处第一点就是只需要一个显示器就可以生成一个高性能的计算机,将显示器和开发板组合,开机,屏幕成功显示。
在这里插入图片描述
Ubuntu的初始密码是:Mind@123,如下图所示成功进入Ubuntu22.04系统。

在这里插入图片描述

3.3 目标检测算法训练

3.3.1 安装第三方库

先安装python 3.9
python 安装完成后害需要安装以下库:
pip install numpy pandas matplotlib opencv-python pillow seaborn tqdm lap thop warnings
YOLOv8运行时可能会产生一些无关紧要的代码提示,可以安装warnings设置不显示:
import warnings
warnings.filterwarnings(“ignore”)

3.3.2 开始训练

将自己的yolo算法文件放在桌面,同时修改需要训练的yaml文件指定的数据集地址
1.先把数据集划分成test、train、val以及对应的images、annotations/xmls
2.到yolov8\ultralytics\datasets复制一个文件修改path、names

在这里插入图片描述
运行train.py文件麻烦的话,可以自己写一个run_train.ipynb文件,内容如下:
from ultralytics import YOLO
model=YOLO(“ultralytics/cfg/models/v8/yolov8.yaml”).load(“weights/yolov8n.pt”)
model.train(data=“ultralytics/datasets/insect.yaml”,epochs=100,device=0)
metrics=model.val()
data=“ultralytics/datasets/insect.yaml”,epochs=100,device=0:data代表数据集地址,epochs是训练次数,device是训练时指定的是CPU还是GPU进行训练。

3.3.3 训练结果展示

YOLOv8目标检测算法训练结束后会生成一个综合各种预测图、数据曲线、训练周期变化数据的文件夹run.zip,如下图所示。

在这里插入图片描述
这里以其中几个图进行示例:
预测示例图:

在这里插入图片描述
PR_curve.png:
右侧数据:每个类别的AP,以及设定IoU=0.5时的mAP是0.848
AP(Average Precisin)衡量的是学习出来的模型在每个类别上的好坏
mAP(mean Average Precisin)衡量的是学习出来的模型在所有类别上的好坏
希望曲线接近(1,1),即希望mAP曲线的面积尽可能接近1

在这里插入图片描述
labels.jpg:
第一个图是训练集得数据量,每个类别有多少个;
第二个图是框的尺寸和数量;
第三个图是中心点相对于整幅图的位置;
第四个图是图中目标相对于整幅图的高宽比例;

在这里插入图片描述

四、测评流程总结

文章总体做个简单总结吧,自己使用香橙派AIpro训练了YOLOv8算法用于林业病害虫的目标检测,全程使用下来感受真的很震撼,只能说真的很棒,验证了香橙派AIpro是可以用于林业病害虫目标检测的。经过测评香橙派AI|pro真的惊艳到了我,博主之前是用的趋动云这样的服务器进行训练的,实际操作起来很繁琐,需要压缩解压缩各种巴拉巴拉的,而且云服务器都是按小时计费的,计算能力越高小时费用越高,而香橙派AIpro8+32G的版本才800元左右,关键使用云服务器不论你用了多久花了多少钱都不是自己的,可以用更少的钱获得性价比更高的产品,这无疑是AI训练的不二选择!
博主作为一名研究深度学习的目标检测领域的人员来说,非常意外能够看到香橙派AIpro横空出世的优异产品,自己通过部署YOLOv8算法,验证了香橙派AIpro的计算能力是可以胜任目标检测快速训练任务的,等后续会把香橙派AIpro实际部署到自己的摄像头上面看下病害虫实际检测时的效果。

相关文章:

  • 前后端分离:四种开发模式与实践指南
  • 微信小程序毕业设计-球馆预约系统项目开发实战(附源码+论文)
  • labview排错
  • 02-部署LVS-DR群集
  • React 打包时如何关闭源代码混淆
  • 图像的反转
  • K8s 集群(kubeadm) CA 证书过期解决方案
  • 【代码随想录_Day24】134. 加油站 135. 分发糖果 860. 柠檬水找零 406. 根据身高重建队列
  • 地理信息科学:生态保护的智慧经纬
  • 2024年 Java 面试八股文(20w字)
  • springcloud第4季 分布式事务seata作用服务搭建1
  • Linux上快速定位Java代码问题行
  • 云桌面运维工程师
  • 大数据------JavaWeb------JSP(完整知识点汇总)
  • Spring Boot中的安全漏洞防护
  • php的引用
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • hexo+github搭建个人博客
  • 分享一款快速APP功能测试工具
  • [case10]使用RSQL实现端到端的动态查询
  • Create React App 使用
  • GraphQL学习过程应该是这样的
  • HTML-表单
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • js
  • Js基础知识(四) - js运行原理与机制
  • mac修复ab及siege安装
  • orm2 中文文档 3.1 模型属性
  • windows下如何用phpstorm同步测试服务器
  • Work@Alibaba 阿里巴巴的企业应用构建之路
  • 服务器之间,相同帐号,实现免密钥登录
  • 欢迎参加第二届中国游戏开发者大会
  • 基于遗传算法的优化问题求解
  • 技术攻略】php设计模式(一):简介及创建型模式
  • 前端性能优化--懒加载和预加载
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • raise 与 raise ... from 的区别
  • ​secrets --- 生成管理密码的安全随机数​
  • # Apache SeaTunnel 究竟是什么?
  • #stm32驱动外设模块总结w5500模块
  • #数学建模# 线性规划问题的Matlab求解
  • (办公)springboot配置aop处理请求.
  • (二)WCF的Binding模型
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • .gitignore文件忽略的内容不生效问题解决
  • .net 程序发生了一个不可捕获的异常
  • .Net8 Blazor 尝鲜
  • .NET简谈设计模式之(单件模式)
  • @hook扩展分析
  • @JsonSerialize注解的使用
  • [ 代码审计篇 ] 代码审计案例详解(一) SQL注入代码审计案例