YOLOV5改进:添加Wiseiou,有效涨点

 以YOLOV5-7.0代码为基础进行更改

1.将utils/metrics.py中的def bbox_iou函数替换为如下代码

class WIoU_Scale:
    ''' monotonous: {
            None: origin v1
            True: monotonic FM v2
            False: non-monotonic FM v3
        }
        momentum: The momentum of running mean'''

    iou_mean = 1.
    monotonous = False  #WIoU一共有三种,该参数为False,采用的V3;该参数为True,采用的V2;该参数为None,采用的V1;
    _momentum = 1 - 0.5 ** (1 / 7000)
    _is_train = True

    def __init__(self, iou):
        self.iou = iou
        self._update(self)

    @classmethod
    def _update(cls, self):
        if cls._is_train: cls.iou_mean = (1 - cls._momentum) * cls.iou_mean + \
           

猜你喜欢

转载自blog.csdn.net/m0_51530640/article/details/131609533