以下、本発明による第1の実施形態及び第2の実施形態について、図面を参照して順に説明する。本発明の理解を高めるために、以下に説明する実施形態では、AVC/H.264などの予め定められた符号化方式で様々な処理要素を指定する例を説明し、特に、複数の周波数変換係数からなるブロックとして、限定するものではないが、例えば8×8の直交変換係数からなるブロックを例示して説明する。このため、本願明細書中、各実施形態のモード情報伝送置換装置が処理する単位の画像情報を「ブロック」と称し、予め定められた符号化方式で符号化対象とする画像全体を「符号化対象画像」と称することにする。ただし、本発明による各実施形態のモード情報伝送置換装置が処理する単位の画像情報は、動画ファイルなどの複数のフレーム画像からなる画像列全体であったり、1つのフレーム画像であったり、1つのフレーム画像を幾つかに分割したスライスごとの画像部分であったり、スライスごとの画像部分を分割したブロックであってもよい。
先ず、本発明による第1の実施形態のモード情報伝送置換装置、画像符号化装置及び装置について説明する。
<第1の実施形態>
〔装置構成〕
(モード情報伝送置換装置/画像符号化装置)
図1は、本発明による第1の実施形態のモード情報伝送置換装置を備える画像符号化装置のブロック図である。本実施形態の画像符号化装置1は、画像符号化部10と、符号化設定部11と、モード情報伝送置換装置12とを備える。
本実施形態の画像符号化部10及び符号化設定部11は、それぞれ図11で説明した従来からの圧縮符号化の処理に必要な画像符号化部10a及び符号化設定部11に対応しており、同様な構成要素には同一の参照番号を付している。つまり、画像符号化部10は、周波数変換部100を構成する直交変換・量子化部101及び予測信号生成部102と、エントロピー符号化部103とを備えている。
直交変換・量子化部101は、符号化対象画像の入力画像信号を入力し、この入力画像信号と予測信号生成部102から供給される予測信号との差分信号に対して直交変換及び量子化を施す。ただし、予測信号生成部102を設けない場合には、符号化対象画像の入力画像信号に対して直交変換及び量子化を施すことになる。
予測信号生成部102は、入力画像信号を構成するブロックと隣接するブロックの既符号化情報を用いて、当該入力画像信号を予測する予測信号を生成する。例えば、予測信号生成部102は、画面内予測や画面間予測による入力画像信号を予測する予測信号を生成する。
エントロピー符号化部103は、直交変換及び量子化を施した差分信号に対して所定のスキャン順でエントロピー符号化(例えば、可変長符号化)を施し、符号化ビットストリームを生成する。ただし、本実施形態の画像符号化装置1では、直交変換・量子化部101によって直交変換及び量子化を施した直交変換係数がモード情報伝送置換装置12を経由してエントロピー符号化部103に入力される点で、図11で説明した従来からの画像符号化装置とは相違する。
符号化設定部11は、予め定めた処理要素を有する符号化方式で、本実施形態における直交変換・量子化部101、予測信号生成部102及びエントロピー符号化部103で用いる各種モード情報を設定する。ただし、本実施形態の画像符号化装置1では、設定されたモード情報がモード情報伝送置換装置12にも供給される点で、図11で説明した従来からの画像符号化装置とは相違する。
モード情報伝送置換装置12は、画像の圧縮符号化におけるモード情報に応じて、伝送する画像情報を置換する装置であり、モード情報割当部120を構成するモード情報伝送決定部121、決定判断情報供給部122、モード情報伝送方法選択部123及びモード情報伝送値決定部124と、係数変更部125とを備える。
モード情報割当部120は、符号化設定部11で指定される符号化方式のモード情報について、この符号化方式の周波数変換処理による画像情報の周波数変換係数(例えば、直交変換係数)に対する割り当てを決定する機能部である。
係数変更部125は、当該割り当てられたモード情報に対応する画像情報となるように、画像符号化部10から得られる周波数変換係数(例えば、直交変換係数)の値を変更し、変更済みの周波数変換係数(例えば、直交変換係数)を画像符号化部10に送出する機能部である。
特に、符号化設定部11で指定される符号化方式の周波数変換処理による画像情報がブロック単位の複数の周波数変換係数(例えば、直交変換係数)からなる場合、モード情報割当部120は、ブロック単位での識別を要するモード情報の割り当てを決定し、係数変更部125は、この符号化方式の周波数変換処理による画像情報が当該割り当てられたモード情報に対応する画像情報として一致しないときのみ、当該割り当てられたモード情報に対応する画像情報となるようにブロック単位の複数の周波数変換係数のうちの少なくとも1つについて値を変更する。
モード情報伝送決定部121は、符号化設定部11から供給されたモード情報について、符号化対象画像に関する情報量と、圧縮符号化による画質劣化度合い(例えばPSNR値)に依存する予め定めた条件に基づいて、補助情報として明示的に(直接的に)符号化・伝送を行うか、伝送する画像情報を用いて本発明に係る間接的な符号化・伝送を行うかを決定し、この決定を示すモード情報伝送決定情報をモード情報伝送方法選択部123に送出する。尚、モード情報伝送決定情報には、モード情報の伝送値が事前に決定されているか否かを示す情報を含めることができる。符号化対象画像に関する情報量と、圧縮符号化による画質劣化度合いに依存する予め定めた条件については、詳細に後述する。
決定判断情報供給部122は、必ずしも必要とされるものではないが、モード情報伝送決定部121によるモード情報を明示的に付加するか否かの決定のために随意設けられる機能部である。決定判断情報供給部122は、モード情報伝送決定部121によるモード情報を明示的に付加するか否かの決定の際に、符号化設定部11から供給されたモード情報について、圧縮符号化による情報量と画質劣化度合い(例えばPSNR値)に関して、予め多くの画像を使った実験等の統計で定めた結果をメモリ(図示せず)に保持しておき、モード情報ごとに明示的に付加するか否かの決定を示す決定判断情報をモード情報伝送決定部121に供給する。この場合、モード情報伝送決定部121は、モード情報伝送決定部121からの決定判断情報を基に、モード情報を明示的に付加するか、画像情報を用いた間接的な符号化・伝送を行うかを決定する。
また、決定判断情報供給部122は、モード情報伝送決定部121によるモード情報を間接的に付加するか否かの決定の際に、符号化設定部11から供給されたモード情報について、圧縮符号化による情報量と画質劣化度合い(例えばPSNR値)に関して、予め多くの画像を使った実験等の統計で定める代わりに、予め当該符号化対象画像を使った実験等で定めた結果をメモリ(図示せず)に保持しておき、モード情報ごとに間接的に付加するか否かの決定を示す決定判断情報をモード情報伝送決定部121に供給するように構成してもよい。この決定判断情報に関して、決定判断情報供給部122は、モード情報伝送決定部121による符号化対象画像の符号化処理毎に各モード情報を間接的に付加するか否かの決定判断情報を供給してもよいし、各モード情報を間接的に付加するか否かの決定判断情報を一括したリストとしてモード情報伝送決定部121に供給してもよい。
モード情報伝送方法選択部123は、画像情報を用いてモード情報を間接的に符号化・伝送する際に機能する機能部であり、複数のモード情報伝送方法が予め定められている場合に、決定判断情報供給部122からのモード情報伝送決定情報に基づいてモード情報の間接的な符号化・伝送に関するモード情報伝送方法を決定するとともに、いずれのモード情報伝送方法を用いて当該モード情報を伝送するかの旨を示すモード情報の伝送方法情報を、符号化する補助情報として生成する。尚、この補助情報は必ずしも必要とされるものではなく、複数のモード情報伝送方法に関しては詳細に後述する。
モード情報伝送値決定部124は、画像情報を用いてモード情報を間接的に符号化・伝送する際に機能する機能部であり、画像情報に対するモード情報の伝送値の割り当てを決定し、当該決定した値を示す伝送値決定情報を、符号化する補助情報として生成する。尚、この補助情報は必ずしも必要とされるものではなく、伝送値決定情報に関しては、後述する複数のモード情報伝送方法の詳細な説明から明らかになる。
また、伝送方法情報及び伝送値決定情報を符号化ビットストリームにヘッダ情報として付加した場合であっても、モード情報伝送決定部121によるモード情報を明示的に付加するか否かの決定の際に(又は決定判断情報供給部122の決定判断の際に)、圧縮符号化による情報量と画質劣化度合い(例えばPSNR値)に関してモード情報を明示的に付加する場合よりも有効であるとして決定されているものとする。
係数変更部125は、主に、画像情報を用いてモード情報を間接的に符号化・伝送する際に機能する機能部であり、モード情報割当部120を構成するモード情報伝送決定部121、決定判断情報供給部122、モード情報伝送方法選択部123及びモード情報伝送値決定部124からの情報を基に、モード情報を間接的に符号化・伝送するときには、割り当てるモード情報に対応する画像情報となるように、画像符号化部10から得られる周波数変換係数(例えば、直交変換係数)の値を変更し、変更済みの周波数変換係数(例えば、直交変換係数)を画像符号化部10におけるエントロピー符号化部103に送出する。モード情報を明示的に符号化・伝送するときには、係数変更部125は、入力される直交変換係数をそのまま画像符号化部10におけるエントロピー符号化部103に送出する。
エントロピー符号化部103は、モード情報伝送置換装置12を介して得られる周波数変換係数を符号化し、伝送方法情報及び伝送値決定情報を補助情報として伝送する場合も併せて符号化して符号化ビットストリームを生成する。
本実施形態のモード情報伝送置換装置12又は画像符号化装置1をコンピュータとして機能させることができ、当該コンピュータに、本発明に係る各構成要素を実現させるためのプログラムは、当該コンピュータの内部又は外部に備えられるメモリ(図示せず)に記憶される。コンピュータに備えられる中央演算処理装置(CPU)などの制御で、各構成要素の機能を実現するための処理内容が記述されたプログラムを、適宜、メモリから読み込んで、本実施形態のモード情報伝送置換装置12又は画像符号化装置1の各構成要素の機能をコンピュータに実現させることができる。ここで、各構成要素の機能をハードウェアの一部で実現してもよい。
(画像復号装置)
図2は、本発明による第1の実施形態の画像復号装置のブロック図である。本実施形態の画像復号装置20は、画像符号化装置1によって符号化されたビットストリーム、つまり、画像の圧縮符号化におけるモード情報について画像情報を用いて間接的に表現されている符号化ビットストリームを復号する装置であり、予め定められた符号化方式のモード情報について、画像符号化装置1により周波数変換処理による画像情報の周波数変換係数に対する割り当てが決定されている。尚、画像の圧縮符号化におけるモード情報について明示的に付加されている場合には、従来技術と同様に明示的に付加されたモード情報に基づいて画像情報の周波数変換係数に対して逆周波数変換処理を行えば画像を復元できるため、更なる詳細な説明は省略する。画像復号装置20は、エントロピー復号部201と、モード情報抽出部202と、逆周波数変換部203とを備える。逆周波数変換部203は、逆量子化・逆直交変換部204と、予測信号生成部205とを備える。
エントロピー復号部201は、符号化ビットストリームに対してエントロピー復号を施して、モード情報が間接的に表現された画像情報の周波数変換係数(本例では、変更済みの直交変換係数)をモード情報抽出部202及び逆周波数変換部203に送出する。符号化ビットストリームにて、伝送方法情報及び/又は伝送値決定情報が補助情報として符号化されている場合には、これらの補助情報も併せて復号され、モード情報抽出部202に送出される。
モード情報抽出部202は、モード情報が間接的に表現された画像情報の周波数変換係数の値及び/又は個数を分析して当該割り当てられたモード情報を抽出する。伝送方法情報及び/又は伝送値決定情報が補助情報として符号化されている場合には、モード情報抽出部202は、これらの補助情報を基に画像情報の周波数変換係数から当該割り当てられたモード情報を抽出する。
逆周波数変換部203は、モード情報抽出部202によって抽出されたモード情報を用いて、エントロピー復号部201によって復号した画像情報の周波数変換係数に対して、逆周波数変換処理、つまり逆量子化・逆直交変換部204による逆量子化及び逆直交変換処理を施し、復号した画像信号を生成する。尚、符号化側にて、符号化対象画像の入力画像信号と前述した予測信号生成部102から供給される予測信号との差分信号に対して直交変換及び量子化を施している場合には、逆周波数変換部203は、予測信号生成部205によって既復号済の画像信号を逆量子化及び逆直交変換処理を施した差分信号に加算することで、復号した画像信号を生成する。
本実施形態の画像復号装置20をコンピュータとして機能させることができ、当該コンピュータに、本発明に係る各構成要素を実現させるためのプログラムは、当該コンピュータの内部又は外部に備えられるメモリ(図示せず)に記憶される。コンピュータに備えられる中央演算処理装置(CPU)などの制御で、各構成要素の機能を実現するための処理内容が記述されたプログラムを、適宜、メモリから読み込んで、本実施形態の画像復号装置20の各構成要素の機能をコンピュータに実現させることができる。ここで、各構成要素の機能をハードウェアの一部で実現してもよい。
次に、モード情報伝送置換装置12を備える画像符号化装置1における画像符号化処理の動作と、画像復号装置20における画像復号処理の代表的な動作について、それぞれ詳細に説明する。尚、限定するものではないが、8×8の直交変換係数のブロックを、モード情報を間接的に伝送する画像情報として用いる場合について説明する。
〔装置動作〕
(画像符号化処理)
図3は、本発明による第1の実施形態のモード情報伝送置換装置を備える画像符号化装置における画像符号化処理の動作を示すフロー図である。先ず、モード情報割当部120によって、符号化に関するモード情報を取得する(ステップS11)。
次に、モード情報伝送決定部121によって、符号化設定部11から供給されたモード情報について、符号化対象画像に関する情報量と、圧縮符号化による画質劣化度合い(例えばPSNR値)に依存する予め定めた条件に基づいて、モード情報の伝送置換を行うか否か、つまり、明示的に補助情報として符号化・伝送を行うか、本発明に係る画像情報を用いた間接的な符号化・伝送を行うかを決定する(ステップS12)。尚、モード情報の伝送置換を行うか否かを示す情報は、モード情報伝送決定情報としてモード情報伝送方法選択部123及び係数変更部125に送出される。
モード情報伝送決定部121では、モード情報の伝送置換を行うか否かを決定するが、この決定は、符号化対象画像に関する情報量と、圧縮符号化による画質劣化度合い(例えばPSNR値)に依存する。例えば、圧縮符号化の処理要素に必要なモード情報がブロック単位に1ビットであっても、これをブロック単位に明示的に付加すると1つ又は複数のフレーム画像の全体では膨大な情報量になる。しかし、モード情報を明示的に付加しない場合(即ち、モード情報による処理要素の選択が無い場合)に比べて、モード情報による情報量の増大よりも画質劣化度合いが少なければモード情報を明示的に付加することを選択するのが有効である。逆に、モード情報を付加したことによる符号化対象画像の全体の情報量の増大が、画質劣化度合いよりも大きい場合には、モード情報を明示的に付加しないほうがよい。
例えば、モード情報伝送決定部121は、符号化対象画像自体の情報量をI、符号化対象画像に関するモード情報の情報量をQ、符号化対象画像に関する画質劣化度合いをPとしたとき、所定の閾値Tを用いた式(1)を満たす場合には、モード情報を明示的に付加しないで間接的に伝送するとして決定する。
(I+Q)−kP>T (1)
ここに、kは、画質劣化度合いと符号化対象画像に関する情報量の比較を行うための重み係数である。
一方、モード情報伝送処理部121において明示的にモード情報を付加する決定が行われたときは、従来技術と同様に、符号化対象画像に関する符号化処理の単位で必要なビット数のモード情報を付加することになる。
次に、モード情報伝送方法選択部123によって、モード情報伝送決定部121が供給するモード情報伝送決定情報を参照した結果、モード情報の伝送値が事前に決定されているか否かを判別して(ステップS13)、モード情報の伝送値が事前に決定されていない場合、先ず、モード情報の間接的な伝送を行う際に予め定められた複数のモード情報伝送方法のうちのいずれかを選択する(ステップS14)。つまり、モード情報伝送方法選択部123によって、予め定められた複数のモード情報伝送方法について、周波数変換係数の値及び/又は個数に基づいてモード情報伝送方法を選択して決定するとともに、いずれのモード情報伝送方法を用いて当該モード情報を伝送するかの旨を示すモード情報の伝送方法情報を、符号化する補助情報として生成する。予め定められた4つのモード情報伝送方法について、図5及び図6を参照しながら説明する。
第1のモード情報伝送方法は、画像符号化部10における周波数変換部100から得られる、量子化された周波数変換係数(例えば、直交変換係数)を利用し、符号化対象画像に関する周波数変換係数の値がゼロでない値をもつ係数(本願明細書中、「非ゼロ係数」とも称する)の個数に応じたモード情報を設定する(図5(A)参照)。
例えば、量子化された周波数変換係数のブロックに対し1ビットのモード情報を伝送する場合、非ゼロ係数の個数が奇数であるか偶数であるかによって1ビットのモード情報を識別できるように設定する。つまり、周波数変換によって得られる変換係数は、全てが非ゼロ係数ではなくとも、量子化を施すことでゼロになる係数がある。このように符号化対象画像に関する非ゼロ係数の個数に応じたモード情報を設定することができる。
第2のモード情報伝送方法は、画像符号化部10における周波数変換部100から得られる、量子化された周波数変換係数(例えば、直交変換係数)を利用し、符号化対象画像に関する周波数変換係数の値がゼロの値をもつ係数(本願明細書中、「ゼロ係数」とも称する)の個数に応じたモード情報を設定する(図5(A)参照)。
例えば、量子化された周波数変換係数のブロックに対し1ビットのモード情報を伝送する場合、ゼロ係数の個数が奇数であるか偶数であるかによって1ビットのモード情報を識別できるように設定する。つまり、周波数変換によって得られる変換係数に対して量子化を施すことでゼロになる係数の個数を利用する。このように符号化対象画像に関するゼロ係数の個数に応じたモード情報を設定することができる。
尚、量子化された周波数変換係数のブロックに対し1ビットのモード情報を伝送する場合、ブロック内に存在する全係数値は定まっているので、第1のモード情報伝送方法と第2のモード情報伝送方法は同時に使用することができない。
第3のモード情報伝送方法は、画像符号化部10における周波数変換部100から得られる、量子化された周波数変換係数(例えば、直交変換係数)を利用し、符号化対象画像に関する周波数変換係数の値の絶対値が1となる周波数変換係数の個数に応じたモード情報を設定する(図5(B)参照)。
前述のとおり、量子化を施した周波数変換係数として、ブロック内にてゼロ又は±1などの小さい値を多く持つ。そこで、例えば、量子化された周波数変換係数のブロックに対し1ビットのモード情報を伝送する場合、絶対値が1となる周波数変換係数の値の個数が奇数であるか偶数であるかによって1ビットのモード情報を識別できるように設定する。このように周波数変換係数の値の絶対値が1となる周波数変換係数の個数に応じたモード情報を設定することができる。
或いは、第1のモード情報伝送方法と第3のモード情報伝送方法の組み合わせや、第2のモード情報伝送方法と第3のモード情報伝送方法の組み合わせとすることもできる。例えば、画像符号化部10における周波数変換部100から得られる、量子化された周波数変換係数(例えば、DCT係数など)を利用し、符号化対象画像に関する周波数変換係数の値の絶対値が1の係数の個数と、ゼロ係数(又は非ゼロ係数)の個数との総数に応じたモード情報を設定する。
尚、ここでは1ビットのモード情報を符号化する方法を説明したが、2ビット以上のモード情報についてモジュロ(剰余)を用いて間接的な符号化・伝送を行うことも可能である。例えば、2ビットのモード情報で3通りの内容を復号側で識別させる場合に、第1のモード情報伝送方法に適用するとすれば、非ゼロ係数の個数を3で割った剰余数の0,1,2に対応させてモード情報を割り当てることで間接的な符号化・伝送を行うことが可能となる。4通り以上の内容のモード情報を割り当てる場合も同様に、例えば、非ゼロ係数の個数を所定値で割った剰余数に対応させてモード情報を割り当てることで間接的な符号化・伝送を行うことができる。
第4のモード情報伝送方法は、画像符号化部10における周波数変換部100から得られる、量子化された周波数変換係数(例えば、直交変換係数)を利用し、符号化対象画像に関するスキャン順で最後の非ゼロ係数の値に応じたモード情報を設定する(図6参照)。ここでは特に、周波数変換ブロックに対し、1ビットのモード情報を伝送する場合を説明する。この場合、第4のモード情報伝送方法は、周波数変換係数のうち、スキャン順で最後の非ゼロ係数が1か1以外かによってモード情報を伝送する。周波数変換によって得られる変換係数は、量子化を施された後、特に通常のスキャン順で後方になる高周波成分についてはゼロや1など小さい数値になる傾向が多い。このため、スキャン順で最後の非ゼロ係数が1か1以外かによって1ビットのモード情報を伝送するのが好適である。
尚、ここでは1ビット(2通り)のモード情報を伝送する例を説明したが、第4のモード情報伝送方法においても、3通り以上のモードに関するモード情報を伝送することが可能である。例えば、3通りのモードがある場合、スキャン順で最後の非ゼロ係数が1か2か、それ以外かとすることでモード情報を伝送することができる。4通り以上のモードがある場合も同様である。
以上のように、モード情報伝送方法選択部123は、モード情報の符号化に利用する方法を選択する。ここでは4通りのモード情報伝送方法を主に例示しているが、いずれのモード情報伝送方法を選択するかの選択基準として、予め定めておくこともできるが、周波数変換係数の値及び/又は個数に基づくものとすることができる。例えば、限定するものではないが、ゼロ係数の個数が非ゼロ係数よりも多い場合には、第1のモード情報伝送方法か第2のモード情報伝送方法を選択し、非ゼロ係数の個数がゼロ係数よりも多い場合には、第3のモード情報伝送方法か第4のモード情報伝送方法を選択するように決めておくことができる。これにより、モード情報伝送方法を適応的に選択することができる。或いはまた、ゼロ係数の存在の有無、非ゼロ係数の存在の有無、絶対値1の周波数変換係数の存在の有無を、いずれのモード情報伝送方法を選択するかの選択基準としてもよい。或いはまた、第1〜第4のモード情報伝送方法のRDコストを算出することでRDコストの最も小さいものを選択するようにしてもよい。また、いずれのモード情報伝送方法を利用したかを示す伝送方法情報を補助情報として符号化・伝送しない場合、例示した4通りのモード情報伝送方法のちのいずれを用いるかを画像符号化装置1及び画像復号装置20間で予め定めておけばよい。例示した4通りのモード情報伝送方法のうちのいずれを用いるかについて画像符号化装置1及び画像復号装置20間で予め定めておく場合は、モード情報伝送方法選択部123を必ずしも設ける必要はない。
続いて、モード情報伝送値決定部124によって、画像情報に対するモード情報の伝送値の割り当てを決定し、当該決定した値を示す伝送値決定情報を、符号化する補助情報として生成する。
モード情報伝送方法選択部123では、特定の値を持つ周波数変換係数に関する個数の奇数又は偶数に対して1ビットのモード情報の割り当てを決定する例を説明したが、モード情報伝送値決定部124は、1ビットのモード情報(例えば0と1)のうちのいずれを特定の値を持つ周波数変換係数に関する個数の奇数又は偶数に割り当てるかを定める。モード情報伝送値決定部124によって割り当てるモード情報の値が決定されると、その旨が係数変更部125に供給される。
尚、モード情報伝送値決定部124によって、奇数又は偶数を1ビットのモード情報(例えば0と1)のうちのいずれに利用したかを示す伝送値決定情報を補助情報として符号化・伝送しない場合、奇数又は偶数を1ビットのモード情報(例えば0と1)のうちのいずれに利用するかについて、画像符号化装置1及び画像復号装置20間で予め定めておけばよい。奇数又は偶数を1ビットのモード情報(例えば0と1)のうちのいずれに利用したかについて画像符号化装置1及び画像復号装置20間で予め定めておく場合は、モード情報伝送値決定部124を必ずしも設ける必要はない。
次に、係数変更部125によって、画像符号化部10から符号化対象画像の直交変換係数を取得し(ステップS15)、割り当てるモード情報に対応する画像情報となるように(つまり、モード情報の伝送値の割り当てに対応するように)、画像符号化部10から得られる直交変換係数の値を置き換えて変更し、変更済みの直交変換係数を画像符号化部10におけるエントロピー符号化部103に送出する(ステップS16)。
モード情報割当部120の処理において、符号化する1ビットのモード情報は、特定の値を持つ周波数変換係数に関する個数の奇数又は偶数によって表現することを決定したが、符号化したい画像情報のブロックの周波数変換係数に関する個数が、必ずしもモード情報の値に対応する個数の奇数又は偶数に一致しているとは限らない。このため、係数変更部125は、特定の値を持つ周波数変換係数に関する個数の奇数又は偶数に一致するように画像情報のブロックの周波数変換係数の値を変更する。
例えば、周波数変換としてDCT及びDSTをブロック単位で切り替えて利用する符号化方式を想定する。この場合、量子化された周波数変換係数のブロックに対し1ビットのモード情報としてDCT又はDSTで周波数変換が施されている旨を伝送するにあたり、例えば、モード情報伝送方法選択部123によって第1のモード情報伝送方法が選択され、モード情報伝送値決定部124によって非ゼロ係数の個数が奇数の場合にDCT、偶数の場合にDSTを示すモード情報の値を割り当てるとして決定されているとする。一方で、画像符号化部10で処理するブロックがDCTで周波数変換されているにも関わらず、当該ブロックの非ゼロ係数の個数が偶数であった場合に、係数変更部125は、当該ブロックの非ゼロ係数の個数を奇数となるように画像情報のブロックの周波数変換係数を強制的に変更する。具体的には、図5(A)に示すように、非ゼロ係数を1つ削除して係数の値自体をゼロにする。周波数変換では、周波数の大きい係数ほど値が小さい傾向にあり、また、復号した場合に人間の視覚に気づかれにくい性質を有する。そこで、ゼロに変更する周波数変換係数は、非ゼロ係数のうち最高周波数の係数(last significant coefficient)とするのが好適である。圧縮符号化においては、量子化された周波数変換係数は、低周波成分から順番に並び替え(スキャン)が施されることが多く、最高周波数の係数を並び替えの最後とすることからlast significant coefficientと称することがある。
また、モード情報伝送方法選択部123によって第2のモード情報伝送方法が選択されている場合も、例えば、モード情報伝送値決定部124によってゼロ係数の個数が奇数の場合にDCT、偶数の場合にDSTを示すモード情報の値を割り当てるとして決定されているとする。この場合、図5(A)に示すように、係数変更部125は、符号化したい画像情報のブロックの周波数変換係数の個数が、割り当てるモード情報の値に対応する個数に一致するように(本例では、DCTで周波数変換されているブロックのゼロ係数の個数を奇数となるように)、例えば非ゼロ係数のうち最高周波数の係数をゼロに変更することで、画像情報のブロックの周波数変換係数を強制的に変更する。
また、モード情報伝送方法選択部123によって第3のモード情報伝送方法が選択されている場合も、例えば、モード情報伝送値決定部124によって絶対値1の周波数変換係数の個数が奇数の場合にDCT、偶数の場合にDSTを示すモード情報の値を割り当てるとして決定されているとする。この場合、図5(B)に示すように、符号化したい画像情報のブロックの周波数変換係数の個数が、割り当てるモード情報の値に対応する個数に一致するように(本例では、DCTで周波数変換されているブロックの絶対値1の周波数変換係数の個数を奇数となるように)、例えば絶対値1の周波数変換係数のうちの最高周波数の係数をゼロに変更するか、或いは、絶対値として2又は3のような予め定められている小さい値を持つ非ゼロ係数のうちの最高周波数の係数を絶対値1に変更することで、符号化対象画像の周波数変換係数を強制的に変更する。
また、モード情報伝送方法選択部123によって第4のモード情報伝送方法が選択されている場合、モード情報伝送値決定部124によって、モード情報の伝送値(例えば1ビットならば0か1)のいずれを、スキャン順で最後の非ゼロ係数が1か1以外かに割り当てるかについて決定される。ただし、スキャン順で最後の非ゼロ係数が1か1以外のいずれに利用したのかを補助情報として符号化する場合と、予め定めておく場合がある。モード情報の伝送値の割り当てについて画像符号化装置1及び画像復号装置20間で予め定めておく場合、モード情報の伝送値を決定する必要はないので、モード情報伝送値決定部124を必ずしも設ける必要はない。
第4のモード情報伝送方法が選択されている場合も、例えば、モード情報伝送値決定部124によって仮に係数のスキャン順で最後の非ゼロ係数が1の場合がDCT、1以外の場合がDSTを示すモード情報の値を割り当てるとして決定されているとする。この場合、図6に示すように、符号化したい画像情報のブロックの周波数変換係数におけるスキャン順で最後の非ゼロ係数の値が、割り当てるモード情報に対応する値に一致するように(1ビットのモード情報では、DCTで周波数変換されているブロックのスキャン順で最後の非ゼロ係数の値が1となるように)、符号化対象画像のブロックの周波数変換係数を強制的に変更する。
つまり、符号化する1ビットのモード情報は、係数のスキャン順で最後の非ゼロ係数が1か1以外かによって表現されるが、符号化したい情報が必ずしもこれらに一致しているとは限らない。このため、これらが一致するよう変更する。上述の周波数変換としてDCTとDSTのモードがある例では、周波数変換がDCTであるにも関わらず、最後の非ゼロ係数が1以外であった場合には、これを強制的に1に変更する。逆に、周波数変換がDSTであるにも関わらず最後の非ゼロ係数が1であった場合には、2通りの変更方法がある。第1の変更方法は、最後の非ゼロ係数の値を2とする方法である。2以上の数値にしてもよいが、できるだけ小さい方が復号後の画質変化の影響が少ない。第2の変更方法は、最後の非ゼロ係数の値をゼロにし、新たにスキャン順で最後の非ゼロ係数の値を調べ、1でなければそのままとし、1であれば1以外の係数に値を変更する。
周波数変換では、周波数の大きい係数ほど値が小さい傾向になり、また、復号した場合に人間の視覚に気づかれにくい性質を有する。そこで、スキャン順で最後の非ゼロ係数の値によって間接的なモード情報の伝送が可能となる。
最終的に、エントロピー符号化部103によって、明示的又は間接的にモード情報を直交変換係数に付随してエントロピー符号化する(ステップS17)。
これにより、モード情報について、画像情報を用いた間接的な符号化・伝送を行うことができ、圧縮符号化効率又は伝送効率を高めることができる。特に、最高周波数の係数や絶対値1の周波数変換係数を本発明に係るモード情報の間接的な伝送のための変更対象とすることで、実質的な画質劣化を生じさせることなく符号化・伝送に係るモード情報の情報量を低減させることができる。
続いて、画像復号装置20における画像復号処理の動作について説明する。
(画像復号処理)
図4は、本発明による第1の実施形態の画像復号装置における画像復号処理の動作を示すフロー図である。先ず、画像復号装置20は、符号化ビットストリームを入力して、エントロピー復号部201によって、符号化された画像情報に対してエントロピー復号を施す(ステップS21)。図2に示すように、符号化ビットストリームは、エントロピー復号部201で処理され、モード情報が明示的な伝送であれば周波数変換係数に付与されており、モード情報が間接的な伝送であれば変更済みの周波数変換係数が伝送されているため、エントロピー復号部201は、モード情報が明示的に伝送されているか否かの判別を行う(ステップS22)。モード情報が明示的に伝送されている場合は、ステップS25に進み、モード情報が間接的に伝送されている場合は、ステップS23に進む。
また、画像復号装置20は、エントロピー復号部201によって、モード情報の伝送方法情報及び伝送値決定情報が補助情報として符号化ビットストリームに付加されているか否かを判別し、補助情報として付加されている場合には、これらのモード情報の伝送方法情報及び伝送値決定情報を復号する(ステップS23)。
次に、モード情報抽出部202によって、モード情報が間接的に表現された画像情報の周波数変換係数の値及び/又は個数を分析し(ステップS24)、当該割り当てられたモード情報を抽出する(ステップS25)。伝送方法情報及び/又は伝送値決定情報が補助情報として符号化されている場合には、モード情報抽出部202は、これらの補助情報を基に画像情報の周波数変換係数から当該割り当てられたモード情報を抽出する。
つまり、図2に示すように、変更済みの周波数変換係数(例えば、直交変換係数)は、モード情報抽出部202へ供給される。モード情報抽出部202では、モード情報伝送置換装置12におけるモード情報割当部120の処理の逆処理で、周波数変換係数からモード情報を抽出することができる。ここで、モード情報伝送方法の補助情報とモード情報伝送値の補助情報も併せて符号化されている場合には、これらの補助情報を用いてモード情報を抽出する。
図5(A)で示す例で説明すると、モード情報抽出部202は、第1のモード情報伝送方法でモード情報を抽出する場合には、周波数変換係数の値がゼロでない係数(非ゼロ係数)の個数が奇数であるか偶数であるかを判別し、判別した結果からモード情報の値に換算する。
図5(A)で示す例で説明すると、モード情報抽出部202は、第2のモード情報伝送方法でモード情報を抽出する場合には、周波数変換係数の値がゼロの係数(ゼロ係数)の個数が奇数であるか偶数であるかを判別し、判別した結果からモード情報の値に換算する。
図5(B)で示す例で説明すると、モード情報抽出部202は、第3のモード情報伝送方法でモード情報を抽出する場合には、周波数変換係数の値の絶対値が1の係数の個数が奇数であるか偶数であるかを判別し、判別した結果からモード情報の値に換算する。
図6で示す例で説明すると、モード情報抽出部202は、第4のモード情報伝送方法でモード情報を抽出する場合には、周波数変換係数の値のうち、スキャン順で最後の非ゼロ係数が1か1以外かを判別し、判別した結果からモード情報の値に換算する。
最終的に、画像符号化装置1の処理の逆手順となる画像復号処理(逆変換処理)を実行し、復号した画像信号を出力する(ステップS26)。
これにより、画像情報からモード情報を抽出することができ、圧縮符号化効率又は伝送効率を高めることができる。尚、第1の実施形態で画像情報を用いて間接的に伝送されるモード情報が、2次元配列の周波数変換係数に対するスキャン方法を示す符号化のモードである場合には、符号化ストリームで取得する一次元配列からこのモード情報を判別し、判別したモード情報に従って2次元配列の周波数変換係数のブロックを再構成することになる。
次に、本発明による第2の実施形態の画像符号化装置及び画像復号装置について説明する。
<第2の実施形態>
〔装置構成〕
(画像符号化装置)
本発明による第2の実施形態では、主に、複数種類のスキャン方法からなるモードのうち選択したモード情報を間接的に伝送するにあたり、ブロックの直流(DC)成分の係数値を変更する例を説明する。また、複数種類のスキャン方法として、図12に示すジグザグスキャン、水平スキャン及び垂直スキャンの3種類のスキャン方法を切り替える例について説明する。
図7は、本発明による第2の実施形態の画像符号化装置のブロック図である。第2の実施形態の画像符号化装置1bは、周波数変換部を構成する直交変換・量子化部101及び予測信号生成部102と、モード情報伝送置換装置12bと、エントロピー符号化103とを備える。第1の実施形態の画像符号化装置1と同様な構成要素には同一の参照番号を付している。
直交変換・量子化部101は、減算部1010、整数変換部1011及び量子化部1012を備え、符号化対象画像の入力画像信号を2次元配列のブロック単位で入力し、この入力画像信号と予測信号生成部102から供給される予測信号との差分信号に対して整数変換及び量子化を施す機能部である。減算部1010は、この差分信号を生成する機能部であり、整数変換部1011は、周波数変換としてAVC/H.264で代表される整数変換を行う機能部であり、量子化部1012は整数変換された係数の量子化を行う機能部である。
エントロピー符号化部103は、直交変換及び量子化を施した差分信号に対して所定のスキャン順でエントロピー符号化(例えば、可変長符号化)を施し、符号化ビットストリームを生成する。
モード情報伝送置換装置12bは、モード情報を間接的に伝送するべく量子化された周波数変換係数の値を変更する点で第1の実施形態のモード情報伝送置換装置12と同一であるが、第1の実施形態のモード情報伝送置換装置12では、入力される周波数変換係数に対して間接的に伝送するモード情報の値の割り当てを決定して周波数変換係数の値を変更するものであったのに対し、第2の実施形態のモード情報伝送置換装置12bは、N種類(Nは2以上の整数)のモードがある所定の処理要素を適応的に選択するために、選択するモードに関するモード情報について周波数変換係数の値を変更するように構成されている点で相違する。
具体的には、モード情報伝送置換装置12bは、モード情報割当部120bと、係数変更部125bと、モード選択部126とを備える。
モード情報割当部120bは、直交変換・量子化部101から送出される量子化された周波数変換係数のブロックに対し、DC成分以外の周波数変換係数が全て0であるか否かを判定し、DC成分以外の係数が全て0である場合には係数変更部125b及びモード選択部126の処理をバイパスして当該周波数変換係数をエントロピー符号化部103に送出し、DC成分以外の係数が全て0でない場合には、予め定められた符号化方式のN種類のモードを有するモード情報について、当該符号化方式の周波数変換処理によるブロックの周波数変換係数に対する割り当てを決定し、この割り当て情報を係数変更部125bに送出する。
係数変更部125bは、モード情報割当部120bを経て直交変換・量子化部101から送出される量子化された周波数変換係数のブロックに対し、モード情報割当部120bからの割り当て情報を基に、予め定められたN種類の符号化のモード(例えば、N種類のスキャン方法)の種類数と同数のブロックを生成し、モード選択部126に送出する。係数変更部125bが生成する複数のブロックは、N種類の符号化のモード(例えば、N種類のスキャン方法)に応じて各々が異なる周波数変換係数を有するように、入力された周波数変換係数のブロックに対して変更されている。
モード選択部126は、係数変更部125bによって生成された、それぞれN種類の符号化のモードを割り当てたN種類のブロックに対して当該モードに対応するスキャン方法を適用し、予め定めた最適化計算(例えば、RD最適化法の計算や、エントロピー符号化における0ランの長さの計算)に基づいてN種類のブロックから1つのブロックを選択してエントロピー符号化部103に送出する。例えば、RD最適化法では、RDコストは、元の入力画像との誤差の大きさと発生するデータ量の重み付き加算で表すことができ、このRDコストの最も小さくなるブロックを選択する。
尚、予測信号生成部102は、モード情報伝送置換装置12bから送出されるブロックを用いて逆量子化及び逆整数変換を施し、画面内予測や画面間予測による入力画像信号を予測する予測信号を生成するための既符号化情報としてメモリ(図示せず)に保持する。
エントロピー符号化部103は、モード情報伝送置換装置12から送出される周波数変換係数を符号化し、符号化ビットストリームを生成する。
本実施形態の画像符号化装置1bをコンピュータとして機能させることができ、当該コンピュータに、本発明に係る各構成要素を実現させるためのプログラムは、当該コンピュータの内部又は外部に備えられるメモリ(図示せず)に記憶される。コンピュータに備えられる中央演算処理装置(CPU)などの制御で、各構成要素の機能を実現するための処理内容が記述されたプログラムを、適宜、メモリから読み込んで、本実施形態の画像符号化装置1bの各構成要素の機能をコンピュータに実現させることができる。ここで、各構成要素の機能をハードウェアの一部で実現してもよい。
(画像復号装置)
図8は、本発明による第2の実施形態の画像復号装置のブロック図である。第2の実施形態の画像復号装置20bは、エントロピー復号部201bと、逆周波数変換部を構成する逆量子化・逆直交変換部204及び予測信号生成部205とを備える。本実施形態の画像復号装置20bは、画像符号化装置1bによって符号化されたビットストリーム、つまり、画像の圧縮符号化におけるモード情報について画像情報を用いて間接的に表現されている符号化ビットストリームを復号する装置であり、予め定められた符号化方式のモード情報について、画像符号化装置1bにより周波数変換処理による画像情報の周波数変換係数に対する割り当てが決定されている。第1の実施形態の画像復号装置20と同様な構成要素には同一の参照番号を付している。
エントロピー復号部201bは、モード情報が間接的に表現された画像情報の周波数変換係数を有する符号化ビットストリームに対してエントロピー復号を施して周波数変換係数のブロックを再構成し、逆量子化・逆直交変換部204に送出する。ただし、エントロピー復号部201bは、モード抽出機能(第1の実施形態におけるモード情報抽出部202の機能に相当する)を有し、本例では、スキャン方法の種類に関するモード情報が間接的に表現されたブロックの周波数変換係数の値を分析して当該割り当てられたモード情報を抽出するモード判別部202bを備える。
モード判別部202bは、モード情報が間接的に表現されたブロックの周波数変換係数の値を分析して当該割り当てられたモード情報(本例では、スキャン方法の種類に関するモード情報)を抽出する。これにより、エントロピー復号部201bは、スキャン方法の種類を判別してエントロピー復号処理を実行する。
逆量子化・逆直交変換部204は、エントロピー復号部201bによって復号したブロックの周波数変換係数に対して、逆周波数変換処理、つまり逆量子化及び逆整数変換処理を施し、復号した画像信号を生成する。尚、前述したように、符号化側にて、符号化対象画像の入力画像信号と予測信号生成部102から供給される予測信号との差分信号に対して整数変換及び量子化が施されているため、逆量子化・逆直交変換部204は、予測信号生成部205によって既復号済の画像信号を逆量子化及び逆整数変換処理を施した差分信号に加算することで、復号した画像信号を生成する。
本実施形態の画像復号装置20bをコンピュータとして機能させることができ、当該コンピュータに、本発明に係る各構成要素を実現させるためのプログラムは、当該コンピュータの内部又は外部に備えられるメモリ(図示せず)に記憶される。コンピュータに備えられる中央演算処理装置(CPU)などの制御で、各構成要素の機能を実現するための処理内容が記述されたプログラムを、適宜、メモリから読み込んで、本実施形態の画像復号装置20bの各構成要素の機能をコンピュータに実現させることができる。ここで、各構成要素の機能をハードウェアの一部で実現してもよい。
次に、モード情報伝送置換装置12bを備える画像符号化装置1bにおける画像符号化処理の動作と、画像復号装置20における画像復号処理の代表的な動作について、それぞれ詳細に説明する。尚、限定するものではないが、4×4の直交変換係数のブロックを、スキャン方法の種類に関する間接的なモード情報を伝送する画像情報として用いる場合について説明する。
〔装置動作〕
(画像符号化処理)
図9は、本発明による第2の実施形態のモード情報伝送置換装置を備える画像符号化装置における画像符号化処理の動作を示すフロー図である。
先ず、画像符号化装置1bは、入力画像信号に関して、直交変換・量子化部101によって2次元配列のブロックからなる量子化された直交変換係数をモード情報伝送置換装置12bにおけるモード情報割当部120bに送出する。モード情報割当部120bは、直交変換・量子化部101から送出される量子化された周波数変換係数のブロックを入力して分析を開始する(ステップS31)。
モード情報割当部120bによって、量子化後のブロックに対し、以下の処理を行う。先ず、DC成分以外の周波数変換係数が全て0であるか否かを判定する(ステップS32)。DC成分以外の係数が全て0である場合、いずれのスキャン方法でも伝送効率は同じであるので、係数変更部125b及びモード選択部126の処理をバイパスして周波数変換係数の値の変更を行わずにエントロピー符号化を行う(ステップS35)。一方、DC成分以外の係数の全てが0ではない場合、モード情報割当部120bは、予め定められた符号化方式のN種類のモードを有するモード情報について、当該符号化方式の周波数変換処理によるブロックの周波数変換係数に対する割り当てを決定し、この割り当て情報を係数変更部125bに送出する。係数変更部125bは、予め定めた複数種類のスキャン方法の種類数と同数のブロックを生成する。係数変更部125bが生成する複数のブロックは、スキャン方法の種類に応じて各々が異なる周波数変換係数を有するように、入力された周波数変換係数のブロックに対して変更される(ステップS33)。
例えば、予め定めた複数種類のスキャン方法の種類数が3であるとき、係数変更部125bは、入力された周波数変換係数のブロックに対して3種類のブロックを生成する。第1のブロックは、DC成分の周波数変換係数の値を変更せずに、その入力値のまま出力したもの、第2のブロックは、DC成分の周波数変換係数を、入力値−1(或いは入力値+2)に変更したもの、第3のブロックは、DC成分の周波数変換係数を、入力値+1(或いは入力値−2)に変更したものである。
これにより、DC成分の周波数変換係数を3で割った剰余がそれぞれ0,1,2である3種類のブロックとすることができる。尚、DC成分の周波数変換係数を変更するにあたり、その入力値の絶対値からの差異が大きくなるような変更をなるべく行わないことが好ましい。DC成分の周波数変換係数の値の変更に伴う画質の変化を視覚的に認識しにくいようにするためである。そこで、DC成分の周波数変換係数の値を変更するにあたり、原則としてDC成分の周波数変換係数の入力値を±1とし、入力値+1や入力値−1では符号化方式によって扱える上限値及び下限値を超える場合には、それぞれ入力値−2、入力値+2とする。
次に、モード選択部126によって、係数変更部125bによって生成された、それぞれN種類の符号化のモードを割り当てたN種類のブロックに対し、RDコストに基づいて最適なスキャン方法を示すブロックを選択する(ステップS34)。例えば、ステップS33で生成された3種類のブロックのそれぞれに対してDC成分の周波数変換係数を3で割った剰余に対応した異なるスキャン方法(本例では、ジグザグスキャン、水平スキャン、垂直スキャンの3種類のスキャン)が割り当てられている際に、所定の最適化計算(例えば、RDコスト)に基づいて最適なスキャン方法を示すブロックを選択する。
より具体的には、ステップS33で作成したブロックのうち、DC成分の周波数変換係数を3で割った剰余について、この剰余が0であるブロックに対してジグザグスキャンを、剰余が1であるブロックに対して水平スキャンを、剰余が2であるブロックに対して垂直スキャンを割り当て、RDコストの最も小さくなるブロックを選択する。
最終的に、エントロピー符号化部103によって、ステップS32,S34で選択したブロックについてエントロピー符号化を行う(ステップS35)。
これにより、符号化方式の処理要素に関わらず複数のモードを切り替えつつ、モード情報を示すフラグを伝送することなしにモード情報を間接的に伝送することができる。
(画像復号処理)
図10は、本発明による第2の実施形態の画像復号装置における画像復号処理の動作を示すフロー図である。
エントロピー復号部201bにおけるモード判別部202bによって、エントロピー復号処理において、モード情報が間接的に表現されたブロックの周波数変換係数を1次元化した符号化ビットストリームに対してエントロピー復号を施す際に、モード情報が間接的に表現されたブロックの周波数変換係数の値を分析して画像符号化装置1bで割り当てられたモード情報を抽出し(ステップS41)、抽出したモード情報を基に2次元配列の周波数変換係数のブロックを再構成する(ステップS42)。例えば、モード判別部202bは、画像符号化装置1bで設定したスキャン方法に対応させて、ブロックのDC成分の周波数変換係数(1次元配列の最初の周波数変換係数)を抽出し、このDC成分の周波数変換係数を3で割った剰余からスキャン方法に関するモードを判別し、判別したモードに対応するスキャン方法で逆スキャンを実行してブロックの2次元配列を再構成する。本例では、剰余が0であるブロックに対してジグザグスキャンを、剰余が1であるブロックに対して水平スキャンを、剰余が2であるブロックに対して垂直スキャンを適用し、逆スキャンを実行してブロックの2次元配列を再構成する。
最終的に、逆量子化・逆直交変換部204によって、エントロピー復号部201bによって復号したブロックの周波数変換係数に対して、逆周波数変換処理、つまり逆量子化及び逆整数変換処理を施し、復号した画像信号を生成する(ステップS43)。
以上述べた第2の実施形態は、例示にすぎない。例えば、上述の例では、ジグザグスキャン、水平スキャン及び垂直スキャンの3種類のスキャン方法として説明したが、スキャン方法は、特許文献1に記載されているように多数の種類を設けることができる。つまり、N(Nは2以上の整数)種類のスキャン方法を切り替えるようにしてもよい。N種類のスキャン方法に対応させるには、DC成分の直交変換係数をNで割った剰余に応じてN種類のスキャン方法に対応するように、N種類のDC成分の直交変換係数を有するブロックを生成する。
また、上述の例では、DC成分の直交変換係数のみを変更する例を説明したが、N種類のスキャンに対応させるために、ブロック内の周波数変換係数の和(或いは、ブロック内の周波数変換係数の絶対値和)をNで割った剰余に応じてN種類のスキャンに対応するように、N種類の直交変換係数を有するブロックを生成することもできる。この場合、周波数変換係数の和(或いは、絶対値和)による変更を行うにあたり、元のブロック内の周波数変換係数のうちの絶対値が最も大きい係数の値を変更してN種類のブロックを生成するか、又は元のブロック内の周波数変換係数のうちそれぞれ異なるN種類の係数の値をランダムに選択して変更することでN種類のブロックを生成するのが好適である。また、±2よりも広い幅で周波数変換係数の値を変更したい場合には、1つの係数を±2よりも広い幅で変更するよりも、±2以下で複数の係数に分散させて変更するのが好適である。これは、周波数変換係数の変更に伴う画質の変化を視覚的に認識しにくいようにするためである。
例えば、元のブロック内の周波数変換係数の絶対値和に対するNで割った剰余に応じてN種類のスキャンを割り当てる際に、例えば変更する1つの係数の絶対値を+3とするよりも、元のブロック内の周波数変換係数のうちの絶対値の大きさが上位3つの係数を選択し、選択された3つの係数の値をそれぞれ+1ずつ大きくなるようにNの値(本例では、「3」)について分散して変更する。或いは、周波数変換部の処理として整数変換である場合に、ブロックの所定の領域に絶対値が大きい係数が出やすいことが予め分かっているときには、その領域内の係数を変更するように構成することができる。例えば、DCTに基づく整数変換では、ブロックのDC成分周辺の領域で絶対値が大きい係数が集中することが知られている。
また、上述の例では、RDコストを計算して最適なスキャン方法を選択するとして説明したが、エントロピー符号化の際の符号長を考慮して、0ランの長さが最も長くなるようなスキャン方法を選択するように構成することができる。
また、上述の例では、モード情報としてスキャンの種類を示す情報を伝送する例を挙げて説明したが、例えば直交変換の種類を示す情報や量子化等に用いるフィルタの種類を示す情報、或いはイントラ予測の予測モードの情報など、他のモード情報であってもよいことは勿論である。例えば、イントラ予測の予測モードが9種類のモードである場合、この9種類のモード情報を識別できるように、元のブロック内の周波数変換係数(DC成分)の値を変更しつつ、実際に各モードに対応する予測画像のブロックを9種類生成する。この生成した9種類の予測画像のブロックからRDコストや0ランの長さを計算して最適なモードのブロックを選択すればよい。或いは、例えば、イントラ予測の予測モードが9種類であり、スキャン方法の種類が上述のごとく3種類であるとすると、イントラ予測の予測モードの9種類から1つを選択しスキャン方法の3種類から1つを選択して、全部で12種類のモードを1つのブロックのDC成分で識別させることができる。
これにより、符号化方式の処理要素に関わらず複数のモードを切り替えつつ、モード情報を示すフラグを伝送することなしに多種類のモード情報が間接的に伝送可能となる。また、第1の実施形態で説明したモード情報伝送方法を兼用することで、スキャン方法の種類を増大させるだけでなく、他の符号化に関するモード情報を増大させたとしても、画質の改善に有効な処理要素のモードについて符号量を増やすことなく多種類の間接的なモード情報の伝送が可能となる。
包括的には、本発明による第1の実施形態及び第2の実施形態のモード情報伝送置換装置12,12bは、画像の圧縮符号化におけるモード情報に応じて、伝送する画像情報を置換する装置であり、予め定められた符号化方式のモード情報について、当該符号化方式の周波数変換処理による画像情報の周波数変換係数に対する割り当てを決定するモード情報割当部120,120bと、当該割り当てられたモード情報に対応する画像情報となるように、周波数変換係数の値を変更する係数変更部125,125bと、を備える。
特に、第1の実施形態のモード情報伝送置換装置12において、周波数変換処理による画像情報は、符号化方式で指定されるブロック単位の複数の周波数変換係数からなり、モード情報割当部120は、ブロック単位での識別を要するモード情報の割り当てを決定し、係数変更部125は、符号化方式の周波数変換処理による画像情報が当該割り当てられたモード情報に対応する画像情報として一致しないときのみ、ブロック単位の複数の周波数変換係数のうちの少なくとも1つについて値を変更するように構成することができる。これにより、ブロック単位で間接的なモード情報を識別可能とした伝送が可能となる。
また、第1の実施形態のモード情報伝送置換装置12において、モード情報割当部120は、ブロック単位での識別を要するモード情報について、符号化方式で指定されるブロック単位の複数の周波数変換係数のうち、非ゼロ係数の個数、ゼロ係数の個数、絶対値1の係数の個数又はスキャン順で最後の非ゼロ係数の値のいずれかに対応させる割り当てを決定し、係数変更部125は、非ゼロ係数の個数、ゼロ係数の個数、絶対値1の係数の個数又はスキャン順で最後の非ゼロ係数の値のいずれかで当該割り当てられたモード情報に対応する画像情報となるように、ブロック単位の複数の周波数変換係数のうちの少なくとも1つについて値を変更するように構成することができる。これにより、ブロック単位で間接的なモード情報を識別可能とするにあたり、如何なるブロックに対しても、間接的なモード情報の伝送が可能となる。
また、第1の実施形態のモード情報伝送置換装置12において、モード情報割当部120は、ブロック単位での識別を要するモード情報について、符号化方式で指定されるブロック単位の複数の周波数変換係数のうち、非ゼロ係数の個数、ゼロ係数の個数、絶対値1の係数の個数又はスキャン順で最後の非ゼロ係数の値のいずれかを所定値で割った剰余数に対応させる割り当てを決定し、係数変更部125は、非ゼロ係数の個数、ゼロ係数の個数、絶対値1の係数の個数又はスキャン順で最後の非ゼロ係数の値のいずれかを所定値で割った剰余数で当該割り当てられたモード情報に対応する画像情報となるように、ブロック単位の複数の周波数変換係数のうちの少なくとも1つについて値を変更するように構成することができる。これにより、ブロック単位で2ビット以上の間接的なモード情報の伝送が可能となる。
また、第1の実施形態のモード情報伝送置換装置12において、モード情報割当部120は、ブロック単位での識別を要する1ビットのモード情報について、符号化方式で指定されるブロック単位の複数の周波数変換係数のうち、非ゼロ係数の個数、ゼロ係数の個数又は絶対値1の係数の個数が奇数であるか偶数であるか、スキャン順で最後の非ゼロ係数の値が1であるか1以外であるかによって割り当てを決定するように構成することができる。これにより、1ビットのモード情報について復号側でモード情報を抽出する追加の処理負担をほとんど無くすことができる。
また、第1の実施形態のモード情報伝送置換装置12において、モード情報割当部120は、非ゼロ係数の個数、ゼロ係数の個数、絶対値1の係数の個数又はスキャン順で最後の非ゼロ係数の値のいずれを用いて当該モード情報を伝送するかの旨を示すモード情報の伝送方法情報を、符号化する補助情報として生成するモード情報伝送方法選択部123を有するように構成することができる。これにより、従来技術であれば3ビット以上のモード情報の伝送が必要であった場合にも、本発明では間接的なモード伝送に付随して、非ゼロ係数の個数、ゼロ係数の個数、絶対値1の係数の個数又はスキャン順で最後の非ゼロ係数の値のうちのいずれか2つ以上の選択がある旨を復号側に伝送するとしても、1ビット又は2ビットの伝送方法情報で済ませることができ、伝送効率を改善することができる。
さらに、包括的には、本発明による第2の実施形態のモード情報伝送置換装置12bは、画像の圧縮符号化におけるモードをN種類(Nは2以上の整数)から選択し、選択したモードに応じて置換された画像情報を伝送する装置であり、予め定めた符号化方式のN種類のモードを有するモード情報について、当該符号化方式の周波数変換処理による画像情報の周波数変換係数に対する割り当てを決定するモード情報割当部120bと、当該符号化方式の周波数変換処理によるブロック内の周波数変換係数のうち1つ以上の係数値を変更して、N種類のブロックを生成する係数変更部125bと、それぞれN種類の符号化のモードを割り当てたN種類のブロックから予め定めた最適化計算に基づいて1つのブロックを選択して出力するモード選択部126と、を備える。例えば、間接的に伝送したいモード情報が3種類あるとすると、係数変更部125bは、元の画像情報の周波数変換係数の1つのブロックから、周波数変換係数をそれぞれ変更した3種類のブロックを生成する。これらの3種類のブロックは、それぞれ3種類のモードを割り当てたブロックとなる。そこで、モード選択部126は、これらの3種類のブロックに対して、割り当てた3種類のモードに関する処理要素(例えば、画面内予測やスキャン方法など)を実際に適用して予め定めた最適化計算を行い、最適なブロックを1つ選択する。この1つの最適なブロックを選択することで、圧縮符号化にとって最適なモードを選択したことになるのと同時に、選択したモード情報が間接的に表現されたブロックを決定したことになる。したがって、モード選択部126は、選択した最適なブロックを出力して伝送させるのみで、モード情報を別途フラグ等の補助情報で伝送することなしに、画像復号側に画像情報と同時にモード情報を伝えることができる。これにより、ブロック単位でN種類のモード情報を間接的に識別可能とした伝送が可能となる。予め定めた最適化計算としてRDコストの計算とする場合には、モード選択部126は、RDコストが最小となるモードを選択する。また、予め定めた最適化計算としてエントロピー符号化における0ランの長さの計算とする場合には、モード選択部126は、0ランの長さが最長となるモードを選択する。
係数変更部125bは、ブロック内の1つ以上の係数からなる第1の係数グループに対して所定値の加減算を行なうことで係数値を変更し、第1の係数グループを含みブロック内の1つ以上の係数からなる第2の係数グループに応じたNの剰余が、0からN−1となるN種類のブロックを生成することができる。例えば、係数変更部125bは、第1の係数グループをブロック内のDC成分とし、第2の係数グループをブロック内の全ての係数としたとき、第2の係数グループの和に対するNの剰余に応じて、第1の係数グループに対して、所定値の加減算を行うことで係数値を変更する。
或いはまた、例えば、係数変更部125bは、第1の係数グループをブロック内のDC成分とし、第2の係数グループをブロック内の全ての係数としたとき、第2の係数グループの絶対値和に対するNの剰余に応じて、第1の係数グループに対して所定値の加減算を行うことで係数値を変更する。
ここで、係数変更部125bは、周波数変換係数の和(或いは、絶対値和)による変更を行うにあたり、ランダムに選択して変更することでN種類のブロックを生成するように構成することができる。特に、係数変更部125bは、元のブロック内の周波数変換係数の絶対値和に対するNで割った剰余に応じてN種類のスキャンを割り当てる際に、元のブロック内の周波数変換係数のうちの絶対値が大きい順に所定数の係数を選択し、選択された所定数の係数の値をNの値について分散して変更するように構成することができる。これにより、モード情報のN値が大きい場合でも、画質劣化を視認させることなく間接的なモード情報の伝送が可能となる。
第1の実施形態の画像復号装置20は、画像の圧縮符号化におけるモード情報について画像情報を用いて置換された符号化ビットストリームを復号する装置であり、予め定められた符号化方式のモード情報について、符号化方式の周波数変換処理による画像情報の周波数変換係数に対する割り当てが決定されており、符号化ビットストリームをエントロピー復号して画像情報の周波数変換係数を送出するエントロピー復号部と、画像情報の周波数変換係数から当該割り当てられたモード情報を抽出するモード情報抽出部と、抽出されたモード情報を用いて、逆周波数変換処理を施し、復号した画像信号を生成する逆周波数変換部と、を備える。これにより、画像情報を用いて間接的に表現されているモード情報を復号することができる。
第2の実施形態の画像復号装置20bは、画像の圧縮符号化におけるN種類(Nは2以上の整数)のモード情報について画像情報を用いて置換された符号化ビットストリームを復号する装置であり、予め定められた符号化方式のモード情報について、符号化方式の周波数変換処理によるブロックの周波数変換係数に対する割り当てが決定されており、符号化ビットストリームにおけるブロックの周波数変換係数から当該割り当てられたモード情報を判別し、エントロピー復号を施してブロックの周波数変換係数を送出するエントロピー復号部201bと、ブロックの周波数変換係数に対して逆周波数変換処理を施し、復号した画像信号を生成する逆周波数変換部(つまり、逆量子化・逆直交変換部204)と、を備える。これにより、画像情報を用いて間接的に表現されている符号化ビットストリームを復号することができ、N種類のモードを含むモード情報を復号することができる。
また、第2の実施形態の画像復号装置20bにおいて、当該符号化ビットストリームにおけるブロックの周波数変換係数から当該割り当てられたモード情報を判別するエントロピー復号部201bは、それぞれN種類の符号化のモードが割り当てられた当該N種類のブロックの周波数変換係数から、当該割り当てられたモード情報を判別するように構成することができる。
また、第2の実施形態の画像復号装置20bにおいて、当該符号化ビットストリームにおけるブロックは、第1の係数グループの周波数係数と、第2の係数グループの周波数係数として予めグループ化されており、第1の係数グループを含みブロック内の1つ以上の係数からなる第2の係数グループに応じたNの剰余が、0からN−1となるようにN種類のブロックが定義されているように構成することができる。
また、第2の実施形態の画像復号装置20bにおいて、当該第1の係数グループをブロック内のDC成分とし、当該第2の係数グループをブロック内の全ての係数としたとき、第2の係数グループの絶対値和に対するNの剰余に応じて、第1の係数グループに対して所定値の加減算を行うことでN種類のブロックが定義されているように構成することができる。