Dark Frame Analyzer
Analyses your dark-frame series and rejects out-of-spec frames before WBPP stacking.
Overview
A bad dark silently degrades your master dark, and everything calibrated with it.
Dark Frame Analyzer inspects a whole series at once. For each subframe it computes robust statistics (clipped median, exact MAD, hot pixels, saturation, thermal drift, spatial uniformity) through PixInsight's C++ engine, so a 50-frame series is analysed in seconds, then compares every frame against the series reference.
Each dark is graded Valid, Alert or Rejected in a colour-coded table, with a detailed console report, a CSV export and a WBPP-ready exclusion list. Rejects can also be moved to a subfolder in one click.
Outlier detection ships anti-quantisation floors for CMOS sensors whose distribution is peaked by ADC discretisation. Thresholds, pre-tuned for an IMX585-class sensor, are all adjustable and remembered across sessions. Bilingual FR/EN interface, FITS and XISF input.
Features
Robust outlier detection
Series-relative statistics (clipped median, exact MAD, hot pixels, thermal drift, spatial uniformity) with anti-quantisation floors: ADC steps never become false positives.
Native speed
Histograms and converged iterative sigma clipping computed by PixInsight's C++ engine: a 50-frame series is analysed in seconds.
WBPP-ready workflow
Exclusion list as text or file, or one click to move rejected frames to a subdirectory WBPP never sees.
Full reporting
Colour-coded results table with per-frame tooltips, detailed console report and CSV export with stable machine-readable headers.
Tunable, persistent thresholds
Every detection threshold is adjustable, remembered across sessions and restorable in one click (presets tuned for an IMX585-class sensor).
Bilingual UI
English and French, switchable live, choice remembered. FITS and XISF input.
Screenshots
Install
-
01
Add the CaeloWorks repository
In PixInsight, open Resources → Updates → Manage Repositories and add the CaeloWorks repository URL:
-
02
Check for updates
Run Resources → Updates → Check for Updates and accept: PixInsight downloads and installs the script.
-
03
Restart PixInsight
Relaunch the application: the script shows up in the Script menu. Future updates then arrive automatically.
Once installed, the script shows up under Script → CaeloWorks → Dark Frame Analyzer. Manual alternative: download DarkFrameAnalyzer.js from the GitHub releases and add its folder through Script → Feature Scripts. Requires PixInsight 1.9+, Windows, macOS or Linux.
Changelog
-
1.10.0 2026-08-18
Support for .fts dark frames (same FITS format as .fits, previously unloadable) and a Cancel button that stops an analysis while keeping the frames already measured. The version shows in the window header, and icons now accompany the Darks-list buttons. The hot-pixel report labels follow the configured threshold (the CSV header stays hot_5k) and the English wording is consistent between the table and the summary. Fixes: fewer than 3 readable darks are no longer all reported Valid in silence (an explicit warning is shown); the numeric columns (median, noise, hot px, saturation) sort in numeric order; and no more horizontal scrollbar or Status column crushed on the file list.
-
1.9.0 2026-07-11
The script now has its icon in PixInsight (Script menu and Feature Scripts) and a dialog header in the CaeloWorks livery. It moves to the CaeloWorks menu category, leaving Utilities. Under the hood: GPL-3.0 license, a test suite with continuous integration, and a distribution package for the update repository.
-
1.8.0 2026-07-02
First public release (GPL-3.0).

