数据处理方法、客户端及电子设备

文档序号:115561 发布日期:2021-10-19 浏览:12次 >En<

阅读说明:本技术 数据处理方法、客户端及电子设备 (Data processing method, client and electronic equipment ) 是由 陈思宇 洪传荣 宋琦 唐磊 邓俊祺 王立波 于 2021-04-15 设计创作,主要内容包括:本申请实施例提供一种数据处理方法、客户端及电子设备。其中,确定电子设备的设备运行参数及对应的数据处理模型的模型特征;根据所述设备运行参数和所述模型特征,调整分帧数目;按照当前分帧数目,获取未处理的帧数据,形成子序列数据;对所述子序列数据进行处理。本申请实施例提供的技术方案可以兼顾数据处理效果及设备能耗,同时保证了数据处理效果及设备能耗。(The embodiment of the application provides a data processing method, a client and electronic equipment. Determining equipment operation parameters of the electronic equipment and model characteristics of a corresponding data processing model; adjusting the number of the sub-frames according to the equipment operation parameters and the model characteristics; acquiring unprocessed frame data according to the current frame number to form sub-sequence data; and processing the sub-sequence data. The technical scheme provided by the embodiment of the application can give consideration to both the data processing effect and the equipment energy consumption, and simultaneously ensures the data processing effect and the equipment energy consumption.)

数据处理方法、客户端及电子设备

技术领域

本申请实施例涉及数据处理技术领域,尤其涉及一种数据处理方法、一种客户端及一种电子设备。

背景技术

序列数据是指按照一定顺序出现并排列的元素形成的一种数据,元素是序列数据中的最小数据单位,帧序列即是常见的一种序列数据,帧序列中的元素为帧数据,常见的帧序列比如音频序列数据、文本序列数据、或视频序列数据等,相应的帧数据可以是指音频帧、字、视频帧等。

实际应用中,常涉及对序列数据的处理,如对采集得到的音频流数据进行降噪处理等。而对序列数据的处理,特别是由实时采集并生成的元素形成的序列数据,往往并非针对每一个元素执行,而通常是将多个元素作为一个子序列一起处理,也即将序列数据进行切分处理。

由于进行数据处理需要使用设备的硬件资源,随着数据处理算法复杂度的提升等,会消耗更多的硬件资源,会影响设备寿命,同时设备性能也会影响数据处理效果。

发明内容

本申请实施例提供一种数据处理方法、装置、客户端及电子设备,同时保证了数据处理效果及设备能耗。

第一方面,本申请实施例中提供了一种数据处理方法,包括:

确定电子设备的第一设备运行参数及对应的数据处理模型的模型特征;

根据所述第一设备运行参数及所述模型特征,调整分帧数目;

按照当前分帧数目,获取未处理的帧数据形成子序列数据;

调用所述数据处理模型,对所述子序列数据进行处理。

可选地,所述根据所述第一设备运行参数及所述模型特征,调整分帧数目包括:

根据所述第一设备运行参数,判断是否调整分帧数目;

若是,确定所述模型特征对应的调整数值;

按照所述调整数值,调整所述分帧数目。

可选地,所述根据所述第一设备运行参数及所述模型特征,调整分帧数目包括:

确定所述第一设备运行参数对应的第一数目,及所述模型特征对应的第二数目;

按照所述第一数目及所述第二数目,调整分帧数目。

可选地,所述根据所述第一设备运行参数及所述模型特征,调整分帧数目包括:

将所述第一设备运行参数及所述模型特征作为输入特征,输入第一预测模型,获得第一预测数目;

将所述第一预测数目作为当前分帧数目。

可选地,所述确定电子设备的第一设备运行参数包括:

每间隔第一预定时长或每间隔预定子序列处理次数,检测电子设备的第一设备运行参数。

可选地,该方法还包括:

确定所述电子设备的第二设备运行参数;

将所述第二设备运行参数输入识别模型,获得对应的第一候选模型特征;

将模型特征与该第一候选模型特征匹配的数据处理模型配置于电子设备中。

可选地,该方法还包括:

确定所述电子设备的第二设备运行参数;

查找预先设定的不同设备运行参数对应的候选模型特征,按照相似度从大到小顺序,获得与所述第二设备运行参数相似的K个设备运行参数;

从所述K个设备运行参数对应的候选模型特征中,选择第二候选模型特征;

将模型特征与该第二候选模型特征匹配的数据处理模型配置于电子设备中。

可选地,该方法还包括:

确定所述K个设备运行参数对应的候选模型特征所对应的K个候选数目;其中,K为正整数;

将所述K个候选数目的平均值,作为所述分帧数目的初始值。

可选地,该方法还包括:

根据所述电子设备的第二设备运行参数及所述模型特征,利用第二预测模型,获得第二预测数目;

将所述第二预测数目作为所述分帧数目的初始值。

可选地,所述第一设备运行参数包括处理器温度、处理器主频、设备电量、设备是否充电、屏幕亮度、内存占比、设备使用年限、线程运行数目、进程运行数目、处理程序运行时长中一个或多个参数。

可选地,所述根据所述第一设备运行参数以及所述模型特征,调整分帧数目包括:

根据所述第一设备运行参数以及所述模型特征,确定分帧数目的更新数值;

判定所述更新数值是否低于最小限定值,或高于最大限定值;

若是,按照所述最小限定值或所述最大限定值,调整所述分帧数目若否,按照所述更新数值,调整所述分帧数目。

可选地,所述根据所述第一设备运行参数以及所述模型特征,调整分帧数目包括:

根据所述第一设备运行参数,判定是否调整所述分帧数目;

