(57)【要約】余剰符号量が計算され、余剰符号量に対応したしきい値ａｃｔ＿ｔｈｒｓｈが求められる。マクロブロックを指示する変数ｍｂがゼロに初期化され、ｍｂとマクロブロックの総数とが比較される。ｍｂが総数に一致すれば、処理が終了する。そうでなければ、ｍｂで指示されるマクロブロックのアクティビティ情報の順位とａｃｔ＿ｔｈｒｓｈの順位を比較する。ａｃｔ＿ｔｈｒｓｈよりもアクティビティ情報の順位が若ければ、ｑ＿ｓｃａｌｅを下げられる可能性があるので、マクロブロックｍｂのアクティビティ情報とｍｉｎ＿ｑｑとからｑ＿ｓｃａｌｅを計算する。当該マクロブロックのｑ＿ｓｃａｌｅを減じ、総符号量を変数ｔｍｐに格納する。ｔｍｐと目標符号量ＧＥＮ＿ＴＧＴとを比較する。ｔｍｐがＧＥＮ＿ＴＧＴ以下であれば、量子化ステップを細かくすることができるので、マクロブロックｍｂの量子化ステップをひとつ減ずる。
2002080567.tif 000002
【特許請求の範囲】
【請求項１】
複数のブロックによって構成される等長化単位毎に、目標符号量内で画像信号を量子化する画像信号量子化装置において、
上記画像信号を複数の異なる量子化ステップで量子化したときの、上記画像信号の上記等長化単位で発生する総符号量を、上記複数の量子化ステップの夫々に対応して求める総符号量検出手段と、
上記総符号量が目標符号量を下回り、上記総符号量と上記目標符号量との差が最小となる量子化ステップである第１の量子化ステップを上記複数のステップの中から決定する第１の決定手段と、
上記画像信号の上記ブロック毎のアクティビティを検出するアクティビティ検出手段と、
上記第１の量子化ステップを上記アクティビティに基づいて上記ブロック毎に変化させて第２の量子化ステップを決定する第２の決定手段と、
上記等長化単位分の上記画像信号の上記複数のブロックの全てを上記第１の量子化ステップで量子化した時の符号量と上記総符号量との差である余剰符号量を検出する余剰符号量検出手段と、
上記アクティビティを考慮した第２の量子化ステップの決定時における丸めにおける誤差に応じて各ブロックの優先度を決定する優先度決定手段と、
上記優先度に応じて選択されたブロックに対して、上記第２の量子化ステップを変化させ、第３の量子化ステップを決定する第３の決定手段と、
上記第２又は第３の決定手段で決定された量子化ステップで各ブロックを量子化する量子化手段とからなることを特徴とする画像信号量子化装置。
【請求項２】
請求の範囲１において、
上記優先度決定手段は、上記余剰符号量に基づいて、アクティビティがその値以下のブロックに対して量子化ステップを変化させることが可能であることを示すしきい値を上記優先度を示す情報として出力する画像信号量子化装置。
【請求項３】
請求の範囲１において、
上記第３の決定手段は、優先度に応じて選択されたブロックに対して、順次、上記第２の量子化ステップを変化させるとともに、上記余剰符号量を再計算し、上記余剰符号量がマイナスとなる直前まで処理を行う画像信号量子化装置。
【請求項４】
請求の範囲１において、
上記優先度決定手段が上記丸めにおける切捨てた値の大きさに応じて各ブロックの優先度を決定する画像信号量子化装置。
【請求項５】
複数のブロックによって構成される等長化単位毎に、目標符号量内で画像信号を量子化する画像信号量子化方法において、
上記画像信号を複数の異なる量子化ステップで量子化したときの、上記画像信号の上記等長化単位で発生する総符号量を、上記複数の量子化ステップの夫々に対応して求める総符号量検出ステップと、
上記総符号量が目標符号量を下回り、上記総符号量と上記目標符号量との差が最小となる量子化ステップである第１の量子化ステップを上記複数のステップの中から決定する第１の決定ステップと、
上記画像信号の上記ブロック毎のアクティビティを検出するアクティビティ検出ステップと、
上記第１の量子化ステップを上記アクティビティに基づいて上記ブロック毎に変化させて第２の量子化ステップを決定する第２の決定ステップと、
上記等長化単位分の上記画像信号の上記複数のブロックの全てを上記第１の量子化ステップで量子化した時の符号量と上記総符号量との差である余剰符号量を検出する余剰符号量検出ステップと、
上記アクティビティを考慮した第２の量子化ステップの決定時における丸めにおける誤差に応じて各ブロックの優先度を決定する優先度決定ステップと、
上記優先度に応じて選択されたブロックに対して、上記第２の量子化ステップを変化させ、第３の量子化ステップを決定する第３の決定ステップと、
上記第２又は第３の決定手段で決定された量子化ステップで各ブロックを量子化する量子化ステップとからなることを特徴とする画像信号量子化方法。
【発明の詳細な説明】
技術分野
この発明は、例えばＤＣＴ（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）を用いた符号化に対して適用できる画像信号量子化装置およびその方法に関する。
背景技術
ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅｓ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ）規格に代表されるＤＣＴを用いた画像圧縮方式では、伝送路に送出されるビットストリームが所望のレートになるように、符号量制御を行なっている。例えば量子化ステップを表す量子化インデックスを制御することによって、符号量制御がなされる。ＭＰＥＧ２でＴＭ５として提案されている符号量制御では、仮想バッファの残量と、以前エンコードした際の量子化インデックスと発生符号量の関係を用いて量子化ステップをフィードバック制御している。
図１は、ＭＰＥＧのレイヤー構造を示すものである。シーケンス層、ＧＯＰ（Ｇｒｏｕｐ  Ｏｆ  Ｐｉｃｔｕｒｅ）層、ピクチャ層、スライス層、マクロブロック層からなる階層構造が規定されている。より具体的には、図１に示すように、スライス層や、マクロブロック層に含まれるデータ（Ｑスケールと呼ぶ）で量子化ステップを変化させることによって、１フレーム等の固定期間で発生する符号量を調節している。例えば（４：２：０）のフォーマットでは、４個の輝度信号のブロックと、色信号Ｕの１個のブロックと、色信号Ｖの１個のブロックとによって、マクロブロックが構成されている。
一例として、Ｑスケールの値ｑ＿ｓｃａｌｅとして、Ｑ１〜Ｑ３１の３１種類が用意されている。Ｑスケールの番号が大きくなるにしたがって、量子化ステップが大きい値となるようにされている。第２図に示すように、量子化と総符号量の関係は、量子化ステップを大きくすると、量子化が粗くなり総符号量が少なくなる。逆に、量子化ステップを小さくすると、量子化は細かくなり総符号量が多くなる。また、量子化は離散値しかとれないため、総符号量も離散的になる。
通信等のアプリケーションでは、以前の量子化ステップと総符号量の関係を用いて、現在の平均レートに対してフィードバックをかける方式が一般的である。すなわち、現在の平均レートが目標レートよりも高めならば量子化ステップを若干粗めにして総符号量を下げ、現在の平均レートが低めならば量子化ステップを若干細かくして総符号量を増やす。このようにして平均的に目標レートを実現するように制御を行う。すなわち、細かい時間で見ると総符号量は増減するものの、長い時間で見ると平均的に総符号量を目標値とするものである。
しかしながら、編集等を前提としたＶＴＲのようなアプリケーションでは、前述のような平均レートだけで制御すると不具合がおきてしまう。このようなアプリケーションでは、例えばフレーム毎での編集といった操作があるため、編集単位毎にその総符号量が一定量を絶対に超えないような制御が必要となる。以下、このような制御を固定長符号量制御と呼ぶことにする。
前述のフィードバック制御ではこの様な制御が困難なため、再生画像の破綻を来したり、あるいは符号量が目標値を超えないようにマージンを見込み過ぎて画質が劣化してしまうことがあった。そこで、予め異なる量子化ステップの固定量子化器を複数用いて量子化を行ない、そのときの総符号量に基づいて、量子化制御を行なうという技術が知られている。例えば、国際公開公報ＷＯ９６／２８９３７には、フィードフォワード方式の符号量制御が開示されている。
具体的には、第２図に示される３１種類のＱスケールをそれぞれ持つ量子化器を設け、各量子化器で量子化された量子化ＤＣＴ係数の１フレーム期間（以下では、画面の用語を適宜使用する）の総符号量をそれぞれを求め、総符号量が目標符号量を超えず、且つ目標符号量に対する差が小さいＱスケールを決定する。第２図の例では、Ｑ４がそのようなＱスケールに該当する。
しかしながら、この求められた例えば３１種類の量子化の時の総符号量をもとに、どのように量子化ステップを決めるのかが問題となる。Ｑスケールは、離散的なものであるので、ビットレートも離散的な値しかとれず細かな制御ができず、目標符号量との差が充分に小さくならない問題があった。
したがって、この発明の目的は、符号量制御において、アクティビティに応じて、目標符号量を超えないで、且つ目標符号量と総符号量との差をより小さくすることが可能な画像信号量子化装置およびその方法を提供することにある。
発明の開示
請求の範囲１の発明は、複数のブロックによって構成される等長化単位毎に、目標符号量内で画像信号を量子化する画像信号量子化装置において、
画像信号を複数の異なる量子化ステップで量子化したときの、画像信号の等長化単位で発生する総符号量を、複数の量子化ステップの夫々に対応して求める総符号量検出手段（第３図における量子化器１０−１〜１０−ｎ、符号量検出器１１−１〜１１−ｎ、メモリ１２、ｍｉｎ＿ｑｑ決定部１３、第５図におけるメモリ３０３、加算器３０４）と、
総符号量が目標符号量を下回り、総符号量と目標符号量との差が最小となる量子化ステップである第１の量子化ステップを複数のステップの中から決定する第１の決定手段（第３図におけるｍｉｎ＿ｑｑ決定部１３、第５図における比較器３０７、レジスタ３０８）と、
画像信号のブロック毎のアクティビティを検出するアクティビティ検出手段（第３図におけるアクティビティ算出回路１５）と、
第１の量子化ステップをアクティビティに基づいてブロック毎に変化させて第２の量子化ステップを決定する第２の決定手段（第３図におけるｍｉｎ＿ｑｑ決定部１３）と、
等長化単位分の画像信号の複数のブロックの全てを第１の量子化ステップで量子化した時の符号量と総符号量との差である余剰符号量を検出する余剰符号量検出手段（第３図におけるｍｉｎ＿ｑｑ決定部１３、第９図におけるステップＳ１）と、
アクティビティを考慮した第２の量子化ステップの決定時における丸めにおける誤差に応じて各ブロックの優先度を決定する優先度決定手段（第３図におけるＱ＿ｆｉｎａｌ決定部１４内部のテーブル）と、
優先度に応じて選択されたブロックに対して、第２の量子化ステップを変化させ、第３の量子化ステップを決定する第３の決定手段（第３図におけるＱ＿ｆｉｎａｌ決定部１４）と、
第２又は第３の決定手段で決定された量子化ステップで各ブロックを量子化する量子化手段（第３図における量子化部６）とからなることを特徴とする画像信号量子化装置である。
請求の範囲４の発明は、複数のブロックによって構成される等長化単位毎に、目標符号量内で画像信号を量子化する画像信号量子化方法において、画像信号を複数の異なる量子化ステップで量子化したときの、画像信号の等長化単位で発生する総符号量を、複数の量子化ステップの夫々に対応して求める総符号量検出ステップと、総符号量が目標符号量を下回り、総符号量と目標符号量との差が最小となる量子化ステップである第１の量子化ステップを複数のステップの中から決定する第１の決定ステップと、画像信号のブロック毎のアクティビティを検出するアクティビティ検出ステップと、第１の量子化ステップをアクティビティに基づいてブロック毎に変化させて第２の量子化ステップを決定する第２の決定ステップと、等長化単位分の画像信号の複数のブロックの全てを第１の量子化ステップで量子化した時の符号量と総符号量との差である余剰符号量を検出する余剰符号量検出ステップと、アクティビティを考慮した第２の量子化ステップの決定時における丸めにおける誤差に応じて各ブロックの優先度を決定する優先度決定ステップと、優先度に応じて選択されたブロックに対して、第２の量子化ステップを変化させ、第３の量子化ステップを決定する第３の決定ステップと、第２又は第３の決定手段で決定された量子化ステップで各ブロックを量子化する量子化ステップとからなることを特徴とする画像信号量子化方法である。
発明を実施するための最良の形態
以下、この発明の一実施例について図面を参照して説明する。第３図は、この発明が適用されたエンコーダの全体的構成を示す。一例として、１フレーム、すなわち、１画面単位で総符号量が固定長になるように制御する。第３図において、参照符号１が走査変換部を示す。走査変換部１において、入力画像信号がマクロブロックに分割される。入力画像がプログレッシブ走査の場合では、そのままマクロブロックに分割され、インターレース走査の場合は、フィールドーフレーム変換してマクロブロックに分割される。ＭＰＥＧでは、輝度信号に関して、４個のＤＣＴブロックから構成される（１６×１６）のサイズのブロックが構成される。色差信号Ｃｒ、Ｃｂに関して、（４：２：０）の場合、それぞれが（８×８）のブロックが構成される。これらの合計６個のＤＣＴブロックをまとめて一つのマクロブロックが構成される。
走査変換部１においてマクロブロック化されたデータが本線系２および予測系３にそれぞれ入力される。本線系２は、参照符号４が付されたＦＩＦＯ、参照符号５が付されたＤＣＴ処理部、参照符号６が付された量子化部、参照符号７が付されたＶＬＣ（Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）、参照符号８が付されたバッファとからなる。
ＤＣＴ処理部５では、イントラ符号化が行われ、入力画素値そのものがＤＣＴされる。量子化部６には、予測系３においてマクロブロックｍｂ毎に決定された量子化ステップＱ＿ｆｉｎａｌ［ｍｂ］が供給され、この量子化ステップＱ＿ｆｉｎａｌ［ｍｂ］でＤＣＴ係数が量子化される。ＦＩＰＯ４は、予測系３において、量子化ステップＱ＿ｆｉｎａｌが決定されるまでの時間を補償するための遅延素子である。
量子化部６からの量子化ＤＣＴ係数がＶＬＣ部７において可変長符号化される。ＶＬＣ部７の出力がバッファ８に供給される。バッファ８を介して平滑化されたビットストリームが出力される。
予測系３は、参照符号９で示すＤＣＴ処理部と、参照符号１０−１，１０−２，・・・，１０−ｎで示すｎ個の量子化器と、参照符号１１−１，１１−２，・・・，１１−ｎで示すｎ個の符号量検出器と、参照符号１２で示すメモリと、参照符号１３で示すｍｉｎ＿ｑｑ決定部と、参照符号１４で示すＱ＿ｆｉｎａｌ決定部と、アクティビティ算出回路１５とからなる。Ｑ＿ｆｉｎａｌ決定部１４からの量子化ステップが上述した本線系２の量子化部６に供給される。
ｎ個の量子化器１０−１，１０−２，・・・，１０−ｎは、それぞれ異なる量子化ステップで量子化する。各量子化器で発生した量子化ＤＣＴ係数が符号量検出器１１−１，１１−２，・・・，１１−ｎに供給され、各マクロブロックの符号量が符号量検出器１１−１，１１−２，・・・，１１−ｎからそれぞれ発生する。符号量検出器１１−１，１１−２，・・・，１１−ｎは、量子化ＤＣＴ係数をＶＬＣ部７と同様に可変長符号化し、可変長符号を各マクロブロックについて集計する構成とされている。このようにして求められた各マクロブロックについての各量子化の符号量をメモリ１２に保存する。
メモリ１２上では、各マクロブロックｍｂに対して、ｑ＿ｓｃａｌｅで量子化した符号量をＬｅｎｇｔｈ［ｍｂ，ｑ＿ｓｃａｌｅ］といった二次元配列の形で保存する。例えば１画面内のマクロブロック数が１３５０個で、量子化ステップの種類が３１個であれば、縦および横方向のアドレスの一方が（ｍｂ＝１）から（ｍｂ＝１３５０）までとされ、縦および横方向のアドレスの他方が（ｑ−ｓｃａｌｅ＝１）から（ｑ−ｓｃａｌｅ＝３１）までとされ、両者で指定されるメモリ上のアドレスに各マクロブロックの符号量のデータが格納される。
メモリ１２に格納された符号量を用いて、マクロブロック毎に１つの量子化ステップを選択しながら、１画面分を総和した時の符号量が目標符号量ＧＥＮ＿ＴＧＴ（第２図参照）を上回らずに最も近くなる様なマクロブロックに対しての量子化ステップの組合せを探す。このために、アクティビティ算出回路１５が設けられ、各マクロブロックのアクティビティ情報Ａｃｔ（ｍｂ）が算出される。アクティビティＡｃｔ（ｍｂ）がｍｉｎ＿ｑｑ決定部１３およびＱ＿ｆｉｎａｌ決定部１４に供給される。
ｍｉｎ＿ｑｑ決定部１３は、参照量子化ステップＱｒｅｆの中で、メモリ１２の内容を使用して目標符号量を超えないで、且つ目標符号量との差が最小となる参照量子化ｍｉｎ＿ｑｑを求める。参照量子化ｍｉｎ＿ｑｑがＱ＿ｆｉｎａｌ決定部１４に供給される。Ｑ＿ｆｉｎａｌ決定部１４は、メモリ１２の内容を使用して、後述するように、最終的なものである、Ｑ＿ｆｉｎａｌを決定するものである。
Ｑ＿ｆｉｎａｌ決定部１４には、各マクロブロックｍｂに対応して決定された量子化ステップがＱ＿ｆｉｎａｌ［ｍｂ］という配列の形で格納される。この情報は本線系２に伝送される。本線系２の量子化部６では、各マクロブロックｍｂ＿ｎｏ毎に検出された量子化ステップＱ＿ｆｉｎａｌ［ｍｂ］によってそのマクロブロックのＤＣＴ係数が量子化される。
このような処理により、等長化単位例えば１画面単位の総符号量を所望の量以下にする、固定長符号量制御が実現できる。この制御において、目標符号量ＧＥＮ＿ＴＧＴを上回らず、これに最も近くなるような量子化ステップの組合せを見つける方法が重要である。第２図の例では、Ｑ３では、総符号量が目標符号量ＧＥＮ＿ＴＧＴを上回り、Ｑ４が総符号量が目標符号量ＧＥＮ＿ＴＧＴを超えない範囲で、最も近いものである。そうであっても、Ｑ４を適用した場合、総符号量と目標符号量ＧＥＮ＿ＴＧＴとの間の差が存在する。この差ができる限り小さいことが望ましい。
ここで、差を小さくするために、マクロブロックのアクティビティ情報を用いて量子化ステップを変化させることが効果的である。アクティビティとは、画面内の局所的な画像の性質を表すものである。コンポーネント信号の場合では、輝度信号を使用してアクティビティが算出される。
マクロブロックのアクティビティとしては、従来から知られているように、差の絶対値の合計等いくつかのものが使用できるが、例えばアクティビティとして、下記の式１で示すようなマクロブロックを構成する複数の画素値の分散を使用できる。式１でＮは、マクロブロックを構成する画素の数であり、ｘが画素値であり、ΣがＮ画素についての集計を表し、ｘ＾がマクロブロックの画素値の平均値である。
2002080567.tif 000003
第４図は、このようにアクティビティを算出するアクティビティ算出回路１５の構成を示す。参照符号１０１がマクロブロックの画素値の平均値を算出する平均値算出回路であり、参照符号１０２が時間合わせ用の遅延素子としてのＦＩＦＯであり、参照符号１０３で示す減算器によって平均値に対する各画素値の差が演算される。差が参照符号１０４で示す二乗器で二乗され、さらに積算器１０５で積算され、積算値が１０６で示す割算回路で割り算される。割算回路１０６から式１で表されるアクティビティ情報Ａｃｔ（ｍｂ）が発生する。
予測系３の量子化器１０−１，１０−２，・・・１・１０−ｎでは、アクティビティを考慮した量子化を行なっていない。各量子化器では、Ｑスケールで１画面全体に渡ってＤＣＴ係数を量子化する。なお、第３図におけるアクティビティ算出回路１５は、上述した第４図の構成を有するものである。
そして、１画面全部に対して適用する一定値Ｑｒｅｆに対して、各マクロブロックに適用するアクティビティを考慮した量子化ステップＱａｃｔ（ｍｂ）が得られる。この量子化ステップで量子化した時のそのマクロブロックの符号量Ｌｅｎｇｔｈ［ｍｂ，Ｑａｃｔ（ｍｂ）］を使用して１画面の総符号量が求まる。次に、Ｑｒｅｆを変えていった時の総符号量のうちで、目標符号量ＧＥＮ＿ＴＧＴを超えないで、且つ目標符号量との差を最小とする総符号量を生じさせるＱｒｅｆが参照量子化ｍｉｎ＿ｑｑとして、ｍｉｎ＿ｑｑ決定部１３によって求められる。
かかる参照量子化ｍｉｎ＿ｑｑを求める方法について説明する。予測系３では、上述したように、３１種類のＱスケールによって量子化を行ないそのときのＬｅｎｇｔｈ［ｍｂ，ｑ＿ｓｃａｌｅ］をメモリ１２上に保存している。ここでは、アクティビティが考慮されていない。この時の量子化ステップｑ＿ｓｃａｌｅがある参照量子化ステップＱｒｅｆに対して、当該マクロブロックのアクティビティを考慮した場合のものＱａｃｔの場合、求められた符号量を、Ｑｒｅｆをインデックスとして１画面に渡り累算する。この結果、１画面分の予測系の処理が終った時には、各参照量子化Ｑｒｅｆに対して、アクティビティを考慮した画面総和の符号量が得られることになる。
レートコントロールにおいては、Ｑｒｅｆを離散的に変化させて、目標符号量ＧＥＮ＿ＴＧＴを超えないで目標符号量ＧＥＮ＿ＴＧＴとの差が最小になるような参照量子化を見つける。このようにしてｍｉｎ＿ｑｑが求められる。この処理は、Ｑｒｅｆの総数に等しい回数の比較で済む。
以上の処理を実現するために、予測系３には、ｍｉｎ＿ｑｑ決定部１３が設けられている。ｍｉｎ＿ｑｑ決定部１３の一例の構成を第５図に示す。入力として与えられるデータは、そのマクロブロック（ｍｂ番目のマクロブロック）のアクティビティ情報Ａｃｔ（ｍｂ）と、Ｑスケールと、Ｑスケールで量子化した時の符号量Ｌｅｎｇｔｈ（ｍｂ）である。ｍｉｎ＿ｑｑ決定部１３は、メモリ１２に対してアドレスを出力してアドレスに対応するＬｅｎｇｔｈ（ｍｂ）を受け取るのでＱスケールの値が分かる。各マクロブロックごとにＡｃｔ（ｍｂ）が一つ決定され、Ｑスケールは、量子化器１０−１，・・・，１０−ｎによって、各マクロブロック内で異なる値を並列に適用し、各々に対するＬｅｎｇｔｈ（ｍｂ）が計算される。アクティビティ情報Ａｃｔ（ｍｂ）は、アクティビティ算出回路１５から供給される。符号量Ｌｅｎｇｔｈ（ｍｂ）は、メモリ１２から読み出されたものである。ｍｉｎ＿ｑｑ決定部１３に対する入力としては、ｎ個のＱスケールに対応する符号量Ｌｅｎｇｔｈ（ｍｂ）が１画面の最初のマクロブロックに関するものからその最後のマクロブロックに関するものまで順に供給される。
参照符号３０１で示すマッピング部に対して、Ａｃｔ（ｍｂ）およびＱスケールが供給される。マッピング部３０１は、一例として下記の式２と逆の関係でもって入力されたＱスケール（Ｑａｃｔ）をＱｒｅｆに変換するものである。すなわち、Ｑスケールをアクティビティを考慮したものと仮定し、アクティビティを考慮しない値Ｑｒｅｆをマッピング回路３０１が出力する。
参照量子化ステップＱｒｅｆに対して、アクティビティを考慮した場合の量子化ステップ（実際に使用される量子化ステップ）をＱａｃｔ（ｍｂ）とすると、次の式２でＱａｃｔ（ｍｂ）が決定される。この場合、総符号量を目標符号量以下に制御することとは無視されている。なお、参照量子化ステップＱｒｅｆとは、アクティビティを考慮しないで、１画面全体を量子化する量子化ステップを意味する。この一実施例は、画面の局所的情報としてのアクティビティを考慮するものであるので、仮想的なＱｒｅｆを導入し、Ｑｒｅｆをアクティビティに応じて変更するものである。変更する割合は、Ｑｒｅｆの値と無関係にアクティビティに応じて一定である。
2002080567.tif 000004
ここで、関数ｆｍａｐ（）は、ａｃｔ（ｍｂ）とＱｒｅｆからＱａｃｔ（ｍｂ）を計算するためのものである。例えばＭＰＥＧのＴＭ（Ｔｅｓｔ  Ｍｏｄｅｌ）５で使用されているものを次の式３で示す。
2002080567.tif 000005
ここで、Ｎ＿ａｃｔは、ａｃｔ（ｍｂ）のフレーム平均であるが、システムデイレイを考慮して、前フレームの値を用いることもある。式３において、ａｃｔ（ｍｂ）＝Ｎ＿ａｃｔであれば、Ｑｒｅｆに対して乗じられる係数ｋが１となる。ａｃｔ（ｍｂ）＝０であれば、Ｑｒｅｆに対して乗じられる係数ｋが０．５となる。係数ｋは、０．５から２までの範囲の値をとりうる。このような関数ｆｍａｐ（）を用いて、Ｑａｃｔ（ｍｂ）を算出する。本来、アクティビティ情報Ａｃｔ（ｍｂ）は、連続値（小数点以下の値を有する値）であるが、適当に丸めた代表値、例えば１６ステップの代表値であっても画質的には十分である。
簡単な例として、１フレーム内に４個のマクロブロックが存在し、各マクロブロックのアクティビティ情報Ａｃｔ（ｍｂ）を考慮した量子化ステップに対する操作が（×０．５，×１．０，×０．５，×２．０）であったとする。参照量子化Ｑｒｅｆが例えば１０の場合では、各マクロブロックに対するアクティビティを考慮した量子化Ｑａｃｔは、Ｑｒｅｆに対してＡｃｔ（ｍｂ）を考慮した操作を行うことで、（５，１０，５，２０）となる。マッピング部３０１は、ＱａｃｔとＡｃｔ（ｍｂ）とから参照量子化Ｑｒｅｆを発生する。例えばマッピング部３０１に対してＡｃｔ（ｍｂ）＝０．５でＱａｃｔ＝１０が供給されるときには、Ｑｒｅｆが２０であることが分かる。
マッピング部３０１からの参照量子化Ｑｒｅｆがアドレス生成部３０２に供給される。アドレス生成部３０２は、Ｑｒｅｆからメモリ３０３のアドレスを発生する。メモリ３０３は、予めフレームの先頭でクリアされる。Ｑｒｅｆとして３１通りのものが用意されている時には、Ｑｒｅｆと対応して３１個のメモリ３０３のアドレスが存在する。１画面内のマクロブロック毎に３１種類のＱスケールと各Ｑスケールに対応したＬｅｎｇｔｈがｍｉｎ＿ｑｑ決定部１３へ入力される。
あるアドレスがメモリ３０３に与えられると、そのアドレスに既に書かれている総符号量の途中経過の符号量がメモリ３０３から読み出され、加算器３０４にフィードバックされる。そして、加算器３０４にて入力Ｌｅｎｇｔｈと加算されたものがメモリ３０３の同じアドレスに書き込まれ、積算動作がなされる。したがって、１画面の全てのマクロブロックの処理が終了すると、Ｑｒｅｆのそれぞれについての総符号量がメモリ３０３上に格納される。
次に、参照符号３０５で示すカウンタのカウント値がアドレス生成部３０２およびレジスタ３０９に供給される。このカウント値は、Ｑｒｅｆの３１通りの値に対応して例えば３０，２９，・・・，０とデクリメントするものである。Ｑｒｅｆがデクリメントされるにしたがって総符号量が増大する。アドレス生成部３０２は、カウント値に応じてリードアドレス（すなわち、Ｑｒｅｆ）をメモリ３０３に与える。メモリ３０３からそのアドレスの総符号量が読み出され、減算器３０６に総符号量が供給される。
減算器３０６には、目標符号量ＧＥＮ＿ＴＧＴが供給され、メモリ３０３から読み出された総符号量が目標符号量ＧＥＮ＿ＴＧＴから減算される。減算器３０６の出力が比較器３０７およびレジスタ３０８に供給される。比較器３０７の出力がレジスタ３０８および３０９に対してイネーブルとして供給される。比較器３０７の他方の入力としてレジスタ３０８の出力が供給される。
比較器３０７は、減算器３０６の減算出力とレジスタ３０８に蓄えられているレジスタデータとを比較し、減算出力がレジスタデータより小さい場合に、レジスタ３０８および３０９が入力を取り込むイネーブルとしての比較出力を発生する。減算出力が負の場合では、比較器３０７がイネーブルを発生しない。したがって、Ｑｒｅｆの全てに対応するリードアドレスを発生し終えた時点では、レジスタ３０８には、最小の減算出力が格納され、レジスタ３０９には、最小減算出力を発生したＱｒｅｆに対応するカウント値が格納されている。このカウント値がｍｉｎ＿ｑｑとして出力される。なお、減算出力が負となった時点で、カウンタ３０５のカウントを停止しても良い。
ｍｉｎ＿ｑｑ決定部１３の処理について、第６図を参照してより具体的に説明する。簡単のために、量子化ステップの種類が１，２，４，８，１６であり、アクティビティを考慮した量子化ステップに対する操作、すなわち、係数ｋが０．５，１．０，２．０であるとする。この場合では、ＱｒｅｆとＱａｃｔとは、第６図Ａに示すような関係となる。例えばＱｒｅｆ＝２の例では、アクティビティを考慮した量子化ステップＱａｃｔがＱａｃｔ＝１，Ｑａｃｔ＝２，Ｑａｃｔ＝４となる。
今、４つのマクロブロックｍｂ０，ｍｂ１，ｍｂ２，ｍｂ３からなる１画面を考える。それぞれの係数ｋが（２．０，０．５，２．０，１．０）とする。画面内のＱｒｅｆを２，４，８とした場合、各マクロブロックｍｂｎのアクティビティを考慮した量子化ステップは、第６図Ｂに示すものとなる。Ｑｒｅｆ＝１およびＱｒｅｆ＝１６の場合には、操作後の値が規定の範囲からはみ出してしまうために除外している。すなわち、該当なしとして処理する。
したがって、Ｑｒｅｆに対する１画面の総符号量ｔｏｔａｌ＿ｌｅｎｇｔｈ（Ｑｒｅｆ）は、下記に示すものとなる。
2002080567.tif 000006
第３図おける予測系３では、各マクロブロックに対して全ての量子化ステップ１，２，４，８，１６によってそれぞれ量子化を行う。まず、ｔｏｔａｌ＿ｌｅｎｇｔｈ（２）、ｔｏｔａｌ＿ｌｅｎｇｔｈ（４）、ｔｏｔａｌ＿ｌｅｎｇｔｈ（８）が０に初期化される。最初のマクロブロックｍｂ０について、Ｌｅｎｇｔｈ［ｍｂ０，１］，Ｌｅｎｇｔｈ［ｍｂ０，２］，Ｌｅｎｇｔｈ［ｍｂ０，４］，Ｌｅｎｇｔｈ［ｍｂ０，８］，Ｌｅｎｇｔｈ［ｍｂ０，１６］が得られる。ｍｂ０についての係数ｋが２であるので、第６図Ａを参照してＱａｃｔからＱｒｅｆの関係を求めることにより下記のように各Ｑｒｅｆに対する符号量が分かる。
Ｌｅｎｇｔｈ［ｍｂ０，１］・・・・該当無し（Ｑａｃｔが１になるようなＱｒｅｆが存在しないという意味である。）
Ｌｅｎｇｔｈ［ｍｂ０，２］・・・・Ｑｒｅｆ＝１でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ０，４］・・・・Ｑｒｅｆ＝２でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ０，８］・・・・Ｑｒｅｆ＝４でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ０，１６］・・・・Ｑｒｅｆ＝８でアクティビティを考慮した符号量
第６図Ａに示す表を参照するのがマッピング部３０１（第５図参照）である。マッピング部３０１からのＱｒｅｆに応じてメモリ３０３のアドレスを変化させて積算する。それによってマクロブロックｍｂ０だけでのｔｏｔａｌ＿ｌｅｎｇｔｈは，下記のものとなる。
2002080567.tif 000007
マクロブロックｍｂ１については、係数ｋが０．５であるので、第６図Ａを参照して同様に符号量が分かる。
Ｌｅｎｇｔｈ［ｍｂ１，１］・・・・Ｑｒｅｆ＝２でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ１，２］・・・・Ｑｒｅｆ＝４でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ１，４］・・・・Ｑｒｅｆ＝８でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ１，８］・・・・Ｑｒｅｆ＝１６でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ１，１６］・・・・該当無し
これによりマクロブロックｍｂ１までのｔｏｔａｌ＿ｌｅｎｇｔｈは，下記のものとなる。
2002080567.tif 000008
マクロブロックｍｂ２については、係数ｋが２．０であるので、第６図Ａを参照して同様に符号量が分かる。
Ｌｅｎｇｔｈ［ｍｂ２，１］・・・・該当無し
Ｌｅｎｇｔｈ［ｍｂ２，２］・・・・Ｑｒｅｆ＝１でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ２，４］・・・・Ｑｒｅｆ＝２でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ２，８］・・・・Ｑｒｅｆ＝４でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ２，１６］・・・・Ｑｒｅｆ＝８でアクティビティを考慮した符号量
これによりマクロブロックｍｂ２までのｔｏｔａｌ＿ｌｅｎｇｔｈは，下記のものとなる。
2002080567.tif 000009
となる。
マクロブロックｍｂ３については、係数ｋが１．０であるので、第６図Ａを参照して同様に符号量が分かる。
Ｌｅｎｇｔｈ［ｍｂ３，１］・・・・Ｑｒｅｆ＝１でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ３，２］・・・・Ｑｒｅｆ＝２でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ３，４］・・・・Ｑｒｅｆ＝４でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ３，８］・・・・Ｑｒｅｆ＝８でアクティビティを考慮した符号量
Ｌｅｎｇｔｈ［ｍｂ３，１６］・・・・Ｑｒｅｆ＝１６でアクティビティを考慮した符号量
これによりマクロブロックｍｂ３まで（すなわち、１画面のｔｏｔａｌ＿ｌｅｎｇｔｈは，下記のものとなる。
2002080567.tif 000010
となる。以上のようにして、２，４，８のＱｒｅｆに対する１画面の総符号量が求められる。
以上の処理によって、目標符号量ＧＥＮ＿ＴＧＴを超えないで、目標符号量ＧＥＮ＿ＴＧＴとの差が最小の参照量子化Ｑｒｅｆがｍｉｎ＿ｑｑとして求められる。しかしながら、Ｑｒｅｆを離散的に操作しているので、ビットレートも離散的な値しかとれず細かな制御ができないため、目標符号量ＧＥＮ＿ＴＧＴとの差が充分に小さくならない可能性がある。そこで、量子化ステップが飛び飛びの離散値しか選ぶことができず、実際に使用できるＱａｃｔ（ｍｂ）が丸め等の処理を受けていることを利用して、目標符号量ＧＥＮ＿ＴＧＴとの差をより小さくする。丸め処理を利用して細かくビットレートを調整する。
すなわち、ビットレートを若干下げたい場合には、いくつかのマクロブロックに対してＱスケールを大きくして総符号量を少なくすれば良い。このとき、アクティビティを考慮した際の丸め処理によって切り捨てられた量が大きいもの、すなわち、切り上げても弊害が少なそうなものから順に切り上げるようにする。逆に、ビットレートを若干上げたい場合には、いくつかのマクロブロックに対してＱスケールを小さくして総符号量を大きくすれば良い。このとき、丸め処理によって切り上げられた量が大きいものから順に切り捨てるようにする。それによって、アクティビティを考慮してＱスケールを変化させた時に、本来のＱスケールに対して誤差が少ないようにする。
次に例を示す。簡単のため、１画面が４個のマクロブロックによって構成されているとする。所望のビットレートを得るため各マクロブロックに対するアクティビティを考慮して連続値（小数点以下まで求められる値）の量子化ステップは、（３．２、５．９、４．１、１０．５）とする。これを四捨五入で丸めをすると、（３、６、４、１１）となる。若し、この組み合わせにより得られるビットレートが所望のものよりも高く、ビットレートを下げたい場合には、下記の順にＱスケールを変化させる。（）内の値は、元の連続値に対する差を示す。
３→４（０．８）、４→５（０．９）、６→７（１．１）、１１→１２（１．５）
逆にビットレートが所望のものよりも低く、ビットレートを上げたい場合には、下記の順にする。（）内の値は、元の連続値に対する差を示す。
１１→１０（０．５）、６→５（０．９）、４→３（１．１）、３→２（１．２）
前述したｍｉｎ＿ｑｑは、ビットレートが所望のものよりも低く、ビットレートを上げたい場合に該当し、Ｑスケールを小さくする処理が必要である。しかしながら、処理の順序例えば画面の上の左端のマクロブロックから順に下の右端に向かってＱスケールを小さくした時には、処理の最初の部分のＱスケールのみが制御され、後半の部分では、Ｑスケールが制御されず、画質の改善にとってそれほど有効ではない不都合が生じる。このような不都合を生じないで、アクティビティ情報に応じて量子化ステップを制御することが必要である。そのような処理を実現する方法（しきい値法と称する）について以下に説明する。
しきい値法は、目標符号量とｍｉｎ＿ｑｑで得られる総符号量の関係からしきい値を求め、このしきい値と各マクロブロックのアクティビティを比較して量子化ステップを細かくするものである。予測系３のＱ＿ｆｉｎａｌ決定部１４は、このしきい値法によってＱ＿ｆｉｎａｌを決定するものである。以下に詳細を述べる。
予測系３で、ｍｉｎ＿ｑｑを求めるために符号量の集計をとるのと同時に、式２を満たす量子化ステップより一つ小さいものの集計をＱｒｅｆをインデックスとしてとるようにする。
演算処理としては、先ず第５図の構成によってｍｉｎ＿ｑｑを求める。この符号量をＬＯＷ＿ＴＧＴと表記し、一つ小さい量子化ステップをとったときの符号量をＵＰＲ＿ＴＧＴと表記する。ｍｉｎ＿ｑｑ決定部１３は、符号量ＬＯＷ＿ＴＧＴをＱ＿ｆｉｎａｌ決定部１４に供給する。ＬＯＷ＿ＴＧＴは、後述する第９図のフローチャートにおける変数ｔｏｔａｌの初期値に用いられる。第２図の例では、ＱスケールＱ４がＬＯＷ＿ＴＧＴであり、Ｑ３がＵＰＲ＿ＴＧＴである。Ｑ＿ｆｉｎａｌ決定部１４は、これらの符号量から次の式４で表す余剰符号量の比率ＲＥＳ＿ＣＮＴを計算する。
2002080567.tif 000011
Ｑ＿ｆｉｎａｌ決定部１４は、この比率ＲＥＳ＿ＣＮＴを用いて、予め作成されたルックアップテーブルからアクティビティのしきい値ａｃｔ＿ｔｈｒｓｈを求める。
また、Ｑ＿ｆｉｎａｌ決定部１４は、各参照量子化Ｑｒｅｆおよび各アクティビティ毎に、ｑ＿ｓｃａｌｅを変化させる順番を予め求めたテーブルを有する。第７図は、そのテーブルの一例を部分的に示す。ここで、ｋは、アクティビティ情報に応じて量子化ステップを操作するための係数、すなわち、式３において、Ｑｒｅｆ（ｍｂ）に乗じられる係数部分を表している。第７図では、簡単のため、係数ｋが５種類の離散的な値（０．５，０．７５，１．０，１．５，２．０）をとりうるものとしている。
例えばＱｒｅｆ＝１０の場合では、係数ｋを乗じた値が（５，７．５，１０，１５，２０）となり、四捨五入で丸めた値が（５，８，１０，１５，２０）となる。ビットレートを上げるために、丸め後の量子化から１を減算し、（４，７，９，１４，１９）を得る。前述したように、丸め処理によって切り上げられた量が大きいものから順に変化させる。その順位が第７図に示されている。Ｑｒｅｆ＝１１の場合でも、同様のテーブルが作成される。図示しない他のＱｒｅｆについても同様に順位が予め求められている。
また、Ｑ＿ｆｉｎａｌ決定部１４は、第８図に概念的に示すような余剰符号量の比率ＲＥＳ＿ＣＮＴに対してアクティビティ情報のしきい値ａｃｔ＿ｔｈｒｓｈを規定するルックアップテーブルを有する。余剰符号量ＲＥＳ＿ＣＮＴが大きくなるにしたがって、しきい値ａｃｔ＿ｔｈｒｓｈが段階的に大きくなるもので、その境界が実験的に定められたものである。ここでは、第１順位から第５順位までが存在するので、しきい値ａｃｔ＿ｔｈｒｓｈとしても、第１順位から第５順位までの中の一つを指定するものとされている。
しきい値ａｃｔ＿ｔｈｒｓｈは、アクティビティがそれ以下の順位のマクロブロックの量子化ステップＱｒｅｆを−１しても良いことを意味する。（ａｃｔ＿ｔｈｒｓｈ＝１）であれば、第１順位の量子化ステップのみを−１できることを意味する。なお、ルックアップテーブルとしては、他の例が可能である。例えば余剰符号量ＲＥＳ＿ＣＮＴが非常に小さくて、量子化ステップを変化させる余地が殆ど無い場合には、そのことを示すデータをルックアップテーブル中に挿入しても良い。
しきい値よりも順位が高いアクティビティのマクロブロックは、量子化ステップを一段階小さく、すなわち、細かくしていく。そうでないものについてはそのままとする。但し、この方法では、しきい値より高い順位のアクティビティのものを全て一段階下げても、目標符号量を超えないという保証がないため、目標符号量を超える前に量子化ステップを小さくするのをやめる。したがって、目標符号量を実現したマクロブロック以降であっても、しきい値よりも順番が高いアクティビティのマクロブロックが存在する可能性がある。
第９図は、上述したしきい値法を説明するためのフローチャートである。Ｑ＿ｆｉｎａｌ決定部１４は、このフローチャートで示す処理によって最終的な量子化ステップＱ＿ｆｉｎａｌを決定する。ステップＳ１では、予測系３で得られた結果を使用して式４で表される余剰符号量ＲＥＳ＿ＣＮＴが計算される。ステップＳ２では、第８図に示すようなルックアップテーブルを参照してアクティビティのしきい値ａｃｔ＿ｔｈｒｓｈが求められる。
ステップＳ３では、マクロブロックのインデックスである変数ｍｂがゼロに初期化される。ステップＳ４では、変数ｍｂとマクロブロックの総数ＭＢ＿ＮＵＭとが比較される。ｍｂ＝ＭＢ＿ＮＵＭであれば、全てのマクロブロックの処理が終わったことになるので、処理を終了する。そうでなければ、処理が次のステップＳ５に進む。
ステップＳ５では、マクロブロックｍｂのアクティビティ情報で定まる順位とａｃｔ＿ｔｈｒｓｈの順位を比較する。ａｃｔ＿ｔｈｒｓｈよりもアクティビティ情報の順位が高ければ、ｑ＿ｓｃａｌｅを下げられる可能性があるので、ステップＳ６に処理が進む。そうでなければ、処理がステップＳ１１に進む。
ステップＳ６では、マクロブロックｍｂのアクティビティ情報とｍｉｎｑｑとからｑ＿ｓｃａｌｅを計算する。ステップＳ７では、全体の符号量（ｔｏｔａｌ）から量子化ステップを下げていない場合のそのマクロブロックの符号量が減算され、さらに、量子化ステップを一つ下げた場合のそのマクロブロックの符号量が加算される。それによって、そのマクロブロックの量子化ステップを一つ下げた場合の総符号量（以前の符号量と比較して増加している）が求められる。この新たな総符号量が変数ｔｍｐに格納される。
ステップＳ８では、ｔｍｐと目標符号量ＧＥＮ＿ＴＧＴとを比較する。ｔｍｐがＧＥＮ＿ＴＧＴ以下であれば、量子化ステップを細かくすることができるので、処理が次のステップＳ９に進む。そうでなければ、処理がステップＳ１１に進む。ステップＳ９では、マクロブロックｍｂの量子化ステップをひとつ減ずる。そして、ステップＳ１０において、総符号量を表す変数ｔｏｔａｌを更新する。ステップＳ１１では、マクロブロックｍｂをインクリメントし、ステップＳ４に戻る。
この発明は、上述した実施例に限定されるものではなく、この発明の要旨を逸脱しない範囲内で種々の変形や応用が可能である。
例えば、ＤＣＴに限られず、ウェーブレット変換、Ｈａａｒ変換、Ｋ−Ｌ変換等の変換符号化に対しても、この発明を適用することができる。
また、この発明は、圧縮符号化されたデータを磁気テープに記録したり、ハードディスク、光磁気ディスクに記録する場合に対して適用できる。さらに、この発明は、圧縮付されたデータをネットワークを介して送信する場合に対しても適用できる。
さらに、マクロブロックの構造としては、（４：２：０）に限らず、（４：２：２）、（４：４：４）、（４：１：１）等の構造であっても良い。マクロブロック内に含まれるＤＣＴブロックの個数も限定されるものではない。よりさらに、符号量を制御する等長化単位としては、１フレームに限らず、より短い期間を設定しても良い。
この発明は、量子化ステップが画像の局所的性質により可変されるので、復号画像の画質を向上することができる。この場合、アクティビティ情報によって補正された量子化ステップを丸める時の処理に注目して、量子化ステップを変化させる場合の優先順位を定めている。さらに、余剰符号量に対応してしきい値をテーブルとして有し、テーブルを参照してしきい値を決定する。そして、しきい値より順位が高いアクティビティを持つマクロブロックの場合では、量子化ステップを一段階細かくする。このようにしてアクティビティに応じて量子化ステップを制御する場合に、余剰符号量に適応して量子化ステップを制御することが可能となる。
【図面の簡単な説明】
第１図は、量子化ステップのデータを伝送する方法の一例を示す略線図である。
第２図は、量子化ステップに対する１画面で発生する総符号量の変化の一例を示す略線図である。
第３図は、この発明の一実施例の全体的構成を示すブロック図である。
第４図は、アクティビティ算出回路の一例のブロック図である。
第５図は、この発明の一実施例における量子化ステップ決定部の一例のブロック図である。
第６図は、この発明の一実施例における量子化ステップのＱｒｅｆおよびＱａｃｔの関係を説明するための略線図である。
第７図は、この発明の一実施例においてアクティビティ情報に応じて量子化ステップを制御する方法を説明するための略線図である。
第８図は、この発明の一実施例において余剰符号量に応じたしきい値の関係のルックアップテーブルの一例を説明するための略線図である。
第９図は、この発明の一実施例における量子化ステップの制御の方法を説明するためのフローチャートである。
符号の説明
２  本線系
３  予測系
６  量子化部
１０−１〜１０−ｎ  量子化器
１５  アクティビティ算出部
Ｓ１    ＲＥＳ＿ＣＮＴを求める
Ｓ２    ａｃｔ＿ｔｈｒｓｈ  を求める
Ｓ３    ０→ｍｂ
Ｓ４    ｍｂ：ＭＢ＿ＮＵＭ
Ｓ５    ｒｅｖ（ａｃｔ（ｍｂ））：ｒｅｖ（ａｃｔ＿ｔｈｒｓｈ）
Ｓ６    ｆｍａｐ（ａｃｔ（ｍｂ），ｍｉｎ＿ｑｑ）→ｑ＿ｓｃａｌｅ
Ｓ７    ｔｏｔａｌ−Ｌｅｎｇｔｈ［ｍｂ，ｑ＿ｓｃａｌｅ］＋Ｌｅｎｇｔｈ［ｍｂ，ｑ＿ｓｃａｌｅ−１］→ｔｍｐ
Ｓ８    ｔｍｐ：ＧＮＥ＿ＴＧＴ
Ｓ９    マクロブックｍｂの量子化ステップを１つ減じる
Ｓ１０    ｔｍｐ→ｔｏｔａｌ
Ｓ１１    ｍｂ＋１→ｍｂ
【図１】
2002080567.tif 000012
【図２】
2002080567.tif 000013
【図３】
2002080567.tif 000014
【図４】
2002080567.tif 000015
【図５】
2002080567.tif 000016
【図６Ａ】
2002080567.tif 000017
【図６Ｂ】
2002080567.tif 000018
【図７】
2002080567.tif 000019
【図８】
2002080567.tif 000020
【図９】
2002080567.tif 000021
【国際調査報告】
2002080567.tif 000022
2002080567.tif 000023
2002080567.tif 000024
2002080567.tif 000025