2

I made a program that reads from an IR camera and generates the corresponding heat map in real time. What I am trying to do now is try to map what I see in the output to temperature, that is I want to display in a graphical way what the temperature of the hottest image is.

So basically I need to come up with an equation to convert this heat map into temperatures.

This is the code I made for the heat map generation:

import numpy as np
import cv2

cap=cv2.VideoCapture(1)

while(cap.isOpened()):
    ret,frame = cap.read()
    thresh1 = cv2.applyColorMap(frame,cv2.COLORMAP_JET)
    cv2.imshow('frame',thresh1)

    if cv2.waitKey(100)&0xFF==ord('q'):
        break

cap.release()
cv2.distroyAllWindows()

heat image

Martin Evans
  • 45,791
  • 17
  • 81
  • 97
edwin biju
  • 21
  • 1
  • 2
  • 1
    What you are trying to do is pretty difficult. a) You need to calibrate your camera with objects of a known temperature (e.g. hot water in a glass) at a known distance (that is the easy part). b) You need to know how far away each object in the image is and correct for that. Also, are you sure, that your heat camera is working as intended? It seems weird that the tables should be hotter than the arm in the image, and it also seems weird that you see the largest temperature differential across a single monitor screen. – Paul Brodersen Mar 20 '17 at 11:02
  • 1
    Using `applyColorMap` mainly shows the variation of reflected light rather than heat variations. For example:, consider the monitor screen in front of you, there is a wide difference in the heatmap because of light being reflected off it. – Jeru Luke Mar 20 '17 at 15:42

0 Answers0