Heatmap image convert to data. Percentage of black to white.
3 views (last 30 days)
Show older comments
Hi,
Im having some issue to find a tutorial which i can change the heatmap from my analysis to percentage. For the image convertion to black and white image, there a lot of tutorial but to anaylze the heapmap i couldnt find any. Im new to this matlab.
Original image.
Need to convert to black and white image as below
Then calculate the percentage of the ratio between black/white region. This is to analyze to heatmap.
thanks.
2 Comments
Answers (2)
Ameer Hamza
on 17 Jun 2020
rgb2gray() seems to work
img = im2double(imread('image.png'));
img_gray = rgb2gray(img);
imshow(img_gray)
However, the correct solution depends on the values of color in the heatmap. Do you have such mapping?
2 Comments
Ameer Hamza
on 17 Jun 2020
Do you only have data as an image, or do you also have data in numeric format?
Benoit Espinola
on 17 Jun 2020
Edited: Benoit Espinola
on 17 Jun 2020
You can calculate the lightness (=brightness) of each pixel in your image.
Assuming your RGB values are between 0 and 1 (which is the default in Matlab).
you can do:
L = (max(R,G,B)-min(R,G,B))/2;
Then you can use that for your gray.
R = L;
G=L;
B=L;
And finally, you should plot it in your figure.
About the ratio between "black" and "white" regions. Depends on how you define the threashold.
Ratio = sum(L(L>0.5))/numel(L); % gives you the ratio between 0 and 1.
You can change your threashold to something sensible, though 0.5 (= 50% white) seems like a sensible value.
0 Comments
See Also
Categories
Find more on Data Distribution Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!