掌桥专利:专业的专利平台
掌桥专利
首页

跨集群协同的图像特征提取方法与系统

文献发布时间:2023-06-19 19:28:50


跨集群协同的图像特征提取方法与系统

技术领域

本发明属于图像处理与数据识别技术领域,尤其涉及跨集群协同的图像特征提取方法与系统。

背景技术

在计算机视觉中,最重要的一个环节就是对图像的处理,而对图像处理一个非常重要的环节是图像特征提取。

由于图像特征能够代表图像的内容,所以在运动目标跟踪、物体识别、图像配准、全景图像的拼接、三维重建等方向中,图像特征的提取都至关重要,特征提取的好坏将直接决定目标跟踪、物体识别、图像匹配、图像拼接、三维重建的准确度。

特征提取的好坏可包括图像特征提取的速度和精度两个方面,不同的图像应用侧重各有不同,例如,运动目标跟踪中可能偏重于特征提取速度,而物体识别过程、三维重建过程则可能偏重于特征提取精度,一些实时应用例如自动驾驶过程则需要速度和精度兼顾等。

由于可提取的图像特征多种多样,不同的应用场合需要提取的图像特征种类和维度也不同,如果针对每一种图像特征都开发对应的硬件处理器或者软件识别模型,将极大的提升使用成本。随着云计算的普及,云端服务器资源为此提供了新的解决思路。用户可以将自身的需求发送至云端,由云端自动匹配对应的硬件处理器或者软件识别模型实现。云端资源通常以服务器集群的资源展现给用户。当用户请求集群系统时,集群给用户的感觉就是一个单一独立的服务器。

虽然理论上云端资源是无限的,但是云端资源通常是付费使用的。当多个用户存在多个不同类型的特征提取需求时,如何实现用户需求与云端服务器集群资源的最佳匹配,在云端提供的多个不同集群资源中为用户提供集群资源以实现用户需求,仍然是现阶段要解决的技术问题之一。

发明内容

为解决上述技术问题,本发明提出跨集群协同的图像特征提取方法与系统。

在本发明的第一个方面,提出跨集群协同的图像特征提取方法,所述方法包括如下步骤:

S110:接收多个图像处理终端的多个图像特征提取请求;

S210:预执行每个所述图像特征提取请求,基于预执行结果,将所述多个图像特征提取请求进行分组,得到多个特征提取请求分组集合;每个特征提取请求分组集合包含至少两个图像特征提取请求;

S310:针对每一个特征提取请求分组集合,确定多个接收集群,将每一个特征提取请求分组集合包含的多个图像特征提取请求发送至所述多个接收集群;每个接收集群至少接收一个图像特征提取请求;

S410:每个接收集群对接收的图像特征提取请求进行处理,并将处理结果发送至该接收的图像特征提取请求对应的图像处理终端。

所述图像处理终端安装有多个图像处理应用程序,每个图像处理应用程序请求提取至少一个图像特征,所述图像特征包括图片颜色特征、图片像素特征、图片形状特征、图片纹理特征之一或者任意组合。

所述步骤S210所述预执行每个所述图像特征提取请求,具体包括:

确定每个所述图像处理应用程序发送所述请求时的活跃进程;

确定所述活跃进程包含的至少一个待执行线程;所述待执行线程用于提取所述图像特征;

预执行所述待执行线程,得到所述预执行结果,所述预执行结果包括每个待执行线程所需要消耗的线程资源以及每个待执行线程所需要提取的特征类型。

所述步骤S310所述针对每一个特征提取请求分组集合,确定多个接收集群,具体包括:

特征提取请求分组集合

(1)

(2)执行

所述步骤S410包括:

将每个待执行线程与对应的接收集群绑定,在所述对应的接收机群上执行每个待执行线程,以得到所述处理结果。

在所述步骤S410之后,所述方法还包括:

解除每个待执行线程与所述对应的接收集群的所述绑定关系,返回步骤S110。

在本发明的第二个方面,提供跨集群协同的图像特征提取系统,所述系统包括多个集群以及与所述多个集群通信的多个终端设备,每个所述终端设备安装有至少一种图像处理应用程序,所述图像处理应用程序用于提取样本图片的至少一种图片特征;

所述系统还包括:

请求接收单元,用于接收多个图像处理终端通过所述图像处理应用程序发出的多个图像特征提取请求;

