问题标签 [template-matching]

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 投票
4 回答
11307 浏览

java - 匹配 Max Min 值范围的 OpenCV 模板是什么?需要用作theshold /c++/java

我正在使用模板匹配创建一个简单的 openCV 应用程序,我需要比较在大图像中找到一个小图像并将结果返回为 true(如果找到匹配)或 false(未找到匹配)。

现在问题在于使用这个 minMaxValue 做出决定(真/假)。我知道上述两种方法 TM_SQDIFF 和 TM_SQDIFF_NORMED 返回低值,而其他方法返回高值,因此我可以有 2 个不同的阈值并比较一个阈值(取决于模板方法类型)。

因此,如果有人能解释 MinMaxLocResult 返回的 minVal 和 maxVal 范围是多少,那就太好了。

它是0到1的范围吗?

如果是,对于 Max 类型模板方法值 1 是否完美匹配?

0 投票
1 回答
7062 浏览

opencv - 使用 OpenCV 进行角度和比例不变模板匹配

函数将模板图像从 0 度旋转到 180 度(或高达 360 度)以搜索源图像中所有相关的匹配项(在所有角度),即使具有不同的比例。

该函数是用 OpenCV C 接口编写的。当我尝试将它移植到 openCV C++ 接口时,我遇到了很多错误。有人请帮我将它移植到 OpenCV C++ 接口。

结果 :

模板图片:

在此处输入图像描述

结果图片:

上面的函数在此图像中围绕完美匹配(角度和比例不变)放置矩形.....

在此处输入图像描述

现在,我一直在尝试将代码移植到 C++ 接口中。如果有人需要更多详细信息,请告诉我。

0 投票
2 回答
3616 浏览

opencv - OpenCV 模板匹配最大值最小值返回错误值

我正在尝试使用 OpenCV (java) 进行模板匹配并使用最大最小值来确定是否找到了对象。

我正在使用以下 java/opencv 代码,但问题是它为最佳匹配以及未找到匹配的场景返回 0.0 的最小值。

所以这个模板匹配似乎不可靠地确定对象是否找到。我在这段代码中做错了什么还是我需要采用任何其他技术?

提前致谢。

0 投票
1 回答
2095 浏览

c++ - 遍历 cv::Mat 中包含的 cv::Points

我正在使用 OpenCV 模板匹配在另一个图像中查找图像。

具体来说matchTemplate(),它返回一个cv::Mat包含匹配的相似性图。

除了使用之外,还有什么方法可以对其中cv::Point包含的 s 进行排序?cv::MatminMaxLoc()

我努力了:

成功有限。

0 投票
1 回答
2008 浏览

android - 如何使用 OpenCV 中的模板匹配(在 Android 中)获得完全匹配?

我是 OpenCV 的新手。我做了一个应用程序,它告诉用户给定的图像是否给定了模板。我使用了这段代码。它完美匹配。但它不会检测给定图像是否没有匹配的模板。当我阅读它时,它达到了最高值并向我显示了一个错误的结果(显示在图像中的其他地方)。我阅读了有关 minVal 和 maxVal 的信息。但我仍然无法很好地理解它的作用。因为我调试了代码。每次 minVal 为 0.0 而 maxVal 为 255.0 (即使图像是否包含模板,我的意思是每次。)。我被困在这里。请帮助我只显示正确的结果。

0 投票
1 回答
1051 浏览

android - 替换android中的手势库模板

是否可以从正在运行的应用程序中替换模板库的手势模板?我正在构建一个手写识别器系统,其中手势库文件中有字母模板。所以基本上在代码中加载库之后,我比较用户输入手势,如:

这应该可以很好地工作,直到用户给出与我在构建库模板期间所做的相同的模式。但是我想给用户一种灵活性,当预测不匹配时,可以用他的手写模式替换模板项。

因为以下 2 个手写手势样本在图案方面不同,但不是字母。假设,我的系统支持第一个图像图案,我希望当用户给出第二个图像图案时,系统会要求用户确认以将其替换为A的库模式,确认后替换它。这样下次系统将更好地识别用户模式。

任何帮助将不胜感激。

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

0 投票
2 回答
177 浏览

c++ - 下一列的向量大小的c ++向量

我正在编写一个代码来使用 cv::matchTemplate 进行一些模板匹配,但是我遇到了我创建的向量的二维向量 (vov) 的一些问题,我称之为 vvABC。目前,我的 vov 有 10 个元素,可以根据我在运行代码时传递的值进行更改。

我的问题是从我的 vov 中的一列移动到下一列,以便我可以计算大小。根据我对 vov 工作原理的理解,如果我将元素存储在我的 vov 中:

要计算第一列的大小,我应该简单地执行以下操作: vvABC[0].size() 来获取第一列的大小(在这种情况下会给出 3)和 vvABC[1].size()获得第二列的大小(这将给出 7)。我现在面临的问题是他们在两种情况下都给出'3',这显然是错误的。

有人可以帮助我了解如何获得下一列的正确大小吗?

我将我的检测结果存储在我的 vvABC 中,现在我想一次匹配一个。

0 投票
1 回答
4732 浏览

android - 使用 openCV 在 Android 中进行模板匹配

我正在尝试使用模板匹配将图像与 Android 中的相机输入进行匹配。当我在这里尝试使用静态 2 图像时:Android 中的 OpenCV 模板匹配示例,一切正常。但是当我尝试使用从相机捕获的图像时,我没有得到正确的结果。以下是我编写的代码:

当从相机捕获图像时,我希望此模板匹配工作。任何帮助是极大的赞赏!

0 投票
3 回答
1451 浏览

opencv - OpenCV: How to determine/detect if I have a necessary object in the photo or not?

How can I determine/detect if I have a necessary object in the photo or not?

I don't need to recognize the class of the object, but I need to know if I have exactly the same object as in the template picture.

Thus far I have tried to use template matching, histogram matching and SIFT-like methods, but none of these methods have the level of accuracy I need.

Can anyone suggest a precise method?

UPD

DB size in release - 5.000-10.000 unique objects

Available training data set - 50 objects.

0 投票
3 回答
40784 浏览

c++ - 实时模板匹配 - OpenCV、C++

我正在尝试使用模板实现实时跟踪。我希望用每一帧更新模板。我所做的主要修改是:

1) 将模板匹配和 minmaxLoc 分离为单独的模块,分别为TplMatch()minmax()函数。

2) 在track()函数中,select_flag 始终保持为真,以便每次迭代都将新模板复制到“myTemplate”。

3)函数track()的最后3行是更新模板(roiImg)。

4)另外,我删除了track()函数的任何参数,因为imgroiImg是全局变量,因此无需将它们传递给函数。

以下是代码:

未跟踪更新的模板。我无法弄清楚为什么会发生这种情况,因为我每次迭代都会更新我的模板(roiImg)。minmax()函数的匹配值每次都返回相同的点(坐标)。测试视频可在以下网址获得: http ://www.youtube.com/watch? v=vpnkk7N2E0Q&feature=youtu.be 请查看并指导...非常感谢!