Skip to content

Evaluation metrics - Object detection #1132

Open

Description

@csudre

Is your feature request related to a problem? Please describe.
Need for the following metrics when dealing with object detection problems

Intersection over Union (IoU) measurements can either be made at the level of the bounding boxes of the objects or of the segmentation themselves.

At the element level

  • Dice per element
  • Centroid distance

At the level of the image considering independent elements:

Additional context
This list of metrics is the output of the initial brainstorming of the metrics task force

Activity

  1. mibaumgartner commented on Nov 9, 2020

    @mibaumgartner
    Collaborator

    Amazing list of detection metrics, thanks for all the effort of the metrics task force to collect them!

    I am curious about the F1 with minimum overlap of 1 voxel metric, could someone add some papers which use that metric? (I would like to read them ^^)

    Also a small addition:
    The Free-Response Receiver Operating Characteristic (FROC) might also be a metric which should be added (used by LUNA , DeepLesion and RibFrac)

  2. iliathesmirnov commented on Nov 12, 2020

    @iliathesmirnov

    Hello everyone,

    I am new here and would like to contribute to implementing some (or all) of the evaluation metrics on @csudre's list. Did anyone start working on them? If not, should I create a pull request (labelled [WIP]) and get going?

    Thank you,
    Ilia

  3. wyli commented on Nov 12, 2020

    @wyli
    Contributor

    Hello everyone,

    I am new here and would like to contribute to implementing some (or all) of the evaluation metrics on @csudre's list. Did anyone start working on them? If not, should I create a pull request (labelled [WIP]) and get going?

    Thank you,
    Ilia

    welcome and please go ahead! (I don't think anyone is currently working on them)

  4. wyli commented on Jan 5, 2021

    @wyli
    Contributor

    today we discussed the requirement of FROC curves for lesion based evaluation

  5. added this to the Evaluation Suite milestone on Mar 30, 2021
  6. Can-Zhao commented on Mar 30, 2023

    @Can-Zhao
    Collaborator
  7. TheHuntsman4 commented on May 3, 2026

    @TheHuntsman4

    Hey everyone,

    If no one is working on this, I would love to take this up. I do have a few questions regarding this; coco.py seems to be working with boxes, while the element-level and outline/detection metrics are more fit to be worked with masks. Is this assumption fine?

    I believe the Dice per element metric was recently added here #8774 I would be happy to make a PR for the Centroid distance and then eventually work through the other 6 until all are implemented.

    Thaks,
    Aniketh

  8. csudre commented on May 5, 2026

    @csudre
    CollaboratorAuthor

    Dear Aniketh

    I think most of the requirements for allocation and localisation using centroid distance or box overlap... is available on the MetricsReloaded project linked to MONAI - the best way would probably be to make a wrapper around what is available there - in the association_localization file

    Could that be an option?

    Best wishes

    Carole

  9. TheHuntsman4 commented on May 27, 2026

    @TheHuntsman4

    Thanks Carole, that makes sense.

    I had a look and MetricsReloaded.utility.assignment_localization.AssignmentMapping seems like a good fit here, especially since it already supports the association/localization step for boxes, masks, and centroid-based matching.

    My current thinking is:

    1. Keep the existing COCO-style box metrics in monai/apps/detection/metrics/coco.py as they are.
    2. Add MONAI wrappers for the instance-level/object-level metrics that are already available through MetricsReloaded, starting with centroid-distance-based matching/localization.
    3. Extend from there to the other mask-oriented metrics in this issue where MetricsReloaded already has the underlying implementation.

    That seems more consistent with the current MONAI approach as well, since we already have optional MetricsReloaded wrappers under monai.metrics.

    If that sounds right, I can start with a small PR for centroid distance using this wrapper pattern, and then follow up with the remaining metrics in separate PRs.

    Thanks,
    Aniketh

  10. csudre commented on May 27, 2026

    @csudre
    CollaboratorAuthor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions