采样次数与频率的关系

采样次数(Sampling Points)

在给定时间内记录信号值的次数。
假设在1秒内对一个连续信号采样10次,这意味着每0.1秒记录一次信号值。
假设在1秒内对一个连续信号采样100次,这意味着每0.01秒记录一次信号值。

频率(Frequency):

信号在单位时间内重复自身的次数。
cos(8.5t) 表示一个频率为8.5Hz的余弦波,意味着每秒周期性地重复8.5次

如何去观察cos(8.5t) 中这8.5次

就跟采样次数有关了,采样次数设置的过少,可能就观察不到。
比如采样次数设置10hz,那么在1秒内,只观察到一个半周期:
采样次数与频率的关系_第1张图片加大采样次数为20,50,100,1000,10000
采样次数与频率的关系_第2张图片采样次数与频率的关系_第3张图片采样次数与频率的关系_第4张图片采样次数与频率的关系_第5张图片采样次数与频率的关系_第6张图片可以看到当采样次数达到100时,就可以看到8.5个周期了,1000时更好,10000时和1000看不出太大区别了。
采样次数与频率的关系_第7张图片附上代码python

# 设定采样率和采样时间
sampling_rate = [10,20,50,100,1000,10000]  # 采样率1000 Hz
total_time = 1       # 总时间1秒

for i in sampling_rate:
    
    # 生成时间向量
    t = np.linspace(0, total_time, int(total_time * i), endpoint=False)

    # 定义信号 V(t) = cos(8.5t)
    V = np.cos(8.5 * 2 * np.pi * t)  # 2π乘以频率转换为弧度/秒,w=2πf

    plt.plot(t,V)
    plt.title('%d hz, total_time=%ss'%(i,total_time))
    plt.show()

这么看总时2秒的话,应该有8.5*2=17个周期试一下,把total_time 改成2.
采样次数与频率的关系_第8张图片采样次数与频率的关系_第9张图片采样次数与频率的关系_第10张图片采样次数与频率的关系_第11张图片采样次数与频率的关系_第12张图片数一下,1000hz时确实是17个周期。

你可能感兴趣的:(数字信号处理,python,信号处理,算法)