对于如这个数组里那些不规则的点,有什么办法可以去掉吗
数组附件,不做任何处理的图如下:最终要得到的线是:t=0时,x=20;t=1时,x=120的直线。但是现在得到的数据有很多干扰点,想通过什么方法去掉,请问有什么比较好的建议吗,如果附有程序,真的是十分感谢~~
回复 楼主 lj2tt 的帖子
LZ在信号处理不是问过了!这方面的高手, 就是那帖回覆LZ的大牛!
回复 沙发 ChaChing 的帖子
是啊,不过问题的切入点不同啊信号那里是想去噪;这里是噪声如果去不了,想办法直接处理最终数据。。。。
回复 板凳 lj2tt 的帖子
这样不是有点作弊的样子!:@)去除直线某范围外的资料, 仅仅画那直线附近的点, 不是就可以了
回复 地板 ChaChing 的帖子
你是说直接手动去除,这样算作弊。。。但我是想通过什么好的数学方法去除那些点,这样就不算作弊了吧,是对数据结果的再处理
回复 5楼 lj2tt 的帖子
sorry! 或许误会了LZ的意思了! 试试这个, 或许需微调些clc; clear; load 1.txt; t=X1(:,1); x=X1(:,2); plot(t,x,'o')
tt=t; xx=x; std_1=std(x); dx_std=std_1;
while dx_std > std_1/10
p=polyfit(tt,xx,1); dx=xx-polyval(p,tt); dx_std=std(dx)
kk=find(dx<=dx_std); tt=tt(kk); xx=xx(kk);
end
figure; plot(tt,xx,'o')
回复 7楼 ChaChing 的帖子
刚进站~~谢谢,这就去试试:@D ~~
回复 7楼 ChaChing 的帖子
:@L 换了一组数据,为什么就不适用了呢?我把find那里的条件改来改去也没找到一个合适的~~~回复 9楼 lj2tt 的帖子
原先的资料(1F的图)可以发现那条直线的点较多!所以想到利用std去除不要的点, 并非适用任何情况!
LZ的新资料, 好像已经违反7F程序的基本假设了!
具体应如何, 再想想或等高手来!
页:
[1]