首页 文章
  • 2 votes
     answers
     views

    绘制凸度缺陷C OpenCV

    从下面的代码中,我可以画出最大的轮廓,质心标记为一个小圆圈,船体为黄色线条 . 如何绘制凸性缺陷?我应该使用circle()函数还是drawContours()函数? Mat bw; Mat canny_output; vector<vector<Point> > contours; vector<Vec4i> hierarchy; findContours(...
  • 4 votes
     answers
     views

    非凸多边形 - 使用凸包算法的预处理

    我使用了convexHull算法来找到一些不规则形状的轮廓 . 虽然不够好...... 很可能是因为我不能保证我的形状是凸的...... 我有一组矩形,我希望能够获得轮廓外部的所有点 - 但不能抛出任何轮廓点 . 凸包算法效果很好 - 但它的工作方式与右边的示例类似,因此我在轮廓上丢失了一些信息 . 我想要的东西更接近左边的版本,保留外角,只消除内部的点... 有这样的算法吗? 或者,有没有办法...
  • 3 votes
     answers
     views

    “竞争性编程1”的凸包代码

    我'm trying to understand the 2915373 algorithm in Steven Halim and Felix Halim'的书竞争性编程 . 给定平面中n个点的集合P,"convex hull"问题是找到形成包含所有其他点的凸多边形的顶点的子集CH(P) . 这是一张概述其方法的图片: 他们的算法首先根据它们相对于"pivot...
  • 0 votes
     answers
     views

    OpenCV Convex Hull坐标

    我想找到凸包,以便在纸上画出手绘三角形的边缘 . 使用图像处理进行平滑是不够的,因为我还需要检测这个三角形,如果使用了approxPolyDP函数,手绘三角形往往会有三个以上的点 . 通过approxPolyDP函数正确识别三角形的凸包 . 问题是,我在图像中还有其他形状,在其上创建了一个凸包 . Before convex hull is used: Notice the contour lab...
  • 29 votes
     answers
     views

    找到一个点位于点 Cloud 的凸包中的有效方法是什么?

    我在numpy中有一个坐标点 Cloud . 对于大量的点,我想知道点是否位于点 Cloud 的凸包中 . 我尝试了pyhull,但我无法弄清楚如何检查点是否在 ConvexHull : hull = ConvexHull(np.array([(1, 2), (3, 4), (3, 6)])) for s in hull.simplices: s.in_simplex(np.array(...
  • 0 votes
     answers
     views

    如何在3d numpy数组中计算凸包图像/体积

    我想知道是否有任何基于numpy的工具可以: 在3D中给出二进制输入numpy图像,找到它的凸包; 并返回此3D凸包内的体素(3D像素)的索引或类似列表 . 一种可能性是使用 skimage.morphology.convex_hull_image() ,但这仅支持2D图像,因此我必须逐片(在z轴上)调用此函数,这很慢 . 我绝对更喜欢更有效的方式 . 例如,scipy.spatial...
  • -1 votes
     answers
     views

    凸壳算法问题

    因此,我必须使用分区/融合算法绘制一组随机点的凸包 . 我是'll join the two main functions used in the algorithm, my issue is that if there are multiple points with the same X but different Ys, if the top most (resp. bottom most)...
  • 18 votes
     answers
     views

    球体表面上的(经度,纬度)点的凸壳

    标准凸包算法不适用于(经度,纬度)点,因为标准算法假设您需要一组笛卡尔点的船体 . 纬度 - 经度点不是笛卡尔坐标,因为经度"wraps around"在反子午线(/ - 180度) . 即,经度179以东两度是-179 . 因此,如果您的一组点恰好跨越反子午线,您将计算出错误地在世界各地伸展的虚假船体 . 我可以使用标准凸包算法来解决这个问题的任何建议,或指向正确的“地球...
  • 2 votes
     answers
     views

    Python中的层次聚类凸壳

    我正在使用层次聚类来尝试可视化已被展平为二维的大量数据 . 我想要做的是创建一个可视化,允许我通过将簇作为其组成点的凸包来查看层次结构中不同高度的数据 . 这个问题中最棘手的部分是我需要一种能够在向上移动层次结构时有效地合并对簇的凸包的算法 . 我已经看到很多用于计算O(n log n)时间点的凸包的算法,但在这种情况下似乎更有效地利用问题的子结构,但我是不确定如何 . Edit: 有关更多信息,...
  • 3 votes
     answers
     views

    使用凸壳算法对整数进行排序

    二维凸包的算法使用排序 . 假设有人给你一个凸包实现为黑盒的库 . 展示如何使用凸包算法对给定整数序列进行排序 . 短语“黑匣子”意味着你不看内部代码;你只知道输入和输出是什么以及结果是什么样的 . 你不能从凸包的库实现中“拉出排序算法” . 您可以假设您可以将凸包算法称为原始步骤 .
  • 7 votes
     answers
     views

    凸壳库[关闭]

    我是C#的新手,并且很难计算凸包 . C#是否有某种数学库?如果没有,那么我想我只需要实现自己的 .
  • 0 votes
     answers
     views

    凸壳算法的意外行为

    我试图实现算法以获得给定点集的凸包,并使用opencv使用c上的以下代码可视化结果: #include "opencv2/opencv.hpp" #include "StdAfx.h" #include <vector> #include <cv.h> #include <cv.hpp> #include <cxco...
  • 2 votes
     answers
     views

    凸壳算法的时间复杂度

    凸包算法的复杂性可以用求和符号表示为: 1 C(n)=sum(i=1..n-1)sum(j=i+1..n)sum(k=1..n)1 2 =sum(i=1..n-1)sum(j=i+1..n)n 3 =nsum(i=1..n-1)sum(j=i+1..n)1 4 =nsum(i=1..n-1)(n-i) 从这里我的教授直接跳到: 5 =nsum(i=1..n-1)i 6 =n*n(n-1)/2 7...
  • 0 votes
     answers
     views

    用快速船体算法计算凸包

    我正在学习计算几何,刚刚开始学习快速船体算法用于计算凸包的主题 . 我有一个问题,如果我想绘制一组2D点(比如10点),算法将具有最差的时间复杂度,我将如何做到这一点?有什么简单的方法可以找出要点是什么? 可以找到快速船体算法的伪代码here
  • 1 votes
     answers
     views

    凹面船体在边界上取多边形的所有点

    在我的工作中,我必须在边界中包含一些随机的点组 . 凸形船体占用了额外的空间而且没有最紧凑的形状,所以我修改它以通过以下方式放松边缘: i)为给定的点数绘制凸包 . ii)现在对于不在凸包边界上的每个点,检查是否可以将其添加到边界(当然这会改变边界整形),同时确保没有给定的点位于新的多边形形状之外 . (点多边形算法) iii)如果所有点都位于多边形内部,则重复步骤2以获得其他点 . iv)如果...
  • 0 votes
     answers
     views

    凸壳算法应用

    在MATLAB中使用图像处理的手势识别中使用Convex Hull算法的目的是什么?
  • 1 votes
     answers
     views

    凸壳功能

    我是StackOverflow的新手,这是我在这里的第一个问题 . 我在Convex Hull上解决了一些问题,并且在看到Codechef上的vjudges的答案提交时,我发现他们反复使用以下函数来找出一组点的凸包 . int n = (int)p.size(); if (n <= 1) return p; sort(p.begin(), p.end()); int cnt = 0;...
  • 0 votes
     answers
     views

    具有自己的'Traits'实现的CGAL 3D Convex Hull包含内部点

    我的目标是用CGAL计算一组3D点的静态凸壳 . 我在the proper CGAL documentation page阅读了这篇文章,并实现了第一个算法,在这个算法中,我从之前转换为 Kernel::Point_3 结构的3D点集中获得了一个 Polyhedron_3 (凸包) . 有用 . 然后我尝试将算法直接应用于原始点,即,不将转换应用于 Kernel::Point_3 结构 . 从上面...

热门问题