code: def test_eval_instance_segmentation_voc(self):
      pred_masks = self.result["masks"]
      pred_labels = self.result["labels"]
      pred_scores = self.result["scores"]
  
      gt_masks = self.dataset["masks"]
      gt_labels = self.dataset["labels"]
  
      result = eval_instance_segmentation_voc(
          pred_masks,
          pred_labels,
          pred_scores,
          gt_masks,
          gt_labels,
          use_07_metric=True,
      )
  
      # calculated from original python code
      expected = [
          0.159091,
          0.945455,
          0.679545,
          0.378293,
          0.430303,
          1.000000,
          0.581055,
          0.905195,
          0.415757,
          0.909091,
          1.000000,
          0.697256,
          0.856061,
          0.681818,
          0.793274,
          0.362141,
          0.948052,
          0.545455,
          0.840909,
          0.618182,
      ]
  
      np.testing.assert_almost_equal(result["ap"], expected, decimal=5)
      np.testing.assert_almost_equal(
          result["map"], np.nanmean(expected), decimal=5
      )
  
file_path: chainercv/tests/evaluations_tests/test_eval_instance_segmentation_voc.py
imports: from __future__ import division
  import numpy
  import os
  from six.moves.urllib import request
  import unittest
  from chainer import testing
  from chainercv.evaluations import calc_instance_segmentation_voc_prec_rec
  from chainercv.evaluations import eval_instance_segmentation_voc
label_desc: Use image node_id 2 for calling the TestEvalInstanceSegmentationVOCAP obj's underlying member method code with example usage: obj.test_eval_instance_segmentation_voc() without return types