Locate points inside region based on coordinates

5 visualizaciones (últimos 30 días)
Jason States
Jason States el 10 de Nov. de 2016
Respondida: Image Analyst el 11 de Nov. de 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?

Respuesta aceptada

KSSV
KSSV el 10 de Nov. de 2016
doc inpolygon.

Más respuestas (1)

Image Analyst
Image Analyst el 11 de Nov. de 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