admin管理员组

文章数量:1794759

YoloV7改进策略:独家原创,全网首发,复现Drone

摘要

Drone-Yolo在无人机数据集上取得了巨大的成功,mAP0.5指标上取得了显著改进,在VisDrone2019-test上增加了13.4%,在VisDrone2019-val上增加了17.40%。这篇文章我首先复现Drone-Yolo,然后,在Drone-Yolo的基础上加入我自己对小目标检测的改进。

链接:

代码语言:javascript代码运行次数:0运行复制
.2014.3001.5502

YoloV7官方结果

代码语言:javascript代码运行次数:0运行复制
    Class      Images      Labels           P           R      mAP@.5  mAP@.5:.95: 100%|██████████| 15/15 [00:02<00:00,  5.42it/s]
                 all         229        1407       0.979       0.977       0.993       0.736
                 c17         229         131        0.99           1       0.996       0.841
                  c5         229          68       0.962           1       0.996       0.839
          helicopter         229          43       0.964           1       0.988       0.636
                c130         229          85           1       0.997       0.997       0.671
                 f16         229          57           1       0.966       0.996       0.697
                  b2         229           2       0.948           1       0.995       0.647
               other         229          86           1       0.914       0.994       0.562
                 b52         229          65       0.985       0.969        0.98       0.834
                kc10         229          62           1       0.974       0.986       0.823
             command         229          40       0.998           1       0.996       0.798
                 f15         229         123           1       0.979       0.997       0.659
               kc135         229          91       0.988       0.989       0.987       0.679
                 a10         229          27           1       0.599       0.989       0.425
                  b1         229          20       0.994           1       0.997       0.741
                 aew         229          25       0.951           1        0.97       0.769
                 f22         229          17       0.993           1       0.996       0.742
                  p3         229         105           1           1       0.998       0.788
                  p8         229           1       0.921           1       0.995       0.498
                 f35         229          32           1       0.998       0.996        0.62
                 f18         229         125       0.987       0.992       0.995       0.816
                 v22         229          41       0.998           1       0.996       0.719
               su-27         229          31       0.996           1       0.996        0.84
               il-38         229          27       0.994           1       0.995       0.878
              tu-134         229           1       0.866           1       0.995       0.995
               su-33         229           2       0.965           1       0.995       0.647
               an-70         229           2        0.94           1       0.995       0.896
               tu-22         229          98       0.999           1       0.997       0.817

BiC模块

BiC模块模块,有三个输入,一个输出组成,如下图:

我参照YoloV6中的源码,结合YoloV7,对BiC模块做了适当的修改,适应channel的输入和输出,代码如下:

代码语言:javascript代码运行次数:0运行复制
class BiFusion(nn.Module):
    '''BiFusion Block in PAN'''
    def __init__(self, in_channels1,in_channels2,in_channels3, out_channels):
        super().__init__()
        self.cv1 = Conv(in_channels1, out_channels, 1, 1)
        self.cv2 = Conv(in_channels2, out_channels, 1, 1)
        self.cv3 = Conv(in_channels3, out_channels, 1, 1)
        self.cv_out = Conv(out_channels * 3, out_channels, 1, 1)

        self.upsample = ConvTranspose(
            out_channels,
            out_channels,
        )
        self.downsample = Conv(
            out_channels,
            out_channels,
            3,
            2
        )

    def forward(self, x):
        x0 = self.upsample(self.cv1(x[0]))
        x1 = self.cv2(x[1])
        x2 = self.downsample(self.cv3(x[2]))
        x3= self.cv_out(torch.cat((x0, x1, x2), dim=1))
        return x3

改进一:在YoloV7中加入BiC模块

测试结果

代码语言:javascript代码运行次数:0运行复制
               Class      Images      Labels           P           R      mAP@.5  mAP@.5:.95: 100%|██████████| 15/15 [00:02<00:00,  5.58it/s]
                 all         229        1407       0.964       0.972       0.993       0.726
                 c17         229         131       0.987       0.992       0.996       0.823
                  c5         229          68       0.935           1       0.993       0.835
          helicopter         229          43       0.952           1       0.992       0.649
                c130         229          85       0.996           1       0.996       0.673
                 f16         229          57           1       0.965       0.991       0.673
                  b2         229           2       0.928           1       0.995       0.646
               other         229          86           1       0.959       0.987       0.559
                 b52         229          65       0.979       0.985        0.98       0.824
                kc10         229          62       0.993       0.984       0.986       0.832
             command         229          40       0.991           1       0.996        0.79
                 f15         229         123       0.998           1       0.997        0.68
               kc135         229          91       0.989       0.989       0.988       0.705
                 a10         229          27           1       0.711       0.984       0.439
                  b1         229          20       0.984           1       0.996       0.697
                 aew         229          25       0.951           1       0.988       0.794
                 f22         229          17       0.983           1       0.996       0.723
                  p3         229         105        0.98           1       0.998       0.803
                  p8         229           1       0.806           1       0.995       0.697
                 f35         229          32           1       0.947       0.996       0.579
                 f18         229         125       0.979       0.992        0.99       0.809
                 v22         229          41       0.991           1       0.996        0.68
               su-27         229          31       0.988           1       0.996       0.836
               il-38         229          27       0.985           1       0.996       0.818
              tu-134         229           1       0.752           1       0.995       0.896
               su-33         229           2           1       0.732       0.995       0.498
               an-70         229           2       0.888           1       0.995       0.846
               tu-22         229          98       0.997           1       0.997       0.803

