yolov5的val.py输出的map值会随着batch_size的大小变化

parser.add_argument('--task', default='speed', help='train, val, test, speed or study')

在task的参数为’train, val, test时,会默认把图片填充成矩形形状,而在yolov5中,是把一个batch_size中所用的图像填充成相同大小,并填充的大小是根据一个batch_size中所用图像的大小计算的,这导致在batch_size不同时,同一张图像的填充大小不同,从而导致结果有一定的差距。

        if self.rect:
            # Sort by aspect ratio
            s = self.shapes  # wh
            ar = s[:, 1] / s[:, 0]  # aspect ratio
            irect = ar.argsort()
            self.im_files = [self.im_files[i] for i in irect]
            self.label_files = [self.label_files[i] for i in irect]
            self.labels = [self.labels[i] for i in irect]
            self.shapes = s[irect]  # wh
            ar = ar[irect]

            # Set training image shapes
            shapes = [[1, 1]] * nb #nb为图片总数除以batch_size
            for i in range(nb):
                ari = ar[bi 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值