← The Pacman Nebula — the image
Processing log · September 2026
The Pacman Nebula (NGC 281), HOO
How the final was made

Why HOO, not SHO
SII (672 nm) and Hα (656 nm) land in the same red band on the same red pixels, so they cannot be separated. HOO is the most this filter can honestly give.
Stacking in Siril
- Darks matched per session by exposure + ISO, then closest temperature, from a fresh set: dark0019/0022 (15 s, 19.1/20.8 °C) and dark0020/0021 (20 s, 19.8/20.3 °C). The Origin's own stacks were ignored — it calibrated with June 34 °C darks, and a 30 s dark for the 20 s subs.
- On this camera the 15–20 s master darks sit below the bias (4872 vs 5000 ADU), so there is no dark current to scale: temperature mismatch handled with a location-based bad-pixel map (
find_hoton the dark), not-opt. - Calibrate on the raw CFA, then
seqextract_HaOIIIbefore any debayer: red pixels → Hα, green+blue → OIII. Output is half-size, 1928×1090 — each pixel is a 2×2 block, 4.0 µm effective. That is the true Hα resolution of a Bayer camera; a debayer only interpolates the rest. - Each session stacked per channel (winsorized 3/3, additive+scale).
Merging and cleaning the masters
- Six sessions merged with Siril star registration — all 12 masters in one sequence on one reference, so Hα and OIII come out already aligned. (
combine_nights.pywas tried first and blurred stars 4.25 → 5.37 px: it aligns in 8 px steps. Retired for merges; my rule since: alignment is always Siril.) Result: stars 4.6 px, noise ÷2.2 Hα, ÷3 OIII vs the best session. - Row + column banding removed on the linear masters —
tools/deband_rowcol.py. The Origin barely dithered (~4 px between subs), so fixed-pattern noise didn't average out. Columns/rows 11%/10% → 7%/3% of pixel noise. (deband.pymade columns worse here, 11% → 20%.) - Pre-cropped to full coverage of all six sessions, 1928×1090 → 1887×983 (L 28 · T 95 · R 13 · B 12). The uncropped top band, covered by only some sessions, is what gave an earlier version its top-green / bottom-red sky.
PixInsight — linear
- ChannelCombination R = Hα, G = B = OIII; ImageSolver at 4.0 µm / 335 mm.
- SPFC narrowband mode, psfMinSNR 40.
- MGC with MARS (DR1 + DR2): gradient scale 512, structure separation 5, smoothness 10. HOO works with MARS; SHO would not — MARS has no SII.
- SPCC narrowband 656.3 / 500.7 / 500.7 nm at 25 nm bandwidth.
- BlurX correct-only, then a stars-only pass at 0.50. MLDenoise 0.90.
- StarX (linear, unscreen off).
- OIII lift while linear: PixelMath R
$T, G/B($T-med($T))*1.3+med($T)— themed()form lifts the nebula without tinting the sky. (A plain$T*1.3turned the sky teal; a post-stretch highlight curve flattened the core.)
PixInsight — non-linear
- GHS stretch factor 6.27, local intensity 0.05, SP 0.000722, highlight protection 1.0; then black point 0.038.
- Curves on the starless; BlurX non-stellar 0.78.
- Second StarX on the stretched image, curves lifting the faint outer Hα, stars screened back:
~(~F6*~(F6_stars*1)).
Result
Sky near neutral (median 17/12/12), faint outer Hα 47/31/31, core 236/231/231, 0.04% clipped. Signed bottom-right with “(Origin)”.
Known and accepted: a faint top-teal / bottom-red sky tint (BackgroundNeutralization can't fix a gradient — it made the sky redder in one try); core white rather than teal, because ×1.3 only brings OIII level with Hα there.
Pacman Nebula processing log · serial 870192 · September 25–26, 2026
The image → The Pacman Nebula — full size, with the story of the object