python巴特沃斯滤波器_用python在原始信号上应用合适的巴特沃斯滤波器
我已经从我的TI AFE4490获得了10秒的原始PPG(光体积图)信号。我的硬件被校准了,我每秒使用250个样本来记录这些信号。最后我获得了2500分。
我使用巴特沃斯带通滤波器,低截=0.5,高截=15,阶数=2。你可以看到我的原始和过滤信号如下:
我还尝试用巴特沃斯低通滤波器来过滤这个,低通滤波器为15,阶数为2。如你所见,我的原始和过滤信号如下:
我在一些文章中读到,对于这种类型的信号,0.5Hz和15Hz是良好的低截和高截频率。
在应用过滤器之前,我使用了scipy-butterworth(来自scipy docs)算法来显示过滤器响应,结果很好。
我的过滤信号在“开始”之后似乎很好(在开始时提升),但我不知道为什么要开始。有人能告诉我“开始”在巴特沃斯过滤器是不是正常?如果是,有什么方法可以解决?
感谢您的帮助。
red,ir,nsamples,srate=getafesignal()。
周期=1/srate信号周期。
#所需的截止频率(赫兹)和滤波器顺序。
低割=0.5
高割=15
订单=2
PLT .图(1)
x=np.linspace(0,nsamples*句点,nsamples,endpoint=true)
PLT.子批次(2、1、1)
Y=IR
plt.xlabel('时间)
plt.ylabel(“电压(V)”)
plt.plot(x,y,label='噪声信号')
PLT.子批次(2、1、2)
yf=黄油带通滤波器(IR、低截、高截、N示例、订单=订单)
plt.xlabel('时间)
plt.ylabel(“电压(V)”)
plt.plot(x,yf,label='滤波信号')
GLID()
显示()
< /代码>
函数getafesignal()is just a function to read a.txt file and put all into two numpy array.
我使用巴特沃斯带通滤波器,低截=0.5,高截=15,阶数=2。您可以看到我的原始和过滤信号如下:
我还尝试用巴特沃斯低通滤波器来过滤这个,低截滤波器为15,阶数为2。如您所见,我的原始和过滤信号如下:
我在一些文章中读到,对于这种类型的信号,0.5Hz和15Hz是良好的低截和高截频率。
在应用过滤器之前,我使用了scipy-butterworth(来自scipy-docs)算法来显示过滤器的响应,结果很好。
我的过滤信号在“开始”之后似乎很好(在开始时提升),但我不知道为什么要开始。有人能告诉我“开始”在巴特沃斯过滤器是不是正常?如果是,有什么方法可以解决?
谢谢你的帮助。
我的代码:
RED, IR, nSamples, sRate = getAFESignal()
period = 1/sRate # Signal period.
# Desired cutoff frequency (in Hz) and filter order.
lowcut = 0.5
highcut = 15
orders = 2
plt.figure(1)
x = np.linspace(0, nSamples*period, nSamples, endpoint=True)
plt.subplot(2,1,1)
y = IR
plt.xlabel('Time (s)')
plt.ylabel('Voltage (V)')
plt.plot(x,y, label='Noisy signal')
plt.subplot(2,1,2)
yf = butter_bandpass_filter(IR, lowcut, highcut, nSamples, order=orders)
plt.xlabel('Time (s)')
plt.ylabel('Voltage (V)')
plt.plot(x, yf, label='Filtered signal')
plt.grid()
plt.show()
函数getAFEsignal()只是一个读取.txt文件并将其全部放入两个numpy数组的函数。
python巴特沃斯滤波器_用python在原始信号上应用合适的巴特沃斯滤波器相关推荐
- python大牛 关东升_《Python从小白到大牛》第4章 Python语法基础
本章主要为大家介绍Python的一些语法,其中包括标识符.关键字.常量.变量.表达式.语句.注释.模块和包等内容. 标识符和关键字 任何一种计算机语言都离不开标识符和关键字,因此下面将详细介绍Pyth ...
- python之禅 中文_《Python之禅》中对于Python编程过程中的一些建议
<Python之禅>中对于Python编程过程中的一些建议 来源:中文源码网 浏览: 次 日期:2018年9月2日 [下载文档: <Python之禅>中对于Pyt ...
- python随机抽取人名_用Python打造一个CRM系统(五)
在上一篇上实现了线索功能模块,在实际使用中除了线索数据除了输入的结构化数据,也有可能是来自非结构化数据,如名片.PDF文档.语音视频等.为方便线索录入,本篇中将以名片为例,实现利用OCR等技术将名片信 ...
- python画交互式地图_使用Python构建交互式地图-入门指南
python画交互式地图 Welcome to The Beginner's Guide to Building Interactive Maps in Python 欢迎使用Python构建交互式地 ...
- python出现的意义_[转]Python中下划线以及命名空间的意义
Python 用下划线作为变量前缀和后缀指定特殊变量/方法. 主要存在四种情形 1. 1. object # public 2. __object__ # special, python system ...
- python 科学计算设计_《Python科学计算-(第2版)》怎么样_目录_pdf在线阅读 - 课课家教育...
第1章 Python科学计算环境的安装与简介 1 1.1 Python简介 1 1.1.1 Python 2还是Python 3 1 1.1.2 开发环境 2 1.1.3 集成开发环境(IDE) 5 ...
- python剪辑视频 裁剪_用python进行视频剪辑
一.目标 python,利用moviepy和pydub将一段视频进行区间切割 二.源码 import os from moviepy.video.io.VideoFileClip import Vid ...
- python大数据免费_用python做大数据
不学Python迟早会被淘汰?Python真有这么好的前景? 最近几年Python编程语言在国内引起不小的轰动,有超越Java之势,本来在美国这个编程语言就是最火的,应用的非常非常的广泛,而Pytho ...
- python字符串去掉空行_从python中的字符串中删除空格
python字符串去掉空行 如何在python中删除字符串中的空格 (How to remove whitespaces in a string in python) str.lstrip()str. ...
最新文章
- MicroSoft的Office使用攻略
- linux c 多态原理,看了所谓的面向对象中靠继承多态实现的所谓重用 哥笑了
- 【常用】linux 命令是什么的缩写(命令缩写)?vi快捷键,linux操作,c语言缩写,计算机相关,其他缩写,xshell操作,apt-get命令大全
- 奇或偶数行高亮显示及鼠标划过高亮显示类
- Objective-C语法之static关键字的那些事儿(六)
- 查看某个方法在哪里被调用_一篇文章带你查看并处理Pandas数据
- Day 02 第二天课时总结
- java list 占用内存不释放_性能不打折,内存占用减少90%,Facebook提出极致模型压缩方法Quant-Noise...
- android jobb工具,android – 是什么导致jobb工具抛出FAT Full IOException?
- Java问题汇集(1)
- Greenplum分区
- css3 中心点,用css3实现打点效果实例讲解
- 6 万出头的北京房价,程序员如何靠自己安家?
- Google 开源下一代高安全性机密运算开发框架 Asylo
- Linux MySQL 常见无法启动或启动异常的解决方案
- AD采样SPS和计算能采的频率
- MongoDB的安装和基础CRUD
- 在线问卷调查数据表结构设计
- RocketMQ 学习方法之我见
- python实现12306火车票查询
热门文章
- vue遇到ie兼容问题如何处理_vue 兼容IE报错解决方案
- 魔兽世界服务器同时在线人数,魔兽怀旧服人气高走,战场服务器同时在线人数破百万...
- nyoj 万圣节派对
- word2010打开报错及解决办法
- 一、安装VM虚拟机,安装Linux操作系统。修改主机名和IP地址以及修改ip地址与主机名的映射命令。
- 华为机器IPMI、BIOS设置项和步骤
- rocm平台_利用ROCm在3A平台进行深度学习
- 企业如何应对2020疫情:看马云、刘强东、俞敏洪非典往事
- 往事并不如烟——忆曾经的信息工程学院Innovation Lab(中)
- 60分钟轻松搞定树莓派 AI 服务开发