若是,确定当前时刻与上一次调整时刻的间隔时长;

若间隔时长大于第二预定时长,根据所述模型特征调整所述分帧数目,否则,保持所述分帧数目不变;

若否,保持所述分帧数目不变。

可选地,按照当前分帧数目,获取未处理的帧数据形成子序列数据包括:

按照当前分帧数目对当前生成的帧数据进行累积,以形成子序列数据。

可选地,所述按照当前分帧数,获得个未处理的帧数据,形成子序列数据包括:

将当前累积得到且未处理的帧数据,按照当前分帧数目进行分帧获得至少一个子序列数据。

第二方面,本申请提供了一种数据处理方法,应用于客户端,所述客户端运行于电子设备中,所述方法包括:

采集音频数据,并生成音频帧;

检测电子设备的第一设备运行参数,并确定所述电子设备对应的音频降噪模型的模型特征;

根据所述第一设备运行参数以及所述模型特征,调整分帧数目;

累积当前分帧数目个音频帧形成子序列数据;

调用所述音频降噪模型,对所述子序列数据进行音频降噪处理。

可选地,所述对所述子序列数据进行降噪处理之后,所述方法还包括:

将音频降噪处理之后的所述子序列数据传输至接收端。

第三方面,本申请提供了一种数据处理装置,包括:

确定模块,用于确定电子设备的设备运行参数及对应的数据处理模型的模型特征;

调整模块,用于根据所述设备运行参数和所述模型特征,调整分帧数目;

获取模块,用于按照当前分帧数目,获取未处理的帧数据,形成子序列数据;

处理模块,用于调用所述数据处理模型,对所述子序列数据进行处理。

第四方面,本申请提供了一种客户端,包括:

采集控件,用于采集音频数据,并生成音频帧;

检测控件,用于检测电子设备的第一设备运行参数;

处理控件,用于确定所述电子设备对应的音频降噪模型的模型特征;根据所述第一设备运行参数和模型特征,调整分帧数目;累积当前分帧数目个音频帧形成子序列数据,并对所述子序列数据进行音频降噪处理。

第五方面、本申请提供了一种电子设备,包括处理器以及存储器;

所述存储器存储一个或多个计算机指令;所述一个或多个计算机指令用以被所述处理器调用执行,实现如上述第一方面所述的数据处理方法。

本申请实施例中,通可以根据电子设备的设备运行参数以及对应的数据处理模型的模型特征,调整分帧数目;再根据当前分帧数目,获取未处理的帧数据,形成子序列数据,进而再对所述子序列数据进行处理。通过结合设备运行参数和其适配的数据处理模型的模型特征,调整分帧数目,使得在保证数据处理模型不变的情况下,利用当前设备资源既能够满足子序列数据的处理,且可以兼顾数据处理效果,保证设备能耗不影响设备性能。

本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。

附图说明

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

图1示出了本申请提供的一种数据处理方法一个实施例的流程图;

图2示出了本申请提供的一种数据处理方法又一个实施例的流程图;

图3示出了本申请提供的一种数据处理方法又一个实施例的流程图;

图4示出了本申请提供的一种数据处理方法又一个实施例的流程图;

图5示出了本申请实施例的技术方案在一个实际应用中的交互场景示意图;

图6示出了本申请提供的一种数据处理装置一个实施例的结构示意图;

图7示出了本申请提供的一种客户端一个实施例的结构示意图;

图8示出了本申请提供的一种电子设备一个实施例的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

在本申请的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。

本申请实施例的技术方案主要应用于对序列数据的处理场景中,比如对实时生成的序列数据的处理场景中。

为了便于理解,下面对本申请技术方案中可能涉及的技术术语进行相应解释:

序列数据:是指按照顺序出现并排列的元素形成的一种数据形式,元素是序列数据中的最小数据单元,其可以是数字、向量或矩阵等形式。

帧序列:常见的一种序列数据,帧序列中的元素为帧数据,帧数据通过数字化采样获得,帧序列中的帧数据按序排列,如时间先后顺序,依次放置并且可数。

子序列数据:进行序列数据处理时,通常是将数个、数十个甚至数百个元素作为一个子序列进行处理。子序列数据中的元素个数会影响数据处理效果,比如在数据传输场景中,音频帧实时采集并生成,累积一定数量的音频帧作为一个子序列数据进行降噪处理,再将降噪处理之后的子序列数据进行传输,子序列数据中的音频帧个数会影响数据传输的延迟性。

分帧:帧序列中,将多个帧数据形成的子序列数据,称为分帧。

帧长:子序列数据中帧数据的数目。

音频帧:对音频数据进行采样处理,得到的某一个时刻采样到的震动强度电平,或将震动强度电平经过短时傅里叶变换得到的频率-幅值向量。

视频帧:即是一张图片,视频帧序列即是指按照时间顺序排列的图片。

由于进行数据处理需要使用设备硬件资源,且目前采用数据处理模型进行数据处理,如机器学习模型等,而随着数据处理模型复杂度的提升等,必然会消耗更多的硬件资源,从而会影响设备寿命,同时设备性能也会影响数据处理效果。比如,在数据传输场景中,会影响数据传输的延迟性等。

