「実際に発生するビット文字列はランダムにはほど遠い」ので、圧縮関数は実用的です。


7

これは、このスレッドでのAndrej Bauerの回答に関係しているので、コメントしました。しかし、私はそれは質問の価値があると信じています。

Andrejは、長さが3以下のすべてのビット文字列のセットが与えられた場合、ロスレス圧縮関数はそれらの一部のみを「圧縮」できると説明しています。その他、たとえば「01」は、実際には「0001」などの長さ4の文字列に圧縮する必要があります。圧縮率は、単に入力セット全体の平均圧縮です。

このため、可逆圧縮は実用的ではないように見えますが、重要な引用は次のとおりです。

実際に発生するビット文字列はランダムではなく、多くの規則性を示します。

たとえば、マルチメディアファイルがランダムなビット文字列以外のもので表現されているとは信じがたいです。アルゴリズムが実際に役立つようにするために圧縮関数が活用するパターンは本当にありますか?


3
私は専門家ではありませんが、間違いなく多くの規則性があります。木の絵を考えてみましょう。緑と茶色が画像を支配します。これらの値は多く見られるため、より小さな値に圧縮できます。次に、ロスレス圧縮のアイデアを考えてみましょう。何かを与える必要があります。それがここで話されていることです。最後に、ランダムに文字列を生成する実験を試して、圧縮率が何回にわたって平均されるかを確認します。あなたが正しいことをするなら(それは難しいかもしれません)、あなたは本当の全体的な利点を見ることはありません。
ジェイク

2
また、ランダムデータをマルチメディアファイルとして故意に格納していたとしても、ファイル自体は繰り返しがあり、圧縮できる構造を持っています-ヘッダー、フレームデータ(フレームを含むものなど)など。
Luke Mathieson、2015年

回答:


10

まず第一に、あなたの言うとおりです。マルチメディアファイルはランダムファイルとして(多かれ少なかれ)表現されます。その理由は、それらのファイルはすでに圧縮されている(損失がある)ためです。たとえば、mp3は圧縮アルゴリズムにすぎません。
結果として、さらに圧縮しても目立った圧縮は行われません(実際、既に圧縮された(マルチメディア)ファイルの可逆圧縮は成功への道ではありませんでした)。

あなたは他の点でも正しいです:可逆圧縮は平均して圧縮することはできません。たとえば、考えられるデータセットは異なる要素で構成されています。要素とセットを常に区別できるようにするには、ファイルごとにいくつのビットが必要ですか?右、。合計ですべてのファイルは、ビット以上で表されます。これらのファイルの一部をビット未満で、一部のファイルはビットを超えて表されます。言うことはこれで全部です。 2nnn2nnn

簡単に言うと、テキストファイルはランダムとはほど遠い(私の回答の文字の分布を考慮し、eの数とzの数を比較するだけです!)ランダムデータ(例:既に圧縮されたデータまたは暗号化されたデータ)は意味がありません。


少し問題を混ぜていると思います。「マルチメディアファイルの圧縮成功への道ではありませんでした」-LZ は非圧縮マルチメディア(WAVやTIFFなど)で動作しますか?LZは文字列用に設計されています。つまり、文字列以外のデータを保持する場合と保持しない場合がある特定の前提があります。
ラファエル

テキストファイルや手紙の配布に関しては、確かにあなたのポイントを理解できます。非常に興味深いもの。
AlexMayle 2015年

@Raphaelその通り、WAVまたはTIFFを圧縮すると、顕著な圧縮が得られるはずです。該当箇所に「圧縮」という言葉を入れました。他の点については、はい、LZアルゴリズムは文字列に対して定義されましたが、私が知る限り、zipなどはすべてのバイナリデータに対して機能します。
john_leo

わかりましたが、もう1つコメントがあります。すべてのマルチメディア圧縮が非可逆であるとは限りません。たとえば、FLACとPNGは損失なしで大幅に圧縮します。(WAVまたはTIFFで始まる)ZIPをFLACまたはPNGと比較することは、設計の仮定の影響に関して教育的である可能性があります。
ラファエル

@Raphaelの代わりに、実際の圧縮アルゴリズムへの参照を根絶することを選択しました。ZIP、FLAC、またはWHATNOTの話は別のテーマである可能性があることがわかりました。
john_leo

9

マルチメディアデータはランダムからはほど遠いため、圧縮率が非常に高くなります。たとえば、1920x1080ピクセルの解像度、24ビットカラー、24フレーム/秒の1秒のビデオは、約150MBの非圧縮データです。マルチメディアファイルは既に圧縮されているため、これ以上圧縮することは困難です。

