Getting data from an image with rainbow scale

Hello,
I have a colorful image which represents a data set with rainbow scale. I want to pick a point on the image and to learn the value of there. How can I do that ?
You can find an example which is close to my image.
Thanks

2 Comments

"learn the value of there"
What does it mean?
As you see the example image, there is a scale at the right hand side. blue is 28.6 and red is 63.4. This is the temperature data of the objects. I want to pick a point on the image and learn the temperature of the point.

Sign in to comment.

Answers (2)

Please follow the following steps:
  • Load the images (imread function)
  • imshow(image_data)
  • improfile function
  • 2 click (without mouse movemnet ) on the image (any point)
Code:
image_data=imread('image file name');
imshow(image_data)
data_val=improfile
Result: Check in command window or data_val as per the above snippet

1 Comment

Thanks for your reply,
As you see the example image, there is a scale at the right hand side. blue is 28.6 and red is 63.4. This is the temperature data of the object. I want to pick a point on the image and learn the temperature of the point.
Your code is extract the RGB values but It seems like I need a calibration by using a scale bar on the image.
Thanks.

Sign in to comment.

After you display the image, call impixelinfo:
hp = impixelinfo
As you mouse around, the value will show up in a status line somewhere on the figure. You can resize and position that status line by setting the Position Property if you want.
hp.Units = 'normalized';
hp.Position = [0.5, 0.97, 0.2, 0.1]; % [x, y, width, height]

Asked:

on 29 Dec 2020

Answered:

on 30 Dec 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!