帶著之前對(duì)頻譜的疑問(wèn)去查看程序!天啊,竟然犯了一個(gè)非常愚蠢的錯(cuò)誤!畫(huà)頻譜圖時(shí)居然沒(méi)有用到fft函數(shù)!哎,蠢到家了!只能先修訂錯(cuò)誤了!然后再看看心率檢測(cè)程序的運(yùn)行結(jié)果了!心率估計(jì)采用頻譜估計(jì)的方式!此刻作為老程序員又在擔(dān)心了:還會(huì)不會(huì)有其他的什么錯(cuò)誤呢?雖然開(kāi)始了擔(dān)心,但總得先看程序的運(yùn)行結(jié)果吧!
錯(cuò)了就再改,程序員還能怕反復(fù)嗎?這個(gè)過(guò)程是失敗走向成功的必由之路!那早年我讀研究生的時(shí)候有沒(méi)有在算法上碰壁呢?經(jīng)常碰壁!給大家看看當(dāng)年的老古董程序,也是關(guān)于lms算法的。當(dāng)年用的是matlab 4.0軟件!20年就這么過(guò)去了!天啊,我的青春沒(méi)了,而且感到一事無(wú)成!怎么辦?抓緊時(shí)間寫(xiě)文章講解程序吧,再小的崗位也能發(fā)出光和熱!
當(dāng)年看過(guò)的論文!
2004年的一篇論文!
看到這,時(shí)間彷佛回到了過(guò)去!
此刻,我又想起自己深夜寫(xiě)代碼累了去籃球場(chǎng)上練習(xí)投籃的場(chǎng)景,人生第一個(gè)三分球是在中科院上海天文臺(tái)的籃球場(chǎng)上出現(xiàn)的,那晚周邊很安靜!當(dāng)年的拼搏歷歷在目!拼搏不一定保證有美好的未來(lái),但不拼博肯定沒(méi)有!
認(rèn)真的回顧程序!框圖里面也是輸出的是誤差信號(hào)!
這兩個(gè)框圖是不是類似啊!當(dāng)面后面少畫(huà)了一根反饋線。誤碼信號(hào)要用來(lái)調(diào)整自適應(yīng)濾波器中的權(quán)值!寫(xiě)到這,我可以明確的告訴大家,PPG中去除運(yùn)動(dòng)偽跡的方法完全實(shí)用于語(yǔ)音中的噪聲消除!后續(xù)我也將給出語(yǔ)音消噪的一系列文章,敬請(qǐng)期待!
看看當(dāng)下的程序吧!硬件環(huán)境在不斷的提高,但我的算法水平呢?也有提高,不過(guò)提高的很慢!如何加速?身體好的時(shí)候就多寫(xiě)代碼唄!下面展示LMS算法結(jié)合頻域檢測(cè)心率值的程序!
% example_lms_v2_2_1
% data:2021-10-26
%%% 程序說(shuō)明
% 濾波器輸入是原始的三軸加速度信號(hào)!
% 采用頻譜估計(jì)來(lái)計(jì)算心率!
% 強(qiáng)化心率計(jì)算過(guò)程,采用窗口滑動(dòng)方法!
% 30秒累積數(shù)據(jù)處理一次!
% 軟件環(huán)境:2021a
close all;clear all;
%%%%%%%%%%%%%%%% 數(shù)據(jù)讀取
%%%%%%% 采集數(shù)據(jù)
%%% 文件名
PPG_filename = ‘walk20211015-1.csv’; % PPG數(shù)據(jù)
%%% 讀入數(shù)據(jù)
PPG_data = readmatrix(PPG_filename);
%%% 三軸數(shù)據(jù)
x_data = PPG_data(:,3);
y_data = PPG_data(:,4);
z_data = PPG_data(:,5);
% d3_data = x_data;
d3_data = sqrt(x_data.^2+y_data.^2+y_data.^2)/100;
%%% 心率數(shù)據(jù)
% 采樣頻率 25Hz
Fs = 25 ;
% 綠光數(shù)據(jù)
責(zé)任編輯:haq
-
仿真
+關(guān)注
關(guān)注
50文章
3972瀏覽量
132961 -
智能手環(huán)
+關(guān)注
關(guān)注
47文章
791瀏覽量
72635
原文標(biāo)題:數(shù)字信號(hào)處理之信號(hào)處理仿真 第六章 智能手環(huán)之技術(shù)應(yīng)用(13)—心率算法的優(yōu)化(LMS算法)
文章出處:【微信號(hào):gh_30373fc74387,微信公眾號(hào):通信工程師專輯】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論