问题标签 [opencv3.2]

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 投票
0 回答
253 浏览

opencv - 弯曲物体检测

我在工厂有肋骨的图像,其中一些可以弯曲。对于每个肋骨,我都有它的二进制掩码 - 在这里您可以一次看到所有肋骨的掩码图像。蒙面肋骨插图:

图像

如果它对你有帮助,这里所有的肋骨面具都连接到一个。肋骨面膜:

图像

如您所见,肋骨不仅是垂直的,还可以旋转。但我需要检测弯曲的(例如图像左侧第三根肋骨)。你知道怎么做吗?

我尝试了距离变换来找到肋骨的中心,然后像使用 1D 函数一样使用它,但是整个肋骨大约有 50 个像素宽,所以噪音太大 - 函数有太多的峰值,无法使用导数或一些近似值。接下来,我想分别在上部和下部尝试类似 Hough-Lines 的东西,但是我正在寻找的细节(如您所见,弯曲不大)对于这种方法来说太小了。

我只需要说“弯曲”或“不弯曲”。目前,我没有其他想法如何检测弯曲的肋骨。我会很高兴有一些想法。

0 投票
1 回答
758 浏览

c++ - 关闭窗口时 OpenCV 中止(核心转储)

我尝试读取相机帧并通过cv::namedWindow使用cv::cuda::GpuMat.

这是我的 C++ 代码:

如果我关闭窗口,我会收到此错误:

如果我键入Esckey 来结束逻辑,它不会引发任何异常。

为什么我会收到此错误,我该如何解决?

0 投票
1 回答
1098 浏览

c++ - 使用 cv::Mat::at 时的 OpenCV 分段错误(核心转储)

我正在尝试将cv::Mat像素映射到float4*CUDA 计算。

如果我运行上面的代码,我得到了Segmentation fault (core dumped).

代码访问的最后一个像素位于 (1662, 0)。

如果我直接访问循环外的像素:

这也导致Segmentation fault (core dumped).

为什么会发生这种情况,我该如何解决这个问题?

0 投票
2 回答
54 浏览

c++ - NumDisparity 超出范围。

我正在使用调整参数进行块匹配。

我对 numDisparities 使用了以下条件。

当我从轨迹栏滑块获得价值时。我得到了超出范围的错误。并且 numDisparities 应大于 0 并除以 16。

这就是我正在检查我的上述声明的内容。那么我不明白为什么它会产生错误。任何人都可以请指出原因。谢谢。

0 投票
1 回答
541 浏览

c++ - inpaint() 不会产生预期的结果。为什么?

在这里,我试图消除眩光。

这是我的原图。
在此处输入图像描述

这是我的面具图像。
在此处输入图像描述

我使用以下代码行来使用inpaint()

但我不明白为什么我无法使用inpaint(). 谁能指出原因?谢谢!

0 投票
0 回答
630 浏览

c++ - 在 OpenCV 中使用 VGG 描述符训练和测试视觉词包

我有一个获取 ORB 关键点和图像描述符的代码,然后它使用“ BOWKMeansTrainer ”训练一个词袋。此代码的目的是使用 k-means 对照片进行聚类。我使用 ORB 没有任何问题。

这是我的问题:

我看到 openCV 提供了一个 VGG,你可以在这里找到它。我想使用 VGG 描述符而不是 ORB。根据文档,VGG 没有任何生成关键点的功能,所以我使用 ORB 关键点,然后使用 ORB 关键点创建 VGG 描述符。

这一个也有效,我可以轻松地训练词袋并将它们聚类,就像我使用 ORB 的方式一样。但是,当我想测试词袋时,我收到了这个错误:

我试图更改查询描述符 Mat 和描述符 Mat 的类型,但我无法解决它。在最好的情况下,错误变为:

我不确定问题是类型上的一个小错误,还是因为同时使用了 ORB 关键点和 VGG 描述符。

我的部分代码在这里:

运行时错误发生在这一行:

如果有人帮助我找到解决方案,我将不胜感激。

谢谢,

0 投票
2 回答
222 浏览

c++ - 在特殊板中标记字符

我想在车牌中找到所有连接的组件。首先,我对我的图像进行阈值处理,然后使用opencv中的连通分量函数来标记二值图像,但是没有检测到红色区域中的字符和蓝色区域中的数字10。我能做些什么来检测一个字符?

车牌样本:

在此处输入图像描述 在此处输入图像描述

0 投票
3 回答
2489 浏览

python-3.x - cv2.minAreaRect 出错,给了我与我没有使用过的凸包函数相关的错误

在下面的代码中,我试图找出一个对象是否为绿色并在其周围绘制轮廓。有了这些信息,我还想找到形状的角并对其进行裁剪,但是我收到了与代码中未使用的 ConvexHull 函数相关的错误。我用过 python 3 和 Opencv 3.2.0

我写的代码给了我这个错误

这是我的代码

一段时间以来,我一直在努力寻找解决方法

任何帮助,将不胜感激

提前致谢

-山姆

0 投票
2 回答
1917 浏览

c++ - 如何在 openCV 3.2.0 中使用蛮力匹配?

我正在使用 opencv 3.2.0,我正在尝试分别与 FAST、BRISK、BruteForce 进行特征检测、描述符计算和描述符匹配。我在 Visual Studio 2017 中使用 C++。

这是我的简单代码,它不能正常运行。我阅读了许多代码和提示,但我找不到适合我的问题的解决方案。

有谁能帮助我吗?我怎样才能让它正常运行?

0 投票
1 回答
416 浏览

c++ - 在 opencv2 和 opencv3 中使用 findContours 时的输出差异

我正在使用完全相同的步骤来查找图像的轮廓,但是在 Opencv 2.4.8 和 Opencv 3.2 中我得到了两个不同的结果!有人知道为什么吗?这是程序:

输入图像为:

输入图像

使用 opencv 2.4.8 时的输出:

输出 Opencv2

以及使用 Opencv3.2 时的输出:

在此处输入图像描述