特别是对于涉及序列数据处理的应用程序,由于应用程序可以安装在不同硬件资源的电子设备中,运行于低端机型和高端机型的电子设备的应用程序,数据处理效果是不一样的。发明人研究发现,为了保证低端机型的数据处理效果,可以降低数据处理模型的复杂度,但是这样既会影响数据处理效果,且也没有充分利用高端机型的硬件资源;或者将数据处理的过程交由服务端执行,但是这种方式虽然可以降低应用程序的算力,但是服务端服务于海量用户,对服务端的性能也是一大挑战,易出现处理延迟情况,也会影响数据处理效果;或者可以针对不同型号的电子设备分别开发不同的数据处理模型,但是既会增加开发成本,实现复杂,且造成不同电子设备的用户体验感不一致。

发明人进行一步研究发现,目前电子设备中的处理器通常是多核处理器,以数据传输场景及帧序列为例,如果子序列数据的帧长越长,会调用越多的处理器内核进行处理,相应的能耗就会越低;而帧长越短,会调用越少的处理器内核进行处理,相应的能耗就会越高,但是帧长越长,传输延迟性就会越大,不适合实时性要求高的场景,如直播场景等。发明人想到是否可以通过调整帧长的方式来保证数据处理效果及设备能耗。据此,发明人提出了本申请的技术方案,在本申请实施例中,通过确定电子设备的第一设备运行参数及对应的数据处理模型的模型特征;可以根据第一设备运行参数和模型特征,调整分帧数目;再根据当前分帧数目,获取未处理的帧数据,形成子序列数据,进而再对子序列数据进行处理。通过结合第一设备运行参数和数据处理模型的模型特征,调整分帧数目,使得当前设备资源既能够满足子序列数据的处理,且可以兼顾数据处理效果,保证设备能耗不影响设备性能,也使得同一个数据处理模型可以在不同机型的设备中,以及不同数据处理模型可以再同一个机型的设备中稳定运行,降低了适配繁杂度。

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为本申请实施例提供的一种数据处理方法一个实施例的流程图,该方法可以包括以下几个步骤:

101:确定电子设备的第一设备运行参数及对应的数据处理模型的模型特征。

其中,设备运行参数可以代表设备处理能力。可选地,该第一设备运行参数可以包括如下一个或多个参数:

设备机型、处理器型号、处理器温度、处理器主频、设备电量、设备是否充电、屏幕亮度、内存占比、设备使用年限、线程运行数目、进程运行数目、及处理程序运行时长。需要说明的是,此处仅是举例说明可能实现的一个或多个参数,本申请所指的第一设备运行参数不仅局限于上述一个或多个参数。处理程序可以是指电子设备中执行子序列数据处理的程序,实际应用中,其可以是指应用程序,也即运行于电子设备中的客户端等。第一设备运行参数可以包括设备固定运行参数,在电子设备运行过程中不会发生变化;当然,第一设备运行参数也可以是实时采集获得,在电子设备运行过程中可能会实时变化,可选地,第一设备运行参数中可以包括设备实时运行参数,以可以实现实时的分帧数目调整,保证数据处理效果。

由于第一设备运行参数在电子设备运行过程中可能会实时变化,为了进一步保证数据处理效果,同时,由于电子设备运行过程中诸如设备电量、屏幕亮度等参数受环境影响较大,因此,也为了保证第一设备运行参数的准确度,可选地,可以每间隔第一预定时长或每间隔预定子序列处理次数,检测电子设备的第一设备运行参数,并执行如下操作。当然对第一设备运行参数的检测也可以实时进行。

该第一预定时长例如可以为t秒,t为正整数,该预定子序列处理次数可以结合实际情况进行设定等。

可选地,可以是响应于处理指令,每间隔第一预定时长或每间隔预定子序列处理次数,检测电子设备的第一设备运行参数。

该处理指令可以由用户触发,此外,本申请技术方案所针对的序列数据中元素为基于实时采集的数据而采样生成的情况下,该处理指令可以具体是数据采集指令,比如音频采集场景中,该处理指令可以是指音频采集指令。

数据处理模型用于进行数据处理,如音频数据处理场景中,数据处理模型可以是指音频降噪模型,用于对采集的音频数据进行降噪处理。

数据处理模型的模型特征用于表示数据处理模型的模型复杂度,例如数据处理模型为神经网络模型时,模型特征可以包括如下一个或多个指标:浮点数运算量、神经网络层数、计算节点数、运算操作数、模型文件大小等。

其中,模型特征可以从数据处理模型的模型文件中获得,此外,同一个数据处理模型可以设置不同的模型特征,从而达到不同处理效果。为了进一步保证设备性能,作为一种可选方式,还可以确定所述电子设备的第二设备运行参数;将所述第二设备运行参数输入识别模型,获得对应的第一候选模型特征;将模型特征与该第一候选模型特征匹配的数据处理模型配置于电子设备中。

该识别模型可以预先基于第二样本设备运行参数及模型特征标签训练获得。该识别模型可以采用决策树算法实现,当然也可以采用其它机器学习模型实现,本申请对此不进行具体限制。

其中,可以通过计算模型特征与第一候选模型特征的相似度,选择最大相似度的模型特征对应的数据处理模型配置于电子设备。

作为另一种可选方式,还可以确定所述电子设备的第二设备运行参数;

查找预先设定的不同第二设备运行参数对应的候选模型特征,按照相似度从大到小顺序,获得与所述第二设备运行参数相似的K个设备运行参数;

从所述K个设备运行参数对应的候选模型特征中,选择第二候选模型特征;例如选择出现次数最多的候选模型特征作为第二候选模型特征;

将模型特征与该第二候选模型特征匹配的数据处理模型配置于电子设备中。

意即可以采用K近邻算法筛选与电子设备匹配的模型特征,并配置相应的数据处理模型。其中,K为正整数。

其中,可以通过计算模型特征与第二候选模型特征的相似度,选择最大相似度的模型特征对应的数据处理模型配置于电子设备,

相似度计算例如可以首先将模型特征按照统一标准进行向量化表达,通过计算向量距离来作为相似度,当然本申请对此不进行具体限制。

102:根据第一设备运行参数及所述模型特征,调整目标数目。

该目标数目用于对序列数据进行切分以获得子序列数据。

本实施例中,可以根据第一设备运行参数,调整该目标数目,以保证目标数目更加准确,匹配电子设备的当前设备性能。

其中,第一设备运行参数可以实时采集获得,因此,目标数目在电子设备运行过程中,可以动态发生变化,实现对目标数目的动态调整。

作为一种可选方式,根据第一设备运行参数以及所述模型特征,调整目标数目可以是:根据所述第一设备运行参数,判断是否调整目标数目;若是,确定所述模型特征对应的调整数值,按照所述调整数值,调整目标数目。否则保持目标数目不变。

其中,调整目标数目可以包括增加或者降低目标数目等,调整数值可以预先设定,每次调整可以将目标数目增加或降低该调整数值,该调整数值例如可以为1;当然,该调整数值也可以根据第一设备运行参数动态确定。

此外,也可以利用调整模型,将所述模型特征输入调整模型,获得对应的调整数值。该调整模型可以预先训练获得,如利用样本模型特征及对应的调整数值标签训练获得。

作为另一种可选方式,根据第一设备运行参数以及所述模型特征,调整目标数目可以是:确定所述第一设备运行参数对应的第一数目,及所述模型特征对应的第二数目;按照所述第一数目及所述第二数目,调整目标数目。例如可以将第一数目与第二数目的平均数目作为当前目标数目。

其中,可以预先设定不同第一设备运行参数对应的数目,以及不同模型特征对应的数目,从而通过查找对应关系,即可以获得第一设备运行参数对应的第一数目,以及模型特征对应的第二数目;当然也可以预先训练获得模型识别第一设备运行参数对应的第一数目,及模型特征对应的第二数目,本申请对此不进行具体限定。

作为又一种可选方式,根据所述第一设备运行参数及所述模型特征,调整目标数目可以包括:

将所述第一设备运行参数及所述模型特征作为输入特征,输入第一预测模型,获得第一预测数目;将所述第一预测数目作为当前目标数目。

该第一预测模型可以预先基于第一样本设备运行参数及样本模型特征构成的样本输入特征,以及对应的预测数目标签,训练获得。

其中,目标数目的初始值可以为零,从而可以根据第一设备运行参数及模型特征确定,当然也可以预先配置的某个数值。

此外,为了进一步保证数据处理效果,也可以预先设定不同第二设备运行参数对应的初始值,从而根据第二设备运行参数确定初始值;也可以预先设定不同模型特征对应的初始值,从而可以根据数据处理模型的模型特征,确定初始值。

此外,结合前文描述可以采用K近邻算法,确定与所述第二设备运行参数相似的K个设备运行参数,因此,也可以是将所述K个设备运行参数对应的候选模型特征所对应的K个候选数目的平均值,作为所述目标数目的初始值。此外,由于会从候选模型特征中会筛选第二候选模型特征,可以具体是确定所述K个设备运行参数分别对应的候选模型特征中,的M个第二候选模型特征,将M个第二候选模型特征所对应的候选数目的平均值,作为目标数目的初始值。M为正整数。

此外,也可以根据电子设备的第二设备运行参数及数据处理模型的模型特征,利用第二预测模型,获得第二预测数目;将所述第二预测数目作为所述分帧数目的初始值。

该第二预测模型可以预先基于第二样本设备运行参数及样本模型特征构成的样本输入特征,以及对应的预测数目标签,训练获得。

其中,第二设备运行参数可以与第一设备运行参数相同或不同。第二设备运行参数例如可以包括:设备机型、处理器型号、设备使用年限中的一个或多个等。

在一个实现方式中,该第二设备运行参数可以仅包括设备机型,可以预先设定不同设备机型对应的初始值。由于不同设备机型对应的硬件资源不同,实际应用中,结合硬件资源,可以划分低端机型、中端机型和高端机型的电子设备,低端机型的电子设备的硬件资源配置较低,同样的数据处理模型,机型越低端,运算压力相对会更大。通常,设备机型越低端,对应的目标数目的初始值可以设定的越大,处理该初始值形成的子序列数据会使得设备能耗较低,以可以保证设备性能,而设备机型越高端,对应的目标数目的初始值越小,使得可以充分利用设备资源,保证数据处理效果。

103:获取当前目标数目个未处理元素,形成子序列数据。

可选地,步骤103可以是在检测到处理指令时即执行,即响应于处理指令,获取当前目标数目个未处理元素,形成子序列数据。

步骤103可以持续执行,一直形成子序列数据直至所有子序列数据全部获得的情况发生如元素停止生成。意即步骤103与步骤101和步骤102并不局限于本实施例的操作顺序。步骤101和步骤102的执行操作可以在子序列数据形成之前或之后或同时发生等,只是当前目标数目与调整操作有关,可以结合实时的第一设备运行参数,进行动态调整。

104:调用该数据处理模型,对子序列数据进行处理。

调整目标数目之后,即可以继续按照当前目标数目,获取对应的子序列数据,并调用该数据处理模型进行处理。

对于序列数据由实时生成的元素累积获得时,获取当前目标数目个未处理元素,形成子序列数可以是按照当前目标数目,将实时生成的元素累积形成子序列数据,意即累积当前目标数目个元素得到一个子序列数据。其中,按照当前目标数目将实时生成的元素累积形成子序列数据可以持续进行直至不再生成元素或者目标数目进行又一次调整,则按照调整之后的目标数目形成子序列数据。

