Dopasowanie krzywej Béziera za pomocą SciPy

Mam zestaw punktów, które przybliżają krzywą 2D. Chciałbym użyć Pythona z numpy i scipy, aby znaleźć sześcienną ścieżkę Béziera, która w przybliżeniu pasuje do punktów, gdzie określam dokładne współrzędne dwóch punktów końcowych, i zwraca współrzędne pozostałych dwóch punktów kontrolnych.

Początkowo myślałemscipy.interpolate.splprep() może robić to, co chcę, ale wydaje się, że zmusza krzywą do przejścia przez każdy z punktów danych (jak przypuszczam, chciałbyś interpolacji). Zakładam, że byłem na tym złym torze.

Moje pytanie jest podobne do tego:Jak dopasować krzywą Béziera do zestawu danych?, poza tym, że powiedzieli, że nie chcą używać numpy. Wolę znaleźć to, czego potrzebuję już zaimplementować gdzieś w scipy lub numpy. W przeciwnym razie planuję zaimplementować algorytm powiązany z jedną z odpowiedzi na to pytanie, używając numpy:Algorytm automatycznego dopasowywania krzywych cyfrowych (pdf.page 622).

Dziękujemy za wszelkie sugestie!

Edytuj: Rozumiem, że sześcienna krzywa Béziera nie gwarantuje przejścia przez wszystkie punkty; Chcę taki, który przechodzi przez dwa podane punkty końcowe i który znajduje się jak najbliżej określonych punktów wewnętrznych.

questionAnswers(6)

yourAnswerToTheQuestion