how to quantify multicolor images ?

1 visualizzazione (ultimi 30 giorni)
Surya Gnyawali
Surya Gnyawali il 3 Ott 2016
Commentato: Surya Gnyawali il 3 Ott 2016
Hi,
I have to quantify this attached multi-color image. This image (Picture1.png)is an outcome of (Matlab enhanced from Picture4.png) dermascopic image from a broad band light of a microscope. I want to get numbers out of it. Such as what percentage of the signal is red, pink or yellow or green or blue. I basically need free-hand ROI and get Red signal intensity for example). Can you please help me out with this? Thanks Surya

Risposta accettata

Joe Yeh
Joe Yeh il 3 Ott 2016
Here's a solution
img = imread('Picture1.png');
imh = imshow(img);
% Create a mask using freehand ROI
h = imfreehand;
m = createMask(h, imh);
delete(h)
% Extract individual color channels
r = img(:,:,1);
g = img(:,:,2);
b = img(:,:,3);
% Get sum of intensity of each channel
r_s = sum(r(m));
g_s = sum(g(m));
b_s = sum(b(m));
% Calculate percentage of intensity of each color
r_p = r_s / (r_s + g_s + b_s) * 100;
g_p = g_s / (r_s + g_s + b_s) * 100;
b_p = b_s / (r_s + g_s + b_s) * 100;

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by