由于目标数目调整之前,也会按照调整之前的目标数目累积元素,因此,获取当前目标数目个未处理元素,形成子序列数据包括:

将当前累积得到且未处理的元素,按照当前目标数目进行切分获得至少一个子序列数据。

同样也会按照当前目标数目对当前生成的元素进行累积,以形成子序列数据。

其中,当前累积得到且未处理的元素切分出的至少一个子序列数据中可能包括元素个数小于当前目标数目的子序列数目。当然当前累积得到且未处理的元素,按照当前目标数目进行切分之后,不足以形成一个子序列数据的剩余元素可以继续和当前生成的元素进行累积,以形成当前目标数目个元素构成的子序列数据;比如,调整之前的目标数目为10,调整之后的目标数目为3,假设当前累积且未处理的元素个数为8,则对该8个元素按照目标数目3进行切分,可以得到三个子序列数据,前两个子序列数据中分别包括3个元素,最后一个子序列数据中即包括2个元素;也可以是得到两个子序列数据,剩余的2个元素可以和当前生成的1个元素重新构成一个子序列数据。

此外,作为其它实现方式,目标数目调整之前累积且未处理的元素也可以直接作为一个子序列数据进行处理,或者已存在累积且未处理元素的情况下,可以继续按照之前的目标数目累积得到一个子序列数据之后,再按照当前目标数目进行元素累积形成新的子序列数据。

此外,本申请技术方案也可以实现对已有序列数据的处理,目标数目用于对序列数据进行切分以获取子序列数据,因此获取当前目标数目个未处理元素,形成子序列数据也可以是:按照当前目标数目,对序列数据中的当前未处理数据进行切分,获得至少一个子序列数据。

若序列数据已按照之前的目标数目进行过切分,则是按照当前目标数目对未处理数据重新进行切分。

本实施例中,通过检测电子设备的第一设备运行参数;可以根据第一设备运行参数,调整目标数目;再根据当前目标数目,获取当前分帧数目个未处理帧数据,形成子序列数据,进而再对子序列数据进行处理。通过结合第一设备运行参数,调整目标数目,使得当前设备资源既能够满足子序列数据的处理,且可以兼顾数据处理效果,也使得本申请提供的数据处理方式可以在不同机型的设备中稳定运行,降低了适配繁杂度。

此外,本申请实施例中,也可以根据第一设备运行参数,调整目标数目可以包括:根据第一设备运行参数,判定设备处理能力降低时,增加目标数目;根据第一设备运行参数,判定设备处理能力提升时,减小目标数目。当然,若判断第一设备运行参数设备处理能力未发生变化,则保持当前目标数目不变。

设备处理能力降低,通过增加目标数目可以降低进行数据处理时的设备能耗,反之设备处理能力提升时,可以减小目标数目以保证数据处理效果。通过结合第一设备运行参数,自适应设备处理能力进行目标数目调整,使得可以兼顾设备能耗和数据处理效果,同时保证了数据处理效果和设备能耗。

其中,设备处理能力降低可以通过判断第一设备运行参数满足数目增加条件确定,设备处理能力提升可以通过判断第一设备运行参数满足数目降低条件确定。设备处理能力未发生变化可以通过判断第一设备运行参数满足数目保持条件确定。

可选地,根据所述第一设备运行参数,判断是否调整分帧数目可以是判断第一设备运行参数是否满足数目保持条件来实现,若否,则可以确定需要调整目标数目。

也可以是判断第一设备运行参数是否满足数目增加条件或该数目降低条件确定,若是,则认为需要调整目标数目。

结合上文描述可知,第一设备运行参数可以包括处理器温度、处理器主频、设备电量、设备是否充电、屏幕亮度、内存占比、设备使用年限、线程运行数目、进程运行数目、及处理程序运行时长中的一个或多个参数,下面列举几种可能实现的判定方式,如:

若处理器温度高于第一温度如85度,设备电量低于第一电量且未充电,如低于总电量的20%且未充电,屏幕亮度大于第一亮度如80%、内存占比达到第一数值,如内存占比达到80%,线程运行数目大于第一数目或者进程运行数据大于第二数目、处理程序运行时长大于第一时长如2小时等中任一个或多个条件同时满足,则可以认为第一设备运行参数满足数目增加条件,设备处理能力降低,此时可以降低目标数目的数值;

若处理器温度低于第二温度如40度,处理器主频降频,设备电量高于第二电量如高于总电量的80%,设备正在充电、屏幕亮度低于第二亮度、内存占比低于第二数值如50%,线程运行数目小于第三数目,进程运行数目小于第四数目等中一个或多个条件同时满足,则可以认为第一设备运行参数满足数目降低条件,设备处理能力提升,此时可以增加目标数目的数值。

若处理器温度处于一定温度范围内如大于第二温度且小于第一温度、设备电量处于一定电量范围如高于第二电量且低于第一电量,屏幕亮度处于一定亮度范围如大于第二亮度而小于第一亮度,内存占比处于一定范围如大于第二数值且小于第一数值,线程运行数目小于第一数目且大于第三数目,进程运行数目小于第二数目且大于第四数目、处理程序运行时长小于第一时长等中的一个或多个条件同时满足,可以认为第一设备运行参数满足数目保持了解,设备处理能力未发生变化,此时保持当前目标数目不变。

在某些实施例中,为了方便用户了解设备性能利用情况,可选地,还可以输出设备性能提示信息,以方便用户了解设备性能利用情况。

该设性能提示信息可以在按照调整之后的目标数目进行数据处理之后生成等。

在某些实施例中,根据第一设备运行参数和模型特征,调整目标数目可以包括:

根据第一设备运行参数和模型特征,确定目标数目的更新数值;

判定更新数值是否低于最小限定值,或高于最大限定值;

若是,按照最小限定值或最大限定值,调整分帧数目

若否,按照更新数值,调整分帧数目。

通过最大限定值和最小限定值的限值保护,可以进一步保证数据处理效果和设备能耗,使得目标数目在可控范围内。最小限定值和最大限定值可以结合实际应用情况设定,也可以结合设备机型确定等。

在某些实施例中,根据第一设备运行参数和模型特征,调整目标数目可以包括:

根据第一设备运行参数和模型特征,判断是否调整目标数目;

若是,确定当前时刻与上一次调整时刻的间隔时长;

若间隔时长大于第二预定时长,调整目标数目,否则,保持目标数目不变;

若否,保持目标数目不变。

通过间隔时长可以避免目标数目频繁变化而对数据处理效果和设备性能造成不好影响,且实际应用中受环境等因素影响,第一设备运行参数可能并不够准确,通过间隔时长的判断,也可以保证数据处理效果和设备能耗。

其中,若间隔时长大于第二预定时长,调整分帧数目时,可以具体是:首先确定目标数目的更新数值;判定更新数值是否低于最小限定值,或高于最大限定值;若是,按照最小限定值或最大限定值,调整分帧数目;若否,按照更新数值,调整分帧数目。

此外,调整分帧数目可以按照调整数值进行,调整数值例如可以为1,每次可以增加或减少数值1,当然也可以根据第一设备运行参数确定,可以预先设定第一设备运行参数的不同参数值对应的调整数值,因此通过查找该对应关系,可以确定对应的调整数值;也可以预先设定不同模型特征对应的调整数值,也可以基于模型特征利用调整模型识别获得等。

在一个实际应用中,序列数据可以是指帧序列,如音频序列数据、视频序列数据等,帧序列中的帧数据可以是实时生成的。如图2中所示,本申请实施例还提供了一种数据处理方法,本实施例以序列数据为帧序列为例对本申请技术进行介绍,可以包括以下几个步骤:

201:确定电子设备的第一设备运行参数和对应的数据处理模型的模型特征。

202:根据第一设备运行参数和模型特征,调整分帧数目。

203:按照当前分帧数目,获取未处理的帧数据,形成子序列数据。

204:对子序列数据进行处理。

本实施例与图1所示实施例的不同之处在于,所针对的序列数据为帧序列,目标数目即为分帧数目,元素即为帧数据,其它相同或相应步骤可以详见图1所示实施例,在此将不再赘述。

在某些实施例中,所述根据所述第一设备运行参数及模型特征,调整分帧数目包括:

根据所述第一设备运行参数,判断是否调整分帧数目;

若是,确定所述模型特征对应的调整数值;

按照所述调整数值,调整所述分帧数目。

在某些实施例中,所述根据所述第一设备运行参数及模型特征,调整分帧数目包括:

确定所述第一设备运行参数对应的第一数目,及所述模型特征对应的第二数目;

按照所述第一数目及所述第二数目,调整分帧数目。

在某些实施例中,所述根据所述第一设备运行参数及所述模型特征,调整分帧数目包括:

将所述第一设备运行参数及所述模型特征作为输入特征,输入第一预测模型,获得第一预测数目;

将所述第一预测数目作为当前分帧数目。

在某些实施例中,确定所述模型特征对应的调整数值;

将所述模型特征输入调整模型,获得对应的调整数值。

在某些实施例中,所述确定电子设备的第一设备运行参数包括:

每间隔第一预定时长或每间隔预定子序列处理次数,检测电子设备的第一设备运行参数。

作为一种可选方式,确定电子设备的第一设备运行参数以及对应的数据处理模型的模型特征之前,该方法还包括:

确定所述电子设备的第二设备运行参数;

将所述第二设备运行参数输入识别模型,获得对应的第一候选模型特征;

将模型特征与该第一候选模型特征匹配的数据处理模型配置于电子设备中。

作为另一种可选方式,确定电子设备的第一设备运行参数以及对应的数据处理模型的模型特征之前,还包括:

确定所述电子设备的第二设备运行参数;

查找预先设定的不同设备运行参数对应的候选模型特征,按照相似度从大到小顺序,获得与所述第二设备运行参数相似的K个设备运行参数;

从所述K个设备运行参数对应的候选模型特征中,选择第二候选模型特征;

将模型特征与该第二候选模型特征匹配的数据处理模型配置于电子设备中。

在某些实施例中,该方法还可以包括:

将所述K个设备运行参数对应的候选模型特征所对应的候选数目的平均值,作为所述分帧数目的初始值。

在某些实施例中,所述根据所述电子设备的设备机型,确定所述分帧数目的初始值包括:

根据所述电子设备的第二设备运行参数及所述模型特征,利用第二预测模型,获得第二预测数目;

将所述第二预测数目作为所述分帧数目的初始值。

在某些实施例中,所述第一设备运行参数包括处理器温度、处理器主频、设备电量、设备是否充电、屏幕亮度、内存占比、设备使用年限、线程运行数目、进程运行数目、处理程序运行时长中一个或多个参数。

在某些实施例中,所述根据所述第一设备运行参数以及所述模型特征,调整分帧数目包括:

根据所述第一设备运行参数以及所述模型特征,确定分帧数目的更新数值;

判定所述更新数值是否低于最小限定值,或高于最大限定值;

若是,按照所述最小限定值或所述最大限定值,调整所述分帧数目若否,按照所述更新数值,调整所述分帧数目。

在某些实施例中,所述根据所述第一设备运行参数以及所述模型特征,调整分帧数目包括:

根据所述第一设备运行参数,判定是否调整所述分帧数目;

若是,确定当前时刻与上一次调整时刻的间隔时长;

若间隔时长大于第二预定时长,根据所述模型特征调整所述分帧数目,否则,保持所述分帧数目不变;

若否,保持所述分帧数目不变。

在某些实施例中,按照当前分帧数目,获取未处理的帧数据形成子序列数据包括:

按照当前分帧数目对当前生成的帧数据进行累积,以形成子序列数据。

在某些实施例中,所述按照当前分帧数,获得个未处理的帧数据,形成子序列数据包括:

将当前累积得到且未处理的帧数据,按照当前分帧数目进行分帧获得至少一个子序列数据。

图3为本申请实施例提供的一种数据处理方法又一个实施例的流程图,本实施例对本申请实施例的一种具体实现进行了介绍,结合流程示意图方便用户进行理解,该方法可以包括以下几个步骤:

301:确定分帧数目的初始值。

其中,可以结合电子设备的第二设备运行参数以及对应的数据处理模型的模型特征中至少一个,确定分帧数目的初始值

302:响应于采集指令,生成帧数据。

基于采集指令可以进行数据采集,并对采集数据进行采样处理等,生成帧数据。帧数据会持续生成,通过按照当前分帧数目累积可以得到子序列数据,而当前分帧数目可以按照如下方式调整。

303:按照当前分帧数目对当前生成的帧数据进行累积,以形成子序列数据。

304:对子序列数据进行处理。

305:判断是否检测第一设备运行参数,若是,执行步骤306。

可以每间隔第一预定时长或者每间隔预定子序列处理次数,检测第一设备运行参数,若当前时刻与前一次检测时刻间隔到达第一预定时长,或者当前子序列处理次数达到预定子序列处理次数,则执行步骤306,否则可以继续判断。

306:检测电子设备的第一设备运行参数,并确定所述电子设备对应的数据处理模型的模型特征。

307:根据第一设备运行参数和模型特征,判断是否调整分帧数目,若是,执行步骤308,否则执行步骤312。

308:确定当前时刻与上一次调整时刻的间隔时长是否大于第二预定时长,若是,执行步骤309,否则执行步骤312。

309:判断分帧数目的更新数值是否低于最小限定值,或高于最大限定值,若是执行步骤310,若否执行步骤311。

其中,更新数值可以根据分帧数目的当前数值与调整数值相加或相减之后获得。对于需要增加分帧数目的情况,可以增加该调整数值得到更新数值,对于需要降低分帧数目的情况,可以减少该调整数值得到更新数值。

310:按照最小限定值或最大限定值,调整分帧数目,并返回执行步骤303。

311:按照更新数值,调整分帧数目,并返回执行步骤303。

312:保持分帧数目不变,并返回执行步骤303。

本申请的技术方案可以应用于数据传输场景中,对子序列数据处理之后,可以将处理之后的子序列数据进行传输,如发送至接收端等,以可以兼顾数据传输延迟性和设备能耗。

在一个实际应用中,本申请实施例中所述的帧序列可以具体是指音频序列数据,可以应用于音频降噪场景中,音频帧可以基于实时采集的音频数据进行采样处理而生成等。由于为了保证降噪效果,目前音频降噪处理模型多采用神经网络模型实现,模型越来越复杂,对设备能耗相对消耗较多。虽然在高端机型的电子设备中可以运行正常,但是对于一些低端机型的电子设备会导致电量消耗较多,更容易导致硬件发热、系统降频、程序卡顿甚至崩溃退出等,反而影响数据处理效果,比如导致音频传输延迟等。而采用本申请的技术方案,可以在不同机型上动态适应调整能耗,采用相同的降噪处理模型可以在不同机型上稳定运行,提示了模型稳定性,保证了处理效果,降低适配繁杂度,提升了用户的使用体验。

下面以对实时采集的音频数据进行降噪处理的场景为例,对本申请实施例技术方案进行介绍,如图4所示中,作为又一个实施例,本申请还提供了一种数据处理方法,本实施例技术方案可以由客户端执行,客户端运行于电子设备中,该方法可以包括:

401:采集音频数据,并生成音频帧。

其中,音频帧通过对音频数据中的音频数据进行采样处理获得。

402:检测电子设备的第一设备运行参数,并确定电子设备对应的音频降噪模型的模型特征。

403:根据第一设备运行参数以及模型特征,调整分帧数目。

步骤402~步骤403的操作可以详见步骤201~步骤202的操作,在此不再赘述。

404:累积当前分帧数目个音频帧形成子序列数据。

按照当前分帧数据,可以累积相应数量的音频帧形成子序列数据。

405:调用音频降噪模型,对子序列数据进行音频降噪处理。

在某些实施例中,对子序列数据进行音频降噪处理之后,该方法还可以包括:

将音频降噪处理之后的子序列数据传输至接收端。

在一个实现场景中,本申请的技术方案可以应用于直播场景中的音频降噪处理,直播类应用程序,意即直播端,采集直播数据并上传至服务端,再由服务端分发至观看端,对实时性要求较高。而由于直播场景嘈杂,因此,直播端采集的直播数据中音频经常混杂噪声,影响用户的听感,从而干扰多媒体质量,因此需要进行音频降噪处理,而进行音频降噪处理等需要使用设备资源。而采用本申请的技术方案可以保证采用相同的音频降噪处理模型可以在不同机型上稳定运行,提示了模型稳定性,保证了处理效果,降低适配繁杂度,降低因设备性能原因导致的程序崩溃。提升了用户的使用体验。在直播场景中,客户端,也即直播端可以具体是采集直播数据,并对直播数据中的音频数据进行采样处理获得音频帧。

