# Creating a ROI numerically (without clicking) with impoly

2 views (last 30 days)
JoaquinB on 31 Jan 2020
Commented: Subhadeep Koley on 3 Feb 2020
Hello, i do have some points (which i know the coordinates) of a greyscale image and i used them to generate a polygon (using boundary function since they are not connected in some regions) so i have an area closed.
Now i want to extract all the info thats outside that region, (everything inside 1, outside 0) so i have a binary image.
I guess the easiest form is to generate a ROI and create a mask trough that ROI, but I see no way to do it automatically ( I dont want to click on the points of my poligon, its not an accurate procedure and it takes too much time).
Anyone has any idea of how to proceed?
Thanks

Subhadeep Koley on 1 Feb 2020
I am assuming you are trying to create Polygonal ROI Non-interactively. The code below might help!
% Read the image into the workspace
% Display the image
imshow(I, []);
% Draw a Point ROI on the image with specified points
roi = images.roi.Polygon(gca, 'Position', [115 30; 80 45; 80 80; 115 90; 145 65]);

Show 1 older comment
Subhadeep Koley on 3 Feb 2020
You can specify point values like below also.
% Read the image into the workspace
% Display the image
imshow(I, []);
% Specify the points
pointVals = [115 30; 80 45; 80 80; 115 90; 145 65]; % Here "pointVals" is a (5x2) vector
% Draw a Point ROI on the image with specified points
roi = images.roi.Polygon(gca, 'Position', pointVals);
Hope this helps!
JoaquinB on 3 Feb 2020
Yea, that was obvious, forgot the Matlab notation.