mirror of
https://github.com/THU-MIG/yolov10.git
synced 2025-07-07 21:57:02 +08:00
update README
This commit is contained in:
parent
22aa8412a7
commit
b70277e940
54
README.md
54
README.md
@ -23,16 +23,16 @@ Over the past years, YOLOs have emerged as the predominant paradigm in the field
|
|||||||
## Notes
|
## Notes
|
||||||
- 2024/05/31: Please use the [exported format](https://github.com/THU-MIG/yolov10?tab=readme-ov-file#export) for benchmark. In the non-exported format, e.g., pytorch, the speed of YOLOv10 is biased because the unnecessary `cv2` and `cv3` operations in the `v10Detect` are executed during inference.
|
- 2024/05/31: Please use the [exported format](https://github.com/THU-MIG/yolov10?tab=readme-ov-file#export) for benchmark. In the non-exported format, e.g., pytorch, the speed of YOLOv10 is biased because the unnecessary `cv2` and `cv3` operations in the `v10Detect` are executed during inference.
|
||||||
- 2024/05/30: We provide [some clarifications and suggestions](https://github.com/THU-MIG/yolov10/issues/136) for detecting smaller objects or objects in the distance with YOLOv10. Thanks to [SkalskiP](https://github.com/SkalskiP)!
|
- 2024/05/30: We provide [some clarifications and suggestions](https://github.com/THU-MIG/yolov10/issues/136) for detecting smaller objects or objects in the distance with YOLOv10. Thanks to [SkalskiP](https://github.com/SkalskiP)!
|
||||||
|
- 2024/05/27: We have updated the [checkpoints](https://github.com/THU-MIG/yolov10/releases/tag/v1.1) with other attributes, like class names and training args, for ease of use.
|
||||||
|
|
||||||
## UPDATES 🔥
|
## UPDATES 🔥
|
||||||
|
- 2024/06/01: Thanks to [NielsRogge](https://github.com/NielsRogge) and [AK](https://x.com/_akhaliq) for hosting the models on the HuggingFace Hub!
|
||||||
- 2024/05/31: Build [yolov10-jetson](https://github.com/Seeed-Projects/jetson-examples/blob/main/reComputer/scripts/yolov10/README.md) docker image by [youjiang](https://github.com/yuyoujiang)!
|
- 2024/05/31: Build [yolov10-jetson](https://github.com/Seeed-Projects/jetson-examples/blob/main/reComputer/scripts/yolov10/README.md) docker image by [youjiang](https://github.com/yuyoujiang)!
|
||||||
- 2024/05/31: Thanks to [mohamedsamirx](https://github.com/mohamedsamirx) for the integration with [BoTSORT, DeepOCSORT, OCSORT, HybridSORT, ByteTrack, StrongSORT using BoxMOT library](https://colab.research.google.com/drive/1-QV2TNfqaMsh14w5VxieEyanugVBG14V?usp=sharing)!
|
- 2024/05/31: Thanks to [mohamedsamirx](https://github.com/mohamedsamirx) for the integration with [BoTSORT, DeepOCSORT, OCSORT, HybridSORT, ByteTrack, StrongSORT using BoxMOT library](https://colab.research.google.com/drive/1-QV2TNfqaMsh14w5VxieEyanugVBG14V?usp=sharing)!
|
||||||
- 2024/05/31: Thanks to [kaylorchen](https://github.com/kaylorchen) for the integration with [rk3588](https://github.com/kaylorchen/rk3588-yolo-demo)!
|
- 2024/05/31: Thanks to [kaylorchen](https://github.com/kaylorchen) for the integration with [rk3588](https://github.com/kaylorchen/rk3588-yolo-demo)!
|
||||||
- 2024/05/30: Thanks to [eaidova](https://github.com/eaidova) for the integration with [OpenVINO™](https://github.com/openvinotoolkit/openvino_notebooks/blob/0ba3c0211bcd49aa860369feddffdf7273a73c64/notebooks/yolov10-optimization/yolov10-optimization.ipynb)!
|
- 2024/05/30: Thanks to [eaidova](https://github.com/eaidova) for the integration with [OpenVINO™](https://github.com/openvinotoolkit/openvino_notebooks/blob/0ba3c0211bcd49aa860369feddffdf7273a73c64/notebooks/yolov10-optimization/yolov10-optimization.ipynb)!
|
||||||
- 2024/05/29: Add the gradio demo for running the models locally. Thanks to [AK](https://x.com/_akhaliq)!
|
- 2024/05/29: Add the gradio demo for running the models locally. Thanks to [AK](https://x.com/_akhaliq)!
|
||||||
- 2024/05/27: Thanks to [sujanshresstha](sujanshresstha) for the integration with [DeepSORT](https://github.com/sujanshresstha/YOLOv10_DeepSORT.git)!
|
- 2024/05/27: Thanks to [sujanshresstha](sujanshresstha) for the integration with [DeepSORT](https://github.com/sujanshresstha/YOLOv10_DeepSORT.git)!
|
||||||
- 2024/05/27: We have updated the [checkpoints](https://github.com/THU-MIG/yolov10/releases/tag/v1.1) with other attributes, like class names, for ease of use.
|
|
||||||
- 2024/05/26: Thanks to [CVHub520](https://github.com/CVHub520) for the integration into [X-AnyLabeling](https://github.com/CVHub520/X-AnyLabeling)!
|
- 2024/05/26: Thanks to [CVHub520](https://github.com/CVHub520) for the integration into [X-AnyLabeling](https://github.com/CVHub520/X-AnyLabeling)!
|
||||||
- 2024/05/26: Thanks to [DanielSarmiento04](https://github.com/DanielSarmiento04) for integrate in [c++ | ONNX | OPENCV](https://github.com/DanielSarmiento04/yolov10cpp)!
|
- 2024/05/26: Thanks to [DanielSarmiento04](https://github.com/DanielSarmiento04) for integrate in [c++ | ONNX | OPENCV](https://github.com/DanielSarmiento04/yolov10cpp)!
|
||||||
- 2024/05/25: Add [Transformers.js demo](https://huggingface.co/spaces/Xenova/yolov10-web) and onnx weights(yolov10[n](https://huggingface.co/onnx-community/yolov10n)/[s](https://huggingface.co/onnx-community/yolov10s)/[m](https://huggingface.co/onnx-community/yolov10m)/[b](https://huggingface.co/onnx-community/yolov10b)/[l](https://huggingface.co/onnx-community/yolov10l)/[x](https://huggingface.co/onnx-community/yolov10x)). Thanks to [xenova](https://github.com/xenova)!
|
- 2024/05/25: Add [Transformers.js demo](https://huggingface.co/spaces/Xenova/yolov10-web) and onnx weights(yolov10[n](https://huggingface.co/onnx-community/yolov10n)/[s](https://huggingface.co/onnx-community/yolov10s)/[m](https://huggingface.co/onnx-community/yolov10m)/[b](https://huggingface.co/onnx-community/yolov10b)/[l](https://huggingface.co/onnx-community/yolov10l)/[x](https://huggingface.co/onnx-community/yolov10x)). Thanks to [xenova](https://github.com/xenova)!
|
||||||
@ -71,17 +71,56 @@ python app.py
|
|||||||
yolo val model=yolov10n/s/m/b/l/x.pt data=coco.yaml batch=256
|
yolo val model=yolov10n/s/m/b/l/x.pt data=coco.yaml batch=256
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Or
|
||||||
|
```python
|
||||||
|
from ultralytics import YOLOv10
|
||||||
|
|
||||||
|
model = YOLOv10('yolov10{n/s/m/b/l/x}.pt')
|
||||||
|
# or
|
||||||
|
model = YOLOv10.from_pretrained('jameslahm/yolov10{n/s/m/b/l/x}.pt')
|
||||||
|
|
||||||
|
model.val(data='coco.yaml', batch=256)
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
## Training
|
## Training
|
||||||
```
|
```
|
||||||
yolo detect train data=coco.yaml model=yolov10n/s/m/b/l/x.yaml epochs=500 batch=256 imgsz=640 device=0,1,2,3,4,5,6,7
|
yolo detect train data=coco.yaml model=yolov10n/s/m/b/l/x.yaml epochs=500 batch=256 imgsz=640 device=0,1,2,3,4,5,6,7
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Or
|
||||||
|
```python
|
||||||
|
from ultralytics import YOLOv10
|
||||||
|
|
||||||
|
model = YOLOv10()
|
||||||
|
# If you want to finetune the model with pretrained weights, you could load the
|
||||||
|
# pretrained weights like below
|
||||||
|
# model = YOLOv10('yolov10{n/s/m/b/l/x}.pt')
|
||||||
|
# Or
|
||||||
|
# model = YOLOv10.from_pretrained('jameslahm/yolov10{n/s/m/b/l/x}.pt')
|
||||||
|
|
||||||
|
model.train(data='coco.yaml', epochs=500, batch=256, imgsz=640)
|
||||||
|
# Note that you can upload your trained model to HuggingFace Hub like below
|
||||||
|
# model.push_to_hub("reponame")
|
||||||
|
```
|
||||||
|
|
||||||
## Prediction
|
## Prediction
|
||||||
Note that a smaller confidence threshold can be set to detect smaller objects or objects in the distance. Please refer to [here](https://github.com/THU-MIG/yolov10/issues/136) for details.
|
Note that a smaller confidence threshold can be set to detect smaller objects or objects in the distance. Please refer to [here](https://github.com/THU-MIG/yolov10/issues/136) for details.
|
||||||
```
|
```
|
||||||
yolo predict model=yolov10n/s/m/b/l/x.pt
|
yolo predict model=yolov10n/s/m/b/l/x.pt
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Or
|
||||||
|
```python
|
||||||
|
from ultralytics import YOLOv10
|
||||||
|
|
||||||
|
model = YOLOv10('yolov10{n/s/m/b/l/x}.pt')
|
||||||
|
# or
|
||||||
|
model = YOLOv10.from_pretrained('jameslahm/yolov10{n/s/m/b/l/x}.pt')
|
||||||
|
|
||||||
|
model.predict()
|
||||||
|
```
|
||||||
|
|
||||||
## Export
|
## Export
|
||||||
```
|
```
|
||||||
# End-to-End ONNX
|
# End-to-End ONNX
|
||||||
@ -97,6 +136,17 @@ trtexec --onnx=yolov10n/s/m/b/l/x.onnx --saveEngine=yolov10n/s/m/b/l/x.engine --
|
|||||||
yolo predict model=yolov10n/s/m/b/l/x.engine
|
yolo predict model=yolov10n/s/m/b/l/x.engine
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Or
|
||||||
|
```python
|
||||||
|
from ultralytics import YOLOv10
|
||||||
|
|
||||||
|
model = YOLOv10('yolov10{n/s/m/b/l/x}.pt')
|
||||||
|
# or
|
||||||
|
model = YOLOv10.from_pretrained('jameslahm/yolov10{n/s/m/b/l/x}.pt')
|
||||||
|
|
||||||
|
model.export(...)
|
||||||
|
```
|
||||||
|
|
||||||
## Acknowledgement
|
## Acknowledgement
|
||||||
|
|
||||||
The code base is built with [ultralytics](https://github.com/ultralytics/ultralytics) and [RT-DETR](https://github.com/lyuwenyu/RT-DETR).
|
The code base is built with [ultralytics](https://github.com/ultralytics/ultralytics) and [RT-DETR](https://github.com/lyuwenyu/RT-DETR).
|
||||||
|
Loading…
x
Reference in New Issue
Block a user