当前位置:网站首页>[target detection] YOLOv7 theoretical introduction + practical test
[target detection] YOLOv7 theoretical introduction + practical test
2022-08-01 04:48:00 【zstar-_】
Overview
YOLOv7 was proposed by the author team of YOLOv4, whose first paper is also the author of YOLOR.
The style of the paper is the same as that of YOLOR, which is more difficult to understand. Therefore, the theoretical part here is not carefully studied, and only a few innovative points proposed in the paper are translated and summarized.
Theoretical Innovation
Extended Efficient Layer Aggregation Network
The author proposes a network structure E-ELAN using expand, shuffle, and merge cardinality to achieve the ability to continuously enhance the network learning ability without destroying the original gradient path.
Model scaling based on concatenate models
The authors propose a model scaling method that preserves the properties of the model as it was originally designed and maintains the optimal structure.
Plan reparameterized convolution
Although RepConv achieves excellent performance on top of VGG, its accuracy will drop significantly when it is directly applied to ResNet, DenseNet, and other architectures.The authors use gradient flow propagation paths to analyze how reparameterized convolutions should be combined with different networks.The authors also design the planned reparameterized convolution accordingly.
tag matching
In the past, in the training of deep networks, label assignment usually refers directly to GT and generates hard labels according to given rules.However, in recent years, if taking object detection as an example, researchers often use the network to predict the quality and distribution of the output, and then use some computational and optimization methods to generate reliable soft labels in combination with GT considerations.For example, YOLO uses bounding box regression predictions and IoU of GT as soft labels for objectivity.In this paper, the authors consider the network prediction results together with GT, and then assign soft labels as a mechanism for the "label assigner".
Finally, the author conducted a series of model comparison experiments, and the results are shown in the following table:
Experimental test
No matter how bells and whistles the previous theoretical part is, it's ultimately up to the practical test results.
Since YOLOv7 is modified based on the YOLOv5 code, anyone who has trained the YOLOv5 model can easily run it.
The specific process here will not be repeated, because with [target detection] YOLOv5Running through the VisDrone dataset is exactly the same.
Here I still use the VisDrone data set, use the YOLOv7 model, and add the same training parameters as in the previous blog post. After training for 1 epoch, the memory is burst..
I changed the batch_size to 1 and insisted on 2epoch, the memory still explodes.
So I switched to my own data set and compared it with YOLOv5-5.0. The effect is as follows:
Algorithm | [email protected] | [email protected]:.95s |
---|---|---|
yolov5-5.0 | 95.6% | 67.6% |
yolov7 | 94.8% | 67.4% |
It can be seen that the effect of yolov7 is not as good as that of yolov5 on my own data set. This may be due to the fact that my data set has a larger target and is sparser, and the detection difficulty is not high.In addition, the input image is 640x640 size, and the input size recommended by the better model of yolov7 is 1280x1280.However, for my 6GB slag graphics card, it cannot be tested and verified.I'll try again when I get a chance to switch devices later..
Code Backup
YOLOv7 code backup: https://pan.baidu.com/s/1gj5TAOH-z8_kLJDDQxlKfg?pwd=8888
Contains yolov7.pt, yolov7-e6e.pt two pre-trained models
边栏推荐
猜你喜欢
This article takes you to understand the past and present of Mimir, Grafana's latest open source project
Message Queuing Message Storage Design (Architecture Camp Module 8 Jobs)
Message queue MySQL table for storing message data
What is dynamic programming and what is the knapsack problem
Passive anti-islanding-UVP/OVP and UFP/OFP passive anti-islanding model simulation based on simulink
UE4 从鼠标位置射出射线检测
博客系统(完整版)
ICML2022 | Deep Dive into Permutation-Sensitive Graph Neural Networks
Unknown Bounded Array
认真对待每一个时刻
随机推荐
Pyspark Machine Learning: Vectors and Common Operations
[FPGA tutorial case 43] Image case 3 - image sobel edge extraction through verilog, auxiliary verification through MATLAB
y83.第四章 Prometheus大厂监控体系及实战 -- prometheus告警机制进阶(十四)
Li Chi's work and life summary in July 2022
typescript28-枚举类型的值以及数据枚举
How to promote new products online?
Message Queuing Message Storage Design (Architecture Camp Module 8 Jobs)
25. Have you been asked these three common interview questions?
Optional parameters typescript19 - object
UE4 从鼠标位置射出射线检测
万字逐行解析与实现Transformer,并进行德译英实战(三)
PMP子过程定义总结
动态规划 01背包
请问表格储存中用sql只能查询到主键列,ots sql非主键不支持吗?
Valentine's Day Romantic 3D Photo Wall [with source code]
A way to deal with infinite debugger
雪糕和轮胎
typescript24-类型推论
【目标检测】YOLOv7理论简介+实践测试
scheduleWithFixedDelay和scheduleAtFixedRate的区别