改进二:复现Dron-Yolo

测试结果

代码语言:javascript代码运行次数:0运行复制
      Class      Images      Labels           P           R      mAP@.5  mAP@.5:.95: 100%|██████████| 15/15 [00:03<00:00,  4.22it/s]
                 all         229        1407        0.72       0.867        0.74       0.532
                 c17         229         131       0.979       0.977       0.991       0.779
                  c5         229          68       0.888       0.985       0.986       0.821
          helicopter         229          43       0.914       0.837        0.86       0.542
                c130         229          85       0.858       0.965       0.884       0.592
                 f16         229          57       0.891        0.93       0.862       0.585
                  b2         229           2           0           0       0.112      0.0621
               other         229          86       0.857       0.814       0.839       0.471
                 b52         229          65        0.96       0.969       0.969       0.793
                kc10         229          62       0.964       0.968       0.979         0.8
             command         229          40       0.975       0.981       0.995       0.772
                 f15         229         123       0.927       0.911       0.942       0.591
               kc135         229          91        0.97       0.978       0.971       0.644
                 a10         229          27       0.666       0.593       0.602       0.292
                  b1         229          20       0.737        0.95       0.783        0.56
                 aew         229          25       0.761           1       0.829       0.654
                 f22         229          17       0.628       0.941       0.659       0.465
                  p3         229         105       0.946           1       0.977       0.782
                  p8         229           1        0.14           1       0.142      0.0853
                 f35         229          32       0.742       0.629       0.729       0.438
                 f18         229         125       0.913       0.992       0.949       0.759
                 v22         229          41       0.879           1       0.887       0.534
               su-27         229          31       0.857           1       0.857       0.702
               il-38         229          27       0.666           1       0.722       0.545
              tu-134         229           1       0.144           1       0.166       0.149
               su-33         229           2           0           0      0.0553      0.0355
               an-70         229           2       0.255           1       0.284       0.206
               tu-22         229          98       0.926        0.98       0.937       0.713

ViSDrone2019数据集测试结果

代码语言:javascript代码运行次数:0运行复制
  Class      Images      Labels           P           R      mAP@.5  mAP@.5:.95: 100%|██████████| 35/35 [00:25<00:00,  1.35it/s]
                 all         548       38759       0.611       0.523        0.53       0.313
          pedestrian         548        8844       0.686       0.586       0.628       0.297
              people         548        5125       0.655       0.509       0.525       0.207
             bicycle         548        1287       0.451       0.268       0.267       0.118
                 car         548       14064       0.788       0.872        0.88       0.623
                 van         548        1975       0.623       0.537       0.559       0.394
               truck         548         750       0.585       0.491       0.491        0.33
            tricycle         548        1045       0.544       0.404       0.399       0.225
     awning-tricycle         548         532       0.403        0.28       0.229       0.142
                 bus         548         251       0.768       0.621       0.687       0.503
               motor         548        4886        0.61       0.657       0.629       0.293

超越了作者的成绩!有点厉害了!

改进三

测试结果

代码语言:javascript代码运行次数:0运行复制
               Class      Images      Labels           P           R      mAP@.5  mAP@.5:.95: 100%|██████████| 35/35 [00:13<00:00,  2.56it/s]
                 all         548       38759        0.59        0.54       0.533       0.317
          pedestrian         548        8844       0.641       0.613        0.63       0.297
              people         548        5125       0.624       0.514       0.526       0.208
             bicycle         548        1287       0.415       0.274       0.258       0.117
                 car         548       14064       0.763       0.883       0.883       0.625
                 van         548        1975       0.617       0.546       0.555       0.394
               truck         548         750       0.594       0.504       0.489        0.33
            tricycle         548        1045       0.529       0.437       0.418       0.241
     awning-tricycle         548         532       0.375       0.276       0.229       0.148
                 bus         548         251       0.735       0.677       0.704        0.51
               motor         548        4886       0.605       0.674       0.634       0.296

mAP@.5 和mAP@.5:.95都有不同的涨点

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。原始发表:2024-01-01,如有侵权请联系 cloudcommunity@tencent 删除数据mapselfyolo测试

本文标签: YoloV7改进策略独家原创,全网首发,复现Drone