>サイトトップへ >このカテゴリの一覧へ

日本工業規格

JIS

 X

4301

-1995

 (ISO/IEC

10918-1

: 1994

)

連続階調静止画像のディジタル圧縮

及び符号処理

第 1 部  要件及び指針

Digital compression and coding of continuous-tone still images :

Requirement and guidelines

日本工業規格としてのまえがき 

この規格は,1994 年第 1 版として発行された ISO/IEC 10918-1 (Information technology-Digital compression

and coding of continuous-tone still images-Part 1 : Requirements and guidelines)

を翻訳し,技術的内容及び規格

票の様式を変更することなく作成した日本工業規格である。

1.

適用範囲  この規格は,連続階調,単色又はカラーのディジタル静止画データに適用する。この規格

は,圧縮画像データを必要とする多様な応用に適用できるが,2 値画像データには適用できない。

この規格は,次の事項を規定する。

(1)

原画像データから圧縮画像データへの変換処理

(2)

圧縮画像データから再生画像データへの変換処理

(3)

これらの処理を実装する際の指針

(4)

圧縮画像データの符号化表現

参考  この規格は,完全な符号化画像表現を規定するものではない。符号化画像表現にはアスペクト

比,色空間指定などの引数も含める必要があるが,これらは,応用に依存する。

2.

引用規格

ISO 5807 : 1985

  Information processing−Documentation symbols and conventions for data, program and

system flow-charts, program network charts and system resources charts

備考  JIS X 0121(情報処理用流れ図・プログラム網図・システム資源図記号)−1986 が,この規

格と一致している。

参考  この規格では,流れ図を JIS X 0121 の規約に従って描く。ただし,左から右又は上から下

への流れに対して,規約では矢印を必要としないが,より明確にするために矢印を付ける

ことがある。

3.

用語・略語・記号

3.1

用語の定義及び略語  この規格で用いる主な用語及び略語の定義は,次のとおりとする。


2

X 4301-1995 (ISO/IEC 10918-1 : 1994)

3.1.1

簡易様式 (abbreviated format)    復号時に必要な表の一部若しくはすべてを含まない圧縮画像デー

タ表現,又はフレームヘッダ,走査ヘッダ及びエントロピー符号化された部分列を含まない表指定データ

の表現。

3.1.2

交流係数 (AC coefficient)   最低 1 次元において,周波数がゼロでない DCT 係数。

3.1.3

(適応)(値)算術復号  [(adaptive) (binary) arithmetic decoding]    算術符号器によって生成される

ビットの連続からシンボルの連続を復元するエントロピー復号処理。

3.1.4

(適応)(値)算術符号化  (adaptive) (binary) arithmetic encoding]    その時点までに符号化された

シンボルの連続に対する確率の再帰的な部分分割を用いて,符号化を行うエントロピー符号化処理。

3.1.5

応用環境 (application enviroment)   その特定の応用のために設定されたデータの表現,転送及び格

納の形式

の規定。

3.1.6

算術復号器 (arithmetic decoder)   算術復号処理を実際に行うもの。

3.1.7

算術符号器  (arithmetic encoder)    算術符号化処理を実際に行うもの。

3.1.8

基本処理(順次)  [baseline (sequential)]   この規格で規定している特定の順次 DCT 利用型の符号

化処理及び復号処理。これは,すべての DCT 利用型の復号処理で必要となる。

3.1.9

2

値判定 (binary decision)   二者択一の選択。

3.1.10

ビット系列 (bit stream)   エントロピー符号化された部分列を含むビットの列であって,部分的に

符号化又は復号されたもの。

3.1.11

ブロック (block)    8×8 の標本の配列又は一つの成分の DCT 係数値の 8×8 の配列。

3.1.12

ブロック行 (block-row)   8×8 ブロックに区切られる,八つの連続する成分行の連続。

3.1.13

バイト (byte)   8 ビットの一塊。オクテット。

3.1.14

バイト挿入  (byte stuffing)    ハフマン符号器又は算術符号器において,エントロピー符号化された

部分列に 16 進で 0×FF バイトが発生したとき,その直後にゼロを示すバイトを挿入する処理。

3.1.15

けた上げビット (carry bit)   算術符号器のレジスタ内のビットであって,符号レジスタのけた上げ

あふれが出力バイト用の 8 ビットを超えてあふれた場合に 1 となるもの。

3.1.16

天井関数 (ceiling function)   実数値に対して,その値以上の最小の整数を設定することで,その最

大の整数部分を取り出す数学処理。

3.1.17

(符号処理の)種別  [class (of coding process)]    非可逆及び可逆の一群の符号処理。

3.1.18

符号レジスタ  (code register)   部分的に完結したエントロピー符号化された部分列の最下位ビッ

トを保持する算術符号器レジスタ,又は部分的に復号されたエントロピー符号部分列の最上位ビットを保

持する算術復号器レジスタ。

3.1.19

符号処理器 (coder)   符号処理を実際に行うもの。

3.1.20

符号処理 (coding)   符号化及び復号。

3.1.21

符号処理モデル (coding model)   入力データを符号処理してシンボルに変換する処理手順。

3.1.22

(符号)処理  [ (coding) process]    符号化,復号又はその両者を指す一般的な用語。

3.1.23

カラー画像 (colour image)   複数の成分をもつ連続階調画像。

3.1.24

  (columns)      一つの成分における行に並んだ標本。

3.1.25

成分 (component)   画像を構成する 2 次元配列の一つ。

3.1.26

圧縮データ  (compressed data)    圧縮画像データ,表指定データ又はその両者。

3.1.27

圧縮画像データ  (compressed image data)    この規格に従った,画像の符号化表現。


3

X 4301-1995 (ISO/IEC 10918-1 : 1994)

3.1.28

圧縮  (compression)    原画像データを表現するために必要なビット数を低減すること。

3.1.29

条件付き交換 (conditional exchange)   (算術符号処理において,)LPS 確率間隔の大きさが MPS

確率間隔より大きい場合に,MPS と LPS との確率間隔を交換すること。

3.1.30

(条件付き)確率推定  [(conditional) probability estimate]    (算術符号処理において,)確率予測状

態遷移図によって LPS に割り当てられる確率値。

3.1.31

条件表  (conditioning table)    算術符号処理において,それまでの符号処理判定と条件付き確率推定

値との関係を指定する引数の集合。

3.1.32

文脈 (context)   (算術復号において,)既に符号処理された 2 値判定の集合。これは,確率推定

状態遷移図へのインデックスを作成する際に用いる。

3.1.33

連続階調画像 (continuous-tone image)   成分が各標本ごとに 2 ビット以上ある画像。

3.1.34

データ単位 (data unit)   DCT 利用型処理における 1 ブロック。可逆処理における 1 標本。

3.1.35

直流係数  (DC coefficient)    二つの次元のどちらについてもその周波数がゼロである DCT 係数。

3.1.36

直流係数予測 (DC prediction)   DCT 利用型の符号器で用いられる処理で,着目する量子化された

直流係数から,同じ成分の中で直前に符号化した 8×8 ブロックの量子化された直流係数を引く処理手順。

3.1.37  (DCT) 

係数 [(DCT) coefficient]   それぞれの余弦基底関数の振幅。元の DCT 係数,量子化された

DCT

係数又は逆量子化された DCT 係数を示す。

3.1.38

復号器  (decoder)    復号処理を実際に行うもの。

3.1.39

復号処理 (decoding process)   圧縮画像データを入力として受け取り,連続階調画像を出力する処

理。

3.1.40

既定値 (default conditioning)    画像の符号処理を開始する際に,算術符号処理の条件表用の値とし

て設定されている値。

3.1.41

逆量子化  (dequantization)    復号器において DCT 係数を復元するために用いる量子化の逆の処理

手順。

3.1.42

成分差分 (differential component)   (階層型符号処理において,)原画から得られた入力成分と前

のフレームから得られた対応する参照成分との差。

3.1.43

差分フレーム  (differential frame)    階層型処理において,成分差分の符号化又は復号を行うフレー

ム。

3.1.44

(ディジタル)再生画像(データ)  [(digital) reconstructed image (data)]    この規格で規定するすべ

ての復号器の出力として得られる連続階調画像。

3.1.45

(ディジタル)原画像(データ)  [(digital) source image (data)]    この規格で規定するすべての符号

器への入力となる連続階調画像。

3.1.46

(ディジタル)(静止)画像  [(digital)  (still) image]   整数データの 2 次元配列からなる集合。

3.1.47

離散余弦変換,DCT (discrete cosine transform, DCT)    順方向離散余弦変換又は逆離散余弦変換。

3.1.48

標本減少(フィルタ) [downsampling (filter)]   (階層型符号処理において,)画像の空間解像度を

削減する処理手順。

3.1.49

符号器 (encoder)   符号化処理を実際に行うもの。

3.1.50

符号化処理  (encodingprocess)    連続階調画像を入力として,圧縮画像データを出力する処理。

3.1.51

エントロピー符号化(データ)部分列  [entropy-coded (data) segment]    独立に復号できる,圧縮画

像データのエントロピー符号化されたバイトの列。


4

X 4301-1995 (ISO/IEC 10918-1 : 1994)

3.1.52

(エントロピー符号化部分列)指標  [(entropy-coded segment) pointer]    エントロピー符号化部分列

における,最も新しく挿入された又は取り出されたバイトを示す変数。

3.1.53

エントロピー復号器 (entropy decoder)   エントロピー復号処理を実際に行うもの。

3.1.54

エントロピー復号  (entropy decoding)   エントロピー符号器で生成されたビットの連続からシン

ボルの連続を復元する可逆処理手順。

3.1.55

エントロピー符号器  (entropy encoder)    エントロピー符号化処理を実際に行うもの。

3.1.56

エントロピー符号化  (entropy encoding)   シンボルごとの平均ビット数が入力シンボルのエント

ロピーに近づくように,入力シンボルの連続をビットの連続に変換する可逆処理手順。

3.1.57

拡張(DCT 利用型の)処理  [extended (DCT-based) process]    基本順次処理に対して追加機能をも

つ DCT 利用型の符号化処理及び復号処理を表す用語。

3.1.58

正離散余弦変換,FDCT (forward discrete cosine transform, FDCT)    1 ブロックの標本を元の DCT 係

数の対応する 1 ブロックに変換する,余弦基底関数を用いた数学的な変換。

3.1.59

フレーム (frame)   画像の一つ以上の成分のデータにおける,(いずれも同一の DCT 型又は可逆

処理を用いた,

)一つ以上の走査からなる集合。

3.1.60

フレームヘッダ (frame header)   フレーム開始マーカ及び関連するフレーム引数を含み,フレーム

の先頭で符号化されるマーカ部分列。

3.1.61

周波数 (frequency)   DCT 係数の 2 次元配列に対する 2 次元インデックス。

3.1.62

(周波数)帯域  [(frequency) band]    (段階モードの符号処理において,)ジグザグ順序での一連の

係数列。

3.1.63

完全段階処理 (full progression)   (段階モードの符号処理において,)周波数選択と逐次近似との

両方を用いた処理。

3.1.64

単色階調画像 (grayscale image)   1 成分しかもたない連続階調画像。

3.1.65

階層型 (hierarchical)   与えられた成分に対する最初のフレームに続けて,元のデータと,その成

分に対する直前のフレームから復元したデータとの差分を符号化したフレームが続く,画像の符号処理モ

ードの一つ。フレーム間で解像度を変更することも可能である。

3.1.66

階層型復号器  (hierarchical decoder)    それぞれの成分に対して最初のフレームの後に,各成分に対

する差分配列を復号し,直前のフレームから復元したデータに付け加えるフレームが続く一連の復号器処

理。

3.1.67

階層型符号器  (hierarchical enoder)   各成分について最初のフレームの後に,元のデータと,その

成分について一つ前のフレームから復元したデータとの差分配列を符号化したフレームが続く符号処理モ

ード。

3.1.68

水平抽出比率 (horizontal sampling factor)   ある特定成分の水平データ単位の,他の成分における

水平データ単位数に対する比。

3.1.69

ハフマン復号器 (Huffman decoder)   ハフマン復号処理を実際に行うもの。

3.1.70

ハフマン復号 (Huffman decoding)   ハフマン符号器で生成された各可変長符号からシンボルを復

元するエントロピー復号処理。

3.1.71

ハフマン符号器 (Huffman encoder)   ハフマン符号化処理を実際に行うもの。

3.1.72

ハフマン符号化 (Huffman encoding)   入力シンボルのそれぞれに可変長符号を割り当てるエント

ロピー符号化処理。

3.1.73

ハフマン符号表  (Huffman table)    ハフマン符号器及びハフマン復号器に必要な可変長符号の集合。


5

X 4301-1995 (ISO/IEC 10918-1 : 1994)

3.1.74

画像データ (image data)   原画像データ又は再生画像データ。

3.1.75

交換様式 (interchange format)   応用環境間での交換用圧縮画像データの様式。

3.1.76

インタリーブ (interleaved)   1 走査内において各成分のデータ単位を特定の順序で重畳させるこ

とを繰り返す手法。

3.1.77

逆離散余弦変換,IDCT (inverse discrete cosine transform ; IDCT)    逆量子化された DCT 係数の 1 ブ

ロックを対応する標本のブロックに変換する余弦型関数を用いる数学上の変換。

3.1.78

ジョイントフォトグラフィックエキスパートグループ,JPEG (Joint Photographic Experts Group,

JPEG)

  この規格の原国際規格を作成した協議会の非公式な名称。

“ジョイント”は,CCITT と ISO/IEC

との協力関係に由来している。

3.1.79

潜伏出力 (latent output)   (算術符号処理において,)けた上げあふれの決定を保留している算術

符号器の出力。

3.1.80

劣勢シンボル  (less probablesymbol, LPS)    2 値判定において,確率の低い判定値。

3.1.81

レベルシフト (level shift)   DCT 利用型の符号器及び復号器で用いられる処理で,各入力標本は,

符号なし表現から 2 の補数表現に変換されるか,2 の補数表現から符号なし表現に変換される。

3.1.82

可逆 (lossless)   復号処理の出力が符号化処理への入力に等しいことを示す符号化処理,復号処理

及び処理手順に用いられる表現。

3.1.83

可逆符号処理 (lossless coding)   この規格で定義される,すべての処理が可逆である符号化処理の

どれか一つに従った符号処理モード(

附属書 参照)。

3.1.84

不可逆 (lossy)   可逆でない符号化処理及び復号処理を示す表現。

3.1.85

マーカ (marker)   最初のバイトが 16 進の FF (X’FF’)  で,2 番目のバイトが 1 と 16 進の FE (X’FE’)

との間の値である 2 バイトコード。

3.1.86

マーカ部分列 (marker segment)   一つのマーカ及びそれに付随する引数の集合。

3.1.87  MCU

行 (MCU-raw)   MCU の集合としてもっとも小さいもので,走査における各成分の少なくと

も 1 行分の標本又は一つのブロック行を含んでいる。

3.1.88

最小符号化単位,MCU (minimum coded unit, MCU)    符号化されるもっとも小さいデータ単位の集

合。

3.1.89

(符号処理)モード  [modes (of operation)]    この規格に定められた,画像符号処理の四つの主な種

類。

3.1.90

優勢シンボル,MPS (more probable symbol, MPS)    2 値判定における,より大きな確率をもつ判定

値。

3.1.91

非差分フレーム  (non-differential frame)    階層型符号器又は復号器におけるすべての成分について

の最初のフレーム。各成分は,参照成分との差分をとることなく符号化又は復号される。この用語は,階

層型以外のモードにおけるフレームのことも示す。

3.1.92

非インタリーブ (non-interleaved)   走査が一つの成分しかもたないときのデータ単位を生成する

処理を行う手法。

3.1.93

引数  (parameters)    圧縮データ形式で用いられる固定長の 4,8 及び 16 のビット長の整数。

3.1.94

小数点移動 (point transform)   標本又は DCT 係数を定数倍する変換。

3.1.95

精度  (precision)    ある特定の標本又は DCT 係数に割り当てられるビット数。

3.1.96

予測器 (predictor)   (可逆モードの符号処理において,)先に符号化され,復元された値の線形の

組合せ。


6

X 4301-1995 (ISO/IEC 10918-1 : 1994)

3.1.97

確率推定状態表 (probability estimation state machine)   (算術符号処理において)確率値とインデ

ックスとの相互の関連を示す表で,LPS の確率の予測に用いられる。

3.1.98

確率間隔 (probability interval)   (算術符号処理において,)順序づけられたすべての起こり得る 2

値判定の組合せのうちの,特定の組合せの確率。

3.1.99

(確率)部分間隔 [(probability) sub-interval]   (算術符号処理において,)二つの起こり得る 2 値

判定値のいずれかに割り当てられる確率間隔の一部。

3.1.100

処理手順 (procedure)   符号化処理又は復号処理を構成する処理の一つを実現する手段の集合。

3.1.101

処理 (process)   符号処理を参照。

3.1.102

段階(符号処理)  [progressive (coding)]   復元された画像の質が各走査によって改善される DCT

利用型処理の一つであって,この規格で定義されているもの。

3.1.103  DCT

利用型の段階 (progressive DCT-based)   この規格の附属書 で定義されている DCT 利用型

処理の一つを示す符号処理モード。

3.1.104

量子化表 (quantization table)   DCT 係数を量子化するために用いられる 64 個の量子化幅。

3.1.105

量子化幅 (quantization value)   量子化処理で用いられる整数値。

3.1.106

量子化 (quantize)   DCT 係数を量子化する処理。

3.1.107

参照(再生)成分  [reference (reconstructed) component]    階層型の符号化又は復号処理の次のフレ

ームで用いられる,復元された成分データ。

3.1.108

再正規化 (renormalization)   (算術符号処理において,)確率間隔及び符号レジスタ値を確率間隔

が定められた最小値を超えるまで続けて 2 倍すること。

3.1.109

符号化再初期化間隔 (restart interval)   1 走査において独立して処理される MCU の数。

3.1.110

符号化再初期化マーカ (restart marker)   1 走査における二つの符号化再初期化間隔を分離するマ

ーカ。

3.1.111

連(の長さ) [run (length)]   同じ値のシンボルが連続する数。

3.1.112

標本 (sample)   1 成分を構成する 2 次元配列における 1 要素。

3.1.113

標本インタリーブ (sample-interleaved)   1 走査において,各成分からなる標本の小さな集合を,あ

る特定の順に繰り返し多重することを示す用語。

3.1.114

走査  (scan)    一つの画像において,一つ以上の成分のデータを通る単一の経路。

3.1.115

走査ヘッダ (scan header)   1 走査の最初で符号化される,走査開始マーカ及び関連する走査引数。

3.1.116

順次(符号処理) [sequential (coding)]   画像の各成分が単一走査内で符号化される可逆又は DCT

利用型の符号処理の一つであって,この規格で定められたもの。

3.1.117  DCT

利用型の順次処理 (sequential DCT-based)   この規格の附属書 で定められた処理の一つを示

す符号処理モード。

3.1.118

周波数選択  (spectral selection)    ジグザグ順序を一つ以上の連続した係数の帯域に分け,各帯域が

1

走査で符号化される段階符号処理。

3.1.119

スタックカウンタ  (stack counter)   算術符号器におけるけた上げあふれの決定を保留している

X’FF’

バイトの総計。

3.1.120

統計的条件付け (statistical conditioning)   前の符号処理の決定に基づいて,条件付き確率推定の 1

セットから一つの予測値を選択すること。

3.1.121

統計的モデル (statistical model)   ある特定の条件付き確率推定の,2 値算術符号化決定値のそれぞ

れへの割当て。


7

X 4301-1995 (ISO/IEC 10918-1 : 1994)

3.1.122

統計的領域  (statistic area)    算術符号処理を使用する符号処理に必要な統計器の配列。

3.1.123

統計器 (statistic bin)   ある特定の算術符号処理の 2 値判定に用いられる条件付き確率推定値を認

識するインデックスが記録されている記憶領域の場所。

3.1.124

逐次近似  (successive approximation)    係数が最初の走査で精度を落として符号化され,それに続く

各走査ごとに精度が 1 ビットずつ増えていく段階符号処理。

3.1.125

表指定データ  (table specification data)    符号器及び復号器で用いられる表が生成され,そのデステ

ィネーションが示される符号化表現形式。

3.1.126

符号変換 (transcoder)   一つの符号化処理の圧縮画像データを,他の符号化処理の圧縮画像データ

に変換する処理。

3.1.127

(一様)量子化 [(uniform) quantization]   圧縮を行うために,DCT 係数が線形に縮小される処理。

3.1.128

標本増加(フィルタ) [upsampling (filter)]   (階層型の符号処理において,)画像の空間解像度が

増加する処理。

3.1.129

垂直抽出比率 (vertical sampling factor)   ある特定成分の垂直データ単位の,他の成分における垂

直データ単位数に対する比。

3.1.130

ゼロを示すバイト (zero byte)   X’00’バイト。

3.1.131

ジグザグ順序  (zig-zag sequence)   最も低い空間周波数から最大値までの DCT 係数のある特定の

並びを示す順序。

3.1.132  3

点予測器 (3-sample predictor)  (可逆モードの符号化において,)三つの近傍の復元した標本の,

左及び上への線形組合せ。

3.2

記号  この規格で用いる記号を,次に示す。

A

確率間隔

AC

: DCT 係数の交流係数成分

AC

↓ji↑:

直流係数値から予測される交流係数

Ah

逐次近似ビット位置,high

Al

逐次近似ビット位置,low

Ap

↓i↑: APP↓n↑部分列における i 番目の 8 ビット引数

APP

↓n↑:

アプリケーション部分列用のマーカ

B

圧縮データにおける現在のバイト

B2

圧縮データにおける,B=X’FF’の次のバイト

BE

逐次近似処理における,ハフマン符号処理のための蓄積された補正ビット用

カウンタ

BITS

それぞれの長さのハフマン符号の数を含む 16 バイト表

BP

圧縮されたデータへの指標

BPST

エントロピー符号化された部分列の開始の前のバイトへの指標

BR

逐次近似処理における,ハフマン符号処理のための蓄積された補正ビット用

カウンタ

Bx

けた上げあふれによって変化したバイト

C

符号レジスタにおけるビット系列の値

C

↓i↑:

フレームに対する成分の ID

C

↓u↑: DCT における,水平周波数に依存する倍率


8

X 4301-1995 (ISO/IEC 10918-1 : 1994)

C

↓v↑: DCT における,垂直周波数に依存する倍率

CE

条件付き交換

C-low

算術復号器の符号レジスタの下位 16 ビット

Cm

↓i↑: COM 部分列における i 番目の 8 ビット引数

CNT

: NEXTBYTE 処理におけるビットカウンタ

CODE

ハフマン符号値

CODESIZE (V)

記号 V の符号長

COM

コメントマーカ

Cs

条件付き表の値

Cs

↓i↑:

走査に対する成分の ID

CT

再正規化シフトカウンタ

Cx

算術復号器の符号レジスタの上位 16 ビット

d

↓ij↑:

水平位置 i,垂直位置 j からのデータ単位

d

↓ij↑k↓:

成分 k に対する dij

D

復号された決定値

Da

: DC の符号処理における,同一成分からの一つ前のブロック用に符号化され

た DC の差分。

可逆符号処理における,すぐ左の標本の符号処理値との差分

DAC

算術符号化を定義する条件付きマーカ

Db

すぐ上の標本の符号処理値との差分

DC

: DCT 係数の直流係数成分

DC

↓i↑:

成分における i 番目のブロックの直流係数

DC

↓k↑:

交流係数の予測に用いられる k 番目の直流係数値

DHP

階層化段階処理を定義するマーカ

DHT

ハフマン符号表を定義するマーカ

DIFF

量子化された直流係数値と予測値との差分

DNL

行数を定義するマーカ

DQT

量子化表を定義するマーカ

DRI

符号化再初期化間隔を定義するマーカ

E

マグニチュードカテゴリの上位境界におけるべき指数

EC

イベントカウンタ

ECS

エントロピー符号化された部分列の略称

ECS

↓i↑:

i

番目のエントロピー符号化された部分列

Eh

: EXP 部分列における水平拡張引数

EHUFCO

符号器用のハフマン符号表

EHUFSI

ハフマン符号長の符号化表

EOB

順次モードにおけるブロックの終わり。段階モードにおける帯域の終わり

EOBn

: EOB 連についての連の長さカテゴリ

EOBx

前の逐次近似走査における EOB の位置

EOB0

,EOB1,...EOB14: EOB 連に対する連の長さのカテゴリ


9

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EOI

画像終了を表すマーカ

Ev

: EXP 部分列における垂直拡張引数

EXP

拡張参照成分を表すマーカ

FREQ (V)

記号 V の現れる頻度

H

↓i↑:

i

番目の成分に対する水平抽出比率

H

↓max↑:

もっとも大きい水平抽出比率

HUFFCODE

: HUFFSIZE における長さに対応するハフマン符号表

HUFFSIZE

符号長の表

HUFFVAL

各ハフマン符号に割り当てられる値の表

i.

添字インデックス

I

整数変数

Index (S)

文脈インデックス S に対する確率推定状態表へのインデックス

j

添字インデックス

J

整数変数

JPG

: JPEG 拡張版用のマーカ

JPG

↓n↑: JPEG 拡張版用のマーカ

k

添字インデックス

K

整数変数

Kmin

帯域における 1 番目の交流係数のインデックス(順次 DCT につき一つ)

Kx

: AC 算術符号化モデルに対する条件付き引数

L

: DC 及び可逆符号化条件付き下位境界引数

L

↓i↑: DHT 部分列における BITS 表の要素

L

↓i↑ (t):

ハフマン符号表 t に対する DHT 部分列における BITS 表の要素

La

: APPn 部分列における引数の長さ

LASTK

K

の最大値

Lc

: COM 部分列における引数の長さ

Ld

: DNL 部分列における引数の長さ

Le

: EXP 部分列における引数の長さ

Lf

フレームヘッダ引数の長さ

Lh

: DHT 部分列における引数の長さ

Lp

: DAC 部分列における引数の長さ

LPS

(算術符号化における)劣性シンボル

Lq

: DQT 部分列における引数の長さ

Lr

: DRI 部分列における引数の長さ

Ls

走査ヘッダ引数の長さ

LSB

最下位ビット

m

: RSTm マーカ用のモジュロ 8 カウンタ

m

↓t↑:

ハフマン符号表 t に対する Vij 引数の数

M

V

のマグニチュードを符号処理する際に用いられるビットマスク

M

↓n↑:

ビットパターンカテゴリーのマグニチュードを符号処理するための,n 番目


10

X 4301-1995 (ISO/IEC 10918-1 : 1994)

の統計器

MAXCODE

各符号長に対するハフマン符号の最大値をもつ表

MCU

最小符号処理単位

MCUR

一つの MCU 行を作成するために必要な MCU の数

MINCODE

各符号長に対するハフマン符号の最小値をもつ表

MPS

(算術符号化における,

)優勢シンボル

MPS (S)

文脈インデックス S に対する優勢シンボル

MSB

最上位ビット

M2

,M3,M4,...M15:

算術符号化モデルにおける,マグニチュードビットの符号処理用の文脈イン

デックスの表現

n

整数変数

N

: MCU の符号処理のためのデータ単位カウンタ

N/A

適切でない

Nb

: MCU におけるデータ単位の数

Next_Index_LPS

: LPS 再正規化の後の Index(S)の新しい値

Next_Index_MPS

: MPS 再正規化の後の Index(S)の新しい値

Nf

フレームにおける成分の数

NL

: DNL 部分列で定義された行数

Ns

走査における成分の数

OTHERS (V)

チェーンにおける次のシンボルへのインデックス

P

標本精度

Pq

: DQT 部分列における量子化精度の引数

Pq (t)

量子化表 t に対する DQT 部分列における量子化精度の引数

PRED

成分の直前のブロックから量子化した直流係数

Pt

小数点移動の信号引数

Px

標本の演算値

Q

↓ji↑:

係数 ACji の量子化値

Q

↓vu↑: DCT 係数 Svu に対する量子化値

Q

↓00↑:

直流係数の量子化値

QAC

↓ji↑:

直流係数値から予測して量子化された交流係数

QDC

↓k↑:

交流係数の予測で用いられる k 番目の量子化された直流係数値

Qe

: LPS の確率予測値

Qe (S)

文脈インデックス S 用の LPS 確率予測値

Qk

: DQT 部分列における 64 個の量子化されたもののうち,k 番目の要素

r

↓vu↑:

再生画像の標本

R

ゼロ振幅の交流係数の連の長さ

R

↓vu↑:

逆量子化された DCT 係数

Ra

再生標本値

Rb

再生標本値

Rc

再生標本値


11

X 4301-1995 (ISO/IEC 10918-1 : 1994)

Rd

予測演算時の丸め

RES

予約されたマーカ

Ri

: DRI 部分列における符号化再初期化間隔

RS

交流係数のハフマン符号化で用いられる混合値

RST

↓m↑:

符号化再初期化マーカ

RRRR

ゼロ交流係数の連の長さの 4 ビット値

s

↓yx↑: IDCT から復元された値

S

文脈インデックス

S

↓vu↑:

水平周波数 u,垂直周波数 v における DCT 係数

SC

逐次近似符号処理における,補正ビットの符号処理用文脈インデックス

Se

ジグザグ順序における周波数選択バンドの終了

SE

ブロックの終了又は帯域の終了の符号処理用文脈インデックス

SI

ハフマン符号の大きさ

SIGN

復号された符号が負の場合 1 で,復号された符号が正の場合 0

SIZE

ハフマン符号の長さ

SLL

論理左シフト操作

SLL

αβ

α

に対する

β

ビット分の論理左シフト

SN

V

が負の場合の,最初のマグニチュードカテゴリーの符号処理に対する文脈

インデックス

SOF

↓0↑:

基本処理 DCT 処理のフレーム開始マーカ

SOF

↓1↑:

拡張順次 DCT のフレーム開始マーカ,ハフマン符号処理

SOF

↓2↑:

段階 DCT のフレーム開始マーカ,ハフマン符号処理

SOF

↓3↑:

可逆処理のフレーム開始マーカ,ハフマン符号処理

SOF

↓5↑:

差分順次 DCT のフレーム開始マーカ,ハフマン符号処理

SOF

↓6↑:

差分段階 DCT のフレーム開始マーカ,ハフマン符号処理

SOF

↓7↑:

差分可逆処理のフレーム開始マーカ,ハフマン符号処理

SOF

↓9↑:

順次 DCT のフレーム開始マーカ,算術符号処理

SOF

↓10↑:

段階 DCT のフレーム開始マーカ,算術符号処理

SOF

↓11↑:

可逆処理のフレーム開始マーカ,算術符号処理

SOF

↓13↑:

差分順次 DCT のフレーム開始マーカ,算術符号処理

SOF

↓14↑:

差分段階 DCT のフレーム開始マーカ,算術符号処理

SOF

↓15↑:

差分可逆処理のフレーム開始マーカ,算術符号処理

SOI

画像の始まりを示すマーカ

SOS

走査の始まりを示すマーカ

SP

V

が正の場合の,最初のマグニチュードカテゴリの符号処理に対する文脈イ

ンデックス

Sq

↓vu↑:

量子化された DCT 係数

SRL

論理右シフト操作

SRL

αβ

α

に対する

β

ビット分の論理右シフト

Ss

周波数選択におけるジグザグ順序での帯域の始まり


12

X 4301-1995 (ISO/IEC 10918-1 : 1994)

SS

符号決定の符号処理用文脈インデックス

SSSS

直流係数差分又は交流係数の 4 ビット長のカテゴリ

ST

スタックカウンタ

Switch_MPS

: MPS の逆処理を制御する引数

Sz

V

の振幅を符号化する際に用いられる引数

t

引数の範囲を計算するための加算値インデックス

T

一時的な変数

Ta

↓j↑:

走査における j 番目の成分用の交流係数エントロピー表セレクタ

Tb

算術条件表のデスティネーション ID

Tc

ハフマン符号処理又は算術符号処理の表種別

Td

↓j↑:

走査における j 番目の成分用の直流係数エントロピー表セレクタ

TEM

テンポラリマーカ

Th

: DHT 部分列における,ハフマン符号表デスティネーション ID

Tq

: DQT 部分列における量子化表 ID

Tqi

フレームにおける i 番目の成分用量子化表セレクタ

U

直流係数及び可逆符号化の条件付き上位境界引数

V

符号化若しくは復号されているシンボル又は値

V

↓i↑:

i

番目の成分の垂直抽出比率

V

↓ij↑: HUFFVAL における長さ i の j 番目の値

V

↓max↑:

垂直抽出比率の最大値

V

↓t↑:

テンポラリ変数

VALPTR

各符号長について HUFFVAL における最初の値のインデックス表

V1

記号値

V2

記号値

x

↓i↑:

i

番目の成分における列の数

X

水平方向の大きさが最大の成分における,行ごとの標本数

X

↓i↑:

マグニチュードカテゴリ決定値を符号化する際に用いられる i 番目の統計器

Xl

,X2,X3,...X15:

算術符号処理モデルにおける,マグニチュードカテゴリの符号処理用文脈イ

ンデックス

XHUFCO

拡張ハフマン符号表

XHUFSI

拡張ハフマン符号の大きさの表

X’values’

引用付で囲まれた値が 16 進数であることを示す

y

↓i↑:

i

番目の成分における行の数

Y

垂直方向の大きさが最大の成分における行数

ZRL

: HUFFVAL において,16 個のゼロ係数の連に割り当てられる値

ZZ (k)

量子化された DCT 係数のジグザグ順序における k 番目の要素

ZZ (0)

ジグザグ順序における量子化された直流係数

4.

概要  ここでは,この規格で規定する要素の概要を示す。3.用語・略語・記号に現れた用語は,その

初出の個所に下線を付けて示す。


13

X 4301-1995 (ISO/IEC 10918-1 : 1994)

4.1

規定対象要素  この規格では,次の 3 要素を規定する。

(1)

符号器  符号器 (encoder) は,符号化処理 (encoding process) を体現したものをいう。符号器は,ディ

ジタル原画像データ  (digital source image data)  及び表指定データ (table specifications) を入力とし,指

定された一連の処理手順 (procedure) によって,圧縮画像データ (compressed image data) を出力とし

て作り出す(

図 参照)。

(2)

復号器  復号器 (decoder) は,復号処理 (decoding process) を体現したものをいう。復号器は,圧縮画

像データ及び表指定データを入力とし,指定された一連の処理手順によってディジタル再生画像デー

タ  (digital reconstructed image data)  を出力として作り出す(

図 参照)。

(3)

交換様式  交換様式 (interchange format) は,圧縮画像データを,その符号化処理で用いたすべての表

指定データとともに,表現したもの(

図 参照)をいう。交換様式は,応用環境 (application environments)

の間での情報交換に用いる。

図 1  符号器

図 2  復号器


14

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 3  圧縮画像データの交換様式

図 及び図 は,原画像及び再生画像が連続階調 (continuous-tone) であって,複数の成分 (components)

をもつ一般の場合を示している。(カラー画像 (colour image) は,複数の成分をもつ。単色階調画像

(grayscale image)

は,単一の成分をもつ)

。この規格では,複数成分からなる画像を,柔軟に,しかも応用

に依存しないで扱う方法に多くの部分を割く。

図 及び図 は,また,原画像を圧縮する際に符号器に与えたのと同じ表指定データを,その画像を再

生する際の復号器に与えられなければならないことを示している。しかし,この規格ではそれぞれの応用

が,この表指定データをどのような形で圧縮データに添えるか,それぞれの環境内部で原画像データをど

のように表現するべきか,について何も規定しない。

したがって,この規格で規定する交換様式(

図 参照)には,表指定データが圧縮画像データの一部と

して含めてある。指定した符号化処理によって応用環境 A で圧縮された画像は,交換様式を使って,他の

応用環境 B に渡される。この交換様式は,完全な符号処理画像表現を規定するものではない。色空間のよ

うな応用に依存する情報は,この規格の規定外とする。

4.2

不可逆圧縮・可逆圧縮  この規格は,符号化処理及び復号処理に対して,不可逆 (lossy) 処理及び可

逆 (lossless) 処理の二つの種別 (class) を規定する。不可逆処理は,離散余弦変換  (discrete cosine transform,

DCT)

に基づき,大幅な圧縮を可能としながら,符号器に入力された原画像に対して高い視覚的忠実度を

もった再生画像の生成を可能とする。

最も単純な DCT 利用型の符号処理 (coding process) を基本処理順次 (baseline sequential) という。この処

理は,多くの応用に対して十分な機能を提供する。さらに,この基本処理順次をより広い応用に使えるよ

うに拡張した DCT 利用型の処理もある。拡張 DCT 利用型 (extended DCT-based) の復号処理を行える復号

器は,基本復号処理を備えて,標準の復号能力を確保しなければならない。

第 2 の種別の符号処理は,DCT を用いず,可逆圧縮 (compression) を必要とする応用での要求に対応す

る。可逆符号化処理及び可逆復号処理は,DCT 利用型の処理とは独立に使用できる。

不可逆及び可逆の符号処理それぞれの関係をまとめて

表 14.11 参照)に示す。

これらの処理で得られる圧縮の程度は,圧縮される画像の特性に依存するし,応用で必要としている画

質及び望ましい圧縮・伸長の速度にも依存する。


15

X 4301-1995 (ISO/IEC 10918-1 : 1994)

4.3

DCT

利用型符号処理  DCT に基づく符号化処理で主体となる処理手順を図 に示す。図 では,話

を単純化して,画像が単一成分である特殊な場合を扱っている。こうしても,この規格で規定する処理が

いずれも個々の画像成分に独立に働くため,一般性を失わない。

符号化処理では,入力となった成分の標本 (sample) を,8×8 のブロック (block) ごとにまとめ,それ

ぞれのブロックに正離散余弦変換 (forward DCT,FDCT)  を施して,DCT 係数 (DCT coefficients) と呼ぶ

64

の値に変換する。DCT 係数のうち,1 個を直流係数 (DC coefficient) といい,他の 63 個を交流係数 (AC

coefficients)

という。

64

個の係数は,それぞれ,対応する 64 個の値をもつ量子化表 (quantization table) (

図 に示す表指定

データの一つによって決定される)を用いて量子化 (quantized) する。この規格では,量子化表の既定の

値は規定しない。画質が,画像の特性,表示装置,及び視条件等にあったものとなるように,それぞれの

応用において値を決めてよい。

図 4  DCT 利用型符号器(単純化したブロック図)

量子化の後,直流係数及び 63 個の交流係数は,

図 に示すとおりに配置して,エントロピー符号化

(entropy encoding)

の前処理をする。現在処理中のブロックの直前のブロックの量子化直流係数を用いて,

今回のブロックの量子化直流係数を予測し,その差分を符号化する。63 個の交流係数については,このよ

うな差分の符号化は行わず,代わって,

図 に示すとおりの 1 次元のジグザグ順序 (zig-zag sequence) に

並べ直す。

こうした処理を終えた量子化 DCT 係数は,エントロピー符号化処理手順に渡し,そこでさらにデータを

圧縮する。エントロピー符号化処理手順には,4.6 に規定するとおり,2 種類がある。ハフマン符号化

(Huffman encoding)

を用いる場合には,ハフマン符号表 (Huffman table) を復号器に与えなければならない。

算術符号化 (arithmetic encoding) を用いる場合には,算術符号化条件表 (conditioning table) を復号器に与

えなければならない。

DCT

に基づくすべての復号処理での主体となる処理手順を

図 に示す。それぞれの手続きは,符号器で

の対応する主処理手順の逆操作を行う。エントロピー復号器は,ジグザグ順序の量子化 DCT 係数に復号す

る。逆量子化 (dequantization) の後,得られた DCT 係数に逆離散余弦変換  (inverse DCT : IDCT)  を施すこ

とよって,8×8 の標本ブロックに再生する。


16

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 5  量子化係数をエントロピー符号化にかけるための処置

図 6  DCT 利用型復号器(単純化したブロック図)

4.4

可逆符号処理  可逆符号化処理の主体となる処理手順を図 に示す。予測器 (predictor) は,隣接す

る位置 a,b 及び c での再生された標本値から,位置 x の標本値を予測する(

図 参照)。この予測値から,

位置 x の実際の標本値を減算し,その差分値をハフマン符号化又は算術符号化を使って可逆エントロピー

符号化を行う。

図 7  可逆符号器(単純化したブロック図)


17

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 8  点予測の隣接点

この符号化処理に少し手を加え,可逆符号化に先立って入力となる標本の精度 (precision) を 1 ビット以

上引き下げるようにしてもよい。こうすることで,元の可逆処理よりも高い圧縮率を得ることができ(た

だし,同等の画質の DCT 利用型の処理ほどには圧縮できない)

,その再生画像での標本の誤差は最悪の場

合でも,この入力時の標本のビット引下げの大きさ程度に抑えることができる。

4.5

符号処理モード  それぞれの符号化処理の元になる符号処理モード  (modes of operation)  には,DCT

利用型の順次処理 (sequential DCT-based),DCT 利用型の段階処理 (progressive DCT-based),可逆処理及び

階層型処理 (hierarchical) の四つがある(これらのすべてを実装する必要はない。

。可逆モードについては

4.4

に示す。その他の符号処理モードについての比較を,次に示す。

DCT

利用型の順次処理モードでは,原則として,8×8 の標本ブロックは,1 ブロックずつ左から右に入

力し,こうしたブロック行 (block-row) を上から下へ順に入力する。それぞれのブロックは FDCT によっ

て変換し,量子化を施し,エントロピー符号化にかけるための処置が終わると,その量子化した 64 個の量

子化 DCT 係数をエントロピー符号化して直接に圧縮画像データの一部分として出力するため(4.3 参照)

係数を保持しておく記憶の量は最小で済む。

DCT

利用型の段階処理モードでは,原則として,8×8 の標本ブロックは,順次処理モードと同じ順序で

符号化されるが,画像に対して複数回の走査 (scan) を施す。このために,量子化器とエントロピー符号器

の間に,画像の大きさに応じた係数メモリバッファ(

図 には示していない。)を設けて,それぞれのブロ

ックが FDCT によって変換し,量子化を施すとともに,その係数をバッファに保持する。バッファ内の

DCT

係数は,複数回の走査のたびに,分割して符号化する。順次処理モードと段階処理モードとで,復号

器の出力に現れる画像の再生状況がどうなるかを

図 に例示する。


18

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 9  段階処理モードと順次処理モードでの再生状況

それぞれの走査において,バッファ内の量子化した係数を分割して符号化するのに,2 種類の処理手順

がある。第 1 の方法では,ジグザグ順序の中の特定の帯域 (band) にある係数だけを符号化していく。こ

の処理手順を周波数選択 (spectral selection) という。これは,それぞれの帯域が,通常,8×8 の標本ブロ

ックでの,周波数 (frequency) スペクトルの特定領域を占めることに由来する。第 2 の方法では,その帯

域の係数を,それぞれの走査で完全な(量子化)精度までには符号化しないでおく。係数の最初の符号化

では,MSB から特定のビット数だけを符号化する。以後の走査ではそれに続く LSB 側のビットを符号化

する。この処理手順を逐次近似 (successive approximation) という。これらの二つの処理手順は,単独で用

いることもできるし,自在に組み合わせて使うこともできる。

階層型処理モードでは,画像をフレーム (frame) の列として符号化する。それぞれのフレームは,参照

再生成分  (reference reconstructed component)  として,それ以後のフレームの予測に用いる。画像成分の第 1

番目のフレームを除いて,原成分と参照再生成分との差分を符号化する。これを差分フレーム (differential

frame)

という。差分の符号化は,それぞれの成分に対して,DCT 利用型の処理だけによってもよいし,可

逆処理だけによってもよいし,DCT 利用型の処理を使用して最終段だけ可逆処理を行うことにしてもよい。

図 10 に示すような空間解像度の階層を構成するために,標本減少 (downsampling) フィルタ又は標本増加

(upsampling)

フィルタを用いてもよい。すなわち,階層型処理モードを使うことで,所望の空間解像度で

の再生成分の画質を改善することができる。

階層型処理モードは,DCT 利用型の段階処理モードと同様に段階的な再生表示が得られるが,多解像度

の必要な環境により適している。階層型処理モードは,最終段の可逆処理に段階符号処理の能力をもたら

す。


19

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 10  多解像度をもつ階層符号化 

4.6

エントロピー符号処理の選択  エントロピー符号処理手順には,ハフマン符号処理及び算術符号処

理の 2 種類がある。ハフマン符号処理手順では,ハフマン符号表を用いる。この表は,

図 及び図 に示

したように,表指定データによって定まる。算術符号処理手順では,算術符号処理条件表を用いる。この

表も,表指定データによって定まる。ハフマン符号表については,この規格は既定値を規定しない。した

がって,各応用環境に応じて,適切な表を定めてよい。算術符号処理条件表には既定値を規定する。

基本処理順次では,ハフマン符号処理を用い,拡張 DCT 利用型の処理及び可逆処理ではハフマン符号処

理又は算術符号処理のどちらを使用してもよい。

4.7

標本精度  この規格の DCT 利用型の処理では,標本の精度を 8 ビット又は 12 ビットとする。その

他の標本精度を使用している応用も,その原画像の標本値を適切にシフトすることで,8 ビット又は 12 ビ

ットのいずれかの精度を使用することができる。基本処理では 8 ビット精度だけを使用する。12 ビットの

原画像標本を扱う DCT 利用型の処理系は,8 ビットの原画像だけを扱う場合に比べて,より多くの計算資

源を必要とする。したがって,この規格では,DCT 利用型処理について,8 ビットのものと 12 ビットのも

のとを切り離して個別にその要件を規定する。

可逆処理における標本精度は,2∼16 ビットとする。

4.8

複数成分の制御  4.3 及び 4.4 では,符号化処理及び復号処理の主要な部分,すなわち,標本値を操

作して圧縮を行う処理について概要を示した。同様に重要なもう一つの部分は,複数成分の画像データを

処理して,その圧縮データを作る順序を制御し,正しい表データの組が画像内の正しいデータ単位 (data

unit)

に適用できるように保証する処理手順からなる(データ単位は,可逆処理では 1 標本をいい,DCT

利用型の処理では 8×8 の標本ブロックをいう。

4.8.1

複数成分のインタリーブ  符号化処理において,その符号化処理手順の実行中に,複数の原画像成

分及び複数の表データを選択する様子を

図 11 に示す。図 11 では,原画像は A,B 及び C の 3 個の成分か

らなり,2 個の表指定データがある場合を示している(ここでは,話を単純化して,量子化表とエントロ

ピー符号処理表とは区別していない。


20

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 11  成分インタリーブ及び表切替えの制御

順次処理モードにおいて,符号器が成分 A のすべてのデータ単位を圧縮してから成分 B の圧縮に入り,

その圧縮が終わってから成分 C を圧縮するといった順序で圧縮を行う場合,その符号化を非インタリーブ

(non-interleaved)

という。符号器が成分 A の 1 個のデータ単位,B の 1 個のデータ単位,C の 1 個のデータ

単位,再び A に戻ってその 1 個のデータ単位,という順に圧縮を行う場合,その符号化をインタリーブ

(interleaved)

という。

図 12 に,3 個の画像成分が同じ大きさ,すなわち,X 列 (columns) ×Y 行で,各成

分につき n 個のデータ単位からなる場合について,これらの二つの制御方式を示す。

この制御処理手順は,いずれも,原画像の成分が異なる大きさをもつ場合にも適用することができる。

図 13 に,2 個の成分の B 及び C が成分 A に対して水平標本数が半分の場合を示す。この場合,A からの

2

個のデータ単位と B 及び C からの 1 個ずつのデータ単位とをインタリーブする。画像の成分が,水平方

向及び垂直方向の大きさが相違するような,より複雑な標本数比になっている場合も,同様に処理するこ

とができる(

附属書 参照)。

図 12  インタリーブと非インタリーブの符号化順序


21

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 13  大きさの異なる成分に対してのインタリーブ順序

4.8.2

最小符号化単位  複数成分のインタリーブの概念に関連して,最小符号化単位 (minimum coded

unit, MCU)

を定める。圧縮される画像データが非インタリーブの場合,MCU は,1 データ単位とする。例

えば,

図 12 の非インタリーブにおける MCU は,1 個のデータ単位である。圧縮される画像データがイン

タリーブの場合,MCU は,それぞれの成分からの,1 個以上のデータ単位からなる。

図 12 のインタリー

ブの場合についていえば,

(最初の)MCU は,3 個のインタリーブしたデータ単位の組 A↓1↑,B↓1↑及

び C↓1↑となる。

図 13 の場合についていえば,(最初の)MCU は 4 個のデータ単位の組 A↓1↑,A↓2

↑,B↓1↑及び C↓1↑となる。

4.9

圧縮データの構造  図 1∼図 では,それぞれに圧縮画像データを少し違った観点から示した。図 1

では圧縮データを符号化処理の出力として表しており,

図 では復号処理の入力として表している。それ

に対して,

図 では応用間のインタフェースにおける交換様式として圧縮データを表している。

圧縮画像データは,それぞれの符号化処理の種別(可逆又は非可逆)及びすべての符号処理モード(順

次,段階,可逆又は階層)に応じた構造と引数 (parameters) との組によって構成する。圧縮画像データの

個々の部分は,マーカ (marker) と呼ぶ特別な 2 バイトの符号で識別する。マーカによっては,例えば表指

定データ,フレームヘッダ (frame header),走査ヘッダ (scan header) 等のように特定の引数列を伴うこと

がある。その他のマーカは引数なしで,画像の開始点及び画像の終了点を示すような機能で使用する。マ

ーカに特定の引数列を伴う場合,そのマーカ及び引数を組にしてマーカ部分列 (marker segment) と呼ぶ。

エ ン ト ロ ピ ー 符 号 器 が 作 り 出 す デ ー タ も 分 割 す る 。 こ の エ ン ト ロ ピ ー 符 号 化 デ ー タ 部 分 列

(entropy-coded data segment)

を明示するために,符号化再初期化マーカ (restart marker) と呼ぶ特定のマー

カを用いる。符号器は,原画像データの正規の符号化再初期化間隔 (restart interval) ごとに,エントロピー

符号化データに織り混ぜて,符号化再初期化マーカを出力する。符号化再初期化マーカは,圧縮データを

復号することなく,その位置を識別することができる。それぞれを独立して復号することができるため,

並列符号処理,誤りデータの分離,エントロピー符号化部分列への準ランダムアクセスなどの応用固有の

使い方が可能となる。

圧縮データ様式は,次の 3 種類とする。

(1)

交換様式

(2)

圧縮画像データ用簡易様式 (abbreviated format)  


22

X 4301-1995 (ISO/IEC 10918-1 : 1994)

(3)

表指定データ用簡易様式

4.9.1

交換様式  交換様式は,幾つかの必す(須)のマーカ部分列及びエントロピー符号化部分列に加え

て,復号処理で必要とするすべての量子化表及びエントロピー符号化表のマーカ部分列を含まなければな

らない。このことによって,それぞれの応用環境内部で,表と圧縮画像データとをどのように関連付けて

いるかに関わりなく,応用間での圧縮データの互換性を保証する。

4.9.2

圧縮画像データ用簡易様式  圧縮画像データ用簡易様式は,復号に必要なすべての表を含んでいる

わけではないことを除いて(それらのうちの幾つかを含んでいてもよい。

,交換様式と全く同一とする。

この様式は,復号に必要な表指定データの一部又は全部が他の手段によって受渡し可能な応用間での使用

を目的とする。

4.9.3

表指定データ用簡易様式  この様式は表指定データだけを含んでいる。これは,その後に伝送され

る 1 個以上の画像の再生に必要な表を復号器に取り込む手段として使用する。

4.10

面像・フレーム・走査  圧縮画像データは,一つの画像からなる。画像は順次処理モード及び段階

処理モードではただ 1 個のフレームからなり,階層型処理モードでは複数のフレームからなる。

フレームは,1 個以上の走査からなる。順次処理では,1 回の走査の中に 1 個以上の画像成分の完全な符

号化データを保持する。

図 12 及び図 13 でいえば,フレームは,非インタリーブの場合 3 個の走査からな

り,3 個の成分が一緒にインタリーブされている場合は 1 個の走査からなる。1 個の成分が非インタリーブ

で他の 2 個の成分がインタリーブの場合には,フレームは 2 個の走査からなる。

段階処理では,走査は,1 個以上の成分のすべてのデータ単位について部分的な符号化データを含む。

段階処理モードでは,段階フレームのそれぞれの成分の最初の走査で直流係数をインタリーブしてよいこ

とを除いて,成分をインタリーブしてはならない。

4.11

符号処理の要約  この規格でのそれぞれの符号処理について,その基本的な特性の要約を表 に示

す。それぞれの完全な規定は,

附属書 F(規定),附属書 G(規定),附属書 H(規定)及び附属書 J(規

定)による。


23

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 1  要約:符号処理の基本的特性

基本処理[すべての DCT 利用型の復号器に必す(須)

・ DCT 利用型の処理

・  原画像:各成分が 8 ビット標本精度 
・  順次 
・  ハフマン符号処理:2 個の交流係数及び 2 個の直流係数に対する表

・  復号器は,1∼4 成分の走査を処理しなければならない。 
・  インタリーブ走査及び非インタリーブ走査

拡張 DCT 利用型の処理

・ DCT 利用型の処理 
・  原画像:各成分が 8 ビット又は 12 ビットの標本精度

・  順次又は段階 
・  ハフマン又は算術符号処理:4 個の交流係数及び 4 個の直流係数に対す

る表

・  復号器は,1∼4 成分の走査を処理しなければならない。 
・  インタリーブ走査及び非インタリーブ走査

可逆処理

・  予測処理(非 DCT 利用型) 
・  原画像:各成分が P ビット標本精度 (2≦P≦16)

・  順次 
・  ハフマン又は算術符号処理:4 個の直流係数に対する表 
・  復号器は,1∼4 成分の走査を処理しなければならない。

・  インタリーブ走査及び非インタリーブ走査

階層型処理

・  複数フレーム(非差分及び差分)

・  拡張 DCT 利用型又は可逆処理を用いる。 
・  復号器は,1∼4 成分の走査を処理しなければならない。

・  インタリーブ走査及び非インタリーブ走査

5.

交換様式の必要条件  交換様式とは,応用環境間で相互に交換するための,圧縮画像データの符号表

現とする。

交換様式の必要条件は,交換様式で記述されるすべての圧縮画像データが

附属書 に示したとおりに,

選択された復号処理に適した書式及び符号割当てを満たしていることとする。

圧縮画像データがこれらの必要条件を満たしているかを確認する試験方法は,

ISO/IEC 10918-2

による。

6.

符号器の必要条件  符号化処理は,原画像データを圧縮された画像データに変換する。附属書の F

G

及び のそれぞれで,各符号処理モードについて幾つかの符号化処理を示す。

符号器とは,

附属書の FG又は に示された符号化処理のうちの一つ(又はそれ以上)を具体的

に実行する。この規格に従うために,符号器は,次の二つのうちの少なくとも一つを満たしていなければ

ならない。

符号器の満たすべき条件は,次のとおりとする。

(1)

適切な演算精度で,原画像データを,符号器が実現する符号化処理として

附属書 に規定する交換様

式を満足するような圧縮画像データに変換すること。

(2)

適切な演算精度で,原画像データを,符号器が実現する符号化処理として

附属書 に規定する圧縮画

像データ用簡易様式を満足するような圧縮画像データに変換すること。


24

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書の FG及び に規定されている符号化処理のそれぞれについて,ISO/IEC 10918-2 で,この

必要条件を満たしているかを調べる適合性試験を規定する。

参考  この規格では,附属書の FG又は に定められた符号化処理の一つを実現する符号器は,

必ずしもその処理で許可されている引数のすべての範囲において動作しなくてもよい。符号器

は,ISO/IEC 10918-2 で定められた適合性試験を満足し,使用する引数値について

附属書 

従って圧縮データ形式を生成できればよい。

7.

復号器の必要条件  復号器は,圧縮画像データを復元された画像データに変換する。附属書の FG

H

及び それぞれで,各動作モードについて幾つかの復号処理を示す。

復号器とは,

附属書の FG及び で規定された復号処理のうちの一つ(又はそれ以上)を具体的

に実行するものとする。この規格に従うために,復号器は,次の三つの必要条件をすべて満足しなければ

ならない。

復号器の満たすべき条件は,次のとおりとする。

(1)

適切な演算精度で,復号器が実現する復号処理として

附属書 に規定する交換様式に従うすべての圧

縮画像データを,応用が取り扱うことができる引数の範囲で復元された画像データに変換すること。

(2)

復号器が実現する復号処理として,

附属書 に規定する表指定データ用の簡易様式を満足するすべて

の表データを受け入れ,適切に記憶しておくこと。

(3)

適切な演算精度で,復号器が実現する復号処理として

附属書 に規定する圧縮データ用の簡易様式に

従うすべての圧縮画像データを,復元された画像データに変換すること。ただし,このとき,圧縮画

像データを復号するために必要な表指定データが前もって復号器にロードされていること。

また,すべての DCT 利用型の復号器は,基本順次機能以外のモードを装備している場合,必ず基本順次

機能も装備しなければならない。

附属書の FG及び に規定されている復号処理のそれぞれについて,ISO/IEC 10918-2 で,この必

要条件を満たしているかを調べる適合性試験を規定する。


25

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 A(規定)  数学的規定

A.1

原画像  この附属書では,符号化処理に適用できる原画像を規定する。

A.1.1

大きさ及び標本化比率  原画像は Nf 個の成分からなり,i番目の成分 C↓i↑は x↓i↑列×y↓i↑行

の 2 次元標本配列からなる(

図 A.1 参照)。この成分の大きさは,フレーム内のすべての成分の x↓i↑の最

大値 X と,y↓i↑の最大値 Y との二つの引数から得る。それぞれの成分において,標本化比率の H↓i↑及

び V↓i↑は,成分のサイズ x↓i↑・y↓i↑とサイズの最大値 X・Y とによって次式で規定する。

x

↓i↑=┌X×H↓i↑/H↓max↑┐,y↓i↑=┌Y×V↓i↑/V↓max↑┐

H

↓max↑及び V↓max↑はフレーム内の標本化比率の最大値を表し,┌┐は天井関数を表す。

例として,1 行当たり 512 標本で 512 行の大きさで,次の標本化比率をもつ 3 成分からなる画像を考え

る。

成分 0 H↓0↑=4, V↓0↑=1

成分 1 H↓1↑=2, V↓1↑=2

成分 2 H↓2↑=1, V↓2↑=1

この場合,X=512,Y=512,H↓max↑=4,V↓max↑=2 ならば,各成分の x↓i↑と y↓i↑とは次の

ようになる。

成分 0 x↓0↑=512, y↓0↑=256

成分 1 x↓1↑=256, y↓1↑=512

成分 2 x↓2↑=128, y↓2↑=256

参考  引数の X,Y,H↓i↑及び Vi は圧縮画像データ形式(B.2.2 参照)のフレームヘッダに含まれ

るのに対して,各成分の大きさ x↓i↑及び y↓i↑は復号器によって導出される。上の式を満た

さない x↓i↑及び y↓i↑をもつ原画像は,正しく再生できない。

図 A.1  原画像特性

A.1.2

標本精度  標本は,P ビットの精度をもつ整数で,0∼2↑P-1↓の範囲の値をとる。同一の画像内

のすべての成分のすべての標本は同じ精度 P をもたなければならない。P の値の制限は,符号処理モード

に依存する(B.2B.7 参照)


26

X 4301-1995 (ISO/IEC 10918-1 : 1994)

A.1.3

データ単位  データ単位は,可逆処理では 1 標本とし,DCT 利用型の処理では 8×8 の標本ブロッ

クとする。成分の最上部の 8 行の最も左側 8 標本分を,最左上ブロックとする。この最左上ブロックを基

準として,成分を右側そして下方向に隣接するデータ単位に分割する(

図 A.4 参照)。

A.1.4

方向  図 A.1 に画像成分の方向を“上”,“下”,“左”及び“右”という用語で示す。画像成分のデ

ータ単位を圧縮符号化処理手順に入力する順序は,成分内で左から右,上から下へと規定する(この順序

図 A.2 で正確に規定する)。原画像のどの端を上下左右とするかは,応用に応じて決めてよい。

A.2

原画像データ符号化順序  原画像データ単位を圧縮画像データ内でどのように符号化し配置するべ

きかを,走査ヘッダ(B.2.3 参照)で規定する。ある走査について,走査ヘッダの引数 Ns=1 ならば,引

数 Cs↓1↑で規定される成分のデータが,その走査内に存在しなければならない。このデータは,非イン

タリーブとなる。Ns>1 の場合,Cs↓1↑から Cs↓Ns↑の Ns 個の成分のデータが,その走査内に存在しな

ければならない。このデータは,常にインタリーブとなる。走査内の成分の順序は,フレームヘッダに規

定された順序によらなければならない。

データ単位の順序及び最小符号化単位 (MCU) の構造は,次のとおりとする。

A.2.1

最小符号化単位 (MCU)   非インタリーブのデータでは,MCU は,1 データ単位とする。インタ

リーブモードでは,MCU は,走査内の成分の標本化比率によって規定するデータ単位の列からなる。

A.2.2

非インタリーブ順序 (Ns1)    Ns=1 の場合(Ns は走査内の成分の数),走査内のデータ単位の順

序は,

図 A.2 に示すとおり,左から右,上から下へとする。この順序は,H↓1↑,V↓1↑の値にかかわら

ず,N

s

=1 の場合は,常に適用される。

図 A.2  非インタリーブデータ順序 

A.2.3

インタリーブ順序 (Ns1)    Ns>1 の場合,走査成分 Cs↓i↑を水平 H↓k↑×垂直 V↓k↑のデー

タ単位の小配列に分割する。添字の k は,フレームヘッダの成分規定の C↓k↑=Cs↓i↑となる位置から

H

↓k↑及び V↓k↑が得られることを示す。それぞれの H↓k↑×V↓k↑の配列内部では,データ単位の順

序は,左から右,上から下へとする。それぞれの成分内で,この配列の順序は,左から右,上から下へと

する。

図 A.3 に Ns=4 の例を示す。ここで,MCU↓1↑は,Cs↓1↑の最左上の配列領域のデータ単位が最初に

あり,次に Cs↓2↑の対応する領域からのデータ単位,次に Cs↓3↑,Cs↓4↑の順番からのデータ単位か

ら構成される。MCU↓2↑は,四つの成分での右側の次の領域から得られるデータで,MCU↓1↑と同様

の順序に従う。


27

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 A.3  インタリーブデータ順序の例

A.2.4

不完全な MCU の取扱い  DCT 利用型の処理では,1 ブロックを 1 データ単位とする。x↓i↑が 8

の倍数でない場合は,符号化処理において列の数を増やして右端の標本ブロックを完成しなければならな

い。成分がインタリーブされている場合,符号化処理において,ブロックの数が H↓i↑の整数倍になるよ

うに,必要なら一つ以上のブロック分の標本数を増やさなければならない。同様に,y↓i↑が 8 の倍数で

ない場合,符号化処理において行の数を増やして下端の標本ブロックを完成しなければならない。成分が

インタリーブされている場合,符号化処理において,ブロックの数が V↓i↑の整数倍になるように,必要

なら一つ以上のブロック行分の行の数を増やさなければならない。

参考  不完全な MCU は,それぞれの成分の右端及び下端の標本の繰返しによって完成するとよい。

可逆処理では,1 標本をデータ単位とする。成分がインタリーブされている場合は,符号化処理におい

て,標本数が H↓i↑の整数倍になるように必要に応じて標本数を増やさなければならない。同様に符号化

処理において,標本数が V↓i↑の整数倍になるように必要に応じて標本数を増やさなければならない。

符号化処理において,不完全な MCU を完成させるために付加された標本は,復号処理で削除しなけれ

ばならない。

A.3

DCT

圧縮

A.3.1

レベルシフト  原画像標本ブロックの FDCT を演算する前に,非差分フレームの符号化処理におい

て,標本値から 2↑P-1↓を減算して,符号付き表現にレベルシフトしなければならない。ここで P は,B.2.2

で規定する精度引数とする。P=8 ならば,レベルシフトは 128,P=12 ならば,レベルシフトは 2048 とな

る。

非差分フレームの復号処理で IDCT を演算し,再生画像標本のブロックを生成した後,逆レベルシフト

で 2↑P-1↓を加算し,結果を 0∼2↑P-1↓の範囲に変換して,標本値を符号なし表現に戻さなければなら

ない。

A.3.2

FDCT

演算における標本方向  FDCT の計算のために 8×8 の標本ブロックに分割した画像成分を

図 A.4 に示す。図 A.4 に,A.3.3 の FDCT 方程式で使用される添字を示すことによってブロック内の標本の

方向を規定する。

このブロックの分割及び標本の方向の規定は,すべての DCT 復号処理及び再生画像の出力に適用する。


28

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 A.4  8×標本ブロックの分割及び方向

A.3.3

FDCT

IDCT(参考)  FDCT 及び IDCT の理想的な関数定義を次の方程式で示す。

参考  これらの方程式は,どのような実際の実装によっても完全な精度を表現できない項を含んでい

る。FDCT と量子化処理手順との組合せに必要な精度は,ISO/IEC 10918-2 による。逆量子化処

理手順と IDCT との組合せに必要な精度も,ISO/IEC 10918-2 による。

(

)

(

)

16

v

1

2y

cos

16

u

1

2x

cos

yx

s

v

C

u

C

4

1

vu

S

:

FDCT

7

0

y

7

0

x

π

π

+

+

↑=

=

=

(

)

(

)

16

v

1

2y

cos

16

u

1

2x

cos

uv

S

v

C

u

C

4

1

yx

s

:

IDCT

7

0

v

7

0

u

π

π

+

+

↑=

=

=

ただし,C↓u↑,C↓v↑=1/2(u,v=0 の場合)

        C↓u↑,C↓v↑=1(その他の場合)

A.3.4

DCT

係数の量子化(参考)

・逆量子化(規定)  1 ブロックの FDCT が計算された後,64 個の DCT

係数を一様量子化器で量子化する。それぞれの係数 S↓vu↑に対する量子化器のステップサイズは,フレ

ーム引数 Tq↓i↑(B.2.2 参照)で規定する量子化表の要素 Q↓vu↑とする。

一様量子化器は,次に示す式による。丸めによって最も近い整数にする。

Sq

↓vu↑=round (S↓vu↑/Q↓vu↑)

Sq

↓vu↑は,量子化された DCT 係数で量子化器のステップサイズによって正規化している。

参考  この方程式は,どのような実際の実装によっても完全な精度を表現できない項を含んでいる。

FDCT

と量子化処理手順との組合せに必要な精度は,ISO/IEC 10918-2 による。

この正規化は,復号器において次の逆量子化の定義式によって復元する。

R

↓vu↑=Sq↓vu↑×Q↓vu↑

参考  量子化で使用する丸めによって,逆量子化した係数が期待する範囲外になる可能性がある。

標本,DCT 係数及び量子化の間の関係を,

図 A.5 に示す。


29

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 A.5  8×ブロック標本と DCT 係数の関係

A.3.5

差分直流係数符号化  量子化の後,エントロピー符号化を行う前に,量子化直流係数 Sq↓00↑は,

63

個の量子化交流係数とは別に扱う。現在のブロックの量子化直流係数(DC↓i↑ Sq↓00↑とも示す。

と,同じ成分の直前のブロックの量子化直流係数 (PRED) との差分 (DIFF) を符号化する。

DIFF

=DC↓i↑−PRED

A.3.6

ジグザグ順序  量子化の後,エントロピー符号化を行う前に,量子化交流係数をジグザグ順序に変

換する。量子化直流係数(配列内のゼロ番目の係数)は,A.3.5 に規定したように別に取り扱う。ジグザグ

順序を次に規定する。


30

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 A.6  量子化 DCT 系数のジグザグ順序

A.4

小数点移動  幾つかの処理手順においては,符号化の前に,データを小数点移動によって 2 のべき

乗で除算してもよい。小数点移動を必要とする処理は,可逆符号処理,階層型処理モードにおける可逆差

分フレーム符号処理及び DCT 利用型の段階処理モードにおける逐次近似符号処理の三つとする。

可逆符号化モードでは,入力標本に対して小数点移動を行う。階層型モードにおける可逆差分フレーム

符号化モードでは,

入力成分と参照成分標本との差分に対して小数点移動を行う。

これらの両方の場合で,

小数点移動は,2↑Pt↓で除算された整数となる。ここで,Pt は,小数点移動引数の値とする(B.2.3 参照)

逐次近似符号化では,交流係数の小数点移動は,2↑Al↓で除算された整数となる。ここで,Al は,逐

次近似ビット位置の下位である(B.2.3 参照)

。直流係数の小数点移動は,Al ビット分の算術右シフトとな

る。これはレベルシフト前に 2↑Pt↓で除算することと等しい(A.3.1 参照)

復号器の出力は,2↑Pt↓を乗算し,復元する。小数点移動の例は,K.10 に示す。

A.5

可逆符号化モード及び階層型符号化モードにおける算術処理  可逆符号化モードでは,予測値の計

算は,完全な精度をもち,かつ入力画像の精度によって許される値の範囲を越えてオーバーフロー又はア

ンダーフローしても抑制されない。しかし,予測値計算での 2 の除算は 1 ビットの算術右シフトによって

近似しなければならない。

可逆符号化モード及び階層型符号化モードにおける可逆差分フレーム符号化モードでの,2 の補数の差

分は,モジュロ 65536 として算出する。したがって,これらの差分の精度は,最高 16 ビットに制限される。

モジュロの値は,2 の補数の差分と X’FFFF’の論理積とをとることによって算出する。符号処理の目的で

は結果は,16 ビットの 2 の補数表現の差分として解釈する。モジュロ 65536 の計算は,他に復号器の予測

値の和及びこの 2 の補数表現の差分の出力の計算に使用する。


31

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 B(規定)  圧縮データ様式

この附属書は,次の 3 種類の圧縮データ様式を規定する。

(1)

交換様式(B.2 及び B.3 参照)

(2)

圧縮画像データ用簡易様式(B.4 参照)

(3)

表指定データ用簡易様式(B.5 参照)

B.1

では,これらの様式の構成要素を規定する。B.1.3 及び B.1.4 では,そこに用いる記号及び図の定義

を規定する。

B.1

圧縮データ様式の規定の概要  圧縮データ様式は,引数,マーカ及びエントロピー符号化データ部

分列の順序付けられた並びから構成する。引数及びマーカは,しばしばまとまってマーカ部分列を構成す

る。これら構成要素のすべてはバイトを単位とする符号で表現されているため,どの圧縮データ様式も,8

ビット長のバイトが並んだものとなる。それぞれのバイトに対し,その最上位ビット (MSB) 及び最下位

ビット (LSB) を定める。

B.1.1

構成要素  圧縮データ様式のそれぞれの構成要素について,その一般的な特性を B.1.1.1B.1.1.5

に規定する。

B.1.1.1

引数  引数は,整数値によって,符号化処理,原画像の性質及び応用が選択したその他の性能を

表す。引数は,4 ビット,1 バイト又は 2 バイトで表現する。引数は,省略可能な幾つかのものを除いて,

復号処理で正しく画像を再生する際に不可欠な情報を符号化して表現する。

引数の符号割当ては,符号なし整数を,その引数に固有のビット数で表す。

長さが 2 バイト(16 ビット)の引数においては,その上位バイトが圧縮データ様式のバイトの並びの中

で先に位置する。長さが 4 ビットの引数は,常に対にして用い,その対を 1 バイトで符号化する。対の先

頭の 4 ビットの引数が,そのバイトの中で上位の 4 ビットを占める。16 ビット,8 ビット又は 4 ビットの

いずれの引数においても,その MSB が最初に現れ,LSB が最後に現れる。

B.1.1.2

マーカ  マーカは,圧縮データ様式での様々な構造単位を明示するのに用いる。多くのマーカは,

一連の引数を含むマーカ部分列の先頭に位置する。マーカの中には,それ単独で用いるものもある。すべ

てのマーカは,2 バイト符号とする。最初のバイトは X’FF’とし,次のバイトは 0 でもなく X’FF’でもない

ものとする(

表 B.1 参照)。マーカの前には,符号 X’FF’が割当てられたフィルバイトを任意に幾つか並べ

てもよい。

参考  この特別な符号割当て構造によって,画像データの他の部分列を解読することなしに,マーカ

だけに着目して,圧縮データ様式を解析し,その部分部分を位置決めすることが可能になる。

B.1.1.3

マーカの割当て  すべてのマーカは,2 バイト符号とする。その最初のバイトを X’FF’,第 2 の

バイトを 0 でもなく X’FF’でもないものにする。それぞれのマーカに対する,第 2 のバイトは,

表 B.1 

とおりとする。星印 (*) を付けたマーカは,単独で用いるマーカとし,これはマーカ部分列を開始するこ

とがない。


32

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 B.1  マーカコードの割当て

符号割当て

記号

記述

フレーム開始マーカ,非差分フレーム,ハフマン符号処理

X’FFC0’ SOF

↓0↑

基本 DCT

X’FFC1’ SOF

↓1↑

拡張順次 DCT

X’FFC2’ SOF

↓2↑

段階 DCT

X’FFC3’ SOF

↓3↑

可逆(順次)

フレーム開始マーカ,差分フレーム,ハフマン符号処理

X’FFC5’ SOF

↓5↑

差分順次 DCT

X’FFC6’ SOF

↓6↑

差分段階 DCT

X’FFC7’ SOF

↓7↑

差分可逆(順次)

フレーム開始マーカ,非差分フレーム,算術符号処理

X’FFC8’ JPG

規格拡張のために確保

X’FFC9’ SOF

↓9↑

拡張順次 DCT

X’FFCA’ SOF

↓10↑

段階 DCT

X’FFCB’ SOF

↓11↑

可逆(順次)

フレーム開始マーカ,差分フレーム,算術符号処理

X’FFCD’ SOF

↓13↑

差分順次 DCT

X’FFCE’ SOF

↓14↑

差分段階 DCT

X’FFCF’ SOF

↓15↑

差分可逆(順次)

ハフマン表指定

X’FFC4’ DHT

ハフマン表定義

算術符号処理条件指定

X’FFCC’ DAC

算術符号処理条件定義

符号化再初期化間隔終了

X’FFD0’ RST

↓m↑

モジュロ 8 での番号 m の符号化再初期化

他のマーカ

X’FFD8’ SOI*

画像開始

X’FFD9’ EOI*

画像終了

X’FFDA’ SOS

走査開始

X’FFDB’ DQT

量子化表定義

X’FFDC’ DNL

ライン数定義

X’FFDD’ DRI

符号化再初期化間隔定義

XFFDE’ DHP

階層型段階定義

X’FFDF’ EXP

参照成分拡張

X’FFE0’ APPn

応用部分列のために確保

X’FFF0’ JPGn

規格拡張のために確保

X’FFFE’ COM

コメント

確保済みマーカ

X’FF01’ TEM*

算術符号処理での一時的な補助に用いる

X’FF02’

∼X’FFBF’ RES

確保

B.1.1.4

マーカ部分列  マーカ部分列は,マーカ及びその後に続く一連の引数からなる。マーカ部分列の

第 1 の引数は,2 バイトの符号長引数とする。この符号長引数は,マーカ部分列のバイト数を表す。この

長さは,符号長引数自身を含めるが,2 バイトのマーカは含めない。記号の SOF 及び SOS で示すマーカで

始まるマーカ部分列をヘッダという。特に,前者をフレームヘッダといい,後者を走査ヘッダという。

B.1.1.5

エントロピー符号化データ部分列  エントロピー符号化データ部分列は,エントロピー符号化処

理手順の出力を保持する。この部分列は,エントロピー符号化処理手順でハフマン符号化を使っていても

算術符号化を使っていても,整数個のバイトからなる。


33

X 4301-1995 (ISO/IEC 10918-1 : 1994)

参考1.  エントロピー符号化部分列を整数個のバイト列にするためには,次の方法を用いる。ハフマ

ン符号化では,必要があれば,圧縮データの最後に必要なだけビット1を補ってこの部分列の

最後のバイトを完成する。算術符号化では,エントロピー符号化部分列を終了する手続によ

って行う(D.1.8参照)

2.

エントロピー符号化部分列内に,ハフマン符号化又は算術符号化で生成された X’FF’バイト

若しくは

参考 1.で述べたビット 1 の充てんによって生成された X’FF’バイトが現れないこと

を保証するため,ハフマン符号化にあっても算術符号化にあっても,符号化器はバイト X’FF’

を作り出したときには,その直後にバイト 0 を挿入する(D.1.6 及び F.1.2.3 参照)

B.1.2

構文法  交換様式の構文法を B.2 及び B.3 に規定する。構文法の規定は,次のものからなる。

−  マーカ,引数及びエントロピー符号化部分列に要求される順序。

−  任意又は条件付きの構成要素の識別。

−  マーカ及び引数のそれぞれの名前,記号及び定義。

−  それぞれの引数に許される値。

−  種々の符号化処理に特有な制限。

構成要素の順序及びそれが任意か又は条件付きかの識別は,

B.2

及び B.3 の構文法図によって規定する。

名前,記号,定義,許される値及び制限は,構文法図の直後に規定する。

B.1.3

構文法図の慣例  B.2 及び B.3 の構文法図は,交換様式の規定の一部とする。図 B.1 に図示されてい

る次の慣例をこれらの構文法図に適用する。

引数・マーカの表示:細線の箱は,マーカ又は単一の引数を表す。

部分列の表示:太線の箱は,マーカ部分列若しくはエントロピー符号化データ部分列,又はこれら

の組合せを表す。

引数長の表示:細線の箱の幅は,その細線の箱の中のマーカ又は引数の符号長(図 B.1 に E,B 及

び D として示された,4,8 又は 16 ビット)に比例している。太線の箱の幅は,意味をもたない。

任意・条件付きの表示:

[  ]括弧は,マーカ又はマーカ部分列が圧縮画像データ内に,任意又は条

件付きにあることを表す。

順序:交換様式では,図の中の引数又はマーカは,その右にあるものすべてより先に位置し,その

左にあるものすべての後に位置する。

エントロピー符号化データの表示:<  >括弧は,囲まれた量がエントロピー符号化されたことを

示す。

図 B.1  構文法図の慣例 

B.1.4

記号,符号長及び値の慣例  B.2 及び B.3 の中のそれぞれの構文法図に続いて,図の中に示すそれ

ぞれのマーカ及び引数に対する記号,名前及び定義を規定する。それぞれの引数に対して,長さ及び許さ

れる値も表形式で規定する。

次に示す慣例は,マーカ及び引数に対する記号に適用する。

−  すべてのマーカの記号は,大文字三つとする。さらに,添字が付くことがある。例えば,SOI,SOF

↓n↑。


34

X 4301-1995 (ISO/IEC 10918-1 : 1994)

−  すべての引数の記号は,大文字一つとする。さらに,小文字一つと添字とが付くことがある。例え

ば,Y,Nf,H↓i↑,Tq↓i↑。

B.2

順次及び段階の一般的な構文法  ここでは順次 DCT 利用型,段階 DCT 利用型,及び可逆符号化モ

ードのすべての符号化処理に適用する交換様式の構文法を規定する。

B.2.1

上位レベルの構文法  図 B.2 は,この規格で規定されたすべての非階層型符号化処理の交換様式の

上位レベルの構成要素の順序の規定である。

図 B.2  DCT 利用型の順次,DCT 利用型の段階及び可逆符号処理モードの構文

図 B.2 に示す三つのマーカを次のように規定する。

SOI

:画像開始マーカ  交換様式で表された圧縮画像の開始を示す。

EOI

:画像終了マーカ  交換様式で表された圧縮画像の終了を示す。

RST

m↑:符号化再初期化マーカ  圧縮データ部分列の間に符号化再初期化が有効のときだけ置かれる

条件付きのマーカ。八つの異なる符号化再初期化マーカがあり (m=0−7),各走査の最初は 0 で始まり,0

∼7 まで順に繰り返す。符号化再初期化間隔の数のモジュロ 8 を示す。

図 B.2 の最上位レベルで,非階層型交換様式は,SOI マーカで始まり,一つのフレームを含み,EOI マ

ーカで終わらなければならないことを示している。

図 B.2 の 2 番目のレベルで,フレームは,フレームヘッダで始まり,一つ以上の走査を含まなければな

らないことを示している。B.2.4 で規定するように,フレームヘッダの前には,表指定又は種々のマーカ部

分列を一つ以上置いてもよい。DNL 部分列(B.2.5 参照)が存在すれば,第一の走査の直後に続けなけれ

ばならない。

DCT

利用型の順次及び可逆の処理において,それぞれの走査は,一つから四つの画像成分を含まなけれ

ばならない。二つから四つの成分が走査に含まれれば,その走査内でインタリーブでなければならない。

DCT

利用型の段階の処理において,それぞれの画像成分は,部分的に任意の走査に含まれる。

(直流係数

データだけが含まれる)成分の最初の走査だけがインタリーブしてもよい。


35

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 B.2 の 3 番目のレベルで,走査は,走査ヘッダで始まり,一つ以上のエントロピー符号化データ部分

列を含まなければならないことを示している。それぞれの走査ヘッダの前には,表指定又は種々のマーカ

部分列を一つ以上置いてもよい。符号化再初期化が有効でなければ,ただ一つのエントロピー符号化部分

列(“last”  と書かれたもの)がなければならず,符号化再初期化マーカはあってはならない。符号化再初

期化が有効であれば,エントロピー符号化部分列の数は,画像の大きさ及び定義された符号化再初期化間

隔によって定義する。この場合,最後の符号化再初期化マーカを除いて,符号化再初期化マーカの後には

それぞれのエントロピー符号化部分列が続かなければならない。

図 B.2 の 4 番目のレベルで,それぞれのエントロピー符号化部分列は,エントロピー符号化された MCU

の並びからなることを規定している。符号化再初期化が有効で,符号化再初期化間隔が Ri で定義されてい

れば,最後のものを除いたそれぞれのエントロピー符号化部分列は,Ri 個の MCU を含まなければならな

い。最後のものは,その走査を完結する MCU の数を含む。

図 B.2 で,表指定部分列を配置してもよい位置を規定する。しかし,この規格では,交換様式は,圧縮

された画像を復号するのに必要なすべての表指定データを含まなければならないことを規定している。し

たがって,必要な表指定データは,一つ以上の許された場所に置く必要がある。

B.2.2

フレームヘッダの構文法  図 B.3 は,フレームの最初に存在するフレームヘッダを示す。このヘッ

ダは,原画像の特徴(A.1 参照)

,フレームの成分及びそれぞれの成分に対する標本化比率を規定する。そ

してそれぞれの成分に用いられる量子化表を規定する。

図 B.3  フレームヘッダの構文

図 B.3 に示すマーカ及び引数を次のとおり定義する。それぞれの引数の大きさ及び許される値を表 B.2

に示す。

表 B.2(及びこれに続く同様の表)内で,値の選択を示す場合はコンマで区切る(例えば,8,12)。

含まれる範囲を示す場合は,ハイフンで区切る(例えば,0-3)

SOF

n↑:フレーム開始マーカ  フレーム引数の始まりを示す。添字 n によって,符号化処理が基本処理

順次,拡張処理順次,段階又は可逆のどの符号化処理かを表す。同様に,どのエントロピー符号化処理が

使われるのかを表す。

SOF

0 

基本処理 DCT

SOF

1 

拡張処理順次 DCT,ハフマン符号化

SOF

2 

段階 DCT,ハフマン符号化

SOF

3 

可逆(順次)

,ハフマン符号化

SOF

9 

拡張処理順次 DCT,算術符号化

SOF

10  

段階 DCT,算術符号化

SOF

11  

可逆(順次)

,算術符号化

Lf

:フレームヘッダ長  図 B.3 に示すフレームヘッダの長さを規定する(B.1.1.4 参照)。


36

X 4301-1995 (ISO/IEC 10918-1 : 1994)

P

:標本精度  フレーム内の成分の標本に対するビットの精度を規定する。

Y

:ライン数  原画像内の最大ライン数を規定する。これは,最大の垂直標本数をもつ成分のライン数と

等しい(A.1.1 参照)。値 0 は,ライン数が第一の走査の最後の DNL マーカ及び引数によって定義するこ

とを表す(B.2.5 参照)。

X

:ライン当たりの標本数  原画像内のライン当たりの最大標本数を規定する。これは,最大の水平標本

数をもつ成分のライン当たりの標本数と等しい(A.1.1 参照)。

Nf

:フレーム内の画像成分数  フレーム内の原画像の成分の数を規定する。Nf の値はフレームヘッダ内に

存在するフレーム成分規定引数 (C↓i↑, H↓i↑, v↓i↑,Tq↓i↑)  の組の数に等しい。

C

i↑:成分識別子  異なるラベルを一連のフレーム成分規定引数の i 番目の成分に割り当てる。これら

の値は,走査ヘッダ内で走査の成分を識別するのに使う。C↓i↑の値は,C↓1↑∼C↓i-1↑までの値と異

なる。

H

i↑:水平抽出比率  水平方向の大きさの成分及び最大の画像の大きさ X(A.1.1 参照)の関係を規定

する。走査内で一つ以上の成分を符号化するときに,それぞれの MCU の成分 C↓i↑の水平データ単位の

数を規定する。

V

i↑:垂直抽出比率  垂直方向の大きさの成分及び最大の画像の大きさ Y(A.1.1 参照)の関係を規定す

る。走査内で一つ以上の成分を符号化するときに,それぞれの MCU の成分 C↓i↑の垂直データ単位の数

を規定する。

Tq

i↑:量子化表セレクタ  成分 C↓i↑の DCT 係数の逆量子化に用いる量子化表が取り出される,四つ

の可能な量子化表のうちの一つを選択する。復号処理が逆量子化処理を使用する場合,復号器が成分 C↓i

↑を含む走査の復号を開始するときまでに,この表を規定しなければならない。C↓i↑を含むすべての走

査が完了するまで再び定義したり,内容の変更を行ってはならない。

表 B.2  フレームヘッダ引数の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

Lf 16

8

+3×Nf

P 8  8  8,

12 8,

12 2-16

Y 16

0-65535

X 16

1-65535

Nf

8

1-255

1-255 1-4 1-255

C

i

 8

0-255

H

i

 4

1-4

V

i

 4

1-4

Tq

i

 8  0-3

0-3

0-3

0

B.2.3

走査ヘッダの構文法  図 B.4 は,走査の最初に置かれる走査ヘッダを規定する。このヘッダは,走

査内に含まれている成分,走査内のそれぞれの成分に対して使われるエントロピー符号化表及び(段階

DCT

で)走査内に含まれる DCT 量子化係数データを規定する。可逆処理において走査引数は,予測及び

小数点移動を規定する。

参考  走査内にただ一つの画像成分しか存在しなければ,その成分は,定義によって非インタリーブ

である。走査内に複数の画像成分が存在すれば,その成分は,定義によってインタリーブであ

る。


37

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 B.4  走査ヘッダの構文

図 B.4 に示すマーカ及び引数を次のように定義する。それぞれの引数の大きさ及び許される値を表 B.3

に示す。

SOS

:走査開始マーカ  走査引数の開始を表す。

Ls

:走査ヘッダ長  図 B.4 内に示す走査ヘッダの長さを規定する(B.1.1.4 参照)。

Ns

:走査内の画像成分数  走査内の原画像の成分の数を規定する。Ns の値は,走査ヘッダ内に存在する走

査成分規定引数 (Cs↓j↑, Td↓j↑, Ta↓j↑)  の組の数に等しい。

Cs

j↑:走査成分セレクタ  フレーム引数で規定された Nf 画像成分から走査内の j 番目の成分を選択す

る。それぞれの Cs↓j↑は,フレームヘッダ内で規定された C↓i↑の値の一つに合致しなければならない。

そして,走査ヘッダ内の順序は,フレームヘッダ内の順序に従わなけばならない。Ns>1 ならば,MCU 内

のインタリーブの成分の順序は,Cs↓1↑が始めで,Cs↓2↑が 2 番目で,...となる。Ns>1 ならば,走査

内に含まれる画像成分に次に示す制限をしなければならない。

10

j

V

j

H

Ns

1

j

×

=

ここで,H↓j↑及び V↓j↑は,走査成分 j に対する水平抽出比率及び垂直抽出比率とする。これらの標

本化比率は,フレームヘッダ内で成分 i に対して規定する。ここで,i は,フレーム成分規定インデックス

である。フレーム成分識別子 C↓j↑が走査成分セレクタ Cs↓j↑に対応する。

例として,512 ラインでライン当たり 512 標本の大きさで,次に示す標本化比率の,三つの成分をもつ

画像を考える。

成分 0 H0=4, V0=1

成分 1 H1=1, V1=2

成分 2 H2=2, V2=2

このとき,H↓j↑×V↓j↑の総和は, (4×1)  + (1×2)  + (2×2)  =10 である。

Td

j↑:直流係数エントロピー符号化表セレクタ  成分 Cs↓j↑の直流係数の復号に必要なエントロピー

表が取り出される,四つの可能な直流係数エントロピー符号化表から一つを規定する。選択された直流係

数エントロピー表は,復号器が現在の走査を復号する用意ができるまでに規定されていなければならない

B.2.4.2 参照)。この引数は,可逆処理においてエントロピー符号化表を選択する。

Ta

j↑:交流係数エントロピー符号化表セレクタ  成分 Cs↓j↑の交流係数の復号に必要なエントロピー

表が取り出される,四つの可能な交流係数エントロピー符号化表から一つを規定する。選択された交流係

数エントロピー表は,復号器が現在の走査を復号する用意ができるまでに規定されていなければいけない

B.2.4.2 参照)。この引数は,可逆処理において 0 である。


38

X 4301-1995 (ISO/IEC 10918-1 : 1994)

Ss

:周波数選択,予測器選択の開始  DCT 符号化モードにおいて,この引数は,走査内で符号化する,そ

れぞれのブロック内のジグザグ順序での最初の DCT 係数を規定する。この引数は,順次 DCT 処理におい

て 0 に設定しなければならない。この引数は,可逆符号化モードにおいて予測器の選択に用いる。

Se

:周波数選択の終了  走査内で符号化するそれぞれのブロック内のジグザグ順序での最後の DCT 係数

を規定する。この引数は,順次 DCT 処理において 63 に設定しなければならない。この引数は,可逆符号

化モードにおいて意味をもたない。このときは,0 に設定しなければならない。

Ah

:逐次近似ビット位置の上位  この引数は,Ss 及び Se によって規定する係数の帯域に対する前の走査

内で用いられる小数点移動(すなわち,前の走査内の逐次近似ビット位置の下位)を規定する。この引数

は,それぞれの係数の帯域の最初の走査に対して 0 に設定しなければならない。可逆符号化モードにおい

てこの引数は,意味をもたない。このときは,0 に設定しなければならない。

Al

:逐次近似ビット位置の下位又は小数点移動  DCT 符号化モードにおいてこの引数は,Ss 及び Se によ

って規定する係数の帯域を符号化する前に用いられる小数点移動,すなわち,ビット位置の下位を規定す

る。この引数は,順次 DCT 処理に対して 0 に設定しなければならない。この引数は,可逆符号化モードに

対して,小数点移動,Pt を規定する。

表 B.3  走査ヘッダ引数の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

Ls 16

6

+2×Ns

Ns 8

1

−4

Cs

j

 8

0-255

*

Td

j

4

0-1 0-3 0-3 0-3

Ta

j

4

0-1 0-3 0-3 0

Ss 8 0

0

0-63  1-7

**

Se 8 63

63

Ss-63

***

 0

Ah 4  0

0

0-13  0

Al 4 0

0

0-13  0-15

エントロピー符号化表セレクタの Td↓j↑及び Ta↓j↑は,

(ハフマン符号化を用いたフレームでは)ハ

フマン符号表又は(算術符号化を用いたフレームでは)算術符号化表を選択する。後者の場合,エントロ

ピー符号化表セレクタは,算術符号化条件表及び関連する統計量領域の両方を選択する。

B.2.4

表指定及び種々のマーカ部分列の構文法  図 B.5 で,B.2.4.1B.2.4.6 で規定された表指定部分列又

は種々のマーカ部分列が,

図 B.2 に示された場所で,順序及び部分列の数に制限なく存在してもよいこと

を規定している。


39

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 B.5  表又は種々のマーカ部分列の構文

圧縮画像データ内でデスティネーションが発生した場合,これに従って前の表指定を変更しなければな

らない。そして,フレーム内の残りの走査で指定されたときはいつでもそれを使わなければならない。圧

縮画像データ内で複数回表指定が行われたら,その度に前の規定と置き換えなければならない。量子化表

指定は,与えられた成分の段階 DCT 走査の間変更できない。

B.2.4.1

量子化表指定の構文法  図 B.6 は,一つ以上の量子化表を定義するマーカ部分列の規定を示す。

図 B.6  量子化表の構文

図 B.6 に示すマーカ及び引数を次のとおり定義する。それぞれの引数の大きさ及び許される値を表 B.4

に示す。

DQT

:量子化表定義マーカ  量子化表指定引数の開始を示す。

Lq

:量子化表定義長  B.6 に示すすべての量子化表引数の長さを規定する(B.1.1.4 参照)。

Pq

:量子化表要素精度  Q↓k↑の値の精度を規定する。値 0 は,8 ビットの Q↓k↑の値を示す。値 1 は,

16

ビットの Q↓k↑の値を示す。8 ビット精度の標本 P に対して,Pq は,0 にしなければならない(B.2.2

参照)。

Tq

:量子化表識別子  四つの可能な量子化表のうち,復号器に取り込まなければならないものを規定する。

Q

k↑:量子化表の要素  64 要素のうち k 番目の要素を規定する。ここで k は,DCT 係数のジグザグ順

序内でのインデックスとする。量子化要素は,ジグザグ走査の順番で規定しなければならない。


40

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 B.4  量子化表指定引数の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

Lq 16

))

(

64

65

(

2

1

t

Pq

n

t

×

+

+

=

未定義

Pq

4

0

0, 1

0, 1

未定義

Tq 4

0-3

未定義

Q

k

 8,

16

1-255

,1-65535

未定義

表 B.4 の値 n は,DQT マーカ部分列で規定された量子化表の数とする。

一度,量子化表を定義すると,これを次の画像に用いてもよい。デスティネーションに対して表が定義

されていなければ,このデスティネーションがフレームヘッダ内で指定したときの結果は予期できない。

8

ビットの DCT 利用型の処理では,16 ビット精度の量子化表を使用してはならない。

B.2.4.2

ハフマン符号表指定の構文法  図 B.7 は,一つ以上のハフマン符号表指定を定義するマーカ部分

列の規定を示す。

図 B.7  ハフマン符号表の構文

図 B.7 に示すマーカ及び引数を次のとおり定義する。それぞれの引数の大きさ及び許される値を表 B.5

に示す。

DHT

:ハフマン符号表定義マーカ  ハフマン符号表定義引数の開始を示す。

Lh

:ハフマン符号表定義長  図 B.7 に示されたすべてのハフマン符号表引数の長さを規定する(B.1.1.4 

照)。

Tc

:表種別  0=直流係数の表又は可逆の表。1=交流係数の表。

Th

:ハフマン符号表識別子  四つの可能なハフマン符号表のうち,復号器に取り込まなければならないも

のを規定する。

L

i↑:長さ のハフマン符号数  この規格で許されている 16 ビットまでの可能な長さそれぞれに対する

ハフマン符号の数を規定する。L↓i↑は,BITS 表の要素である。

V

ij↑:ハフマン符号それぞれに対応する値  長さ i のハフマン符号それぞれに対応する値を,それぞ

れの i に対して規定する。それぞれの値の意味は,ハフマン符号化モデルによって決まる。V↓i,j↑は,

HUFFVAL

表の要素である。


41

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 B.5  ハフマン符号表指定引数の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

Lh 16

(

)

t

n

t

m

+

+

=

17

2

1

Tc 4

0,

1

0

Th 4  0,

1

0-3

Li 8

0-255

Vij 8

0-255

表 B.5  内の値 n は,DHT マーカ部分列で規定するハフマン符号表の数を示す。値 m↓t↑は,ハフマン

符号表 t に対する 16 個の L↓i↑ (t) の引数の後に続く引数の個数で,次のとおり与えられる。

↑=

=

i

L

t

m

16

1

i

一般に,m↓t↑はそれぞれの表によって異なる。

一度,ハフマン符号表を定義すると,これを次の画像に用いてもよい。デスティネーションに対して表

が定義されていなければ,

このデスティネーションが走査ヘッダ内で指定したときの結果は予期できない。

B.2.4.3

算術符号化条件表指定の構文法  図 B.8 は,一つ以上の算術符号化条件表指定を定義するマーカ

部分列の規定を示す。これらは,算術符号化処理において,SOI マーカによって設定されたデフォルトの

算術符号化条件表を置き換える(F.1.4.4.1.4 及び F.1.4.4.2.1 参照)

図 B.8  算術符号化条件表指定の構文

図 B.8 に示すマーカ及び引数を次のとおり定義する。それぞれの引数のサイズ及び許される値を表 B.6

に示す。

DAC

:算術符号化条件付け定義マーカ  算術符号化条件付け引数の定義の開始を示す。

La

:算術符号化条件付け定義長  図 B.8 に示されたすべての算術符号化条件付け引数の長さを規定する

B.1.1.4 参照)。

Tc

:表種別  0=直流係数の表又は可逆の表,1=交流係数の表。

Tb

:算術符号化条件表の識別子  四つの可能な算術符号化条件表のうち,復号器に取り込まなければなら

ないものを規定する。

Cs

:条件表の値  交流係数又は直流係数(及び可逆)の条件表の値。一つの Cs の値は,それぞれの Tb の

値の後に続く。交流係数の条件表に対しては Tc は 1 で,Cs は 1≦Kx≦63 の範囲の Kx の値を含まなけれ

ばならない。直流係数(及び可逆)の条件表に対しては Tc は 0 で,Cs は二つの 4 ビット引数 U 及び L を

含まなければならない。U 及び L は 0≦L≦U≦15 の範囲で,Cs の値は L+16×U でなければならない。


42

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 B.6  算術符号化条件表指定引数の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

La 16

未定義

2

+2×n

Tc 4

未定義 0,

1

0

Tb 4

未定義 0-3

Cs 8

未定義

0-255 (Tc

=0), 1-63 (Tc=1)

0-255

表 B.6 の値 n は,DAC マーカ部分列で規定する算術符号化条件表の個数を示す。引数の L 及び U は,

直流係数の符号化及び可逆符号化に対して定義する算術符号化処理で使われる下及び上の条件付けの境界

である。DCT 符号化で記されている 1-63 の値は,Kx で,交流係数符号化で用いられる条件付けとする。

B.2.4.4

符号化再初期化間隔定義の構文法  図 B.9 は,符号化再初期化間隔を定義するマーカ部分列の規

定を示す。

図 B.9  符号化再初期化間隔定義の構文

図 B.9 に示すマーカ及び引数を次のとおり定義する。それぞれの引数の大きさ及び許される値を表 B.7

に示す。

DRI

:符号化再初期化間隔定義マーカ  符号化再初期化間隔を定義する引数の開始を示す。

Lr

:符号化再初期化間隔部分列定義長  図 B.9 に示す DRI 部分列内の引数の長さを規定する(B.1.1.4 参照)。

Ri

:符号化再初期化間隔  符号化再初期化間隔内の MCU の個数を規定する。

表 B.7  符号化再初期化間隔部分列引数の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

Lr 16

4

Ri 16

0-65535

n

×MCUR

表 B.7 で値 n は,符号化再初期化間隔内の MCU の列の個数を示す。MCUR の値は,走査内のそれぞれ

の成分の一つの標本列を作るために必要な MCU の数とする。SOI マーカは,符号化再初期化間隔を無効

にする。0 でない Ri を伴う DRI マーカ部分列は,後に続く走査に対して符号化再初期化間隔を有効にする

ために存在しなければならない。0 の Ri を伴う DRI マーカ部分列は,後に続く走査に対し符号化再初期化

間隔を無効にしなければならない。

B.2.4.5

コメントの構文法  図 B.10 は,コメント部分列に対するマーカ部分列構造の規定を示す。

図 B.10  コメント部分列の構文

図 B.10 に示すマーカ及び引数を次のとおり定義する。それぞれの引数の大きさ及び許される値を表 B.8

に示す。

COM

:コメントマーカ  コメントの開始を示す。

Lc

:コメント部分列長  図 B.10 に示すコメント部分列の長さを規定する(B.1.1.4 参照)。

Cm

i↑:コメントバイト  この解釈は応用にゆだねる。


43

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 B.8  コメント部分列引数の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

Lc 16

2-65535

Cm

i

 8

0-255

B.2.4.6

応用データの構文法  図 B.11 は応用データ部分列に対するマーカ部分列構造の規定を示す。

図 B.11  応用データの構文

図 B.11 に示すマーカ及び引数を次のとおり定義する。それぞれの引数の大きさ及び許される値を表 B.9

に示す。

APPn

:応用データマーカ  応用データ部分列の開始を示す。

Lp

:応用データ部分列長  図 B.11 に示す応用データ部分列の長さを規定する(B.1.1.4 参照)。

Ap

i↑:応用データバイト  この解釈は応用にゆだねる。

表 B.9  応用データ部分列引数の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

Lp 16

2-65535

AP

i

 8

0-255

APPn

(応用)部分列は,応用での使用のために確保される。これらの部分列は,異なる応用で異なって

定義してよいために,データを応用環境間で変換するときには取り除かなければならない。

B.2.5

ライン数定義の構文法  図 B.12 は,ライン数の定義に対するマーカ部分列の規定を示す。DNL(ラ

イン数定義)部分列は,第一の走査の最後に,フレーム内(フレームヘッダ内の Y 引数)のライン数の定

義又は再定義のメカニズムを提供する。この値は,第一の走査で符号化された MCU 列の数と一致しなけ

ればならない。この部分列が使われる場合は,第一の走査の最後及び整数個の MCU 列の符号化の後にだ

け置かれなければならない。このマーカ部分列は,フレームヘッダ内に定義されたライン数 (Y) が値 0

のときに必要となる。

図 B.12  ライン数定義の構文

図 B.12 に示すマーカ及び引数を次のとおり定義する。それぞれの引数の大きさ及び許される値を表 B.10

に示す。

DNL

:ライン数定義マーカ  ライン数定義部分列の開始を示す。

Ld

:ライン数定義部分列長  図 B.12 に示すライン数定義部分列の長さを規定する(B.1.1.4 参照)。

NL

:ライン数  フレーム内のライン数を規定する(B.2.2 の Y の定義を参照)。


44

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 B.10  ライン数定義部分列の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

Ld 16

4

NL 16

1-65535*

B.3

階層型の構文法

B.3.1

階層型モードの上位レベルの構文法  図 B.13 で,階層型符号化処理の交換様式の上位レベルの構

成要素の順序を規定する。

図 B.13  階層型符号処理モードの構文

階層型モードの構文法には,非差分フレームの前に DHP マーカ部分列がなければならない。それは,

EXP

マーカ部分列及び最初の非差分フレームが後に続く差分フレームを含んでもよい。階層型モードのフ

レーム構造は,非階層型モードのフレーム構造と同一とする。

階層型シーケンスでの非差分フレームは,SOF↓n↑マーカ SOF↓0↑,SOF↓1↑,SOF↓2↑,SOF↓3

↑,SOF↓9↑,SOF↓10↑及び SOF↓11↑に対して規定された符号化処理の一つを用いる。差分フレーム

は,SOF↓5↑,SOF↓6↑,SOF↓7↑,SOF↓13↑,SOF↓14↑及び SOF↓15↑に対して規定された処理

の一つを用いる。一つの階層型シーケンス内で,SOF マーカの許される組合せは,

附属書 で規定する。

標本精度 (P) は,すべてのフレームに対して一定でなければならず,DHP マーカ部分列内で符号化され

たのと同一の値とする。ライン当たりの標本数 (X) は,すべてのフレームに対して,DHP マーカ部分列

で符号化された値を超えてはならない。ライン数 (Y) が DHP マーカ部分列内で非ゼロならば,ライン数

は,すべてのプレームに対して,DHP マーカ部分列で符号化された値を超えてはならない。

B.3.2

DHP

部分列の構文法  DHP 部分列は,完全なフレームの階層型シーケンスに対して,画像成分,

大きさ及び標本化比率を定義する。DHP 部分列は,最初のフレームの前に置かなければならない。圧縮画

像データの中には,一つの DHP 部分列を置かなければならない。

DHP

部分列の構造は,SOF↓n↑マーカの代わりに DHP マーカが使われることを除いて,フレームヘッ

ダ構文法と同じとする。DHP 部分列内で,量子化表セレクタ引数をゼロに設定しなければならないことを

除いて,B.2.2 の図及び記述を適用する。

B.3.3

EXP

部分列の構文法  図 B.14 は,EXP 部分列に対するマーカ部分列構造の規定を示す。EXP 部分

列は,参照成分の拡張が垂直方向又は水平方向に必要な場合(そして,そのときだけ)

,存在しなければな

らない。EXP 部分列引数は,画像内の次のフレーム(これは差分フレームでなければならない。

)に適用

される。必要ならば,EXP 部分列は,フレームヘッダの前に置かれる表指定又は種々のマーカ部分列のう

ちの一つとして配置する。EXP 部分列は,走査ヘッダ又は DHP マーカ部分列の前に置かれる表指定又は

種々のマーカ部分列の一つとして配置してはならない。


45

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 B.14  拡張部分列の構文

図 B.14 に示す引数を次のとおり定義する。それぞれの引数のサイズ及び許される値を表 B.11 に示す。

EXP

:参照成分拡張マーカ  参照成分拡張部分列の開始を示す。

Le

EXP 部分列長  EXP 部分列の長さを規定する(B.1.1.4 参照)。

Eh

:垂直方向の拡張  これが 1 の場合,参照成分を垂直方向に拡張する。垂直方向の拡張が必要でなけれ

ば,この値は,0 でなければならない。

Ev

:水平方向の拡張  これが 1 の場合,参照成分を水平方向に拡張する。水平方向の拡張が必要でなけれ

ば,この値は,0 でなければならない。

表 B.11  拡張部分列引数の大きさ及び値

順次 DCT

引数

大きさ

(bits)

基本

拡張

段階

DCT

可逆

Le 16

3

Eh 4

0,

1

Ev 4

0,

1

垂直方向及び水平方向の両方に拡張が必要な場合,Eh 及び Ev の両方は,1 でなければならない。

B.4

圧縮画像データ用簡易様式  図 B.2 は,交換様式の上位レベルの構成要素を示している。この様式

は,復号に必要なすべての表の規定を含む。応用環境が,圧縮画像データ以外に表指定を行う方法を用意

しているならば,幾つか又はすべての表の規定は,省略してもよい。復号に必要な表指定データのうちの

どれか一つでも欠けている圧縮画像データは,簡易様式とする。

B.5

表指定データ用簡易様式  図 B.2 は,交換様式の上位レベルの構成要素を示している。圧縮画像デ

ータの中にフレームが存在しなければ,その圧縮画像データの目的は,B.2.4.1B.2.4.2B.2.4.5 及び B.2.4.6

で定義する表指定又は種々のマーカ部分列を伝達することにある。この場合,圧縮画像データは,表指定

データ用簡易様式とする。

図 B.15  表指定データ用簡易様式の構文

B.6

要約  図 B.16 及び図 B.17 は,交換様式の構成要素の順序及びすべてのマーカ部分列の構成を示し

ている。

図 B.16 中の二重線の箱は,マーカ部分列を含んでいる。図 B.16 及び図 B.17 の細線の箱は,マー

カだけを含む。

EXP

部分列は,フレームヘッダに先立つ他の表又は種々のマーカ部分列と混在できるが,DHP 部分列又

は走査ヘッダに先立つ他の表又は種々のマーカ部分列とは混在できない。


46

X 4301-

199

5 (ISO

/IEC

 10
918-

1 : 19

94)

図 B.16  圧縮データの流れ


47

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 B.17  マーカ部分列の流れ


48

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 C(規定)  ハフマン符号表指定

ハフマン符号化処理手順は,任意の符号化処理のエントロピー符号化として用いる。ハフマン符号化の

符号化モデルを

附属書の FGに規定する。この附属書では,ハフマン符号表の指定様式を規定する。

ハフマン符号表は,

1

から 16 までの各符号長の符号語の個数を示す 16 バイトの表 (BITS) で規定する。

BITS

に続いてシンボル値の表 (HUFFVAL) を規定する。HUFFVAL は,各ハフマン符号語に割り当てられ

る 8 ビットのシンボル値の表であり,そのシンボル値の各々にハフマン符号語を割り当てる。HUFFVAL

で規定されるシンボル値は,符号語長が増加する順番に表上に並べる。16 ビットより長い符号語長のもの

は許されない。符号語は,任意の長さのすべて “1” の符号語が,さらに長い符号語の接頭語として予約さ

れるように生成されなければならない。

参考 HUFFVAL 内のシンボル値の順番は,符号語長で決定される。与えられた符号語長の中でシン

ボルの値の順序は任意である。

この附属書では交換様式の中の二つの表(BITS 及び HUFFVAL)からハフマン符号表(ハフマン符号語

とそれに対応する 8 ビットのシンボル値)とを生成する処理手順を規定する。しかし,この附属書では,

これらの表が生成される方法は規定しない。表はハフマン符号化の規則に従って構成された方法で生成さ

れることが望ましく,前段落で述べた制限を遵守しなければならない。

附属書 に,これらの規則に従っ

たハフマン符号長及び対応する値の表の生成法を記述する。

備考  この規定は,符号器及び復号器が,この附属書で規定する流れ図による手順に厳密に従うこと

強制するものではない。符号器及び復号器は,ここに規定された機能だけを満たせばよい。

この規定に従って考慮しなければならない基準は,ISO/IEC 10918-2 の適合性試験の 6.(符号

器用)及び 7.(復号器用)の要求条件だけとする。

C.1

ハフマン符号表の規定のためのマーカ部分列  DHT マーカは,圧縮画像データ内でハフマン符号表

の定義の開始を示す。B.2.4.2 にハフマン符号表指定の構文法が規定されている。

C.2

ハフマン符号表指定から符号語及び符号語長表への変換  交換様式で規定されたハフマン符号表か

ら,符号語及び符号語長表への変換は,三つの処理手順を利用する。最初の処理手順は(

図 C.1),ハフマ

ン符号語の大きさの表を生成する。2 番目の処理手順は(

図 C.2),図 C.1 で構成された表からハフマン符

号語を生成する。3 番目の処理手順は(

図 C.3),シンボル値の順にハフマン符号語を生成する。

各々の大きさの符号語の個数を示す表である BITS (1...16)  と,

BITS

で記述された符号語に対応する値を

示す表である HUFFVAL とから,次の二つの表を生成する。HUFFSIZE 表は符号語長の表を示し,

HUFFCODE

表は HUFFSIZE 表に示される符号語長に対応するハフマン符号語を示す。


49

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 C.1  ハフマン符号の大きさ表の生成

変数 LASTK は,表の最後のエントリーのインデックスに合わせる。

HUFFSIZE

の各々の大きさの符号語を示すハフマン符号表である HUFFCODE は,

図 C.2 の処理手順で

生成する。

図 C.2 中の記述子 “SLL CODE 1” は,CODE の 1 ビットの論理左シフト演算を示す。


50

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 C.2  ハフマン符号表の生成 

二つの表である HUFFCODE と HUFFSIZE とを以上の方法で生成する。表内のエントリーは,ハフマン

符号を数字で表した場合の値と長さとが増加する順番に並べる。

符号化処理手順の符号表である EHUFCO 及び EHUFSIZE は,HUFVAL で示される各々の符号語に割り

当てるシンボル値に従って HUFCODE 及び HUFSIZE で規定される符号語を並べ変えることによって生成

する。

図 C.3 で,この並べ替えの処理手順を示す。


51

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 C.3  符号化処理手順符号表についての順序付け処理手順

C.3

バイト内でのビット順序  ハフマン符号語を 2 値木で示した場合の根は,バイトの MSB(上位ビッ

ト)に向かって配置され,それに続く符号ビットは,バイトの MSB から LSB(下位ビット)の方向に向

かって並べる。符号ビットが残った場合は,同じ規則に従って次のバイトに並べる。

ハフマン符号語に対応する整数は,一つ前のハフマン符号語の LSB に隣接する MSB に追加する。


52

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 D(規定)  算術符号化

基本順次処理を除く,任意の符号処理におけるエントロピー符号処理として,適応 2 値算術符号化処理

手順を用いてもよい。適応 2 値算術符号処理システムにおける符号処理モデルは,

附属書の F及び H

に定義されている。この附属書では,これらのモデルに用いられる算術符号化及び復号処理手順について

規定する。

実際の適用例が正しいかどうかを判定するための簡単な例を,K.4 に示す。

備考  この規定は,符号器及び復号器が,この附属書で規定する流れ図による手順に厳密に従うこと

強制するものではない。符号器及び復号器は,ここに規定された機能だけを満たせばよい。

この規定に従って考慮しなければならない基準は,ISO/IEC 10918-2 の適合性試験の 6.(符号

器用)及び 7.(復号器用)の要求条件だけとする。

D.1

算術符号化処理手順  算術符号処理を備えるシステムは,四つの算術符号化処理手順を必要とする。

これらの処理手順を次に示す。

表 D.1  値算術符号化における処理手順

処理手順

目的

Code_0 (S)

文脈インデックス S に基づく,2 値判定結果 “0” の符号化

Code_1 (S)

文脈インデックス S に基づく,2 値判定結果 “1” の符号化

Initenc

符号器の初期化

Flush

エントロピー符号化部分列の終了

 “Code_0 (S)”

処理手順及び “Code_1 (S)” 処理手順は,それぞれ判定結果 0 と判定結果 1 とを符号化す

る。S は,文脈インデックスであり,2 値判定結果を符号化する際に用いられる条件付き確率推定値を指

定する。 “Initenc” 処理手順は,算術符号化エントロピー符号器の初期化を行う。 “Flush” 処理手順は,

マーカを付加するためエントロピー符号化部分列を終了させる。

D.1.1

2

値算術符号化原理  算術符号化器は,一連の 2 値シンボルを符号化する。各 2 値シンボルは,2

値判定結果を 0 又は 1 で示す。

各“2 値判定”は,2 者択一の結果を与える。例えば,正か負か,絶対値がゼロかどうか,2 進表現され

た数値の特定のビットがゼロかどうか,などの判定結果を与える。

出力ビット系列(エントロピー符号化されたデータ部分列)は,2 進小数を表現し,その精度は,符号

化処理においてバイトが付加されることによって増加する。

D.1.1.1

再帰的な領域分割  再帰的な確率間隔分割の手法を,2 値算術符号化処理手順の基本とする。2

値判定を行うごとに,現在の確率間隔を二つの部分間隔に分割し,必要であれば,ビット系列が出現した

シンボルに割り当てられた確率部分間隔の下限境界を指し示すように,このビット系列を修正する。

現在の確率間隔を二つの部分間隔に分割する際には,優勢シンボル (MPS) に対応する部分間隔を,劣

勢シンボル (LPS) に対応する部分間隔に対しゼロに近い側に配置する。したがって,LPS を符号化する場

合には,ビット系列に MPS の部分間隔の大きさを加算する。この符号化方式では,シンボルが 0 であるか

1

であるかというよりも,MPS であるか LPS であるかを認識することが必要とされる。したがって,判定

結果を符号化するためには,各判定結果に対応する LPS 部分間隔の大きさと,MPS が示す意味との双方を

知らなければならない。


53

X 4301-1995 (ISO/IEC 10918-1 : 1994)

現在の確率間隔の分割には,理想的には該当する間隔と LPS の確率推定値との乗算が必要となる。しか

し,実際には分割が近似的に行われるため,LPS 部分間隔が MPS 部分間隔よりも大きくなる可能性がある。

このような場合には,

“条件付き交換”によって,部分間隔の交換を行い,MPS に,より大きい部分間隔

を割り当てる。

符号化処理手順では,整数長の符号語の連結ではなく,2 進小数の加算処理を行うため,発生確率の高

い 2 値判定結果は,一つの判定結果につき,複数回の判定が行われないと 1 ビットの符号語が出力されな

いため,一つの判定結果で平均すると 1 ビットよりはるかに少ない符号長で符号化される。

D.1.1.2

確率推定における条件付け  適応 2 値算術符号化器には統計的モデルが必要となる。モデルは,

各々の 2 値判定結果の符号化に使われる条件付き確率推定値を選択するために用いる。得られた 2 値判定

結果確率推定値が,既に符号化されている特徴(文脈)に依存するならば,この推定値は,この特徴に“条

件づけ”られている。以前に符号化されている判定結果に依存する確率推定値の条件付けの方法は,符号

器と復号器とで同一でなければならない。したがって,符号器と復号器との双方で知り得る情報だけを用

いる。

統計的モデルで用いられる各条件付き確率推定値は,それぞれ,文脈インデックス S によって指定され

る別々の蓄積領域又は“器”に保持される。算術符号化システムは,各文脈インデックスにおける確率推

定値がその文脈インデックスにおいて過去に符号化された判定結果に基づいて,算術符号化システムにお

いて生成し,維持される適応的な動作を行うものとなる。

D.1.2

符号化方式と近似  符号化処理手順は,固定精度の整数算術演算及び小数の整数表現を用いて行う。

ここでは,10 進数の 0.75 を,X’8000’で示す。確率間隔の大きさ A が X’8000’を下回った場合は,常にこ

れを 2 倍にすることによって,A を整数の範囲 X’8000’<=A<X’10000’に保つ。これは A を 10 進数表現

の範囲 0.75<=A<1.5 となるように保つのと等価である。この間隔の大きさを 2 倍にする処理を再正規化

と呼ぶ。

符号レジスタ C は,ビット系列の後に続くビット列を保持する。A を 2 倍にした場合は,符号レジスタ

C

も 2 倍にする。C レジスタをけたあふれさせないために,周期的に C レジスタの最上位 1 バイトを取り

出し,エントロピー符号化部分列に出力する。

エントロピー符号化部分列へのけた上げについては,けた上げの影響が消滅するまで X’FF’の出力を遅

らせることによって,これを制限する。エントロピー符号化部分列内に,偶然にマーカコードが生成され

ないようにするため,エントロピー符号化部分列に X’FF’を出力するたびに,その後に 1 バイトのゼロを

挿入する。

間隔の大きさ A を 0.75<=A<1.5 となるよう制限すると,間隔分割の際に簡単な算術近似を用いること

ができる。文脈インデックス S に対応する LPS 出現確率の推定値を Qe とすれば,部分間隔の正確な計算

には次の式が必要となる。

Qe (S)

×A

=LPS の確率部分間隔

A

− (Qe (S)×A)

=MPS の確率部分間隔

A

がほぼ 1 に近いので次の近似を行える。

Qe (S)

=LPS の確率部分間隔

A

−Qe (S)

=MPS の確率部分間隔

LPS

を符号化するときには、常に A−Qe (S)  の値を符号レジスタに加算し,その後,確率間隔の大きさ

を減らして Qe (S)  にする。MPS を符号化するときには,符号レジスタはそのままにし,間隔の大きさを A

−Qe (S)  にする。A に必要な精度は,必要に応じ A 及び C を再正規化することによって回復する。


54

X 4301-1995 (ISO/IEC 10918-1 : 1994)

前述の処理手順を用いると,確率間隔分割処理のための近似によって,LPS 部分間隔が MPS 部分間隔よ

り大きくなってしまうことがある。例えば,Qe (S)  の値が 0.5 で A が最小値の 0.75 の場合,この近似を用

いると確率間隔の 1/3 が MPS に,2/3 が LPS に割り当てられてしまう。このような大きさの逆転を防ぐた

め,条件付き交換を用いる。確率間隔は,この簡単な近似を用いて分割されるが,LPS 部分間隔が MPS

部分間隔より大きくなった場合には,両部分間隔を入れ換える。再正規化が必要なときに限り,この条件

付き MPS/LPS 領域交換は発生する。

各 2 値判定には文脈を用いる。文脈は,これまでの符号化に用いた判定結果の集合であり,文脈インデ

ックス S を決定する。この文脈インデックス S が,判定結果の符号化に用いる確率推定値を指定する。

再正規化が発生するときには,必ず,その時点で符号化する文脈に対し新しい確率推定値を決定する確

率推定処理手順を起動する。この推定には,正確なシンボルの計数は不要とする。表を基本とした確率推

定状態表を利用することによって,LPS 及び MPS を符号化した後の再正規化の相対的確率から,直接,該

当する確率の推定を行う。

D.1.3

符号器の符号レジスタ規約  ここで示す流れ図では,符号器におけるレジスタ構成を次のように仮

定する。

表 D.2  符号器レジスタ規約

MSB

   LSB

C

−レジスタ

0000cbbb, bbbbbsss, xxxxxxxx, xxxxxxxx

A

−レジスタ  00000000, 00000000, aaaaaaaa, aaaaaaaa

 “a”

ビットは A レジスタ内の小数ビット(現在の確率間隔値)とし, “x” ビットは符号レジスタ内の

小数ビットとする。 “s” ビットはけた上げを抑制するために任意に用いるスペース保持ビット, “b” ビ

ットは C レジスタからバイト単位に出力される完成した符号データのビット位置を示す。 “c” は,けた上

げビットとする。初期設定時を除き,A レジスタのビット 15 を常にセットし,ビット 16 を常にクリアし

ておく(LSB がビット 0 である。

これらのレジスタ構成は,一つの実施例を示している。しかし,符号化器におけるけた上げの問題を解

決し,全く同じエントロピー符号化部分列を生成するならば,どのようなレジスタ構成を用いてもよい。

けた上げ及び X’FF’に続くバイト挿入の取扱いに関する詳細な規定は,D.1.6 で行う。

D.1.4

Code_1 (S) 

処理手順,及び Code_0 (S)  処理手順  与えられた 2 値判定結果を符号化する場合には,

判定結果 1 の符号化又は判定結果 0 の符号化の二つの可能性がある。Code_1 (S)  処理手順及び Code_0 (S)

処理手順を,

図 D.1 及び図 D.2 に示す。Code_1 (S)  処理手順及び Code_0 (S)  処理手順は,文脈インデック

ス S によって指定される確率推定値を用いる。文脈インデックス S は,統計的モデルによって決定され,

一般に前に符号化した判定結果の関数となっている。S の値は,固有の条件付き確率推定値を指定し,こ

の推定値を 2 値判定結果の符号化に用いる。

文脈インデックス S は,

Index (S)

が保持されている記憶位置領域のいずれかの位置を指し示す。

Index (S)

は,確率推定状態表を構成する表におけるインデックスとする。2 値判定結果を符号化する際に,符号化

の対象となるシンボルは,優勢シンボル又は劣勢シンボルのいずれかとする。したがって,各文脈インデ

ックスにおいて優勢シンボルの意味を示す付加情報 [MPS (S)] も保持する必要がある。

簡略化のために,この箇条の流れ図では,各文脈インデックス S に対応する文脈記憶領域が,Qe (S)の

記憶領域だけでなく,Qe (Index (S))  の値を保持する追加領域ももつものとする。Index (S)の値及び MPS (S)

だけが保持される場合は,Qe(S)は,Qe (Index (S))  に置き換えなければならない。


55

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.1  Code_1 (S)  処理手順

図 D.2  Code_0 (S)  処理手順 

Code_LPS(S)

処理手順は,普通,MPS 部分間隔 A−Qe (S)  をビット系列に加算し,間隔を部分間隔 Qe(S)

にスケーリングする。この処理手順の後には,新しい LPS 確率推定値を得る処理手順 [Estimate_Qe (S)

_after_LPS]

及び再正規化 (Renorm_e) を必ず行う。

しかし,LPS 部分間隔が MPS 部分間隔よりも大きい場合は,MPS 領域と LPS 領域との条件付き交換が

起き,MPS 部分間隔を符号化する。


56

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.3  MPS 領域と LPS 領域との条件付き交換を伴う Code_LPS (S)  処理手順

Code_MPS (S)

処理手順は,確率間隔を小さくして,MPS 部分間隔の大きさに等しくする。しかし,LPS

部分間隔が MPS 部分間隔よりも大きい場合は,条件付き交換が起き,LPS 部分間隔を MPS 部分間隔の代

わりに符号化する。

シンボルの符号化後に,新しい MPS 確率推定値を得る処理手順  [Estimate_Qe (S) _after_MPS]  と再正規

化 (Renorm_e) とが必要とならない場合は,この条件付き交換は起こり得ないことに注意する。


57

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.4  条件付き MPS/LPS 領域交換を伴う Code_MPS (S)  処理手順

D.1.5

符号器における確率推定

D.1.5.1

確率推定状態表  確率推定状態表は,多くの確率推定のシーケンスで構成される。これらのシー

ケンスは,算術符号器の再正規化によって近似的に得られるシンボル計数結果に基づいて確率推定値を算

出する手法にかかわっている。これらシーケンスの一部は確率推定の初期学習段階に用いられ,残りは安

定状態の推定に用いられる。

確率推定状態表の各状態には,インデックスが割り当てられる。各インデックスには,Qe 値及び二つの

次インデックス値 (Next_Index value) が関係づけられている。次インデックス MPS (Next_Index_MPS)  は,

MPS

再正規化後の新しい確率推定値に対するインデックスを与え,次インデックス LPS (Next_Index_LPS)

は,LPS 再正規化後の新しい確率推定値に対するインデックスを与える。確率推定状態表に対するインデ

ックス及び MPS の意味は,文脈インデックス S ごとに保持されている。LPS 符号化時に,スイッチ MPS

(Switch_MPS)

の要素が 1 であれば,必ず MPS の意味を変更しなければならない。

確率推定状態表を

表 D.2 に示す。表 D.2 において,MPS の意味はゼロ,Qe インデックスはゼロとして,

算術符号器の初期設定を行う。


58

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 D.2 に示す Qe 値は,16 進表現の整数で示される。15 ビットの整数表現の Qe を 10 進表現の確率に変

更するために,Qe の値を (4/3) × (X’8000’) で割る。

表 D.3  Qe 値と確率推定状態表

Next_Index Next_Index

インデックス

Qe

_Value

_LPS _MPS

Switch

_MPS

インデックス

Qe

_Value

_LPS _MPS

Switch

_MPS

0 X’5A1D’

1

1

1  57 X’01A4’

55

58

0

1

X’2586’

14 2  0

58

X’0160’

56 59 0

2

X’1114’

16 3  0

59

X’0125’

57 60 0

3

X’080B’

18 4  0

60

X’00F6’

58 61 0

4

X’03D8’

20 5  0

61  X’00CB’

59 62 0

5

X’01DA’

23 6  0

62  X’00AB’

61 63 0

6

X’00E5’

25 7  0

63

X’008F’

61 32 0

7

X’006F’

28 8  0

64  X’5B12’

65 65 1

8

X’0036’

30 9  0

65  X’4D04’

80 66 0

9

X’001A’ 33 10  0

66

X’412C’ 81 67  0

10 X’000D’

35

11

0  67 X’37D8’

82

68

0

11

X’0006 9 12 0

68  X’2FE8’

83 69 0

12

X’0003’ 10 13  0

69

X’293C’ 84 70  0

13

X’0001 12 13  0

70

X’2379’ 86 71  0

14

X’5A7F’ 15 15  1

71

X’1EDF’

87 72  0

15

X’3F25’ 36 16  0

72

X’1AA9’

87 73  0

16

X’2CF2’ 38 17  0

73

X’174E’ 72 74  0

17

X’207C’ 39 18  0

74

X’1424’ 72 75  0

18

X’17B9’ 40 19  0

75

X’119C’ 74 76  0

19

X’1182’ 42 20  0

76

X’0F6B’ 74 77  0

20

X’0CEF’ 43 21  0

77

X’0D51’ 75 78  0

21

X’09A1 45 22  0

78

X’0BB6’

77 79  0

22

X’072F’ 46 23  0

79

X’0A40’ 77 48  0

23

X’055C’ 48 24  0

80

X’5832’ 80 81  1

24

X’0406’ 49 25  0

81

X’4D1C’

88 82  0

25

X’0303’ 51 26  0

82

X’438E’ 89 83  0

26

X’0240’ 52 27  0

83  X’3BDD’

90 84  0

27

X’01B1’ 54 28  0

84

X’34EE’ 91 85  0

28

X’0144’ 56 29  0

85

X’2EAE’

92 86  0

29

X’00F5’ 57 30  0

86

X’299A’ 93 87  0

30

X’00B7’ 59 31  0

87

X’2516’ 86 71  0

31

X’008A’ 60 32  0

88

X’5570’ 88 89  1

32

X’0068’ 62 33  0

89

X’4CA9’

95 90  0

33

X’004E’ 63 34  0

90

X’44D9’ 96 91  0

34

X’003B’ 32 35  0

91

X’3E22’ 97 92  0

35  X’002C’

33 9  0

92

X’3824’

99 93 0

36

X’5AE1’ 37 37  1

93

X’32B4’ 99 94  0

37

X’484C’ 64 38  0

94

X’2E17’ 93 86  0

38

X’3A0D’

65 39  0

95

X’56A8’ 95 96  1

39 X’2EF1’

67

40

0  96 X’4F46’

101

97

0

40 X’261F’

68

41

0  97 X’47E5’

102

98

0

41 X’1F33’

69

42

0  98 X’41CF’

103

99

0

42

X’19A8’ 70 43  0

99

X’3C3D’

104

100 0

43

X’1518’ 72 44  0

100  X’375E’ 99 93  0

44

X’1177’ 73 45  0

101

X’5231’

105

102 0


59

X 4301-1995 (ISO/IEC 10918-1 : 1994)

Next_Index Next_Index

インデックス

Qe

_Value

_LPS _MPS

Switch

_MPS

インデックス

Qe

_Value

_LPS _MPS

Switch

_MPS

45

X’0E74’ 74 46  0

102  X’4C0F’

106

103 0

46

X’0BFB’ 75 47  0

103

X’4639’

107

104 0

47 X’09F8’

77

48

0  104 X’415E’

103

99

0

48

X’0861’ 78 49  0

105

X’5627’

105

106 1

49

X’0706’ 79 50  0

106  X’50E7’

108

107 0

50

X’05CD’ 48 51  0

107  X’4B85’

109

103 0

51

X’04DE’ 50 52  0

108

X’5597’

110

109 0

52

X’040F’ 50 53  0

109

X’504F’

111

107 0

53 X’0363’

51

54

0  110 X’5A10’

110

111

1

54

X’02D4’ 52 55  0

111

X’5522’

112

109 0

55 X’025C’

53

56

0  112 X’59EB’

112

111

1

56  X’01F8’

54

57

0

 

D.1.5.2

再正規化を契機とした推定  表 D.2 における状態の変化は,算術符号器の間隔レジスタが再正規

化された場合にだけ生じる。LPS の符号化後には,必ず再正規化を行い,MPS の符号化後に確率間隔レジ

スタが X’8000’(10 進表現で 0.75)を下回った場合にも必ず再正規化を行う。

LPS

再正規化の場合は,Next_Index_LPS によって,LPS 確率推定に対する新たなインデックスを得る。

MPS

再正規化の場合は,Next_Index_MPS が,LPS 確率推定に対する新たなインデックスを与える。前の

インデックスに対応する Switch_MPS の値が 1 の場合は,LPS の発生時に MPS シンボルの意味を逆転しな

ければならない。

D.1.5.3

  MPS

再正規化後の確率推定  MPS 再正規化が起きた場合の確率推定処理手順を図 D.5 に示す。

Index (S)

は,文脈インデックス S 用に保持された情報の一部とする。Index (S)  の新たな値は,MPS 再正

規化後の次のインデックスであるため,

表 D.2 の Next_Index_MPS の欄より得られる。次のインデックス

は,新たな Index (S)  として文脈インデックス S に対応する文脈記憶領域に格納され,この新たな Index (S)

における Qe の値が,新たな Qe (S)  となる。MPS (S)  は,変化しない。

図 D.5  MPS 再正規化における確率推定

D.1.5.4

  LPS

再正規化後の確率推定  LPS 再正規化が起きた場合の確率推定処理手順を,図 D.6 に示す。

この処理手順は,Switch_MPS (1)  の値が 1 の場合に MPS (S)  の意味を逆転しなければならない点を除き,

図 D.5 と同じとする。


60

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.6  LPS 再正規化における確率推定

D.1.6

符号器における再正規化  符号器再正規化用の Renorm_e 処理手順を,図 D.7 に示す。確率間隔レ

ジスタ A 及び符号レジスタ C の両方を 1 ビットづつシフトし,このシフト数をカウンタ CT で計数する。

CT

がゼロの場合は,Byte_out 処理手順によって,圧縮データ 1 バイトを C レジスタから取り出し,CT に

8

を再設定する。再正規化については,A が X’8000’以上になるまで続ける。


61

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.7  符号器再正規化処理手順

Renorm_e

で用いられる Byte_out 処理手順を,D.8 に示す。この処理手順においては,バイト挿入処理手

順を使用する。バイト挿入処理手順は,算術符号処理手順によって偶然マーカが生成されることを防止す

る。これは,けた上げの問題を解決する処理の例をも含む。説明の簡略化のために,エントロピー符号化

部分列を保持するバッファは,全体の部分列を保持するだけの容量をもつと仮定する。

図 D.8 において,BP は,エントロピー符号化部分列のポインタとし,B は BP によって指し示される圧

縮データ 1 バイトとする。Byte_out における T は,出力 1 バイト及びけた上げビットを保持する暫定変数

とする。ST は,連続する X’FF’にけた上げの影響が伝搬しなくなるまでの X’FF’の出力バイト数を計数す

るスタックカウンタとする。ST の値が 3 を超えることはほとんどないが,ST の値の上限は,エントロピ

ー符号化部分列の大きさによってだけ決定されるため,ST の精度には 32 ビットを推奨する。

ST

の値が大きくなると圧縮データの出力が遅れるため,高速同期符号化システムにおいては,けた上げ

の影響が消滅したときに発生する出力データのバーストを取り扱うため,次の処理手順が必要になる。

スタックカウンタの値が,出力チャネルの容量によって決定される上限に達した場合は,けた上げの影

響が消滅する前にスタックを空にし,スタックされた X’FF’バイトと挿入されたゼロを示すバイトとを圧


62

X 4301-1995 (ISO/IEC 10918-1 : 1994)

縮データに加える。けた上げが発生したら,最後に挿入されたゼロを示すバイトにけた上げを加算する。

それによって,最後の X’FF00’は,一時的に使用するプライベートマーカ X’FF01’に変換される。エントロ

ピー符号化部分列は,けた上げが消滅した後に処理され,かつ,暫定マーカコードは,取り除かれなけれ

ばならない。通常の上限をもつ ST では,この後処理は,ほとんど発生しない。

図 D.8  符号器における Byte_out 処理手順

図 D.8 において,符号レジスタの 19 ビットシフトにより,出力ビットを T の下位ビットに合わせてい

る。最初の判定では,けた上げが起きたかどうかを判定する。けた上げが起きていれば,部分列ポインタ

BP

を更新する前に,直前に出力したバイトにけた上げを加えなければならない。Stuff_0 処理手順は,エ

ントロピー符号化部分列内に既に存在するデータに,けた上げを加えることによって 1 バイトの X’FF’が

発生したときには,必ず 1 バイトのゼロを挿入する。その後,すべてのスタックされた出力バイト(けた

上げによってゼロになっている。

)をエントロピー符号化部分列に置く。出力バイトを,T からエントロピ

ー符号化部分列(バイト B)に転送する場合には,けた上げビットが設定されていたとしても,これを無


63

X 4301-1995 (ISO/IEC 10918-1 : 1994)

視する。

けた上げが発生しない場合は,出力バイトが X’FF’であるかどうかを判定する。出力バイトが X’FF’であ

れば,スタックカウンタ ST を一つカウントアップし,けた上げの影響が消滅するまで出力しない。X’FF’

でなければ,けた上げの影響は消滅し,スタックされたすべての X’FF’バイトをエントロピー符号化部分

列に転送する。各 X’FF’の後には,ゼロを示すバイトを挿入する。

Byte_out

処理手順によって使われる処理手順を

図 D.9∼図 D.11 に定義する。

図 D.9  符号器における Output_stacked_zeros 処理手順 

図 D.10  符号器における Output_stacked_X’FF’s 処理手順 


64

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.11  符号器における Stuff_0 処理手順

D.1.7

符号器の初期化  符号器の初期化 (Initenc) 処理手順は,算術符号器を開始させるために使用する。

基本的なステップを

図 D.12 に示す。

図 D.12  符号器の初期化

確率推定表は,

表 D.2 に定義されている。表 D.2 に定義されているように,統計的領域の MPS の意味を

ゼロ,Qe インデックスをゼロに初期化する。次に,スタックカウンタ (ST) と符号レジスタ (C) とをク

リアし,間隔レジスタには X’10000’を設定し,カウンタ (CT) を 11 に設定する。A レジスタが X’10000’

に初期化されている場合は,最初の 1 バイトが取り出される前にスペース保持ビット 3 ビットと C レジス

タの出力 8 ビットとが埋められなければならないため,カウンタ (CT) を 11 に設定する。ここで,BP は,

エントロピー符号化部分列の先頭 (BPST) より一つ前のバイトを示す。統計的領域をすべての文脈インデ

ックス S の値について,MPS (S)  =0,Index (S)  =0 に初期化する。

参考 Initenc でも Initdec でも確率間隔は,X’10000’に初期化されるが,確率間隔レジスタの精度を 16

ビットに制限することができる。間隔レジスタの精度が 16 ビットのとき,このレジスタは,ゼ


65

X 4301-1995 (ISO/IEC 10918-1 : 1994)

ロに初期化する。

D.1.8

符号化の終了  Flush 処理手順は,算術符号化処理手順を終了し,算術符号化された符号の後に続

くマーカプレフィクス X’FF’を付加するため,エントロピー符号化部分列を終了する。

図 D.13 に,この

Flush

処理手順を示す。この処理手順の最初のステップでは,符号レジスタの下位ビットを,最後の間隔の

領域から出ない範囲で,できる限り多くゼロに設定する。その後,CT の示すビット数分だけ左にシフト

することによって,出力バイトがセットされ,これを Byte_out によって C レジスタから出力する。さらに,

C

を 8 ビット左にシフトすることによって,2 バイト目の出力がセットされ,これを出力するため Byte_out

を再び起動する。C 内の残りの下位ビットはゼロであることが保証され,この連続するゼロビットは,エ

ントロピー符号化部分列には書き込まない。

エントロピー符号化部分列内に既に書き込まれた,X’FF’に続かない連続したゼロを示すバイトは捨てて

もよい。これは,Discard_final_zeros 処理手順によって行う。X’FF の後に挿入されたゼロを示すバイトは,

捨ててはならない。

エントロピー符号化部分列の後には常にマーカが付加される。このため,エントロピー符号化部分列内

に,復号を完結させるのに必要な最後の 0 ビットが,必ずしも含まれる必要はない。そのかわりに,復号

器がマーカを検出した場合には,復号処理が終了するまで復号処理手順に 0 ビットを供給し続けなければ

ならない。この規定によって,復号器が DNL マーカを検出したときに,正しく復号処理を終了できるこ

とが保証される。


66

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.13  Flush 処理手順


67

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.14  Flush における Clear_final_bits 処理手順


68

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.15  Flush における Discard_final_zeros 処理手順

D.2

算術復号処理手順  算術復号においては,次の二つの算術復号処理手順を行う。

表 D.4  値算術復号における処理手順

処理手順

目的

Decode (S)

文脈インデックス S に基づく 2 値判定結果の復号

Initdec

復号器の初期化

 “Decode (S)”

処理手順は,与えられた文脈インデックス S に基づき 2 値判定結果を復号し,0 又は 1 の

値を復元する。D.1 に示された “Code_0 (S)” 処理手順及び “Code_1 (S)” 処理手順の逆となる。 “Initdec”

は,算術符号用のエントロピー復号器を初期化する。

D.2.1

2

値算術復号原理  算術符号化処理手順で定義された確率間隔の領域分割及び部分間隔の順序を,

算術復号処理手順にも適応する。

ビット系列は,常に現在の確率間隔内を指し示しているため,ここでいう復号処理は,各判定結果を復

号するため,与えられたビット系列がどの部分間隔を指し示すかを求める手法にほかならない。この処理

は,符号器と同様の確率間隔領域分割処理を用いて再帰的に行われる。判定結果を復号するたびに,復号

器は,符号器が加えた間隔をビット系列から減じる。したがって,復号器の符号レジスタは,現在の確率

間隔の下界値に対して間隔内を指し示すポインタとなる。

LPS

に割り当てられた部分間隔の大きさが,MPS に割り当てられた部分間隔の大きさより大きい場合,

符号器は,条件付き交換処理手順を起動する。間隔の大きさを交換した場合は,復号器においても復号し

たシンボルの意味を逆転しなければならない。


69

X 4301-1995 (ISO/IEC 10918-1 : 1994)

D.2.2

復号規約と近似  符号器において確率間隔の領域分割のために定義された近似及び整数演算を,復

号器にも適用する。しかし,符号器は符号レジスタに加算を行うのに対し,復号器は符号レジスタよりの

減算を行う。

D.2.3

復号器における符号レジスタ規約  ここで示す流れ図では,復号器におけるレジスタ構成を次のよ

うに仮定する。

表 D.5  復合器レジスタ規約

 MSB

LSB

Cx

−レジスタ xxxxxxxx,

xxxxxxxx

C-low bbbbbbbb,

00000000,

A

−レジスタ aaaaaaaa,

aaaaaaaa,

Cx

及び C-low は,一つの 32 ビットの C レジスタとして扱うことができる。C の再正規化を行うと,1

ビットの新しいデータが C-low のビット 15 から Cx のビット 0 にシフトする。しかし,復号時の比較には

Cx

だけを用いる。C-low の “b” ビットに 1 バイトづつ新しいデータを挿入する。

参考  ここで記述した様々な処理手順における比較演算は 16 ビットより大きい精度を想定している

が,実際には,論理比較は符号なし 16 ビットの精度を用いることができる。

D.2.4

復号処理手順  復号器は,1 度に一つの 2 値判定結果を復号する。その後,符号器によって加算さ

れた値を,符号レジスタから減算する。符号レジスタに残った値は,まだ復号されていない 2 値判定結果

に割り当てられた部分間隔の位置を,現在の確率間隔の下限境界からのオフセットとして示している。

D.16

に示すように,復号処理手順における最初の判定では,符号レジスタを MPS 部分間隔領域の大きさ

と比較する。条件付き交換が不要ならば,この判定によって,文脈インデックス S について MPS (S)  又は

LPS (S)

のいずれが復号されるかが決定できる。

文脈インデックス S に対する LPS は,1−MPS (S)  で与えられる。


70

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.16  Decode (S)  処理手順

再正規化が必要な場合には,条件付 MPS/LPS 領域交換も,必要となる可能性がある。LPS の場合の条件

付領域交換処理手順を,

図 D.17 に示す。ここで,復号器における確率推定は,符号器における確率推定(図

D.5

図 D.6)と同一である。

MPS

の場合の条件付領域交換処理手順を,

図 D.18 に示す。


71

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.17  復号器における LPS 用条件付き交換処理手順 

図 D.18  復号器における MPS 用条件付き交換処理手順

D.2.5

復号器における確率推定  符号器において,新たな LPS 確率推定値を得るために定義された処理

手順を,復号器においても使用する。


72

X 4301-1995 (ISO/IEC 10918-1 : 1994)

D.2.6

復号器における再正規化  復号器における再正規化を行う Renorm_d 処理手順を,図 D.19 に示す。

CT

は,C レジスタの一部である C-low 内にある圧縮されたデータのビット数を保持するためのカウンタと

する。CT がゼロならば,新たに 1 バイトを Byte_in 処理手順によって C-low に入力し,CT に 8 を再設定

する。

確率間隔レジスタ A 及び符号レジスタ C は,A の値が X’8000’以上になるまで,共に 1 ビットづつシフ

トする。

図 D.19  復号器における再正規化処理手順 

Renorm_d

処理手順で起動される Byte_in 処理手順を,

図 D.20 に示す。この処理手順では,X’FF’バイト

に続いて挿入されたゼロを示すバイトの削除処理を行いながら,データ 1 バイトを読み込む。さらに,エ

ントロピー符号化部分列の次に付加されたマーカの検出も行う。ここで,C レジスタは,Cx レジスタと

C-low

レジスタとを合わせたものとする。説明の簡略化のために,エントロピー符号化部分列用のバッフ

ァは,十分に大きな容量をもつものとする。


73

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.20  復号器における Byte_in 処理手順

B

は,エントロピー符号化部分列ポインタ BP によって示されるバイトデータとする。BP にまず 1 を加

算する。新たな B の値が X’FF’でない場合には,この値を C-low レジスタの上位 8 ビットに挿入する。

Unstuff_0

処理手順を,

図 D.21 に示す。新たな B の値が X’FF’である場合には,BP に 1 を加算し,次の

バイトを示すようにする。次のバイト B がゼロかどうかを判定し,この結果,ゼロであれば,B は,取り

除くべき挿入されたゼロを示すバイトに相当する。ゼロである B は無視し,ゼロの前の B の値 (X’FF’) を

C

レジスタに挿入する。

X’FF’

の次の B の値がゼロでない場合は,B は,マーカコードの一つにほかならない。このとき,必要

に応じ,マーカコードを解釈する。さらに,エントロピー符号化部分列ポインタ BP を調整し,復号が終

了するまで,値がゼロの 1 バイトが復号器に入力されるようにする(

図 D.21 “Adjust BP”  参照)。これを実

現する一つの方法は,BP がエントロピー符号化部分列に続くマーカコードプレフィクス X’FF’の前のバイ

トを指し示すようにする。


74

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.21  復号器における Unstuff_0 処理手順

D.2.7

復号器の初期化  算術復号器を始動させるため Initdec 処理手順を用いる。その基本的な処理を,

図 D.22 に示す。


75

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 D.22  復号器の初期化

確率推定表は,

表 D.2 に定義されている。統計的領域を初期化し,表 D.2 に定義したように MPS の意味

をゼロに,Qe インデックスをゼロに設定する。続いて,エントロピー符号化部分列へのポインタ BP を初

期化し,エントロピー符号化部分列の先頭 BPST の前のバイトを指し示すようにする。間隔レジスタを,

符号器における初期値と同じ値に設定する。圧縮データの先頭バイトを入力し,これをシフトして Cx レ

ジスタに入力する。さらに,2 バイト目のデータを読み込み,これをシフトして Cx レジスタに入力する。

カウントはゼロに設定し,そのため,新たな 1 バイトは Renorm_d によって読み込む。

参考  確率間隔は,Initenc でも Initdec でも X’10000’に初期化されるが,確率間隔レジスタの精度を

16

ビットに制限することができる。間隔レジスタの精度が 16 ビットの場合は,初期値として

ゼロを設定する。

D.3

バイト内のビット順序  算術符号化されたエントロピー符号化部分列は,不定長の整数とする。し

たがって,バイトの順番とバイト内のビットの順番とは,引数と同様にしなければならない(B.1.1.1 参照)


76

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 E(規定)  符号器及び復号器の制御処理手順

この附属書は,順次,段階及び可逆の各モードの操作の符号器及び復号器の制御処理手順を規定する。

階層型処理に関する符号化及び復号の制御処理手順を

附属書 に示す。

備考1.  この規定は,符号器及び復号器が,この附属書で規定する流れ図による手順に厳密に従うこ

とを

強制するものではない。符号器及び復号器は,ここに規定された機能だけを満たせばよ

い。この規定に従って考慮しなければならない基準は,ISO/IEC 10918-2の適合性試験の6.(符

号器用)及び7.(復号器用)の要求条件だけとする。

2.

この附属書では,

実装規格に関する構成手段を規定していないが,これを必要としてもよい。

E.1

符号器制御処理手順

E.1.1

画像符号化の制御処理手順  図 E.1 に画像符号化のための符号器の制御処理手順を示す。

図 E.1  画像符号化の制御処理手順

E.1.2

フレーム符号化の制御処理手順  圧縮データにマーカを付加する場合,余分のフィルバイト X’FF”

をマーカの前に付加してもよい。

フレーム符号化の制御処理手順は,フレーム内の走査を基本とする。フレームヘッダを最初に付加し,

その後に走査を符号化する。

図 E.2 で[表又は種々のマーカを付加]で示すとおり,表指定と他のマーカ

部分列を,SOF↓n↑マーカの前に付加してもよい。

図 E.2 は,フレーム符号化制御処理手順を示す。


77

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 E.2  フレーム符号化の制御処理手順

E.1.3

走査符号化の制御処理手順  走査は,その走査内のそれぞれの成分データを含む一つの経路からな

る。表指定及び他のマーカ部分列を,SOS マーカの前に付加してもよい。走査内で複数の成分を符号化す

る場合には,符号化データをインタリーブする。符号化再初期化を用いる場合には,符号化データを符号

化再初期化間隔に分割する。さらに,RST↓m↑マーカを符号化データ中の符号化再初期化間隔の間に置

く。符号化再初期化が用いられない場合でも,走査が一つの符号化再初期化間隔を含むことを除いて,制

御処理手順は,同一とする。走査によって構成される圧縮画像データの後には,常に EOI マーカ又は後続

のマーカ部分列のマーカを置く。

図 E.3 に走査符号化の制御処理手順を示す。走査を構成する符号化再初期化間隔の数の符号化処理を行

ったとき,ループは,終了する。 “m” は,RST↓m↑マーカに必要な符号化再初期化間隔のモジュロ・カ

ウンタとする。処理手順 “Append RST↓m↑Marker”  の後に,このカウンタに関するモジュロ演算を行う。


78

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 E.3  走査符号化の制御処理手順

E.1.4

符号化再初期化間隔符号化の制御処理手順  図 E.4 に符号化再初期化間隔の符号化制御処理手順

を示す。符号化再初期化間隔内の最小符号化単位 (MCU) の数の符号化を行ったとき又は画像走査を終了

したとき,ループは,終了する。

最終の符号化再初期化間隔における最小符号化単位 (MCU) の数は,走査内での MCU の数に一致する

ように調整しなければならない。MCU の数は,フレーム及び走査の引数から計算する(

附属書 参照)。


79

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 E.4  符号化再初期化間隔符号化の制御処理手順

処理手順 “Reset_encoder” は,少なくとも次の処理からなる。

(1)

算術符号化が使用される場合,

附属書 の D.1.7 で規定する処理手順 “Initenc” を用いて算術符号器

を初期化する。

(2)

 DCT

利用型の符号化処理に関しては,走査内のすべての成分に対する直流係数予測値 (PRED) をゼロ

に設定する(

附属書 の F.1.5.1.1 参照)。

(3)

可逆処理については,予測値を既定値に設定する(

附属書 の H.1.1 参照)。

(4)

必要に応じて,実装に依存するその他のすべての設定をする。

処理手順 “Prepare_for_marker” は,次の処理のどちらかによってエントロピー符号化部分列を終了させ

る。

(1)

ハフマンエントロピー符号化部分列に対して,バイト単位で終わらせるためにビット 1 を必要な数だ

け詰める(必要な場合,ビット 0 を詰める。

附属書 の F.1.2.3 参照)。

(2)

算術エントロピー符号化部分列を終了させるために,処理手順 “Flush” (

附属書 の D.1.8 参照)を

起動する。

E.1.5

最小符号化単位 (MCU) の符号化制御処理手順  附属書 の A.2 で最小符号化単位を定義する。

MCU

内では,データ単位は,MCU 内で生じる順番で符号化する。

図 E.5 に MCU を符号化するための制

御処理手順を示す。


80

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 E.5  最小符号化単位 (MCU) の符号化制御処理手順

図 E.5 において,Nb は,MCU 内でのデータ単位の数を示す。MCU 内で生じるデータ単位の順番は,附

属書 の A.2 による。データ単位は,DCT 利用型処理では 8×8 ブロックとし,可逆処理では 1 標本とす

る。

データ単位符号化のための処理手順は,

附属書の FGによる。

E.2

復号器制御処理手順

E.2.1

圧縮画像データ復号の制御処理手順  図 E.6 に画像の復号制御処理を示す。


81

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 E.6  圧縮画像データ復号の制御処理手順

復号制御は,各種マーカの解釈処理を中心に行う。最初のマーカは,SOI (Start Of Image)  マーカでなけ

ればならない。処理手順 “Decoder_setup” は,符号化再初期化間隔を再設定する (Ri=0)。復号器が算術復

号機能をもつ場合,算術符号化のための条件表を既定値に設定する(

附属書 の F.1.4.4.1.4 及び F.1.4.4.2.1

参照)

。通常,次のマーカは,SOF↓n↑  (Start Of Frame)  マーカとする。このマーカが見つからない場合に

は,

表 E.1 に示すマーカ部分列の一つを受け取っているとする。

表 E.1    “Interpret markers”  で解釈されるマーカ

マーカ

目的

DHT

ハフマン符号表定義

DAC

算術符号化条件定義

DQT

量子化表定義

DRI

符号化再初期化間隔定義

APP

↓n↑

応用定義マーカ

COM

コメント

現在のマーカがどれであるかを決定する前に,マーカの前に置かれている余分な X’FF’フィルバイトを

すべて取り除かねばならない。

これらの種々のマーカを解釈するための付加的な論理は, “Interpret markers” と名付けられる機能に含

まれる。DHT マーカは,ハフマン符号処理を用いる処理で解釈されなければならない。DAC マーカは,

算術符号処理を用いる処理で解釈されなければならない。DQT マーカは,DCT 利用型の復号器で解釈さ

れなければならない。DRI マーカは,すべての復号器で解釈されなければならない。APN↓n↑と COM マ


82

X 4301-1995 (ISO/IEC 10918-1 : 1994)

ーカは,復号器の機能を妨げない範囲で解釈されなければならない。

定義によって, “Interpret markers” の処理手順は後続のマーカまでシステムの状態を変更してはならな

い。期待される SOI マーカが圧縮画像データの先頭で発見できない場合,誤り状態が発生する。誤り状態

の検出及び対処に関する方法は,複雑な方法でも,簡単な方法でもよい。

E.2.2

フレーム復号の制御処理手順  図 E.7 にフレーム復号の制御処理手順を示す。

図 E.7  フレーム復号の制御処理手順 

走査の最後で EOI マーカが見つかった場合,

図 E.7 のループは,終了する。

表 E.1 に “Interpret markers” によって解釈されるマーカを示す。E.2.1 は,解釈されなければならない各

種マーカの範囲を規定する。

E.2.3

走査復号の制御処理手順  図 E.8 に走査の復号を示す。

予定された数の符号化再初期化間隔が復号された時点で,ループは,終了する。


83

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 E.8  走査復号の制御処理手順

E.2.4

符号化再初期化間隔復号の制御処理手順  図 E.9 に符号化再初期化間隔復号の処理手順を示す。処

理手順 “Reset_decoder” は,少なくとも次の処理手順から構成される。

(1)

算術符号化を用いる場合,

附属書 の D.2.7 で規定する処理手順 “Initdec” を用いて,算術復号器を

初期化する。

(2)

 DCT

利用型の処理の場合,走査内のすべての成分に対する直流係数予測値 (PRED) をゼロに設定する

附属書 の F.2.1.3.1 参照)。

(3)

可逆処理の場合,予測値を既定値に再設定する(

附属書 の H.2.1 参照)。

(4)

必要に応じて,実装に依存するその他の設定を行う。

符号化再初期化間隔の最後に,

次のマーカを置く。

このマーカの位置に関する問題が検出されたときは,

誤り処理処理手順を起動してもよい。そのような処理手順は,任意とするが,復号器が圧縮データ内にお

いて正確に符号化再初期化マーカを解釈でき,かつ,符号化再初期化マーカを検出するならば,復号器を

再設定しなければならない。さらに,復号器は,DNL マーカを解釈し,DNL 部分列で定義されている行

の数を復号器に設定して,処理手順 “De-code_restart internal” を終了しなければならない。

備考  最後尾の符号化再初期化間隔は,走査内に残っている MCU の数だけを含む。したがって,そ

の符号化再初期化間隔は,DRI マーカ部分列によって規定された大きさより小さいことがある。


84

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 E.9  符号化再初期化間隔復号の制御処理手順

E.2.5

最小符号化単位 (MCU) の復号制御処理手順  図 E.10 に最小符号化単位 (MCU) の復号制御処理手

順を示す。

図 E.10 において,Nb は,MCU におけるデータ単位の数を示す。

データ単位の復号に関する処理手順は,

附属書の F及び による。


85

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 E.10  最小符号化単位 (MCU) の復号制御処理手順 


86

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 F(規定)  DCT 利用型の順次符号化モード

この附属書では,DCT 利用型の順次符号化モードにおける次の符号化処理の機能を規定する。

(1)

基本順次

(2)

拡張順次,ハフマン符号化,8 ビット標本精度

(3)

拡張順次,算術符号化,8 ビット標本精度

(4)

拡張順次,ハフマン符号化,12 ビット標本精度

(5)

拡張順次,算術符号化,12 ビット標本精度

これらの符号化処理は,F.1 に,復号処理は F.2 にそれぞれ規定する。機能規定は,上の(1)(5)の符号

化処理からなる種々の処理手順の固有流れ図によって示す。

備考  この規定は,符号器及び復号器が,この附属書で規定する流れ図による手順に厳密に従うこと

強制するものではない。符号器及び復号器は,ここに規定された機能だけを満たせばよい。

この規定に従って考慮しなければならない基準は,ISO/IEC 10918-2 の適合性試験の 6.(符号

器用)及び 7.(復号器用)の要求条件だけとする。

F.1

DCT

利用型の順次符号化処理

F.1.1

DCT

利用型の順次制御処理手順及び符号化モデル

F.1.1.1

DCT

利用型の順次符号器のための制御処理手順  画像及びその成分,すなわち,フレーム,走査,

符号化再初期化間隔及び MCU の符号化の制御処理手順を,

附属書 の図 E.1E.5 に示す。MCU(附属

書 の図 E.5)を符号化するための処理手順では,データ単位の符号化処理手順を繰り返し用いる。DCT

利用型の符号器の場合,データ単位は,8×8 標本からなるブロック(8×8 ブロック)となる。

F.1.1.2

8

×ブロックデータ単位の符号化処理手順  DCT 利用型の順次符号化処理では,8×8 ブロック

データ単位の符号化を次の処理手順によって構成する。

(1)

レベルシフトし,8×8 FDCT を計算し,フレームヘッダで指定された表を使用して得られた係数を量

子化する。

(2)

走査ヘッダで指定された直流係数符号表を使用し,8×8 ブロックの直流係数を符号化する。

(3)

走査ヘッダで指定された交流係数符号表を使用し,8×8 ブロックの交流係数を符号化する。

F.1.1.3

レベルシフト及び正 DCT (FDCT)    FDCT の数学的定義は,附属書 の A.3.3 による。

FDCT

の計算の前に,

附属書 の A.3.1 で規定するとおり,入力データを符号付き 2 の補数表現にレベ

ルシフトする。レベルシフトを行うために,8 ビットの入力精度では 128 を引き,12 ビットの入力精度で

は 2048 を引く。

F.1.1.4

FDCT

の量子化  附属書 で規定したとおり一様量子化処理手順を,DCT 係数の量子化に使用

する。符号器は,四つの量子化表のいずれかを使用してよい。この規格では,具体的な量子化表は,規定

しない。しかし,標準的な量子化表の必要な数を

附属書 に示す。

量子化された DCT 値は,符号付きの 2 の補数の整数とし,8 ビット入力精度では 11 ビットの精度とし,

12

ビット入力精度では 15 ビットの精度とする。

F.1.1.5

DCT

順次処理手順のための符号化モデル  DCT 係数の 2 次元配列は,附属書 の A.3.6 で定義

したジグザグ順序に再配列される。ジグザグ順序の係数 ZZ (0)  ∼ZZ (63)  は,次のように示す。

zz (0)

=Sq↓00↑


87

X 4301-1995 (ISO/IEC 10918-1 : 1994)

ZZ (1)

=Sq↓01↑

ZZ (2)

=Sq↓10↑

.

.

.

ZZ (63)

=Sq↓77↑

Sq

↓vu↑は,

附属書 の図 A.6 のとおりとする。

符号化処理手順は,直流係数 ZZ (0)  の場合及び交流係数 ZZ (1)  ∼ZZ (63)  の場合の二つを使用する。こ

れらの係数は,直流係数から開始して,ジグザグ順序に現れる順序に符号化し,2 の補数の整数として表

す。

F.1.1.5.1

直流係数のための符号化モデル  直流係数は,1 次元予測器の PRED を使用して,差分を符号

化する。PRED は,同一成分の直前に符号化した 8×8 ブロックにおいて量子化した直流係数値とする。差

分の DIFF は,DIFF=ZZ (0)  −PRED から得る。

走査及び各符号化再初期化間隔の開始点で,直流係数予測をゼロに初期化する(入力データは,2 の補

数表現にレベルシフトされている。

F.1.1.5.2

交流係数のための符号化モデル  係数の多くがゼロであるため,ゼロの連の識別及び符号化を

効率的に行う。さらに,ジグザグ順序で残りの係数がすべてゼロの場合は,ブロックの終わり (EOB) と

して,明示的に符号化する。

F.1.2

基本処理ハフマン符号化処理手順  基本符号化処理手順は,8 ビット標本精度とする。符号器は,

1

走査内で直流係数及び交流係数のハフマン符号表をそれぞれ二つまで使用できる。

F.1.2.1

直流係数のハフマン符号化

F.1.2.1.1

直流係数符号表の構造  直流係数符号表は,任意の値の DIFF を符号化できる 1 組のハフマン符

号(最大長 16 ビット)及びほとんどの場合(付加される追加ビット)によって構成される。DIFF は,現

在の直流係数及び予測の差分とする。差分のカテゴリのためのハフマン符号は,符号語全体がすべて ”1”

のビットとならないように構成する(これによって,符号化中にマーカ符号に先立つ X’FF’の発生が避け

られる。

2

の補数の差分の絶対値を,12 のカテゴリーである SSSS に分類する。ハフマン符号は,12 の差分の絶

対値のカテゴリごとに一つ作成する。

表 F.1  直流係数符号化のための差分の絶対値のカテゴリ

SSSS DIFF

の値

0 0

1

−1, 1

2

−3,  −2, 2, 3

3

−7∼−4, 4∼7

4

−15∼−8, 8∼15

5

−31∼−16, 16∼31

6

−63∼−32, 32∼63

7

−127∼−64, 64∼127

8

−255∼−128, 128∼255

9

−511∼−256, 256∼511

10

−1023∼−512, 512∼1023

11

−2047∼−1024, 1024∼2047


88

X 4301-1995 (ISO/IEC 10918-1 : 1994)

SSSS

=0 以外の各カテゴリーとに,追加ビットフィールドを符号語に付加し,各カテゴリー内のどの差

分が実際に現れたのかを一意に識別する。追加ビット数は,SSSS によって指定する。追加ビットは,最上

位ビットから順に直前のハフマン符号の最下位ビットの後に付加する。DIFF が正の場合,DIFF の下位ビ

ットの SSSS を付加する。DIFF が負の場合,(DIFF−1)の下位ビットの SSSS を付加する。付加したビット

シーケンスの最上位ビットは,差分が負の場合 0 になり,正の場合 1 になる。

F.1.2.1.2

直流係数のためのハフマン符号表の定義  ハフマン符号表を規定する構文法を附属書 に示す。

この情報をもとにした符号表作成処理手順を,

附属書 で規定する。直流係数の符号化のためのハフマン

符号表は,一つ又は二つしか定義できない。直流係数の符号化のためのハフマン符号表の二つの例を,

属書 に示す。

F.1.2.1.3

直流係数のためのハフマン符号化処理手順  符号化処理手順は,1 組の拡張機能表である

XHUFCO

及び XHUFSI によって定義する。これらの表には,取り得るすべての差分の値に対応するハフマ

ン符号及びこれらの値の大きさが一そろい格納されている。12 ビットの精度の場合,これらの表は,かな

り大きくなる。しかし,基本処理システムの場合,差分の精度が低いため,この記述法が実用可能になる。

XHUFCO

及び XHUFSI は,差分を完全に定義するための追加ビットを差分のカテゴリごとにハフマン符

号に付加することによって,符号器表の EHUFCO 及び EHUFSI(

附属書 参照)から生成する。定義によ

って,XHUFCO 及び XHUFSI は,可能な差分の値ごとにエントリをもつ。XHUFCO にはハフマン符号及

び追加ビットフィールドを連結したビットパターンが,XHUFSI には連結したビットパターンの全長(ビ

ット長)が格納される。両方の表とも,DIFF(すなわち,直流係数及び予測の差分)によって,索引され

る。

直流係数差分である DIFF のためのハフマン符号化処理手順は,次のとおりとする。

SIZE

=XHUFSI (DIFF)

CODE

=XHUFCO (DIFF)

CODE

の符号 SIZE ビット

ここで,直流係数は量子化直流係数値とし,PRED は予測された量子化直流係数値とする。ハフマン符

号 (CODE) (すべての追加ビットを含む。

)は XHUFCO から,SIZE(追加ビットを含む符号長)は XHUFSI

からそれぞれ得られる。DIFF を,これらの二つの表の索引として使用する。

F.1.2.2

交流係数のハフマン符号化

F.1.2.2.1

交流係数符号表の構造  ZZ 内の各非ゼロ交流係数は,次の形式の複合 8 ビットの値をもつ RS に

よって記述される。

RS

=2 値’RRRRSSSS’

下位 4 ビットの’SSSS’は ZZ 内の後続の非ゼロ係数の振幅のカテゴリを,上位の 4 ビットの’RRRR’は ZZ

内の直前の非ゼロ係数から後続の非ゼロ係数までの相対位置(すなわち,非ゼロ係数間のゼロ係数の連の

長さ)を定義する。ゼロ係数の連の長さは,15 個より長い場合もあるので,15 個のゼロ係数の連の長さの

後に一つのゼロ振幅の係数を表す値’RRRRSSSS’=X’F0’を定義する(これは,16 個のゼロ係数の連の長さ

として解釈できる。)。さらに,ブロック内の後続係数がすべてゼロの場合は,特殊な値’RRRRSSSS’

=’00000000’を使用して,ブロックの終わり (EOB) を符号化する。

符号表の一般構造を,

図 F.1 に示す。 “N/A” の印の付いたエントリは,基本処理処理手順では,未定義

とする。


89

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.1  ハフマン符号化のための 次元値配列

SSSS

の各値ごとに割り当てられた絶対値の範囲を,

表 F.2 に定義する。

表 F.2  係数値に割り当てられたカテゴリ

SSSS

交流係数

1

−1, 1

2

−3,−2, 2,3

3

−7∼−4, 4∼7

4

−15∼−8, 8∼15

5

−31∼−16, 16∼31

6

−63∼−32, 32∼63

7

−127∼−64, 64∼127

8

−255∼−128, 128∼255

9

−511∼−256, 256∼511

10

−1023∼−512, 512∼1023

複合値である RRRRSSSS は,ハフマン符号化され,各ハフマン符号の後に係数の符号及び正確な振幅を

指定するための追加ビットを付加する。

交流係数符号表は,ハフマン符号(最大長 16 ビット,付加ビットを含まない。

)によって構成する。こ

の符号は,可能な複合値ごとに一つ用意される。8 ビット複合値の場合のハフマン符号は,符号語全体が

すべて “1” のビットとならないように構成する。

追加ビットの形式は,直流係数の符号化の場合と同じとする。SSSS の値は,係数の符号及び正確な振幅

の指定に必要な追加ビット数をそれぞれ定義する。追加ビットは,ZZ (K)  が正の場合,ZZ (K)  の下位の

SSSS

ビットとし,負の場合 ZZ (K)  −1 の下位の SSSS ビットとする。ZZ (K)  は,符号化中のジグザグ順

序に並んだ係数の K 番目のものとする。

F.1.2.2.2

交流係数のためのハフマン符号表の定義  ハフマン符号表指定のための構文法を,附属書 

示す。この情報をもとにした符号表作成処理手順を,

附属書 で規定する。

基本処理システムでは,交流係数の符号化のために定義可能なハフマン符号表は,二つ以下とする。交

流係数の符号化のためのハフマン符号表の二つの例を,

附属書 に示す。

F.1.2.2.3

交流係数のためのハフマン符号化処理手順  附属書 で定義したとおり,ハフマン符号表は,

EHUFCO

(符号ビットからなる。

)及び EHUFSI(ビット単位の各符号長からなる。

)の 1 組のベクトルと

して使用できる。これらのベクトルは,両方とも上で定義した複合値によって索引が付けられる。

ブロック内の交流係数の符号化の処理手順を,

図 F.2 及び図 F.3 に示す。図 F.2 で,K はジグザグ走査位

置の索引とし,R はゼロ係数の連の長さとする。


90

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.2  交流係数のためのハフマン符号化処理手順 

  “Append EHUFSI (X’F0’) bits of EHUFCO (X’F0’)”

処理手順では,16 個のゼロ係数の連(

図 F.2 の ZRL

符号)を符号化する。  “Code EHUFSI (0) bits of EHUFCO (0)”  処理手順では,ブロックの終わり(EOB 符

号)を符号化する。最終係数 (K=63)  がゼロでない場合は,EOB 符号は出力しない。

CSIZE

は,交流係数を

表 F.2 に示す SSSS 値に写像するための処理手順とする。


91

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.3  非ゼロ交流係数の符号化

F.1.2.3

バイト挿入  復号しないで圧縮画像データ内に位置付けできるようなマーカコードの符号空間

を設定するために,バイト挿入を行う。

通常の符号化中,バイト値の X’FF’が符号系列内に生成されるときは,X’00’バイトを符号系列内に挿入

する。

X’FF’

バイトの後に X’00’バイトを検出した場合,復号器は,これを無視しなければならない。このバイ

トがゼロでない場合,マーカが検出されたことになる。このマーカは,走査の復号の完了に必要な範囲と

解釈しなければならない。

不完全なバイトに 1 のビットを挿入することによって,マーカのバイト位置合せを行う。1 のビットを

挿入することによって X’FF’値が生成された場合,ゼロのバイトを挿入してからマーカを追加する。

F.1.3

拡張された ビット精度の DCT 利用による順次ハフマン符号化処理  この処理は,F.1.2 で説明し

た基本処理符号化処理と同じとする。ただし,この処理では,同一走査内で使用可能なハフマン符号表が

4

組に拡張されている。この規格では,直流係数及び交流係数のハフマン符号表がそれぞれ最大四つまで

使用可能とする。

F.1.4

拡張された ビット精度の算術符号化による DCT 順次符号化処理  ここでは,DCT 利用型の順次

符号化処理における算術符号化処理手順の使用について規定する。

備考  この規格における算術符号化処理手順では,互換性を促進するために最大精度で定義する。

この算術符号化拡張機能には,基本処理 DCT 符号器と同じ DCT モデルを用いる。したがって,算術符

号化にも F.1.1 を適用する。ハフマン符号化技法と同様に,2 値算術符号化技法は,可逆とする。FDCT 又


92

X 4301-1995 (ISO/IEC 10918-1 : 1994)

は IDCT のいずれかを計算せずに,かつ再生画像を変更せずに,二つのシステム間で符号変換ができる。

適応 2 値算術符号化の基本原理は,

附属書 による。一つの走査内で,直流係数及び交流係数の条件表

及び関連した統計量領域が最大四つまで使用できる。

2

値判定の符号化,統計量領域及び符号器の初期化,符号系列の終了,符号化再初期化マーカの付加の

ための算術符号化処理手順を,

附属書 の表 D.1 に示す。

表 D.1 の処理手順の幾つかは,附属書 で説明する走査及び符号化再初期化間隔の高レベル制御構造で

使用する。走査及び符号化再初期化間隔の開始点で算術符号器を使用する確率推定は,算術符号器の符号

化再初期化のための Initenc 処理手順の一部として既定初期値に再設定する。走査及び符号化再初期化間隔

の終わりで,Flush 処理手順を用いる場合,次のマーカを付加する前に符号レジスタを空にする。

F.1.4.1

直流係数の算術符号化  直流係数の差分の値の DIFF の符号化の判断は,基本的に図 F.4 に示し

た順序で行う。

図 F.4  直流係数の差分の算術符号化モデル 

直流係数符号化処理手順で使用される文脈索引 S0,その他の文脈索引を,

表 F.4 に定義する(F.1.4.4.1.3

参照)

。差分の値がゼロの場合,0 の決定を符号化し,ゼロでない場合,1 の決定を符号化する。差分がゼ

ロでない場合,Encode V (S0) の処理手順を使用して,符号及び絶対値を符号化する。この処理手順は,

F.1.4.3.1

による。

F.1.4.2

交流係数の算術符号化  交流係数は,ジグザグ順序の ZZ (1,...,63)  に現れる順序で符号化する。

ブロックの終わり (EOB) の 2 値判定は,ZZ 内の最初の交流係数の符号化を行う前に,また,各非ゼロ係

数を検出した後に,符号化する。EOB が発生したとき,ZZ 内のすべての後続係数は,ゼロとする。この

判断順序を

図 F.5 に示す。ハフマン符号器のための同様の処理手順を,図 F.2 に示す。


93

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.5  算術符号化の交流係数符号化モデル

交流係数符号化処理手順で使用する文脈索引の SE 及び S0 は,

表 F.5 に定義されている(F.1.4.4.2 参照)。

図 F.5 で,K は,ジグザグ順序位置の索引とする。順次走査において,Kmin は 1 とし,Se は 63 とする。

V

=0 の判断は,ゼロ係数の連の符号化のためのループの一部で行う。係数が非ゼロであるときは,Encode

V (S0)

によって,この係数の正負符号及び絶対値を符号化する。非ゼロ係数が符号化されるごとに,EOB

の判断を行う。EOB が検出された場合,1 の決定が符号化され,ブロックの符号化が完了したことを示す。


94

X 4301-1995 (ISO/IEC 10918-1 : 1994)

K

=Se の場合は,係数がゼロでなくても,EOB の判断を省略する。

F.1.4.3

非ゼロの直流係数の差分及び交流係数の係数に対する 値判定順序の符号化  直流係数の差分及

び交流係数の係数は,両方とも符号付きの 2 の補数の整数として表される。これらの 2 値判定木による符

号付き整数値の分解は,直流係数の符号化モデル及び交流係数の符号処理モデルと同じ方法で行う。

この附属書の直流係数及び交流係数の符号処理モデルの 2 値判定木は同じとするが,この木内で統計器

を 2 値判定に割り当てる場合の統計的モデルは異なる。

F.1.4.3.1

符号化判断順序の構造  符号化順序は,三つの処理手順で構成する。すなわち,正負符号を符

号化する 1 番目の処理手順,絶対値のカテゴリを識別する 2 番目の処理手順及び 2 番目の処理手順で識別

されたカテゴリ内でどの絶対値が現れたかを正確に識別する 3 番目の処理手順とする。

Encode_V(S0)

の 2 値判定順序を開始した時点では,係数又は差分は,既に非ゼロであると判定される。

この判定は,

図 F.4 及び図 F.5 の処理手順で行う。

直流係数の差分 (DIFF) 又は交流係数を V として示すと,V の非ゼロ符号付き整数値を

図 F.6 に示す順

序で符号化する。この順序では,V の正負符号を最初に符号化する。次に,

(V を絶対値に変換し,この絶

対値から 1 を引いて,Sz に代入した後)Sz の絶対値のカテゴリを符号化する (code_log2_Sz)。さらに,正

確な絶対値を識別するために,絶対値の下位ビットを符号化する (code_Sz_bits)。

図 F.6  の非ゼロ値符号化における処理手順の列 

この列と,F.1.2 で規定するハフマン符号化の場合の同様の動作とは,二つの点で大きく異なる。第 1 に,

この列では,正負符号を符号化してから,絶対値のカテゴリを識別する。第 2 に,絶対値から 1 を引いた

後で,絶対値のカテゴリを識別する。


95

X 4301-1995 (ISO/IEC 10918-1 : 1994)

F.1.4.3.1.1

正負符号の符号化  正負符号の符号化は,符号が正の場合は 0 の決定を符号化することによ

って,負の場合は 1 の決定を符号化することによって行う。正負符号の符号化処理手順を

図 F.7 に示す。

図 F.7  の正負符号の符号化

文脈索引の SS,SN 及び SP は,直流係数符号化のために

表 F.4 で,交流係数符号化のために表 F.5 でそ

れぞれ定義する。正負符号が符号化された後,文脈索引 S は,SN 又は SP のいずれかに設定し,

Encode_log2_Sz

のための初期値を確定する。

F.1.4.3.1.2

絶対値のカテゴリの符号化  絶対値のカテゴリの判定は,一連の 2 値判定によって行う。こ

れらの判定では,先頭の 1 のビットの位置を決定するために,Sz と指数を増加させた上限(2 の累乗)と

を比較する。これによって,ハフマン符号器が差分のカテゴリに関連した値の符号を生成するのとほぼ同

じ方法で,絶対値のカテゴリを設定する。

この処理手順の流れ図を,

図 F.8 に示す。


96

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.8  絶対値のカテゴリ設定のための判断順序 


97

X 4301-1995 (ISO/IEC 10918-1 : 1994)

文脈索引 S の最初の値は,Encode_sign_of_V で決定する。文脈索引の X1 及び X2 は,直流係数符号処理

の場合,

表 F.4 で,交流係数符号処理の場合,表 F.5 で定義する。図 F.8 で,M は,絶対値の上限(上限の

値は,含まれない。

)とし,省略形の “SLL” 及び “SRL” は,それぞれ左論理シフト演算,右論理シフト

演算を示す(この場合,ビットが 1 の位置だけ)

。処理が完了した時点での SRL 操作は,Sz の最上位ビッ

トで M を整列させる。

表 F.3  上限ごとのカテゴリ

上限 (M)

Sz

の範囲

絶対値の下位ビットの数

1 0

0

2 1

0

4 2,

3

1

8 4

∼7 2

16 8

∼15 3

32 16

∼31 4

64 32

∼63 5

128 64

∼127 6

256 128

∼255 7

512 256

∼511 8

1024 512

∼1023 9

2048 1024

∼2047 10

4096 2048

∼4095 11

8192 4096

∼8191 12

16384 8192

∼16383 13

32768 16384

∼32767 14

DCT

で可能な最大精度は,15 ビットとする。したがって,符号化判定木に必要な最大精度は,直流係数

の差分の場合 16 ビットとし,交流係数の場合符号ビットも含めて 15 ビットとする。

F.1.4.3.1.3

厳密な絶対値の符号化  絶対値のカテゴリの符号化の後,絶対値の下位ビットを符号化する。

これらのビットは,最上位のビットから順に符号化する。この処理手順を,

図 F.9 に示す。省略形の “SRL”

は,右論理シフト演算を示す。M は,

図 F.8 で設定した上限(上限の値は含まない。)とし,M でセット

されているビットは,一つだけとする。M を右にシフトすることによって,この値は,論理 “AND” 演算

のためのビットマスクに変換される。

文脈索引 S の最初の値は,Encode_log2_Sz で決定される。この処理で最初の S を 14 だけ増やす処理に

よって,文脈索引を

表 F.4 及び表 F.5 で必要な値に設定する。


98

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.9  絶対値のビットパターンの符号化のための判断順序 

F.1.4.4

統計的モデル  適応 2 値算術符号器には,統計的モデルを必要とする。この統計的モデルは,符

号化及び復号処理手順で使用される条件付き確率推定を選択するために使用する文脈を定義する。

2

値判定木内の各判定は,一つ以上の文脈に関連する。これらの文脈は,MPS の意味及び 2 値判定を符

号化したり復号したりするのに使用する条件付き確率推定 Qe(

附属書 の表 D.2 参照)の索引を識別す

る。

算術符号器は,適応的とする。すなわち,文脈ごとの確率推定の作成及び維持は,以前の条件付け状態

における文脈をもとに算術符号化システムによって行われることを意味する。

F.1.4.4.1

直流係数の予測差分符号化のための統計的モデル  直流係数の差分の符号化のための統計的モ

デルによって,以前の直流係数符号化判断による 2 値判定の確率推定の幾つかが条件付けされる。


99

X 4301-1995 (ISO/IEC 10918-1 : 1994)

F.1.4.4.1.1

符号による統計的条件付け  直流係数の符号化では,ゼロか非ゼロかの (V=0)  の判定,符号

の判定及び最初の絶対値のカテゴリ判定の符号化において,四つの統計器(確率推定)を使用する。これ

らの統計器のうち,二つは,V=0 かどうかの判定及び符号の判定の符号化に使用する。他の二つの統計器

は,最初の絶対値の判定,すなわち,Sz<1 かどうかの符号化に使用する。この場合,一方の統計器は,

符号が正の場合に使用し,他方の統計器は,負の場合に使用する。したがって,最初の絶対値の判断の確

率推定は,V の符号によって条件付けされる。

F.1.4.4.1.2

直前のブロックの直流係数の差分による統計的条件付け  上の最初の三つの判定の確率推定

は,同一成分の直前の DCT ブロックのために符号化された差分の値によっても Da に条件付けされる。こ

れらの差分を,ゼロ,小さい正の数,小さい負の数,大きい正の数及び大きい負の数の五つのグループに

分類する。初期分類と量子化目盛りとの関係を,

図 F.10 に示す。

図 F.10  差分の値の条件付け分類

上の分類は,

“小さい”差分のカテゴリの上下限によって決定される。L 及び U を 0 から 15 までの(0

及び 15 を含む。

)範囲内の整数として定義すると,

“小さい”として分類された差分の絶対値の下限(下限

の値は含まない。

)は,L=0 の場合ゼロになり,L>0 の場合 2↑L−1↓になる。

“小さい”として分類された差分の絶対値の上限(上限の値を含む。

)は,2↑U↓とする。

L

は,U 以下でなければならない。

条件付けカテゴリの上下限によって,

表 F.3 で示したものと同じ分割を行う。

F.1.4.4.1.3

直流係数 値判定木への統計器の割当て  表 F.4 に示すとおり,直流係数符号化のためのそれ

ぞれの統計的領域は,49 の統計器で構成される。ここでは,統計器は,連続と仮定する。最初の 20 の統

計器は,

文脈索引 S0 で選択される四つの統計器の 5 個の集合で構成される。

S0

の値は,

DC_Context (Da)

よって与えられ,DC_Context (Da)  は,Da(F.1.4.4.1.2 参照)の異なる種別分けに応じて,値 0,4,8,12

又は 16 をとる。残りの 29 の統計器,X1,...,X15,M2,...,M15,は,絶対値のカテゴリの判定及び絶

対値のビットを符号化するために使用する。

表 F.4  直流係数符号化のための統計的モデル

文脈索引

符号化判定

S0 DC

+Context(Da) V=0

SS S0

+1 V の正負符号

SP S0

+2 V>0 ならば Sz<1

SN S0

+3 V<0 ならば Sz<1

X1 20

Sz

<2

X2 X1

+1 Sz<4

X3 X1

+2 Sz<8

X15 X1

+14 Sz<2↑15↓

M2 X2

+14 Sz<4 ならば絶対値ビット

M3 X3

+14 Sz<8 ならば絶対値ビット

M15 X15

+14 Sz<2↑15↓ならば絶対値ビット


100

X 4301-1995 (ISO/IEC 10918-1 : 1994)

F.1.4.4.1.4

直流係数の統計的モデルのための既定値  条件付けカテゴリの決定のための上下限の L 及び

U

は,L=0 及び U=1 の初期値に設定される。

附属書 で規定したとおり,DAC(算術符号化条件付けの

定義)マーカ部分列を使用して他の上下限に設定してもよい。

F.1.4.4.1.5

直流係数の統計的モデルのための既定値  走査の開始点及び各符号化再初期化間隔の開始点

で,条件付け状態決定において直前の直流係数の値の差分がゼロになるように定義する。

F.1.4.4.2

交流係数の符号化のための統計的モデル  表 F.5 に示すとおり,交流係数符号化のためのそれ

ぞれの統計的領域は,1 組の 245 個の連続した統計器で構成される。三つの統計器をジグザグ索引 K のそ

れぞれの値で使用し,2 組の 28 の付加的な統計器,X2∼X15,M2∼M15 を,絶対値のカテゴリ及び絶対

値のビットを符号化するために使用する。

SE

(さらに S0,SP 及び SN)の値は,ジグザグ索引 K によって決定する。K は,1∼63 であるので,SE

の最小値はゼロとし,SP の最大値は 188 とする。係数の正負符号は,一定の確率値,すなわち,0.5 (Qe

=X’5AID’, MPS=0)  を使用して符号化されるので,交流係数の符号化においては,SS には値を割り付け

られない。

表 F.5  交流係数符号化のための統計的モデル

文脈索引

符号化判定

SE 3

× (K−1) K=EOB

S0 SE

+1 V=0

SS

固定推定

V

の正負符号

SN, SP

S0

+1 Sz<1

X1 S0

+1 Sz<2

X2 AC_Context

(K) Sz

<4

X3 X2

+1 Sz<8

X15 X2

+14 Sz<2↑15↓

M2 X2

+14 Sz<4 ならば絶対値ビット

M3 X3

+14 Sz<8 ならば絶対値ビット

M15 X15

+14 Sz<2↑15↓ならば絶対値ビット

X2

の値は,AC_Context (K)  で与えられる。K<=Kx のときは X2=189 とし,K>Kx のときは X2=217

とする。Kx は,DAC マーカ部分列(

附属書 の B.2.4.3 参照)を用いて定義する。

この列では,X1 の統計器は使用しないが,その代わり,絶対値のカテゴリのための統計器からなる 63

×1 の配列を二つの判定に使用する。一度,絶対値の境界を決定すると(例えば,統計器の Xn において)

一つの統計器 Mn をこの境界における絶対値のビットシーケンスの符号化に使用する。

F.1.4.4.2.1

交流係数符号化のための既定値  Kx の初期値は,5 とする。附属書 の規定によって DAC

マーカ部分列を使用して,これを変更してよい。

F.1.4.4.2.2

交流係数の統計的モデルのための既定値  走査の開始点及び各符号化再初期化において,統

計器は,すべて

附属書 に示す既定初期値に再初期設定する。

F.1.5

拡張されたハフマン符号化及び 12 ビット精度の DCT 順次符号化処理  この処理は,F.1.3 で説明

した四つのハフマン符号表に拡張された 8 ビット精度の DCT 順次処理と同じとする。ただし,次の変更が

ある。

F.1.5.1 12

ビット入力精度の場合の直流係数符号表の構造  2 の補数の差分の絶対値は,16 のカテゴリ,

すなわち,SSSS に分けられる。これらの 16 の差分絶対値のカテゴリごとに,ハフマン符号を作成する。


101

X 4301-1995 (ISO/IEC 10918-1 : 1994)

直流係数符号化のためのハフマン符号表(

表 F.1)を,表 F.6 で示すとおり拡張する。

表 F.6  直流係数符号化のための差分絶対値のカテゴリ

SSSS DIFF

の値

12

−4095∼−2048, 2048∼4095

13

−8191∼−4096, 4096∼8191

14

−16383∼−8192, 8192∼16383

15

−32767∼−16384, 16384∼32767

F.1.5.2 12

ビット標本精度の場合の交流係数符号表の構造  図 F.12 に示すとおり,この符号表の一般構

造を拡張する。

表 F.7 に示すとおり,交流係数符号化のためのハフマン符号表の機能を拡張する。

図 F.11  ハフマン符号化のための 次元値配列

表 F.7  係数の振幅の範囲に割り当てられた値

SSSS DIFF

の値

11

−2047∼−1024, 1024∼2047

12

−4095∼−2048, 2048∼4095

13

−8191∼−4096, 4096∼8191

14

−16383∼−8192, 8192∼16383

F.1.6

拡張された算術符号化及び 12 ビット精度の DCT 順次符号化処理  この処理は,8 ビット精度の場

合の DCT 順次処理と同じとする。ただし,この処理では,FDCT 計算の精度が異なる。

12

ビット標本精度のための符号化処理手順の構造は,F.1.4 で規定したものと同じとする。

F.2

DCT

利用型の順次復号処理

F.2.1

DCT

利用型の順次制御処理手順及び符号化モデル

F.2.1.1

DCT

利用型の順次復号器の制御処理手順  圧縮画像データ及びその構成部分であるフレーム,走

査,符号化再初期化間隔及び MCU の復号のための制御処理手順を,

図 E.6E.10 に示す。MCU を復号す

るための処理手順(

図 E.10)では,データ単位を復号するための処理手順を繰り返し用いる。DCT 利用型

の復号器の場合,データ単位は,8×8 標本のブロックとする。

F.2.1.2

8

×ブロックデータ単位の復号処理手順  DCT 利用型の順次処理の復号処理における 8×8 ブロ

ックデータ単位の復号は,次の処理手順からなる。

(1)

走査ヘッダで指定された直流係数符号表によって,8×8 ブロックの直流係数を復号する。

(2)

走査ヘッダで指定された交流係数符号表によって,8×8 ブロックの交流係数を復号する。

(3)

フレームヘッダで指定された表を用いた逆量子化及び 8×8 逆 DCT の計算をする。

F.2.1.3

DCT

順次処理手順のための復号モデル  二つの復号処理手順を使用する。一つは直流係数 ZZ (0)

に対応し,他の一つは交流係数 ZZ (1)  ∼ZZ (63)  に対応する。係数は,直流係数で始まるジグザグ順序に

従って復号する。係数は,2 の補数の整数として表現する。

F.2.1.3.1

直流係数復号モデル  復号差分 DIFF は,同一成分の,直前に復号された 8×8 ブロックの直流

係数値,すなわち,PRED に加えられる。したがって,ZZ (0)  =PRED+DIFF となる。


102

X 4301-1995 (ISO/IEC 10918-1 : 1994)

走査及び各符号化再初期化間隔開始時に,直流係数の予測値は,ゼロに初期化する。

F.2.1.3.2

交流係数復号モデル  交流係数は,ZZ が発生する順序で復号する。EOB が復号された場合,

ZZ

の中に残っているすべての係数は,ゼロに初期化する。

F.2.1.4

量子化 DCT 係数の逆量子化  附属書 に示すとおり,量子化 DCT 係数の逆量子化は,それぞれ

の量子化係数値にその係数に対する量子化表の値を乗算して行う。復号器は,四つまでの量子化表を使用

できなければならない。

F.2.1.5

逆 DCT (IDCT)    IDCT の数学的定義は,附属書 の A.3.3 に示す。

IDCT

を計算したあと,符号付きの出力標本は,

附属書 に規定したとおりレベルシフトし,符号のな

い表現に変換する。

レベルシフトは,

8

ビット精度では 128 を加算し,

12

ビット精度では 2048 を加算する。

必要に応じて,この出力標本は,精度の適正範囲内(8 ビット精度の場合 0∼255,12 ビット精度の場合 0

∼4095)にとどまるようにクランプされなければならない。

F.2.2

基本処理ハフマン復号処理手順  基本処理復号処理手順は,8 ビット標本精度のためのものとする。

復号器は,1 走査内に二つまでの直流係数ハフマン符号表及び二つまでの交流係数ハフマン符号表を使用

できなければならない。

F.2.2.1

直流係数のハフマン復号  直流係数差分 DIFF に対する復号処理手順を,次に示す。

T

=DECODE

DIFF

=RECEIVE (T)

DIFF

=EXTEND (DIFF, T)

ここで,DECODE は,圧縮画像データ(F.2.2.3 参照)の中の後続のハフマン符号に関連したビット値に

戻す処理手順である。RECEIVE (T) は,直列ビット列の後続の T ビットを DIFF の下位ビットに MSB か

ら順に挿入する処理手順とする。T がゼロであれば,DIFF はゼロに設定される。EXTEND は,部分的に

復号された精度 T の DIFF の値を,正負符号ビットを拡張し,完全な精度の差分値に変換する処理手順と

する。EXTEND については,

図 F.12 に示す。


103

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.12  の復号値の正負符号ビットの拡張 

F.2.2.2

交流係数の復号処理手順  交流係数の復号処理手順を図 F.13 及び F.14 に示す。


104

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.13  交流係数のハフマン復号手順 


105

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.14  非ゼロ交流係数の復号 

非ゼロ係数の振幅及び正負符号の復号は,

図 F.14 に示とおり “Decode_ZZ(K)” の処理手順で実行する。

DECODE

は,符号列の後続のハフマン符号に対応する値 RS を,戻す処理手順とする(F.2.2.3 参照)

SSSS

と R の値は,RS から求める。SSSS 値は,合成値の下位 4 ビットとし,R は RRRR の値を示す(合

成値の上位 4 ビット)

。これらの値の規定は,F.1.2.2 による。EXTEND については,

図 F.12 に示す。

F.2.2.3

DECODE

処理手順  DECODE 処理手順は,直流係数については,差分絶対値のカテゴリを決定

する 8 ビット値を復号することである。交流係数については,この 8 ビットの値はゼロ係数の連の長さと

非ゼロ係数のカテゴリを決定することである。

HUFFVAL

,HUFFCODE 及び HUFFSIZE の三つの表は,

附属書 による。ここで,DECODE は,値及

び符号長の双方に依存する,HUFFCODE の中のハフマン符号の順番を利用することを特徴とする。多く

の他の DECODE の実行も可能とする。

備考 HUFFVAL の中の値は,HUFFCODE 及び HUFFSIZE のそれぞれの符号に順に割り当てられる。

HUFFVAL

の中の同じ長さの符号に,値を割り当てる順番には,制約はない。

DECODE

の実行では,

HUFFVAL

表に対するポインタを復号するために,

三つの表,

すなわち,

MINCODE

MAXCODE

及び VALPTR を使用する。MINCODE,MAXCODE 及び VALPTR は,すべての符号サイズに

対して対応する値をそれぞれ設定できるように,16 エントリをもつ。MINCODE (I)  は,長さ I の符号の最

小値を,MAXCODE (I)  は長さ I の符号の最大値を,更に VALPTR (I)  は長さ I の符号語によって復号され

る HUFFVAL 値中の表の開始位置をそれぞれ示す。MINCODE 及び MAXCODE の中の値は,16 ビット正

負符号付き整数とする。したがって−1 の値は,全ビットを 1 に設定する。

これらの表を発生する処理手順を,

図 F.15 に示す。DECODE の処理手順を,図 F.16 に示す。8 ビット

“VALUE”

は,DECODE を起動する手順に戻される。


106

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.15  復号器表の発生


107

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.16  DECODE 処理手順 

F.2.2.4

RECEIVE

処理手順  RECEIVE (SSSS) は,エントロピー符号化部分列内の後続の SSSS ビット

を,DIFF の下位ビットに MSB を先頭におく処理手順とし,そのため,NEXTBIT を用いる。この処理手

順は,DIFF の値を,RECEIVE (SSSS)  を呼び出した手順に戻す。


108

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.17  RECEIVE (SSSS)  の処理

F.2.2.5

NEXTBIT

処理手順  NEXTBIT は,圧縮データの後続のビットを読み込み,それを高位層の手順

に渡す。また,NEXTBIT は,挿入バイトを検出した場合,これを捨て,更に,マーカを検出する。NEXTBIT

は,一つのバイトのビットを MSB から読み込む。

一つの走査の復号を始める前及び RST マーカを処理した後に,CNT をクリアする。圧縮データは,処

理手順 NEXTBYTE を用いて,一度に 1 バイトずつ読み込む。一つのバイト (B) を読み込むごとに,CNT

を 8 に設定する。


109

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.18  圧縮データの次のビットの取り込み処理手順 

ハフマン符号化データ内に発生する有効なマーカは,RSTm マーカだけとする。EOI 又は走査の開始時

若しくは開始前に発生するマーカ以外で,走査終了時に発生するマーカは,DNL(ライン数定義)だけと

する。

通常,復号器は,終了マーカを検出する前に最後の符号化再初期化間隔の復号を終了する。DNL マーカ

を検出すると,現行のライン計数をそのマーカによって規定された値に設定する。DNL マーカは,最初の

走査の終了時にだけ使用できる。したがって,走査復号処理手順は,それが検出されたときに終了しなけ

ればならない。

F.2.3

4

組のハフマン符号表に拡張された ビット精度の DCT 順次復号処理  この処理は,復号器が 1

走査の中で直流係数及び交流係数のそれぞれに対して,四つまでのハフマン符号表を使用できなければな

らない点を除いて,F.2.2 の基本処理復号処理と同じとする。四つの直流係数ハフマン符号表及び四つの交

流係数ハフマン符号表は,この規格が認める最大数とする。


110

X 4301-1995 (ISO/IEC 10918-1 : 1994)

F.2.4

算術符号化による DCT 順次復号処理  ここでは,算術復号による DCT 順次復号処理について規

定する。

2

値判定を復号し,統計的モデルを初期化し,復号器を初期化し,復号器を再同期化するための算術復

号処理手順は,

附属書 の表 D.3 による。

附属書 の表 D.3 の一部の処理手順を,F.2 の走査及び符号化再初期化間隔用高位層制御機構で使用す

る。走査及び符号化再初期化間隔開始時に,算術復号器に使用される確率推定値は,算術符号器を再初期

化する Initdec 処理手順の一部として既定初期値に再設定する。

F.1.4.4

で定義された統計的モデルをこの復号処理にも適用する。

復号器は,1 走査内で条件表及びこれに付随する統計量領域を,直流係数用及び交流係数用にそれぞれ

四つまで使用できなければならない。

F.2.4.1

直流係数の算術復号  直流係数差分値 DIFF を復号するための判定シーケンスの基本構成を図

F.19

に示す。符号器における対応する構成を

図 F.4 に示す。

図 F.19  直流係数差分の算術復号

直流係数復号処理手順に使われる文脈索引は,

表 F.4F.1.4.4.1.3 参照)による。

 “Decode”

処理手順は,2 値判定の値 “D” を戻す。その値がゼロでない場合,非ゼロ DIFF の正負符号

及び絶対値は,処理手順 “Decode_V (SO)” によって復号されなければならない。

F.2.4.2

交流係数の算術復号  交流係数は,ZZ (1, ..., 63)  の順序に従って復号する。符号化処理における

符号器処理手順を

図 F.5 に示す。図 F.20 は,復号のシーケンスを示す。


111

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.20  交流係数の復号処理手順

交流係数復号処理手順に使われる文脈索引は,

表 F.5F.1.4.4.2 参照)による。

図 F.20 で,K はジグザグ順序の位置を示す索引とする。順次処理の走査では,Kmin=1 及び Se=63 と


112

X 4301-1995 (ISO/IEC 10918-1 : 1994)

する。ループ最上位での判定は,EOB 判定とする。EOB が発生すると (D=1),そのブロック中の残りの

係数は,ゼロに設定する。EOB 復号のすぐ下の内側のループは,ゼロ係数の連を復号する。係数がゼロで

なければ,必ず “Decode V” が係数の正負符号及び絶対値を復号する。それぞれの非ゼロ係数が復号され

た後,K=Se でない限り,EOB 判定を再度復号する。

F.2.4.3

非ゼロ直流係数差分及び交流係数の 値判定手順復号  直流係数差分及び交流係数は,ともに符

号つき 2 の補数の 16 ビット整数値として表現される。これらの符号付き整数値の復号判定木は,直流係数

及び交流係数の符号化モデルに対するものと同じとする。しかし,統計的モデルは,同じではない。

F.2.4.3.1

非ゼロ値の算術復号  直流係数差分又は交流係数の一方を V とすると,非ゼロ符号付き整数値

V

は,

図 F.21 に示す手順で復号する。この手順は,まず V の正負符号を復号する。その後,V の絶対値の

カテゴリを復号 (Decode_log2_Sz) する。さらに,絶対値の下位ビットを復号する (Decode_Sz_bits)。実際

の係数の絶対値を得るため,Sz に対して復号された値を,1 だけ増加する。

図 F.21  非ゼロ値 の復号における処理手順

F.2.4.3.1.1

正負符号の復号  正負の符号は,図 F.22 に示す処理手順によって復号する。


113

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.22  の正負符号の復号

文脈索引は,直流係数復号用は

表 F.4 に,交流係数復号用は表 F.5 による。

SIGN

=0 ならば,係数の符号は正とし,SIGN=1 ならば,係数の符号は負とする。

F.2.4.3.1.2

絶対値のカテゴリの復号  文脈索引 S は,Decode_sign_of_V で設定され,文脈索引値 X1 及び

値 X2 は,直流係数復号用を

表 F.4 に,交流係数復号用を表 F.5 にそれぞれ定義する。

図 F.23 では,M は絶対値の上限に設定され,復号判定がゼロになるまで,左にシフトする。その後,Sz

の絶対値の先頭ビットにするため,右に 1 ビットシフトする。


114

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 F.23  絶対値のカテゴリを得るための復号処理手順


115

X 4301-1995 (ISO/IEC 10918-1 : 1994)

F.2.4.3.1.3

厳密な絶対値の復号  絶対値のカテゴリを復号してから,絶対値の下位ビットを復号する。

このビットは,上位から下位に向かって復号される。

図 F.24 にその処理手順を示す。

文脈索引 S は,Decode_log2_Sz で設定される。

図 F.24  絶対値ビットパターンの復号決定手順

F.2.4.4

復号器の再初期化  圧縮データの各符号化再初期化間隔の間に付加される RSTm マーカは,符号

化処理手順で発生することのない 2 バイト値とする。この 2 バイトシーケンスを復号せずに見付けること

ができ,従って復号器の再同期化に使用することができる。したがって,RSTm マーカは,誤りの回復用

として使用することができる。

誤り回復の処理手順を用いる前に,最初に誤りの状態が検出されなければならない。誤りは,復号中に

2

か所に表れる可能性がある。

(1)

復号器が再同期化を予定する個所で予定マーカを検出できない。

(2)

物理的に不可能なデータが復号されたとき。例えば,誤りによって圧縮データが破壊された場合に,

モデルによって許可された数値範囲を超える絶対値を復号することがあり得る。算術復号器では,こ

の誤りの状態を検出することが特に重要となる。誤り状態が検出されない場合,復号器は,圧縮デー


116

X 4301-1995 (ISO/IEC 10918-1 : 1994)

タを復号するために非常に多くの時間を費やしてしまうことがある。

備考  復号器が同期を損なう原因とならない誤りもあり得る。さらに,あらゆる誤りが回復できるわ

けではない。例えば,ヘッダ中の誤りは,致命的になることがある。しかし,上の(1)及び(2)

の二つの誤りの状態は,

多くの場合に復号器の同期を損なう原因となるが,回復が可能である。

同期を回復する上で,復号器は RSTm マーカの下位ビットで示されるモジュロ 8 符号化再初期化間隔番

号を活用できる。圧縮画像データ中の予定した再初期化間隔番号と次の RSTm マーカの番号とを比較する

ことによって,復号器は,通常,同期を回復できる。このとき,反復などの適切な処理手順によって,復

号器は欠落ラインの出力データを補充し,復号を継続する。もちろん,再構成画像は,通常,誤りの発生

した符号化再初期化間隔の少なくとも一部にかなりの破壊が見られる。

F.2.5

ハフマン符号化と 12 ビット精度の DCT 順次復号処理  この処理は,F.2.3 で 8 ビット標本精度と

して定義した四つのハフマン符号表に拡張された DCT 順次処理と同じとするが,次の変更を伴う。

F.2.5.1

直流係数ハフマン復号表の構造  直流係数ハフマン復号表の一般構造を,F.1.5.1 のとおりに拡張

する。

F.2.5.2

交流係数ハフマン復号表の構造  交流係数ハフマン復号表の一般構造を,F.1.5.1 のとおりに拡張

する。

F.2.6

算術符号化及び 12 ビット精度の DCT 順次復号処理  この処理は IDCT 演算の精度の点を除き,8

ビットの DCT 順次処理と同じとする。

F.2.4

における復号処理手順の構成は,12 ビット入力精度についても規定する。


117

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 G(規定)  DCT 利用型の段階符号処理

この附属書は,DCT 利用型の段階符号処理における次の符号化処理の機能規定を規定する。

(1)

周波数選択だけ,ハフマン符号化,8 ビット標本精度

(2)

周波数選択だけ,算術符号化,8 ビット標本精度

(3)

完全段階処理,ハフマン符号化,8 ビット標本精度

(4)

完全段階処理,算術符号化,8 ビット標本精度

(5)

周波数選択だけ,ハフマン符号化,12 ビット標本精度

(6)

周波数選択だけ,算術符号化,12 ビット標本精度

(7)

完全段階処理,ハフマン符号化,12 ビット標本精度

(8)

完全段階処理,算術符号化,12 ビット標本精度

これらのそれぞれに対して,G.1 は符号化処理を規定し,G.2 は,復号処理を規定する。機能規定は,こ

れらの符号化処理を構成する種々の処理手順に関する流れ図によって示す。

備考  この規定は,符号器及び復号器が,この附属書で規定する流れ図による手順に厳密に従うこと

強制するものではない。符号器及び復号器は,ここに規定する機能だけを満たせばよい。こ

の規定に従って考慮しなければならない基準は,ISO/IEC 10918-2 の適合性試験の 6.(符号器

用)又は 7.(復号器用)の要求条件だけとする。

同一走査内において使用されるハフマン符号表及び算術符号化のために使用してよい条件表の数は,4

個とする。

二つの相補的な段階的な処理手順として,周波数選択及び逐次近似を定義する。

周波数選択では,それぞれのブロックの DCT 係数が周波数帯域に分割される。それぞれの帯域は,別々

の走査で符号化する。

逐次近似では,DCT 係数を符号化前に 2 のべき乗で割り算する。復号器では,IDCT の計算をする前に,

DCT

係数を同じ 2 のべき乗を乗算する。後続の走査の中では,係数が完全精度になるまで,1 ビットずつ

係数精度を増加する。

完全段階符号処理を実装した符号器及び復号器は,逐次近似の中で周波数選択を用いる。段階符号処理

では,逐次近似及び周波数選択の両方を用いる処理以外に,周波数選択だけを用いる処理も定義する。

図 G.1 に,周波数選択及び逐次近似による段階処理を示す。


118

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 G.1  周波数選択及び逐次近似による段階処理


119

X 4301-1995 (ISO/IEC 10918-1 : 1994)

G.1

DCT

利用型の段階符号化処理

G.1.1

DCT

利用型の段階処理の制御処理手順及び符号処理モデル

G.1.1.1

DCT

利用型の段階符号器の制御処理手順  画像符号化のための制御処理手順並びにその骨格要

素,すなわち,フレーム,走査,符号化再初期化間隔及び MCU を

図 E.1E.5 に示す。

フレーム符号化の制御処理手順の構造は,順次処理手順と同じとする。しかし,走査を始める前にフレ

ーム内のすべての成分に関する FDCT を計算するほうが便利である。DCT 係数のすべてを蓄えることがで

きる大きさのバッファを,段階処理モードで使用してもよい。

走査の数は,定義された段階符号処理によって決定される。したがって,走査の数は,フレーム内の成

分の数より多くなってもよい。

MCU

符号化の処理手順(

図 E.5)では,データ単位符号化の処理手順を繰返し用いる。DCT 利用型の符

号器の場合,データ単位は,8×8 の標本からなるブロックとする。

走査内では,それぞれの 8×8 のブロックの一部だけが符号化される。その部分は,走査ヘッダ引数,

Ss

,Se,Ah,Al(

附属書 の B.2.3 参照)によって決められる。それぞれの 8×8 のブロックの部分を符号

化するために使用される処理手順は,この附属書で規定する。しかし,これらの処理手順で,順次 DCT

利用型モードと同じ部分に関しては,順次処理手順の規定を参照する。

G.1.1.1.1

周波数選択制御  周波数選択では,DCT 係数のジグザグ順序が,帯域に分割される。帯域は,

ジグザグ順序の最初及び最後の係数を示す走査ヘッダによって定義する。一つの帯域は,与えられた段階

符号処理の一つの走査で符号化する。直流係数は,常に交流係数とは別々に符号化する。直流係数を符号

化する走査だけは,一つの成分以上でブロック・インタリーブしてもよい。他の走査は,一つの成分だけ

からなる。成分の最初の直流係数走査の場合を除いて,走査内で定義された帯域の順序は,ジグザグ順序

である必要はない。それぞれの成分に関して,最初の直流係数走査は,交流係数走査に先行する。

G.1.1.1.2

逐次近似制御  逐次近似を用いる場合には,走査ヘッダ(附属書 の B.2.3 参照)によって定

義され小数点移動(

附属書 の A.4 参照)によって DCT 係数の精度を低下させる。逐次近似のビット位

置列 Al は,実際の小数点移動を指定しており,帯域に関して先行する走査がある場合,上位 4 ビットは,

これらの先行する走査で使用する小数点移動の値を含む。帯域に関して先行する走査がない場合,Ah はゼ

ロとする。

与えられた帯域に関して,最初の走査に続くそれぞれの走査は,係数の精度が完全精度になるまで段階

的に 1 ビットずつ係数の精度を改善する。

G.1.1.2

DCT

利用型の段階符号器の符号処理モデル  逐次近似を用いる場合には,走査ヘッダ(附属書 B

の B.2.3 参照)によって定義されている小数点移動(

附属書 の A.4 参照)によって DCT 係数の精度を低

下させる。これらのモデルも,DCT 利用型の段階符号器に適用できるが,次の点が異なる。

G.1.1.2.1

直流係数の段階符号化モデル  Al がゼロでない場合,直流係数に関する小数点移動は,直流係

数の精度を低下させるために使用しなければならない。Ah がゼロの場合,係数の値(小数点移動によって

修正された値)は,

附属書 で規定する処理手順を用いて符号化しなければならない。Ah がゼロでない

場合,小数点移動された直流係数の最下位有効ビットが,この附属書で規定する処理手順を用いて符号化

されなければならない。


120

X 4301-1995 (ISO/IEC 10918-1 : 1994)

G.1.1.2.2

交流係数の段階符号化モデル  Al がゼロでない場合,交流係数に関する小数点移動は,交流係

数の精度を低下させるために使用しなければならない。Ah がゼロの場合,係数の値(小数点移動によって

修正された値)は,

附属書 で規定する処理手順を用いて符号化しなければならない。これらの修正は,

この附属書で規定する。Ah がゼロでない場合,係数の精度は,この附属書で規定する処理手順を用いて改

善されなければならない。

G.1.2

ハフマン符号化を用いた段階符号化処理手順

G.1.2.1

ハフマン符号処理を用いた直流係数の段階符号化  与えられた成分の最初の走査は,附属書 

F.1.2.1

の処理手順を用いて直流係数の値を符号化しなければならない。逐次近似ビット位置パラメータ Al

がゼロでない場合,係数値の精度は,符号化前に

附属書 で規定する小数点移動によって低下させなけれ

ばならない。

逐次近似を用いる後続の走査において,最下位有効ビットは,バイト挿入の場合を除いて,圧縮又は修

正  (G.1.2.3)  のないビット系列に付加される。

G.1.2.2

ハフマン符号化を用いた交流係数の段階符号化  周波数選択及び逐次近似の成分の最初の走査

における交流係数の符号化モデルは,順次処理手順で用いるものに類似する。しかし,ハフマン符号表を,

End-Of-Bands (EOBs)

の連の符号化を含むように拡張する。

end-of-band

の連構造は,ゼロの係数だけからなるブロックの効率的な符号化を許容する。長さ 5 の EOB

の連は,現在のブロック及び後続の 4 個のブロックがゼロでない係数をインタリーブしない end-of-band

をもつことを意味する。EOB の連の長さは,符号化再初期化間隔によってだけ制限される。

符号表の拡張を,

図 G.2 に示す。

図 G.2  ハフマン符号処理についての 次元値配列


121

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 G.1  EOBn 符号連の長さの拡張

EOBn

符号

連の長さ

EOB0 1

EOB1 2,

3

EOB2 4

∼7

EOB3 8

∼15

EOB4 16

∼31

EOB5 32

∼63

EOB6 64

∼127

EOB7 128

∼255

EOB8 256

∼511

EOB9 512

∼1023

EOB10 1024

∼2047

EOB11 2048

∼4095

EOB12 4096

∼8191

EOB13 8192

∼16383

EOB14 16384

∼32767

EOBn

の符号順序は,次のとおり定義する。それぞれの EOBn 符号は,係数の振幅値(ただし,正数だ

けとする。

)に対する拡張フィールドに類似した拡張フィールドを後に伴う。EOBn 符号に付加するビット

数は,連の長さを規定するのに必要な最小数とする。

EOB

の連の長さが,32767 以上の場合,長さ 32767 の EOB の連及びそれに続く連を終了するために十分

な最終の EOB 連の系列として符号化される。

それぞれの符号化再初期化間隔の開始において,EOB 連の計数,すなわち,EOBRUN をゼロに設定す

る。それぞれの符号化再初期化間隔の終了時に,残りのすべての EOB 連を符号化する。

周波数選択の交流係数及び逐次近似の最初の走査の交流係数のハフマン符号化処理手順を

図 G.3 及び図

G.4

に示す。

図 G.3 において,Ss は周波数選択の開始を,Se は終了を示す。K はジグザグ順序 ZZ 内に蓄えられた係

数の表への索引を,R はゼロ係数の連の長さを,更に,EOBRUN は EOBs の連の長さを示す。EOBRUN

は,それぞれの符号化再初期化間隔開始においてゼロに設定する。

走査ヘッダ引数 Al(逐次近似・ビット位置下位)がゼロでない場合には,

図 G.3G.6 における DCT 係

数の値 ZZ (K)  を,小数点移動した ZZ’ (K)  で置き換える。ここで,ZZ’ (K)  は,次のとおり定義する。

( )

( )

=

Al

2

K

ZZ

K

Z

Z

EOBSIZE

は,

入力として

EOB

の連の長さを与える

EOB

拡張フィールドの大きさを返す処理手順とする。

CSIZE

は,順次符号化(

附属書 の F.1.1 及び F.1.3 参照)で定義された

SSSS

値に交流係数を写像させる

処理手順とする。


122

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 G.3  ハフマン符号による交流係数の段階符号化の処理手順


123

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 G.4  非ゼロ交流係数の段階符号化 

図 G.5  ゼロ係数の連の符号化 


124

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 G.6  ゼロ連及び非ゼロ連係数の符号化

G.1.2.3

逐次近似の第 走査以降の符号処理モデル  与えられた成分に関する逐次近似の第

2

走査以降の

ハフマン符号化構造は,その成分の最初の走査の符号化構造に類似する。

交流係数符号表の構造は,G.1.2.2 の構造と同じとする。ゼロ履歴(すなわち,値が±

1

であり,したが

って,前の走査で符号化されていない。

)をもつそれぞれの非ゼロの小数点移動された係数は,

RRRRSSSS

の形式の

8

ビットの連の長さ−振幅の合成値で定義される。

上位

4

ビット

RRRR

は,現在の係数と前に符号化された係数(又は,帯域の開始)との間のゼロ係数の

数を与える。ゼロ履歴をもたない係数(前の走査で符号化された非ゼロの値)の場合には,ゼロ係数の計

数はしない。下位

4

ビット

SSSS

は,ゼロでない係数のための振幅カテゴリを与える。与えられた成分の

SSSS

の値は,

1

だけとする。

連の長さ−振幅合成値は,ハフマン符号化され,それぞれのハフマン符号には次の付加的なビットが続

く。

(1)

  1

ビットで新しくゼロでない係数の正負の符号を符号化する。

0

のビットが負の符号を,

1

のビットが

正の符号を符号化する。

(2)

ゼロ履歴をもたないそれぞれの係数に関して,訂正の符号化に

1

ビットを用いる。

0

のビットが訂正

なしを意味し,

1

のビットは,

1

が係数の(正規化された)復号値に加えられることを意味する。

ゼロ履歴をもつゼロでない係数は,次に示す形の合成符号で符号化される。

HUFFCO (RRRRSSSS)

additional bit (rule 1)

correction bit (rule 2)

さらに,ゼロ連が

ZRL

又は

EOBn

符号で符号化される場合には,ゼロ連の中に含まれるゼロ履歴をもた


125

X 4301-1995 (ISO/IEC 10918-1 : 1994)

ないこれらの係数に,訂正ビットが上の規則(2)に従って付加される。

Encode_AC_Coefficients_SA

のハフマン符号化版に関して,

EOB

は最後に小数点移動された振幅

1

の係

数の帯域内の位置として定義される。振幅

1

の係数が存在しない場合,

EOB

は,ゼロとして定義される。

備考

 EOB

の定義は,ハフマン符号化の場合と算術符号化の場合とでは異なる。

図 G.7 及び G.8 で,

BE

は,ブロックの符号化開始時点でのバッファ訂正ビットの数とする。

BE

は,そ

れぞれの符号化再初期化間隔の開始時に,ゼロに初期化する。それぞれの符号化再初期化間隔の終了時に

は,残りのバッファビットが,最後の

EOBn

ハフマン符号及び関連する付加ビットに続くビット列に付加

される。

図 G.7 及び G.9 で,

BR

は,規則

 (2)

によってビット列に付加されるバッファ訂正ビットの数である。

BR

は,それぞれの

Encode_AC_Coefficients_SA

の開始時点においてゼロに設定する。それぞれの符号化再

初期化間隔の終了時には,残りのバッファビットが最後のハフマン符号及び関連する付加ビットに続くビ

ット列に付加される。


126

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 G.7  ハフマン符号化を用いた交流係数の逐次近似符号化


127

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 G.8  BE バッファビットのバッファからビット系列への転送 

図 G.9  BR バッファビットのバッファからビット系列への転送 

G.1.3

算術符号化を用いた段階符号化処理手順

G.1.3.1

算術符号化を用いた直流係数の段階符号化  与えられた成分の最初の走査は,附属書 の F.1.3.1

で規定する処理手順を用いて直流係数の値を符号化しなければならない。逐次近似ビット位置引数がゼロ

でない場合,係数の値は,符号化前に

附属書 で規定する小数点移動によって精度を低下させなければな

らない。

逐次近似を用いる後続の走査で,最下位有効ビットは,固定の確率推定値

0.5 (Qe

X’5A1D’, MPS

0)

用いた

2

値判定で符号化されなければならない。


128

X 4301-1995 (ISO/IEC 10918-1 : 1994)

G.1.3.2

算術符号化を用いた交流係数の段階符号化

DCT

係数の小数点移動の正規化及び係数の帯域へ

のグループ化を除いて,

逐次近似の最初の走査は,

F.1.4

で規定する順次符号化処理手順と同じとする。

Kmin

が帯域内の最初の交流係数索引の

Ss

と等しい場合,

図 F.4 に示す流れ図を適用する。その図中における

EOB decision

は,

 “end-of-block”

よりは,むしろ

 “end-of-band”

の意味となる。

Encode_AC_Coefficients_SA

(及び他のすべての交流係数の符号化処理手順)の算術符号化版で,

EOB

は,帯域内の最後のゼロでない

係数に続く位置として定義される。

備考

 EOB

の定義は,ハフマン符号化の場合と算術符号化の場合とでは異なる。

F.1.4

で定義する統計的モデルも,同様に適用する。このモデルに関して,

Kx

の既定値は,

5

とする。

Kx

のほかの値は,

DAC

マーカコード(

附属書 B)を用いて定義してもよい。

Kx

に関する次の計算は,

8

ビット精度の標本について,よい結果を与える。

Kx

Kmin

SRL (8

Se

Kmin) /4

帯域が索引

1

63

の場合,この表現は,

Kx

5

の既定値となる。

G.1.3.3

逐次近似の第 走査以降の符号化モデル  図 G.10 の処理手順

 “Encode_AC_Coefficients_SA”

は,

1

ビットずつ,帯域内の交流係数値の精度を増加させる。

成分の逐次近似の最初の走査と同様に,

EOB decision

は,帯域の最初及びゼロでないそれぞれの係数の

後で符号化される。

しかし,与えられた成分の直前の逐次近似の走査の

end-of-band

索引

EOBx

は,その成分内の前の走査で

符号化されたデータから知ることができ,現在の索引

K

EOBx

より小さい場合,この判定を省略する。

最初の走査で,帯域内での最後の係数がゼロでない場合も,

EOB

判定を省略する。判定

ZZ(K)

0

は,ゼ

ロ係数の連を復号する。復号器が処理手順のこの段階にある場合,少なくとも一つのゼロでない係数が符

号化する帯域内に残されている。

ZZ (K)

がゼロでない場合,その値を符号化するために

図 G.11 の処理手

順が続く。

図 G.10 及び図 G.11 における文脈の索引は,表 G.2G.1.3.3.1 参照)で定義される。大きさ

1

の係数の正

負符号は,固定の確率推定値

0.5 (Qe

X’5A1D’, MPS

0)

で符号化する。


129

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 G.10  算術符号化を用いた交流係数の符号化の場合の第 走査以降の逐次近似走査


130

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 G.11  第 走査以降の逐次近似走査の場合の非ゼロ係数符号化 

G.1.3.3.1

逐次近似の第 走査以降の統計的モデル  表 G.2 に示すとおり,後続の逐次近似の交流係数の

走査に関するそれぞれの統計的領域は,

189

の統計器の隣接する集合からなる。大きさ

1

の係数の正負符

号の符号化は,固定の確率推定値

0.5 (Qe

X’5A1D’, MPS

0)

で符号化する。

表 G.2  交流係数の逐次近似符号化の第 走査以降の統計的モデル

文脈索引

交流符号化

符号化判定

SE 3

× (K−1) K=EOB

S0 SE

+1 V=0

SS

固定推定値

正負符号

SC S0

+1 LSB

ZZ(K)

=1

G.2

DCT

の段階復号  附属書 の A.3.3 及び A.3.4 で規定する

IDCT

の計算及び逆量子化処理手順を段

階処理に適用する。

段階復号処理は,一つの走査内に最高

4

個のハフマン符号表又は算術符号の条件表を必要とする圧縮さ

れた画像データを伸長できなければならない。

重複を避けるため,段階復号処理に関する詳細な流れ図は,省略する。復号処理は,符号化流れ図に示

すそれぞれの段階での機能を反転し,かつ逆の順序で実行する。


131

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 H(規定)  可逆モード操作

この附属書では,可逆モードにおける次の符号化手順の機能を規定する。

(1)

ハフマン符号化を用いた可逆処理

(2)

算術符号化を用いた可逆処理

これらの符号化処理を H.1 に規定する。さらに,復号処理を H.2 に規定する。機能の規定は,これらの

符号化処理を構成する処理手順によって示す。

備考

この規定は,符号器及び復号器が,この附属書で規定する流れ図による手順に厳密に従うこと

強制するものではない。符号器及び復号器は,ここに規定する機能だけを満たせばよい。こ

の規定に従って考慮しなければならない基準は,ISO/IEC 10918-2 の適合性試験の 6.(符号器

用)又は 7.(復号器用)の要求条件だけとする。

順次可逆の符号化及び復号に提供する処理は,

DCT

を利用しない。

DCT

の直流係数について開発された

符号化モデルを利用した空間処理を用いる。しかし,このモデルは,選択可能な

1

次元及び

2

次元の予測

器の集合を組み合わせることによって拡張されており,垂直方向にインタリーブされたデータの場合,

1

次元水平予測器についての標本の順番が

DCT

型処理で用いられるものと異なる。

ハフマン符号化又は算術符号化のいずれかのエントロピー符号化を可逆符号化及び可逆復号の処理に用

いる。ハフマン符号表の構造は,入力データが

16

ビット精度まで許容されるように拡張する。算術符号化

の統計的モデルは,

2

次元形式に拡張する。

H.1

可逆符号器処理

H.1.1

可逆符号器制御処理手順  附属書 の E.1 に符号器制御処理手順を示す。これらの処理手順を可逆

符号器に適用する際のデータ単位は,

1

標本とする。

入力データ精度は,

1

標本当たり

2

16

ビットとする。入力データパスと入力データとで精度が異なる

場合,データは,常に入力データ経路の下位ビットから並べられなければならない。入力データは,符号

なしの整数として表され,符号化に先立ってレベルシフトされない。

符号器は,符号化再初期化間隔の制御処理手順(

附属書 の E.1.4 参照)で再初期化するとき,予測値

も初期値に再初期化する。算術符号化の場合,統計量も同様に再初期化する。

可逆処理の場合,符号化再初期化間隔は,

MCU

行の

MCU

の個数の整数倍でなければならない。

H.1.2

可逆符号化の符号化モデル

DCT

の直流係数の符号化について開発された符号化モデルを,

7

種類

1

次元及び

2

次元の予測器の組の中から選択できるように拡張する。予測器は,走査ヘッダ(

附属書 B

参照)の中で選択される。同じ予測器を,その走査のすべての成分について用いる。走査内のそれぞれの

成分は,その成分の近傍の標本値から得られる予測値を利用し,独立に符号化する。

H.1.2.1

予測  図 H.1 に予測で用いられる再生近傍標本の位置

  (a, b, c)

と,これから符号化される標本

x

との位置の間の関係を示す。


132

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 H.1  標本及び予測標本間の関係

Px

を予測並びに

Ra

Rb

及び

Rc

を現在の標本の左,真上及び斜め上の再生標本と定義する。

表 H.1 

示す予測器のうち,一つが走査ヘッダによって選択される。

表 H.1  可逆符号化の予測器

選択値

予測

0

予測なし(

附属書 参照)

1 Px

=Ra

2 Px

=Rb

3 Px

=Rc

4 Px

=Ra+Rb−Rc

5 Px

=Ra+ [(Rb−Rc) /2]

6 Px

=Rb+ [(Ra−Rc) /2]

7 Px

= (Ra+Rb) /2

選択値

0

は,階層型モード操作の差分符号化についてだけ使用する。選択値

1

2

及び

3

1

次元予測器

とし,選択値の

4

5

6

及び

7

2

次元予測器とする。

1

次元の水平方向予測器(標本値

Ra

予測)は,走査の開始の最初のラインと各々の符号化再初期化間隔

の始めの標本値に用いる。選択された予測器は,すべての他のラインに用いる。上のラインからの予測器

(標本値

Rb

予測)は,最初のラインを除いたそれぞれのラインの開始のとき用いる。最初のラインの始

まり及びそれぞれの符号化再初期化間隔の始まりで,予測値

2

P

1

↓を用いる。ここで

P

は,入力精度

とする。

小数点移動引数(

附属書 の A.4 参照)がゼロでなければ,最初のラインの始まり及びそれぞれの符号

化再初期化間隔の始まりの予測値は,

2

P

Pt

1

↓とする。ここで,

Pt

は,小数点移動引数の値とする。

それぞれの予測は,フル整数精度で計算する。さらに,入力精度限界を超えたアンダーフロー又はオー

バフローのクランプは,行わない。例えば,

Ra

及び

Rb

がともに

16

ビット精度の場合,それらの和は

17

ビット整数となる。それらの和が

2

で割られた後は(予測器

7

,予測は

16

ビット精度となる。

実行の簡単化のために,

表 H.1 の予測選択

5

及び

6

2

による除算は,整数値の算術右シフトによって

実行する。

予測値と入力との差分は,

2

16

↓のモジュロで計算する。復号器では,差分を復号し,

2

16

↓のモジ

ュロで予測値に加える。

H.1.2.2

モジュロ差分のハフマン符号化  附属書 で定義された直流係数についてのハフマン符号化処理

手順を

2

16

↓のモジュロ差分の符号化に使用する(

附属書 の A.5 参照)。表 F.1 及び表 F.6 の直流係数

符号化表に,一つの付加的エントリを拡張する。

SSSS

16

の後には,追加ビットを付加しない。


133

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 H.2  可逆ハフマン符号処理についての差分カテゴリ

SSSS

差分値

0 0

1

−1, 1

2

−3,−2, 2,3

3

−7∼−4, 4∼7

4

−15∼−8, 8∼15

5

−31∼−16, 16∼31

6

−63∼−32, 32∼63

7

−127∼−64, 64∼127

8

−255∼−128, 128∼255

9

−511∼−256, 256∼511

10

−1023∼−512, 512∼1023

11

−2047∼−1024, 1024∼2047

12

−4095∼−2048, 2048∼4095

13

−8191∼−4096, 4096∼8191

14

−16383∼−8192, 8192∼16383

15

−32767∼−16384, 16384∼32767

16 32768

H.1.2.3

モジュロ差分の算術符号化  直流係数の算術符号化モデル(附属書 の F.1.4.4.1 参照)で定義さ

れた統計的モデルを,左の標本に対する差分及び真上のラインに対する差分を条件とする

2

次元の形式に

一般化する。

H.1.2.3.1 2

次元統計的モデル

2

値判定は,同じ成分の真上及び真左の標本の符号化された差分によって

条件付けられる。直流係数の符号化のように,差分は,五つのカテゴリ,すなわち,ゼロ

 (0)

,小さな正

  (

S)

,小さな負値

  (

S)

,大きな正値

  (

L)

及び大きな負値

  (

L)

に分類される。二つの独立のカテ

ゴリを組み合わせて

25

の異なる条件状態ができる。

図 H.2 

2

次元の条件索引の配列を示す。

25

の条件

状態のそれぞれについて四つの

2

元判定に対する確率推定値を保存する。

走査及びそれぞれの符号化再初期化間隔の開始で真上のラインから導かれる条件は,それぞれの成分の

最初のラインに対してゼロに初期化する。それぞれのラインの開始のとき,条件を計算するために,左に

対する差分は,ゼロに初期化する。

図 H.2  次元統計的モデルについての 5×条件配列


134

X 4301-1995 (ISO/IEC 10918-1 : 1994)

H.1.2.3.2

直流係数 値判定木への統計器の割当て  可逆符号化に対するそれぞれの統計領域は,

158

の統計器の連続する集合で構成される。最初の

100

個の統計器は,文脈索引

S0

によって選択される四つ

の統計器の

25

個の集合によって構成される。

S0

の値は,

0

4

...

92

又は

96

の値を与える

 “L_Context (Da

Db)”

によって

Da

及び

Db

の差分条件分け(H.1.2.3.1 参照)に従って与えられる。

 “L_Context (Da

Db)”

よって与えられる

S0

に対する値は,

図 H.2 の配列から得られる。

残りの

58

個の統計器は二つの集合の

29

個の統計器

X1

...

X15

M2

...

M15

,から構成され,これ

らはカテゴリ判定の大きさ及び統計器の大きさを符号化するために用いる。

X1

の値は,

 “X1_Context (Db)”

によって,

Db

がゼロ,小さな正数又は小さな負数のカテゴリのときは

100

Db

が大きな正数又は大きな

負数のカテゴリのときは

129

が与えられる。

差分の符号化に用いられる

2

値判定木への統計器の割当ては,

表 H.3 のとおりとする。

表 H.3  可逆符号処理についての統計的モデル

文脈索引

符号化判定

S0

L_Context (Da, Db)

V

=0

SS S0

+1

正負符号

SP S0

+2 V>0 ならば Sz<1

SN S0

+3 V<0 ならば Sz<1

X1 X1_Context

(Db)  Sz

<2

X2 X1

+1 Sz<4

X3 X1

+2 Sz<8

X15 X1

+14 Sz<2↑15↓

M2 X2

+14 Sz<4 ならば絶対値ビット

M3 X3

+14 Sz<8 ならば絶対値ビット

M15 X15

+14 Sz<2↑15↓ならば絶対値ビット

H.1.2.3.3

既定値限界  条件カテゴリを決定するための限界,すなわち,

L

及び

U

は,

L

0

及び

U

1

初期値をもつ。

附属書 に示すとおり,その他の限界は,

DAC (Define-Arithmetic-Conditioning)

マーカ部

分列を用いて設定する。

H.1.2.3.4

統計的モデルの既定値  走査の始まり及び,各再初期化において,すべての統計器は,附属書

D

に示す既定の初期値に再初期化される。

H.2

可逆復号器手順  可逆復号器は,ハフマン復号又は算術復号を用いることができる。それらは,一

つの走査で最大四つまでの表を用いることができなければならない。可逆復号器は,

1

標本当たり

2

16

ビットのあらゆる入力精度の符号化された画像情報源を復号できなければならない。

H.2.1

可逆復号器制御処理手順  附属書 の E.2 に復号器制御処理手順を示す。これらの処理手順を可逆

復号器に適用する場合,データ単位は,

1

標本とする。

復号器が符号化再初期化間隔の制御処理手順(E.2.4 参照)で再初期化されたとき,予測値は,符号器

H.1.2.1 参照)で用いられている値と同じ値に再初期化する。算術符号化が用いられる場合は,統計量も

同様に再初期化する。

符号化再初期化間隔への制限は,H.1.1 による。

H.2.2

可逆復号の符号化モデル  H.1.2 に示す予測器の計算を,同様に可逆復号器処理手順に適用する。

可逆復号器では,差分が復号され,かつ出力を生成するために,それらを

2

16

↓のモジュロを予測値


135

X 4301-1995 (ISO/IEC 10918-1 : 1994)

に加える。可逆復号器は,小数点移動引数を解釈することができ,それがゼロでない場合,可逆復号器の

出力を

2

Pt

↓倍することができなければならない。

重複を避けるために,可逆復号器の流れ図は,省略する。


136

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 J(規定)  階層型モード操作

この附属書では,階層型モードについての符号化処理の機能規定を規定する。

階層型モードにおいて,それぞれの成分は,非差分フレーム内で符号化及び復号される。このようなフ

レームは,差分フレームのシーケンスの後に続けてもよい。非差分フレームは

附属書の F及び の処

理手順を用いて符号化及び復号されなければならない。差分フレームの処理手順は,この附属書で規定す

る。

DCT

を利用する処理を含む階層型符号化処理は,圧縮画像データ形式において,非差分で

DCT

を利用

する場合又は差分で

DCT

を利用する場合の,あらゆるフレームを符号処理する際に用いる

表 J.1 のうち,

一番上に番号付けをされた処理で定義する。可逆符号化のみを含む階層型符号化に対する符号処理は,非

差分フレームに対して用いられる処理で定義する。

表 J.1  階層型モードについての符号処理

処理

非差分フレーム規定

(1)

拡張順次 DCT,ハフマン符号化,8 ビット標本精度

附属書 F,処理 2

(2)

拡張順次 DCT,算術符号化,8 ビット標本精度

附属書 F,処理 3

(3)

拡張順次 DCT,ハフマン符号化,12 ビット標本精度

附属書 F,処理 4

(4)

拡張順次 DCT,算術符号化,12 ビット標本精度

附属書 F,処理 5

(5)

周波数選択だけ,ハフマン符号化,8 ビット標本精度

附属書 G,処理 1

(6)

周波数選択だけ,算術符号化,8 ビット標本精度

附属書 G,処理 2

(7)

完全段階処理,ハフマン符号化,8 ビット標本精度

附属書 G,処理 3

(8)

完全段階処理,算術符号化,8 ビット標本精度

附属書 G,処理 4

(9)

周波数選択だけ,ハフマン符号化,12 ビット標本精度

附属書 G,処理 5

(10)

周波数選択だけ,算術符号化,12 ビット標本精度

附属書 G,処理 6

(11)

完全段階処理,ハフマン符号化,12 ビット標本精度

附属書 G,処理 7

(12)

完全段階処理,算術符号化,12 ビット標本精度

附属書 G,処理 8

(13)

可逆,ハフマン符号化,2∼16 ビット

附属書 H,処理 1

(14)

可逆,算術符号化,2∼16 ビット

附属書 H,処理 2

階層型モードの構文法では,非差分フレームの前に

DHP

マーカ部分列を置く必要がある。それは

EXP

マーカ部分列及び最初の非差分フレームに続く差分フレームを含んでもよい。階層型モードにおけるフレ

ーム構造は,非階層型モードにおけるフレーム構造と同じとする。

画像内のすべての非差分フレームは,

DCT

を利用する処理又は可逆処理によって符号化されなければな

らない。基本処理で符号化された非差分フレームが算術符号化処理によって符号化されるフレームと同じ

画像内に発生する場合を除き,画像内のすべてのフレームは,ハフマンか算術のいずれか一つの同じエン

トロピー符号化処理手順を用いなければならない。

非差分フレームに

DCT

を利用する処理を用いる場合,成分の最後のフレームを除くすべての差分フレー

ムは,

DCT

を利用する処理で符号化しなければならない。各成分に対する最後の差分フレームは,差分可

逆処理を用いてもよい。

非差分フレームに可逆処理を用いる場合は,

すべての差分フレームに可逆処理を用いなければならない。

表 J.1 に示す処理のそれぞれに対して,J.1 で符号化処理を,J.2 で復号処理を規定する。

備考

この規定は,符号器及び復号器が,この附属書で規定する流れ図による手順に厳密に従うこと

強制するものではない。符号器及び復号器は,ここに規定する機能だけを満たせばよい。こ

の規定に従って考慮しなければならない基準は,ISO/IEC 10918-2 の適合性試験の 6.(符号器


137

X 4301-1995 (ISO/IEC 10918-1 : 1994)

用)又は 7.(復号器用)の要求条件だけとする。

階層型モードにおいて,各々の成分は,差分フレームのシーケンスに続く非差分フレームに符号化又は

復号される。非差分フレームには,

附属書の F及び で定義する処理手順を用いなければならない。

差分フレームの処理手順は,この附属書で定義する。

J.1

階層型符号化

J.1.1

画像符号化の階層型制御処理手順  階層型モードで用いる画像の符号化制御構造を図 J.1 に示す。

図 J.1  画像符号化の階層型制御処理手順

図 J.1 で,括弧内の手順を特定の階層型符号化シーケンスについては,それらを必要とするときに実行

しなければならない。

階層型モードでは,

define-hierarchical-process (DHP)

マーカ部分列を,最初の

start-of-frame

の前に,圧縮


138

X 4301-1995 (ISO/IEC 10918-1 : 1994)

画像データの中に配置しなければならない。

DHP

部分列は,復元(再生)された画像の画像成分の大きさ

を示すために用いる。

DHP

部分列の構文法は,

附属書 による。

階層型手順での各々の成分又は成分のグループの最初のフレームは,非差分フレームとして符号化しな

ければならない。差分フレームは,原入力成分(標本数が減少されることがある。

)及び参照成分(標本数

が増加されることがある。

)の間の

2

の補数差分を符号化するために用いなければならない。参照成分は,

階層型処理における一つ前のフレームによって生成された再生成分とする。差分又は非差分フレームにつ

いて,階層型処理における後続のフレームの参照フレームとして必要な場合,成分の再生を生成する。

解像度変換は,階層型処理の階層型フレームの間で実行してもよい。これらの変換は,標本減少フィル

タで原画像の一部又はすべての成分の空間解像度を削減する場合に用いる。参照成分の解像度が差分フレ

ームとしての成分入力と異なる場合,標本増加フィルタを,参照成分の空間解像度を増加させるために用

いなければならない。参照成分の標本数の増加が必要な場合には,

EXP

マーカ部分列を,

start-of-frame

前で,圧縮画像データに付加しなければならない。与えられたフレームの前に,複数の

EXP

マーカ部分列

を配置してはならない。

選択された符号化処理では,

start-of-frame

の前に配置することが許されている任意のマーカ部分列を,

非差分又は差分フレームの前に用いてもよい。

16

ビット入力精度(可逆符号器)では,差分フレームの入力である成分差分は,

2

16

↓のモジュロで

計算する(A.5 参照)

。再生成分差分から計算される再生成分も,

2

16

↓のモジュロで計算する。

階層型符号器処理で最初のフレームに

DCT

符号化処理を用いた場合は,各々の成分の最後のフレームを

除く階層型処理のすべてのフレームで,

附属書 若しくは附属書 で定義する

DCT

符号器処理か,又は

この附属書で定義する変形

DCT

符号器処理を用いなければならない。最後のフレームは,この附属書で定

義された変形可逆処理を用いてもよい。

階層型符号器処理の最初のフレームで可逆符号器処理を用いる場合は,階層型処理のすべてのフレーム

附属書 で定義する可逆符号器処理又はこの附属書で定義する変形可逆処理を用いなければならない。

J.1.1.1

標本減少フィルタ  標本数を減少した成分は,この規格で規定しない標本減少フィルタによって

生成する。このフィルタは,標本増加フィルタと整合が取れていることが望ましい。標本減少フィルタの

一例を K.5 に示す。

J.1.1.2

標本増加フィルタ  標本増加フィルタは,水平方向,垂直方向,又はその両方向に空間解像度を

2

倍に増加させる。

図 J.2 に示す双一次内挿を,標本増加フィルタとして使用する。

図 J.2  標本増加基準についての標本位置のブロック図

内挿値の計算方法は,次のとおりとする。

Px

 (Ra

Rb) /2

ここで,

Ra

及び

Rb

は低解像度の画像の隣接した位置

a

及び

b

の標本値とし,

Px

は内挿値とする。除算

は,切捨てを示し,丸め処理を行わない。標本増加画像の一番左の列は,低解像度画像の一番左の列と一

致する。標本増加画像の一番上の行は,低解像度画像の一番上の行と一致する。低解像度画像の右の列及


139

X 4301-1995 (ISO/IEC 10918-1 : 1994)

び一番下の行は,右の列の縁及び一番下の行の内挿に必要な値を与えるため繰り返す。標本数の増加は,

常にラインの長さ又は行の数を

2

倍する。

水平方向及び垂直方向の両方の拡大が実施される場合は,それらを順次に実施する。最初に水平方向の

拡大を実施し,次に垂直方向の拡大を実施する。

J.1.2

差分フレームの符号制御処理手順  附属書 のフレーム,走査,符号化再初期化間隔及び

MCU

ついての制御処理手順を,差分フレームが構成される差分フレーム,走査,符号化再初期化間隔及び

MCU

の符号化にも同様に適用する。差分フレームと,

附属書 F及び のフレームとは,符号処理モデルの

面でだけ異なる。

J.1.3

差分フレームの符号器符号化モデル  附属書 F及び で定義する符号化モデルを,

2

の補数差

分の符号化についても使用できるように変更する。

J.1.3.1

差分フレームの符号器 DCT 符号化モデルの変更  差分フレームに適用できるように,

DCT

符号

化モデルに二つの変更を行う。第一の変更では,差分入力の

FDCT

をレベルシフトなしに計算し,他の一

つでは,

DCT

の直流係数を予測なしに直接符号化する。

J.1.3.2

差分フレームの可逆符号化モデルの変更  可逆符号化モデルに一つの変更を行う。すなわち,差

分を予測なしに直接符号化する。走査ヘッダ内の予測選択引数は,ゼロに設定する。差分入力について適

用される小数点移動は,

附属書 による。

J.1.4

差分フレームのエントロピー符号器の変更

2

の補数差分の符号化には,交流係数のハフマン符号

化について,精度の

1

ビット拡張を必要とする。

表 F.1 及び表 F.7 の拡張を表 J.2 に示す。

表 J.2  交流係数振幅範囲表の変更

SSSS

交流係数

15

−32767...6384, 16384...32767

算術符号化モデルについては,差分フレームで必要となる精度が既に定義されている。

J.2

階層型復号

J.2.1

画像の復号の階層型制御処理手順  階層型モードで用いる画像の復号についての制御構造を図 J.3

に示す。


140

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 J.3  画像の復号の階層型制御処理手順 

マーカ解釈処理手順は,

SOF

マーカの前に配置してもよいマーカを復号し,

SOF

又は

EOI

マーカを見付

けるまで復号を続けなければならない。

DHP

マーカが最初のフレームの前にあった場合は,フラグを

“hierarchical?”

の判断ポイントで階層型復号器を選択するように設定する。

DHP

マーカ(任意の

SOF

マー

カの前に置かれなければならない。

)及び

EXP

マーカ(参照成分の解像度変換を要求する任意の差分

SOF

の前に置かれなければならない。)に付加して,

SOF

の前に置かれるその他の任意のマーカは,圧縮画像

データの復号に要求される範囲と解釈する。

差分

SOF

マーカが見付かった場合には,差分フレームパスを続ける。マーカ解釈処理手順中に

EXP

ーカを検出した場合には,フレームの参照成分を,

EXP

部分列内の引数の要求どおりに標本数を増加する。

J.1.1.2

で規定する標本増加処理手順が続けられなければならない。

Decode_differential_frame

処 理 手 順 は , 成 分 差 分 の 設 定 を 生 成 す る 。 こ れ ら の 成 分 差 分 は ,

“Reconstruct_components”

処理手順で標本数が増加された参照成分に,

2

16

↓のモジュロで加算しなけれ


141

X 4301-1995 (ISO/IEC 10918-1 : 1994)

ばならない。この操作は,階層型処理における次のフレームで必要になる場合に使用する参照成分の新し

い組を生成する。

J.2.2

差分フレームの復号制御処理手順  附属書 のフレーム,走査,符号化再初期化間隔及び

MCU

ついての制御処理手順を,同様に,差分フレームがそれらによって構成される差分フレーム,走査,符号

化再初期化間隔及び

MCU

の復号にも適用する。差分フレームと,

附属書 F及び のフレームとは,

復号モデルの面でだけ異なる。

J.2.3

差分フレームの復号器符号化モデル  附属書 F及び で定義する復号モデルを,

2

の補数差分

の復号についても用いられるように変更する。

J.2.3.1

差分フレームの復号器 DCT 符号化モデルの変更  差分フレームに適用できるように復号器

DCT

符号化モデルに二つの変更を行う。第

1

の変更では,差分出力の

IDCT

をレベルシフトなしに計算し,他

の一つでは,

DCT

の直流係数を予測なしに直接復号する。

J.2.3.2

差分フレームについての可逆復号モデルの変更  可逆復号モデルに一つの変更を行う。差分を予

測なしに直接復号する。走査ヘッダ内の小数点移動引数がゼロでない場合,

附属書 で定義する小数点移

動を差分出力にも適用しなければならない。

J.2.4

差分フレームのエントロピー復号器の変更

2

の補数差分の復号には,交流係数のハフマン符号化

について精度の

1

ビット拡張を必要とする。これは,J.1.4 による。算術符号化モデルについては,差分フ

レームで必要となる精度について既に定義されている。


142

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 K(参考)  例と指針

この附属書は,各種の表,処理の例,その他の指針を提供する。

K.1

輝度と色差成分に対する量子化表  表 K.1 及び K.2 に量子化表の二つの例を示す。これらの量子化

表は,視覚心理学的な知覚限度に基づくものであって,輝度及び色差成分を水平方向に

2 : 1

に標本減少処

理したものを用いて経験的に求めたものである。これらの表は,例として挙げただけであって,ある種の

応用にとっては必ずしも適当でない。これらの量子化幅は,

図 13 に示す輝度及び色差各

8

ビットの画像形

式に対してよい結果を与える。これらの量子化幅は,

附属書 の A.3.3 で定義する

DCT

正規化に対して適

切な値となる。

表 K.1  輝度量子化表

16 11 10 16 24 40 51 61

12 12 14 19 26 58 60 55

14 13 16 24 40 57 69 56

14 17 22 29 51 87 80 62

18 22 37 56 68 109

103 77

24 35 55 64 81 104

113 92

49 64 78 87 103

121

120

101

72 92 95 98 112

100

103 99

表 K.2  色差量子化表

17 18 24 47 99 99 99 99

18 21 26 66 99 99 99 99

24 26 56 99 99 99 99 99

47 66 99 99 99 99 99 99

99 99 99 99 99 99 99 99

99 99 99 99 99 99 99 99

99 99 99 99 99 99 99 99

99 99 99 99 99 99 99 99

これらの量子化幅を

2

で割った値を用いれば,ほとんど原画像と区別がつかない再生画像を得ることが

できる。

K.2

ハフマン符号表を規定するための表の生成処理手順  収集された統計的性質から二つの段階を経て

ハフマン符号表を生成する。第

1

段階では,ハフマン符号表の生成規則に合わせた形で,符号化する値及

び符号の長さの表を生成する。第

2

段階では,符号化するシンボル及び符号の長さの表からハフマン符号

表を生成する。

この第

1

段階は,ハフマン符号表を符号化する画像に適応させる場合だけに必要とし,符号器で実行す

る。この段階においては,符号化するシンボルとこれに対応するハフマン符号の符号長(ビット数)との

関係を示す表を生成するために統計的性質を用いる。この表は,符号長順に並び替える。

最大

256

個のシンボルに対してハフマン符号表を生成する手順を

図 K.1 に示す。この手順に用いる三つ

の行列

 (vector)

を次のとおり定義する。

FREQ (V)

  シンボル

V

の発生頻度


143

X 4301-1995 (ISO/IEC 10918-1 : 1994)

CODESIZE (V)

  シンボル

V

の符号長

OTHERS (V)

  符号木の現在の分岐におけるすべてのシンボルの連鎖の中での後続のシンボルの索

ここで,

V

は,

0

256

の値をとる。

この処理手順を始める前に,

FREQ

の値を

V

0

255

に対して収集し,

V

256

に対する

FREQ

は,一

つの符号を確保するために

1

に設定する。使用しないシンボルに対しては,

FREQ

0

とする。さらに,

CODESIZE

の値はすべてゼロとし,

OTHERS

の値は索引の連鎖を終了させる値として−

1

を書き込む。一

つの符号を確保することによって,すべて

 “1”

ットから構成される符号が生成されることを防ぐ。

FREQ (V)

の中で最も小さい値のシンボル

V

を見つける操作は,ゼロより大きな値をもち,最も小さな

値をもつ

FREQ (V)

の中の最も大きな

V

を見つける処理となる。


144

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 K.1  ハフマン符号長を求める処理手順

“Find V1 for least value of FREQ (V1)

0”

は,同一の発生頻度をもった

V1

が複数存在する場合には,常

V1

の値が最も大きなものを選択する。この処理によって確保した符号に最も符号長の長い符号が設定

されることを保証する。

各シンボルに対する符号長を求めた後に,

図 K.2 の処理手順によって各符号長をもつ符号の個数を算出


145

X 4301-1995 (ISO/IEC 10918-1 : 1994)

する。各符号長の計数は,表

BITS

に入れる。この処理手順を始める前に,

BITS

をすべてゼロに設定する。

この処理手順では,各シンボルの発生確率が十分に高く,

32

ビット以上の符号長が発生しないことを仮定

する。最後の

 “Adjust_BITS”

処理が完了するまでは,

BITS

は,

附属書 の表指定で要求する

16

以上のエ

ントリをもつ場合がある。

図 K.2  各符号長をもつ符号の個数を求める処理手順

図 K.3 

16

ビット以上の符号長が起きないように

BITS

を修正する手順を示す。最も長いハフマン符号

に対してシンボルは,

二つの対となるので,この符号長の符号から一度に二つのシンボルが取り除かれる。

この二つのシンボルの符号の最後の

1

ビットを除いた符号を二つのシンボルの中の一つに割り当てる。そ

して,この二つのシンボルの符号より

1

ビット短い符号長より短いものの中から,最も符号長が長く,か

BITS

がゼロでない符号長の符号語を,

1

ビット長い二つの符号語に置き換える。

BITS

の表を最大の符

号長である

16

ビットに抑えた後,最後に確保されていた符号を符号長の計数の表から外す。


146

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 K.3  最大符号長を 16 ビットに抑える処理手順 

図 K.4 に示す処理によって,符号長の大きさの順に入力値(シンボルに与えた

0

255

の値)を並べ変

える。すなわち,符号長が短いほうから長いほうに並べた入力値をもつ

HUFFVAL

が得られる。


147

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 K.4  符号長順に入力値を並び変える手順 

こうして得られた符号長表

 (BITS)

及び入力値表

 (HUFFVAL)

を,ハフマン符号表の生成に用いる。こ

の処理手順は,

附属書 による。

K.3 8

ビット精度の輝度及び色差に対する典型的なハフマン符号表  ハフマン符号表指定の構文法は,

B.2.4.2

による。


148

X 4301-1995 (ISO/IEC 10918-1 : 1994)

K.3.1

直流係数差分に対する典型的なハフマン符号表  表 K.3 及び表 K.4 は,

8

ビット精度のビデオ画像

の平均的な統計的性質から求めた直流係数差分のハフマン符号表を示す。

表 K.3 は,輝度成分に適合し,

表 K.4 は色差成分に適合する。この規格では,既定のハフマン符号表は,規定しないが,これらのハフマ

ン符号表を多くの応用分野に適用してよい。

表 K.3  輝度の直流係数差分に対するハフマン符号表

カテゴリ

符号長

符号語

0 2

00

1 3

010

2 3

011

3 3

100

4 3

101

5 3

110

6 4

1110

7 5

11110

8 6

111110

9 7

1111110

10 8

11111110

11 9

111111110

表 K.4  色差の直流係数差分に対するハフマン符号表

カテゴリ

符号長

符号語

0 2

00

1 2

01

2 2

10

3 3

110

4 4

1110

5 5

11110

6 6

111110

7 7

1111110

8 8

11111110

9 9

111111110

10 10

1111111110

11 11

11111111110

K.3.2

交流係数に対する典型的なハフマン符号表  表 K.5 及び表 K.6 は,

8

ビット精度のビデオ画像の平

均的な統計的性質から求めた交流係数のハフマン符号表を示す。

表 K.5 は輝度成分に適合し,表 K.6 は色

差成分に適合する。この規格では,既定のハフマン符号表の設定は,規定しないが,これらのハフマン符

号表を多くの応用分野に適用してよい。


149

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 K.5  輝度の交流係数に対するハフマン符号表

連/大きさ

符号長

符号語

  0/0

(EOB)  4

  1010

  0/1

2

  00

  0/2

2

  01

  0/3

3

  100

  0/4

4

  1011

  0/5

5

  11010

  0/6

7

  1111000

  0/7

8

  11111000

  0/8

10

  1111110110

  0/9

16

  1111111110000010

  0/A

16

  1111111110000011

  1/1

4

  1100

  1/2

5

  11011

  1/3

7

  1111001

  1/4

9

  111110110

  1/5

11

  11111110110

  1/6

16

  1111111110000100

  1/7

16

  1111111110000101

  1/8

16

  1111111110000110

  1/9

16

  1111111110000111

  1/A

16

  1111111110001000

  2/1

5

  11100

  2/2

8

  11111001

  2/3

10

  1111110111

  2/4

12

  111111110100

  2/5

16

  1111111110001001

  2/6

16

  1111111110001010

  2/7

16

  1111111110001011

  2/8

16

  1111111110001100

  2/9

16

  1111111110001101

  2/A

16

  1111111110001110

  3/1

6

  111010

  3/2

9

  111110111

  3/3

12

  111111110101

  3/4

16

  1111111110001111

  3/5

16

  1111111110010000

  3/6

16

  1111111110010001

  3/7

16

  1111111110010010

  3/8

16

  1111111110010011

  3/9

16

  1111111110010100

  3/A

16

  1111111110010101

  4/1

6

  111011

  4/2

10

  1111111000

  4/3

16

  1111111110010110

  4/4

16

  1111111110010111

  4/5

16

  1111111110011000

  4/6

16

  1111111110011001

  4/7

16

  1111111110011010

  4/8

16

  1111111110011011


150

X 4301-1995 (ISO/IEC 10918-1 : 1994)

連/大きさ

符号長

符号語

  4/9

16

  1111111110011100

  4/A

16

  1111111110011101

  5/1

7

  1111010

  5/2

11

  11111110111

  5/3

16

  1111111110011110

  5/4

16

  1111111110011111

  5/5

16

  1111111110100000

  5/6

16

  1111111110100001

  5/7

16

  1111111110100010

  5/8

16

  1111111110100011

  5/9

16

  1111111110100100

  5/A

16

  1111111110100101

  6/1

7

  1111011

  6/2

12

  111111110110

  6/3

16

  1111111110100110

  6/4

16

  1111111110100111

  6/5

16

  1111111110101000

  6/6

16

  1111111110101001

  6/7

16

  1111111110101010

  6/8

16

  1111111110101011

  6/9

16

  1111111110101100

  6/A

16

  1111111110101101

  7/1

8

  11111010

  7/2

12

  111111110111

  7/3

16

  1111111110101110

  7/4

16

  1111111110101111

  7/5

16

  1111111110110000

  7/6

16

  1111111110110001

  7/7

16

  1111111110110010

  7/8

16

  1111111110110011

  7/9

16

  1111111110110100

  7/A

16

  1111111110110101

  8/1

9

  111111000

  8/2

15

  111111111000000

  8/3

16

  1111111110110110

  8/4

16

  1111111110110111

  8/5

16

  1111111110111000

  8/6

16

  1111111110111001

  8/7

16

  1111111110111010

  8/8

16

  1111111110111011

  8/9

16

  1111111110111100

  8/A

16

  1111111110111101

  9/1

9

  111111001

  9/2

16

  1111111110111110

  9/3

16

  1111111110111111

  9/4

16

  1111111111000000

  9/5

16

  1111111111000001

  9/6

16

  1111111111000010

  9/7

16

  1111111111000011

  9/8

16

  1111111111000100

  9/9

16

  1111111111000101


151

X 4301-1995 (ISO/IEC 10918-1 : 1994)

連/大きさ

符号長

符号語

  9/A

16

  1111111111000110

  A/1

9

  111111010

  A/2

16

  1111111111000111

  A/3

16

  1111111111001000

  A/4

16

  1111111111001001

  A/5

16

  1111111111001010

  A/6

16

  1111111111001011

  A/7

16

  1111111111001100

  A/8

16

  1111111111001101

  A/9

16

  1111111111001110

  A/A

16

  1111111111001111

 B/1

10

  1111111001

 B/2

16

  1111111111010000

 B/3

16

  1111111111010001

 B/4

16

  1111111111010010

 B/5

16

  1111111111010011

 B/6

16

  1111111111010100

 B/7

16

  1111111111010101

 B/8

16

  1111111111010110

 B/9

16

  1111111111010111

 B/A

16

  1111111111011000

 C/1

10

  1111111010

 C/2

16

  1111111111011001

 C/3

16

  1111111111011010

 C/4

16

  1111111111011011

 C/5

16

  1111111111011100

 C/6

16

  1111111111011101

 C/7

16

  1111111111011110

 C/8

16

  1111111111011111

 C/9

16

  1111111111100000

 C/A

16

  1111111111100001

 D/1

11

  11111111000

 D/2

16

  1111111111100010

 D/3

16

  1111111111100011

 D/4

16

  1111111111100100

 D/5

16

  1111111111100101

 D/6

16

  1111111111100110

 D/7

16

  1111111111100111

 D/8

16

  1111111111101000

 D/9

16

  1111111111101001

 D/A

16

  1111111111101010

 E/1

16

  1111111111101011

 E/2

16

  1111111111101100

 E/3

16

  1111111111101101

 E/4

16

  1111111111101110

 E/5

16

  1111111111101111

 E/6

16

  1111111111110000

 E/7

16

  1111111111110001

 E/8

16

  1111111111110010

 E/9

16

  1111111111110011

 E/A

16

  1111111111110100


152

X 4301-1995 (ISO/IEC 10918-1 : 1994)

連/大きさ

符号長

符号語

 F/0

(ZRL) 11

  11111111001

 F/1

16

  1111111111110101

 F/2

16

  1111111111110110

 F/3

16

  1111111111110111

 F/4

16

  1111111111111000

 F/5

16

  1111111111111001

 F/6

16

  1111111111111010

 F/7

16

  1111111111111011

 F/8

16

  1111111111111100

 F/9

16

  1111111111111101

 F/A

16

  1111111111111110


153

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 K.6  色差の交流係数に対するハフマン符号表

連/大きさ

符号長

符号語

  0/0

(EOB)  2

  00

  0/1

2

  01

  0/2

3

  100

  0/3

4

  1010

  0/4

5

  11000

  0/5

5

  11001

  0/6

6

  111000

  0/7

7

  1111000

  0/8

9

  111110100

  0/9

10

  1111110110

  0/A

12

  111111110100

  1/1

4

  1011

  1/2

6

  111001

  1/3

8

  11110110

  1/4

9

  111110101

  1/5

11

  11111110110

  1/6

12

  111111110101

  1/7

16

  1111111110001000

  1/8

16

  1111111110001001

  1/9

16

  1111111110001010

  1/A

16

  1111111110001011

  2/1

5

  11010

  2/2

8

  11110111

  2/3

10

  1111110111

  2/4

12

  111111110110

  2/5

15

  111111111000010

  2/6

16

  1111111110001100

  2/7

16

  1111111110001101

  2/8

16

  1111111110001110

  2/9

16

  1111111110001111

  2/A

16

  1111111110010000

  3/1

5

  11011

  3/2

8

  11111000

  3/3

10

  1111111000

  3/4

12

  111111110111

  5/5

16

  1111111110010001

  3/6

16

  1111111110010010

  3/7

16

  1111111110010011

  3/8

16

  1111111110010100

  3/9

16

  1111111110010101

  3/A

16

  1111111110010110

  4/1

6

  111010

  4/2

9

  111110110

  4/3

16

  1111111110010111

  4/4

16

  1111111110011000

  4/5

16

  1111111110011001

  4/6

16

  1111111110011010

  4/7

16

  1111111110011011

  4/8

16

  1111111110011100


154

X 4301-1995 (ISO/IEC 10918-1 : 1994)

連/大きさ

符号長

符号語

  4/9

16

  1111111110011101

  4/A

16

  1111111110011110

  5/1

6

  111011

  5/2

10

  1111111001

  5/3

16

  1111111110011111

  5/4

16

  1111111110100000

  5/5

16

  1111111110100001

  5/6

16

  1111111110100010

  5/7

16

  1111111110100011

  5/8

16

  1111111110100100

  5/9

16

  1111111110100101

  5/A

16

  1111111110100110

  6/1

7

  1111001

  6/2

11

  1111111011

  6/3

16

  1111111110100111

  6/4

16

  1111111110101000

  6/5

16

  1111111110101001

  6/6

16

  1111111110101010

  6/7

16

  1111111110101011

  6/8

16

  1111111110101100

  6/9

16

  1111111110101101

  6/A

16

  1111111110101110

  7/1

7

  1111010

  7/2

11

  11111111000

  7/3

16

  1111111110101111

  7/4

16

  1111111110110000

  7/5

16

  1111111110110001

  7/6

16

  1111111110110010

  7/7

16

  1111111110110011

  7/8

16

  1111111110110100

  7/9

16

  1111111110110101

  7/A

16

  1111111110110110

  8/1

8

  11111001

  8/2

16

  1111111110110111

  8/3

16

  1111111110111000

  8/4

16

  1111111110111001

  8/5

16

  1111111110111010

  8/6

16

  1111111110111011

  8/7

16

  1111111110111100

  8/8

16

  1111111110111101

  8/9

16

  1111111110111110

  8/A

16

  1111111110111111

  9/1

9

  111110111

  9/2

16

  1111111111000000

  9/3

16

  1111111111000001

  9/4

16

  1111111111000010

  9/5

16

  1111111111000011

  9/6

16

  1111111111000100

  9/7

16

  1111111111000101

  9/8

16

  1111111111000110

  9/9

16

  1111111111000111


155

X 4301-1995 (ISO/IEC 10918-1 : 1994)

連/大きさ

符号長

符号語

  9/A

16

  1111111111001000

  A/1

9

  111111000

  A/2

16

  1111111111001001

  A/3

16

  1111111111001010

  A/4

16

  1111111111001011

  A/5

16

  1111111111001100

  A/6

16

  1111111111001101

  A/7

16

  1111111111001110

  A/8

16

  1111111111001111

  A/9

16

  1111111111010000

  A/A

16

  1111111111010001

  B/1

9

  111111001

  B/2

16

  1111111111010010

  B/3

16

  1111111111010011

  B/4

16

  1111111111010100

  B/5

16

  1111111111010101

  B/6

16

  1111111111010110

  B/7

16

  1111111111010111

  B/8

16

  1111111111011000

  B/9

16

  1111111111011001

  B/A

16

  1111111111011010

  C/1

9

  111111010

  C/2

16

  1111111111011011

  C/3

16

  1111111111011100

  C/4

16

  1111111111011101

  C/5

16

  1111111111011110

  C/6

16

  1111111111011111

  C/7

16

  1111111111100000

  C/8

16

  1111111111100001

  C/9

16

  1111111111100010

  C/A

16

  1111111111100011

  D/1

11

  11111111001

  D/2

16

  1111111111100100

  D/3

16

  1111111111100101

  D/4

16

  1111111111100110

  D/5

16

  1111111111100111

  D/6

16

  1111111111101000

  D/7

16

  1111111111101001

  D/8

16

  1111111111101010

  D/9

16

  1111111111101011

  D/A

16

  1111111111101100

  E/1

14

  11111111100000

  E/2

16

  1111111111101101

  E/3

16

  1111111111101110

  E/4

16

  1111111111101111

  E/5

16

  1111111111110000

  E/6

16

  1111111111110001

  E/7

16

  1111111111110010

  E/8

16

  1111111111110011

  E/9

16

  1111111111110100

  E/A

16

  1111111111110101


156

X 4301-1995 (ISO/IEC 10918-1 : 1994)

連/大きさ

符号長

符号語

  F/0

(ZRL)  10

  1111111010

  F/1

15

  111111111000011

  F/2

16

  1111111111110110

  F/3

16

  1111111111110111

  F/4

16

  1111111111111000

  F/5

16

  1111111111111001

  F/6

16

  1111111111111010

  F/7

16

  1111111111111011

  F/8

16

  1111111111111100

  F/9

16

  1111111111111101

  F/A

16

  1111111111111110

K.3.3

ハフマン符号表の例

K.3.3.1

直流係数差分符号化に対する典型的なハフマン符号表  直流係数成分の符号化に対する典型的

なハフマン符号表を K.3.1 に示す。これらのハフマン符号表は,次のとおりとする。

表 K.3(輝度直流係数)に対して,符号長の表を規定する

16

バイトは,次のとおりとする。

X’00 01 05 01 01 01 01 01 01 00 00 00 00 00 00 00’

この表の後に続く入力値の並びは,次のようになる。

X’00 01 02 03 04 05 06 07 08 09 0A 0B’

表 K.4(色差直流係数)に対して,符号長の表を指定する

16

バイトは,次のとおりとする。

X’00 03 01 01 01 01 01 01 01 01 01 00 00 00 00 00’

この表の後に続く入力値の並びは,次のとおりとする。

X’00 01 02 03 04 05 06 07 08 09 0A 0B’

K.3.3.2

交流係数符号化に対する典型的なハフマン符号表  交流係数成分の符号化に対する典型的なハ

フマン符号表を K.3.2 に示す。これらのハフマン符号表は,次のとおりとする。

表 K.5(輝度交流係数)に対して,符号長の表を指定する

16

バイトは,次のとおりとする。

X’00 02 01 03 03 02 04 03 05 05 04 04 00 00 01 7D’

この表の後に続く入力値の並びは,次のようになる。

X’01

02

03 00

04

11

05

12

21

31

41

06

13

51

61

07

22

71

14 32

81

91

A1

08

23

42

B1

C1

15

52

D1

F0

24

33

62 72

82

09

0A

16

17

18

19

1A

25

26

27

28

29

2A

34 35

36

37

38

39

3A

43

44

45

46

47

48

49

4A

53

54 55

56

57

58

59

5A

63

64

65

66

67

68

69

6A

73

74 75

76

77

78

79

7A

83

84

85

86

87

88

89

8A

92

93 94

95

96

97

98

99

9A A2

A3

A4

A5

A6

A7

A8

A9

AA B2

B3

B4

B5

B6

B7

B8

B9

BA

C2

C3

C4

C5

C6

C7

C8 C9

CA D2

D3

D4

D5

D6

D7

D8

D9

DA

E1

E2

E3

E4

E5 E6

E7

E8

E9

EA

F1

F2

F3

F4

F5

F6

F7

F8

F9

FA’

表 K.6(色差交流係数)に対して,符号長の表を規定する

16

バイトは,次のとおりとする。

X’00 02 01 02 04 04 03 04 07 05 04 04 00 01 02 77’

この表の後に続く入力値の並びは,次のとおりとする。


157

X 4301-1995 (ISO/IEC 10918-1 : 1994)

X’00

01

02

03

11 04

05

21

31

06

12

41

51

07

61

71

13

22

32

81

08 14

42

91

A1

B1

C1

09

23

33

52

F0

15

62

72

D1

0A 16

24

34

E1

25

F1

17

18

19

1A

26

27

28

29

2A

35 36

37

38

39

3A

43

44

45

46

47

48

49

4A

53

54

55 56

57

58

59

5A

63

64

65

66

67

68

69

6A

73

74

75 76

77

78

79

7A

82

83

84

85

86

87

88

89

8A

92

93 94

95

96

97

98

99

9A A2

A3

A4

A5

A6

A7

A8

A9

AA B2

B3

B4

B5

B6

B7

B8

B9

BA

C2

C3

C4

C5

C6

C7

C8 C9

CA D2

D3

D4

D5

D6

D7

D8 D9

DA

E2

E3

E4

E5

E6 E7

E8

E9

EA

F2

F3

F4

F5

F6

F7

F8

F9

FA’

K.4

算術符号化に関する追加情報

K.4.1

算術符号化用の少数データの試験列

16

進数で示された次の

256

ビットの試験列は,多くの符号

器及び復号器を試験するために用いる。

X’00020051 000000C0  0352872A AAAAAAAA 82C02000 FCD79EF6 74EAABF7 697EE74C’

表 K.7 及び K.8 は,算術符号器及び復号器の動作に対するシンボルごとの表を示す。これらの表では,

事象カウンタ

EC

が最初に示され,これに続いてその事象を符号化又は復号するのに用いる

Qe

の値が示さ

れる。その後に符号化(又は復号)される判定

D

の値が示される。

MPS

の列は,

MPS

0

1

かを示し,

その後に

CE

CX

の列において)が続く場合は,その判定を符号化又は復号するときに

MPS/LPS

の条件

付き交換が発生する(

図 D.3D.4 及び D.17 参照)。

A

及び

C

レジスタの内容は,その事象が符号化又は

復号される前の値とする。

ST

は,けた上げ伝ぱ(播)の結果を待っている間の符号器内における

X’FF’

イトのスタック数とする。

A

レジスタの値は,必ず

X’7FFF’

より大きい(初期値は

X’10000’

とする。

符号器試験において,一つ前の事象の符号化の間に符号バイトが完了した場合には,符号バイト

 (B)

表に示される。付加的なバイトが続く場合には,これらも,一つ前の事象の符号化の間に完了する。

Bx

列にバイトが示されている場合には,列

B

の一つ前のバイトは,けた上げの伝ぱ(播)によって修正され

る。

復号器において,事象

EC

の一つ前に符号レジスタの中に符号バイトがある場合,その符号バイトが示

される。

このファイルでは,符号ビット数は

240

とし,最後のデータを

C

レジスタから出力させるためのオーバ

ヘッドを含む。マーカ

X’FFD9’

が付加されている場合には,合計

256

ビットが出力される。符号器から出

力する実際の圧縮データ系列は,

16

進数で次のとおりとする。

X’655B5144 F7969D51  7855BFFF 00FC5184 C7CEF939 00287D46 708ECBC0 F6FFD900’


158

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 K.7  符号器試験列

EC D

MPS

CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

ST

Bx B

1 0 0

5A1D  0000

00000000 11

0

2 0 0  CE  5A1D A5E3

00000000 11

0

3 0 0

2586  B43A

0000978C 10

0

4 0 0

2586 8EB4

0000978C

10

0

5 0 0

1114  D25C

00012F18  9 0

6 0 0

1114  C148

00012F18  9 0

7 0 0

1114  B034

00012F18  9 0

8 0 0

1114  9F20

00012F18  9 0

9 0 0

1114  8E0C

00012F18  9 0

10 0  0

080B  F9F0 00025E30  8  0

11 0 0

080B  F1E5

00025E30  8  0

12 0  0

080B  E9DA

00025E30  8  0

13 0  0

080B  E1CF

00025E30  8  0

14 0  0

080B  D9C4

00025E30  8  0

15 1  0

080B  D1B9

00025E30  8  0

16 0  0

17B9  80B0

00327DE0  4  0

17 0  0

1182  D1EE

0064FBC0

3  0

18 0  0

1182  C06C

0064FBC0

3  0

19 0  0

1182  AEEA

0064FBC0

3  0

20 0  0

1182  9D68

0064FBC0

3  0

21 0  0

1182  8BE6

0064FBC0

3  0

22 0  0

0CEF  F4C8

00C9F780  2  0

23 0  0

0CEF  E7D9

00C9F780  2  0

24 0 0

0CEF DAEA

00C9F780  2  0

25 0  0

0CEF  CDFB

00C9F780  2  0

26 1  0

OCEF  C10C

00C9F780  2  0

27 0  0

1518  CEF0

000AB9D0

6  0

65

28 1  0

1518  B9D8

000FG9D0

6  0

29 0 0

1AA9 A8C0

005AF480 3 0

30 0  0

1AA9  8E17 005AF480  3  0

31 0  0

174E  E6DC

00B5E900  2  0

32 1  0

174E  CF8E

00B5E900  2  0

33 0 0

1AA9 BA70

00050A00 7 0    5B

34 0  0

1AA9  9FC7

00050A00  7  0

35 0  0

1AA9  851E 00050A00  7  0

36 0  0

174E  D4EA

000A1400  6  0

37 0  0

174E  BD9C

000A1400  6  0

38 0  0

174E  A64E

000A1400  6  0

39 0  0

174E  8F00 000A1400  6  0

40 0  0

1424  EF64

00142800  5  0

41 0  0

1424  DB40

00142800  5  0

42 0  0

1424  C71C

00142800  5  0

43 0  0

1424  B2F8

00142800  5  0

44 0  0

1424  9ED4

00142800  5  0

45 0  0

1424  8AB0

00142800  5  0

46 0  0

119C  ED18

00285000  4  0

47 0  0

119C  DB7C

00285000  4  0

48 0 0

119C C9E0

00285000 4 0


159

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS

CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

ST

Bx B

49 0  0

119C  B844

00285000  4  0

50 0  0

119C  A6A8

00285000  4  0

51 0  0

119C  950C

00285000  4  0

52 0  0

119C  8370 00285000  4  0

53 0  0

0F6B  E3A8

0050A000  3  0

54 0  0

0F6B  D43D

0050A000  3  0

55 0  0

0F6B  C4D2

0050A000  3  0

56 0  0

0F6B  B567

0050A000  3  0

57 1  0

0F6B  A5FC

0050A000  3  0

58 1  0

1424  F6B0

00036910  7  0

51

59 0  0

1AA9  A120

00225CE0  4  0

60 0  0

1AA9  8677 00225CE0  4  0

61 0  0

174E  D79C

0044B9C0  3  0

62 0  0

174E  C04E

0044B9C0  3  0

63 0  0

174E  A900

0044B9C0  3  0

64

0 0

174E 91B2

0044B9C0 3 0

65 0  0

1424  F4C8

00897380  2  0

66 0  0

1424  E0A4

00897380  2  0

67 0  0

1424  CC80

00897380  2  0

68 0  0

1424  B85C

00897380  2  0

69 0  0

1424  A438

00897380  2  0

70 0  0

1424  9014 00897380  2  0

71 1  0

119C  F7E0

0112E700  1  0

72

1 0

1424 8CE0

001E6A20 6 0   44

73 0  0

1AA9  A120

00F716E0  3  0

74 1  0

1AA9  8677 00F716E0  3  0

75 0  0

2516  D548

00041570  8  0

F7

76 1  0

2516  B032

00041570  8  0

77 0  0

299A  9458 00128230  6  0

78 0  0

2516  D57C

00250460  5  0

79 1  0

2516  B066

00250460  5  0

80 0  0

299A  9458 00963EC0  3  0

81 1  0

2516  D57C

012C7D80

2  0

82 0  0

299A  9458 0004B798  8  0

96

83 0  0

2516  D57C

00096F30  7  0

84 0  0

2516  B066

00096F30  7  0

85 0  0

2516  8B50

00096F30  7  0

86 1  0

1EDF  CC74

0012DE60  6  0

87 1  0

2516  F6F8 009C5FA8

3  0

88 1  0

299A  9458 0274C628  1  0

89 0  0

32B4  A668

0004C398  7  0

9D

90 0  0

2E17  E768 00098730  6  0

91

1 0

2E17 B951

00098730 6 0

92 0  0

32B4  B85C

002849A8  4  0

93 1  0

32B4  85A8

002849A8  4  0

94 0  0

3C3D  CAD0

00A27270  2  0

95 1  0

3C3D  8E93 00A27270  2  0

96 0  0

415E  F0F4 00031318  8  0

51

97 1  0

415E  AF96

00031318  8  0

98 0  0  CE

4639  82BC

000702A0  7  0


160

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS

CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

ST

Bx B

99

1 0

415E 8C72

000E7E46 6 0

100 0  0

CE

4639  82BC 001D92B4

5  0

101

1 0

415E 8C72

003B9E6E

4 0

102 0  0

CE

4639  82BC 0077D304  3  0

103

1 0

415E 8C72

00F01F0E 2 0

104 0  0

CE

4639  82BC 01E0D444  1  0

105

1 0

415E 8C72

0002218E 8 0   78

106 0  0

CE

4639  82BC 0004D944  7  0

107

1 0

415E 8C72

000A2B8E

6 0

108 0  0

CE

4639  82BC 0014ED44  5  0

109

1 0

415E 8C72

002A538E 4 0

110 0  0

CE

4639  82BC 00553D44  3  0

111

1 0

415E 8C72

00AAF38E

2 0

112 0  0

CE

4639  82BC 01567D44  1  0

113

1 0

415E 8C72

0005738E 8 0   55

114 0  0

CE

4639  82BC 000B7D44

7  0

115

1 0

415E 8C72

0017738E 6 0

116 0  0

CE

4639  82BC 002F7D44  5  0

117

1 0

415E 8C72

005F738E 4 0

118 0  0

CE

4639  82BC 00BF7D44

3  0

119

1 0

415E 8C72

017F738E 2 0

120 0  0

CE

4639  82BC 02FF7D44  1  0

121

1 0

415E 8C72

0007738E 8 0   BF

122 0  0

CE

4639  82BC 000F7D44  7  0

123

1 0

415E 8C72

001F738E 6 0

124 0  0

CE

4639  82BC 003F7D44  5  0

125

1 0

415E 8C72

007F738E 4 0

126 0  0

CE

4639  82BC 00FF7D44  3  0

127

1 0

415E 8C72

01FF738E 2 0

128 0  0

CE

4639  82BC 03FF7D44  1  0

129

1 0

415E 8C72

0007738E 8 1

130 0  0

CE

4639  82BC 00F7D44

7  1

131

0 0

415E 8C72

001F738E 6 1

132 0  0

3C3D  9628 003EE71C

5  1

133 0  0

375E  B3D6 007DCE38

4  1

134 0  0

32B4  F8F0 00FB9C70

3  1

135 1  0

32B4  C63C 00FB9C70

3  1

136 0  0

3C3D  CAD0 03F0BFE0

1  1

137 1  0

3C3D  8E93 03F0BFE0

1  1

138 1  0

415E  F0F4 000448D8  7  0    FF00FC

139 0  0

CE

4639  82BC 0009F0DC

6  0

140

0 0

415E 8C72

00145ABE

5 0

141 0  0

3C3D  9628 0028B57C  4  0

142 0  0

375E  B3D6 00516AF8  3  0

143 0  0

32B4  F8F0 00A2D5F0

2  0

144 0  0

32B4  C63C 00A2D5F0

2  0

145 0  0

32B4  9388 00A2D5F0

2  0

146 0  0

2E17  C1A8 0145ABE0

1  0

147 1  0

2E17  9391 0145ABE0

1  0

148 0  0

32B4  B85C 00084568  7  0

51


161

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS

CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

ST

Bx B

149

0 0

32B4 85A8

00084568 7 0

150 0  0

2E17  A5E8 00108AD0

6  0

151 0  0

299A  EFA2 002115A0  5  0

152 0  0

299A  C608 002115A0  5  0

153 0  0

299A  9C6E 002115A0  5  0

154 0  0

2516  E5A8 00422B40  4  0

155 0  0

2516  C092 00422B40  4  0

156 0  0

2516  9B7C 00422B40  4  0

157 0  0

1EDF  ECCC

00845680 3 0

158 0 0

1EDF CDED

00845680  3  0

159 0  0

1EDF  AF0E 00845680  3  0

160 0  0

1EDF  902F 00845680  3  0

161 1  0

1AA9  E2A0 0108AD00

2  0

162 1  0

2516  D548 00BA7B8  7  0

84

163

1 0

299A  9458

00315FA8 5 0

164 1  0

32B4  A668 00C72998  3  0

165 1  0

3C3D  CAD0 031E7530  1  0

166 1  0

415E  F0F4 000C0F0C

7  0

C7

167 0  0

CE

4639  82BC 00197D44  6  0

168

0 0

415E 8C72

0033738E 5 0

169 1  0

3C3D  9628 0066E71C  4  0

170 1  0

415E  F0F4 019D041C

2  0

171 0  0

CE

4639  82BC 033B6764  1  0

172

1 0

415E 8C72

000747CE 8 0   CE

173 0  0

CE

4639  82BC 000F25C4  7  0

174

1 0

415E 8C72

001EC48E

6 0

175 1  0

CE

4639  82BC 003E1F44  5  0

176 1  0

4B85  F20C 00F87D10  3  0

177

1 0  CE  504F 970A

01F2472E 2 0

178 0  0

CE

5522  8D76 03E48E5C

1  0

179 0  0

504F  AA44 00018D60  8  0

F9

180 1  0

4B85  B3EA 00031AC0

7  0

181

1 0  CE  504F 970A

0007064A 6 0

182 1  0

CE

5522  8D76 000E0C94  5  0

183

1 0

59EB E150

00383250 3 0

184 0  1

59EB  B3D6 0071736A  2  0

185 1  0

59EB  B3D6 00E39AAA

1  0

186 1  1

59EB  B3D6 0007E92A  8  0

38

187 1  1

5522  B3D6 000FD254  7  0

188 1  1

504F  BD68 001FA4A8

6  0

189 0  1

4B85  DA32 003F4950  5  0

190

1 1  CE  504F 970A

007FAFFA

4 0

191 1  1

4B85  A09E 00FFED6A

3  0

192 0  1

4639  AA32 01FFDAD4

2  0

193 0  1

CE

4B85  8C72 04007D9A

1  0

194 1  1

CE

504F  81DA 0000FB34  8  0  39

00

195 1  1

4B85  A09E 0002597E  7  0

196 1  1

4639  AA32 0004B2FC

6  0

197 0  1

415E  C7F2 000965F8  5  0

198 1  1

CE

4639  82BC 0013D918  4  0


162

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS

CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

ST

Bx B

199

0 1

415E 8C72

00282B36 3 0

200 0  1

CE

4639  82BC 0050EC94  2  0

201 1  1

4B85  F20C 0003B250  8  0

28

202 1  1

4B85  A687 0003B250  8  0

203 1  1

4639  B604 000764A0  7  0

204 0  1

415E  DF96 000EC940  6  0

205 1  1

CE

4639  82BC 001ECEF0

5  0

206

0 1

415E 8C72

003E16E6 4 0

207 1  1

CE

4639  82BC 007CC3F4

3  0

208

0 1

415E 8C72

00FA00EE

2 0

209 1  1

CE

4639  82BC 01F49804  1  0

210

0 1

415E 8C72

0001A90E 8 0   7D

211 1  1

CE

4639  82BC 0003E844  7  0

212

0 1

415E 8C72

0008498E 6 0

213

1 1  CE  4639 82BC

00112944 5 0

214

0 1

415E 8C72

0022CB8E

4 0

215 1  1

CE

4639  82BC 00462D44  3  0

216

1 1

415E 8C72

008CD38E

2 0

217 1  1

3C3D  9628 0119A71C

1  0

218 1  1

375E  B3D6 00034E38  8  0

46

219 1  1

32B4  F8F0 00069C70  7  0

220 1  1

32B4  C63C 00069C70  7  0

221 0  1

32B4  9388 00069C70  7  0

222 1  1

3C3D  CAD0 001BF510  5  0

223 1  1

3C3D  8E93 001BF510  5  0

224 1  1

375E  A4AC 0037EA20  4  0

225 0  1

32B4  DA9C 006FD440  3  0

226 1  1

3C3D  CAD0 01C1F0A0

1  0

227 1  1

3C3D  8E93 01C1F0A0

1  0

228 0  1

375E  A4AC 0003E140  8  0

70

229 1  1

3C3D  DD78 00113A38  6  0

230

0 1

3C3D A13B

00113A38 6 0

231 0  1

415E  F0F4 00467CD8

4  0

232 1  1

CE

4639  82BC 008E58DC

3  0

233

0 1

415E 8C72

011D2ABE

2 0

234 1  1

CE

4639  82BC 023AEBA4

1  0

235

1 1

415E 8C72

0006504E 8 0   8E

236 1  1

3C3D  9628 000CA09C

7  0

237 1  1

375E  B3D6 00194138  6  0

238 1  1

32B4  F8F0 00328270  5  0

239 1  1

32B4  C63C 00328270  5  0

240 0  1

32B4  9388 00328270  5  0

241 1  1

3C3D  CAD0 00CB8D10

3  0

242 1  1

3C3D  8E93 00CB8D10

3  0

243 1  1

375E  A4AC 01971A20  2  0

244 0  1

32B4  DA9C 032E3440  1  0

245 0  1

3C3D  CAD0 000B70A0

7  0

CB

246 1  1

415E  F0F4 002FFCCC

5  0

247 1  1

415E  AF96 002FFCCC

5  0

248 1  1

3C3D  DC70 005FF998  4  0


163

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS

CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

ST

Bx B

249

0 1

3C3D A033

005FF998 4 0

250 1  1

415E  F0F4 01817638  2  0

251 0  1

415E  AF96 01817638  2  0

252 0  1

CE

4639  82BC 0303C8E0  1  0

253 1  1

4B85  F20C 000F2380  7  0

C0

254 1  1

4B85  A687 000F2380  7  0

255 0  1

4639  B604 001E4700  6  0

256 0  1

CE

4B85  8C72 003D6D96

5  0

flush:

81DA 007ADB2C

4  0

F6

   FFD6


164

X 4301-1995 (ISO/IEC 10918-1 : 1994)

表 K.8  復号器試験列

EC D

MPS  CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

B

0 0 0

5A1D  0000

655B0000

0

655B

2 0 0  CE  5A1D A5E3

655B0000

0

3 0 0

2586  B43A

332AA200

7 51

4 0 0

2586  8EB4

332AA200

7

5 0 0

1114  D25C

66554400

6

6 0 0

1114  C148

66554400

6

7 0 0

1114  B034

66554400

6

8 0 0

1114  9F20

66554400

6

9 0 0

1114  8E0C

66554400

6

10 0  0

080B  F9F0

CCAA8800

5

11 0 0

080B  F1E5

CCAA8800

5

12 0  0

080B  E9DA

CCAA8800

5

13 0  0

080B  E1CF

CCAA8800

5

14 0  0

080B  D9C4

CCAA8800

5

15 1  0

080B  D1B9

CCAA8800

5

16 0  0

17B9  80B0

2FC88000

1

17 0  0

1182  D1EE

5F910000

0

18 0  0

1182  C06C

5F910000

0

19 0  0

1182  AEEA

5F910000

0

20 0  0

1182  9D68

5F910000

0

21 0  0

1182  8BE6

5F910000

0

22 0  0

0CEF  F4C8

BF228800

7  44

23 0  0

0CEF  E7D9

BF228800

7

24 0  0

0CEF DAEA

BF228800

7

25 0  0

0CEF CDFB

BF228800

7

26 1  0

OCEF  C10C

BF228800

7

27 0  0

1518  CEF0

B0588000

3

28 1  0

1518  B9D8

B0588000

3

29 0  0

1AA9  A8C0

5CC40000

0

30 0  0

1AA9  8E17

5CC40000

0

31 0  0

174E  E6DC

B989EE00

7  F7

32 1  0

174E  CF8E

B989EE00

7

33 0  0

1AA9  BA70

0A4F7000

4

34 0  0

1AA9  9FC7

0A4F7000

4

35 0  0

1AA9  851E

0A4F7000

4

36 0  0

174E  D4EA

149EE000

3

37 0  0

174E  BD9C

149EE000

3

38 0  0

174E  A64E

149EE000

3

39 0  0

174E  8F00

149EE000

3

40 0  0

1424  BF64

293DC000

2

41 0  0

1424  BD40

293DC000

2

42 0  0

1424  C71C

293DC000

2

43 0  0

1424  B2F8

293DC000

2

44 0  0

1424  9ED4

293DC000

2

45 0  0

1424  8AB0

293DC000

2

46 0  0

119C  ED18

527B8000

1

47 0  0

119C  DB7C

527B8000

1

48 0  0

119C  C9E0

527B8000

1


165

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS  CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

B

49 0  0

119C  B844

527B8000

1

50 0  0

119C  A6A8

527B8000

1

51 0  0

119C  950C

527B8000

1

52

0

0

119C 8370

527B8000

1

53 0  0

0F6B  E3A8

A4F70000

0

54 0  0

0F6B  D43D

A4F70000

0

55 0  0

0F6B  C4D2

A4F70000

0

56 0  0

0F6B  B567

A4F70000

0

57 1  0

0F6B  A5FC

A4F70000

0

58 1  0

1424  F6B0

E6696000

4  96

59 0  0

1AA9  A120

1EEB0000

1

60 0  0

1AA9  8677

1EEB0000

1

61 0  0

174E  D79C

3DD60000

0

62 0  0

174E  C04E

3DD60000

0

63 0  0

174E  A900

3DD60000

0

64 0  0

174E  91B2

3DD60000

0

65 0  0

1424  F4C8

7BAD3A00

7 9D

66 0  0

1424  E0A4

7BAD3A00

7

67 0  0

1424  CC80

7BAD3A00

7

68 0  0

1424  B85C

7BAD3A00

7

69 0  0

1424  A438

7BAD3A00

7

70 0  0

1424  9014

7BAD3A00

7

71 1  0

119C  F7E0

F75A7400

6

72 1  0

1424  8CE0

88B3A000

3

73 0  0

1AA9  A120

7FBD0000

0

74 1  0

1AA9  8677

7FBD0000

0

75 0  0

2516  D548

9F7F8800

5  51

76 1  0

2516  B032

9F7A8800

5

77 0  0

299A  9458

517A2000

3

78 0  0

2516  D57C

A2F44000

2

79 1  0

2516  B066

A2F44000

2

80 0  0

299A  9458

5E910000

0

81 1  0

2516  D57C

BD22F000

7  78

82 0  0

299A  9458

32F3C000

5

83 0  0

2516  D57C

65E78000

4

84 0  0

2516  B066

65E78000

4

85 0  0

2516  8B50

65E78000

4

86 1  0

1EDF  CC74

CBCF0000

3

87 1  0

2516  F6F8

F1D00000

0

88 1  0

299A  9458

7FB95400

6  55

89 0  0

32B4  A668

52ED5000

4

90 0  0

2E17  E768

A7DAA000

3

91 1  0

2E17  B951

A7DAA000

3

92 0  0

32B4  B85C

72828000

1

93 1  0

32B4  85A8

72828000

1

94 0  0

3C3D CAD0

7E3B7E00

7 BF

95 1  0

3C3D  8E93

7E3B7E00

7

96 0  0

415E  F0F4

AF95F800

5

97 1  0

415E  AF96

AF95F800

5

98 0  0  CE

4639  82BC

82BBF000

4


166

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS  CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

B

99 1  0

415E  8C72

8C71E000

3

100 0  0

CE

4639  82BC

82BBC000

2

101 1  0

415E  8C72

8C718000

1

102 0  0

CE

4639  82BC

82BB0000

0

103 1  0

415E  8C72

8C71EE00

7 FF00

104 0  0

CE

4639  82BC

82BBFC00

6

105 1  0

415E  8C72

8C71F800

5

106 0  0

CE

4639  82BC

82BBF000

4

107 1  0

415E  8C72

8C71E000

3

108 0  0

CE

4639  82BC

82BBC000

2

109 1  0

415E  8C72

8C718000

1

110 0  0

CE

4639  82BC

82BB0000

0

111 1  0

415E  8C72

8C71F800

7  FC

112 0  0

CE

4639  82BC

82BBF000

6

113 1  0

415E  8C72

8C71E000

5

114 0  0

CE

4639  82BC

82BBC000

4

115 1  0

415E  8C72

8C718000

3

116 0  0

CE

4639  82BC

82BB0000

2

117 1  0

415E  8C72

8C700000

1

118 0  0

CE

4639  82BC

82B800000

0

119 1  0

415E  8C72

8C6AA200

7  51

120 0  0

CE

4639  82BC

82AD4400

6

121 1  0

415E  8C72

8C548800

5

122 0  0

CE

4639  82BC

82811000

4

123 1  0

415E  8C72

8BFC2000

3

124 0  0

CE

4639  82BC

81D04000

2

125 1  0

415E  8C72

8A9A8000

1

126 0  0

CE

4639  82BC

8F0D0000

0

127 1  0

415E  8C72

85150800

7  84

128 0  0

CE

4639  82BC

74021000

6

129 1  0

415E  8C72

6EFE2000

5

130 0  0

CE

4639  82BC

47D44000

4

131 0  0

415E  8C72

16A28000

3

132 0  0

3C3D  9628

2D450000

2

133 0  0

375E  B3D6

5A8A0000

1

134 0  0

32B4  F8F0

B5140000

0

135 1  0

32B4  C63C

B5140000

0

136 0  0

3C3D  CAD0

86331C00

6  C7

137 1  0

3C3D  8E93

86331C00

6

138 1  0

415E  F0F4

CF747000

4

139 0  0

CE

4639  82BC

3FBCE000

3

140 0  0

415E  8C72

0673C000

2

141 0  0

3C3D  9628

0CE78000

1

142 0  0

375E  B3D6

19CF0000

0

143 0  0

32B4  F8F0

339F9C00

7  CE

144 0  0

32B4  C63C

339F9C00

7

145 0  0

32B4  9388

339F9C00

7

146 0  0

2E17  C1A8

673F3800

6

147 1  0

2E17

9391

673F3800

6

148 0  0

32B4  B85C

0714E000

4


167

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS  CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

B

149 0  0

32B4  85A8

0714E000

4

150 0  0

2E17  A5E8

0E29C000

3

151 0  0

299A  EFA2

1C538000

2

152 0  0

299A  C608

1C538000

2

153 0  0

299A  9C6E

1C538000

2

154 0  0

2516  E5A8

38A70000

1

155 0  0

2516  C092

38A70000

1

156 0  0

2516  9B7C

38A70000

1

157 0  0

1EDF  ECCC

714E0000

0

158 0  0

1EDF CDED

714E0000

0

159 0  0

1EDF  AF0E

714E0000

0

160 0  0

1EDF  902F

714E0000

0

161 1  0

1AA9  E2A0

E29DF200

7  F9

162 1  0

2516  D548

D5379000

4

163 1  0

299A  9458

94164000

2

164 1  0

32B4  A668

A5610000

0

165 1  0

3C3D  CAD0

C6B4E400

6  39

166 1  0

415E  F0F4

E0879000

4

167 0  0

CE

4639  82BC

61E32000

3

168 0  0

415E  8C72

4AC04000

2

169 1  0

3C3D  9628

95808000

1

170 1  0

415E  F0F4

EE560000

7  00

171 0  0

CE

4639  82BC

7D800000

6

172 1  0

415E  8C72

81FA0000

5

173 0  0

CE

4639  82BC

6DCC0000

4

174 1  0

415E  8C72

62920000

3

175 1  0

CE

4639  82BC

2EFC0000

2

176 1  0

4B85  F20C

BBF00000

0

177 1  0

CE

504F  970A

2AD25000

7  28

178 0  0

CE

5522  8D76

55A4A000

6

179 0  0

504F  AA44

3AA14000

5

180 1  0

4B85  B3EA

75428000

4

181 1  0

CE

504F  970A

19BB0000

3

182 1  0

CE

5522  8D76

33760000

2

183 1  0

59EB  E150

CDD80000

0

184 0  1

59EB  B3D6

8CE6FA00

7  7D

185 1  0

59EB  B3D6

65F7F400

6

186 1  1

59EB  B3D6

1819E800

5

187 1  1

5522  B3D6

3033D000

4

188 1  1

504F  BD68

6067A000

3

189 0  1

4B85  DA32

C0CF4000

2

190 1  1

CE

504F  970A

64448000

1

191 1  1

4B85  A09E

3B130000

0

192 0  1

4639  AA32

76268C00

7  46

193 0  1

CE

4B85  8C72

245B1800

6

194 1  1

CE

504F  81DA

48B63000

5

195 1  1

4B85  A09E

2E566000

4

196 1  1

4639  AA32

5CACC000

3

197 0  1

415E  C7F2

B9598000

2

198 1  1

CE

4639  82BC

658B0000

1


168

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS  CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

B

199 0  1

415E  8C72

52100000

0

200 0  1

CE

4639  82BC

0DF8E000

7  70

201 1  1

4B85  F20C

37E38000

5

202 1  1

4B85  A687

37E38000

5

203 1  1

4639  B604

6FC70000

4

204 0  1

415E  DF96

DF8E0000

3

205 1  1

CE

4639  82BC

82AC0000

2

206 0  1

415E  8C72

8C520000

1

207 1  1

CE

4639  82BC

827C0000

0

208 0  1

415E  8C72

8BF31C00

7  8E

209 1  1

CE

4639  82BC

81BE3800

6

210 0  1

415E  8C72

8A767000

5

211 1  1

CE

4639  82BC

7EC4E000

4

212 0  1

415E  8C72

8483C000

3

213 1  1

CE

4639  82BC

72DF8000

2

214 0  1

415E  8C72

6CB90000

1

215 1  1

CE

4639  82BC

434A0000

0

216 1  1

415E  8C72

0D8F9600

7  CB

217 1  1

3C3D  9628

1B1F2C00

6

218 1  1

375E  B3D6

363E5800

5

219 1  1

32B4  F8F0

6C7CB000

4

220 1  1

32B4  C63C

6C7CB000

4

221 0  1

32B4  9388

6C7CB000

4

222 1  1

3C3D  CAD0

2EA2C000

2

223 1  1

3C3D  8E93

2EA2C000

2

224 1 1

375E A4AC

5D458000

1

225 0  1

32B4  DA9C

BA8B0000

0

226 1  1

3C3D  CAD0

4A8F0000

6  C0

227 1  1

3C3D  8E93

4A8F0000

6

228 0 1

375E A4AC

951E0000

5

229 1 1

3C3D DD78

9F400000

3

230 0  1

3C3D  A13B

9F400000

3

231 0  1

415E  F0F4

E9080000

1

232 1  1

CE

4639  82BC

72E40000

0

233 0  1

415E  8C72

6CC3EC00

7  F6

234 1  1

CE

4639  82BC

435FD800

6

235 1  1

415E  8C72

0DB9B000

5

236 1  1

3C3D  9628

1B736000

4

237 1  1

375E  B3D6

36E6C000

3

238 1  1

32B4  F8F0

6DCD8000

2

239 1  1

32B4  C63C

6DCD8000

2

240 0  1

32B4  9388

6DCD8000

2

241 1  1

3C3D  CAD0

33E60000

0

242 1  1

3C3D  8E93

33E60000

0

マーカ検出(ゼロバイトを復号器に入力)

243 1 1

375E A4AC

67CC0000

7

244 0  1

32B4  DA9C

CF980000

6

245 0  1

3C3D  CAD0

9EC00000

4

246 1  1

415E  F0F4

40B40000

2

247 1  1

415E  AF96

40B40000

2


169

X 4301-1995 (ISO/IEC 10918-1 : 1994)

EC D

MPS  CX

(16 進数)

Qe

(16 進数)

A

(16 進数)

C CT

B

248 1  1

3C3D  DC70

81680000

1

249 0  1

3C3D  A033

81680000

1

マーカ検出(ゼロバイトを復号器に入力)

250 1  1

415E  F0F4

75C80000

7

251 0  1

415E  AF96

75C80000

7

252 0  1

CE

4639  82BC

0F200000

6

253 1  1

4B85  F20C

3C800000

4

254 1  1

4B85  A687

3C800000

4

255 0  1

4639  B604

79000000

3

256 0  1

CE

4B85  8C72

126A0000

2

K.5

階層型符号化のための低域通過型標本減少フィルタ  ここでは,標本減少フィルタの簡単な例を示

す。これは,

附属書 の J.1.1.2 で定義する標本増加フィルタと整合する。

図 K.5 は,単純な

1

次元水平及び垂直低域通過型フィルタにおける周囲標本の重み付けを示す。フィル

タの出力は,周囲標本の重み付けの合計で正規化しなければならない。

図 K.5  低域通過型フィルタの例

このフィルタによって低解像度画像の左端列又は上端行の標本値を求める場合には,

図 K.5 の中央の標

本は,高解像度画像の左端列又は上端行に位置させなければならない。画像境界の外部をフィルタが参照

する場合には,その外部の標本値として画像の境界の値と同一の値を用いる。

標本減少処理すべき画像の

1

ラインの標本数又はライン数が奇数の場合には,標本減少処理する前に画

像の右境界又は下境界にその境界の標本値と同じ値の標本を一つ加えて偶数にする。

K.6

DCT

符号化方式と空間符号化方式の応用領域

DCT

符号器は不可逆符号化のために用い,その誤差

の程度は目につくものから視覚限界以下のものまで制御できる。しかし,一般には

DCT

利用型の処理は,

真の可逆符号化には用いることはできない。

可逆符号器は,完全な可逆符号化のために用いる。可逆符号化処理の符号化効率は,視覚限界に近いか

及び視覚限界を超える誤差を含む

DCT

利用型の処理の符号化効率より,かなり落ちる。

可逆符号器の入力に対する小数点移動は,可逆符号器に対して非常に制限された形での不可逆符号化を

可能にする(小数点移動の後でも符号器は,可逆とする。

DCT

が不可逆符号化であるため,どのような

ときに,この小数点移動による不可逆符号化を使用するかという点が分かりにくい。

小数点移動を使った可逆符号化は,

DCT

符号化を用いることのできない応用分野で利用される。例えば,

次のような場合に用いる。すなわち,制限されたビット精度の範囲内での完全な可逆符号化を行う場合,

符号化による誤差を完全にある範囲に限定したい場合,最後の段階で完全な可逆符号化を実現する階層型

処理による段階符号処理の途中の段階である場合などである。

DCT

符号化が効果的に利用できる応用分野に対して,小数点移動を用いた不可逆符号化を使用した場合


170

X 4301-1995 (ISO/IEC 10918-1 : 1994)

には,その結果は,十分に満足できるものではなくなる。例えば,輝度成分のビット精度を

6

ビットまで

落とした場合には,目につく偽輪郭という形で劣化が発生する。通常の画像では,

DCT

を用いた場合に再

生画像と原画像との誤差が視覚的に識別できない程度のビット速度よりもずっと高いビット速度でも,小

数点移動を用いた不可逆符号化では劣化が発生する。

K.7

段階符号処理の応用領域

DCT

係数による段階符号処理及び階層型段階処理という二つの大きく異

なる段階符号処理モードが定義されている。さらに,

DCT

係数による段階符号処理には周波数選択及び逐

次近似という二つの相補的な処理がある。このように多様な選択が可能なため,与えられた応用分野にど

の段階処理を用いればよいかという点が分かりにくい。

K.7.1

DCT

を用いた段階符号処理

DCT

係数による段階符号処理で,

8

×

8

DCT

係数の配列をどのよ

うに分解するかによって周波数選択と逐次近似という二つの相補的な処理が定義される。

周波数選択では,

ジグザグ順序による

DCT

係数の

1

次元配列をバンドと呼ぶ複数の部分に分け,

この一つのバンドを一つの

走査で符号化する。逐次近似では最初の走査においては

DCT

係数をビット精度を落とした形で符号化し,

これに続く各走査でビット精度を

1

ビットづつ増加させる。

これらの処理で

FDCT

は,

1

度だけ実行される。すべての係数が完全なビット精度で符号化された場合

には,最終的に符号化される

DCT

係数は,順次モードと同一になる。このため,順次

DCT

符号化と同様

に,

DCT

係数の段階符号処理は視覚上の劣化の許容範囲が与えられたときに,効率よく符号化することが

要求される応用分野に適用できる。

最も簡単な段階符号処理技術は,周波数選択である。実際にこの方式が単純であるため,段階の機能と

しては限定されてはいるが,特定の領域の応用分野では周波数選択だけを用いることができる。しかし,

この方式を用いる場合には,あるビット速度においては高周波成分のバンドが伝送されないことから途中

の段階において,一般的な段階処理で達成される画質よりも不充分な画質しか提供できない。この段階処

理を用いた場合の最終段階まで完了した時点での符号化効率は,順次

DCT

と同等か,多少悪くなる程度で

ある。

周波数選択方式に逐次近似方式を加えることによって多少複雑にはなるが,より柔軟な段階システムを

実現することができる。同一のビット速度に対して,このシステムは周波数選択だけのシステムよりもは

るかに良い画質を実現できる。この段階システムを用いた場合の最終段階まで完了した時点での符号化効

率は,順次

DCT

と同等か多少よくなる程度である。

K.7.2

階層型段階処理  階層型段階処理を用いることによって,空間解像度を順番に上げていくこともで

きるし,更に,同一空間解像度において順次画質を向上させることもできる。

DCT

方式及び空間方式の両

方が,階層型段階処理で用いることができ,

DCT

係数の段階符号処理は,

DCT

を用いた階層型段階処理の

一つのフレームで用いることができる。

DCT

を用いた階層型段階処理は,与えられた視覚上の劣化のレベルに対して効率のよい符号化が要求さ

れる応用分野で用いられ,空間方式を用いた階層型段階処理は最後の段階で完全な可逆符号化が必要とな

る簡単な段階処理が要求される応用分野で用いられる。

図 K.6 にこれらの

2

種類の基本的な階層型段階処

理を示す。


171

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 K.6  階層型処理モードの基本動作 

K.7.2.1

DCT

を用いた階層型段階処理

DCT

を用いた階層型段階処理で空間解像度を低下させた場合,

DCT

係数の階層型処理以外の段階符号処理に比べて,最初の方の段階での同一ビット速度における画質を

向上させることができる。しかし,原画像からの再生画像の劣化が視覚的に識別できない段階では,

DCT

を用いた階層型段階処理での符号化効率は,

DCT

係数の階層型処理ではない段階符号処理に比べてはるか

に低くなる。

DCT

を用いた階層型段階処理は,不可逆な段階符号処理ではあるが,最後の段階で差分の空間符号処理

を用いることができる。この最終段階を用いた場合には,符号器及び復号器との間での

IDCT

実現手法の

違いからくる誤差は含まれるが,ほとんど完全な可逆符号処理が可能となる。

IDCT

実現手法の違いがあ

るため,

DCT

を用いた階層型段階処理の後で,完全な可逆符号処理の実現は保証されない。これに代わる

ものとして,最終段階における差分の可逆符号処理への入力に小数点移動を用いることによって,差分画

像のビット精度を縮小させる方法がある。この方法を用いることによって,空間差分を完全なビット精度

で符号化する場合に比べてはるかに少ない符号量で,原画像と再生画像との差分を限られた範囲に制限し

た符号化が可能となる。

K.7.2.2

空間方式を用いた階層型段階処理  段階可逆符号処理が必要な場合は,入力の小数点移動を用い

た可逆な空間符号処理を最初の段階で行うという簡単な階層型段階処理が利用できる。この最初の段階の

後に,差分画像の空間符号化による段階が一つ以上続く。最初の段階では,小数点移動による低位ビット

の打切りがランダムになるようにして,

ほとんど可逆になるようにするのがよい。

このようにしない場合,

符号化まで含めた全体の符号化効率は,段階処理以外の可逆処理に比べて,低下する。


172

X 4301-1995 (ISO/IEC 10918-1 : 1994)

K.8

再生画像のブロックひずみの低減

DCT

方式を用いて圧縮した画像に発生しやすいブロックひ

ずみを軽減させる簡単な方法について示す。

自分自身のブロックと周囲の

8

個のブロックとの計

9

個のブロックの直流係数から低い周波数の幾つか

DCT

係数(ここで述べる例では五つ)を予測し,この予測値を用いて画像の平たんな部分で発生するブ

ロックひずみを軽減する。

ジグザク順序の最初の

5

個の交流係数を予測する式は,次のとおりとする。

K.8.1

交流係数予測

3

×

3

のブロック配列の標本空間(各ブロックは,

8

×

8

の標本を含む。

)を,

2

次元

2

次多項式でモデル化する。

P (x, y)

A1 (x

2

y

2

)

A2 (x

2

y)

A3 (xy

2

)

A4 (x

2

)

A5 (xy)

A6 (y

2

)

A7 (x)

A8 (y)

A9

9

個の各ブロックにおける

P (x, y)

の平均値が正しく直流係数値に合うという条件によって

A1

A9

9

個の係数は,一意に決定できる。

中央のブロックの中の標本を予測している

2

次平面に

DCT

を行うことによって,

図 K.7 に示す低周波

の交流係数を予測することができる。

図 K.7  予測された交流係数の DCT 配列上での位置

この方法で求めた予測式を次に示す。次のような直流係数値の

2

次元配列に対して

DC

1

 DC

2

 DC

3

DC

4

 DC

5

 DC

6

DC

7

 DC

8

 DC

9

量子化されていない予測式は,次のとおりとする。

AC

01

↑=

1.13885

(DC

4

↑−

DC

6

)

AC

10

↑=

1.13885

(DC

2

↑−

DC

8

)

AC

20

↑=

0.27881

(DC

2

↑+

DC

8

↑−

2

×

DC

5

)

AC

11

↑=

0.16213

((DC

1

↑−

DC

3

)

 (DC

7

↑−

DC

9

))

AC

02

↑=

0.27881

(DC

4

↑+

DC

6

↑−

2

×

DC

5

)

予測された交流係数の値の範囲は,

附属書 の A.3.3 で定義する

DCT

正規化と一致する。

K.8.2

量子化された交流係数予測  この予測式は,直流係数の量子化された値を用いるように変換するこ

とができ,その変換によって,量子化された交流係数を整数演算で算出することができる。しかし,予測

された係数が小数点ビット精度をもつように量子化された直流係数を定数倍する必要がある。


173

X 4301-1995 (ISO/IEC 10918-1 : 1994)

まず,予測式の係数を

32

倍し,最も近い整数に丸める。

1.13885

×

32

36

0.27881

×

32

 9

0.16213

×

32

 5

このように,乗算の係数要素は,直流係数と交流係数の量子化係数要素の比率で定数倍し,適切に丸め

る。

DCT

に対して定義された正規化によって,量子化されていない直流係数値に,

8

という,もう一つの

定数倍を施す。したがって,量子化された直流係数を用いて,量子化された交流係数は,次のとおりに予

測される。例えば,直流係数値が

4

の係数要素で定数倍された場合には,交流係数予測は量子化された

DCT

係数に対して小数点以下

2

ビットの精度をもつ。

QAC

01

↑=

 ((Rd

×

Q

01

)

 (36

×

Q

00

↑×

 (QDC

4

↑−

QDC

6

))) / (256

×

Q

01

)

QAC

10

↑=

 ((Rd

×

Q

10

)

 (36

×

Q

00

↑×(

QDC

2

↑−

QDC

8

))) / (256

×

Q

10

)

QAC

20

↑=

 ((Rd

×

Q

20

)

+(

9

×

Q

00

↑×

 (QDC

2

↑+

QDC

8

↑−

2

×

QDC

5

))) / (256

×

Q

20

)

QAC

11

↑=

 ((Rd

×

Q

11

)

 (5

×

Q

00

↑×

 ((QDC

1

↑−

QDC

3

)

 (QDC

7

↑−

QDC

9

)))) / (256

×

Q

11

)

QAC

02

↑=

 ((Rd

×

Q

02

)

 (9

×

Q

00

↑×

 (QDC

4

↑+

QDC

6

↑−

2

×

QDC

5

))) / (256

×

Q

02

)

ここで,

QDC

x

↑と

QAC

xy

↑は量子化され定数倍された直流係数と交流係数の値とする。定数

Rd

は,除算において正しい丸めが行われるように加えられる。

Rd

は,分子が正であれば

128

であって,負の

ときは−

128

とする。

予測値は,符号化された値を無効にしないことが望ましい。既にゼロではない係数に対する予測値は,

ゼロにすることが望ましい。逐次近似における現時点のビット精度に対して,ゼロではない値に量子化さ

れる値を予測が超える場合は,予測を制限することが望ましい。

K.9

表示画像の画質を向上させるための逆量子化の変更  逐次近似の最初の段階のビット

Al

3

の場合,

DCT

の一様量子化は,逐次近似の一連の走査に対して,次のような量子化/逆量子化レベルをとる。


174

X 4301-1995 (ISO/IEC 10918-1 : 1994)

図 K.8  二つの再生処理の図式化

左のラベル

 “A”

走査ヘッダの中で指定されるビット位置を示す。量子化された

DCT

係数は,その走査

において

2

Al

↓で割られる。

最後の走査

 (Al

0)

において

 “t”

で示された位置はしきい値を示し,

 “r”

で示された点は,再生値を

示す。逆量子化出力は,

図 K.8 の下に示した定数値に量子化幅を掛けることによって算出する。

図の中でゼロに量子化される係数の量子化間隔は,下へ下げた実線で示されている。ビット位置

Al

が大

きくなるにしたがって

 “fat zero”

(幅広いゼロ)の量子化間隔は,ゼロの

DCT

係数値の周りに広がってく

る。定数倍の値が非常に大きくなると,限界値としてゼロの量子化間隔は,他の量子化間隔の

2

倍に近づ

く。

二つの異なった再生の処理を示す。

 “r”

の再生位置は,完全な全精度出力の

DCT

係数に対して,通常

の丸め処理を施した場合に得られる再生値とする。帯域幅の広い表示装置を用いた場合には,この再生値

を用いることによってよい画像品質が得られる。

 “x”

の再生位置は,帯域幅の狭い表示装置に対してよい

画像品質を与える。

 “x”

及び

 “r”

は,位置ゼロでは同一値をとる。システム設計者が使用する表示シス

テムによって,どの再生処理をとるか決定しなければならない。

K.10

小数点移動の例

Pt

ビットの算術右シフトと

2

Pt

↓での除算との違いを次に示す。

レベルシフトの後では,直流係数は+

127

から−

128

までの値をとる。

(レベルシフト後の)値がゼロに

近く,

Pt

1

の場合を考えてみる。

レベルシフト前

小数点移動前

2

による除算後

1

ビット算術右シフト後

131

+3

+1

+1

130

+2

+1

+1

129

+1 0

0

128 0  0

0

127

−1 0

−1

126

−2

−1

−1

125

−3

−1

−2

124

−4

−2

−2

123

−5

−2

−3

最も重要な違いは,

精度を切り捨てることにある。

除算は絶対値での除算結果の小数点以下を切り捨て,

算術シフトは

LSB

を切り捨てる。

2

による除算は,直流係数値に一様でない量子化を施すことになる。し

たがって,小数点移動には,算術右シフト演算を用いることにする。

正の値に対しては,

2

による除算も

1

ビットの算術右シフトも同じとする。したがって,小数点移動を

レベルシフトする前に行うのであれば,

1

ビットの算術右シフトは,実効的には

2

による除算と同じとす

る。


175

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 L(参考)  特許

L.1

導入  この規格の利用者は,附属書の FG及び で規定する符号化処理を実現する際に,特許

権をもつ発明を使用する可能性があることに注意しなければならない。この規格の発行に際して,特許の

主張の有効性について,又はどの特許が関連するかについて,見解を示す立場にはない。しかし,この附

属書に示す各特許については,これらの特許を利用したい者に,特許保有者が妥当な価格で,かつ差別の

ない条件で特許実施の許諾を保証する旨の声明書を国際標準化機構中央事務局に設置されている情報技術

タスクフォース

 (ITTF)

に提出している。

この附属書に示す特許は,次の基準による。

(1)

この規格に関連する技術分野の従事者が,

附属書の FG及び で規定する一つ以上の符号化処

理を実装する上で必要であると認めた特許。

(2)

特許保有者が,特許実施者の数を制限せず,不当な差別なしに妥当な価格及び条件で特許の実施を許

諾する旨の声明書を

ITTF

に提出した特許。

特許に関する情報は,次から得ることができる。

Information Technology Task Force at ISO Central Secretariat

1, Rue de Varemb

Case Postale 56

CH-1211 Geneva 20, Switzerland

L.2

特許リスト  附属書の FG及び で規定する算術符号化を用いる処理を構成するに当たって必

要となる可能性のある特許を次に示す。

US 4,633,490, December 30, 1986, IBM, J. L. MITCHELL and G. GOERTZEL

: Symmetrical Adaptive Data Compression/Decompression System.

US 4,652,856, February 4, 1986, IBM, K. M. MOHIUDDIN and J. J. RISSANEN

: A Multiplication-free Multi-Alphabet Arithmetic Code.

US 4,369,463, January 18, 1983, IBM, D. ANASTASSIOU and J. L. MITCHELL

: Grey Scale Image Compression with Code Words a Function of Image History.

US 4,749,983, June 7, 1988, IBM, G. LANGDON

: Compression of Multilevel Signals.

US 4,935,882, June 19, 1990, IBM, W. B. PENNEBAKER and J. L. MITCHELL

: Probability Adaptation for Arithmetic Coders.

US 4,905,297, February 27, 1990, IBM, G. G. LANGDON, Jr., J. L. MITCHELL,

W. B. PENNEBAKER, and J. J. RISSANEN

: Arithmetic Coding Encoder and Decoder System.

US 4,973,961, November 27, 1990, AT & T, C. CHAMZAS, D. L. DUTTWEILER

: Method and Apparatus for Carry-over Control in Arithmetic Entropy Coding.

US 5,025,258, June 18, 1991, AT & T, D. L. DUTTWEILER

: Adaptive Probability Estimator for Entropy Encoding/Decoding.

US 5,099,440, March 24, 1992, IBM, W. B. PENNEBAKER and J. L. MITCHELL


176

X 4301-1995 (ISO/IEC 10918-1 : 1994)

: Probability Adaptation for Arithmetic Coders.

Japanese Patent Application 2-46275, February 26, 1990, MEL F. ONO, T. KIMURA,

M. YOSHIDA, and S. KINO

: Coding System.

附属書 で規定する階層型処理において可逆処理を最終フレームで使用するに当たって必要となる可

能性のある特許を次に示す。

US 4,665,436, May 12, 1987, J. A. EI OSBORNE and C. SEIFFERT

: Narrow Bandwidth Signal Transmission.

この規格の発行段階では,これ以外の特許は,

附属書の FG及び で規定する処理を構成するに

当たって必要となる可能性がないとみなす。


177

X 4301-1995 (ISO/IEC 10918-1 : 1994)

附属書 M(参考)  参考文献

M.1

全般

A LEGER, T. OMACHI, and G. K. WALLACE : JPEG Still Picture Compression Algorithm, Optical Engineering,

Vol. 30, No. 7, pp. 947-954, (July 1991).

M. RABBANI and P. JONES : Digital Image Compression Techniques, Tutorial Texts in Optical Engineering, Vol.

TT7, SPIE Press, 1991.

G. HUDSON, H. YASUDA and I. SEBESTYEN : The International Standardization of a Still Picture Compression

Technique, Proc. of IEEE Global Telecommunications Conference, pp.1016-1021, Nov. 1988.

A. LEGER, J. MITCHELL and Y. YAMAZAKI : Still Picture Compression Algorithm Evaluated for International

Standardization, Proc. of the IEEE Global Telecommunications Conference, pp. 1028-1032, Nov. 1988.

G. WALLACE, R. VIVIAN and H. POULSEN : Subjective Testing Results for Still Picture Compression

Algorithms for International Standardization, Proc. of the IEEE Global Telecommunications Conference, pp.

1022-1027, Nov. 1988.

J. L. MITCHELL and W. B. PENNEBAKER : Evolving JPEG Colour Data Compression Standard, Standards for

Electronic Imaging Systems, M. Nier, M. E. Courtot, Editors, SPIE, Vol. CR37, pp. 68-97, (1991).

G. K. WALLACE : The JPEG Still Picture Compression Standard, Communications of the ACM, Vol. 34, No. 4, pp.

31-44, (April 1991).

A. N. NETRAVALI and B. G. HASKELL : Digital Pictures : Representation and Compression, Plenum Press, New

York 1988.

W. B. PENNEBAKER and J. L. MITCHELL : JPEG : Still Image Data Compression Standard, Van Nostrand

Reinhold, New York 1993.

M.2

DCT

関連

W. CHEN, C. H. SMITH and S. C. FRALICK : A Fast Computational Algorithm for the Discrete Cosine Transform,

IEEE Trans. on Communications, Vol. COM-25, pp. 1004-1009, (Sept. 1977).

N. AHMED, T. NATARAJAN and K. R. RAO : Discrete Cosine Transform, IEEE Trans. on Computers, Vol. C23,

pp. 90-93, (Jan. 1974).

N. J. NARASINHA and A. M. PETERSON : On the Computation of the Discrete Cosine Transform, IEEE Trans. on

Communications, Vol. COM-26, No. 6, pp. 966-968, (Oct. 1978).

P. DUHAMEL and C. GUILLEMOT : Polynomial Transform Computation of the 2-D DCT, Proc. IEEE ICASSP-90,

pp. 1515-1518, Albuquerque, New Mexico (1990).

E. FEIG : A Fast Scaled DCT Algorithm, in Image Processing Algorithms and Techniques, Proc. SPIE, Vol. 1244, K.

S. Pennington and R. J. Moorhead II, Editors, pp. 2-13, Santa Clara, California, (1990).

H. S. HOU : A Fast Recursive Algorithm for Computing the Discrete Cosine Transform, IEEE Trans. Acoust.

Speech and Signal Processing, Vol. ASSP-35, No. 10, pp. 1455-1461.

B. G. LEE : A New Algorithm to Compute the Discrete Cosine Transform, IEEE Trans. on Acoust. , Speech and

Signal Processing, Vol. ASSP-32, No. 6, pp. 1243-1245, (Dec. 1984).

E. N. LINZER and E. FEIG : New DCT and Scaled DCT Algorithms for Fused Multiply/Add Architectures, Proc.


178

X 4301-1995 (ISO/IEC 10918-1 : 1994)

IEEE ICASSP-91, pp. 2201-2204, Toronto, Canada, (May 1991).

M. VETTERLI and H. J. NUSSBAUMER : Simple FFT and DCT Algorithms with Reduced Number of Operations,

Signal Processing, (Aug. 1984).

M. VETTERLI : Fast 2-D Discrete Cosine Transform, Proc. IEEE ICASSP-85, pp. 1538-1541, Tampa, Florida,

(March 1985).

Ye ARAI, T. AGUI, and M. NAKAJIMA : A Fast DCT-SQ Scheme for Images, Trans. of IEICE, Vol. E. 71, No. 11,

pp. 1095-1097, (Nov. 1988).

N. SUEHIRO and M. HATORI : Fast Algorithms for the DFT and other Sinusoidal Transforms, IEEE Trans. on

Acoust., Speech and Signal Processing, Vol. ASSP-34, No. 3, pp. 642-644, (June 1986).

M.3

量子化及び視覚特性関連

W H. CHEN and W. K. PRATT : Scene adaptive coder, IEEE Trans. on Communications, Vol. COM-32, pp.

225-232 (March 1984).

D. J. GRANRATH : The role of human visual models in image processing, Proceedings of the IEEE, Vol. 67, pp.

552-561, (May 1981).

H. LOHSCHELLER : Vision adapted progressive image transmission, Proceedings of EUSIPCO, Vol. 83, pp.

191-194, (Sept. 1983).

H. LOHSCHELLER and U. FRANKE : Colour picture coding

Algorithm optimization and technical realization,

Frequenze, Vol. 41, pp. 291-299, (1987).

H. LOHSCHELLER : A subjectively adapted image communication system, IEEE Trans. on Communications, Vol.

COM-32, pp. 1316-1322, (Dec. 1984).

H. A. PETERSON et al : Quantization of colour image components in the DCT domain, SPIE/IS & T 1991

Symposium on Electronic Imaging Science and Technology, (Feb. 1991).

M.4

算術符号化関連

G LANGDON : An Introduction to Arithmetic Coding, IBM J. Res. Develop., Vol. 28, pp. 135-149, (March 1984).

W. B. PENNEBAKER, J. L. MITCHELL, G. LANGDON Jr., and R. B. ARPS : An Overview of the Basic

Principles of the Q-Coder Binary Arithmetic Coder, IBM J. Res. Develop., Vol. 32, No. 6, pp. 717-726, (Nov. 1988).

J. L. MITCHELL and W. B. PENNEBAKER : Optimal Hardware and Software Arithmetic Coding Procedures for

the Q-Coder Binary Arithmetic Coder, IBM J. Res. Develop., Vol. 32, No.6, pp. 727-736, (Nov. 1988).

W. B. PENNEBAKER and J. L. MITCHELL : Probability Estimation for the Q-Coder, IBM J. Res. Develop., Vol.

32, No. 6, pp. 737-752, (Nov. 1988).

J. L. MITCHELL and W. B. PENNEBAKER : Software Implementations of the Q-Coder, IBM J. Res. Develop.,

Vol.32, No. 6, pp. 753-774, (Nov. 1988).

R. B. ARPS, T. K. TRUONG, D. J. LU, R. C. PASCO and T. D. FRIEDMAN : A Multi-Purpose VLSI Chip for

Adaptive Data Compression of Bilevel Images, IBM J. Res. Develop., Vol. 32, No. 6, pp. 775-795, (Nov. 1988).

F. ONO, M. YOSHIDA, T. KIMURA and S. KINO : Subtraction-type Arithmetic Coding with MPS/LPS

Conditional Exchange, Annual Spring Conference of IECED, Japan, D-288, (1990).

D. DUTTWEILER and C. CHAMZAS : Probability Estimation in Arithmetic and Adaptive-Huffman Entropy

Coders, submitted to IEEE Trans. on Image Processing.


179

X 4301-1995 (ISO/IEC 10918-1 : 1994)

C. B. JONES : An Efficient Coding System for Long Source Sequences, IEEE Trans. Inf. Theory, Vol. IT-27, pp.

280-291, (May 1981).

G LANGDON : Method for Carry-over Control in a Fifo Arithmetic Code String, IBM Technical Disclosure

Bulletin, Vol. 23, No.1, pp. 310-312, (June 1980).

M.5

ハフマン符号化関連

D. A. HUFFMAN : A Method for the Construction of Minimum Redundancy codes, Proc. IRE, Vol. 40, pp.

1098-1101, (Sept.1952).

画像処理技術調査研究委員会  構成表

氏名

所属

(委員長)

井  上  英  一

プロセス資材株式会社,東京工業大学名誉教授

(副委員長)

小  野  善  雄

大日本スクリーン製造株式会社

(副委員長)

梶      光  雄

日本電気エンジニアリング株式会社

青  木  正  喜

成蹊大学

伊勢崎  幸  一

光村印刷株式会社

井  内  政  行

コニカ株式会社

茨  木      久

日本電信電話株式会社

岩  本  明  人

株式会社東芝

大  山  永  昭

東京工業大学

奥  山      慈

東京工業大学

小  野  文  孝

三菱電機株式会社

志  村  喜三郎

凸版印刷株式会社

瀬戸屋  英  雄

通商産業省工業技術院

中  嶋  正  之

東京工業大学

羽  鳥  好  津

国際電信電話株式会社

藤  本      功

三菱電機株式会社

三  品  博  達

室蘭工業大学

村  山      登

株式会社リコー

安  田      浩

日本電信電話株式会社

谷  萩  隆  嗣

千葉大学

山  崎  清  一

大日本印刷株式会社

山  崎      孝

富士写真フィルム株式会社

米  満      潤

ソニー株式会社

(事務局)

宇  田  和  正

財団法人日本規格協会情報技術標準化研究センター

JPEG JIS

化分科会  構成表

氏名

所属

(主査)

茨  木      久

日本電信電話株式会社

小  野  文  孝

三菱電機株式会社

小  池      淳

国際電信電話株式会社

佐々木      実

株式会社東芝

高  島  洋  典

日本電気株式会社

滝  沢  正  明

株式会社日立製作所

半  田  晶  彦

日本ビクター株式会社

森      雅  博

株式会社富士通研究所

山  本      勉

ソニー株式会社

佐  野  浩  一

通商産業省工業技術院

(事務局)

宇  田  和  正

財団法人日本規格協会情報技術標準化研究センター