class_docstr: Differentiable Binarization (DB) Loss Function
  args:
      param (dict): the super paramter for DB Loss
code: def forward(self, predicts, labels):
      predict_maps = predicts["maps"]
      (
          label_threshold_map,
          label_threshold_mask,
          label_shrink_map,
          label_shrink_mask,
      ) = labels[1:]
      shrink_maps = predict_maps[:, 0, :, :]
      threshold_maps = predict_maps[:, 1, :, :]
      binary_maps = predict_maps[:, 2, :, :]
  
      loss_shrink_maps = self.bce_loss(
          shrink_maps, label_shrink_map, label_shrink_mask
      )
      loss_threshold_maps = self.l1_loss(
          threshold_maps, label_threshold_map, label_threshold_mask
      )
      loss_binary_maps = self.dice_loss(
          binary_maps, label_shrink_map, label_shrink_mask
      )
      loss_shrink_maps = self.alpha * loss_shrink_maps
      loss_threshold_maps = self.beta * loss_threshold_maps
      # CBN loss
      if "distance_maps" in predicts.keys():
          distance_maps = predicts["distance_maps"]
          cbn_maps = predicts["cbn_maps"]
          cbn_loss = self.bce_loss(
              cbn_maps[:, 0, :, :], label_shrink_map, label_shrink_mask
          )
      else:
          dis_loss = paddle.to_tensor([0.0])
          cbn_loss = paddle.to_tensor([0.0])
  
      loss_all = (
          loss_shrink_maps + loss_threshold_maps + loss_binary_maps
      )
      losses = {
          "loss": loss_all + cbn_loss,
          "loss_shrink_maps": loss_shrink_maps,
          "loss_threshold_maps": loss_threshold_maps,
          "loss_binary_maps": loss_binary_maps,
          "loss_cbn": cbn_loss,
      }
      return losses
  
file_path: PaddleOCR/ppocr/losses/det_db_loss.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import paddle
  from paddle import nn
  from .det_basic_loss import BalanceLoss, MaskL1Loss, DiceLoss
label_desc: Use image node_id 2 for calling the DBLoss obj's underlying member method code with example usage: obj.forward(predicts, labels) and returns: losses