MATLAB: Can I convert thermal images to visible image

conversionMATLABthermal imagevisible image

Best Answer

Under limited conditions it is possible.
In order for it to be possible:
  • the infrared camera must be sensitive to at least 3 different wavelengths
  • there must not be any filter against optical wavelengths
  • the three sensors must respond in different portions to three visible light wavelengths (e.g., R, G, B)
  • the infrared illumination must not be too strong
Under those circumstances you can work from the response curves to calculate what the original contributions of the three visible light wavelengths must have been, and you can then translate that into R G B contributions.
Somewhere on the 'net is a description of the algorithms used by someone with a Sony Nightshot or Sony X10 camcorder, which turned out to be sensitive to infrared light (especially when the infrared filter was removed.) The person had a look at the raw data and worked out the transfer equations, and realized that it was possible to analyze the infrared contribution to the R G B sensors, and thereby create a infrared image; you would be reversing that kind of process, to work out from the three infrared sensor wavelengths what the R G B contributions must have been.
However, I am not at all convinced that the images produced by that web site meet these conditions. It is difficult to say, though, as "state of the art thermal cameras" could mean a lot of different things, including variations where the images produced are pseudocolored from a single wavelength instead of being converted rigourously through algorithm.