yolo-目标检测算法简介

article/2025/8/24 17:44:34

一 简单概念

机器视觉的四大任务

分类-Classification:解决“是什么?”的问题,即给定一张图片或一段视频判断里面包含什么类别的目标.

检测-Detection:解决“是什么?在哪里?”的问题,即定位出这个目标的的位置并且知道目标物是什么。

定位-Location:解决“在哪里?”的问题,即定位出这个目标的的位置。

分割-Segmentation:,解决“每一个像素属于哪个目标物或场景”的问题。

目标检测

目标检测(Object Detection)的任务是找出图像中所有感兴趣的目标(物体),确定它们的类别和位置,是计算机视觉领域的核心问题之一。

检测-Detection:解决“在哪里?是什么?”的问题,即定位出这个目标的位置并且知道目标物是什么。

yolo是一种卷积神经网络结构,yolo(意思是神经网络只需要看一次图片,就能输出结果),通过给出的物体坐标获取目标的特征信息,然后将信息存储、学习,在目标图像上找到符合的特征信息,确定目标位置。

1)目的是从一张图片中可以识别出多个不同种类的物体

2)并且用一个框将每个物体出来并得到坐标,也可以要得到物体的尺寸,包含5个信息:物体的中心位置(x,y),物体的长和宽(h,w),以及物体的种类置信度分数(score)

yolo-应用场景

yolo系列是目标领域知名度最高的算法,其凭借出色的实时检测性能在不同的领域均有广泛应用。目前,yolo共有6个版本,yolo v1-v5和yolo vx。

yolo的预测是基于整个图片的,并且它会一次性输出所有检测到的目标信息,包括类别和位置。就好像捕鱼,yolo会将整张网撒下去,将所有的鱼都捞起来。

1) 医疗领域,胃镜息肉检测、药品表面缺陷检测、CT医疗图像检测

2) 安防领域,是否佩戴安全帽检测、行人检测、人员识别、明火检测

3) 交通领域,车辆检测、交通标志识别、交通信号灯检测,交通状况监控

4) 农业领域,病虫害检测、成熟度检测、生育期识别

yolo-简单网络结构
输入端:
Mosaic数据增强(随机裁剪拼接)
自适应锚框计算(反复更新标注框和预测框的差值)
自适应图片缩放(统一模型训练的图像宽高)

Backbone(主干网络):
Focus结构(将图像切片、卷积得到需要的特征图)
CSP结构(采样、特征获取和组合)用于提高准确率

Neck(特征层):
在这里插入图片描述

输出端:
Bounding box损失函数(计算交并比)
nms非极大值抑制(解决遮挡问题)

二 模型训练

在这里插入图片描述

三 训练注意事项

1、数据准备阶段
数据的多种多样(不重复)
图像清晰
目标准确(图像中有目标)并且目标不宜过大或者过小

2、数据标注阶段
标注框刚好框住目标
标注信息准确(标注信息一般用英文和数字)
选取的信息简单明了(特征单一)

3、模型训练阶段
标准信息、格式和训练输入是否一致(不一致进行转化)
训练的轮数输入大小(影响到最终结果和时间)
超参数的设置

4、模型测试阶段
正负样本检测
测试数据的多样和量多

训练常用超参数

*超参数 *:

  1. 定义关于模型的更高层次的概念,如复杂性或学习能力。
  2. 不能直接从标准模型培训过程中的数据中学习,需要预先定义。
  3. 可以通过设置不同的值,训练不同的模型和选择更好的测试值来决定

常用超参数:

1.学习率:是指在优化算法中更新网络权重的幅度大小,也叫做步长
2.权重初始化:第一种是采用均匀分布的方法初始化各层网络的权重,自己从头开始训练网络模型.
第二种是采用该模型之前已经训练好的权重作为训练的初始值
3.优化器:通过什么算法去优化网络模型的参数,常用的优化器就是梯度下降
4.批次大小:每一次训练神经网络送入模型的样本数,在卷积神经网络中,大批次通常可使网络更快收敛,
但由于内存资源的限制,批次过大可能会导致内存不够用或程序内核崩溃
5.迭代次数:指整个训练集输入到神经网络进行训练的次数
6.激活函数:激活函数是给神经网络加入一些非线性因素,使得网络可以更好地解决较为复杂的问题。
类似于人类大脑中基于神经元的模型,激活函数最终决定了要发射给下一个神经元的内容


http://chatgpt.dhexx.cn/article/4unAlnNg.shtml

相关文章

目标检测算法发展历程

这里的图片是从b站同济子豪兄的【精读AI论文】 R-CNN深度学习目标检测算法 处截图的, 在这算是个记录吧,同时立个小小的flag,尽量在硕一结束前都搞明白是干啥的吧(希望能坚持住 :) 在这也小推一下子豪兄&a…

YOLOv5目标检测算法——通俗易懂的解析

目录 YOLOv5目标检测算法前沿一.网络结构1.1.Backbone1.2.Neck1.3.Head二.数据增强2.1.Mosaic2.2.Copy paste2.3.Random affine2.4.Mixup2.5.Albumentation2.6.Augment HSV2.7.Random horizontal flip 三.训练策略3.1.Multi-scale training3.2.Auto anchor3.3.Warmup and Cosin…

目标检测算法(YOLOv3)

目标检测算法(YOLOv3) YOLOv3在YOLOv2的基础上,改良了网络的主干,利用多尺度特征图进行检测,改进了多个独立的Logistic regression分类器来取代softmax来预测类别分类. 论文题目:YOLOv3: An Incremental Improvement 主干网络 YOLOv3提出了新的主干网络: Darknet…

最新目标检测算法回顾2022笔记

