我有一些数据点,我将它们划分为一些聚类,并使用一些聚类算法,如下图所示:(图像可能需要一些时间才能显示) alt text http://www.freeimagehosting.net/uploads/05a807bc42.png
每种颜色代表不同的簇。我必须在每个群集周围绘制多边形。因为这个原因我使用了convhull。但正如你所看到的那样,红色星团的多边形非常大,并且覆盖了许多区域,这不是我要寻找的区域。我需要在我的数据集周围绘制线条(ploygons)。例如,在上图中,我想要一个多边形,其绘制方式与具有3个分支的红色簇完全相同(和周围)。换句话说,在这种情况下,我需要一个带有3个分支的多边形来覆盖我的红色簇,而不是覆盖整个区域的大多边形。谁能帮我这个? 请注意解决方案应该是通用的,因为群集会在算法的每次运行中发生变化,因此需要采用一般的方式。
答案 0 :(得分:3)
我不确定这是一个完全指定的问题。我看到这个问题的变种经常出现。
为什么在这里无法真正回答:想象六个点,三个在等边三角形中,另外三个在等边三角形内,在同一个方向上。
这周围的船体是什么?它只是凸壳吗?它是内三角形,有三条线刺出来吗?三角形的相对大小是什么关系?您是否必须指定该参数?
答案 1 :(得分:0)
如果您的群集非常紧凑,您可以尝试以下方法:
imclose
,以填补由于运气不好而没有上色的小洞。bwperim
。这是您正在寻找的多边形的轮廓。