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

Algorithmes et structures de données Discussion :

Decodage de huffman


Sujet :

Algorithmes et structures de données

  1. #1
    Membre régulier
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Points : 100
    Points
    100
    Par défaut Decodage de huffman
    bonjour

    comment fait t on le decodage de huffman

    par exemple java coder par 100110

    Comment fait t'on pour connaitre le nombre de bit utilisé par chaque lettre?
    le reste est facile si on connait sa

  2. #2
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par harris_macken
    bonjour

    comment fait t on le decodage de huffman

    par exemple java coder par 100110

    Comment fait t'on pour connaitre le nombre de bit utilisé par chaque lettre?
    le reste est facile si on connait sa
    Le choix du code est tel qu'il n'y a pas d'ambiguité.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  3. #3
    Membre régulier
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Points : 100
    Points
    100
    Par défaut
    j ai pas compris ta reponse peut tu etre plus explicite s il te plait

    merci

  4. #4
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Ca veut dire qu'il n'y a pas plusieurs comprehensions du texte possible.

    par exemple :
    si A = 10
    B = 00
    C = 100
    D = 01111
    E = ...

    Si le code commence par :
    1000....
    Tu ne sais pas si c'est:
    10-00 ou 100-0qqch d'autres dans le code.

    Ensuite, ça dépend si tu prends un codage de huffman fixe (par exemple basé sur les fréquences d'apparitions des lettre ds la langues françaises), ou bien un codage qui change à chaque fois. Dans ce cas, il te faudra reconstruire l'arbre de codage pour chaque fichier. Mais cherche sur google, il y aura des schéma plus explicite que des mots.

    Edit : matte le lien donné par progfou
    Je ne répondrai à aucune question technique en privé

  5. #5
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    Ca fait suite à ce post je suppose :
    http://www.developpez.net/forums/sho...d.php?t=220523

    Merci de le mettre à la suite la prochaine fois...

    Pour ta question, quand tu as constitué le code, en choisissant la lettre et le code binaire correspondant, il te faut envoyer le doctionnaire ainsi constitué, avec le texte codé, afin que le décodeur sache reprendre le code binaire et l'associer à la bonne lettre.
    Le lien qui a été donné sur l'autre message que tu as posté me semble particulièrement explicite et suffisant.
    http://tcharles.developpez.com/Huffman/
    Aucune réponse à une question technique par MP.
    Ce qui vous pose problème peut poser problème à un(e) autre

    http://thebrutace.labrute.fr

  6. #6
    Membre régulier
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Points : 100
    Points
    100
    Par défaut
    Justement progfu ma difficulter est que je me demande comment realiser l'algorithme:

    exemple

    Java : 100110

    Dictionnaire
    A=0
    J=10
    V=11

    faut il essayer toute les combinaison possible de mes lettres du dictionnaires et trouver la combinaison qui correspond a java ??

    dans ce cas j imagine que pour un texte avec 256 lettre sa serait exponentielle

  7. #7
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    Tu as juste à lire ton flux binaire au fur et à mesure, bit à bit, et comparer avec le dico.
    Dans ton cas :
    1 => pas connu
    10 => J - réinitialisation
    0 => A - réinitialisation
    1 => pas connu
    11 => V - réinitialisation
    0 => A

    Et voilà.

    Avec ça, plus le lien, si tu le lis, ça doit largement suffire.
    Aucune réponse à une question technique par MP.
    Ce qui vous pose problème peut poser problème à un(e) autre

    http://thebrutace.labrute.fr

  8. #8
    Membre régulier
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Points : 100
    Points
    100
    Par défaut
    Merci beuacoup

    mon code marche bien

    J ai une autre question :
    Qu est ce qui explique que mon code à un taux de compression inférieur à celui des logiciels tels que win zip et autre??

  9. #9
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par harris_macken
    Merci beuacoup

    mon code marche bien

    J ai une autre question :
    Qu est ce qui explique que mon code à un taux de compression inférieur à celui des logiciels tels que win zip et autre??
    Ils n'utilisent pas Huffman mais d'autres algorithmes, ou une combinaison d'algorithmes (Huffman peut être utilisé par exemple sur le résultat d'un LZ).
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  10. #10
    Membre éclairé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Points : 763
    Points
    763
    Par défaut
    J'ajouterai juste que, même si je ne connais pas les derniers algorithmes utilisés, mais en gros, on va trouver LZW pour les plus anciens, du Huffman modifié ou encore du codage arithmétique.
    Aucune réponse à une question technique par MP.
    Ce qui vous pose problème peut poser problème à un(e) autre

    http://thebrutace.labrute.fr

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. arbre d'huffman
    Par junior7872 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 23/05/2005, 23h00
  2. [VBS] décodage base 64
    Par windob dans le forum VBScript
    Réponses: 2
    Dernier message: 12/04/2004, 00h53
  3. cherche algos Delphi pour : Huffman, R.S.A, D.E.S.
    Par X-Delphi dans le forum Débuter
    Réponses: 3
    Dernier message: 24/08/2002, 18h51
  4. Algorithme de Huffman
    Par mmuller57 dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 15/05/2002, 11h47

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