音频指纹生成方法及装置与流程

文档序号:18106424发布日期:2019-07-06 11:41阅读:561来源:国知局
音频指纹生成方法及装置与流程

本公开涉及音频指纹生成领域,尤其涉及一种音频指纹生成方法及装置。



背景技术:

随着著作权人对音频的版权越来越重视,目前多是通过人工收听的方式查找可能侵权的音频内容。但在侵权音频中,有时不是全部或整段的直接照抄,而是将版权音频中的部分音乐特征。例如几个小节进行了加工后再抄袭。这种隐蔽的侵权方式,给人工对比查找侵权音频的方法带来了很大的障碍,导致查找效率低。而且隐蔽侵权的音频不容易被查找到。



技术实现要素:

有鉴于此,本公开提出了一种音频指纹生成方法及装置,用以解决音频检索结果不准确的问题。

根据本公开的另一方面,提供了一种音频指纹生成方法,所述方法包括:

将目标音频进行傅里叶变换,得到所述目标音频的变换结果;

根据控制阈值和控制时长,在所述变换结果中确定极值和所述极值在所述目标音频中的对应时间;

根据所述极值和所述极值的对应时间生成所述目标音频的目标指纹。

在一种可能的实现方式中,在根据所述极值和所述极值的对应时间生成所述目标音频的目标指纹,包括:

将所述目标音频的所有极值按照设定数量划分为多个极值生成组;

根据所述极值的对应时间计算所述极值生成组中不同极值之间的第一时间差;

根据所述极值生成组中选定极值的对应时间和所述第一时间差,生成所述目标音频的目标指纹。

在一种可能的实现方式中,根据控制阈值和控制时长,在所述变换结果中确定极值和所述极值在所述目标音频中的对应时间,包括:

对所述变换结果进行频带划分,得到多个频带结果;

根据控制阈值和控制时长,在频带结果中确定极值和所述极值在所述目标音频中的对应时间。

在一种可能的实现方式中,所述方法还包括:

根据极值的对应时间,计算所述目标音频的所有极值之间的时间间隔;

根据所述时间间隔和间隔阈值,调整所述控制时长。

在一种可能的实现方式中,所述方法还包括:

根据确定出的极值的数量和数量阈值,调整所述控制阈值。

在一种可能的实现方式中,所述方法还包括:

在音频指纹库中检索是否有与目标指纹匹配的音频指纹,所述音频指纹库包括音频指纹和所述音频指纹的归属音频,其中,音频指纹的生成方式与所述目标指纹相同;

根据匹配出的音频指纹和所述匹配出的音频指纹的归属音频,确定所述目标音频的相似音频。

在一种可能的实现方式中,根据匹配出的音频指纹和所述匹配出的音频指纹的归属音频,确定所述目标音频的相似音频,包括:

根据所述匹配出的音频指纹的归属音频,确定对比音频;

当所述对比音频的匹配出的音频指纹的数量满足相似阈值时,根据所述匹配出的指纹中的极值的对应时间,计算所述对比音频的匹配出的音频指纹之间的第二时间差;

根据所述目标指纹中的极值的对应时间,计算目标音频中的目标指纹之间的第三时间差;

在所述第二时间差和所述第三时间差相等的情况下,将所述对比音频确定为相似音频。

根据本公开的另一方面,提供了一种音频指纹生成装置,所述装置包括:

傅立叶变换模块,用于将目标音频进行傅里叶变换,得到所述目标音频的变换结果;

极值确定模块,用于根据控制阈值和控制时长,在所述变换结果中确定极值和所述极值在所述目标音频中的对应时间;

指纹生成模块,用于根据所述极值和所述极值的对应时间生成所述目标音频的目标指纹。

在一种可能的实现方式中,所述指纹生成模块包括:

分组子模块,用于将所述目标音频的所有极值按照设定数量划分为多个极值生成组;

