From 22d2be095a5f4b3aaeeee482cde4e7538d9cb22d Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Mon, 21 Mar 2022 18:30:34 +0100 Subject: [PATCH 1/2] Update loss.py with `if self.gr < 1:` --- utils/loss.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/utils/loss.py b/utils/loss.py index 0f0137817955..3c390cb407e5 100644 --- a/utils/loss.py +++ b/utils/loss.py @@ -139,11 +139,13 @@ def __call__(self, p, targets): # predictions, targets lbox += (1.0 - iou).mean() # iou loss # Objectness - score_iou = iou.detach().clamp(0).type(tobj.dtype) + iou = iou.detach().clamp(0).type(tobj.dtype) if self.sort_obj_iou: - sort_id = torch.argsort(score_iou) - b, a, gj, gi, score_iou = b[sort_id], a[sort_id], gj[sort_id], gi[sort_id], score_iou[sort_id] - tobj[b, a, gj, gi] = (1.0 - self.gr) + self.gr * score_iou # iou ratio + j = torch.argsort(iou) + b, a, gj, gi, iou = b[j], a[j], gj[j], gi[j], iou[j] + if self.gr < 1: + iou = (1.0 - self.gr) + self.gr * iou + tobj[b, a, gj, gi] = iou # iou ratio # Classification if self.nc > 1: # cls loss (only if multiple classes) From c71ad70eec4163de8973d478fc68e74336b7a3fa Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Mon, 21 Mar 2022 18:32:24 +0100 Subject: [PATCH 2/2] Update loss.py --- utils/loss.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/loss.py b/utils/loss.py index 3c390cb407e5..b49cc7f66e66 100644 --- a/utils/loss.py +++ b/utils/loss.py @@ -141,7 +141,7 @@ def __call__(self, p, targets): # predictions, targets # Objectness iou = iou.detach().clamp(0).type(tobj.dtype) if self.sort_obj_iou: - j = torch.argsort(iou) + j = iou.argsort() b, a, gj, gi, iou = b[j], a[j], gj[j], gi[j], iou[j] if self.gr < 1: iou = (1.0 - self.gr) + self.gr * iou