docstr: Display the specified annotations.
  :param anns (array of object): annotations to display
  :return: None
docstr_tok: ["Display","the","specified","annotations",".",":","param","anns","(","array","of","object",")",":","annotations","to","display",":","return",":","None"]
code: def showAnns(self, anns):
      """
      Display the specified annotations.
      :param anns (array of object): annotations to display
      :return: None
      """
      if len(anns) == 0:
          return 0
      if "segmentation" in anns[0] or "keypoints" in anns[0]:
          datasetType = "instances"
      elif "caption" in anns[0]:
          datasetType = "captions"
      else:
          raise Exception("datasetType not supported")
      if datasetType == "instances":
          ax = plt.gca()
          ax.set_autoscale_on(False)
          polygons = []
          color = []
          for ann in anns:
              c = (np.random.random((1, 3)) * 0.6 + 0.4).tolist()[0]
              if "segmentation" in ann:
                  if type(ann["segmentation"]) == list:
                      # polygon
                      for seg in ann["segmentation"]:
                          poly = np.array(seg).reshape(
                              (int(len(seg) / 2), 2)
                          )
                          polygons.append(Polygon(poly))
                          color.append(c)
                  else:
                      # mask
                      t = self.imgs[ann["image_id"]]
                      if type(ann["segmentation"]["counts"]) == list:
                          rle = maskUtils.frPyObjects(
                              [ann["segmentation"]],
                              t["height"],
                              t["width"],
                          )
                      else:
                          rle = [ann["segmentation"]]
                      m = maskUtils.decode(rle)
                      img = np.ones((m.shape[0], m.shape[1], 3))
                      if ann["iscrowd"] == 1:
                          color_mask = (
                              np.array([2.0, 166.0, 101.0]) / 255
                          )
                      if ann["iscrowd"] == 0:
                          color_mask = np.random.random(
                              (1, 3)
                          ).tolist()[0]
                      for i in range(3):
                          img[:, :, i] = color_mask[i]
                      ax.imshow(np.dstack((img, m * 0.5)))
              if "keypoints" in ann and type(ann["keypoints"]) == list:
                  # turn skeleton into zero-based index
                  sks = (
                      np.array(
                          self.loadCats(ann["category_id"])[0][
                              "skeleton"
                          ]
                      )
                      - 1
                  )
                  kp = np.array(ann["keypoints"])
                  x = kp[0::3]
                  y = kp[1::3]
                  v = kp[2::3]
                  for sk in sks:
                      if np.all(v[sk] > 0):
                          plt.plot(x[sk], y[sk], linewidth=3, color=c)
                  plt.plot(
                      x[v > 0],
                      y[v > 0],
                      "o",
                      markersize=8,
                      markerfacecolor=c,
                      markeredgecolor="k",
                      markeredgewidth=2,
                  )
                  plt.plot(
                      x[v > 1],
                      y[v > 1],
                      "o",
                      markersize=8,
                      markerfacecolor=c,
                      markeredgecolor=c,
                      markeredgewidth=2,
                  )
          p = PatchCollection(
              polygons, facecolor=color, linewidths=0, alpha=0.4
          )
          ax.add_collection(p)
          p = PatchCollection(
              polygons, facecolor="none", edgecolors=color, linewidths=2
          )
          ax.add_collection(p)
      elif datasetType == "captions":
          for ann in anns:
              print(ann["caption"])
  
imports: import json
  import time
  import matplotlib.pyplot
  from matplotlib.collections import PatchCollection
  from matplotlib.patches import Polygon
  import numpy
  import copy
  import itertools
  from .None import mask
  import os
  from collections import defaultdict
  import sys
label_desc: Use image node_id 10 for calling the COCO obj's underlying member method code with example usage: obj.showAnns(anns) and returns: int