Commit Graph

255 Commits (b53c8ac179247b17ef017a0e266a99047806ef5f)

Author SHA1 Message Date
Glenn Jocher 68e6ab668b
Hub device mismatch bug fix (#1619) 2020-12-06 17:53:38 +01:00
Glenn Jocher 791dadb51c
Pycocotools best.pt after COCO train (#1616)
* Pycocotools best.pt after COCO train

* cleanup
2020-12-06 14:58:33 +01:00
Glenn Jocher 8918e63476
Increase FLOPS robustness (#1608) 2020-12-05 11:41:34 +01:00
Glenn Jocher f010147578
Update matplotlib.use('Agg') tight (#1583)
* Update matplotlib tight_layout=True

* udpate

* udpate

* update

* png to ps

* update

* update
2020-12-02 15:53:16 +01:00
Glenn Jocher 784feae30a
Update matplotlib svg backend (#1580) 2020-12-02 14:05:12 +01:00
Hu Ye 577f298d9b
plot_images() scale bug fix (#1566)
fix bugs in plot_images
2020-12-01 11:29:59 +01:00
Glenn Jocher b6ed1104a6
Daemon thread plotting (#1561)
* Daemon thread plotting

* remove process_batch

* plot after print
2020-11-30 16:44:14 +01:00
Glenn Jocher cff9263490
f.read().strip() (#1551) 2020-11-29 11:59:52 +01:00
Glenn Jocher 9fa7f9f598 f.read().strip() 2020-11-29 11:58:14 +01:00
Glenn Jocher 96a84468b9
Update labels_to_image_weights() (#1545) 2020-11-28 12:25:45 +01:00
Glenn Jocher c9798ae0e1
Update plot_study_txt() (#1533) 2020-11-26 22:18:17 +01:00
Glenn Jocher 0f2057ed33
Targets scaling bug fix (#1529) 2020-11-26 18:33:28 +01:00
Glenn Jocher 2c3efa430b
Mosaic plots bug fix (#1526) 2020-11-26 14:02:22 +01:00
Glenn Jocher 12499f1c01 --image_weights bug fix (#1524) 2020-11-26 13:25:51 +01:00
Glenn Jocher 9728e2b8ae
--image_weights bug fix (#1524) 2020-11-26 11:49:01 +01:00
Glenn Jocher e9a0ae6f19
Cache bug fix (#1513)
* Caching bug fix #1508

* np.zeros((0,5)) x2
2020-11-25 20:33:14 +01:00
yxNONG b3ceffb513
Add QFocalLoss() (#1482)
* Update loss.py

implement the quality focal loss which is a more general case of focal loss
more detail in https://arxiv.org/abs/2006.04388 

In the obj loss (or the case cls loss with label smooth), the targets is no long barely be 0 or 1 (can be 0.7), in this case, the normal focal loss is not work accurately
quality focal loss in behave the same as focal loss when the target is equal to 0 or 1, and work accurately when targets in (0, 1)

example:

targets:
tensor([[0.6225, 0.0000, 0.0000],
        [0.9000, 0.0000, 0.0000],
        [1.0000, 0.0000, 0.0000]])
___________________________
pred_prob:
tensor([[0.6225, 0.2689, 0.1192],
        [0.7773, 0.5000, 0.2227],
        [0.8176, 0.8808, 0.1978]])
____________________________
focal_loss
tensor([[0.0937, 0.0328, 0.0039],
        [0.0166, 0.1838, 0.0199],
        [0.0039, 1.3186, 0.0145]])
______________
qfocal_loss
tensor([[7.5373e-08, 3.2768e-02, 3.9179e-03],
        [4.8601e-03, 1.8380e-01, 1.9857e-02],
        [3.9233e-03, 1.3186e+00, 1.4545e-02]])
 
we can see that targets[0][0] = 0.6255 is almost the same as pred_prob[0][0] = 0.6225, 
the targets[1][0] = 0.9 is greater then pred_prob[1][0] = 0.7773 by 0.1227
however, the focal loss[0][0] = 0.0937 larger then focal loss[1][0] = 0.0166 (which against the purpose of focal loss)

for the quality focal loss , it implement the case of targets not equal to 0 or 1

* Update loss.py
2020-11-25 19:32:27 +01:00
Glenn Jocher 2026d4c5eb Update caching (#1496) 2020-11-24 16:25:21 +01:00
Glenn Jocher bde5d9aaaa Update caching (#1496) 2020-11-24 16:23:00 +01:00
Glenn Jocher 0822cda781 Update caching (#1496) 2020-11-24 16:22:02 +01:00
Glenn Jocher 89c7a5b8dc
Update caching (#1496) 2020-11-24 16:13:04 +01:00
igornishka 44f42b1589
changed prints to logging in utils/datasets (#1315)
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2020-11-24 16:03:19 +01:00
Glenn Jocher 7aeef2dca5
Prevent PR plotting (#1489) 2020-11-24 00:46:01 +01:00
Glenn Jocher 354109c54c Autosplit (#1488) 2020-11-23 18:35:25 +01:00
Glenn Jocher 4798e66fdf
Autosplit (#1488) 2020-11-23 17:18:21 +01:00
Glenn Jocher 0a3ff71ae0
Confusion matrix (#1474)
* initial commit

* add plotting

* matrix to cpu

* bug fix

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* seaborn pandas to requirements.txt

* seaborn pandas to requirements.txt

* update wandb plotting

* remove pandas

* if plots

* if plots

* if plots

* if plots

* if plots

* initial commit

* add plotting

* matrix to cpu

* bug fix

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* update plot

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* seaborn pandas to requirements.txt

* seaborn pandas to requirements.txt

* update wandb plotting

* remove pandas

* if plots

* if plots

* if plots

* if plots

* if plots

* Cat apriori to autolabels

* cleanup
2020-11-23 15:27:14 +01:00
Glenn Jocher 95fa65339f
Cat apriori to autolabels (#1484) 2020-11-23 13:38:47 +01:00
Glenn Jocher 201bafc7cf
Sync train and test iou_thresh (#1465)
* Sync train and test iou_thresh

* Sync train and test iou_thresh

* weights names .lower()

* Notebook update
2020-11-21 12:38:35 +01:00
Glenn Jocher a70e554fc3
Remove redundant downloads mirror (#1461) 2020-11-20 13:10:56 +01:00
Glenn Jocher 394131c2aa
Use torchvision.ops.nms (#1460) 2020-11-20 11:23:36 +01:00
yujun 05a955a3f6
FLOPS computation device bug fix (#1447)
* Update torch_utils.py

fix issue#113 , inputs device should be same with model parameters' device

* Update torch_utils.py

* Update torch_utils.py

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2020-11-19 12:56:20 +01:00
Glenn Jocher 64bce3c822 Update labels.png with rectangles fix (#1432) 2020-11-18 12:27:30 +01:00
Glenn Jocher 1542ccadb2
Update labels.png with rectangles (#1432) 2020-11-18 00:17:33 +01:00
Glenn Jocher 4250f84dfb
Update PR curve (#1428)
* Update PR curve

* legend outside

* list(Path().glob())
2020-11-17 17:29:55 +01:00
Jacobsolawetz 8d2d6d2349
Update img2label_paths() (#1414) 2020-11-17 13:26:06 +01:00
Glenn Jocher f5429260ca
PyTorch Hub and autoShape update (#1415)
* PyTorch Hub and autoShape update

* comment x for imgs

* reduce comment
2020-11-16 23:09:55 +01:00
Glenn Jocher 92c9b72832
Matplotlib AGG backend (#1413) 2020-11-16 16:34:07 +01:00
Glenn Jocher 548a98a391
Recursive directories dataset capability (#1408)
* Recursive directories dataset capability

* x.split('.')[-1]

* f += glob.glob(f"{p}{os.sep}**.*", recursive=True)

* f += glob.glob(str(p / '**.*'), recursive=True)

* remove . from image and vid formats

* .txt to txt

* str(p / '**' / '*.*')
2020-11-16 16:24:57 +01:00
Glenn Jocher 9c91aeae10
W&B logging add hyperparameters (#1399)
* W&B logging add hyperparameters

* hyp bug fix and image logging updates

* if plots and wandb:

* cleanup

* wandb/ gitignore add

* cleanup 2

* cleanup 3

* move wandb import to top of file

* wandb evolve

* update import

* wandb.run.finish()

* default anchors: 3
2020-11-16 13:35:34 +01:00
Glenn Jocher 9f27902368 Improved FLOPS computation (#1398) 2020-11-14 14:48:55 +01:00
Glenn Jocher d8f5fcfe87
Improved FLOPS computation (#1398)
* Improved FLOPS computation

* update comment
2020-11-14 14:39:46 +01:00
Glenn Jocher fe341fa44d
Utils reorganization (#1392)
* Utils reorganization

* Add new utils files

* cleanup

* simplify

* reduce datasets.py

* remove evolve.sh

* loadWebcam cleanup
2020-11-14 11:50:32 +01:00
Glenn Jocher c4addd7761
Unified '/project/name' results saving (#1377)
* Project/name update

* Update ci-testing.yml

* address project with path separator failure mode

* Project/name update

* address project with path separator failure mode

* Update ci-testing.yml

* detect.py default --name bug fix

* missing rstrip PR

* train/exp0 to train/exp
2020-11-12 23:37:46 +01:00
Glenn Jocher 67bf9a974e
Replace 'ground truth' with 'labels' (#1337)
* Replace 'ground truth' with 'labels'

* Using torch... update
2020-11-10 14:15:03 +01:00
Glenn Jocher 19e2482458
PyTorch version to screen and cleanup (#1325)
* Create flatten_recursive() helper function

* cleanup

* print torch version
2020-11-09 12:24:11 +01:00
Glenn Jocher 4821d076e2
Increment train, test, detect runs/ (#1322)
* Increment train, test, detect runs/

* Update ci-testing.yml

* inference/images to data/images

* move images

* runs/exp to runs/train/exp

* update 'results saved to %s' str
2020-11-08 19:39:05 +01:00
Glenn Jocher d3e7778151 imap bug fix 2020-11-07 02:27:31 +01:00
Glenn Jocher 194f16844e Multi-threaded image caching 2020-11-07 02:18:18 +01:00
Glenn Jocher ea7e78cb11
Grid indices overflow bug fix (#1316) 2020-11-06 19:17:50 +01:00
Glenn Jocher fed5d9cdfb
Grid indices overflow bug fix (#1313) 2020-11-06 13:40:11 +01:00