目标检测算法回顾2022笔记[附PPT] 总目录篇章1:目标检测的应用与需求篇章2:目标检测的定义与挑战篇章3:目标检测损失函数的进展篇章4:目标检测IOU的发展历程篇章5:目标检测评价指标及数据集[篇章6: 目标检测…

目标检测算法——YOLOV7——详解

1、主要贡献 主要是现有的一些trick的集合以及模块重参化和动态标签分配策略,最终在 5 FPS 到 160 FPS 范围内的速度和准确度都超过了所有已知的目标检测器。 当前目标检测主要的优化方向:更快更强的网络架构;更有效的特征集成方法&#xff1…

3D点云目标检测算法综述

一、概述 在3D点云目标检测领域,对于数据输入的处理一般有三种: 多视角。将三维点云投射到多个二维平面形成图像 体素,voxel,将三维点云切割成多个小块,这些小块就叫体素,类似像素。这是最自然的一种想法…

传统目标检测算法

目标分类:给一张图片,分类 目标检测:给一张图片,找到目标,并用矩形框画出 分类是对一幅图整体,检测是更进一步,找出一幅图中一部分。一般检测以分类为基础, 目标检测就是找出图像中…

目标检测算法基础

人脸检测算法综述 0 前言1 人脸检测算法难点2 人脸检测算法流程2.1 选择检测窗口2.2 提取图像特征2.3 设计分类器2.3.1 AdaBoost2.3.2 SVM分类器2.3.3 决策树与随机森林 3 人脸检测算法3.1 传统的人脸检测算法3.2 深度学习3.2.1 基于候选框的二阶段检测算法3.2.2 直接预测结果框…

目标检测算法回顾之传统算法

传统的目标检测算法 总体回顾基于特征基于分割 一般流程经典算法HarrAdaboost流程Harr特征Adaboost算法 HOG SVM概述方法HOG特征的优缺点 DPMDPM特征DPM流程 DPM vs HOG 总结 说明:本文仅供学习 虽然传统的目标检测方法现在比较少用,但我们认为有必要了…

目标检测算法发展综述

目标检测算法 一、目标检测算法二、目标检测算法存在的问题三、目标检测算法的基本流程四、传统的目标检测算法 1.Viola-Jones(VJ人脸检测算法)2.HOG SVM(行人检测,使用Opencv实现)3.DPM(物体检测&#xf…

目标检测算法研究

1、目标检测基本介绍 1.1、项目结构 1.2、目标检测的算法分类 1.2.1两步走的目标检测:先进行区域推荐、而后进行目标分类 代表算法 :R-CNN、 SPP-net、Fast-R-CNN、Faster R-CNN 1.2.2、端到端的目标检测:采用一种网络一步到位 代表&#x…

目标检测算法分类

目标检测算法分类: 1、两步走的目标检测:先找出候选的一些区域,再对区域进行调整分类 代表:R-CNN、SPP-net、Fast R-CNN、Faster R-CNN 2、端到端的目标检测:采用一个网络一步到位,输入图片,输…

目标检测算法

目标检测算法 一、目标检测算法二、目标检测算法存在的问题三、目标检测算法的基本流程四、传统的目标检测算法1.Viola-Jones(VJ人脸检测算法)2.HOG SVM(行人检测,使用Opencv实现)3.DPM(物体检测&#xff…

目标检测总结:R-CNN、Fast R-CNN、Faster R-CNN、YOLO、SSD

目标检测总结:R-CNN、Fast R-CNN、Faster R-CNN、YOLO、SSD 转自:七月在线实验室 一、目标检测常见算法 object detection,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别。所以,object detection要解…

目标检测算法总结

一、基于候选区域的目标检测器 滑动窗口检测器 根据滑动窗口从图像中剪切图像块,把图像块处理成固定大小。随后输入CNN分类器中,提取特征。最后使用SVM分类器识别种类,并且用线性回归器得到边框。 选择性搜索selective search 首先将每个…

万字长文详解目标检测算法,超大超全(2022最新)

摘要 1 概述 2 目标检测回顾 2.1 two-stage 2.2 one-stage 3 目标检测配方 3.1 基础概念 3.1.1 损失函数 3.1.2 Anchor-based 和 Keypoint-based 3.1.3 NMS 3.2 目标检测中的挑战 4 目标检测中的Head 4.1 ThunderNet 4.2 You Only Look Once(YOLO) 4.3 Single Sh…

常见经典目标检测算法

1、目标检测基本概念 1.1 什么是目标检测 目标检测(Object Dectection)的任务是找出图像中所有感兴趣的目标(物体),确定他们的类别和位置。 1.2 目标检测要解决的核心问题 除图像分类外,目标检测要解决的核心问题是&#xff1a…

目标检测的各种算法总结

这里是引用腾讯云博客文章:一文读懂目标检测:R-CNN、Fast R-CNN、Faster R-CNN、YOLO、SSD 文章目录 一、目标检测常见算法二、传统的目标检测算法2.1 从图像识别的任务说起2.2 物体检测(Object Detection) 三、候选区域/窗 深度…

【NLP】预训练模型——GPT1

背景 废话不多说,先把三篇论文链接放出来:GPT1:Improving Language Understanding by Generative Pre-Training、GPT2:Language Models are Unsupervised Multitask Learners、GPT3:Language Models are Few-Shot Learners。李沐老师也在B站上放了介绍G…

ResNet50修改网络适应灰度图片并加载预训练模型

此博文是修改https://blog.csdn.net/jiacong_wang/article/details/105631229 这位大大的博文而成的,自己根据自己的情况稍微加了点东西 要修改的地方有4处 1.修改网络第一层,把3通道改为1 法一:直接在定义网络的地方修改 self.conv1 nn.…