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 :

Application codage lzw sur une matrice 2D


Sujet :

MATLAB

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2013
    Messages : 286
    Points : 105
    Points
    105
    Par défaut Application codage lzw sur une matrice 2D
    Bonjour, je voudrais effectuer un codage Lzw sur une matrice 2D codée en double. Le code source que j'ai trouvé il a en entré X qui est vecteur. J'ai pensé à faire appliquer une lecture zigzag , pour transformer ma matrice en un vecteur. Je ne sais pas si c'est logique sinon y'a un autre moyen?

  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,

    que cherches-tu à faire exactement?

    le codage lzw est utilisé par exemple dans la compression d'image contenant des valeurs entières. Pourquoi vouloir le faire sur des doubles?
    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
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2013
    Messages : 286
    Points : 105
    Points
    105
    Par défaut
    salut magelan, ce genre de codage repose sur la probabilité. C'est pour cela, à mon a avis arrondir ces valeurs augmente la chance de la probabilité d'apparition d'un individu ce qu'il permet de coder (compresser) efficacement. Pour mon cas, je dispose soit disant d'une matrice contenant des valeurs signés et non signés codées en double. Je veux compresser cette matrice en utilisant un codage LZW. J'ai cherché sur le web, le code source de LZW, et le code que je l'ai trouvé est apparemment applicable pour des vecteurs. J'ai pensé donc à faire un appel a un scan Zig-Zag, afin de transformer cette matrice de 2D en un vecteur 1D. L'idée de faire un scan Zig-zag est possible, mais la manière de scan peut réduire l'efficacité du codage. Je cherche avoir un code source LZW adapté pour les images par exemple.

  4. #4
    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
    Citation Envoyé par callofduty Voir le message
    Pour mon cas, je dispose soit disant d'une matrice contenant des valeurs signés et non signés codées en double.
    On va essayer d'être clair : tes valeurs sont non entières? c'est à dire que tu as des chiffres après la virgule? Peux-tu nous montrer quelques exemples de valeurs?
    Si c'est le cas, le codage lzw n'est absolument pas adapté, il est utilisé pour les valeurs au format uint8 ou unit16 par exemple. La fonction imwrite propose le codage lzw avec l'option tiff (voir documentation).
    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.

  5. #5
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2013
    Messages : 286
    Points : 105
    Points
    105
    Par défaut
    Mes valeurs sont avec une virgule flottante:
    -0,07 0,15 -0,15 0,07 0,23 0,22 0,27 0,53 0,17 0,12 0,15 0,40 0,60 0,10 0,75 0,42 -0,27 0,35 0,25 0,53 0,23 0,60 0,17 0,30 0,40 0,25 0,05 0,50 0,48 0,25 0,20 0,40 0,32 0,75 0,02 0,33 0,48 0,28 0,42 0,25 0,23 0,03 0,18 0,47 0,12 0,35 0,00 0,28 0,32 0,23 0,17 0,88 0,15 0,10 0,37 0,12 0,23 0,20 0,30 0,18 0,35 0,08 0,63 0,45 0,77 0,12 0,38 0,13 0,50...etc
    Sinon, comme vous dites que Lzw n'est pas applicable sur les variables de type double, je peux faire appel à une conversion.

  6. #6
    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
    Si tes nombres ont tous deux chiffres après la virgules, tu pourrais toujours multiplier par 100 pour avoir des valeurs entières, mais il reste toujours le problème des valeurs négatives.

    Pourquoi cherches-tu à compresser tes données? Pourquoi tu as choisi le codage lzw?
    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.

  7. #7
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2013
    Messages : 286
    Points : 105
    Points
    105
    Par défaut
    C'est vrais, dans mon cas mes chiffres sont soit entiers ou avec 2 chiffres avec la virgule. Je cherche à les compresser pour réduire la taille de stockage. Le choix de LZW c'est parce que sont mieux adaptés aux fichiers de type texte. De l'autre coté, c'est pour évoluer l'efficacité du codage en associant un autre codeur entropique.

  8. #8
    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
    Citation Envoyé par callofduty Voir le message
    Le choix de LZW c'est parce que sont mieux adaptés aux fichiers de type texte.
    Faux, c'est adapté pour les chaines de caractères, rien à voir avec le format du fichier!
    Je ne pense pas que cela soit adapté pour des valeurs réelles, si tu veux compresser tes données, pose la question dans le forum algorithme en précisant exactement les données que tu possèdes, ce que tu souhaites en faire, le contexte, etc...
    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.

  9. #9
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2013
    Messages : 286
    Points : 105
    Points
    105
    Par défaut
    Il est préférable adapté pour les fichiers contenant des données répétitives. Les fichiers texte et des images graphiques monochromes sont idéales pour la compression LZW. Les fichiers compressés qui ne contiennent pas de données répétitives seront effectivement croître en taille à cause du dictionnaire de données LZW. Pouvez vous , m'orienter pour telecharger un code source de Lzw appliqué sur une image. Sinon quel est le codeur le plus adapté a mon type de données. Merci

  10. #10
    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
    Citation Envoyé par callofduty Voir le message
    Les fichiers texte
    J'ai l'impression que tu confonds "fichier contenant du texte" et "fichier au format texte".

    Pour tes deux dernières questions, je t'ai déjà répondu.
    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.

Discussions similaires

  1. Application d'homothetie sur une image
    Par Khertan dans le forum Calcul scientifique
    Réponses: 2
    Dernier message: 04/01/2008, 17h26
  2. (debutante ) aide sur une matrice ! svp
    Par sicile dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 07/06/2007, 17h32
  3. Suppression d'une dimension sur une matrice
    Par damleg dans le forum MATLAB
    Réponses: 6
    Dernier message: 03/04/2007, 14h59
  4. référencement sur une matrice
    Par bni dans le forum C++
    Réponses: 3
    Dernier message: 24/03/2005, 00h06
  5. application qui connecte sur une page web
    Par spoolz dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 14/04/2004, 09h47

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