如何将Voronoi区域匹配到这一点

16次观看(最近30天)
阿米特·伊法赫(Amit Ifrach)
评论: Bjorn Gustavsson 2021年8月18日
לק“י
你好!
我正在尝试找到一个命令或代码,该命令或代码可以匹配我从Voronoin命令到它们所包含的点的Voronoi区域。我使用KSSV代码的OAST,所以如果看起来像是Fermiliar,那就是他。
谢谢!
那是代码:
[v,c] = voronoin([xroi yroi]);
vorareaacd45num10thin1st = zeros(length(c),1);
为了i = 1:长度(c)
v1 = v(c {i},1);
v2 = v(c {i},2);
vorarea(i)= polyarea(v1,v2);
结尾
2条评论
Bjorn Gustavsson
Bjorn Gustavsson 2021年8月18日
我回想起Voronoi-boundaries是由距离Delaunay-Triangulation-Edges中点的线段构建的(在最近的邻居线上的一半,因此Delaunay-Trianegulation的双重)。如果您可以共享典型的图像,则可以更容易修改侵犯?

登录发表评论。

答案(1)

Bjorn Gustavsson
Bjorn Gustavsson 2021年8月18日
我每个点解释您的问题的方式 [XROI,YROI] 将在一个Voronoi-cell内部(尽管我的QD检验在Voronoi-Cells外面留下了几个边缘点?)。应该可以通过使用哪个 Inpolygon
为了i1 =长度(c):-1:1
v1 = v(c {i1},1);
v2 = v(c {i1},2);
idx = find(Inpolygon(Xroi,Yroi,v1,v2));
如果〜ISEMPTY(IDX)
idxxyincellj(i1)= idx(1);
结尾
如果numel(idx)> 1
disp([['细胞 ',num2str(i1),“包含”,num2str(numel(idx)),“要点?”)))
结尾
结尾
Hth

标签

社区寻宝

在Matlab Central中找到宝藏,发现社区如何为您提供帮助!

开始狩猎!