Algorithmes De Compression De Données
Je me demandais si quelqu'un a une liste d'algorithmes de compression de données. Je sais à peu près rien sur la compression de données et j'espérais en apprendre plus sur les différents algorithmes et voir ceux qui sont les plus récents et n'ont pas encore développé sur un terrain de ASICs.
Je suis l'espoir de mettre en œuvre une compression des données de l'ASIC, qui est indépendant du type de données (audio,vidéo,images,etc.)
Si ma question est trop ouvert, s'il vous plaît laissez-moi savoir et je vais réviser. Merci
- Hmmmm il existe beaucoup d'algorithmes de compression de ce que vous cherchez en termes de "meilleur". Comme la vitesse, ou la totalité de la perte de moins, ou de plus haut taux de compression? En termes de qui ont de l'ASIC conçu pour eux c'est plus une question de recherche. Je suis sûr que la plupart, si pas tous les intégrer des algorithmes de compression ont une certaine sorte de l'ASIC, la mise en oeuvre.
- ccs.neu.edu/home/jnl22/oldsite/cshonor/jeff.html
Vous devez vous connecter pour publier un commentaire.
Il y a une tonne d'algorithmes de compression là-bas. Ce dont vous avez besoin ici est une compression sans perte algorithme de compression. Une compression sans perte algorithme compresse les données de telle sorte qu'il peut être décompressé à obtenir exactement ce qui a été donné avant la compression. Le contraire serait un algorithme de compression avec perte. La compression avec perte peut supprimer les données d'un fichier. Les images PNG utilise une compression sans perte, tandis que les images JPEG peuvent et le font souvent l'utilisation de la compression avec perte.
Certains de la plus connue des algorithmes de compression comprennent:
Archives ZIP utiliser une combinaison de codage de Huffman et LZ77 pour donner rapide de compression et de décompression fois et raisonnablement bon taux de compression.
LZ77 est assez bien une forme généralisée de RLE et il va souvent permettre de bien meilleurs résultats.
Huffman permet de répéter octets pour représenter le moins de bits.
Imaginez un fichier texte qui ressemblait à ceci:
Typique de mise en œuvre de Huffman entraînerait la carte suivante:
Si le fichier est compressé à ceci:
18 octets aller jusqu'à 5. Bien sûr, la table doit être inclus dans le fichier. Cet algorithme fonctionne mieux avec plus de données 😛
Alex Allain a un bel article sur l'Algorithme de Compression de Huffman dans le cas où le Wiki ne suffit pas.
N'hésitez pas à demander pour plus d'informations. Cette rubrique est vachement large.
ababab
.00001110 11101110 11100000 10101010 10000011 01101101 10101010 10110110 11011101 11000000
avec les 5 dernières0
s'étant padding bits. L'ordre n'importe pas.Voici quelques algorithmes sans perte (peut parfaitement récupérer les données d'origine à l'aide de ces):
Beaucoup de bien connu des formats tels que png ou gif utilisent des variantes ou combinaisons de ceux-ci.
De l'autre côté, il y a perte des algorithmes de trop (compromis précision de compresser vos données, mais souvent fonctionne assez bien). L'état de l'art avec perte techniques de combiner les idées d'une différence de codage, de quantification, et DCT, entre autres.
Pour en savoir plus sur la compression de données, je vous recommande de https://www.elsevier.com/books/introduction-to-data-compression/sayood/978-0-12-809474-7. C'est une très accessible, ce texte d'introduction. La 3e édition de là en pdf en ligne.
Il y a beaucoup d'algorithmes de compression de données autour de. Si vous cherchez quelque chose d'encyclopédique, je recommande la Manuel de Compression de Données par Salomon et al, qui est aussi complets que vous êtes susceptible d'avoir (et a de bons articles sur les principes et la pratique de la compression de données, ainsi).
Ma meilleure supposition est que l'ASIC, la compression est généralement mise en œuvre pour une application particulière, ou en tant qu'institution spécialisée de l'élément d'un SoC, plutôt que comme un stand-alone de compression de la puce. Je doute aussi que la recherche d'un "plus récente et la plus" format de compression est la voie à suivre ici-je en droit d'attendre de la normalisation, de la maturité, et d'adéquation à un but particulier à être de plus en plus important.
Mon papier Une Enquête auprès Des Approches Architecturales pour la Compression de Données dans la mémoire Cache et la Mémoire Principale Systèmes (permalink ici) passe en revue de nombreux algorithmes de compression et aussi des techniques pour leur utilisation dans les processeurs modernes. Il examine à la fois la recherche de qualité et de la qualité commerciale des algorithmes de compression/techniques, de sorte que vous pouvez en trouver un qui n'a pas encore été mis en œuvre dans les ASIC.
LZW ou Lempel Ziv algorithme est un grand lossless un. Pseudo-code ici: http://oldwww.rasip.fer.hr/research/compress/algorithms/fund/lz/lzw.html