Skip to content

CLI pm_evaluate detection crashes with AttributeError when --out_fname is used #563

Description

@Harshavardhan-Raju

File: perceptionmetrics/cli/evaluate.py
Line: 197

Description

TorchImageDetectionModel.eval() returns a dict with keys metrics_df
and metrics_factory. The CLI calls .to_csv() directly on this dict,
which raises AttributeError every time detection evaluation is run with
--out_fname.

Bug

results = model.eval(...)
results.to_csv(out_fname)  # results is a dict for detection models

Fix

if isinstance(results, dict):
    results = results["metrics_df"]
results.to_csv(out_fname)

Steps to Reproduce

  1. Set up a COCO dataset and a torchscript detection model
  2. Run evaluation with --out_fname:
    pm_evaluate detection image --model_format torch --model model.pt
    --dataset_format coco --dataset_dir /path/to/coco --out_fname results.csv
  3. Evaluation completes but crashes before saving with:
    AttributeError: 'dict' object has no attribute 'to_csv'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions