code: def lovasz_hinge(logits, labels, per_image=True, ignore=None):
      
      if per_image:
          loss = mean(lovasz_hinge_flat(*flatten_binary_scores(log.unsqueeze(0), lab.unsqueeze(0), ignore))
                            for log, lab in zip(logits, labels))
      else:
          loss = lovasz_hinge_flat(*flatten_binary_scores(logits, labels, ignore))
      return loss
docs: Binary Lovasz hinge loss
        logits: [B, H, W] Variable, logits at each pixel (between -\infty and +\infty)
        labels: [B, H, W] Tensor, binary ground truth masks (0 or 1)
        per_image: compute the loss per image instead of per batch
        ignore: void class id