视频处理算法的接入配置方法、设备及存储介质与流程

文档序号:29451351发布日期:2022-03-30 11:56阅读:96来源:国知局
视频处理算法的接入配置方法、设备及存储介质与流程

1.本公开实施例涉及计算机技术领域,尤其涉及一种视频处理算法的接入配置方法、设备及存储介质。


背景技术:

2.近几年来,短视频分享、视频直播等内容传播方式得到高速发展。目前,对视频的处理主要采用pipeline(流水线)模式进行视频处理算法的接入,pipeline模式具体是指线性地依次执行视频的多个视频处理算法,完成诸如特效渲染、显示超链接等的过程。然而,采用pipeline模式的视频处理算法接入,其触发时机单一,后续在进行视频处理算法调用时,只能按照固有接入顺序及固定、单一的调用时机依次调用各个视频处理算法,不仅耗时较长而且难以适应上层业务灵活多变的需求。


技术实现要素:

3.本公开实施例提供一种视频处理算法的接入配置方法、设备及存储介质,以达到灵活配置视频处理算法的接入模式、适应上层业务灵活多变需求的目的。
4.第一方面,本公开实施例提供一种视频处理算法的接入配置方法,该方法既可以在终端设备上实现,也可以在网络设备上实现,该方法包括:
5.为用于处理目标视频的多个视频处理算法分别创建图节点;
6.为每个所述图节点配置第一属性信息,所述第一属性信息用于描述当前图节点与其他图节点的关联关系,所述关联关系反映所述当前图节点对应的视频处理算法的执行依赖关系。
7.采用本公开实施例提供的方法为用于处理目标视频的视频处理算法进行接入配置,使得目标视频的视频处理算法可以以图结构的模式接入指定的应用程序或指定的应用服务器,图结构至少由图节点和图节点之间的关联关系构成。其中,用于处理目标视频的视频处理算法以图节点的形式表示,视频处理算法的执行依赖关系以图节点与其他图节点之间的关联关系表示。图结构支持图节点之间存在多对多的关联关系,因此,采用图结构模式的多个视频处理算法可以支持算法之间多对多的执行依赖关系。实际应用中,可以根据上层业务对视频处理算法的触发时机、各个视频处理算法接入顺序的复杂需求,配置与需求相匹配的图结构。若上层业务需求发生变化,还可以通过修改图结构中图节点之间的关联关系,调整视频处理算法之间的执行依赖关系,以适应上层业务的需求变化。
8.可选的,为每个图节点配置第一属性信息的实现方式可以包括:根据符合第一预定数据格式的第一依赖关系描述信息为每个图节点配置第一属性信息。其中,第一依赖关系描述信息用于描述该图节点对应的视频处理算法的执行依赖关系。
9.采用本公开实施例提供的方法,不需要通过编程来配置目标视频中的视频处理算法的执行依赖关系,只需要按照第一预定数据格式输入第一依赖关系描述信息,终端设备或者网络设备根据该第一依赖关系描述信息描述的视频处理算法的执行依赖关系,即可配
置视频处理算法对应的图节点之间的关联关系,达到配置视频处理算法的执行依赖关系的目的,还进一步降低了配置操作难度。
10.在上述任意方法实施例的基础上,终端设备或者网络设备还可以为每个图节点配置第二属性信息,第二属性信息用于描述当前图节点对应的视频处理算法的算法实例,其中,部分或全部视频处理算法的算法实例是从预置的算法实例集合中选择的,并且所述算法实例集合中包括至少一个算法实例。
11.接入视频处理算法不仅需要配置其执行依赖关系,还需要配置每个视频处理算法的算法实例。在上述实施例中,不需要为每个视频处理算法单独编写算法实例,而是由终端设备或网络设备从预置的算法实例集合中为图节点对应的视频处理算法选择算法实例,进而为图节点配置用于描述视频处理算法的算法实例的第二属性信息。实际应用中,会存在不同的视频处理算法可以使用相同的算法实例的情况,采用本实施例提供的方法,不同的视频处理算法可以复用算法实例集合中的算法实例,从而简化接入配置过程。
12.在此基础上,为每个图节点配置第二属性信息的实现方式可以包括:根据符合第二预定数据格式的视频处理描述信息为每个图节点配置第二属性信息。相应的,视频处理描述信息用于描述视频处理算法实现的功能,或者用于描述视频处理算法的算法实例在算法实例集合中的索引。
13.采用本公开实施例提供的方法,不需要为目标视频的视频处理算法编写算法实例。一个实现方式中,接入配置操作人员按照第二预定数据格式输入视频处理描述信息,终端设备或网络设备可以根据该视频处理描述信息从算法实例集合中选择符合该视频处理描述信息的算法实例,从而生成第二属性信息;另一种实现方式中,接入配置操作人员输入视频处理算法所需要的算法实例在算法实例集合中的索引,终端设备或网络设备可以根据该索引从算法实例集合中查找到对应的算法实例,从而生成第二属性信息。无论上述哪种实现方式,较之手动编写算法实例,均降低了配置操作难度。
14.在上述任意方法实施例的基础上,终端设备或网络设备还可以为上述多个视频处理算法中的部分视频处理算法创建子图结构。具体的,从用于处理所述目标视频的多个视频处理算法中查找执行信息满足预定条件的视频处理算法;以及利用查找到的所述视频处理算法对应的图节点创建子图结构;其中,所述执行信息包括:执行时机。
15.其中,图结构包括子图结构。
16.本公开实施例提供的方法可以适应性地为视频处理算法生成多级图结构,以满足灵活多样的视频处理算法调度需求。
17.在此基础上,所述从所述目标视频的多个视频处理算法中查找执行信息满足预定条件的视频处理算法,包括:
18.从用于处理所述目标视频的多个视频处理算法中查找执行时机相同和/或执行依赖关系相同的视频处理算法,所述执行依赖关系相同包括:视频处理算法的执行结果输出对象相同,和/或,视频处理算法输入的执行结果来源相同。
19.第二方面,本公开实施例提供一种电子设备,该电子设备包括:
20.图节点创建模块,用于为用于处理目标视频的多个视频处理算法分别创建图节点;
21.属性信息配置模块,用于为每个所述图节点配置第一属性信息,所述第一属性信
息用于描述当前图节点与其他图节点的关联关系,所述关联关系反映了所述当前图节点对应的视频处理算法的执行依赖关系。
22.采用本公开实施例提供的电子设备为目标视频的视频处理算法进行接入配置,使得目标视频的视频处理算法可以以图结构的模式接入指定的应用程序或指定的应用服务器,图结构至少由图节点和图节点之间的关联关系构成。其中,用于处理目标视频的视频处理算法以图节点的形式表示,视频处理算法的执行依赖关系以图节点与其他图节点之间的关联关系表示。图结构支持图节点之间存在多对多的关联关系,因此,采用图结构模式的多个视频处理算法可以支持算法之间多对多的执行依赖关系。实际应用中,可以根据上层业务对视频处理算法的触发时机、各个视频处理算法接入顺序的复杂需求,配置与需求相匹配的图结构。若上层业务需求发生变化,还可以通过修改图结构中图节点之间的关联关系,调整视频处理算法之间的执行依赖关系,以适应上层业务的需求变化。
23.可选的,属性信息配置模块根据第一属性配置指令为每个图节点配置第一属性信息。其中,第一属性配置指令包括:符合第一预定数据格式的第一依赖关系描述信息,第一依赖关系描述信息用于描述视频处理算法的执行依赖关系。
24.采用本公开实施例提供的电子设备,不需要通过编程来配置目标视频中的视频处理算法的执行依赖关系,只需要按照第一预定数据格式输入第一依赖关系描述信息,终端设备或网络设备就可以生成包含该第一依赖关系描述信息的第一属性配置信息,终端设备或者网络设备根据该第一依赖关系描述信息描述的视频处理算法的执行依赖关系,即可配置视频处理算法对应的图节点之间的关联关系,达到配置视频处理算法的执行依赖关系的目的,还进一步降低了配置操作难度。
25.在上述任意电子设备实施例的基础上,属性信息配置模块还用于:为每个图节点配置第二属性信息,第二属性信息用于描述当前图节点对应的视频处理算法的算法实例,其中,部分或全部视频处理算法的算法实例是从预置的算法实例集合中选择的,并且,所述算法实例集合中包括至少一个算法实例。
26.接入视频处理算法不仅需要配置其视频处理算法的执行依赖关系,还需要配置每个视频处理算法的算法实例。在上述实施例中,不需要为每个视频处理算法单独编写算法实例,而是由电子设备从预置的算法实例集合中为图节点对应的视频处理算法选择算法实例,进而为图节点配置用于描述视频处理算法的算法实例的第二属性信息。实际应用中,会存在不同的视频处理算法可以使用相同的算法实例的情况,采用本实施例提供的电子设备,不同的视频处理算法可以复用算法实例集合中的算法实例,从而简化接入配置过程。
27.在此基础上,属性信息配置模块为每个图节点配置第二属性信息的实现方式可以包括:根据符合第二预定数据格式的视频处理描述信息为每个图节点配置第二属性信息。相应的,视频处理描述信息用于描述视频处理算法实现的功能,或者用于描述视频处理算法的算法实例在算法实例集合中的索引。
28.采用本公开实施例提供的电子设备,不需要为目标视频处理中的视频处理算法编写算法实例。一个实现方式中,接入配置操作人员按照第二预定数据格式输入视频处理描述信息,电子设备可以根据该视频处理描述信息从算法实例集合中选择符合该视频处理描述信息的算法实例,从而生成第二属性信息;另一种实现方式中,接入配置操作人员输入视频处理算法所需要的算法实例在算法实例集合中的索引,电子设备可以根据该索引从算法
实例集合中查找到对应的算法实例,从而生成第二属性信息。无论上述哪种实现方式,较之手动编写算法实例,均降低了配置操作难度。
29.在上述任意电子设备实施例的基础上,图节点创建模块还可以为上述多个视频处理算法中的部分视频处理算法创建子图结构。具体的,从用于处理所述目标视频的多个视频处理算法中查找执行信息满足预定条件的视频处理算法;以及利用查找到的所述视频处理算法对应的图节点创建子图结构;其中,所述执行信息包括:执行时机。
30.其中,图结构包括子图结构。
31.本公开实施例提供的电子设备可以适应性地为视频处理算法生成多级图结构,以满足灵活多样的视频处理算法调度需求。
32.在此基础上,图节点创建模块用于从所述目标视频的多个视频处理算法中查找执行时机相同和/或执行依赖关系相同的视频处理算法,所述执行依赖关系相同包括:视频处理算法的执行结果输出对象相同,和/或,视频处理算法输入的执行结果来源相同。
33.第三方面,本公开实施例提供一种电子设备,包括处理器和存储器;
34.存储器用于存储执行第一方面各个方法实施例所述方法的程序;处理器被配置为执行存储器中存储的程序。
35.本公开实施例提供的电子设备为目标视频的视频处理算法进行接入配置,使得目标视频的视频处理算法可以以图结构的模式接入指定的应用程序或指定的应用服务器,图结构至少由图节点和图节点之间的关联关系构成。其中,用于处理目标视频的视频处理算法以图节点的形式表示,视频处理算法的执行依赖关系以图节点与其他图节点之间的关联关系表示。图结构支持图节点之间存在多对多的关联关系,因此,采用图结构模式的多个视频处理算法可以支持算法之间多对多的执行依赖关系。实际应用中,可以根据上层业务对视频处理算法的触发时机、各个视频处理算法接入顺序的复杂需求,配置与需求相匹配的图结构。若上层业务需求发生变化,还可以通过修改图结构中图节点之间的关联关系,调整视频处理算法之间的执行依赖关系,以适应上层业务的需求变化。
36.第四方面,本公开实施例提供一种计算机可读存储介质,存储有执行第一方面各个实施例所述方法的程序。
37.本公开实施例提供的计算机可读存储介质中所保存的程序为目标视频的视频处理算法进行接入配置,使得目标视频的视频处理算法可以以图结构的模式接入指定的应用程序或指定的应用服务器,图结构至少由图节点和图节点之间的关联关系构成。其中,目标视频的视频处理算法以图节点的形式表示,视频处理算法的执行依赖关系以图节点与其他图节点之间的关联关系表示。图结构支持图节点之间存在多对多的关联关系,因此,采用图结构模式的多个视频处理算法可以支持算法之间多对多的执行依赖关系。实际应用中,可以根据上层业务对视频处理算法的触发时机、各个视频处理算法接入顺序的复杂需求,配置与需求相匹配的图结构。若上层业务需求发生变化,还可以通过修改图结构中图节点之间的关联关系,调整视频处理算法之间的执行依赖关系,以适应上层业务的需求变化。
附图说明
38.图1为本公开一个实施例提供的视频处理算法接入配置方法流程图;
39.图2为本公开一个实施例提供的视频处理算法的图结构示意图;
40.图3为本公开另一个实施例提供的算法接入配置软件架构示意图;
41.图4为本公开一个实施例提供的电子设备的框图;
42.图5为本公开一个实施例提供的电子设备结构示意图。
具体实施方式
43.为了更好的理解上述技术方案,下面通过附图以及具体实施例对本公开实施例的技术方案做详细的说明,应当理解本公开实施例以及实施例中的具体特征是对本公开实施例技术方案的详细的说明,而不是对本公开技术方案的限定,在不冲突的情况下,本公开实施例以及实施例中的技术特征可以相互组合。
44.本公开实施例提供的视频处理算法接入配置方法可以由安装有浏览器或接入配置客户端的终端设备实现,也可以由网络设备(如接入配置服务器)实现,如图1所示,该方法包括:
45.步骤101、为用于处理目标视频的多个视频处理算法分别创建图节点。
46.其中,目标视频可以但不仅限于是短视频。
47.步骤102、为每个所述图节点配置第一属性信息,所述第一属性信息用于描述当前图节点与其他图节点的关联关系,所述关联关系反映所述当前图节点对应的视频处理算法的执行依赖关系。
48.至少由图节点及图节点之间的关联关系构成了图结构,同一个图结构中的各个图节点对应的视频处理算法可以用来实现相同的功能(例如相同的视频渲染功能),也可以用来实现不同的功能(例如实现不同的视频渲染功能)。实际应用中,可以在指定存储路径下创建图结构的文件夹,并在该文件夹下创建图节点及图节点之间的关联关系,该文件夹中的图节点、关联关系等信息构成图结构。
49.其中,图节点之间的关联关系为有向关联关系。其中,图节点与其他图节点的关联关系指示该图节点指向的图节点,和/或,指示指向该图节点的图节点。
50.通过创建图节点并为图节点配置描述当前图节点与其他图节点的关联关系的属性信息,可以生成描述多个视频处理算法的图结构,以便用户或程序利用该图结构将多个视频处理算法接入指定的应用程序或指定的应用服务器。
51.本公开实施例提供的方法可以但不限于应用在短视频场景中。
52.采用本公开实施例提供的方法为目标视频的视频处理算法进行接入配置,使得目标视频的视频处理算法可以以图结构的模式接入指定的应用程序或指定的应用服务器。其中,用于处理目标视频的视频处理算法以图节点的形式表示,视频处理算法的执行依赖关系以图节点与其他图节点之间的关联关系表示。图结构支持图节点之间存在多对多的关联关系,因此,采用图结构模式的多个视频处理算法可以支持算法之间多对多的执行依赖关系。实际应用中,可以根据上层业务对视频处理算法的触发时机的复杂需求、各个视频处理算法接入顺序,配置与需求相匹配的图结构。若上层业务需求发生变化,还可以通过修改图结构中图节点之间的关联关系,调整视频处理算法之间的执行依赖关系,以适应上层业务的需求变化。
53.本公开实施例的方法可以在终端设备上实现,终端设备可以包括移动终端,例如智能手机、掌上电脑、平板电脑、带显示屏的可穿戴设备等等,还可以包括计算机设备,如台
式机、笔记本电脑、一体机等。本公开实施例的方法可也可以在网络设备上实现,网络设备可以包括例如服务器等。
54.若本公开实施例的方法在终端设备上实现,终端设备可以通过显示屏显示人机交互界面,通过人机交互界面获取用户的图节点创建指令,响应该图节点创建指令创建图节点,并通过该人机交互界面获取用户输入的属性配置指令(该指令中可以包含符合第一预定数据格式的第一依赖关系描述信息),响应属性配置指令为图节点配置属性信息。其中,终端设备既可以在本设备的存储空间中创建图节点,为图节点配置属性信息并保存在本设备的存储空间,也可以访问网络设备,在网络设备的存储空间中创建图节点,为图节点配置属性信息并保存在网络设备的存储空间。
55.若本公开实施例提供的方法在网络设备上实现,网络设备可以根据终端设备的图节点创建请求,在本地存储控件中创建图节点,根据图节点的属性配置请求,为图节点配置属性信息并保存。其中,图节点创建请求、属性配置请求可以由终端设备响应用户的相关指令(该指令中可以包含符合第一预定数据格式的第一依赖关系描述信息)生成并发送给网络设备,并且,终端设备可以通过人机交互界面获取用户的相关指令。
56.可选的,为每个图节点配置第一属性信息的实现方式可以包括:根据符合第一预定数据格式的第一依赖关系描述信息为每个图节点配置第一属性信息。其中,第一依赖关系描述信息用于描述视频处理算法的执行依赖关系。
57.如上所述,若本公开实施例提供的方法在终端设备上实现,那么,终端设备通过其显示屏显示人机交互界面,用户通过该人机交互界面输入符合第一预定数据格式的第一依赖关系描述信息,终端设备根据该第一依赖关系描述信息为图节点配置第一属性信息。
58.如上所述,若本公开实施例提供的方法在网络设备上实现,那么,网络设备获取终端设备发送的第一属性信息配置请求,该第一属性信息配置请求中携带第一依赖关系描述信息,网络设备响应于该第一属性信息配置请求为图节点配置第一属性信息。其中,终端设备通过其显示屏显示人机交互界面,用户通过该人机交互界面输入符合第一预定数据格式的第一依赖关系描述信息,终端设备响应于该信息输入,基于第一依赖关系描述信息生成第一属性信息配置请求并发送给网络设备。应当指出的是,不同图节点的第一依赖关系描述信息可以携带在发送给网络设备的同一个第一属性信息配置请求中,也可以分别通过不同的第一属性信息配置请求发送。终端设备可以将第一属性信息配置请求、图节点创建请求,以及其他属性信息配置请求在同一个消息中发送给网络设备,也可以分别通过不同的消息发送至网络设备。
59.采用本公开实施例提供的方法,不需要通过编程来配置目标视频中的视频处理算法的执行依赖关系,只需要按照第一预定数据格式输入第一依赖关系描述信息,终端设备或网络设备根据该第一依赖关系描述信息描述的视频处理算法的执行依赖关系,即可配置视频处理算法对应的图节点之间的关联关系,达到配置视频处理算法的执行依赖关系的目的,还进一步降低了配置操作难度。
60.在上述任意方法实施例的基础上,终端设备或者网络设备还可以为每个图节点配置第二属性信息,第二属性信息用于描述当前图节点对应的视频处理算法的算法实例,其中,视频处理算法的部分或全部算法实例可以是从预置的算法实例集合中选择的,并且所述算法实例集合中包括至少一个算法实例。
61.实际应用中,终端设备或者网络设备可以首先从算法实例集合中为视频处理算法选择算法实例,若没有与该视频处理算法匹配的算法实例,则指示用户为该视频处理算法编写算法实例,并将编写得到的算法实例添加到算法实例集合中。
62.接入视频处理算法不仅需要配置其执行依赖关系,还需要配置每个视频处理算法的算法实例。在上述实施例中,不需要为每个视频处理算法单独编写算法实例,而是由终端设备或网络设备从预置的算法实例集合中为图节点对应的视频处理算法选择算法实例,进而为图节点配置用于描述视频处理算法的算法实例的第二属性信息。实际应用中,会存在不同的视频处理算法可以使用相同的算法实例的情况,采用本实施例提供的方法,不同的视频处理算法可以复用算法实例集合中的算法实例,从而简化接入配置过程。
63.在此基础上,为每个图节点配置第二属性信息的实现方式可以包括:根据符合第二预定数据格式的视频处理描述信息为每个图节点配置第二属性信息。相应的,视频处理描述信息用于描述视频处理算法实现的功能,或者用于描述视频处理算法的算法实例在算法实例集合中的索引。
64.采用本公开实施例提供的方法,不需要为目标特效中的特效算法编写算法实例。一个实现方式中,接入配置操作人员按照第二预定数据格式输入视频处理描述信息,终端设备或网络设备可以根据该视频处理描述信息从算法实例集合中选择符合该视频处理描述信息的算法实例,从而生成第二属性信息;另一种实现方式中,接入配置操作人员输入视频处理算法所需要的算法实例在算法实例集合中的索引,终端设备或网络设备可以根据该索引从算法实例集合中查找到对应的算法实例,从而生成第二属性信息。无论上述哪种实现方式,较之手动编写算法实例,均降低了配置操作难度。
65.在上述任意方法实施例的基础上,终端设备或网络设备还可以为上述多个视频处理算法中的多个视频处理算法创建子图结构。具体的,终端设备或网络设备可以从用于处理所述目标视频的多个视频处理算法中查找执行信息满足预定条件的视频处理算法;以及利用查找到的所述视频处理算法对应的图节点创建子图结构;其中,所述执行信息包括:执行时机。
66.其中,图结构包括子图结构。。
67.本公开实施例提供的方法可以适应性地为视频处理算法生成多级图结构,以满足灵活多样的视频处理算法调度需求。
68.在此基础上,所述从所述目标视频的多个视频处理算法中查找执行信息满足预定条件的视频处理算法,包括:
69.从用于处理所述目标视频的多个视频处理算法中查找执行时机相同和/或执行依赖关系相同的视频处理算法,所述执行依赖关系相同包括:视频处理算法的执行结果输出对象相同,和/或,视频处理算法输入的执行结果来源相同。
70.实际应用中,也可以根据需要制定子图结构的生成规则。
71.以短视频作为目标视频的应用场景为例,以下将以用于处理短视频的视频处理算法包括6个视频处理算法,并且为其创建的图节点分别为e1、e2、e3、e4、e5、e6为例,描述上述方法。
72.在为上述视频处理算法创建图结构时,可以根据执行依赖关系以及执行时机决定是否需要创建子图结构。
73.其中,对于每个图节点的第一属性信息,e2和e3的实现均依赖e1的执行结果,e4的实现依赖e3的执行结果,e6的实现依赖e4和e5的执行结果。由此,根据上述第一属性信息为e1、e2和e3创建第一子图结构,为e4、e5和e6创建第二子图结构,相应的图结构如图2所示,其中,每级的子图结构以矩形框表示。
74.下面结合具体应用场景对本公开实施例提供的方法进行详细说明。
75.在该应用场景中,可以由终端设备提供应用程序实现用于处理短视频的视频处理算法的接入配置。如图3所示,该应用程序的软件架构如下:算法实例集合层301、图节点层302、算法配置应用层303。
76.其中,算法实例集合层301用于保存并管理算法实例。图节点层302用于保存并管理图节点,算法配置应用层用于与用户进行人机交互,实现图节点的图结构的创建以及图节点的属性信息的配置。
77.仍以上述短视频处理为例,终端设备通过提供的人机交互界面获取用户输入的图结构创建指令,在图节点层302中创建处理该短视频对应的图结构文件。
78.在一个实施例中,该应用程序的算法配置应用层303通过人机交互界面获取用户输入的e1至e6的图节点创建指令。应用程序响应于用户输入的图节点创建指令,在上述图结构文件的目录下创建e1至e6的图节点。
79.该应用程序的算法配置应用层303通过人机交互界面获取用户输入的各个视频处理算法的第一属性配置指令,第一属性配置指令包括描述各个图节点对应的视频处理算法的执行依赖关系的描述信息,并根据该描述信息为e1至e6的图节点配置依赖关系。
80.该应用程序根据上述描述信息可以确定e2和e3的执行均依赖于e1的执行结果,因此,在上述已创建的图结构文件的目录下创建第一子图结构,该第一子图结构包括e1、e2和e3的图节点。此外,该应用程序还根据上述描述信息确定e6的执行依赖于e4和e5的执行结果,因此,在上述已创建的图结构文件的目录下创建第一子图结构,该第一子图结构包括e4、e5和e6的图节点。
81.在一个实施例中,该应用程序的算法配置应用层303通过人机交互界面获取用户输入的视频处理算法e1实现的功能描述信息,根据该功能描述信息从算法实例集合中选择与该功能描述信息匹配的算法实例,若查找到,将该算法实例的参数或索引作为该图节点的第二属性信息,若未查找到,通过人机交互界面告知用户,并通过人机交互界面获取用户输入的算法实例,将用户输入的算法实例保存到算法施例集合,并将用户输入的算法实例的参数或索引作为该图节点的第二属性信息。类似的,应用程序的算法配置应用层303响应于用户输入的指令,为各个图节点配置算法实例。
82.实际应用中,应用程序的算法配置应用层303可以采用关键字符匹配、语义识别等方式从功能描述信息中获取功能关键词,将功能关键词作为索引从算法施例集合中查找匹配的算法实例。
83.应当指出的是,实际应用中,应用程序的算法配置应用层303通过人机交互界面获取到的还可能是视频处理算法e1的算法实例在算法实例集合中的索引,那么,可以直接根据该索引在算法实例集合中查找算法实例。
84.应当指出的是,实际应用中,用户既可以先创建完所有的图节点,再分别对每个图节点进行属性信息配置,也可以每创建一个图节点,即对其进行属性信息配置。
85.基于与图1所示的方法同样的发明构思,本公开实施例提供一种电子设备,如图4所示,该终端设备可以包括图结构创建模块401和属性信息配置模块402,所述各个部件可分别执行上文中结合图1描述的特效算法接入配置方法的各个步骤/功能。以下仅对该电子设备的各部件的主要功能进行描述,而省略以上已经描述过的细节内容。
86.图节点创建模块401,用于为用于处理目标视频的多个视频处理算法分别创建图节点;
87.属性信息配置模块402,用于为每个所述图节点配置第一属性信息,所述第一属性信息用于描述当前图节点与其他图节点的关联关系,所述关联关系反映了所述当前图节点对应的视频处理算法的执行依赖关系。
88.采用本公开实施例提供的电子设备为目标视频的视频处理算法进行接入配置,使得目标视频的视频处理算法可以以图结构的模式接入指定的应用程序或指定的应用服务器,图结构至少由图节点和图节点之间的关联关系构成。其中,用于处理目标视频的视频处理算法以图节点的形式表示,视频处理算法的执行依赖关系以图节点与其他图节点之间的关联关系表示。图结构支持图节点之间存在多对多的关联关系,因此,采用图结构模式的多个视频处理算法可以支持算法之间多对多的执行依赖关系。实际应用中,可以根据上层业务对视频处理算法的触发时机的复杂需求、各个视频处理算法接入顺序,配置与需求相匹配的图结构。若上层业务需求发生变化,还可以通过修改图结构中图节点之间的关联关系,调整视频处理算法之间的执行依赖关系,以适应上层业务的需求变化。
89.可选的,属性信息配置模块402根据第一属性配置指令为每个图节点配置第一属性信息。其中,第一属性配置指令包括:符合第一预定数据格式的第一依赖关系描述信息,第一依赖关系描述信息用于描述视频处理算法的执行依赖关系。
90.采用本公开实施例提供的电子设备,不需要通过编程来配置目标视频中的视频处理算法的执行依赖关系,只需要按照第一预定数据格式输入第一依赖关系描述信息,终端设备或网络设备就可以生成包含该第一依赖关系描述信息的第一属性配置信息,终端设备或者网络设备根据该第一依赖关系描述信息描述的视频处理算法的执行依赖关系,即可配置视频处理算法对应的图节点之间的关联关系,达到配置视频处理算法的执行依赖关系的目的,还进一步降低了配置操作难度。
91.在上述任意电子设备实施例的基础上,属性信息配置模块402还用于:为每个图节点配置第二属性信息,第二属性信息用于描述当前图节点对应的视频处理算法的算法实例,其中,部分或全部视频处理算法的算法实例是从预置的算法实例集合中选择的,并且,所述算法实例集合中包括至少一个算法实例。
92.接入视频处理算法不仅需要配置其视频处理算法的执行依赖关系,还需要配置每个视频处理算法的算法实例。在上述实施例中,不需要为每个视频处理算法单独编写算法实例,而是由电子设备从预置的算法实例集合中为图节点对应的视频处理算法选择算法实例,进而为图节点配置用于描述视频处理算法的算法实例的第二属性信息。实际应用中,会存在不同的视频处理算法可以使用相同的算法实例的情况,采用本实施例提供的电子设备,不同的视频处理算法可以复用算法实例集合中的算法实例,从而简化接入配置过程。
93.在此基础上,属性信息配置模块402为每个图节点配置第二属性信息的实现方式可以包括:根据符合第二预定数据格式的视频处理描述信息为每个图节点配置第二属性信
息。相应的,视频处理描述信息用于描述视频处理算法实现的功能,或者,用于描述视频处理算法的算法实例在算法实例集合中的索引。
94.采用本公开实施例提供的电子设备,不需要为目标视频处理中的视频处理算法编写算法实例。一个实现方式中,接入配置操作人员按照第二预定数据格式输入视频处理描述信息,电子设备可以根据该视频处理描述信息从算法实例集合中选择符合该视频处理描述信息的算法实例,从而生成第二属性信息;另一种实现方式中,接入配置操作人员输入视频处理算法所需要的算法实例在算法实例集合中的索引,电子设备可以根据该索引从算法实例集合中查找到对应的算法实例,从而生成第二属性信息。无论上述哪种实现方式,较之手动编写算法实例,均降低了配置操作难度。
95.在上述任意电子设备实施例的基础上,图节点创建模块401还可以为上述多个视频处理算法中的部分视频处理算法创建子图结构。具体的,从用于处理所述目标视频的多个视频处理算法中查找执行信息满足预定条件的视频处理算法;以及利用查找到的所述视频处理算法对应的图节点创建子图结构;其中,所述执行信息包括:执行时机。
96.其中,图结构包括子图结构。
97.本公开实施例提供的电子设备可以适应性地为视频处理算法生成多级图结构,以满足灵活多样的视频处理算法调度需求。
98.在此基础上,图节点创建模块用于从所述目标视频的多个视频处理算法中查找执行时机相同和/或执行依赖关系相同的视频处理算法,所述执行依赖关系相同包括:视频处理算法的执行结果输出对象相同,和/或,视频处理算法输入的执行结果来源相同。
99.上述各实施例中的电子设备可以包括终端设备,例如,智能手机、掌上电脑、平板电脑、带显示屏的可穿戴设备、车载电脑、智能音箱、个人计算机等等,还可以包括网络设备,例如服务器等。
100.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的电子设备的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
101.基于与方法同样的发明构思,本公开实施例还提供一种电子设备,包括处理器和存储器;
102.存储器用于存储执行上述各个方法实施例所述方法的程序;处理器被配置为执行存储器中存储的程序。当存储器中存储的程序指令被处理器运行时,所述处理器执行上述各个方法实施例所述方法,并且还用于实现根据本发明实施例的终端设备中的相应模块。处理器可以是包括中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制电子设备中的其它组件以执行期望的功能。存储器可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器可以运行所述程序指令,以实现上文所述的本公开的实施例的功能以及/或者其它期望的功能。
103.本公开实施例提供的电子设备为目标视频的视频处理算法进行接入配置,使得目标视频的视频处理算法可以以图结构的模式接入指定的应用程序或指定的应用服务器,图
结构至少由图节点和图节点之间的关联关系构成。其中,用于处理目标视频的视频处理算法以图节点的形式表示,视频处理算法的执行依赖关系以图节点与其他图节点之间的关联关系表示。图结构支持图节点之间存在多对多的关联关系,因此,采用图结构模式的多个视频处理算法可以支持算法之间多对多的执行依赖关系。实际应用中,可以根据上层业务对视频处理算法的触发时机、各个视频处理算法接入顺序的复杂需求,配置与需求相匹配的图结构。若上层业务需求发生变化,还可以通过修改图结构中图节点之间的关联关系,调整视频处理算法之间的执行依赖关系,以适应上层业务的需求变化。
104.本公开实施例提供的电子设备可以包括终端设备,如图5所示,终端设备不仅包括处理器和存储器,还包括输入设备(例如触摸屏、摄像头、传声器等)、输出设备(例如显示屏、扬声器等)、通信模块、电源模块。
105.其中,存储器、输入设备、输出设备、通信模块、电源模块通过串口、总线或usb接口与处理器连接。其中,对于单处理器终端设备,处理器即cpu(中央处理器);对于双处理器终端设备,处理器包括主处理器和从处理器,由其主处理器执行应用程序实现本发明实施例提供的方法,若其中需要与外界进行通信,则由从处理器控制通信模块配合实现;对于包含gpu(图形处理器)和cpu的终端设备,处理器是指gpu和cpu,由gpu和cpu配合或由cpu单独实现本公开实施例提供的方法。
106.其中,终端设备的存储器可以但不仅限于包括:flash(闪存)存储器、ram(随机存取存储器)、rom(只读存储器)等。ram主要用于存储终端设备运行时的程序和数据,需要执行的程序或者需要处理的数据都必须先装入ram内。rom主要用于检查终端设备操作系统的配置情况,并提供最基本的输入输出(i/o)程序。flash存储器是一种长寿命的非易失性(在断电情况下仍能保持所存储的数据信息)存储器,数据删除不是以单个的字节为单位,而是以固定的区块为单位。由于flash存储器断电时仍能保存数据,它通常被用来保存设置信息,如用户对手机的设置信息等。
107.应当指出的是,针对不同的终端设备(单处理器智能手机、双处理器智能手机、智能穿戴设备、平板电脑等等),其可能包括比图5所示的终端设备更多或更少的硬件结构,但只要包括存储器和处理器,且能够实现上述方法实施例的功能,均在本公开的保护范围内。
108.基于与方法同样的发明构思,本公开实施例还提供一种计算机可读存储介质,存储有执行上述各个实施例所述方法的程序。
109.若本公开实施例提供的计算机可读存储介质中所保存的程序本公开实施例提供的电子设备。
110.本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的设备。
111.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令设备的制造品,该指令设备实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
112.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
113.尽管已描述了本说明书的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本说明书范围的所有变更和修改。
114.显然,本领域的技术人员可以对本说明书进行各种改动和变型而不脱离本说明书的精神和范围。这样,倘若本说明书的这些修改和变型属于本说明书权利要求及其等同技术的范围之内,则本说明书也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1