how to quantify multicolor images ?
1 view (last 30 days)
Show older comments
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
0 Comments
Accepted Answer
Joe Yeh
on 3 Oct 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;
More Answers (0)
See Also
Categories
Find more on Image Filtering and Enhancement in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!