基于人工智能图像识别的分布式计算系统及方法与流程

文档序号:15850554发布日期:2018-11-07 09:48阅读:407来源:国知局
基于人工智能图像识别的分布式计算系统及方法与流程

本发明涉及图像处理技术领域,具体而言,涉及一种基于人工智能图像识别的分布式计算系统及方法。

背景技术

基于深度学习及卷积神经网络(cnn)进行图像识别,是当今的主要技术发展方向之一。但该方法对计算能力要求极高,从而造成识别速度较慢,实时性较差。现有的提高识别速度的方式通常是通过降低被分析图像的分辨率,节省计算资源,提升实时性。

发明人经研究发现,通过降低分辨率的方式提高识别速度,会导致计算准确率下降。因此,提供一种能够在不影响准确率的情况下提高图像的识别速度的图像处理方式是亟待解决的技术问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于人工智能图像识别的分布式计算系统及方法,以有效提高了图像识别的效率并能保障图像识别的准确率。

为实现上述目的,本发明实施例采用如下技术方案:

一种基于人工智能图像识别的分布式计算系统,所述系统包括预处理模块、调度模块、整合模块以及多个计算单元;

所述预处理模块用于在接收外部设备发送的图像时,获取所述图像中的标识信息以生成包括所述标识信息的调度请求信息,并发送至所述调度模块;

所述调度模块用于响应所述调度请求信息,以根据所述标识信息获取对应的单元列表,以及根据所述标识信息从多个预设算法和多个预设模型中查找与该标识信息对应的目标预设算法和目标预设模型,并将所述目标预设算法和所述单元列表反馈至所述预处理模块,将所述目标预设模型反馈至所述整合模块,以及将所述目标预设算法发送至所述单元列表中对应的计算单元,其中,所述单元列表中包括多个单元信息,且每个单元信息对应一个计算单元;

所述预处理模块还用于根据所述目标预设算法中的预处理子算法对所述图像进行处理以得到多个图块,并将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元;

所述多个单元信息对应的各计算单元用于对接收到的图块采用所述目标预设算法中的卷积神经网络算法进行处理以得到特征向量并发送至所述整合模块;

所述整合模块用于将各计算单元发送的特征向量采用所述目标预设模型进行分类识别以得到分类识别结果并反馈至所述外部设备。

可选的,在上述基于人工智能图像识别的分布式计算系统中,所述调度模块还用于向所述标识信息对应的各所述计算单元发送计算调度指令;

所述计算单元还用于在空闲状态时基于所述计算调度指令向所述调度模块反馈调度应答信息;

所述调度模块还用于根据反馈所述调度应答信息的计算单元的单元信息生成单元列表。

可选的,在上述基于人工智能图像识别的分布式计算系统中,所述单元信息中包括对应的计算单元的处理速度;

所述预处理模块还用于根据所述单元列表中的各单元信息中包括的处理速度将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元。

可选的,在上述基于人工智能图像识别的分布式计算系统中,所述预处理模块还用于根据selectivesearch算法对所述图像进行处理以选取多个推荐候选区,并将所述多个推荐候选区的图像进行切割以得到多个图块。

可选的,在上述基于人工智能图像识别的分布式计算系统中,所述预设模型为svm分类模型,所述整合模块还用于将各计算单元发送的特征向量采用目标svm分类模型进行分类识别以得到分类识别结果并反馈至所述外部设备。

本发明还提供一种基于人工智能图像识别的分布式计算方法,应用于基于人工智能图像识别的分布式计算系统,所述系统包括预处理模块、调度模块、整合模块以及多个计算单元,所述方法包括;

所述预处理模块在接收外部设备发送的图像时,获取所述图像中的标识信息以生成包括所述标识信息的调度请求信息,并发送至所述调度模块;

所述调度模块响应所述调度请求信息,以根据所述标识信息从多个预设算法和多个预设模型中查找与该标识信息对应的目标预设算法和目标预设模型,以及根据所述标识信息获取对应的单元列表,并将所述目标预设算法和所述单元列表反馈至所述预处理模块,将所述目标预设模型反馈至所述整合模块,以及将所述目标预设算法发送至所述单元列表中对应的计算单元,其中,所述单元列表中包括多个单元信息,且每个单元信息对应一个计算单元;

