class_docstr: Summarize mean average recall metrics on a dataset and model per detections and area range.
  
  Parameters
  ----------
  area_range: tuple, default: (32**2, 96**2)
      Slices for small/medium/large buckets.
  {additional_check_init_params:2*indent}
class_docstr_tok: ["Summarize","mean","average","recall","metrics","on","a","dataset","and","model","per","detections","and","area","range",".","Parameters","--","--","--","--","--","area_range",":","tuple",",","default",":","(","32","*","*","2",",","96","*","*","2",")","Slices","for","small\/medium\/large","buckets",".","{","additional_check_init_params:2","*","indent","}"]
docstr: Compute the metric result using the ignite metrics compute method and create display.
docstr_tok: ["Compute","the","metric","result","using","the","ignite","metrics","compute","method","and","create","display","."]
code: def compute(
      self, context: Context, dataset_kind: DatasetKind
  ) -> CheckResult:
      """Compute the metric result using the ignite metrics compute method and create display."""
      small_area = int(math.sqrt(self._area_range[0]))
      large_area = int(math.sqrt(self._area_range[1]))
      res = self._ap_metric.compute()[0]["recall"]
      rows = []
      for title, area_name in zip(
          [
              "All",
              f"Small (area < {small_area}^2)",
              f"Medium ({small_area}^2 < area < {large_area}^2)",
              f"Large (area < {large_area}^2)",
          ],
          ["all", "small", "medium", "large"],
      ):
          rows.append(
              [
                  title,
                  self._ap_metric.get_classes_scores_at(
                      res, area=area_name, max_dets=1
                  ),
                  self._ap_metric.get_classes_scores_at(
                      res, area=area_name, max_dets=10
                  ),
                  self._ap_metric.get_classes_scores_at(
                      res, area=area_name, max_dets=100
                  ),
              ]
          )
  
      results = pd.DataFrame(
          data=rows,
          columns=["Area size", "AR@1 (%)", "AR@10 (%)", "AR@100 (%)"],
      )
      results = results.set_index("Area size")
  
      return CheckResult(value=results, display=[results])
  
file_path: deepchecks/deepchecks/vision/checks/model_evaluation/mean_average_recall_report.py
imports: import math
  from typing import Optional, Tuple, TypeVar
  import numpy
  import pandas
  from deepchecks.core import CheckResult, ConditionResult, DatasetKind
  from deepchecks.core.condition import ConditionCategory
  from deepchecks.utils.strings import format_number
  from deepchecks.vision._shared_docs import docstrings
  from deepchecks.vision.base_checks import SingleDatasetCheck
  from deepchecks.vision.context import Context
  from deepchecks.vision.metrics_utils.detection_precision_recall import ObjectDetectionAveragePrecision
  from deepchecks.vision.vision_data import TaskType
  from deepchecks.vision.vision_data.batch_wrapper import BatchWrapper
label_desc: Use image node_id 4 for calling the MeanAverageRecallReport obj's underlying member method code with example usage: obj.compute(context, dataset_kind) and returns: CheckResult