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

news2024/10/6 1:58:07

香橙派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实际部署到自己的摄像头上面看下病害虫实际检测时的效果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1893989.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Node.js 入门

目录 定义 什么是前端工程化? Node.js 为何能执行 JS? Node.js 安装 使用 Node.js fs 模块 - 读写文件 path 模块 - 路径处理 案例 - 压缩前端 html URL 中的端口号 常见的服务程序 http 模块-创建 Web 服务 浏览时钟(案例&#x…

2024最新中级会计职称考试全科题库资料。

1.根据消费税法律制度的规定,下列各项中,属于消费税征税范围的是()。 A.汽车轮胎 B.食用酒精 C.铂金首饰 D.体育上用的发令纸 答案:C 解析:选项ABD均不属于消费税的征税范围。 2.甲企业(…

2024亚太杯中文赛B题全保姆教程

B题 洪水灾害的数据分析与预测 问题 1. 请分析附件 train.csv 中的数据,分析并可视化上述 20 个指标中,哪 些指标与洪水的发生有着密切的关联?哪些指标与洪水发生的相关性不大?并 分析可能的原因,然后针对洪水的提前预…

基于Arduino平台开源小车的初步使用体验

创作原因:偶然有机会接触到基于Arduino平台的开源智能小车,初步使用后与大家分享。因使用时间不常,可以纯当个乐子看看,感谢大家的阅读! 图:一款基于Arduino平台的开源小车 一、开发环境 Misly&#xff1…

两个Activity之间切换时UI部分重叠

书籍 《第一行代码 Android》第三版 开发 环境 Android Studio Jellyfish | 2023.3.1 setContentView android studio自动生成的SecondActivity.kt中自动生成的代码中已经绑定了second_layout.xml的布局资源,通过代码:setContentView(R.layout.secon…

tkinter给按钮设置背景图片

tkinter给按钮设置背景图片 效果代码 效果 代码 import tkinter as tk from PIL import Image, ImageTk# 创建主窗口 root tk.Tk() root.title("按钮背景图片示例")# 加载图片 image Image.open("new.png") photo ImageTk.PhotoImage(image)# 创建按钮…

比Proxmox VE更易用的免费虚拟化平台

之前虚拟化一直玩Proxmox VE,最近发现一个更易用的虚拟化软件CSYun,他与Proxmox VE类似,都是一个服务器虚拟化平台。它不像VMware ESXi那么复杂,对于个人使用者和中小企业是一个比较好的选择。 这个软件所在的网址为:…

Nuxt3 的生命周期和钩子函数(十)

title: Nuxt3 的生命周期和钩子函数(十) date: 2024/6/30 updated: 2024/6/30 author: cmdragon excerpt: 摘要:本文详细介绍了Nuxt3框架中的五个webpack钩子函数:webpack:configResolved用于在webpack配置解析后读取和修改配置…

PCL从理解到应用【02】PCL环境安装 | PCL测试| Linux系统

前言 本文介绍在Ubuntu18.04系统中,如何安装PCL。 源码安装方式:pcl版本1.91,vtk版本8.2.0,Ubuntu版本18.04。 安装好后,可以看到pcl的库,在/usr/lib/中; 通过编写C代码,直接调用…

2.8亿东亚五国建筑数据分享

数据是GIS的血液! 我们现在为你分享东亚5国的2.8亿条建筑轮廓数据,该数据包括中国、日本、朝鲜、韩国和蒙古5个东亚国家完整、高质量的建筑物轮廓数据,你可以在文末查看领取方法。 数据介绍 虽然开源的全球的建筑数据已经有微软的建筑数据…

​埃文科技受邀出席2024 “数据要素×”生态大会​

2024“数据要素”生态大会(以下简称“大会”)于2024年6月30日在河南省郑州市举办。大会在国家数据局、河南省人民政府等单位的指导下,由中国经济体制改革研究会、中国电子信息产业集团有限公司、郑州市人民政府等共同主办。大会主题为“加快数…

C++字体库开发之字体回退三

代码片段 class FontCoverage { public: using SP std::shared_ptr<FontCoverage>; virtual ~FontCoverage() default; virtual void set(int index, FontTypes::CoverageLevel level) 0; virtual FontTypes::Coverag…

架构 | 数据归档

INDEX 1 通用思路2 快速归档3 归档整体流程&#xff08;完整归档 & 快速归档&#xff09;4 准备阶段4.1 确认归档表4.2 思路&#xff1a;确认归档数据范围 & 归档方案待选&#xff08;重点&#xff09;4.3 归档方式选择 & 业务场景覆盖4.4 确认归档数据范围 & …

Spring源码十:BeanPostProcess

上一篇Spring源码九&#xff1a;BeanFactoryPostProcessor&#xff0c;我们看到ApplicationContext容器通过refresh方法中的postProcessBeanFactory方法和BeanFactoryPostProcessor类提供预留扩展点&#xff0c;他可以在Spring容器的层面对BeanFactroy或其他属性进行修改&#…

微信小程序遮罩层显示

效果展示&#xff1a; wxml页面&#xff1a; <view classmodal-mask wx:if{{showModal}}><view class"modal-container"><view classmodal-content></view><view classmodal-footer bindtap"closeImage">//这个/images/ind…

MATLAB——循环语句

一、for end语句 在该语法中&#xff0c;循环变量是用于迭代的变量名&#xff0c;它会在每次循环迭代中从向量或矩阵中取出一列的值。数值向量或者矩阵则表示了循环变量可以取值的范围&#xff0c;通常根据实际需要事先给定。一旦循环变量遍历完数值向量或者矩阵中的所有值&…

【server】3、注册中心与配置中心

1、服务注册与发现 1.1、consul 1.1.1 是什么 官网&#xff1a; Consul by HashiCorp spring-cloud-consul: Spring Cloud Consul :: Spring Cloud Consul gitHub 官网 &#xff1a;GitHub - hashicorp/consul: Consul is a distributed, highly available, and data cent…

如何检查购买的Facebook账号优劣?

Facebook 是全球最受欢迎的社交网络之一,为品牌广告提供了巨大的潜力。许多公司和营销人员使用 Facebook 来推广他们的产品和服务&#xff0c;经常会购买账号。当然也分出了很多账号&#xff0c;比如个人号&#xff0c;BM号&#xff0c;广告号&#xff0c;小黑号等等。 但是,有…

一键安装部署,在 Ubuntu 服务器上快速搭建基于 Ghost CMS的网站

我们在上一篇内容中讲过&#xff0c;如何使用 Helm 在 Kubernetes 集群上安装 WordPress&#xff0c;创建高可用性网站。而这次我们将基于另一个流行的内容管理系统 Ghost CMS 在 DigitalOcean 云主机进行建站。 Ghost 也是开源的内容管理系统&#xff08;CMS&#xff09;&…

【Arduino】ESP8266开发环境配置(图文)

ESP8266与ESP32开发很类似&#xff0c;相当于是低配版本的ESP32&#xff0c;其同样具有无线网络连接能力&#xff0c;功能强大&#xff0c;而且价格比ESP32更具有优势。接下来我们就来设置一下ESP8266的开发环境。 使用Arduino开发平台软件&#xff0c;选择首选项进行设置。 h…