本发明涉及信号处理领域,尤其涉及一种信号采样方法、信号采样系统和信号采样装置。
背景技术:
传统的信号处理过程可以包括采样、压缩、存储/传输和解压缩四部分,在采样过程中,先按照奈奎斯特(nyquist)采样定理对原始信号进行数据采集,然后将采集的数据进行压缩,在压缩过程中首先对采集的数据做变换,然后对少数绝对值较大的系数压缩编码,而舍弃其它为零或接近零的系数,其中,在压缩过程中舍弃了采样获得的大部分数据。
近年来,提出了一种新的信号采集技术,即,压缩传感技术(compressivesensing),压缩传感技术利用了原始信号s具有稀疏性的特性,即原始信号经正交变换后,只有k个位置未知的非零项。其中,利用压缩传感技术测量的数据量远远小于传统采样所需的数据量。
在压缩传感实现的过程中,首先获取原始信号s的采样值(非自适应线性投影),其中,采样值由等式(1.1)表示:
y=φα(1.1)
其中,y为采样值,φ为采样矩阵,α为原始信号。原始信号α表示为n项的列向量,并存在稀疏表示,即正交变换ψ后得到的ψα=x只有k(k<<n)个位置未知的非零项。测量值y为m项的列向量(m<<n&m>2k),采样矩阵φ是m行n列的矩阵。
在获取原始信号的采样值y,再经存储/传输之后,可以进行信号重构。
由此可知,使用压缩感知技术对信号进行处理分为信号采样阶段和信号恢复阶段。信号采样阶段包括构建采样矩阵和使用采样矩阵对信号数据进行采样。现有采样矩阵的构建方式可以分为两种,第一种是构建与应用数据无关的采样矩阵,第二种是构建与应用数据相关的采样矩阵。与应用数据无关的采样矩阵可以是服从高斯分布的实数矩阵,也可以是服从伯努利分布的随机布尔矩阵。从硬件角度出发,一般偏向于使用随机布尔矩阵,但使用随机布尔矩阵对数据进行采样,不能很好地利用数据内在的特点,从而导致采样值的准确度较差。而采用与应用数据相关的采样矩阵对信号进行采样,则可以学习应用数据的内在模式,从而可以更好的利用数据信息,使得在信息密集区域多采集,信息稀疏区域少采集,来达到更高的信号质量或者更少的采样数。
但是基于通过学习原始信号对应的应用数据来构造与数据相关的采样矩阵,生成的是与应用数据相关的实数采样矩阵,而根据实数采样矩阵采样信号使用的硬件在一定程度上实现较难,且功耗较高。
技术实现要素:
本发明提供一种信号采样方法、信号采样系统和信号采样装置,能够降低根据数据相关采样矩阵对信号进行采样所使用的硬件的复杂度和功耗。
第一方面,本发明提供了一种信号采样方法。首先,根据目标信号对应的应用数据获取与该应用数据相关的m行n列的实数矩阵ψ,m和n为大于或等于1的整数。然后根据ψ获取满足条件(1)的布尔采样矩阵
其中,t为m行m列的矩阵,d为m行m列的对角矩阵。最后,根据
本发明的信号采样方法,将与应用数据相关的实数采样矩阵转换为与应用数据相关的布尔采样矩阵,然后再根据该布尔采样矩阵对目标信号进行采样。根据与应用数据相关的布尔采样矩阵对目标信号采样,既能够更好地利用数据的信息,又能降低采样时使用的硬件的复杂度和功耗。
在一种可能的实现方式中,tt×t=d2包括:tt×t=i,i为单位矩阵。
在一种可能的实现方式中,根据ψ获取满足条件(1)的布尔采样矩阵
其中,i为大于1且小于或等于m的整数。
上述实现方式先初始化t的第一行,然后通过公式(2)来依次获取
第二方面,提供了一种信号采样系统。该信号采样系统包括实数采样矩阵获取模块、布尔采样矩阵获取模块和采样模块。实数采样矩阵获取模块用于根据目标信号对应的应用数据获取与应用数据相关的采样矩阵ψ,ψ为m行n列的实数矩阵,m和n为大于或等于1的整数。布尔采样矩阵获取模块用于根据ψ获取满足条件(1)的布尔采样矩阵
其中,t为m行m列的矩阵,d为m行m列的对角矩阵。采样模块用于根据
本发明的信号采样系统,将与应用数据相关的实数采样矩阵转换为与应用数据相关的布尔采样矩阵,然后再根据该布尔采样矩阵对目标信号进行采样。根据与应用数据相关的布尔采样矩阵对目标信号采样,既能够更好地利用数据的信息,又能降低采样时使用的硬件的复杂度和功耗。
在一种可能的实现方式中,tt×t=d2包括:tt×t=i,i为单位矩阵。
在一种可能的实现方式中,布尔采样矩阵获取模块具体用于随机初始化t的第一行t1的值;随机初始化所述
其中,i为大于1且小于或等于m的整数。
上述实现方式中的信号采样系统先初始化t的第一行和
第三方面,提供了一种信号采样装置。该信号采样装置包括实数采样矩阵获取模块、布尔采样矩阵获取模块和采样模块。实数采样矩阵获取模块用于根据目标信号对应的应用数据获取与应用数据相关的采样矩阵ψ,ψ为m行n列的实数矩阵,m和n为大于或等于1的整数。布尔采样矩阵获取模块用于根据ψ获取满足条件(1)的布尔采样矩阵
其中,t为m行m列的矩阵,d为m行m列的对角矩阵。采样模块用于根据
本发明的信号采样装置,将与应用数据相关的实数采样矩阵转换为与应用数据相关的布尔采样矩阵,然后再根据该布尔采样矩阵对目标信号进行采样。根据与应用数据相关的布尔采样矩阵对目标信号采样,既能够更好地利用数据的信息,又能降低采样时使用的硬件的复杂度和功耗。
在一种可能的实现方式中,tt×t=d2包括:tt×t=i,i为单位矩阵。
在一种可能的实现方式中,布尔采样矩阵获取模块具体用于随机初始化t的第一行t1的值;随机初始化所述
其中,i为大于1且小于或等于m的整数。
上述实现方式中的信号采样装置先初始化t的第一行和
第四方面,提供了一种信号采样装置,包括存储器和处理器。该存储器用于存储程序,该处理器用于执行存储器存储的程序。当存储器存储的程序被执行时,处理器用于执行第一方面的方法。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的信号采样方法的示意性流程图;
图2是本发明实施例的获取布尔采样矩阵的方法的示意性流程图;
图3是本发明实施例的信号采样系统的示意性结构图。
图4是本发明实施例的信号采样装置的示意性结构图。
图5是本发明实施例的信号采样装置的示意性结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,通过压缩感知技术进行信号采样时,先对与信号对应的应用数据进行训练,学习应用数据的内在模式,从而得到与应用数据相关的实数采样矩阵,然后再用该实数采样矩阵对应用数据对应的目标信号进行采样。由于使用实数采样矩阵对目标信号进行采样所使用的硬件的复杂度和功耗等比较大,因此本发明提出在实数采样矩阵上进行布尔优化,得到布尔矩阵,而且保证所得布尔矩阵保留实数矩阵的与数据相关的信息(即该布尔矩阵对于应用数据也为数据相关的矩阵),然后再使用该布尔矩阵对目标信号进行采样。因此,本发明的技术方案的一个关键点在于如何从与数据相关的实数采样矩阵得到与数据相关的布尔采样矩阵。
在压缩感知技术中,要满足对于所有可能的信号x,当用与数据相关的实数采样矩阵ψ对x进行采样得到采样值ψ*x后,采样值ψ*x对以下有限等效性质(restrictedisometryproperty,rip)均成立,才可以确保信号的可恢复性:
从几何角度理解,即原n维空间中的信号x,经过压缩感知采样到m维子空间的数据后,该数据对应的信号的长度只能发生最多δk形变。δk是一个常数,范围在0-1之间。δk的数值越小,代表信号经过映射后的形变越小,恢复后质量越高。δk可以表征采样矩阵ψ的质量。
与数据相关的实数采样矩阵中,最重要的信息就是对于信号x,都能确保rip的成立。为了将实数矩阵变换为布尔矩阵之后数据相关的结果仍然保留,变换所得的布尔矩阵仍然要满足rip性质。因此,假设变换算子为矩阵t,则需要满足以下不等式才能保证通过布尔矩阵采样的信号的可恢复性:
当且仅当t为正交归一(orthonormal)矩阵时,以上不等式才能得到满足。这是因为正交归一矩阵作为算子,不会改变采样值
除了满足正交归一约束条件以外,t变换矩阵需要将ψ变换成布尔矩阵,因此t还需要满足:
该问题中,t和
在通过上述优化问题求解
其中,d为对角矩阵。同时,可以根据d恢复通过
其中,y为恢复后的信号,ε为一个无限接近于0的值。
在获取
一种具体的实现方式中,可以先随机初始化t的第一行t1和
其中,ti表示t的第i行,
上述获取t和
在获取t和
分别获取
上述介绍的是如何从与数据相关的实数采样矩阵得到与数据相关的布尔矩阵,其只是信号采样中的一个子过程,下面结合图1介绍本发明实施例的信号采样方法。
s101,根据目标信号对应的应用数据得到与该应用数据相关的m行n列的实数矩阵ψ,m和n为大于或等于1的整数。
s102,根据ψ获取满足条件(1)的布尔采样矩阵
其中,t为m行m列的矩阵,d为m行m列的对角矩阵,即t为正交矩阵。
s103,根据
本发明实施例中,由于最后对目标信号进行采样所使用的是与数据相关的二值布尔矩阵,因此可用结构简单、低功耗硬件来实现矩阵乘法,即可用低功耗硬件来得到与目标信号相关的采样值。
本发明实施例中,条件(1)中的约束tt×t=d2可以进一步约束为tt×t=i,i为单位矩阵,即t为正交归一矩阵。
根据ψ获取满足条件(1)的
其中,ti表示t的第i行,
上述根据ψ获取满足条件(1)的
s201,随机初始化t的第一行和
s202,从t的第二行开始,根据t的前i-1行获取满足公式(2)的t的第i行。当获取到t的第i行时,即可以获取
s203,每获取到t和
s204,每获取到t的一行的值时,判断该行是否为t的最后一行。若t的最后一行已获取,说明t已完全获取到,同时表示
s205,得到
上述获取t以获取
下面结合图3介绍本发明实施例的信号采样系统300。信号采样系统300可以是图1所示的信号采样方法的执行主体。
信号采样系统300包括实数采样矩阵获取模块301、布尔采样矩阵获取模块302和采样模块303。
实数采样矩阵获取模块301用于根据目标信号对应的应用数据得到与应用数据相关的采样矩阵ψ,ψ为m行n列的实数矩阵,m和n为大于或等于1的整数。
布尔采样矩阵获取模块302用于根据ψ获取满足下列的布尔采样矩阵
其中,t为m行m列的矩阵,d为m行m列的对角矩阵。
采样模块303用于根据
本发明的信号采样系统,将与应用数据相关的实数采样矩阵转换为与应用数据相关的布尔采样矩阵,然后再根据该布尔采样矩阵对目标信号进行采样。根据与应用数据相关的布尔采样矩阵对目标信号采样,既能够更好地利用数据的信息,又能降低采样时使用的硬件的复杂度和功耗。
因为信号采样系统300可以为图1所示的信号采样方法的执行主体,因此信号采样系统300的上述和其他操作或/和功能分别与图1所示的信号采样方法中的操作或/功能相同或相似。为了简洁,在此不再赘述。
本发明实施例中的采样矩阵获取模块301、布尔采样矩阵获取模块302和采样模块303可以部署在同一个硬件设备上,也可以部署在不同的硬件设备上,或者部分模块部署在同一个硬件设备上,本发明对此不作限制。
当采样矩阵获取模块、布尔采样矩阵获取模块部署在同一个设备(如服务器)上,而采样模块部署在其他的设备(如可穿戴设备)时,采样矩阵获取模块获取到实数采样矩阵且布尔采样矩阵获取模块根据实数采样矩阵获取获取到布尔采样矩阵后,可以通过网络传输或其他方式从将布尔采样矩阵发送给采样模块所在的设备,然后该设备根据布尔采样矩阵对目标信号进行采样。
当采样矩阵获取模块和采样模块布置在同一个设备(如可穿戴设备)上,而布尔采样矩阵获取模块可以布置在其他设备(如服务器)时,可穿戴设备上的采样矩阵获取模块获取到实数采样矩阵后,可以将实数采样矩阵发送给服务器,服务器上的布尔采样矩阵获取模块根据该实数采样矩阵获取布尔采样矩阵后,服务器再将布尔采样矩阵发送给可穿戴设备,最后可穿戴设备根据该布尔采样矩阵对目标信号进行采样。
当采样矩阵获取模块、布尔采样矩阵获取模块和采样模块部署在同一个设备或装置上(如部署在同一个可穿戴设备)时,则该信号采样装置的示意性结构图如图4所示。
图4中的信号采样装置400包括的采样矩阵获取模块401、布尔采样矩阵获取模块402和采样模块403的功能分别与图3中的信号采样系统300中的采样矩阵获取模块301、布尔采样矩阵获取模块302和采样模块303的功能相同或相似,为了简洁,此处不再赘述。
图5为本发明实施例的信号采样装置500的结构性示意图。应理解,图5的信号采样装置500能够实现图1中的信号采样方法的各个步骤。
信号采样装置500包括存储器501和处理器502。存储器501用于存储程序;处理器502用于执行存储器501中的程序,当所述程序被执行时,处理器502用于:根据目标信号对应的应用数据得到与应用数据相关的采样矩阵ψ,ψ为m行n列的实数矩阵,m和n为大于或等于1的整数;根据ψ获取满足下列的布尔采样矩阵
其中,t为m行m列的矩阵,d为m行m列的对角矩阵;根据
可选地,作为一个实施例,处理器502可以具体用于:随机初始化t的第一行t1;随机初始化
其中,i为大于1且小于或等于m的整数。
可选地,作为一个实施例,处理器502还可以用于根据ψ获取满足下列的布尔采样矩阵
在使用与数据相关的布尔矩阵对数据进行采样时,可以使用互补金属氧化物半导体(complementarymetaloxidesemiconductor,cmos)或阻变式存储器(resistiverandomaccessmemory,rram)来实现。
通常情况下,cmos的采样能耗和面积小于rram的采样能耗和面积,而rram的采样时间小于cmos的采样时间。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。