poly2maskfine
Version 1.0.0 (2.28 KB) by
Dirk-Jan Kroon
Computes an anti-aliased mask from a polygon, like poly2mask but then accurate anti aliased
poly2maskfine Computes an anti-aliased mask from a polygon.
GrayMask = poly2maskfine(X, Y, M, N) computes an accurate anti-aliased mask
representing the polygon defined by the vertices in vectors X and Y.
The output GrayMask is a double array of size M x N:
- Pixels on the edge of the polygon are set to a value representing
the area of overlap between the polygon and the pixel's square area.
- Pixels inside the polygon (defined by X and Y) are set to 1.
- Pixels outside the polygon (defined by X and Y) are set to 0.
poly2maskfine automatically closes the polygon if it's not already closed.
Example:
% Create a 100x120 grayscale image
M = 100; N = 120;
% Create an ellipse
theta = linspace(0, 2*pi, 100); % 100 points for the circle contour
x_ellipse = 60 + 55 * cos(theta); % x coordinates of the circle contour
y_ellipse = 50 + 40 * sin(theta); % y coordinates of the circle contour
% Compute the anti-aliased mask for the ellipse
GrayMask = poly2maskfine(x_ellipse, y_ellipse, M, N);
figure, imshow(GrayMask)
Cite As
Dirk-Jan Kroon (2026). poly2maskfine (https://uk.mathworks.com/matlabcentral/fileexchange/164491-poly2maskfine), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Created with
R2024a
Compatible with any release
Platform Compatibility
Windows macOS LinuxTags
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
| Version | Published | Release Notes | |
|---|---|---|---|
| 1.0.0 |
