To identify the pixels with the highest intensity (index) value in a figure.

1 view (last 30 days)
I want to identify the value/values which has the highest intensity value in a figure . To read an image, im using the below code.
a = imread('Fig.png');
a1 = sum(a,3);
figure, t=imagesc(a1),axis square;
Using a data tip, I can see the value of index and corresponding (X,Y). I want those pixels to be identified on that figure itself. How do I do that?

Accepted Answer

Image Analyst
Image Analyst on 15 Dec 2021
Try this:
a = imread('Fig.png');
a1 = sum(a, 3);
imshow(a1, []);
axis('on', 'image');
impixelinfo; % Show RGB values in status line at bottom left.
% Find max value
maxValue = max(a1(:))
% Find where it occurs and put red crosshairs there in the overlay.
[rows, columns] = find(a1 == maxValue);
for k = 1 : length(rows)
hold on;
plot(columns(k), rows(k), 'r+', 'MarkerSize', 50, 'LineWidth', 2);
end
hold off;

More Answers (0)

Community Treasure Hunt

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

Start Hunting!