Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Calculs de dimensions fractales avec MATLAB



  1. #1
    rodolpheg

    Calculs de dimensions fractales avec MATLAB


    ------

    Bonjour,

    Je cherche à calculer la dimension fractale d'un profil topographique à partir d'un modèle numérique de terrain (une image 8 bit dont la valeur de chaque pixel, entre 0 et 255, indique l'altitude). Malheureusement, quelque chose cloche (je pense que je me retrouve avec des complexes où je ne devrais pas, et ça met le bazar) et je ne sais pas quoi...

    Voici l'image, à mettre dans le répertoire de travail (Comme d'hab) : http://rodolphe.coulon.free.fr/dem-nb2.bmp
    Voici mon programme .m
    http://rodolphe.coulon.free.fr/fds.m

    Code:
    % Charge l'image dans la variable A
    AD = imread('dem-nb2.bmp','bmp');
    % Entré de la ligne 'l' d'étude
    l = input('Entrer la ligne de transect (num. de ligne à partir du haut) : ');
    % Extrait a ligne 'l' dans la variable P
    Prof1 = AD(l,:);
    % Afficher le transect
    subplot(4,1,1);
    plot(Prof1);
    title('profile');
    % Calcul du spectre (page 55), la variance...
    K0 = var(Prof1);
    % ...l'autocovariance
    Kh2 = xcov(Prof1);
    Kh= Kh2(:,1:598);
    % Le demi-variogramme est égale à :
    Yh= (K0-Kh); % ou abs(K0-Kh) ???
    % Afficher le demi-variogramme
    subplot(4,1,2);
    plot(Yh);
    title('lin-lin');
    % Calcul du log-log de Yh en faisant le log de X...
    X=1:598;
    Xl=log(X);
    %...puis de Yh
    Yhl=log(Yh);
    % calcul de la régression linéaire avec polyfit d'ordre 1
    [p,s] = polyfit(Xl,Yhl,1);
    ligne = p(1)*X+p(2);
    % afficher le tracé log-log
    subplot(4,1,3);
    plot(Xl,Yhl);
    title('log-log');
    subplot(4,1,4);
    plot(ligne,'r');
    % Dimension fractale :
    Dim = (4-p(2))/2
    Dans sont livre "Chaos, Fractales et Dynamiques en Géographie", André Dauphiné nous dit :

    Une solution pour calculer la dimension fractale pour ce type de données relevées à intervalle régulier le long d'un axe spatial temporel, consiste à calculer le demi-variogramme de la série :

    y(h)=K(0)-K(h)

    Où K(0) est la variance et K(h) l'autocovariance à l'intervalle h.

    En tracant sur un graphique les pts dont les coordonnées sont log y(h) et log h. où y(h) est la valeur du demi-variogramme, et h est le pas d'échantillonage, on obtient une droite dont la pente, qui est toutjours calculée par régression, est liée à la dimension fractale, D, parl a relation D=(4-pente)/2
    Et j'ai construit mon petit programme là-dessus...

    Si vous aviez une idée qui pourrait me mettre sur la piste, ça serait super sympa !!!

    -----

  2. Publicité
  3. 📣 Nouveau projet éditorial de Futura
    🔥🧠 Le Mag Futura est lancé, découvrez notre 1er magazine papier

    Une belle revue de plus de 200 pages et 4 dossiers scientifiques pour tout comprendre à la science qui fera le futur. Nous avons besoin de vous 🙏 pour nous aider à le lancer...

    👉 Je découvre le projet

    Quatre questions à explorer en 2022 :
    → Quels mystères nous cache encore la Lune 🌙 ?
    → Pourra-t-on bientôt tout guérir grâce aux gènes 👩‍⚕️?
    → Comment nourrir le monde sans le détruire 🌍 ?
    → L’intelligence artificielle peut-elle devenir vraiment intelligente 🤖 ?
  4. #2
    invite986312212
    Invité

    Re : Calculs de dimensions fractales avec MATLAB

    salut,

    je ne connais pas assez Matlab pour répondre à ta question, mais je suis un peu surpris par la citation de ton bouquin: premièrement, on n'estime pas un variogramme à l'aide de la formule donnée, on part en général de la définition est ton champ,
    deuxièmement, il n'y a aucune raison pour que le variogramme soit de la forme, comme suggéré.

  5. #3
    rodolpheg

    Re : Calculs de dimensions fractales avec MATLAB

    Hmm, il faudrait que je puisse programmer cette formule du variogramme.
    En fait, dans les systèmes "chaotiques", le variogramme de la série temporelle ou spatiale (n'importe qu'elles données discrètes en fait) suis une loi de puissance dont l'exposant est lié à la dimension fractale.

  6. #4
    invite986312212
    Invité

    Re : Calculs de dimensions fractales avec MATLAB

    Citation Envoyé par rodolpheg Voir le message
    En fait, dans les systèmes "chaotiques", le variogramme de la série temporelle ou spatiale (n'importe qu'elles données discrètes en fait) suis une loi de puissance dont l'exposant est lié à la dimension fractale.
    peut-être au voisinage de zéro alors.

  7. A voir en vidéo sur Futura
  8. #5
    rodolpheg

    Re : Calculs de dimensions fractales avec MATLAB

    Non non, sur tout l'échantillon en fait.

    Voir graph lin-lin (et log-log)


  9. #6
    invite986312212
    Invité

    Re : Calculs de dimensions fractales avec MATLAB

    en principe pour avoir un variogramme non borné, il faut que le champ lui-même soit non borné. Dans le fameux exemple de Matheron, la variable est le logarithme d'une concentration. La concentration tend vers zéro et le logarithme n'est pas borné.

  10. Publicité

Discussions similaires

  1. calculs d'incertitude avec les logarithmes
    Par herman dans le forum Mathématiques du supérieur
    Réponses: 9
    Dernier message: 16/12/2007, 21h27
  2. [Divers] Calculs avec tolérances
    Par albouffon00 dans le forum Dépannage
    Réponses: 5
    Dernier message: 01/02/2007, 09h21
  3. Problèmes avec des calculs pourtant simples...
    Par D_Mac dans le forum Chimie
    Réponses: 2
    Dernier message: 12/09/2006, 23h05
  4. fractales avec matlab
    Par king_ae dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 29/07/2004, 09h59
  5. [E. lutton] fractales et dimensions
    Par Ethan dans le forum [Oct] nombre d'or, fractales, vie artificielle
    Réponses: 1
    Dernier message: 19/10/2003, 22h58