2

張力は3次スプライン補間とどのように関連していますか?この記事では、3次スプライン補間について参照しています。張力係数t=0は最初の節点で、t=1は最後の節点です。しかし、3次スプラインの0.1、0.2などの他の張力値をどこで置き換えることができますか?誰かが私に役立つ参考資料を教えてもらえますか?

4

3 に答える 3

7

キュービックスプラインには張力値がありません。連続性を確保するために、1次導関数と2次導関数を計算します。ベジェ曲線(および張力スプライン)には張力値があり、張力は「曲線がどれだけ鋭く曲がるか」を決定します。Photoshopのグラフィックデザイナーは、ベジェツールを使用するときにすでに緊張して遊んでいます

開始するのに最適な場所は、ウィキペディアのスプラインであり、ペンと紙を使用して計算を実行します(機械的に読むことは理解にあまり役立ちません)。彼らは通常3年生の数学の学生に紹介されているので、3次スプラインから始めます。

「エルミートスプライン」のこのページは、「エルミート曲線の数学的背景は、スプラインのファミリー全体を理解するのに役立ちます」と主張しています。

于 2011-11-10T01:35:54.633 に答える
1

あなたが指しているリンクはベジエスプラインを使用しています。ベジェスプラインは、多項式スプラインの特殊な形式です。ベジエスプラインは3次の次数である可能性がありますが、張力を使用して「定義」されていません。3次ベジェ曲線は、4つの点p1、p2、p3、p4によって定義されます。

  • p1=曲線の開始点
  • p2 = p1(導関数)から開始するときに曲線が「向かう」方向
  • p3 =曲線がp4(導関数)に到達する方向*
  • p4=曲線の終点

通常、曲線はp2とp3を通過しません。

スプラインが3次であると言うことは、基本的に3次の多項式に近似することを意味します。f(x) = ax^3 + bx^2 + cx + dここで、dizはゼロ以外です。

キュービックベジエスプラインは、曲線の動作を定義する1つの方法にすぎません。張力スプラインも3次である場合がありますが、導関数ではなく張力で定義されます。

そのコードを使用したくない理由、理解したい数学の量、およびあなたの背景が何であるかについての背景を説明すると、いくつかの読み物を示すことができるかもしれません。

于 2011-11-13T12:28:35.560 に答える
0

キュービックスプラインは、渡されたX値とY値のセットを介して曲線に適合します。値は関数を定義する必要があります。つまり、各x値は前の値よりも大きくなければなりません。いくつかのコードでこれを言う別の方法は次のとおりです。X[i+1]> X [i]、真でなければなりません。そうでなければ、曲線はそれ自体の上に折りたたまれ、それは厳密な数学的意味で有効な関数ではありません。データに3次スプラインを当てはめると、最初と最後のX値の間の任意の値を要求できるようになります。渡したX値で正しくない値を要求しない場合は、答えが補間されます。結果は、連続的な1次導関数でスムーズかつ連続的になります。微積分を持っていない場合は、一次導関数の定義についてオンラインリファレンスを参照できますが、正直なところ、キュービックスプラインまたはテンションスプラインを見つけようとしている場合は、
とキュービックスプラインとテンションスプラインの違いは次のとおりです。キュービックスプラインは、渡したポイント間で上下に揺れる結果を返すことができます(渡したデータは常に通過します)。それらの小刻みは必要ないと言えます。データポイント間で何が起こっているのか本当にわかりません。それは非常によく揺れる可能性があります。それは知られていないだけです。この場合、通常、曲線に形状を追加しないことをお勧めします。テンションスプラインは、データポイント間の上下の揺れを抑制します。はっきりさせておきますが、通常の3次スプラインは通常、データに非常に急激な変化がある場合(Y [i + 1] >> Y [i])にのみ、上下の揺れを追加しません。揺れが発生する可能性があります。ポイント(i)とポイント(i + 1)の間に生成されます。

于 2019-12-06T20:52:14.990 に答える