How can I measure the temperature of each pixel?
3 次查看(过去 30 天)
显示 更早的评论
How can I measure the temperature for each pixel from a thermography image. I'm attaching an example of one of the images I took.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/208438/image.jpeg)
Can anyone help me?
Thanks.
5 个评论
Rik
2019-3-14
Look at the extention of that file: fcf is not a normal image file. The temperature scale you can see in the program is probably encoded in that file. You can attach it as a file (you might need to zip it first).
采纳的回答
Image Analyst
2019-3-18
Of course it's better to use the actual image if you have one that has actual temperature data in it. But if you don't, like you have the cheapest FLIR one phone camera, then you can extract out the colorbar and use it to convert to temperature. See attached demo.
![00_Screenshot.png](https://www.mathworks.com/matlabcentral/answers/uploaded_files/209013/00_Screenshot.png)
3 个评论
Image Analyst
2019-3-19
The camera or software you're using will most likely put the color bar in the same location regardless what is happening in your scene. Therefore you can determine the location with any program (or imtool in MATLAB) and use those coordinates to crop out the colorbar.
Then everything to the left of the colorbar will be your image so crop it out
rgbImage = rgbImage(:, 1:leftColumnOfColorBar-1, :);
更多回答(1 个)
Guillaume
2019-3-14
编辑:Guillaume
2019-3-14
You can't. Your thermography image is not the raw image from the sensor. It's a processed image that associate false colour to the raw signal.
Your software can convert the raw signal into temperature because:
- It knows the characteristics of the lens (in particular its absorption)
- It knows the exposure of your image
- It knows the response of the sensor vs wavelength
- probably some more dependencies that I've forgotten
Even if you had the raw image from the sensor, unless you know all of the above, you won't be able to convert to temperature. To get true temperature you also need to know the emissivity of the object you're imaging.
6 个评论
Guillaume
2019-3-18
temperature is the array (the same size as the image) that contains the temperature of each pixel. temperature(1, 1) is the temperature of the upper-left pixel. temperature(end, end) is the temperature of the bottom-right pixel.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Convert Image Type 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!