Author Topic: How to use a polynomial fit equation for offset update in microbolometer thermal  (Read 1428 times)

0 Members and 1 Guest are viewing this topic.

Offline redmouTopic starter

  • Newbie
  • Posts: 9
  • Country: fr
Hi all, I have a microbolometer thermal sensor(tec-less, without shutter) with a size of image is 80*80, I want to develop an easy shutter-less algorithm to recompense the temperature drift. For that, in the literature, for a 1 point calibration, a third order polynomials can be used to have a offset correction.
However, I did not understand how to proceed. I have a thermal images bank captured for an ambient temperature between 20 and 35 C. I have for each pixel a curve of its values vs temperature (20 to 35 C). With the help of matlab, I can have the coefficients of the 3rd degree polynomial(f(t) = Ax3+Bx_2+Cx+D). But after, I do not know how to use it to have an new offset value that changes automatically when the temperature change.

All help is very much appreciated.
 

Offline Bill W

  • Super Contributor
  • ***
  • Posts: 1102
  • Country: gb
    • Fire TICS
What you need to do is the equivalent of a shutter calibration.
So you need to answer the question:
For each pixel, at the temperature of the sensor and the temperature of the lens mount now, what would this pixel give as an output if it was looking at a blank 20°C scene ?

The 20°C is arbitrary, and you could also use 'the lens temperature now'.

You then use this 'image' to subtracted from the live pixel data as the basis to calculate the scene temperature, not forgetting the basic calibration for gain and the temperature dependencies of pixel response - another 3rd order poly I suspect.

Bill

Offline redmouTopic starter

  • Newbie
  • Posts: 9
  • Country: fr
if I understand correctly, I apply this equation simply:
Pixel_corrected (i, j) = pixel(after 2 points calibration: reference pixel) (i, j) / gain (i, j) - polynomial (i, j).
 

Offline bap2703

  • Regular Contributor
  • *
  • Posts: 200
  • Country: io
What's your image bank exactly?
A camera in a x°C environment looking at a x°C scene or a fixed°C scene?
Is the image bank some sort or raw data or does it already include some correction?

Without these details I would say just calculate your offset image, f(current temperature) for every pixel, then subtract that from the current actual image.
 

Offline redmouTopic starter

  • Newbie
  • Posts: 9
  • Country: fr
In my experience, the sensor have a temperature between  20 to 35 °C;  I let the sensor run for 24 hours, and I had images whose sensor temperature is varied between 20 to 35°C, by putting it in front of a fixed 20° C scene.
my base of images is already built with a correction 2 points.
 

Offline redmouTopic starter

  • Newbie
  • Posts: 9
  • Country: fr
Do you have any idea?
 

Offline bap2703

  • Regular Contributor
  • *
  • Posts: 200
  • Country: io
Can you share the literature you are trying to reproduce to better understand your issue?
 

Offline redmouTopic starter

  • Newbie
  • Posts: 9
  • Country: fr
for paper "jsss-4-187-2015.pdf" :  page 3, equation 8.
and "Calibration of Infrared Cameras with Microbolometers.pdf" : page 4, equation 5
...
 

Offline redmouTopic starter

  • Newbie
  • Posts: 9
  • Country: fr
"Method_of_detectors_offset_correction_in_thermovision.pdf", page 6, equation 3
thank you in advance !
 

Offline redmouTopic starter

  • Newbie
  • Posts: 9
  • Country: fr
especially in the equation 3 page 6 of the paper "Method_of_detectors_offset_correction_in_thermovision", the procedure is well defined. However, I do not understand how to use it based on my database of images!
 

Offline bap2703

  • Regular Contributor
  • *
  • Posts: 200
  • Country: io
Based on the last paper :
I assume you know how to calculate equation (3), but then you don't know what to do with it.

Easy: apply equation (2).

P is the corrected pixel value
P_raw is the pixel value obtained from the camera
T is the FPA temperature
Polynomial is the polynomial fit you obtained for that pixel = equation (3)

P(T) = P_raw(T) - polynomial(T) + mean_across_all_pixels(polynomial(T))

The addition of the mean is just there to keep your image around the same mean value.

To gain confidence I suggest you convert equations and data to actual images and look at them to get a feel of what they actually are.
[edit] also look at histograms :p
« Last Edit: November 21, 2019, 12:28:41 pm by bap2703 »
 

Offline Bill W

  • Super Contributor
  • ***
  • Posts: 1102
  • Country: gb
    • Fire TICS
Interesting paper, thanks.  I have generally been dealing with sensors over a large temperature range, so always needed a 1-point live recalibration with a flag.

One possibly important factor to note in your calculations:
The paper and bap2703's reply is in terms of detector output - ie ADC counts or volts.

Counts or volts at the sensor are linear in scene radiance, not in temperature.
Over a small range this might be small enough to ignore.

Responsivity is also a function of sensor temperature as well as pixel identity / location.
This is unlikely to be small enough to ignore, and if you are using a scene temperature output from the camera will have been included.  This may affect your calculations.


Bill

Offline redmouTopic starter

  • Newbie
  • Posts: 9
  • Country: fr
Thank you for your answers,
what I'm using for the moment, just the temperature of the FPA, and the images captured in front of a +/- constant light source. Could you confirm to me if my calculation of the offset is correct?
 

Offline Bill W

  • Super Contributor
  • ***
  • Posts: 1102
  • Country: gb
    • Fire TICS
I think you have to try it.
If it works then good, but if you see signs of the sensor gain calibration mapping show up, then you will know why.

As an example:
You calibrated at 20°C
Sensor now 25°C
Camera output for pixel (i,j) would be 29°C if looking at 20°C

Say that the actual output is 40°C, as it is looking at 28°C.
It is 11°C above the '20°C' level because:
- Hotter sensor => more response
- Curve of output to temperature gets steeper

I believe your calculation would only deduct 9°C not 11°C. 
Shutterless is always going to struggle with temperature accuracy, but may be able to provide acceptable 'nice pictures'.

A similar pixel elsewhere, but with lower lens illumination, might see that same offset change as a 13°C difference temperature difference once gain correction is applied, which is before you can correct it.


regards
Bill



Offline redmouTopic starter

  • Newbie
  • Posts: 9
  • Country: fr
ok, thank you very much, I'll test it all,
I will keep you informed of my results.

Best regards,
Redo.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf