香橙派如何使用pip部署ultralytics YOLOv8?

摘要:香橙派pip部署ultralytics YOLOv8 配置部署 cd到桌面或工作目录 cd 工作目录地址 创建虚拟环境 virtualenv --system-site-packages -p usrbinpython3 venv 激
香橙派pip部署ultralytics YOLOv8 配置部署 cd到桌面或工作目录 cd 工作目录地址 创建虚拟环境 virtualenv --system-site-packages -p /usr/bin/python3 venv 激活虚拟环境 source venv/bin/activate 配置pip清华源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple 换了源之后,如遇部分冷门库没有的,则可以通过修改pypi官方库安装 https://pypi.org/simple 安装依赖 pip install timm==0.9.8 thop efficientnet_pytorch==0.7.1 einops grad-cam==1.4.8 dill==0.3.6 albumentations==1.3.1 pytorch_wavelets==1.3.0 安装ultralytics pip install ultralytics 测试 测试yolo命令推理 目前YOLO可在不依赖Python环境的情况下,终端使用yolo单行命令实现全部功能,详见:https://docs.ultralytics.com/usage/cli/ ①先去官网下载官方的预训练模型(yolov8n.pt)和测试图片(bus.jpg),同样将下载的文件放到ultralytics_yolov8目录下。 https://github.com/ultralytics/assets/releases/download/v8.3.0/yolov8n.pt https://ultralytics.com/images/bus.jpg ② 使用yolo单行命令执行简单推理测试(注意前面下载的文件路径) # 第一个参数是指任务[detect, segment, classify] # 第二个参数是模式[train, val, predict, export, track)] # model 参数指向模型文件所在路径 # source 参数指向预测媒体对象文件所在路径 yolo detect predict model=yolov8n.pt source=bus.jpg 测试程序 import cv2 from ultralytics import YOLO from cv2 import getTickCount, getTickFrequency # 加载 YOLOv8 模型 model = YOLO("yolov8n.pt") # 这里选择你训练的模型 # 获取摄像头内容,参数 0 表示使用默认的摄像头 cap = cv2.VideoCapture(0) cap.set(cv2.CAP_PROP_FPS, 30) cap.set(cv2.CAP_PROP_FRAME_WIDTH, 640) cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 480) # 设置适当的缓冲区大小可以减少数据传输的延迟。较小的缓冲区可以减少延迟,但可能会导致数据不连续 cap.set(cv2.CAP_PROP_BUFFERSIZE, 1) cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc(*'MJPG')) while cap.isOpened(): loop_start = getTickCount() success, frame = cap.read() # 读取摄像头的一帧图像 if success: results = model.predict(source=frame) # 对当前帧进行目标检测并显示结果 annotated_frame = results[0].plot() # 中间放自己的显示程序 loop_time = getTickCount() - loop_start total_time = loop_time / (getTickFrequency()) FPS = int(1 / total_time) # 在图像左上角添加FPS文本 fps_text = f"FPS: {FPS:.2f}" font = cv2.FONT_HERSHEY_SIMPLEX font_scale = 1 font_thickness = 2 text_color = (0, 0, 255) # 红色 text_position = (10, 30) # 左上角位置 cv2.putText(annotated_frame, fps_text, text_position, font, font_scale, text_color, font_thickness) cv2.imshow('img', annotated_frame) # 通过按下 'q' 键退出循环 if cv2.waitKey(1) & 0xFF == ord('q'): break cap.release() # 释放摄像头资源 cv2.destroyAllWindows() # 关闭OpenCV窗口 使用在线秒表工具实测情况 左边是笔记本电脑屏幕,右边是香橙派5屏幕 运行后即显示实时识别的界面,无任何优化的情况,目前延时1s左右,fps:1至2帧。 表现得特别卡且延迟较高。 参考资料 香橙派5 RK3588 RKNN开发环境配置 YOLOv8模型转换NPU部署推理 (2024.11)_rk3588 yolov8环境部署-CSDN博客 【香橙派开发板测试】:在黑科技Orange Pi AIpro部署YOLOv8深度学习纤维分割检测模型_香橙派部署yolov8-CSDN博客 在树莓派4B上部署yolov8环境完成高帧率检测任务_yolov8 树莓派-CSDN博客