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

Traitement d'images Discussion :

Matlab + Transformée de Radon [Débutant(e)]


Sujet :

Traitement d'images

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 8
    Points
    8
    Par défaut Matlab + Transformée de Radon
    Bonjour à tous,

    J'aimerais simuler un sinogramme sous Matlab pour ensuite pouvoir le reconstruire avec Matlab mais aussi d'autres logiciels. C'est pour mieux comprendre comment mes différents logiciels reconstruisent l'information.

    Pour simuler le sinogramme, je me suis inspirée de l'utilisation de la fonction radon dans le help de matlab à partir d'un fantome (cf image):

    http://www.mathworks.fr/help/toolbox...ref/radon.html

    Voici le code que j'utilise:

    > theta = 0:180;
    > [sino,xp] = radon(image,theta);

    Mon image fait 147x147 pixel. Donc je ne comprends pas pourquoi mon sino fait 211(ligne)x181(colonne). Pour le 181, c'est ok c'est la taille que je veux simuler, par contre pourquoi 211 et pas 147 et pourquoi j'ai pas 181 lignes et 211 colonnes ?

    Le sinogramme que j'essaie de simuler doit avoir la dimension de 181(ligne)x147(colonne), donc je me suis dit que je pouvais tourner le sinogramme et utiliser la fonction imresize de matlab pour qu'il est la taille de 181x147.

    > sino_resize=imresize(sino','Scale',[1 0.696]);

    Sauf que quand on reconstruit l'image fait plus que 102x102 au lieu de 147x147...

    Comment les dimensions sont-elles gérées ?
    Comment imposer la taille de l'image ?

    Merci pour votre aide !
    Images attachées Images attachées   

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    la transformée de radon permet de projeter les intensités de l'image le long de different rayon orienté de 0 à 180. Donc tu peux imaginer un ensemble de droite qui tourne autour du centre de ton image. Chaque colonne contenue dans sino contiendra les projections suivant un angle donné, et pour se repérer, ces projections sont calculées à partir de composantes radiales. Ces composantes sont calculées en fonction de la diagonale de ton image (là ou le nombre de pixel pris en compte est maximal) : LongueurDiagonale = sqrt(size(image,1).^2+size(image,1).^2) = 207,9 dans ton cas (arrondi à 211 suivant le calcul réel que fait MATLAB). Pour reconstruire entièrement ton image, il faut donc un sinogramme de taille 145lignesx180colonnes.

    La taille de ce sinogramme ne devrait pas être tellement différente d'un logiciel à l'autre : c'est la théorie qui fixe cette taille (tout du moins la taille minimum pour pouvoir reconstruire correctement l'image).
    Plus d'explications dans la doc de MATLAB sur la transformée de Radon :
    Radon Transform
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Bonjour Magelan et merci pour ta réponse.

    Je comprends mieux la taille de 211.

    Lors de mon acquisition tomographique, j'ai fait 147 pas de translation et 181 pas de rotation, ce qui me donne directement un sinogramme de 147x181.

    C'est ce sinogramme que je cherchait à simuler dans un premier temps. Et ensuite imposer la taille de l'image reconstruite à 147x147 qui se fait avec
    recons = iradon(sino,theta,147);

    Donc ok maintenant j'ai compris et ca marche.

    C'etait la premiere étape de mon "problème" mon but est surtout de voir l'influence de la reconstruction sur un sinogramme acquis sur une gamme différente de [0-180] (par exemple [5-85]) et avec des pas d'acquisition en angles qui peuvent ne pas etre regulier (au lieu de tout les 1 degre par exemple le premier pas fait 2 degre le dixieme 0,5 degre etc...) afin de voir les erreurs qui peuvent se produire sur la localisation et la forme d'un objet...

    D'ailleurs si vous avez des infos sur ce type de reconstruction irrégulière je suis preneuse !

    Merci pour votre aide,

    Lo.

Discussions similaires

  1. Transformée de Radon
    Par bloody83 dans le forum OpenCV
    Réponses: 0
    Dernier message: 19/01/2010, 22h54
  2. transformé de Radon discrète inversible
    Par inès83 dans le forum Traitement d'images
    Réponses: 1
    Dernier message: 16/12/2009, 09h59
  3. Appliquer la transformée de radon inverse (iradon)
    Par TeamJP dans le forum Traitement d'images
    Réponses: 3
    Dernier message: 12/11/2009, 16h44
  4. transformé de Radon discrète
    Par inès83 dans le forum Traitement d'images
    Réponses: 3
    Dernier message: 29/09/2009, 10h59
  5. Transformée de Radon
    Par inès83 dans le forum Traitement d'images
    Réponses: 4
    Dernier message: 26/06/2009, 10h30

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