点击上方蓝字关注我们
微信公众号:OpenCV学堂
关注获取更多计算机视觉与深度学习知识
数据集说明
模型训练
pip install ultralytics
YOLOv8n 训练命令行
yolo train data=nut_dataset.yaml model=yolov8n.pt epochs=25 batch=4
YOLO11n 训练命令行
yolo train data=nut_dataset.yaml model=yolo11n.pt epochs=25 batch=4
结果对比
yolo export model=nut_yolo8_best.pt format=onnx
yolo export model=nut_yolo11_best.pt format=onnx
执行推理运行YOLOv8
执行推理运行YOLO11
YOLOv8、YOLO11 ONNX格式模型的OpenVINO C++ 推理结果比较
cv::Mat frame = cv::imread("D:/python/my_yolov8_train_demo/31.png");
std::vector
results;
std::shared_ptr
detector(new YOLO11OpenVINODetector()); detector->initConfig("D:/python/my_yolov8_train_demo/nut_best.onnx", 0.25, 640, 640, false);
detector->detect(frame, results);
for (YOLODetBox dr : results) {
cv::Rect box = dr.box;
cv::putText(frame, cv::format("%s %f",classNames[dr.classId], dr.score), cv::Point(box.tl().x, box.tl().y - 10), cv::FONT_HERSHEY_SIMPLEX, .5, cv::Scalar(0, 0, 0));
}
cv::imshow("YOLO11 对象检测 + OpenVINO2023", frame);
cv::imwrite("D:/result.jpg", frame);
cv::waitKey(0);
cv::destroyAllWindows();
return 0;
YOLOv8推理
推荐阅读
OpenCV4.8+YOLOv8对象检测C++推理演示
ZXING+OpenCV打造开源条码检测应用
攻略 | 学习深度学习只需要三个月的好方法
三行代码实现 TensorRT8.6 C++ 深度学习模型部署
实战 | YOLOv8+OpenCV 实现DM码定位检测与解析
对象检测边界框损失 – 从IOU到ProbIOU
初学者必看 | 学习深度学习的五个误区