具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、系统、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。请参考图1,图1示出了本发明实施例提供的一种心律失常检测方法的实现流程,详述如下:
在步骤S101中,截取心电信号中的心跳波形列表重构训练集。
在本发明实施例中,心电图可以根据每次心跳的起始时间和结束时间将其划分多个心动周期。一个心动周期内的心电图波形反映了心血管系统在该周期内的电生理特性。为了突出心动周期内部心电图特性和心动周期之间的心电图差异性,本发明将心电图按照心动周期进行了重新组织,具体为截取心电信号中的心跳波形列表重构训练集。训练集中的心跳波形列表将作为训练样本,经深度神经网络进行特征学习和分类后,确定对应的心律失常类别。
优选的,为了减少心电信号中的噪声干扰,提高心律失常检测的准确度,在截取心电信号中的心跳波形列表重构训练集的步骤之前,本发明实施例提供了如图2所示的一种去除心电信号噪声的具体实现步骤,详述如下:
在步骤S201中,基于均值滤波去除所述心电信号中的基线漂移。
在本发明实施例中,步骤S201具体为:
利用均值滤波提取心电信号中的波形基线;
将所述心电信号与所述波形基线进行相减处理,得到去除基线漂移的心电信号。
在步骤S202中,对去除基线漂移后的心电信号进行滤波去噪。
在本发明实施例中,步骤S202具体为:
利用傅立叶变换将所述心电信号转为频域;
截取所述频域中频谱处于预设频率范围内的部分,通过傅立叶逆变换得到滤波后的心电信号。
在这里,预设频率范围具体为0.1~100Hz,即保留频谱中处于0.1~100Hz范围内的部分。
优选的,本发明实施例提供了如图3所示的一种截取心电信号中的心跳波形列表重构训练集的具体实现步骤,详述如下:
在步骤S301中,获取当前检测点检测到的心电信号中的R波波峰。
在本发明实施例中,当心电信号头部存在显著高于正常R波波峰的巨大尖峰时,会导致后面的R波波峰检测不到,为了避免心电信号头部存在的巨大尖峰所造成的干扰,在检测心电信号中的R波波峰时,将检测到的R波波峰数目与预设阈值进行比较,如果大于或等于这一预设阈值,说明R波波峰检测成功,根据这一检测点检测到的心电信号中的R波波峰计算其波形位置以截取心跳波形列表。如果小于这一预设阈值,说明受到了头部尖峰的干扰,这时,将检测的起点向后推延一段距离并重复上述检测与判断,直到检测出的R波波峰数目达到预设阈值;或者将检测的起点推迟至心电信号的末尾。
在这里,检测心电信号中的R波波峰具体是利用Pan-Tompkins算法检测心电信号中的R波波峰。
在步骤S302中,计算所述R波波峰的波形位置。
在本发明实施例中,步骤S302具体为:根据预设公式计算所述R波波峰的波形位置;
其中,所述预设公式具体为:
Ei=Si+C
其中,Si表示波形起始位置;Ei表示终止位置;Ri表示心电信号中检测到的第i个R波波峰的波形位置;i的取值范围为2至N-1,N为检测到的R波波峰的总数;C为设定的心动周期常量,取值为0.6~0.8秒。
在步骤S303中,根据所述波形位置截取心跳波形列表并存储至训练集中。
在本发明实施例中,将所截取的心跳波形列表作为训练样本存储至训练集中,以便于深度神经网络对其进行特征学习和分类,确定心律失常的类别。
在步骤S102中,扩增所述训练集中的心跳波形列表的数量。
在本发明实施例中,为了进一步提高对心律失常检测的准确性,同时保证训练集中的数据平衡性,对训练集中的心跳波形列表数据的数量进行扩增,以便于深度神经网络更好对训练集中的数据进行特征学习和分类,提高心律失常检测的精确度。
在这里,通过在原始数据集中逐条截取心电信号的心跳波形列表作为新的样本数据以补充进训练集中扩增心跳波形列表的数量。
优选的,本发明实施例提供了如图4所示的一种扩增所述训练集中的心跳波形列表的数量的具体实现步骤,详述如下:
在步骤S401中,判断心跳信号中的心跳次数是否大于预设心跳波形次数F。
在本发明实施例中,预设心跳波形次数F为预先设定用于判定心律失常类别所需要的心跳波形次数F,通常F为5~30的整数。
在步骤S402中,当心跳信号中的心跳次数小于或等于预设心跳波形次数F时,在所述心跳信号的头部补充若干0向量以使其长度达到预设长度,得到新的心跳波形列表。
在本发明实施例中,当心跳信号中的心跳次数小于或等于预设心跳波形次数F时,将该心跳信号中的所有心跳作为一个训练样本,并在其头部补充若干0向量,以使其长度为F。
在步骤S403中,将得到新的心跳波形列表存储至所述训练集中。
在本发明实施例中,将心跳次数小于或等于预设心跳波形次数F的心跳信号补充0向量使其长度为F后直接存储至训练集中,以达到扩增训练集中的训练样本的数量的目的。
优选的,本发明实施例还提供了另一种扩增所述训练集中的心跳波形列表的数量的实现步骤,具体如下:
当心跳信号中的心跳次数大于预设心跳波形次数F时,根据预设心跳次数Pi对所述心跳信号进行截取,得到预设长度的心跳波形列表。
在本发明实施例中,预设心跳次数Pi为第i类信号中取自于同一条信号的两个相邻样本头部相邻的心跳次数。在这里,预设心跳次数Pi可以根据第i类信号的预设扩增数目Ti和训练集中第i类信号所包含的心跳的次数Bi计算得到。
优选的,本发明实施例提供了如图5所示的一种根据心跳间隔次数对所述心跳信号进行截取,得到预设长度的心跳波形列表的方法的具体实现步骤,详述如下:
在步骤S501中,获取预设扩增数目Ti。
在本发明实施例中,预设扩增数目Ti为第i类信号所要扩增达到的数目,也就是往训练集中补充第i类信号的心跳波形列表作为训练样本。在这里,通过合理地设定设扩增数目Ti可以实现训练集的数据平衡性,达到改善数据平衡的目的。
在步骤S502中,统计所述训练集中的预设类别信号所包含心跳的次数Bi。
在本发明实施例中,统计训练集中的第i类信号所包含心跳的次数Bi以计算预设心跳次数Pi。
在步骤S503中,根据所述预设扩增数目Ti和所述次数Bi按照预设公式计算预设心跳次数Pi。
在本发明实施例中,预设公式具体为:
在步骤S504中,每隔Pi次心跳截取一个长度为预设长度的心跳波形列表。
在本发明实施例中,将心跳次数大于预设心跳波形次数F的心跳信号,每隔Pi次心跳截取一个长度为F的心跳波形列表作为训练样本补充进训练集中,以达到扩增训练样本的数量的目的。
在本发明实施例中,通过对训练集重构和训练集数据扩增,突出了心动周期内部心电图特性和心动周期之间的心电图差异性,有利于深度神经网络进行特征学习,同时实现了训练样本的扩展和训练集数据平衡性的改善。
在步骤S103中,基于深度神经网络对训练集中的心跳波形和RR间期进行特征学习和分类,以确定心律失常类别。
在本发明实施例中,深度神经网络包括心跳波形特征学习网络、RR间期特征学习网络和心律失常分类网络,即深度神经网络由心跳波形特征学习网络、RR间期特征学习网络和心律失常分类网络构成。
RR间期表示依次心动周期的时间,也指心室率。
优选的,本发明实施例提供了如图6所示的一种基于深度神经网络对训练集中的心跳波形和RR间期进行特征学习和分类,以确定心律失常类别的具体实现步骤,详述如下:
在步骤S601中,心跳波形特征学习网络对训练集中的样本数据进行特征学习后得到一个第一预设维度的第一特征向量。
在本发明实施例中,心跳波形特征学习网络由卷积神经网络和LSTM(Long Short-Term Memory,长短期记忆网络)循环神经网络构成。
在这里,心跳波形特征学习网络从训练集中获取的心跳波形列表构成张量,其形状为T×F×C,其中T表示训练集包含的样本数目,F表示一个样本内包含的心跳次数,C为一个心跳波形包含的采样点数目。该张量经卷积神经网络和LSTM循环神经网络处理后得到一个64维的特征向量。
在这里,卷积神经网络中共包含8层二维卷积层。其中,每个二维卷积层各包含32个卷积核,第一个卷积层的卷积核大小为1×16,其后每经过两次卷积层,卷积核的大小就缩小为原来的1/2。
在相邻的两个卷积层之间均包含一个最大池化层和一个Dropout层;其中,最大池化层的池化缩减倍数为2×2,Dropout层的丢弃率为0.2。
最后一个二维卷积层的输出经过一个最大池化层和形状变换层后,输出的形状为T×F×32,其中最后一个维度表示相应心跳波形的特征向量。之后,张量输入包含64个单元的LSTM层,进行心跳波形列表特征的学习,最终得到一个64维的特征向量。
在本发明实施例中,心跳波形特征学习网络通过使用卷积和未1×K的二维卷积学习心跳波形的特征向量,如此实现了同一组网络参数在不同的心跳波形间共享,不仅减少了网络中需要优化的参数数目,而且使从不同心跳波形列表学习得到的特征向量在构成上具有一致的意义。
在步骤S602中,RR间期特征学习网络对从训练集中提取的RR间期序列进行特征学习后得到一个第二预设维度的第二特征向量。
在本发明实施例中,RR间期特征学习网络由卷积神经网络和LSTM循环神经网络构成。
在这里,RR间期特征学习网络从训练集中的心电信号样本中提取RR间期序列,其形状为T×(F-1)×1,其中T表示训练集包含的样本数目,F表示一个样本内包含的心跳次数,F-1即样本内的RR间期次数。
在这里,卷积神经网络中共包含2层一维卷积层。其中,每个一维卷积层各包含32个卷积核,卷积核长度均为3。在2层一维卷积层之后是一个包含32个单元的LSTM层,进行RR间期变化规律的学习,最终得到一个32维的特征向量。
在步骤S603中,心律失常分类网络将所述第一特征向量和所述第二特征向量进行拼接,依次输入预设数量的全连接层进行心律失常分类。
在本发明实施例中,心律失常分类网络包括特征向量拼接层、第一全连接层和第二全连接层;其中,第一全连接层包含32个神经元;第二连接层包含9个神经元,分别对应于正常、房颤、房室传导阻滞、左束支传导阻滞、右束支传导阻滞、房性早搏、室性早搏、S-T段抬升、S-T段下降等9种心律状况。
在这里,心律失常分类网路首先在特征向量拼接层将得到两组第一特征向量和第二特征向量进行拼接,然后依次输入第一全连接层和第二全连接层。在这里,第一全连接层的激活函数采用ReLu函数;第二全连接层的激活函数为softmax函数。模型训练的目标函数为交叉熵函数J(θ),其公式如下:
其中,m为训练集中的样本数,x为样本的输入数据,y为样本标记,θ为模型参数,p为条件概率函数,i为样本编号,i=1,2,…,m。
模型训练采用Stochastic Gradient Descent优化方法,学习率为0.001,冲量为0.7,权值衰减(Weight Decay)率为10-5。
在本发明的一具体实施例中,深度神经网络利用Keras基于TensorFlow引擎进行实现和训练。在这里,训练和测试数据均来自于2018年中国生物物理信号挑战赛(CPSC2018)数据集。该数据集专门用于训练和验证心律失常自动检测算法。其中,训练集包括6877个样本(男性样本3178个,女性样本3699个),测试集包括2954个样本。样本的时间长度在9~60秒范围内,平均约15秒。心电图为标准12导联心电图,采样频率为500Hz。每个样本具有其所属心律状况的标注,包括正常、房颤、房室传导阻滞、左束支传导阻滞、右束支传导阻滞、房性早搏、室性早搏、S-T段抬升、S-T段下降等9个类别。该方法的性能通过其在测试集上进行心律失常检测的F1评分进行评价,计算公式如下:
其中,F1x表示模型对x类状况检测的F1得分,NxX,NXx and Nxx分别表示x类状况的真实样本数、预测样本数和正确预测样本数。测试结果表明,该方法对上述各类状况的平均F1得分为0.82,其中在房室阻滞检测上的得分最高(0.88),在房性早搏检测上的得分最低(0.78)。
在本发明实施例中,通过心律失常检测装置在截取心电信号中的心跳波形列表重构训练集,并扩增所述训练集中的心跳波形列表的数量后,基于深度神经网络对训练集中的心跳波形和RR间期进行特征学习和分类,以确定心律失常类别;通过对训练集的重构和扩增实现训练样本的扩展和数据平衡性的改善,便于深度神经网络对心跳信号进行特征学习和分类,实现了心律失常的自动检测,提高了心律失常的检测效率;并减少人为干扰,提高了心律失常检测的精确度。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上文实施例所述的一种心律失常检测方法,图7示出了本发明实施例提供的一种心律失常检测装置的示意图,为了便于说明,仅示出了与本发明实施例相关的部分。
参照图7,该装置包括:
训练集重构单元71,用于截取心电信号中的心跳波形列表重构训练集;
训练集扩增单元72,用于扩增所述训练集中的心跳波形列表的数量;
心律失常检测单元73,用于基于深度神经网络对训练集中的心跳波形和RR间期进行特征学习和分类,以确定心律失常类别。
优选的,所述装置还包括:
基线漂移去除单元,用于基于均值滤波去除所述心电信号中的基线漂移;
滤波去噪单元,用于对去除基线漂移后的心电信号进行滤波去噪。
优选的,所述训练集重构单元71包括:
R波波峰获取子单元,用于获取当前检测点检测到的心电信号中的R波波峰;
波形位置计算子单元,用于计算所述R波波峰的波形位置;
心跳波形列表截取子单元,用于根据所述波形位置截取心跳波形列表并存储至训练集中。
优选的,所述波形位置计算子单元,具体用于:
根据预设公式计算所述R波波峰的波形起始位置;其中,所述预设公式为:
Ei=Si+C
其中,Si表示波形起始位置;Ei表示终止位置;Ri表示心电信号中检测到的第i个R波波峰的波形位置;i的取值范围为2至N-1,N为检测到的R波波峰的总数;C为设定的心动周期常量,取值为0.7~0.8秒。
优选的,所述训练集扩增单元72包括:
心跳次数比较子单元,用于判断心跳信号中的心跳次数是否大于预设心跳波形次数F;
第一扩增子单元,用于当心跳信号中的心跳次数小于或等于预设心跳波形次数F时,在所述心跳信号的头部补充若干0向量以使其长度达到预设长度,得到新的心跳波形列表;
心跳波形列表存储子单元,用于将得到新的心跳波形列表存储至所述训练集中。
优选的,所述训练集扩增单元72还包括:
第二扩增子单元,用于当心跳信号中的心跳次数大于预设心跳波形次数F时,根据预设心跳次数Pi对所述心跳信号进行截取,得到预设长度的心跳波形列表。
优选的,所述第二扩增子单元包括:
扩增数目获取子单元,用于获取预设扩增数目Ti;
次数Bi统计子单元,用于统计所述训练集中的预设类别信号所包含心跳的次数Bi;
心跳次数Pi计算子单元,用于根据所述预设扩增数目Ti和所述次数Bi按照预设公式计算预设心跳次数Pi;
心跳波形列表截取子单元,用于每隔Pi次心跳截取一个长度为预设长度的心跳波形列表。
优选的,所述预设心跳次数Pi为第i类信号中取自于同一条信号的两个相邻样本头部相邻的心跳次数。
优选的,所述深度神经网络包括心跳波形特征学习网络、RR间期特征学习网络和心律失常分类网络。
优选的,心律失常检测单元73包括:
第一特征向量学习子单元,用于由心跳波形特征学习网络对训练集中的样本数据进行特征学习后得到一个第一预设维度的第一特征向量;
第二特征向量学习子单元,用于由RR间期特征学习网络对从训练集中提取的RR间期序列进行特征学习后得到一个第二预设维度的第二特征向量;
心律失常分类子单元,用于由心律失常分类网络将所述第一特征向量和所述第二特征向量进行拼接,依次输入预设数量的全连接层进行心律失常分类。
在本发明实施例中,通过心律失常检测装置在截取心电信号中的心跳波形列表重构训练集,并扩增所述训练集中的心跳波形列表的数量后,基于深度神经网络对训练集中的心跳波形和RR间期进行特征学习和分类,以确定心律失常类别;通过对训练集的重构和扩增实现训练样本的扩展和数据平衡性的改善,便于深度神经网络对心跳信号进行特征学习和分类,实现了心律失常的自动检测,提高了心律失常的检测效率;并减少人为干扰,提高了心律失常检测的精确度。。
图8是本发明一实施例提供的一种终端的示意图。如图8所示,该实施例的终端8包括:处理器80、存储器81以及存储在所述存储器81中并可在所述处理器80上运行的计算机程序82。所述处理器80执行所述计算机程序82时实现上述各个心律失常检测方法实施例中的步骤,例如图1所示的步骤101至103。或者,所述处理器80执行所述计算机程序82时实现上述各系统实施例中各单元的功能,例如图7所示模块71至73的功能。
示例性的,所述计算机程序82可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器81中,并由所述处理器80执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序82在所述终端8中的执行过程。例如,所述计算机程序82可以被分割成训练集重构单元71、训练集扩增单元72、心律失常检测单元73,各单元具体功能如下:
训练集重构单元71,用于截取心电信号中的心跳波形列表重构训练集;
训练集扩增单元72,用于扩增所述训练集中的心跳波形列表的数量;
心律失常检测单元73,用于基于深度神经网络对训练集中的心跳波形和RR间期进行特征学习和分类,以确定心律失常类别。
优选的,所述计算机程序82还可以被分割成基线漂移去除单元、滤波去噪单元,各单元具体功能如下:
基线漂移去除单元,用于基于均值滤波去除所述心电信号中的基线漂移;
滤波去噪单元,用于对去除基线漂移后的心电信号进行滤波去噪。
优选的,所述计算机程序82中的所述训练集重构单元71还可以被分割成R波波峰获取子单元、波形位置计算子单元、第一心跳波形列表截取子单元,各子单元具体功能如下:
R波波峰获取子单元,用于获取当前检测点检测到的心电信号中的R波波峰;
波形位置计算子单元,用于计算所述R波波峰的波形位置;
第一心跳波形列表截取子单元,用于根据所述波形位置截取心跳波形列表并存储至训练集中。
优选的,所述计算机程序82中的所述波形位置计算子单元,具体用于:
根据预设公式计算所述R波波峰的波形起始位置;其中,所述预设公式为:
Ei=Si+C
其中,Si表示波形起始位置;Ei表示终止位置;Ri表示心电信号中检测到的第i个R波波峰的波形位置;i的取值范围为2至N-1,N为检测到的R波波峰的总数;C为设定的心动周期常量,取值为0.7~0.8秒。
优选的,所述计算机程序82中的所述训练集扩增单元72还可以被分割成心跳次数比较子单元、第一扩增子单元、心跳波形列表存储子单元,各子单元具体功能如下:
心跳次数比较子单元,用于判断心跳信号中的心跳次数是否大于预设心跳波形次数F;
第一扩增子单元,用于当心跳信号中的心跳次数小于或等于预设心跳波形次数F时,在所述心跳信号的头部补充若干0向量以使其长度达到预设长度,得到新的心跳波形列表;
心跳波形列表存储子单元,用于将得到新的心跳波形列表存储至所述训练集中。
优选的,所述计算机程序82中的所述训练集扩增单元72还可以被分割成第二扩增子单元,该子单元具体功能如下:
第二扩增子单元,用于当心跳信号中的心跳次数大于预设心跳波形次数F时,根据预设心跳次数Pi对所述心跳信号进行截取,得到预设长度的心跳波形列表。
优选的,所述计算机程序82中的所述第二扩增子单元可以被分割成扩增数目获取子单元、次数Bi统计子单元、心跳次数Pi计算子单元、第二心跳波形列表截取子单元,各子单元具体功能如下:
扩增数目获取子单元,用于获取预设扩增数目Ti;
次数Bi统计子单元,用于统计所述训练集中的预设类别信号所包含心跳的次数Bi;
心跳次数Pi计算子单元,用于根据所述预设扩增数目Ti和所述次数Bi按照预设公式计算预设心跳次数Pi;
第二心跳波形列表截取子单元,用于每隔Pi次心跳截取一个长度为预设长度的心跳波形列表。
优选的,所述预设心跳次数Pi为第i类信号中取自于同一条信号的两个相邻样本头部相邻的心跳次数。
优选的,所述深度神经网络包括心跳波形特征学习网络、RR间期特征学习网络和心律失常分类网络。
优选的,所述计算机程序82中的心律失常检测单元73可以被分割成第一特征向量学习子单元、第二特征向量学习子单元、心律失常分类子单元,各子单元具体功能如下:
第一特征向量学习子单元,用于由心跳波形特征学习网络对训练集中的样本数据进行特征学习后得到一个第一预设维度的第一特征向量;
第二特征向量学习子单元,用于由RR间期特征学习网络对从训练集中提取的RR间期序列进行特征学习后得到一个第二预设维度的第二特征向量;
心律失常分类子单元,用于由心律失常分类网络将所述第一特征向量和所述第二特征向量进行拼接,依次输入预设数量的全连接层进行心律失常分类。
所述终端8可以是桌上型计算机、笔记本、掌上电脑及智能手机等终端设备,也可以是智能手环、智能手表、蓝牙耳机等穿戴设备。所述终端8可包括,但不仅限于,处理器80、存储器81。本领域技术人员可以理解,图8仅仅是终端8的示例,并不构成对终端8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端还可以包括输入输出设备、网络接入设备、总线等。
所称处理器80可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81可以是所述终端8的内部存储单元,例如终端8的硬盘或内存。所述存储器81也可以是所述终端8的外部存储设备,例如所述终端8上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器81还可以既包括所述终端8的内部存储单元也包括外部存储设备。所述存储器81用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述系统的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的系统/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的系统/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,系统或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或系统、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。