CN112162797A - 数据处理方法、系统、存储介质以及电子设备 - Google Patents
数据处理方法、系统、存储介质以及电子设备 Download PDFInfo
- Publication number
- CN112162797A CN112162797A CN202011097566.2A CN202011097566A CN112162797A CN 112162797 A CN112162797 A CN 112162797A CN 202011097566 A CN202011097566 A CN 202011097566A CN 112162797 A CN112162797 A CN 112162797A
- Authority
- CN
- China
- Prior art keywords
- algorithm
- data
- processed
- identifier
- plug
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 31
- 238000000034 method Methods 0.000 claims abstract description 61
- 230000008569 process Effects 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims description 45
- 230000008878 coupling Effects 0.000 abstract description 6
- 238000010168 coupling process Methods 0.000 abstract description 6
- 238000005859 coupling reaction Methods 0.000 abstract description 6
- 238000004891 communication Methods 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 6
- 230000003796 beauty Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/438—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/48—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种数据处理方法、系统、存储介质以及电子设备,涉及通信技术领域,该方法包括:获取待处理数据以及场景标识;其中,场景标识用于表征待处理数据需要被与该场景标识对应的算法处理;在预先构建的算法插件中查询与场景标识匹配的算法,并调用查询到的与场景标识匹配的算法对待处理数据进行处理,以获得处理后的数据;其中,算法插件允许通过通用接口调用该算法插件中包含的所有算法。本发明的有益效果是:降低了算法与平台的耦合度,提高了可移植性、可扩展性和复用性。而且,平台与算法插件之间只有有限的耦合,而算法在算法插件内将以简单的查询来调度链接,能够提升算法运行的性能。
Description
技术领域
本发明属于通信技术领域,尤其涉及一种数据处理方法、系统、存储介质以及电子设备。
背景技术
随着移动通讯技术的发展,移动终端更新周期越来越短,移动平台的性能也越来越好,这也让移动终端厂商可以提供越来越多的功能。尤其是相机的功能也越来越丰富,相机的功能往往是各家终端厂商的主打卖点、差异化的体现。
基于此,各种图像处理算法也被大量应用,一款终端中往往集成了数十种不同作用的图像处理算法,这些算法可能在相机的各个场景中被单独或者叠加使用。在开发过程中,开发人员经常需要集成各个不同算法提供商的同类算法,这些算法经常要移植到不同的平台上,面对如此数量的算法、平台加上各场景算法串联组合在一起集成到平台上,给开发者带来大量复杂、重复的工作,也带来难以有效管理的问题及算法组合运行性能问题。
发明内容
本发明正是基于现有的算法移植到不同平台上时需要进行大量重复工作的技术问题,提出了一种数据处理方法、系统、存储介质以及电子设备。
第一方面,本发明实施例提供了一种数据处理方法,包括:
获取待处理数据以及场景标识;其中,所述场景标识用于表征所述待处理数据需要被与该场景标识对应的算法处理;
在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据;
其中,所述算法插件允许通过通用接口调用该算法插件中包含的所有算法。
可选地,通过以下步骤预先构建所述算法插件,包括:
搭建算法插件的框架;
在所述算法插件的框架内创建用于调用算法的通用接口;
将待包含于所述算法插件中的算法与所述通用接口进行关联,并为所述算法分配不同的算法标识符,从而构建所述算法插件。
可选地,当所述场景标识包括至少一个目标标识符时,
所述在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据,包括:
S10,依次对所述场景标识中的目标标识符进行轮询;
S20,将当前轮询到的目标标识符依次与所述算法插件中的算法标识符进行匹配,以确定与该目标标识符相匹配的算法标识符;
S30,调用与该目标标识符相匹配的算法标识符所对应的算法,利用该算法对所述待处理数据进行处理,得到该算法的输出数据;
S40,将该算法的输出数据作为新的待处理数据,返回执行步骤S10,直至所有的目标标识符轮询完毕,并将最后一个轮询到的算法的输出数据确定为所述处理后的数据。
可选地,在调用与该目标标识符相匹配的算法标识符所对应的算法,利用该算法对所述待处理数据进行处理,得到该算法的输出数据之前,所述方法还包括:
确定与该目标标识符相匹配的算法标识符所对应的算法是否已被初始化;
当与该目标标识符相匹配的算法标识符所对应的算法未被初始化时,基于预设的参数对该算法进行初始化。
可选地,调用与该目标标识符相匹配的算法标识符所对应的算法,利用该算法对所述待处理数据进行处理,得到该算法的输出数据,包括:
调用与该目标标识符相匹配的算法标识符所对应的算法;
利用该算法对所述待处理数据进行处理,并判断该算法的处理过程是否成功;
当该算法的处理过程失败时,将所述待处理数据作为该算法的输出数据进行输出。
可选地,在所述在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据之后,所述方法还包括:
针对所述场景标识中的每个所述目标标识符,获取该目标标识符匹配到的算法的处理过程是否成功的判断结果;
当存在至少一个判断结果为成功时,输出所述处理后的数据;
当每个判断结果均为失败时,缓存所述待处理数据。
可选地,所述在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据之后,所述方法还包括:
对被调用的算法的参数进行重置。
第二方面,本发明实施例提供了一种数据处理系统,其特征在于,包括:
获取模块,配置为获取待处理数据以及场景标识;其中,所述场景标识用于表征所述待处理数据需要被与该场景标识对应的算法处理;
数据处理模块,配置为在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据;
其中,所述算法插件允许通过通用接口调用该算法插件中包含的所有算法。
第三方面,本发明实施例提供了一种存储介质,所述存储介质上存储有程序代码,所述程序代码被处理器执行时,实现如上述实施例中任一项所述的数据处理方法。
第四方面,本发明实施例提供了一种电子设备,所述电子设备包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的程序代码,所述程序代码被所述处理器执行时,实现如上述实施例中任一项所述的数据处理方法。
在本发明实施例提供的一种数据处理方法、系统、存储介质以及电子设备,通过预先构建一个基于通用接口调用算法插件中包括的所有算法的算法插件,在接收到待处理数据以及场景标识之后,在预构建的算法插件中查询与所述场景标识匹配的算法,以调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,获得处理后的数据。可见,本发明实施例提供的数据处理方法,通过一个通用接口调用该算法插件中包括的所有算法,降低了算法与平台的耦合度,提高了可移植性、可扩展性和复用性。而且,平台与算法插件之间只有有限的耦合,而算法在算法插件内将以简单的查询来调度链接,能够提升算法运行的性能。
附图说明
通过结合附图阅读下文示例性实施例的详细描述可更好地理解本公开的范围。其中所包括的附图是:
图1示出了一种现有插件的框架示意图;
图2示出了本发明实施例一提出的一种数据处理方法的流程示意图;
图3示出了本发明实施例二提出的一种数据处理方法的流程示意图;
图4示出了本发明提出的算法插件的框架示意图;
图5示出了本法明提出的算法轮询的流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,以下将结合附图及实施例来详细说明本发明的实施方法,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图1示出了一种现有插件的框架示意图,如图1所示,每个算法在接入平台时都对应一个平台算法接入点,有n个算法接入平台时,则需要有n个平台算法接入点。因此,对于现有的算法插件在移植到不同的平台时,需要集成各个不同算法提供商的同类算法,并设计各自设计不同的算法接入点,导致产生大量复杂且重复的工作。
基于上述问题,本发明提供了一种数据处理方法、系统、存储介质以及电子设备,通过预先构建一个基于通用接口调用算法插件中包括的所有算法的算法插件,在接收到待处理数据以及场景标识之后,在预构建的算法插件中查询与所述场景标识匹配的算法,以调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,获得处理后的数据。通过通用接口调用该算法插件中包括的所有算法,降低了算法与平台的耦合度,提高了可移植性、可扩展性和复用性。而且,平台与算法插件之间只有有限的耦合,而算法在算法插件内将以简单的查询来调度链接,能够提升算法运行的性能。
实施例一
根据本发明的实施例,提供了一种数据处理方法,图1示出了本发明实施例一提出的一种数据处理方法的流程示意图,如图1所示,该数据处理方法可以包括:步骤110至步骤120。
在步骤110中,获取待处理数据以及场景标识;其中,所述场景标识用于表征所述待处理数据需要被与该场景标识对应的算法处理。
这里,待处理数据可以是图像数据、音频数据等。场景标识是用于表示待处理数据需要被与该场景标识对应的算法处理。
在步骤120中,在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据;
其中,所述算法插件允许通过通用接口调用该算法插件中包含的所有算法。
这里,在获取待处理数据以及场景标识之后,则根据场景标识在预先构建的算法插件中查询与所述场景标识匹配的算法,从而通过通用接口调用与所述场景标识匹配的算法对待处理数据进行处理,从而获得处理后的数据。
例如,获取到的场景标识D对应算法插件中的算法B,则通过通用接口调用算法B对待处理数据进行处理。即将待处理数据作为算法B的输入,算法B输出结果,得到处理后的数据。
值得说明的是,算法可以包括图像处理算法、声音处理算法或其他算法。
在本实施例中,通过通用接口调用该算法插件中包括的所有算法,降低了算法与平台的耦合度,提高了可移植性、可扩展性和复用性。而且,平台与算法插件之间只有有限的耦合,而算法在算法插件内将以简单的查询来调度链接,能够提升算法运行的性能。
实施例二
在上述实施例的基础上,本发明的实施例二还可以提供一种数据处理方法。图3示出了本发明实施例二提出的一种数据处理方法的流程示意图,如图3所示,该数据处理方法可以包括:步骤210至步骤220。
在步骤210中,获取待处理数据以及场景标识;其中,所述场景标识用于表征所述待处理数据需要被与该场景标识对应的算法处理。
这里,待处理数据可以是图像数据、音频数据等。场景标识是用于表示待处理数据需要被与该场景标识对应的算法处理。
在步骤220中,在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据;
其中,所述算法插件允许通过通用接口调用该算法插件中包含的所有算法。
这里,在获取待处理数据以及场景标识之后,则根据场景标识在预先构建的算法插件中查询与所述场景标识匹配的算法,从而通过通用接口调用与所述场景标识匹配的算法对待处理数据进行处理,从而获得处理后的数据。
例如,获取到的场景标识D对应算法插件中的算法B,则通过通用接口调用算法B对待处理数据进行处理。即将待处理数据作为算法B的输入,算法B输出结果,得到处理后的数据。
值得说明的是,算法可以包括图像处理算法、声音处理算法或其他算法。
在一个可选的实施方式中,预先通过以下步骤构建所述算法插件,包括:S101至S103。
S101,搭建算法插件的框架;
S102,在所述算法插件的框架内创建用于调用算法的通用接口;
S103,将待包含于所述算法插件中的算法与所述通用接口进行关联,并为所述算法分配不同的算法标识符,从而构建所述算法插件。
这里,图4示出了本发明提出的算法插件的框架示意图,如图4所示,在步骤S101中,算法插件的框架,可以选用常用的设计模式,如代理模式等,以增加算法框架的通用性、稳定性和可扩展性。在步骤S102中,需要在所述算法插件框架内创建算法通用接口类,以便统一算法接入标准接口,该通用接口可以命名为“IFeaturePlugin”。其中通用接口的功能主要包括初始化init、数据处理process、销毁uninit、获取场景标识以及额外参数输入等功能。然后,接入所需的算法,如算法1、算法2、......,接入各个算法厂商不限数量、种类的算法,每个算法是一个个子功能,简称SubFeature。SubFeature继承创建的通用接口IFeaturePlugin来进行格式化输入输出。同时,每个SubFeature定义对应的算法标识符以区分不同的算法,其中,算法标识符通过64位整型类型向左移位生成,在实现通用接口时调用算法厂家提供的算法接口以真正运行某个算法。
算法插件管理FeaturePluginManager也将继承创建的通用接口IFeaturePlugin,各个SubFeature将随着FeaturePluginManager类创建而创建,创建后将各个SubFeature对象依次加入集合中,该集合称为算法支持列表SupportedFeatures,加入算法支持列表的先后顺序将决定算法处理数据的顺序,即先加入将优先被执行,这个SupportedFeatures集合包含所有支持的算法。FeaturePluginManager将是算法与平台侧唯一有耦合处。
图5示出了本法明提出的算法轮询的流程示意图,如图5所示,在一个可选的实施方式中,当所述场景标识中包括至少一个目标标识符时,步骤220中,所述在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据,包括:
S10,依次对所述场景标识中的目标标识符进行轮询;
S20,将当前轮询到的目标标识符依次与所述算法插件中的算法标识符进行匹配,以确定与该目标标识符相匹配的算法标识符;
S30,调用与该目标标识符相匹配的算法标识符所对应的算法,利用该算法对所述待处理数据进行处理,得到该算法的输出数据;
S40,将该算法的输出数据作为新的待处理数据,返回执行步骤S10,直至所有的目标标识符轮询完毕,并将最后一个轮询到的算法的输出数据确定为所述处理后的数据。
这里,当获取到的所述场景标识中包括至少一个目标标识符时,说明待处理数据属于被多个算法进行处理。获取到的目标标识符包括A、B以及C进行举例说,则步骤S10至步骤S40的过程可以理解为:
首先,从A、B以及C中选中A这一目标标识符,然后将目标标识符A与算法插件中的算法标识符进行匹配,从而确定到与目标标识符A相匹配的算法标识符A。从而调用与算法标识符A相匹配的算法对待处理数据进行处理,得到输出数据D。然后重新选取目标标识符B,将目标标识符B与算法插件中的算法标识符进行匹配,从而确定到与目标标识符B相匹配的算法标识符B。然后调用与算法标识符B相匹配的算法对输出数据D进行处理,得到输出数据F。然后在重新选取目标标识符C,将目标标识符C与算法插件中的算法标识符进行匹配,从而确定到与目标标识符C相匹配的算法标识符C。然后调用与算法标识符C相匹配的算法对输出数据F进行处理,得到输出数据H,则输出数据H作为处理后的数据。
值得说明的是,插件管理器根据输入,轮询算法支持列表SupportedFeatures,取出SubFeature的算法标识符与选取到的目标标识符按位运算,若运算结果为真,表明该算法标识符对应的SubFeature被命中,待处理数据需要被该SubFeature处理,若运算结果为假,则被轮询到的算法不匹配,则不需要处理数据,直接跳过执行,继续轮询下一个算法。
由此,算法在算法插件内将以简单的轮询来实现调度链接,从而提升算法运行的性能。
在一个可选的实施方式中,在调用与该目标标识符相匹配的算法标识符所对应的算法,利用该算法对所述待处理数据进行处理,得到该算法的输出数据之前,所述方法还包括:
确定与该目标标识符相匹配的算法标识符所对应的算法是否已被初始化;
当与该目标标识符相匹配的算法标识符所对应的算法未被初始化时,基于预设的参数对该算法进行初始化。
这里,当算法SubFeature被调用时,判断SubFeature是否被初始化过,如果已经初始化则将直接调用该算法对待处理数据进行处理,若还没有被初始化,则需先初始化。部分算法可能在第一次处理数据时再初始化以提升相机应用打开性能,因此需要基于预设的参数对该算法进行初始化。预设的参数可以是用户下发的,也可以是系统预设的。如“美颜模式”对应一个场景标识,也对应一个预设的参数,则根据该预设的参数对对应的算法进行初始化。
在一个可选的实施方式中,调用与该目标标识符相匹配的算法标识符所对应的算法,利用该算法对所述待处理数据进行处理,得到该算法的输出数据,包括:
调用与该目标标识符相匹配的算法标识符所对应的算法;
利用该算法对所述待处理数据进行处理,并判断该算法的处理过程是否成功;
当该算法的处理过程失败时,将所述待处理数据作为该算法的输出数据进行输出。
这里,在利用目标标识符在算法插件中进行算法轮询时,将待处理数据作为与该目标标识符相匹配的算法标识符对应的算法的输入,算法输出处理过程的结果。判断该算法的处理过程是否成功,如果返回的处理过程为成功,说明算法成功执行,则以该算法的输出数据作为下一个被轮询命中的算法的输入,以串联算法执行,直至所有目标标识符均被轮询完毕。如果返回的算法处理过程为失败,当该算法的处理过程失败时,将所述待处理数据作为该算法的输出数据进行输出,即将输入该算法的数据作为下一个被轮询命中的算法的输入数据。其中,第一个被轮询命中的算法的输入是平台侧输入的原始数据。
在一个可选的实施方式中,在所述在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据之后,所述方法还包括:
针对所述场景标识中的每个所述目标标识符,获取该目标标识符匹配到的算法的处理过程是否成功的判断结果;
当存在至少一个判断结果为成功时,输出所述处理后的数据;
当每个判断结果均为失败时,缓存所述待处理数据。
这里,在每个所述目标标识符轮询完毕之后,获取每个所述目标标识符匹配到的算法的处理过程是否成功的判断结果。当存在至少一个判断结果为成功时,,说明至少有一个算法成功执行,输出所述处理后的数据,算法插件执行至此结束。当每个判断结果均为失败时,缓存所述待处理数据,说明没有一个算法是执行成功的,则将平台侧的输入数据,即原始的待处理数据拷贝输出缓存中,以等待下一步操作。
在一个可选的实施方式中,所述在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据之后,所述方法还包括:
对被调用的算法的参数进行重置。
这里,对被调用的算法的参数进行重置实际上是销毁初始化过的SubFeature,同时FeaturePluginManager中的数据也进行销毁,等待下一次的算法处理。
下面,通过图像处理算法对上述实施方式进行说明:
根据产品需求,为相机应用的各种场景模式设置对应的场景ID(场景标识),如为普通拍照模式、美颜模式、人像模式、夜景模式等模式分别定义对应的场景ID。其中,每个场景ID均对应一个算法集合,该算法集合表示为该场景ID下需要运行的算法。该算法集合中包括目标标识符,如美颜模式对应目标标识符A、B以及C。
在相机打开“美颜模式”时,下发包含目标标识符A、B以及C的场景ID;
然后平台接入点的软件程序根据接收到的目标标识符A、B以及C在预先构建的算法插件中查询与该目标标识符A、B以及C匹配的算法。同时,平台算法接入点调用算法插件管理类FeaturePluginManager初始化方法,并传入算法集合等参数,FeaturePluginManager根据参数初始化各个SubFeature。
在相机应用退出时,需要销毁FeaturePluginManager及前述已经初始化过的SubFeature。
实施例三
根据本发明的实施例,还提供了一种数据处理系统,包括:
获取模块,配置为获取待处理数据以及场景标识;其中,所述场景标识用于表征所述待处理数据需要被与该场景标识对应的算法处理;
数据处理模块,配置为在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据;
其中,所述算法插件允许通过通用接口调用该算法插件中包含的所有算法。
实施例四
根据本发明的实施例,还提供了一种存储介质,所述存储介质上存储有程序代码,所述程序代码被处理器执行时,实现如上述实施例任一项所述的数据处理方法。
实施例五
根据本发明的实施例,还提供了一种电子设备,所述电子设备包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的程序代码,所述程序代码被所述处理器执行时,实现如上述实施例任一项所述的数据处理方法。
以上结合附图详细说明了本发明的技术方案,考虑到相关技术中,现有的算法移植到不同平台上时需要进行大量重复工作。本发明提供一种数据处理方法、系统、存储介质以及电子设备,通过预先构建一个基于通用接口调用算法插件中包括的所有算法的算法插件,在接收到待处理数据以及场景标识之后,在预构建的算法插件中查询与所述场景标识匹配的算法,以调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,获得处理后的数据。降低了算法与平台的耦合度,提高了可移植性、可扩展性和复用性。而且,平台与算法插件之间只有有限的耦合,而算法在算法插件内将以简单的查询来调度链接,能够提升算法运行的性能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
虽然本发明所公开的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所公开的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
获取待处理数据以及场景标识;其中,所述场景标识用于表征所述待处理数据需要被与该场景标识对应的算法处理;
在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据;
其中,所述算法插件允许通过通用接口调用该算法插件中包含的所有算法。
2.根据权利要求1所述的数据处理方法,其特征在于,通过以下步骤预先构建所述算法插件,包括:
搭建算法插件的框架;
在所述算法插件的框架内创建用于调用算法的通用接口;
将待包含于所述算法插件中的算法与所述通用接口进行关联,并为所述算法分配不同的算法标识符,从而构建所述算法插件。
3.根据权利要求2所述的数据处理方法,其特征在于,当所述场景标识包括至少一个目标标识符时,
所述在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据,包括:
S10,依次对所述场景标识中的目标标识符进行轮询;
S20,将当前轮询到的目标标识符依次与所述算法插件中的算法标识符进行匹配,以确定与该目标标识符相匹配的算法标识符;
S30,调用与该目标标识符相匹配的算法标识符所对应的算法,利用该算法对所述待处理数据进行处理,得到该算法的输出数据;
S40,将该算法的输出数据作为新的待处理数据,返回执行步骤S10,直至所有的目标标识符轮询完毕,并将最后一个轮询到的算法的输出数据确定为所述处理后的数据。
4.根据权利要求3所述的数据处理方法,其特征在于,在调用与该目标标识符相匹配的算法标识符所对应的算法,利用该算法对所述待处理数据进行处理,得到该算法的输出数据之前,所述方法还包括:
确定与该目标标识符相匹配的算法标识符所对应的算法是否已被初始化;
当与该目标标识符相匹配的算法标识符所对应的算法未被初始化时,基于预设的参数对该算法进行初始化。
5.根据权利要求3所述的数据处理方法,其特征在于,调用与该目标标识符相匹配的算法标识符所对应的算法,利用该算法对所述待处理数据进行处理,得到该算法的输出数据,包括:
调用与该目标标识符相匹配的算法标识符所对应的算法;
利用该算法对所述待处理数据进行处理,并判断该算法的处理过程是否成功;
当该算法的处理过程失败时,将所述待处理数据作为该算法的输出数据进行输出。
6.根据权利要求5所述的数据处理方法,其特征在于,在所述在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据之后,所述方法还包括:
针对所述场景标识中的每个所述目标标识符,获取该目标标识符匹配到的算法的处理过程是否成功的判断结果;
当存在至少一个判断结果为成功时,输出所述处理后的数据;
当每个判断结果均为失败时,缓存所述待处理数据。
7.根据权利要求1所述的数据处理方法,其特征在于,所述在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据之后,所述方法还包括:
对被调用的算法的参数进行重置。
8.一种数据处理系统,其特征在于,包括:
获取模块,配置为获取待处理数据以及场景标识;其中,所述场景标识用于表征所述待处理数据需要被与该场景标识对应的算法处理;
数据处理模块,配置为在预先构建的算法插件中查询与所述场景标识匹配的算法,并调用查询到的与所述场景标识匹配的算法对所述待处理数据进行处理,以获得处理后的数据;
其中,所述算法插件允许通过通用接口调用该算法插件中包含的所有算法。
9.一种存储介质,所述存储介质上存储有程序代码,其特征在于,所述程序代码被处理器执行时,实现如权利要求1至7中任一项所述的数据处理方法。
10.一种电子设备,其特征在于,所述电子设备包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的程序代码,所述程序代码被所述处理器执行时,实现如权利要求1至7中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011097566.2A CN112162797B (zh) | 2020-10-14 | 2020-10-14 | 数据处理方法、系统、存储介质以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011097566.2A CN112162797B (zh) | 2020-10-14 | 2020-10-14 | 数据处理方法、系统、存储介质以及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112162797A true CN112162797A (zh) | 2021-01-01 |
CN112162797B CN112162797B (zh) | 2022-01-25 |
Family
ID=73868235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011097566.2A Active CN112162797B (zh) | 2020-10-14 | 2020-10-14 | 数据处理方法、系统、存储介质以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112162797B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760987A (zh) * | 2021-02-04 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 数据处理方法和数据处理平台 |
CN113918232A (zh) * | 2021-09-07 | 2022-01-11 | 深圳云天励飞技术股份有限公司 | 一种算法服务的调用方法、装置、服务器和存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7757171B1 (en) * | 2002-01-23 | 2010-07-13 | Microsoft Corporation | Media authoring and presentation |
CN103139662A (zh) * | 2011-11-30 | 2013-06-05 | 北京航天长峰科技工业集团有限公司 | 通用化高清数字视频服务系统 |
CN104598212A (zh) * | 2013-10-30 | 2015-05-06 | 上海联影医疗科技有限公司 | 基于算法库的图像处理方法及装置 |
CN106454104A (zh) * | 2016-10-28 | 2017-02-22 | 维沃移动通信有限公司 | 一种拍照方法及移动终端 |
CN108614703A (zh) * | 2016-12-30 | 2018-10-02 | 浙江舜宇智能光学技术有限公司 | 基于嵌入式平台的算法移植系统及其算法移植方法 |
CN110266951A (zh) * | 2019-06-28 | 2019-09-20 | Oppo广东移动通信有限公司 | 图像处理器、图像处理方法、拍摄装置和电子设备 |
CN110941821A (zh) * | 2019-12-09 | 2020-03-31 | Oppo广东移动通信有限公司 | 数据处理方法、装置及存储介质 |
CN110991368A (zh) * | 2019-12-09 | 2020-04-10 | 上海瑾盛通信科技有限公司 | 相机场景识别方法及相关装置 |
CN111491101A (zh) * | 2020-04-20 | 2020-08-04 | Oppo广东移动通信有限公司 | 图像处理器、图像处理方法、拍摄装置和电子设备 |
-
2020
- 2020-10-14 CN CN202011097566.2A patent/CN112162797B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7757171B1 (en) * | 2002-01-23 | 2010-07-13 | Microsoft Corporation | Media authoring and presentation |
CN103139662A (zh) * | 2011-11-30 | 2013-06-05 | 北京航天长峰科技工业集团有限公司 | 通用化高清数字视频服务系统 |
CN104598212A (zh) * | 2013-10-30 | 2015-05-06 | 上海联影医疗科技有限公司 | 基于算法库的图像处理方法及装置 |
CN106454104A (zh) * | 2016-10-28 | 2017-02-22 | 维沃移动通信有限公司 | 一种拍照方法及移动终端 |
CN108614703A (zh) * | 2016-12-30 | 2018-10-02 | 浙江舜宇智能光学技术有限公司 | 基于嵌入式平台的算法移植系统及其算法移植方法 |
CN110266951A (zh) * | 2019-06-28 | 2019-09-20 | Oppo广东移动通信有限公司 | 图像处理器、图像处理方法、拍摄装置和电子设备 |
CN110941821A (zh) * | 2019-12-09 | 2020-03-31 | Oppo广东移动通信有限公司 | 数据处理方法、装置及存储介质 |
CN110991368A (zh) * | 2019-12-09 | 2020-04-10 | 上海瑾盛通信科技有限公司 | 相机场景识别方法及相关装置 |
CN111491101A (zh) * | 2020-04-20 | 2020-08-04 | Oppo广东移动通信有限公司 | 图像处理器、图像处理方法、拍摄装置和电子设备 |
Non-Patent Citations (1)
Title |
---|
孙伟,郭宝龙: "《嵌入式图像处理系统工程案例精选 DaVinci系统设计与实现》", 30 April 2017, 西安电子科技大学出版社 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760987A (zh) * | 2021-02-04 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 数据处理方法和数据处理平台 |
CN113918232A (zh) * | 2021-09-07 | 2022-01-11 | 深圳云天励飞技术股份有限公司 | 一种算法服务的调用方法、装置、服务器和存储介质 |
CN113918232B (zh) * | 2021-09-07 | 2024-05-03 | 深圳云天励飞技术股份有限公司 | 一种算法服务的调用方法、装置、服务器和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112162797B (zh) | 2022-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112162797B (zh) | 数据处理方法、系统、存储介质以及电子设备 | |
CN111538596B (zh) | 一种资源处理的方法、装置、计算机设备及存储介质 | |
CN110543324B (zh) | 一种应用程序的插件增量更新方法及装置 | |
CN113490192B (zh) | 蓝牙连接方法、装置、终端设备及可读存储介质 | |
CN110880100A (zh) | 业务审批的处理方法、装置及系统 | |
CN112491948A (zh) | 非侵入式的单体应用微服务化方法、装置及计算机设备 | |
CN110764688B (zh) | 对数据进行处理的方法和装置 | |
CN114465998A (zh) | 多设备的文件传输方法、装置、终端设备及可读存储介质 | |
US10136097B2 (en) | Digital camera raw image support | |
CN110619204A (zh) | 一种邀请码生成方法、装置、终端设备及存储介质 | |
WO2018068655A1 (zh) | 一种许可管理方法和系统 | |
US9223782B2 (en) | System for performing instructions that are dependent upon received media-based messages and associated methods and components | |
CN116055664B (zh) | 一种用于视频处理进程的共享内存方法、装置及存储介质 | |
CN111309474A (zh) | 通信方法、通信装置及分布式服务注册中心 | |
CN111190637B (zh) | 一种版本文件发布的管理方法、装置以及系统 | |
CN114417069A (zh) | 页面数据交互方法、装置及电子设备 | |
CN114640595A (zh) | 级联方法、装置、电子设备和存储介质 | |
US20150282121A1 (en) | Local resource sharing method of machine to machine component and apparatus thereof | |
CN111784427A (zh) | 基于电子货架的产品信息处理方法、装置及存储介质 | |
CN117883789B (zh) | 数据获取方法、装置、设备、可读存储介质及程序产品 | |
CN116560760B (zh) | 基于外接hub的跨系统外设操作方法、装置、设备、介质 | |
CN114389716B (zh) | 一种终端接入方法、装置、设备及存储介质 | |
CN113778673B (zh) | 数据处理方法、存储介质及设备 | |
CN110659033B (zh) | 协议注册分发方法、存储介质、电子设备及系统 | |
CN117632915A (zh) | 一种数据库对象的自适应方法、存储介质及设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |