问题标签 [matchtemplate]
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.
python - matchTemplate 与调整大小的图像不起作用:(-215:断言失败)_img.size().height <= _templ.size().height
我在 matchTemplate 调用之前调整了我的图像大小,以确保两个图像具有相同的大小。
但我得到了这个错误:
python - 用于钓鱼小游戏 cv2.matchTemplate 的 Py 脚本
我正在尝试制作钓鱼小游戏的脚本,网上有一个关于albion钓鱼脚本的帖子,问题是在这个游戏中指针很细,并且有很多不同的纹理和颜色,对于简单的灰度匹配工作在滑块的一个部分上很好(例如在水纹理上),有时在其他部分(树木纹理)上工作,在第三个部分(例如天空)上不起作用。如果我更改为较低的阈值,它通常会在不匹配的情况下激活。
没有运气也尝试了边缘检测 cv2.canny。
关键是当鱼在最小的绿色区域时单击按钮。该字段出现在滑块的随机部分中。
有任何想法吗?
=================
更新
正如Furas所说,尝试了配色
但在回合之前或回合之间我得到错误
如何解决?
按照弗拉斯的建议,将两个面具合二为一
但是我可以用什么来找到绿地和鱼的最大值?到目前为止,它是 2 个掩码、2 个 cnts 和 2 个最大值。
使用 mss sct.grab 我没有那么好的 FPS(平均 25fps)还有其他更好的捕捉方法吗?
非常感谢!
c++ - 在 OpenCV 中与屏幕捕获一起使用的函数 matchTemplate
我想使用一个调用matchTemplate
来匹配模板图片与我当前屏幕的 OpenCV 函数。我当前的屏幕和模板图片保存在文件中。我正在使用下面的代码将我的模板与屏幕匹配:
结果,当模板与屏幕真正匹配时,它的值min
大约等于0.003,但有时当模板与屏幕不匹配时,它也等于大约0.0045(当我使用另一张具有相似屏幕的图片时会发生这种情况) .
我想了解一个解决方案,它可能是一个可以更精确地检查它的特殊功能。我的模板图片 (template.png) 只是主屏幕 (screen.bmp) 的裁剪图片,因此最好的解决方案是一个可以逐像素匹配的 OpenCV 函数,可能偏差很小。我想完美匹配它而不是找到相似之处。
ocr - 使用 Tesseract 进行 OCR 匹配模板感兴趣区域 (ROI)
这是我第一次尝试使用 Python。我通常使用 .NET,但为了识别文档中的形状,我转向 Python 和 OpenCV 进行图像处理。
我正在使用 OpenCV TemplateMatching (cv2.matchTemplate) 在我的文档中发现感兴趣的区域 (ROI)。
这很好用。模板匹配 ROI 并放置矩形,识别匹配。
我图像中的 ROI 包含我还需要 OCR 和提取的文本。我正在尝试使用 Tesseract 来做到这一点,但根据我的结果,我认为我的做法是错误的。
我的流程是这样的:
- 运行 cv2.matchTemplate
- 循环匹配的 ROI
- 添加矩形信息。印象
- 传递矩形信息。到正方体
- 将从 tesseract 返回的文本添加到图像
- 写出最终图像
在下图中,您可以看到匹配的区域(很好),但您可以看到 ROI 中的文本与 tesseract 中的文本(ROI 的右下角)不匹配。
请有人看一下并建议我哪里出错了?
scikit-image - 试图从 skimage.feature 理解 match_template
我试图从 match_template 中理解某人的代码,但我无法理解下面的过程。假设有一张照片他要切几部分。图片保存在:
然后他在该图片上选择了 2 个位置,坐标为:
由于 match_template 需要两个参数 - 一个是原始图片,另一个是他将用来比较的内容。那么下面的流程是这样的:
我不知道他想在 imagenband 和 templateband 上做什么。有人可以指点我一个方向吗?
谢谢!
python - opencv图像处理方法推荐
所以我正在开发一个将屏幕截图与模板图像进行比较的程序。我完成了图像识别代码(至少大部分(据我所知)),但它不断得到误报。现在我正在使用 CV_TM_CCOEFF,但我仍然不完全理解这些是如何工作的(我数学很烂,这是一个朋友推荐的)如果我碰巧已经是正确的人,任何关于这方面的建议将不胜感激。代码 :
附带说明一下,如果有人可以解释这行代码的工作原理,将不胜感激
提前致谢!
python - OpenCV 匹配模板仅在指定的位置网格上
我有一个程序,我将一张图像作为输入,我必须将它与大约 640 个已知图像进行比较,看看哪一张最相似。为此,我正在考虑使用 OpenCV 的匹配模板,因为它在做我想做的事情时似乎非常快速有效。
我注意到匹配两个 400x240 像素的图像 1000 倍比在 1400x240 像素中匹配 400x240 像素的图像要慢得多,尽管它们都是 1000 次匹配。我的想法是将 640 张图像组合成一张大图像,将它们包含在一个网格中(很容易做到,因为它们都具有相同的大小)。
这样做我可以真正加快这个过程,如果我可以只在大组合参考的一些子图像中匹配输入图像的模板(那些在“网格像素”中左上角的子图像,就像在一个子图像中一样实际上是我用来组合成大参考图像的 640 张图像之一),但似乎没有办法告诉匹配模板只匹配指定的一组位置。
我怎样才能加快这个过程?是否有不同的库(我正在使用 Python)执行与匹配模板类似的操作,但我可以在其中指定要匹配的子图像?有完全不同的方法更适合我的目标吗?
编辑:基本上我要做的是:我正在从视频游戏中截取屏幕截图,并且在屏幕截图中有一些角色的干净肖像(400x240 像素)。我有所有角色的清晰肖像(其中 80 个,每个 8 个皮肤,总共 640 个肖像),我想找出哪些肖像最接近屏幕截图中的那个,以便我可以识别所扮演的角色。如果我也可以像 OpenCV 中的 matchTemplate 那样“屏蔽”一些像素,那就太棒了,因为 400x240px 矩形的某些特定部分会因玩家而异,我希望我不必考虑这一点并且可以屏蔽掉那些(已知的)像素
python - 如何使用 Python 同时执行多个任务?
我试图让我的宏程序一次执行多个功能。我设置它的方式是我定义函数,然后在大多数函数上调用一个线程,并让一些函数仍在主 While 循环上运行。
好的,所以问题是:当主 While 循环函数正在运行时,我打开的不同线程将不会执行,直到主 While 循环函数正在执行。
我需要的是一种使其成为可能的方法,以便所有函数同时执行,无论它是否等待主要的 While 循环函数完成。
这是我的代码:谢谢
请注意 charMove 函数,它有一个 time.sleep,并且线程不会评估,直到 charMove 函数结束,这是我的问题.. 任何解决方案?