第一时间差计算子模块,用于根据所述极值的对应时间计算所述极值生成组中不同极值之间的第一时间差;

指纹生成子模块,用于根据所述极值生成组中选定极值的对应时间和所述第一时间差,生成所述目标音频的目标指纹。

在一种可能的实现方式中,所述极值确定模块,包括:

频带划分子模块,用于对所述变换结果进行频带划分,得到多个频带结果;

极值确定子模块,用于根据控制阈值和控制时长,在频带结果中确定极值和所述极值在所述目标音频中的对应时间。

在一种可能的实现方式中,所述装置还包括:

时间间隔计算模块,用于根据极值的对应时间,计算所述目标音频的所有极值之间的时间间隔;

控制时长调整模块,用于根据所述时间间隔和间隔阈值,调整所述控制时长。

在一种可能的实现方式中,所述装置还包括:

控制阈值调整模块,用于根据确定出的极值的数量和数量阈值,调整所述控制阈值。

在一种可能的实现方式中,所述装置还包括:

检索模块,用于在音频指纹库中检索是否有与目标指纹匹配的音频指纹,所述音频指纹库包括音频指纹和所述音频指纹的归属音频,其中,音频指纹的生成方式与所述目标指纹相同;

相似音频确定模块,用于根据匹配出的音频指纹和所述匹配出的音频指纹的归属音频,确定所述目标音频的相似音频。

在一种可能的实现方式中,所述相似音频确定模块,包括:

对比音频确定子模块,用于根据所述匹配出的音频指纹的归属音频,确定对比音频;

第二时间差计算子模块,用于当所述对比音频的匹配出的音频指纹的数量满足相似阈值时,根据所述匹配出的指纹中的极值的对应时间,计算所述对比音频的匹配出的音频指纹之间的第二时间差;

第三时间差计算子模块,用于根据所述目标指纹中的极值的对应时间,计算目标音频中的目标指纹之间的第三时间差;

相似音频确定子模块,用于在所述第二时间差和所述第三时间差相等的情况下,将所述对比音频确定为相似音频。

根据本公开的另一方面,提供了一种音频指纹生成装置,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为:执行上述音频指纹生成方法。

根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述音频指纹生成方法。

在本公开中,将目标音频进行傅立叶变换后,利用控制阈值和控制时长确定极值,根据极值和极值对应的时间生成目标指纹。极值代表了目标音频在频率上的特征信息,极值的对应时间代表了目标音频的频率上的特征在时间上的分布,因此生成的目标指纹能够在频率特征和频率特征的时间分布上代表目标音频特有的特征。

进一步地,如果采用本公开的音频指纹生成方法生成音频指纹,有利于更准确地找到侵权音频。

根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。

图1示出根据本公开一实施例的音频指纹生成方法的流程图;

图2示出根据本公开另一实施例的音频指纹生成方法的流程图;

图3示出根据本公开另一实施例的音频指纹生成方法的流程图;

图4示出根据本公开另一实施例的音频指纹生成方法的流程图;

图5示出根据本公开另一实施例的音频指纹生成方法的流程图;

图6示出根据本公开另一实施例的音频指纹生成方法的流程图;

图7示出根据本公开另一实施例的音频指纹生成方法的流程图;

图8示出根据本公开另一实施例的音频指纹生成方法的流程图;

图9示出根据本公开一实施例的音频指纹生成装置的框图;

图10示出根据本公开另一实施例的音频指纹生成装置的框图。

图11是根据一示例性实施例示出的一种用于音频指纹生成的装置的框图。

具体实施方式

以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。

图1示出根据本公开一实施例的音频指纹生成方法的流程图,如图1所示,所述方法包括:

步骤s10,将目标音频进行傅里叶变换,得到所述目标音频的变换结果。

步骤s20,根据控制阈值和控制时长,在所述变换结果中确定极值和所述极值在所述目标音频中的对应时间。

