b站博主你可是处女啊https://space.bilibili.com/21060026/upload/video1、YOLOv8 环境安装miniconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/pypi: https://mirrors.tuna.tsinghua.edu.cn/help/pypi/pytorch: https://pytorch.org/ultralytics: https://github.com/ultralytics/ultralyticsminiconda安装✋创建环境conda create-nyolov8python3.8访问不到国外的网站配置清华源试试conda config--addchannels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main然后conda config--addchannels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r再conda config--setshow_channel_urlsyes把默认源移除conda config--removechannels defaults最后检查conda config--showchannels解决了安装的python版本是3.10建议安装3.8后面标注时出bug可能是这里出错配置源pytorch安装✋选择安装的pytorch版本是1.13.1查看自己电脑配置然后支持cuda的版本最大是12.8所以选择了cuda11.6的版本命令pipinstalltorch1.13.1cu116torchvision0.14.1cu116torchaudio0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116安装pytorch得走国外网络要挂t子不然太慢了。安装ultralyticsyolov8✋从github上下载源码之后在这个源码文件夹内执行源码本地安装也就是安装到python环境里面pip源码安装pipinstall-e.代码可以修改学习使用windows的终端YOLOv8官方文档中文版上线https://docs.ultralytics.com/zh/2、YOLOv8 模型预测模型预测的基本使用fromultralyticsimportYOLO yoloYOLO(./yolov8n.pt,taskdetect)resultyolo(source./ultralytics/assets/bus.jpg)常用的参数讲解参数task做什么任务mode预测训练还是验证model使用哪个模型进行预测source对谁进行检测✋yolo detect predict model./yolov8n.pt source./ultralytics/assets/bus.jpg执行成功了也可以执行文件运行模型⭐️所有可选参数save保存结果结果存在runs文件夹下conf图片的分数低于这个分数直接丢弃该框所以设置得高检测出来的结果会少iou允许框重叠。设置得高结果会多对预测结果进行处理在vscode里面运行.ipynb的要求1、要下载python拓展jupyter拓展2、要在yolo虚拟环境中安装ipykernel命令pip install ipykernel-i https://pypi.tuna.tsinghua.edu.cn/simple3、ipynb 右上角选对内核也就是选择ipynb 用的环境解决了查看结果的详细信息result[0]测试结果 可视化importmatplotlib.pyplotasplt%matplotlib inline plt.imshow(result[0].plot())调整颜色通道importmatplotlib.pyplotasplt%matplotlib inline plt.imshow(result[0].plot()[:,:,::-1])boxes和plot的应用取里面具体的信息result[0].boxes点击text editor查看完整内容取具体的信息并转换成numpy格式result[0].boxes.xywh.cpu().numpy()注意事项3、YOLOv8数据集构建数据准备博主github地址https://github.com/zyds视频在yolov5文件夹里打开视频# 打开视频文件videocv2.VideoCapture(./BVN.mp4)# 读取一帧ret,framevideo.read()ret是否成功打开frame具体的一帧展示结果plt.imshow(frame)转换颜色通道plt.imshow(cv2.cvtColor(frame,cv2.COLOR_BGR2RGB))把图片一个个存下去videocv2.VideoCapture(./BVN.mp4)num0# 计数器save_step30# 间隔帧whileTrue:ret,framevideo.read()ifnotret:breaknum1ifnum%save_step0:cv2.imwrite(./demo_images/str(num).jpg,frame)打开文件夹看一下都截取好了labelimg数据集标注拿到图片之后进行标注使用labalimage进行标注pip install labelimglabelimgview→auto save mode打开自动保存切换数据集格式为yolo一标注就闪退原因LabelImg 和当前环境里的 Qt/PyQt 版本不兼容解决办法1️⃣改源代码不推荐2️⃣新建一个labelimg环境专门做标注创建环境因为换了清华源所以创建时要关掉t子⭕️3.10版本python不可以我下的是3.8的3.9的应该也可以conda create-n labelimg python3.8激活环境conda activate labelimg下载labelimgpip install labelimg标注快捷键w框选d下一张a上一张make sence数据集标注辅助标注工具make sense:https://www.makesense.ai/结果其实是一样的roboflow公开数据集公开数据集roboflowhttps://public.roboflow.com/object-detectionhttps://universe.roboflow.com/以叶片病为例train教模型学习训练用valid上课随堂测验训练过程看效果test期末考试全部训练完才跑不参与训练4、YOLOv8模型训练训练前准备数据集准备✋image放train和val的图片labels放train和val的标签新建一个datasets文件夹把数据集放在里面数据集描述文件可以对已有的描述文件改写一下从以下目录找到描述文件随便复制一个进行改写改写的参数path文件在哪从datasets这个文件夹开始写起train训练集在哪val验证机在哪test测试集在哪name标注一下类别✋path:bvntrain:images/trainval:images/valtest:names:0:mildew1:rose_P012:rose_P02模型训练与常用参数yolo taskdetect modetrain model./yolov8n.ptdatayolo-bvn.yaml epochs30 worker1 batch16mode模式model哪个模型开始训练起data数据集的描述文件epochs训练多少轮workers数据加载子进程Windows 建议设 1batch每批图片数量根据显卡调整我这里调整成8✋报错missing path ‘D:\data\bilibili\yolo\deeplearning\ultralytics‑8.3.163\datasets\bvn\images\val’解决修复 yolo‑bvn.yamlpath 必须写完整绝对路径path:D:/data/bilibili/yolo/ultralytics-main/datasets/bvntrain:images/trainval:images/valtest:names:0:mildew1:rose_P012:rose_P02训练中执行完后会生成一个文件default_copy.yaml就可以把覆盖原有参数的地方写进去训练时只需执行命令yolo cfndefault_copy.yaml训练结果结果保存位置最好的模型和最后一轮的模型试一下效果在bvn文件夹下放了两张照片yolo detect predictmodelD:/data/bilibili/yolo/ultralytics-main/runs/detect/train-4/weights/best.ptsourceD:/data/bilibili/yolov8/bvn/images/val三个类别对照检测结果从网上找了两张玫瑰病害的图片image1/2 D:\data\bilibili\yolov8\bvn\1.webp: 416x6409mildews,9.9ms image2/2 D:\data\bilibili\yolov8\bvn\2.jpg: 640x5441mildew,18.1ms注意事项
