Official Support β for Ultralytics YOLOv8 NCNN export
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:
-
Git β Run
git pullfrom within yourultralytics/directory or rungit clone https://github.com/ultralytics/ultralyticsagain -
Pip β Update with
pip install -U ultralytics -
Notebooks β Check out the updated notebooks
-
Docker β Run
sudo docker pull ultralytics/ultralytics:latestto update your image
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 π!
@nihui @triple-Mu How to use the officially exported yolov8-model file to complete inference tasks, using ncnn in c++? the tasks including Detect, Segment, Pose and Classify. could you provide code examples?
i have seen this link,but not try code demo
could you provide an example for yolov8-pose inference on ncnn in pythonοΌ
@13185742215 yes you can simply do this:
pip install ultralytics
yolo export format=ncnn model=yolov8n-pose.pt
yolo predict model=yolov8n-pose_ncnn_model source=path/to/image.jpg
The NCNN exported YOLOv8 models can be used just like a PyTorch model with the ultralytics package. See https://docs.ultralytics.com/modes/predict/ for other ways to run inference.
Hope there are examples of ncnn in c++.
I see there is no yolov8.cpp in the examples folder, it would be nice an example that uses utralitics export tool models. I have found some examples in the internet, but none of them are working with ultralitics export models!
@palevi67 @trlsmax try https://github.com/wkt/YoloMobile
yolov8 example https://github.com/Tencent/ncnn/pull/5506
hi, yolov8 examples are updated with full support for detection, segmentation, classification, pose estimation and obb https://github.com/Tencent/ncnn/tree/master/examples
android demo https://github.com/nihui/ncnn-android-yolov8
detailed instruction (zh) https://zhuanlan.zhihu.com/p/16030630352
Hi...I am still not available to get my custom model to work with ncnn...there are working examples but not for custom models...pt to onnx to ncnn...pt works, onnx works...but I can't get ncnn to work...I use label-studio and yolov8 for model...