Skip to content

mAP seems to be mAP@0.4 not mAP value #33

@HaronCHou

Description

@HaronCHou

First, Thanks for you work, and it's really generous for you to open this code.
I have a question for AP.

GetPascalVOCMetrics in helper/Evaluator.py

# compute precision, recall and average precision
    acc_FP = np.cumsum(FP)  # len(FP) is length of valid bbox count
    acc_TP = np.cumsum(TP)
    rec = acc_TP / npos
    prec = np.divide(acc_TP, (acc_FP + acc_TP))
    # Depending on the method, call the right implementation
    if method == MethodAveragePrecision.EveryPointInterpolation:
        [ap, mpre, mrec, ii] = Evaluator.CalculateAveragePrecision(rec, prec)
    else:
        [ap, mpre, mrec, _] = Evaluator.ElevenPointInterpolatedAP(rec, prec)

this recall, precision value is only nms_score_thresh=0.3, iou_thresh=0.4, in VOC2007_mAP definition, nms_thresh should change between [0.05, 0.95, 0.1]. so PR curve is under different nms_thresh value. Related mAP work can be found in daveluo‘s notebook modified from Suggar’

so, I think this AP value should be AP@0.3, how do you think that?

Best Wishes!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions