电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Python 基于FIR實現Hilbert濾波器求信號包絡詳解

瀏覽:6日期:2022-08-06 09:15:28

在通信領域,可以通過希爾伯特變換求解解析信號,進而求解窄帶信號的包絡。

實現希爾伯特變換有兩種方法,一種是對信號做FFT,單后只保留單邊頻譜,在做IFFT,我們稱之為頻域方法;另一種是基于FIR根據傳遞函數設計一個希爾伯特濾波器,我們稱之為時域方法。

# -*- coding:utf8 -*-# @TIME : 2019/4/11 18:30# @Author : SuHao# @File : hilberfilter.pyimport scipy.signal as signalimport numpy as npimport librosa as libimport matplotlib.pyplot as pltimport time# from preprocess_filter import *# 讀取音頻文件ex = ’....數據集2pre2012bfluteBassFlute.ff.C5B5.aiff’time_series, fs = lib.load(ex, sr=None, mono=True, res_type=’kaiser_best’)# 生成一個chirp信號# duration = 2.0# fs = 400.0# samples = int(fs*duration)# t = np.arange(samples) / fs# time_series = signal.chirp(t, 20.0, t[-1], 100.0)# time_series *= (1.0 + 0.5 * np.sin(2.0*np.pi*3.0*t) )def hilbert_filter(x, fs, order=201, pic=None): ’’’ :param x: 輸入信號 :param fs: 信號采樣頻率 :param order: 希爾伯特濾波器階數 :param pic: 是否繪圖,bool :return: 包絡信號 ’’’ co = [2*np.sin(np.pi*n/2)**2/np.pi/n for n in range(1, order+1)] co1 = [2*np.sin(np.pi*n/2)**2/np.pi/n for n in range(-order, 0)] co = co1+[0]+ co # out = signal.filtfilt(b=co, a=1, x=x, padlen=int((order-1)/2)) out = signal.convolve(x, co, mode=’same’, method=’direct’) envolope = np.sqrt(out**2 + x**2) if pic is not None: w, h = signal.freqz(b=co, a=1, worN=2048, whole=False, plot=None, fs=2*np.pi) fig, ax1 = plt.subplots() ax1.set_title(’hilbert filter frequency response’) ax1.plot(w, 20 * np.log10(abs(h)), ’b’) ax1.set_ylabel(’Amplitude [dB]’, color=’b’) ax1.set_xlabel(’Frequency [rad/sample]’) ax2 = ax1.twinx() angles = np.unwrap(np.angle(h)) ax2.plot(w, angles, ’g’) ax2.set_ylabel(’Angle (radians)’, color=’g’) ax2.grid() ax2.axis(’tight’) # plt.savefig(pic + ’hilbert_filter.jpg’) plt.show() # plt.clf() # plt.close() return envolopestart = time.time()env0 = hilbert_filter(time_series, fs, 81, pic=True)end = time.time()a = end-startprint(a)plt.figure()ax1 = plt.subplot(211)plt.plot(time_series)ax2 = plt.subplot(212)plt.plot(env0)plt.xlabel(’time’)plt.ylabel(’mag’)plt.title(’envolope of music by FIR n time:%.3f’%a)plt.tight_layout()start = time.time()# 使用scipy庫函數實現希爾伯特變換env = np.abs(signal.hilbert(time_series))end = time.time()a = end-startprint(a)plt.figure()ax1 = plt.subplot(211)plt.plot(time_series)ax2 = plt.subplot(212)plt.plot(env)plt.xlabel(’time’)plt.ylabel(’mag’)plt.title(’envolope of music by scipy n time:%.3f’%a)plt.tight_layout()plt.show()

使用chirp信號對兩種方法進行比較

FIR濾波器的頻率響應

Python 基于FIR實現Hilbert濾波器求信號包絡詳解

使用音頻信號對兩種方法進行比較

由于音頻信號時間較長,采樣率較高,因此離散信號序列很長。使用頻域方法做FFT和IFFT要耗費比較長的時間;然而使用時域方法只是和濾波器沖擊響應做卷積,因此運算速度比較快。結果對比如下:

頻域方法結果

Python 基于FIR實現Hilbert濾波器求信號包絡詳解

時域方法結果

Python 基于FIR實現Hilbert濾波器求信號包絡詳解

由此看出,時域方法耗費時間要遠小于頻域方法。

以上這篇Python 基于FIR實現Hilbert濾波器求信號包絡詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 热镀锌槽钢|角钢|工字钢|圆钢|H型钢|扁钢|花纹板-天津千百顺钢铁贸易有限公司 | 宁夏活性炭_防护活性炭_催化剂载体炭-宁夏恒辉活性炭有限公司 | 防水套管|柔性防水套管|伸缩器|伸缩接头|传力接头-河南伟创管道 防水套管_柔性防水套管_刚性防水套管-巩义市润达管道设备制造有限公司 | 数显水浴恒温振荡器-分液漏斗萃取振荡器-常州市凯航仪器有限公司 | 合肥抖音SEO网站优化-网站建设-网络推广营销公司-百度爱采购-安徽企匠科技 | 环氧乙烷灭菌器_压力蒸汽灭菌器_低温等离子过氧化氢灭菌器 _低温蒸汽甲醛灭菌器_清洗工作站_医用干燥柜_灭菌耗材-环氧乙烷灭菌器_脉动真空压力蒸汽灭菌器_低温等离子灭菌设备_河南省三强医疗器械有限责任公司 | 领袖户外_深度旅游、摄影旅游、小团慢旅行、驴友网 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 金现代信息产业股份有限公司--数字化解决方案供应商 | 济南菜鸟驿站广告|青岛快递车车体|社区媒体-抖音|墙体广告-山东揽胜广告传媒有限公司 | 幂简集成 - 品种超全的API接口平台, 一站搜索、试用、集成国内外API接口 | 食品机械专用传感器-落料放大器-低价接近开关-菲德自控技术(天津)有限公司 | 微信聊天记录恢复_手机短信删除怎么恢复_通讯录恢复软件下载-快易数据恢复 | 塑料撕碎机_编织袋撕碎机_废纸撕碎机_生活垃圾撕碎机_废铁破碎机_河南鑫世昌机械制造有限公司 | 合金ICP光谱仪(磁性材料,工业废水)-百科 | 超声波成孔成槽质量检测仪-压浆机-桥梁预应力智能张拉设备-上海硕冠检测设备有限公司 | 亿诺千企网-企业核心产品贸易 | 无纺布包装机|径向缠绕包装机|缠绕膜打包机-上海晏陵智能设备有限公司 | 上海宿田自动化设备有限公司-双面/平面/单面贴标机 | 砍排机-锯骨机-冻肉切丁机-熟肉切片机-预制菜生产线一站式服务厂商 - 广州市祥九瑞盈机械设备有限公司 | 玻璃钢型材-玻璃钢风管-玻璃钢管道,生产厂家-[江苏欧升玻璃钢制造有限公司] | U拓留学雅思一站式服务中心_留学申请_雅思托福培训 | 耐火浇注料-喷涂料-浇注料生产厂家_郑州市元领耐火材料有限公司 耐力板-PC阳光板-PC板-PC耐力板 - 嘉兴赢创实业有限公司 | 上海单片机培训|重庆曙海培训分支机构—CortexM3+uC/OS培训班,北京linux培训,Windows驱动开发培训|上海IC版图设计,西安linux培训,北京汽车电子EMC培训,ARM培训,MTK培训,Android培训 | 周口风机|周风风机|河南省周口通用风机厂 | 重庆钣金加工厂家首页-专业定做监控电视墙_操作台 | 窖井盖锯圆机_锯圆机金刚石锯片-无锡茂达金刚石有限公司 | 隆众资讯-首页_大宗商品资讯_价格走势_市场行情 | 知网论文检测系统入口_论文查重免费查重_中国知网论文查询_学术不端检测系统 | 好物生环保网、环保论坛 - 环保人的学习交流平台 | BAUER减速机|ROSSI-MERSEN熔断器-APTECH调压阀-上海爱泽工业设备有限公司 | 色谱柱-淋洗液罐-巴罗克试剂槽-巴氏吸管-5ml样品瓶-SBS液氮冻存管-上海希言科学仪器有限公司 | 超声波电磁流量计-液位计-孔板流量计-料位计-江苏信仪自动化仪表有限公司 | 杭州公司变更法人-代理记账收费价格-公司注销代办_杭州福道财务管理咨询有限公司 | 湖南长沙商标注册专利申请,长沙公司注册代理记账首选美创! | 立式矫直机_卧式矫直机-无锡金矫机械制造有限公司 | 标策网-专注公司商业知识服务、助力企业发展 | 反渗透水处理设备|工业零排放|水厂设备|软化水设备|海南净水设备--海南水处理设备厂家 | 驾驶人在线_专业学车门户网站 | 鄂泉泵业官网|(杭州、上海、全国畅销)大流量防汛排涝泵-LW立式排污泵 | 不锈钢钢格栅板_热浸锌钢格板_镀锌钢格栅板_钢格栅盖板-格美瑞 |