芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

SG平滑滤波数据处理及保存IC解密

IC解密SG平滑滤波:IC解密Savitzky-Golay滤波器(通常简称为S-G滤波器)最初由Savitzky和Golay于1964年提出,发表于Analytical Chemistry 杂志。之后被广泛地运用于数据流平滑除噪,是一种在时域内基于局域多项式最小二乘法拟合的滤波方法。这种滤波器最大的特点在于在滤除噪声的同时可以确保信号的形状、宽度不变。对IIR滤波后的数据进行SG平滑处理。在本设计中硬件端发送的数据虽然经过了0.5HZ高通滤波和50HZ陷波但是信号还是存在一定的毛刺,为了得到平滑的信号需要对信号进行平滑滤波。在本设计中使用长度为11阶数为5的SG平滑滤波,滤波器需要先在Matlab平台上面进行仿真,通过对样本数据的处理,可以验证SG平滑算法的效果,再将其在上位机上实现。
C#代码:
  1. _Matrix_Calc m_c = new _Matrix_Calc();
  2. _Matrix s = new _Matrix(N, D + 1);
  3. _Matrix s_tran = new _Matrix(D + 1, N);
  4. _Matrix F = new _Matrix(4, 4);
  5. _Matrix F_inv = new _Matrix(4, 4);
  6. _Matrix b1 = new _Matrix(N, 4);
  7. _Matrix b2 = new _Matrix(N, N);
  8. s.init_matrix();
  9. s_tran.init_matrix();
  10. F.init_matrix();
  11. F_inv.init_matrix();
  12. b1.init_matrix();
  13. b2.init_matrix();
  14. for (m = -M; m <= M; m++)           //得到矩阵s
  15. {
  16. for (i = 0; i <= D; i++)
  17. {
  18.          s.write(m + M, i, (float)Math.Pow(m, i));
  19. }
  20. }
  21. m_c.transpos(ref s,ref s_tran);
  22. m_c.multiply(ref s_tran, ref s, ref F);
  23. m_c.inverse(ref F, ref F_inv);
  24. m_c.multiply(ref s, ref F_inv , ref b1);
  25. m_c.multiply(ref b1, ref s_tran , ref b2);
  26. for (int i = 0; i <= M; i++)        //第0到M,一共M+1个点
  27. {
  28.        for (int j = 0; j < N; j++)
  29.        EcgDataNew[ i] = EcgDataNew[ i] + B.read(j, i) * EcgDataOld[j];
  30. }
  31. for (int i = M + 1; i <= L - M - 2; i++)  //第M+1到L-M-2,一共L-2M-2个点
  32. {
  33.         for (int j = 0; j < N; j++)
  34.         EcgDataNew[ i] = EcgDataNew[ i] + B.read(j, M) * EcgDataOld[i - M + j - 1];
  35.   }
  36. for (int i = 0; i <= M; i++)       //第L-M-1到L-1个点,一共M+1个点
  37. {
  38.         for (int j = 0; j < N; j++)
  39.         EcgDataNew[L - M + i - 1] = EcgDataNew[L - M + i - 1] + B.read(j, M + i) * EcgDataOld[L - N + j];
  40. }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信