Create fnoise_clean.py file that houses code for fitting a 1/f noise model to data and iteratively masks outlier pixels.
Add cube_fit function, which utilizes polynomial fitting routines from webbpsf_ext to fit linearized unsaturated and unflagged pixel data to quickly generate a kTC bias and slope images.
Utilize cube_fit to create kTC bias to subtract from linearized ramp data to create clean group-level data
The slope images from cube_fit are then averaged together and used to produce a high-SNR ramp such that group signal levels match those within a given integration.
Use 1/f noise filtering algorithm on group level data to model the spatial 1/f striping and subtract it.
1/f cleaning routine adds about 100 msec for a single 320x320 frame. Expect time to increase proportional to frame size. See issue #97 and fnoise.py for more details.
See issue #97 for more information on operations.
Before and after 1/f noise correction for four integrations in PID 1386 Obs 116:
Part 4 of #98
Correct 1/f noise striping in stage1:
cube_fit
function, which utilizes polynomial fitting routines fromwebbpsf_ext
to fit linearized unsaturated and unflagged pixel data to quickly generate a kTC bias and slope images.cube_fit
to create kTC bias to subtract from linearized ramp data to create clean group-level datacube_fit
are then averaged together and used to produce a high-SNR ramp such that group signal levels match those within a given integration.1/f cleaning routine adds about 100 msec for a single 320x320 frame. Expect time to increase proportional to frame size. See issue #97 and
fnoise.py
for more details.See issue #97 for more information on operations.
Before and after 1/f noise correction for four integrations in PID 1386 Obs 116:![image](https://github.com/kammerje/spaceKLIP/assets/17557291/44d95d83-42d5-4696-9738-3707c7f72d35)