为了便于理解,参见图5所示的交互场景示意图中,直播端501可以采集直播数据,并生成音频帧。直播端501可以按照当前分帧数目累积相应数量的音频帧形成子序列数据,并对子序列数据进行音频降噪处理,之后将音频降噪处理的子序列数据传输至服务端502,由服务端502发送至观看端,当然直播端通过服务端还会传输视频帧等,与现有方式相同此处不再赘述。

其中,分帧数目的初始值可以根据设备机型确定,不同设备机型可以对应配置不同的初始值。

此外,直播端501可以定时或每间隔预定的子序列降噪处理次数,即检测第一设备运行参数,并根据第一设备运行参数以及音频降噪模型的模型特征,调整分帧数目,使得按照调整之后的分帧数目继续生成子序列数据并进行音频降噪处理,通过自适应调整分帧数目,使得可以自适应调整设备能耗,同时可以保证音频传输延迟性,提高了音频降噪模型在不同机型的设备中运行的稳定性,使得不同机型的设备可以发挥各自的性能发现。对不同机型的设备可以提供统一的效果体现和差异化的能耗,无需为不同机型的设备分别进行音频降噪模型开发,降低了模型开发工作量。本申请技术方案,通过自动均衡传输延迟与设备能耗,使得高端机型的设备可以充分利用算力,享受低延迟的多媒体体验,且可以保证低端机型的设备能耗,不至于使得程序崩溃。

在又一个实现场景中,本申请的技术方案可以应用于IM(Instant Messaging,即时通讯)场景中,目前IM场景中,通信双方可能会发送音频消息,音频消息往往由一方通信端采集并最终发送至另一方通信端中,音频消息中的音频消息中的音频数据由通信端采集,也会经常混杂噪声,影响用户的听感,从而影响信息传递,影响通信质量,因此需要进行音频降噪处理,而进行音频降噪处理等需要使用设备资源。而采用本申请的技术方案可以保证采用相同的音频降噪处理模型可以在不同机型上稳定运行,提示了模型稳定性,保证了处理效果,降低适配繁杂度,降低因设备性能原因导致的程序崩溃。提升了用户的使用体验。

图6为本申请提供的一种数据处理装置一个实施例的结构示意图,该装置可以包括:

确定模块601,用于确定电子设备的第一设备运行参数及对应的数据处理模型的模型特征;

调整模块602,用于根据第一设备运行参数和模型特征,调整目标数目;

获取模块603,用于按照当前分帧数目,获取未处理的帧数据,形成子序列数据;

处理模块604,用于调用数据处理模型,对子序列数据进行处理。

在一个实际应用中,元素可以是指帧数据,因此,获取模块可以具体用于获取当前分帧数目个未处理的帧数据,形成子序列数据。

在某些实施例中,该检测模块可以具体用于每间隔第一预定时长或每间隔预定子序列处理次数,检测电子设备的设备运行参数。

图6所述的数据处理装置可以执行图1或图2所示实施例所述的数据处理方法,其实现原理和技术效果不再赘述。对于上述实施例中的数据处理装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

此外,如图7中所示,本申请实施例还提供了一种客户端,实际应用中,该客户端可以具体为直播类应用程序,该客户端可以包括:

采集控件701,用于采集音频数据,并生成音频帧;

检测控件702,用于检测电子设备的第一设备运行参数;

处理控件703,用于确定所述电子设备对应的音频降噪模型的模型特征;根据斗殴设备运行参数和模型特征,调整分帧数目;累积当前分帧数目个音频帧形成子序列数据,并调用音频降噪模型对子序列数据进行音频降噪处理。

可选地,该处理控件还可以用于将音频降噪处理之后的子序列数据传输至接收端。

该客户端可以具体实现如图4所示的数据处理方法,其实现原理和技术效果不再赘述。

采用本申请实施例的技术方案,如图7所示的客户端可以配置在不同设备机型的电子设备中,不同设备机型的电子设备对应的硬件资源不同,使得可以兼顾设备能耗和数据处理效果,既可以使得较高端机型的设备可以充分利用算力,享受低延迟的多媒体体验,且可以保证较低端机型的设备能耗,不至于使得程序崩溃。

在一个可能的设计中,本申请实施例还提供了一种电子设备,如图8中所示,该电子设备可以包括存储器801以及处理器802;

存储器801存储一条或多条计算机指令,其中,该一条或多条计算机指令供处理器802调用执行,可以实现前文任一个实施例中所述的数据处理方法。

可选地,该电子设备可以配置有如图6所示的数据处理装置或者如图7所示的客户端。

其中,处理器802可以为多核处理器,以完成上述的方法中的全部或部分步骤。当然处理器也可以为一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

存储器801被配置为存储各种类型的数据以支持在终端的操作。存储组件可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。

当然,电子设备必然还可以包括其他部件,例如输入/输出接口、通信组件等。输入/输出接口为处理组件和外围接口模块之间提供接口,上述外围接口模块可以是输出设备、输入设备等。通信组件被配置为便于计算设备和其他设备之间有线或无线方式的通信等。

本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被计算机执行时可以实现上述图1~图4任一个实施例的数据处理方法。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

24页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:分布式短序列号生成方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!