In this project we have to get blood flow from thermal images. We had used FLIR ONE PRO for Android for capturing thermal images. These thermal images are then processed as described in the paper "Thermography-based blood flow imaging in human skin of the hands and feet: a spectral filtering approach" by A A Sagaidachnyi et al [1].
We had used sci-kit learn, numpy, opencv, read_thermal.py from @Nervengift libraries/modules for processing Thermal Images in python3. Mainly read_thermal was used for getting images with temperature in degrees celsius at each pixel location from using the header present in the captured image. The read_thermal internally uses exiftool for getting the header information from the image like 'Emissivity', 'SubjectDistance', 'AtmosphericTemperature', 'ReflectedApparentTemperature', 'IRWindowTemperature', 'IRWindowTransmission', 'RelativeHumidity', 'PlanckR1', 'PlanckB', 'PlanckF', 'PlanckO', 'PlanckR2' which are then used to get temperature in degrees celsius.
The Blood Flow is constructed from series of thermal images according to the procedure described in the paper.
An example gif of blood flow of a hand is as follow
The entire code for converting thermal images to blood flow can be found under main directory as thermal_blood_flow.ipynb