I also see that in the Python code according to the calculations it expects the ambientT to be in Fahrenheit, not either F or C as stated in the config. "My bad"--forgot I was going to accommodate that I guess.
You converted it to F early on, so that was OK:
if(ForC < 0): ambientT = ambientT*1.8 + 32 #convert to Fahrenheit for use in finding ref point on curve
So you may get temperatures closer to real if you put ambientT in F, list pixel1atT as 4872 & diffshouldbe at 687.
No luck there; the temperatures were reported as over 100°C. I tried just lowering ambientT, but it was still reading high when I got to -40°C, and then the image went black!
I think in order to answer your question as to whether the problems you observe are the camera we need to see images with a 6C span and see if it stays stable. The correctness of the temperature is secondary. No?
Indeed, and the temperatures reported do seem to stable (at least when I stop fiddling with the config file). What is also interesting is that with your program I can stop the program for a few seconds, then run it again, and almost immediately get images just as good as before, and certainly without the halo effect. There is also much less of the vertical striping evident with your program compared to the Seek app.
I still seem to be getting just a few pixels that are way out and pulling the lower temperature down:
so I modified your smoothing code to pick the median of the 9 adjacent pixels instead of the mean. I then see:
Here is an image with about a 6°C span:
and here is one with a 16°C span:
and the same immediately after stopping and restarting the program:
Sorry to put you through such a hassle with the software. It points out a problem with hackware--the hacker has to keep up with the changes the hackee makes.
No need to apologise to me - I am glad to have anything at all, and greatly appreciate you having released your code.
The stuff you observe is crazy. I don't know how it could be the camera & I think it's sad if the app is doing what it appears to be doing. And all the more strange if it does not do it for Tinderbox. Do you guys have the same version of the app?? The version I have on Androidx86 apparently is doing it with my Pro, as shown earlier.
Since both Tinderbox and I only very recently bought the cameras, and since he is on a Samsung S3 and I am on a Samsung S5, I think it almost certain we both run the latest Play Store version. For what it is worth my one reports itself as version 2.1.5.2, with Image Processing Software 2.5.6.2.
My temperature error could be bad calibration data being supplied by the camera to the app, as could the vertical stripes and some of noise. It is hard to imagine how the same app could recover quickly from a warm start for Tinderbox but not for me, especially when your program recovers from a warm start for me with no problem!
Anyway, thank you very much for your help (you and the other contributors in this thread). I don't think it is worth you wasting more of your time on my problem; I have satisfied myself that my camera/app combination is not working as it should, so I would most likely return it even if we could get the hardware to work with a third-party program.