步骤s30,根据所述极值和所述极值的对应时间生成所述目标音频的目标指纹。

将目标音频进行傅立叶变换,可以将目标音频中的时域信息转换为频域信息,从而更加方便的进行特征的提取和分析。将傅立叶变换结果按照控制时长在持续时间上分段,将变换结果划分为多个时段,并按照控制阈值在每个时间段内确定大于控制阈值的结果。例如,变换结果的时长为5分钟,变换结果的值在a到b之间,a<b。当控制时长为10秒,控制阈值为c时,a<c<b,将变换结果划分为10秒一个的多个时段,且每个时段中只保留大于c的变换结果。

在每个时段确定极值(例如最大值),并获取极值在所述音频中对应的时间。利用多个极值时间之间的时间差,生成所述目标音频的目标指纹。例如在第一个时段中有极值1,极值1的对应时间为00:08:11。第二个时段中没有大于c的变换结果。第三个时段中有极值2,极值2的对应时间为00:22:25。第四个时段中有极值3,极值3的对应时间为00:34:10。计算极值1和极值2之间的时间差t1,极值1和极值3之间的时间差t2,利用极值1、极值2、极值3、t1和t2生成目标指纹。或计算极值1和极值2之间的时间差t1,极值2和极值3之间的时间差t3,利用极值1、极值2、极值3、t1和t3生成目标指纹。

在本实施例中,将目标音频进行傅立叶变换后,利用控制阈值和控制时长确定极值,根据极值和极值对应的时间生成目标指纹。极值代表了目标音频在频率上的特征信息,极值的对应时间代表了目标音频的频率上的特征在时间上的分布,因此生成的目标指纹,能够同时在频率特征和频率特征的时间分布上代表目标音频特有的特征,可用于最大程度的找到侵权音频的侵权特征。

图2示出根据本公开一实施例的音频指纹生成方法的流程图,如图2所示,与上述实施例的不同之处在于,步骤s30包括:

步骤s31,将所述目标音频的所有极值按照设定数量划分为多个极值生成组。

步骤s32,根据所述极值的对应时间计算所述极值生成组中不同极值之间的第一时间差。

步骤s33,根据所述极值生成组中选定极值的对应时间和所述第一时间差,生成所述目标音频的目标指纹。

在一种可能的实现方式中,根据控制阈值和控制时长在目标音频的傅立叶变换结果中确定出极值和极值的对应时间后,按照设定数量对极值进行分组得到极值生成组。例如目标音频傅立叶变换结果中共有27个极值,设定数量为3,按照3个极值为一组分为9个极值生成组。或设定数量为5,按照5个极值为一组分为5个极值生成组。

第一时间差可以包括相邻的两个极值之间的时间差,也可以包括不相邻的极值之间的时间差。例如在3个极值为一组的极值生成组中,第一时间差可以是第一个极值和第二个极值的时间差,或者是第二个和第三个之间的时间差。再如,在3个极值为一组的极值生成组中,第一时间差可以是第一个极值和第二个极值的时间差,或者是第一个极值和第三个极值之间的时间差。

图3示出根据本公开一实施例的音频指纹生成方法的流程图,如图3所示,于上述实施例不同的是,步骤s20包括:

步骤s21,对所述变换结果进行频带划分,得到多个频带结果。

步骤s22,根据控制阈值和控制时长,在频带结果中确定极值和所述极值在所述目标音频中的对应时间。

在一种可能的实现方式中,目标音频经过傅立叶变换后得到的变换结果,可以包括很宽的频谱上的变换结果。为使极值所代表的特征更加体现频率特征,可以将变换结果划分为不同的频带后,在多个频带上提取极值。例如,将变换结果划分为八个频带,在每个频带对应的变换结果上确定极值以及极值的对应时间。最后利用八个频带的极值和极值对应时间生成目标指纹。

