本文主要是介绍matlab 等间隔重采样,如何对直线(或曲线)进行等距重采样?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
使用参数函数
可以定义分段参数函数:
f[t_] := Piecewise[
When x[i] <= t <= x[i + 1]
f[t]= (y[i+1]-y[i]) (t - x[i]) / (x[i+1]-x[i]) + y[i],
For {i, 1 ... N};
然后选择您的点Q,理想间距小于最小p[i+1]-p[i]
最后以相等的t间隔取样f[q]。
样本结果:
在这里,您可以看到将原始样本中的间隔大小从最大减小到最小的效果:
您可以评估近似的优度,将原始曲线和重新采样曲线之间的面积(积分)相加:
如果绘制不同间隔大小的积分,则可以确定什么是好的采样:
就记录而言,Mathematica中的代码是:
a = 0;
p = Table[{ a = a + RandomReal[], RandomReal[]}, {10}];
f[t_, h_] := Piecewise[Table[{(h[
这篇关于matlab 等间隔重采样,如何对直线(或曲线)进行等距重采样?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!