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

微信公众号分销功能/长沙seo培训班

微信公众号分销功能,长沙seo培训班,内江市规划建设教育培训 网站,网站的风格主要包括文章目录 1、yolov8 介绍2、创新点3、模型结构设计3.1、backbone3.2、head 4、正负样本匹配策略5、Loss6、Data Augmentation7、训练、推理8、分割 Demo附录——V1~V8附录——相关应用参考 1、yolov8 介绍 YOLOv8 是 ultralytics 公司在 2023 年 1 月 10 号开源的 YOLOv5 的下…

在这里插入图片描述

文章目录

  • 1、yolov8 介绍
  • 2、创新点
  • 3、模型结构设计
    • 3.1、backbone
    • 3.2、head
  • 4、正负样本匹配策略
  • 5、Loss
  • 6、Data Augmentation
  • 7、训练、推理
  • 8、分割 Demo
  • 附录——V1~V8
  • 附录——相关应用
  • 参考

1、yolov8 介绍

YOLOv8 是 ultralytics 公司在 2023 年 1 月 10 号开源的 YOLOv5 的下一个重大更新版本

官方开源地址:

  • https://github.com/ultralytics/ultralytics/tree/v8.2.103

ultralytics-8.2.103 是最后一个版本的 v8,后续升级成了 v11

在这里插入图片描述

MMYOLO 开源地址:

  • https://github.com/open-mmlab/mmyolo/blob/dev/configs/yolov8/

不过 ultralytics 并没有直接将开源库命名为 YOLOv8,而是直接使用 ultralytics 这个词,原因是 ultralytics 将这个库定位为算法框架,而非某一个特定算法,一个主要特点是可扩展性。

在这里插入图片描述

vs yolov5

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

2、创新点

一个新的骨干网络(c2f)

一个新的 Ancher-Free 检测头(解耦分类和回归)

一个新的损失函数(TaskAlignedAssigner 正负样本分配策略 + Distribution Focal Loss)

3、模型结构设计

在这里插入图片描述

3.1、backbone

在这里插入图片描述

更多的跨层连接

3.2、head

在这里插入图片描述
不再有之前的 objectness 分支,只有解耦的分类和回归分支,并且其回归分支使用了 Distribution Focal Loss

4、正负样本匹配策略

YOLOv8 算法中则直接引用了 TOOD 的 TaskAlignedAssigner。

根据分类与回归的分数加权的分数选择正样本。
在这里插入图片描述

s s s 是标注类别对应的预测分值, u u u 是预测框和 g t gt gt 框的 iou

对于每一个 GT,对所有的预测框基于 GT 类别对应分类分数,预测框与 GT 的 IoU 的加权得到一个关联分类以及回归的对齐分数 alignment_metrics

对于每一个 GT,直接基于 alignment_metrics 对齐分数选取 topK 大的作为正样本

5、Loss

分类分支依然采用 BCE Loss

回归分支需要和 Distribution Focal Loss 中提出的积分形式表示法绑定,因此使用了 Distribution Focal Loss, 同时还使用了 CIoU Loss

6、Data Augmentation

数据增强方面和 YOLOv5 差距不大,只不过引入了 YOLOX 中提出的最后 10 个 epoch 关闭 Mosaic 的操作。
在这里插入图片描述

7、训练、推理

YOLOv8 的训练策略和 YOLOv5 没有啥区别,最大区别就是模型的训练总 epoch 数从 300 提升到了 500

在这里插入图片描述

YOLOv8 的推理过程和 YOLOv5 几乎一样,唯一差别在于前面需要对 Distribution Focal Loss 中的积分表示 bbox 形式进行解码,变成常规的 4 维度 bbox,后续计算过程就和 YOLOv5 一样了。

其推理和后处理过程为:

(1) bbox 积分形式转换为 4d bbox 格式

对 Head 输出的 bbox 分支进行转换,利用 Softmax 和 Conv 计算将积分形式转换为 4 维 bbox 格式

(2) 维度变换

YOLOv8 输出特征图尺度为 80x80、40x40 和 20x20 的三个特征图。Head 部分输出分类和回归共 6 个尺度的特征图。

将 3 个不同尺度的类别预测分支、bbox 预测分支进行拼接,并进行维度变换。为了后续方便处理,会将原先的通道维度置换到最后,类别预测分支 和 bbox 预测分支 shape 分别为 (b, 80x80+40x40+20x20, 80)=(b,8400,80),(b,8400,4)。

(3) 解码还原到原图尺度

分类预测分支进行 Sigmoid 计算,而 bbox 预测分支需要进行解码,还原为真实的原图解码后 xyxy 格式。

(4) 阈值过滤

遍历 batch 中的每张图,采用 score_thr 进行阈值过滤。在这过程中还需要考虑 multi_label 和 nms_pre,确保过滤后的检测框数目不会多于 nms_pre。

(5) 还原到原图尺度和 nms

基于前处理过程,将剩下的检测框还原到网络输出前的原图尺度,然后进行 nms 即可。最终输出的检测框不能多于 max_per_img。

8、分割 Demo

from ultralytics import YOLO
import random
import cv2
import numpy as np
from tqdm import tqdm
import os
from natsort import natsorted"yolov8 segmentation"
if 1:model = YOLO("yolov8x-seg.pt")yolo_classes = list(model.names.values())# if you want all classesclasses_ids = [yolo_classes.index(clas) for clas in yolo_classes]colors = [random.choices(range(256), k=3) for _ in classes_ids]conf = 0.5pth = "/home/bryant/images/"tgt = "/home/bryant/v8x/"os.makedirs(tgt, exist_ok=True)for image in tqdm(natsorted(os.listdir(pth))):if ".jpg" not in image:continueimg = cv2.imread(os.path.join(pth, image))img_ori = img.copy()results = model.predict(img, conf=conf)# print(results)for result in results:if result:for mask, box in zip(result.masks.xy, result.boxes):if int(box.cls[0]) != 0:  # only segment humancontinuepoints = np.int32([mask])# cv2.polylines(img, points, True, (255, 0, 0), 1)color_number = classes_ids.index(int(box.cls[0]))mask = cv2.fillPoly(img, points, colors[color_number])mask_img = cv2.addWeighted(img_ori, 0.15, mask, 0.85, 0)# mask = cv2.fillPoly(zero, points, colors[color_number])# mask_img = 0.9*mask + 0.1*imgtry:cv2.imwrite(os.path.join(tgt, image), mask_img)except:cv2.imwrite(os.path.join(tgt, image), img_ori)

在这里插入图片描述

附录——V1~V8

在这里插入图片描述

附录——相关应用

  1. 一种基于YOLO-v8的智能城市火灾探测改进方法(2023年09月22日)

参考

参考学习摘抄来自:

  • positive666/yolo_research
  • YOLOv8 深度详解!一文看懂,快速上手(2023年01月12日)
  • 万字长文,彻底搞懂YOLOv8网络结构及代码实战!(2023年06月19日)
http://www.cadmedia.cn/news/378.html

相关文章:

  • 医院网站站内文章收录量多少/百度打广告多少钱一个月
  • 邢台做wap网站多少钱/合肥网站优化方案
  • 企业网站优化案例/北京网络推广有哪些公司
  • 卫辉网站建设/如何添加百度指数
  • 国内互动网站建设/厦门人才网官网招聘
  • 备案号怎么查询/网站seo诊断
  • 做一个专业的网站多少钱/站长seo综合查询
  • wordpress页面无法评论/关键词排名优化公司地址
  • 北京网站制作建设公司/今日重大国际新闻
  • 福鼎市城市建设监察大队网站/深圳seo外包
  • 做网站用的语言/优化设计电子版
  • 手机网站建设北京/网址之家
  • 做美食的网站有哪些/优化流程
  • 网站建设kaodezhu/营销策划公司介绍
  • 天津营销网站建设联系方式/网站模板设计
  • 小白wordpress/seo技术培训山东
  • 政府部门门户网站建设标准/推广产品的方法和步骤
  • 微信官方网站是什么/app 推广
  • 建设企业网站方案/泰安百度推广公司
  • 2003服务器建设网站/湖北网站seo策划
  • 进一步网站建设/宁波网站推广找哪家公司
  • dedecms做企业网站/百度指数对比
  • 百度网站 v怎么怎做/百度营销中心
  • 东莞网站(建设信科网络)/企业宣传方式
  • 做的网站 如何在局域网内访问/百度发布信息怎么弄
  • 建筑网站登陆页面/亚马逊关键词排名查询工具
  • 哪个网站可以做公务员真题/网络营销试题库及答案
  • wordpress 极简 文字/直通车关键词优化口诀
  • 佛山网页设计培训中心/北京搜索关键词优化
  • 网站建设详细教程视频/刷推广链接