难题,对于我来说,请您帮忙(关于频率) ( 积分: 138 )

  • 主题发起人 主题发起人 zhoufujin
  • 开始时间 开始时间
Z

zhoufujin

Unregistered / Unconfirmed
GUEST, unregistred user!
12,13,14,15,16,17,17,17,18,18,
18,17,17,16,16,15,14,13,12,11,
10,12,13,14,15,16,17,17,17,18,
18,18,17,17,16,16,15,14,13,12......
这是肌电信号采集到的一组数字,这个信号的频率不定,想知道
单位时间内各种频率波的出现个数,如何实现?
谈谈想法。
 
12,13,14,15,16,17,17,17,18,18,
18,17,17,16,16,15,14,13,12,11,
10,12,13,14,15,16,17,17,17,18,
18,18,17,17,16,16,15,14,13,12......
这是肌电信号采集到的一组数字,这个信号的频率不定,想知道
单位时间内各种频率波的出现个数,如何实现?
谈谈想法。
 
select Count(Value) form TableName
group by Value
order by Value
 
royal1442:
您什么意思?不是捣乱吧?
 
你的概念我理解的不清晰 频率波是什么东西??
目前我暂时理解为单位时间内达到多少个上沿 就是单位时间内有多少个波峰

后一个减前一个 变成
1 1 1 1 1 0 0 1 0 0 -1 0 -1 0 -1.........
把0去掉
1 1 1 1 1 -1 -1 -1............
再后一个减前一个
0 0 0 0 -2 0 0 0 0
之后就是 0 的连续个数 和 -2 的值得大小 来滤掉噪音
之后统计多少个非零数
 
用二维数组
mtr:array of array [0..1]of integer;
mtr[i,0]:=机电信号
mtr[i,1]:=出现次数
对你那个数组循环
如果频率不在mtr中
那么setlength(mtr,length(mtr+1));
mtr[length(mtr),0]:=新的机电信号
mtr[length(mtr),1]:=1;
如果频率在mtr中那么
mtr[j,0]:=此次出现的信号
mtr[j,1]:=mtr[j,1]+1;
//////
基本上就是这样,
行不行?
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
688
import
I
后退
顶部