在Python中查找大图像中图像的所有位置

2024-02-19

我扫描了一个面板,由于限制而无法显示,但我尝试“模拟”它:

这张图片模拟了我的扫描:白色背景,带有圆形黑色贴纸,每个贴纸中间都有一个白色的小圆圈。有些贴纸在扫描结果上略有不同,但形状/贴纸的类型始终相同。

现在我需要编写一个代码,能够查看该图像并显示+返回贴纸的所有位置。我能够使用 OpenCV 模板匹配找到一个位置,但这只能找到与我作为输入提供的较小图像的精确匹配。我需要同时找到所有位置。

我无法在这里或任何地方找到涵盖我的问题的主题。

我希望有人能帮帮忙。

问候, 加内什


我设法使用一个相对简单的 python 脚本来实现多对象模板匹配。

我使用下面的图片作为模板.jpg

我写的脚本如下

import cv2
import numpy as np

#load image into variable
img_rgb = cv2.imread('scan.jpg')

#load template
template = cv2.imread('template.jpg')

#read height and width of template image
w, h = template.shape[0], template.shape[1]

res = cv2.matchTemplate(img_rgb,template,cv2.TM_CCOEFF_NORMED)
threshold = 0.8
loc = np.where( res >= threshold)
for pt in zip(*loc[::-1]):
    cv2.rectangle(img_rgb, pt, (pt[0] + w, pt[1] + h), (0,255,0), 2)

img_rgb = cv2.resize(img_rgb,(800,600))
cv2.imshow("result",img_rgb)
cv2.waitKey(10000)

结果如下

然而,如果这些黑色贴纸的尺寸不太一致,你可能想使用多尺度模板匹配方法.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Python中查找大图像中图像的所有位置 的相关文章

  • Django 管理通过 ImageField 链接到图像

    我已经设置了一个活动的 Django 模型 其中包含以下字段 class Activity models Model thumbnail models ImageField upload to thumbs blank True null
  • 如何将 QT6 深色主题与 PySide6 一起使用?

    简单的演示应用程序我正在尝试设置主题为深色 https doc qt io qtforpython overviews qtquickcontrols2 material html highlight material material s
  • 通过Javascript确定图像文件大小+尺寸?

    作为网络应用程序的一部分 一旦图像被下载并呈现在网页上 我需要确定图像的文件大小 kb 和浏览器上下文中的分辨率 这样我就可以在页面上显示该信息 显然 这需要在客户端完成 必须能够在没有 ActiveX 控件或 Java 小程序的情况下解决
  • C# WPF 将粘贴在 richtextbox 中的 BitmapImage 转换为二进制

    我有一个 Richtextbox 我计划将其保存到数据库中 该数据库可以加载回同一个 Richtextbox 中 我已经让它工作了 这样我就可以将流程文档保存为 DataFormats XamlPackage 这可以保存图像 但问题是文本不
  • 如何用PHP读取图像?

    我知道 localfile FILES media tmp name 如果使用 POST 方法 将获取图像 我正在尝试读取与我的代码位于同一目录中的图像 我如何读取它并将其分配给像上面这样的变量 您发布的代码不会读取图像数据 而是读取其文件
  • 图像在 3D 空间中绕 Y 轴旋转

    我有一个 BufferedImage 我想用 theta 角而不是仿射变换绕 Java 中的 Y 轴旋转图像 图片 旋转将如下图所示 矩形将是图像 我可以通过旋转图像的每个像素并绘制图像来做到这一点 因为我必须旋转很多图像 所以我认为这不是
  • 如何将经度和纬度转换为国家或城市?

    我需要将经度和纬度坐标转换为国家或城市 python中有这样的例子吗 提前致谢 我使用谷歌的API from urllib2 import urlopen import json def getplace lat lon url http
  • 如何在D3节点中放置图像?

    到目前为止 我已经创建了这些 D3 节点 用于创建可折叠的层次树 到目前为止 这些节点的颜色为 AA1C1C 深红色 以表明如果您单击它们 它们将扩展到更多节点 我想要做的是在节点中使用图像中的位置 这对于所有用户来说都是一个加号 以知道它
  • 检查对象数组中的多个属性匹配

    我有一个对象数组 它们都是相同的对象类型 并且它们有多个属性 有没有办法返回一个较小的对象数组 其中所有属性都与测试用例 字符串匹配 无论该属性类型是什么 使用列表理解all http docs python org 3 library f
  • str.replace 在函数中不起作用

    为什么这个函数不返回替换结果 def replacechar str str replace c str replace a y return str p abcd replacechar p print p output abcd str
  • 在 Android 中将图像从可绘制图像转换为字节数组

    由于我要将图像发送到 Parse com 因此我必须将其转换为字节数组 我的第一种方法是从图库中选择图像并将其转换为字节数组 如下所示 Override protected void onActivityResult int request
  • Python pip install 未找到所需版本

    我使用的是Python 3 7 pip版本 10 0 1 操作系统 Windows 10 在 CMD 中 我使用以下命令安装依赖项 Python m pip install requirements txt 但它显示此消息 找不到满足要求的
  • OpenCV非旋转图像拼接

    我正在 OpenCV 中进行图像拼接 从不同位置拍摄平面场景的照片并尝试构图全景图 我修改了缝合示例以满足我的需要 openCV 拼接管道的问题是 它假设相机纯粹旋转 但对我来说情况并非如此 当拍摄的照片与场景完全正交时 没有相机旋转 只是
  • Matplotlib:检查空图

    我有一个循环加载并绘制一些数据 如下所示 import os import numpy as np import matplotlib pyplot as plt for filename in filenames plt figure i
  • 在 Python 中导入 facebook 模块时出错

    我已经使用下面提到的命令安装了 facebook sdk pip install facebook sdk 但在导入时 我遇到了一个问题 import facebook Traceback most recent call last Fil
  • 如何从内部函数中退出最外部的函数?

    假设我的代码如下所示 def lab letter prompt def experiment 1 if letter 1 print check Would there be a way to quit the lab function
  • 即使安装了 Microsoft Visual C++ 14.0 也出现 Pip 错误

    我阅读了之前相关或询问的所有问题和答案 但仍然没有找到适合我的问题的答案 我正在使用 python 3 6 5 并且 pip 和 setuptools 是最新的 我从这里安装了 Microsoft Visual C Redistributa
  • 在python中合并两个json对象

    我正在 python 中合并两个 json 我正在做 import json json obj json dumps a 1 2 json obj1 json dumps a 3 4 json obj json obj1 print jso
  • Python int和float在64位系统中的内存消耗

    我正在 Python 3 4 的 64 位系统中尝试以下代码 以了解不同原始数据类型的内存消耗 import sys print sys getsizeof 45 prints 28 print sys getsizeof 45 2 pri
  • Google Apps 脚本:如何水平对齐 inlineImage

    我有以下代码 它是一个更大程序的一部分 我正在尝试将图像从我的 Google 驱动器插入到 Google 文档中 并调整其大小并居中 到目前为止 我能够让程序插入图像并调整其大小 但我不知道如何使 inlineImage 居中 我是使用谷歌

随机推荐