CN114443287A - 一种图像分析方法、装置、设备及存储介质 - Google Patents
一种图像分析方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114443287A CN114443287A CN202111666649.3A CN202111666649A CN114443287A CN 114443287 A CN114443287 A CN 114443287A CN 202111666649 A CN202111666649 A CN 202111666649A CN 114443287 A CN114443287 A CN 114443287A
- Authority
- CN
- China
- Prior art keywords
- algorithm
- service
- image analysis
- layer
- container
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种图像分析方法、装置、设备及计算机可读存储介质,该方法包括:根据获取的资源配置信息确定目标算法容器;其中,目标算法容器为资源配置信息对应的目标业务类型的算法容器,算法容器包括硬件层、算法层、适配层和业务层;将获取的业务配置信息和待处理图像数据发送给目标算法容器,以使目标算法容器根据业务配置信息对待处理图像数据进行图像分析处理并获取图像分析结果;接收目标算法容器发送的图像分析结果;本发明在容器内使用四层模型进行算法库部署及业务处理,代码复用率高,提高开发效率,并减少算法库本身对物理机环境的影响及不同算法库之间的相互影响,提高部署效率。
Description
技术领域
本发明涉及视频应用领域,特别涉及一种图像分析方法、装置、设备及计算机可读存储介质。
背景技术
目前,针对视频应用领域的智能识别分析方案都与对应算法实现强关联。不同业务对应的智能识别分析方案代码复用率很低,新增业务都需要重新进行代码开发,增加了开发工作量和开发难度,提高了产品开发周期和成本。
因此,如何能够提高不同业务对应的智能识别分析方案代码复用率,提高开发效率,是现今急需解决的问题。
发明内容
本发明的目的是提供一种图像分析方法、装置、设备及计算机可读存储介质,能够提高不同业务对应的智能识别分析方案代码复用率,提高开发效率。
为解决上述技术问题,本发明提供一种图像分析方法,包括:
根据获取的资源配置信息确定目标算法容器;其中,所述目标算法容器为所述资源配置信息对应的目标业务类型的算法容器,所述算法容器包括硬件层、算法层、适配层和业务层;
将获取的业务配置信息和待处理图像数据发送给所述目标算法容器,以使所述目标算法容器根据所述业务配置信息对所述待处理图像数据进行图像分析处理并获取图像分析结果;
接收所述目标算法容器发送的所述图像分析结果。
可选的,所述根据获取的资源配置信息确定目标算法容器,包括:
根据获取的资源配置信息确定目标业务类型;
获取的当前运行的算法容器对应的业务类型;
当所述目标业务类型与所述当前运行的算法容器对应的业务类型不一致时,控制下线所述当前运行的算法容器,并拉起所述目标业务类型对应的算法容器作为所述目标算法容器。
可选的,当所述目标算法容器为新拉起的算法容器时,所述将获取的业务配置信息和待处理图像数据发送给所述目标算法容器,包括:
接收启动成功的所述目标算法容器发送的注册信息,并在所述目标算法容器完成注册后,将获取的业务配置信息和待处理图像数据发送给所述目标算法容器。
可选的,所述图像分析方法还包括:
监控所述目标算法容器上报的运行状态信息。
可选的,所述硬件层用于从宿主机映射视频分析板卡,所述算法层包括算法库,所述适配层用于将不同的算法库的接口初始化及将数据输入和输出接口按照统一的标注进行封装并提供给所述业务层,所述业务层用于处理所述业务配置信息。
可选的,所述目标算法容器根据所述业务配置信息对所述待处理图像数据进行图像分析处理并获取图像分析结果,包括:
所述业务层根据所述业务配置信息创建任务,调用所述适配层提供的接口输入所述待处理图像数据和所述任务;
所述适配层执行所述任务在所述算法层适配目标算法,并将所述待处理图像数据输入给所述目标算法;
所述算法层调用所述硬件层接口获取硬件资源执行所述目标算法,获取图像分析结果,并将所述图像分析结果返回给所述适配层;
所述适配层将所述图像分析结果发送给所述业务层。
本发明还提供了一种图像分析装置,包括:
算法容器选择模块,用于根据获取的资源配置信息确定目标算法容器;其中,所述目标算法容器为所述资源配置信息对应的目标业务类型的算法容器,所述算法容器包括硬件层、算法层、适配层和业务层;
业务信息发送模块,用于将获取的业务配置信息和待处理图像数据发送给所述目标算法容器,以使所述目标算法容器根据所述业务配置信息对所述待处理图像数据进行图像分析处理并获取图像分析结果;
结果接收模块,用于接收所述目标算法容器发送的所述图像分析结果。
可选的,所述图像分析装置还包括:
监控模块,用于监控所述目标算法容器上报的运行状态信息。
本发明还提供了一种图像分析设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的图像分析方法的步骤。
此外,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的图像分析方法的步骤。
本发明所提供的一种图像分析方法,包括:根据获取的资源配置信息确定目标算法容器;其中,目标算法容器为资源配置信息对应的目标业务类型的算法容器,算法容器包括硬件层、算法层、适配层和业务层;将获取的业务配置信息和待处理图像数据发送给目标算法容器,以使目标算法容器根据业务配置信息对待处理图像数据进行图像分析处理并获取图像分析结果;接收目标算法容器发送的图像分析结果;
可见,本发明在容器(docker)内使用四层模型(硬件层、算法层、适配层和业务层)进行视频应用领域的智能识别分析算法的算法库部署及业务处理,该四层模型将原本耦合的业务进行拆分及标准化处理,减少了业务修改,业务升级,以及增加算法库时的开发工作量,提高了代码复用率和开发效率,且使用docker进行部署减少算法库本身对物理机环境的影响及不同算法库之间的相互影响提高部署效率。此外,本发明还提供了一种图像分析装置、设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例所提供的一种图像分析方法的流程图;
图2为本发明实施例所提供的一种图像分析装置的结构框图;
图3为本发明实施例所提供的一种图像分析设备的结构示意图;
图4为本发明实施例所提供的一种图像分析设备的具体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,随着人工智能的飞速发展,使用AI(人工智能)进行视觉分析与识别技术助力进行人、车、物、行为识别的应用场景越来越多。其中,后端分析是一套当前比较主流的分析方案。具体过程是,前端设备将采集到的视频传输到后端智能分析服务器,后端智能分析服务器上的算法引擎对视频流进行分析。但是,后端智能分析服务器中分析方案都是根据应用场景和业务对特定算法进行开发得到的,例如,专门的人脸分析服务器、车辆识别服务器、行为分析服务器。
可见,其都是通过业务对算法及算例进行绑定,即智能分析方案都与算法实现强关联,业务与算法耦合度极高,不同的业务代码复用度很低,如果客户想要增加业务类型则需要另外进行开发。本发明实施例为了解决上述问题,通过在docker(应用容器引擎)内使用四层模型将原本耦合的业务进行拆分及标准化处理,减少了业务修改,业务升级,以及增加算法库时的开发工作量,提高了代码复用率和开发效率。具体可以参考图1,图1为本发明实施例所提供的一种图像分析方法的流程图。该方法可以包括:
步骤101:根据获取的资源配置信息确定目标算法容器;其中,目标算法容器为资源配置信息对应的目标业务类型的算法容器,算法容器包括硬件层、算法层、适配层和业务层。
本发明实施例并不对资源配置信息的内容进行限定,只要可以根据该资源配置信息确定用户想要的目标算法容器即可。本发明实施例中为了确定出目标算法容器,该资源配置信息需要包含能够体现用户所需业务的类型,即目标业务类型。例如,用户是需要进行人脸识别,还是车辆识别,还是物品识别等,进而可以确定能够执行相关业务算法对应的算法容器。用户还可以在资源配置信息中增加业务识别规模,进而可以确定需要启动几个目标算法容器。当然,用户还可以在资源配置信息中增加任何对于资源的需求内容。例如,所需的目标算法容器中硬件层硬件计算资源等。
需要说明的是,本发明实施例中提供的算法容器包括硬件层、算法层、适配层和业务层。即在docker内使用四层模型(硬件层、算法层、适配层和业务层)进行算法库部署及业务处理,将原本耦合的业务进行拆分及标准化处理,减少了业务修改,业务升级,以及增加算法库时的开发工作量,提高了代码复用率和开发效率。其中,硬件层用于从宿主机映射视频分析板卡,即视频分析硬件GPU。一般服务器物理机会带有一块或者多块视频分析板卡,底层的算法库会调用视频分析板卡的硬件算力来进行业务分析,即对业务中待处理图像数据进行图像分析处理。其硬件驱动在宿主机进行安装,将视频分析板卡从宿主机映射到docker内部,实现在docker内部进行硬件资源的调用。
算法层可以包括算法库,还可以包含模型和配置文件等,本发明实施例并不对此进行限定。该算法库包含其对应的业务类型的相关算法。每种类型的算法库都会对应一个docker,以实现该业务类型的图像分析。例如,人脸识别业务类型包含与人脸识别相关的算法组成算法库;车辆识别业务类型包含与处理识别相关的算法组成算法库;行为识别业务类型包含与行为识别相关的算法组成算法库等;各个业务类型对应不同的docker,例如,人脸业务、车辆业务、行为业务对应不同docker。当然,用户可以对算法库进行更新。算法层可以由算法厂商提供,一般可以以动态库的形式提供给使用者,如,算法层调用硬件层接口进行视频图片解码并使用硬件提供的AI算力实现不同场景的视频分析功能,输入视频或者图片信息给出分析结果,并可以将该分析结果输出给适配层,以便适配层将该分析结果输出给业务层供用户使用。
适配层用于将不同的算法库的接口初始化及将数据输入和输出接口按照统一的标注进行封装并提供给业务层。适配层还可以提供初始化、反初始化、参数设置、启动任务、停止任务、异步推送适配流、异步获取分析结果、同步分析图片等标准接口。当然,适配层也可以指定统一的接口向业务层开放,以实现初始化、反初始化、参数设置、启动任务、停止任务、异步推送适配流、异步获取分析结果、同步分析图片等功能。本发明实施例通过提供标准接口,使得层次更加清晰,对公用业务进行封装,即便有新的算法库接入在没有字段扩展的情况下本发明实施例无需修改业务层代码,仅在适配层对新的算法库进行封装减少代码开发,提高代码复用率,提高开发效率。
可以理解的是,虽然图像分析的业务面向众多领域,但其核心的实现即将视频流或者图片传入算法进行分析然后算法给出分析后的结构化及半结构化数据。因此,本发明实施例将该部分实现进行抽离形成独立的适配层,向上承接业务层,可以通过PC机制实现,向下承接算法层,可以通过动态库实现,进而可以降低业务与算法耦合度。当然,适配层的执行过程可以由设置的算法适配进程执行。
业务层用于处理业务配置信息。业务层可以根据具体业务的业务配置信息调用适配层接口创建任务输入待处理图像数据,如待分析视频或者图片,并从适配层获取分析结果。当然,业务层的执行过程可以由设置的业务进程执行。
进一步的,本发明实施例中算法容器中的各个层均在容器内运行,包括业务层及算法层调用均在容器内运行,这样可以直接使用容器进行部署减少了算法库本身对物理机环境的影响及不同算法库之间的相互影响提高部署效率,即,避免了算法对宿主机环境的影响并规避了不同算法库之间的相互影响。
本发明实施例中并不限定各步骤的执行主体,其可以是引擎管理服务所在的硬件设备。例如,引擎管理服务可以和目标算法容器在同一个服务器上,也可以是引擎管理服务和目标算法容器分别在不同的服务器上。
进一步,由于本发明实施例中具有多种业务类型的算法容器,因此,在根据获取的资源配置信息确定目标算法容器的过程可以包括:
1、根据获取的资源配置信息确定目标业务类型;
2、获取的当前运行的算法容器对应的业务类型;
需要说明的是,本发明实施例中并不限定当前运行的算法容器对应的业务类型的获取方式。例如可以是当前运行的算法容器的业务层进行主动上报,或者是新建引擎守护进程来上报当前运行的算法容器对应的业务类型。
进一步的,为了提高图像处理效率和可靠性,提高对算法容器的管理。本发明实施例还可以获取除了当前运行的算法容器对应的业务类型之外其他的服务器配置信息,例如,服务器配备的智能分析的板卡类型、支持的业务类型。例如,服务器上线后可以先由引擎守护进程向引擎管理服务上报服务器配置信息;引擎管理服务根据引擎守护进程上报的服务器配置信息及用户配置的资源配置信息对算法容器进行切换,对运行业务类型与目标业务类型不一致的容器进行下线并拉起目标业务类型的算法容器作为目标算法容器。
3、当目标业务类型与当前运行的算法容器对应的业务类型不一致时,控制下线当前运行的算法容器,并拉起目标业务类型对应的算法容器作为目标算法容器。
本发明实施例并不限定控制下线当前运行的算法容器,并拉起目标业务类型对应的算法容器作为目标算法容器的具体过程。例如,可以是引擎管理服务直接下线当前运行的算法容器,并拉起目标业务类型对应的算法容器作为目标算法容器。也可以是引擎管理服务控制引擎守护进程下线当前运行的算法容器,并拉起目标业务类型对应的算法容器作为目标算法容器。如,引擎守护进程负责上报服务器配置信息并从定时引擎管理服务获取容器的资源配置信息,根据不同的容器的资源配置信息拉起不同的算法分析的docker镜像,并配置挂载到docker内部的板卡编码;检查资源配置信息的变动情况根据相关信息关闭或者重启docker镜像。
4、当目标业务类型与当前运行的算法容器对应的业务类型一致时,可以将当前运行的算法容器作为目标算法容器。
步骤102:将获取的业务配置信息和待处理图像数据发送给目标算法容器,以使目标算法容器根据业务配置信息对待处理图像数据进行图像分析处理并获取图像分析结果。
可以理解的是,本发明实施例由目标算法容器来实现图像分析过程。该过程可以包括:
A、目标算法容器的业务层根据业务配置信息创建任务,调用适配层提供的接口输入待处理图像数据和任务。
需要说明的是,业务层根据业务配置信息,调整自身参数或将参数传递到适配层,以便适配层根据该参数适配目标算法。进一步的,为了提高业务层处理效率,可以将业务层分为业务调度模块和数据处理模块。其中,业务调度模块负责将分析容器注册到引擎管理服务,并从引擎管理服务获取配置信息,调整自身参数或将参数传递到适配层;数据处理模块从数据源获取图像数据,调用适配层提供的接口,将视频或者图片输入给适配层并从视频层获取分析结果,后续根据具体业务场景将分析结果进行分发或入库。
B、目标算法容器的适配层执行任务在算法层适配目标算法,并将待处理图像数据输入给目标算法。
C、目标算法容器的算法层调用硬件层接口获取硬件资源执行目标算法,获取图像分析结果,并将图像分析结果返回给适配层。
其中,硬件设备映射到容器内部,每块分析板卡(如视频分析板卡)只映射到一个容器内,所以算法层可以直接在容器内调用硬件层接口获取硬件资源执行目标算法。
D、目标算法容器的适配层将图像分析结果发送给业务层。
可以理解的是,业务层在接收到图像分析结果后可以通过网络向外界发送该图像分析结果。即,本发明实施例中可以由业务层软件通过网络的形式与外部引擎管理服务及数据源及数据分发服务进行通信。
可以理解的是,本发明实施例中算法层、适配层、业务层对应的软件在docker部署运行正常后,可以将该容器提取为镜像,整个镜像作为该类型算法的部署组件,每种算法对应一个docker镜像。即,本发明实施例将算法环境部署一次并调试成功后,可以提取部署后的docker镜像,该docker镜像可以在任何支持docker的服务器上模块化部署及拉起。且,遇到运行问题只需要在针对docker内固定的环境进行处理即可,无需考虑硬件设备本身的环境配置对业务的影响,方便安装及扩展及问题处理。
进一步的,当目标算法容器为新启动的算法容器时,新的目标算法容器启动成功后其会向引擎管理服务发送的注册信息,进行注册。当然,本发明实施例中并不限定注册信息的内容以及具体的注册方式。具体的,可以由新的目标算法容器启动成功后其对应的业务层的业务调度模块向引擎管理服务进行注册。进而,引擎管理服务接收启动成功的目标算法容器发送的注册信息,并在目标算法容器完成注册后,将获取的业务配置信息和待处理图像数据发送给目标算法容器。目标算法容器的业务调度模块从引擎管理服务获取对应的配置信息进行加载或者调整,数据处理模块开始运行业务,注册完成后引擎管理服务会下发任务到业务调度模块,收到任务后数据处理模块开始工作,从数据源获取数据并将分析后的结果进行分发。
本发明实施例为了提高管理可靠性,引擎管理服务还可以接收目标算法容器上报的自身运行状态。即,优选的,引擎管理服务可以监控目标算法容器上报的运行状态信息。正常运行过程中业务调度模块会定时向引擎管理服务上报自身状态的。当然,本发明实施例中并不限定运行状态信息的内容。其可以包含引擎管理服务对算法容器进行管理所需要的信息。例如,算法容器中资源的利用率等。
步骤103:接收目标算法容器发送的图像分析结果。
本发明实施例中引擎管理服务接收目标算法容器发送的图像分析结果后,还可以将该图像分析结果发送给对应的客户端。
进一步的,本发明实施例提供的引擎管理服务可以为一个单独的服务独立运行,引擎守护进程及算法容器的业务层进程上线后可以将自身配置信息通过网络上报到引擎管理服务,引擎管理服务负责记录不同容器的配置信息及数据源信息。并根据用户配置实时调整容器的配置信息,并对引擎守护进程及算法容器的业务层提供服务。
进一步的,当集群达到一定规模时可以用K8S管理各个容器,可以把引擎管理服务上与引擎分配相关的服务交给K8S管理,仅把具体业务及数据相关的业务在引擎管理服务上实现,将引擎管理服务作为K8S的辅助服务。以提高容器管理效率。
本实施例中,本发明实施例通过在容器(docker)内使用四层模型(硬件层、算法层、适配层和业务层)进行视频应用领域的智能识别分析算法的算法库部署及业务处理,该四层模型将原本耦合的业务进行拆分及标准化处理,减少了业务修改,业务升级,以及增加算法库时的开发工作量,提高了代码复用率和开发效率,且使用docker进行部署减少算法库及业务进程对宿主机环境的影响,同时避免了不同算法库及其依赖组件可能产生的版本或者环境变量等冲突。
相应于上面的方法实施例,本发明实施例还提供了一种图像分析装置,下文描述的一种图像分析装置与上文描述的一种图像分析方法可相互对应参照。
请参考图2,图2为本发明实施例所提供的一种图像分析装置的结构框图。该装置可以包括:
算法容器选择模块10,用于根据获取的资源配置信息确定目标算法容器;其中,目标算法容器为资源配置信息对应的目标业务类型的算法容器,算法容器包括硬件层、算法层、适配层和业务层;
业务信息发送模块20,用于将获取的业务配置信息和待处理图像数据发送给目标算法容器,以使目标算法容器根据业务配置信息对待处理图像数据进行图像分析处理并获取图像分析结果;
结果接收模块30,用于接收目标算法容器发送的图像分析结果。
可选的,算法容器选择模块10包括:
第一确定单元,用于根据获取的资源配置信息确定目标业务类型;
第二确定单元,用于获取的当前运行的算法容器对应的业务类型;
选择单元,用于当目标业务类型与当前运行的算法容器对应的业务类型不一致时,控制下线当前运行的算法容器,并拉起目标业务类型对应的算法容器作为目标算法容器。
可选的,还包括:
注册模块,用于接收启动成功的目标算法容器发送的注册信息,并在目标算法容器完成注册后触发业务信息发送模块20。
可选的,还包括:
监控模块,用于监控目标算法容器上报的运行状态信息。
可选的,硬件层用于从宿主机映射视频分析板卡,算法层包括算法库,适配层用于将不同的算法库的接口初始化及将数据输入和输出接口按照统一的标注进行封装并提供给业务层,业务层用于处理业务配置信息。
可选的,目标算法容器分析模块,用于目标算法容器的业务层根据业务配置信息创建任务,调用适配层提供的接口输入待处理图像数据和任务;目标算法容器的适配层执行任务在算法层适配目标算法,并将待处理图像数据输入给目标算法;目标算法容器的算法层调用硬件层接口获取硬件资源执行目标算法,获取图像分析结果,并将图像分析结果返回给适配层;目标算法容器的适配层将图像分析结果发送给业务层。
本实施例中,本发明实施例通过在容器(docker)内使用四层模型(硬件层、算法层、适配层和业务层)进行视频应用领域的智能识别分析算法的算法库部署及业务处理,该四层模型将原本耦合的业务进行拆分及标准化处理,减少了业务修改,业务升级,以及增加算法库时的开发工作量,提高了代码复用率和开发效率,且使用docker进行部署减少算法库及业务进程对宿主机环境的影响,同时避免了不同算法库及其依赖组件可能产生的版本或者环境变量等冲突。
相应于上面的方法实施例,本发明实施例还提供了一种图像分析设备,下文描述的一种图像分析设备与上文描述的一种图像分析方法可相互对应参照。
请参考图3,图3为本发明实施例所提供的一种图像分析设备的结构示意图。该图像分析设备可以包括:
存储器D1,用于存储计算机程序;
处理器D2,用于执行计算机程序时实现上述方法实施例所提供的图像分析方法的步骤。
具体的,请参考图4,图4为本发明实施例所提供的一种图像分析设备的具体结构示意图,该图像分析设备310可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对电子设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在数据分层设备310上执行存储介质330中的一系列指令操作。
图像分析设备310还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341。例如,Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
上文所描述的图像分析方法中的步骤可以由图像分析设备的结构实现。
相应于上面的方法实施例,本发明实施例还提供了一种计算机可读存储介质,下文描述的一种计算机可读存储介质与上文描述的一种图像分析方法可相互对应参照。
一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例所提供的图像分析方法的步骤。
该计算机可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
以上对本发明所提供的一种图像分析方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种图像分析方法,其特征在于,包括:
根据获取的资源配置信息确定目标算法容器;其中,所述目标算法容器为所述资源配置信息对应的目标业务类型的算法容器,所述算法容器包括硬件层、算法层、适配层和业务层;
将获取的业务配置信息和待处理图像数据发送给所述目标算法容器,以使所述目标算法容器根据所述业务配置信息对所述待处理图像数据进行图像分析处理并获取图像分析结果;
接收所述目标算法容器发送的所述图像分析结果。
2.根据权利要求1所述的图像分析方法,其特征在于,所述根据获取的资源配置信息确定目标算法容器,包括:
根据获取的资源配置信息确定目标业务类型;
获取的当前运行的算法容器对应的业务类型;
当所述目标业务类型与所述当前运行的算法容器对应的业务类型不一致时,控制下线所述当前运行的算法容器,并拉起所述目标业务类型对应的算法容器作为所述目标算法容器。
3.根据权利要求2所述的图像分析方法,其特征在于,当所述目标算法容器为新拉起的算法容器时,所述将获取的业务配置信息和待处理图像数据发送给所述目标算法容器,包括:
接收启动成功的所述目标算法容器发送的注册信息,并在所述目标算法容器完成注册后,将获取的业务配置信息和待处理图像数据发送给所述目标算法容器。
4.根据权利要求1所述的图像分析方法,其特征在于,还包括:
监控所述目标算法容器上报的运行状态信息。
5.根据权利要求1至4任一项所述的图像分析方法,其特征在于,所述硬件层用于从宿主机映射视频分析板卡,所述算法层包括算法库,所述适配层用于将不同的算法库的接口初始化及将数据输入和输出接口按照统一的标注进行封装并提供给所述业务层,所述业务层用于处理所述业务配置信息。
6.根据权利要求5所述的图像分析方法,其特征在于,所述目标算法容器根据所述业务配置信息对所述待处理图像数据进行图像分析处理并获取图像分析结果,包括:
所述业务层根据所述业务配置信息创建任务,调用所述适配层提供的接口输入所述待处理图像数据和所述任务;
所述适配层执行所述任务在所述算法层适配目标算法,并将所述待处理图像数据输入给所述目标算法;
所述算法层调用所述硬件层接口获取硬件资源执行所述目标算法,获取图像分析结果,并将所述图像分析结果返回给所述适配层;
所述适配层将所述图像分析结果发送给所述业务层。
7.一种图像分析装置,其特征在于,包括:
算法容器选择模块,用于根据获取的资源配置信息确定目标算法容器;其中,所述目标算法容器为所述资源配置信息对应的目标业务类型的算法容器,所述算法容器包括硬件层、算法层、适配层和业务层;
业务信息发送模块,用于将获取的业务配置信息和待处理图像数据发送给所述目标算法容器,以使所述目标算法容器根据所述业务配置信息对所述待处理图像数据进行图像分析处理并获取图像分析结果;
结果接收模块,用于接收所述目标算法容器发送的所述图像分析结果。
8.根据权利要求7所述的图像分析装置,其特征在于,还包括:
监控模块,用于监控所述目标算法容器上报的运行状态信息。
9.一种图像分析设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的图像分析方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的图像分析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111666649.3A CN114443287A (zh) | 2021-12-30 | 2021-12-30 | 一种图像分析方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111666649.3A CN114443287A (zh) | 2021-12-30 | 2021-12-30 | 一种图像分析方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114443287A true CN114443287A (zh) | 2022-05-06 |
Family
ID=81366417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111666649.3A Pending CN114443287A (zh) | 2021-12-30 | 2021-12-30 | 一种图像分析方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114443287A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115640059A (zh) * | 2022-12-14 | 2023-01-24 | 清华大学 | 自动驾驶操作系统、电子设备及存储介质 |
-
2021
- 2021-12-30 CN CN202111666649.3A patent/CN114443287A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115640059A (zh) * | 2022-12-14 | 2023-01-24 | 清华大学 | 自动驾驶操作系统、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113312037B (zh) | 应用于微服务的数据处理方法、装置、设备和存储介质 | |
US8762986B2 (en) | Advanced packaging and deployment of virtual appliances | |
CN111258744A (zh) | 一种基于异构计算的任务处理方法及软硬件框架系统 | |
CN111367534B (zh) | 一种基于应用环境的服务编排方法及系统 | |
US7877749B2 (en) | Utilizing and maintaining data definitions during process thread traversals | |
CN112256444B (zh) | 基于dag的业务处理方法、装置、服务器及存储介质 | |
CN112764875B (zh) | 一种面向智能计算的轻量级入口容器微服务系统及方法 | |
CN111459610A (zh) | 一种模型部署方法和装置 | |
US11307839B2 (en) | Updating of container-based applications | |
CN113190282A (zh) | 安卓运行环境构建的方法及装置 | |
CN111752581A (zh) | 一种分布式系统的升级方法、装置和计算机系统 | |
US11010144B2 (en) | System and method for runtime adaptable applications | |
CN114443287A (zh) | 一种图像分析方法、装置、设备及存储介质 | |
CN115617364A (zh) | Gpu虚拟化部署方法、系统、计算机设备和存储介质 | |
CN116149701A (zh) | 一种面向边缘终端的软件在线升级方法和系统 | |
CN113535321A (zh) | 虚拟化容器管理方法、系统和存储介质 | |
CN111506393B (zh) | 一种基于arm的虚拟化装置及其使用方法 | |
CN114189439A (zh) | 一种自动扩容的方法及装置 | |
CN117519972A (zh) | Gpu资源管理方法及装置 | |
CN115390862A (zh) | 一种应用部署方法及装置 | |
CN115167985A (zh) | 一种虚拟化的算力提供方法及系统 | |
CN113849287A (zh) | 算法服务的处理方法、装置、电子设备及存储介质 | |
CN113485894A (zh) | 一种数据采集方法、装置、设备及可读存储介质 | |
CN117251250B (zh) | 基于云原生平台的容器管理方法及相关设备 | |
GB2379292A (en) | Data processing in a system that has plural processes with dependencies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |