← Handbook

Subframe Inspection, Scoring, and Culling

Inspect comparable light frames before integration, exclude clearly damaging frames, and preserve as much useful integration time as the evidence supports.

schema 1 · revision 1

Recognize it

Intended output

Persisted per-frame measurements and a deterministic retained-frame set for stacking under a declared policy; culling does not transform the input FITS files.

Required input state

What NOVA does

NOVA first applies hard gates for weak star support, excessive eccentricity, measured gradient severity, and session-relative sky level. It then ranks the measured survivors by fwhm × (1 + eccentricity), where lower is better, and rejects the requested fraction from the high-scoring, worst end. The old reversed-tail defect reported by P06 is historical: commit 524d899 fixed it, and the current shared helper explicitly rejects the highest composite scores. Unscored frames have no measurement basis for percentile rejection. Manual, registration, exposure, and mount-mode eligibility remain separate filters.

Use when

  • A coherent frame pool contains a clearly degraded tail from tracking, focus, seeing, cloud, bright sky, or gradients.
  • Enough frames remain for rejection and integration to behave reliably.
  • A matched policy experiment can retain the exact frame manifest and compare final stacks.

Skip when

  • Frames are uniformly similar and discarded integration time is likely to cost more than the suspected defect.
  • The dataset is small, or source-extraction measurements are unreliable for its field, filter, or sampling.
  • Different panels, filters, scales, exposures, or measurement versions would be rank-compared as one population.
  • Real extended emission may be mistaken for a sky gradient without review or appropriate grouping.

Limits

  • FWHM, eccentricity, star support, sky level, and gradient severity are indicators, not a universal quality score.
  • The 10% cull is NOVA's current engineering default, not a proven general optimum; no comparative corpus establishes one best percentage.
  • The minimum of 20 detected stars is a heuristic guardrail, not proof of clear sky or a universal physical threshold.
  • The eccentricity 0.66, sky-factor 3.0, and gradient 0.5 defaults are engineering heuristics, not empirically optimal constants.
  • Whether culling generally improves NOVA final stacks remains unresolved without matched stack-level experiments.
  • Cached measurements remain bound to the analysis implementation and settings that produced them.

Scientific and aesthetic notes

  • Rejecting a damaged subframe can improve star shape or artifact burden, but rejecting usable frames reduces signal averaging; the final stack is the response that matters.
  • Experiment Mode (experiment-mode) supplies the no-op-control principle: compare no quality culling with declared treatments while keeping the captured pool and stack settings fixed.
  • How NOVA Knows (how-nova-knows) defines the evidence-strength vocabulary used here; source-confirmed defaults are not validation or recommendation.
  • A 20% cut retains 80% of the frames and, for otherwise comparable sky-noise-limited data, begins with the integration-depth trade implied by square-root-N scaling.
  • Sparse fields, filtered data, crowded clusters, nebulae, and mosaics can change what star count, shape, sky, and gradient measurements mean.

Evidence and measurements

MeasurementsAcceptance criteria
  • Per-frame FWHM and eccentricity distributions under matched image scale and extraction settings.
  • Star-support, sky-level, and gradient-severity distributions, with unavailable/fallback values identified.
  • Retained and rejected frame counts, rejection reasons, and total integration time for every policy arm.
  • Final-stack star shape, background/noise proxy, gradients/artifacts, coverage, and matched visual evidence.
  • The worst/highest composite-score tail is rejected; lower-is-better frames are not described as the rejected percentile.
  • Every arm starts from the same captured pool and records its exact retained/rejected manifest and effective thresholds.
  • Any claimed benefit is bounded to matched final-stack evidence and reports both quality change and lost integration.
  • The 10%, min-stars 20, eccentricity 0.66, sky-factor 3.0, and gradient 0.5 values remain labeled current engineering defaults or probes, not optima.

Cross-tool matrix

Tool EquivalenceExpected resultEvidence
novaExact replayA reproducible retained-frame set whose final stack can be compared with the no-culling control.nova-subframe-culling-source, nova-culling-fix-468
pixinsightFunctional alternativeA documented alternative retained-frame set; exact equivalence to NOVA's formulas is not claimed.unverified
sirilFunctional alternativeA functionally similar, tool-specific selection whose metric definitions are not assumed identical to NOVA's.siril-sequence-filter-docs
sasproConceptual substituteA manual or score-assisted alternative selection; exact mathematical equivalence is unverified.packet-p06

NOVA stack selection current source

  1. Form a comparable candidate pool and preserve its frame identities.
  2. Inspect hard-gate failures separately from percentile-ranked rejection.
  3. Start with no quality culling as the control; treat 5%, 10%, and 20% as policy probes, not promises of improvement.
  4. Build matched final stacks and retain each arm's kept/rejected manifest, frame count, and integration time.

Controls and starting ranges

bottom_pct
0% control; 5% mild probe; 10% current default/reference; 20% aggressive research probe
min_stars
20 current heuristic default; retune only with data-class evidence
ecc_threshold
0.66 current heuristic default
sky_level_factor
3.0 × session median current heuristic default
gradient_threshold
0.5 current heuristic default

Mask behavior: No image mask is applied; comparability comes from pool definition and recorded eligibility/rejection reasons.

Failure modes

  • Over-culling reduces depth without a compensating stack-level benefit.
  • Sparse fields or filtered data fail a fixed star-support gate.
  • Mixed populations or real extended emission distort ranking and gradient decisions.

Recovery

  • Reduce or disable the percentile cut and compare matched final stacks.
  • Stratify the pool and review rejected frames by reason.
  • Treat unavailable or fallback measurements as unavailable, not observed PSF evidence.

PixInsight SubframeSelector unverified installed version

  1. Measure one comparable subframe population with one fixed expression and scale configuration.
  2. Review measurement plots and rejected frames instead of adopting an unverified threshold blindly.
  3. Export the retained-frame list and compare a matched integration against a keep-all control.

Controls and starting ranges

No fixed starting range is claimed.

Mask behavior: No starting mask is claimed; record any ROI or support restriction because it changes the measurement population.

Failure modes

  • Scale or expression differences make scores incomparable.
  • A ranking expression hides the integration-time cost.

Recovery

  • Re-measure with one configuration and inspect both retained and rejected tails.
  • Compare final integrations, not scores alone.

Siril sequence filtering 1.4.4 documentation

  1. Register and measure a comparable sequence using consistent settings.
  2. Filter by documented FWHM, roundness, background, star-count, quality, or manual criteria as appropriate.
  3. Record the filter expression or percentage and compare the resulting stack with the same sequence kept eligible.

Controls and starting ranges

percentage
Use as a declared probe; NOVA's 5/10/20% values are not transferable scientific constants.

Mask behavior: No image mask is claimed; sequence membership and measurement configuration define support.

Failure modes

  • Different metric definitions are mistaken for exact NOVA equivalence.
  • Filtering is optimized without measuring the final stack.

Recovery

  • Record Siril's actual filter and weighting choices.
  • Compare matched output stacks and retained integration time.

Seti Astro Suite Pro Blink Comparator 1.18.0 research snapshot

  1. Inspect the comparable frame pool and record the frame-selection criteria used.
  2. Treat NOVA source comments about Blink Comparator lineage as claimed lineage, not proof of the same formula.
  3. Retain the selected-frame manifest and compare the final stack with a keep-all control.

Controls and starting ranges

No fixed starting range is claimed.

Mask behavior: No image mask is claimed; visually inspected frame content supplies the decision context.

Failure modes

  • Visual preference is presented as a reproducible threshold.
  • Claimed lineage is presented as exact formula equivalence.

Recovery

  • Record explicit acceptance/rejection criteria and the frame manifest.
  • Bound the conclusion to the tested pool and final-stack evidence.

Validation status

Not yet Jeff-validated. Use this as sourced guidance, not a certification.

Sources

Related evidence

The M66 recipe and Jeff-validation ledger will link here when their static exports are available. Until then, this article remains explicitly unvalidated.