Heatmap image convert to data. Percentage of black to white.

3 次查看(过去 30 天)
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 个)

Ameer Hamza
Ameer Hamza 2020-6-17
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?

Benoit Espinola
Benoit Espinola 2020-6-17
编辑:Benoit Espinola 2020-6-17
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.

类别

Help CenterFile Exchange 中查找有关 Data Distribution Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by