Vignette correction is most effective for images that are un-cropped or only lightly cropped. Without correction, stretched images often appear with a bright center and darker corners, making it difficult to establish a consistent post-stretch zero sky background level. Heavily cropped images typically exhibit little to no vignetting and likely will not benefit from this correction.
Linear gradient correction is recommended for images captured under conditions with significant sky glow or light pollution. These often exhibit a brightness gradient across the frame, typically from one edge to the other. Gradient correction can effectively mitigate this effect.
For both vignette and gradient corrections, a small number of pixel values in some images may exceed the 0–65,535 range. When this occurs, the software prints a warning to the output stream showing the full maximum and minimum values and the number of pixels outside this range. Any out-of-range values are clipped to fit within the 0–65,535 range. In my experience, this approach does not produce visible artifacts in the final output images. Reducing the correction strengths may also help minimize clipping. Note: The default clip method can be changed to scaling by setting mode = “scale” in the argument line of def fix_out_of_bounds if desired.
Note too that both corrections are computationally intensive and will increase processing time. For reference, a full-size uncorrected image typically processes in 30–40 seconds on a MacBook M4 Pro. Applying vignette correction increases this to just over one minute.
Star Size Reduction –
star_reduction – set to True to perform a star reduction on the final output image. This method uses a Difference of Gaussians (DoG) to detect stars , filters out small isolated pixels, followed by masking to shrink star halo sizes.
reduction_strength – Controls the amount of star size reduction (range 0.0 to 1.0). Specifying 0 represents no star size reduction.
