class_docstr: Computes Dice score metric from full size Tensor and collects average over batch, class-channels, iterations.
docstr: Args:
      include_background: whether to include dice computation on the first channel of the predicted output.
          Defaults to True.
      reduction: define the mode to reduce metrics, will only execute reduction on `not-nan` values,
          available reduction modes: {``"none"``, ``"mean"``, ``"sum"``, ``"mean_batch"``, ``"sum_batch"``,
          ``"mean_channel"``, ``"sum_channel"``}, default to ``"mean"``. if "none", will not do reduction.
      num_classes: number of input channels (always including the background). When this is None,
          ``y_pred.shape[1]`` will be used. This option is useful when both ``y_pred`` and ``y`` are
          single-channel class indices and the number of classes is not automatically inferred from data.
      output_transform: callable to extract `y_pred` and `y` from `ignite.engine.state.output` then
          construct `(y_pred, y)` pair, where `y_pred` and `y` can be `batch-first` Tensors or
          lists of `channel-first` Tensors. the form of `(y_pred, y)` is required by the `update()`.
          `engine.state` and `output_transform` inherit from the ignite concept:
          https://pytorch.org/ignite/concepts.html#state, explanation and usage example are in the tutorial:
          https://github.com/Project-MONAI/tutorials/blob/master/modules/batch_output_transform.ipynb.
      save_details: whether to save metric computation details per image, for example: mean dice of every image.
          default to True, will save to `engine.state.metric_details` dict with the metric name as key.
      return_with_label: whether to return the metrics with label, only works when reduction is "mean_batch".
          If `True`, use "label_{index}" as the key corresponding to C channels; if 'include_background' is True,
          the index begins at "0", otherwise at "1". It can also take a list of label names.
          The outcome will then be returned as a dictionary.
  
  See also:
      :py:meth:`monai.metrics.meandice.compute_dice`
docstr_tok: ["Args",":","include_background",":","whether","to","include","dice","computation","on","the","first","channel","of","the","predicted","output",".","Defaults","to","True",".","reduction",":","define","the","mode","to","reduce","metrics",",","will","only","execute","reduction","on","`","not-nan","`","values",",","available","reduction","modes",":","{","``","``","none","''","``",",","``","``","mean","''","``",",","``","``","sum","''","``",",","``","``","mean_batch","''","``",",","``","``","sum_batch","''","``",",","``","``","mean_channel","''","``",",","``","``","sum_channel","''","``","}",",","default","to","``","``","mean","''","``",".","if","``","none","''",",","will","not","do","reduction",".","num_classes",":","number","of","input","channels","(","always","including","the","background",")",".","When","this","is","None",",","``","y_pred.shape","[","1","]","``","will","be","used",".","This","option","is","useful","when","both","``","y_pred","``","and","``","y","``","are","single-channel","class","indices","and","the","number","of","classes","is","not","automatically","inferred","from","data",".","output_transform",":","callable","to","extract","`","y_pred","`","and","`","y","`","from","`","ignite.engine.state.output","`","then","construct","`","(","y_pred",",","y",")","`","pair",",","where","`","y_pred","`","and","`","y","`","can","be","`","batch-first","`","Tensors","or","lists","of","`","channel-first","`","Tensors",".","the","form","of","`","(","y_pred",",","y",")","`","is","required","by","the","`","update","(",")","`",".","`","engine.state","`","and","`","output_transform","`","inherit","from","the","ignite","concept",":","https",":","\/\/pytorch.org\/ignite\/concepts.html","#","state",",","explanation","and","usage","example","are","in","the","tutorial",":","https",":","\/\/github.com\/Project-MONAI\/tutorials\/blob\/master\/modules\/batch_output_transform.ipynb",".","save_details",":","whether","to","save","metric","computation","details","per","image",",","for","example",":","mean","dice","of","every","image",".","default","to","True",",","will","save","to","`","engine.state.metric_details","`","dict","with","the","metric","name","as","key",".","return_with_label",":","whether","to","return","the","metrics","with","label",",","only","works","when","reduction","is","``","mean_batch","''",".","If","`","True","`",",","use","``","label_","{","index","}","''","as","the","key","corresponding","to","C","channels",";","if","'include_background","'","is","True",",","the","index","begins","at","``","0","''",",","otherwise","at","``","1","''",".","It","can","also","take","a","list","of","label","names",".","The","outcome","will","then","be","returned","as","a","dictionary",".","See","also",":",":","py",":","meth",":","`","monai.metrics.meandice.compute_dice","`"]
code: def __init__(
      self,
      include_background: bool = True,
      reduction: MetricReduction | str = MetricReduction.MEAN,
      num_classes: int | None = None,
      output_transform: Callable = lambda x: x,
      save_details: bool = True,
      return_with_label: bool | list[str] = False,
  ) -> None:
      """
  
      Args:
          include_background: whether to include dice computation on the first channel of the predicted output.
              Defaults to True.
          reduction: define the mode to reduce metrics, will only execute reduction on `not-nan` values,
              available reduction modes: {``"none"``, ``"mean"``, ``"sum"``, ``"mean_batch"``, ``"sum_batch"``,
              ``"mean_channel"``, ``"sum_channel"``}, default to ``"mean"``. if "none", will not do reduction.
          num_classes: number of input channels (always including the background). When this is None,
              ``y_pred.shape[1]`` will be used. This option is useful when both ``y_pred`` and ``y`` are
              single-channel class indices and the number of classes is not automatically inferred from data.
          output_transform: callable to extract `y_pred` and `y` from `ignite.engine.state.output` then
              construct `(y_pred, y)` pair, where `y_pred` and `y` can be `batch-first` Tensors or
              lists of `channel-first` Tensors. the form of `(y_pred, y)` is required by the `update()`.
              `engine.state` and `output_transform` inherit from the ignite concept:
              https://pytorch.org/ignite/concepts.html#state, explanation and usage example are in the tutorial:
              https://github.com/Project-MONAI/tutorials/blob/master/modules/batch_output_transform.ipynb.
          save_details: whether to save metric computation details per image, for example: mean dice of every image.
              default to True, will save to `engine.state.metric_details` dict with the metric name as key.
          return_with_label: whether to return the metrics with label, only works when reduction is "mean_batch".
              If `True`, use "label_{index}" as the key corresponding to C channels; if 'include_background' is True,
              the index begins at "0", otherwise at "1". It can also take a list of label names.
              The outcome will then be returned as a dictionary.
  
      See also:
          :py:meth:`monai.metrics.meandice.compute_dice`
      """
      metric_fn = DiceMetric(
          include_background=include_background,
          reduction=reduction,
          num_classes=num_classes,
          return_with_label=return_with_label,
      )
      super().__init__(
          metric_fn=metric_fn,
          output_transform=output_transform,
          save_details=save_details,
      )
  
file_path: MONAI/monai/handlers/mean_dice.py
imports: from __future__ import annotations
  from collections.abc import Callable
  from monai.handlers.ignite_metric import IgniteMetricHandler
  from monai.metrics import DiceMetric
  from monai.utils import MetricReduction
label_desc: Use image node_id 1 to create a new MeanDice object from inherited base classes: IgniteMetricHandler with example: obj = MeanDice(include_background, reduction, num_classes, output_transform, save_details, return_with_label)