YOLOv5目标检测源码重磅发布了!

https://github.com/ultralytics/yolov5

该存储库代表了对未来对象检测方法的超解析开源研究,并结合了在使用之前的YOLO存储库在自定义客户机数据集上训练数千个模型时所吸取的经验教训和改进的最佳实践https://github.com/ultralytics/yolov3。所有代码和模型都在积极开发中,可能会被修改或删除,恕不另行通知。使用风险自负。

更新:

2020年5月27日:公开发布。yolov3 spp(发布协议)是所有已知yolo实现中的SOTA,yolov5系列将在2020年第2/3季度进行架构研究和开发,以提高性能。更新可能包括来自yolov4的CSP瓶颈,以及PANet或BiFPN head特性。

2020年5月24日:训练yolov5s/x和yolov3-spp。yolov5m/l出现早期过度拟合,并且代码137早期docker终止,原因未知。yolov5l因早期过度拟合而表现不佳yolov3 spp,原因未知。 2020年4月1日:开始开发100%Pythorch可缩放的基于yolov3/4的未来模型组,包括小型、中型、大型和超大型,统称为yolov5。模型将由新的用户友好的基于yaml的配置文件定义,以便于构建和修改。数据集也将使用yaml配置文件。新的训练平台将更简单的使用,更难打破,更强大的训练范围更广的自定义数据集。

专业解析(Ultralytics Professional Support)

基于云的人工智能监控系统实时运行在数百个高清视频流上。边缘人工智能集成到定制的iOS和Android应用程序中,可实现每秒30帧的实时视频推断。

预先训练的检测

**APtest表示COCO test-dev2017服务器结果,表中所有其他AP结果表示val2017精度。

**所有的精度数字都是针对没有集合或测试时间增加的单模型单尺度。

python test.py --img-size 736 --conf_thres 0.001

**LatencyGPU使用V100 GPU测量平均超过5000张COCO val2017图像的端到端延迟,包括图像预处理、推断、后处理和NMS。

此图表中包含的平均NMS时间为1.6ms/图像。

python test.py --img-size 640 --conf_thres 0.1 --batch-size 16

**所有检查点都训练到300个具有默认设置和超参数(无自动增强)的阶段。

Requirements

Python 3.7或更高版本requirements.txt已安装依赖项,包括torch>=1.5。要安装运行:

$ pip install -U -r requirements.txt

教程Tutorials

推论Inference

推理可以在大多数常见的媒体格式上运行。如果可用,则自动下载模型检查点。结果保存到./inference/output。

$ python detect.py --source file.jpg  # image 
                            file.mp4  # video
                            ./dir  # directory
                            0  # webcam
                            rtsp://170.93.143.139/rtplive/470011e600ef003a004ee33696235daa  # rtsp stream
                            http://112.50.243.8/PLTV/88888888/224/3221225900/1.m3u8  # http stream

To run inference on examples in the ./inference/images folder:

$ python detect.py --source ./inference/images/ --weights yolov5s.pt --conf 0.4
Namespace(agnostic_nms=False, augment=False, classes=None, conf_thres=0.4, device='', fourcc='mp4v', half=False, img_size=640, iou_thres=0.5, output='inference/output', save_txt=False, source='./inference/images/', view_img=False, weights='yolov5s.pt')
Using CUDA device0 _CudaDeviceProperties(name='Tesla P100-PCIE-16GB', total_memory=16280MB)
Downloading https://drive.google.com/uc?export=download&id=1R5T6rIyy3lLwgFXNms8whc-387H0tMQO as yolov5s.pt... Done (2.6s)
image 1/2 inference/images/bus.jpg: 640x512 3 persons, 1 buss, Done. (0.009s)
image 2/2 inference/images/zidane.jpg: 384x640 2 persons, 2 ties, Done. (0.009s)
Results saved to /content/yolov5/inference/output

Reproduce Our Training

运行下面的命令。yolov5s需要几天的训练,yolov5x需要几周的2080tigpu训练。

$ python train.py --data coco.yaml --cfg yolov5s.yaml --weights '' --batch-size 16 

Reproduce Our Environment

要访问最新的工作环境(预先安装了所有依赖项,包括CUDA/CUDNN、Python和PyTorch),请考虑:

