Transformé en cosinus discret (DCT et DCTInverse)
Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

Transformé en cosinus discret (DCT et DCTInverse)



  1. #1
    Electronique2

    Transformé en cosinus discret (DCT et DCTInverse)


    ------

    Salut tt le monde,

    Je travaille sur un projet à propos du codage à description multiple de l'image en utilisant la transformé en cosinus discret (DCT) .

    D'après ce que j'ai conclut à partir de l'un des article que j'ai lu, que je dois appliquer la DCT sur mon image puis classer les coefficients résultants en ordre pour obtenir 2 matrices l'une contient les grands coefficients et la 2eme contiendra les petits coef.

    Vu que je suis débutante sur Matlab g lu que pour appliquer la DCT j'utilise la fonction dct2 mais ca me donne toujours un message d'erreur

    Est ce que Quelqu'un pourrait m'aider dans ce problème? et Merci beaucoup.

    -----

  2. #2
    Electronique2

    Re : Transformé en cosinus discret (DCT et DCTInverse)

    j'attends toujours votre aide

  3. #3
    lou_ibmix_xi

    Re : Transformé en cosinus discret (DCT et DCTInverse)

    On attends toujours:
    -la manière dont tu as utilisé la fonction
    -le message d'erreur

    Comment veux-tu que nous devinions ?

  4. #4
    Electronique2

    Re : Transformé en cosinus discret (DCT et DCTInverse)

    Le problème c'est que je veux appliquer la DCT sur tte l'image sans la diviser en blocs 8*8 puis trier les coefficients résultants;

    Vu que je suis débutante en matlab j'ai lu que je dois utiliser la fonction dct2 donc voila le code que le code matlab+ l'erreur

    K= imread('Barbara.jpg');
    subplot(1,2,1);
    subimage(K)
    L= dct2(K);

    ??? Subscripted assignment dimension mismatch.

    Error in ==> dct at 57
    y(1:n,: ) = aa;

    Error in ==> dct2 at 50
    b = dct(dct(arg1).').';

    Et merci d'avance

  5. A voir en vidéo sur Futura
  6. #5
    lou_ibmix_xi

    Re : Transformé en cosinus discret (DCT et DCTInverse)

    Chez moi "dct2" ne fonctionne pas directement sur une image couleur, mais j'utilise "OCTAVE" qui a peut-être un comportement différent de "MATLAB". Si ton image est en couleur, peut-être faut-il faire la dct plan de couleur par plan de couleur:
    Code:
    L_red = dct2(K(:, :, 1));
    L_green = dct2(K(:, :, 2));
    L_blue = dct2(K(:, :, 3));

  7. #6
    Electronique2

    Re : Transformé en cosinus discret (DCT et DCTInverse)

    ok , et pour le cas de l'image en noir et blanc est ce que je peux l'utiliser (dct2) et comment?

  8. #7
    Electronique2

    Re : Transformé en cosinus discret (DCT et DCTInverse)

    Citation Envoyé par lou_ibmix_xi Voir le message
    Chez moi "dct2" ne fonctionne pas directement sur une image couleur, mais j'utilise "OCTAVE" qui a peut-être un comportement différent de "MATLAB". Si ton image est en couleur, peut-être faut-il faire la dct plan de couleur par plan de couleur:
    Code:
    L_red = dct2(K(:, :, 1));
    L_green = dct2(K(:, :, 2));
    L_blue = dct2(K(:, :, 3));

    1/ J'ai essayé ce code et ca marche merci ms le problème comment je peux travailler sur tous les coefficients rsultants après l'application de la dct vu que je veux les trier en ordre et coder ceux de grandes valeurs dans une matrice et les petiets dans une autre ?

    2/ Et pour le cas de l'image en noir et blanc, est ce que je peux appliquer directement la (dct2) et comment?

  9. #8
    lou_ibmix_xi

    Re : Transformé en cosinus discret (DCT et DCTInverse)

    2/ Et pour le cas de l'image en noir et blanc, est ce que je peux appliquer directement la (dct2) et comment?
    Je pense que ton image utilises les 3 plans RGB ou YUV, une fois importée dans MATLAB, tu peux convertir tes trois plans en niveaux de gris. Pour être sûr, fais un "size" sur la matrice de l'image après import, tu devrais avoir la hauteur et la largeur en nb de pixels, et si c'est bien une image "couleur", un 3 pour 3 plans. Assure toi du type d'espace colorimètrique utilisé (yuv ou rgb), et tu trouveras les formules de conversions pour transformer ta matrice en niveau de gris.

    1/ J'ai essayé ce code et ca marche merci ms le problème comment je peux travailler sur tous les coefficients rsultants après l'application de la dct vu que je veux les trier en ordre et coder ceux de grandes valeurs dans une matrice et les petiets dans une autre ?
    les fonctions "sort" et "find" devraient t'être utiles.

  10. #9
    Electronique2

    Re : Transformé en cosinus discret (DCT et DCTInverse)

    Merci infiniment

    Une autre question svp, on peut transformer une matrice en vecteur sur matlab mais est ce qu'il y a une commande qui fait l'inverse (passage d'un vecteur à une matrice)?

  11. #10
    Electronique2

    Re : Transformé en cosinus discret (DCT et DCTInverse)

    C'est bon c'est la commande ' reshape' merci

Discussions similaires

  1. compression DCT
    Par invitefdd33202 dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 23/04/2011, 12h29
  2. espace discret
    Par invitedd6b3b31 dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 14/02/2010, 08h30
  3. transforme de laplace en transforme en z
    Par invite57acee33 dans le forum Électronique
    Réponses: 2
    Dernier message: 12/10/2007, 00h04
  4. comment passe de la transforme de laplace en transforme en z
    Par invite57acee33 dans le forum Technologies
    Réponses: 0
    Dernier message: 07/05/2007, 13h30
  5. Pi et univers discret
    Par doryphore dans le forum Mathématiques du supérieur
    Réponses: 6
    Dernier message: 11/09/2005, 12h41