| Title | By | Posted On |
| Could not get the accurate temperature in my program |
robertbaggio |
9/11/2006 |
I used FLIR A40 and SDK 2.5 in our program. But when I adjusted the temperature of a normal black body to 30 degree centigrade, then got the temperature of the black body via FLIR A40, I always got 32 degree centigrade or so. It is abnormal, isn't it?
Following is my C# code segment, could you please tell me where is wrong or what I missed?
Camera.Connect(5, 0, 3, 3, "ircam00171");
//Connect to camera with 16 bit Firewire
//After received Connected event
Camera.SetCameraProperty(41, 8);
//Noise reduction
Camera.SetCameraProperty(47, 1);
//Turn on Automatic shutter.
Camera.DoCameraAction(8);
//Internal image correction(shutter maneuver)
//After receive End of recalibration event
varImage=Camera.GetImage(3);
//Get pixel image from camera control
float[,] data = new float[320,240];
data = (float[,])varImage;
//From now on we get the raw temperature array
//For each value in the array: data, it is a
//degree Fahrenheit value, then we minus 273.15
// for each one.
|
| Quote Message and Reply |
| |
| Re:Could not get the accurate temperature in my program |
Bob Berry |
9/12/2006 |
| The accuracy of the A40 is ± 2°C or ± 2%, so this is not that surprising. Having said that you may be able to improve it a little if you use the correct emisivity and other settings. |
| Quote Message and Reply |
| |
| Re:Could not get the accurate temperature in my program |
Pelle |
9/12/2006 |
Robert
When you use the SDK all measurements are done in the SDK. You need to use the SetCameraProperty 0 to 7 to set the correct Object Parameters. Remember that almost all references do not have an emissivity of 1.00 and they might even have different emissivity depending on Wave length.
The only test you can do to make sure your software is working is to compare the measurement in your software with the measurements done in the camera and displayed in the Video output.
P.S. Remember that the SDK and the Camera Processor uses the same raw data and that settings in the Camera are for the camera only and does not change the data in the SDK.
Pelle |
| Quote Message and Reply |
| |
| Re:Could not get the accurate temperature in my program |
Pelle |
9/12/2006 |
Robert
One more thing
The Temperatures received in the float array is in degrees Kelvin
Conversion Kelvin - 273.15 = Celsius
Farenheit = (K-273.15) * 9/5 +32
Pelle
|
| Quote Message and Reply |
| |
| Re:Could not get the accurate temperature in my program |
robertbaggio |
9/12/2006 |
Hi,Pelle
Sorry for my typo error in my last messge, actually it should be Kelvin rather than Farenheit.
I realize that the importancy of Object Parameters, such as emissivity,Relative humidity etc.
Any way, big thanks to you! |
| Quote Message and Reply |
| |