Dobór metody interpolacji

0

Witam,

Mam do zrealizowania program, który na podstawie wczytanej bitmapy dokonuje interpolacji punktów.
user image

Dla tej konkretnej bitmapy są to punkty:
-10 -4.59459
-9.78261 -5.40541
-9.34783 -6.48649
-8.47826 -7.2973
-6.73913 -5.13514
-5.86957 -3.24324
-5.65217 -2.7027
-5.43478 -2.16216
-4.56522 -0.27027
-4.13043 0.540541
-1.52174 2.43243
-1.08696 2.16216
-0.434783 1.35135
0.217391 0.27027
2.3913 -5.13514
2.6087 -5.67568
2.82609 -6.21622
3.04348 -6.75676
3.69565 -8.10811
5 -9.45946
5.65217 -8.91892
6.30435 -7.2973
6.52174 -6.48649
6.73913 -5.40541
6.95652 -4.32432
7.17391 -2.97297
7.3913 -1.35135
7.6087 0.540541
7.82609 2.7027
7.82609 2.43243
8.04348 4.86486
8.04348 4.59459
8.26087 7.2973
8.26087 7.02703
8.47826 9.72973

Niestety w ostatnim najważniejszym kroku polegam. Dokonując interpolacji metodą Newtona i wyznaczając współczynniki c0,c1 itd. wielomianu, a następnie podstawiając do tego wielomianu wartości z jakiegoś przedziału otrzymuję kosmiczne wartości. Pytanie jest takie: czy dla takiej ilości punktów ta metoda jest wystarczająco dobra?

0

A musisz to w ogóle interpolować wielomianem? Nie mozesz jakimiś funkcjami sklejanymi (spline)?

0

Mogę wykorzystać dowolną metodę interpolacji. Którą najbardziej się opłaca? Funkcje zawsze rysuję w przedziale od -10 do 10, podobnie w osiach y. Pobierając pixel+=5 po pixelu+=5 otrzymuję ok 20 punktów dla każdej funkcji i chciałbym operować na tych kilku punktach.

0

No wiesz, jak walniesz wielomian interpolacyjny stopnia 20 to nijak nie będzie on twojej wyjściowej funkcji przypominał ;) Ja bym jednak interpolował funkcjami sklejanymi.

1 użytkowników online, w tym zalogowanych: 0, gości: 1