Python实现《合成孔径雷达成像——算法与实现》图3.13

Python实现《合成孔径雷达成像——算法与实现》图3.13。
在这里插入图片描述

import matplotlib.pyplot as plt
import numpy as np
import math
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus']=False    #用来正常显示负号
#信号持续时间T=7.24us,信号带宽B=5.8MHz,将过采样率设为5是为了更清晰地观测信号波形
T = 10e-6                   # 脉冲持续时间
B = 15e6                    # 脉冲带宽
K = B/T                     # 调频率
ratio = 5                   # 过采样率
Fs = ratio*B                # 采样频率
dt = 1/Fs                   # 采样间隔
N = math.ceil(T/dt)         # 采样点数

t = np.arange((0-N/2)/N*T,(N-N/2)/N*T,dt)       # 时间轴
st0 = np.exp(1j*math.pi*K*np.multiply(t-T/5, t-T/5))      # 生成基本信号
space1 = np.zeros(round(N/5))                  # 生成空信号
space2 = np.zeros(N)                           # 生成空信号
st = [space1,st0,space2,st0,space2,st0,space1] #实际信号
st = [y for x in st for y in x]
N1 =len(st)
f = np.linspace((0-N1/2)/N1*Fs,(N1-N1/2)/N1*Fs,N1)     # 频率轴
space = np.zeros(N1-len(st0))
Sf = np.fft.fftshift(np.fft.fft(st))                # FFT
a = np.conj(np.flip(st0))
b = space
e = [a,b]#补0
e = [y for x in e for y in x]
Hf1 = np.fft.fftshift(np.fft.fft(e))        # 方式1的匹配滤波器:时间反褶后取复共轭,计算N点补零DFT

a = st0
b = space
e = [a,b]#补0
e = [y for x in e for y in x]
Hf2 = np.fft.fftshift(np.conj(np.fft.fft(e)))   # 方式2的匹配滤波器:补零后计算DFT,对结果取复共轭
Hf3 = np.exp(1j*math.pi*np.multiply(f,f)/K)     # 方式3频域匹配滤波器

Out1 = np.fft.ifft(np.fft.ifftshift(Sf*Hf1))
Out2 = np.fft.ifft(np.fft.ifftshift(Sf*Hf2))
Out3 = np.fft.ifft(np.fft.ifftshift(Sf*Hf3))


plt.figure(1)
plt.subplot(4,1,1)
plt.plot(np.real(st))
plt.axis('tight')
plt.title('(a)输入阵列信号的实部')
plt.ylabel('幅度')
plt.subplot(4,1,2)
plt.plot(np.abs(Out1))
plt.axis('tight')
plt.title('(b)方式1的匹配滤波输出')
plt.ylabel('幅度')
plt.subplot(4,1,3)
plt.plot(np.abs(Out2))
plt.axis('tight')
plt.title('(c)方式2的匹配滤波输出')
plt.ylabel('幅度')
plt.subplot(4,1,4)
plt.plot(np.abs(Out3))
plt.axis('tight')
plt.title('(d)方式3的匹配滤波输出')
plt.xlabel('时间(采样点)')
plt.ylabel('幅度')
plt.show()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值