# how can i perform operations on the basis of image location?

1 view (last 30 days)
VIJENDRA on 12 Jun 2014
Commented: Image Analyst on 12 Jun 2014
I have 2 vectors containing x and y location of a point of an image. My actual image size is 1024*1024 and i have extracted nearly 660 points. these points having x and y location of my image. how can i create a new image in which, value 0 occurs at extracted points and 1 at other locations.

Image Analyst on 12 Jun 2014
outputImage = zeros(size(grayImage)); % Initialize image to 0.
for k = 1 : length(x);
outputImage(y(k), x(k)) = 1;
end
Use false instead of zeros if you want a binary (logical) image instead of a double.
VIJENDRA on 12 Jun 2014
It works. Thank you so much.

imene mannou on 12 Jun 2014
Edited: Image Analyst on 12 Jun 2014
result=I;
result(:,:)=1;
for i=1:length(x)
result(x(i),y(i))=0;
end
##### 2 CommentsShowHide 1 older comment
Image Analyst on 12 Jun 2014
imene made a common mistake of thinking that array indices are (x,y). They are not, they are (y,x) because the first index is the row, which is the y value.