How to find the pixel information at a point whose coordinates are known ?

1 view (last 30 days)
I have a set of (x,y) coordinates and I wish to know the values of pixels at each of these points. How do I do that. Normally, finding the coordinates from pixel value is easy using 'find' function in MATLAB. But this problem is exactly inverse of it. I know coordinates and I want to find pixel values

Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 12 Aug 2016
Im=randi(10,4)
x=[1 2 3]
y=[2 3 4]
id=sub2ind(size(Im),x,y)
pixels=Im(id)
  2 Comments
Image Analyst
Image Analyst on 12 Aug 2016
If x is horizontal, and y is vertical coordinate (as usual), then this should be
id=sub2ind(size(Im), y, x)
since sub2ind() uses row, column, not x,y. So the rows come first, not the columns.
Mahsa khodaee
Mahsa khodaee on 30 Nov 2017
Thanks for your answer! I have the same question! your answer with X, Y matrix is fine! how about the time that we have a points file with a specific coordinate system! In this case, we wouldn't have two specific X and Y matrix.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!