Locate points inside region based on coordinates

5 Ansichten (letzte 30 Tage)
Jason States
Jason States am 10 Nov. 2016
Beantwortet: Image Analyst am 11 Nov. 2016
Hi guys, MATLAB rookie here. I have a matrix of points distribution coordinates and binary image of a structure. What I want to do is to select the points that located inside the structure of the binary image and extract those points. I read about using "&" but clearly it didn't work when I try it. Could you guys share some insights?

Akzeptierte Antwort

KSSV
KSSV am 10 Nov. 2016
doc inpolygon.

Weitere Antworten (1)

Image Analyst
Image Analyst am 11 Nov. 2016
You need to turn your (x,y) points into a binary image first. THEN you can use & and find() after that if you want to:
pointsImage = false(size(binaryImage));
for k = 1 : length(x)
thisRow = round(y(k));
thisCol = round(x(k));
pointsImage(thisRow, thisCol) = true;
end
% Find intersection.
% This will be an image of only the points inside blobs in binaryImage.
pointsInside = binaryImage & pointsImage;
% Find rows and columns of points inside
[rows, columns] = find(pointsInside); % or [y, x] = find(pointsInside);

Community Treasure Hunt

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

Start Hunting!

Translated by