Generate gray scale image which contains non overlapping triangle.
2 次查看(过去 30 天)
显示 更早的评论
Generate gray scale image of M×N having a border around it which contains n-non overlapping right angle triangle.As shown in below figure.Afterwards Image size become M+2*border×N+2*border.
8 个评论
Rik
2020-9-28
Start by learning C or assembler. That way you can avoid all built-in functions, including plus and subsref.
Do you have a clear description of the functions you want to avoid? And why? To challenge yourself?
回答(1 个)
Image Analyst
2020-9-27
Try poly2mask():
binaryImage = false(M, N);
for k = 1 : numTriangles
x = rand(3, 1);
y = rand(3, 1);
thisMask = poly2mask(x, y, M, N);
binaryImage = binaryImage | thisMask;
end
imshow(binaryImage);
It should be really trivial for you to adapt it to make sure the triangles are right triangles. Just make sure 2 of the x's are the same and 2 of the y's are the same.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing and Computer Vision 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!