class_docstr: Interface for object detection/segmentation evaluators.
  
  The evaluator should be able to accumulate the model outputs and compute
  the relevant metrics.
class_docstr_tok: ["Interface","for","object","detection\/segmentation","evaluators",".","The","evaluator","should","be","able","to","accumulate","the","model","outputs","and","compute","the","relevant","metrics","."]
docstr: Computes the performance metrics on the outputs previously obtained
  through `update()`.
  
  :return: If running in the main process, the predicted metrics. At
      least a dictionary of metric_name -> value is required. In
      addition, the evaluator may return a second value representing
      dataset/evaluator-specific additional info. If running in
      a non-main process, it should do nothing and return None.
code: def evaluate(
      self,
  ) -> Optional[
      Union[Dict[str, Any], Tuple[Dict[str, Any], TDetPredictions_co]]
  ]:
      """
      Computes the performance metrics on the outputs previously obtained
      through `update()`.
  
      :return: If running in the main process, the predicted metrics. At
          least a dictionary of metric_name -> value is required. In
          addition, the evaluator may return a second value representing
          dataset/evaluator-specific additional info. If running in
          a non-main process, it should do nothing and return None.
      """
      pass
  
imports: import os
  from pathlib import Path
  import torch
  import json
  from typing import Any, Generic, List, Union, TypeVar, Tuple, Dict, TYPE_CHECKING, Type, Callable, Sequence, Optional
  from avalanche.benchmarks.utils.data import AvalancheDataset
  from torch import Tensor
  from json import JSONEncoder
  from torch.utils.data import Subset, ConcatDataset
  from typing_extensions import Protocol
  from avalanche.evaluation import PluginMetric
  from avalanche.evaluation.metric_results import MetricValue
  from avalanche.evaluation.metric_utils import get_metric_name
label_desc: Use image node_id 2 for calling the DetectionEvaluator obj's underlying member method code with example usage: obj.evaluate() without return types