admin管理员组文章数量:1794759
YoloV8改进策略:SPD
摘要
SPD-Conv是一种新的构建块,用于替代现有的CNN体系结构中的步长卷积和池化层。它由一个空间到深度(SPD)层和一个非步长卷积(Conv)层组成。
空间到深度(SPD)层的作用是将输入特征图的每个空间维度降低到通道维度,同时保留通道内的信息。这可以通过将输入特征图的每个像素或特征映射到一个通道来实现。在这个过程中,空间维度的大小会减小,而通道维度的大小会增加。
非步长卷积(Conv)层是一种标准的卷积操作,它在SPD层之后进行。与步长卷积不同,非步长卷积不会在特征图上移动,而是对每个像素或特征映射进行卷积操作。这有助于减少在SPD层中可能出现的过度下采样问题,并保留更多的细粒度信息。
SPD-Conv的组合方式是将SPD层和Conv层串联起来。具体来说,输入特征图首先通过SPD层进行转换,然后输出结果再通过Conv层进行卷积操作。这种组合方式可以在不丢失信息的情况下减少空间维度的尺寸,同时保留通道内的信息,有助于提高CNN对低分辨率图像和小型物体的检测性能。
总结起来,SPD-Conv是一种新的构建块,旨在解决现有CNN体系结构中步长卷积和池化层的问题。它由一个空间到深度(SPD)层和一个非步长卷积(Conv)层组成,能够提高模型对低分辨率图像和小型物体的检测性能,并降低对“良好质量”输入的依赖。
优势
将SPD-Conv应用于YOLO v5和ResNet创建的新CNN架构有以下优势:
- 提高了模型对低分辨率图像和小型物体的检测性能。
- 降低了对“良好质量”输入的依赖。
具体的改进效果如下:
- 在COCO-2017数据集上,使用YOLOv5-SPD相比原始的YOLOv5在AP和top-1准确率上分别提高了1.2%和0.7%。
- 在Tiny ImageNet数据集上,使用ResNet18-SPD相比原始的ResNet18在top-1准确率上提高了1.1%。
- 在CIFAR-10数据集上,使用ResNet50-SPD相比原始的ResNet50在top-1准确率上提高了0.6%。
YOLOv5-spd-n | 31.0 | 16.0 | 2.2 | 7.3 |
YOLOv5-spd-s | 40.0 | 23.5 | 8.7 | 7.3 |
YOLOv5-spd-m | 46.5 | 30.3 | 24.6 | 8.4 |
YOLOv5-spd-l | 48.5 | 32.4 | 52.7 | 10.3 |
这些改进主要得益于SPD-Conv消除了步长卷积和池化层,保留了更多的信息,使得模型能够更好地学习特征表示。此外,SPD-Conv是一种通用的构建块,可以很容易地应用于大多数甚至所有CNN体系结构。
Yolov8官方结果
代码语言:javascript代码运行次数:0运行复制YOLOv8l summary (fused): 268 layers, 43631280 parameters, 0 gradients, 165.0 GFLOPs
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 29/29 [
all 230 1412 0.922 0.957 0.986 0.737
c17 230 131 0.973 0.992 0.995 0.825
c5 230 68 0.945 1 0.995 0.836
helicopter 230 43 0.96 0.907 0.951 0.607
c130 230 85 0.984 1 0.995 0.655
f16 230 57 0.955 0.965 0.985 0.669
b2 230 2 0.704 1 0.995 0.722
other 230 86 0.903 0.942 0.963 0.534
b52 230 70 0.96 0.971 0.978 0.831
kc10 230 62 0.999 0.984 0.99 0.847
command 230 40 0.97 1 0.995 0.811
f15 230 123 0.891 1 0.992 0.701
kc135 230 91 0.971 0.989 0.986 0.712
a10 230 27 1 0.555 0.899 0.456
b1 230 20 0.972 1 0.995 0.793
aew 230 25 0.945 1 0.99 0.784
f22 230 17 0.913 1 0.995 0.725
p3 230 105 0.99 1 0.995 0.801
p8 230 1 0.637 1 0.995 0.597
f35 230 32 0.939 0.938 0.978 0.574
f18 230 125 0.985 0.992 0.987 0.817
v22 230 41 0.983 1 0.995 0.69
su-27 230 31 0.925 1 0.995 0.859
il-38 230 27 0.972 1 0.995 0.811
tu-134 230 1 0.663 1 0.995 0.895
su-33 230 2 1 0.611 0.995 0.796
an-70 230 2 0.766 1 0.995 0.73
tu-22 230 98 0.984 1 0.995 0.831
Speed: 0.2ms preprocess, 3.8ms inference, 0.0ms loss, 0.8ms postprocess per image
测试结果
代码语言:javascript代码运行次数:0运行复制YOLOv8l summary (fused): 275 layers, 46850736 parameters, 0 gradients, 272.3 GFLOPs
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 15/15 [00:03<00:00, 4.09it/s]
all 230 1412 0.978 0.963 0.989 0.744
c17 230 131 0.992 0.987 0.995 0.815
c5 230 68 0.939 0.985 0.994 0.83
helicopter 230 43 0.977 0.968 0.974 0.635
c130 230 85 0.986 1 0.995 0.69
f16 230 57 0.977 0.93 0.983 0.677
b2 230 2 0.919 1 0.995 0.623
other 230 86 0.974 0.888 0.966 0.55
b52 230 70 0.983 0.971 0.982 0.834
kc10 230 62 0.998 0.984 0.989 0.838
command 230 40 0.995 1 0.995 0.808
f15 230 123 0.992 0.98 0.994 0.693
kc135 230 91 0.988 0.989 0.981 0.706
a10 230 27 1 0.453 0.946 0.465
b1 230 20 0.983 0.95 0.99 0.775
aew 230 25 0.952 1 0.995 0.801
f22 230 17 0.987 1 0.995 0.734
p3 230 105 1 0.975 0.995 0.807
p8 230 1 0.885 1 0.995 0.796
f35 230 32 0.969 0.962 0.991 0.633
f18 230 125 0.984 0.972 0.99 0.824
v22 230 41 0.992 1 0.995 0.719
su-27 230 31 0.993 1 0.995 0.838
il-38 230 27 0.992 1 0.995 0.841
tu-134 230 1 0.956 1 0.995 0.895
su-33 230 2 0.994 1 0.995 0.697
an-70 230 2 1 1 0.995 0.734
tu-22 230 98 0.998 1 0.995 0.834
Speed: 0.2ms preprocess, 10.8ms inference, 0.0ms loss, 0.8ms postprocess per image
相比官方的模型,有一定的提升,参数量也上升了。由于数据集的小目标数量不多,分数上升并不明显。
代码和文章:
.2014.3001.5502
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。原始发表:2023-10-03,如有侵权请联系 cloudcommunity@tencent 删除性能测试架构模型数据本文标签: YoloV8改进策略SPD
版权声明:本文标题:YoloV8改进策略:SPD 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1754688547a1705228.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论