(57)【要約】【課題】符号化／復号化処理を繰り返しても、画質の劣化の少ない画像を得られるようにする。【解決手段】イントラプレエンコード部３０は、複数の異なる量子化マトリクスを用いて画像データの符号化を行い、量子化マトリクス毎に発生符号量を算出する。符号量制御部４０は、算出された発生符号量から高域成分が多いか否かを識別可能とする識別値を算出して、この識別値が閾値よりも大きく高域成分が多いと判別したときは、高域成分を削減する第１の量子化マトリクスを選択する。識別値が閾値以下で高域成分が少ないと判別したときは、第１の量子化マトリクスよりも高域成分の削減が少ない第２の量子化マトリクスを選択する。さらに、選択された量子化マトリクスを用いて画像データの符号化を行う。高域成分が削減されているときには、高域成分の削減が少ない量子化マトリクスを用いて画像データの符号化が行われるので画質の劣化を軽減できる。【選択図】        図１
2011029956.tif 000002
【特許請求の範囲】
【請求項１】
複数の異なる量子化マトリクスを用いて画像データの符号化を行い、前記量子化マトリクス毎に発生符号量を算出する第１の符号化部と、
前記第１の符号化部で算出された発生符号量から高域成分が多いか否かを識別可能とする識別値を算出して、該識別値が閾値よりも大きく高域成分が多いと判別したときは、高域成分を削減する第１の量子化マトリクスを選択して、識別値が閾値以下で高域成分が少ないと判別したときは、前記第１の量子化マトリクスよりも高域成分の削減が少ない第２の量子化マトリクスを選択する符号量制御部と、
前記符号量制御部で選択された量子化マトリクスを用いて前記画像データの符号化を行う第２の符号化部と
を有する画像符号化装置。
【請求項２】
固定の量子化パラメータと固定の量子化マトリクスを用いて画像データの符号化を行い発生符号量を算出する第３の符号化部をさらに有し、
前記符号量制御部は、前記第３の符号化部で算出された発生符号量が上限値以上であるとき、前記第１の量子化マトリクスよりも高域成分の削減が多い第３の量子化マトリクスを選択する
請求項１記載の画像符号化装置。
【請求項３】
前記符号量制御部は、ＧＯＰ（Group of Picture）内のピクチャ毎に量子化マトリクスの選択を行い、ＧＯＰ内で量子化マトリクスが異なるときは、ピクチャ数が最多となる量子化マトリクスを検索して、前記閾値または前記上限値を、前記最多量子化マトリクスが選択されたときのピクチャと画像が似ているピクチャで前記最多量子化マトリクスが選択される値に変更して再度量子化マトリクスの選択を行う
請求項２記載の画像符号化装置。
【請求項４】
固定の量子化パラメータと固定の量子化マトリクスを用いて画像データの符号化を行い発生符号量を算出する第３の符号化部をさらに有し、
前記第１の符号化部は、複数の異なる量子化パラメータを用いて前記発生符号量の算出を行い、
前記符号量制御部は、前記第３の符号化部で算出された発生符号量に基づいて目標発生符号量を実現する量子化パラメータと該量子化パラメータを用いたときの発生符号量の予測を行い、該予測した発生符号量を前記第１の符号化部で算出された発生符号量に応じて補正して、該補正後の発生符号量が前記目標発生符号量を実現するように量子化パラメータを決定して、
前記第２の符号化部は、前記符号量制御部で決定された量子化パラメータを用いて前記画像データの符号化を行う
請求項１記載の画像符号化装置。
【請求項５】
前記第１の符号化部は、前記複数の異なる量子化マトリクスとして、前記第３の符号化部で用いられている量子化マトリクスと、該量子化マトリクスとは異なる量子化マトリクスを用いて前記発生符号量の算出を行い、
前記符号量制御部は、前記第１の符号化部で用いられる複数の異なる量子化マトリクスから量子化マトリクスの選択を行い、該選択した量子化マトリクスが前記第３の符号化部で用いられている量子化マトリクスと異なるとき、前記第１の符号化部で算出された発生符号量から補正係数を算出して、前記予測した発生符号量を、前記補正係数を用いて補正する
請求項４記載の画像符号化装置。
【請求項６】
前記符号量制御部は、前記第３の符号化部で用いられている固定の量子化マトリクスを用いたときの発生符号量に対する前記選択された量子化マトリクスを用いたときの発生符号量の割合を示す係数を前記補正係数とする
請求項５記載の画像符号化装置。
【請求項７】
前記符号量制御部は、前記予測した量子化パラメータと最も近い量子化パラメータにおける前記係数と、前記予測した量子化パラメータと二番目近い量子化パラメータにおける前記係数を用いた補間処理を行い、前記予測した量子化パラメータにおける前記補正係数を算出する
請求項６記載の画像符号化装置。
【請求項８】
第１の符号化部で、複数の異なる量子化マトリクスを用いて画像データの符号化を行い、前記量子化マトリクス毎に発生符号量を算出するステップと、
符号量制御部で、前記第１の符号化部で算出された発生符号量から高域成分が多いか否かを識別可能とする識別値を算出して、該識別値が閾値よりも大きく高域成分が多いと判別したときは、高域成分を削減する第１の量子化マトリクスを選択して、識別値が閾値以下で高域成分が少ないと判別したときは、前記第１の量子化マトリクスよりも高域成分の削減が少ない第２の量子化マトリクスを選択するステップと、
第２の符号化部で、前記符号量制御部で選択された量子化マトリクスを用いて前記画像データの符号化を行うステップと
を具備する画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像符号化装置および画像符号化方法に関する。詳しくは、画質の劣化を軽減して画像の符号化を行えるようにする。
【背景技術】
【０００２】
従来、ＭＰＥＧ(Moving Picture Experts Group)２等の画像符号化方式において、符号量を理想的に配分することは、主観的な画質を維持するための大きな課題である。
【０００３】
例えば、静止画における理想的な符号量配分とは、歪を均一とした状態(固定的な量子化スケール)で符号化した状態である。この歪が大きくなるような符号量になると、高周波成分や複雑部に歪を偏らせることと併せて、主観的な画質を高めることができる。
【０００４】
ここで、例えば特許文献１では、いわゆるフィードフォワード方式の符号量制御を採用し画質信号の局所的性質に適応した制御を可能とすることによって、復号画像の画質を向上できる画質信号の符号化方法が開示されている。フィードフォワード方式とは、等長化単位において発生する符号量を、複数の量子化スケールについて予め計算し、発生符号量が目標発生符号量を超えない範囲で、適切な量子化スケールを決定するものである。
【０００５】
一方、ＭＰＥＧ２でテストモデルとして提案されているＴＭ５等の符号量制御では、仮想バッファの残量と以前エンコードした際の量子化インデックスと発生符号量の関係を用いてフィードバック制御することによって、符号量制御を行っている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第ＷＯ９６／２８９３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、画像データの符号化では高域成分を削減する量子化マトリクスを用いて符号化を行うことで発生符号量を削減できる。したがって、画像データを符号化して得られた符号化データを復号化したときには高域成分が削減された画像となる。また、復号化後の画像を再度符号化する場合、高域成分が少なくなっているため量子化パラメータが低い値となる傾向がある。ここで、復号化後の画像を再度符号化する場合、高域成分を削減する量子化マトリクスを再度用いて符号化を行うと、広い範囲で高域成分が削除されて画質の劣化が目立つようになってしまう。
【０００８】
そこで、この発明では、符号化／復号化処理を繰り返しても、画質の劣化を軽減することができる画像符号化装置と画像符号化方法を提供する。
【課題を解決するための手段】
【０００９】
この発明の第１の側面は、複数の異なる量子化マトリクスを用いて画像データの符号化を行い、前記量子化マトリクス毎に発生符号量を算出する第１の符号化部と、前記第１の符号化部で算出された発生符号量から高域成分が多いか否かを識別可能とする識別値を算出して、該識別値が閾値よりも大きく高域成分が多いと判別したときは、高域成分を削減する第１の量子化マトリクスを選択して、識別値が閾値以下で高域成分が少ないと判別したときは、前記第１の量子化マトリクスよりも高域成分の削減が少ない第２の量子化マトリクスを選択する符号量制御部と、前記符号量制御部で選択された量子化マトリクスを用いて前記画像データの符号化を行う第２の符号化部とを有する画像符号化装置にある。
【００１０】
この発明において、第３の符号化部では、固定の量子化マトリクスや固定の量子化パラメータを用いて画像データの符号化が行われて発生符号量が算出される。第１の符号化部では、第３の符号化部で用いられている量子化マトリクスを含む複数の異なる量子化マトリクスや複数の異なる量子化パラメータを用いて画像データの符号化が行われて、量子化マトリクスと量子化パラメータ毎に発生符号量が算出される。
【００１１】
符号量制御部では、第１の符号化部で算出された発生符号量から高域成分が多いか否かを識別可能とする識別値を算出して、該識別値が閾値よりも大きく高域成分が多いと判別したとき、第１の符号化部で用いられている複数の量子化マトリクスから高域成分を削減する量子化マトリクスが選択される。また、識別値が閾値以下で高域成分が少ないと判別したとき、第１の符号化部で用いられている複数の量子化マトリクスから、第１の量子化マトリクスよりも高域成分の削減が少ない第２の量子化マトリクスが選択される。また、第３の符号化部で算出された発生符号量が上限値以上であるときは、第１の量子化マトリクスよりも高域成分の削減が多い第３の量子化マトリクスが選択される。
【００１２】
さらに、符号量制御部では、第３の符号化部で算出された発生符号量に基づいて目標発生符号量を実現する量子化パラメータと該量子化パラメータを用いたときの発生符号量の予測が行われて、この予測した発生符号量を第１の符号化部で算出された発生符号量に応じて補正して、補正後の発生符号量が目標発生符号量を実現するように量子化パラメータが決定される。ここで、符号量制御部は、選択した量子化マトリクスが第３の符号化部で用いられている量子化マトリクスと異なるとき、第１の符号化部で算出された発生符号量から補正係数を算出する。例えば、第３の符号化部で用いられている固定の量子化マトリクスを用いたときの発生符号量に対する選択された量子化マトリクスを用いたときの発生符号量の割合を示す係数を補正係数として、予測した発生符号量が補正係数を用いて補正される。
【００１３】
第２の符号化部では、符号量制御部からの量子化マトリクスと量子化パラメータを用いて画像データの符号化が行われる。
【００１４】
また、符号量制御部では、ＧＯＰ（Group of Picture）内のピクチャ毎に量子化マトリクスの選択が行われて、ＧＯＰ内で量子化マトリクスが異なるときは、ピクチャ数が最多となる量子化マトリクスを検索して、この最多となる量子化マトリクスが選択されやすいように選択条件を変更して量子化マトリクスの再選択が行われる。
【００１５】
この発明の第２の側面は、第１の符号化部で、複数の異なる量子化マトリクスを用いて画像データの符号化を行い、前記量子化マトリクス毎に発生符号量を算出するステップと、符号量制御部で、前記第１の符号化部で算出された発生符号量から高域成分が多いか否かを識別可能とする識別値を算出して、該識別値が閾値よりも大きく高域成分が多いと判別したときは、高域成分を削減する第１の量子化マトリクスを選択して、識別値が閾値以下で高域成分が少ないと判別したときは、前記第１の量子化マトリクスよりも高域成分の削減が少ない第２の量子化マトリクスを選択するステップと、第２の符号化部で、前記符号量制御部で選択された量子化マトリクスを用いて前記画像データの符号化を行うステップとを具備する画像符号化方法にある。
【発明の効果】
【００１６】
この発明によれば、複数の異なる量子化マトリクスを用いて画像データの符号化が行われて、量子化マトリクス毎に発生符号量が算出される。また、算出された発生符号量から高域成分が多いか否かを識別可能とする識別値が算出されて、識別値が閾値よりも大きく高域成分が多いと判別したときは、高域成分を削減する第１の量子化マトリクスが選択されて、識別値が閾値以下で高域成分が少ないと判別したときは、第１の量子化マトリクスよりも高域成分の削減が少ない第２の量子化マトリクスが選択される。さらに、選択された量子化マトリクスを用いて画像データの符号化が行われる。このため、高域成分が削減されているときには、高域成分の削減が少ない量子化マトリクスを用いて画像データの符号化が行われるので、符号化／復号化処理を繰り返しても、画質の劣化を軽減することができるようになる。
【図面の簡単な説明】
【００１７】
【図１】画像符号化装置の構成を示す図である。
【図２】量子化マトリクスを示す図である。
【図３】画像符号化装置の動作を示すフローチャートである。
【図４】基本量子化パラメータの決定処理を示すフローチャートである。
【図５】量子化パラメータと発生符号量の算出処理を説明するための図（その１）である。
【図６】量子化パラメータと発生符号量の算出処理を説明するための図（その２）である。
【図７】１ＧＯＰ分の発生符号量の算出処理を示すフローチャートである。
【図８】Ｉピクチャの発生符号量算出処理を示すフローチャートである。
【図９】量子化マトリクスの選択動作を示すフローチャートである。
【図１０】量子化マトリクスの切り換え制限処理を示すフローチャートである。
【図１１】第２の発生符号量の検出処理を示すフローチャートである。
【図１２】高域成分コスト演算の動作を示すフローチャートである。
【図１３】イントラプレエンコード処理の処理結果を示す図である。
【図１４】第２の補正係数の算出動作を示すフローチャートである。
【図１５】非Ｉピクチャの発生符号量算出処理を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、発明を実施するための形態について説明する。この発明では、複数の異なる量子化マトリクスを用いて画像データの符号化を行い、量子化マトリクス毎に発生符号量を算出する。また、算出された発生符号量から高域成分が多いか否かを識別可能とする識別値を算出して、識別値が閾値よりも大きく高域成分が多いと判別したときは、高域成分を削減する第１の量子化マトリクスを選択する。識別値が閾値以下で高域成分が少ないと判別したときは、第１の量子化マトリクスよりも高域成分の削減が少ない第２の量子化マトリクスを選択する。このようにして選択した量子化マトリクスを用いて画像データの符号化を行い、画質の劣化を軽減させる。なお、説明は以下の順序で行う。
１．画像符号化装置の構成
２．画像符号化装置の動作
【００１９】
＜１．符号化装置の構成＞
図１は、本発明の画像符号化装置の構成を示している。画像符号化装置１０は、画像並べ替え部１１、プレエンコード部２０とイントラプレエンコード部３０、符号量制御部４０、ディレイバッファ５０、本エンコード部６０を備えている。
【００２０】
プレエンコード部２０は、予測モード決定部２１、ＤＣＴ（Discrete Cosine Transform)部２２、量子化部２３、逆量子化部２４、ＩＤＣＴ（Inverse Discrete Cosine Transform)部２５、予測画生成部２６、符号長計算部２７を備えている。
【００２１】
イントラプレエンコード部３０は、画面内予測処理部３１、ＤＣＴ部３２、量子化部３３、逆量子化部３４、ＩＤＣＴ部３５、イントラ予測画生成部３６、符号長計算部３７を備えている。また、量子化部３３は複数段の量子化部３３-1〜３３-nで構成されており、符号長計算部３７は複数段の符号長計算部３７-1〜３７-nで構成されている。
【００２２】
本エンコード部６０は、予測処理部６１、ＤＣＴ部６２、量子化部６３、逆量子化部６４、ＩＤＣＴ部６５、予測画生成部６６、可変長符号化部６７を備えている。
【００２３】
このような構成において、画像並べ替え部１１は、例えばＧＯＰ（Group of Picture）構造にしたがって、入力画像の画像データを表示順から符号化順にピクチャの順序を並べ替える。そして、画像並べ替え部１１は、符号化順に並べ替えた画像データを、プレエンコード部２０とイントラプレエンコード部３０とディレイバッファ５０に出力する。
【００２４】
第３の符号化部であるプレエンコード部２０は、画像データを固定の量子化パラメータで量子化して発生符号量の算出を行い、算出した発生符号量を符号量制御部４０に出力する。プレエンコード部２０の予測モード決定部２１は、入力画像の画像データと後述する予測画生成部２６で生成された予測画像データを用いてマクロブロック毎に予測モードを決定する。また、予測モード決定部２１は、決定した予測モードの予測画像データを用いて、入力画像の画像データとの誤差を示す差分画像データをＤＣＴ部２２に出力する。
【００２５】
ＤＣＴ部２２は、差分画像データに対して離散コサイン変換を行い、ＤＣＴ係数を生成して量子化部２３に出力する。
【００２６】
量子化部２３は、固定されている量子化パラメータＱＰ(p)を用いてＤＣＴ係数の量子化を行い、生成した量子化データを逆量子化部２４と符号長計算部２７に出力する。
【００２７】
逆量子化部２４は量子化データに対して逆量子化を行い、ＤＣＴ係数を生成してＩＤＣＴ部２５に出力する。
【００２８】
ＩＤＣＴ部２５は、逆量子化部２４から供給されたＤＣＴ係数の逆離散コサイン変換を行い、差分画像データを生成して予測画生成部２６に出力する。
【００２９】
予測画生成部２６は、差分画像データを用いてローカルデコード画像の画像データを生成する。また、予測画生成部２６は、入力画像の画像データを用いてマクロブロック単位で現フレームと時間的に隣接する次フレームとの動き推定を行う。さらに  予測画生成部２６は、動き推定結果に基づいてローカルデコード画像の動き補償を行い、ローカルデコード画像の画像データから予測画像データを生成して予測モード決定部２１に出力する。
【００３０】
符号長計算部２７は、量子化データに対してコンテキスト適応型可変長符号化方式（CAVLC；Context-Adaptive Variable Length Coding)またはコンテキスト適応型２値算術符号化方式（CABAC；Context-Adaptive Binary Arithmetic Coding)のいずれかで符号化を行い、マクロブロック毎に発生符号量を算出して符号量制御部４０に出力する。
【００３１】
ＣＡＶＬＣ符号化方式は、ＣＡＢＡＣ方式よりも処理が簡単な方式であり、ＣＡＢＡＣ符号化方式は、ＣＡＶＬＣ方式よりもデータ量を少なくできる方式である。ここで、プレエンコード部２０では処理を簡単とするために可変長符号化方式を用い、本エンコード部６０ではデータ量を少なくするため算術符号化方式を用いる場合について説明する。可変長符号化はある特定の領域の情報を効率よく符号化しており、算術符号化は領域を特定することなく効率よく符号化できる。このため、可変長符号化から算術符号化の符号量を予測すると大きく誤差がでる場合がある。しかし、ＣＡＶＬＣはコンテキストを適用的に変更することにより、一般的な可変長符号化に比べて、あまり領域を特定せずに効率よく符号化することができる。このため、誤差が少なくなり、ＣＡＢＡＣ方式を用いたときの発生符号量をＣＡＶＬＣ方式の符号化によって推測することが可能となる。したがって、符号長計算部２７でＣＡＶＬＣ方式を用いても、ＣＡＢＡＣ方式を用いる本エンコード部６０における発生符号量を推測できる。なお、符号長計算部２７は、ＣＡＶＬＣ方式を用いることで回路規模を抑えることも可能となる。
【００３２】
第１の符号化部であるイントラプレエンコード部３０は、画像データを全てＩピクチャとして、複数の量子化パラメータで量子化を行い、量子化パラメータ毎に発生符号量を算出して符号量制御部４０に出力する。イントラプレエンコード部３０の画面内予測処理部３１は、入力画像の画像データと後述するイントラ予測画生成部３６で生成された予測画像データとの誤差を示す差分画像データを生成してＤＣＴ部３２に出力する。
【００３３】
ＤＣＴ部３２は、差分画像データに対して離散コサイン変換を行い、ＤＣＴ係数を生成して量子化部３３に出力する。
【００３４】
量子化部３３は、複数段例えば９段の量子化部３３-1〜３３-9で構成されている。量子化部３３-1〜３３-9は、異なる３つの量子化パラメータＱＰ(i0)，ＱＰ(i1)，ＱＰ(i2)と異なる３つの量子化マトリクスＱＭF，ＱＭN，ＱＭSを組み合わせて、９つの条件で量子化を行う。量子化部３３-1〜３３-9は、ＤＣＴ係数の量子化を行って得られた量子化データを符号長計算部３７に出力する。また、量子化部３３は量子化部３３-1〜３３-9で生成された量子化データの１つを選択して逆量子化部３４に出力する。
【００３５】
図２は、量子化マトリクスＱＭF，ＱＭN，ＱＭSを例示している。図２の（Ａ）は量子化マトリクスＱＭFを示している。量子化マトリクスＱＭFはマトリクス値が全て等しい値とされている。すなわち、量子化マトリクスＱＭFは、フラットな特性の量子化マトリクスである。図２の（Ｂ）は量子化マトリクスＱＭNを示している。量子化マトリクスＱＭNは高域成分のマトリクス値が低域成分のマトリクス値よりも大きくされている。すなわち、量子化マトリクスＱＭNは、高域成分の削減が行われる一般的な量子化マトリクスである。図２の（Ｃ）は量子化マトリクスＱＭSを示している。量子化マトリクスＱＭSは、量子化マトリクスＱＭNに比べて高域成分のマトリクス値がさらに大きな値とされている。すなわち、量子化マトリクスＱＭSは、量子化マトリクスＱＭNに比べて高域成分の削減をさらに多くした特性の量子化マトリクスである。
【００３６】
逆量子化部３４は、量子化部３３から供給された量子化データに対して逆量子化を行い、ＤＣＴ係数データを生成してＩＤＣＴ部３５に出力する。
【００３７】
ＩＤＣＴ部３５は、逆量子化部３４から供給されたＤＣＴ係数データの逆離散コサイン変換を行い、ローカルデコード画像の画像データを生成してイントラ予測画生成部３６に出力する。
【００３８】
イントラ予測画生成部３６は、差分画像データを用いてローカルデコード画像の画像データを生成する。また、イントラ予測画生成部３６は、ローカルデコード画像の画像データを予測画像データとして画面内予測処理部３１に出力する。
【００３９】
符号長計算部３７は、量子化部３３と対応させて複数段例えば９段の符号長計算部３７-1〜３７-9で構成されている。符号長計算部３７-1〜３７-9は、プレエンコード部２０の符号長計算部２７と等しい方式を用いて符号化を行い、マクロブロック毎に発生符号量を算出して符号量制御部４０に出力する。
【００４０】
符号量制御部４０は、イントラプレエンコード部３０で算出された発生符号量から高域成分が多いか否かを識別可能とする識別値を算出して、この識別値が閾値よりも大きく高域成分が多いと判別したときは、高域成分を削減する量子化マトリクスを選択する。また識別値が閾値以下で高域成分が少ないと判別したときは、高域成分の削減が少ない量子化マトリクスを選択する。また、符号量制御部４０は、ビットレートとＧＯＰ構造の関係から、１ＧＯＰに割り当てられる目標発生符号量を決定する。
【００４１】
符号量制御部４０は、プレエンコード部２０で算出された発生符号量の１ＧＯＰ分に基づいて目標発生符号量を実現する量子化パラメータと、この量子化パラメータを用いたときの発生符号量を予測する。すなわち、符号量制御部４０は、１ＧＯＰの発生符号量が目標発生符号量以下で最も目標発生符号量に近くなる量子化パラメータと、この量子化パラメータを用いたときの発生符号量を予測する。また、符号量制御部４０は、予測した発生符号量をイントラプレエンコード部３０で算出された発生符号量に応じて補正する。さらに、符号量制御部４０は、補正後の発生符号量から目標発生符号量を実現する量子化パラメータを決定する。ここで、プレエンコード部２０で用いられている量子化マトリクスと異なる量子化マトリクスを選択したとき、符号量制御部４０は補正係数を算出する。さらに、符号量制御部４０は、予測した発生符号量を、補正係数を用いて補正する。符号量制御部４０は、例えばイントラプレエンコード部３０で算出された発生符号量から、プレエンコード部２０で用いられている量子化マトリクスを用いたときの発生符号量ＢＴと、選択した量子化マトリクスを用いたときの発生符号量を選択する。符号量制御部４０は、選択した２つの発生符号量から補正係数を算出する。なお、以下の説明では、目標発生符号量を実現する量子化パラメータを基本量子化パラメータという。
【００４２】
ディレイバッファ５０は、符号量制御部４０で基本量子化パラメータを決定する処理に要する時間だけ入力画像の画像データを遅延させて、遅延後の画像データを本エンコード部６０に出力する。
【００４３】
第２の符号化部である本エンコード部６０は、符号量制御部４０で決定された基本量子化パラメータと量子化マトリクスを用いて画像データの量子化を行う。本エンコード部６０の予測処理部６１は、ディレイバッファ５０で遅延された入力画像の画像データと、プレエンコード部２０の予測モード決定部２１で決定されたピクチャタイプに応じて予測画像データの選択を行う。また、予測処理部６１は、選択した予測画像データと入力画像の画像データとの誤差を示す差分画像を生成してＤＣＴ部６２に出力する。
【００４４】
ＤＣＴ部６２は、差分画像に対して離散コサイン変換を行い、ＤＣＴ係数を生成して量子化部６３に出力する。
【００４５】
量子化部６３は、符号量制御部４０で決定された量子化パラメータと量子化マトリクスを用いてＤＣＴ係数の量子化を行い、量子化データを逆量子化部６４と可変長符号化部６７に出力する。
【００４６】
逆量子化部６４は、量子化データに対して逆量子化を行い、ＤＣＴ係数を生成してＩＤＣＴ部６５に出力する。
【００４７】
ＩＤＣＴ部６５は、逆量子化部６４から供給されたＤＣＴ係数の逆離散コサイン変換を行い、差分画像データを生成して予測画生成部６６に出力する。
【００４８】
予測画生成部６６は、差分画像データを用いてローカルデコード画像の画像データを生成する。また、予測画生成部６６は、ディレイバッファ５０からの画像データを用いてマクロブロック単位で現フレームと時間的に隣接する次フレームとの動き推定を行う。さらに  予測画生成部６６は、動き推定結果に基づいてローカルデコード画像の動き補償を行い、予測画像を生成して予測処理部６１に出力する。
【００４９】
可変長符号化部６７は、量子化データに対してＣＡＶＬＣ方式またはＣＡＢＡＣ方式で符号化を行い、符号化ストリームを生成して出力する。可変長符号化部６７は、例えばデータ量が少なくなるようにＣＡＢＡＣ方式を用いて量子化データの符号化を行い、符号化ストリームを生成する。
【００５０】
＜２．画像符号化装置の動作＞
次に、画像符号化装置の動作について説明する。図３は、画像符号化装置の動作を示すフローチャートである。
【００５１】
ステップＳＴ１で画像符号化装置１０は、ピクチャタイプの決定と画像並べ替えを行う。画像符号化装置１０は、例えばＧＯＰ（Group of Picture）構造にしたがって、入力画像に対してピクチャタイプを決定する。また、画像符号化装置１０は、入力画像の画像データを表示順から符号化順のピクチャ順序に画像並べ替え部１１で並べ替えてステップＳＴ２に進む。
【００５２】
ステップＳＴ２で画像符号化装置１０は、プレエンコード処理を行う。画像符号化装置１０は、決定されたピクチャタイプで入力画像の画像データをプレエンコード部２０で符号化して発生符号量の算出を行いステップＳＴ３に進む。
【００５３】
ステップＳＴ３で画像符号化装置１０は、発生符号量が１ＧＯＰ分となったか否か判別する。画像符号化装置１０は、プレエンコード部２０で算出された発生符号量が１ＧＯＰ分となったときステップＳＴ６に進む。また、画像符号化装置１０は、算出された発生符号量が１ＧＯＰ分となっていないときステップＳＴ２に戻る。
【００５４】
ステップＳＴ４で画像符号化装置１０は、イントラプレエンコード処理を行う。画像符号化装置１０は、Ｉピクチャとして入力画像の画像データをイントラプレエンコード部３０で符号化して発生符号量の算出を行いステップＳＴ５に進む。また、画像符号化装置１０は、イントラプレエンコード処理において、複数の量子化パラメータや複数の量子化マトリクスで符号化を並列に行って発生符号量を算出する。
【００５５】
ステップＳＴ５で画像符号化装置１０は、発生符号量が１ＧＯＰ分となったか否か判別する。画像符号化装置１０は、イントラプレエンコード部３０で算出された発生符号量が１ＧＯＰ分となったときステップＳＴ６に進む。また、画像符号化装置１０は、算出された発生符号量が１ＧＯＰ分となっていないときステップＳＴ４に戻る。
【００５６】
ステップＳＴ６で画像符号化装置１０は、本エンコード処理で用いる基本量子化パラメータの決定処理と量子化マトリクスの選択処理を行う。画像符号化装置１０は、プレエンコード処理を行うことにより得られた発生符号量と、イントラプレエンコード処理を行うことにより得られた発生符号量から、本エンコード処理で用いる基本量子化パラメータと量子化マトリクスを符号量制御部４０で決定する。
【００５７】
ステップＳＴ７で画像符号化装置１０は、本エンコード処理を行う。画像符号化装置１０は、ステップＳＴ６で決定された基本量子化パラメータと量子化マトリクスを用いて入力画像の画像データを本エンコード部６０で符号化する。
【００５８】
次に、本エンコード処理で用いる基本量子化パラメータの決定処理について説明する。基本量子化パラメータの決定処理では、プレエンコード部２０で算出された発生符号量に基づいて目標発生符号量を実現する量子化パラメータとこの量子化パラメータを用いたときの発生符号量を予測する。また、この予測した発生符号量を、イントラプレエンコード部３０で算出された発生符号量に応じて補正する。補正した発生符号量の１ＧＯＰ分が、目標発生符号量を実現できないときは、予測した量子化パラメータのパラメータ値を変更して新たに発生符号量の予測や補正を行う。補正した発生符号量の１ＧＯＰ分が目標発生符号量を実現できるときは、このときの量子化パラメータを基本量子化パラメータとする。
【００５９】
図４は、本エンコード処理で用いる基本量子化パラメータの決定処理を示すフローチャートを例示している。ステップＳＴ１１で符号量制御部４０は、量子化パラメータの予測を行う。符号量制御部４０は、プレエンコード部２０で算出された発生符号量に基づいて目標発生符号量を実現する量子化パラメータを予測してステップＳＴ１２に進む。
【００６０】
図５，６は量子化パラメータと後述する発生符号量の算出処理を説明するための図である。符号量制御部４０は、プレエンコード部２０において、固定されている量子化パラメータＱＰ(p)を用いて符号化を行ったときの発生符号量ＢＴ(p)に応じてマクロブロックをグループ分けする。また、図５に示すように、グループ毎に予め設けられている量子化パラメータと発生符号量の関係を示す複数の予測曲線から、該当するグループの予測曲線例えば予測曲線ＣＢを選択する。さらに、図６に示すように、選択した予測曲線ＣＢを用いて、発生符号量が目標発生符号量ＢＴ(t)以下で最も近い値となる量子化パラメータを予測する。
【００６１】
ステップＳＴ１２で符号量制御部４０は、１ＧＯＰ分の発生符号量の算出を行う。符号量制御部４０は、ステップＳＴ１１で予測した発生符号量を、イントラプレエンコード部３０で算出された発生符号量に応じて補正して、補正した発生符号量の１ＧＯＰ分を算出してステップＳＴ１３に進む。
【００６２】
ステップＳＴ１３で符号量制御部４０は、１ＧＯＰ分の発生符号量が目標発生符号量より大きいか否か判別する。符号量制御部４０は、発生符号量が目標発生符号量より大きくないときステップＳＴ１４に進み、発生符号量が目標発生符号量より大きいときステップＳＴ１５に進む。
【００６３】
ステップＳＴ１４で符号量制御部４０は、予測した量子化パラメータから基本量子化パラメータを決定する。符号量制御部４０は、発生符号量と目標発生符号量との差が小さいとき、例えば予測した量子化パラメータの値を「１」減少させたときの発生符号量の増加分よりも小さいとき、予測した量子化パラメータを基本量子化パラメータとして処理を終了する。また、符号量制御部４０は、発生符号量と目標発生符号量との差が大きいとき、差が小さくなるように予測した量子化パラメータの値を減少させて、基本量子化パラメータとする。
【００６４】
ステップＳＴ１５で符号量制御部４０は、予測した量子化パラメータの値を増加させる。符号量制御部４０は、発生符号量と目標発生符号量との差に応じて増加量を決定して、予測した量子化パラメータの値を増加させてステップＳＴ１６に進む。
【００６５】
ステップＳＴ１６で符号量制御部４０は、１ＧＯＰ分の発生符号量の算出を行う。符号量制御部４０は、ステップＳＴ１５で更新された量子化パラメータを用いて、ステップＳＴ１２と同様に１ＧＯＰ分の発生符号量の算出を行ってステップＳＴ１７に進む。
【００６６】
ステップＳＴ１７で符号量制御部４０は、目標発生符号量を実現できるか否か判別する。符号量制御部４０は、目標発生符号量を実現できるか否か判別する。符号量制御部４０は、目標発生符号量を実現できないと判別したときステップＳＴ１３に戻り、目標発生符号量を実現できると判別したとき、ステップＳＴ１５で更新した量子化パラメータを基本量子化パラメータとして処理を終了する。例えば、ステップＳＴ１５で更新した量子化パラメータを用いたときの発生符号量が目標発生符号量以下であり、ステップＳＴ１５で更新した量子化パラメータよりも「１」だけ小さい量子化パラメータを用いたときの発生符号量が目標発生符号量を超えるとき、符号量制御部４０は、目標発生符号量を実現できると判別して、更新した量子化パラメータを基本量子化パラメータとする。
【００６７】
このようにすれば、目標発生符号量を実現できる基本量子化パラメータを決定できる。なお、基本量子化パラメータの決定処理は、図４のフローチャートに示す処理に限られるものではない。例えば、発生符号量と目標発生符号量との差に応じて量子化パラメータの増加量や減少量を設定して再度発生符号量の算出を行う。また、発生符号量と目標発生符号量との差が少なくなったときは、量子化パラメータを「１」ずつ増加または減少させて、目標発生符号量を実現できる量子化パラメータを検索するようにしてもよい。
【００６８】
図７は、１ＧＯＰ分の発生符号量の算出処理を例示したフローチャートである。ステップＳＴ２１で符号量制御部４０は、予測した量子化パラメータを用いてＩピクチャの発生符号量を算出してステップＳＴ２２に進む。
【００６９】
ステップＳＴ２２で符号量制御部４０は、次のピクチャがＩピクチャであるか否か判別する。符号量制御部４０は、次のピクチャがＩピクチャでないときステップＳＴ２３に進み、次のピクチャがＩピクチャであるとき、１ＧＯＰ分の発生符号量の算出処理を終了する。
【００７０】
ステップＳＴ２３で符号量制御部４０は、予測した量子化パラメータを用いて非Ｉピクチャ、すなわちＰピクチャまたはＢピクチャの発生符号量を算出してステップＳＴ２２に戻る。
【００７１】
次に、予測した量子化パラメータを用いてＩピクチャの発生符号量と非Ｉピクチャの発生符号量を予測する処理について説明する。
【００７２】
予測した量子化パラメータを用いてＩピクチャの発生符号量を予測する場合、符号量制御部４０は、プレエンコード処理の発生符号量に基づいて、予測した量子化パラメータを用いたときの発生符号量を予測する。この予測した発生符号量を第１の発生符号量という。また、符号量制御部４０は、イントラプレエンコード処理で得られた発生符号量から、予測した量子化パラメータを用いたときの発生符号量を算出する。この算出した発生符号量を第２の発生符号量という。符号量制御部４０は、第１の発生符号量と第２の発生符号量から補正係数を算出する。さらに、符号量制御部４０は、算出した補正係数で第１の発生符号量を補正して、補正後の第１の発生符号量を、予測した量子化パラメータを用いたときのＩピクチャの発生符号量とする。また、符号量制御部４０は、Ｉピクチャにおける高域成分の状態を示す高域成分コストを算出して、算出した高域成分コストを用いて第１の発生符号量の補正を行う。
【００７３】
予測した量子化パラメータを用いて非Ｉピクチャの発生符号量を予測する場合、符号量制御部４０は、プレエンコード処理の発生符号量に基づいて、予測した量子化パラメータを用いたときの発生符号量を予測する。この予測した発生符号量を第３の発生符号量とする。また、符号量制御部４０は、非Ｉピクチャにおける補正係数を算出して、この補正係数を用いて第３の発生符号量の補正を行い、補正後の第３の発生符号量を予測した量子化パラメータを用いたときの非Ｉピクチャの発生符号量とする。
【００７４】
図８は、予測した量子化パラメータを用いたときのＩピクチャの発生符号量算出処理を示すフローチャートである。
【００７５】
ステップＳＴ４１で符号量制御部４０は、第１の発生符号量を予測する。符号量制御部４０は、予測した量子化パラメータを用いたときの発生符号量を予測して第１の発生符号量としてステップＳＴ４２に進む。例えば、図６に示すように、選択した予測曲線ＣＢを用いて、発生符号量が目標発生符号量ＢＴ(t)以下で最も近い値となる量子化パラメータが予測されて、この予測された量子化パラメータを用いたときの発生符号量を予測する。すなわち、予測した量子化パラメータＱＰ(t)における発生符号量ＢＴ(pt)を第１の発生符号量としてステップＳＴ４２に進む。なお、量子化パラメータＱＰ(p)は、量子化パラメータＱＰ(p)を用いて符号化を行ったときの発生符号量が、目標発生符号量よりも大きくなるように予め小さな値に設定しておく。このように量子化パラメータＱＰ(p)を設定すれば、発生符号量を小さくして目標発生符号量以下で最も符号量が近くなる基本量子化パラメータを設定することができるようになる。
【００７６】
ステップＳＴ４２で符号量制御部４０は、量子化マトリクスの選択動作を行う。図９は量子化マトリクスの選択動作を示すフローチャートである。ステップＳＴ５１で符号量制御部４０は、プレエンコード部２０の発生符号量が上限値以上であるか否か判別する。符号量制御部４０は発生符号量が上限値以上でないときステップＳＴ５２に進み、上限値以上であるときステップＳＴ５４に進む。
【００７７】
ステップＳＴ５２で符号量制御部４０はプレエンコード部２０の発生符号量が下限値以下であるか否か判別する。符号量制御部４０は発生符号量が下限値以下でないときステップＳＴ５３に進み、下限値以下であるときステップＳＴ５６に進む。
【００７８】
ステップＳＴ５３で符号量制御部４０は、高域成分が多いか否かを判別する。符号量制御部４０は、イントラプレエンコード部３０の発生符号量から高域成分が多いか否かを識別可能とする識別値を算出する。符号量制御部４０は、例えば量子化マトリクスＱＭFを用いたときの発生符号量に対して量子化マトリクスＱＭNを用いたときの発生符号量の割合を算出して識別値とする。符号量制御部４０は、算出した識別値が閾値ＴＨvaよりも大きく高域成分が多いと判別したときはステップＳＴ５５に進み、閾値ＴＨva以下で高域成分が少ないと判別したときステップＳＴ５６に進む。
【００７９】
ステップＳＴ５４で符号量制御部４０は、量子化マトリクスＱＭSを選択する。符号量制御部４０は、プレエンコード部２０の発生符号量が上限値以上であることから、図２の(Ｃ)に示す量子化マトリクスＱＭSを選択する。このように量子化マトリクスＱＭSを選択すれば、高域成分が大きく削減されて発生符号量が少なくなる。
【００８０】
ステップＳＴ５５で符号量制御部４０は、量子化マトリクスＱＭNを選択する。符号量制御部４０は、プレエンコード部２０の発生符号量が上限値と下限値の範囲内であり、高域成分が少ないと判断されていないことから、一般的に用いる図２の(Ｂ)に示す量子化マトリクスＱＭNを選択する。
【００８１】
ステップＳＴ５６で符号量制御部４０は、量子化マトリクスＱＭFを選択する。符号量制御部４０は、プレエンコード部２０の発生符号量が下限値以下、または発生符号量が上限値と下限値の範囲内であっても高域成分が少ないと判断されていることから、図２の(Ａ)に示す量子化マトリクスＱＭFを選択する。このように量子化マトリクスＱＭFを選択すれば、低域成分や高域成分が削減されてしまうことを防止できる。
【００８２】
符号量制御部４０は、このように高域成分が多いと判別したときは高域成分を削減する量子化マトリクスＱＭNを選択して、高域成分が少ないと判別したときは量子化マトリクスＱＭNよりも高域成分の削減が少ない量子化マトリクスＱＭFを選択する。したがって、例えば符号化と復号化処理が既に行われて高域成分が削減されている画像に対して、高域成分を削減する量子化マトリクスを用いた符号化が行われることがなく、画質が悪化してしまうことを防止できる。また、プレエンコード部２０で算出された発生符号量が上限値以上であるとき、量子化マトリクスＱＭNよりも高域成分の削減が多い量子化マトリクスＱＭSが選択されるので、発生符号量が少なくなる量子化マトリクスを選択することができる。
【００８３】
なお、図９に示す量子化マトリクスの選択動作では、発生符号量に応じて量子化マトリクスの選択を行っているが、ステップＳＴ４１で算出した量子化パラメータＱＰ(t)の値に応じて、発生符号量に応じて量子化マトリクスの選択を行うようにしてもよい。例えばステップＳＴ５１では、量子化パラメータＱＰ(t)の値が予め設定した第１のパラメータ値よりも小さいとき、ステップＳＴ５４で量子化マトリクスＱＭSを選択する。また、ステップＳＴ５１では、量子化パラメータＱＰ(t)のパラメータ値が予め設定した第２の値（第１の値よりも大きい値）よりも大きいとき、ステップＳＴ５６で量子化マトリクスＱＭFを選択するようにしてもよい。
【００８４】
符号量制御部４０は、ステップＳＴ４２で量子化マトリクスの選択動作が終了するとステップＳＴ４３に進む。
【００８５】
ステップＳＴ４３で符号量制御部４０は、量子化マトリクスの切り換え制限処理を行う。符号量制御部４０は、例えばＧＯＰ内で似たような画像に対して異なる量子化マトリクスが選択されてしまい、量子化マトリクスの切り換えが頻繁に行われて画質が不安定となってしまうことがないように、量子化マトリクスの切り換え制限処理を行う。
【００８６】
図１０は、量子化マトリクスの切り換え制限処理を示すフローチャートである。ステップＳＴ６１で符号量制御部４０は、ＧＯＰ内の全ピクチャは同じ量子化マトリクスを選択しているか否かを判別する。符号量制御部４０は、ＧＯＰ内の全ピクチャが同じ量子化マトリクスでないときステップＳＴ６２に進む。また、符号量制御部４０は、ＧＯＰ内の全ピクチャが同じ量子化マトリクスであるとき、量子化マトリクスの切り換えが行われないことから切り換え制限処理を終了する。
【００８７】
ステップＳＴ６２で符号量制御部４０は、一番多く用いられている最多量子化マトリクスを探索する。符号量制御部４０は、ＧＯＰ内で一番多く用いられている量子化マトリクスを最多量子化マトリクスＱＭmxとしてステップＳＴ６３に進む。
【００８８】
ステップＳＴ６３で符号量制御部４０は、最多量子化マトリクスＱＭmxが複数であるか否かを判別する。符号量制御部４０は、最多量子化マトリクスＱＭmxが複数であるときステップＳＴ６４に進み、最多量子化マトリクスＱＭmxが１つであるときステップＳＴ６６に進む。
【００８９】
ステップＳＴ６４で符号量制御部４０は、最多量子化マトリクスＱＭmxに量子化マトリクスＱＭNが含まれているか判別する。符号量制御部４０は、最多量子化マトリクスＱＭmxに量子化マトリクスＱＭNが含まれているときステップＳＴ６５に進む。また、符号量制御部４０は、最多量子化マトリクスＱＭmxに量子化マトリクスＱＭNが含まれていないとき、すなわち最多量子化マトリクスＱＭmxとして量子化マトリクスＱＭFと量子化マトリクスＱＭSが選択されている場合、安定化制御動作を終了する。最多量子化マトリクスＱＭmxとして量子化マトリクスＱＭFと量子化マトリクスＱＭSが選択されている場合、量子化マトリクスＱＭFを選択したピクチャと量子化マトリクスＱＭSを選択したピクチャでは、発生符号量が全く異なり、画像が似ていないと推定される。したがって、安定化制御動作を終了する。
【００９０】
ステップＳＴ６５で符号量制御部４０は、量子化マトリクスＱＭNを最多量子化マトリクスＱＭmxに設定してステップＳＴ６６に進む。
【００９１】
ステップＳＴ６６で符号量制御部４０は、ＧＯＰの先頭から量子化マトリクスの再検査を行いステップＳＴ６７に進む。
【００９２】
ステップＳＴ６７で符号量制御部４０は、量子化マトリクスＱＭが最多量子化マトリクスＱＭmxと等しいか否か判別する。符号量制御部４０は、ピクチャの量子化マトリクスＱＭが最多量子化マトリクスＱＭmxと等しくないときステップＳＴ６８に進み、等しいときステップＳＴ７０に進む。
【００９３】
ステップＳＴ６８で符号量制御部４０は、量子化マトリクスＱＭと最多量子化マトリクスＱＭmxのどちらかが量子化マトリクスＱＭNであるか否か判別する。符号量制御部４０は、ピクチャの量子化マトリクスＱＭと最多量子化マトリクスＱＭmxのいずれかが量子化マトリクスＱＭNであるときはステップＳＴ６９に進む。また、符号量制御部４０は、いずれも量子化マトリクスＱＭNでないときステップＳＴ７０に進む。すなわち、符号量制御部４０は、量子化マトリクスＱＭと最多量子化マトリクスＱＭmxの一方が量子化マトリクスＱＭFで他方が量子化マトリクスＱＭSであるとき、上述したように画像が似ていないと推定されるのでステップＳＴ７０に進む。
【００９４】
ステップＳＴ６９で符号量制御部４０は、判定条件を変更して量子化マトリクスの再選択を行う。符号量制御部４０は、図９のステップＳＴ５１で用いた上限値またはステップＳＴ５３で用いた閾値ＴＨvaを、最多量子化マトリクスが選択されたときのピクチャと画像が似ているピクチャで最多量子化マトリクスが選択される値に変更する。さらに、符号量制御部４０は、変更後の上限値または閾値ＴＨvaを用いて再度量子化マトリクスの選択を行いステップＳＴ７０に進む。符号量制御部４０は、例えば予め設定しておいた補正値で上限値または閾値ＴＨvaの加減算を行い、上限値や閾値ＴＨvaを変更する。
【００９５】
ステップＳＴ７０で符号量制御部４０は、ＧＯＰの最後のピクチャであるか否か判別する。符号量制御部４０は、ＧＯＰの最後のピクチャでないときステップＳＴ６７に戻り、ＧＯＰの最後のピクチャであるとき切り換え制限処理を終了する。
【００９６】
このように量子化マトリクスの切り換え制限処理を行うと、ＧＯＰ内において似ている画像は同じ量子化マトリクスが選択されるので量子化マトリクスの切り換えが少なくなり、画質を安定させることができる。
【００９７】
ステップＳＴ４４で符号量制御部４０は、第２の発生符号量の算出を行う。符号量制御部４０は、イントラプレエンコード部３０で算出された発生符号量から、量子化パラメータＱＰ(t)における発生符号量ＢＴ(it)を検出して第２の発生符号量とする。ここで、プレエンコード部２０で量子化マトリクスＱＭNが用いられている場合、符号量制御部４０は、量子化パラメータＱＰ(i0)〜ＱＰ(i2)と量子化マトリクスＱＭNを用いて符号化を行ったときの発生符号量ＢＴ(i0N)，ＢＴ(i1N)，ＢＴ(i2N)から、量子化パラメータＱＰ(t)における発生符号量ＢＴ(it)を検出して第２の発生符号量とする。
【００９８】
図１１は、第２の発生符号量の検出処理を示すフローチャートである。ステップＳＴ８１で符号量制御部４０は、イントラプレエンコーダ処理で用いられている量子化パラメータから、予測した量子化パラメータと一番近い量子化パラメータを検出する。符号量制御部４０は、例えば量子化パラメータＱＰ(i0)〜ＱＰ(i2)のなかで量子化パラメータＱＰ(t)と一番近い量子化パラメータを検出して、量子化パラメータＱＰ(ia)としてステップＳＴ８２に進む。
【００９９】
ステップＳＴ８２で符号量制御部４０は、イントラプレエンコーダ処理で用いられている量子化パラメータから、予測した量子化パラメータと二番目に近い量子化パラメータを検出する。符号量制御部４０は、例えば量子化パラメータＱＰ(i0)〜ＱＰ(i2)のなかで量子化パラメータＱＰ(t)に二番目に近い量子化パラメータを検出して、量子化パラメータＱＰ(ib)としてステップＳＴ８３に進む。
【０１００】
ステップＳＴ８３で符号量制御部４０は、予測した量子化パラメータを用いたときの発生符号量を算出する。符号量制御部４０は、量子化パラメータＱＰ(ia)と量子化マトリクスＱＭNを用いたときの発生符号量ＢＴ(iaN)と、量子化パラメータＱＰ(ib)と量子化マトリクスＱＭNを用いたときの発生符号量ＢＴ(ibN)を用いて補間処理を行う。符号量制御部４０は、補間処理として直線補間または曲線補間等を行い、予測した量子化パラメータＱＰ(t)の発生符号量ＢＴ(it)を算出する。
【０１０１】
符号量制御部４０は、このように第２の発生符号量ＢＴ(it)を算出して、図８のステップＳＴ４４からステップＳＴ４５に進む。
【０１０２】
ステップＳＴ４５で符号量制御部４０は、第１の補正係数を算出する。符号量制御部４０は、プレエンコード処理結果から検出した第１の発生符号量ＢＴ(pt)と、イントラプリエンコード処理結果から検出した第２の発生符号量ＢＴ(it)を用いて式（１）の演算を行い、第１の補正係数Ｃ(i)を算出してステップＳＴ４６に進む。
Ｃ(i)＝ＢＴ(it)／ＢＴ(pt)      ・・・（１）
【０１０３】
ステップＳＴ４６で符号量制御部４０は、高域成分コストを算出する。符号量制御部４０は、Ｉピクチャにおける高域成分の状態を示す高域成分コストＨ(i)を算出する。
【０１０４】
図１２は高域成分コスト演算の動作を示すフローチャートである。また、図１３はイントラプレエンコード部からの出力を示している。
【０１０５】
図１２において、ステップＳＴ９１で符号量制御部４０は、イントラプレエンコード処理における量子化パラメータの最小値を選択する。例えば図１３に示すように、イントラプレエンコード処理で量子化パラメータＱＰ(i0)，ＱＰ(i1)，ＱＰ(i2)（ＱＰ(i0)＜ＱＰ(i1)＜ＱＰ(i2)）が用いられている場合、符号量制御部４０は、量子化パラメータＱＰ(i0)を選択してステップＳＴ９２に進む。
【０１０６】
ステップＳＴ９２で符号量制御部４０は、最も小さい量子化パラメータと、低域から高域までの量子化ステップがフラットである量子化マトリクスを用いたときの発生符号量を選択する。例えば、量子化マトリクスＱＭFは、マトリクス値が一定値とされており低域から高域までの量子化ステップがフラットとなるマトリクスとする。量子化マトリクスＱＭNは、高域のマトリクス値が低域よりも大きな値とされており低域に比べて高域を粗く量子化するマトリクスとする。量子化マトリクスＱＭNは、高域のマトリクス値が低域よりも大きな値とされており低域に比べて高域を粗く量子化するマトリクスとする。量子化マトリクスＱＭSは、高域のマトリクス値が量子化マトリクスＱＭNに比べてさらに大きな値とされており、量子化マトリクスＱＭNよりも高域の減衰がスティープな状態である量子化するマトリクスとする。この場合、符号量制御部４０は、最も小さい量子化パラメータとして量子化パラメータＱＰ(i0)が選択されていることから、量子化パラメータＱＰ(i0)と量子化マトリクスＱＭFを用いたときの発生符号量ＢＴ(i0F)を選択してステップＳＴ９３に進む。
【０１０７】
ステップＳＴ９３で符号量制御部４０は、最も小さい量子化パラメータと、低域に比べて高域を粗く量子化する通常の量子化マトリクスを用いたときの発生符号量を選択する。例えば、符号量制御部４０は、量子化パラメータＱＰ(i0)と量子化マトリクスＱＭNを用いたときの発生符号量ＢＴ(i0N)を選択してステップＳＴ９４に進む。
【０１０８】
ステップＳＴ９４で符号量制御部４０は、高域成分コストを算出する。符号量制御部４０は、式（２）の演算を行い高域成分コストＨ(i)を算出する。
Ｈ(i)＝ＢＴ(i0F)／ＢＴ(i0N)      ・・・（２）
【０１０９】
このようにして、図８のステップＳＴ４６で高域成分コストを算出するとステップＳＴ４７に進み、符号量制御部４０は、第２の補正係数の算出を行う。第２の補正係数は、予測した発生符号量を本エンコード部６０で用いる量子化マトリクスを用いたときの発生符号量に補正するための補正係数である。なお、本エンコード部６０で用いる量子化マトリクスとは、ステップＳＴ４２とステップＳＴ４３によってピクチャ毎に選択した量子化マトリクスであり、量子化マトリクスＱＭＷとして以下の説明を行う。
【０１１０】
図１４は、第２の補正係数の算出動作を示すフローチャートである。ステップＳＴ１０１で符号量制御部４０は、選択した量子化マトリクスＱＭＷが量子化マトリクスＱＭNであるか否か判別する。符号量制御部４０は、選択した量子化マトリクスＱＭＷが量子化マトリクスＱＭNでないときステップＳＴ１０２に進み、選択した量子化マトリクスＱＭＷが量子化マトリクスＱＭNであるときステップＳＴ１０８に進む。
【０１１１】
ステップＳＴ１０２で符号量制御部４０は、量子化パラメータの読み込みを行う。符号量制御部４０は、ステップＳＴ４１で予測した量子化パラメータＱＰ(t)を読み込みステップＳＴ１０３に進む。
【０１１２】
ステップＳＴ１０３で符号量制御部４０は、イントラプレエンコード部３０で用いられている量子化パラメータから最も近い量子化パラメータを選択する。符号量制御部４０は、例えば量子化パラメータＱＰ(i0)〜ＱＰ(i2)のなかで量子化パラメータＱＰ(t)に最も近いパラメータを選択して、量子化パラメータＱＰ(ia)としてステップＳＴ１０４に進む。
【０１１３】
ステップＳＴ１０４で符号量制御部４０は、量子化パラメータＱＰ(ia)における係数Ｍａを算出する。符号量制御部４０は、量子化パラメータＱＰ(ia)おいて量子化マトリクスＱＭNを用いたときの発生符号量をＢＴ(iaN)とする。また、量子化パラメータＱＰ(ia)において、量子化マトリクス選択動作で選択した量子化マトリクスＱＭMを用いたときの発生符号量をＢＴ(iaM)とする。符号量制御部４０は、式（３）を用いて係数Ｍａを算出してステップＳＴ１０５に進む。
Ｍａ＝ＢＴ(iaM)／ＢＴ(iaN)      ・・・(３)
【０１１４】
ステップＳＴ１０５で符号量制御部４０は、イントラプレエンコード部３０で用いられている量子化パラメータから二番目に近い量子化パラメータを選択する。符号量制御部４０は、例えば量子化パラメータＱＰ(i0)〜ＱＰ(i2)のなかで量子化パラメータＱＰ(t)に二番目に近いパラメータを選択して、量子化パラメータＱＰ(ib)としてステップＳＴ１０６に進む。
【０１１５】
ステップＳＴ１０６で符号量制御部４０は、量子化パラメータＱＰ(ib)における係数Ｍｂを算出する。符号量制御部４０は、量子化パラメータＱＰ(ib)において量子化マトリクスＱＭNを用いたときの発生符号量をＢＴ(ibN)とする。また、量子化パラメータＱＰ(ib)において、量子化マトリクス選択動作で選択した量子化マトリクスＱＭMを用いたときの発生符号量をＢＴ(ibM)とする。符号量制御部４０は、式（４）を用いて係数Ｍｂを算出してステップＳＴ１０７に進む。
Ｍｂ＝ＢＴ(ibM)／ＢＴ(ibN)      ・・・（４）
【０１１６】
ステップＳＴ１０７で符号量制御部４０は、量子化パラメータＱＰ(t)に対する第２の補正係数Ｍtを算出する。符号量制御部４０は、係数Ｍaと係数Ｍｂを用いて補間処理例えば式（５）に示す直線補間を行い第２の補正係数Ｍtを算出する。
Ｍt＝Ｍa＋(Ｍa−Ｍb)×(ＱＰ(t)−ＱＰ(ia))
／(ＱＰ(ib)−ＱＰ(ia))・・・（５）
【０１１７】
ステップＳＴ１０８で符号量制御部４０は、第２の補正係数Ｍtを「１」とする。符号量制御部４０は、プレエンコード部２０で用いる量子化マトリクスと本エンコード部６０で用いる量子化マトリクスが共に量子化マトリクスＱＭNであることから、第２の補正係数Ｍtを「１」として処理を終了する。
【０１１８】
このようにして第２の補正係数を算出すると、例えば図１３に示すように量子化パラメータＱＰ(t)に最も近いパラメータが量子化パラメータＱＰ(i1)で、二番目に近いパラメータが量子化パラメータＱＰ(i0)であり、量子化マトリクスＱＭSが選択された場合、ＢＴ(iaN)＝ＢＴ(i1N)，ＢＴ(iaM)＝ＢＴ(i1S)，ＢＴ(ibN)＝ＢＴ(i0N)，ＢＴ(ibM)＝ＢＴ(i0S)，ＱＰ(ia)＝ＱＰ(i1)，ＱＰ(ib)＝ＱＰ(i0)として式（３）〜（５）の演算を行うことで、第２の補正係数Ｍtを算出できる。
【０１１９】
このようにして、符号量制御部４０は、図８のステップＳＴ４７で第２の補正係数を算出するとステップＳＴ４８に進み、第１の発生符号量の補正を行う。符号量制御部４０は、発生符号量ＢＴ(pt)と補正係数Ｃ(i)を用いて式（６）の演算を行い、補正された発生符号量ＢＴ(itc)を算出する。
ＢＴ(itc)＝ＢＴ(pt)×Ｃ(i)×Ｍt  ・・・（６）
【０１２０】
次に、予測した量子化パラメータを用いたときの非Ｉピクチャの発生符号量算出処理について、図１５に示すフローチャートを用いて説明する。ステップＳＴ１１１で符号量制御部４０は、第３の発生符号量の検出を行う。符号量制御部４０は、プレエンコード部２０において、固定されている量子化パラメータＱＰ(p)を用いて符号化を行ったときの発生符号量ＢＴ(p)に応じてマクロブロックをグループ分けする。また、グループ毎に予め設けられている量子化パラメータと発生符号量の関係を示す複数の予測曲線から、該当するグループの予測曲線を選択する。さらに、選択した予測曲線を用いて、既に予測されている量子化パラメータＱＰ(t)における発生符号量ＢＴ(ut)を第３の発生符号量としてステップＳＴ１１２に進む。
【０１２１】
ステップＳＴ１１２で符号量制御部４０は、非Ｉピクチャにおける高域成分コストを算出する。符号量制御部４０は、上述の図１２に示す高域成分コスト演算と同様な処理を行い、非Ｉピクチャにおける高域成分コストＨ(u)を算出する。この場合、高域成分Ｈ(u)の算出は式（７）を用いて行う。
Ｈ(u)＝ＢＴ(i0F)／ＢＴ(i0N)      ・・・（７）
【０１２２】
なお、式（７）において、発生符号量ＢＴ(i0F)，ＢＴ(i0N)は、高域成分コストを算出する非Ｉピクチャの画像データをＩピクチャとしてイントラプレエンコード処理したときの発生符号量である。
【０１２３】
このようにステップＳＴ１１２で高域成分コストを算出すると、符号量制御部４０は、ステップＳＴ１１３に進み、第１の補正係数を算出する。符号量制御部４０は、Ｉピクチャで算出した補正係数Ｃ(i)と高域成分コストＨ(i)およびステップＳＴ１１２で算出した高域成分コストＨ(u)を用いて式（８）の演算を行い、補正係数Ｃ(ic)を算出してステップＳＴ１１４に進む。
Ｃ(ic)＝Ｃ(i)×Ｈ(i)／Ｈ(u)    ・・・（８）
【０１２４】
ステップＳＴ１１４で符号量制御部４０は、第２の補正係数の算出動作を行う。符号量制御部４０は、非Ｉピクチャに対応するイントラプレエンコード部３０のＩピクチャで算出した発生符号量から、図１４を用いて説明した第２の補正係数の算出動作を行い、非Ｉピクチャに対応する第２の補正係数Ｍtuを算出してステップＳＴ１１５に進む。
【０１２５】
ステップＳＴ１１５で符号量制御部４０は、第３の発生符号量の補正を行う。符号量制御部４０は、補正係数Ｃ(ic)，Ｍtuを用いて式（９）の演算を行い、第３の発生符号量である発生符号量ＢＴ(ut)を補正して、補正後である発生符号量ＢＴ(utc)を算出する。なお、補正係数Ｍtuは、非Ｉピクチャの発生符号量を用いてＩピクチャと同様にして算出した補正係数である。
ＢＴ(utc)＝ＢＴ(ut)×Ｃ(ic)×Ｍtu    ・・・（９）
【０１２６】
このようにして、非Ｉピクチャの発生符号量の補正を行う。さらに、１ＧＯＰにおける補正後の発生符号量の合計が目標発生符号量以下で最も目標発生符号量に近くなる量子化パラメータを決定する。本エンコード部６０は、符号量制御部４０で決定された量子化パラメータと量子化パラメータを用いて画像データの符号化を行い符号化データを出力する。
【０１２７】
以上のように、プレエンコード部２０で算出された発生符号量と、イントラプレエンコード部３０で算出された発生符号量を用いた高域成分の判別結果に基づいて、複数の異なる量子化マトリクスから量子化マトリクスが選択されるので、画質の劣化を軽減させることができる。例えば、イントラプレエンコード部３０で得られた結果から、量子化マトリクスＱＭFを用いたときの発生符号量に対する量子化マトリクスＱＭNを用いたときの発生符号量の割合が大きければ高域成分が多い。すなわち、原画である可能性が高い。また、量子化マトリクスＱＭFを用いたときの発生符号量に対する量子化マトリクスＱＭNを用いたときの発生符号量の割合が小さければ高域成分が少ない。すなわち、高域成分が削減されているダビング画像等である可能性が高い。したがって、高域成分が少ないときには、高域成分の削減が少ない量子化マトリクスを選択することで、画質の劣化を軽減させることができる。また、プレエンコード部２０で算出された発生符号量が上限値よりも大きいときには高域成分をさらに多く削減する量子化マトリクスを選択して、発生符号量が下限値よりも小さいときには低域成分や高域成分の削減を行わない量子化マトリクスを選択する。このようにすれば、量子化パラメータのみで目標発生符号量を実現する場合に比べて画質の劣化をさらに軽減できる。
【０１２８】
また、符号量制御部４０では、プレエンコード部２０でプレエンコードを行うことにより算出された発生符号量に基づいて目標発生符号量を実現する量子化パラメータと、この量子化パラメータを用いたときの発生符号量が予測される。また、予測した発生符号量が、イントラプレエンコード部３０でプレエンコードを行うことにより算出された発生符号量に応じて補正される。さらに、符号量制御部４０では、補正後の発生符号量が目標発生符号量を実現するように量子化パラメータが決定される。このため、例えばマクロブロックの発生符号量と量子化パラメータの関係が画像に応じて変化する場合、この変化によって生じる発生符号量の予測誤差がイントラプレエンコード部３０でプレエンコードを行うことにより算出された発生符号量に応じて補正される。したがって、マクロブロックの発生符号量と量子化パラメータの関係が画像に応じて変化する場合でも、発生符号量の予測を精度よく行うことができる。
【０１２９】
例えば、プレエンコード処理を行って発生符号量の予測を行い、予測結果から本エンコードの量子化パラメータを決定する。この場合、予測で誤差を生じる原因として、高域成分が想定よりも少ないと発生符号量の落ち方が変わり、実際の発生符号量が予測よりも大分少なくなってしまうことがある。特に、プレエンコード処理で固定されている量子化パラメータ(p)と目標発生符号量に対応する量子化パラメータＱＰ(t)の差が大きいと、誤差が大きくなる傾向がある。この誤差を補正するため、符号量制御部４０は、Ｉピクチャのイントラプレエンコード処理によって得られた発生符号量を利用する。イントラプレエンコード部３０は、複数の量子化パラメータを適用しているため、プレエンコード部２０よりも予測する量子化パラメータに近い量子化パラメータの発生符号量を求めることができる。そのため、Ｉピクチャの予測では、予測した発生符号量をイントラプレエンコード部３０で算出された発生符号量に応じて補正する。
【０１３０】
また、非Ｉピクチャに関しては誤差を求めることができない。しかし、この誤差はピクチャにおける高域成分の状態によって変動するため、高域成分の状態を各ピクチャから求め、各ピクチャはＩピクチャにおける高域成分の状態との違いに応じて非Ｉピクチャの発生符号量を補正する。
【０１３１】
このようにすれば、高域成分の状態が予測曲線を求めたときと異なる場合でも、発生符号量をピクチャにおける高域成分の状態に応じて補正することが可能となり、より正しく発生符号量を推測できるようになる。したがって、例えば１ＧＯＰ分の発生符号量の予測を精度よく行うことができる。
【０１３２】
さらに、プレエンコード部２０で量子化マトリクスＱＭNを適用して発生符号量を求めているとき、違う量子化マトリクスが選択されると予測がずれてしまう場合がある。この場合、イントラプレエンコード部３０で算出された発生符号量から、プレエンコード部２０で用いられている量子化マトリクスを用いた発生符号量と選択された量子化マトリクスを用いた発生符号量から補正係数が算出される。さらに、予測した発生符号量が算出された補正係数を用いて補正される。したがって、プレエンコード部２０で用いられている量子化マトリクスと異なる量子化マトリクスが選択されても、例えば１ＧＯＰ分の発生符号量の予測を精度よく行うことができる。
【０１３３】
このため、本エンコード部６０は、符号量制御部４０で決定された基本量子化パラメータと量子化マトリクスを用いて符号化を行えば、本エンコード部６０から、発生符号量が目標発生符号量以下であって画像の劣化の少ない符号化データを出力することができる。
【０１３４】
さらに、ＧＯＰ内の各ピクチャの量子化マトリクスが異なるときは、ピクチャ数が最多となる量子化マトリクスを検索して、該最多となる量子化マトリクスに設定されやすい設定条件で、ＧＯＰ内のピクチャについて量子化マトリクスの再設定が行われる。したがって、似たような画像において量子化マトリクスの切り換えが頻繁に行われてしまうことを防止することが可能となり、符号化された画像の画質を安定させることができる。
【０１３５】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【０１３６】
例えば、プログラムは記録媒体としてのハードディスクやＲＯＭ(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)，ＭＯ(Magneto optical)ディスク，ＤＶＤ(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
【０１３７】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、ＬＡＮ(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送する。コンピュータは、このようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１３８】
なお、本発明は、上述した発明の実施の形態に限定して解釈されるべきではない。この発明の実施の形態は、例示という形態で本発明を開示しており、本発明の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【産業上の利用可能性】
【０１３９】
この発明の画像符号化装置および画像符号化方法では、複数の異なる量子化マトリクスを用いて画像データの符号化が行われて、量子化マトリクス毎に発生符号量が算出される。また、算出された発生符号量から高域成分が多いか否かを識別可能とする識別値が算出されて、識別値が閾値よりも大きく高域成分が多いと判別したときは、高域成分を削減する第１の量子化マトリクスが選択されて、識別値が閾値以下で高域成分が少ないと判別したときは、第１の量子化マトリクスよりも高域成分の削減が少ない第２の量子化マトリクスが選択される。さらに、選択された量子化マトリクスを用いて画像データの符号化が行われる。このため、高域成分が削減されているときには、高域成分の削減が少ない量子化マトリクスを用いて画像データの符号化が行われるので、符号化／復号化処理を繰り返しても、画質の劣化を軽減することができるようになる。したがって、この発明は、画像データの記録再生機器や編集機器等に適している。
【符号の説明】
【０１４０】
１０・・・画像符号化装置、１１・・・画像並べ替え部、２０・・・プレエンコード部、２１・・・予測モード決定部、２２，３２，６２・・・ＤＣＴ部、２３，３３，３３-1〜３３-n，６３・・・量子化部、２４，３４，６４・・・逆量子化部、２５，３５，６５・・・ＩＤＣＴ部、２６，６６・・・予測画生成部、２７，３７、３７-1〜３７-n・・・符号長計算部、３０・・・イントラプレエンコード、３１・・・画面内予測処理部、３６・・・イントラ予測画生成部、４０・・・符号量制御部、５０・・・ディレイバッファ、６０・・・本エンコード部、６１・・・予測処理部、６７・・・可変長符号化部
【図１】
2011029956.tif 000003
【図２】
2011029956.tif 000004
【図３】
2011029956.tif 000005
【図４】
2011029956.tif 000006
【図５】
2011029956.tif 000007
【図６】
2011029956.tif 000008
【図７】
2011029956.tif 000009
【図８】
2011029956.tif 000010
【図９】
2011029956.tif 000011
【図１０】
2011029956.tif 000012
【図１１】
2011029956.tif 000013
【図１２】
2011029956.tif 000014
【図１３】
2011029956.tif 000015
【図１４】
2011029956.tif 000016
【図１５】
2011029956.tif 000017