метод наименьших квадратов для 3d объектов?

aksirob1

кто-нибудь знает формулы, по которым можно аппроксимировать поверхность, например, плоскостью(например методом мнк)? И может кто знает какие-нибудь универсальные формулы позволяющие аппроксимировать поверхности поверхностью заданного порядка?

zuzaka

Первого порядка, похоже, довольно громоздкий (про следующие порядки я молчу ).
Если плоскость задана в виде
Ax + By + Cz + 1 = 0 (я не рассматривал случаи A,B,C < 0, но это сделать не сложно
то легко вывести, что
h_i = (Ax_i + By_i + Cz_i + 1) / (3 \sqrt{A² + B² + C²})
- наверно, эта формула есть где-нибудь в учебнике по аналитической геометрии.
S = Σh_i^2 = ( aA² + bB² + cC² + N + γAB + βAC + αBC + AX + BY + CZ ) / (A² + B² + C²)
где a,b,c,α,β,γ,X,Y,Z - известные значения (суммы самих случайных величин, их квадратов, перекрестных произведений с коэффициентами).
Ну, и создается впечатление, что система
S_A = S_B = S_C = 0 будет слишком громоздкой.

kachokslava

а какие проблемы?
пусть есть набор точек {q_i} n-мерного пространства R^n, гиперповерхность G(X)=0.
подставляя q_i в уравнение G(x)=0, складываем квадраты, получаем:
S=sum G(q_i)^2 -> min
пусть поверхность G зависит от некоторых параметров {alpha_k}.
необходимое условие минимума: равенство нулю всех производных.
{d S/d alpha_k = 0} (1)
в общем случае не решается.
Если гиперповерхность - полином, то система уравнений (1) - линейная система из k уравнений и решается методом Гаусса.
добавлено.
"плоскости" - полиномы: a*x+b*x+c*z+d=0 (alpha_1=a, alpha_2=b, alpha_3=c, alpha_4=d k=4)
"сферы с центром в нуле различного радиуса" - полиномы: x^2+y^2+z^2-R=0, alpha_k=R (k=1)
"поверхности второго порядка" - полиномы: a*x^2+b*xy+c*y^2+..+t*x+u*y+v*z+Q=0, k=16
Оставить комментарий
Имя или ник:
Комментарий: