搜索二维数组内的子数组(图像识别)[关闭]

2024-03-31

本质上,我有一个 numpy 图像数组,我试图查找它是否包含特定 RGB 像素值的 2x2 块。因此,例如,如果我的(简化的)图像数组类似于:

A B C D E F

G H I J K L

M N O P Q R

S T U V W X

我正在尝试检查它是否包含,例如:

J K

P Q

我对 numpy 还很陌生,所以我希望得到任何帮助,谢谢。


这个解决方案怎么样:

1)找出小数组右上左手元素在大数组中的所有位置。

2) 检查大数组中每个给定元素对应的切片是否与小数组完全相同。

假设切片的左上角元素是5,我们会在大数组中找到5的位置,然后检查大数组中5左下角的切片是否与小数组相同。

import numpy as np

a = np.array([[0,1,5,6,7],
              [0,4,5,6,8],
              [2,3,5,7,9]])

b = np.array([[5,6],
              [5,7]])

b2 = np.array([[6,7],
               [6,8],
               [7,9]])

def check(a, b, upper_left):
    ul_row = upper_left[0]
    ul_col = upper_left[1]
    b_rows, b_cols = b.shape
    a_slice = a[ul_row : ul_row + b_rows, :][:, ul_col : ul_col + b_cols]
    if a_slice.shape != b.shape:
        return False
    return (a_slice == b).all()

def find_slice(big_array, small_array):
    upper_left = np.argwhere(big_array == small_array[0,0])
    for ul in upper_left:
        if check(big_array, small_array, ul):
            return True
    else:
        return False

结果:

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

搜索二维数组内的子数组(图像识别)[关闭] 的相关文章

随机推荐

  • Symfony 3.0.1 CSRF 令牌存在但无效

    我在安装新的 Symfony 3 0 1 时遇到了这个奇怪的问题 我生成了一个新的 CRUD 控制器 其中包含一个包含 url 和标题的 Form PostType 没有什么花哨 表单按预期呈现 它包含我的 url 字段和标题字段 在表单内
  • Delphi - 如何从 Delphi 创建的其他应用程序的控件中获取提示

    我有一个项目需要从 delphi 创建的另一个应用程序的控件 例如 TButton 中获取提示 我使用Hook WH CBT 使用 exe和 dll使其成为全局的 当鼠标指向控件并提示显示和隐藏时 我得到提示的HCBT CREATEWND和
  • 正确使用Java“assert”关键字

    我一直不明白什么是assert用于 尽管我已经阅读了很多示例 但它们并没有真正让我知道我应该使用它做什么或为什么 因此 我不会问一个例子 而是提供一个例子 让我知道这是否是正确的用法assert The idea is that the m
  • 如何在 ASP.NET MVC 中使用部分视图?

    我正在构建一个 ASP NET MVC 应用程序 并希望使用部分视图来显示我的产品类别 它将是一个网上商店 在每个页面上的菜单栏下方 我想显示另一个包含所有产品类别的栏 我想为此使用部分视图 目前在 Views Categories我创建了
  • 用字母递增字符串?

    我需要从 增加一个字符串aaa to zzz并在控制台中写下每个增量 增量是一个词吗 事情会是这样的 aaa aab aac aaz aba abb abc abz aca acb 等等 到目前为止 我已经通过这样做增加了一个字母 Stri
  • 在 Websphere Application Server 上运行基于 Filenet 的 Web 应用程序时出现凭证异常

    我开发了一个 REST 服务 可以从内容引擎存储中检索数据 为简单起见 我创建了具有只读权限的用户帐户 并将其用于 CE 授权 使用以下代码 UserContext context UserContext get Connection co
  • 如何将协程直接分派到 JVM 上的主线程?

    我正在为 jvm 设置一个基于 kotlin 协程的网络框架 Client 和 Server 类实现 CoroutineScope 并且 coroutinecontext 的重写是 Dispatchers IO 因为我非常确定这是用于这种情
  • C 中的递归深度是否有任何硬连线限制

    正在讨论的程序尝试计算sum of first n natural numbers using recursion 我知道这可以使用一个简单的公式来完成n n 1 2但这里的想法是使用recursion 程序如下 include
  • C/C++ 创建一个具有负值的枚举,无需对其进行编号

    例如 在 C C 中 我会有以下代码 typedef enum fruits apple banana lemon orange fruit t 这相当于 typedef enum fruits apple 0 banana 1 lemon
  • 如何跨应用程序整合 ASP.NET 母版页?

    第一次在这些板上提出问题 希望我能得到一些帮助 这里是 我正在努力在我的客户处启动 NET 实践 目前 我们有 5 个小型 NET 应用程序 其中一些已投入生产 它们大多是带有一些数据输入 业务逻辑功能的小型报告 这些应用程序中的每一个当前
  • TypeScript 在类型构造函数中推断回调返回类型

    我想为接收类型的函数编写一个类型构造函数S和一个函数S到另一种类型 然后将该函数应用于S并返回结果 This works but it s tied to the implementation function dig
  • 如何将 REST 请求转发到另一个资源?

    在我当前的架构中 我有一个位于后面的 JAX RS 资源 categories categories catId 是这样实现的 Path categories Produces application json public class C
  • jquery Mobile Tap 和冒泡/传播

    在 android 2 x 浏览器中查看此示例 它是在我的应用程序中复制场景的示例 http johnchako net samples tap html http johnchacko net samples tap html 它是关于监
  • Ionic 3:安装 cordova-plugin-camera 和 Native Web-intent 后 Android 添加平台失败

    首先 感谢您抽出时间来帮助我 Summary 尝试将 cordova plugin camera 添加到我的 ionic 3 项目中 经过多次失败并最终成功后 现在我的应用程序不再在我的 Android 上构建 开始编辑 经过多次测试 当我
  • Polymer 中动态生成的 HTML 的数据绑定?

    当我在我的里面写下以下内容时
  • 以数据帧作为输入的模型上的多重处理

    我想在模型上使用多重处理 以使用数据帧作为输入来获得预测 我有以下代码 def perform model predictions model dataFrame cores 4 try with Pool processes cores
  • 设置自定义视图的样式

    我的 Android 项目中有一些自定义视图 并且我已将相关详细信息添加到 attrs xml 文件中 现在我可以通过 XML 实现我的对象 这很好用 我如何设计这些元素的样式 当我尝试在 styles xml 中使用自定义属性时 出现错误
  • 从 MYSQL DB 中搜索电话号码

    我有一张桌子phone柱子 其中的电话看起来像 1 123 456 3780 如果用户在搜索字段 35 中输入 我应该向他显示所有拥有手机的用户 3 534 000 1010 1 350 000 9090 1 003 534 2343 1
  • Signal-R 如何适应 IIS 激活模型?

    我正在学习 Signal R 这是我一直以来的想法 Signalr 如何融入 IIS ASP NET 生命周期 集线器的寿命有多长 我看到它们有重新连接语义 IIS 是否会阻止具有持久连接的 AppDomain 关闭 据我了解 IIS 旨在
  • 搜索二维数组内的子数组(图像识别)[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 本质上 我有一个 numpy 图像数组 我试图查找它是否包含特定 RGB 像素值的 2x2 块 因此 例如 如果我的 简化的 图像数组类似