MPEG4圧縮はどのように機能しますか? 質問する

MPEG4圧縮はどのように機能しますか? 質問する

MPEG4 がデータ圧縮を行う仕組みを、わかりやすく説明してくれる人はいますか。私は主にビデオに興味があります。ビデオにはさまざまな標準や部分があることは知っています。MPEG4 で一般的な圧縮方法があれば、それを探しています。

ベストアンサー1

MPEG-4 は大規模な標準であり、高い圧縮率を実現するために多くの技術を採用しています。

一般的に、ビデオ圧縮は、エンド ユーザーの視聴体験への影響を最小限に抑えながら、できるだけ多くの情報を捨てることに関係しています。たとえば、RGB の代わりにサブサンプリングされた YUV を使用すると、ビデオ サイズがすぐに半分に削減されます。これは、人間の目が明るさよりも色に敏感ではないために可能になります。YUV では、Y 値は明るさ、U 値と V 値は色を表します。したがって、視聴者が違いに気付かないように、色情報の一部を捨ててファイル サイズを縮小することができます。

その後、ほとんどの圧縮技術は特に 2 つの冗長性を活用します。1 つ目は時間的冗長性、2 つ目は空間的冗長性です。

時間的冗長性は、ビデオシーケンス内の連続するフレームが非常に類似していることを示しています。通常、ビデオは1秒あたり20〜30フレームのオーダーで、1/30秒では大きな変化はありません。任意のDVDを一時停止し、1フレームだけ移動して、2つの画像がどれだけ類似しているかを確認してください。したがって、各フレームを個別にエンコードするのではなく、MPEG-4(およびその他の圧縮規格)では、連続するフレーム間の差異のみをエンコードします(動き推定フレーム間の差異を見つけるため)

空間冗長性は、一般的に画像全体に広がる色の周波数が非常に低い傾向があるという事実を利用します。つまり、隣接するピクセルは似たような色になる傾向があるということです。たとえば、赤いジャンパーを着ている画像では、ジャンパーを表すすべてのピクセルが非常に似た色になります。DCT を使用してピクセル値を周波数空間に変換し、一部の高周波情報を破棄することができます。その後、逆 DCT を実行すると (デコード中)、破棄された高周波情報が画像から取り除かれます。

高周波情報を捨てることによる効果を確認するには、MS ペイントを開いて、重なり合う一連の水平および垂直の黒い線を描きます。画像を JPEG として保存します (圧縮には DCT も使用されます)。次に、パターンを拡大して、線のエッジがそれほど鮮明でなくなり、ややぼやけていることを確認します。これは、圧縮中に高周波情報 (黒から白への遷移) が捨てられたためです。素敵な写真付きの説明はこちらをご覧ください

さらに詳しくは、この本数学が少し多めですが、かなり良いです。

おすすめ記事