yolov8 除了目标检测之外,还有实例分割功能,
这里解读检测和分割代码。
先上一张结构图,这个图里没有分割模块,后面会在代码里说明分割模块。
本篇解读红色框内的部分。
可以看到每个模块右边都有一个数字:0,1,…
这个数字是模块的顺序编号,按0,1,…,21的顺序进行,而且Concat模块会指定cat哪几个序号的层,
如果搞不清Concat中指定的序号到底是哪一层,就根据这个编号找。
C2f 层具体是什么结构参考这里
现在开始读入图像,图像size按图中的(640, 640, 3).
预处理没啥特别的,仅是 / 255.
进入yolov8/ultralytics/nn/autobackend.py
.
class AutoBackend(nn.Module):