【问题标题】:Convex Hull with a predefined number of vertices具有预定义顶点数的凸包
【发布时间】:2018-06-29 11:43:53
【问题描述】:

我正在研究图像分割,我认为凸包可以为我的问题提供一个简单的解决方案。目前我有边的多边形(见下图)。由于图像处理问题,形状没有干净的直边,因此当我使用标准凸包(在 Matlab 中)时,我可能会得到超过四个主要角来定义它。

我的目标是强制凸包算法找到将包围我的多边形的最佳 4 个顶点(即每个多边形 4 个最佳封闭顶点)。这可能吗?示例代码将不胜感激。

谢谢

【问题讨论】:

  • mathworks file exchange 提供了一套函数,提供最小面积和最小周长边界四边形算法的实现。

标签: matlab image-processing computer-vision convex-hull convex-polygon


【解决方案1】:

“矩阵搜索算法的几何应用”中简要提到了最小面积边界多边形的问题(参见应用部分)。这并不简单,可能不适合你。

为了更简单(但近似地)回答您的问题,您可以考虑四个基本方向并找到其中最远的点,这些点定义了一个四边形。 (还要考虑四个中间方向,更适合轴对齐的矩形。)

如果你坚持有一个封闭的四边形,你可以将四个边平移到各自垂直方向上最远的点,并找到成对的交点。

如果您坚持使用矩形,请计算凸包并通过旋转卡尺方法找到最小面积或最小周长边界矩形。 https://geidav.wordpress.com/tag/rotating-calipers/

【讨论】:

  • 致编辑:意思是多边形(k 边)。感谢您的通知。
  • 是的,这将给出一个近似解,但不能保证四边形包含所有点。这真的取决于这是否适合提问者的应用程序。因为主要问题似乎是不精确的分割点,所以这听起来不会成为问题。使用 PCA 也是获得矩形轴的好方法。
  • @TobyCollins:我已经添加了解决封闭问题的材料。
  • 是的,我明白了。如果目标是拥有一个矩形四边形,也可能值得调整,但这从问题中不清楚。
猜你喜欢
  • 1970-01-01
  • 2018-05-07
  • 2015-08-09
  • 2013-10-09
  • 2015-08-19
  • 1970-01-01
  • 2011-01-08
  • 1970-01-01
  • 2015-03-09
相关资源
最近更新 更多