MATLAB: Position Of pixel

image processingMATLAB

heyy.. can anyone help me out in finding out the position of pixel of an binaryimage and the grayscale value of pixel

Best Answer

Igray(Ibinary); %extract gray values of true binary values
true_locations = find(Ibinary); %indices of binary values
You'll have to be more specific if you want more information.
EDIT per comment/clarification:
%Ibinary is your logical map
%Igray is your grayscale image
%Conversions as necessary
if ~isa(Igray,'double');Igray = double(Igray);end
if ~islogical(Ibinary);Ibinary = logical(Ibinary);end
wtrr = bsxfun(@times,(1:size(Igray,1)).',Igray); %weighted Igray by rows
wtrr = sum(wtrr(Ibinary)); %Sum the ones that matter
wtcc = bsxfun(@times,1:size(Igray,2),Igray); %weighted Igray by columns
wtcc = sum(wtcc(Ibinary)); %sum the ones that matter
Gtot = sum(Igray(:));
CGr = sum(wtrr(:))/Gtot;
CGc = sum(wtcc(:))/Gtot;
%CGr is the CG amongst rows (y) and CGc is the CG amongst columns (x)