If I would modify a DSLR (the Canon 350D for example) to capture infrared light, would I be able to tell the temperature of an object by reading out RGB values of an image?

I assume a calibration step will be necessary to couple RGB values to Kelvins, but I am unsure if my assumption that infrared images show heat is correct.



For temperature-linear values you need a InGaAs SWIR or Bolometer sensors. CMOS/CCD range is approx. 400-1100nm. Thermocameras have 750-1400nm (bolometer sensor) or 750-1700nm (InGaAs). The cheapest are the bolometers as they are uncooled due to better control of dark current, whereas InGaAs need peltier cooling, making them very expensive. These can be used with bandpass filters for hyper spectral imaging, though, while bolometers are only thermal imagers. The cheapest I know of is Micro Epsilon Thermal Imager 120Hz 160x120. It is USB2.0 and comes with a nice software to make temperature curves and triggers and record the images. It can have radiosity or thermo linear values in 16bit.

What you can do with the CMOS/CCDs is make NIR images and NDVI vegetation indexes (if you use a longpass filter over green and do some math on the rgb values), because chlorophyll reflects NIR light and the sun has a lot of it. You can also do night vision if you bring your own cheap chinese NIR light source from dealextreme. If you polarise the light and cross a polarising filter you can make blood veins contrasty.

I found this table showing the wavebands emitted by steel at high temperatures:


At 480C it starts to show in the highest visible part of red, and then it moves down through orange, adding green and blue, so it is white. In NIR it should start to show a bit before, maybe around 400C. So if you kill all other NIR light sources, you can measure the temperature of hot steel. But you can also do that with RGB.

  • So a regular DSLR sensor always needs light to capture an image, even if the IR filter is removed? So a very hot (non-glowing) object in a dark room would not be registered? – Saaru Lindestøkke Feb 26 '13 at 22:27
  • Yes, but at as temperature rises the spectrum changes, and hte tail of the glowing part crawls down towards our visible spectrum. The NIR sensitive camera can see it a bit earlier. But it's just a matter of definition when "it is glowing". Maybe it's all glowing, just outside out visible spectrum haha – Michael Nielsen Feb 27 '13 at 0:07
  • Do thermal imaging cameras do anything to detect wavelength of radiation? Or do they just use the intensity to calculate the heat values? – Matt Grum Feb 27 '13 at 10:59
  • intensity gets converted. The have a sliding black sheet inside that slides in front of the sensor to calibrate it every X seconds. Normally you do that once per 2 min. It takes the ambient temperature into account and also you have to manually give it an estimated reflectivity and scecularity value of the object you are looking at to give accurate temperature values. It you use default values, you can expect +/- 2 K. The sensitivity is generally 40-80mK, though. – Michael Nielsen Feb 27 '13 at 17:48
  • 2
    Everything above absolute zero is glowing. As @MichaelNielsen alluded to, only a small amount is in the visible specturm. – whatsisname Feb 28 '13 at 4:03

I don't think it's possible.

In terms of absolute temperatures, those would depend on the length of your exposure. In other words the RGB values would change as you changed your exposure.

Secondly, if you are photographing something that is a certain temperature, and the light varies (sun goes behind the clouds) you are going to record less reflected energy off your subject and have reduced RGB values (despite your subject remaining at the same temperature).

In terms of relative temperatures, you might be able to judge that from comparing RGB values, but even there, different surfaces will absorb/reflect varying degrees of IR energy, just as they do with visible light, so even there I don't think there is a direct correlation between a body's temperature and how it records on IR film/sensor.


When you remove the IR filter on your DSLR to capture infra-red images, you're actually capturing near infra-red, that is infra-red light that is very close to the visible spectrum. The important point is that what you're detecting is infra-red light emitted by the sun and bouncing off your subject into the camera, rather than infra-red light emitted by your subject (which is too low frequency for the camera to detect).

Secondly your digital camera has no means to directly detect the frequency of incoming light. This frequency information is what we observe as colour. Each pixel in the sensor has a different colour filter over it, for example green, which filters out red and blue light. The resulting intensity measured across different pixels with different coloured filters allows us to infer what frequencies are present in what quantities in the incoming light and thus produce colour images.

The green filters used however only filter out red and blue frequencies, they don't filter out IR frequencies. After a point all colour filters are transparent to infra-red and you are left with an intensity only (monochrome) image, so you don't really have RGB values. The only way to make any sort of colour image is to arbitrarily map intensities to colours.

  • I dont know which filters you use, but my green bandpass filters also filter hte NIR light. It opens up a little bit towards the end of hte CCD/CMOS spectrum 1000-1100, but there the sensitivity of hte sensor is also near zero, meaning the product is negligible compared to the green transmission: midopt.com/bp530.html Their UV BP and deep blue BP filters open up wide at 800nm, though – Michael Nielsen Feb 27 '13 at 18:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.