Products > Thermal Imaging

Infiray and their P2 Pro - discussion

<< < (44/48) > >>

zenbonzo:
and finally: the very basic windows program of the TOPDON TC001 'clone' thermal imaging camera downloadable here:
https://www.topdon.com/pages/pro-down?fuzzy=TC001 works with P2 Pro (by installing provided drivers).
It saves Temp Matrices in a raw format (in the TempMatrix directory of the program dir (I attach one).
Does anyone have any suggestions on how to process it?
Thanks!

LeoDJ:

--- Quote from: zenbonzo on January 28, 2023, 10:48:35 am ---addition: I found this on GitHub:
https://github.com/LeoDJ/P2Pro-Viewer/blob/main/P2Pro/P2Pro_cmd.py

--- End quote ---

Hi, I'm the author of this GitHub repo.

I've already found out a lot about the camera. (e.g. video format, temperature conversion and the out-of-band communication and format of the USB vendor requests, like setting the color palettes, shutter control, high temperature mode, etc)
Some of it has also already been found out by others in this thread, as I've just discovered.

I plan on publishing a write-up of everything I've found later on too, but for now I'm focussing on getting a basic Python implementation working.

Here's also a Mastodon thread about my progress, if you want to keep up-to-date in the meantime: https://chaos.social/@LeoDJ/109633033381602083

--- Quote from: aurel on January 28, 2023, 12:29:05 am ---I don't know if some kind of calibration needs to be applied or if the raw values can be converted directly to temperatures with a simple fixed (linear ?) equation.
In my quick tests I derived the following equation to convert raw to °C but this is only a rough guesstimate: f(x) = (x - 19295) / 51.2857

--- End quote ---

According to my reverse engineering the lower video frame contains the temperature data directly in Kelvin. It's 14-bit, shifted into the most significant bits, multiplied by a factor of 16.
So to get from the value from the camera to a temperature in °C, the formula is:

--- Code: ---t = ((x >> 2) / 16) - 273.15
--- End code ---

or simpler:

--- Code: ---t = x / 64 - 273.15
--- End code ---

zenbonzo:
Tank you for your reply and your great work! Any advice on how to obtain simply a matrice with temperature values at every pixel of a screenshot? E.g. pressing a key... Whith a minimum of code... ?

bostwickenator:

--- Quote from: LeoDJ on January 28, 2023, 07:16:33 pm ---So to get from the value from the camera to a temperature in °C, the formula is:

--- Code: ---t = ((x >> 2) / 16) - 273.15
--- End code ---

or simpler:

--- Code: ---t = x / 64 - 273.15
--- End code ---

--- End quote ---
Nice work on figuring out the conversion for the RAW stream! Those will be very useful for me.

sidenote: I gotta say it's a bit frustrating reading this thread seeing everyone figure out if it's a UVC camera and what it works with when I documented this in my review in 2021 on this forum. I know the search tool here isn't the best but give it a good check before doing things the hard way there is an absolute wealth of information on here.

Spenoza:
Hi. I need the advice of experienced thermal imager users. Because of the cheap price, I bought myself a Victor 328B thermal imager. As far as I understand, its filling is similar to the P2 PRO. In the evening, I indulged them in the P2 PRO app from Infraray. At first glance, it worked fine. But the next day I noticed that it began to show the wrong temperature. Moreover, in the application from Infraray it has a room temperature of hundreds of degrees, and in the application from the manufacturer a negative temperature at a real temperature of about 20 degrees. Judging by the sound, calibration is performed every 5-10 seconds. At the same time, it seemed to me that after warming up, calibration becomes much less frequent. Do you have any advice on this situation?