发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种实现方法简单、计算量小、复杂度低,且使用不受限制的获取实时脉冲多普勒谱的方法及装置。
为解决上述技术问题,本发明提出的技术方案为:
一种获取实时脉冲多普勒谱的方法,步骤包括:
S01.系数矩阵确定:根据所需计算的点数确定用于计算脉冲多普勒谱的系数矩阵;
S02.多普勒谱计算:实时接收回波脉冲数据并根据所述系数矩阵计算回波脉冲数据的脉冲多普勒谱,且每次计算时,使用前一个脉冲回波数据所计算得到的脉冲多普勒谱,计算当前获取的脉冲回波数据的脉冲多普勒谱。
作为本发明方法的进一步改进:所述步骤S02中计算脉冲多普勒谱时,具体预先确定参与计算脉冲多普勒的回波脉冲数量阈值N,当接收到的回波脉冲数据超过N时,由获取的最新回波脉冲数据对参与计算脉冲多普勒的回波脉冲数据进行更新,对更新后的回波脉冲数据计算脉冲多普勒谱。
作为本发明方法的进一步改进,所述步骤S02的具体步骤为:
S201.定义用于缓存N个回波脉冲数据的缓冲矩阵B;
S202.每次接收回波脉冲数据时,判断所接收到的回波脉冲数据是否超过回波脉冲数量阈值N,如果否,转入执行步骤S203,否则转入执行步骤S34;
S203.根据前一个回波脉冲数据所计算得到的脉冲多普勒谱、所述缓冲矩阵B中缓存数据以及所述步骤S01确定的系数矩阵,计算得到当前回波脉冲数据在各距离单元的脉冲多普勒谱,并使用当前回波脉冲数据更新所述缓冲矩阵B;
S204.根据前一个回波脉冲数据所计算得到的脉冲多普勒谱、所述缓冲矩阵B中缓冲数据、当前回波脉冲数据以及所述步骤S01确定的系数矩阵,计算得到当前回波脉冲数据在各距离单元的脉冲多普勒谱,并使用最新的回波脉冲数据更新所述缓冲矩阵B,以去除所述缓冲矩阵中第一个回波脉冲数据。
作为本发明方法的进一步改进:所述步骤S203中,具体采用下式计算当前回波脉冲数据在各距离单元的脉冲多普勒谱;
Sn(m,:)=Sn-1(m,:)+Bn(m,n)*C(n,:);
其中,Sn(m,:)为第n个回波脉冲数据在第m个距离单元的脉冲多普勒谱,Sn-1(m,:)为第n-1个回波脉冲数据在第m个距离单元的脉冲多普勒谱,Bn(m,n)为第n个缓冲矩阵中第n个回波脉冲数据在第m个距离单元的值,C(n,:)为所述系数矩阵的第n行矢量;
计算得到第n个回波脉冲数据Pn(M)在所有M个距离单元的脉冲多普勒谱Sn(M,K)后,具体采用下式更新所述缓冲矩阵B;
Bn(:,n)=Pn(M);
其中Bn(:,n)为第n个缓冲矩阵中第n个回波脉冲的全部距离单元矢量,M为距离单元的数量。
作为本发明方法的进一步改进:具体采用下式计算当前回波脉冲数据在各距离单元的脉冲多普勒谱;
Sn(m,:)=[Sn-1(m,:)-Bn-1(m,n-1)]*C*(2,:)+Pn(m)*C(N,:);
其中,Sn(m,:)为第n个回波脉冲数据在第m个距离单元的脉冲多普勒谱,Sn-1(m,:)为第n-1个回波脉冲数据在第m个距离单元的脉冲多普勒谱,Bn-1(m,n-1)为第n-1个缓冲矩阵中第n-1个回波脉冲数据在第m个距离单元的值,C*(2,:)为所述系数矩阵的共轭矩阵中第2行矢量,Pn(m)为第n个回波脉冲数据,C(N,:)为所述系数矩阵的第N行矢量。
作为本发明方法的进一步改进:计算得到第n个回波脉冲数据Pn(M)在所有M个距离单元的脉冲多普勒谱Sn(M,K)后,具体采用下式更新所述缓冲矩阵B;
Bn(:,1:(N-1))=Bn-1(:,2:N);
Bn(:,N)=Pn(M);
其中,Bn(:,1:(N-1))为第n个缓冲矩阵中第1个到第N-1个回波脉冲的全部距离单元矢量,Bn(:,2:N)为第n个缓冲矩阵中第2个到第N个回波脉冲的全部距离单元矢量,Bn(:,N)为第n个缓冲矩阵中第N个回波脉冲的全部距离单元矢量。
作为本发明方法的进一步改进:所述系数矩阵具体为采用下式计算到的复系数矩阵C、共轭矩阵C*;
CK×K(p,q)=exp{-2πj*(p-1)(q-1)/K};
其中,p=1,2,…,K,q=1,2,…,K,j为虚数单位,conj{·}表示复数的共轭运算,K为所需计算的点数。
一种获取实时脉冲多普勒谱获取装置,包括:
系数矩阵确定模块,用于根据所需计算的点数确定用于计算脉冲多普勒谱的系数矩阵;
多普勒谱计算模块,用于实时接收回波脉冲数据并根据所述系数矩阵计算回波脉冲数据的脉冲多普勒谱,且每次计算时,使用前一个脉冲回波数据所计算得到的脉冲多普勒谱,计算当前获取的脉冲回波数据的脉冲多普勒谱。
作为本发明装置的进一步改进:所述多普勒谱计算模块计算脉冲多普勒谱时,具体预先确定参与计算脉冲多普勒的回波脉冲数量阈值N,当接收到的回波脉冲数据超过N时,由获取的最新回波脉冲数据对参与计算脉冲多普勒的回波脉冲数据进行更新后,对更新后的回波脉冲数据计算脉冲多普勒谱。
作为本发明装置的进一步改进:所述多普勒谱计算模块具体包括:
缓冲矩阵定义单元,用于定义用于缓存N个回波脉冲数据的缓冲矩阵B;
判断单元,用于每次接收回波脉冲数据时,判断所接收到的回波脉冲数据是否超过回波脉冲数量阈值N,如果否,转入执行第一计算单元,否则转入执行第二计算单元;
第一计算单元,用于根据前一个回波脉冲数据所计算得到的脉冲多普勒谱、所述缓冲矩阵B中缓存数据以及所述系数矩阵确定模块确定的系数矩阵,计算得到当前回波脉冲数据在各距离单元的脉冲多普勒谱,并使用当前回波脉冲数据更新所述缓冲矩阵B;
第二计算单元,用于根据前一个回波脉冲数据所计算得到的脉冲多普勒谱、所述缓冲矩阵B中缓冲数据、当前回波脉冲数据以及所述步骤S01确定的系数矩阵,计算得到当前回波脉冲数据在各距离单元的脉冲多普勒谱,并使用最新的回波脉冲数据更新所述缓冲矩阵B,以去除所述缓冲矩阵中第一个回波脉冲数据。
与现有技术相比,本发明的优点在于:
1)本发明获取实时脉冲多普勒谱的方法及装置,通过根据所需计算的点数确定系数矩阵后计算脉冲多普勒谱,且每次计算脉冲多普勒谱时,仅使用前一个脉冲回波数据的脉冲多普勒谱计算当前脉冲回波数据的脉冲多普勒谱,即每次计算脉冲多普勒,只需利用前一次脉冲回波数据的脉冲多普勒对本次的脉冲多普勒谱进行更新,使得无需对全部的回波数据进行计算,可以减少大量的重复计算,计算过程简单、计算复杂度低,因而多普勒谱的实时性以及获取效率高;
2)本发明获取实时脉冲多普勒谱的方法及装置,通过设定参与脉冲多普勒计算的回波脉冲数量阈值,对于超过回波脉冲数量阈值的回波脉冲数据,则由获取的最新回波脉冲数据对参与计算脉冲多普勒的回波脉冲数据进行更新,再进行脉冲多普勒谱的计算,使得能够及时对当前脉冲回波进行更新,以去除旧的脉冲回波,保证能够实时反映目标信息的变换和更新;
3)本发明获取实时脉冲多普勒谱的方法及装置,通过定义用于缓存指定大小的回波脉冲数据的缓冲矩阵,基于缓冲矩阵计算回波脉冲多普勒谱,无需等待缓冲矩阵积满,均能够随着得到的回波脉冲数据实时地计算更新脉冲多普勒谱,且无需复杂的完整傅里叶变换,仅需少量的加法、乘法运算进行更新,实时性以及获取效率更高。
具体实施方式
以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
如图1、2所示,假定Pn(M)表示第n个回波脉冲,每个回波脉冲包含M个距离单元,目标的位置落在第m个距离单元,本实施例获取实时脉冲多普勒谱的方法步骤包括:
S01.系数矩阵确定:根据所需计算的点数确定用于计算脉冲多普勒谱的系数矩阵。
在具体实施例中,复系数矩阵C、共轭矩阵C*分别为K×K的矩阵,计算公式分别为;
CK×K(p,q)=exp{-2πj*(p-1)(q-1)/K} (1)
其中,p=1,2,…,K,q=1,2,…,K,j为虚数单位,conj{·}表示复数的共轭运算,K为所需计算的点数。
本实施例脉冲多普勒的点数K可根据实际需求任意设置,对于不同脉冲多普勒谱计算点数K,按照上述确定对应的复系数矩阵C、共轭矩阵C*,再基于确定的复系数矩阵C、共轭矩阵C*即可计算对应的脉冲多普勒谱,不受计算点数限制,可实现任意点数的脉冲多普勒谱计算。
S02.多普勒谱计算:实时接收回波脉冲数据并根据系数矩阵计算回波脉冲数据的脉冲多普勒谱,且每次计算时,使用前一个脉冲回波数据所计算得到的脉冲多普勒谱,计算当前获取的脉冲回波数据的脉冲多普勒谱。
本实施例通过仅使用前一个脉冲回波数据的脉冲多普勒谱,来计算当前脉冲回波数据的脉冲多普勒谱,即每次计算脉冲多普勒,只需利用前一次脉冲回波数据的脉冲多普勒对本次的脉冲多普勒谱进行更新,使得无需对全部的回波数据进行计算,可以减少大量的重复计算,使得计算过程简单、计算复杂度低。
如图2所示,对于第m个距离单元,前n个脉冲回波数据与前n+1个脉冲回波数据之间的脉冲回波数据存在重复,若每次计算脉冲多普勒谱时均基于全部脉冲回波数据进行计算,则对应的脉冲多普勒存在重复计算部分。本实施例相对于前n个脉冲回波数据的脉冲多普勒谱,计算前n+1个脉冲回波数据的脉冲多普勒谱时,只需更新第n+1个脉冲回波数据引入的新的脉冲数据信息,无需计算全部的n+1脉冲回波数据的脉冲多普勒。
在具体实施例中,步骤S02中计算脉冲多普勒谱时,具体预先确定参与计算脉冲多普勒的回波脉冲数量阈值N,当接收到的回波脉冲数据超过N时,由获取的最新回波脉冲数据对参与计算脉冲多普勒的回波脉冲数据进行更新后,对更新后的回波脉冲数据计算脉冲多普勒谱。
考虑到脉冲回波数据数量较多时,若基于全部的脉冲回波数据计算脉冲多普勒谱,则无法及时反映目标信息的变换和更新,本实施例通过预先确定参与脉冲多普勒计算的回波脉冲数量阈值N,使得当接收的脉冲回波数据达到阈值N时,能够及时对当前N个脉冲回波进行更新,以去除旧的脉冲回波,再进行脉冲多普勒谱的计算,保证能够实时反映目标信息的变换和更新。
如图3所示,在具体实施例中步骤S02的具体步骤为:
S201.定义用于缓存N个回波脉冲数据的缓冲矩阵B,缓冲矩阵B大小为M×N。
S202.每次接收回波脉冲数据时,判断所接收到的回波脉冲数据是否超过回波脉冲数量阈值N,如果否,转入执行步骤S203,否则转入执行步骤S34;
S203.根据前一个回波脉冲数据所计算得到的脉冲多普勒谱、缓冲矩阵B中缓存数据以及步骤S01确定的系数矩阵,计算得到当前回波脉冲数据在各距离单元的脉冲多普勒谱,并使用当前回波脉冲数据更新缓冲矩阵B;
S204.根据前一个回波脉冲数据所计算得到的脉冲多普勒谱、缓冲矩阵B中缓冲数据、当前回波脉冲数据以及步骤S01确定的系数矩阵,计算得到当前回波脉冲数据在各距离单元的脉冲多普勒谱,并使用最新的回波脉冲数据更新缓冲矩阵B,以去除缓冲矩阵中第一个回波脉冲数据。
步骤S203中,所接收到的回波脉冲数据n未超过回波脉冲数量阈值N(1≤n≤N),具体采用式(3)计算当前回波脉冲数据在各距离单元的脉冲多普勒谱;
Sn(m,:)=Sn-1(m,:)+Bn(m,n)*C(n,:) (3)
其中,Sn(m,:)为第n个回波脉冲数据在第m个距离单元的脉冲多普勒谱,Sn-1(m,:)为第n-1个回波脉冲数据在第m个距离单元的脉冲多普勒谱,Bn(m,n)为第n个缓冲矩阵中第n个回波脉冲数据在第m个距离单元的值,C(n,:)为系数矩阵的第n行矢量;
计算得到第n个回波脉冲数据Pn(M)在所有M个距离单元的脉冲多普勒谱Sn(M,K)后,具体采用式(4)更新缓冲矩阵B;
Bn(:,n)=Pn(M) (4)
其中Bn(:,n)为,M为距离单元的数量。
如图2、3所示,对于其第m个距离单元,当得到第n(1≤n≤N)个回波脉冲数据Pn(M)时,对于第m个距离单元,采用上述公式(3)计算得到该距离单元的脉冲多普勒谱Sn(m,K),依次对全部M个距离单元的回波脉冲数据进行计算,得到第n(1≤n≤N)个回波脉冲时刻的全部距离单元的脉冲多普勒谱Sn(M,K),并按照公式(4)更新缓冲矩阵B,完成N个内的回波脉冲数据的多普勒谱计算。
步骤S204中,所接收到的回波脉冲数据n超过回波脉冲数量阈值N(n≥N+1),具体采用式(5)计算当前回波脉冲数据在各距离单元的脉冲多普勒谱;
Sn(m,:)=[Sn-1(m,:)-Bn-1(m,n-1)]*C*(2,:)+Pn(m)*C(N,:) (5)
其中,Sn(m,:)为第n个回波脉冲数据在第m个距离单元的脉冲多普勒谱,Sn-1(m,:)为第n-1个回波脉冲数据在第m个距离单元的脉冲多普勒谱,Bn-1(m,n-1)为第n-1个缓冲矩阵中第-1个回波脉冲数据在第m个距离单元的值,C*(2,:)为系数矩阵的共轭矩阵中第2行矢量,Pn(m)为第n个回波脉冲数据,C(N,:)为系数矩阵的第N行矢量。
计算得到第n个回波脉冲数据Pn(M)在所有M个距离单元的脉冲多普勒谱Sn(M,K)后,具体采用式(6)、(7)更新缓冲矩阵B;
Bn(:,1:(N-1))=Bn-1(:,2:N) (6)
Bn(:,N)=Pn(M) (7)
其中,Bn(:,1:(N-1))为第n个缓冲矩阵中第1个到第N-1个回波脉冲的全部距离单元矢量,Bn(:,2:N)为第n个缓冲矩阵中第2个到第N个回波脉冲的全部距离单元矢量,Bn(:,N)为第n个缓冲矩阵中第N个回波脉冲的全部距离单元矢量。由公式(6)、(7)使得去除缓冲矩阵B的第一个回波脉冲数据矢量B(:,1),并将Pn(M)写入缓冲矩阵,从而用最新的回波脉冲数据Pn(M)更新缓冲矩阵B。
由于第n-1个回波脉冲的脉冲多普勒谱Sn-1(m,k)计算时:
Bn(m,:)=Bn-1(m,:)-B1(m,1)+Pn(:) (8)
则由第n-1个回波脉冲的脉冲多普勒谱Sn-1(m,k)计算第n个回波脉冲的脉冲多普勒谱Sn(m,k)为:
即第n个回波脉冲的脉冲多普勒谱Sn(m,k)可采用上述公式(5)计算得到。
如图2、3所示,对于其第m个距离单元,当得到第n≥N+1个回波脉冲数据Pn(M)时,采用上述公式(5)计算得到该距离单元的脉冲多普勒谱Sn(m,K),依次对全部M个距离单元的回波脉冲数据进行计算后,得到第n(n≥N+1)个回波脉冲时刻的全部距离单元的脉冲多普勒谱Sn(M,K),此时缓冲矩阵B已满,则按照公式(6)、(7)更新缓冲矩阵B,完成超过N的回波脉冲数据的多普勒谱计算。即无需等待缓冲矩阵积满即可计算得到脉冲多普勒谱,无论缓冲矩阵是否积满均能够随着得到的回波脉冲数据实时地计算更新脉冲多普勒谱,实时性好,且无需复杂的完整傅里叶变换,仅需少量的加法和乘法运算,计算量少、计算复杂度低,且计算效率高。
如图3所示,在具体实施例中,首先指定所需计算的脉冲多普勒谱的点数K以及开辟M×N大小的缓冲矩阵B,并设定参与计算脉冲多普勒的回波脉冲数量阈值N;由脉冲多普勒谱的点数K按照公式(1)、(2)计算得到复系数矩阵C、共轭矩阵C*;判断当前回波脉冲的个数n是否满足n>N,如果否,按照式(3)更新计算各个距离单元的脉冲多普勒谱S(M,K),然后按照公式(4)更新缓冲矩阵B;如果是,按照公式(5)更新计算各个距离单元的脉冲多普勒谱S(M,K),然后按照公式(6)、(7)更新缓冲矩阵B,最终输出脉冲多普勒谱S(M,K),返回执行下一次计算,直至退出计算。
本实施例获取实时脉冲多普勒谱获取装置,包括:
系数矩阵确定模块,用于根据所需计算的点数确定用于计算脉冲多普勒谱的系数矩阵;
多普勒谱计算模块,用于实时接收回波脉冲数据并根据系数矩阵计算回波脉冲数据的脉冲多普勒谱,且每次计算时,使用前一个脉冲回波数据所计算得到的脉冲多普勒谱,计算当前获取的脉冲回波数据的脉冲多普勒谱。
本实施例中,多普勒谱计算模块计算脉冲多普勒谱时,具体预先确定参与计算脉冲多普勒的回波脉冲数量阈值N,当接收到的回波脉冲数据超过N时,由获取的最新回波脉冲数据对参与计算脉冲多普勒的回波脉冲数据进行更新后,对更新后的回波脉冲数据计算脉冲多普勒谱。
本实施例中,多普勒谱计算模块具体包括:
缓冲矩阵定义单元,用于定义用于缓存N个回波脉冲数据的缓冲矩阵B;
判断单元,用于每次接收回波脉冲数据时,判断所接收到的回波脉冲数据是否超过回波脉冲数量阈值N,如果否,转入执行第一计算单元,否则转入执行第二计算单元;
第一计算单元,用于根据前一个回波脉冲数据所计算得到的脉冲多普勒谱、缓冲矩阵B中缓存数据以及步骤S01确定的系数矩阵,计算得到当前回波脉冲数据在各距离单元的脉冲多普勒谱,并使用当前回波脉冲数据更新缓冲矩阵B;
第二计算单元,用于根据前一个回波脉冲数据所计算得到的脉冲多普勒谱、缓冲矩阵B中缓冲数据、当前回波脉冲数据以及步骤S01确定的系数矩阵,计算得到当前回波脉冲数据在各距离单元的脉冲多普勒谱,并使用最新的回波脉冲数据更新缓冲矩阵B,以去除缓冲矩阵中第一个回波脉冲数据。
本实施例中,系数矩阵确定模块指定所需计算的脉冲多普勒谱的点数K,由脉冲多普勒谱的点数K按照上述公式(1)、(2)计算得到复系数矩阵C、共轭矩阵C*;多普勒谱计算模块中,由判断单元判断当前回波脉冲的个数n是否满足n>N,如果否,按照上述式(3)更新计算各个距离单元的脉冲多普勒谱S(M,K),然后按照公式(4)更新缓冲矩阵B;如果是,按照上述公式(5)更新计算各个距离单元的脉冲多普勒谱S(M,K),然后按照上述公式(6)、(7)更新缓冲矩阵B,最终输出脉冲多普勒谱S(M,K),返回执行下一次计算,直至退出计算。
上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。