how can i perform operations on the basis of image location?
1 回表示 (過去 30 日間)
古いコメントを表示
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.
0 件のコメント
採用された回答
Image Analyst
2014 年 6 月 12 日
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.
その他の回答 (1 件)
imene mannou
2014 年 6 月 12 日
編集済み: Image Analyst
2014 年 6 月 12 日
result=I;
result(:,:)=1;
for i=1:length(x)
result(x(i),y(i))=0;
end
2 件のコメント
Image Analyst
2014 年 6 月 12 日
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.
参考
カテゴリ
Help Center および File Exchange で Image Processing Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!