推广

10-19:数字信号处理课程小结

iseeyu2年前 (2024-02-21)推广117

心音信号.png

老师教我们这样处理:先进行分段,然后计算每一段的局部平均能量
和每一段的局部最大值 指一段中的时域信号。然后我们找 的峰值,S1和S2特征会出现峰值的差异。由此我们大致区分开了S1和S2。

时域处理后的结果.png

3.STFT

以下代码大部分来自课上老师:

# -*- coding: utf-8 -*-
"""
Created on Sun Oct 18 16:22:25 2020

@author: qx-HW
"""
import matplotlib.pyplot as plt
import numpy as np
from numpy.lib.stride_tricks import as_strided
#时频原子参数
N = 3000
fs = 1000
alpha = 100
t = np.arange(0,N)*(1/fs)
t0 = 0.4
f0 = 0
f1 = 100
f = (f1-f0)*t+f0

sig = ((alpha/np.pi)**0.25)*np.exp(-0.5*alpha*(t-t0)*(t-t0))*np.sin(2*np.pi*f*t)
plt.figure(figsize=(12,4))
plt.plot(t,sig,linewidth=2)
plt.show()

#fft点数以及频率轴
nfft = N
half_fs = nfft//2
ff = fs*np.arange(0,half_fs+1)/(2*half_fs)

segL = 32               # 这个是每一小段的长度
overlap = 10     
def FenDuan(segL,overlap,sig,N):
    #信号分段
    #计算需要多少段 
    delta = segL-overlap
    
    # 这里算需要多少段,(N-overlap)/(M-overlap ),M表示段长
    segNum = np.int32(np.ceil((N-overlap)/delta));
    
    #扩展信号:看最后有没有多出来一点,补0处理
    padNum = segNum*delta+overlap-N
    if padNum==0:
        sigEx = sig
    elif padNum>0:
        sigEx = np.hstack((sig,np.zeros(padNum)))    
    
    #分段标签:其实就是找每一段的起始位置
    segIdx = np.arange(0,segNum)*delta
    #生成分段矩阵
    segMat = as_strided(sigEx,shape=(segNum,segL),strides=(sigEx.strides[0]*delta,sigEx.strides[0]))
    return segMat,segIdx

segMat,segIdx = FenDuan(segL,overlap,sig,N)

pMat = np.fft.fft(segMat) # (19,64)

'''
coutour([X, Y,] Z,[levels], **kwargs)
https://matplotlib.org/api/_as_gen/matplotlib.pyplot.contourf.html
是来绘制等高线的函数,X,Y确定低下的平面坐标,Z确定三维的高度坐标,levels确定轮廓线/区域的数量和位置
'''
plt.contourf(t[segIdx], ff[:pMat.shape[1]], pMat[:,0:half_fs+1].T,50)
plt.show()

plt.contourf(t[segIdx], ff[:pMat.shape[1]//2], pMat[:,:pMat.shape[1]//2].T,30)
plt.show()

image.png

image.png

从代码上来看,就是对一个信号进行分段,然后每段做FFT,然后可视化出来。

集合网络资料和课本对短时傅里叶变换进行一些梳理和总结:

  • 通过时间窗内的一段信号来表示某一时刻的信号特征。窗的长度决定频谱图的时间分辨率和频率分辨率。窗长越长,截取的信号越长。
  • 信号越长,傅里叶变换后的频率分辨率越高,时间分辨率越差。相反,窗长越短,截取的信号就越短,频率分辨率越差,时间分辨率越好。
  • 时间和频率是一对不可兼得的矛盾体,所以绝对意义的瞬时频率是不存在的,只能分时段。在短时傅里叶变换中,时间分辨率和频率分辨率之间不能兼得,应该根据具体需求进行取舍。

短时傅里叶变换就是先把一个函数和窗函数进行相乘,然后再进行一维的傅里叶变换。并通过窗函数的滑动得到一系列的傅里叶变换结果,将这些结果竖着排开得到一个二维的表象。

  • 傅里叶变换后,横轴为频率,纵轴为幅值。短时傅里叶变换后,横轴为时间,纵轴为频率

扫描二维码推送至手机访问。

版权声明:本文由西安泽虎代运营发布,如需转载请注明出处。

转载请注明出处https://www.0291.com.cn/post/57087.html

相关文章

网盘外链能作为外链建设的渠道吗介绍网盘外链的具体操作。

网盘外链能作为外链建设的渠道吗介绍网盘外链的具体操作。

网盘外链是什么? 简单地说,网盘外链的外部链是由文本链接使用网盘的共享页创建的外部链的形式,它通常出现在网盘的标题和网盘内容共享的介绍中。 网盘外链的发展: SEO的外链在早期被广泛应用。主要载体来自早期的华为网盘,由于华为网盘当时推出了支付服务,可以批量生成共享链接。这促使大量的外链人员加入...

人自己也是一种财富

古典经济时代的巅峰之作 闻名世界的货币理论经典 欧文·费雪(Irving Fisher, 1867—1947)是20世纪前半叶美国著名的新古典经济学家。他的主要经济思想和影响集中在货币利息理论和价值理论,其中尤以货币理论享誉世界。 《货币的购买力》不只因论证的真...

分享做好新闻营销,只需三步。

分享做好新闻营销,只需三步。

新闻全是大家生活起居中关键的消息来源,看新闻变成了基本上每一个人的平时主题活动之一。那么新闻营销达到什么境界才算成功喃?想要做好新闻营销,仅需! 初级境界:变亮点为焦点 任何新闻营销都有其明显的商业目的。在目的基础上,发散性的创造一些想法,这种带有极强的功利性的电子,往往只是一个亮点、...

具体介绍常见的seo优化四大盲区。

具体介绍常见的seo优化四大盲区。

随着电子商务的发展,许多企业使用网站搜索引擎优化来提高品牌有名度。搜索引擎优化有很多方法和技术。关键是如何优化。许多搜索引擎优化者不知道搜索引擎优化的常见盲区。那么,SEO优化的盲区是什么?让我们看一下具体的介绍和一个小版本。   随着百度、360、搜狗、神马等主要搜索引擎算法...

企业SEO优化效果不好是哪些因素导致的呢。

企业SEO优化效果不好是哪些因素导致的呢。

构建网站后,seo的优化是非常重要的连接。企业希望尽快取得高流量和高排名,但是长期优化后效果不太好 (1)根据外部原因优化seo百度排名 搜索结果总是更新算法,seo优化较慢,周期时间较长。但是,这对于seo优化的网站来说未必是好事。 (2)网站内容缺乏强化和构建SEO百度排名优化...

网站页面优化需要注意的因素。

网站页面优化需要注意的因素。

由于互联网的普及,互联网已成为我们生活中不可缺少的一部分,它也为我们的生活带来了许多方便。特别对一些企业而言,建立企业网站对企业发展是非常有益的,而且优化网站也是一项必要的工作,那么在进行网站页面优化时有哪些因素值得注意呢? 一、网站页面优化 页面优化可以增加网站的访问量,因此网站的页面是非常重...

现在,非常期待与您的又一次邂逅

我们努力让每一部企业宣传片和抖音短视频成为商业大片