Yolov8_Efficient
Simple and efficient use for yolov8
About
This is an unofficial repository maintained by independent developers for learning and communication based on the ultralytics v8 Weights and ultralytics Project. If you have more questions and ideas, please feel free to discuss them together. In addition, if ultralytics releases the latest yolov8 warehouse, it is suggested to give priority to the official one.
Performance
- wandb train log: [log](https://wandb.ai/glenn-jocher/YOLOv8 https://wandb.ai/glenn-jocher/YOLOv8)
New's
- ... ...
- 2023/01/09 - add val.py and fix some error
- 2023/01/07 - fix some error and warning
- 2023/01/06 - add train.py, detect.py and README.md
- 2023/01/06 - Create and Init a new repository
Quickstart
-
Documentation
1. CLI
To simply use the latest Ultralytics YOLO models
yolo task=detect mode=train model=yolov8n.yaml args=...
classify predict yolov8n-cls.yaml args=...
segment val yolov8n-seg.yaml args=...
export yolov8n.pt format=onnx
2. Python SDK
To use pythonic interface of Ultralytics YOLO model
from ultralytics import YOLO
model = YOLO("yolov8n.yaml") # create a new model from scratch
model = YOLO(
"yolov8n.pt"
) # load a pretrained model (recommended for best training results)
results = model.train(data="coco128.yaml", epochs=100, imgsz=640, ...)
results = model.val()
results = model.predict(source="bus.jpg")
success = model.export(format="onnx")
If you're looking to modify YOLO for R&D or to build on top of it, refer to Using Trainer Guide on our docs.
Pretrained Checkpoints
Model | size (pixels) | mAPval 50-95 | mAPval 50 | Speed CPU b1 (ms) | Speed V100 b1 (ms) | Speed V100 b32 (ms) | params (M) | FLOPs @640 (B) |
---|---|---|---|---|---|---|---|---|
yolov8n | 640 | - | - | - | - | - | - | - |
yolov8n-seg | 640 | - | - | - | - | - | - | - |
yolov8s | - | - | - | - | - | - | ||
yolov8-seg | - | - | - | - | - | - | - | - |
yolov8m | - | - | - | - | - | - | - | - |
yolov8m-seg | - | - | - | - | - | - | - | - |
yolov8l | - | - | - | - | - | - | - | - |
yolov8l-seg | - | - | - | - | - | - | - | - |
yolov8x | - | - | - | - | - | - | - | - |
yolov8x-seg | - | - | - | - | - | - | - | - |
- TODO:Model testing and validation in progress
Install
pip install
pip install ultralytics
Development
git clone [email protected]:isLinXu/YOLOv8_Efficient.git
cd YOLOv8_Efficient
cd ultralytics-master
pip install -e .
Usage
Train
- Single-GPU training:
python train.py --data coco128.yaml --weights weights/yolov8ns.pt --img 640 # from pretrained (recommended)
python train.py --data coco128.yaml --weights '' --cfg yolov8ns.yaml --img 640 # from scratch
Use IDE Pycharm
- Multi-GPU DDP training:
python -m torch.distributed.run --nproc_per_node 4 --master_port 1 train.py --data coco128.yaml --weights yolov8ns.pt --img 640 --device 0,1,2,3
detect
python detect.py --weights yolov8s.pt --source 0 # webcam
img.jpg # image
vid.mp4 # video
screen # screenshot
path/ # directory
list.txt # list of images
list.streams # list of streams
'path/*.jpg' # glob
'https://youtu.be/Zgi9g1ksQHc' # YouTube
'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream
Use IDE Pycharm
val
- i.e coco128:
Usage:
python val.py --weights yolov8n.pt --data coco128.yaml --img 640
Usage - formats:
python val.py --weights yolov8s.pt # PyTorch
yolov8s.torchscript # TorchScript
yolov8s.onnx # ONNX Runtime or OpenCV DNN with --dnn
yolov8s_openvino_model # OpenVINO
yolov8s.engine # TensorRT
yolov8s.mlmodel # CoreML (macOS-only)
yolov8s_saved_model # TensorFlow SavedModel
yolov8s.pb # TensorFlow GraphDef
yolov8s.tflite # TensorFlow Lite
yolov8s_edgetpu.tflite # TensorFlow Edge TPU
yolov8s_paddle_model # PaddlePaddle
标签:yaml,Efficient,py,yolov8n,yolov8s,--,开源,model,YOLOv8 From: https://www.cnblogs.com/isLinXu/p/17038363.html