Skip to content

Commit d849aee

Browse files
Update export format docstrings (ultralytics#6151)
* Update export documentation * Cleanup * Update export.py * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update README.md * Update README.md * Update README.md * Update train.py * Update train.py Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent 4a42b5c commit d849aee

File tree

5 files changed

+85
-48
lines changed

5 files changed

+85
-48
lines changed

README.md

Lines changed: 31 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -62,24 +62,24 @@ See the [YOLOv5 Docs](https://docs.ultralytics.com) for full documentation on tr
6262
<details open>
6363
<summary>Install</summary>
6464

65-
[**Python>=3.6.0**](https://www.python.org/) is required with all
66-
[requirements.txt](https://github.com/ultralytics/yolov5/blob/master/requirements.txt) installed including
67-
[**PyTorch>=1.7**](https://pytorch.org/get-started/locally/):
68-
<!-- $ sudo apt update && apt install -y libgl1-mesa-glx libsm6 libxext6 libxrender-dev -->
65+
Clone repo and install [requirements.txt](https://github.com/ultralytics/yolov5/blob/master/requirements.txt) in a
66+
[**Python>=3.6.0**](https://www.python.org/) environment, including
67+
[**PyTorch>=1.7**](https://pytorch.org/get-started/locally/).
6968

7069
```bash
71-
$ git clone https://github.com/ultralytics/yolov5
72-
$ cd yolov5
73-
$ pip install -r requirements.txt
70+
git clone https://github.com/ultralytics/yolov5 # clone
71+
cd yolov5
72+
pip install -r requirements.txt # install
7473
```
7574

7675
</details>
7776

7877
<details open>
7978
<summary>Inference</summary>
8079

81-
Inference with YOLOv5 and [PyTorch Hub](https://github.com/ultralytics/yolov5/issues/36). Models automatically download
82-
from the [latest YOLOv5 release](https://github.com/ultralytics/yolov5/releases).
80+
Inference with YOLOv5 and [PyTorch Hub](https://github.com/ultralytics/yolov5/issues/36)
81+
. [Models](https://github.com/ultralytics/yolov5/tree/master/models) download automatically from the latest
82+
YOLOv5 [release](https://github.com/ultralytics/yolov5/releases).
8383

8484
```python
8585
import torch
@@ -104,34 +104,38 @@ results.print() # or .show(), .save(), .crop(), .pandas(), etc.
104104
<details>
105105
<summary>Inference with detect.py</summary>
106106

107-
`detect.py` runs inference on a variety of sources, downloading models automatically from
108-
the [latest YOLOv5 release](https://github.com/ultralytics/yolov5/releases) and saving results to `runs/detect`.
107+
`detect.py` runs inference on a variety of sources, downloading [models](https://github.com/ultralytics/yolov5/tree/master/models) automatically from
108+
the latest YOLOv5 [release](https://github.com/ultralytics/yolov5/releases) and saving results to `runs/detect`.
109109

110110
```bash
111-
$ python detect.py --source 0 # webcam
112-
img.jpg # image
113-
vid.mp4 # video
114-
path/ # directory
115-
path/*.jpg # glob
116-
'https://youtu.be/Zgi9g1ksQHc' # YouTube
117-
'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream
111+
python detect.py --source 0 # webcam
112+
img.jpg # image
113+
vid.mp4 # video
114+
path/ # directory
115+
path/*.jpg # glob
116+
'https://youtu.be/Zgi9g1ksQHc' # YouTube
117+
'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream
118118
```
119119

120120
</details>
121121

122122
<details>
123123
<summary>Training</summary>
124124

125-
Run commands below to reproduce results
126-
on [COCO](https://github.com/ultralytics/yolov5/blob/master/data/scripts/get_coco.sh) dataset (dataset auto-downloads on
127-
first use). Training times for YOLOv5s/m/l/x are 2/4/6/8 days on a single V100 (multi-GPU times faster). Use the
128-
largest `--batch-size` your GPU allows (batch sizes shown for 16 GB devices).
125+
The commands below reproduce YOLOv5 [COCO](https://github.com/ultralytics/yolov5/blob/master/data/scripts/get_coco.sh)
126+
results. [Models](https://github.com/ultralytics/yolov5/tree/master/models)
127+
and [datasets](https://github.com/ultralytics/yolov5/tree/master/data) download automatically from the latest
128+
YOLOv5 [release](https://github.com/ultralytics/yolov5/releases). Training times for YOLOv5n/s/m/l/x are
129+
1/2/4/6/8 days on a V100 GPU ([Multi-GPU](https://github.com/ultralytics/yolov5/issues/475) times faster). Use the
130+
largest `--batch-size` possible, or pass `--batch-size -1` for
131+
YOLOv5 [AutoBatch](https://github.com/ultralytics/yolov5/pull/5092). Batch sizes shown for V100-16GB.
129132

130133
```bash
131-
$ python train.py --data coco.yaml --cfg yolov5s.yaml --weights '' --batch-size 64
132-
yolov5m 40
133-
yolov5l 24
134-
yolov5x 16
134+
python train.py --data coco.yaml --cfg yolov5n.yaml --weights '' --batch-size 128
135+
yolov5s 64
136+
yolov5m 40
137+
yolov5l 24
138+
yolov5x 16
135139
```
136140

137141
<img width="800" src="https://user-images.githubusercontent.com/26833433/90222759-949d8800-ddc1-11ea-9fa1-1c97eed2b963.png">
@@ -225,6 +229,7 @@ We are super excited about our first-ever Ultralytics YOLOv5 🚀 EXPORT Competi
225229
### Pretrained Checkpoints
226230

227231
[assets]: https://github.com/ultralytics/yolov5/releases
232+
228233
[TTA]: https://github.com/ultralytics/yolov5/issues/303
229234

230235
|Model |size<br><sup>(pixels) |mAP<sup>val<br>0.5:0.95 |mAP<sup>val<br>0.5 |Speed<br><sup>CPU b1<br>(ms) |Speed<br><sup>V100 b1<br>(ms) |Speed<br><sup>V100 b32<br>(ms) |params<br><sup>(M) |FLOPs<br><sup>@640 (B)
@@ -257,7 +262,6 @@ We love your input! We want to make contributing to YOLOv5 as easy and transpare
257262

258263
<a href="https://github.com/ultralytics/yolov5/graphs/contributors"><img src="https://opencollective.com/ultralytics/contributors.svg?width=990" /></a>
259264

260-
261265
## <div align="center">Contact</div>
262266

263267
For YOLOv5 bugs and feature requests please visit [GitHub Issues](https://github.com/ultralytics/yolov5/issues). For business inquiries or

detect.py

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,26 @@
22
"""
33
Run inference on images, videos, directories, streams, etc.
44
5-
Usage:
6-
$ python path/to/detect.py --weights yolov5s.pt --source 0 # webcam
7-
img.jpg # image
8-
vid.mp4 # video
9-
path/ # directory
10-
path/*.jpg # glob
5+
Usage - sources:
6+
$ python path/to/detect.py --weights yolov5s.pt --source 0 # webcam
7+
img.jpg # image
8+
vid.mp4 # video
9+
path/ # directory
10+
path/*.jpg # glob
1111
'https://youtu.be/Zgi9g1ksQHc' # YouTube
1212
'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream
13+
14+
Usage - formats:
15+
$ python path/to/detect.py --weights yolov5s.pt # PyTorch
16+
yolov5s.torchscript # TorchScript
17+
yolov5s.onnx # ONNX Runtime or OpenCV DNN with --dnn
18+
yolov5s.mlmodel # CoreML (under development)
19+
yolov5s_openvino_model # OpenVINO (under development)
20+
yolov5s_saved_model # TensorFlow SavedModel
21+
yolov5s.pb # TensorFlow protobuf
22+
yolov5s.tflite # TensorFlow Lite
23+
yolov5s_edgetpu.tflite # TensorFlow Edge TPU
24+
yolov5s.engine # TensorRT
1325
"""
1426

1527
import argparse

export.py

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,19 @@
22
"""
33
Export a YOLOv5 PyTorch model to other formats. TensorFlow exports authored by https://github.com/zldrobit
44
5-
Format | Example | `--include ...` argument
6-
--- | --- | ---
7-
PyTorch | yolov5s.pt | -
8-
TorchScript | yolov5s.torchscript | `torchscript`
9-
ONNX | yolov5s.onnx | `onnx`
10-
CoreML | yolov5s.mlmodel | `coreml`
11-
OpenVINO | yolov5s_openvino_model/ | `openvino`
12-
TensorFlow SavedModel | yolov5s_saved_model/ | `saved_model`
13-
TensorFlow GraphDef | yolov5s.pb | `pb`
14-
TensorFlow Lite | yolov5s.tflite | `tflite`
15-
TensorFlow.js | yolov5s_web_model/ | `tfjs`
16-
TensorRT | yolov5s.engine | `engine`
5+
Format | Example | `--include ...` argument
6+
--- | --- | ---
7+
PyTorch | yolov5s.pt | -
8+
TorchScript | yolov5s.torchscript | `torchscript`
9+
ONNX | yolov5s.onnx | `onnx`
10+
CoreML | yolov5s.mlmodel | `coreml`
11+
OpenVINO | yolov5s_openvino_model/ | `openvino`
12+
TensorFlow SavedModel | yolov5s_saved_model/ | `saved_model`
13+
TensorFlow GraphDef | yolov5s.pb | `pb`
14+
TensorFlow Lite | yolov5s.tflite | `tflite`
15+
TensorFlow Edge TPU | yolov5s_edgetpu.tflite | `edgetpu`
16+
TensorFlow.js | yolov5s_web_model/ | `tfjs`
17+
TensorRT | yolov5s.engine | `engine`
1718
1819
Usage:
1920
$ python path/to/export.py --weights yolov5s.pt --include torchscript onnx coreml openvino saved_model tflite tfjs
@@ -27,6 +28,7 @@
2728
yolov5s_saved_model
2829
yolov5s.pb
2930
yolov5s.tflite
31+
yolov5s_edgetpu.tflite
3032
yolov5s.engine
3133
3234
TensorFlow.js:

train.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,17 @@
11
# YOLOv5 🚀 by Ultralytics, GPL-3.0 license
22
"""
3-
Train a YOLOv5 model on a custom dataset
3+
Train a YOLOv5 model on a custom dataset.
4+
5+
Models and datasets download automatically from the latest YOLOv5 release.
6+
Models: https://github.com/ultralytics/yolov5/tree/master/models
7+
Datasets: https://github.com/ultralytics/yolov5/tree/master/data
8+
Tutorial: https://github.com/ultralytics/yolov5/wiki/Train-Custom-Data
49
510
Usage:
6-
$ python path/to/train.py --data coco128.yaml --weights yolov5s.pt --img 640
11+
$ python path/to/train.py --data coco128.yaml --weights yolov5s.pt --img 640 # from pretrained (RECOMMENDED)
12+
$ python path/to/train.py --data coco128.yaml --weights '' --cfg yolov5s.yaml --img 640 # from scratch
713
"""
14+
815
import argparse
916
import math
1017
import os

val.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,19 @@
33
Validate a trained YOLOv5 model accuracy on a custom dataset
44
55
Usage:
6-
$ python path/to/val.py --data coco128.yaml --weights yolov5s.pt --img 640
6+
$ python path/to/val.py --weights yolov5s.pt --data coco128.yaml --img 640
7+
8+
Usage - formats:
9+
$ python path/to/val.py --weights yolov5s.pt # PyTorch
10+
yolov5s.torchscript # TorchScript
11+
yolov5s.onnx # ONNX Runtime or OpenCV DNN with --dnn
12+
yolov5s.mlmodel # CoreML (under development)
13+
yolov5s_openvino_model # OpenVINO (under development)
14+
yolov5s_saved_model # TensorFlow SavedModel
15+
yolov5s.pb # TensorFlow protobuf
16+
yolov5s.tflite # TensorFlow Lite
17+
yolov5s_edgetpu.tflite # TensorFlow Edge TPU
18+
yolov5s.engine # TensorRT
719
"""
820

921
import argparse

0 commit comments

Comments
 (0)