Skip to content

Refactor Star Roundness Aggregation to Prevent Artifact Contamination #280

Closed

Description

@johnwhobbs

Description

The current implementation uses np.max() on a concatenated array of all detected star roundness values. This causes the final star_roundness metric to capture the single worst outlier or artifact (like a hot pixel or saturated star) in the entire frame, pinning the metric to an artificially high value regardless of actual tracking quality.

Required Changes

  • Modify the roundness calculation block inside calculate_metrics_from_data.
  • Instead of concatenating roundness1 and roundness2 globally, evaluate them side-by-side using np.maximum(abs_r1, abs_r2) to find the dominant asymmetry axis per individual star.
  • Compute the np.median() (or np.mean()) of these per-star maximums to represent the overall tracking health of the subframe without being corrupted by isolated pixel defects.

Activity

  1. johnwhobbs commented on Jul 18, 2026

    @johnwhobbs
    OwnerAuthor

    ✅ Pull request created with the requested changes.

  2. added a commit that references this issue on Jul 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions