タグ

algorithmとcompressionに関するTAKESAKOのブックマーク (3)

  • LZ法再び - DO++

    可逆データ圧縮としてはgzipやlha, pngなどダントツで使われているLZ法(Lemple Ziv法)ですが、他のデータ圧縮法(BWT法、PPM法、CM法)に比べ圧縮率が低いということで研究の対象としてはあまり注目をあびていませんでした。ところが次の論文で真面目にやれば圧縮率は非常に高くなる可能性があり、BWT法とかそれを超える可能性があることが示されています。。 "On the bit-complexity of Lempel-Ziv compression", SODA 2009, P. Ferragina, et. al. [pdf] まず、LZ法についておさらいですが、基的にはデータを前から順番に見ていったときに、既に出現した文字列がもう一度出現(マッチング)したら、その文字列を前回出現した(相対)位置と長さのペア(pos, len)で置き換えることで圧縮する方法です。データ

    LZ法再び - DO++
  • 高速な算術圧縮を実現する「Range Coder」

    はじめに 記事では、全体のサイズが最小となる算術圧縮を高速に実現するRange Coder(以下RC)を紹介します。 算術圧縮は、各文字の出現確率が分かっている場合にそのデータを最小長で表現可能な符号法です。各文字に固定の符号を割り当てるHuffman法とは違い、符号化を状態更新とみなし、すべての文字を符号し終わった後の状態を保存することで符号化を実現します。これにより1文字単位の符号長を1bitより細かく調整することが可能となります。 算術符号は圧縮率が高い反面、ビット単位の演算処理が大量に発生するため、符号化、復号化ともにHuffman符号に比べ遅いという問題点があります。今回紹介するRCは、算術符号の処理をバイト単位で行うことで高速な処理を可能にします。 また、算術圧縮については概要から説明します。 対象読者 C++の利用者を対象としています。データ圧縮の基礎を知っていることが望ま

    高速な算術圧縮を実現する「Range Coder」
    TAKESAKO
    TAKESAKO 2008/09/16
    レンジコーダーは pathtraq の URL 圧縮に使われています
  • データ圧縮法概説 目次

    最終更新日:2001年7月2日 第1章へ webmaster@snap-tck.com Copyleft (C) 2000 SNAP(Sugimoto Norio Art Production)

    TAKESAKO
    TAKESAKO 2007/06/28
    これは非常にわかりやすい解説
  • 1