在本实施例中,通过将变换结果进行频带划分,在不同频带上确定的极值和极值的对应时间,能够在目标音频的特定频率上确定特有的特征,生成的指纹能够更加准确的用于侵权音频的对比查找。

图4示出根据本公开一实施例的音频指纹生成方法的流程图,如图4所示,与上述实施例的不同之处在于,该方法还包括:

步骤s40,根据极值的对应时间,计算所述目标音频的所有极值之间的时间间隔。

步骤s50,根据所述时间间隔和间隔阈值,调整所述控制时长。

在一种可能的实现方式中,当极值之间的时间间隔太长时,利用极值生成的目标指纹将不能完整的代表目标音频的频率特征。当确定出的极值之间的时间间隔太短时,会增加计算量降低效率。因此,根据间隔阈值调整控制时长,可以将极值之间的时间间隔控制在合理的范围内。

图5示出根据本公开一实施例的音频指纹生成方法的流程图,如图5所示,与上述实施例的不同之处在于,该方法还包括:

步骤s60,根据确定出的极值的数量和数量阈值,调整所述控制阈值。

在一种可能的实现方式中,当极值的数量过少时,利用极值生成的目标指纹不能很好的代表目标音频的频率特征。当确定出的极值的数量过多时,会增加计算量降低效率。因此,根据数量阈值调整控制阈值,将极值的数量控制在合理的范围内。

图6示出根据本公开一实施例的音频指纹生成方法的流程图,如图6所示,与上述实施例的不同之处在于,该方法还包括:

步骤s70,在音频指纹库中检索是否有与目标指纹匹配的音频指纹,所述音频指纹库包括音频指纹和所述音频指纹的归属音频,其中,音频指纹的生成方式与所述目标指纹相同。

步骤s80,根据匹配出的音频指纹和所述匹配出的音频指纹的归属音频,确定所述目标音频的相似音频。

在一种可能的实现方式中,将需要检索的音频,利用与目标音频的目标指纹的生成方式相同的方式生成音频指纹,并放入音频指纹库中等待检索。可以理解的是,一个音频可以包括多个音频指纹。音频指纹库中存储有音频指纹和音频指纹的归属音频之间的对应关系。

根据目标音频的目标指纹在音频指纹库中检索,检索的与目标指纹匹配的音频指纹,并根据匹配出的音频指纹确定归属音频是否为目标音频的相似音频。可以根据一个归属音频中与目标指纹匹配的音频指纹的数量,确定归属音频是否为目标音频的相似音频。例如当一个归属音频中与目标指纹匹配的音频指纹的数量超过设定的阈值,例如5个时,则将这个归属音频确认为目标音频的相似音频,归属音频是目标音频的侵权音频。

此外,还可以根据检索到的音频指纹在归属音频中的时间分布,与目标指纹在目标音频中的时间分布进行比对,当两者的时间分布满足设定的分布条件时,将归属音频确定为目标音频的相似音频。

图7示出根据本公开一实施例的音频指纹生成方法的流程图,如图7所示,与上述实施例的不同之处在于,步骤s80包括:

步骤s81,根据所述匹配出的音频指纹的归属音频,确定对比音频。

步骤s82,当所述对比音频的匹配出的音频指纹的数量满足相似阈值时,根据所述匹配出的指纹中的极值的对应时间,计算所述对比音频的匹配出的音频指纹之间的第二时间差。

步骤s83,根据所述目标指纹中的极值的对应时间,计算目标音频中的目标指纹之间的第三时间差。

步骤s84,在所述第二时间差和所述第三时间差相等的情况下,将所述对比音频确定为相似音频。

