2013-05-26 63 views
-1

我想根據手的圖像繪製一些點。然後,我應該使用拉格朗日插值法將所有點繪製在一起,以便出現手的形狀。由於函數只適用於一對一或多對一,因此我在插值時遇到困難。但是,手的形狀需要2個點,它們可能具有相同的x座標但不同的y座標。有什麼建議麼?Matlab插值圖

+0

您可能會發現[此答案](http://stackoverflow.com/a/16400330/1714410)有用。 – Shai

回答

2

您有一個描述手形狀的n個點(x,y)的序列。在matlab中,你可以用2個向量來表示它。

X=[x1;x2;..;xn] 
Y=[y1;y2;..;yn] 

現在您可以通過parametric equation來描述手的形狀。

x = f(t); 
y = g(t); 

要使用拉格朗日插值,你必須選擇長度爲n

t=[t1;t2;t3;...;tn] #(with t increasing) 

的向量t對於每個元素TI在T下面的語句應該是真實的。

xi = f(ti) 
yi= g(ti) 

這意味着由f(t)和g(t)描述的曲線會經過您提供的所有點。你可以通過對矢量x和g(t)使用拉格朗日插值,通過對y做同樣的處理,找到f(t)的方程。

現在你只需要在很多t值中計算[f(t),g(t)]。

結論

要很快陳述解決方案。以參數形式表示手的形狀。通過這樣做,你可以單獨對拉伸曲線和y曲線進行拉格朗日插值。 (請確保您使用相同的參數,並且該參數在任何給定點均相同。)

+0

如何編寫參數插值? –