本发明涉及压缩感知技术领域,特别是涉及一种基于压缩感知的信号重构方法、装置和计算机可读存储介质。
背景技术:
现代信息技术的迅猛发展,使得人们对信息的需求量越来越大,而传统的信号压缩和重建遵循nyquist-shannon采样定理,即采样率必须至少为信号最高频率的两倍,才能保证在重建时不产生失真,这无疑将给信号采样、传输和存储过程带来越来越大的压力。压缩感知理论以信号的稀疏性或可压缩性为前提,将信号的采样和压缩进一步完成,避免了传统采样压缩的资源浪费,利用少量的采样值就能精确地恢复原信号,并且已经得到广泛的应用。
压缩感知的过程,大体可以分为两个部分。第一部分是对稀疏的信号进行采样,通过对稀疏信号的采样可以得到最终的采样向量y,其后续用作重构算法的输入。第二部分是用重构算法对采样后的信号,即采样向量y进行重构,以还原出原始信号。其中信号的采样易于实现,相比之下,重构算法的计算过程更为复杂和耗时,而且在压缩感知过程中其承担着更核心的任务。
正交匹配追踪(orthogonalmatchingpursuit,omp)算法是目前压缩感知常用的重构算法。omp算法需要通过人工设置迭代次数,每次迭代时依赖于最小二乘的方式实现对采样信号的重构。但是基于omp算法的信号重构方式在每次迭代中仅选取一个原子来更新原子集合,这样必然会付出巨大的重建时间代价。omp算法需要已知信号的稀疏度k,迭代次数的取值由k决定,而在实际中稀疏度属于未知信息,基于此背景,在压缩感知的实际应用中k很多时候为一个估计值,因此会对最终的重构结果造成一定的误差。
可见,如何提高信号重构的效率和准确性,是本领域技术人员需要解决的问题。
技术实现要素:
本发明实施例的目的是提供一种基于压缩感知的信号重构方法、装置和计算机可读存储介质,可以提高信号重构的效率和准确性。
为解决上述技术问题,本发明实施例提供一种基于压缩感知的信号重构方法,包括:
获取信号的采样向量和传感矩阵;其中,所述传感矩阵的维度与所述信号的维度相同;
将所述采样向量作为初始残差值;按照预设重建规则,对所述初始残差值和所述传感矩阵进行处理,以得到重构向量;
利用正则化规则,对所述重构向量以及所述采样向量进行重构,以得到初始重构信号;
依据所述初始重构信号、所述采样向量以及所述重构向量,计算所述初始重构信号对应的残差值;
判断所述初始重构信号的残差值是否小于或等于预设的最小残差值;
当所述残差值大于预设的最小残差值时,则将所述残差值作为初始残差值,并返回所述按照预设重建规则,对所述初始残差值和所述传感矩阵进行处理,以得到重构向量的步骤;
当所述残差值小于或等于预设的最小残差值时,则将所述初始重构信号作为完成重构的目标信号。
可选地,所述按照预设重建规则,对所述初始残差值和所述传感矩阵进行处理,以得到重构向量包括:
选取所述初始残差值与所述传感矩阵的乘积中的最大贡献数据列作为当前原子向量;
将所述当前原子向量与上一次的重构向量合并作为当前的重构向量。
可选地,所述利用正则化规则,对所述重构向量以及所述采样向量进行重构,得到初始重构信号包括:
按照如下公式计算得到初始重构信号x',
其中,α表示正则化规则的常规参数,i表示正则化规则的单元矩阵,
可选地,所述依据所述初始重构信号、所述采样向量以及所述重构向量,计算所述初始重构信号对应的残差值包括:
按照如下公式,计算所述初始重构信号x'对应的残差值r,
其中,y表示采样向量,
可选地,在所述当所述残差值小于或等于预设的最小残差值时,则将所述初始重构信号作为完成重构的目标信号之后还包括:
将所述目标信号所对应的重构向量记录至预设存储空间。
本发明实施例还提供了一种基于压缩感知的信号重构装置,包括获取单元、处理单元、重构单元、计算单元、判断单元、第一作为单元和第二作为单元;
所述获取单元,用于获取信号的采样向量和传感矩阵;其中,所述传感矩阵的维度与所述信号的维度相同;
所述处理单元,用于将所述采样向量作为初始残差值;按照预设重建规则,对所述初始残差值和所述传感矩阵进行处理,以得到重构向量;
所述重构单元,用于利用正则化规则,对所述重构向量以及所述采样向量进行重构,以得到初始重构信号;
所述计算单元,用于依据所述初始重构信号、所述采样向量以及所述重构向量,计算所述初始重构信号对应的残差值;
所述判断单元,用于判断所述初始重构信号的残差值是否小于或等于预设的最小残差值;
所述第一作为单元,用于当所述残差值大于预设的最小残差值时,则将所述残差值作为初始残差值,并返回所述按照预设重建规则,对所述初始残差值和所述传感矩阵进行处理,以得到重构向量的步骤;
所述第二作为单元,用于当所述残差值小于或等于预设的最小残差值时,则将所述初始重构信号作为完成重构的目标信号。
可选地,所述处理单元包括选取子单元和合并子单元;
所述选取子单元,用于选取所述初始残差值与所述传感矩阵的乘积中的最大贡献数据列作为当前原子向量;
所述合并子单元,用于将所述当前原子向量与上一次的重构向量合并作为当前的重构向量。
可选地,所述重构单元具体用于按照如下公式计算得到初始重构信号x',
其中,α表示正则化规则的常规参数,i表示正则化规则的单元矩阵,
可选地,所述计算单元具体用于按照如下公式,计算所述初始重构信号x'对应的残差值r,
其中,y表示采样向量,
可选地,还包括记录单元;
所述记录单元,用于将所述目标信号所对应的重构向量记录至预设存储空间。
本发明实施例还提供了一种基于压缩感知的信号重构装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上述任意一项所述基于压缩感知的信号重构方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述基于压缩感知的信号重构方法的步骤。
由上述技术方案可以看出,获取信号的采样向量和传感矩阵;其中,传感矩阵的维度与信号的维度相同;将所述采样向量作为初始残差值;按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量;利用正则化规则,对重构向量以及采样向量进行重构,以得到初始重构信号。第一次得到的初始重构信号往往不够准确,因此可以依据初始重构信号、采样向量以及重构向量,计算出当前的初始重构信号对应的残差值。判断初始重构信号的残差值是否小于或等于预设的最小残差值;当残差值大于预设的最小残差值时,则说明当前得到的初始重构信号不满足信号重构的精度要求,此时可以将残差值作为初始残差值,并返回按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量的步骤。当残差值小于或等于预设的最小残差值时,则说明当前得到的初始重构信号的精度较高,可以将当前的初始重构信号作为完成重构的目标信号。在该技术方案中,利用正则化规则替换了经典算法中耗时最多的最小二乘算法,提升了提高信号重构的效率和准确性。并且利用残差值对重构信号的精度进行评估,可以有效的排除预估稀疏度时引入的误差,进一步提升了信号重构的准确性。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于压缩感知的信号重构方法的流程图;
图2为本发明实施例提供的一种基于压缩感知的信号重构装置的结构示意图;
图3为本发明实施例提供的一种基于压缩感知的信号重构装置的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
接下来,详细介绍本发明实施例所提供的一种基于压缩感知的信号重构方法。图1为本发明实施例提供的一种基于压缩感知的信号重构方法的流程图,该方法包括:
s101:获取信号的采样向量和传感矩阵。
其中,传感矩阵的维度与信号的维度相同。在所需重构的信号的维度已知的情况下,按照现有技术构建传感矩阵的方式,可以得到与所需重构的信号的维度相同的传感矩阵。
因为信号的稀疏性是压缩感知技术的先决条件,所以,若原始信号在时域中不为稀疏,则可以在采样前,添加一步稀疏变换,首先获得原始信号的稀疏域,随后在其稀疏域内进行采样,以得到采样信号。
本发明实施例提供的信号重构方式适用于不同类型的信号,例如,图像信号、雷达信号等。以图像信号为例,通过信号重构的方式,可以将采样向量重构出完整的图像。
s102:将采样向量作为初始残差值。
残差值反映了依赖于采样向量重构出的目标信号的偏差,残差值越小,说明重构得到的目标信号的准确性越高。初始状态下,可以将采样向量作为初始残差值。
s103:按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量。
重构向量用于表征采样向量中最具参考价值的数据。在进行信号的重构时往往涉及多次迭代操作,在本发明实施例中,可以将每次迭代得到的原子向量与上一次得到的重构向量进行合并作为本次迭代的重构向量。
在具体实现中,可以选取初始残差值与传感矩阵的乘积中的最大贡献数据列作为当前原子向量;将当前原子向量与上一次的重构向量合并作为当前的重构向量。其中,最大贡献数据列指的是取值最大的数据列。
s104:利用正则化规则,对重构向量以及采样向量进行重构,以得到初始重构信号。
为了降低传统方式中采用最小二乘法重构信号时的运算压力,在本发明实施例中,采用正则化方式重构信号,以提升信号重构的处理效率。
在具体实现中,可以按照如下公式计算得到初始重构信号x',
其中,α表示正则化规则的常规参数,i表示正则化规则的单元矩阵,
初始状态下,α的取值可以预先设定,例如,可以令α=10。
s105:依据初始重构信号、采样向量以及重构向量,计算初始重构信号对应的残差值。
在实际应用中,可以将重构向量与初始重构信号进行乘运算,得到的乘积值是与采样向量属于相同维度的数据。在本发明实施例中,可以按照如下公式,计算初始重构信号x'对应的残差值r,
其中,y表示采样向量,
s106:判断初始重构信号的残差值是否小于或等于预设的最小残差值。
最小残差值的取值可以根据实际需求设置,当对信号重构的准确性即精度要求较高时,可以令最小残差值的取值小一些;当对信号重构的准确性要求较低时,可以令最小残差值的取值大一些。
当残差值大于预设的最小残差值时,则说明目前重构得到的初始重构信号的精度达不到要求,此时可以执行s107;当残差值小于或等于预设的最小残差值时,则说明目前重构得到的初始重构信号的精度已经达到要求,此时可以执行s108。
s107:将残差值作为初始残差值,并返回按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量的步骤。
s108:将初始重构信号作为完成重构的目标信号。
需要说明的是,在本发明实施例中,为了便于描述,将每次重构得到的信号均称作初始重构信号。在实际应用中,初始重构信号可能是执行一次s103-s106的操作得到的重构信号,也可能是执行多次s103-s106的操作后得到的重构信号。
对于相同的采样信号其重构方式相同,为了提升重构效率,可以在残差值小于或等于预设的最小残差值时,则将初始重构信号作为完成重构的目标信号之后,将目标信号所对应的重构向量记录至预设存储空间。当后续需要对采样信号进行重构时,可以直接调用存储空间中记录的重构向量,完成采样信号的重构工作。
由上述技术方案可以看出,获取信号的采样向量和传感矩阵;其中,传感矩阵的维度与信号的维度相同;将所述采样向量作为初始残差值;按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量;利用正则化规则,对重构向量以及采样向量进行重构,以得到初始重构信号。第一次得到的初始重构信号往往不够准确,因此可以依据初始重构信号、采样向量以及重构向量,计算出当前的初始重构信号对应的残差值。判断初始重构信号的残差值是否小于或等于预设的最小残差值;当残差值大于预设的最小残差值时,则说明当前得到的初始重构信号不满足信号重构的精度要求,此时可以将残差值作为初始残差值,并返回按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量的步骤。当残差值小于或等于预设的最小残差值时,则说明当前得到的初始重构信号的精度较高,可以将当前的初始重构信号作为完成重构的目标信号。在该技术方案中,利用正则化规则替换了经典算法中耗时最多的最小二乘算法,提升了提高信号重构的效率和准确性。并且利用残差值对重构信号的精度进行评估,可以有效的排除预估稀疏度时引入的误差,进一步提升了信号重构的准确性。
图2为本发明实施例提供的一种基于压缩感知的信号重构装置的结构示意图,包括获取单元21、处理单元22、重构单元23、计算单元24、判断单元25、第一作为单元26和第二作为单元27;
获取单元21,用于获取信号的采样向量和传感矩阵;其中,传感矩阵的维度与信号的维度相同;
处理单元22,用于将采样向量作为初始残差值;按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量;
重构单元23,用于利用正则化规则,对重构向量以及采样向量进行重构,以得到初始重构信号;
计算单元24,用于依据初始重构信号、采样向量以及重构向量,计算初始重构信号对应的残差值;
判断单元25,用于判断初始重构信号的残差值是否小于或等于预设的最小残差值;
第一作为单元26,用于当残差值大于预设的最小残差值时,则将残差值作为初始残差值,并返回按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量的步骤;
第二作为单元27,用于当残差值小于或等于预设的最小残差值时,则将初始重构信号作为完成重构的目标信号。
可选地,处理单元包括选取子单元和合并子单元;
选取子单元,用于选取初始残差值与传感矩阵的乘积中的最大贡献数据列作为当前原子向量;
合并子单元,用于将当前原子向量与上一次的重构向量合并作为当前的重构向量。
可选地,重构单元具体用于按照如下公式计算得到初始重构信号'
x,
其中,α表示正则化规则的常规参数,i表示正则化规则的单元矩阵,
可选地,计算单元具体用于按照如下公式,计算初始重构信号x'对应的残差值r,
其中,y表示采样向量,
可选地,还包括记录单元;
记录单元,用于将目标信号所对应的重构向量记录至预设存储空间。
图2所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
由上述技术方案可以看出,获取信号的采样向量和传感矩阵;其中,传感矩阵的维度与信号的维度相同;将所述采样向量作为初始残差值;按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量;利用正则化规则,对重构向量以及采样向量进行重构,以得到初始重构信号。第一次得到的初始重构信号往往不够准确,因此可以依据初始重构信号、采样向量以及重构向量,计算出当前的初始重构信号对应的残差值。判断初始重构信号的残差值是否小于或等于预设的最小残差值;当残差值大于预设的最小残差值时,则说明当前得到的初始重构信号不满足信号重构的精度要求,此时可以将残差值作为初始残差值,并返回按照预设重建规则,对初始残差值和传感矩阵进行处理,以得到重构向量的步骤。当残差值小于或等于预设的最小残差值时,则说明当前得到的初始重构信号的精度较高,可以将当前的初始重构信号作为完成重构的目标信号。在该技术方案中,利用正则化规则替换了经典算法中耗时最多的最小二乘算法,提升了提高信号重构的效率和准确性。并且利用残差值对重构信号的精度进行评估,可以有效的排除预估稀疏度时引入的误差,进一步提升了信号重构的准确性。
图3为本发明实施例提供的一种基于压缩感知的信号重构装置30的硬件结构示意图,包括:
存储器31,用于存储计算机程序;
处理器32,用于执行计算机程序以实现如上述任意一项基于压缩感知的信号重构方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任意实施例所述的基于压缩感知的信号重构方法的步骤。
以上对本发明实施例所提供的一种基于压缩感知的信号重构方法、装置和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。