首页IT科技yolov2网络结构图详解(yolov8s网络模型结构图)

yolov2网络结构图详解(yolov8s网络模型结构图)

时间2025-06-20 22:54:38分类IT科技浏览7025
导读:yolov8!!!!...

yolov8!!!!

yolov8!!!!

yolov8!!!!

yolov8!!!!

yolov8真的来了!!!U神出品的yolov8                ,虽然还没正式公布                        ,但是已经放出代码了                。                         。代码有着很强烈的yolov5风格        。

github代码:

https://github.com/ultralytics/assets/commits/v0.0.0

先看看yolov8seg                、det的炼丹                。                         。        。        。                         。                。        。                         。                。 

yolov8s已经达到了0.6ms了。                         。                         。

再看看map::都快卷秃噜皮了。                。                         。        。                。                         。        。        。

具体效果图大家自己看吧         ,下面是链接:

https://wandb.ai/glenn-jocher/YOLOv8?workspace=user- https://test.pypi.org/simple/ultralytics/

先看看ONNX图:这个是带NMS的

网络结构图:

这边可能得要着重说一下这个C2F结构了,大家先看下代码:

class C2f(nn.Module): # CSP Bottleneck with 2 convolutions def __init__(self, c1, c2, n=1, shortcut=False, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion super().__init__() self.c = int(c2 * e) # hidden channels self.cv1 = Conv(c1, 2 * self.c, 1, 1) self.cv2 = Conv((2 + n) * self.c, c2, 1) # optional act=FReLU(c2) self.m = nn.ModuleList(Bottleneck(self.c, self.c, shortcut, g, k=((3, 3), (3, 3)), e=1.0) for _ in range(n)) def forward(self, x): y = list(self.cv1(x).split((self.c, self.c), 1)) y.extend(m(y[-1]) for m in self.m) print(len(y)) return self.cv2(torch.cat(y, 1))

1                         、先进行self.cv1卷积

2        、对cv1卷积之后进行split(此时被分为上下两部分)

3                、extend用于一次性追加另一个序列的多个值(这时候y里面 已经有两个值了        ,假设n=1                        ,那么m里面只有一个bottleneck                 ,进行extend之后y里面有三个值)

4                         、进行cat

5        、进行self.cv2

所以第一步的splite之后的两个值都是参与后面的concat的                         。所以有些画的结构图可能就不太对了                。        。                         。                。。                         。                         。。大家还可以去看下ONNX:

先看下splite有两个outputs:137,138

 再看下concat:有三个输入(137,138,145)

对比一下yolov5:

1        、yolov8是无锚框了

2                         、增加了C2F结构

3                、使用了Task-Aligned Assigner匹配方式                。

4        、Decoupled-Head解耦头

不清楚yolov8的anchor free对小目标怎么样        ,但是我之前训练yolox的对我自己的小目标效果很差                         。如果v8也是一样的话                        ,个人感觉也就是刷sota                 ,没意义了,工业上大多都是小目标                        ,大的目标别说v8                         ,特么的v3也能检测出来        。                。                         。个人觉的还是v5 yyds!!!

        。        。                         。                。        。                         。                。。                         。                         。。                。                         。        。                。                         。

说实话真卷呀!!!!!!!!!!真的快卷不动了!!!学的速度还跟不上别人更新的速度,咋玩呀!!!!!!!!!!!!

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
有没有润色文字的软件(使用文字润色软件让你的文章更加生动有趣)