Подгонка трехмерной полиномиальной поверхности Python, в зависимости от порядка

В настоящее время я работаю с астрономическими данными, среди которых у меня есть изображения комет. Я хотел бы удалить фоновый градиент неба на этих изображениях из-за времени съемки (сумерки). Первая программа, которую я разработал для этого, взяла выбранные пользователем точки из «ginput» (x, y) Matplotlib, извлекла данные для каждой координаты (z), а затем разместила данные в новом массиве с помощью «griddata» SciPy.

Поскольку предполагается, что фон меняется незначительно, я хотел бы подогнать трехмерный полином низкого порядка к этому набору точек (x, y, z). Однако "griddata" не учитывает порядок ввода:

griddata(points,values, (dimension_x,dimension_y), method='nearest/linear/cubic')

Какие-нибудь идеи по поводу другой функции, которая может быть использована, или метод разработки аппроксимации методом наименьших квадратов, который позволит мне контролировать порядок?

15
задан JasonMArcher 19 June 2014 в 23:29
поделиться