信号处理
信号处理
JunJun~
沉淀~
展开
-
基于时域线性插值法计算信号的周期
时域线性插值法,是一种计算量小、准确度高和实时性好的计算信号周期的方法。1 算法原理其计算周期的步骤如下:Ts为采样间隔,Ip可由插值法获得,如下图所示:采用时域线性插值法求解信号的周期,如下图所示:2 matlab程序function [ T] = F( a4)a3=a4; va = mean(a3) ; te = 1; for itt = 2 : length(a3) if a3(itt) >= va &.原创 2020-06-06 00:58:19 · 1945 阅读 · 0 评论 -
基于傅里叶变换法和Rife-Jane法计算信号的周期
1 傅里叶变换法傅里叶变换法估计信号频率的原理是首先通过对信号进行傅里叶变换,然后找到频谱中幅值最大值所对应的频率,再求出其倒数即为信号的周期,使用该方法不需要对加速度信号进行预处理,但该方法容易受傅立叶变换时的频率分辨率的影响。对加速度信号进行傅里叶变化,如下图所示。傅里叶变换法求周期的程序可参考Matlab的库函数fft。2 Rife-Jane方法Rife算法是对傅里叶变换法的改进,是为了解决傅里叶变换法所存在的量化误差问题,其通过对频谱的最大谱线以及与其相邻的较大谱线进行插值,原创 2020-06-06 00:41:17 · 2636 阅读 · 3 评论 -
基于波峰波谷法计算信号的周期
波峰波谷法原理是:查找信号相邻波峰波谷间隔采样点的数量,乘上采样间隔的时间,最后求平均值即是信号的周期。但该方法对噪声较为敏感,采用波峰波谷法计算滤波后信号的周期,如图所示。该方法主要是需要找到信号的极大值和极小值,程序如下:function [max_p, max_v, min_p, min_v] = find_extrema(y)% find maximas% [tmp_v, tmp_p] = findpeaks(y);tmp_p = find(y(2:end-1)>y(1:e原创 2020-05-08 21:18:27 · 3562 阅读 · 0 评论 -
五点三次平滑滤波在消除随机噪声中的应用以及其Maltab程序
五点三次平滑滤波其原理是对通过采样信号使用最小二乘法的思想进行三次平滑。采用五点三次平滑滤波对信号进行滤波,其效果如图所示:五点三次平滑滤波的Matlab相关程序如下所示:m = 3; N = length(x1); a = x1; b = zeros(1, N);for M = 1 : m b(1) = (69 * a(1) + 4 * (a(2) + a(4)...原创 2020-05-06 21:57:45 · 4429 阅读 · 1 评论 -
递推平滑算法算法在消除随机噪声中的应用以及其Maltab程序
递推平滑滤波算法原理是利用N个点(N最好为奇数)的平均值来代替采样点的值,这里使用N=11和N=21的两次递推平滑滤波对信号滤波,效果如图。随着点数N的增大,滤波后的加速度信号曲线越来越平滑。递推平滑滤波的Matlab函数为smooth。...原创 2020-05-06 21:52:17 · 699 阅读 · 0 评论 -
中值滤波在消除脉冲噪声中的应用以及其Maltab程序
中值滤波是一种可以有效的消除脉冲噪声的滤波算法,其滤波方法是每次取N(一般为奇数)个采样点,然后按照数据的大小进行排序,最后取中间值作为本次滤波的结果。这里分别取N=5和N=11对实测加速度信号进行处理,滤波效果图3-4所示。从图可以看出,当取11个点时,滤波效果更好。此外在滤波过程中,根据算法原理,需要在每一个采样点进行了一次N点的排序运算(冒泡法排序),因此当信号的数据量较大以及N取值...原创 2020-05-06 21:46:29 · 2013 阅读 · 0 评论 -
限幅滤波在消除脉冲噪声中的应用以及其Maltab程序
限幅滤波算法原理:设置一个合适的限定值,然后当采样点的幅值相对于前一个采样点和后一个采样点增大或减小的值超过该限定值时,则认为该点为脉冲点,并使用其前后两个采样点的平均值作为本次滤波的结果。这里分别取限定值为0.1以及0.5,然后对信号进行处理,滤波效果如图所示。当限定值取0.1时滤波结果较理想,但同时可以看到,在脉冲噪声点较集中的区域,限幅滤波算法效果较差。限幅滤波算法的相关Matl...原创 2020-05-06 21:42:59 · 2965 阅读 · 1 评论 -
拉伊达法则在消除脉冲噪声中的应用以及其Maltab程序
拉伊达准则原理:当采样点减去采样信号的均值后大于三倍采样信号的标准差,即认为该采样点为粗大误差点,同时使用该采样点的前后两点的平均值代替。使用拉伊达法则对信号进行处理:拉伊达法则可以有效去除粗大误差点,但对于脉冲噪声点的消除则并不是很理想,因而可以作为信号的消除脉冲噪声前的预处理。拉伊达法则相关Matlab程序如下:Len = length(a) ; av = mean(a) ...原创 2020-05-06 21:35:09 · 950 阅读 · 3 评论 -
EMD算法的简单介绍,matlab安装包的安装以及其应用!
EMD算法的简单介绍:从编程的角度来看,EMD是两个while循环。固有模特分量(内层while循环)满足的两个条件:(1)极值点的个数和过零点的个数相等或者最多相差为1个;(2)上下包络线的平均值为零。余项的满足条件:单调函数(部分论文上有其他的条件,外层while循环)。具体的步骤如下:1)首先使用三次样条曲线分别拟合信号...原创 2018-04-22 14:03:11 · 13089 阅读 · 8 评论 -
形态学滤波(开-闭)在信号降噪中的应用以及其Maltab程序
数学形态学的基本运算单元是腐蚀和膨胀,很多高级的形态学算法均是以这两种原始运算单元作为基础的。设原始信号为x(n),其中(n=1,2,…,N);定义结构元素为g(m),其中(m=1,2,…,M;且N≥M)。定义x(n)关于g(m)的腐蚀和膨胀操作为:x(n)关于g(m)的的开运算和闭运算操作分别定义为:形态学开闭运算是一对对偶变换,形态开运算可以抑制信...原创 2018-05-21 10:59:49 · 17370 阅读 · 38 评论