在一种可能的实现方式中,音频由音符和旋律组成,一个目标音频包括的多个目标指纹,在音频指纹库中匹配出的音频指纹,也归属于多个归属音频。例如目标音频的目标指纹有8个。在音频指纹库中,目标音频的目标指纹1匹配出3个音频指纹,分别为音频指纹a、音频指纹b和音频指纹c。其中音频指纹a的归属音频为归属音频1,音频指纹b的归属音频是归属音频2,音频指纹c的归属音频为归属音频3。目标音频的目标指纹2匹配出2个音频指纹,分别是音频指纹d和音频指纹e。其中音频指纹d的归属音频是归属音频1,音频指纹e的归属音频是归属音频2。目标音频的目标指纹3匹配出3个音频指纹,分别是音频指纹f、音频指纹g和音频指纹h。其中音频指纹f的归属音频是归属音频1,音频指纹g的归属音频是归属音频2,音频指纹h的归属音频是归属音频3。其它目标指纹的匹配情况省略。最终,归属音频1与目标音频的目标指纹匹配的音频指纹共有9个。归属音频2与目标音频的目标指纹匹配的音频指纹共有6个。其它归属音频与目标音频1的目标指纹匹配的音频指纹均在5个以下。

当相似阈值为5时,只有归属音频1和归属音频2匹配出的音频指纹大于5个,因此归属音频1和归属音频2为对比音频,用于与目标音频进行进一步的对比。归属音频1中的音频指纹a与目标指纹1匹配,音频指纹d与目标指纹2匹配,音频指纹f与目标指纹3匹配。归属音频2中的音频指纹b与目标指纹1匹配,音频指纹e与目标指纹2匹配,音频指纹g与目标指纹3匹配,依次类推,不再赘述。

在本公开中,可以分别获取音频指纹中特定位置的极值的对应时间,用于计算指纹间的时间差。例如,在归属音频1中,获取音频指纹a中第一个极值的对应时间a,音频指纹d中第一个极值的对应时间b,音频指纹f中第一个极值的对应时间c,并将对应时间a、b和c这三个时间中每两个的时间差确定为第二时间差。在目标音频中,获取目标指纹1中第一个极值的对应时间x,目标指纹2中第一个极值的对应时间y,以及目标指纹3中第一个极值的对应时间z。将对应时间x、y和z这三个时间中每两个的时间差确定为第三时间差。例如:第二时间差为对应时间a和b之间的时间差1,或者对应时间b和c之间的时间差2。第三时间差为对应时间x和y之间的时间差3,或者对应时间y和z的时间差4。

当时间差1和时间差3相等,时间差2和时间差4相等时,说明归属音频1中的音乐的频率特征信息与目标音频相同,且相同的频率特征信息的时间分布也相同。归属音频1为目标音频的相似音频。归属音频2是否为目标音频的相似音频的确定过程与归属音频1的确定过程相同。

图8示出根据本公开一实施例的音频指纹生成方法的流程图,如图8所示,该方法的步骤包括:

步骤s1,输入音频文件,所述输入的音频文件为目标音频文件。

步骤s2,对输入的音频文件即目标音频进行傅立叶变换,将频域分为八个频带。共得到八个频带上的傅立叶变换结果。

步骤s3,分别在八个频带上,获取能量极值点。然后根据一个极值点和此极值点后续的两个极值点的时间间隔,生成指纹。指纹中包括傅立叶变化值中的极值,和极值在目标音频中的对应时间。音频指纹生成算法中对于八个不同的频带通过用不同的阈值来过滤,得到一系列的能量较高的点,而且这些极值点和前后的极值点的相邻距离不能太近或者太远。控制能量极值点时间间隔的方法包含两个限制:控制阈值和规定长度。如果超过一定时间还没有超过阈值的能量,t减少(阈值随之减少),否则t增加(阈值随之增加)。规定长度:如果本次命中和上次命中太近,就把上次命中覆盖掉。

步骤s4,根据目标音频的指纹,在指纹索引库中进行检索。步骤s4包括:

步骤s41,指纹索库中的指纹的生成方式,与步骤s2至步骤s3的方式相同。为了使音频指纹搜索服务能够快速伸缩、分布式部署,把音频搜索服务部署在一个elasticsearch集群上。使用音频指纹作为数据id,存储音频指纹所在音频的唯一标示和音频指纹出现的时间。

步骤s42,根据需要检索音频的目标指纹,从版权音频索引库库中查出包含音频指纹的所有视频以及指纹出现的时间(指纹中特定位置的极值的对应时间)。按照检索结果中的音频唯一标示对检索结果归类,然后用查询结果中的指纹出现时间减去检索音频指纹出现的时间得到一个时间差。如果一个音频唯一标识对应的相同的时间差个数最多,那么检索音频和此音频相似度最高。也可以通过一个合适的阈值来权衡音频匹配的准确率和召回率。

图9示出根据本公开一实施例的音频指纹生成装置的框图,如图9所示,该装置包括:

傅立叶变换模块41,用于将目标音频进行傅里叶变换,得到所述目标音频的变换结果;

极值确定模块42,用于根据控制阈值和控制时长,在所述变换结果中确定极值和所述极值在所述目标音频中的对应时间;

指纹生成模块43,用于根据所述极值和所述极值的对应时间生成所述目标音频的目标指纹。

图10示出根据本公开另一实施例的音频指纹生成装置的框图,如图10所示,在一种可能的实现方式中,所述指纹生成模块43包括:

分组子模块431,用于将所述目标音频的所有极值按照设定数量划分为多个极值生成组;

第一时间差计算子模块432,用于根据所述极值的对应时间计算所述极值生成组中不同极值之间的第一时间差;

指纹生成子模块433,用于根据所述极值生成组中选定极值的对应时间和所述第一时间差,生成所述目标音频的目标指纹。

在一种可能的实现方式中,所述极值确定模块42,包括:

频带划分子模块421,用于对所述变换结果进行频带划分,得到多个频带结果;

极值确定子模块422,用于根据控制阈值和控制时长,在频带结果中确定极值和所述极值在所述目标音频中的对应时间。

在一种可能的实现方式中,所述装置还包括:

时间间隔计算模块44,用于根据极值的对应时间,计算所述目标音频的所有极值之间的时间间隔;

控制时长调整模块45,用于根据所述时间间隔和间隔阈值,调整所述控制时长。

在一种可能的实现方式中,所述装置还包括:

控制阈值调整模块46,用于根据确定出的极值的数量和数量阈值,调整所述控制阈值。

在一种可能的实现方式中,所述装置还包括:

检索模块47,用于在音频指纹库中检索是否有与目标指纹匹配的音频指纹,所述音频指纹库包括音频指纹和所述音频指纹的归属音频,其中,音频指纹的生成方式与所述目标指纹相同;

相似音频确定模块48,用于根据匹配出的音频指纹和所述匹配出的音频指纹的归属音频,确定所述目标音频的相似音频。

在一种可能的实现方式中,所述相似音频确定模块48,包括:

对比音频确定子模块481,用于根据所述匹配出的音频指纹的归属音频,确定对比音频;

第二时间差计算子模块482,用于当所述对比音频的匹配出的音频指纹的数量满足相似阈值时,根据所述匹配出的指纹中的极值的对应时间,计算所述对比音频的匹配出的音频指纹之间的第二时间差;

第三时间差计算子模块483,用于根据所述目标指纹中的极值的对应时间,计算目标音频中的目标指纹之间的第三时间差;

相似音频确定子模块484,用于在所述第二时间差和所述第三时间差相等的情况下,将所述对比音频确定为相似音频。实施例1

图11是根据一示例性实施例示出的一种用于音频指纹生成装置1900的框图。例如,装置1900可以被提供为一服务器。参照图11,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。

装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出(i/o)接口1958。装置1900可以操作基于存储在存储器1932的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或类似。

在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由装置1900的处理组件1922执行以完成上述方法。

本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。

这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

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

以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

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