Repository navigation
Stretch RGB stars independently before narrowband restoration - #996
Merged
Merged
Conversation
theatrus
force-pushed
the
codex/rgb-star-stretch
branch
from
October 25, 2026 06:21
7ce2e9f to
f07b66d
Compare
theatrus
marked this pull request as ready for review
October 25, 2026 16:15
theatrus
enabled auto-merge (squash)
October 25, 2026 16:15
theatrus
force-pushed
the
codex/rgb-star-stretch
branch
from
October 25, 2026 16:29
301312d to
2bd9eaf
Compare
theatrus
disabled auto-merge
October 25, 2026 16:29
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
New automatic narrowband recipes stretch the extracted linear RGB stars independently before restoring them over the nebula. Lower RGB star stretch → Amount in Combine and restore stars to make stars less prominent; the starting amount is 5. Existing setups keep Auto MTF (legacy) until changed. BXT sharpening/halos and linked star reduction remain independent controls.
StarXTerminator runs on linear RGB after optional BXT/NXT and Gaia calibration. Seiza extracts the linear residual, applies the SetiAstro-style rational tone, then screens that display layer over the separately stretched nebula. The nebula and broadband-structure stretches keep their existing settings. Changing the amount changes the final composition identity while retaining linear/BXT/Gaia/SXT cache identities.
The star-policy dropdown now has a visible ✨ Stars label, including on phone. New settings survive saved-setup round trips; inactive star controls retain their values.
Uses the published Seiza 0.44.0 / seiza-stacking 0.51.0 / seiza-satellites 0.22.2 release. The lockfile contains registry sources and checksums only. The new stacking output version invalidates older generated artifacts once; later display-only edits continue to reuse the new linear SXT outputs. Core API: theatrus/seiza#373 .
Local checks:
Star selector
Independent star stretch
Phone controls
SNR G132 examples
Identical 4757 × 3156 grid and nebula processing: BXT ML5, solar Gaia calibration, linear SXT ML11, green reduction 0.2, continuum off, broadband structure 0. Native 800 × 800 crops are not resized. Star Stretch 5 subdues the stars compared with legacy Auto MTF; amount 3 is more restrained. Changing 3 → 4 → 5 brightens monotonically on every finite pixel. Amount 3 + reduction 0.4 was also checked. See validation settings, timings and cache identities.
More restrained: Star Stretch 3
Configure and reuse linear StarXTerminator runs
Process linear color now exposes separate SXT controls for the nebula and RGB branches, using the installed CLI schema (including Tile Overlap). The Stars choice controls whether each run is needed. Managed separation keeps the stars output and leaves Unscreen Stars off; all separation happens before stretching. The RGB branch also exposes its Gaia calibration choice and preserves it through saved-setup reloads.
Cache fixes and provenance:
The real SNR G132 validation reused the same three RC-Astro IDs with an explicitly selected default overlap and after changing broadband structure from 0 to 0.3. Recomposition took 10 and 8 seconds. Both linear FITS downloads remained valid for each branch. Exact cache/linear-output evidence.
Phone SXT controls
Rebased onto #998 before merging. Both linear SXT branches and RGB preparation use the remote-worker runner; the per-branch settings and cached-output provenance are preserved. The sign-in browser helper now waits for the document reload, fixing the navigation race seen on #997 (six local browser checks passed across three fresh runs).
Final validation on rebased #997 (including all merged #996/#998 behavior): all-features Clippy, workspace tests (3,414 passed, 13 ignored), build, frontend lint/build and 1,877 tests passed. The combined Chromium/WebKit browser run passed all six cases, including desktop/phone star controls, memory settings, and delayed preferences after sign-in.