c/c++语言开发共享计算多边形的最小面积矩形

我需要计算多边形周围的最小区域矩形( 最小可能的矩形 )。

我唯一的输入是多边形中的点数。

我也有积分的坐标。

    将旋转卡尺算法用于凸多边形,否则使用凸包。 您当然需要多边形中点的坐标,而不仅仅是点的数量。

    这称为最小边界框 ,它是OCR包中使用的最基本算法。 您可以使用OpenCV包中的Rotating Calipers找到实现。 获得源代码后,请查看此文件,

    cv/src/cvrotcalipers.cpp 

    您需要的方法是cvMinAreaRect2()

    首先进行格拉姆扫描并获得该组点的凸包 。 然后你可以使用这里讨论的最小矩形

    请遵循以下算法

    有关详细信息,请检查链接Minimum-Area-Rectangle

    显然,你需要点的坐标才能得到答案。 如果矩形与X和Y aces对齐,那么解决方案是微不足道的。 如果你想要任何角度的最小矩形,那么你需要做一些优化过程。

      以上就是c/c++开发分享计算多边形的最小面积矩形相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/562512.html

      (0)
      上一篇 2021年2月4日
      下一篇 2021年2月4日

      精彩推荐