code: def _draw_umich_gaussian(heatmap, center, radius, k=1):
      """Draw a 2D gaussian heatmap.
  
      Parameters
      ----------
      heatmap : numpy.ndarray
          Heatmap to be write inplace.
      center : tuple of int
          Center of object (h, w).
      radius : type
          The radius of gaussian.
  
      Returns
      -------
      numpy.ndarray
          Drawn gaussian heatmap.
  
      """
      diameter = 2 * radius + 1
      gaussian = _gaussian_2d((diameter, diameter), sigma=diameter / 6)
  
      x, y = int(center[0]), int(center[1])
  
      height, width = heatmap.shape[0:2]
  
      left, right = min(x, radius), min(width - x, radius + 1)
      top, bottom = min(y, radius), min(height - y, radius + 1)
  
      masked_heatmap = heatmap[
          y - top : y + bottom, x - left : x + right
      ]
      masked_gaussian = gaussian[
          radius - top : radius + bottom, radius - left : radius + right
      ]
      if (
          min(masked_gaussian.shape) > 0
          and min(masked_heatmap.shape) > 0
      ):
          np.maximum(
              masked_heatmap, masked_gaussian * k, out=masked_heatmap
          )
      return heatmap
  
file_path: gluon-cv/gluoncv/model_zoo/center_net/target_generator.py
imports: from __future__ import absolute_import
  import numpy
  from mxnet import nd
  from mxnet import gluon
label_desc: Use image node_id 3 for calling a global function with example usage: _draw_umich_gaussian(heatmap, center, radius, k) and returns: heatmap