How to randomly divide an M by M region into n sub regions

조회 수: 2 (최근 30일)
Shamsuddeen Abdullahi
Shamsuddeen Abdullahi 2019년 4월 20일
편집: Image Analyst 2019년 4월 20일
I what to randomly divide a sqaure region (20 by 20) into 3 portions (not necessary square in shape).
Then randomly deploy points in the 3 regions.
I tried the code below but not getting what i want. I need random divisions (different shapes e.g one portion can be a trapezoid and so on)
m=20;
for i=1:1:m;
n(i)=rand.*0.25.*m;
b(i)=(0.25 +(0.25).*rand).*m;
c(i)=(0.5 +(0.25).*rand).*m;
end
plot (n, '+r')
hold on
plot (b, 'ok')
hold on
plot (c, 'vg')
hold off
Please help
The above code gives divisions along horizontal lines
figure 1.
I need something like the above figure 1.
  댓글 수: 3
Walter Roberson
Walter Roberson 2019년 4월 20일
https://en.m.wikipedia.org/wiki/Voronoi_diagram

댓글을 달려면 로그인하십시오.

답변 (1개)

Image Analyst
Image Analyst 2019년 4월 20일
편집: Image Analyst 2019년 4월 20일
Try voronoi() if you want random points, or superpixels() if you have an image and want some sort of decision-based boundaries.

Community Treasure Hunt

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

Start Hunting!

Translated by