Tencent / ncnn

ncnn is a high-performance neural network inference framework optimized for the mobile platform
Other
20.58k stars 4.18k forks source link

support yolov5 v7.0 to convert ncnn #4535

Open NEUdeep opened 1 year ago

NEUdeep commented 1 year ago

v6.0 is ok, v7.0 not

nihui commented 1 year ago

refer https://github.com/Tencent/ncnn/issues/4488#issuecomment-1434299765

nihui commented 1 year ago

https://github.com/Tencent/ncnn/discussions/4541

NEUdeep commented 1 year ago

4541

Great work! I will check it now.

glenn-jocher commented 1 year ago

@NEUdeep I have great news 😃! I've recently added official support for Ultralytics YOLOv8 NCNN export ✅ in PR https://github.com/ultralytics/ultralytics/pull/3529 with the help of @nihui which is part of ultralytics==8.0.129. NCNN works for all tasks including Detect, Segment, Pose and Classify.

You can now export with CLI:

yolo export model=yolov8n.pt format=ncnn

or Python:

from ultralytics import YOLO

# Create a model
model = YOLO('yolov8n.pt')

# Export the model to NCNN with arguments
model.export(format='ncnn', half=True, imgsz=640)

Output is a yolov8n_ncnn_model/ directory containing model.bin, model.param and metadata.yaml, along with extra PNNX files. For details see https://github.com/pnnx/pnnx README.

To get this update:

Please let us know if NCNN export is working correctly for you, and don't hesitate to report any other issues you find or feature requests you may have. Happy training with YOLOv8 🚀!