Finding the average temperature of a thermal image
조회 수: 2 (최근 30일)
이전 댓글 표시
I am doing a project where I am analysing a thermal image captured by a thermal sensor and stored as an RBG image.
I was able to convert the RGB image to a thermal image sucessfully.
I want to calculate things like the average temperature, deviation etc of the image, however there are parts of the image that I do not want to be included in that calculation. for example a thermal image was taken of someone's hand but it also captures background temperatures. I have reduced that by cropping the image but there are still some unwanted background colors
How do I remove all the colors outside of the boundary of the hand so that I can accurately find the mean temperature(& other parameters) of the hand
댓글 수: 0
채택된 답변
Image Analyst
2022년 5월 16일
Can you save your thermal image in a .mat file and attach it with the paperclip icon. Also somehow indicate which part of the image you want to include. Can it be described by intensity thresholding? Or do you need to outline it with drawfreehand.
댓글 수: 7
Image Analyst
2022년 5월 24일
impixelinfo does not save any values. It's just an instantaneous readout of the color or value under the cursor. Somehow you have to threshold your temperature image or draw them manually. Remember you said "I was able to reassign temp values back from the RGB colors using MATLAB". So use those temp values.
I'm attaching a variety of masking and drawing demos that can define an ROI from which you can get the mean temperature value from.
추가 답변 (1개)
Jon
2022년 5월 16일
If there is a sufficient difference between the background temperature and the hand temperature, then you could just set a threshold on the values to ignore. Something like this, assuming your temperature values are now in an array T
% set all values that are outside of the threshold range to NaN so they can
% be excluded from calculations
Tthresh = 25; % for example exclude anything below 25 deg C
T(T<=Tthresh) = NaN;
% compute mean
Tmean = mean(T,'omitnan'); % set flag so that NaN numbers are not included
If the background color was uniform, hand in front of blue screen or green screen, then you could omit all the values with that color before computing temperatures.
Otherwise you are going to need a more sophisticated cropping alogorithm which finds the edges of the hand in the image
참고 항목
카테고리
Help Center 및 File Exchange에서 Image Processing Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!