IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mathématiques Discussion :

Interpolation polynomiale, moindres carrés


Sujet :

Mathématiques

  1. #1
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut Interpolation polynomiale, moindres carrés
    Bonsoir à tous !
    J'essaie de modéliser une image en une série de volumes de taille 3x3 ou 5x5 avec :
    z(x,y) l'intensité lumineuse de l'image au point (x,y).
    z(x,y) = ax^2+by^2+cxy+dx+ey+f

    Je sais qu'on peut le faire en utilisant les moindres carrés, mais impossible de retrouver les matrices donnant les valeurs de a,b,c,d,e et f...
    Si vous pouvez m'aider, je serais très intéressé.

    Si l'on s'arrête à l'estimation d'un plan, c'est trouver a,b et c tels que :
    z(x,y)=ax+by+c

    Si vous pouvez m'aider avec ça, il me semble que la matrice pour a (ou b) est du style :
    -1 0 1
    -1 0 1
    -1 0 1
    A un coefficient près, mais je n'arrive pas à le retrouver "proprement" (au sens des moindres carrés).

    Merci d'avance !

  2. #2
    Membre éclairé
    Inscrit en
    Juin 2005
    Messages
    644
    Détails du profil
    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2005
    Messages : 644
    Points : 754
    Points
    754
    Par défaut
    J'avais fourni du code pour du fit moindre carré et du fit polynomial
    voir
    http://www.developpez.net/forums/sho...t=63949&page=3
    pour un fit moindre carré ittératif il va fonctionner. Le fit polynômial devra probablement être adapté.
    Me demander si entre ses 2 propositions, il n'y a pas de solution au problème posé.

    A vérifier mais cela doit + ou moins conduire à :

    ax^2+by^2+cxy+dx+ey+f

    Résidu := Somme [ Zi – (a Xi^2 + bYi^2 + cXiYi +dXi + eYi + f) ] ^2

    @R/@a = 0=> Somme [ Zi – (a Xi^2 + bYi^2 + cXiYi +dXi + eYi + f ) Xi^2 = 0
    @R/@b = 0 => Somme [ Zi – (a Xi^2 + bYi^2 + cXiYi +dXi + eYi + f )] Yi^2 = 0
    @R/@c = 0 => Somme [ Zi – (a Xi^2 + bYi^2 + cXiYi +dXi + eYi + f )] XiYi = 0
    @R/@d = 0 => Somme [ Zi – (a Xi^2 + bYi^2 + cXiYi +dXi + eYi + f )] Xi = 0
    @R/@e = 0 => Somme [ Zi – (a Xi^2 + bYi^2 + cXiYi +dXi + eYi + f )] Yi = 0
    @R/@f = 0 => Somme [ Zi – (a Xi^2 + bYi^2 + cXiYi +dXi + eYi + f )] = 0

    On note S(U) Somme(Ui)
    =>

    a . S( X^4) + b. S ((XY)^2) + c . S(X^3.Y ) + d.S(X^3)+e.S(X^2.Y)+f. S(X^2) = S(ZX^2)
    a . S( (XY)^2) + b. S (Y^4) + c . S(X.Y^3 ) + d.S(X.Y^3)+e.S(Y^3)+f. S(Y^2) = S(ZY^2)
    a . S( X^3Y) + b. S (XY^3) + c . S((XY)^2 ) + d.S(X^2Y)+e.S(XY^2)+f. S(XY) = S(ZXY)
    a . S( X^3) + b. S (XY^2) + c . S(X^2.Y ) + d.S(X^2)+e.S(X.Y)+f. S(X) = S(ZX)
    a . S( X^2Y) + b. S (Y^3) + c . S(X.Y^2 ) + d.S(XY)+e.S(Y^2)+f. S(Y) = S(ZY)
    a . S( X^2) + b. S (Y^2) + c . S(X.Y ) + d.S(X)+e.S(Y)+f. S(1) = S(Z)

    Donc
    si on note V le vecteur colone ( 6 lignes)
    S(ZX^2)
    S(ZY^2)
    S(ZXY)
    S(ZX)
    S(ZY)
    S(Z)
    si on note M la matrice 6X6 SYMETRIQUE dont les coef valent
    M11=S( X^4)
    M12= S ((XY)^2); M22 = S (Y^4)
    M13= S( X^3Y);M23=S (XY^3);M33=S((XY)^2 )
    M14=S( X^3);M24=S (XY^2);M34=S(X^2.Y );M44=S(X^2)
    M15=S( X^2Y);M25=S (Y^3);M35=S(X.Y^2 );M45=S(XY);M55=S(Y^2)
    M16=S( X^2);M26=S (Y^2);M36=S(X.Y );M46=S(X);M56=S(Y);M66=S(1)

    alors le vecteur colone ( 6 lignes ) solution A est solution de

    M.A = V => A = M^-1*V, système linéaire de kramer 6 équations à 6 inconnues

  3. #3
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    Je suis désolé, mais je n'ai pas tout compris...
    Je sais que le résultat, appliqué à une image, est relativement simple pourtant...
    Je crois qu'il faut passer par la résolution généralisée (sous forme matricielle).
    Mais je n'arrive pas à la retrouver.
    Le code me semble adapté à un signal 1D, mais je ne vois pas comment l'utiliser en 2D.

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    717
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 717
    Points : 858
    Points
    858
    Par défaut
    Il suffit de resoudre le système de 6 équations à 6 inconnues donné ci-dessus par j.p.mignot.

  5. #5
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    On m'a montré sous forme matricielle :
    Z=A.X
    Avec :
    Z =
    z(-1,-1)
    z(-1,0)
    z(-1,1)
    z(0,-1)
    etc.
    X=
    a
    b
    c
    d
    e
    f
    A =
    1 1 1 -1 -1 1
    1 0 0 -1 0 1
    etc.
    En remplaçant x et y dans l'équation ligne par ligne.
    La question étant de retrouver X, il faut faire un truc du genre :
    (A^-1)*Z=X
    Mais j'aimerais avoir a,b,c,d,e et f directement en utilisant des matrices de convolution sur mon image (matrices 3*3)...

Discussions similaires

  1. Methode des moindres carrées
    Par 77Camille dans le forum Mathématiques
    Réponses: 2
    Dernier message: 11/06/2007, 18h40
  2. Moindres carrés surface tendance ordre 2
    Par tony57 dans le forum MATLAB
    Réponses: 3
    Dernier message: 19/04/2007, 03h44
  3. Détermination d'un plan des moindres carrés
    Par bernard6 dans le forum MATLAB
    Réponses: 8
    Dernier message: 05/04/2007, 16h23
  4. Moindres carrés pour courbe
    Par cjacquel dans le forum Mathématiques
    Réponses: 3
    Dernier message: 31/03/2007, 18h02
  5. [Analyse numérique] Moindres carrés polynomiaux
    Par Razgriz dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 30/11/2006, 06h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo