= Hawk Bad Pixel Generation = The Hawk sensor contains bad pixels which are usually constant throughout the whole season, so during the calibration of Hawk bad pixels are identified and are used later in apl to mask/interpolate over bad pixels. Here is an example of a bad pixel present in the calibration data set:[[BR]][[BR]] [[Image(bad_pixel_example.png)]] During calibration of the hawk sensor a noise and linearity measurement should have been taken, to identify these files look in the final capture spreadsheet under ~arsf/arsf_data/YEAR/misc/CAL_DAY, the entries that are used for the bad pixel generation are listed with a "Noise & Linearity" measurement. The files should be something like: NO1H1113, and have an integration time listed in the row; there may be some with a blue filter these can also be used in the detection of bad pixels. Type of files to choose- no filter: integration time 1 and above, blue filter: integration time 2 and above. There are 5 detection methods for finding a bad pixel: == Method A == '''__Constant Light Inconstant Response__''' During the calibration the hawk sensor receives light from an integrating sphere, this produces constant stable light, therefore if a pixels response varies then this pixel is considered bad. For example: [[Image(method_A_example.png)]] The calculate whether a pixel is bad get the mean for the light region of the pixel, if a member of this pixel is less or greater than a given percentage it is considered bad. == Method B == '''__Deviation From Spectral And Spatial Neighbours__''' If a pixel differs from it spectral and spatial neighbours then it is considered bad. [[Image(method_B_example.png)]] This is calculated by obtaining the mean for the light lines, so this gives a matrix with size: (num_bands, num_samples). Then for each pixel calculating the mean of the surrounding pixel(excluding the pixel being looked at), the surrounding pixels depend on the buffer size in the spectral and spatial direction. If the pixel being looked at is less than or greater than a certain percentage then it is considered bad. == Method C == '''__Linear Input Non-Linear Response__''' In the capture spreadsheet it should say the integration time for the file, this is used in this method. If the integration time against value is not above a certain threshold then it is considered bad, ideally it should be approaching 1.