问题标签 [contour]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3334 浏览

android - Android 位图轮廓

我正在尝试绘制可绘制对象的轮廓,
我尝试使用模糊,如本页所示:
如何在位图周围制作发光效果?
它的效果不是我想要的,
我想要一个“实心”的轮廓,
而不是模糊。

有谁知道怎么做?

0 投票
2 回答
8454 浏览

wolfram-mathematica - 从 Mathematica 中的 ContourPlot 中提取等高线

我有两个变量的函数 f(x,y),我需要知道它与零相交的曲线的位置。ContourPlot 非常有效地做到这一点(也就是说:它使用巧妙的多网格方法,而不仅仅是蛮力细粒度扫描),但只是给了我一个情节。我想要一组值 {x,y} (具有一些指定的分辨率)或者可能是一些插值函数,它允许我访问这些轮廓的位置。

曾想过从 ContourPlot 的 FullForm 中提取它,但这似乎有点 hack。有没有更好的方法来做到这一点?

0 投票
1 回答
1335 浏览

image-processing - 将 CvFindContours() 从 8-connected 更改为 4-connected neighbors

OpenCV 的 cvFindContour() 方法按照 8 连通邻居规则获取连通分量。有什么方法可以将其更改为 4-connected 邻居规则 - 检查连通性时不会考虑角落单元格。

显然,Mathematica 使用CornerNeighbors->False SO 上显示的简单方法来做到这一点。在 OpenCV 中有什么方法可以做到这一点?即使我们要实际更改 cv*.h 文件中的函数定义(这是相当多毛的)......任何指针?

0 投票
1 回答
116 浏览

contour - 有人可以很好地解释 IDL 轮廓编程中的“high_low”值吗?

“一个字节,如果轮廓高于其周围环境,则为 1,如果轮廓低于其周围,则为 0。” 解释对我来说根本没有意义。:-(

我正在尝试编程的上下文是我正在绘制 kelvin-helmholtz 漩涡,我只想突出显示从初始漩涡中脱离的闭合轮廓。所以,沿着我的情节外部封闭的轮廓是不好的。我正在修改的代码将所有 high_low = 1 值视为不符合我们想要的轮廓,但我不明白为什么。

任何帮助都会很棒!谢谢你!

0 投票
3 回答
1482 浏览

image-processing - 如何在标签矩阵中绘制对象的轮廓

我有一个分割图像的标签矩阵。例如,


1 1 1 2 2 2 3 3 3 4 4 4
1 1 1 2 2 2 3 3 3 4 4 4
1 1 1 2 2 2 3 3 3 4 4 4
1 1 1 2 2 2 3 3 3 4 4 4
1 1 1 2 2 2 3 3 3 4 4 4
1 1 1 2 2 2 3 3 3 4 4 4
1 1 1 2 2 2 3 3 3 4 4 4
1 1 1 2 2 2 3 3 3 4 4 4

现在我想绘制每个对象的轮廓,使每个对象边缘的像素值为 1,其他像素值为 0。

像这样的东西


1 1 1 1 1 1 1 1 1 1 1 1
1 0 1 1 0 1 1 0 1 1 0 1
1 0 1 1 0 1 1 0 1 1 0 1 1
0 1 1 0 1 1 0 1 1 0 1
1 0 1 1 0 1 1 0 1 1 0 1
1 0 1 1 0 1 1 0 1 1 0 1 1 0 1
1 0 1 1 0 1 1 0 1
1 1 1 1 1 1 1 1 1 1 1 1

我希望有一个函数可以在 Matlab 中执行此操作,但我不知道。

0 投票
1 回答
1217 浏览

vb6 - 等高线算法

这很可能是重复的,但我似乎找不到特定于我的问题的东西。

我在图片框中有一个 xy 网格。每个网格单元都有特定的质量。我想根据质量在这个 xy 网格上创建等高线。

有人对执行此任务的好算法有任何想法吗?我试图在 VB6 中完成这项工作,但任何算法都可以。

编辑

轮廓网格

我有一个网格。我想显示基于质量的轮廓线(即,其中有多个点的单元格质量会更重)

0 投票
1 回答
20045 浏览

opencv - Opencv匹配轮廓图像

我想知道比较一组轮廓的最佳策略是什么,实际上是从两张图片中进行精明边缘检测的边缘,以便知道哪一对更相似。

我有这张图片:

http://i55.tinypic.com/10fe1y8.jpg

我想知道如何计算其中哪一个最适合它:

http://i56.tinypic.com/zmxd13.jpg

(应该是右边那个)

无论如何要比较整个轮廓吗?我可以轻松地旋转图像,但我不知道使用什么函数来计算右侧的参考图像是最合适的。

这是我已经尝试过使用opencv的:

matchShapes 函数 - 我使用 2 个灰度图像尝试了此函数,并且在每个比较图像中我总是得到相同的结果,并且该值似乎是错误的,因为它是 0,0002。

所以我意识到matchShapes,但我不确定这是正确的假设,是该函数适用于成对的轮廓而不是完整的图像。现在这是一个问题,因为虽然我有我想要比较的图像的轮廓,但它们有数百个,我不知道哪些应该“配对”。

因此,我还尝试将第一个图像的所有轮廓与其他两个进行迭代进行比较,但我可能会比较,例如,5 的轮廓与两个参考图像的圆形轮廓而不是 2 轮廓。

还尝试了简单的 cv::compare 函数和 matchTemplate,都没有成功。

0 投票
2 回答
2930 浏览

image - 地形图等高线提取

我正在尝试从彩色地形图中提取等高线。目标是使用我从零开始开发的引擎构建该区域的 3D 演示。直到现在一切都很好(从零开始制作 3D 引擎并显示对象等),但现在我被卡住了......

但是,我已经看过许多描述用于执行此类操作的算法的文档-它们使用一种简短的语言,我很难理解,并假设对图像处理有很强的了解。

如果你们中的任何人能告诉我一个很好的资源来学习如何去做,或者告诉我一系列资源,这将使我能够将它们组合成一个完整的算法,我将非常高兴。如果您知道任何一本书,其中包含有关该问题的一章,或者具有允许我将其中的一些元素组合到我自己的系统中的描述,那将有很大帮助。

如果你知道有人做过类似的事情——这也有助于我认识他。

提前致谢 !

0 投票
1 回答
720 浏览

c++ - cvStartFindContours 的奇怪问题?

每当我将图像传递给 cvStartFindContours 时,我的图像并没有找到轮廓,而是完全变黑。我完全不知道为什么。我知道这不是由代码的另一部分引起的,即使我将所有内容都注释掉,但是在对 cvStartFindContours 的函数调用中留下,我的图像仍然变黑。然而,当我注释掉对 cvStartFindContours 的调用时,我的图像仍然正常。为什么会这样?我传入的图像(skinMask)是一个 8 位、1 通道的图像(IPL_DEPTH_8U),包含数据。(它不是黑色的,上面有白色的碎片)。

为什么我的图像变黑了?谢谢

0 投票
1 回答
1108 浏览

c++ - cvFindContours() 异常?

我正在创建实时软件,所以经常在一个完全黑色的蒙版上调用 cvFindContours。如果出现这种情况,cvFindContours 会抛出异常,程序会崩溃。

如果 cvFindContours 无法找到轮廓,我将如何做到这一点,而不是程序崩溃,程序只是移动到下一行代码(只是简单的继续)?

谢谢

PS:我想过自动保持一个像素始终为白色,以防止 cvFindContours 无法找到轮廓,但这对我来说很不方便。