The non-linearity is driving me crazy. I was hoping that subtracting the flat paper image from the router image would remove the lines and even out some of the pixel noise. And it did a great job for the darker areas, but the hotter areas actually really don't show the lines or the noise to begin with and subtracting out the flatpaper image increases the noise of the bright areas just as dramatically as it helped in the darker areas.
I'm really having to rethink my experience with linear CMOS or CCD sensors.
I now appreciate the job seek has done with image quality even what's there right now in the Android app. If somehow they can deal with the gradient, life would be even better.
I wonder if taking an equivalent of a bias frame (as short of an integration as possible with the shutter closed) and subtracting it off the real calibration (full integration time shutter closed) would allow them to "see" the gradient and then deal with it (assuming it's thermal sourced). I guess I don't know the nature of the extreme noise that veils the images. If it's read noise dominated, then that strategy would work. If it's thermal/time based dominated then not so much. They could do it by taking 2 calibration frames while the shutter is closed, one super short integration, one normal integration. The user would never notice it.
This is my first foray into thermal and I've really enjoyed expanding my horizons here...I agree with Seek, this is an excellent and well behaved forum, concentrating on solving problems rather than threatening lawsuits for small problems.
Rick
In the darker lines the 207th value is higher (~5300 instead of ~4900). Therefore they have to be added to remove the dark lines. This is a bit strange, because this means the 207th value uses a different sensor, or it is an already processed value. Maybe it is even the absolute temperature: 5200/256=20.3°C
It is not possible to remove the horizontal noise completely from both hot and cold areas with the same scaling factor. To remove the dark lines completely there are probably more calculations to be done:
I do not know, but I think the data is the non linearized data from the adc. To get the absolute temperature, you have to know some constants (I think it works the same way for all bolometers):
http://u88.n24.queensu.ca/exiftool/forum/index.php?topic=4898.msg23972#msg23972
Therefore subtracting or adding raw values only works for a small temperature range before it gets nonlinear.
Does anybody know if other thermal cameras simply scale/offset the sensor data the same way we do, or do they linearize the data to temperature scale before applying the palette?