预执行单元,用于预执行每个所述图像特征提取请求,基于预执行结果,将所述多个终端设备进行分组,得到多个终端设备分组集合;每个多个终端设备分组集合包含至少两个多个终端设备;

集群连接确定单元,用于针对每一个终端设备分组集合,确定多个接收集群,将每一个终端设备分组集合包含的每个终端设备与至少一个接收集群连接;

每个接收集群接收与其连接的每个终端设备通过所述图像处理应用程序发出的多个图像特征提取请求进行处理,并将处理结果发送至该接收的图像特征提取请求对应的图像处理终端。

所述预执行单元预执行每个所述图像特征提取请求,具体包括:

所述预执行单元确定每个所述图像处理应用程序发送所述每个所述图像特征提取请求时的活跃进程;

确定所述活跃进程包含的至少一个待执行线程;所述待执行线程用于提取所述图像特征;

预执行所述待执行线程,得到所述预执行结果,所述预执行结果包括每个待执行线程所需要消耗的线程资源以及每个待执行线程所需要提取的特征类型。

所述预执行单元基于预执行结果,将所述多个终端设备进行分组,得到多个终端设备分组集合,具体包括:

每个终端设备分组集合中的第一终端设备和第二终端设备同时满足如下条件:

(1)第一终端设备和第二终端设备发送的图像特征提取请求不同;

(2)第一终端设备和第二终端设备当前的活跃进程所请求的资源量的差值小于预设值。

所述集群连接确定单元针对每一个终端设备分组集合,确定多个接收集群,具体包括:

若第一终端设备分组集合对应第一接收集群,则第一接收集群当前的可用资源量AR大小满足如下条件:

,其中,

J为第一接收集群包含的计算节点的数量,k为第一终端设备分组集合包含的终端设备的数量;

在本发明的第三个方面,提出一种电子设备,所述电子设备包括存储器和处理器,存储器上存储有计算机程序指令,通过所述处理器执行所述程序指令,用于实现第一个方面所述的跨集群协同的图像特征提取方法的全部步骤。

本发明的技术方案,在接收多个图像处理终端的多个图像特征提取请求后,预执行每个所述图像特征提取请求,基于预执行结果,将所述多个图像特征提取请求进行分组,得到多个特征提取请求分组集合;每个特征提取请求分组集合包含至少两个图像特征提取请求;针对每一个特征提取请求分组集合,确定多个接收集群,将每一个特征提取请求分组集合包含的多个图像特征提取请求发送至所述多个接收集群;每个接收集群至少接收一个图像特征提取请求,每个接收集群对接收的图像特征提取请求进行处理,并将处理结果发送至该接收的图像特征提取请求对应的图像处理终端,可以实现用户需求与云端服务器集群资源的最佳匹配,在云端提供的多个不同集群资源中为用户提供集群资源以实现用户需求。

本发明的进一步优点将结合说明书附图在具体实施例部分进一步详细体现。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一个实施例的跨集群协同的图像特征提取方法的主体流程图;

图2是本发明跨集群协同的图像特征提取方法实现预执行图像特征提取请求的示意图;

图3是本发明一个实施例的跨集群协同的图像特征提取系统的场景示意图;

图4是实现本发明一个实施例的跨集群协同的图像特征提取系统的功能单元组成示意图。

具体实施方式

下面,结合附图以及具体实施方式,对发明做出进一步的描述。

图1是本发明一个实施例的跨集群协同的图像特征提取方法的主体流程图。

图1示出的所述跨集群协同的图像特征提取方法的主体流程包括步骤S110-S410,各个步骤具体实现如下:

S110:接收多个图像处理终端的多个图像特征提取请求;

S210:预执行每个所述图像特征提取请求,基于预执行结果,将所述多个图像特征提取请求进行分组,得到多个特征提取请求分组集合;每个特征提取请求分组集合包含至少两个图像特征提取请求;

S310:针对每一个特征提取请求分组集合,确定多个接收集群,将每一个特征提取请求分组集合包含的多个图像特征提取请求发送至所述多个接收集群;每个接收集群至少接收一个图像特征提取请求;

S410:每个接收集群对接收的图像特征提取请求进行处理,并将处理结果发送至该接收的图像特征提取请求对应的图像处理终端。

