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

MATLAB Discussion :

comprehension code matlab


Sujet :

MATLAB

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 64
    Points : 34
    Points
    34
    Par défaut comprehension code matlab
    Bonjour,
    Est ce que quelqu'un peux m'aider à comprendre ce qu'on fait dans ces lignes de code? ça renvoie quoi? vecteur?matrice???

    Merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    % VG        - template handle(s)
    % VF        - handle of image to estimate params from
    vx1 = sqrt(sum(VG(1).mat(1:3,1:3).^2));
    vx2 = vx1;
     
    kx = (pi*((1:k(1))'-1)/VG(1).dim(1)/vx1(1)).^2; ox=ones(k(1),1);
    ky = (pi*((1:k(2))'-1)/VG(1).dim(2)/vx1(2)).^2; oy=ones(k(2),1);
    kz = (pi*((1:k(3))'-1)/VG(1).dim(3)/vx1(3)).^2; oz=ones(k(3),1);

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 64
    Points : 34
    Points
    34
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    k    = max(round((VG(1).dim(1:3).*tmp)/cutoff),[1 1 1]);
    un élément qui manquait pour comprendre le code

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 319
    Points : 843
    Points
    843
    Par défaut
    Bonjour,

    A première vue, ça m'a l'air d'un traitement d'image, mais impossible d'en dire plus sans le contexte (d'autant plus que les variables sont peu explicites).

    Pourquoi ne pas travailler avec le débuggueur ? Tu pourras ainsi suivre ligne par ligne les exécutions des commandes, et comprendre sur un exemple concret ...
    "Donnez un poisson à un Homme, et il mangera un jour. Apprenez-lui à pêcher, et il mangera tous les jours."

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 64
    Points : 34
    Points
    34
    Par défaut
    je ne peux pas utiliser le débogueur, vu que je ne peux pas faire tourner mon code, on m'a juste donné le code pour le détailler et donner une signification pour chaque résultat!!!
    c'est une méthode de SPM pour faire du recalage d'images.
    c'est juste un bout de code, sachant que les lignes d'avant on y a fait une Transformée en Cosinus Discrète.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 64
    Points : 34
    Points
    34
    Par défaut
    Ma première partie du code:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    % Number of basis functions for x, y & z
    %-----------------------------------------------------------------------
    tmp  = sqrt(sum(VG(1).mat(1:3,1:3).^2));
    k    = max(round((VG(1).dim(1:3).*tmp)/cutoff),[1 1 1]);
     
    % Scaling is to improve stability.
    %-----------------------------------------------------------------------
    stabilise = 8;  %on fait par bloc de 8*8
    % on fait une DCT(transformée en cosinus discrète), ça nous donne la
    % transformation??
    basX = spm_dctmtx(VG(1).dim(1),k(1))*stabilise; 
    basY = spm_dctmtx(VG(1).dim(2),k(2))*stabilise;
    basZ = spm_dctmtx(VG(1).dim(3),k(3))*stabilise;
                      % j'obtiens les dérivées de la DCT, ça nous donne
                      % l'intensité?
    dbasX = spm_dctmtx(VG(1).dim(1),k(1),'diff')*stabilise;
    dbasY = spm_dctmtx(VG(1).dim(2),k(2),'diff')*stabilise;
    dbasZ = spm_dctmtx(VG(1).dim(3),k(3),'diff')*stabilise;
     
    vx1 = sqrt(sum(VG(1).mat(1:3,1:3).^2));
    vx2 = vx1;
    %   %définition des trois directions orthogonales???
    kx = (pi*((1:k(1))'-1)/VG(1).dim(1)/vx1(1)).^2; ox=ones(k(1),1);
    ky = (pi*((1:k(2))'-1)/VG(1).dim(2)/vx1(2)).^2; oy=ones(k(2),1);
    kz = (pi*((1:k(3))'-1)/VG(1).dim(3)/vx1(3)).^2; oz=ones(k(3),1);

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 64
    Points : 34
    Points
    34
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      %définition des trois directions orthogonales???
    kx = (pi*((1:k(1))'-1)/VG(1).dim(1)/vx1(1)).^2; ox=ones(k(1),1);
    ky = (pi*((1:k(2))'-1)/VG(1).dim(2)/vx1(2)).^2; oy=ones(k(2),1);
    kz = (pi*((1:k(3))'-1)/VG(1).dim(3)/vx1(3)).^2; oz=ones(k(3),1);
    est ce que à votre avis, ce qu'on fait là est une décomposition de l'image de base VG en sous matrice??

Discussions similaires

  1. code matlab--> code C
    Par brel380 dans le forum MATLAB
    Réponses: 1
    Dernier message: 21/05/2007, 10h30
  2. Utilliser du code matlab dans Java
    Par mehdiing dans le forum MATLAB
    Réponses: 1
    Dernier message: 06/05/2007, 11h36
  3. Transcrire une fonction mathématique en code Matlab
    Par casper84 dans le forum MATLAB
    Réponses: 1
    Dernier message: 30/03/2007, 17h04
  4. Utilisation du code MATLAB dans environnement .NET
    Par SOPRA-Eherve dans le forum MATLAB
    Réponses: 5
    Dernier message: 28/11/2006, 12h43
  5. DCT & code matlab
    Par meera dans le forum Images
    Réponses: 3
    Dernier message: 19/07/2006, 16h02

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