所述预处理模块根据所述目标预设算法中的预处理子算法对所述图像进行处理以得到多个图块,并将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元;

所述多个单元信息对应的各计算单元对接收到的图块采用所述目标预设算法中的卷积神经网络算法进行处理以得到特征向量并发送至所述整合模块;

所述整合模块将各计算单元发送的特征向量采用所述目标预设模型进行分类识别以得到分类识别结果并反馈至所述外部设备。

可选的,在上述基于人工智能图像识别的分布式计算方法中,所述调度模块响应所述调度请求信息,以根据所述标识信息获取对应的单元列表的步骤包括:

所述调度模块向所述标识信息对应的各所述计算单元发送计算调度指令;

所述计算单元在空闲状态时基于所述计算调度指令向所述调度模块反馈调度应答信息;

所述调度模块根据反馈所述调度应答信息的计算单元的单元信息生成单元列表。

可选的,在上述基于人工智能图像识别的分布式计算方法中,所述单元信息中包括对应的计算单元的处理速度,所述预处理模块将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元的步骤包括:

所述预处理模块根据所述单元列表中的各单元信息中包括的处理速度将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元。

可选的,在上述基于人工智能图像识别的分布式计算方法中,所述预处理模块根据所述目标预设算法中的预处理子算法对所述图像进行处理以得到多个图块的步骤包括:

所述预处理模块根据selectivesearch算法对所述图像进行处理以选取多个推荐候选区,并将所述多个推荐候选区的图像进行切割以得到多个图块。

可选的,在上述基于人工智能图像识别的分布式计算方法中,所述预设模型为svm分类模型,所述整合模块将各计算单元发送的特征向量采用所述目标预设模型进行分类识别以得到分类识别结果并反馈至所述外部设备的步骤包括:

所述整合模块将各计算单元发送的特征向量采用目标svm分类模型进行分类识别以得到分类识别结果并反馈至所述外部设备。

本发明提供的一种基于人工智能图像识别的分布式计算系统及方法,系统包括预处理模块、调度模块、整合模块以及多个计算单元。预处理模块接收图像并生成包括标识信息的调度请求信息,调度模块根据标识信息获取对应的单元列表,以及与标识信息对应的目标预设算法和目标预设模型,预处理模块根据目标预设算法对图像进行处理以得到多个图块,并发送至与单元列表中的多个单元信息对应的计算单元,计算单元对接收到的图块采用目标预设算法进行处理得到特征向量并发送至整合模块,整合模块将特征向量采用目标预设模型进行分类识别以得到分类识别结果。通过上述设置,以实现采用多个计算单元对图像中的各图块进行并行处理,进而有效提高了图像识别的效率并能保障图像识别的准确率。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

图1为本发明实施例提供的一种基于人工智能图像识别的分布式计算系统的应用框图。

图2为本发明实施例提供的一种基于人工智能图像识别的分布式计算系统的连接框图。

图3为本发明实施例提供的一种基于人工智能图像识别的分布式计算方法的流程示意图。

图4为图3中步骤s120的流程示意图。

图标:100-基于人工智能图像识别的分布式计算系统;110-预处理模块;120-调度模块;130-整合模块;140-计算单元;200-外部设备。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本发明的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

请结合图1和图2,本发明较佳实施例提供的一种基于人工智能图像识别的分布式计算系统100,并示意性图示了本申请的实施例的应用场景。其中,所述基于人工智能图像识别的分布式计算系统100用于与外部设备200连接,以用于对外部设备200发送的图像进行分类识别,并将分类识别后的结果反馈至所述外部设备200。

其中,所述外部设备200可以是摄像机、用户终端、显示设备或存储器等能够拍摄图像或存储有图像的电子设备,在此不作具体限定。

所述基于人工智能图像识别的分布式计算系统100可以包括预处理模块110、调度模块120、整合模块130以及多个计算单元140,所述预处理模块110、调度模块120、整合模块130以及多个计算单元140相互之间直接或间接地通信连接,且各个模块或单元可以用执行规定的功能或动作的专用的基于硬件的设备来实现,或者可以用专用硬件与计算机指令的组合来实现,在此不作具体限定。

在本实施例中,所述基于人工智能图像识别的分布式计算系统100在进行图像处理时,各模块或单元的功能及执行过程如下:

所述预处理模块110用于在接收外部设备200发送的图像时,获取所述图像中的标识信息以生成包括所述标识信息的调度请求信息,并发送至所述调度模块120。

其中,所述标识信息可以是数字信息、文字信息和符号信息,只要能够对图片进行标识即可,在此不作具体限定,例如,当所述标识信息为文字信息时,该文字信息可以包括但不限于车辆或人脸等文字。可以理解,所述预处理模块110可以是加载有处理程序的计算卡以作为基于人工智能图像识别的分布式计算系统100中的第一类型的节点,如加载有处理程序的计算机显卡。

所述调度模块120用于响应所述调度请求信息,以根据所述标识信息获取对应的单元列表,以及根据所述标识信息从多个预设算法和多个预设模型中查找与该标识信息对应的目标预设算法和目标预设模型,并将所述目标预设算法和所述单元列表反馈至所述预处理模块110,将所述目标预设模型反馈至所述整合模块130,以及将所述目标预设算法发送至所述单元列表中对应的计算单元140。

其中,所述单元列表中包括多个单元信息,且每个单元信息对应一个计算单元140。不同的标识信息可以对应有不同的单元列表,不同的标识信息对应的预设算法和预设模型也可以不同,在此不作具体限定。所述预设算法可以是r-cnn算法,且不同的预设算法对应的r-cnn算法的参数不同。可以理解,所述调度模块120可以是作为基于人工智能图像识别的分布式计算系统100中的负责调度的加载有处理程序的硬件设备。

可以理解,所述调度模块120还可以用于在将所述目标预设算法发送至所述单元列表中对应的计算单元140之前,向所述整合模块130和单元列表中对应的计算单元140发送提示信息,以通知所述整合模块130和单元列表中对应的计算单元140做好计算准备。

所述预处理模块110还用于根据所述目标预设算法中的预处理子算法对所述图像进行处理以得到多个图块,并将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元140。

其中,所述预处理子算法可以是selectivesearch算法,也可以是边缘检测算法,在此不作具体限定,只要能够基于所述预处理子算法对所述图像进行分割以得到多个图块即可。可以理解,所述预处理模块110可以是作为基于人工智能图像识别的分布式计算系统100中的第二类型的节点。

为使得对图像进行分块的结果更加准确,可选的,在本实施例中,所述预处理模块110还用于根据selectivesearch算法对所述图像进行处理以选取多个推荐候选区,并将所述多个推荐候选区的图像进行切割以得到多个图块。

所述多个单元信息对应的各计算单元140用于对接收到的图块采用所述目标预设算法中的卷积神经网络算法进行处理以得到特征向量并发送至所述整合模块130。

其中,每个图块采用所述卷积神经网络算法进行处理后得到的特征向量的数量可以是一个也可以多个,在此不作具体限定。各计算单元140可以是相同的,也可以是不同的,在此不作具体限定。可以理解,所述预处理模块110可以是作为基于人工智能图像识别的分布式计算系统100中的第三类型的节点。

所述整合模块130用于将各计算单元140发送的特征向量采用所述目标预设模型进行分类识别以得到分类识别结果并反馈至所述外部设备200。

其中,所述预设模型可以是分类识别模型,例如:svm分类模型或dagsvm分类模型。

可选的,在本实施例中,所述预设模型为svm分类模型,所述整合模块130还用于将各计算单元140发送的特征向量采用目标svm分类模型进行分类识别以得到分类识别结果并反馈至所述外部设备200。

通过上述设置,以在对图像进行分类识别时,实现采用多个计算单元140对各图块进行并行提取特征向量,并在对提取的所有特征向量进行分类识别以得到分类识别结果,进而有效提高了对图像进行分类识别的效率并能保障图像识别的准确率。

其中,为进一步提高对图像进行处理的效率,可选的,在本实施例中,所述调度模块120还用于向所述标识信息对应的各所述计算单元140发送计算调度指令,所述计算单元140还用于在空闲状态时基于所述计算调度指令向所述调度模块120反馈调度应答信息,所述调度模块120还用于根据反馈所述调度应答信息的计算单元140的单元信息生成单元列表。

通过上述设置,以使获取到的单元列表中的单元信息对应的计算单元140均处于空闲状态,以使该计算单元140在接收到图块时就能进行处理,避免了需要进行等待的情况,以使在采用该计算单元140对图块进行处理的效率更高。

此外,将各图块分配至各单元信息对应的计算单元140的方式可以是均匀分配,也可以是随机分配,还可以是按照各计算单元140的计算能力进行分配。

为进一步提高对图像进行处理的效率,可选的,在本实施例中,所述单元信息中包括对应的计算单元140的处理速度,所述预处理模块110还用于根据所述单元列表中的各单元信息中包括的处理速度将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元140。

在上述基础上,本发明还提供一种基于人工智能图像识别的分布式计算方法,应用于上述基于人工智能图像识别的分布式计算系统100,所述方法在应用于上述的系统时实现以下步骤:

步骤s110:所述预处理模块110在接收外部设备200发送的图像时,获取所述图像中的标识信息以生成包括所述标识信息的调度请求信息,并发送至所述调度模块120。

步骤s120:所述调度模块120响应所述调度请求信息,以根据所述标识信息从多个预设算法和多个预设模型中查找与该标识信息对应的目标预设算法和目标预设模型,以及根据所述标识信息获取对应的单元列表,并将所述目标预设算法和所述单元列表反馈至所述预处理模块110,将所述目标预设模型反馈至所述整合模块130,以及将所述目标预设算法发送至所述单元列表中对应的计算单元140。其中,所述单元列表中包括多个单元信息,且每个单元信息对应一个计算单元140。

步骤s130:所述预处理模块110根据所述目标预设算法中的预处理子算法对所述图像进行处理以得到多个图块,并将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元140。

步骤s140:所述多个单元信息对应的各计算单元140对接收到的图块采用所述目标预设算法中的卷积神经网络算法进行处理以得到特征向量并发送至所述整合模块130。

步骤s150:所述整合模块130将各计算单元140发送的特征向量采用所述目标预设模型进行分类识别以得到分类识别结果并反馈至所述外部设备200。

可选的,在本实施例中,所述调度模块120响应所述调度请求信息,以根据所述标识信息获取对应的单元列表的步骤包括:

步骤s122:所述调度模块120向所述标识信息对应的各所述计算单元140发送计算调度指令。

步骤s124:所述计算单元140在空闲状态时基于所述计算调度指令向所述调度模块120反馈调度应答信息。

步骤s126:所述调度模块120根据反馈所述调度应答信息的计算单元140的单元信息生成单元列表。

可选的,在本实施例中,所述单元信息中包括对应的计算单元140的处理速度,所述预处理模块110将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元140的步骤包括:

所述预处理模块110根据所述单元列表中的各单元信息中包括的处理速度将所述多个图块发送至与所述单元列表中的多个单元信息对应的计算单元140。

可选的,在本实施例中,所述预处理模块110根据所述目标预设算法中的预处理子算法对所述图像进行处理以得到多个图块的步骤包括:

所述预处理模块110根据selectivesearch算法对所述图像进行处理以选取多个推荐候选区,并将所述多个推荐候选区的图像进行切割以得到多个图块。

可选的,在本实施例中,所述预设模型为svm分类模型,所述整合模块130将各计算单元140发送的特征向量采用所述目标预设模型进行分类识别以得到分类识别结果并反馈至所述外部设备200的步骤包括:

所述整合模块130将各计算单元140发送的特征向量采用目标svm分类模型进行分类识别以得到分类识别结果并反馈至所述外部设备200。

综上,本发明提供的本发明提供的一种基于人工智能图像识别的分布式计算系统100及方法,系统包括预处理模块110、调度模块120、整合模块130以及多个计算单元140。预处理模块110接收图像并生成包括标识信息的调度请求信息,调度模块120根据标识信息获取对应的单元列表,以及与标识信息对应的目标预设算法和目标预设模型,预处理模块110根据目标预设算法对图像进行处理以得到多个图块,并发送至与单元列表中的多个单元信息对应的计算单元140,计算单元140对接收到的图块采用目标预设算法进行处理得到特征向量并发送至整合模块130,整合模块130将特征向量采用目标预设模型进行分类识别以得到分类识别结果。通过上述设置,以实现采用多个计算单元140对图像处理后得到的各图块进行并行提取特征向量,并对提取的所有特征向量进行分类识别以得到分类识别结果,进而有效提高了对图像进行分类识别的效率并能保障图像识别的准确率。

在本发明实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1