一、验证模型是否添加成功
在根目录下新建一个py文件添加代码:
from ultralytics import YOLO
from ultralytics.utils import ASSETS
CFG = 'xx/ultralytics/ultralytics/cfg\models/v8/yolov8+XX.yaml' ##改进的yaml文件位置##
SOURCE = ASSETS / 'bus.jpg'
def test_model_forward():
"""Test the forward pass of the YOLO model."""
model = YOLO(CFG)
model(source=None, imgsz=32, augment=True)
运行验证 。
二、一些报错
1、当上边代码成功跑通,模型已经添加了改进后的结构,但是训练的时候报错“KeyError:XXX”
是因为跑模型所用的虚拟环境里也有一个ultralytics的软件包,在项目Yolov8里改动的代码,虚拟环境里并没有改,所以训练时候会出现这种找不到key的报错。
解决办法,找到报错的虚拟环境路径一般是xx\xx\lib\site-packages\ultralytics,把这个路径中的ultralytics文件夹替换成在pycharm中修改后的ultralytics文件夹。
二、yolov8版本不同出现报错
作者所有博客中的改进都是在23年11月左右的yolov8版本中进行的,与现在github上的源码有些许不同。
出现TypeError: _predict_once() takes from 2 to 4 positional arguments but 5 were given或者TypeError: list indices must be integers or slices, not list等可能是因为版本不同出现的报错。
解决方法:1找别的博主基于新版本的yolov8改进博客改进,
或者2下载老版本的yolov8源码试试。