ただし、圧縮されていないマルチメディアデータであっても、0と1のストリームと見なすと、かなりランダムに見えます。(とは言っても、GIFはLZWを使用して圧縮され、本質的にビットのストリームとして扱います。それはまともな動作をします。)意味を理解しているマルチメディアデータを見ると、そこには多くの構造があります。

  • 画像には多くの色のグラデーションと同様の色のブロックがあります。JPEGはこのようなものを多く使用します。
  • ビデオでは、ほぼすべてのフレームが直前のフレームと非常によく似ており、一部が少し移動しています。MPEGはこれを広範囲に使用します。
  • 私たちが興味を持っているサウンドの多くは、ランダムな周波数ではなく、共振しているオブジェクトからの波形です。

もちろん、損失の多いJPEGとMPEGについて説明しました。しかし、原則として、これらのアイデアを使用して、この非ランダムデータの良好な可逆圧縮率を生成できると思います。圧縮にかかる時間はおそらく非常に長いので、だれもそれを試みようとは思いません。


ここにいくつかの良い例があります。
AlexMayle 2015年

1920 * 1080 * 24 * 24は、1.11 Gbの非圧縮データです。150Mbは320x480グレースケールに十分です。@ 1fps。
FRob 2015年

@FRobバイトではなくバイト。「Mb」を「MB」に修正しました。
David Richerby 2015年

1
最後の段落について:このようなことは実際に行われます。非可逆圧縮アルゴリズムを使用したスト​​リームと、従来の方法で圧縮された元の圧縮アルゴリズムとの差に基づいた可逆オーディオコーデックがあります。
Carsten S

3

はい、ロスレス圧縮は多くのファイルがランダムではないという事実を利用しています。はい、ほとんどのマルチメディアファイルはランダムではありません。

FAX画像はこの効果の良い例です。最も単純な形式では、ファックスイメージは、あるドキュメントの1ページをスキャンして得られる2D白黒イメージです。この画像をビットのシーケンス、ピクセルごとに1ビット(0 =白、1 =黒)として表すと、結果のバイナリデータがまったくランダムではないことがわかります。たとえば、次のようなランダムでないパターンを見つけます。

  • 通常、FAX画像には、黒のピクセルよりも白のピクセルが多く含まれています。

  • また、各ピクセルは、左のピクセルと同じ色である可能性が、異なる色である可能性よりも高くなります。

  • より洗練されたパターンの場合:ピクセルを水平に左から右にスキャンし、同じ色の連続するピクセルの各「ラン」の長さを数えることを想像してください。次に、長いランは短いランよりも一般的であり、白いピクセルの長いランは黒いピクセルの長いランより一般的です。

FAX圧縮アルゴリズムは、これらのランダムでない側面を利用するように設計されています。初期のFAX圧縮アルゴリズムは、スキャンされた画像のこれらの非ランダムプロパティを非常に直接活用する単純な可逆圧縮方式であるため、特に良い例です。

たとえば、FAX画像を圧縮するための初期のスキームでは、ランレングスエンコーディングハフマンエンコーディング組み合わせて使用していました。ランレングスエンコーディングは、同じ色のピクセルの各ランを、ランの長さをカウントする単一の整数に置き換えます。たとえば、00000110001は「5 2 3 1」になります。ランレングスエンコーディングは、ピクセルが同じ色のランに入る傾向があるという事実を利用しています。ハフマンエンコーディングは、一部のランレングスが他よりも一般的であるという事実をさらに利用しています。これらの初期のスキームの1つがどのように機能したかについての詳細な例については、ここを参照してください。このスキームはシンプルで洗練されており、上記のパターンを直接利用します。

これらのスキームは、平均して、ランダムファイルに対して圧縮を提供しません。ただし、スキャンされたFAXイメージはランダムではないため、これらの圧縮スキームにより大幅な節約が可能になります。

同様のコメントが他のマルチメディアファイルにも適用されます。他の種類のマルチメディアファイルに存在するパターンはより複雑になる可能性がありますが、データをランダムでないものにする多くのパターンが存在します。


0

ランダムなオーディオファイルは一種のノイズを構成します。ほとんどの人は、ノイズではなく、音楽または音声付きのオーディオファイルを保存します。


2
ご協力いただき、ありがとうございます。いくつかの例を詳しく説明して追加できますか?あなたが与えたアイデアは良い、本当ですが、それはすでに3つの以前の回答で提示されました。
悪の

@EvilJS、おそらく本当です。ただし、音声とノイズの違いを説明するのに半ページは必要ないと思います。
Carsten S 2016

顕著な事実を説明するのに半分のページをとるべきではないので、あなたの答えはスピーチと音楽が圧縮されるがランダムノイズは圧縮されない理由を説明します。
David Richerby、2016年

@DavidRicherby、そのランダムデータは圧縮しないことはすでに質問で受け入れられました。問題は「しかしマルチメディアデータはランダムではないのか」ということでした。答えは明らかにそうではないということです。
Carsten S
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.