当前位置:网站首页>【目标检测】YOLOR理论简介+实践测试VisDrone数据集
【目标检测】YOLOR理论简介+实践测试VisDrone数据集
2022-07-28 23:29:00 【zstar-_】
前言
YOLOR是2021年提出的一种算法,其一作Chien-Yao Wang(台湾)同时也是最近刚出的YOLOv7的第一作者。
论文地址:https://arxiv.org/abs/2105.04206
论文项目地址:https:// github.com/WongKinYiu/yolor
理论简介
YOLOR的论文不容易啃,因为其在里面写了大篇幅的数学推导概念,我不做深入推导研究,仅对其思想进行简单复述。
YOLOR的核心思想也是借鉴了人脑生理学结构。人类可以通过正常的感官和经验来进行主动学习,这部分学习到的知识被称为显性知识,与此同时,人类也可以通过潜意识来进行学习,这部分学习到的知识被成为隐性知识。
在传统的神经网络模型中,往往提取了神经元特征而丢弃了隐式知识的学习运用,作者将直接可观察的知识定义为显式知识,隐藏在神经网络中且无法观察的知识定义为隐式知识。
因此,作者就针对这一点做了下列一些研究贡献:
- 提出了一个可以完成各种任务的统一网络,它通过整合内隐知识和外显知识来学习一般表示,人们可以通过这种一般表示来完成各种任务。所提出的网络以非常小的额外成本(不到1万的参数量和计算量)有效地提高了模型的性能。
- 将核空间对齐、预测精细化和多任务学习引入内隐知识学习过程,并验证了它们的有效性。
- 分别讨论了利用向量、神经网络和矩阵分解等工具对隐性知识进行建模的方法,并验证了其有效性。
- 证实了所提出的内隐表示可以准确地对应特定的物理特征,并且我们也将其以视觉的方式呈现出来。
下面具体的内容太复杂且枯燥了,深入了解的可以看原论文或博文[1]总结的思维导图:
下面是论文里展现的作者使用不同模型的实验结果:
实践测试
东西好不好,还得看实际用了才知道。
看到源码基本上也是基于YOLOv5改的,因此看过我之前这篇博文【目标检测】YOLOv5跑通VisDrone数据集的读者应该对跑通YOLOR也轻车熟路。
下面我就使用VisDrone数据集和yolor_csp_x_star这个模型跑100个epoch,再进行测试,下面是测试结果,同样和之前【目标检测】TPH-YOLOv5:基于transformer的改进yolov5的无人机目标检测做个实验的模型进行对比,结果如下:
算法 | [email protected] | [email protected]:.95s |
---|---|---|
yolov5-5.0 | 34.9% | 20.6% |
yolov5-6.1 | 33.1% | 18.7% |
tph-yolov5 | 37.4% | 21.7% |
yolov6 | 32.5% | 17.4% |
yolor | 37.7% | 22.8% |
注:只是100个epoch的得到的best.pt的测试结果,并未达到最优性能,通常论文里展示的测试结果都是300个epoch以上。
仅看mAP数值的话,YOLOR的数值在迭代100轮的情况下,数值最高,说明YOLOR的确是有所提升效果的。
下面我导入之前测试过的小目标人体检测视频,可以看到YOLOR的检测效果并没有像数值预期的那样理想,说明对于小目标情况,YOLOR并不非常适用(这是未经足够实验得出的结论,仅供参考)。
YOLOR_VisDrone数据集检测效果
代码备份
跑YOLOR的代码可以明显发现作者的目光并不局限于AP,有时候,AR在一些具体任务中,比AP更重要。作者对这点进行了优化,训练完之后,不像原版只保存best.pt和last.pt,而是保存多个模型。
可能是由于作者的一些失误,原始代码在运行时有一些小bug。我进行了简单修正,特将代码备份如下(包含yolor_csp_x_star.pt权重文件和我运行的一些结果):
https://pan.baidu.com/s/1lXiu82q0sQPTCU0C4UmcAQ?pwd=8888
References
[1]https://blog.csdn.net/weixin_42917352/article/details/120050525
边栏推荐
- "Food alliance ordering system"
- 将Word中的表格以图片形式复制到微信发送
- day8
- There is a span tag. If you want to do click events on it, how can you expand the click area
- 刷题的第三十天
- zabbix部署及监控
- Selenium wire obtains Baidu Index
- 管理区解耦架构见过吗?能帮客户搞定大难题的
- Common measurement matrix and matlab code of compressed sensing
- MySQL sub database and sub table and its smooth expansion scheme
猜你喜欢
2022dasctfjuly empowerment competition (reappearance)
Outlier detection and Gan network (1)
Educational Codeforces Round 132 (Rated for Div. 2)【A~C】
Router view cannot be rendered (a very low-level error)
Summary of preprocessing methods for time series data
DRF - web development mode, API interface, API interface testing tool, restful specification, serialization and deserialization, DRF installation and use
Talk about seven ways to realize asynchronous programming
"Food alliance ordering system"
Error reporting: Rong Lianyun sends SMS verification code message 500
数仓搭建——DWT层
随机推荐
Statistical analysis of time series
COPU陆首群教授应邀在开放原子全球开源峰会上做主旨演讲
最长上升子序列
CUDA related
Shell编程规范与变量
从零开始实现lmax-Disruptor队列(六)Disruptor 解决伪共享、消费者优雅停止实现原理解析
Introduction of shortest path tree (SPT) and matlab code
Copu Professor Lu Shouqun was invited to give a keynote speech at the open atom global open source summit
Minimum dominating set (MDS) and its matlab code
DRF -- authentication, authority, frequency source code analysis, global exception handling, automatic generation of interface documents, RBAC introduction
Implement Lmax disruptor queue from scratch (VI) analysis of the principle of disruptor solving pseudo sharing and consumers' elegant stopping
MATLAB02:结构化编程和函数定义「建议收藏」
AQS原理
Requestvideoframecallback() simple instance
Send SMS verification code asynchronously using Ronglian cloud celery
[network security] complete the blacklist and whitelist functions of server firewall through iptables and ipset
CDN mode uses vant components, and components cannot be called after they are introduced
追踪伦敦银实时行情的方法
Outlier detection and Gan network (1)
[untitled]