JP2015177295A - 端末装置及びデータ管理装置 - Google Patents
端末装置及びデータ管理装置 Download PDFInfo
- Publication number
- JP2015177295A JP2015177295A JP2014051448A JP2014051448A JP2015177295A JP 2015177295 A JP2015177295 A JP 2015177295A JP 2014051448 A JP2014051448 A JP 2014051448A JP 2014051448 A JP2014051448 A JP 2014051448A JP 2015177295 A JP2015177295 A JP 2015177295A
- Authority
- JP
- Japan
- Prior art keywords
- prediction
- block
- signal
- unit
- intra
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】予測ブロック内の絵柄が特定の非直線な模様や文字などであっても、予測精度を高めて、高い符号化効率を実現することができるようにする。
【解決手段】演算処理部202により処理されたデータに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、符号化済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して符号化する符号化部204を備えるように構成する。
【選択図】図50
【解決手段】演算処理部202により処理されたデータに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、符号化済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して符号化する符号化部204を備えるように構成する。
【選択図】図50
Description
この発明は、画像を高効率で符号化を行う符号化部と、高効率で符号化されている画像を復号する復号部を備える端末装置及びデータ管理装置に関するものである。
例えば、以下の非特許文献1に記載されている画像符号化装置では、入力されたカラー画像を所定の大きさの最大符号化ブロックに分割し、さらに、最大符号化ブロックをより細かい符号化ブロックに階層分割する。
また、その符号化ブロックをさらに細かい予測ブロック(予測処理単位のブロック)に分割し、その予測ブロックに対する画面内予測や動き補償予測を実施することで予測画像(予測誤差)を生成する。
また、その予測画像を符号化ブロック内で階層的に変換ブロックに分割し、それぞれの変換ブロックの変換係数をエントロピー符号化することで高い圧縮率を達成している。
また、その符号化ブロックをさらに細かい予測ブロック(予測処理単位のブロック)に分割し、その予測ブロックに対する画面内予測や動き補償予測を実施することで予測画像(予測誤差)を生成する。
また、その予測画像を符号化ブロック内で階層的に変換ブロックに分割し、それぞれの変換ブロックの変換係数をエントロピー符号化することで高い圧縮率を達成している。
非特許文献1では、画面内の符号化済み画素を用いる予測としてイントラ予測を用いている。
このイントラ予測には、予測ブロックに隣接している画素を参照画素として、一定の方向にコピーする方向性予測、予測ブロック内の画素の予測値を参照画素の平均値とする平均値(DC)予測や、参照画素から予測ブロック内を内挿する平面(Planar)予測がある。
画像信号は一般に空間的相関が高いため、隣接する画素を用いた様々なバリエーションの予測を適切に切り替えることで高い予測効率を実現することができる。
このイントラ予測には、予測ブロックに隣接している画素を参照画素として、一定の方向にコピーする方向性予測、予測ブロック内の画素の予測値を参照画素の平均値とする平均値(DC)予測や、参照画素から予測ブロック内を内挿する平面(Planar)予測がある。
画像信号は一般に空間的相関が高いため、隣接する画素を用いた様々なバリエーションの予測を適切に切り替えることで高い予測効率を実現することができる。
B.Bross,W.-J. Han,J.-R. Ohm,G. J. Sullivan,Y.-K. Wang and T. Wiegand,"High Efficiency Video Coding(HEVC)text specification draft 10(for FDIS & Consent)",doc. JCTVC-L1003,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,12th Meeting,2013
従来の画像符号化装置は以上のように構成されているので、予測ブロックに対するイントラ予測を適正に選択することができれば、予測精度を高めて、高い符号化効率を実現することができる。しかし、予測ブロック内の絵柄が、例えば、特定の非直線な模様や文字である場合など、予測ブロック内の絵柄によっては、予め用意されているどのイントラ予測を選択しても、精度良く予測できない場合がある。このような場合には、予測精度が低下して、高い符号化効率を実現することができない課題があった。
この発明は上記のような課題を解決するためになされたもので、予測ブロック内の絵柄が特定の非直線な模様や文字などであっても、予測精度を高めて、高い符号化効率を実現することができる符号化部を備える端末装置及びデータ管理装置を得ることを目的とする。
また、この発明は、上記のような画像符号化装置及び画像符号化方法により生成された符号化ビットストリームを正しく復号することができる復号部を備える端末装置及びデータ管理装置を得ることを目的とする。
また、この発明は、上記のような画像符号化装置及び画像符号化方法により生成された符号化ビットストリームを正しく復号することができる復号部を備える端末装置及びデータ管理装置を得ることを目的とする。
この発明に係る端末装置は、データを受信する受信部と、前記受信部により受信されたデータを処理する演算処理部と、前記演算処理部により処理されたデータに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、符号化済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して符号化する符号化部と、前記符号化部により符号化されたデータを保存するデータ保存部と、を備えるようにしたものである。
この発明によれば、データを受信する受信部と、前記受信部により受信されたデータを処理する演算処理部と、前記演算処理部により処理されたデータに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、符号化済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して符号化する符号化部と、前記符号化部により符号化されたデータを保存するデータ保存部と、を備えるように構成したので、予測ブロック内の絵柄が特定の非直線な模様や文字などであっても、予測精度を高めて、高い符号化効率を実現することができる効果、及びネットワーク上の離れたコンピュータを遠隔操作するためのプロトコルを用いずに済み、セキュリティを向上することができる効果がある。
実施の形態1.
図1はこの発明の実施の形態1による画像符号化装置を示す構成図である。
この実施の形態1の画像符号化装置が処理対象とする映像信号は、輝度信号と2つの色差信号からなるYUV信号や、ディジタル撮像素子から出力されるRGB信号等の任意の色空間のカラー映像信号のほか、モノクロ画像信号や赤外線画像信号など、映像フレームが水平・垂直2次元のディジタルサンプル(画素)列から構成される任意の映像信号である。
各画素の階調は8ビットでもよいし、10ビット、12ビットなどの階調であってもよい。
また、入力信号は映像信号ではなく静止画像信号でもよいことは、静止画像信号を1フレームのみで構成される映像信号と解釈できることから当然である。
図1はこの発明の実施の形態1による画像符号化装置を示す構成図である。
この実施の形態1の画像符号化装置が処理対象とする映像信号は、輝度信号と2つの色差信号からなるYUV信号や、ディジタル撮像素子から出力されるRGB信号等の任意の色空間のカラー映像信号のほか、モノクロ画像信号や赤外線画像信号など、映像フレームが水平・垂直2次元のディジタルサンプル(画素)列から構成される任意の映像信号である。
各画素の階調は8ビットでもよいし、10ビット、12ビットなどの階調であってもよい。
また、入力信号は映像信号ではなく静止画像信号でもよいことは、静止画像信号を1フレームのみで構成される映像信号と解釈できることから当然である。
以下の説明においては、便宜上、特に断らない限り、入力される映像信号が、2つの色差成分U,Vが輝度成分Yに対して、縦横ともに2分の1にサブサンプルされたYUV4:2:0フォーマット、2つの色差成分U,Vが輝度成分Yに対して、横方向に2分の1にサブサンプルされたYUV4:2:2フォーマット、あるいは、2つの色差成分U,Vが輝度成分Yと同じサンプル数であるYUV4:4:4フォーマットの信号であるものとする。また、赤色(R)、緑色(G)、青色(B)の三原色の信号からなるRGB4:4:4フォーマットの色信号については、それぞれの色信号をYUV4:4:4フォーマットの色信号とみなしてYUV4:4:4フォーマットと同一の符号化を行う。ただし、RGB4:4:4フォーマットの各色信号(RGB)のYUV4:4:4フォーマットの各色信号(YUV)への対応付けについては限定しない(任意に設定できる)。
この対応付けはインデックス情報として上位ヘッダで符号化して画像復号装置側で認識できるようにしてもよい。このようにすることで、画像復号装置によって復号した復号画像の色を復号された符号化データのみから認識することができ、正しく表示することができる。また、YUV4:4:4フォーマット信号やRGB4:4:4フォーマット信号の場合、各色信号をモノクローム画像信号とみなしてそれぞれ独立にモノクローム(YUV4:0:0)符号化してビットストリームを生成するようにしてもよい。
このようにすることで各信号並列に符号化処理を実施することができる。その際、各モノクローム信号がどの色信号であるかを示す情報をインデックス情報として上位ヘッダで符号化して画像復号装置側で認識できるようにしてもよい。このようにすることで、画像復号装置によって復号した復号画像の色を正しく表示することができる。
なお、上記では4:4:4フォーマット信号の各色信号をモノクローム画像信号とみなしてそれぞれ独立にモノクローム(YUV4:0:0)符号化する場合について説明したが、実際にモノクローム画像信号を対象としてモノクローム符号化することも当然可能である。
また、上記ではYUV信号フォーマットやRGB信号フォーマットの場合について説明したが、その他の色信号のフォーマット(YCbCrや、XYZ等)においても同様に4:2:0、4:2:2、4:4:4フォーマットのいずれかであれば、YUVフォーマットと同様に符号化できる。ただし、対象とするフォーマットの各色信号がYUVフォーマットにおいていずれの色信号に対応するかについては限定しない(任意に設定できる)。もちろん、RGBフォーマットの場合について上記で説明したように、色信号の対応付けはインデックス情報として上位ヘッダで符号化して画像復号装置側で認識できるようにしてもよい。
なお、映像の各フレームに対応する処理データ単位を「ピクチャ」と称し、この実施の形態1では、「ピクチャ」は順次走査(プログレッシブスキャン)された映像フレームの信号として説明を行う。ただし、映像信号がインタレース信号である場合、「ピクチャ」は映像フレームを構成する単位であるフィールド画像信号であってもよい。
この対応付けはインデックス情報として上位ヘッダで符号化して画像復号装置側で認識できるようにしてもよい。このようにすることで、画像復号装置によって復号した復号画像の色を復号された符号化データのみから認識することができ、正しく表示することができる。また、YUV4:4:4フォーマット信号やRGB4:4:4フォーマット信号の場合、各色信号をモノクローム画像信号とみなしてそれぞれ独立にモノクローム(YUV4:0:0)符号化してビットストリームを生成するようにしてもよい。
このようにすることで各信号並列に符号化処理を実施することができる。その際、各モノクローム信号がどの色信号であるかを示す情報をインデックス情報として上位ヘッダで符号化して画像復号装置側で認識できるようにしてもよい。このようにすることで、画像復号装置によって復号した復号画像の色を正しく表示することができる。
なお、上記では4:4:4フォーマット信号の各色信号をモノクローム画像信号とみなしてそれぞれ独立にモノクローム(YUV4:0:0)符号化する場合について説明したが、実際にモノクローム画像信号を対象としてモノクローム符号化することも当然可能である。
また、上記ではYUV信号フォーマットやRGB信号フォーマットの場合について説明したが、その他の色信号のフォーマット(YCbCrや、XYZ等)においても同様に4:2:0、4:2:2、4:4:4フォーマットのいずれかであれば、YUVフォーマットと同様に符号化できる。ただし、対象とするフォーマットの各色信号がYUVフォーマットにおいていずれの色信号に対応するかについては限定しない(任意に設定できる)。もちろん、RGBフォーマットの場合について上記で説明したように、色信号の対応付けはインデックス情報として上位ヘッダで符号化して画像復号装置側で認識できるようにしてもよい。
なお、映像の各フレームに対応する処理データ単位を「ピクチャ」と称し、この実施の形態1では、「ピクチャ」は順次走査(プログレッシブスキャン)された映像フレームの信号として説明を行う。ただし、映像信号がインタレース信号である場合、「ピクチャ」は映像フレームを構成する単位であるフィールド画像信号であってもよい。
図1において、符号化制御部1は符号化処理が実施される際の処理単位となる符号化ブロックの最大サイズを決定するとともに、最大サイズの符号化ブロックが階層的に分割される際の上限の階層数を決定することで、各々の符号化ブロックのサイズを決定する処理を実施する。
また、符号化制御部1は選択可能な1以上の符号化モード(予測処理単位を示す予測ブロックのサイズなどが異なる1以上のイントラ符号化モード、予測処理単位を示す予測ブロックのサイズなどが異なる1以上のイントラブロックコピー符号化モード、予測ブロックのサイズなどが異なる1以上のインター符号化モード)の中から、ブロック分割部3から出力される符号化ブロックに適用する符号化モードを選択する処理を実施する。
選択手法の例としては、選択可能な1以上の符号化モードの中から、ブロック分割部3から出力される符号化ブロックに対する符号化効率が最も高い符号化モードを選択する手法がある。
また、符号化制御部1は選択可能な1以上の符号化モード(予測処理単位を示す予測ブロックのサイズなどが異なる1以上のイントラ符号化モード、予測処理単位を示す予測ブロックのサイズなどが異なる1以上のイントラブロックコピー符号化モード、予測ブロックのサイズなどが異なる1以上のインター符号化モード)の中から、ブロック分割部3から出力される符号化ブロックに適用する符号化モードを選択する処理を実施する。
選択手法の例としては、選択可能な1以上の符号化モードの中から、ブロック分割部3から出力される符号化ブロックに対する符号化効率が最も高い符号化モードを選択する手法がある。
また、符号化制御部1は符号化効率が最も高い符号化モードがイントラ符号化モードである場合、そのイントラ符号化モードで符号化ブロックに対するイントラ予測処理を実施する際に用いるイントラ予測パラメータを上記イントラ符号化モードが示す予測処理単位である予測ブロック毎に決定し、符号化効率が最も高い符号化モードがイントラブロックコピー符号化モードである場合、そのイントラブロックコピー符号化モードで符号化ブロックに対するイントラブロックコピー予測処理を実施する際に用いるイントラブロックコピー予測パラメータを上記イントラブロックコピー符号化モードが示す予測処理単位である予測ブロック毎に決定し、符号化効率が最も高い符号化モードがインター符号化モードである場合、そのインター符号化モードで符号化ブロックに対する動き補償予測処理を実施する際に用いるインター予測パラメータを上記インター符号化モードが示す予測処理単位である予測ブロック毎に決定する処理を実施する。
なお、符号化制御部1は、色差信号については、予測ブロックに対して、イントラ予測処理、イントラブロックコピー予測処理、動き補償予測処理よりも、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する色信号間予測処理を実施する方が符号化効率が高くなるような場合、ブロック分割部3から出力される符号化ブロックに適用する符号化モード(イントラ符号化モード、イントラブロックコピー符号化モード、インター符号化モード)にかかわらず、予測処理として色信号間予測を実施するように、当該符号化ブロックに関わる後述する色信号間予測フラグをONに設定する。
また、色信号間予測処理を実施するか否かの選択単位を符号化ブロック単位として、色信号間予測処理を実施する符号化モードとして色信号間予測モードを定義するようにしてもよい。このようにすることで、予測ブロック単位に色信号間予測フラグを設定する場合より、色信号間予測の選択に関する情報の符号量を削減することができる。
なお、符号化制御部1は、色差信号については、予測ブロックに対して、イントラ予測処理、イントラブロックコピー予測処理、動き補償予測処理よりも、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する色信号間予測処理を実施する方が符号化効率が高くなるような場合、ブロック分割部3から出力される符号化ブロックに適用する符号化モード(イントラ符号化モード、イントラブロックコピー符号化モード、インター符号化モード)にかかわらず、予測処理として色信号間予測を実施するように、当該符号化ブロックに関わる後述する色信号間予測フラグをONに設定する。
また、色信号間予測処理を実施するか否かの選択単位を符号化ブロック単位として、色信号間予測処理を実施する符号化モードとして色信号間予測モードを定義するようにしてもよい。このようにすることで、予測ブロック単位に色信号間予測フラグを設定する場合より、色信号間予測の選択に関する情報の符号量を削減することができる。
さらに、符号化制御部1は変換・量子化部9及び逆量子化・逆変換部10に与える予測差分符号化パラメータを決定する処理を実施する。予測差分符号化パラメータには、符号化ブロックにおける直交変換処理単位となる変換ブロックの分割情報を示す変換ブロック分割情報や、変換係数の量子化を行う際の量子化ステップサイズを規定する量子化パラメータなどが含まれる。
ここで、図20はYUV4:2:0フォーマットの信号における輝度信号及び色差信号の圧縮処理(変換処理、量子化処理)を実施する際の変換ブロックサイズを示す説明図である。
変換ブロックサイズは、図20に示すように、符号化ブロックを四分木状に階層分割することによって決定される。
例えば、変換ブロックを分割する場合と変換ブロックを分割しない場合での符号量や、符号化誤差を加味した評価尺度などに基づいて、評価値が最小になるように変換ブロックを分割するか否かを決定することで、符号量と符号化誤差のトレードオフの観点から最適な変換ブロックの分割形状を決定することができる。
変換ブロックサイズは、図20に示すように、符号化ブロックを四分木状に階層分割することによって決定される。
例えば、変換ブロックを分割する場合と変換ブロックを分割しない場合での符号量や、符号化誤差を加味した評価尺度などに基づいて、評価値が最小になるように変換ブロックを分割するか否かを決定することで、符号量と符号化誤差のトレードオフの観点から最適な変換ブロックの分割形状を決定することができる。
輝度信号については、例えば、図20に示すように、符号化ブロックが1つ又は複数の正方形の変換ブロックに階層的に分割されるように構成する。
色差信号については、図20に示すように、入力信号フォーマットがYUV4:2:0信号である場合、輝度信号と同様に、符号化ブロックが1つ又は複数の正方形の変換ブロックに階層的に分割されるように構成する。
この場合、色差信号の変換ブロックサイズは、対応する輝度信号の変換ブロックの縦横ともに半分のサイズとなる。
色差信号については、図20に示すように、入力信号フォーマットがYUV4:2:0信号である場合、輝度信号と同様に、符号化ブロックが1つ又は複数の正方形の変換ブロックに階層的に分割されるように構成する。
この場合、色差信号の変換ブロックサイズは、対応する輝度信号の変換ブロックの縦横ともに半分のサイズとなる。
入力信号フォーマットがYUV4:2:2信号である場合、図21に示すように、輝度信号と同様の四分木状の階層分割を行う。また、分割したブロックの形状が、垂直方向の画素数が水平方向の画素数の2倍になる長方形となるため、さらに、分割したブロックを上下に二分することで、YUV4:2:0信号での色差信号と同じブロックサイズ(輝度信号の変換ブロックの縦横ともに半分のサイズ)の変換ブロック2つで構成するようにする。
また、入力信号フォーマットがYUV4:4:4信号である場合、図22に示すように、色差信号の変換ブロックは、常に輝度信号の変換ブロックと同様の分割を行い、同じサイズの変換ブロックとなるように構成する。
輝度信号の変換ブロックの分割情報は、例えば、階層毎に分割するか否かを示す変換ブロック分割フラグとして可変長符号化部15に出力する。
輝度信号の変換ブロックの分割情報は、例えば、階層毎に分割するか否かを示す変換ブロック分割フラグとして可変長符号化部15に出力する。
スライス分割部2は入力画像として映像信号を入力すると、その入力画像を符号化制御部1により決定されたスライス分割情報にしたがって1以上の“スライス”という部分画像に分割する処理を実施する。スライスの分割単位は、上述した符号化ブロック単位まで細かくすることができる。
ブロック分割部3はスライス分割部2により分割されたスライスを入力する毎に、そのスライスを符号化制御部1により決定された最大サイズの符号化ブロックである最大符号化ブロックに分割するとともに、符号化制御部1により決定された上限の階層数に至るまで、その最大符号化ブロックを階層的に各符号化ブロックへ分割する処理を実施する。
即ち、ブロック分割部3はスライスを符号化制御部1により決定された分割に応じて各符号化ブロックに分割して、その符号化ブロックを出力する処理を実施する。また、各符号化ブロックは予測処理単位となる1つないし複数の予測ブロックに分割される。
即ち、ブロック分割部3はスライスを符号化制御部1により決定された分割に応じて各符号化ブロックに分割して、その符号化ブロックを出力する処理を実施する。また、各符号化ブロックは予測処理単位となる1つないし複数の予測ブロックに分割される。
切換スイッチ4は符号化制御部1により決定された符号化モードがイントラ符号化モードであれば、ブロック分割部3から出力された符号化ブロックをイントラ予測部5に出力し、符号化制御部1により決定された符号化モードがイントラブロックコピー符号化モードであれば、ブロック分割部3から出力された符号化ブロックをイントラブロックコピー予測部6に出力し、符号化制御部1により決定された符号化モードがインター符号化モードであれば、ブロック分割部3から出力された符号化ブロックを動き補償予測部7に出力する処理を実施する。
イントラ予測部5は切換スイッチ4から出力された符号化ブロックに対応する符号化モードとして、符号化制御部1によりイントラ符号化モードが選択された場合、イントラ用メモリ12に格納されている局所復号画像を参照しながら、符号化制御部1により決定されたイントラ予測パラメータを用いたイントラ予測処理(フレーム内予測処理)を実施してイントラ予測画像を生成する処理を実施する。
即ち、イントラ予測部5は、輝度信号については、輝度信号のイントラ予測パラメータを用いたイントラ予測処理(フレーム内予測処理)を実施して、輝度信号の予測画像を生成する。
一方、色差信号については、色差信号のイントラ予測パラメータが、輝度信号に対するイントラ予測モードと同じイントラ予測モードを用いる旨を示している場合(イントラ予測パラメータが輝度色差共通イントラ予測モード(DMモード)を示している場合)、輝度信号と同じフレーム内予測を実施して、色差信号の予測画像を生成する。
図24はYUV4:2:0フォーマットの信号において輝度信号と色差信号で同一の方向性予測を用いた場合を示し、図25はYUV4:2:2フォーマットの信号において輝度信号と色差信号で同一の方向性予測を用いた場合を示している。
また、色差信号のイントラ予測パラメータが、垂直方向予測モード又は水平方向予測モードを示している場合、色差信号に対する方向性予測を実施して、色差信号の予測画像を生成する。
一方、色差信号については、色差信号のイントラ予測パラメータが、輝度信号に対するイントラ予測モードと同じイントラ予測モードを用いる旨を示している場合(イントラ予測パラメータが輝度色差共通イントラ予測モード(DMモード)を示している場合)、輝度信号と同じフレーム内予測を実施して、色差信号の予測画像を生成する。
図24はYUV4:2:0フォーマットの信号において輝度信号と色差信号で同一の方向性予測を用いた場合を示し、図25はYUV4:2:2フォーマットの信号において輝度信号と色差信号で同一の方向性予測を用いた場合を示している。
また、色差信号のイントラ予測パラメータが、垂直方向予測モード又は水平方向予測モードを示している場合、色差信号に対する方向性予測を実施して、色差信号の予測画像を生成する。
入力信号フォーマットがYUV4:2:2信号である場合、図26に示すように、輝度信号が正方ブロックであれば、色差信号は輝度信号と比較して水平方向の画素数が1/2となる長方形のブロックとなる。したがって、図27に示すように、YUV4:4:4信号をYUV4:2:2信号に変換した際に、輝度信号と色差信号で同一方向の予測となるようにするためには、YUV4:2:2信号上では、垂直方向予測と水平方向予測以外の方向性予測の場合には、色差信号の予測方向が輝度信号の予測方向と異なることとなる。
具体的には、図28に示すように、輝度信号の予測方向ベクトルをvL=(dxL,dyL)とした場合、色差信号の予測方向ベクトルは、vC=(dxL/2,dyL)となる。即ち、図29に示すように、予測方向の角度をθとした場合、輝度信号の予測方向の角度をθL、色差信号の予測方向の角度をθCとして、tanθC=2tanθLの関係となる予測方向で予測する必要がある。
具体的には、図28に示すように、輝度信号の予測方向ベクトルをvL=(dxL,dyL)とした場合、色差信号の予測方向ベクトルは、vC=(dxL/2,dyL)となる。即ち、図29に示すように、予測方向の角度をθとした場合、輝度信号の予測方向の角度をθL、色差信号の予測方向の角度をθCとして、tanθC=2tanθLの関係となる予測方向で予測する必要がある。
したがって、輝度信号と色差信号で同一方向の予測を行う上記DMモードを正しく実施できるようにするために、入力信号フォーマットがYUV4:2:2信号である場合、輝度信号に使用したイントラ予測モードのインデックスを色差信号の予測に用いるイントラ予測モードのインデックスに変換し、変換後のインデックスに対応するイントラ予測モードによる色差信号の予測処理を実施する。具体的には、インデックスの変換テーブルを用意し、その変換テーブルを参照することで、インデックスを変換するように構成してもよいし、予め変換式を用意して、その変換式に従ってインデックスを変換するように構成してもよい。
このように構成することで、方向性予測処理自体を変更することなく、インデックスの変換のみで、YUV4:2:2信号のフォーマットに応じた色差信号の適切な予測を実施することができる。
このように構成することで、方向性予測処理自体を変更することなく、インデックスの変換のみで、YUV4:2:2信号のフォーマットに応じた色差信号の適切な予測を実施することができる。
イントラ予測部5は、輝度信号の予測画像の生成については常にイントラ予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、符号化制御部1により当該予測ブロックで色信号間予測を実施するか否かを示すフラグ(色信号間予測フラグ)が有効(ON)に設定されている場合、イントラ予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、イントラ予測部5はイントラ予測手段を構成している。
イントラブロックコピー予測部6は切換スイッチ4から出力された符号化ブロックに対応する符号化モードとして、符号化制御部1によりイントラブロックコピー符号化モードが選択された場合、その符号化ブロック内の予測ブロック(予測処理単位のブロック)が属している最大サイズの符号化ブロック(最大符号化ブロック)の中で、未だ局所復号が済んでいない領域内の各画素の画素値を所定の方法で仮定する処理を実施する。
また、イントラブロックコピー予測部6は符号化ブロック内の予測ブロック毎に、同一のピクチャ内で既に符号化が行われて局所復号が済んでいる領域の中から、当該予測ブロックと最も近似しているブロックである参照ブロックを探索して、その参照ブロックを当該予測ブロックの予測画像に決定する処理を実施する。
イントラブロックコピー予測部6は、輝度信号の予測画像の生成については常にイントラブロックコピー予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、符号化制御部1により当該予測ブロックの色信号間予測フラグがONに設定されている場合、イントラブロックコピー予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、イントラブロックコピー予測部6はイントラブロックコピー予測手段を構成している。
また、イントラブロックコピー予測部6は符号化ブロック内の予測ブロック毎に、同一のピクチャ内で既に符号化が行われて局所復号が済んでいる領域の中から、当該予測ブロックと最も近似しているブロックである参照ブロックを探索して、その参照ブロックを当該予測ブロックの予測画像に決定する処理を実施する。
イントラブロックコピー予測部6は、輝度信号の予測画像の生成については常にイントラブロックコピー予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、符号化制御部1により当該予測ブロックの色信号間予測フラグがONに設定されている場合、イントラブロックコピー予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、イントラブロックコピー予測部6はイントラブロックコピー予測手段を構成している。
動き補償予測部7は切換スイッチ4から出力された符号化ブロックに対応する符号化モードとして、符号化制御部1によりインター符号化モードが選択された場合、符号化ブロックと動き補償予測フレームメモリ14に格納されている1フレーム以上の局所復号画像を比較して動きベクトルを探索し、その動きベクトルと符号化制御部1により決定された参照するフレーム番号などのインター予測パラメータを用いて、その符号化ブロックに対するインター予測処理(動き補償予測処理)を実施してインター予測画像を生成する処理を実施する。
動き補償予測部7は、輝度信号の予測画像の生成については常に動き補償予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、符号化制御部1により当該予測ブロックの色信号間予測フラグがONに設定されている場合、動き補償予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、動き補償予測部7は動き補償予測手段を構成している。
動き補償予測部7は、輝度信号の予測画像の生成については常に動き補償予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、符号化制御部1により当該予測ブロックの色信号間予測フラグがONに設定されている場合、動き補償予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、動き補償予測部7は動き補償予測手段を構成している。
この実施の形態1では、各予測ブロックに対して、符号化制御部1により当該予測ブロックの色信号間予測フラグがONに設定されている場合、イントラ予測部5、イントラブロックコピー予測部6又は動き補償予測部7のいずれかが色信号間予測処理を実施することを想定しているが、色信号間予測処理を実施する予測部を別途設けるようにしてもよい。
イントラ予測部5、イントラブロックコピー予測部6又は動き補償予測部7が色信号間予測処理を実施するか否かの判断は、例えば、符号化制御部1から出力される色信号間予測パラメータに含まれている色信号間予測フラグ(色信号間予測処理を実施するか否かを示す予測ブロック単位のON/OFF情報であり、ONであれば色信号間予測処理の実施を明示し、OFFであれば色信号間予測処理の非実施を明示している)を参照することで行う。
イントラ予測部5、イントラブロックコピー予測部6又は動き補償予測部7が色信号間予測処理を実施するか否かの判断は、例えば、符号化制御部1から出力される色信号間予測パラメータに含まれている色信号間予測フラグ(色信号間予測処理を実施するか否かを示す予測ブロック単位のON/OFF情報であり、ONであれば色信号間予測処理の実施を明示し、OFFであれば色信号間予測処理の非実施を明示している)を参照することで行う。
したがって、イントラ予測部5は、色信号間予測パラメータに含まれている色信号間予測フラグがONであれば色信号間予測処理を実施し、そのフラグがOFFであればイントラ予測処理を実施する。
また、イントラブロックコピー予測部6は、色信号間予測パラメータに含まれている色信号間予測フラグがONであれば色信号間予測処理を実施し、そのフラグがOFFであればイントラブロックコピー予測処理を実施する。
また、動き補償予測部7は、色信号間予測パラメータに含まれている色信号間予測フラグがONであれば色信号間予測処理を実施し、そのフラグがOFFであれば動き補償予測処理を実施する。
色信号間予測パラメータは、符号化制御部1がイントラ予測パラメータ、イントラブロックコピー予測パラメータ又はインター予測パラメータを出力する際、これらの予測パラメータに含めるようにしてもよいし、これらの予測パラメータと別途に出力するようにしてもよい。
また、イントラブロックコピー予測部6は、色信号間予測パラメータに含まれている色信号間予測フラグがONであれば色信号間予測処理を実施し、そのフラグがOFFであればイントラブロックコピー予測処理を実施する。
また、動き補償予測部7は、色信号間予測パラメータに含まれている色信号間予測フラグがONであれば色信号間予測処理を実施し、そのフラグがOFFであれば動き補償予測処理を実施する。
色信号間予測パラメータは、符号化制御部1がイントラ予測パラメータ、イントラブロックコピー予測パラメータ又はインター予測パラメータを出力する際、これらの予測パラメータに含めるようにしてもよいし、これらの予測パラメータと別途に出力するようにしてもよい。
後述する可変長符号化部15では、符号化制御部1から出力される色信号間予測パラメータを符号化して、可変長符号化して符号化データを生成する。
また、色差信号のイントラ予測パラメータ、イントラブロックコピー予測パラメータ及びインター予測パラメータについては、色信号間予測パラメータに含まれている色信号間予測フラグがOFFである場合に限り、可変長符号化して符号化データを生成する。あるいは、色差信号のイントラ予測パラメータ、イントラブロックコピー予測パラメータ及びインター予測パラメータは輝度信号と同じとしても良い。すなわち、上記色信号間予測フラグがOFFである場合、輝度信号のイントラ予測パラメータ、イントラブロックコピー予測パラメータ、インター予測パラメータを用いて色差信号の予測処理を実施する。このようにすることで、色差信号の予測に必要なパラメータを別途符号化しないで済むため、符号量を削減することができる。特にイントラブロックコピー予測及び動き補償予測については、一般に画像の絵柄や動きは色信号間で高い相関を有することから、色差信号の予測パラメータと輝度信号の予測パラメータを共通化することで符号量を削減しつつ高い予測効率が実現できる。
ここでは、予測ブロック単位に色信号間予測処理の実施の有無を選択しているが、符号化ブロック単位あるいは最大サイズの符号化ブロック単位に、色信号間予測処理の実施の有無を選択するようにしてもよい。このようにすることで色信号間予測処理の切り替え単位が大きくなって予測効率が低下するが、色信号間予測フラグの符号化に要する符号量を削減することができる。あるいは、変換ブロック単位に選択しても良い。このようにすることで符号化ブロックより細かい単位で制御ができるため、予測性能が向上する。このとき、予測ブロックの中に複数の変換ブロックが存在する場合は上記色信号間予測フラグがONの変換ブロックのみ色信号間予測を実施し、上記色信号間予測フラグがOFFの変換ブロックでは色差信号に対するイントラ予測、イントラブロックコピー予測あるいは動き補償予測を行う。
あるいは、色信号間予測フラグを切り替えるブロックサイズを最大サイズの符号化ブロック、符号化ブロック、予測ブロック、変換ブロックとは独立に設定しても良い。このようにすることで、色信号間予測処理に最適なブロックサイズを設定することができる。独立に設定するブロックサイズは四分木によって表現される分割情報で定めるようにしても良く、このようにすることで、画像の局所性質に応じてブロックサイズを変更することができる。本ブロックサイズ情報は符号化して、画像復号装置で復号することでわかるようにしても良いし、画像符号化装置と画像復号装置共通のサイズを予め固定サイズとして設定しても良い。
また、色信号間予測フラグは、2つの色差信号(U、V信号)で共通でもよいし、U信号とV信号で独立にフラグを持つようにしてもよい。U信号とV信号で相関の高い色信号(輝度信号または色差信号)が同じ場合は共通とすることで、色信号間予測フラグの符号量を削減しながら、高精度な予測を実現することができる。一方、U信号とV信号で相関の高い色信号(輝度信号または色差信号)が異なる場合には、U信号とV信号で独立にフラグを持つようにすることで、より適応的に色信号間予測処理の切り替えが可能になり、予測精度を改善することができる。
また、色差信号のイントラ予測パラメータ、イントラブロックコピー予測パラメータ及びインター予測パラメータについては、色信号間予測パラメータに含まれている色信号間予測フラグがOFFである場合に限り、可変長符号化して符号化データを生成する。あるいは、色差信号のイントラ予測パラメータ、イントラブロックコピー予測パラメータ及びインター予測パラメータは輝度信号と同じとしても良い。すなわち、上記色信号間予測フラグがOFFである場合、輝度信号のイントラ予測パラメータ、イントラブロックコピー予測パラメータ、インター予測パラメータを用いて色差信号の予測処理を実施する。このようにすることで、色差信号の予測に必要なパラメータを別途符号化しないで済むため、符号量を削減することができる。特にイントラブロックコピー予測及び動き補償予測については、一般に画像の絵柄や動きは色信号間で高い相関を有することから、色差信号の予測パラメータと輝度信号の予測パラメータを共通化することで符号量を削減しつつ高い予測効率が実現できる。
ここでは、予測ブロック単位に色信号間予測処理の実施の有無を選択しているが、符号化ブロック単位あるいは最大サイズの符号化ブロック単位に、色信号間予測処理の実施の有無を選択するようにしてもよい。このようにすることで色信号間予測処理の切り替え単位が大きくなって予測効率が低下するが、色信号間予測フラグの符号化に要する符号量を削減することができる。あるいは、変換ブロック単位に選択しても良い。このようにすることで符号化ブロックより細かい単位で制御ができるため、予測性能が向上する。このとき、予測ブロックの中に複数の変換ブロックが存在する場合は上記色信号間予測フラグがONの変換ブロックのみ色信号間予測を実施し、上記色信号間予測フラグがOFFの変換ブロックでは色差信号に対するイントラ予測、イントラブロックコピー予測あるいは動き補償予測を行う。
あるいは、色信号間予測フラグを切り替えるブロックサイズを最大サイズの符号化ブロック、符号化ブロック、予測ブロック、変換ブロックとは独立に設定しても良い。このようにすることで、色信号間予測処理に最適なブロックサイズを設定することができる。独立に設定するブロックサイズは四分木によって表現される分割情報で定めるようにしても良く、このようにすることで、画像の局所性質に応じてブロックサイズを変更することができる。本ブロックサイズ情報は符号化して、画像復号装置で復号することでわかるようにしても良いし、画像符号化装置と画像復号装置共通のサイズを予め固定サイズとして設定しても良い。
また、色信号間予測フラグは、2つの色差信号(U、V信号)で共通でもよいし、U信号とV信号で独立にフラグを持つようにしてもよい。U信号とV信号で相関の高い色信号(輝度信号または色差信号)が同じ場合は共通とすることで、色信号間予測フラグの符号量を削減しながら、高精度な予測を実現することができる。一方、U信号とV信号で相関の高い色信号(輝度信号または色差信号)が異なる場合には、U信号とV信号で独立にフラグを持つようにすることで、より適応的に色信号間予測処理の切り替えが可能になり、予測精度を改善することができる。
減算部8はブロック分割部3より出力された符号化ブロックから、イントラ予測部5により生成されたイントラ予測画像、イントラブロックコピー予測部6により生成されたイントラブロックコピー予測画像、又は、動き補償予測部7により生成されたインター予測画像を減算して、その減算結果である差分画像を示す予測差分信号を変換・量子化部9に出力する処理を実施する。
変換・量子化部9は符号化制御部1により決定された予測差分符号化パラメータに含まれる変換ブロック分割情報を参照して、減算部8から出力された予測差分信号に対する直交変換処理(例えば、DCT(離散コサイン変換)やDST(離散サイン変換)、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を変換ブロック単位に実施して変換係数を算出するとともに、その予測差分符号化パラメータに含まれる量子化パラメータを参照して、その変換ブロック単位の変換係数を量子化し、量子化後の変換係数である圧縮データを逆量子化・逆変換部10及び可変長符号化部15に出力する処理を実施する。
変換・量子化部9は符号化制御部1により決定された予測差分符号化パラメータに含まれる変換ブロック分割情報を参照して、減算部8から出力された予測差分信号に対する直交変換処理(例えば、DCT(離散コサイン変換)やDST(離散サイン変換)、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を変換ブロック単位に実施して変換係数を算出するとともに、その予測差分符号化パラメータに含まれる量子化パラメータを参照して、その変換ブロック単位の変換係数を量子化し、量子化後の変換係数である圧縮データを逆量子化・逆変換部10及び可変長符号化部15に出力する処理を実施する。
変換・量子化部9は変換係数を量子化する際、上記量子化パラメータから算出される量子化ステップサイズを変換係数毎にスケーリングする量子化マトリクスを用いて、変換係数の量子化処理を実施するようにしてもよい。
ここで、図10は4×4DCTの量子化マトリクスの一例を示す説明図である。
図中の数字は、各変換係数の量子化ステップサイズのスケーリング値を示している。
例えば、符号化ビットレートを抑制するために、図10に示すように、高域の変換係数程、量子化ステップサイズを大きな値にスケーリングすることで、複雑な画像領域等で発生する高域の変換係数を抑制して符号量を抑えつつ、主観品質に大きく影響する低域の係数の情報を落とさずに符号化することができる。
このように、変換係数毎の量子化ステップサイズを制御したい場合には量子化マトリクスを用いればよい。
ここで、図10は4×4DCTの量子化マトリクスの一例を示す説明図である。
図中の数字は、各変換係数の量子化ステップサイズのスケーリング値を示している。
例えば、符号化ビットレートを抑制するために、図10に示すように、高域の変換係数程、量子化ステップサイズを大きな値にスケーリングすることで、複雑な画像領域等で発生する高域の変換係数を抑制して符号量を抑えつつ、主観品質に大きく影響する低域の係数の情報を落とさずに符号化することができる。
このように、変換係数毎の量子化ステップサイズを制御したい場合には量子化マトリクスを用いればよい。
また、量子化マトリクスは、各直交変換サイズで色信号や符号化モード(イントラ符号化かインター符号化か)毎に独立したマトリクスを使用することができ、初期値として、画像符号化装置及び画像復号装置で予め共通に用意されている量子化マトリクスや既に符号化された量子化マトリクスの中から選択するか、新しい量子化マトリクスを用いるかをそれぞれ選択することができる。
したがって、変換・量子化部9は、各直交変換サイズに対して色信号や符号化モード毎に、新しい量子化マトリクスを用いるか否かを示すフラグを符号化すべき量子化マトリクスパラメータに設定する。
したがって、変換・量子化部9は、各直交変換サイズに対して色信号や符号化モード毎に、新しい量子化マトリクスを用いるか否かを示すフラグを符号化すべき量子化マトリクスパラメータに設定する。
さらに、新しい量子化マトリクスを用いる場合には、図10に示すような量子化マトリクスの各スケーリング値を符号化すべき量子化マトリクスパラメータに設定する。
一方、新しい量子化マトリクスを用いない場合には、初期値として、画像符号化装置及び画像復号装置で、予め共通に用意されている量子化マトリクス、又は、既に符号化された量子化マトリクスの中から、使用するマトリクスを特定するインデックスを符号化すべき量子化マトリクスパラメータに設定する。ただし、参照可能な既に符号化された量子化マトリクスが存在しない場合、画像符号化装置及び画像復号装置で予め共通に用意されている量子化マトリクスのみ選択可能となる。
一方、新しい量子化マトリクスを用いない場合には、初期値として、画像符号化装置及び画像復号装置で、予め共通に用意されている量子化マトリクス、又は、既に符号化された量子化マトリクスの中から、使用するマトリクスを特定するインデックスを符号化すべき量子化マトリクスパラメータに設定する。ただし、参照可能な既に符号化された量子化マトリクスが存在しない場合、画像符号化装置及び画像復号装置で予め共通に用意されている量子化マトリクスのみ選択可能となる。
逆量子化・逆変換部10は符号化制御部1により決定された予測差分符号化パラメータに含まれる量子化パラメータ及び変換ブロック分割情報を参照して、変換ブロック単位に変換・量子化部9から出力された圧縮データを逆量子化するとともに、逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、減算部8から出力された予測差分信号に相当する局所復号予測差分信号を算出する処理を実施する。なお、変換・量子化部9が量子化マトリクスを用いて、量子化処理を実施している場合には、逆量子化処理時においても、その量子化マトリクスを参照して、対応する逆量子化処理を実施する。
加算部11は逆量子化・逆変換部10により算出された局所復号予測差分信号と、イントラ予測部5により生成されたイントラ予測画像、イントラブロックコピー予測部6により生成されたイントラブロックコピー予測画像、又は、動き補償予測部7により生成されたインター予測画像とを加算して、ブロック分割部3から出力された符号化ブロックに相当する局所復号画像を算出する処理を実施する。
加算部11は逆量子化・逆変換部10により算出された局所復号予測差分信号と、イントラ予測部5により生成されたイントラ予測画像、イントラブロックコピー予測部6により生成されたイントラブロックコピー予測画像、又は、動き補償予測部7により生成されたインター予測画像とを加算して、ブロック分割部3から出力された符号化ブロックに相当する局所復号画像を算出する処理を実施する。
イントラ用メモリ12は加算部11により算出された局所復号画像を格納する記録媒体である。
ループフィルタ部13は加算部11により算出された局所復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の局所復号画像を出力する処理を実施する。
具体的には、変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
ループフィルタ部13は加算部11により算出された局所復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の局所復号画像を出力する処理を実施する。
具体的には、変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
ただし、ループフィルタ部13は、上記のデブロッキングフィルタ処理、画素適応オフセット処理及び適応フィルタ処理のそれぞれについて、処理を行うか否かを決定し、各処理の有効フラグをヘッダ情報として可変長符号化部15に出力する。なお、上記のフィルタ処理を複数使用する際は、各フィルタ処理を順番に実施する。図11は複数のフィルタ処理を用いる場合のループフィルタ部13の構成例を示している。
一般に使用するフィルタ処理の種類が多いほど、画像品質は向上するが、一方で処理負荷は高くなる。即ち、画像品質と処理負荷はトレードオフの関係にある。また、各フィルタ処理の画像品質改善効果はフィルタ処理対象画像の特性によって異なる。したがって、画像符号化装置が許容する処理負荷や符号化処理対象画像の特性にしたがって使用するフィルタ処理を決めればよい。例えば、図11の構成よりも処理負荷を削減したい場合、デブロッキングフィルタ処理と画素適応オフセット処理のみで構成するといったことが考えられる。
一般に使用するフィルタ処理の種類が多いほど、画像品質は向上するが、一方で処理負荷は高くなる。即ち、画像品質と処理負荷はトレードオフの関係にある。また、各フィルタ処理の画像品質改善効果はフィルタ処理対象画像の特性によって異なる。したがって、画像符号化装置が許容する処理負荷や符号化処理対象画像の特性にしたがって使用するフィルタ処理を決めればよい。例えば、図11の構成よりも処理負荷を削減したい場合、デブロッキングフィルタ処理と画素適応オフセット処理のみで構成するといったことが考えられる。
ここで、デブロッキングフィルタ処理では、ブロック境界にかけるフィルタ強度の選択に用いる各種パラメータを初期値から変更することができる。変更する場合には、そのパラメータをヘッダ情報として可変長符号化部15に出力する。
画素適応オフセット処理では、最初に、画像を複数のブロックに分割し、そのブロック単位に、オフセット処理を行わない場合もクラス分類手法の一つとして定義して、予め用意されている複数のクラス分類手法の中から、1つのクラス分類手法を選択する。
次に、選択したクラス分類手法によって、ブロック内の各画素をクラス分類し、クラス毎に符号化歪みを補償するオフセット値を算出する。
最後に、局所復号画像の画素値に対して、そのオフセット値を加算する処理を行うことで局所復号画像の画像品質を改善する。
したがって、画素適応オフセット処理では、ブロック分割情報、各ブロックのクラス分類手法を示すインデックス、ブロック単位の各クラスのオフセット値を特定するオフセット情報をヘッダ情報として可変長符号化部15に出力する。
なお、画素適応オフセット処理において、例えば、最大符号化ブロックといった固定サイズのブロック単位に常に分割して、そのブロック毎にクラス分類手法を選択して、クラス毎の適応オフセット処理を行ってもよい。この場合、上記ブロック分割情報が不要となり、ブロック分割情報に要する符号量分だけ符号量が削減され、符号化効率を高めることができる。
画素適応オフセット処理では、最初に、画像を複数のブロックに分割し、そのブロック単位に、オフセット処理を行わない場合もクラス分類手法の一つとして定義して、予め用意されている複数のクラス分類手法の中から、1つのクラス分類手法を選択する。
次に、選択したクラス分類手法によって、ブロック内の各画素をクラス分類し、クラス毎に符号化歪みを補償するオフセット値を算出する。
最後に、局所復号画像の画素値に対して、そのオフセット値を加算する処理を行うことで局所復号画像の画像品質を改善する。
したがって、画素適応オフセット処理では、ブロック分割情報、各ブロックのクラス分類手法を示すインデックス、ブロック単位の各クラスのオフセット値を特定するオフセット情報をヘッダ情報として可変長符号化部15に出力する。
なお、画素適応オフセット処理において、例えば、最大符号化ブロックといった固定サイズのブロック単位に常に分割して、そのブロック毎にクラス分類手法を選択して、クラス毎の適応オフセット処理を行ってもよい。この場合、上記ブロック分割情報が不要となり、ブロック分割情報に要する符号量分だけ符号量が削減され、符号化効率を高めることができる。
適応フィルタ処理では、局所復号画像を所定の手法でクラス分類し、各クラスに属する領域(局所復号画像)毎に、重畳されている歪みを補償するフィルタを設計し、そのフィルタを用いて、当該局所復号画像のフィルタ処理を実施する。
そして、クラス毎に設計したフィルタをヘッダ情報として可変長符号化部15に出力する。
クラス分類手法としては、画像を空間的に等間隔に区切る簡易な手法や、ブロック単位に画像の局所的な特性(分散など)に応じて分類する手法がある。
また、適応フィルタ処理で使用するクラス数は、予め画像符号化装置及び画像復号装置に共通の値として設定してもよいし、符号化すべきパラメータとしてもよい。
前者と比較して後者の方が、使用するクラス数を自由に設定することができるため、画像品質改善効果が上がるが、一方でクラス数を符号化するために、その分の符号量が増加する。
そして、クラス毎に設計したフィルタをヘッダ情報として可変長符号化部15に出力する。
クラス分類手法としては、画像を空間的に等間隔に区切る簡易な手法や、ブロック単位に画像の局所的な特性(分散など)に応じて分類する手法がある。
また、適応フィルタ処理で使用するクラス数は、予め画像符号化装置及び画像復号装置に共通の値として設定してもよいし、符号化すべきパラメータとしてもよい。
前者と比較して後者の方が、使用するクラス数を自由に設定することができるため、画像品質改善効果が上がるが、一方でクラス数を符号化するために、その分の符号量が増加する。
なお、画素適応オフセット処理及び適応フィルタ処理を行う場合には、図11に示すように、映像信号をループフィルタ部13で参照する必要があるため、映像信号がループフィルタ部13に入力されるように、図1の画像符号化装置を変更する必要がある。
動き補償予測フレームメモリ14はループフィルタ部13のフィルタ処理後の局所復号画像を格納する記録媒体である。
可変長符号化部15は変換・量子化部9から出力された圧縮データと、符号化制御部1の出力信号(最大符号化ブロック内のブロック分割情報、符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ、イントラブロックコピー予測パラメータ、インター予測パラメータ、色信号間予測フラグを含む色信号間予測パラメータ)と、動き補償予測部7から出力された動きベクトル(符号化モードがインター符号化モードである場合)とを可変長符号化して符号化データを生成する処理を実施する。
また、可変長符号化部15は、図13に例示するように、符号化ビットストリームのヘッダ情報として、シーケンスレベルヘッダ、ピクチャレベルヘッダを符号化し、ピクチャデータと共に符号化ビットストリームを生成する処理を実施する。なお、可変長符号化部15は符号化手段を構成している。
可変長符号化部15は変換・量子化部9から出力された圧縮データと、符号化制御部1の出力信号(最大符号化ブロック内のブロック分割情報、符号化モード、予測差分符号化パラメータ、イントラ予測パラメータ、イントラブロックコピー予測パラメータ、インター予測パラメータ、色信号間予測フラグを含む色信号間予測パラメータ)と、動き補償予測部7から出力された動きベクトル(符号化モードがインター符号化モードである場合)とを可変長符号化して符号化データを生成する処理を実施する。
また、可変長符号化部15は、図13に例示するように、符号化ビットストリームのヘッダ情報として、シーケンスレベルヘッダ、ピクチャレベルヘッダを符号化し、ピクチャデータと共に符号化ビットストリームを生成する処理を実施する。なお、可変長符号化部15は符号化手段を構成している。
ただし、ピクチャデータは1以上のスライスデータから構成され、各スライスデータはスライスレベルヘッダと当該スライス内にある上記符号化データをまとめたものである。ピクチャデータはスライスデータの他に補足情報を示すヘッダ情報を含む場合もある。
シーケンスレベルヘッダは、画像サイズ、色信号フォーマット、輝度信号や色差信号の信号値のビット深度、シーケンス単位でのループフィルタ部13における各フィルタ処理(適応フィルタ処理、画素適応オフセット処理、デブロッキングフィルタ処理)の有効フラグ、量子化マトリクスの有効フラグなど、一般的にシーケンス単位に共通となるヘッダ情報をまとめたものである。
ピクチャレベルヘッダは、参照するシーケンスレベルヘッダのインデックスや動き補償時の参照ピクチャ数、エントロピー符号化の確率テーブル初期化フラグ、対象ピクチャに対する有効フラグを含めた量子化マトリクスパラメータなど、ピクチャ単位で設定するヘッダ情報をまとめたものである。
シーケンスレベルヘッダは、画像サイズ、色信号フォーマット、輝度信号や色差信号の信号値のビット深度、シーケンス単位でのループフィルタ部13における各フィルタ処理(適応フィルタ処理、画素適応オフセット処理、デブロッキングフィルタ処理)の有効フラグ、量子化マトリクスの有効フラグなど、一般的にシーケンス単位に共通となるヘッダ情報をまとめたものである。
ピクチャレベルヘッダは、参照するシーケンスレベルヘッダのインデックスや動き補償時の参照ピクチャ数、エントロピー符号化の確率テーブル初期化フラグ、対象ピクチャに対する有効フラグを含めた量子化マトリクスパラメータなど、ピクチャ単位で設定するヘッダ情報をまとめたものである。
スライスレベルヘッダは、当該スライスがピクチャのどの位置にあるかを示す位置情報、どのピクチャレベルヘッダを参照するかを示すインデックス、スライスの符号化タイプ(オールイントラ符号化、インター符号化など)、ループフィルタ部13における各フィルタ処理(適応フィルタ処理、画素適応オフセット処理、デブロッキングフィルタ処理)を行うか否かを示すフラグなどのスライス単位のパラメータをまとめたものである。
ここでは、可変長符号化部15が色信号間予測フラグを含む色信号間予測パラメータを可変長符号化する例を示しているが、シーケンスレベルヘッダ、ピクチャレベルヘッダ及びスライスレベルヘッダのうち、少なくとも1つのヘッダに色信号間予測処理を実施するか否かを示すフラグ(上位ヘッダ色信号間予測有効フラグ)を含めて符号化するようにしてもよい。このようにすることで、シーケンス、ピクチャ、あるいはスライス単位で、色信号間予測処理による高精度な予測が可能な領域(色信号間の相関が高い領域)である場合のみ有効とすることができる一方、色信号間予測処理の予測精度が低い領域は無効とすることで、色信号間予測処理に関する符号化パラメータを符号化せずに済み、符号量を削減することができる。上記上位ヘッダ色信号間予測有効フラグはイントラ予測、イントラブロックコピー予測、動き補償予測それぞれに用意しても良いし、共通としても良い。
例えば、イントラ予測部5で輝度信号のイントラ予測処理を行う場合のみ色信号間予測処理を有効とすることで、輝度信号について、その他の予測処理(イントラブロックコピー予測処理、動き補償予測処理)を行う場合には、色信号間予測処理に関する符号化パラメータを符号化せずに済み、符号量を削減することができると共に、イントラブロックコピー予測部6及び動き補償予測部7の構成を簡易化することができる。あるいは、上記上位ヘッダ色信号間予測有効フラグをイントラ予測、イントラブロックコピー予測、動き補償予測共通の情報として、色信号間予測の予測効率が高いスライスのみ有効とすることで、色信号間予測の予測効率が低い領域でのブロック単位の色信号間予測パラメータの符号化による符号量増加を回避することができる。
例えば、イントラ予測部5で輝度信号のイントラ予測処理を行う場合のみ色信号間予測処理を有効とすることで、輝度信号について、その他の予測処理(イントラブロックコピー予測処理、動き補償予測処理)を行う場合には、色信号間予測処理に関する符号化パラメータを符号化せずに済み、符号量を削減することができると共に、イントラブロックコピー予測部6及び動き補償予測部7の構成を簡易化することができる。あるいは、上記上位ヘッダ色信号間予測有効フラグをイントラ予測、イントラブロックコピー予測、動き補償予測共通の情報として、色信号間予測の予測効率が高いスライスのみ有効とすることで、色信号間予測の予測効率が低い領域でのブロック単位の色信号間予測パラメータの符号化による符号量増加を回避することができる。
また、上記上位ヘッダ色信号間予測有効フラグについて、シーケンスレベルヘッダ、ピクチャレベルヘッダ及びスライスレベルヘッダのうち、2つ以上のヘッダで符号化する場合、優先度はスライスレベルヘッダ、ピクチャレベルヘッダ、シーケンスレベルヘッダの順となる。即ち、スライスレベルヘッダとピクチャレベルヘッダに上記フラグが存在する場合は、スライスレベルヘッダ内のフラグが優先され、ピクチャレベルヘッダ及びシーケンスレベルヘッダ内にフラグが存在する場合はピクチャレベルヘッダ内のフラグが優先される。
さらに、上記上位ヘッダ色信号間予測有効フラグについて、ピクチャを分割するサブピクチャの単位に設けるようにしても良い。具体的には、非特許文献1記載のTileやWavefront Parallel Processingのサブピクチャの分割単位に上記上位ヘッダ色信号間予測有効フラグを設けることで、色信号間予測が効果的な領域のみ有効とすることが可能となり符号量の増加を抑制しつつ高精度な予測が実現できる。
さらに、上記上位ヘッダ色信号間予測有効フラグについて、ピクチャを分割するサブピクチャの単位に設けるようにしても良い。具体的には、非特許文献1記載のTileやWavefront Parallel Processingのサブピクチャの分割単位に上記上位ヘッダ色信号間予測有効フラグを設けることで、色信号間予測が効果的な領域のみ有効とすることが可能となり符号量の増加を抑制しつつ高精度な予測が実現できる。
各ヘッダ情報とピクチャデータはNALユニットによって識別される。具体的には、シーケンスパラメータセット(上記シーケンスレベルヘッダに相当)、ピクチャパラメータヘッダ(上記ピクチャレベルヘッダに相当)、スライスデータはそれぞれ固有のNALユニットタイプとして定義され、NALユニットタイプの識別情報(インデックス)と共に符号化される。補足情報についても、存在する場合には固有のNALユニットとして定義される。また、上記ピクチャデータはアクセスユニットとして定義され、スライスデータを示すNALユニットや補足情報を示すNALユニット等の当該ピクチャに関わるNALユニットをまとめた、各ピクチャのデータアクセスの単位を示している。
図1の例では、画像符号化装置の構成要素である符号化制御部1、スライス分割部2、ブロック分割部3、切換スイッチ4、イントラ予測部5、イントラブロックコピー予測部6、動き補償予測部7、減算部8、変換・量子化部9、逆量子化・逆変換部10、加算部11、イントラ用メモリ12、ループフィルタ部13、動き補償予測フレームメモリ14及び可変長符号化部15のそれぞれが専用のハードウェアで構成(イントラ用メモリ12及び動き補償予測フレームメモリ14以外の構成要素は、例えば、CPUを実装している半導体集積回路や、ワンチップマイコンなどで構成)されているものを想定しているが、画像符号化装置がコンピュータで構成されていてもよい。
画像符号化装置をコンピュータで構成する場合、イントラ用メモリ12及び動き補償予測フレームメモリ14をコンピュータのメモリ上に構成するとともに、符号化制御部1、スライス分割部2、ブロック分割部3、切換スイッチ4、イントラ予測部5、イントラブロックコピー予測部6、動き補償予測部7、減算部8、変換・量子化部9、逆量子化・逆変換部10、加算部11、ループフィルタ部13及び可変長符号化部15の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにすればよい。
図2はこの発明の実施の形態1による画像符号化装置の処理内容(画像符号化方法)を示すフローチャートである。
画像符号化装置をコンピュータで構成する場合、イントラ用メモリ12及び動き補償予測フレームメモリ14をコンピュータのメモリ上に構成するとともに、符号化制御部1、スライス分割部2、ブロック分割部3、切換スイッチ4、イントラ予測部5、イントラブロックコピー予測部6、動き補償予測部7、減算部8、変換・量子化部9、逆量子化・逆変換部10、加算部11、ループフィルタ部13及び可変長符号化部15の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにすればよい。
図2はこの発明の実施の形態1による画像符号化装置の処理内容(画像符号化方法)を示すフローチャートである。
図3はこの発明の実施の形態1による画像復号装置を示す構成図である。
図3において、可変長復号部31は図1の画像符号化装置により生成された符号化ビットストリームを入力すると、そのビットストリームからシーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダなどの各ヘッダ情報とピクチャデータを復号する処理を実施する。
ただし、ピクチャデータは1以上のスライスデータから構成されており、各スライスデータはスライスレベルヘッダと当該スライス内にある符号化データがまとめられているものである。ピクチャデータはスライスデータの他に補足情報を示すヘッダ情報を含む場合もある。このとき、YUV4:4:4フォーマット信号やRGB4:4:4フォーマット信号の各信号をモノクローム画像信号とみなしてそれぞれ独立にモノクローム(YUV4:0:0)符号化していることを示す情報がヘッダ情報に含まれる場合、各色信号の符号化ビットストリームに対してそれぞれ独立に復号処理を実施することができる。
図3において、可変長復号部31は図1の画像符号化装置により生成された符号化ビットストリームを入力すると、そのビットストリームからシーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダなどの各ヘッダ情報とピクチャデータを復号する処理を実施する。
ただし、ピクチャデータは1以上のスライスデータから構成されており、各スライスデータはスライスレベルヘッダと当該スライス内にある符号化データがまとめられているものである。ピクチャデータはスライスデータの他に補足情報を示すヘッダ情報を含む場合もある。このとき、YUV4:4:4フォーマット信号やRGB4:4:4フォーマット信号の各信号をモノクローム画像信号とみなしてそれぞれ独立にモノクローム(YUV4:0:0)符号化していることを示す情報がヘッダ情報に含まれる場合、各色信号の符号化ビットストリームに対してそれぞれ独立に復号処理を実施することができる。
各ヘッダ情報とピクチャデータはNALユニットによって識別される。具体的には、シーケンスパラメータセット(上記シーケンスレベルヘッダに相当)、ピクチャパラメータヘッダ(上記ピクチャレベルヘッダに相当)、スライスデータはそれぞれ固有のNALユニットタイプとして定義され、NALユニットタイプの識別情報(インデックス)を復号することで識別される。補足情報についても、存在する場合には固有のNALユニットとして識別される。また、ピクチャデータはスライスデータを示すNALユニットや補足情報を示すNALユニット等の当該ピクチャに関わるNALユニットをまとめたアクセスユニットとして識別される。
上記ヘッダ情報に含まれる量子化マトリクスの有効フラグが“有効”を示す場合、可変長復号部31は量子化マトリクスパラメータを可変長復号し、量子化マトリクスを特定する。具体的には、各直交変換サイズの色信号や符号化モード毎に、量子化マトリクスパラメータが初期値として、画像符号化装置及び画像復号装置で予め共通に用意されている量子化マトリクス、又は、既に復号された量子化マトリクスである(新しい量子化マトリクスでない)ことを示す場合は、上記マトリクスの内のどの量子化マトリクスであるかを特定するインデックス情報を参照して量子化マトリクスを特定し、量子化マトリクスパラメータが新しい量子化マトリクスを用いることを示す場合は、量子化マトリクスパラメータに含まれる量子化マトリクスを使用する量子化マトリクスとして特定する。
また、可変長復号部31は、スライスレベルヘッダを参照して、スライス分割状態を特定するとともに、各スライスのスライスデータを復号して、最大符号化ブロックの符号化データを特定すると共に、スライスデータに含まれるブロック分割情報を復号して、最大符号化ブロックを階層的に分割して復号処理を行う単位である符号化ブロックを特定し、各々の符号化ブロックに係る圧縮データ、符号化モード、イントラ予測パラメータ(符号化モードがイントラ符号化モードである場合)、イントラブロックコピー予測パラメータ(符号化モードがイントラブロックコピー符号化モードである場合)、インター予測パラメータ(符号化モードがインター符号化モードである場合)、動きベクトル(符号化モードがインター符号化モードである場合)、色信号間予測を実施するか否かのフラグ(色信号間予測フラグ)を含む色信号間予測パラメータ及び予測差分符号化パラメータを可変長復号する処理を実施する。
ここでは、可変長復号部31が、各符号化ブロックに関わる色信号間予測パラメータを可変長復号する例を示したが、図1の画像符号化装置が、シーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダの内、少なくとも1つのヘッダに色信号間予測処理を実施するか否かを示すフラグ(上位ヘッダ色信号間予測有効フラグ)を含めて符号化している場合、可変長復号部31が上記上位ヘッダ色信号間予測有効フラグを復号し、そのフラグがONである場合(色信号間予測処理を実施する場合)のみ、対応するイントラ予測部34、イントラブロックコピー予測部35、動き補償予測部36で色信号間予測処理を有効とし、色信号間予測処理が有効である符号化モードを示す符号化ブロックのみ当該符号化ブロックに関わる上記色信号間予測パラメータを可変長復号する。色信号間予測処理が有効でない符号化モードを示す符号化ブロックについては、この符号化ブロックに関わる上記色信号間予測パラメータは可変長復号されず、対応する上記色信号間予測フラグはOFF(色信号間予測を実施しない)に設定される。
ここで、上記上位ヘッダ色信号間予測有効フラグは、図1の画像符号化装置がイントラ予測、イントラブロックコピー予測、動き補償予測それぞれに用意している場合、対応する画像復号装置はそれぞれ個別に用意されたフラグを復号するように構成し、一方、図1の画像符号化装置がイントラ予測、イントラブロックコピー予測、動き補償予測共通で用意している場合、対応する画像復号装置はその共通のフラグを復号するように構成する。
ただし、図1の画像符号化装置が、色信号間予測処理の有効化に関する各フラグを、シーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダのうち、2つ以上のヘッダで符号化している場合、可変長復号部31によって復号されたフラグについて、スライスレベルヘッダ、ピクチャレベルヘッダ、シーケンスレベルヘッダの順に優先度を設定する。
即ち、スライスレベルヘッダとピクチャレベルヘッダ内にフラグが存在する場合はスライスレベルヘッダ内のフラグが優先され、ピクチャレベルヘッダとシーケンスレベルヘッダ内にフラグが存在する場合はピクチャレベルヘッダ内のフラグが優先される。
また、上記上位ヘッダ色信号間予測有効フラグについて、図1の画像符号化装置がピクチャを分割するサブピクチャの単位に上記上位ヘッダ色信号間予測有効フラグを設けるように構成している場合、対応する画像復号装置はサブピクチャの単位に復号するように構成する。このようにすることで、サブピクチャ単位の色信号間予測の有効・無効制御を行っている画像符号化装置の符号化ビットストリームを正しく復号することができる。
ここで、上記上位ヘッダ色信号間予測有効フラグは、図1の画像符号化装置がイントラ予測、イントラブロックコピー予測、動き補償予測それぞれに用意している場合、対応する画像復号装置はそれぞれ個別に用意されたフラグを復号するように構成し、一方、図1の画像符号化装置がイントラ予測、イントラブロックコピー予測、動き補償予測共通で用意している場合、対応する画像復号装置はその共通のフラグを復号するように構成する。
ただし、図1の画像符号化装置が、色信号間予測処理の有効化に関する各フラグを、シーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダのうち、2つ以上のヘッダで符号化している場合、可変長復号部31によって復号されたフラグについて、スライスレベルヘッダ、ピクチャレベルヘッダ、シーケンスレベルヘッダの順に優先度を設定する。
即ち、スライスレベルヘッダとピクチャレベルヘッダ内にフラグが存在する場合はスライスレベルヘッダ内のフラグが優先され、ピクチャレベルヘッダとシーケンスレベルヘッダ内にフラグが存在する場合はピクチャレベルヘッダ内のフラグが優先される。
また、上記上位ヘッダ色信号間予測有効フラグについて、図1の画像符号化装置がピクチャを分割するサブピクチャの単位に上記上位ヘッダ色信号間予測有効フラグを設けるように構成している場合、対応する画像復号装置はサブピクチャの単位に復号するように構成する。このようにすることで、サブピクチャ単位の色信号間予測の有効・無効制御を行っている画像符号化装置の符号化ビットストリームを正しく復号することができる。
逆量子化・逆変換部32は可変長復号部31により可変長復号された予測差分符号化パラメータに含まれる量子化パラメータ及び変換ブロック分割情報を参照して、可変長復号部31により可変長復号された圧縮データを変換ブロック単位に逆量子化するとともに、逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、図1の逆量子化・逆変換部10から出力された局所復号予測差分信号と同一の復号予測差分信号を算出する処理を実施する。
ここで、上記変換ブロック分割情報から、符号化ブロックにおける変換ブロックの分割状態を特定する。例えば、YUV4:2:0フォーマットの信号の場合、変換ブロックサイズは、図20に示すように、符号化ブロックを四分木状に階層分割することによって決定される。
ここで、上記変換ブロック分割情報から、符号化ブロックにおける変換ブロックの分割状態を特定する。例えば、YUV4:2:0フォーマットの信号の場合、変換ブロックサイズは、図20に示すように、符号化ブロックを四分木状に階層分割することによって決定される。
輝度信号については、例えば、図20に示すように、符号化ブロックが1つ又は複数の正方形の変換ブロックに階層的に分割されるように構成する。
色差信号については、図20に示すように、入力信号フォーマットがYUV4:2:0信号である場合、輝度信号と同様に、符号化ブロックが1つ又は複数の正方形の変換ブロックに階層的に分割されるように構成する。この場合、色差信号の変換ブロックサイズは、対応する輝度信号の変換ブロックの縦横ともに半分のサイズとなる。
色差信号については、図20に示すように、入力信号フォーマットがYUV4:2:0信号である場合、輝度信号と同様に、符号化ブロックが1つ又は複数の正方形の変換ブロックに階層的に分割されるように構成する。この場合、色差信号の変換ブロックサイズは、対応する輝度信号の変換ブロックの縦横ともに半分のサイズとなる。
入力信号フォーマットがYUV4:2:2信号である場合、図21に示すように、輝度信号と同様の四分木状の階層分割を行う。また、分割したブロックの形状が、垂直方向の画素数が水平方向の画素数の2倍になる長方形となるため、さらに、分割したブロックを上下に二分することで、YUV4:2:0信号での色差信号と同じブロックサイズ(輝度信号の変換ブロックの縦横ともに半分のサイズ)の変換ブロック2つで構成するようにする。
入力信号フォーマットがYUV4:4:4信号である場合、図22に示すように、色差信号の変換ブロックは、常に輝度信号の変換ブロックと同様の分割を行い、同じサイズの変換ブロックとなるように構成する。
入力信号フォーマットがYUV4:4:4信号である場合、図22に示すように、色差信号の変換ブロックは、常に輝度信号の変換ブロックと同様の分割を行い、同じサイズの変換ブロックとなるように構成する。
また、可変長復号部31により可変長復号された各ヘッダ情報が、当該スライスで量子化マトリクスを用いて、逆量子化処理を実施することを示している場合、量子化マトリクスを用いて逆量子化処理を行う。
具体的には、各ヘッダ情報から特定される量子化マトリクスを用いて逆量子化処理を行う。
具体的には、各ヘッダ情報から特定される量子化マトリクスを用いて逆量子化処理を行う。
切換スイッチ33は可変長復号部31により可変長復号された符号化モードがイントラ符号化モードであれば、可変長復号部31により可変長復号されたイントラ予測パラメータをイントラ予測部34に出力し、可変長復号部31により可変長復号された符号化モードがイントラブロックコピー符号化モードであれば、可変長復号部31により可変長復号されたイントラブロックコピー予測パラメータをイントラブロックコピー予測部35に出力し、可変長復号部31により可変長復号された符号化モードがインター符号化モードであれば、可変長復号部31により可変長復号されたインター予測パラメータ及び動きベクトルを動き補償予測部36に出力する処理を実施する。
イントラ予測部34は可変長復号部31により可変長復号されたブロック分割情報から特定される符号化ブロックに係る符号化モードがイントラ符号化モードである場合、イントラ用メモリ38に格納されている復号画像を参照しながら、切換スイッチ33から出力されたイントラ予測パラメータを用いたイントラ予測処理(フレーム内予測処理)を実施してイントラ予測画像を生成する処理を実施する。
即ち、イントラ予測部34は、輝度信号については、輝度信号に対する上記イントラ予測パラメータを用いたイントラ予測処理(フレーム内予測処理)を実施して、輝度信号の予測画像を生成する。
一方、色差信号については、各予測ブロックに対して、当該予測ブロックの上記色信号間予測フラグがOFFである(色信号間予測処理の非実施を明示している)場合、イントラ予測処理を実施する。
このとき、色差信号のイントラ予測パラメータが、輝度信号に対するイントラ予測モードと同じ予測モードを用いる旨を示している場合(イントラ予測パラメータが輝度色差共通イントラ予測モード(DMモード)を示している場合)、輝度信号と同じフレーム内予測を実施して、色差信号の予測画像を生成する。
また、色差信号のイントラ予測パラメータが、垂直方向予測モード又は水平方向予測モードを示している場合、色差信号に対する方向性予測を実施して、色差信号の予測画像を生成する。
一方、色差信号については、各予測ブロックに対して、当該予測ブロックの上記色信号間予測フラグがOFFである(色信号間予測処理の非実施を明示している)場合、イントラ予測処理を実施する。
このとき、色差信号のイントラ予測パラメータが、輝度信号に対するイントラ予測モードと同じ予測モードを用いる旨を示している場合(イントラ予測パラメータが輝度色差共通イントラ予測モード(DMモード)を示している場合)、輝度信号と同じフレーム内予測を実施して、色差信号の予測画像を生成する。
また、色差信号のイントラ予測パラメータが、垂直方向予測モード又は水平方向予測モードを示している場合、色差信号に対する方向性予測を実施して、色差信号の予測画像を生成する。
入力信号フォーマットがYUV4:2:2信号である場合、図26に示すように、輝度信号が正方ブロックであれば、色差信号は輝度信号と比較して水平方向の画素数が1/2となる長方形のブロックとなる。したがって、図27に示すように、YUV4:4:4信号をYUV4:2:2信号に変換した際に、輝度信号と色差信号で同一方向の予測となるようにするためには、YUV4:2:2信号上では、垂直方向予測と水平方向予測以外の方向性予測の場合には、色差信号の予測方向が輝度信号の予測方向と異なることとなる。
具体的には、図28に示すように、輝度信号の予測方向ベクトルをvL=(dxL,dyL)とした場合、色差信号の予測方向ベクトルは、vC=(dxL/2,dyL)となる。即ち、図29に示すように、予測方向の角度をθとした場合、輝度信号の予測方向の角度をθL、色差信号の予測方向の角度をθCとして、tanθC=2tanθLの関係となる予測方向で予測する必要がある。
具体的には、図28に示すように、輝度信号の予測方向ベクトルをvL=(dxL,dyL)とした場合、色差信号の予測方向ベクトルは、vC=(dxL/2,dyL)となる。即ち、図29に示すように、予測方向の角度をθとした場合、輝度信号の予測方向の角度をθL、色差信号の予測方向の角度をθCとして、tanθC=2tanθLの関係となる予測方向で予測する必要がある。
したがって、輝度信号と色差信号で同一方向の予測を行う上記DMモードを正しく実施できるようにするために、入力信号フォーマットがYUV4:2:2信号である場合、輝度信号に使用したイントラ予測モードのインデックスを色差信号の予測に用いるイントラ予測モードのインデックスに変換し、変換後のインデックスに対応するイントラ予測モードによる色差信号の予測処理を実施する。具体的には、インデックスの変換テーブルを用意し、その変換テーブルを参照することで、インデックスを変換するように構成してもよいし、予め変換式を用意して、その変換式に従ってインデックスを変換するように構成してもよい。
このように構成することで、方向性予測処理自体を変更することなく、インデックスの変換のみで、YUV4:2:2信号のフォーマットに応じた色差信号の適切な予測を実施することができる。
このように構成することで、方向性予測処理自体を変更することなく、インデックスの変換のみで、YUV4:2:2信号のフォーマットに応じた色差信号の適切な予測を実施することができる。
イントラ予測部34は、輝度信号の予測画像の生成については常にイントラ予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、当該予測ブロックの色信号間予測フラグがONである場合(色信号間予測処理の実施を明示している場合)、イントラ予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、イントラ予測部34はイントラ予測手段を構成している。
イントラブロックコピー予測部35は可変長復号部31により可変長復号されたブロック分割情報から特定される符号化ブロックに係る符号化モードがイントラブロックコピー符号化モードである場合、その符号化ブロック内の予測ブロックが属している最大符号化ブロックの中で、未だ復号が済んでいない領域内の各画素の画素値を所定の方法で仮定する処理を実施する。
また、イントラブロックコピー予測部35は符号化ブロック内の予測ブロック毎に、同一のピクチャ内で既に復号が済んでいる領域の中から、当該予測ブロックと最も近似しているブロックである参照ブロックを探索して、その参照ブロックを当該予測ブロックの予測画像に決定する処理を実施する。
イントラブロックコピー予測部35は、輝度信号の予測画像の生成については常にイントラブロックコピー予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、当該予測ブロックの色信号間予測フラグがONである場合(色信号間予測処理の実施を明示している場合)、イントラブロックコピー予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、イントラブロックコピー予測部35はイントラブロックコピー予測手段を構成している。
また、イントラブロックコピー予測部35は符号化ブロック内の予測ブロック毎に、同一のピクチャ内で既に復号が済んでいる領域の中から、当該予測ブロックと最も近似しているブロックである参照ブロックを探索して、その参照ブロックを当該予測ブロックの予測画像に決定する処理を実施する。
イントラブロックコピー予測部35は、輝度信号の予測画像の生成については常にイントラブロックコピー予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、当該予測ブロックの色信号間予測フラグがONである場合(色信号間予測処理の実施を明示している場合)、イントラブロックコピー予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、イントラブロックコピー予測部35はイントラブロックコピー予測手段を構成している。
動き補償予測部36は可変長復号部31により可変長復号されたブロック分割情報から特定される符号化ブロックに係る符号化モードがインター符号化モードである場合、動き補償予測フレームメモリ40に格納されている復号画像を参照しながら、切換スイッチ33から出力された動きベクトルとインター予測パラメータを用いたインター予測処理(動き補償予測処理)を実施してインター予測画像を生成する処理を実施する。
動き補償予測部36は、輝度信号の予測画像の生成については常に動き補償予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、当該予測ブロックの色信号間予測フラグがONである場合(色信号間予測処理の実施を明示している場合)、動き補償予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、動き補償予測部36は動き補償予測手段を構成している。
動き補償予測部36は、輝度信号の予測画像の生成については常に動き補償予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、当該予測ブロックの色信号間予測フラグがONである場合(色信号間予測処理の実施を明示している場合)、動き補償予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。なお、動き補償予測部36は動き補償予測手段を構成している。
この実施の形態1では、可変長復号部31により可変長復号された色信号間予測パラメータに含まれている色信号間予測フラグがONである場合、イントラ予測部34、イントラブロックコピー予測部35又は動き補償予測部36のいずれかが色信号間予測処理を実施することを想定しているが、色信号間予測処理を実施する予測部を別途設けるようにしてもよい。
また、この実施の形態1では、色信号間予測パラメータに含まれている色信号間予測フラグを参照して、色信号間予測処理の実施の有無を選択しているが、図1の画像符号化装置が、符号化ブロック単位あるいは最大サイズの符号化ブロック単位でフラグを符号化している場合、対応する画像復号装置では、図1の画像符号化装置と同じ単位でフラグを復号することで、図1の画像符号化装置と同じ単位に、色信号間予測処理の実施の有無を識別する。このようにすることで、正しく符号化パラメータを復号することができる。
あるいは、図1の画像符号化装置が、変換ブロック単位に色信号間予測フラグを符号化するように構成している場合、対応する画像復号装置も変換ブロック単位の色信号間予測フラグを復号するように構成する。このとき、予測ブロックの中に複数の変換ブロックが存在する場合は上記色信号間予測フラグがONの変換ブロックのみ色信号間予測を実施し、上記色信号間予測フラグがOFFの変換ブロックでは色差信号に対するイントラ予測、イントラブロックコピー予測あるいは動き補償予測を行う。
また、色信号間予測フラグは、図1の画像符号化装置が2つの色差信号(U、V信号)で共通とするように構成する場合、画像復号装置では、可変長復号部31により2つの色差信号(U、V信号)で共通のフラグを復号する。
一方、図1の画像符号化装置がU信号とV信号で独立に色信号間予測フラグを持つように構成する場合、画像復号装置では、可変長復号部31によりU信号のフラグとV信号のフラグを別々に復号する。このようにすることで正しく符号化パラメータを復号することができる。
また、この実施の形態1では、色信号間予測パラメータに含まれている色信号間予測フラグを参照して、色信号間予測処理の実施の有無を選択しているが、図1の画像符号化装置が、符号化ブロック単位あるいは最大サイズの符号化ブロック単位でフラグを符号化している場合、対応する画像復号装置では、図1の画像符号化装置と同じ単位でフラグを復号することで、図1の画像符号化装置と同じ単位に、色信号間予測処理の実施の有無を識別する。このようにすることで、正しく符号化パラメータを復号することができる。
あるいは、図1の画像符号化装置が、変換ブロック単位に色信号間予測フラグを符号化するように構成している場合、対応する画像復号装置も変換ブロック単位の色信号間予測フラグを復号するように構成する。このとき、予測ブロックの中に複数の変換ブロックが存在する場合は上記色信号間予測フラグがONの変換ブロックのみ色信号間予測を実施し、上記色信号間予測フラグがOFFの変換ブロックでは色差信号に対するイントラ予測、イントラブロックコピー予測あるいは動き補償予測を行う。
また、色信号間予測フラグは、図1の画像符号化装置が2つの色差信号(U、V信号)で共通とするように構成する場合、画像復号装置では、可変長復号部31により2つの色差信号(U、V信号)で共通のフラグを復号する。
一方、図1の画像符号化装置がU信号とV信号で独立に色信号間予測フラグを持つように構成する場合、画像復号装置では、可変長復号部31によりU信号のフラグとV信号のフラグを別々に復号する。このようにすることで正しく符号化パラメータを復号することができる。
加算部37は逆量子化・逆変換部32により算出された復号予測差分信号と、イントラ予測部34により生成されたイントラ予測画像、イントラブロックコピー予測部35により生成されたイントラブロックコピー予測画像、又は、動き補償予測部36により生成されたインター予測画像とを加算して、図1の加算部11から出力された局所復号画像と同一の復号画像を算出する処理を実施する。
イントラ用メモリ38は加算部37により算出された復号画像をイントラ予測処理及びイントラブロックコピー予測処理で用いる参照画像として格納する記録媒体である。
ループフィルタ部39は加算部37により算出された復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の復号画像を出力する処理を実施する。
具体的には、変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
ただし、ループフィルタ部39は、上記のデブロッキングフィルタ処理、画素適応オフセット処理、適応フィルタ処理のそれぞれについて、可変長復号部31により可変長復号された各ヘッダ情報を参照して、当該スライスで行うか否かを特定する。
このとき、2つ以上のフィルタ処理を行う場合において、例えば、画像符号化装置のループフィルタ部13が図11のように構成されていれば、図12に示すようにループフィルタ部39が構成される。当然、画像符号化装置のループフィルタ部13がデブロッキングフィルタ処理と画素適応オフセット処理から構成されていれば、ループフィルタ部39もデブロッキングフィルタ処理と画素適応オフセット処理で構成される。
ループフィルタ部39は加算部37により算出された復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の復号画像を出力する処理を実施する。
具体的には、変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
ただし、ループフィルタ部39は、上記のデブロッキングフィルタ処理、画素適応オフセット処理、適応フィルタ処理のそれぞれについて、可変長復号部31により可変長復号された各ヘッダ情報を参照して、当該スライスで行うか否かを特定する。
このとき、2つ以上のフィルタ処理を行う場合において、例えば、画像符号化装置のループフィルタ部13が図11のように構成されていれば、図12に示すようにループフィルタ部39が構成される。当然、画像符号化装置のループフィルタ部13がデブロッキングフィルタ処理と画素適応オフセット処理から構成されていれば、ループフィルタ部39もデブロッキングフィルタ処理と画素適応オフセット処理で構成される。
ここで、デブロッキングフィルタ処理では、可変長復号部31により可変長復号されたヘッダ情報を参照し、ブロック境界にかけるフィルタ強度の選択に用いる各種パラメータを初期値から変更する情報が存在する場合、その変更情報に基づいて、デブロッキングフィルタ処理を実施する。変更情報がない場合は、予め定められた手法に従って行う。
画素適応オフセット処理では、可変長復号部31により可変長復号された画素適応オフセット処理のブロック分割情報に基づいて復号画像を分割し、そのブロック単位に、可変長復号部31により可変長復号されたブロック単位のクラス分類手法を示すインデックスを参照して、そのインデックスが“オフセット処理を行わない”ことを示すインデックスでない場合、ブロック単位にブロック内の各画素を上記インデックスが示すクラス分類手法に従ってクラス分類する。
なお、クラス分類手法の候補として、ループフィルタ部13の画素適応オフセット処理のクラス分類手法の候補と同一のものが予め用意されている。
そして、ブロック単位の各クラスのオフセット値を特定するオフセット情報を参照して、復号画像の画素値にオフセットを加算する処理を行う。
なお、クラス分類手法の候補として、ループフィルタ部13の画素適応オフセット処理のクラス分類手法の候補と同一のものが予め用意されている。
そして、ブロック単位の各クラスのオフセット値を特定するオフセット情報を参照して、復号画像の画素値にオフセットを加算する処理を行う。
ただし、画像符号化装置のループフィルタ部13の画素適応オフセット処理において、ブロック分割情報は符号化せずに、常に画像を固定サイズのブロック単位(例えば、最大符号化ブロック単位)に分割し、そのブロック毎にクラス分類手法を選択して、クラス毎の適応オフセット処理を行うように構成されている場合、ループフィルタ部39においても、ループフィルタ部13と同一の固定サイズのブロック単位に画素適応オフセット処理を実施する。
適応フィルタ処理では、可変長復号部31により可変長復号されたクラス毎のフィルタを用いて、図1の画像符号化装置と同一の手法でクラス分類した後に、そのクラス分類情報に基づいてフィルタ処理を行う。
動き補償予測フレームメモリ40はループフィルタ部39のフィルタ処理後の復号画像をインター予測処理(動き補償予測処理)で用いる参照画像として格納する記録媒体である。
動き補償予測フレームメモリ40はループフィルタ部39のフィルタ処理後の復号画像をインター予測処理(動き補償予測処理)で用いる参照画像として格納する記録媒体である。
図3の例では、画像復号装置の構成要素である可変長復号部31、逆量子化・逆変換部32、切換スイッチ33、イントラ予測部34、イントラブロックコピー予測部35、動き補償予測部36、加算部37、イントラ用メモリ38、ループフィルタ部39及び動き補償予測フレームメモリ40のそれぞれが専用のハードウェアで構成(イントラ用メモリ38及び動き補償予測フレームメモリ40以外の構成要素は、例えば、CPUを実装している半導体集積回路や、ワンチップマイコンなどで構成)されているものを想定しているが、画像復号装置がコンピュータで構成されていてもよい。
画像復号装置をコンピュータで構成する場合、イントラ用メモリ38及び動き補償予測フレームメモリ40をコンピュータのメモリ上に構成するとともに、可変長復号部31、逆量子化・逆変換部32、切換スイッチ33、イントラ予測部34、イントラブロックコピー予測部35、動き補償予測部36、加算部37及びループフィルタ部39の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにすればよい。
図4はこの発明の実施の形態1による画像復号装置の処理内容(画像復号方法)を示すフローチャートである。
画像復号装置をコンピュータで構成する場合、イントラ用メモリ38及び動き補償予測フレームメモリ40をコンピュータのメモリ上に構成するとともに、可変長復号部31、逆量子化・逆変換部32、切換スイッチ33、イントラ予測部34、イントラブロックコピー予測部35、動き補償予測部36、加算部37及びループフィルタ部39の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにすればよい。
図4はこの発明の実施の形態1による画像復号装置の処理内容(画像復号方法)を示すフローチャートである。
次に動作について説明する。
この実施の形態1では、映像の各フレーム画像を入力画像として、符号化済みの近傍画素からのイントラ予測又は近接フレーム間での動き補償予測を実施して、得られた予測差分信号に対して直交変換・量子化による圧縮処理を施し、その後、可変長符号化を行って符号化ビットストリームを生成する画像符号化装置と、その画像符号化装置から出力される符号化ビットストリームを復号する画像復号装置について説明する。
この実施の形態1では、映像の各フレーム画像を入力画像として、符号化済みの近傍画素からのイントラ予測又は近接フレーム間での動き補償予測を実施して、得られた予測差分信号に対して直交変換・量子化による圧縮処理を施し、その後、可変長符号化を行って符号化ビットストリームを生成する画像符号化装置と、その画像符号化装置から出力される符号化ビットストリームを復号する画像復号装置について説明する。
図1の画像符号化装置は、映像信号の空間・時間方向の局所的な変化に適応して、映像信号を多様なサイズのブロックに分割して、フレーム内・フレーム間適応符号化を行うことを特徴としている。
一般的に、映像信号は、空間・時間的に信号の複雑さが局所的に変化する特性を有している。空間的に見ると、ある映像フレーム上では、例えば、空や壁などのような比較的広い画像領域中で均一な信号特性を有する絵柄もあれば、人物や細かいテクスチャを含む絵画など、小さい画像領域内で複雑なテクスチャパターンを有する絵柄も混在することがある。
時間的に見ても、空や壁は局所的に時間方向の絵柄の変化は小さいが、動く人物や物体は、その輪郭が時間的に剛体・非剛体の運動をするため、時間的な変化が大きい。
一般的に、映像信号は、空間・時間的に信号の複雑さが局所的に変化する特性を有している。空間的に見ると、ある映像フレーム上では、例えば、空や壁などのような比較的広い画像領域中で均一な信号特性を有する絵柄もあれば、人物や細かいテクスチャを含む絵画など、小さい画像領域内で複雑なテクスチャパターンを有する絵柄も混在することがある。
時間的に見ても、空や壁は局所的に時間方向の絵柄の変化は小さいが、動く人物や物体は、その輪郭が時間的に剛体・非剛体の運動をするため、時間的な変化が大きい。
符号化処理は、時間・空間的な予測によって、信号電力やエントロピーの小さい予測差分信号を生成して、全体の符号量を削減する処理を行うが、予測に用いるパラメータをできるだけ大きな画像信号領域に均一に適用できれば、当該パラメータの符号量を小さくすることができる。
一方、時間的・空間的に変化の大きい画像信号パターンに対して、同一の予測パラメータを大きな画像領域に適用すると、予測の誤りが増えてしまうため、予測差分信号の符号量が増加してしまう。
したがって、時間的・空間的に変化が大きい領域では、同一の予測パラメータを適用して予測処理を行うブロックサイズを小さくして、予測に用いるパラメータのデータ量を増やし、予測差分信号の電力・エントロピーを低減する方が望ましい。
一方、時間的・空間的に変化の大きい画像信号パターンに対して、同一の予測パラメータを大きな画像領域に適用すると、予測の誤りが増えてしまうため、予測差分信号の符号量が増加してしまう。
したがって、時間的・空間的に変化が大きい領域では、同一の予測パラメータを適用して予測処理を行うブロックサイズを小さくして、予測に用いるパラメータのデータ量を増やし、予測差分信号の電力・エントロピーを低減する方が望ましい。
この実施の形態1では、このような映像信号の一般的な性質に適応した符号化を行うため、最初に所定の最大ブロックサイズから予測処理等を開始し、階層的に映像信号の領域を分割し、分割した領域毎に予測処理や、その予測差分の符号化処理を適応化させる構成をとるようにしている。
最初に、図1の画像符号化装置の処理内容を説明する。
まず、符号化制御部1は、符号化対象となるピクチャ(カレントピクチャ)のスライス分割状態を決めると共に、ピクチャの符号化に用いる最大符号化ブロックのサイズと、最大符号化ブロックを階層分割する階層数の上限を決定する(図2のステップST1)。
最大符号化ブロックのサイズの決め方としては、例えば、入力画像の映像信号の解像度に応じて、全てのピクチャに対して同一のサイズを定めてもよいし、入力画像の映像信号の局所的な動きの複雑さの違いをパラメータとして定量化して、動きの激しいピクチャには、小さいサイズを定める一方、動きが少ないピクチャには、大きいサイズを定めるようにしてもよい。
まず、符号化制御部1は、符号化対象となるピクチャ(カレントピクチャ)のスライス分割状態を決めると共に、ピクチャの符号化に用いる最大符号化ブロックのサイズと、最大符号化ブロックを階層分割する階層数の上限を決定する(図2のステップST1)。
最大符号化ブロックのサイズの決め方としては、例えば、入力画像の映像信号の解像度に応じて、全てのピクチャに対して同一のサイズを定めてもよいし、入力画像の映像信号の局所的な動きの複雑さの違いをパラメータとして定量化して、動きの激しいピクチャには、小さいサイズを定める一方、動きが少ないピクチャには、大きいサイズを定めるようにしてもよい。
分割階層数の上限の決め方としては、例えば、入力画像の映像信号の解像度に応じて、全てのピクチャに対して同一の階層数を定める方法や、入力画像の映像信号の動きが激しい場合には、階層数を深くして、より細かい動きが検出できるように設定し、動きが少ない場合には、階層数を抑えるように設定する方法などがある。
なお、上記最大符号化ブロックのサイズと、最大符号化ブロックを階層分割する階層数の上限は、シーケンスレベルヘッダなどで符号化する。その場合、分割階層数の上限の代わりに、符号化ブロックの最小ブロックサイズを符号化するようにしてもよい。即ち、最大符号化ブロックを分割階層数の上限まで分割したときのブロックのサイズが、符号化ブロックの最小ブロックサイズであるため、画像復号装置側において、最大符号化ブロックのサイズと符号化ブロックの最小ブロックサイズから分割階層数の上限を特定することができる。
なお、上記最大符号化ブロックのサイズと、最大符号化ブロックを階層分割する階層数の上限は、シーケンスレベルヘッダなどで符号化する。その場合、分割階層数の上限の代わりに、符号化ブロックの最小ブロックサイズを符号化するようにしてもよい。即ち、最大符号化ブロックを分割階層数の上限まで分割したときのブロックのサイズが、符号化ブロックの最小ブロックサイズであるため、画像復号装置側において、最大符号化ブロックのサイズと符号化ブロックの最小ブロックサイズから分割階層数の上限を特定することができる。
また、符号化制御部1は、利用可能な1以上の符号化モードの中から、階層的に分割される各々の符号化ブロックに対応する符号化モードを選択する(ステップST2)。
即ち、符号化制御部1は、最大符号化ブロックサイズの画像領域毎に、先に定めた分割階層数の上限に至るまで、階層的に符号化ブロックサイズを有する符号化ブロックに分割して、各々の符号化ブロックに対する符号化モードを決定する。
符号化モードには、1つないし複数のイントラ符号化モード(総称して「INTRA」と称する)と、1つないし複数のイントラブロックコピー符号化モード(総称して「ICOPY」と称する)と、1つないし複数のインター符号化モード(総称して、「INTER」と称する)とがあり、符号化制御部1は、当該ピクチャで利用可能な全ての符号化モード、又は、そのサブセットの中から、各々の符号化ブロックに対応する符号化モードを選択する。
即ち、符号化制御部1は、最大符号化ブロックサイズの画像領域毎に、先に定めた分割階層数の上限に至るまで、階層的に符号化ブロックサイズを有する符号化ブロックに分割して、各々の符号化ブロックに対する符号化モードを決定する。
符号化モードには、1つないし複数のイントラ符号化モード(総称して「INTRA」と称する)と、1つないし複数のイントラブロックコピー符号化モード(総称して「ICOPY」と称する)と、1つないし複数のインター符号化モード(総称して、「INTER」と称する)とがあり、符号化制御部1は、当該ピクチャで利用可能な全ての符号化モード、又は、そのサブセットの中から、各々の符号化ブロックに対応する符号化モードを選択する。
ただし、後述するブロック分割部3により階層的に分割される各々の符号化ブロックは、さらに予測処理を行う単位である1つないし複数の予測ブロックに分割され、予測ブロックの分割状態も符号化モードの中に情報として含まれる。即ち、符号化モードは、どのような予測ブロック分割を持つイントラ符号化モード、イントラブロックコピー符号化モード又はインター符号化モードかを識別するインデックスである。
符号化制御部1による符号化モードの選択方法は、公知の技術であるため詳細な説明を省略するが、例えば、利用可能な任意の符号化モードを用いて、符号化ブロックに対する符号化処理を実施して符号化効率を検証し、利用可能な複数の符号化モードの中で、最も符号化効率がよい符号化モードを選択する方法などがある。
符号化制御部1による符号化モードの選択方法は、公知の技術であるため詳細な説明を省略するが、例えば、利用可能な任意の符号化モードを用いて、符号化ブロックに対する符号化処理を実施して符号化効率を検証し、利用可能な複数の符号化モードの中で、最も符号化効率がよい符号化モードを選択する方法などがある。
また、符号化制御部1は、各々の符号化ブロック毎に、差分画像が圧縮される際に用いられる量子化パラメータ及び変換ブロック分割状態を決定するとともに、予測処理が実施される際に用いられる予測パラメータ(イントラ予測パラメータ、イントラブロックコピー予測パラメータ、インター予測パラメータ又は色信号間予測パラメータ)を決定する。
ただし、符号化ブロックがさらに予測処理を行う予測ブロック単位に分割される場合は、予測ブロック毎に予測パラメータ(イントラ予測パラメータ、イントラブロックコピー予測パラメータ、インター予測パラメータ又は色信号間予測パラメータ)を選択する。
ただし、符号化ブロックがさらに予測処理を行う予測ブロック単位に分割される場合は、予測ブロック毎に予測パラメータ(イントラ予測パラメータ、イントラブロックコピー予測パラメータ、インター予測パラメータ又は色信号間予測パラメータ)を選択する。
ここで、図20は4:2:0フォーマットの信号における輝度信号及び色差信号の圧縮処理(変換処理、量子化処理)を実施する際の変換ブロックサイズを示す説明図である。
変換ブロックサイズは、図20に示すように、符号化ブロックを四分木状に階層分割することによって決定される。
例えば、変換ブロックを分割する場合と変換ブロックを分割しない場合での符号量や、符号化誤差を加味した評価尺度などに基づいて、評価値が最小になるように変換ブロックを分割するか否かを決定することで、符号量と符号化誤差のトレードオフの観点から最適な変換ブロックの分割形状を決定することができる。
変換ブロックサイズは、図20に示すように、符号化ブロックを四分木状に階層分割することによって決定される。
例えば、変換ブロックを分割する場合と変換ブロックを分割しない場合での符号量や、符号化誤差を加味した評価尺度などに基づいて、評価値が最小になるように変換ブロックを分割するか否かを決定することで、符号量と符号化誤差のトレードオフの観点から最適な変換ブロックの分割形状を決定することができる。
輝度信号については、例えば、図20に示すように、符号化ブロックが1つ又は複数の正方形の変換ブロックに階層的に分割されるように構成する。
色差信号については、図20に示すように、入力信号フォーマットがYUV4:2:0信号である場合、輝度信号と同様に、符号化ブロックが1つ又は複数の正方形の変換ブロックに階層的に分割されるように構成する。この場合、色差信号の変換ブロックサイズは、対応する輝度信号の変換ブロックの縦横ともに半分のサイズとなる。
色差信号については、図20に示すように、入力信号フォーマットがYUV4:2:0信号である場合、輝度信号と同様に、符号化ブロックが1つ又は複数の正方形の変換ブロックに階層的に分割されるように構成する。この場合、色差信号の変換ブロックサイズは、対応する輝度信号の変換ブロックの縦横ともに半分のサイズとなる。
入力信号フォーマットがYUV4:2:2信号である場合、図21に示すように、輝度信号と同様の四分木状の階層分割を行う。また、分割したブロックの形状が、垂直方向の画素数が水平方向の画素数の2倍になる長方形となるため、さらに、分割したブロックを上下に二分することで、YUV4:2:0信号での色差信号と同じブロックサイズ(輝度信号の変換ブロックの縦横ともに半分のサイズ)の変換ブロック2つで構成するようにする。
また、入力信号フォーマットがYUV4:4:4信号である場合、図22に示すように、色差信号の変換ブロックは、常に輝度信号の変換ブロックと同様の分割を行い、同じサイズの変換ブロックとなるように構成する。
また、入力信号フォーマットがYUV4:4:4信号である場合、図22に示すように、色差信号の変換ブロックは、常に輝度信号の変換ブロックと同様の分割を行い、同じサイズの変換ブロックとなるように構成する。
符号化制御部1は、符号化ブロックにおける変換ブロックの分割情報を示す変換ブロック分割情報や、変換係数の量子化を行う際の量子化ステップサイズを規定する量子化パラメータなどを含む予測差分符号化パラメータを変換・量子化部9、逆量子化・逆変換部10及び可変長符号化部15に出力する。
また、符号化制御部1は、符号化モードとして、イントラ予測モードを選択している場合、輝度信号については輝度信号のイントラ予測パラメータをイントラ予測部5に出力し、色差信号については、色信号間予測処理を実施するか否かの色信号間予測フラグを含む色信号間予測パラメータをイントラ予測部5に出力する。さらに、上記色信号間予測フラグがOFFである場合、色差信号のイントラ予測パラメータをイントラ予測部5に出力する。
ただし、常に輝度信号と色差信号で共通のイントラ予測パラメータを用いるように画像符号化装置を構成する場合、色差信号のイントラ予測パラメータはイントラ予測部5に出力する必要はない。
また、符号化制御部1は、符号化モードとして、イントラ予測モードを選択している場合、輝度信号については輝度信号のイントラ予測パラメータをイントラ予測部5に出力し、色差信号については、色信号間予測処理を実施するか否かの色信号間予測フラグを含む色信号間予測パラメータをイントラ予測部5に出力する。さらに、上記色信号間予測フラグがOFFである場合、色差信号のイントラ予測パラメータをイントラ予測部5に出力する。
ただし、常に輝度信号と色差信号で共通のイントラ予測パラメータを用いるように画像符号化装置を構成する場合、色差信号のイントラ予測パラメータはイントラ予測部5に出力する必要はない。
また、符号化制御部1は、符号化モードとして、イントラブロックコピー予測モードを選択している場合、輝度信号については輝度信号のイントラブロックコピー予測パラメータをイントラブロックコピー予測部6に出力し、色差信号については、色信号間予測を実施するか否かの色信号間予測フラグを含む色信号間予測パラメータをイントラブロックコピー予測部6に出力する。さらに、上記色信号間予測フラグがOFFである場合、色差信号のイントラブロックコピー予測パラメータをイントラブロックコピー予測部6に出力する。
ただし、常に輝度信号と色差信号で共通のイントラブロックコピー予測パラメータを用いるように画像符号化装置を構成する場合、色差信号のイントラブロックコピー予測パラメータはイントラブロックコピー予測部6に出力する必要はない。
ただし、常に輝度信号と色差信号で共通のイントラブロックコピー予測パラメータを用いるように画像符号化装置を構成する場合、色差信号のイントラブロックコピー予測パラメータはイントラブロックコピー予測部6に出力する必要はない。
また、符号化制御部1は、符号化モードとして、インター予測モードを選択している場合、輝度信号については輝度信号のインター予測パラメータを動き補償予測部7に出力し、色差信号については、色信号間予測を実施するか否かの色信号間予測フラグを含む色信号間予測パラメータを動き補償予測部7に出力する。さらに、上記色信号間予測フラグがOFFである場合、色差信号のインター予測パラメータを動き補償予測部7に出力する。
ただし、常に輝度信号と色差信号で共通のインター予測パラメータを用いるように画像符号化装置を構成する場合、色差信号のインター予測パラメータは動き補償部7に出力する必要はない。
ただし、常に輝度信号と色差信号で共通のインター予測パラメータを用いるように画像符号化装置を構成する場合、色差信号のインター予測パラメータは動き補償部7に出力する必要はない。
スライス分割部2は、入力画像として映像信号を入力すると、その入力画像を符号化制御部1により決定されたスライス分割情報にしたがって1以上の部分画像であるスライスに分割する。
ブロック分割部3は、スライス分割部2から各スライスを入力する毎に、そのスライスを符号化制御部1により決定された最大符号化ブロックサイズに分割し、さらに、分割した最大符号化ブロックを符号化制御部1により決定された符号化ブロックへ階層的に分割して、その符号化ブロックを出力する。
ブロック分割部3は、スライス分割部2から各スライスを入力する毎に、そのスライスを符号化制御部1により決定された最大符号化ブロックサイズに分割し、さらに、分割した最大符号化ブロックを符号化制御部1により決定された符号化ブロックへ階層的に分割して、その符号化ブロックを出力する。
ここで、図5は最大符号化ブロックが階層的に複数の符号化ブロックに分割される例を示す説明図である。
図5において、最大符号化ブロックは、「第0階層」と記されている輝度成分が(L0,M0)のサイズを有する符号化ブロックである。
最大符号化ブロックを出発点として、4分木構造で別途定める所定の深さまで、階層的に分割を行うことによって符号化ブロックを得るようにしている。
深さnにおいては、符号化ブロックはサイズ(Ln,Mn)の画像領域である。
ただし、LnとMnは、同じであってもよいし、異なっていてもよいが、図5では、Ln=Mnのケースを示している。
図5において、最大符号化ブロックは、「第0階層」と記されている輝度成分が(L0,M0)のサイズを有する符号化ブロックである。
最大符号化ブロックを出発点として、4分木構造で別途定める所定の深さまで、階層的に分割を行うことによって符号化ブロックを得るようにしている。
深さnにおいては、符号化ブロックはサイズ(Ln,Mn)の画像領域である。
ただし、LnとMnは、同じであってもよいし、異なっていてもよいが、図5では、Ln=Mnのケースを示している。
以降、符号化制御部1により決定される符号化ブロックサイズは、符号化ブロックの輝度成分におけるサイズ(Ln,Mn)と定義する。
4分木分割を行うため、常に、(Ln+1,Mn+1)=(Ln/2,Mn/2)が成立する。
なお、RGB信号など、全ての色成分が同一サンプル数を有するカラー映像信号(4:4:4フォーマット)では、全ての色成分のサイズが(Ln,Mn)になるが、4:2:0フォーマットを扱う場合、対応する色差成分の符号化ブロックサイズは(Ln/2,Mn/2)になる。
4分木分割を行うため、常に、(Ln+1,Mn+1)=(Ln/2,Mn/2)が成立する。
なお、RGB信号など、全ての色成分が同一サンプル数を有するカラー映像信号(4:4:4フォーマット)では、全ての色成分のサイズが(Ln,Mn)になるが、4:2:0フォーマットを扱う場合、対応する色差成分の符号化ブロックサイズは(Ln/2,Mn/2)になる。
以降、第n階層の符号化ブロックをBnで表し、符号化ブロックBnで選択可能な符号化モードをm(Bn)で表すものとする。
複数の色成分からなるカラー映像信号の場合、符号化モードm(Bn)は、色成分毎に、それぞれ個別のモードを用いるように構成されてもよいし、全ての色成分に対し共通のモードを用いるように構成されてもよい。以降、特に断らない限り、YUV信号、4:2:0フォーマットの符号化ブロックの輝度成分に対する符号化モードを指すものとして説明を行う。
複数の色成分からなるカラー映像信号の場合、符号化モードm(Bn)は、色成分毎に、それぞれ個別のモードを用いるように構成されてもよいし、全ての色成分に対し共通のモードを用いるように構成されてもよい。以降、特に断らない限り、YUV信号、4:2:0フォーマットの符号化ブロックの輝度成分に対する符号化モードを指すものとして説明を行う。
符号化ブロックBnは、図5に示すように、ブロック分割部3によって、予測処理単位を表す1つないし複数の予測ブロックに分割される。
以降、符号化ブロックBnに属する予測ブロックをPi n(iは、第n階層における予測ブロック番号)と表記する。図5にはP0 0とP1 0の例を示している。
符号化ブロックBn内の予測ブロックの分割が、どのようになされているかは、符号化モードm(Bn)の中に情報として含まれる。
予測ブロックPi nは、全て符号化モードm(Bn)に従って予測処理が行われるが、予測ブロックPi n毎に、個別の予測パラメータ(イントラ予測パラメータ、イントラブロックコピー予測パラメータ又はインター予測パラメータ)を選択することができる。
以降、符号化ブロックBnに属する予測ブロックをPi n(iは、第n階層における予測ブロック番号)と表記する。図5にはP0 0とP1 0の例を示している。
符号化ブロックBn内の予測ブロックの分割が、どのようになされているかは、符号化モードm(Bn)の中に情報として含まれる。
予測ブロックPi nは、全て符号化モードm(Bn)に従って予測処理が行われるが、予測ブロックPi n毎に、個別の予測パラメータ(イントラ予測パラメータ、イントラブロックコピー予測パラメータ又はインター予測パラメータ)を選択することができる。
符号化制御部1は、最大符号化ブロックに対して、例えば、図6に示すようなブロック分割状態を生成して、符号化ブロックを特定する。
図6(a)の点線で囲まれた矩形が各符号化ブロックを表し、各符号化ブロック内にある斜線で塗られたブロックが各予測ブロックの分割状態を表している。
図6(b)は、図6(a)の例について、階層分割によって符号化モードm(Bn)が割り当てられる状況を4分木グラフで示したものである。図6(b)の□で囲まれているノードは、符号化モードm(Bn)が割り当てられたノード(符号化ブロック)である。
この4分木グラフの情報は符号化モードm(Bn)と共に符号化制御部1から可変長符号化部15に出力されて、ビットストリームに多重化される。
図6(a)の点線で囲まれた矩形が各符号化ブロックを表し、各符号化ブロック内にある斜線で塗られたブロックが各予測ブロックの分割状態を表している。
図6(b)は、図6(a)の例について、階層分割によって符号化モードm(Bn)が割り当てられる状況を4分木グラフで示したものである。図6(b)の□で囲まれているノードは、符号化モードm(Bn)が割り当てられたノード(符号化ブロック)である。
この4分木グラフの情報は符号化モードm(Bn)と共に符号化制御部1から可変長符号化部15に出力されて、ビットストリームに多重化される。
切換スイッチ4は、符号化制御部1により決定された符号化モードm(Bn)がイントラ符号化モードである場合(m(Bn)∈INTRAの場合)、ブロック分割部3から出力された符号化ブロックBnをイントラ予測部5に出力し、符号化制御部1により決定された符号化モードm(Bn)がイントラブロックコピー符号化モードである場合(m(Bn)∈ICOPYの場合)、ブロック分割部3から出力された符号化ブロックBnをイントラブロックコピー予測部6に出力し、符号化制御部1により決定された符号化モードm(Bn)がインター符号化モードである場合(m(Bn)∈INTERの場合)、ブロック分割部3から出力された符号化ブロックBnを動き補償予測部7に出力する。
イントラ予測部5は、符号化制御部1により決定された符号化モードm(Bn)がイントラ符号化モードであり(m(Bn)∈INTRAの場合)、切換スイッチ4から符号化ブロックBnを受けると(ステップST3)、イントラ用メモリ12に格納されている局所復号画像を参照しながら、符号化制御部1により決定されたイントラ予測パラメータを用いて、その符号化ブロックBn内の各予測ブロックPi nに対するイントラ予測処理を実施して、イントラ予測画像PINTRAi nを生成する(ステップST4)。
ただし、詳細は後述するが、イントラ予測画像を生成する処理を行う際に、予測ブロックに隣接する符号化済みの画素を用いることから、イントラ予測画像を生成する処理は、予測処理に用いる予測ブロックに隣接する画素が既に符号化済みとなるように常に変換ブロック単位に行われなくてはならない。
したがって、符号化モードがイントラ符号化モードである符号化ブロックでは、選択可能な変換ブロックのブロックサイズは、予測ブロックのサイズ以下に制限され、さらに、変換ブロックが予測ブロックより小さい場合(予測ブロック内に複数の変換ブロックが存在する場合)には、変換ブロック単位に、当該予測ブロックで定められたイントラ予測パラメータを用いたイントラ予測処理を実施してイントラ予測画像を生成する処理を実施する。
なお、画像復号装置がイントラ予測画像PINTRAi nと全く同じイントラ予測画像を生成する必要があるため、イントラ予測画像PINTRAi nの生成に用いられたイントラ予測パラメータは、符号化制御部1から可変長符号化部15に出力されて、ビットストリームに多重化される。
イントラ予測部5におけるイントラ予測処理の詳細は後述する。
したがって、符号化モードがイントラ符号化モードである符号化ブロックでは、選択可能な変換ブロックのブロックサイズは、予測ブロックのサイズ以下に制限され、さらに、変換ブロックが予測ブロックより小さい場合(予測ブロック内に複数の変換ブロックが存在する場合)には、変換ブロック単位に、当該予測ブロックで定められたイントラ予測パラメータを用いたイントラ予測処理を実施してイントラ予測画像を生成する処理を実施する。
なお、画像復号装置がイントラ予測画像PINTRAi nと全く同じイントラ予測画像を生成する必要があるため、イントラ予測画像PINTRAi nの生成に用いられたイントラ予測パラメータは、符号化制御部1から可変長符号化部15に出力されて、ビットストリームに多重化される。
イントラ予測部5におけるイントラ予測処理の詳細は後述する。
イントラ予測部5は、輝度信号の予測画像の生成については常にイントラ予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、符号化制御部1により当該予測ブロックの色信号間予測フラグがONに設定されている場合、イントラ予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。一方、符号化制御部1により当該予測ブロックの色信号間予測フラグがOFFに設定されている場合は、色差信号もイントラ予測処理を実施する。
イントラブロックコピー予測部6は、符号化制御部1により決定された符号化モードm(Bn)がイントラブロックコピー符号化モードであり(m(Bn)∈ICOPYの場合)、切換スイッチ4から符号化ブロックBnを受けると(ステップST3)、その符号化ブロックBn内の各予測ブロックPi nとイントラ用メモリ12に格納されている局所復号画像を比較してブロックシフトベクトルを探索する。
即ち、イントラブロックコピー予測部6は、イントラ用メモリ12に格納されている局所復号画像の中で、予測ブロックPi nと最も近似している領域のブロック(参照ブロック)を特定して、その参照ブロックを指し示すブロックシフトベクトルを探索する。
イントラブロックコピー予測部6は、参照ブロックを指し示すブロックシフトベクトルを探索すると、そのブロックシフトベクトルが指し示す参照ブロックを予測ブロックPi nの予測画像として、イントラブロックコピー予測画像PICOPYi nを生成する(ステップST5)。
即ち、イントラブロックコピー予測部6は、イントラ用メモリ12に格納されている局所復号画像の中で、予測ブロックPi nと最も近似している領域のブロック(参照ブロック)を特定して、その参照ブロックを指し示すブロックシフトベクトルを探索する。
イントラブロックコピー予測部6は、参照ブロックを指し示すブロックシフトベクトルを探索すると、そのブロックシフトベクトルが指し示す参照ブロックを予測ブロックPi nの予測画像として、イントラブロックコピー予測画像PICOPYi nを生成する(ステップST5)。
ただし、図32に示すように、予測ブロックPi nと最も近似している領域が未符号化領域(未だ符号化が行われておらず、局所復号が済んでいない領域であり、図32では斜線の領域及び予測ブロックPi nが該当する)を跨ぐ位置に存在しているような場合には、予測ブロックPi nと同じサイズの参照ブロックが、局所復号が済んでいない画素を含んでしまうため、通常のイントラブロックコピー予測処理では、当該参照ブロックを指し示すブロックシフトベクトルを選択することができない。
そこで、この実施の形態1では、予測ブロックPinと最も近似している参照ブロックが未符号化領域の一部を含んでしまう場合でも、その参照ブロックを指し示すブロックシフトベクトルを探索することができるようにするために、図33に示すように、事前に、予測ブロックが属している符号化対象の最大符号化ブロック(当該最大符号化ブロック)の中で、未符号化領域内の各画素の画素値を所定の方法で仮定する処理を実施する(所定の手法で定まる画素値で未符号化領域内の画素を埋める処理を実施する)。
そこで、この実施の形態1では、予測ブロックPinと最も近似している参照ブロックが未符号化領域の一部を含んでしまう場合でも、その参照ブロックを指し示すブロックシフトベクトルを探索することができるようにするために、図33に示すように、事前に、予測ブロックが属している符号化対象の最大符号化ブロック(当該最大符号化ブロック)の中で、未符号化領域内の各画素の画素値を所定の方法で仮定する処理を実施する(所定の手法で定まる画素値で未符号化領域内の画素を埋める処理を実施する)。
具体的には、以下の(1)から(3)のいずれかの手法によって、未符号化領域内の各画素の画素値を仮定する。なお、下記では画素値の取り得る範囲を8ビット精度である0〜255として説明するが、10ビットや12ビット等、8ビット精度でない場合も同様の手法で処理を行う。即ち、10ビット精度であれば、画素値の取り得る範囲を0〜1023、12ビット精度であれば、画素値の取り得る範囲を0〜4095として扱う。さらに、画素値の取り得る値が符号付きである場合も同様の処理を行う(例えば、8ビット精度で取り得る値が−123〜122である場合)。
また、以下の手法は、各色信号(輝度信号(Y)、色差信号(U、V)あるいはその他の色信号(赤色(R)、緑色(G)、青色(B)の信号等))それぞれで実施して未符号化領域内の各画素を埋める画素値を決定する。
また、以下の手法は、各色信号(輝度信号(Y)、色差信号(U、V)あるいはその他の色信号(赤色(R)、緑色(G)、青色(B)の信号等))それぞれで実施して未符号化領域内の各画素を埋める画素値を決定する。
(1)図34に示すように、予測ブロックが属している最大符号化ブロック(当該最大符号化ブロック)の左に隣接している複数の画素(図中、縦方向に並んでいる一列の画素)の画素値(画素値)の中で最も画素数の多い画素値を特定し、その画素値の画素を未符号化領域内に埋める。
図34の例では、“0”の画素値を有する画素と、“64”の画素値を有する画素とが、当該最大符号化ブロックの左に隣接しており、“64”の画素値を有する画素の数が、“0”の画素値を有する画素の数より多いので、“64”の画素値で未符号化領域内の画素を埋める。
一般的に、最も画素数の多い画素値は背景色となる可能性が高いため、画素埋めを行った未符号化領域と、符号化済み領域の背景との間に、不自然な輝度変化が発生せず、予測効率の低下を抑えることができる。
図34の例では、“0”の画素値を有する画素と、“64”の画素値を有する画素とが、当該最大符号化ブロックの左に隣接しており、“64”の画素値を有する画素の数が、“0”の画素値を有する画素の数より多いので、“64”の画素値で未符号化領域内の画素を埋める。
一般的に、最も画素数の多い画素値は背景色となる可能性が高いため、画素埋めを行った未符号化領域と、符号化済み領域の背景との間に、不自然な輝度変化が発生せず、予測効率の低下を抑えることができる。
上記例では、当該最大符号化ブロックの左に隣接している複数の画素の画素値の中で、画素数の最も多い画素値で未符号化領域を埋めるようにしているが、当該最大符号化ブロックの上に隣接している複数の画素の画素値の中で、画素数の最も多い画素値で未符号化領域を埋めるようにしてもよい。この場合、垂直方向に相関の高い画像において未符号化領域を埋める画素値を高精度に算出することができる。さらに、当該最大符号化ブロックの左及び上に隣接している複数の画素の画素値の中で、画素数の最も多い画素値で未符号化領域を埋めるようにしてもよい。このようにすることで、演算量は増加するものの参照する画素数の増加により、予測精度の改善を期待することができる。このとき、当該最大符号化ブロックの左上の画素も合わせて参照するようにしてもよい。
あるいは、図37に示すブロックシフトベクトルが指す参照ブロック内の未符号化領域の形状によって、当該最大符号化ブロックの左に隣接している複数の画素を用いるか、上に隣接している複数の画素を用いるかを適応的に切り替えてもよい。
あるいは、図37に示すブロックシフトベクトルが指す参照ブロック内の未符号化領域の形状によって、当該最大符号化ブロックの左に隣接している複数の画素を用いるか、上に隣接している複数の画素を用いるかを適応的に切り替えてもよい。
具体的には、垂直方向の未符号化部分が短くなるdh<dwのときは当該最大符号化ブロックの上に隣接している複数の画素から未符号化領域を埋める画素値を求め、その他(dh≧dw)のときは当該最大符号化ブロックの左に隣接している複数の画素から未符号化領域を埋める画素値を求めるようにする。このようにすることで、常に当該最大符号化ブロックに隣接する符号化済み画素と、当該最大符号化ブロックの右端又は下端の画素との距離(dh、dw)が短い方の符号化済み隣接画素を選択することができるため、画像の空間的相関を精度良く利用することができる。
また、参照する隣接画素の一部の画素が存在しない場合、予め定めた手法によって参照する画素を生成する。例えば、予め定めた固定値で代替する方法や、存在する別の位置の隣接画素の画素値で代替する方法等がある。さらに、参照する隣接画素が一つも存在しない場合については、予め定めた固定値で未符号化領域の画素を埋めるようにする。なお、予め定める固定値としては、取り得る画素値の中間値等が挙げられる。
また、参照する隣接画素の一部の画素が存在しない場合、予め定めた手法によって参照する画素を生成する。例えば、予め定めた固定値で代替する方法や、存在する別の位置の隣接画素の画素値で代替する方法等がある。さらに、参照する隣接画素が一つも存在しない場合については、予め定めた固定値で未符号化領域の画素を埋めるようにする。なお、予め定める固定値としては、取り得る画素値の中間値等が挙げられる。
(2)予め設定された画素値(固定値)で未符号化領域内の画素を埋める。
イントラブロックコピー予測処理は、一般的に、テキスト画像やCAD画像などのグラフィックス描画された文字や線分等に効果が高い予測処理であるが、例えば、テキスト画像は、一般的に白地の背景が多いため、例えば、白色の画素(画素値が0〜255を取り得る場合、“255”の画素値を有する画素)をテキスト画像の未符号化領域内に埋めると、イントラブロックコピー予測処理が効果的となり、多くの画像で性能改善効果を期待することができる。その他、取り得る画素値の中間値(画素値が0〜255を取り得る場合、“128”の画素値を有する画素)とする等、設定する画素値は上記以外でも良い。
予め設定された画素値(固定値)で未符号化領域内の画素を埋める手法は、コンテンツによっては予測精度が低下してしまう可能性があるが、処理負荷が非常に小さいメリットがある。
イントラブロックコピー予測処理は、一般的に、テキスト画像やCAD画像などのグラフィックス描画された文字や線分等に効果が高い予測処理であるが、例えば、テキスト画像は、一般的に白地の背景が多いため、例えば、白色の画素(画素値が0〜255を取り得る場合、“255”の画素値を有する画素)をテキスト画像の未符号化領域内に埋めると、イントラブロックコピー予測処理が効果的となり、多くの画像で性能改善効果を期待することができる。その他、取り得る画素値の中間値(画素値が0〜255を取り得る場合、“128”の画素値を有する画素)とする等、設定する画素値は上記以外でも良い。
予め設定された画素値(固定値)で未符号化領域内の画素を埋める手法は、コンテンツによっては予測精度が低下してしまう可能性があるが、処理負荷が非常に小さいメリットがある。
上記の手法を拡張する手法として、最大符号化ブロック単位に最適な画素値を選択し、その画素値を符号化する方法が考えられる。
このとき、選択可能な画素値の候補としては、存在している全ての画素値でもよいし、選択可能な画素値の代表値を決めて、その代表値だけを選択できるようにしてもよい。
代表値を定める場合には、可変長符号化部15が代表値自体を符号化するのではなく、その代表値を示すインデックスを符号化するようにすれば、符号化ビットストリームの符号量を抑制することができる。
具体的には、代表値が、例えば、0、64、128、192、256である場合、その順番にインデックスを0、1、2、3、4と定義し、選択した代表値を示すインデックスを可変長符号化する。
このような代表値を定める例として、白(最大値)、グレー(中間値)、黒(最小値)等の固定的な値を代表値として定めて、これらの代表値の中から任意の代表値を選択する方法や、図35に示すようなMove−To−Front法を用いて、適応的に代表値を変える方法がある。
このとき、選択可能な画素値の候補としては、存在している全ての画素値でもよいし、選択可能な画素値の代表値を決めて、その代表値だけを選択できるようにしてもよい。
代表値を定める場合には、可変長符号化部15が代表値自体を符号化するのではなく、その代表値を示すインデックスを符号化するようにすれば、符号化ビットストリームの符号量を抑制することができる。
具体的には、代表値が、例えば、0、64、128、192、256である場合、その順番にインデックスを0、1、2、3、4と定義し、選択した代表値を示すインデックスを可変長符号化する。
このような代表値を定める例として、白(最大値)、グレー(中間値)、黒(最小値)等の固定的な値を代表値として定めて、これらの代表値の中から任意の代表値を選択する方法や、図35に示すようなMove−To−Front法を用いて、適応的に代表値を変える方法がある。
Move−To−Front法は、インデックスを出現頻度に応じて並べ替える手法である。
本例の場合、初期テーブルとして、画素値を例えば白(最大値)から黒(最小値)の順番に並べたのち、図35のように、例えば、“255”の画素値が選択されれば、“255”の画素値を示す“6”のインデックスを符号化する一方、“255”の画素値がテーブルの一番上にくるように並び替える(“255”の画素値を示すインデックスが“1”になるようにテーブルを並び替える)ものである。
各最大符号化ブロックにおいて、テーブル上位の1つ以上の画素値(例えば、上位8つ)を代表値として、これらの代表値から任意の代表値を選択するようにする。
本例の場合、初期テーブルとして、画素値を例えば白(最大値)から黒(最小値)の順番に並べたのち、図35のように、例えば、“255”の画素値が選択されれば、“255”の画素値を示す“6”のインデックスを符号化する一方、“255”の画素値がテーブルの一番上にくるように並び替える(“255”の画素値を示すインデックスが“1”になるようにテーブルを並び替える)ものである。
各最大符号化ブロックにおいて、テーブル上位の1つ以上の画素値(例えば、上位8つ)を代表値として、これらの代表値から任意の代表値を選択するようにする。
(3)フィルタ処理によって未符号化領域内の画素を生成する。
具体的には、図36に示すような画素を参照するフィルタ処理を実施する(実線の円は参照画素を示し、点線の円はフィルタ処理対象画素を示している)。
S(x,y)を座標(x,y)における符号化済み画素の画素値(復号された画素値)又はフィルタ生成画素値(未符号化領域の場合)とすると、フィルタ処理対象画素の座標を(x,y)とした場合、下記の式でフィルタ処理が実行される。
水平方向フィルタ:
垂直方向フィルタ:
ここで、cn(n=0、1、・・・、2Nh+1),c’m(m=0、1、・・・、2Nv+1)はフィルタ係数、Nh,Nvはフィルタの参照画素数を決める定数である。
即ち、水平方向フィルタはフィルタ処理対象画素の左に位置する隣接画素群によるフィルタ処理を示し、垂直方向フィルタはフィルタ処理対象画素の上に位置する隣接画素群によるフィルタ処理を示している。
具体的には、図36に示すような画素を参照するフィルタ処理を実施する(実線の円は参照画素を示し、点線の円はフィルタ処理対象画素を示している)。
S(x,y)を座標(x,y)における符号化済み画素の画素値(復号された画素値)又はフィルタ生成画素値(未符号化領域の場合)とすると、フィルタ処理対象画素の座標を(x,y)とした場合、下記の式でフィルタ処理が実行される。
水平方向フィルタ:
垂直方向フィルタ:
ここで、cn(n=0、1、・・・、2Nh+1),c’m(m=0、1、・・・、2Nv+1)はフィルタ係数、Nh,Nvはフィルタの参照画素数を決める定数である。
即ち、水平方向フィルタはフィルタ処理対象画素の左に位置する隣接画素群によるフィルタ処理を示し、垂直方向フィルタはフィルタ処理対象画素の上に位置する隣接画素群によるフィルタ処理を示している。
このとき、c0+c1+・・・+c2Nh=1、c’0+c’1+・・・+c’2Nv=1となるとき、平滑化フィルタであることを示す。また、c2Nh+1、c’2Nv+1はオフセット値を表している。上記フィルタの例としては下記が挙げられる。
水平方向フィルタ:
Nh=1、c0=1/4、c1=1/2、c2=1/4、c3=0
(c3はオフセット値、本例ではオフセットなしとしている)
垂直方向フィルタ:
Nv=1、c’0=1/4、c’1=1/2、c’2=1/4、c’3=0
(c’3はオフセット値、本例ではオフセットなしとしている)
水平方向フィルタ:
Nh=1、c0=1/4、c1=1/2、c2=1/4、c3=0
(c3はオフセット値、本例ではオフセットなしとしている)
垂直方向フィルタ:
Nv=1、c’0=1/4、c’1=1/2、c’2=1/4、c’3=0
(c’3はオフセット値、本例ではオフセットなしとしている)
Nh,Nvやフィルタ係数は予め画像符号化装置及び画像復号装置の共通の値として定義する。本例ではフィルタ処理対象画素に近い画素のフィルタ係数ほど大きい値としている。これは、一般にフィルタ処理対象画素に近い画素程、フィルタ処理対象画素との相関が高いためである。このようにすることで、未符号化領域内の画素として精度の高い画素を生成することができる。
なお、フィルタ処理の手順としては、水平方向フィルタ処理の場合は未符号化領域の左端の列から右端の列に向かって一列ずつフィルタ処理を行い、垂直方向フィルタ処理の場合は未符号化領域の上端の行から下端の行に向かって一行ずつフィルタ処理を行う。その際、参照不可能な画素がフィルタの参照画素として含まれる場合、参照可能な画素のうち、最も近い画素のフィルタ係数に参照不可能な画素のフィルタ係数を加算する(ただし、最も近い画素が複数ある場合は、フィルタ処理対象画素の座標(x,y)に最も近い画素を対象とする)。例えば、水平方向フィルタ処理において、座標(x−1,y+1)以下の画素が参照できない場合、下記の式となる。
したがって、上記の例(Nh=1、c0=1/4、c1=1/2、c2=1/4、c3=0の例)の場合、
c0=1/4、c1=3/4、c2=0、c3=0
となる。なお、このような参照不可能な画素が生じるフィルタ処理については、別途フィルタ係数やNh,Nvを定義するようにしてもよい。例えば、上記の水平方向フィルタの例では、Nh=1のままとして、
c0=1/2、c1=1/2、c2=0、c3=0
としてもよい。この場合、フィルタ演算が2画素の単純平均となり、処理が簡易になるメリットがある。
したがって、上記の例(Nh=1、c0=1/4、c1=1/2、c2=1/4、c3=0の例)の場合、
c0=1/4、c1=3/4、c2=0、c3=0
となる。なお、このような参照不可能な画素が生じるフィルタ処理については、別途フィルタ係数やNh,Nvを定義するようにしてもよい。例えば、上記の水平方向フィルタの例では、Nh=1のままとして、
c0=1/2、c1=1/2、c2=0、c3=0
としてもよい。この場合、フィルタ演算が2画素の単純平均となり、処理が簡易になるメリットがある。
上記で説明したフィルタ例以外のフィルタの例として、
水平方向フィルタ:
Nh=0、c0=1、c1=0
(c1はオフセット値、本例ではオフセットなしとしている)
垂直方向フィルタ:
Nv=0、c’0=1、c’1=0
(c’1はオフセット値、本例ではオフセットなしとしている)
も挙げられる。
この例の場合、水平方向フィルタは対象画素の左の画素の画素値、垂直方向フィルタは対象画素の上の画素の画素値をコピーすることとなる。即ち、水平方向フィルタは水平方向に、垂直方向フィルタは垂直方向に当該最大符号化ブロックに隣接する画素の画素値が一様にコピーされることと等価であり、フィルタ処理に要する演算量を削減できると共に、当該最大符号化ブロック内の画素全てを同時に生成することができる(当該最大符号化ブロック内の画素全てを並列に処理して生成することができる)。
水平方向フィルタ:
Nh=0、c0=1、c1=0
(c1はオフセット値、本例ではオフセットなしとしている)
垂直方向フィルタ:
Nv=0、c’0=1、c’1=0
(c’1はオフセット値、本例ではオフセットなしとしている)
も挙げられる。
この例の場合、水平方向フィルタは対象画素の左の画素の画素値、垂直方向フィルタは対象画素の上の画素の画素値をコピーすることとなる。即ち、水平方向フィルタは水平方向に、垂直方向フィルタは垂直方向に当該最大符号化ブロックに隣接する画素の画素値が一様にコピーされることと等価であり、フィルタ処理に要する演算量を削減できると共に、当該最大符号化ブロック内の画素全てを同時に生成することができる(当該最大符号化ブロック内の画素全てを並列に処理して生成することができる)。
水平方向フィルタと垂直方向フィルタのどちらを用いるのかについては、予め画像符号化装置と画像復号装置共通で決めておくようにする。例えば、テキスト画像では水平方向に文字が並ぶことが多いため、常に水平方向フィルタを用いるものとして画像符号化装置及び画像復号装置を構成する。
あるいは、図37に示すブロックシフトベクトルが指す参照ブロック内の未符号化領域の形状によって、水平方向フィルタと垂直方向フィルタのどちらを用いるかを適応的に切り替えてもよい。具体的には、垂直方向の未符号化部分が短くなるdh<dwのときは垂直方向フィルタを用い、その他(dh≧dw)のときは水平方向フィルタを用いるようにする。このようにすることで、常にフィルタ対象画素と符号化済み画素との距離(dh、dw)が短くなるフィルタを選択できるため、画像の空間的相関を精度良く利用することができる。
あるいは、図37に示すブロックシフトベクトルが指す参照ブロック内の未符号化領域の形状によって、水平方向フィルタと垂直方向フィルタのどちらを用いるかを適応的に切り替えてもよい。具体的には、垂直方向の未符号化部分が短くなるdh<dwのときは垂直方向フィルタを用い、その他(dh≧dw)のときは水平方向フィルタを用いるようにする。このようにすることで、常にフィルタ対象画素と符号化済み画素との距離(dh、dw)が短くなるフィルタを選択できるため、画像の空間的相関を精度良く利用することができる。
(3)のその他の例として、図38に示す参照画素配置のフィルタ処理を行うように画像符号化装置を構成してもよい(実線の円は参照画素を示し、点線の円はフィルタ処理対象画素を示している)。フィルタ処理対象画素の座標を(x,y)とした場合、下記の式でフィルタ処理が実行される。
ここで、c”l(l=0、1、・・・、3)はフィルタ係数を示している。また、c”0+c”1+c”2=1となるとき、平滑化フィルタであることを示している。また、c”3はオフセット値を表している。上記フィルタの例としては下記が挙げられる。
c”0=1/4、c”1=3/8、c”2=3/8、c”3=0
(c”3はオフセット値、本例ではオフセットなしとしている)
本例ではフィルタ処理対象画素に近い画素程フィルタ係数が大きくなっており、これは一般にフィルタ処理対象画素に近い画素程、フィルタ処理対象画素との相関が高いためである。なお、フィルタ処理の手順としては、未符号化領域の左上の画素からフィルタ処理を実施し、隣接する未符号化領域の画素を順にフィルタ処理していくことで、常に参照画素S(x−1,y−1)、S(x,y−1)、S(x−1,y)が存在するようにフィルタ処理を行うことができる。
ここで、c”l(l=0、1、・・・、3)はフィルタ係数を示している。また、c”0+c”1+c”2=1となるとき、平滑化フィルタであることを示している。また、c”3はオフセット値を表している。上記フィルタの例としては下記が挙げられる。
c”0=1/4、c”1=3/8、c”2=3/8、c”3=0
(c”3はオフセット値、本例ではオフセットなしとしている)
本例ではフィルタ処理対象画素に近い画素程フィルタ係数が大きくなっており、これは一般にフィルタ処理対象画素に近い画素程、フィルタ処理対象画素との相関が高いためである。なお、フィルタ処理の手順としては、未符号化領域の左上の画素からフィルタ処理を実施し、隣接する未符号化領域の画素を順にフィルタ処理していくことで、常に参照画素S(x−1,y−1)、S(x,y−1)、S(x−1,y)が存在するようにフィルタ処理を行うことができる。
なお、上記で説明した下記例について、
水平方向フィルタ:
Nh=1、c0=1/4、c1=1/2、c2=1/4、c3=0
垂直方向フィルタ:
Nv=1、c’0=1/4、c’1=1/2、c’2=1/4、c’3=0
図38のフィルタ:
c”0=1/4、c”1=3/8、c”2=3/8、c”3=0
これらのフィルタは、有意なフィルタ係数の分母が全て2のべき乗であるため、計算機による整数演算として実現する場合、下記の式に置き換えることができる。
水平方向フィルタ:
垂直方向フィルタ:
図38のフィルタ:
ここで、“>>”は右ビットシフト演算を示している。これらの計算式は全て整数精度のため、元の式と比べて小数精度の誤差は生じるものの、整数演算とビットシフトのみで実行できるため、高速な計算を実現することができる。
水平方向フィルタ:
Nh=1、c0=1/4、c1=1/2、c2=1/4、c3=0
垂直方向フィルタ:
Nv=1、c’0=1/4、c’1=1/2、c’2=1/4、c’3=0
図38のフィルタ:
c”0=1/4、c”1=3/8、c”2=3/8、c”3=0
これらのフィルタは、有意なフィルタ係数の分母が全て2のべき乗であるため、計算機による整数演算として実現する場合、下記の式に置き換えることができる。
水平方向フィルタ:
垂直方向フィルタ:
図38のフィルタ:
ここで、“>>”は右ビットシフト演算を示している。これらの計算式は全て整数精度のため、元の式と比べて小数精度の誤差は生じるものの、整数演算とビットシフトのみで実行できるため、高速な計算を実現することができる。
上記では、フィルタ処理対象画素の座標(x,y)から水平方向又は垂直方向のいずれかが±1となる座標の範囲内の画素を参照してフィルタ処理を行う手法について説明したが、図39、図40、図41に示すようにフィルタ処理対象画素の座標(x,y)から水平方向・垂直方向共に±2以上となる画素も用いたフィルタ処理としてもよい。図39、図40及び図41において、実線の円が参照画素を示し、点線の円がフィルタ処理対象画素を示している。また、Nh,Nvと同様に、Mh,Mv,Nl,Mlは各フィルタの参照画素数を決める定数を示している。
この場合も上記で説明したフィルタと同様に、フィルタ処理を各参照画素に対するフィルタ係数とオフセット値から定式化することができる。このようにフィルタの参照画素を増やすことで、演算量は増加するものの、未符号化領域画素の高精度な生成を実現することができる。
この場合も上記で説明したフィルタと同様に、フィルタ処理を各参照画素に対するフィルタ係数とオフセット値から定式化することができる。このようにフィルタの参照画素を増やすことで、演算量は増加するものの、未符号化領域画素の高精度な生成を実現することができる。
また、上記の例では、未符号化領域内の画素を埋め込む単位が最大符号化ブロックであるものを示したが、これに限るものではなく、例えば、符号化ブロック単位や予測ブロック単位で更新するようにしてもよい。このようにすることで、処理量が増加してしまうが、精度が良い画素埋め処理を実現することができる。
例えば、上記(1)〜(3)の手法では最大符号化ブロック単位で未符号化領域の画素を埋める処理について説明したが、符号化ブロック単位で本処理を行うようにしてもよい。
即ち、最大符号化ブロックの未符号化領域のうち、予測対象の符号化ブロック(当該符号化ブロック)内のみ、上記(1)〜(3)の手法で画素を埋めるようにする。具体的には、下記の通りとする。
(1)の手法の場合:
予測対象の符号化ブロック(当該符号化ブロック)の左に隣接している複数の画素の画素値の中で画素数の最も多い画素値で当該符号化ブロック内の未符号化領域の画素を埋めるようにする。
(2)の手法の場合:
予測対象の符号化ブロック(当該符号化ブロック)に対して、当該符号化ブロック内の未符号化領域を埋める代表値を決定する。代表値(あるいは代表値を示すインデックス)は符号化ブロック単位に符号化する。
(3)の手法の場合:
予測対象の符号化ブロック(当該符号化ブロック)に対して、当該符号化ブロック内の未符号化領域をフィルタ処理によって埋めるようにする。
したがって、図42に示す例のように、各符号化ブロックのイントラブロックコピー予測処理において、ブロックシフトベクトルが指し示す参照ブロックが含んでよい未符号化領域は、当該符号化ブロック内のみとなる。したがって、最大符号化ブロック単位で未符号化領域の画素を埋める処理を行う場合と比較して参照可能な領域は狭くなる。しかし、最大符号化ブロックより小さい符号化ブロックの単位で適応的に画素を埋める処理が行えるため、埋める画素の予測精度が向上し、イントラブロックコピー予測の予測効率の改善を期待することができる。
即ち、最大符号化ブロックの未符号化領域のうち、予測対象の符号化ブロック(当該符号化ブロック)内のみ、上記(1)〜(3)の手法で画素を埋めるようにする。具体的には、下記の通りとする。
(1)の手法の場合:
予測対象の符号化ブロック(当該符号化ブロック)の左に隣接している複数の画素の画素値の中で画素数の最も多い画素値で当該符号化ブロック内の未符号化領域の画素を埋めるようにする。
(2)の手法の場合:
予測対象の符号化ブロック(当該符号化ブロック)に対して、当該符号化ブロック内の未符号化領域を埋める代表値を決定する。代表値(あるいは代表値を示すインデックス)は符号化ブロック単位に符号化する。
(3)の手法の場合:
予測対象の符号化ブロック(当該符号化ブロック)に対して、当該符号化ブロック内の未符号化領域をフィルタ処理によって埋めるようにする。
したがって、図42に示す例のように、各符号化ブロックのイントラブロックコピー予測処理において、ブロックシフトベクトルが指し示す参照ブロックが含んでよい未符号化領域は、当該符号化ブロック内のみとなる。したがって、最大符号化ブロック単位で未符号化領域の画素を埋める処理を行う場合と比較して参照可能な領域は狭くなる。しかし、最大符号化ブロックより小さい符号化ブロックの単位で適応的に画素を埋める処理が行えるため、埋める画素の予測精度が向上し、イントラブロックコピー予測の予測効率の改善を期待することができる。
なお、(1)においては、当該符号化ブロックの左に隣接している複数の画素ではなく、当該符号化ブロックの上に隣接している複数の画素の画素値の中で、画素数の最も多い画素値で当該符号化ブロック内の未符号化領域の画素を埋めるようにしてもよい。この場合、垂直方向に相関の高い画像において未符号化領域を埋める画素値を精度良く得られる。さらに、当該符号化ブロックの左及び上に隣接している複数の画素の画素値の中で、画素数の最も多い画素値で当該符号化ブロック内の未符号化領域を埋めるようにしてもよい。このようにすることで、演算量は増加するものの参照する画素数の増加により、予測精度の改善を期待することができる。このとき、当該符号化ブロックの左上の画素も合わせて参照するようにしてもよい。
あるいは、図37に示すブロックシフトベクトルが指す参照ブロック内の未符号化領域の形状によって、当該符号化ブロックの左に隣接している複数の画素を用いるか、上に隣接している複数の画素を用いるかを適応的に切り替えてもよい。具体的には、垂直方向の未符号化部分が短くなるdh<dwのときは当該符号化ブロックの上に隣接している複数の画素から未符号化領域を埋める画素値を求め、その他(dh≧dw)のときは当該符号化ブロックの左に隣接している複数の画素から未符号化領域を埋める画素値を求めるようにする。このようにすることで、常に当該符号化ブロックに隣接する符号化済み画素と当該符号化ブロックの右端又は下端の画素との距離(dh、dw)が短い方の符号化済み隣接画素を選択できるため、画像の空間的相関を精度良く利用することができる。
また、参照する隣接画素の一部の画素が存在しない場合、予め定めた手法によって参照する画素を生成する。例えば、予め定めた固定値で代替する方法や、存在する別の位置の隣接画素の画素値で代替する方法等がある。さらに、参照する隣接画素が一つも存在しない場合については、予め定めた固定値で未符号化領域の画素を埋めるようにする。なお、予め定める固定値としては、取り得る画素値の中間値等が挙げられる。
また、参照する隣接画素の一部の画素が存在しない場合、予め定めた手法によって参照する画素を生成する。例えば、予め定めた固定値で代替する方法や、存在する別の位置の隣接画素の画素値で代替する方法等がある。さらに、参照する隣接画素が一つも存在しない場合については、予め定めた固定値で未符号化領域の画素を埋めるようにする。なお、予め定める固定値としては、取り得る画素値の中間値等が挙げられる。
なお、最大符号化ブロック単位で未符号化領域の画素を埋める処理の場合においても、ブロックシフトベクトルが指し示す参照ブロックが含んでよい未符号化領域を、予測対象の符号化ブロック内のみとしてもよい。このようにすることで、予測対象の符号化ブロックに近い、すなわち、空間的相関の高い領域のみ、未符号化領域も参照可能として探索可能な領域を拡大するため、最大符号化ブロック内の未符号化領域全体を探索可能とする場合と比較して、ブロックシフトベクトル探索に要する演算の負荷の増加を抑制しつつ予測精度を同様に改善することができる。さらに、探索範囲の抑制により、画像復号装置で必要とする参照可能領域を記憶するメモリのサイズの増加も抑制することができる。
(1)の未符号化領域の画素を埋める処理について、画素数を数える画素値を限定してもよい。このようにすることで、画素値が取り得る値の数の分のカウンタが必要な(1)の手法よりも必要なカウンタの個数が減るため、カウンタとして必要なメモリ量を削減することができる。なお、未符号化領域内の画素を埋め込む単位は最大符号化ブロック、符号化ブロック、予測ブロックのいずれの単位であっても各々で設定された参照画素に対して本処理を実施するものとする。
画素数を数える画素値を限定する手法の例を次に述べる。まず、画素値を量子化する例について説明する。本例では、画素値を予め定めた量子化器によって量子化し、その量子化後の代表値の数を数える。そして、最も多い画素数の代表値で未符号化領域の画素を埋めるようにする。ここで、取り得る画素値が0〜2bit_depth−1であり、取り得る画素値をNQ個の代表値に量子化するとする(bit_depthは0以上の整数、NQは1以上の整数)。この時の量子化処理の例として、整数精度の演算で行う例を下記に示している。
pow=bit_depth−base
(代表値)=(((画素値)+(1<<(pow−1)))>>pow)<<pow
画素数を数える画素値を限定する手法の例を次に述べる。まず、画素値を量子化する例について説明する。本例では、画素値を予め定めた量子化器によって量子化し、その量子化後の代表値の数を数える。そして、最も多い画素数の代表値で未符号化領域の画素を埋めるようにする。ここで、取り得る画素値が0〜2bit_depth−1であり、取り得る画素値をNQ個の代表値に量子化するとする(bit_depthは0以上の整数、NQは1以上の整数)。この時の量子化処理の例として、整数精度の演算で行う例を下記に示している。
pow=bit_depth−base
(代表値)=(((画素値)+(1<<(pow−1)))>>pow)<<pow
ただし、代表値が2bit_depth−1を超える場合、2bit_depth−1に代表値を丸める。“<<”は左ビットシフト演算、“>>”は右ビットシフト演算を示し、baseは0以上の整数とし、NQ=2base+1の関係が成立する。例えば、bit_depth=8、かつ、base=1の場合、画素値0〜63の代表値が0、画素値64〜191の代表値が128、画素値192〜255の代表値が255となる。なお、画素値の量子化手法については、上記手法に限るものではなく、上記の式において画素値に1<<(pow−1)を加算しない等の等間隔に量子化する手法を用いる等、どのような手法でも良い。
画素数を数える画素値を限定する手法のその他の例として、画素数を数えている画素値の個数が所定の数に達したら、新しく出現する画素値を無効とする手法がある。
具体的には、所定の数Nc個のカウンタを用意し、隣接画素を順に数えていく中で新しい画素値が出現する度に未使用のカウンタを当該画素値のカウンタとして割り当てていくようにする。そして、所定の数Nc個のカウンタ全てを使用している状態に達した以降は、これまでに出現していない新しい画素値が出現した際にはその画素値を無効とする。このようにすることで、所定の数Nc個の画素値のみから未符号化領域を埋める画素値を決定することとなり、画素数を数える画素値を限定することができる。なお、本手法の場合、隣接画素を数える順番が結果に影響する。したがって、隣接画素を数える順番は予め決定しておくようにする。例えば、最大符号化ブロックの左及び上に隣接している画素を参照する場合、左下の画素から左上の画素、そして右上の画素に向かって参照していく、というように予め定める。
なお、画素数を数える画素値を限定する手法については、上記手法に限るものではなく、上記以外の手法でも良い。
画素数を数える画素値を限定する手法のその他の例として、画素数を数えている画素値の個数が所定の数に達したら、新しく出現する画素値を無効とする手法がある。
具体的には、所定の数Nc個のカウンタを用意し、隣接画素を順に数えていく中で新しい画素値が出現する度に未使用のカウンタを当該画素値のカウンタとして割り当てていくようにする。そして、所定の数Nc個のカウンタ全てを使用している状態に達した以降は、これまでに出現していない新しい画素値が出現した際にはその画素値を無効とする。このようにすることで、所定の数Nc個の画素値のみから未符号化領域を埋める画素値を決定することとなり、画素数を数える画素値を限定することができる。なお、本手法の場合、隣接画素を数える順番が結果に影響する。したがって、隣接画素を数える順番は予め決定しておくようにする。例えば、最大符号化ブロックの左及び上に隣接している画素を参照する場合、左下の画素から左上の画素、そして右上の画素に向かって参照していく、というように予め定める。
なお、画素数を数える画素値を限定する手法については、上記手法に限るものではなく、上記以外の手法でも良い。
また、(1)の手法では、画素値毎の画素数を数えるカウンタのためのメモリが必要となる。したがって、各画素値の画素数を覚える必要のない、同一画素値の連続数を用いる手法で未符号化領域を埋める画素値に決定するようにしても良い。具体的には、参照する隣接画素は(1)と同一とし、所定の参照順に同一の画素値が連続する画素数を数える。
そして、連続する画素数が最大となった画素値を未符号化領域の画素を埋める画素値に決定する。なお、未符号化領域内の画素を埋め込む単位は最大符号化ブロック、符号化ブロック、予測ブロックのいずれの単位であっても各々で設定された参照画素に対して本処理を実施するものとする。
本手法の場合、最大の連続画素数Lmaxと、それに対応する画素値Smax、現在連続している画素値Stmpと、その連続画素数Ltmpとを記憶し、所定の参照順に画素を参照していく際に、現在参照している画素の画素値ScurとStmpが同じ場合は連続画素数Ltmpを1増やし、異なる場合は、LtmpとLmaxを比較してLtmpが大きい場合にLmax=Ltmp、Smax=Stmpとした後で、Ltmpを初期化すると共にStmp=Scurとする。これを全ての参照画素に対して行った後のSmaxが連続する画素数が最大となる画素値となる。
そして、連続する画素数が最大となった画素値を未符号化領域の画素を埋める画素値に決定する。なお、未符号化領域内の画素を埋め込む単位は最大符号化ブロック、符号化ブロック、予測ブロックのいずれの単位であっても各々で設定された参照画素に対して本処理を実施するものとする。
本手法の場合、最大の連続画素数Lmaxと、それに対応する画素値Smax、現在連続している画素値Stmpと、その連続画素数Ltmpとを記憶し、所定の参照順に画素を参照していく際に、現在参照している画素の画素値ScurとStmpが同じ場合は連続画素数Ltmpを1増やし、異なる場合は、LtmpとLmaxを比較してLtmpが大きい場合にLmax=Ltmp、Smax=Stmpとした後で、Ltmpを初期化すると共にStmp=Scurとする。これを全ての参照画素に対して行った後のSmaxが連続する画素数が最大となる画素値となる。
図43及び図44は本手法の処理手順の例を示すフローチャートである。
ただし、図44は図43に記載のステップST105及びステップST106の「Lmax判定及びSmax更新」の処理手順例を示している。本例では、ステップST100でLmax及びSmaxを1(連続画素数1)に初期化すると共に、StmpとLtmpを最初に参照する隣接画素の画素値に設定する。そして、残りの参照する隣接画素に対して(ステップST101)、SmaxとLmaxを更新する処理を実施する(ステップST102〜ステップST106)。
まず、これから参照する画素の画素値をScurとし(ステップST102)、ScurとStmpが同じか比較する(ステップST103)。そして、ScurとStmpが同じ場合は連続画素数Ltmpの値を1増加し(ステップST104)、異なる場合は図44記載のLmax判定及びSmax更新処理を行う(ステップST105)。
ただし、図44は図43に記載のステップST105及びステップST106の「Lmax判定及びSmax更新」の処理手順例を示している。本例では、ステップST100でLmax及びSmaxを1(連続画素数1)に初期化すると共に、StmpとLtmpを最初に参照する隣接画素の画素値に設定する。そして、残りの参照する隣接画素に対して(ステップST101)、SmaxとLmaxを更新する処理を実施する(ステップST102〜ステップST106)。
まず、これから参照する画素の画素値をScurとし(ステップST102)、ScurとStmpが同じか比較する(ステップST103)。そして、ScurとStmpが同じ場合は連続画素数Ltmpの値を1増加し(ステップST104)、異なる場合は図44記載のLmax判定及びSmax更新処理を行う(ステップST105)。
具体的には、LtmpとLmaxを比較して(ステップST200)、LtmpがLmaxより大きい場合にLmax=Ltmp、Smax=Stmpとする(ステップST201)。その後、Ltmp=1に初期化すると共に、Stmp=Scurに設定する(ステップST202)。そして、上記処理を全ての参照する隣接画素に対して完了した後、現在の連続画素数Ltmpに対しても図44記載のLmax判定及びSmax更新処理を行う(ステップST106)。そして、上記処理を終えた時のSmaxを未符号化領域の画素を埋める素値に設定する(ステップST107)。
ただし、ステップST106については、ステップST201の処理の内のLmax=Ltmpとする処理と、ステップST202の処理は不要のため、省略して良い。
ただし、ステップST106については、ステップST201の処理の内のLmax=Ltmpとする処理と、ステップST202の処理は不要のため、省略して良い。
以上より、(1)の手法で必要な各画素値の画素数を数えるカウンタのためのメモリは不要となり、メモリ量を削減することができる。さらに、連続する画素数が最も多い画素値は参照する隣接画素の中で最も画素数の多い画素値である可能性が高いため、(1)と同程度の(未符号化領域の画素を埋める画素値の)予測精度を得ることができる。
なお、本手法の参照する隣接画素は(1)と同一とするため、(1)で説明した図37に示すブロックシフトベクトルが指す参照ブロック内の未符号化領域の形状によって、当該符号化ブロックの左に隣接している複数の画素を用いるか、上に隣接している複数の画素を用いるかを適応的に切り替えるようにしてもよい。切り替え手法も(1)と同一である。
なお、本手法の参照する隣接画素は(1)と同一とするため、(1)で説明した図37に示すブロックシフトベクトルが指す参照ブロック内の未符号化領域の形状によって、当該符号化ブロックの左に隣接している複数の画素を用いるか、上に隣接している複数の画素を用いるかを適応的に切り替えるようにしてもよい。切り替え手法も(1)と同一である。
後述する画像復号装置では、イントラブロックコピー予測画像PICOPYi nと全く同じイントラブロックコピー予測画像を生成する必要があるため、イントラブロックコピー予測画像PICOPYi nの生成に用いられたイントラブロックコピー予測パラメータは、符号化制御部1から可変長符号化部15に出力されて、ビットストリームに多重化される。
イントラブロックコピー予測パラメータとしては、イントラブロックコピー予測部6により探索されたブロックシフトベクトルや、未符号化領域の画素値埋め処理で符号化すべきパラメータが存在する場合は対象のパラメータが挙げられる。また、ブロックシフトベクトルは直前の符号化済み予測ブロックのブロックシフトベクトル、あるいは当該予測ブロックの周囲の符号化済み予測ブロックのブロックシフトベクトルとの差分値をイントラブロックコピー予測パラメータの一部として符号化するようにしてもよい。
イントラブロックコピー予測パラメータとしては、イントラブロックコピー予測部6により探索されたブロックシフトベクトルや、未符号化領域の画素値埋め処理で符号化すべきパラメータが存在する場合は対象のパラメータが挙げられる。また、ブロックシフトベクトルは直前の符号化済み予測ブロックのブロックシフトベクトル、あるいは当該予測ブロックの周囲の符号化済み予測ブロックのブロックシフトベクトルとの差分値をイントラブロックコピー予測パラメータの一部として符号化するようにしてもよい。
色差信号については、輝度信号と同一のベクトルによる予測を実施する。あるいは、輝度信号のベクトルを基準として探索し、輝度信号のベクトルの差分ベクトルを符号化するようにしてもよい。このようにすることで色差信号の予測精度を改善することができる。
この差分ベクトルはU信号とV信号でそれぞれ独立に決定するようにしてもよい。このようにすることで一層自由度が高まるため、色差信号の予測精度を更に改善することができる。
また、上記の差分ベクトルは、±M画素以内(M:自然数)に限定するようにしてもよい。このように探索する範囲を限定することで探索に要する演算量を削減することができる。また、対応する画像復号装置においても用意する参照画像が限定されることで参照画像のメモリ量を削減することができる。
このとき、小数画素精度を禁止するようにしてもよい。このようにすることで、さらに探索に要する演算量を削減しながら、参照画像に要するメモリ量を削減することができる。
あるいは、±1画素以内の小数画素精度に限定するようにしてもよい。この場合も、探索する範囲を限定することで探索に要する演算量及び参照画像に要するメモリ量を削減することができる。
この差分ベクトルはU信号とV信号でそれぞれ独立に決定するようにしてもよい。このようにすることで一層自由度が高まるため、色差信号の予測精度を更に改善することができる。
また、上記の差分ベクトルは、±M画素以内(M:自然数)に限定するようにしてもよい。このように探索する範囲を限定することで探索に要する演算量を削減することができる。また、対応する画像復号装置においても用意する参照画像が限定されることで参照画像のメモリ量を削減することができる。
このとき、小数画素精度を禁止するようにしてもよい。このようにすることで、さらに探索に要する演算量を削減しながら、参照画像に要するメモリ量を削減することができる。
あるいは、±1画素以内の小数画素精度に限定するようにしてもよい。この場合も、探索する範囲を限定することで探索に要する演算量及び参照画像に要するメモリ量を削減することができる。
イントラブロックコピー予測部6は、輝度信号の予測画像の生成については常にイントラブロックコピー予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、符号化制御部1により当該予測ブロックの色信号間予測フラグがONに設定されている場合、イントラブロックコピー予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。一方、符号化制御部1により当該予測ブロックの色信号間予測フラグがOFFに設定されている場合は、色差信号もイントラブロックコピー予測処理を実施する。
動き補償予測部7は、符号化制御部1により決定された符号化モードm(Bn)がインター符号化モードであり(m(Bn)∈INTERの場合)、切換スイッチ4から符号化ブロックBnを受けると(ステップST3)、その符号化ブロックBn内の各予測ブロックPi nと動き補償予測フレームメモリ14に格納されているフィルタ処理後の局所復号画像を比較して動きベクトルを探索し、その動きベクトルと符号化制御部1により決定されたインター予測パラメータを用いて、その符号化ブロックBn内の各予測ブロックPi nに対する動き補償予測処理を実施して、インター予測画像PINTERi nを生成する(ステップST6)。
なお、画像復号装置がインター予測画像PINTERi nと全く同じインター予測画像を生成する必要があるため、インター予測画像PINTERi nの生成に用いられたインター予測パラメータは、符号化制御部1から可変長符号化部15に出力されて、ビットストリームに多重化される。
また、動き補償予測部7により探索された動きベクトルも可変長符号化部15に出力されて、ビットストリームに多重化される。
なお、画像復号装置がインター予測画像PINTERi nと全く同じインター予測画像を生成する必要があるため、インター予測画像PINTERi nの生成に用いられたインター予測パラメータは、符号化制御部1から可変長符号化部15に出力されて、ビットストリームに多重化される。
また、動き補償予測部7により探索された動きベクトルも可変長符号化部15に出力されて、ビットストリームに多重化される。
色差信号については、輝度信号と同一のベクトルによる予測を実施する。あるいは、輝度信号のベクトルを基準として探索し、輝度信号のベクトルの差分ベクトルを符号化するようにしてもよい。このようにすることで色差信号の予測精度を改善することができる。
この差分ベクトルはU信号とV信号でそれぞれ独立に決定するようにしてもよい。このようにすることで一層自由度が高まるため、色差信号の予測精度を更に改善することができる。
また、上記の差分ベクトルは、±M画素以内(M:自然数)に限定するようにしてもよい。このように探索する範囲を限定することで探索に要する演算量を削減することができる。また、対応する画像復号装置においても用意する参照画像が限定されることで参照画像のメモリ量を削減することができる。
このとき、小数画素精度を禁止するようにしてもよい。このようにすることで、さらに探索に要する演算量を削減しながら、参照画像に要するメモリ量を削減することができる。
あるいは、小数画素精度の画素のみに限定するようにしてもよい。例えば、±1画素以内の小数画素精度の画素に限定することで、小数画素精度の高精度な予測を実現しつつ、探索に要する演算量及び参照画像に要するメモリ量を削減することができる。
この差分ベクトルはU信号とV信号でそれぞれ独立に決定するようにしてもよい。このようにすることで一層自由度が高まるため、色差信号の予測精度を更に改善することができる。
また、上記の差分ベクトルは、±M画素以内(M:自然数)に限定するようにしてもよい。このように探索する範囲を限定することで探索に要する演算量を削減することができる。また、対応する画像復号装置においても用意する参照画像が限定されることで参照画像のメモリ量を削減することができる。
このとき、小数画素精度を禁止するようにしてもよい。このようにすることで、さらに探索に要する演算量を削減しながら、参照画像に要するメモリ量を削減することができる。
あるいは、小数画素精度の画素のみに限定するようにしてもよい。例えば、±1画素以内の小数画素精度の画素に限定することで、小数画素精度の高精度な予測を実現しつつ、探索に要する演算量及び参照画像に要するメモリ量を削減することができる。
動き補償予測部7は、輝度信号の予測画像の生成については常に動き補償予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、符号化制御部1により当該予測ブロックの色信号間予測フラグがONに設定されている場合、動き補償予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。一方、符号化制御部1により当該予測ブロックの色信号間予測フラグがOFFに設定されている場合は、色差信号も動き補償予測処理を実施する。
ここで、イントラ予測部5、イントラブロックコピー予測部6又は動き補償予測部7が、色信号間予測処理を実施して、色差信号の予測画像を生成する際の処理内容を具体的に説明する。
色信号間予測パラメータに含まれているフラグがONである場合、色差信号では、イントラ予測処理、イントラブロックコピー予測処理、動き補償予測処理を行わず、図45に示すように、色信号間ベクトルが指し示す符号化済みの色差信号のブロックを参照して予測画像を生成する。
色信号間予測パラメータに含まれているフラグがONである場合、色差信号では、イントラ予測処理、イントラブロックコピー予測処理、動き補償予測処理を行わず、図45に示すように、色信号間ベクトルが指し示す符号化済みの色差信号のブロックを参照して予測画像を生成する。
図46は入力信号フォーマットがYUV4:4:4フォーマットの信号であり、予測画像の生成対象ブロックが8×8画素である場合の色信号間予測の一例を示す説明図である。
図46の灰色の画素で示す予測画像生成対象ブロックと、参照する符号化済み色信号のブロックの上及び左に隣接している複数の画素を用いて、参照する符号化済み色信号のブロックの画素値と、予測対象の色差信号の予測画像の画素値との相関を示す相関パラメータを算出し、その相関パラメータによって補正された対応する符号化済み色差信号のブロックの画素値を色差信号の予測画像の画素値とする。相関パラメータによる画素値の補正式は下記の通りである。
補正式: (予測画像の画素値)=α×(参照ブロックの画素値)+β
補正式において、α、βは相関パラメータを示し、α、βのうち、どちらか一方のみで補正するものとしても良い。具体的には、以下の通りである。
(予測画像の画素値)=α×(参照ブロックの画素値)
あるいは、
(予測画像の画素値)=(参照ブロックの画素値)+β
このようにすることで、相関パラメータの算出に要する演算量を削減することができる。
図46の灰色の画素で示す予測画像生成対象ブロックと、参照する符号化済み色信号のブロックの上及び左に隣接している複数の画素を用いて、参照する符号化済み色信号のブロックの画素値と、予測対象の色差信号の予測画像の画素値との相関を示す相関パラメータを算出し、その相関パラメータによって補正された対応する符号化済み色差信号のブロックの画素値を色差信号の予測画像の画素値とする。相関パラメータによる画素値の補正式は下記の通りである。
補正式: (予測画像の画素値)=α×(参照ブロックの画素値)+β
補正式において、α、βは相関パラメータを示し、α、βのうち、どちらか一方のみで補正するものとしても良い。具体的には、以下の通りである。
(予測画像の画素値)=α×(参照ブロックの画素値)
あるいは、
(予測画像の画素値)=(参照ブロックの画素値)+β
このようにすることで、相関パラメータの算出に要する演算量を削減することができる。
ただし、予測画像生成対象ブロックの単位は、符号化ブロック単位、予測ブロック単位、変換ブロック単位のいずれでもよい。一般に、小さいブロック単位で予測を行うことで予測精度は向上するが、相関パラメータの算出処理に要する演算量が増加するため、構成する画像符号化装置の演算性能等に応じて構成すればよい。例えば、演算時間の制約がなく複雑な計算を許容できる場合は、符号化ブロックのブロックサイズ以下のブロックサイズとなる予測ブロックや変換ブロック単位で予測画像生成処理を行うように構成することで高精度な予測を実現することができる。例えば、イントラ予測部5では予測画像を生成する単位である変換ブロック、イントラブロックコピー予測部6及び動き補償予測部7では予測ブロックとすることで高精度な予測を実現することができる。
なお、イントラブロックコピー予測部6及び動き補償予測部7において、予測画像生成対象ブロックの単位を予測ブロック単位とする場合、当該符号化ブロック内の画素は符号化されていないため、各予測ブロックの相関パラメータは、各予測ブロックが属する符号化ブロックに隣接する画素を参照して算出する。図47に符号化ブロックを左右に2分割している予測ブロックの例を示す。このとき、灰色の画素で示す当該符号化ブロックに隣接する画素を用いて予測ブロックの相関パラメータを算出する。したがって、予測ブロックの分割状態に関わらず、符号化ブロック内の各予測ブロックの相関パラメータは同一となる。
あるいは、図47の灰色の画素の内、当該予測ブロック(予測画像生成対象ブロック)に隣接する画素のみを用いて相関パラメータを算出するようにしても良い。このようにすることで、当該予測ブロックに隣接した、当該予測ブロック内の画素との相関の高い画素のみから相関パラメータが算出されるため、パラメータ算出精度を高めることができる。さらに、パラメータ算出処理で参照する灰色の画素数を常に2のべき乗としてもよい。このようにすることで、相関パラメータの算出式を簡易化でき、演算量を削減することができる。なお、上述した相関パラメータの算出例は全て2のべき乗となる。
なお、イントラブロックコピー予測部6及び動き補償予測部7において、予測画像生成対象ブロックの単位を予測ブロック単位とする場合、当該符号化ブロック内の画素は符号化されていないため、各予測ブロックの相関パラメータは、各予測ブロックが属する符号化ブロックに隣接する画素を参照して算出する。図47に符号化ブロックを左右に2分割している予測ブロックの例を示す。このとき、灰色の画素で示す当該符号化ブロックに隣接する画素を用いて予測ブロックの相関パラメータを算出する。したがって、予測ブロックの分割状態に関わらず、符号化ブロック内の各予測ブロックの相関パラメータは同一となる。
あるいは、図47の灰色の画素の内、当該予測ブロック(予測画像生成対象ブロック)に隣接する画素のみを用いて相関パラメータを算出するようにしても良い。このようにすることで、当該予測ブロックに隣接した、当該予測ブロック内の画素との相関の高い画素のみから相関パラメータが算出されるため、パラメータ算出精度を高めることができる。さらに、パラメータ算出処理で参照する灰色の画素数を常に2のべき乗としてもよい。このようにすることで、相関パラメータの算出式を簡易化でき、演算量を削減することができる。なお、上述した相関パラメータの算出例は全て2のべき乗となる。
上記の例では、相関パラメータを算出して符号化済み色差信号のブロックの画素値を補正するとしているが、相関パラメータを算出せずに、符号化済み色差信号のブロックの画素値をそのまま予測画像の画素値とするように画像符号化装置を構成してもよい。このようにすることで、相関パラメータを算出する演算処理が不要となり、演算量を削減することができる。
なお、入力信号フォーマットがYUV4:2:0フォーマットあるいはYUV4:2:2フォーマットの場合は、参照する符号化済み色信号を予測画像生成対象ブロックと同一のサイズとなるようにブロックサイズをスケーリングして参照する。
具体的には、YUV4:2:0フォーマットの場合、輝度(Y)信号を参照する際には縦及び横のサイズを1/2に縮小した輝度信号を用いる。同様に、YUV4:2:2フォーマットの場合、輝度(Y)信号を参照する際には横のサイズを1/2に縮小した輝度信号を用いる。
また、色信号間ベクトルは±M画素以内(M:自然数)に限定するようにしてもよい。このように探索する範囲を限定することで探索に要する演算量を削減することができる。
また、対応する画像復号装置においても用意する参照画像が限定されることで参照画像のメモリ量を削減することができる。このとき、小数画素精度を禁止するようにしてもよい。このようにすることで、さらに探索に要する演算量を削減しながら、参照画像に要するメモリ量を削減することができる。
あるいは、小数画素精度の画素のみに限定するようにしてもよい。例えば、±1画素以内の小数画素精度の画素に限定することで、小数画素精度の高精度な予測を実現しつつ、探索に要する演算量及び参照画像に要するメモリ量を削減することができる。
なお、入力信号フォーマットがYUV4:2:0フォーマットあるいはYUV4:2:2フォーマットの場合は、参照する符号化済み色信号を予測画像生成対象ブロックと同一のサイズとなるようにブロックサイズをスケーリングして参照する。
具体的には、YUV4:2:0フォーマットの場合、輝度(Y)信号を参照する際には縦及び横のサイズを1/2に縮小した輝度信号を用いる。同様に、YUV4:2:2フォーマットの場合、輝度(Y)信号を参照する際には横のサイズを1/2に縮小した輝度信号を用いる。
また、色信号間ベクトルは±M画素以内(M:自然数)に限定するようにしてもよい。このように探索する範囲を限定することで探索に要する演算量を削減することができる。
また、対応する画像復号装置においても用意する参照画像が限定されることで参照画像のメモリ量を削減することができる。このとき、小数画素精度を禁止するようにしてもよい。このようにすることで、さらに探索に要する演算量を削減しながら、参照画像に要するメモリ量を削減することができる。
あるいは、小数画素精度の画素のみに限定するようにしてもよい。例えば、±1画素以内の小数画素精度の画素に限定することで、小数画素精度の高精度な予測を実現しつつ、探索に要する演算量及び参照画像に要するメモリ量を削減することができる。
上記の例では、色信号間予測処理として、色信号間ベクトルが指し示す符号化済み色信号のブロックを参照して予測画像を生成するようにしているが、常に、予測画像生成対象ブロックと同一位置のブロックを参照するように構成してもよい。一般に、同一位置の符号化済み色信号のブロックは絵柄が一致する可能性が高いため、このようにすることで、予測精度の低下を抑制しながら、色信号間ベクトルを符号化せずに済むため符号量を削減することができる。
また、参照する符号化済み色信号について、Y(輝度)信号、U信号、V信号の順番で符号化する場合、U信号はY信号、V信号はY信号又はU信号を参照する。このとき、V信号については、Y信号とU信号のどちらを参照するかを画像符号化装置と画像復号装置共通で固定的に構成してもよいし(例えば、常にU信号を参照するように構成する)、どちらを参照するかを切り替え可能として、その切り替え単位毎に参照信号情報を符号化するようにしてもよい。
切り替えの単位は、シーケンス、ピクチャ、スライス単位としてもよいし、符号化ブロック、予測ブロック、変換ブロック等のブロック単位としてもよい。一般に、切り替え単位が細かい程予測効率は高くなる。一方、切り替え単位を大まかにすることで符号化する参照信号情報を符号化する際に発生する符号量を抑えることができる。
また、参照する符号化済み色信号について、Y(輝度)信号、U信号、V信号の順番で符号化する場合、U信号はY信号、V信号はY信号又はU信号を参照する。このとき、V信号については、Y信号とU信号のどちらを参照するかを画像符号化装置と画像復号装置共通で固定的に構成してもよいし(例えば、常にU信号を参照するように構成する)、どちらを参照するかを切り替え可能として、その切り替え単位毎に参照信号情報を符号化するようにしてもよい。
切り替えの単位は、シーケンス、ピクチャ、スライス単位としてもよいし、符号化ブロック、予測ブロック、変換ブロック等のブロック単位としてもよい。一般に、切り替え単位が細かい程予測効率は高くなる。一方、切り替え単位を大まかにすることで符号化する参照信号情報を符号化する際に発生する符号量を抑えることができる。
さらに、ブロック単位に参照信号を切り替え可能とする場合、シーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダに上記ブロック単位の切り替え処理を有効とするか否かを示すフラグを持つようにしてもよい。このようにすることで、本切り替え処理が効果的な場合のみ有効とするようにして、本切り替え処理が効果的でない場合に上記ブロック単位の参照信号情報を符号化せずに済み、符号化効率を高めることができる。
上記の例では、上記の参照信号情報について、Y信号とU信号のどちらを参照するかを決定する情報として説明したが、さらにY信号とU信号を共に参照して重み付き平均によって参照ブロックを生成する場合も含めるようにしてもよい。即ち、設定した切り替え単位毎に、Y信号のみを参照して予測画像を生成するか、U信号のみを参照して予測画像を生成するか、Y信号とU信号を共に参照して予測画像を生成するかを選択するようにする。このようにすることで、より高精度な予測を実現することができる。
上記の例では、上記の参照信号情報について、Y信号とU信号のどちらを参照するかを決定する情報として説明したが、さらにY信号とU信号を共に参照して重み付き平均によって参照ブロックを生成する場合も含めるようにしてもよい。即ち、設定した切り替え単位毎に、Y信号のみを参照して予測画像を生成するか、U信号のみを参照して予測画像を生成するか、Y信号とU信号を共に参照して予測画像を生成するかを選択するようにする。このようにすることで、より高精度な予測を実現することができる。
色信号間予測処理は、予測ブロック単位に実施の有無を選択し、その実施の有無を示すフラグを色信号間予測パラメータとして符号化する。色信号間予測処理がOFFの予測ブロックは、輝度信号と同一の予測部(イントラ予測部5、イントラブロックコピー予測部6あるいは動き補償予測部7)で予測を実施する。したがって、イントラ予測部5の色差信号のイントラ予測パラメータのうち、色信号間予測を行わない予測ブロックのイントラ予測パラメータだけを符号化する。
同様に、イントラブロックコピー予測部6あるいは動き補償予測部7で色差信号用の差分ベクトルを符号化するように構成している場合、上記のフラグがOFFの予測ブロックのみの色差信号用の差分ベクトルを符号化する。ただし、輝度信号と色差信号でイントラブロックコピー予測パラメータあるいはインター予測パラメータを共通とするように画像符号化装置を構成する場合、上記ブロックシフトベクトルあるいは動きベクトルは常に輝度信号と色差信号で同一であるため、差分ベクトルは符号化しない。対応する画像復号装置は、輝度信号のイントラブロックコピー予測パラメータあるいはインター予測パラメータを色差信号でも用いるように構成する。もしくは、色差信号の差分ベクトルは常に0と解釈するように構成する。
また、イントラ予測部5の色差信号のイントラ予測パラメータと色信号間予測フラグを組み合わせて、図48に示すような色差信号のイントラ予測パラメータとして符号化するようにしてもよい。この場合、イントラ予測パラメータが色信号間予測処理を示す場合に色信号間予測処理を行うものとし、それ以外の場合は、イントラ予測パラメータに従ってイントラ予測を実施する。
同様に、イントラブロックコピー予測部6あるいは動き補償予測部7で色差信号用の差分ベクトルを符号化するように構成している場合、上記のフラグがOFFの予測ブロックのみの色差信号用の差分ベクトルを符号化する。ただし、輝度信号と色差信号でイントラブロックコピー予測パラメータあるいはインター予測パラメータを共通とするように画像符号化装置を構成する場合、上記ブロックシフトベクトルあるいは動きベクトルは常に輝度信号と色差信号で同一であるため、差分ベクトルは符号化しない。対応する画像復号装置は、輝度信号のイントラブロックコピー予測パラメータあるいはインター予測パラメータを色差信号でも用いるように構成する。もしくは、色差信号の差分ベクトルは常に0と解釈するように構成する。
また、イントラ予測部5の色差信号のイントラ予測パラメータと色信号間予測フラグを組み合わせて、図48に示すような色差信号のイントラ予測パラメータとして符号化するようにしてもよい。この場合、イントラ予測パラメータが色信号間予測処理を示す場合に色信号間予測処理を行うものとし、それ以外の場合は、イントラ予測パラメータに従ってイントラ予測を実施する。
上記の例では、予測ブロック単位に色信号間予測処理の実施の有無を選択しているが、符号化ブロック単位あるいは最大サイズの符号化ブロック単位に実施の有無を選択するようにしてもよい。このようにすることで色信号間予測の切り替え単位が大きくなって予測効率は低下するが、色信号間予測フラグの符号化に要する符号量を削減することができる。
さらに、符号化済み色信号の参照信号情報と色信号間予測フラグを一つの情報としてもよい。即ち、参照信号情報に、色信号間予測処理を行わない(符号化済み色信号を参照しない)場合も含めるようにしてもよい。
さらに、符号化済み色信号の参照信号情報と色信号間予測フラグを一つの情報としてもよい。即ち、参照信号情報に、色信号間予測処理を行わない(符号化済み色信号を参照しない)場合も含めるようにしてもよい。
減算部8は、ブロック分割部3から符号化ブロックBnを受けると、その符号化ブロックBn内の予測ブロックPi nから、イントラ予測部5により生成されたイントラ予測画像PINTRAi n、イントラブロックコピー予測部6により生成されたイントラブロックコピー予測画像PICOPYi n、又は、動き補償予測部7により生成されたインター予測画像PINTERi nのいずれかを減算して、その減算結果である差分画像を示す予測差分信号ei nを変換・量子化部9に出力する(ステップST7)。
変換・量子化部9は、減算部8から予測差分信号ei nを受けると、符号化制御部1により決定された予測差分符号化パラメータに含まれる変換ブロック分割情報を参照して、その予測差分信号ei nに対する直交変換処理(例えば、DCT(離散コサイン変換)やDST(離散サイン変換)、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を変換ブロック単位に実施して、変換係数を算出する。
また、変換・量子化部9は、その予測差分符号化パラメータに含まれる量子化パラメータを参照して、その変換ブロック単位の変換係数を量子化し、量子化後の変換係数である圧縮データを逆量子化・逆変換部10及び可変長符号化部15に出力する(ステップST8)。このとき、上記量子化パラメータから算出される量子化ステップサイズを変換係数毎にスケーリングする量子化マトリクスを用いて量子化処理を実施するようにしてもよい。
また、変換・量子化部9は、その予測差分符号化パラメータに含まれる量子化パラメータを参照して、その変換ブロック単位の変換係数を量子化し、量子化後の変換係数である圧縮データを逆量子化・逆変換部10及び可変長符号化部15に出力する(ステップST8)。このとき、上記量子化パラメータから算出される量子化ステップサイズを変換係数毎にスケーリングする量子化マトリクスを用いて量子化処理を実施するようにしてもよい。
量子化マトリクスは、各直交変換サイズで色信号や符号化モード(イントラ符号化かインター符号化か)毎に独立しているマトリクスを使用することができ、初期値として、画像符号化装置及び画像復号装置で、予め共通に用意されている量子化マトリクスや既に符号化された量子化マトリクスの中から選択するか、新しい量子化マトリクスを用いるかをそれぞれ選択することができる。
したがって、変換・量子化部9は、各直交変換サイズに対して色信号や符号化モード毎に、新しい量子化マトリクスを用いるか否かを示すフラグを符号化すべき量子化マトリクスパラメータに設定する。
さらに、新しい量子化マトリクスを用いる場合には、図10に示すような量子化マトリクスの各スケーリング値を符号化すべき量子化マトリクスパラメータに設定する。
一方、新しい量子化マトリクスを用いない場合には、初期値として、画像符号化装置及び画像復号装置で、予め共通に用意されている量子化マトリクス、又は、既に符号化された量子化マトリクスの中から、使用するマトリクスを特定するインデックスを符号化すべき量子化マトリクスパラメータに設定する。ただし、参照可能な既に符号化された量子化マトリクスが存在しない場合、画像符号化装置及び画像復号装置で、予め共通に用意されている量子化マトリクスのみ選択可能となる。
そして、変換・量子化部9は、設定した量子化マトリクスパラメータを可変長符号化部15に出力する。
したがって、変換・量子化部9は、各直交変換サイズに対して色信号や符号化モード毎に、新しい量子化マトリクスを用いるか否かを示すフラグを符号化すべき量子化マトリクスパラメータに設定する。
さらに、新しい量子化マトリクスを用いる場合には、図10に示すような量子化マトリクスの各スケーリング値を符号化すべき量子化マトリクスパラメータに設定する。
一方、新しい量子化マトリクスを用いない場合には、初期値として、画像符号化装置及び画像復号装置で、予め共通に用意されている量子化マトリクス、又は、既に符号化された量子化マトリクスの中から、使用するマトリクスを特定するインデックスを符号化すべき量子化マトリクスパラメータに設定する。ただし、参照可能な既に符号化された量子化マトリクスが存在しない場合、画像符号化装置及び画像復号装置で、予め共通に用意されている量子化マトリクスのみ選択可能となる。
そして、変換・量子化部9は、設定した量子化マトリクスパラメータを可変長符号化部15に出力する。
逆量子化・逆変換部10は、変換・量子化部9から圧縮データを受けると、符号化制御部1により決定された予測差分符号化パラメータに含まれる量子化パラメータ及び変換ブロック分割情報を参照して、変換ブロック単位にその圧縮データを逆量子化する。
変換・量子化部9が量子化処理に量子化マトリクスを用いている場合には、逆量子化処理時においても、その量子化マトリクスを参照して、対応した逆量子化処理を実施する。
また、逆量子化・逆変換部10は、変換ブロック単位に逆量子化後の圧縮データである変換係数に対する逆直交変換処理(例えば、逆DCT、逆DST、逆KL変換など)を実施して、減算部8から出力された予測差分信号ei nに相当する局所復号予測差分信号を算出して加算部11に出力する(ステップST9)。
変換・量子化部9が量子化処理に量子化マトリクスを用いている場合には、逆量子化処理時においても、その量子化マトリクスを参照して、対応した逆量子化処理を実施する。
また、逆量子化・逆変換部10は、変換ブロック単位に逆量子化後の圧縮データである変換係数に対する逆直交変換処理(例えば、逆DCT、逆DST、逆KL変換など)を実施して、減算部8から出力された予測差分信号ei nに相当する局所復号予測差分信号を算出して加算部11に出力する(ステップST9)。
加算部11は、逆量子化・逆変換部10から局所復号予測差分信号を受けると、その局所復号予測差分信号と、イントラ予測部5により生成されたイントラ予測画像PINTRAi n、イントラブロックコピー予測部6により生成されたイントラブロックコピー予測画像PICOPYi n、又は、動き補償予測部7により生成されたインター予測画像PINTERi nのいずれかを加算することで、局所復号画像を算出する(ステップST10)。
なお、加算部11は、その局所復号画像をループフィルタ部13に出力するとともに、その局所復号画像をイントラ用メモリ12に格納する。
この局所復号画像が、以降のイントラ予測処理及びイントラブロックコピー予測処理の際に用いられる符号化済みの画像信号になる。
なお、加算部11は、その局所復号画像をループフィルタ部13に出力するとともに、その局所復号画像をイントラ用メモリ12に格納する。
この局所復号画像が、以降のイントラ予測処理及びイントラブロックコピー予測処理の際に用いられる符号化済みの画像信号になる。
ループフィルタ部13は、加算部11から局所復号画像を受けると、その局所復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の局所復号画像を動き補償予測フレームメモリ14に格納する(ステップST11)。
具体的には、変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
具体的には、変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
ただし、ループフィルタ部13は、上記のデブロッキングフィルタ処理、画素適応オフセット処理、適応フィルタ処理のそれぞれについて、処理を行うか否かを決定し、各処理の有効フラグをシーケンスレベルヘッダの一部及びスライスレベルヘッダの一部として可変長符号化部15に出力する。なお、上記のフィルタ処理を複数使用する際は、各フィルタ処理を順番に実施する。図11は複数のフィルタ処理を用いる場合のループフィルタ部13の構成例を示している。
一般に使用するフィルタ処理の種類が多いほど、画像品質は向上するが、一方で処理負荷は高くなる。即ち、画像品質と処理負荷はトレードオフの関係にある。また、各フィルタ処理の画像品質改善効果はフィルタ処理対象画像の特性によって異なる。したがって、画像符号化装置が許容する処理負荷や符号化処理対象画像の特性にしたがって使用するフィルタ処理を決めればよい。
一般に使用するフィルタ処理の種類が多いほど、画像品質は向上するが、一方で処理負荷は高くなる。即ち、画像品質と処理負荷はトレードオフの関係にある。また、各フィルタ処理の画像品質改善効果はフィルタ処理対象画像の特性によって異なる。したがって、画像符号化装置が許容する処理負荷や符号化処理対象画像の特性にしたがって使用するフィルタ処理を決めればよい。
ここで、デブロッキングフィルタ処理では、ブロック境界にかけるフィルタ強度の選択に用いる各種パラメータを初期値から変更することができる。変更する場合には、そのパラメータをヘッダ情報として可変長符号化部15に出力する。
画素適応オフセット処理では、最初に、画像を複数のブロックに分割し、そのブロック単位に、オフセット処理を行わない場合もクラス分類手法の一つとして定義して、予め用意している複数のクラス分類手法の中から、1つのクラス分類手法を選択する。
次に、選択したクラス分類手法によってブロック内の各画素をクラス分類し、クラス毎に符号化歪みを補償するオフセット値を算出する。
最後に、局所復号画像の画素値に対して、そのオフセット値を加算する処理を行うことで局所復号画像の画像品質を改善する。
次に、選択したクラス分類手法によってブロック内の各画素をクラス分類し、クラス毎に符号化歪みを補償するオフセット値を算出する。
最後に、局所復号画像の画素値に対して、そのオフセット値を加算する処理を行うことで局所復号画像の画像品質を改善する。
クラス分類手法としては、局所復号画像の画素値の大きさで分類する手法(BO手法と呼ぶ)や、エッジの方向毎に各画素の周囲の状況(エッジ部か否か等)に応じて分類する手法(EO手法と呼ぶ)がある。
これらの手法は、予め画像符号化装置及び画像復号装置で共通に用意されており、例えば図14に示すように、オフセット処理を行わない場合もクラス分類手法の一つとして定義して、これらの手法のうち、どの手法でクラス分類を行うかを示すインデックスを上記ブロック単位に選択する。
これらの手法は、予め画像符号化装置及び画像復号装置で共通に用意されており、例えば図14に示すように、オフセット処理を行わない場合もクラス分類手法の一つとして定義して、これらの手法のうち、どの手法でクラス分類を行うかを示すインデックスを上記ブロック単位に選択する。
したがって、画素適応オフセット処理は、ブロックの分割情報、ブロック単位のクラス分類手法を示すインデックス、ブロック単位のオフセット情報をヘッダ情報として可変長符号化部15に出力する。
なお、画素適応オフセット処理において、例えば最大符号化ブロックといった固定サイズのブロック単位に常に分割して、そのブロック毎にクラス分類手法を選択して、クラス毎の適応オフセット処理を行ってもよい。この場合、上記ブロック分割情報が不要となり、ブロック分割情報に要する符号量分だけ符号量が削減され、符号化効率を高めることができる。
なお、画素適応オフセット処理において、例えば最大符号化ブロックといった固定サイズのブロック単位に常に分割して、そのブロック毎にクラス分類手法を選択して、クラス毎の適応オフセット処理を行ってもよい。この場合、上記ブロック分割情報が不要となり、ブロック分割情報に要する符号量分だけ符号量が削減され、符号化効率を高めることができる。
また、適応フィルタ処理では、局所復号画像を所定の手法でクラス分類し、各クラスに属する領域(局所復号画像)毎に、重畳されている歪みを補償するフィルタを設計し、そのフィルタを用いて、当該局所復号画像のフィルタ処理を実施する。
そして、クラス毎に設計したフィルタをヘッダ情報として可変長符号化部15に出力する。
ここで、クラス分類手法としては、画像を空間的に等間隔に区切る簡易な手法や、ブロック単位に画像の局所的な特性(分散など)に応じて分類する手法がある。また、適応フィルタ処理で使用するクラス数は、予め画像符号化装置及び画像復号装置で共通の値に設定してもよいし、符号化すべきパラメータの一つとしてもよい。
前者と比較して後者の方が、使用するクラス数を自由に設定することができるため、画像品質改善効果が上がるが、一方でクラス数を符号化するために、その分の符号量が増加する。
そして、クラス毎に設計したフィルタをヘッダ情報として可変長符号化部15に出力する。
ここで、クラス分類手法としては、画像を空間的に等間隔に区切る簡易な手法や、ブロック単位に画像の局所的な特性(分散など)に応じて分類する手法がある。また、適応フィルタ処理で使用するクラス数は、予め画像符号化装置及び画像復号装置で共通の値に設定してもよいし、符号化すべきパラメータの一つとしてもよい。
前者と比較して後者の方が、使用するクラス数を自由に設定することができるため、画像品質改善効果が上がるが、一方でクラス数を符号化するために、その分の符号量が増加する。
ステップST3〜ST10の処理は、階層的に分割された全ての符号化ブロックBnに対する処理が完了するまで繰り返し実施され、全ての符号化ブロックBnに対する処理が完了すると、ステップST14の処理に移行する(ステップST12,ST13)。
可変長符号化部15は、変換・量子化部9から出力された圧縮データと、符号化制御部1から出力された最大符号化ブロック内のブロック分割情報(図6(b)を例とする4分木情報)、符号化モードm(Bn)及び予測差分符号化パラメータと、符号化制御部1から出力されたイントラ予測パラメータ(符号化モードがイントラ符号化モードである場合)、イントラブロックコピー予測パラメータ(符号化モードがイントラブロックコピー符号化モードである場合)又はインター予測パラメータ(符号化モードがインター符号化モードである場合)と、色信号間予測フラグを含む色信号間予測パラメータと、動き補償予測部7から出力された動きベクトル(符号化モードがインター符号化モードである場合)とを可変長符号化し、それらの符号化結果を示す符号化データを生成する(ステップST14)。
その際、量子化された直交変換係数である圧縮データの符号化手法として、変換ブロックをさらにCoefficient Group(CG)と呼ばれる4×4画素単位のブロック(符号化サブブロック)に分割して、CG単位に係数の符号化処理を実施する。
図15は16×16画素の変換ブロックにおける係数の符号化順(スキャン順)を示している。
このように、4×4画素単位の16個のCGを右下のCGから順に符号化処理し、さらに、各CGはCG内の16個の係数を右下の係数から順に符号化する。
図15は16×16画素の変換ブロックにおける係数の符号化順(スキャン順)を示している。
このように、4×4画素単位の16個のCGを右下のCGから順に符号化処理し、さらに、各CGはCG内の16個の係数を右下の係数から順に符号化する。
具体的には、まず、CG内の16個の係数の中に有意(非零)係数が存在するか否かのフラグを符号化し、次に、CG内に有意(非零)係数が存在する場合のみ、CG内の各係数が有意(非零)係数であるかを上記順に符号化し、最後に有意(非零)係数に対して、その係数値情報を順に符号化する。これをCG単位に上記順に行う。
その際、有意(非零)係数がなるべく連続で発生するように偏るスキャン順とした方がエントロピー符号化による符号化効率を高めることができる。
直交変換後の係数は、左上に位置する直流成分をはじめとして、左上に近い程、低い周波数成分の低い係数を表すことから、図16に示す例のように、一般的に左上に近いほど有意(非零)係数が多く発生するために、図15に示すように、右下から順に符号化することで効率的に符号化することができる。
なお、上記では16×16画素の変換ブロックについて説明したが、8×8画素や32×32画素の変換ブロック等、16×16画素以外のブロックサイズにおいてもCG(符号化サブブロック)単位の符号化処理を実施するものとする。
また、イントラ予測が選択されている4×4画素と8×8画素の変換ブロックについては、イントラ予測モードのインデックスに応じて、図15のスキャン順ではなく図19に示すスキャン順で処理を行う。これはイントラ予測の方向によって予測差分信号の周波数成分の分布が異なる傾向があるためである。
その際、有意(非零)係数がなるべく連続で発生するように偏るスキャン順とした方がエントロピー符号化による符号化効率を高めることができる。
直交変換後の係数は、左上に位置する直流成分をはじめとして、左上に近い程、低い周波数成分の低い係数を表すことから、図16に示す例のように、一般的に左上に近いほど有意(非零)係数が多く発生するために、図15に示すように、右下から順に符号化することで効率的に符号化することができる。
なお、上記では16×16画素の変換ブロックについて説明したが、8×8画素や32×32画素の変換ブロック等、16×16画素以外のブロックサイズにおいてもCG(符号化サブブロック)単位の符号化処理を実施するものとする。
また、イントラ予測が選択されている4×4画素と8×8画素の変換ブロックについては、イントラ予測モードのインデックスに応じて、図15のスキャン順ではなく図19に示すスキャン順で処理を行う。これはイントラ予測の方向によって予測差分信号の周波数成分の分布が異なる傾向があるためである。
また、可変長符号化部15は、図13に例示するように、符号化ビットストリームのヘッダ情報として、シーケンスレベルヘッダ、ピクチャレベルヘッダを符号化し、ピクチャデータと共に符号化ビットストリームを生成する。
ただし、ピクチャデータは1以上のスライスデータから構成され、各スライスデータはスライスレベルヘッダと当該スライス内にある上記符号化データをまとめたものである。ピクチャデータはスライスデータの他に補足情報を示すヘッダ情報を含む場合もある。
ただし、ピクチャデータは1以上のスライスデータから構成され、各スライスデータはスライスレベルヘッダと当該スライス内にある上記符号化データをまとめたものである。ピクチャデータはスライスデータの他に補足情報を示すヘッダ情報を含む場合もある。
シーケンスレベルヘッダは、画像サイズ、色信号フォーマット、輝度信号や色差信号の信号値のビット深度、シーケンス単位でのループフィルタ部13における各フィルタ処理(適応フィルタ処理、画素適応オフセット処理、デブロッキングフィルタ処理)の有効フラグ、量子化マトリクスの有効フラグなど、一般的にシーケンス単位に共通となるヘッダ情報をまとめたものである。
ピクチャレベルヘッダは、参照するシーケンスレベルヘッダのインデックスや動き補償時の参照ピクチャ数、エントロピー符号化の確率テーブル初期化フラグ等のピクチャ単位で設定するヘッダ情報をまとめたものである。
スライスレベルヘッダは、当該スライスがピクチャのどの位置にあるかを示す位置情報、どのピクチャレベルヘッダを参照するかを示すインデックス、スライスの符号化タイプ(オールイントラ符号化、インター符号化など)、ループフィルタ部13における各フィルタ処理(適応フィルタ処理、画素適応オフセット処理、デブロッキングフィルタ処理)を行うか否かを示すフラグなどといったスライス単位のパラメータをまとめたものである。
ピクチャレベルヘッダは、参照するシーケンスレベルヘッダのインデックスや動き補償時の参照ピクチャ数、エントロピー符号化の確率テーブル初期化フラグ等のピクチャ単位で設定するヘッダ情報をまとめたものである。
スライスレベルヘッダは、当該スライスがピクチャのどの位置にあるかを示す位置情報、どのピクチャレベルヘッダを参照するかを示すインデックス、スライスの符号化タイプ(オールイントラ符号化、インター符号化など)、ループフィルタ部13における各フィルタ処理(適応フィルタ処理、画素適応オフセット処理、デブロッキングフィルタ処理)を行うか否かを示すフラグなどといったスライス単位のパラメータをまとめたものである。
各ヘッダ情報とピクチャデータはNALユニットによって識別される。
具体的には、シーケンスパラメータセット(上記シーケンスレベルヘッダに相当)、ピクチャパラメータヘッダ(上記ピクチャレベルヘッダに相当)、スライスデータはそれぞれ固有のNALユニットタイプとして定義され、NALユニットタイプの識別情報(インデックス)と共に符号化される。
補足情報についても存在する場合には、固有のNALユニットとして定義される。また、上記ピクチャデータはアクセスユニットとして定義され、スライスデータを示すNALユニットや補足情報を示すNALユニット等の当該ピクチャに関わるNALユニットをまとめた、各のピクチャのデータアクセスの単位を示している。
具体的には、シーケンスパラメータセット(上記シーケンスレベルヘッダに相当)、ピクチャパラメータヘッダ(上記ピクチャレベルヘッダに相当)、スライスデータはそれぞれ固有のNALユニットタイプとして定義され、NALユニットタイプの識別情報(インデックス)と共に符号化される。
補足情報についても存在する場合には、固有のNALユニットとして定義される。また、上記ピクチャデータはアクセスユニットとして定義され、スライスデータを示すNALユニットや補足情報を示すNALユニット等の当該ピクチャに関わるNALユニットをまとめた、各のピクチャのデータアクセスの単位を示している。
次に、イントラ予測部5におけるイントラ予測処理を詳細に説明する。
イントラ予測部5は、上述したように、予測ブロックPi nのイントラ予測パラメータを参照して、その予測ブロックPi nに対するイントラ予測処理を実施して、イントラ予測画像PINTRAi nを生成するが、ここでは、輝度信号における予測ブロックPi nのイントラ予測画像を生成するイントラ処理について説明する。
イントラ予測部5は、上述したように、予測ブロックPi nのイントラ予測パラメータを参照して、その予測ブロックPi nに対するイントラ予測処理を実施して、イントラ予測画像PINTRAi nを生成するが、ここでは、輝度信号における予測ブロックPi nのイントラ予測画像を生成するイントラ処理について説明する。
図7は符号化ブロックBn内の各予測ブロックPi nが選択可能なイントラ予測モードの一例を示す説明図であり、イントラ予測モードのインデックス値と、そのイントラ予測モードが示す予測方向ベクトルを示している。上記イントラ予測モードのインデックス値がイントラ予測パラメータを示している。
なお、イントラ予測モード数は、処理対象となるブロックのサイズに応じて異なるように構成してもよい。
大きいサイズのブロックでは、イントラ予測の効率が低下するため、選択できるイントラ予測方向数を少なくし、小さいサイズのブロックでは、選択できるイントラ予測方向数を多くするように構成することで演算量を抑制することができる。
なお、イントラ予測モード数は、処理対象となるブロックのサイズに応じて異なるように構成してもよい。
大きいサイズのブロックでは、イントラ予測の効率が低下するため、選択できるイントラ予測方向数を少なくし、小さいサイズのブロックでは、選択できるイントラ予測方向数を多くするように構成することで演算量を抑制することができる。
まず、イントラ予測画像を生成する処理は、処理対象のブロックに隣接する符号化済みの画素を用いることから、上述した通り、変換ブロック単位に行われなくてはならない。
ここで、イントラ予測画像を生成する変換ブロックを予測画像生成ブロックと呼ぶこととする。したがって、イントラ予測部5は、予測画像生成ブロック単位に下記に述べるイントラ予測画像生成処理を実施して、予測ブロックPi nのイントラ予測画像を生成する。
予測画像生成ブロックのサイズをli n×mi n画素とする。
図8はli n=mi n=4の場合の予測画像生成ブロック内の画素の予測値を生成する際に用いる画素の一例を示す説明図である。
図8では、予測画像生成ブロックの上の符号化済みの画素(2×li n+1)個と、左の符号化済みの画素(2×mi n)個を予測に用いる画素としているが、予測に用いる画素は、図8に示す画素より多くても少なくてもよい。
また、図8では、予測画像生成ブロックの近傍の1行又は1列分の画素を予測に用いているが、2行又は2列、あるいは、それ以上の画素を予測に用いてもよい。
ここで、イントラ予測画像を生成する変換ブロックを予測画像生成ブロックと呼ぶこととする。したがって、イントラ予測部5は、予測画像生成ブロック単位に下記に述べるイントラ予測画像生成処理を実施して、予測ブロックPi nのイントラ予測画像を生成する。
予測画像生成ブロックのサイズをli n×mi n画素とする。
図8はli n=mi n=4の場合の予測画像生成ブロック内の画素の予測値を生成する際に用いる画素の一例を示す説明図である。
図8では、予測画像生成ブロックの上の符号化済みの画素(2×li n+1)個と、左の符号化済みの画素(2×mi n)個を予測に用いる画素としているが、予測に用いる画素は、図8に示す画素より多くても少なくてもよい。
また、図8では、予測画像生成ブロックの近傍の1行又は1列分の画素を予測に用いているが、2行又は2列、あるいは、それ以上の画素を予測に用いてもよい。
予測画像生成ブロックが属する予測ブロックPi nに対するイントラ予測モードのインデックス値が0(平面(Planar)予測)の場合には、予測画像生成ブロックの上に隣接する符号化済み画素と、予測画像生成ブロックの左に隣接する符号化済み画素を用いて、これら画素と予測画像生成ブロック内の予測対象画素との距離に応じて内挿した値を予測値として予測画像を生成する。
予測画像生成ブロックが属する予測ブロックPi nに対するイントラ予測モードのインデックス値が1(平均値(DC)予測)の場合には、予測画像生成ブロックの上に隣接する符号化済み画素と、予測画像生成ブロックの左に隣接する符号化済み画素の平均値を予測画像生成ブロック内の画素の予測値として予測画像を生成する。
さらに、予測画像生成ブロックの上端及び左端に位置する図17の領域A,B,Cに対して、ブロック境界を平滑化するフィルタ処理を行って最終的な予測画像とする。例えば、下記の式(1)にしたがって、図18のフィルタの参照画素配置で、下記のフィルタ係数を用いてフィルタ処理を実施する。
・領域A(Pi nの左上の画素)
a0=1/2,a1=1/4,a2=1/4
・領域B(領域A以外のPi nの上端の画素)
a0=3/4,a2=1/4,(a1=0)
・領域C(領域A以外のPi nの左端の画素)
a0=3/4,a1=1/4,(a2=0)
さらに、予測画像生成ブロックの上端及び左端に位置する図17の領域A,B,Cに対して、ブロック境界を平滑化するフィルタ処理を行って最終的な予測画像とする。例えば、下記の式(1)にしたがって、図18のフィルタの参照画素配置で、下記のフィルタ係数を用いてフィルタ処理を実施する。
・領域A(Pi nの左上の画素)
a0=1/2,a1=1/4,a2=1/4
・領域B(領域A以外のPi nの上端の画素)
a0=3/4,a2=1/4,(a1=0)
・領域C(領域A以外のPi nの左端の画素)
a0=3/4,a1=1/4,(a2=0)
ただし、式(1)において、an(n=0,1,2)は参照画素にかかるフィルタ係数、pn(n=0,1,2)はフィルタ処理対象画素p0を含むフィルタの参照画素、S’(p0)はフィルタ処理対象画素p0におけるフィルタ処理後の予測値、S(pn)(n=0,1,2)はフィルタ処理対象画素p0を含む参照画素のフィルタ処理前の予測値を表している。
さらに、上記フィルタ処理を行う予測画像生成ブロックのブロックサイズは限定してもよい。
一般にブロック端のみフィルタ処理を行って予測値を変化させる場合、大きなブロックサイズのブロックでは、フィルタ処理により予測値が変化する領域の占める割合が小さいために、この予測値の変化によって生じた予測差分信号の変化を非常に高い周波数成分で表されることになり、この高周波数成分を符号化するために符号化効率の悪化を生じさせてしまう傾向がある。また、符号化効率を優先して、この高周波数成分を符号化しないようにすることで、ブロック端の予測差分信号の変化を復元できずに、ブロック境界に歪みが生じてしまう傾向がある。
一般にブロック端のみフィルタ処理を行って予測値を変化させる場合、大きなブロックサイズのブロックでは、フィルタ処理により予測値が変化する領域の占める割合が小さいために、この予測値の変化によって生じた予測差分信号の変化を非常に高い周波数成分で表されることになり、この高周波数成分を符号化するために符号化効率の悪化を生じさせてしまう傾向がある。また、符号化効率を優先して、この高周波数成分を符号化しないようにすることで、ブロック端の予測差分信号の変化を復元できずに、ブロック境界に歪みが生じてしまう傾向がある。
一方、小さなブロックサイズのブロックでは、フィルタ処理により予測値が変化する領域の占める割合が大きいために、この予測値の変化によって生じた予測差分信号の変化が大きなブロックサイズのブロックの時のような高い周波数成分で表されることはなく、適切に予測差分信号を符号化することができ、本フィルタ処理によって、ブロック境界の連続性を高めた分、復号画像の品質を高めることができる。
したがって、例えば、32×32画素以上のブロックサイズの予測画像生成ブロックでは、上記フィルタ処理を適用せずに、32×32画素より小さいブロックのみに上記フィルタ処理を適用することで、従来の平均値予測よりも予測性能を向上させながら、演算量の増加を抑えることができる。
したがって、例えば、32×32画素以上のブロックサイズの予測画像生成ブロックでは、上記フィルタ処理を適用せずに、32×32画素より小さいブロックのみに上記フィルタ処理を適用することで、従来の平均値予測よりも予測性能を向上させながら、演算量の増加を抑えることができる。
予測画像生成ブロックに属する予測ブロックPi nに対するイントラ予測モードのインデックス値が26(垂直方向予測)の場合、下記の式(2)から予測画像生成ブロック内の画素の予測値を算出して予測画像を生成する。
ただし、座標(x,y)は予測画像生成ブロック内の左上画素を原点とする相対座標(図9を参照)であり、S’(x,y)は座標(x,y)における予測値、S(x,y)は座標(x,y)における符号化済み画素の画素値(復号された画素値)である。また、算出した予測値が画素値の取り得る値の範囲を超えている場合、予測値がその範囲内に収まるように値を丸めるようにする。
ただし、座標(x,y)は予測画像生成ブロック内の左上画素を原点とする相対座標(図9を参照)であり、S’(x,y)は座標(x,y)における予測値、S(x,y)は座標(x,y)における符号化済み画素の画素値(復号された画素値)である。また、算出した予測値が画素値の取り得る値の範囲を超えている場合、予測値がその範囲内に収まるように値を丸めるようにする。
なお、式(2)の1行目の式は、MPEG−4 AVC/H.264における垂直方向予測の予測値であるS(x,−1)に対し、隣接する符号化済み画素の垂直方向の画素値の変化量S(−1,y)−S(−1,−1)を1/2にした値を加算することで、ブロック境界が平滑化されるようにフィルタ処理したものを予測値とすることを意味しており、式(2)の2行目の式は、MPEG−4 AVC/H.264における垂直方向予測と同じ予測式を示している。
予測画像生成ブロックが属する予測ブロックPi nに対するイントラ予測モードのインデックス値が10(水平方向予測)の場合、下記の式(3)から予測画像生成ブロック内の画素の予測値を算出して予測画像を生成する。
ただし、座標(x,y)は予測画像生成ブロック内の左上画素を原点とする相対座標(図9を参照)であり、S’(x,y)は座標(x,y)における予測値、S(x,y)は座標(x,y)における符号化済み画素の画素値(復号された画素値)である。また、算出した予測値が画素値の取り得る値の範囲を超えている場合、予測値がその範囲内に収まるように値を丸めるようにする。
ただし、座標(x,y)は予測画像生成ブロック内の左上画素を原点とする相対座標(図9を参照)であり、S’(x,y)は座標(x,y)における予測値、S(x,y)は座標(x,y)における符号化済み画素の画素値(復号された画素値)である。また、算出した予測値が画素値の取り得る値の範囲を超えている場合、予測値がその範囲内に収まるように値を丸めるようにする。
なお、式(3)の1行目の式は、MPEG−4 AVC/H.264における水平方向予測の予測値であるS(−1,y)に対し、隣接する符号化済み画素の水平方向の画素値の変化量S(x,−1)−S(−1,−1)を1/2にした値を加算することで、ブロック境界が平滑化されるようにフィルタ処理したものを予測値とすることを意味しており、式(3)の2行目の式は、MPEG−4 AVC/H.264における水平方向予測と同じ予測式を示している。
ただし、式(2)の垂直方向予測、式(3)の水平方向予測を行う予測画像生成ブロックのブロックサイズを限定してもよい。
一般にブロック端のみ予測方向の画素値の変化量に比例する値を加算するフィルタ処理を行うことで予測値を変化させる場合、大きなブロックサイズのブロックでは、上述した予測画像生成ブロックのブロック端のフィルタ処理により予測値が変化する領域の占める割合が小さいために、この予測値の変化によって生じた予測差分信号の変化を非常に高い周波数成分で表されることになり、この高周波数成分を符号化するために符号化効率の悪化を生じさせてしまう傾向がある。また、符号化効率を優先して、この高周波数成分を符号化しないようにすることで、ブロック端の予測差分信号の変化を復元できずにブロック境界に歪みが生じてしまう傾向がある。
一般にブロック端のみ予測方向の画素値の変化量に比例する値を加算するフィルタ処理を行うことで予測値を変化させる場合、大きなブロックサイズのブロックでは、上述した予測画像生成ブロックのブロック端のフィルタ処理により予測値が変化する領域の占める割合が小さいために、この予測値の変化によって生じた予測差分信号の変化を非常に高い周波数成分で表されることになり、この高周波数成分を符号化するために符号化効率の悪化を生じさせてしまう傾向がある。また、符号化効率を優先して、この高周波数成分を符号化しないようにすることで、ブロック端の予測差分信号の変化を復元できずにブロック境界に歪みが生じてしまう傾向がある。
一方、小さなブロックサイズのブロックでは、上記フィルタ処理により予測値が変化する領域の占める割合が大きいために、この予測値の変化によって生じた予測差分信号の変化が大きなブロックサイズのブロックの時のような高い周波数成分で表されることはなく、適切に予測差分信号を符号化することができ、本フィルタ処理によってブロック境界の連続性を高めた分、復号画像の品質を高めることができる。
したがって、例えば、32×32画素以上のブロックサイズの予測画像生成ブロックでは、予測対象画素の座標によらず、式(2)及び式(3)の2行目の式を常に用いるようにし(予測画像生成ブロックのブロック端のフィルタ処理を行わないことにする)、32×32画素より小さいブロックのみに、上記フィルタ処理を行う式(2)及び式(3)を適用することで、従来の垂直方向予測、水平方向予測よりも予測性能を向上させながら、演算量の増加を抑えることができる。
したがって、例えば、32×32画素以上のブロックサイズの予測画像生成ブロックでは、予測対象画素の座標によらず、式(2)及び式(3)の2行目の式を常に用いるようにし(予測画像生成ブロックのブロック端のフィルタ処理を行わないことにする)、32×32画素より小さいブロックのみに、上記フィルタ処理を行う式(2)及び式(3)を適用することで、従来の垂直方向予測、水平方向予測よりも予測性能を向上させながら、演算量の増加を抑えることができる。
イントラ予測モードのインデックス値が0(平面予測)、1(平均値予測)、26(垂直方向予測)、10(水平方向予測)以外の場合には、インデックス値が示す予測方向ベクトルυp=(dx,dy)に基づいて、予測画像生成ブロック内の画素の予測値を生成する。
図9に示すように、予測画像生成ブロックの左上画素を原点として、予測画像生成ブロック内の相対座標を(x,y)と設定すると、予測に用いる参照画素の位置は、下記のLと隣接画素の交点になる。
ただし、kは負の実数である。
図9に示すように、予測画像生成ブロックの左上画素を原点として、予測画像生成ブロック内の相対座標を(x,y)と設定すると、予測に用いる参照画素の位置は、下記のLと隣接画素の交点になる。
ただし、kは負の実数である。
参照画素が整数画素位置にある場合には、その整数画素を予測対象画素の予測値とし、参照画素が整数画素位置にない場合には、参照画素に隣接する整数画素から生成される補間画素を予測値とする。
図8の例では、参照画素は整数画素位置にないので、参照画素に隣接する2画素から内挿したものを予測値とする。なお、隣接する2画素のみではなく、隣接する2画素以上の画素から補間画素を生成して予測値としてもよい。
補間処理に用いる画素を多くすることで補間画素の補間精度を向上させる効果がある一方、補間処理に要する演算の複雑度が増加することから、演算負荷が大きくても高い符号化性能を要求する画像符号化装置の場合には、より多くの画素から補間画素を生成するようにした方がよい。
図8の例では、参照画素は整数画素位置にないので、参照画素に隣接する2画素から内挿したものを予測値とする。なお、隣接する2画素のみではなく、隣接する2画素以上の画素から補間画素を生成して予測値としてもよい。
補間処理に用いる画素を多くすることで補間画素の補間精度を向上させる効果がある一方、補間処理に要する演算の複雑度が増加することから、演算負荷が大きくても高い符号化性能を要求する画像符号化装置の場合には、より多くの画素から補間画素を生成するようにした方がよい。
以上に述べた処理によって、予測画像生成ブロック単位に予測ブロックPi n内の輝度信号の全ての画素に対する予測画素を生成して、イントラ予測画像PINTRAi nを出力する。
なお、イントラ予測画像PINTRAi nの生成に用いられたイントラ予測パラメータ(イントラ予測モード)は、ビットストリームに多重化するために可変長符号化部15に出力される。
なお、イントラ予測画像PINTRAi nの生成に用いられたイントラ予測パラメータ(イントラ予測モード)は、ビットストリームに多重化するために可変長符号化部15に出力される。
なお、先に説明したMPEG−4 AVC/H.264における8×8画素のブロックのイントラ予測時に参照画素に対して施される平滑化処理と同様に、イントラ予測部5において、予測画像生成ブロックの予測画像を生成する際の参照画素を、予測画像生成ブロックに隣接する符号化済み画素を平滑化処理した画素とするように構成した場合であっても、上述の例と同様の予測画像に対するフィルタ処理を行うことができる。このようにすることで参照画素へのフィルタ処理による参照画素のノイズが除去され、これを用いて予測を行うことで予測の精度高めることができる。
あるいは、上記参照画素へのフィルタ処理は予測画像へのフィルタ処理を行う平均値予測、垂直方向予測、水平方向予測以外の予測の際のみ実施するようにしてもよい。このようにすることで、各予測モードに対して最大で1つのフィルタ処理しか行わずに済み、演算量の増加を抑えることができる。
あるいは、上記参照画素へのフィルタ処理は予測画像へのフィルタ処理を行う平均値予測、垂直方向予測、水平方向予測以外の予測の際のみ実施するようにしてもよい。このようにすることで、各予測モードに対して最大で1つのフィルタ処理しか行わずに済み、演算量の増加を抑えることができる。
上記では、輝度信号の予測画像生成処理について説明したが、色差成分に対する予測画像は次のように生成する。
予測ブロックPi nの色差信号に対して、色差信号のイントラ予測パラメータ(イントラ予測モード)に基づくイントラ予測処理を実施し、イントラ予測画像の生成に用いられたイントラ予測パラメータを可変長符号化部15に出力する。
予測ブロックPi nの色差信号に対して、色差信号のイントラ予測パラメータ(イントラ予測モード)に基づくイントラ予測処理を実施し、イントラ予測画像の生成に用いられたイントラ予測パラメータを可変長符号化部15に出力する。
図23は色差信号のイントラ予測パラメータ(インデックス値)と色差イントラ予測モードの対応例を示す説明図である。
色差信号のイントラ予測パラメータが、輝度信号に対するイントラ予測モードと同じ予測モードを用いる旨を示している場合(イントラ予測パラメータが輝度色差共通イントラ予測モード(DMモード)を示している場合)、輝度信号と同じフレーム内予測を実施して、色差信号の予測画像を生成する。
色差信号のイントラ予測パラメータが、輝度信号に対するイントラ予測モードと同じ予測モードを用いる旨を示している場合(イントラ予測パラメータが輝度色差共通イントラ予測モード(DMモード)を示している場合)、輝度信号と同じフレーム内予測を実施して、色差信号の予測画像を生成する。
また、色差信号のイントラ予測パラメータが、垂直方向予測モード又は水平方向予測モードを示している場合、色差信号に対する方向性予測を実施して、色差信号の予測画像を生成する。
入力信号フォーマットがYUV4:2:2信号である場合、図26に示すように、輝度信号が正方ブロックであれば、色差信号は輝度信号と比較して水平方向の画素数が1/2となる長方形のブロックとなる。したがって、図27に示すように、YUV4:4:4信号をYUV4:2:2信号に変換した際に、輝度信号と色差信号で同一方向の予測となるようにするためには、YUV4:2:2信号上では、垂直方向予測と水平方向予測以外の方向性予測の場合には、色差信号の予測方向が輝度信号の予測方向と異なることとなる。
具体的には、図28に示すように、輝度信号の予測方向ベクトルをvL=(dxL,dyL)とした場合、色差信号の予測方向ベクトルは、vC=(dxL/2,dyL)となる。即ち、図29に示すように、予測方向の角度をθとした場合、輝度信号の予測方向の角度をθL、色差信号の予測方向の角度をθCとして、tanθC=2tanθLの関係となる予測方向で予測する必要がある。
具体的には、図28に示すように、輝度信号の予測方向ベクトルをvL=(dxL,dyL)とした場合、色差信号の予測方向ベクトルは、vC=(dxL/2,dyL)となる。即ち、図29に示すように、予測方向の角度をθとした場合、輝度信号の予測方向の角度をθL、色差信号の予測方向の角度をθCとして、tanθC=2tanθLの関係となる予測方向で予測する必要がある。
したがって、輝度信号と色差信号で同一方向の予測を行う上記DMモードを正しく実施できるようにするために、入力信号フォーマットがYUV4:2:2信号である場合、輝度信号に使用したイントラ予測モードのインデックスを色差信号の予測に用いるイントラ予測モードのインデックスに変換し、変換後のインデックスに対応するイントラ予測モードによる色差信号の予測処理を実施する。
図30は図7のイントラ予測モードにおけるイントラ予測モードインデックスの変換例を示している。
図30の変換テーブルは、予測方向の角度がθであるとき(図29を参照)、イントラ予測モードの方向性予測が図31に示すtanθとなる角度である場合、tanθC=2tanθLの関係に最も近い角度θCに変換するテーブルの例である。
変換処理の実現は、上記のように、インデックスの変換テーブルを用意し、その変換テーブルを参照することでインデックスを変換するように構成してもよいし、変換式を用意し、その変換式に従ってインデックスを変換するように構成してもよい。
このように構成することで、方向性予測処理自体を変更することなく、インデックスの変換のみでYUV4:2:2信号のフォーマットに応じた色差信号の適切な予測を実施することができる。
図30は図7のイントラ予測モードにおけるイントラ予測モードインデックスの変換例を示している。
図30の変換テーブルは、予測方向の角度がθであるとき(図29を参照)、イントラ予測モードの方向性予測が図31に示すtanθとなる角度である場合、tanθC=2tanθLの関係に最も近い角度θCに変換するテーブルの例である。
変換処理の実現は、上記のように、インデックスの変換テーブルを用意し、その変換テーブルを参照することでインデックスを変換するように構成してもよいし、変換式を用意し、その変換式に従ってインデックスを変換するように構成してもよい。
このように構成することで、方向性予測処理自体を変更することなく、インデックスの変換のみでYUV4:2:2信号のフォーマットに応じた色差信号の適切な予測を実施することができる。
さらに、色差信号では、平均値(DC)予測、垂直方向予測、水平方向予測について、輝度信号の場合で説明したブロック境界のフィルタ処理を行わずに、MPEG−4 AVC/H.264と同様の予測手法としてもよい。このようにフィルタ処理を行わないことで、予測処理の低演算化を図ることができる。
次に、図3の画像復号装置の処理内容を具体的に説明する。
可変長復号部31は、図1の画像符号化装置により生成された符号化ビットストリームを入力すると、そのビットストリームに対する可変長復号処理を実施して(図4のステップST21)、1フレーム以上のピクチャから構成されるシーケンス単位のヘッダ情報(シーケンスレベルヘッダ)及びピクチャ単位のヘッダ情報(ピクチャレベルヘッダ)などの各ヘッダ情報とピクチャデータを復号する。ただし、ピクチャデータは1以上のスライスデータから構成され、各スライスデータはスライスレベルヘッダと当該スライス内にある符号化データがまとめられているものである。ピクチャデータはスライスデータの他に補足情報を示すヘッダ情報を含む場合もある。
可変長復号部31は、図1の画像符号化装置により生成された符号化ビットストリームを入力すると、そのビットストリームに対する可変長復号処理を実施して(図4のステップST21)、1フレーム以上のピクチャから構成されるシーケンス単位のヘッダ情報(シーケンスレベルヘッダ)及びピクチャ単位のヘッダ情報(ピクチャレベルヘッダ)などの各ヘッダ情報とピクチャデータを復号する。ただし、ピクチャデータは1以上のスライスデータから構成され、各スライスデータはスライスレベルヘッダと当該スライス内にある符号化データがまとめられているものである。ピクチャデータはスライスデータの他に補足情報を示すヘッダ情報を含む場合もある。
このとき、上記ヘッダ情報に含まれる量子化マトリクスの有効フラグが“有効”を示す場合、可変長復号部31は量子化マトリクスパラメータを可変長復号し、量子化マトリクスを特定する。
具体的には、各直交変換サイズの色信号や符号化モード毎に、量子化マトリクスパラメータが初期値として、画像符号化装置及び画像復号装置で、予め共通に用意されている量子化マトリクス、又は、既に復号された量子化マトリクスである(新しい量子化マトリクスでない)ことを示す場合は、量子化マトリクスパラメータに含まれる上記マトリクスの内のどの量子化マトリクスであるかを特定するインデックス情報を参照して量子化マトリクスを特定し、量子化マトリクスパラメータが新しい量子化マトリクスを用いることを示す場合は、量子化マトリクスパラメータに含まれる量子化マトリクスを使用する量子化マトリクスとして特定する。
そして、ピクチャ単位のデータを構成するスライスデータから、スライス分割情報等のスライス単位のヘッダ情報(スライスレベルヘッダ)を復号し、各スライスの符号化データを復号する。
具体的には、各直交変換サイズの色信号や符号化モード毎に、量子化マトリクスパラメータが初期値として、画像符号化装置及び画像復号装置で、予め共通に用意されている量子化マトリクス、又は、既に復号された量子化マトリクスである(新しい量子化マトリクスでない)ことを示す場合は、量子化マトリクスパラメータに含まれる上記マトリクスの内のどの量子化マトリクスであるかを特定するインデックス情報を参照して量子化マトリクスを特定し、量子化マトリクスパラメータが新しい量子化マトリクスを用いることを示す場合は、量子化マトリクスパラメータに含まれる量子化マトリクスを使用する量子化マトリクスとして特定する。
そして、ピクチャ単位のデータを構成するスライスデータから、スライス分割情報等のスライス単位のヘッダ情報(スライスレベルヘッダ)を復号し、各スライスの符号化データを復号する。
また、可変長復号部31は、上記ヘッダ情報から、最大符号化ブロックサイズ及び分割階層数の上限を特定する(ステップST22)。
ただし、分割階層数の上限の代わりに、符号化ブロックの最小ブロックサイズが符号化されている場合、これを復号することで分割階層数の上限を決定する。即ち、最大符号化ブロックを上記最小ブロックサイズまで分割した場合が分割階層数の上限となる。
可変長復号部31は、決定された最大符号化ブロック単位に、図6で示されるような最大符号化ブロックの分割状態を復号する。復号された分割状態に基づき、階層的に符号化ブロックを特定する(ステップST23)。
ただし、分割階層数の上限の代わりに、符号化ブロックの最小ブロックサイズが符号化されている場合、これを復号することで分割階層数の上限を決定する。即ち、最大符号化ブロックを上記最小ブロックサイズまで分割した場合が分割階層数の上限となる。
可変長復号部31は、決定された最大符号化ブロック単位に、図6で示されるような最大符号化ブロックの分割状態を復号する。復号された分割状態に基づき、階層的に符号化ブロックを特定する(ステップST23)。
次に、可変長復号部31は、符号化ブロックに割り当てられている符号化モードを復号する。復号した符号化モードに含まれる情報に基づき、符号化ブロックをさらに1つないし複数の予測処理単位である予測ブロックに分割し、予測ブロック単位に割り当てられている予測パラメータを復号する(ステップST24)。
即ち、可変長復号部31は、符号化ブロックに割り当てられている符号化モードがイントラ符号化モードである場合、符号化ブロックに含まれており、予測処理単位となる1つ以上の予測ブロック毎にイントラ予測パラメータを復号し、符号化ブロックに割り当てられている符号化モードがイントラブロックコピー符号化モードである場合、符号化ブロックに含まれており、予測処理単位となる1つ以上の予測ブロック毎にイントラブロックコピー予測パラメータを復号する。また、符号化ブロックに割り当てられている符号化モードがインター符号化モードである場合、符号化ブロックに含まれており、予測処理単位となる1つ以上の予測ブロック毎にインター予測パラメータ及び動きベクトルを復号する。また、色信号間予測フラグを含む色信号間予測パラメータを復号する(ステップST24)。
さらに、可変長復号部31は、予測差分符号化パラメータに含まれる変換ブロック分割情報に基づき、変換ブロック毎に圧縮データ(変換・量子化後の変換係数)を復号する(ステップST24)。
その際、図1の画像符号化装置の可変長符号化部15での圧縮データの符号化処理と同様に、CG単位の係数の復号処理を実施する。
したがって、図15に示すように、4×4画素単位の16個のCGを右下のCGから順に復号処理し、さらに、各CGはCG内の16個の係数を右下の係数から順に復号していくことになる。
その際、図1の画像符号化装置の可変長符号化部15での圧縮データの符号化処理と同様に、CG単位の係数の復号処理を実施する。
したがって、図15に示すように、4×4画素単位の16個のCGを右下のCGから順に復号処理し、さらに、各CGはCG内の16個の係数を右下の係数から順に復号していくことになる。
具体的には、まず、CG内の16個の係数の中に有意(非零)係数が存在するか否かのフラグを復号し、次に復号したフラグがCG内に有意(非零)係数が存在することを示す場合のみCG内の各係数が有意(非零)係数であるかを上記順に復号し、最後に有意(非零)係数を示す係数に対して、その係数値情報を順に復号する。これをCG単位に上記順に行う。
ただし、スキャン順については、イントラ予測が選択されている4×4画素と8×8画素の変換ブロックの場合、イントラ予測モードのインデックスに応じて、図15のスキャン順ではなく図19に示すスキャン順で処理を行う。
ただし、スキャン順については、イントラ予測が選択されている4×4画素と8×8画素の変換ブロックの場合、イントラ予測モードのインデックスに応じて、図15のスキャン順ではなく図19に示すスキャン順で処理を行う。
切換スイッチ33は、可変長復号部31により可変長復号された符号化モードm(Bn)がイントラ符号化モードであれば(m(Bn)∈INTRAの場合)、可変長復号部31により可変長復号された予測ブロック単位のイントラ予測パラメータをイントラ予測部34に出力し、可変長復号部31により可変長復号された符号化モードm(Bn)がイントラブロックコピー符号化モードであれば(m(Bn)∈ICOPYの場合)、可変長復号部31により可変長復号された予測ブロック単位のイントラブロックコピー予測パラメータをイントラブロックコピー予測部35に出力し、可変長復号部31により可変長復号された符号化モードm(Bn)がインター符号化モードであれば(m(Bn)∈INTERの場合)、可変長復号部31により可変長復号された予測ブロック単位のインター予測パラメータ及び動きベクトルを動き補償予測部36に出力する。
イントラ予測部34は、可変長復号部31により可変長復号された符号化モードm(Bn)がイントラ符号化モード(m(Bn)∈INTRA)である場合(ステップST25)、切換スイッチ33から出力された予測ブロック単位のイントラ予測パラメータを受け取って、図1のイントラ予測部5と同様の手順で、イントラ用メモリ38に格納されている復号画像を参照しながら、上記イントラ予測パラメータを用いた符号化ブロックBn内の各予測ブロックPi nに対するイントラ予測処理を実施して、イントラ予測画像PINTRAi nを生成する(ステップST26)。
また、イントラ予測部34は、輝度信号については、輝度信号に対する上記イントラ予測パラメータを用いたイントラ予測処理(フレーム内予測処理)を実施して、輝度信号の予測画像を生成する。
一方、色差信号については、色信号間予測フラグがOFFである場合(色信号間予測処理の非実施を示している場合)、色差信号のイントラ予測パラメータに基づくイントラ予測処理を実施して、色差信号の予測画像を生成する。
一方、色差信号については、色信号間予測フラグがOFFである場合(色信号間予測処理の非実施を示している場合)、色差信号のイントラ予測パラメータに基づくイントラ予測処理を実施して、色差信号の予測画像を生成する。
図23は色差信号のイントラ予測パラメータ(インデックス値)と色差イントラ予測モードの対応例を示す説明図である。
色差信号のイントラ予測パラメータが、輝度信号に対するイントラ予測モードと同じ予測モードを用いる旨を示している場合(イントラ予測パラメータが輝度色差共通イントラ予測モード(DMモード)を示している場合)、輝度信号と同じフレーム内予測を実施して、色差信号の予測画像を生成する。
色差信号のイントラ予測パラメータが、輝度信号に対するイントラ予測モードと同じ予測モードを用いる旨を示している場合(イントラ予測パラメータが輝度色差共通イントラ予測モード(DMモード)を示している場合)、輝度信号と同じフレーム内予測を実施して、色差信号の予測画像を生成する。
また、色差信号のイントラ予測パラメータが、垂直方向予測モード又は水平方向予測モードを示している場合、色差信号に対する方向性予測を実施して、色差信号の予測画像を生成する。
入力信号フォーマットがYUV4:2:2信号である場合、図26に示すように、輝度信号が正方ブロックであれば、色差信号は輝度信号と比較して水平方向の画素数が1/2となる長方形のブロックとなる。したがって、図27に示すように、YUV4:4:4信号をYUV4:2:2信号に変換した際に、輝度信号と色差信号で同一方向の予測となるようにするためには、YUV4:2:2信号上では、垂直方向予測と水平方向予測以外の方向性予測の場合には、色差信号の予測方向が輝度信号の予測方向と異なることとなる。
具体的には、図28に示すように、輝度信号の予測方向ベクトルをvL=(dxL,dyL)とした場合、色差信号の予測方向ベクトルは、vC=(dxL/2,dyL)となる。即ち、図29に示すように、予測方向の角度をθとした場合、輝度信号の予測方向の角度をθL、色差信号の予測方向の角度をθCとして、tanθC=2tanθLの関係となる予測方向で予測する必要がある。
具体的には、図28に示すように、輝度信号の予測方向ベクトルをvL=(dxL,dyL)とした場合、色差信号の予測方向ベクトルは、vC=(dxL/2,dyL)となる。即ち、図29に示すように、予測方向の角度をθとした場合、輝度信号の予測方向の角度をθL、色差信号の予測方向の角度をθCとして、tanθC=2tanθLの関係となる予測方向で予測する必要がある。
したがって、輝度信号と色差信号で同一方向の予測を行う上記DMモードを正しく実施できるようにするために、入力信号フォーマットがYUV4:2:2信号である場合、輝度信号に使用したイントラ予測モードのインデックスを色差信号の予測に用いるイントラ予測モードのインデックスに変換し、変換後のインデックスに対応するイントラ予測モードによる色差信号の予測処理を実施する。
図30は図7のイントラ予測モードにおけるイントラ予測モードインデックスの変換例を示している。
図30の変換テーブルは、予測方向の角度がθであるとき(図29を参照)、イントラ予測モードの方向性予測が図31に示すtanθとなる角度である場合、tanθC=2tanθLの関係に最も近い角度θCに変換するテーブルの例である。
変換処理の実現は、上記のように、インデックスの変換テーブルを用意し、その変換テーブルを参照することでインデックスを変換するように構成してもよいし、変換式を用意し、その変換式に従ってインデックスを変換するように構成してもよい。
このように構成することで、方向性予測処理自体を変更することなく、インデックスの変換のみでYUV4:2:2信号のフォーマットに応じた色差信号の適切な予測を実施することができる。
図30は図7のイントラ予測モードにおけるイントラ予測モードインデックスの変換例を示している。
図30の変換テーブルは、予測方向の角度がθであるとき(図29を参照)、イントラ予測モードの方向性予測が図31に示すtanθとなる角度である場合、tanθC=2tanθLの関係に最も近い角度θCに変換するテーブルの例である。
変換処理の実現は、上記のように、インデックスの変換テーブルを用意し、その変換テーブルを参照することでインデックスを変換するように構成してもよいし、変換式を用意し、その変換式に従ってインデックスを変換するように構成してもよい。
このように構成することで、方向性予測処理自体を変更することなく、インデックスの変換のみでYUV4:2:2信号のフォーマットに応じた色差信号の適切な予測を実施することができる。
さらに、色差信号では、平均値(DC)予測、垂直方向予測、水平方向予測について、輝度信号の場合で説明したブロック境界のフィルタ処理を行わずに、MPEG−4 AVC/H.264と同様の予測手法として画像符号化装置が構成されている場合、その画像符号化装置から生成される符号化ビットストリームが復号できるように画像復号装置も同様の構成とする。
このようにフィルタ処理を行わないことで、予測処理の低演算化を図ることができる。
このようにフィルタ処理を行わないことで、予測処理の低演算化を図ることができる。
イントラ予測部34は、輝度信号の予測画像の生成については常にイントラ予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、当該予測ブロックの色信号間予測フラグがONである場合(色信号間予測処理の実施を明示している場合)、イントラ予測処理を実施せずに、復号済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。
イントラブロックコピー予測部35は、可変長復号部31により可変長復号された符号化モードm(Bn)がイントラブロックコピー符号化モード(m(Bn)∈ICOPY)である場合(ステップST25)、切換スイッチ33から出力された予測ブロック単位のブロックシフトベクトルを含むイントラブロックコピー予測パラメータを受け取って、イントラ用メモリ38に格納されている復号画像を参照しながら、上記イントラブロックコピー予測パラメータを用いた符号化ブロックBn内の各予測ブロックPi nに対するイントラブロックコピー予測処理を実施して、イントラブロックコピー予測画像PICOPYi nを生成する(ステップST27)。
図1の画像符号化装置において、ブロックシフトベクトルは直前の符号化(復号)済み予測ブロックのブロックシフトベクトル、あるいは当該予測ブロックの周囲の符号化(復号)済み予測ブロックのブロックシフトベクトルとの差分値をイントラブロックコピー予測パラメータの一部として符号化するようにしている場合、イントラブロックコピー予測パラメータに含む差分値と上記ブロックシフトベクトルとを加算して、当該予測ブロックのブロックシフトベクトルを算出する。
このとき、ブロックシフトベクトルが指すブロックが復号済み領域を超えるような参照を可能とするように、復号対象の最大符号化ブロック内の復号前の領域(未復号領域)の画素を図1の画像符号化装置におけるイントラブロックコピー予測部6と同一の手法で定まる画素値で埋める処理を行う。このとき、未復号領域を上記画素値で埋める処理に必要なパラメータがイントラブロックコピー予測パラメータの一部としてビットストリームに含まれる場合は、可変長復号部31により可変長復号された上記パラメータを用いて未復号領域を上記画素値で埋める処理を行う。
色差信号については、輝度信号と同一のベクトルによる予測を実施する。あるいは、輝度信号のベクトルを基準として探索し、輝度信号のベクトルの差分ベクトルを符号化するように図1の画像符号化装置が構成されている場合、可変長復号部31は差分ベクトルを復号して色差信号のベクトルを算出する。
このとき、ブロックシフトベクトルが指すブロックが復号済み領域を超えるような参照を可能とするように、復号対象の最大符号化ブロック内の復号前の領域(未復号領域)の画素を図1の画像符号化装置におけるイントラブロックコピー予測部6と同一の手法で定まる画素値で埋める処理を行う。このとき、未復号領域を上記画素値で埋める処理に必要なパラメータがイントラブロックコピー予測パラメータの一部としてビットストリームに含まれる場合は、可変長復号部31により可変長復号された上記パラメータを用いて未復号領域を上記画素値で埋める処理を行う。
色差信号については、輝度信号と同一のベクトルによる予測を実施する。あるいは、輝度信号のベクトルを基準として探索し、輝度信号のベクトルの差分ベクトルを符号化するように図1の画像符号化装置が構成されている場合、可変長復号部31は差分ベクトルを復号して色差信号のベクトルを算出する。
イントラブロックコピー予測部35は、輝度信号の予測画像の生成については常にイントラブロックコピー予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、当該予測ブロックの色信号間予測フラグがONである場合(色信号間予測処理の実施を明示している場合)、イントラブロックコピー予測処理を実施せずに、復号済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。
動き補償予測部36は、可変長復号部31により可変長復号された符号化モードm(Bn)がインター符号化モード(m(Bn)∈INTER)である場合(ステップST25)、切換スイッチ33から出力された予測ブロック単位の動きベクトルとインター予測パラメータを受け取って、動き補償予測フレームメモリ40に格納されているフィルタ処理後の復号画像を参照しながら、その動きベクトルとインター予測パラメータを用いた符号化ブロックBn内の各予測ブロックPi nに対する動き補償予測処理を実施してインター予測画像PINTERi nを生成する(ステップST28)。
色差信号については、輝度信号と同一のベクトルによる予測を実施する。あるいは、輝度信号のベクトルを基準として探索し、輝度信号のベクトルの差分ベクトルを符号化するように図1の画像符号化装置が構成されている場合、可変長復号部31は差分ベクトルを復号して色差信号のベクトルを算出する。
色差信号については、輝度信号と同一のベクトルによる予測を実施する。あるいは、輝度信号のベクトルを基準として探索し、輝度信号のベクトルの差分ベクトルを符号化するように図1の画像符号化装置が構成されている場合、可変長復号部31は差分ベクトルを復号して色差信号のベクトルを算出する。
動き補償予測部36は、輝度信号の予測画像の生成については常に動き補償予測処理を実施するが、色差信号の予測画像の生成については、各予測ブロックに対して、当該予測ブロックの色信号間予測フラグがONである場合(色信号間予測処理の実施を明示している場合)、動き補償予測処理を実施せずに、復号済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施する。
ここで、イントラ予測部34、イントラブロックコピー予測部35又は動き補償予測部36が、色信号間予測処理を実施して、色差信号の予測画像を生成する際の処理内容を具体的に説明する。
色信号間予測パラメータに含まれている色信号間予測フラグがONである場合、色差信号では、イントラ予測処理、イントラブロックコピー予測処理、動き補償予測処理を行わず、図45に示すように、色信号間ベクトルが指し示す復号済み色信号のブロックを参照して予測画像を生成する。
このとき、図1の画像符号化装置と同一の手法で、参照する復号済み色信号のブロックの画素値と予測対象の色差信号の予測画像の画素値との相関を示す相関パラメータを算出し、その相関パラメータによって補正された対応する復号済み色信号のブロックの画素値を予測対象である色差信号の予測画像の画素値とする。予測画像生成対象ブロックの単位は画像符号化装置と同一の単位(符号化ブロック単位、予測ブロック単位、変換ブロック単位のいずれか)である。
色信号間予測パラメータに含まれている色信号間予測フラグがONである場合、色差信号では、イントラ予測処理、イントラブロックコピー予測処理、動き補償予測処理を行わず、図45に示すように、色信号間ベクトルが指し示す復号済み色信号のブロックを参照して予測画像を生成する。
このとき、図1の画像符号化装置と同一の手法で、参照する復号済み色信号のブロックの画素値と予測対象の色差信号の予測画像の画素値との相関を示す相関パラメータを算出し、その相関パラメータによって補正された対応する復号済み色信号のブロックの画素値を予測対象である色差信号の予測画像の画素値とする。予測画像生成対象ブロックの単位は画像符号化装置と同一の単位(符号化ブロック単位、予測ブロック単位、変換ブロック単位のいずれか)である。
上記の例では、相関パラメータを算出して復号済み色信号のブロックの画素値を補正するとしているが、図1の画像符号化装置が相関パラメータを算出せずに符号化済み色信号のブロックの画素値をそのまま予測画像の画素値とする場合、画像復号装置では、相関パラメータを算出せずに復号済み色信号のブロックの画素値をそのまま予測画像の画素値とする。
なお、入力信号フォーマットがYUV4:2:0フォーマットあるいはYUV4:2:2フォーマットの場合は、図1の画像符号化装置と同様に、参照する復号済み色信号を予測画像生成対象ブロックと同一のサイズとなるようにブロックサイズをスケーリングして参照する。
なお、入力信号フォーマットがYUV4:2:0フォーマットあるいはYUV4:2:2フォーマットの場合は、図1の画像符号化装置と同様に、参照する復号済み色信号を予測画像生成対象ブロックと同一のサイズとなるようにブロックサイズをスケーリングして参照する。
可変長復号部31により可変長復号された色信号間予測パラメータは、色信号間予測が有効か否かを示すシーケンス、ピクチャ、スライスレベルの情報、予測ブロック単位の色信号間予測処理の実施の有無を示す色信号間予測フラグを含んでいる。
色信号間予測処理がOFFのブロックは、輝度信号と同一の予測部(イントラ予測部34、イントラブロックコピー予測部35あるいは動き補償予測部36)で予測を実施する。したがって、イントラ予測部34の色差信号のイントラ予測パラメータのうち、色信号間予測を行わない予測ブロックのイントラ予測パラメータだけが復号され、そのイントラ予測パラメータにしたがってイントラ予測処理が実施される。
同様に、図1の画像符号化装置が色差信号用の差分ベクトルを符号化するように構成している場合、色信号間予測フラグがOFFである場合に限り、イントラブロックコピー予測部35あるいは動き補償予測部36が用いる色差信号用の差分ベクトルが復号される。
色信号間予測処理がOFFのブロックは、輝度信号と同一の予測部(イントラ予測部34、イントラブロックコピー予測部35あるいは動き補償予測部36)で予測を実施する。したがって、イントラ予測部34の色差信号のイントラ予測パラメータのうち、色信号間予測を行わない予測ブロックのイントラ予測パラメータだけが復号され、そのイントラ予測パラメータにしたがってイントラ予測処理が実施される。
同様に、図1の画像符号化装置が色差信号用の差分ベクトルを符号化するように構成している場合、色信号間予測フラグがOFFである場合に限り、イントラブロックコピー予測部35あるいは動き補償予測部36が用いる色差信号用の差分ベクトルが復号される。
また、図1の画像符号化装置が、イントラ予測部34の色差信号のイントラ予測パラメータと色信号間予測フラグを組み合わせて、図48の色差信号のイントラ予測パラメータとして符号化している場合、画像復号装置のイントラ予測部34では、可変長復号部31により可変長復号された色差信号のイントラ予測パラメータから、色信号間予測を実施するか、イントラ予測を行うかを判断する。
上記の例では、予測ブロック単位に色信号間予測処理の実施の有無を選択する場合について説明しているが、図1の画像符号化装置が符号化ブロック単位あるいは最大サイズの符号化ブロック単位に選択を実施するように構成されている場合、画像復号装置では、同一のブロック単位の色信号間予測フラグを復号するように構成する。このようにすることで正しく符号化パラメータを復号することができる。
さらに、可変長復号部31により可変長復号された色信号間予測パラメータとして、色信号間予測フラグがONの場合には、可変長復号部31は参照信号のブロックの位置を示す色信号間ベクトルやどの色信号を参照するかを示す参照信号情報を復号する。ただし、図1の画像符号化装置で上記色信号間ベクトルや上記参照信号情報を用いないように構成している場合、画像復号装置でも、これらパラメータは復号せずに、画像符号化装置と同一の参照信号の、同一の位置のブロックを参照して予測画像を生成する。
上記の例では、予測ブロック単位に色信号間予測処理の実施の有無を選択する場合について説明しているが、図1の画像符号化装置が符号化ブロック単位あるいは最大サイズの符号化ブロック単位に選択を実施するように構成されている場合、画像復号装置では、同一のブロック単位の色信号間予測フラグを復号するように構成する。このようにすることで正しく符号化パラメータを復号することができる。
さらに、可変長復号部31により可変長復号された色信号間予測パラメータとして、色信号間予測フラグがONの場合には、可変長復号部31は参照信号のブロックの位置を示す色信号間ベクトルやどの色信号を参照するかを示す参照信号情報を復号する。ただし、図1の画像符号化装置で上記色信号間ベクトルや上記参照信号情報を用いないように構成している場合、画像復号装置でも、これらパラメータは復号せずに、画像符号化装置と同一の参照信号の、同一の位置のブロックを参照して予測画像を生成する。
逆量子化・逆変換部32は、可変長復号部31から圧縮データ及び予測差分符号化パラメータを受けると、図1の逆量子化・逆変換部10と同様の手順で、その予測差分符号化パラメータに含まれる量子化パラメータ及び変換ブロック分割情報を参照して、変換ブロック単位にその圧縮データを逆量子化する。
このとき、可変長復号部31により可変長復号された各ヘッダ情報を参照し、各ヘッダ情報が、当該スライスで量子化マトリクスを用いて、逆量子化処理を実施することを示している場合は、量子化マトリクスを用いて逆量子化処理を行う。
このとき、可変長復号部31により可変長復号された各ヘッダ情報を参照し、各ヘッダ情報が、当該スライスで量子化マトリクスを用いて、逆量子化処理を実施することを示している場合は、量子化マトリクスを用いて逆量子化処理を行う。
この際、可変長復号部31により可変長復号された各ヘッダ情報を参照して、各直交変換サイズで色信号や符号化モード(イントラ符号化、イントラブロックコピー符号化、インター符号化)毎に使用する量子化マトリクスを特定する。
また、逆量子化・逆変換部32は、変換ブロック単位に逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、図1の逆量子化・逆変換部10から出力された局所復号予測差分信号と同一の復号予測差分信号を算出する(ステップST29)。
また、逆量子化・逆変換部32は、変換ブロック単位に逆量子化後の圧縮データである変換係数に対する逆直交変換処理を実施して、図1の逆量子化・逆変換部10から出力された局所復号予測差分信号と同一の復号予測差分信号を算出する(ステップST29)。
加算部37は、逆量子化・逆変換部32により算出された復号予測差分信号と、イントラ予測部34により生成されたイントラ予測画像PINTRAi n、イントラブロックコピー予測部35により生成されたイントラブロックコピー予測画像PICOPYi n、又は、動き補償予測部36により生成されたインター予測画像PINTERi nのいずれかを加算して復号画像を算出し、その復号画像をループフィルタ部39に出力するとともに、その復号画像をイントラ用メモリ38に格納する(ステップST30)。
この復号画像が、以降のイントラ予測処理及びイントラブロックコピー予測処理の際に用いられる復号済みの画像信号になる。
この復号画像が、以降のイントラ予測処理及びイントラブロックコピー予測処理の際に用いられる復号済みの画像信号になる。
ループフィルタ部39は、全ての符号化ブロックBnに対するステップST23〜ST30の処理が完了すると(ステップST31)、加算部37から出力された復号画像に対して、所定のフィルタ処理を実施して、フィルタ処理後の復号画像を動き補償予測フレームメモリ40に格納する(ステップST32)。
具体的には、変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
ただし、ループフィルタ部39は、上記のデブロッキングフィルタ処理、画素適応オフセット処理、適応フィルタ処理のそれぞれについて、可変長復号部31により可変長復号された各ヘッダ情報を参照して、当該スライスで処理を行うか否かを特定する。
このとき、2つ以上のフィルタ処理を行う場合に、例えば、画像符号化装置のループフィルタ部13が図11のように構成されている場合には、図12に示すようにループフィルタ部39が構成される。
具体的には、変換ブロックの境界や予測ブロックの境界に発生する歪みを低減するフィルタ(デブロッキングフィルタ)処理、画素単位に適応的にオフセットを加算する(画素適応オフセット)処理、ウィーナフィルタ等の線形フィルタを適応的に切り替えてフィルタ処理する適応フィルタ処理などを行う。
ただし、ループフィルタ部39は、上記のデブロッキングフィルタ処理、画素適応オフセット処理、適応フィルタ処理のそれぞれについて、可変長復号部31により可変長復号された各ヘッダ情報を参照して、当該スライスで処理を行うか否かを特定する。
このとき、2つ以上のフィルタ処理を行う場合に、例えば、画像符号化装置のループフィルタ部13が図11のように構成されている場合には、図12に示すようにループフィルタ部39が構成される。
ここで、デブロッキングフィルタ処理では、可変長復号部31により可変長復号されたヘッダ情報を参照し、ブロック境界にかけるフィルタ強度の選択に用いる各種パラメータを初期値から変更する情報が存在する場合には、その変更情報に基づいて、デブロッキングフィルタ処理を実施する。変更情報がない場合は、予め定められた手法に従って行う。
画素適応オフセット処理では、可変長復号部31により可変長復号された画素適応オフセット処理のブロック分割情報に基づいて分割し、そのブロック単位に、可変長復号部31により可変長復号されたブロック単位のクラス分類手法を示すインデックスを参照して、そのインデックスが“オフセット処理を行わない”ことを示すインデックスでない場合、ブロック単位にブロック内の各画素を上記インデックスが示すクラス分類手法に従ってクラス分類する。
なお、クラス分類手法の候補として、ループフィルタ部13の画素適応オフセット処理のクラス分類手法の候補と同一のものが予め用意されている。
なお、クラス分類手法の候補として、ループフィルタ部13の画素適応オフセット処理のクラス分類手法の候補と同一のものが予め用意されている。
そして、ループフィルタ部39は、ブロック単位の各クラスのオフセット値を特定する可変長復号部31により可変長復号されたオフセット情報を参照して、復号画像の画素値にオフセットを加算する処理を行う。
適応フィルタ処理では、可変長復号部31により可変長復号されたクラス毎のフィルタを用いて、図1の画像符号化装置と同一の手法でクラス分類した後に、そのクラス分類情報に基づいてフィルタ処理を行う。
このループフィルタ部39によるフィルタ処理後の復号画像が、動き補償予測用の参照画像となり、また、再生画像となる。
このループフィルタ部39によるフィルタ処理後の復号画像が、動き補償予測用の参照画像となり、また、再生画像となる。
以上で明らかなように、この実施の形態1によれば、画像符号化装置のイントラ予測部5、イントラブロックコピー予測部6又は動き補償予測部7が、各予測ブロックに対して、当該予測ブロックの色信号間予測フラグが色信号間予測処理の実施を明示していれば、イントラ予測処理、イントラブロックコピー予測処理、動き補償予測処理を実施せずに、符号化済みの色信号を参照して、予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施するように構成したので、予測ブロック内の絵柄が特定の非直線な模様や文字などであっても、予測精度を高めて、高い符号化効率を実現することができる効果を奏する。
また、この実施の形態1によれば、上記効果を持つ画像符号化装置及び画像符号化方法が生成する符号化ビットストリームを正しく復号することができる画像復号装置及び画像復号方法が得られる効果を奏する。
実施の形態2.
この実施の形態2では、予測差分信号の色信号間相関除去処理を実施する画像符号化装置及び画像復号装置について説明する。
即ち、上記実施の形態1の画像符号化装置における色差信号の予測差分信号に対して、符号化済み色信号の局所復号予測差分信号との差分値を変換・量子化部9に入力すると共に、逆量子化・逆変換部10で得られる色差信号の局所復号予測差分信号に対して上記符号化済み信号の予測差分信号を加算して最終的な局所復号予測差分信号を得る画像符号化装置を構成する。
また、上記実施の形態1の画像復号装置における逆量子化・逆変換部32で得られる色差信号の復号予測差分信号に対して、この実施の形態2の画像符号化装置と同一の符号化済み色信号の復号予測差分信号を加算して最終的な復号予測差分信号を得る画像復号装置を構成する。
このようにすることで色信号間の予測差分の相関を低減し、色差信号の予測差分信号の符号化に要する符号量を削減することができる。
この実施の形態2では、予測差分信号の色信号間相関除去処理を実施する画像符号化装置及び画像復号装置について説明する。
即ち、上記実施の形態1の画像符号化装置における色差信号の予測差分信号に対して、符号化済み色信号の局所復号予測差分信号との差分値を変換・量子化部9に入力すると共に、逆量子化・逆変換部10で得られる色差信号の局所復号予測差分信号に対して上記符号化済み信号の予測差分信号を加算して最終的な局所復号予測差分信号を得る画像符号化装置を構成する。
また、上記実施の形態1の画像復号装置における逆量子化・逆変換部32で得られる色差信号の復号予測差分信号に対して、この実施の形態2の画像符号化装置と同一の符号化済み色信号の復号予測差分信号を加算して最終的な復号予測差分信号を得る画像復号装置を構成する。
このようにすることで色信号間の予測差分の相関を低減し、色差信号の予測差分信号の符号化に要する符号量を削減することができる。
このとき、画像符号化装置における参照する局所復号予測差分信号は、上記実施の形態1の色信号間予測処理と同様に、周囲の符号化済み画素を用いて相関パラメータを算出して、本相関パラメータにて加工された局所復号予測差分信号を参照するようにしてもよい。このようにすることで、色信号間の予測差分の相関除去精度を改善することができ、符号化効率を高めることができる。この場合、画像復号装置における参照する復号予測差分信号も周囲の復号済み画素を用いて相関パラメータを算出して、本相関パラメータにて加工された復号予測差分信号を参照する。
上記の例では、相関パラメータは周囲の符号化(復号)済み画素を用いて算出するとしているが、相関パラメータは複数の候補を予め用意し、変換ブロック単位に選択して符号化するようにしてもよい。このようにすることで、変換ブロック単位に最適な相関パラメータを利用することができ、符号化効率を高めることができる。この場合、画像復号装置は上記相関パラメータを変換ブロック単位に復号する。
さらに、変換ブロック単位に、上記予測差分信号の色信号間相関除去処理を行うか否かを示すON/OFF情報をフラグ情報として符号化するようにしてもよい。このようにすることで、変換ブロック単位に色信号間相関除去処理を行う場合と行わない場合の2つの中から符号化効率が高い方を選択することができるため、符号化効率を高めることができる。
なお、上記ON/OFF情報は、上記相関パラメータの一部として符号化するようにしてもよい。具体的には、相関パラメータが特定の値の場合(例えば、0)は、上記色信号間相関除去処理を行わないことを示すものとすればよい。
さらに、変換ブロック単位に、上記予測差分信号の色信号間相関除去処理を行うか否かを示すON/OFF情報をフラグ情報として符号化するようにしてもよい。このようにすることで、変換ブロック単位に色信号間相関除去処理を行う場合と行わない場合の2つの中から符号化効率が高い方を選択することができるため、符号化効率を高めることができる。
なお、上記ON/OFF情報は、上記相関パラメータの一部として符号化するようにしてもよい。具体的には、相関パラメータが特定の値の場合(例えば、0)は、上記色信号間相関除去処理を行わないことを示すものとすればよい。
また、上記実施の形態1の色信号間予測処理と同様に、色信号間ベクトルを用意して、本ベクトルの指すブロックを参照するようにしても良い。このとき、色信号間ベクトルは上記実施の形態1の色信号間予測処理と共通でも良いし、独立に持つようにしても良い。独立に用意する場合は、より適応的な制御ができるため予測差分信号の値を一層小さくすることができるが、上記実施の形態1の色信号間予測処理の色信号間ベクトルとは別に符号化する必要があり、画像の特性によって独立にした場合と共通にした場合のどちらが符号化効率が高いのかは異なる。したがって、シーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダの少なくとも一箇所に色信号間ベクトルを用いるか否かのフラグと上記実施の形態1の色信号間予測処理と独立とするか共通とするかのフラグを用意し、画像符号化装置にて上記フラグを符号化するように構成してもよい。このとき、画像復号装置はこれらフラグを復号することで、予測差分信号の色信号間相関除去処理における色信号間ベクトルの有無とその値を識別する。
さらに、上記実施の形態1の色信号間予測処理と同様に、参照する符号化済み色信号を静的、あるいは動的に切り替えるようにしても良い。具体的には、Y(輝度)信号、U信号、V信号の順番で符号化する場合、U信号はY信号、V信号はY信号又はU信号を参照する。このとき、V信号については、Y信号とU信号のどちらを参照するかを画像符号化装置と画像復号装置共通で固定的に構成してもよいし(例えば、常にU信号を参照するように構成する)、どちらを参照するかを切り替え可能として、その切り替え単位毎に参照信号情報を符号化するようにしてもよい。
切り替えの単位は、シーケンス、ピクチャ、スライス単位としてもよいし、符号化ブロック、予測ブロック、変換ブロック等のブロック単位としてもよい。一般に、切り替え単位が細かい程予測効率は高くなる。一方、切り替え単位を大まかにすることで符号化する参照信号情報を符号化する際に発生する符号量を抑えることができる。
さらに、ブロック単位に参照信号を切り替え可能とする場合、シーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダに上記ブロック単位の切り替え処理を有効とするか否かを示すフラグを持つようにしてもよい。このようにすることで、本切り替え処理が効果的な場合のみ有効とするようにして、本切り替え処理が効果的でない場合に上記ブロック単位の参照信号情報を符号化せずに済み、符号化効率を高めることができる。
切り替えの単位は、シーケンス、ピクチャ、スライス単位としてもよいし、符号化ブロック、予測ブロック、変換ブロック等のブロック単位としてもよい。一般に、切り替え単位が細かい程予測効率は高くなる。一方、切り替え単位を大まかにすることで符号化する参照信号情報を符号化する際に発生する符号量を抑えることができる。
さらに、ブロック単位に参照信号を切り替え可能とする場合、シーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダに上記ブロック単位の切り替え処理を有効とするか否かを示すフラグを持つようにしてもよい。このようにすることで、本切り替え処理が効果的な場合のみ有効とするようにして、本切り替え処理が効果的でない場合に上記ブロック単位の参照信号情報を符号化せずに済み、符号化効率を高めることができる。
上記の例では、上記の参照信号情報について、Y信号とU信号のどちらを参照するかを決定する情報として説明したが、さらにY信号とU信号を共に参照して重み付き平均によって参照ブロックを生成する場合も含めるようにしてもよい。即ち、設定した切り替え単位毎に、Y信号のみを参照して予測画像を生成するか、U信号のみを参照して予測画像を生成するか、Y信号とU信号を共に参照して予測画像を生成するかを選択するようにする。このようにすることで、より予測差分信号を小さくすることができ、符号化効率を高めることができる。
また、画像符号化装置と画像復号装置共通で固定的に参照色信号を設定するように構成する場合でも、上記参照信号情報を符号化するように構成する場合でも、上記実施の形態1の色信号間予測処理と共通としても良いし、独立に設定するようにしても良い。独立に用意する場合は、より適応的な制御ができるため予測差分信号の値を一層小さくすることができる。ただし、上記参照信号情報を符号化するように構成する場合では、上記実施の形態1の色信号間予測処理の参照信号情報とは別に参照信号情報を符号化する必要があり、画像の特性によって独立にした場合と共通にした場合のどちらが符号化効率が高いのかは異なる。したがって、シーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダの少なくとも一箇所に上記実施の形態1の色信号間予測処理と独立とするか共通とするかのフラグを用意し、画像符号化装置にて上記フラグを符号化するように構成してもよい。このとき、画像復号装置は本フラグを復号することで、予測差分信号の色信号間相関除去処理における参照信号情報を識別する。
また、上記実施の形態1の色信号間予測処理と、上記予測差分信号の色信号間相関除去処理との組み合わせとして、上記実施の形態1の色信号間予測処理を実施するブロックでは、上記予測差分信号の色信号間相関除去処理を実施しないものとしてもよい。このようにすることで、色信号間予測処理を実施するブロックでは、予測差分信号の色信号間相関除去処理に関わる符号化パラメータ(相関パラメータ、ON/OFF情報など)を符号化する必要がないため、符号化量を削減することができる。この場合、画像復号装置では、可変長復号部31により可変長復号された色信号間予測パラメータが色信号間予測処理を行わないことを示している場合のみ、可変長復号部31が予測差分信号の色信号間相関除去処理に関わる符号化パラメータを復号する。
この場合、上記実施の形態1の色信号間予測処理のブロック単位のON/OFF情報と上記予測差分信号の色信号間相関除去処理のブロック単位のON/OFF情報を統合してもよい。具体的には、上記実施の形態1の色信号間予測処理を行う場合、上記予測差分信号の色信号間相関除去処理を行う場合、両処理共に実施しない場合をインデックス情報とする(たとえば順に、インデックス2、1、0とする)。このとき、両処理のON/OFF情報の切り替え単位は統一しなくてはならない。すなわち、この場合、ON/OFF処理は符号化ブロック、予測ブロック、変換ブロック単位のいずれかに統一する。あるいは独自のブロック単位としても良い。このようにすることで、両処理に最適なブロックサイズを設定することができる。
この場合、上記実施の形態1の色信号間予測処理のブロック単位のON/OFF情報と上記予測差分信号の色信号間相関除去処理のブロック単位のON/OFF情報を統合してもよい。具体的には、上記実施の形態1の色信号間予測処理を行う場合、上記予測差分信号の色信号間相関除去処理を行う場合、両処理共に実施しない場合をインデックス情報とする(たとえば順に、インデックス2、1、0とする)。このとき、両処理のON/OFF情報の切り替え単位は統一しなくてはならない。すなわち、この場合、ON/OFF処理は符号化ブロック、予測ブロック、変換ブロック単位のいずれかに統一する。あるいは独自のブロック単位としても良い。このようにすることで、両処理に最適なブロックサイズを設定することができる。
上記予測差分信号の色信号間相関除去処理を制御するパラメータとして、本処理の有効フラグ(上位ヘッダ残差色信号間予測有効フラグ)をシーケンスレベルヘッダ、ピクチャレベルヘッダ、スライスレベルヘッダのうち、少なくとも1つのヘッダで符号化するようにしてもよい。このようにすることで、予測差分信号の色信号間相関除去処理が効果的でない場合に無効とすることができ、符号化効率の低下を抑制することができる。この場合、画像復号装置では、可変長復号部31が上記上位ヘッダ残差色信号間予測有効フラグを復号し、上記上位ヘッダ残差色信号間予測有効フラグが有効を示す場合のみ、予測差分信号の色信号間相関除去処理を有効とし、変換ブロック単位の上記ON/OFF情報を復号する。
さらに、上記上位ヘッダ残差色信号間予測有効フラグについて、ピクチャを分割するサブピクチャの単位に設けるようにしても良い。具体的には、非特許文献1記載のTileやWavefront Parallel Processingのサブピクチャの分割単位に上記上位ヘッダ残差色信号間予測有効フラグを設けることで、色信号間予測が効果的な領域のみ有効とすることが可能となり符号量の増加を抑制しつつ高精度な予測が実現できる。
さらに、上記上位ヘッダ残差色信号間予測有効フラグについて、ピクチャを分割するサブピクチャの単位に設けるようにしても良い。具体的には、非特許文献1記載のTileやWavefront Parallel Processingのサブピクチャの分割単位に上記上位ヘッダ残差色信号間予測有効フラグを設けることで、色信号間予測が効果的な領域のみ有効とすることが可能となり符号量の増加を抑制しつつ高精度な予測が実現できる。
さらに、予測差分信号の色信号間相関除去処理を有効とするか否かを示すシーケンスレベル、ピクチャレベル、スライスレベル、サブピクチャレベルのフラグと、上記実施の形態1の色信号間予測処理を有効とするか否かを示すシーケンスレベル、ピクチャレベル、スライスレベル、サブピクチャレベルのフラグを組み合わせてもよい。具体的には、予測差分信号の色信号間相関除去処理と色信号間予測処理の有効・無効の組み合わせ(有効・有効、有効・無効、無効・有効、無効・無効の全4種類)を示すインデックスとして符号化する。この場合、画像復号装置では、可変長復号部31が上記のインデックスを復号し、そのインデックスに基づいて、予測差分信号の色信号間相関除去処理と色信号間予測処理の有効・無効を決定する。
また、上記予測差分信号の色信号間相関除去処理を実施する変換ブロックの直交変換処理を常にDSTとするようにしても良い。予測差分信号の色信号間相関除去処理を実施した変換ブロックの予測差分信号は信号間の相関が非常に低くなるため、DCTよりもDSTの方が効率的である可能性が高く、DCTを用いるよりも符号化効率を高めることができる。
あるいは、DCTとDSTをブロックサイズ、符号化モード、イントラ予測パラメータ、イントラブロックコピー予測パラメータ、動き補償予測パラメータ等に応じて切り替えるようにしても良い。例えば、対象とする変換ブロックのサイズが特定のブロックサイズ(しきい値)より小さい場合、DSTを行うようにする、等が考えられる。このようにすることで、対象とする変換ブロックの特性に応じた変換が実現でき、符号化効率を高めることができる。他にも、DCTとDSTのうち符号化効率が高くなる方を選択し、その選択情報を符号化するようにしても良い。このようにすることで、変換ブロック毎にDCTとDSTから適切な方を用いて変換することができ、符号化効率を高めることができる。
上記以外の構成として、予測差分信号の色信号間相関除去処理を実施した変換ブロックの予測差分信号に適切なKL変換を予め設計する、または動的に学習して設計するようにしても良い。このようにすることで、予測差分信号の色信号間相関除去処理を実施した変換ブロックの予測差分信号に一層適した基底による変換が実現でき、符号化効率を高めることができる。
なお、上記で説明した事項以外、この実施の形態2は、上記実施の形態1と同じ構成、処理を実施する。
あるいは、DCTとDSTをブロックサイズ、符号化モード、イントラ予測パラメータ、イントラブロックコピー予測パラメータ、動き補償予測パラメータ等に応じて切り替えるようにしても良い。例えば、対象とする変換ブロックのサイズが特定のブロックサイズ(しきい値)より小さい場合、DSTを行うようにする、等が考えられる。このようにすることで、対象とする変換ブロックの特性に応じた変換が実現でき、符号化効率を高めることができる。他にも、DCTとDSTのうち符号化効率が高くなる方を選択し、その選択情報を符号化するようにしても良い。このようにすることで、変換ブロック毎にDCTとDSTから適切な方を用いて変換することができ、符号化効率を高めることができる。
上記以外の構成として、予測差分信号の色信号間相関除去処理を実施した変換ブロックの予測差分信号に適切なKL変換を予め設計する、または動的に学習して設計するようにしても良い。このようにすることで、予測差分信号の色信号間相関除去処理を実施した変換ブロックの予測差分信号に一層適した基底による変換が実現でき、符号化効率を高めることができる。
なお、上記で説明した事項以外、この実施の形態2は、上記実施の形態1と同じ構成、処理を実施する。
実施の形態3.
この実施の形態3では、上記実施の形態1または上記実施の形態2に対して、色信号間予測処理の相関パラメータを複数の候補から選択するように構成する。選択の単位は、シーケンス、ピクチャ、スライス単位としてもよいし、符号化ブロック、予測ブロック、変換ブロック等のブロック単位としてもよい。一般に、切り替え単位が細かい程予測効率は高くなる。一方、切り替え単位を大まかにすることで符号化する参照信号情報を符号化する際に発生する符号量を抑えることができる。
さらに、相関パラメータを上記実施の形態2の予測差分信号の色信号間相関除去処理の相関パラメータと共通化してもよい。このようにすることで、相関パラメータに関する符号量を削減することができる。
なお、上記で説明した事項以外、この実施の形態3は上記実施の形態1,2と同じ構成、処理を実施する。
この実施の形態3では、上記実施の形態1または上記実施の形態2に対して、色信号間予測処理の相関パラメータを複数の候補から選択するように構成する。選択の単位は、シーケンス、ピクチャ、スライス単位としてもよいし、符号化ブロック、予測ブロック、変換ブロック等のブロック単位としてもよい。一般に、切り替え単位が細かい程予測効率は高くなる。一方、切り替え単位を大まかにすることで符号化する参照信号情報を符号化する際に発生する符号量を抑えることができる。
さらに、相関パラメータを上記実施の形態2の予測差分信号の色信号間相関除去処理の相関パラメータと共通化してもよい。このようにすることで、相関パラメータに関する符号量を削減することができる。
なお、上記で説明した事項以外、この実施の形態3は上記実施の形態1,2と同じ構成、処理を実施する。
実施の形態4.
上記実施の形態では、符号化雑音を低減するループフィルタを備えた(635492符号化済みの色成分をその他の色成分の予測時に利用することで予測効率を高める)符号化装置、復号化装置について説明した。
本実施の形態4では、上記符号化装置、上記復号化装置を利用した実施例について説明する。
上記実施の形態では、符号化雑音を低減するループフィルタを備えた(635492符号化済みの色成分をその他の色成分の予測時に利用することで予測効率を高める)符号化装置、復号化装置について説明した。
本実施の形態4では、上記符号化装置、上記復号化装置を利用した実施例について説明する。
図49は、本実施の形態4におけるシステム構成の例を示す説明図である。図49において、制御装置(101A〜101C)は、例えば、FAシステムにおけるシーケンサやプラントシステムにおける制御装置に相当するものである。端末装置(102A〜102C)は、例えば、FAシステムにおけるGOT(Graphic Operation Terminal)やプラントシステムにおけるOPS(Operator Station)に相当するものである。保守員端末103は、例えば、FAシステムやプラントシステムにおける保守員が現場等からアクセスするのに使用するスマートフォンやタブレット等の端末である。
図49のようなシステムにおいて、例えば、端末装置(102A〜102C)から制御装置(101A〜101C)の検証作業を行った検証画面の情報を記録して残しておきたいという要求がある。あるいは、保守現場にいる保守員が、保守員端末103を使用して端末装置(102A〜102C)からの情報に基づいて作業を行いたいという要求がある。更には、保守員端末103で撮影した動画にコメント等のグラフィックテキストを多重化して端末装置(102A〜102C)に送信したいといった要求がある。
静止画データやテキストデータのようなデータ量のそれほど多くないデータであれば、従来技術として、ネットワーク上の離れたコンピュータを遠隔操作するためのプロトコルとしてVNC(Virtual Network Computing)があり、このような通信プロトコルを使用してデータの送受信を行うことができた。しかし、上記のような検証画面の情報、端末装置(102A〜102C)からの情報等に動画データが含まれている場合や、グラフィックテキストが多重化された動画等のデータ処理を行う場合は、VNCのような通信プロトコルでは対応できないといった問題があった。
このため、上記のような動画情報を含むデータを処理する場合には、より圧縮効率の高い符号化復号化技術が必要となる。そこで、本実施の形態4では、上記実施の形態で説明した符号化復号化技術を用いて、上記のような動画情報を含むデータ処理を実施する場合について説明する。
例えば、端末装置(102A〜102C)から制御装置(101A〜101C)の検証作業を行った検証画面の大容量の情報を記録する場合、端末装置(102A〜102C)は、上記実施の形態で説明した符号化方法を用いて、検証画面の情報を符号化して、記憶装置(図示しない)に保存する。
また、保守現場にいる保守員が、保守員端末103を使用して端末装置(102A〜102C)からの動画像を含む大容量の情報に基づいて作業を行う場合、端末装置(102A〜102C)は、上記実施の形態で説明した符号化方法を用いて、保守員端末103に表示させる情報を符号化した後、インターネットを介して保守員端末103に送信する。端末装置(102A〜102C)から符号化された情報を受け取った保守員端末103は、上記実施の形態で説明した復号化方法を用いて復号して表示する。
また、保守員端末103で撮影した動画像にコメント等のグラフィックテキストを多重化して端末装置(102A〜102C)に送信する場合、保守員端末103は、上記実施の形態で説明した符号化方法を用いて、撮影した動画像にコメント等のグラフィックテキストを多重化した情報を符号化した後、インターネットを介して端末装置(102A〜102C)に送信する。保守員端末103から符号化された情報を受け取った端末装置(102A〜102C)は、上記実施の形態で説明した復号化方法を用いて復号して表示する。ここで、動画像を含む大容量データであるために、上記実施の形態で説明した符号化復号化方法を用いることが有効であるが、更に動画像にグラフィックテキストを多重化すると、その境界部分での画質の劣化が発生するため、本実施の形態4で説明した符号化復号化技術のベースとなっている非特許文献1に記載したH.265の技術が有効となる。
次に各装置の構成と動作について説明する。
図50は、端末装置102Aの内部構成を示す一例である。
端末装置102Aは、受信部201と、演算処理部202、表示処理部203と、符号化部204と、データ保存部205と、記録部206と、要求処理部207と、配信部208と、送信部209と、閲覧処理部210と、復号部211とを備える。
受信部201は、制御ネットワークを介して制御装置から出力されたデータを受信する。
受信部201は、受信したデータ(のヘッダー部)を解析する。
図50は、端末装置102Aの内部構成を示す一例である。
端末装置102Aは、受信部201と、演算処理部202、表示処理部203と、符号化部204と、データ保存部205と、記録部206と、要求処理部207と、配信部208と、送信部209と、閲覧処理部210と、復号部211とを備える。
受信部201は、制御ネットワークを介して制御装置から出力されたデータを受信する。
受信部201は、受信したデータ(のヘッダー部)を解析する。
なお、本実施の形態4における端末装置102Aは、制御装置(101A〜101C)が出力するデータ、保守員端末103が出力するデータ、保守員端末103が出力する要求指示の三種類を受信する場合について説明を行うが、これら以外のデータを受信し、対応する処理を行うようにしてもよい。
受信部201は、受信したデータを解析した結果、(1)制御装置(101A〜101C)が出力する符号化されていないデータで有った場合、演算処理部202へ受信したデータを渡し、(2)保守員端末103が出力する符号化されたデータだった場合、記録部206へ受信したデータを渡し、(3)保守員端末103が出力する要求指示だった場合、要求処理部207へ受信したデータを渡す。
演算処理部202は、受信部201からデータを受け取り、端末装置102Aの本来の動作を行う。例えば、制御装置101Aから出力されるデータをグラフに表示し、予め設定された値を超えた場合に警報を発令するプログラムであってもよい。
また、演算処理部202は、監視対象である制御装置(101A〜101C)を模した図を画面上に表示したり、制御装置(101A〜101C)が有する処理機能の相関関係を整理した機能系統図を表示したりするプログラムであってもよい。
また、演算処理部202は、監視対象である制御装置(101A〜101C)を模した図を画面上に表示したり、制御装置(101A〜101C)が有する処理機能の相関関係を整理した機能系統図を表示したりするプログラムであってもよい。
また、制御装置(101A〜101C)から受け取ったデータが動画であった場合、この動画に対し、文字列やグラフや記号を重畳した映像を作成したりしても良い。
演算処理部202は、受信部201から受け取ったデータに対し、演算処理を行った結果を表示処理部203へ渡す。
記録部206は、受信部201で受信したデータが保守員端末103の出力する符号化されたデータであった場合、受信部201からデータを受け取る。
記録部206は、受信部201から受け取ったデータに、そのデータの固有情報を付加し、データ保存部205へ渡す。データの固有情報として、例えば、送られて来たデータがどの保守員端末から送られたものなのかを示す情報、データが送られてきた日時の情報を用いても良い。なお、受信部201から受け取ったデータが、どの保守員端末から送られてきたのかを示す情報、送られてきた日時を示す情報などは、データのヘッダー部を解析する事で確認しても良い。
記録部206は、受信部201から受け取ったデータに、そのデータの固有情報を付加し、データ保存部205へ渡す。データの固有情報として、例えば、送られて来たデータがどの保守員端末から送られたものなのかを示す情報、データが送られてきた日時の情報を用いても良い。なお、受信部201から受け取ったデータが、どの保守員端末から送られてきたのかを示す情報、送られてきた日時を示す情報などは、データのヘッダー部を解析する事で確認しても良い。
要求処理部207は、受信部201で受信したデータが保守員端末103からの要求であった場合、受信部201からデータを受け取る。
受信部201から受け取ったデータは、例えば、どの保守員端末からの要求データかを一意に特定できる固有情報である。例えば、情報が出力された保守員端末もしくは制御装置のIP(Internet Protocol)アドレスと、情報が出力された時刻で指定しても良いし、そのIPアドレスから何番目に出力されたデータであっても良い。
また、現在、端末装置102Aの出力用デバイス(図示せず、例えばディスプレイ等)に出力されているリアルタイムな情報であっても良い。また、端末装置102Aの出力用デバイスに出力されているリアルタイムな情報は、画面全体でも良いし、画面の一部でも良い。画面の一部の場合、領域を指定しても良いし、自動的に取り決めてもよい。
受信部201から受け取ったデータは、例えば、どの保守員端末からの要求データかを一意に特定できる固有情報である。例えば、情報が出力された保守員端末もしくは制御装置のIP(Internet Protocol)アドレスと、情報が出力された時刻で指定しても良いし、そのIPアドレスから何番目に出力されたデータであっても良い。
また、現在、端末装置102Aの出力用デバイス(図示せず、例えばディスプレイ等)に出力されているリアルタイムな情報であっても良い。また、端末装置102Aの出力用デバイスに出力されているリアルタイムな情報は、画面全体でも良いし、画面の一部でも良い。画面の一部の場合、領域を指定しても良いし、自動的に取り決めてもよい。
配信部208は、要求処理部207からデータを特定するための条件を受け取り、データ保存部205から条件と一致するデータを取得し、取得したデータを送信部209へ渡す。
送信部209は、配信部208から渡されたデータを制御ネットワークに出力する。
送信部209が制御ネットワークに出力するデータは、ブロードキャスト送信することによって、誰でも受け取れるようにしてもよい。また、要求処理を発した保守員端末に対してのみ送信するようにしてもよい。
送信部209が制御ネットワークに出力するデータは、ブロードキャスト送信することによって、誰でも受け取れるようにしてもよい。また、要求処理を発した保守員端末に対してのみ送信するようにしてもよい。
閲覧処理部210は、データ保存部205に格納されたデータを端末装置102Aの表示用デバイスに出力したい場合に用いる。
閲覧処理部210は、例えば、端末装置102Aを操作するためのユーザインターフェース(図示せず、例えばキーボードやタッチパネル等)を用いて、データ保存部205に保存されているデータを選択する。
閲覧処理部210は、選択されたデータをデータ保存部205から読み出し、復号部211へ出力する。
閲覧処理部210は、例えば、端末装置102Aを操作するためのユーザインターフェース(図示せず、例えばキーボードやタッチパネル等)を用いて、データ保存部205に保存されているデータを選択する。
閲覧処理部210は、選択されたデータをデータ保存部205から読み出し、復号部211へ出力する。
復号部211は、上記実施の形態で述べた復号化装置と同等の機能を有する。
閲覧処理部210は、復号部211で復号されたデータを受け取り、表示処理部203へ渡す。
閲覧処理部210は、復号部211で復号されたデータを受け取り、表示処理部203へ渡す。
表示処理部203は、閲覧処理部210から受け取ったデータを表示用デバイス(図示せず、例えばディスプレイ等)に表示する。
また、表示処理部203は、演算処理部202から受け取ったデータを表示用デバイスに表示する。
表示用デバイスは、例えば、液晶画面やモニタ等を用いてもよい。
また、表示処理部203は、演算処理部202から受け取ったデータを表示用デバイスに表示する。
表示用デバイスは、例えば、液晶画面やモニタ等を用いてもよい。
また、表示処理部203は、表示用デバイスに表示するために用いたデータを符号化部204で符号化する。
なお、表示処理部203は、演算処理部202からデータを受け取って表示用デバイスに表示を行った場合、演算処理部202から受け取ったデータを符号化部204へ出力し、符号化する。
符号化部204は、上記実施の形態で述べた符号化装置と同等の機能を有する。
表示処理部203は、符号化部204で符号化したデータをデータ保存部205に保存する。
表示処理部203は、符号化部204で符号化したデータをデータ保存部205に保存する。
なお、本実施の形態4では、データ保存部205に保存されるデータは全て符号化されたデータであるようにしたが、データに符号化されているか否かを示す情報を付け足すことにより、符号化されているデータと符号化されていないデータを混在させてもよい。
なお、データ保存部205に、符号化されているデータと符号化されていないデータを混在させる場合には、符号化されていないデータを送信する際には、配信部208または送信部209から符号化部204を呼び出し、符号化したデータを送信できるようにする。
なお、端末装置は複数でもよい。また、符号化部204、復号部211は、表示処理部203、閲覧処理部210を介して動作しているが、表示処理部203の後や閲覧処理部210の後で動作するようにしてもよい。
図51は、保守員端末103の内部構成を示す一例である。
図51は、保守員端末103の内部構成を示す一例である。
なお、図51における保守員端末103は、端末装置102Aとやりとりをする場合を例に説明を行う。
保守員端末103は、受信部301と、復号部211と、表示処理部302と、データ取得部303と、送信部304と、符号化部204を備える。
受信部301は、制御ネットワークを介し、端末装置102Aが出力するデータを受け取る。
受信部301は、受け取ったデータを復号部211へ渡す。
なお、受信部301は、端末装置102A〜102Cが出力するデータ以外を受け取った場合には、データに応じた処理を行うその他の処理部(図示せず)にデータを渡す。
受信部301は、受け取ったデータを復号部211へ渡す。
なお、受信部301は、端末装置102A〜102Cが出力するデータ以外を受け取った場合には、データに応じた処理を行うその他の処理部(図示せず)にデータを渡す。
復号部211は、受信部301から受け取ったデータを復号し、受信部301に出力する。
表示処理部302は、受信部301から出力されたデータを表示用デバイス(図示せず、例えばディスプレイ等)に表示する。
データ取得部303は、センサやカメラ(静止画像用あるいは動画用)である。
データ取得部303は、センサからの測定データやカメラからの静止画あるいは動画を送信部304に出力する。
データ取得部303は、センサからの測定データやカメラからの静止画あるいは動画を送信部304に出力する。
送信部304は、データ取得303から出力されたデータを符号化部204へ出力する。
符号化部204は、上記実施の形態で述べた符号化装置と同等の機能を有する。
送信部304は、符号化部204で符号化されたデータを制御ネットワークに出力する。
送信部304が符号化されたデータを送信する相手は、保守員端末103のユーザインタフェース(図示せず)を用いてどの端末装置なのかを設定できるようにしても良いし、予め固定された送り先であっても良いし、相手先を指定せず、ブロードキャストするように設定しても良い。
符号化部204は、上記実施の形態で述べた符号化装置と同等の機能を有する。
送信部304は、符号化部204で符号化されたデータを制御ネットワークに出力する。
送信部304が符号化されたデータを送信する相手は、保守員端末103のユーザインタフェース(図示せず)を用いてどの端末装置なのかを設定できるようにしても良いし、予め固定された送り先であっても良いし、相手先を指定せず、ブロードキャストするように設定しても良い。
なお、保守員端末は複数でもよい。また、符号化部204、復号部211は、送信部304、受信部301を介して動作しているが、送信部304前や受信部301の後で動作するようにしてもよい。
また、図52は、本実施の形態4における別のシステム構成の例を示す説明図である。図52において、情報装置(104A〜104C)は、例えば、テレマティクスにおける様々な情報を持つ情報装置であり、この情報装置は車両に搭載されるものである。データ管理センター105は、例えば、テレマティクスにおける情報装置を搭載した車両からの情報を集める。情報装置(104A〜104C)とデータ管理センター105との間は、ネットワークで接続され、このネットワークは有線でも無線でもよい。
図52のようなシステムにおいて、例えば、情報装置(104A〜104C)が搭載された車両に関する情報や、車両に搭載されるカメラ等の動画あるいは静止画を用いた交通渋滞や事故の情報を、データ管理センターに集約したいという要求がある。あるいは、情報装置を搭載した車両が、データ管理センターから交通渋滞、事故が発生した過去の状況等をデータ管理サーバーから受け取りたいといった要求(フィードバック)がある。
図52のようなシステムにおいて、例えば、情報装置(104A〜104C)が搭載された車両に関する情報や、車両に搭載されるカメラ等の動画あるいは静止画を用いた交通渋滞や事故の情報を、データ管理センターに集約したいという要求がある。あるいは、情報装置を搭載した車両が、データ管理センターから交通渋滞、事故が発生した過去の状況等をデータ管理サーバーから受け取りたいといった要求(フィードバック)がある。
静止画データやテキストデータのようなデータ量のそれほど多くないデータであれば、従来技術として、ネットワーク上の離れたコンピュータを遠隔操作するためのプロトコルとしてVNC(Virtual Network Computing)があり、このような通信プロトコルを使用してデータの送受信を行うことができた。しかし、上記のような情報装置(104A〜104C)からの情報等に動画データが含まれている場合や、グラフィックテキストが多重化された動画等のデータ処理を行う場合は、VNCのような通信プロトコルでは対応できないといった問題があった。
このため、上記のような動画情報を含むデータを処理する場合には、より圧縮効率の高い符号化復号化技術が必要となる。そこで、本実施の形態4では、上記実施の形態で説明した符号化復号化技術を用いて、上記のような動画情報を含むデータ処理を実施する場合について説明する。
例えば、情報装置(104A〜104C)で撮影され、データ管理センター105に集約された動画像に道路案内、交通情報等のグラフィックテキストを多重化して、情報装置(104A〜104C)に送信する場合、データ管理センター105は、上記実施の形態で説明した符号化方法を用いて、集約した動画像に道路案内、交通情報等のグラフィックテキストを多重化した情報を符号化した後、インターネットを介して情報装置(104A〜104C)に送信する。
情報装置(104A〜104C)から符号化された情報を受け取ったデータ管理センター105は、上記実施の形態で説明した復号化方法を用いて復号してデータの解析、分類、整理などの処理を行う。
ここで用いる情報は、動画像を含む大容量データであるために、符号化復号化方法を用いることが有効であるが、更に動画像にグラフィックテキストを多重化すると、その境界部分での画質の劣化が発生するため、本実施の形態4で説明した符号化復号化技術のベースとなっている非特許文献1に記載したH.265の技術が有効となる。
図53は、データ管理センター105の内部構成を示す一例である。
データ管理センター105は、受信部201と、記録部206と、データ保存部205と、データ生成部501と、復号部211と、配信部208と、送信部209と、符号化部204を備える。
データ管理センター105は、受信部201と、記録部206と、データ保存部205と、データ生成部501と、復号部211と、配信部208と、送信部209と、符号化部204を備える。
受信部201は、ネットワークを介し、車両に搭載される情報端末が出力するデータを受け取る。なお、ネットワークは有線でも無線でもよい。
受信部201は、受け取ったデータにデータの固有情報を付加し、記録部206に出力する。
固有情報は、データを送ってきた情報端末を一意に特定できる固有IDもしくはIPアドレスであってよい。また、固有情報として、データが送られてきた時間、もしくはその情報端末から送られたデータの通し番号を用いてもよい。
受信部201は、受け取ったデータにデータの固有情報を付加し、記録部206に出力する。
固有情報は、データを送ってきた情報端末を一意に特定できる固有IDもしくはIPアドレスであってよい。また、固有情報として、データが送られてきた時間、もしくはその情報端末から送られたデータの通し番号を用いてもよい。
記録部206は、受信部301から出力されたデータをデータ保存部205に出力する。
本実施の形態4では、受信部201で受け取ったデータに固有情報のみを付加したものをデータ保存部205に保存するような構成を用いて説明したが、情報端末に配信し易いデータに予めデータを加工したり、組み替えたりしておいてもよい。
本実施の形態4では、受信部201で受け取ったデータに固有情報のみを付加したものをデータ保存部205に保存するような構成を用いて説明したが、情報端末に配信し易いデータに予めデータを加工したり、組み替えたりしておいてもよい。
データ生成部501は、データ保存部205に保存されたデータを参照し(車両に搭載されている)情報端末に向けて配信するためのデータ生成を行う。
データ生成部501は、データ保存部205から読み出したデータを復号部211に出力する。
復号部211は、上記実施の形態で述べた復号化装置と同等の機能を有する。
復号部211は、データ生成部501から受け取ったデータを復号し、データ生成部501に出力する。
データ生成部501は、復号されたデータを用いて、配信用データを生成し、符号化部204に出力する。
データ生成部501は、データ保存部205から読み出したデータを復号部211に出力する。
復号部211は、上記実施の形態で述べた復号化装置と同等の機能を有する。
復号部211は、データ生成部501から受け取ったデータを復号し、データ生成部501に出力する。
データ生成部501は、復号されたデータを用いて、配信用データを生成し、符号化部204に出力する。
送信部209は、配信部208から渡された配信用データを符号化部204に出力する。
符号化部204は、上記実施の形態で述べた符号化装置と同等の機能を有する。
符号化部204は、送信部209から渡された配信用データを符号化し、送信部209に出力する。
送信部209は、符号化された配信用データを送信する。送信する方法は相手を指定して良いし、ブロードキャストで送信しても良い。
符号化部204は、上記実施の形態で述べた符号化装置と同等の機能を有する。
符号化部204は、送信部209から渡された配信用データを符号化し、送信部209に出力する。
送信部209は、符号化された配信用データを送信する。送信する方法は相手を指定して良いし、ブロードキャストで送信しても良い。
なお、データ管理センターは複数でもよい。また、符号化部204は、送信部209を介して動作しているが、送信部209の前で動作するようにしてもよい。
図54は、情報装置104Aの内部構成を示す一例である。
情報装置104Aは、受信部201と、復号部211と、表示処理部302と、データ取得部303と、送信部209と符号化部204を備える。
受信部201は、ネットワークを介し、データ管理センター105が出力するデータを受け取る。
情報装置104Aは、受信部201と、復号部211と、表示処理部302と、データ取得部303と、送信部209と符号化部204を備える。
受信部201は、ネットワークを介し、データ管理センター105が出力するデータを受け取る。
受信部201は、受け取ったデータを復号部211に出力する。
なお、受信部201は、データ管理センター105が出力するデータ以外を受け取った場合には、データに応じた処理を行うその他の処理部(図示せず)にデータを渡す。
なお、受信部201は、データ管理センター105が出力するデータ以外を受け取った場合には、データに応じた処理を行うその他の処理部(図示せず)にデータを渡す。
復号部211は、受信部301から受け取ったデータを復号し、受信部301に出力する。
表示処理部302は、受信部201から渡されたデータを表示用デバイス(図示せず、例えばディスプレイ等)に表示する。
データ取得部303は、センサやカメラ(静止画像用あるいは動画用)である。
データ取得部303は、センサからの測定データやカメラからの静止画あるいは動画を送信部209に出力する。
データ取得部303は、センサからの測定データやカメラからの静止画あるいは動画を送信部209に出力する。
送信部209は、データ取得部303から出力されたデータを符号化部204に出力する。
符号化部204は、上記実施の形態で述べた符号化装置と同等の機能を有する。
送信部209は、符号化部204で符号化されたデータをデータ管理センター105に送信する。
送信部209が符号化されたデータを送信する相手として、情報装置700のユーザインタフェース(図示せず)を用いてどのデータ管理センターなのかを設定できるようにしても良いし、予め固定された送り先であっても良いし、相手先を指定せず、ブロードキャストするように設定しても良い。
符号化部204は、上記実施の形態で述べた符号化装置と同等の機能を有する。
送信部209は、符号化部204で符号化されたデータをデータ管理センター105に送信する。
送信部209が符号化されたデータを送信する相手として、情報装置700のユーザインタフェース(図示せず)を用いてどのデータ管理センターなのかを設定できるようにしても良いし、予め固定された送り先であっても良いし、相手先を指定せず、ブロードキャストするように設定しても良い。
なお、情報装置は複数でもよい。また、符号化部204、復号部211は、送信部304、受信部301等を介して動作しているが、送信部304の前や受信部301の後で動作するようにしてもよい。
また、本実施の形態4では、制御装置(101A〜101C)から端末装置(102A〜102C)に送付されるデータが符号化されていない場合について説明したが、制御装置(101A〜101C)が上記実施の形態で述べた符号化装置を備え、符号化したデータを送付し、端末装置(102A〜102C)も符号化されたデータを受信するようにしてもよい。
また、本実施の形態4では、制御装置(101A〜101C)から端末装置(102A〜102C)に送付されるデータが符号化されていない場合について説明したが、制御装置(101A〜101C)が上記実施の形態で述べた符号化装置を備え、符号化したデータを送付し、端末装置(102A〜102C)も符号化されたデータを受信するようにしてもよい。
以上説明したように、この実施の形態4によれば、符号化部204および復号部211を用いることにより、符号化雑音を低減して圧縮効率を高めることができ(635492予測効率を高めることができ)、動画情報を含むデータを処理することができる。
また、符号化部204および復号部211を用いることにより、VNC等のネットワーク上の離れたコンピュータを遠隔操作するためのプロトコルを用いずに済むため、セキュリティを向上することができる。
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
1 符号化制御部、2 スライス分割部、3 ブロック分割部、4 切換スイッチ、5 イントラ予測部(イントラ予測手段)、6 イントラブロックコピー予測部(イントラブロックコピー予測手段)、7 動き補償予測部(動き補償予測手段)、8 減算部、9 変換・量子化部、10 逆量子化・逆変換部、11 加算部、12 イントラ用メモリ、13 ループフィルタ部、14 動き補償予測フレームメモリ、15 可変長符号化部(符号化手段)、31 可変長復号部、32 逆量子化・逆変換部、33 切換スイッチ、34 イントラ予測部(イントラ予測手段)、35 イントラブロックコピー予測部(イントラブロックコピー予測手段)、36 動き補償予測部(動き補償予測手段)、37 加算部、38 イントラ用メモリ、39 ループフィルタ部、40 動き補償予測フレームメモリ、101A〜101C 制御装置、102A〜102C 端末装置、103 保守員用端末、104A〜104C 情報装置、105 データ管理センター、201 受信部、202 演算処理部、203 表示処理部、204 符号化部、205 データ保存部、206 記録部、207 要求処理部、208 配信部、209 送信部、210 閲覧処理部、211 復号部、301 受信部、302 表示処理部、303 データ取得部、304 符号化部、501 データ生成部。
Claims (5)
- データを受信する受信部と、
前記受信部により受信されたデータを処理する演算処理部と、
前記演算処理部により処理されたデータに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、符号化済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して符号化する符号化部と、
前記符号化部により符号化されたデータを保存するデータ保存部と、
を備えることを特徴とする端末装置。 - データを取得するデータ取得部と
データ取得部からのデータに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、符号化済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して符号化する符号化部と、
前記符号化部により符号化された符号化データを送信する送信部と、
を備えることを特徴とする端末装置。 - 符号化されたデータを保存するデータ保存部と、
前記データ保存部に保存された符号化データに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、復号済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して復号する復号部と、
前記復号部により復号された復号データに基づいて送信データを生成するデータ生成部と、
前記データ生成部により生成された送信データに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、符号化済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して符号化する符号化部と、
前記符号化部により符号化された符号化データを送信する送信部と、
を備えることを特徴とするデータ管理装置。 - 符号化されたデータを保存するデータ保存部と、
前記データ保存部に保存された符号化データから表示データを選択する閲覧処理部と、
前記閲覧処理部により選択された符号化データに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、復号済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して復号する復号部と、
前記復号部により復号された復号データを表示する表示処理部と、
を備えることを特徴とする端末装置。 - 符号化されたデータを受信する受信部と、
受信部により受信された符号化データに対して、予測処理単位のブロックである予測ブロック毎に、当該予測ブロックにおける輝度信号のイントラ予測パラメータを用いて、前記輝度信号の予測画像を生成するイントラ予測処理を実施するとともに、当該予測ブロックの色差信号に対するフラグが色信号間予測処理の非実施を明示していれば、前記色差信号のイントラ予測パラメータを用いて、前記色差信号の予測画像を生成するイントラ予測処理を実施し、前記フラグが色信号間予測処理の実施を明示していれば、復号済みの色信号を参照して、当該予測ブロックにおける色差信号の予測画像を生成する色信号間予測処理を実施して復号する復号部と、
前記復号部により復号された復号データを表示する表示処理部と、
を備えることを特徴とする端末装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014051448A JP2015177295A (ja) | 2014-03-14 | 2014-03-14 | 端末装置及びデータ管理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014051448A JP2015177295A (ja) | 2014-03-14 | 2014-03-14 | 端末装置及びデータ管理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015177295A true JP2015177295A (ja) | 2015-10-05 |
Family
ID=54256085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014051448A Pending JP2015177295A (ja) | 2014-03-14 | 2014-03-14 | 端末装置及びデータ管理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015177295A (ja) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011193363A (ja) * | 2010-03-16 | 2011-09-29 | Nippon Hoso Kyokai <Nhk> | 符号化装置、復号装置及びプログラム |
JP2012239062A (ja) * | 2011-05-12 | 2012-12-06 | Mitsubishi Electric Corp | 復号装置 |
JP2013058939A (ja) * | 2011-09-08 | 2013-03-28 | Sharp Corp | 画像復号装置、および画像符号化装置 |
JP2013077894A (ja) * | 2011-09-29 | 2013-04-25 | Jvc Kenwood Corp | 画像符号化装置、画像符号化方法及び画像符号化プログラム |
JP2013090015A (ja) * | 2011-10-13 | 2013-05-13 | Nippon Hoso Kyokai <Nhk> | イントラ予測装置、符号化装置、復号装置、及びプログラム |
JP2013110502A (ja) * | 2011-11-18 | 2013-06-06 | Sony Corp | 画像処理装置及び画像処理方法 |
JP2013158041A (ja) * | 2013-04-05 | 2013-08-15 | Mega Chips Corp | トランスコーダ |
JP2014500692A (ja) * | 2010-12-23 | 2014-01-09 | サムスン エレクトロニクス カンパニー リミテッド | 映像予測単位についてのイントラ予測モード符号化方法及び装置、並びに映像予測単位についてのイントラ予測モード復号化方法及び装置 |
-
2014
- 2014-03-14 JP JP2014051448A patent/JP2015177295A/ja active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011193363A (ja) * | 2010-03-16 | 2011-09-29 | Nippon Hoso Kyokai <Nhk> | 符号化装置、復号装置及びプログラム |
JP2014500692A (ja) * | 2010-12-23 | 2014-01-09 | サムスン エレクトロニクス カンパニー リミテッド | 映像予測単位についてのイントラ予測モード符号化方法及び装置、並びに映像予測単位についてのイントラ予測モード復号化方法及び装置 |
JP2012239062A (ja) * | 2011-05-12 | 2012-12-06 | Mitsubishi Electric Corp | 復号装置 |
JP2013058939A (ja) * | 2011-09-08 | 2013-03-28 | Sharp Corp | 画像復号装置、および画像符号化装置 |
JP2013077894A (ja) * | 2011-09-29 | 2013-04-25 | Jvc Kenwood Corp | 画像符号化装置、画像符号化方法及び画像符号化プログラム |
JP2013090015A (ja) * | 2011-10-13 | 2013-05-13 | Nippon Hoso Kyokai <Nhk> | イントラ予測装置、符号化装置、復号装置、及びプログラム |
JP2013110502A (ja) * | 2011-11-18 | 2013-06-06 | Sony Corp | 画像処理装置及び画像処理方法 |
JP2013158041A (ja) * | 2013-04-05 | 2013-08-15 | Mega Chips Corp | トランスコーダ |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6573689B2 (ja) | 画像符号化装置および画像符号化方法 | |
JP6820115B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法及び符号化ビットストリームを記録した記録媒体 | |
JP6863669B2 (ja) | 画像符号化装置、画像符号化方法、画像復号装置および画像復号方法 | |
JP6716836B2 (ja) | 動画像符号化データ | |
WO2014163200A1 (ja) | カラー画像符号化装置、カラー画像復号装置、カラー画像符号化方法及びカラー画像復号方法 | |
JP2018186569A (ja) | 画像復号装置 | |
JP2019154074A (ja) | 画像符号化装置、動画像復号装置、動画像符号化データ及び記録媒体 | |
JPWO2015115644A1 (ja) | 画像符号化装置、画像復号装置、符号化ストリーム変換装置、画像符号化方法、及び画像復号方法 | |
TW201808007A (zh) | 畫像解碼裝置、畫像解碼方法、畫像編碼裝置、畫像編碼方法、編碼資料 | |
JP6362370B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
JP6373008B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
JP2015076781A (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
JP6318729B2 (ja) | 端末装置及びデータ管理装置 | |
JP2014204311A (ja) | カラー画像符号化装置、カラー画像復号装置、カラー画像符号化方法及びカラー画像復号方法 | |
JP6256222B2 (ja) | 端末装置及びデータ管理装置 | |
JP6555856B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
JP2015177295A (ja) | 端末装置及びデータ管理装置 | |
JP2016046641A (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
JP2016005210A (ja) | 端末装置及びデータ管理装置 | |
JP2015019257A (ja) | カラー動画像符号化装置、カラー動画像復号装置、カラー動画像符号化方法及びカラー動画像復号方法 | |
JP2018166329A (ja) | 画像符号化装置および画像復号装置 | |
JP2015080002A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2012023609A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP6300660B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
KR102234851B1 (ko) | 인트라 예측 모드 복호화 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161031 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170815 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170822 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180306 |