YOLOv5目标检测源码重磅发布了!的更多相关文章

  1. [炼丹术]YOLOv5目标检测学习总结

    Yolov5目标检测训练模型学习总结 一.YOLOv5介绍 YOLOv5是一系列在 COCO 数据集上预训练的对象检测架构和模型,代表Ultralytics 对未来视觉 AI 方法的开源研究,结合了在 ...

  2. CRL2.3(ORM开发框架)源码github发布

    简介 CRL是一个面向对象的轻便型ORM业务框架 此框架追求的是使用简单,方便,因此设计为: 不需要代码生成器生成对象类,按标准方式写即可 依托lambda,实现语法解析转换为等效的SQL查询,完全以 ...

  3. 使用 Redis 源码编译发布 Windows 版 Redis For Windows 发行包

    Redis 是个高性能的键值数据库,现在日常项目开发过程中,目前个人开发项目基本都会用到 Redis,主要是用来做 缓存 和 分布式锁 的底层支持,个人喜欢用 .NET 技术体系,所以一般部署也是用 ...

  4. Code Reading: ORB-SLAM回环检测源码阅读+注释

    之前研究过一些回环检测的内容,首先要看的自然是用词袋回环的鼻祖和正当继承人(没有冒犯VINS和LDSO的意思)ORB-SLAM.下面是我的代码注释.因为代码都是自己手打的,不是在源码上注释的,所以一些 ...

  5. opencv: 角点检测源码分析;

    以下6个函数是opencv有关角点检测的函数 ConerHarris, cornoerMinEigenVal,CornorEigenValsAndVecs, preConerDetect, coner ...

  6. tf源码中的object_detection_tutorial.ipynb文件

    今天看到原来下载的tf源码的目标检测源码中test的代码不知道跑哪儿去了,这里记录一下... Imports import numpy as np import os import six.moves ...

  7. 2014年6月份第1周51Aspx源码发布详情

    企业汽车服务终端管理系统源码  2014-6-3 [VS2010]源码描述:本系统专门服务于(汽车美容4s店) 完整的一套汽车美容管理服务系统. 功能介绍:汽车美容服务终端功能强大而又简便实用,界面友 ...

  8. 【转】.NET(C#):浅谈程序集清单资源和RESX资源 关于单元测试的思考--Asp.Net Core单元测试最佳实践 封装自己的dapper lambda扩展-设计篇 编写自己的dapper lambda扩展-使用篇 正确理解CAP定理 Quartz.NET的使用(附源码) 整理自己的.net工具库 GC的前世与今生 Visual Studio Package 插件开发之自动生

    [转].NET(C#):浅谈程序集清单资源和RESX资源   目录 程序集清单资源 RESX资源文件 使用ResourceReader和ResourceSet解析二进制资源文件 使用ResourceM ...

  9. 自动升级系统OAUS的设计与实现(续) (附最新源码)

    (最新OAUS版本请参见:自动升级系统的设计与实现(续2) -- 增加断点续传功能) 一.缘起 自从 自动升级系统的设计与实现(源码) 发布以后,收到了很多使用者的反馈,其中最多的要求就是希望OAUS ...

随机推荐

  1. PHP laravel系列之Blade模版

    一.什么是Blade模版? Blade 是 Laravel 提供的一个既简单又强大的模板引擎. 和其他流行的 PHP 模板引擎不一样,Blade 并不限制你在视图中使用原生 PHP 代码.所有 Bla ...

  2. 华为USG6000V防火墙简单配置案例

    如图,PC1是企业内网用户,要通过防火墙NAT方式( 1.1.1.105-1.1.1.106 )访问Internet,Server是企业的FTP服务器,通过静态NAT方式供外网用户访问,对外的地址是1 ...

  3. Android apk快速定位、灰色按钮克星--DroidSword

    本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80994434 在进行Android应用程序的逆向分析时,经常需要对Android ...

  4. hdu 2058 枚举区间和个数

    题意:       给你两个数n,m,意思是有一个序列长度n,他是1 2 3 4 ...n,然后让你输出所有连续和等于m的范围. 思路:       是个小水题,随便写几个数字就能发现规律了,我们可以 ...

  5. IPC$共享和其他共享(C$、D$)

    目录 net use共享命令的用法 IPC$ IPC空连接 ipc$使用的端口 关闭IPC$共享 net use共享命令的用法 net use #查看连接 net share              ...

  6. 【微信小程序】--小程序中循环遍历(包括js中遍历和wxml中的遍历)

    文章为博主原创,纯属个人见解,如有错误欢迎指出. 如需转载,请注明出处. 在js中遍历 for (var index in res.data.infos) { res.data.infos[index ...

  7. Unittest框架之测试套件:TestSuite

    前言 使用了unittest.main()方法执行当前模块里的测试用例. 除此之外,Unittest还可以通过测试套件构造测试用例集,再执行测试用例 将测试用例添加至TestSuite(测试套件) 方 ...

  8. NtQuerySystemInformation获取进程/线程状态

    __kernel_entry NTSTATUS NtQuerySystemInformation( SYSTEM_INFORMATION_CLASS SystemInformationClass, P ...

  9. OPC使用思路

  10. “可变的”tuple

    来看一个"可变的"tuple: >>> t = ('a', 'b', ['A', 'B']) >>> t[2][0] = 'X' >> ...