具体的,所述方法可以由包括多个集群的服务器集群组合执行,所述多个图像处理终端中的每一个均安装有至少一个图像处理应用程序,每个图像处理应用程序请求提取至少一个图像特征;所述图像特征包括图片颜色特征、图片像素特征、图片形状特征、图片纹理特征之一或者任意组合。

由于可提取的图像特征多种多样,不同的图像处理应用程序需要提取的图像特征种类和维度也不同,因此,本实施例不必在每个终端设备本身上内置全部的硬件资源或者特征提取软件模型,而是将每个终端设备通过数据通信管道与所述包括多个集群的服务器集群,从而将自身的多个图像特征提取请求通过所述数据通信管道发送至所述服务器集群;

所述服务器集群包含至少一个中央集群处理单元,所述中央集群处理单元预执行每个所述图像特征提取请求,基于预执行结果,将所述多个图像特征提取请求进行分组,得到多个特征提取请求分组集合;

图2是本发明跨集群协同的图像特征提取方法实现预执行图像特征提取请求的示意图。

图2示出上述预执行图像特征提取请求的流程示意图,所述流程包括子步骤S201-S203:

S201:确定每个所述图像处理应用程序发送所述请求时的活跃进程;

S202:确定所述活跃进程包含的至少一个待执行线程;所述待执行线程用于提取所述图像特征;

S203:预执行所述待执行线程,得到所述预执行结果,所述预执行结果包括每个待执行线程所需要消耗的线程资源以及每个待执行线程所需要提取的特征类型。

具体的,所述中央集群确定每个所述图像处理应用程序发送所述请求时的活跃进程;继而确定所述活跃进程包含的至少一个待执行线程;所述待执行线程用于提取所述图像特征;

所述中央集群调用预留资源预执行所述待执行线程,得到所述预执行结果,所述预执行结果包括每个待执行线程所需要消耗的线程资源以及每个待执行线程所需要提取的特征类型。

所述预留资源是所述服务器集群为所述中央集群固定预留的资源。

更具体的,所述中央集群调用预留资源预执行所述待执行线程,得到所述预执行结果,具体包括:

所述中央集群调用预留资源预解析每个所述待执行线程的资源调度指针名称和资源调用函数,

基于所述资源调度指针名称确定每个待执行线程所需要提取的特征类型,并基于每个所述待执行线程的资源调度指针名称和资源调用函数确定每个待执行线程所需要消耗的线程资源。

实际执行时,资源调度指针名称可以表征特征提取类型,例如FeatureContourPoint()用于提取轮廓特征,FeaturePixPoint()用于提取像素特征等;资源调用函数则可以表征本线程执行时需要调度的线程资源类型,例如AllocationMemory()实现内存资源调度等,上述函数识别或者指针识别基于已有的开源函数库或者内置函数库预先指定,在确定需要调度的线程资源类型和特征提取类型的基础上,可以基于历史数据确定每个待执行线程所需要消耗的线程资源;或者基于机器学习模型确定每个待执行线程所需要消耗的线程资源。

可以看到,一方面,所述预执行只需要执行线程指针和函数的内容解析过程,而不需要实际执行对应的资源调度指针(函数)和资源调用函数,因此,其可以使用较少的资源,也就是为所述中央集群固定预留的资源不必太多;另一方面,通过引入预执行过程,可以确定每个待执行线程所需要消耗的线程资源以及每个待执行线程所需要提取的特征类型,从而为后续的跨集群资源匹配和调度提供依据。

在预执行之后,所述中央集群基于预执行结果,将所述多个图像特征提取请求进行分组,得到多个特征提取请求分组集合;每个特征提取请求分组集合包含至少两个图像特征提取请求。

接下来,所述中央集群针对每一个特征提取请求分组集合,确定多个接收集群,将每一个特征提取请求分组集合包含的多个图像特征提取请求发送至所述多个接收集群;每个接收集群至少接收一个图像特征提取请求;

具体的,按照如下方式针对每一个特征提取请求分组集合,确定多个接收集群:

特征提取请求分组集合

(1)

(2)执行

更具体的,假设第一特征提取请求分组集合对应第一接收集群,则第一接收集群当前的可用资源量AR大小满足如下条件:

,其中,

J为第一接收集群包含的计算节点的数量,k为第一特征提取请求分组集合包含的图像特征提取请求的数量;

为了实现跨集群的协同,避免不同集群的跨节点线程切换导致的资源开销,作为进一步改进,所述步骤S410包括:

