code: def compute_froc_score(
      fps_per_image: np.ndarray,
      total_sensitivity: np.ndarray,
      eval_thresholds: tuple = (0.25, 0.5, 1, 2, 4, 8),
  ) -> Any:
      """
      This function is modified from the official evaluation code of
      `CAMELYON 16 Challenge <https://camelyon16.grand-challenge.org/>`_, and used to compute
      the challenge's second evaluation metric, which is defined as the average sensitivity at
      the predefined false positive rates per whole slide image.
  
      Args:
          fps_per_image: the average number of false positives per image for different thresholds.
          total_sensitivity: sensitivities (true positive rates) for different thresholds.
          eval_thresholds: the false positive rates for calculating the average sensitivity. Defaults
              to (0.25, 0.5, 1, 2, 4, 8) which is the same as the CAMELYON 16 Challenge.
  
      """
      interp_sens = np.interp(
          eval_thresholds, fps_per_image[::-1], total_sensitivity[::-1]
      )
      return np.mean(interp_sens)
  
file_path: MONAI/monai/metrics/froc.py
imports: from __future__ import annotations
  from typing import Any, cast
  import numpy
  import torch
  from monai.config import NdarrayOrTensor
label_desc: Use image node_id 4 for calling a global function with example usage: compute_froc_score(fps_per_image, total_sensitivity, eval_thresholds) and returns: np