jpegファイルをデコードしています。私はハフマンテーブルと量子化テーブルを生成しました。私はDCとACの要素を解読する必要があります。例えば、私は次のデータ jpegファイルからAC要素を生成する
FFDA 00 0C 03 01 00 02 11 03 11 00 3F 00 F2 A6 2A FD 54 C5 5F FFD9
我々はSOSマーカーから数バイトを無視した場合
を持って言うことができます、私の実際のデータがF2
バイトから始めています。だから(F2バイトから開始)バイナリに書き込むことができます:
1111 0010 1010 0110 0010 1010 1111 1101 0101 0100 1100 0101 0101 1111
F 2 A 6 2 A F D 5 4 C 5 5 F
復号する場合、最初の要素は、それでは、それを復号化させ、輝度DC要素です。
[1111 0]010 1010 0110 0010 1010 1111 1101 0101 0100 1100 0101 0101 1111
F 2 A 6 2 A F D 5 4 C 5 5 F
だから、11110は、要素08
のための(私の場合)ハフマン符号です。これは、次の8ビットが私のDC値であることを意味します。次の8ビットを取るとき、値は:
1111 0[010 1010 0]110 0010 1010 1111 1101 0101 0100 1100 0101 0101 1111
F 2 A 6 2 A F D 5 4 C 5 5 F
DC要素の値は-171です。
これは私の問題です:次は輝度AC値ですが、AC非ゼロの場合は標準を理解できませんか? Tnx!
を必要とするものは何でも、私はJPEG – Jimmy
に必要なデコーディングの多くを説明するインパルス冒険と呼ばれるウェブサイトをお勧めすることができます4 6つの8×8ブロックで私はすでに推奨ページを訪問し分析していますが、AC要素がゼロの場合などの説明があります。 – MrD
上記のサイトからjpeg snoopのソースコードをダウンロードすることができます。これは、jpegデコードに関する他の質問にお答えします。 – Jimmy