将每个待执行线程与对应的接收集群绑定,在所述对应的接收机群上执行每个待执行线程,以得到所述处理结果。

而为了节点资源的碎片化累积,在所述步骤S410之后,所述方法还包括:

解除每个待执行线程与所述对应的接收集群的所述绑定关系,返回步骤S110。

在图1-图2的基础上,参见图3。图3是本发明一个实施例的跨集群协同的图像特征提取系统的场景示意图。

在图3中,多个终端设备通过数据通信管道与服务器集群通信。

所述终端设备均为图像处理终端设备,所述多个图像处理终端中的每一个均安装有至少一个图像处理应用程序,每个图像处理应用程序请求提取至少一个图像特征,每个终端设备将自身的每个图像处理应用程序发出的多个图像特征提取请求通过所述数据通信管道发送至所述服务器集群。

图4是实现本发明一个实施例的跨集群协同的图像特征提取系统的功能单元组成示意图。

所述服务器集群包含至少一个中央集群处理单元,所述中央集群处理单元预执行每个所述图像特征提取请求。

在图4中,所述系统还包括:

请求接收单元,用于接收多个图像处理终端通过所述图像处理应用程序发出的多个图像特征提取请求;

预执行单元,用于预执行每个所述图像特征提取请求,基于预执行结果,将所述多个终端设备进行分组,得到多个终端设备分组集合;每个多个终端设备分组集合包含至少两个多个终端设备;

集群连接确定单元,用于针对每一个终端设备分组集合,确定多个接收集群,将每一个终端设备分组集合包含的每个终端设备与至少一个接收集群连接;

每个接收集群接收与其连接的每个终端设备通过所述图像处理应用程序发出的多个图像特征提取请求进行处理,并将处理结果发送至该接收的图像特征提取请求对应的图像处理终端。

所述请求接收单元、预执行单元、集群连接确定单元集成于所述中央集群处理单元。

所述预执行单元预执行每个所述图像特征提取请求,具体包括:

所述预执行单元确定每个所述图像处理应用程序发送所述每个所述图像特征提取请求时的活跃进程;

确定所述活跃进程包含的至少一个待执行线程;所述待执行线程用于提取所述图像特征;

预执行所述待执行线程,得到所述预执行结果,所述预执行结果包括每个待执行线程所需要消耗的线程资源以及每个待执行线程所需要提取的特征类型。

图4中,所述预执行单元还包括分组单元,分组单元基于预执行结果,将所述多个终端设备进行分组,得到多个终端设备分组集合,具体包括:

每个终端设备分组集合中的第一终端设备和第二终端设备同时满足如下条件:

(1)第一终端设备和第二终端设备发送的图像特征提取请求不同;

(2)第一终端设备和第二终端设备当前的活跃进程所请求的资源量的差值小于预设值。

所述集群连接确定单元针对每一个终端设备分组集合,确定多个接收集群,具体包括:

若第一终端设备分组集合对应第一接收集群,则第一接收集群当前的可用资源量AR大小满足如下条件:

,其中,/>

J为第一接收集群包含的计算节点的数量,k为第一终端设备分组集合包含的终端设备的数量;

可以看到,上述条件限定,既确保了不同类型的终端设备资源请求能够得到满足,也确保了集群本身的资源分布合理,即尽可能的减少资源碎片化,从而与前述步骤S410执行的防止碎片化累积相适应。

本发明的技术方案,在接收多个图像处理终端的多个图像特征提取请求后,预执行每个所述图像特征提取请求,基于预执行结果,将所述多个图像特征提取请求进行分组,得到多个特征提取请求分组集合;每个特征提取请求分组集合包含至少两个图像特征提取请求;针对每一个特征提取请求分组集合,确定多个接收集群,将每一个特征提取请求分组集合包含的多个图像特征提取请求发送至所述多个接收集群;每个接收集群至少接收一个图像特征提取请求,每个接收集群对接收的图像特征提取请求进行处理,并将处理结果发送至该接收的图像特征提取请求对应的图像处理终端,可以实现用户需求与云端服务器集群资源的最佳匹配,在云端提供的多个不同集群资源中为用户提供集群资源以实现用户需求。

本发明的各个实施例中,已经示出和描述了本发明的实施例,但对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

相关技术
  • 跨域集群协同的搜索方法及跨域集群协同的搜索系统
  • 多智能体集群协同方法与多无人机集群协同系统
技术分类

06120115919444