Commit Graph

969 Commits (0d891c601e8178e4b9665da46d630456668b1996)
 

Author SHA1 Message Date
Glenn Jocher 0d891c601e
check_requirements() exclude pycocotools, thop (#2571)
Exclude non-critical packages from dependency checks in detect.py. pycocotools and thop in particular are not required for inference.

Issue first raised in https://github.com/ultralytics/yolov5/issues/1944 and also raised in https://github.com/ultralytics/yolov5/discussions/2556
2021-03-23 14:25:55 +01:00
Glenn Jocher 1c132a1f94
Update Detections() times=None (#2570)
Fix for results.tolist() method breaking after YOLOv5 Hub profiling PRshttps://github.com/ultralytics/yolov5/pull/2460 https://github.com/ultralytics/yolov5/pull/2459 and
2021-03-23 14:10:47 +01:00
Ayush Chaurasia e8fc97aa38
Improved W&B integration (#2125)
* Init Commit

* new wandb integration

* Update

* Use data_dict in test

* Updates

* Update: scope of log_img

* Update: scope of log_img

* Update

* Update: Fix logging conditions

* Add tqdm bar, support for .txt dataset format

* Improve Result table Logger

* Init Commit

* new wandb integration

* Update

* Use data_dict in test

* Updates

* Update: scope of log_img

* Update: scope of log_img

* Update

* Update: Fix logging conditions

* Add tqdm bar, support for .txt dataset format

* Improve Result table Logger

* Add dataset creation in training script

* Change scope: self.wandb_run

* Add wandb-artifact:// natively

you can now use --resume with wandb run links

* Add suuport for logging dataset while training

* Cleanup

* Fix: Merge conflict

* Fix: CI tests

* Automatically use wandb config

* Fix: Resume

* Fix: CI

* Enhance: Using val_table

* More resume enhancement

* FIX : CI

* Add alias

* Get useful opt config data

* train.py cleanup

* Cleanup train.py

* more cleanup

* Cleanup| CI fix

* Reformat using PEP8

* FIX:CI

* rebase

* remove uneccesary changes

* remove uneccesary changes

* remove uneccesary changes

* remove unecessary chage from test.py

* FIX: resume from local checkpoint

* FIX:resume

* FIX:resume

* Reformat

* Performance improvement

* Fix local resume

* Fix local resume

* FIX:CI

* Fix: CI

* Imporve image logging

* (:(:Redo CI tests:):)

* Remember epochs when resuming

* Remember epochs when resuming

* Update DDP location

Potential fix for #2405

* PEP8 reformat

* 0.25 confidence threshold

* reset train.py plots syntax to previous

* reset epochs completed syntax to previous

* reset space to previous

* remove brackets

* reset comment to previous

* Update: is_coco check, remove unused code

* Remove redundant print statement

* Remove wandb imports

* remove dsviz logger from test.py

* Remove redundant change from test.py

* remove redundant changes from train.py

* reformat and improvements

* Fix typo

* Add tqdm tqdm progress when scanning files, naming improvements

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-03-23 00:44:50 +01:00
Glenn Jocher ed2c74218d Created using Colaboratory 2021-03-14 23:32:39 -07:00
Glenn Jocher 9b11f0c58b
PyTorch Hub models default to CUDA:0 if available (#2472)
* PyTorch Hub models default to CUDA:0 if available

* device as string bug fix
2021-03-14 23:16:17 -07:00
Glenn Jocher 2d41e70e82
Scipy kmeans-robust autoanchor update (#2470)
Fix for https://github.com/ultralytics/yolov5/issues/2394
2021-03-14 21:58:12 -07:00
Yann Defretin 38ff499b26
Update autosplit() with annotated_only option (#2466)
* Be able to create dataset from annotated images only

Add the ability to create a dataset/splits only with images that have an annotation file, i.e a .txt file, associated to it. As we talked about this, the absence of a txt file could mean two things:

* either the image wasn't yet labelled by someone,
* either there is no object to detect.

When it's easy to create small datasets, when you have to create datasets with thousands of images (and more coming), it's hard to track where you at and you don't want to wait to have all of them annotated before starting to train. Which means some images would lack txt files and annotations, resulting in label inconsistency as you say in #2313. By adding the annotated_only argument to the function, people could create, if they want to, datasets/splits only with images that were labelled, for sure.

* Cleanup and update print()

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-03-14 17:11:27 -07:00
Glenn Jocher 6f718cee74 Created using Colaboratory 2021-03-13 20:20:09 -08:00
Glenn Jocher 20d879db36
Update tutorial.ipynb 2021-03-13 20:05:21 -08:00
Glenn Jocher f813f6dcc8
autoShape() speed profiling update (#2460) 2021-03-13 20:00:03 -08:00
Glenn Jocher 569757ecc0
Add autoShape() speed profiling (#2459)
* Add autoShape() speed profiling

* Update common.py

* Create README.md

* Update hubconf.py

* cleanuip
2021-03-13 19:50:34 -08:00
Glenn Jocher 747c2653ee
CVPR 2021 Argoverse-HD autodownload curl (#2455)
curl preferred over wget for slightly better cross platform compatibility (i.e. out of the box macos compatible).
2021-03-12 22:27:53 -08:00
Glenn Jocher 08d4918d7f
labels.jpg class names (#2454)
* labels.png class names

* fontsize=10
2021-03-12 22:15:41 -08:00
Glenn Jocher f4197214aa
Update test.py --task train val study (#2453)
* Update test.py --task train val study

* update argparser --task
2021-03-12 22:08:42 -08:00
Glenn Jocher f01f3223d5
Integer printout (#2450)
* Integer printout

* test.py 'Labels'

* Update train.py
2021-03-12 13:35:44 -08:00
Glenn Jocher 886f1c03d8
DDP after autoanchor reorder (#2421) 2021-03-09 23:43:46 -08:00
Glenn Jocher d5ca8ca34e
CVPR 2021 Argoverse-HD autodownload fix (#2418) 2021-03-09 21:07:27 -08:00
Kartikeya Sharma c51dfec8ea
CVPR 2021 Argoverse-HD dataset autodownload support (#2400)
* added argoverse-download ability

* bugfix

* add support for Argoverse dataset

* Refactored code

* renamed to argoverse-HD

* unzip -q and YOLOv5

small cleanup items

* add image counts

Co-authored-by: Kartikeya Sharma <kartikes@trinity.vision.cs.cmu.edu>
Co-authored-by: Kartikeya Sharma <kartikes@trinity-0-32.eth>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-03-09 19:26:49 -08:00
Glenn Jocher e8a2b83268
GCP sudo docker userdata.sh (#2393)
* GCP sudo docker

* cleanup
2021-03-07 20:21:49 -08:00
Glenn Jocher 7c2c95732c
AWS wait && echo "All tasks done." (#2391) 2021-03-07 20:18:30 -08:00
Glenn Jocher ba18528b47
bbox_iou() stability and speed improvements (#2385) 2021-03-06 13:07:34 -08:00
Jan Hajek 7a0a81fd1d
GPU export options (#2297)
* option for skip last layer and cuda export support

* added parameter device

* fix import

* cleanup 1

* cleanup 2

* opt-in grid

--grid will export with grid computation, default export will skip grid (same as current)

* default --device cpu

GPU export causes ONNX and CoreML errors.

Co-authored-by: Jan Hajek <jan.hajek@gmail.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-03-06 12:02:10 -08:00
Yonghye Kwon cd8ed3521d
image weights compatible faster random index generator v2 for mosaic augmentation (#2383)
image weights compatible faster random index generator v2 for mosaic augmentation
2021-03-05 22:58:26 -08:00
Glenn Jocher c64fe219b4
ENV HOME=/usr/src/app (#2382)
Set HOME environment variable per Binder requirements. 
https://github.com/binder-examples/minimal-dockerfile
2021-03-05 15:53:57 -08:00
Glenn Jocher 692e1f31dc
--no-cache notebook (#2381) 2021-03-05 15:26:27 -08:00
Yonghye Kwon 300d518f73
Faster random index generator for mosaic augmentation (#2345)
* faster random index generator for mosaic augementation

We don't need to access list to generate random index

It makes augmentation slower.

* Update datasets.py

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-03-05 13:06:18 -08:00
Glenn Jocher e931b9da33
Resume with custom anchors fix (#2361)
* Resume with custom anchors fix

* Update train.py
2021-03-03 21:06:36 -08:00
Glenn Jocher a3ecf0fd64
Anchor override (#2350) 2021-03-02 23:08:21 -08:00
Glenn Jocher fe6ebb96bb Created using Colaboratory 2021-03-02 19:20:51 -08:00
Ryan Avery 2c56ad5436
Confusion matrix background axis swap (#2114) 2021-03-02 16:09:52 -08:00
Glenn Jocher ab86cec854
FROM nvcr.io/nvidia/pytorch:21.02-py3 (#2341) 2021-03-02 13:01:59 -08:00
Glenn Jocher fab5085674
EMA bug fix 2 (#2330)
* EMA bug fix 2

* update
2021-03-01 17:13:34 -08:00
Glenn Jocher fd96810518
remove TTA 1 pixel offset (#2325) 2021-02-28 21:14:08 -08:00
Glenn Jocher c2026a5f35
Update Dockerfile install htop (#2320) 2021-02-27 15:55:31 -08:00
Glenn Jocher cd30d838eb
Update test.py (#2319) 2021-02-27 15:28:23 -08:00
Glenn Jocher dfeec198cb
final_epoch EMA bug fix (#2317) 2021-02-27 12:51:33 -08:00
oleg cbd55da5d2
Update yolo.py (#2120)
* Avoid mutable state in Detect

* LoadImages() pathlib update (#2140)

* Unique *.cache filenames fix (#2134)

* fix #2121

* Update test.py

* Update train.py

* Update autoanchor.py

* Update datasets.py

* Update log_dataset.py

* Update datasets.py

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>

* Update train.py test batch_size (#2148)

* Update train.py

* Update loss.py

* Update train.py (#2149)

* Linear LR scheduler option (#2150)

* Linear LR scheduler option

* Update train.py

* Update data-autodownload background tasks (#2154)

* Update get_coco.sh

* Update get_voc.sh

* Update detect.py (#2167)

Without this cv2.imshow opens a window but nothing is visible

* Update requirements.txt (#2173)

* Update utils/datasets.py to support .webp files (#2174)

Simply added 'webp' as an image format to the img_formats array so that webp image files can be used as training data.

* Changed socket port and added timeout (#2176)

* PyTorch Hub results.save('path/to/dir') (#2179)

* YOLOv5 Segmentation Dataloader Updates (#2188)

* Update C3 module

* Update C3 module

* Update C3 module

* Update C3 module

* update

* update

* update

* update

* update

* update

* update

* update

* update

* updates

* updates

* updates

* updates

* updates

* updates

* updates

* updates

* updates

* updates

* update

* update

* update

* update

* updates

* updates

* updates

* updates

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update datasets

* update

* update

* update

* update attempt_downlaod()

* merge

* merge

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* parameterize eps

* comments

* gs-multiple

* update

* max_nms implemented

* Create one_cycle() function

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* GitHub API rate limit fix

* update

* ComputeLoss

* ComputeLoss

* ComputeLoss

* ComputeLoss

* ComputeLoss

* ComputeLoss

* ComputeLoss

* ComputeLoss

* ComputeLoss

* ComputeLoss

* ComputeLoss

* astuple

* epochs

* update

* update

* ComputeLoss()

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* update

* merge

* merge

* merge

* merge

* update

* update

* update

* update

* commit=tag == tags[-1]

* Update cudnn.benchmark

* update

* update

* update

* updates

* updates

* updates

* updates

* updates

* updates

* updates

* update

* update

* update

* update

* update

* mosaic9

* update

* update

* update

* update

* update

* update

* institute cache versioning

* only display on existing cache

* reverse cache exists booleans

* Created using Colaboratory

* YOLOv5 PyTorch Hub results.save() method retains filenames (#2194)

* save results with name

* debug

* save original imgs names

* Update common.py

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>

* TTA augument boxes one pixel shifted in de-flip ud and lr (#2219)

* TTA augument boxes one pixel shifted in de-flip ud and lr

* PEP8 reformat

Co-authored-by: Jaap van de Loosdrecht <jaap.van.de.loosdrecht@nhlstenden.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>

* LoadStreams() frame loss bug fix (#2222)

* Update yolo.py channel array (#2223)

* Add check_imshow() (#2231)

* Add check_imshow()

* Update general.py

* Update general.py

* Update CI badge (#2230)

* Add isdocker() (#2232)

* Add isdocker()

* Update general.py

* Update general.py

* YOLOv5 Hub URL inference bug fix (#2250)

* Update common.py

* Update common.py

* Update common.py

* Improved hubconf.py CI tests (#2251)

* Unified hub and detect.py box and labels plotting (#2243)

* reset head

* Update inference default to multi_label=False (#2252)

* Update inference default to multi_label=False

* bug fix

* Update plots.py

* Update plots.py

* Robust objectness loss balancing (#2256)

* Created using Colaboratory

* Update minimum stride to 32 (#2266)

* Dynamic ONNX engine generation (#2208)

* add: dynamic onnx export

* delete: test onnx inference

* fix dynamic output axis

* Code reduction

* fix: dynamic output axes, dynamic input naming

* Remove fixed axes

Co-authored-by: Shivam Swanrkar <ss8464@nyu.edu>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>

* Update greetings.yml for auto-rebase on PR (#2272)

* Update Dockerfile with apt install zip (#2274)

* FLOPS min stride 32 (#2276)

Signed-off-by: xiaowo1996 <429740343@qq.com>

* Update README.md

* Amazon AWS EC2 startup and re-startup scripts (#2185)

* Amazon AWS EC2 startup and re-startup scripts

* Create resume.py

* cleanup

* Amazon AWS EC2 startup and re-startup scripts (#2282)

* Update train.py (#2290)

* Update train.py

* Update train.py

* Update train.py

* Update train.py

* Create train.py

* Improved model+EMA checkpointing (#2292)

* Enhanced model+EMA checkpointing

* update

* bug fix

* bug fix 2

* always save optimizer

* ema half

* remove model.float()

* model half

* carry ema/model in fp32

* rm model.float()

* both to float always

* cleanup

* cleanup

* Improved model+EMA checkpointing 2 (#2295)

* Fix labels being missed when image extension appears twice in filename (#2300)

* W&B entity support (#2298)

* W&B entity support

* shorten wandb_entity to entity

Co-authored-by: Jan Hajek <jan.hajek@gmail.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>

* Avoid mutable state in Detect

* Update yolo and remove .to(device)

Co-authored-by: Oleg Boiko <oboiko@chegg.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
Co-authored-by: train255 <thanhdd.it@gmail.com>
Co-authored-by: ab-101 <56578530+ab-101@users.noreply.github.com>
Co-authored-by: Transigent <wbdsmith@optusnet.com.au>
Co-authored-by: NanoCode012 <kevinvong@rocketmail.com>
Co-authored-by: Daniel Khromov <danielkhromov@gmail.com>
Co-authored-by: VdLMV <jaap@vdlmv.nl>
Co-authored-by: Jaap van de Loosdrecht <jaap.van.de.loosdrecht@nhlstenden.com>
Co-authored-by: Yann Defretin <kinoute@gmail.com>
Co-authored-by: Aditya Lohia <64709773+aditya-dl@users.noreply.github.com>
Co-authored-by: Shivam Swanrkar <ss8464@nyu.edu>
Co-authored-by: xiaowo1996 <429740343@qq.com>
Co-authored-by: Iden Craven <iden.craven@gmail.com>
Co-authored-by: Jan Hajek <toretak@users.noreply.github.com>
Co-authored-by: Jan Hajek <jan.hajek@gmail.com>
2021-02-26 15:07:40 -08:00
Jan Hajek efa4946d15
W&B entity support (#2298)
* W&B entity support

* shorten wandb_entity to entity

Co-authored-by: Jan Hajek <jan.hajek@gmail.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-02-25 19:18:19 -08:00
Iden Craven a82dce7faa
Fix labels being missed when image extension appears twice in filename (#2300) 2021-02-25 18:05:38 -08:00
Glenn Jocher 71dd2768f2
Improved model+EMA checkpointing 2 (#2295) 2021-02-24 21:03:21 -08:00
Glenn Jocher ec1d8496ba
Improved model+EMA checkpointing (#2292)
* Enhanced model+EMA checkpointing

* update

* bug fix

* bug fix 2

* always save optimizer

* ema half

* remove model.float()

* model half

* carry ema/model in fp32

* rm model.float()

* both to float always

* cleanup

* cleanup
2021-02-24 18:26:46 -08:00
Glenn Jocher ca5b10b759
Update train.py (#2290)
* Update train.py

* Update train.py

* Update train.py

* Update train.py

* Create train.py
2021-02-24 13:31:20 -08:00
Glenn Jocher 0070995bd5
Amazon AWS EC2 startup and re-startup scripts (#2282) 2021-02-24 01:43:59 -08:00
Glenn Jocher d5d275b6e9
Amazon AWS EC2 startup and re-startup scripts (#2185)
* Amazon AWS EC2 startup and re-startup scripts

* Create resume.py

* cleanup
2021-02-23 23:10:14 -08:00
Glenn Jocher 7a6870b81f
Update README.md 2021-02-23 11:27:44 -08:00
xiaowo1996 83dc1b4484
FLOPS min stride 32 (#2276)
Signed-off-by: xiaowo1996 <429740343@qq.com>
2021-02-23 09:38:56 -08:00
Glenn Jocher cc79f3a9ea
Update Dockerfile with apt install zip (#2274) 2021-02-22 22:50:00 -08:00
Glenn Jocher 32dd1614f4
Update greetings.yml for auto-rebase on PR (#2272) 2021-02-22 18:34:07 -08:00
Aditya Lohia 95aefea493
Dynamic ONNX engine generation (#2208)
* add: dynamic onnx export

* delete: test onnx inference

* fix dynamic output axis

* Code reduction

* fix: dynamic output axes, dynamic input naming

* Remove fixed axes

Co-authored-by: Shivam Swanrkar <ss8464@nyu.edu>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-02-21 21:50:44 -08:00
Glenn Jocher e27ca0d845
Update minimum stride to 32 (#2266) 2021-02-21 21:46:42 -08:00