(本発明の基礎となった知見)
本発明者は、「背景技術」の欄において記載した非特許文献1の画像復号方法および画像符号化方法に関し、以下の問題が生じることを見出した。
図1Aは、ピクチャの構成を示す図である。
ピクチャは、少なくとも1つのスライスから構成され、図1Aに示すように、例えば3つのスライスs1,s2,s3を有する。なお、ピクチャはフレームと同一の意味で用いられる。スライスは、少なくとも1つの最大符号化単位(LCU)から構成される。
各スライスは、境界制御フラグ(slice_loop_filter_across_slices_enabled_flag)を有する。この境界制御フラグは、スライスの境界(スライス境界)に対する、デブロッキングフィルタ処理およびサンプル適応オフセット処理(SAO)などのループフィルタ処理(インループフィルタ処理)を制御するためのフラグである。このループフィルタ処理は、予測画像の生成に用いられる再構成画像が表示される前、またはその再構成画像がフレームバッファに格納される前に行われる。デブロッキングフィルタ処理は、動画像がブロックごとに符号化または復号されることによって生じるブロック歪みを抑えるための処理である。このデブロッキングフィルタ処理によって主観画質が向上する。SAOは、再構成画像に含まれる各画素の画素値にオフセット値を加算する処理であって、このSAOにはバンドオフセットとエッジオフセットとがある。また、このSAOによって主観画質および客観画質が向上する。なお、境界制御フラグによって制御されるループフィルタ処理の対象は、スライス境界であるが、具体的には、そのスライス境界の周辺にある少なくとも1つの画素である。
図1Bは、境界制御フラグによって制御されるデブロッキングフィルタ処理の対象とされる範囲を示す図である。
例えば、スライスs2の境界制御フラグによって、スライスs2の上にあるスライス境界sb1と、スライスs2の左にあるスライス境界sb2に対するデブロッキングフィルタ処理が制御される。つまり、境界制御フラグ=0の場合は、スライス境界sb1,sb2のそれぞれの周辺にある各画素(サンプル)に対してデブロッキングフィルタ処理は行われない。一方、境界制御フラグ=1の場合は、スライス境界sb1およびスライス境界sb2のそれぞれの周辺にある各画素に対してデブロッキングフィルタ処理が行われる。このように、境界制御フラグによって、デブロッキングフィルタ処理がオンとオフとに切り替えられる。
図1Cは、境界制御フラグによって制御されるSAOの対象とされる範囲を示す図である。
スライスs2の境界制御フラグは、上述のデブロッキングフィルタ処理とともに、スライスs2の上、左、下、および右にあるスライス境界sb1,sb2,sb3,sb4,sb5に対するSOAを制御する。つまり、境界制御フラグ=0の場合は、他のスライス(スライスs1,s3)にある画素を用いない処理モード(パディングまたはパディングモード)によって、それらのスライス境界の周辺にあるスライスs2内の各画素に対するSAOが行われる。一方、境界制御フラグ=1の場合は、他のスライス(スライスs1,s3)にある画素を用いることが可能な処理モード(通常処理または通常処理モード)によって、それらのスライス境界の周辺にあるスライスs2内の各画素に対するSAOが行われる。このように、境界制御フラグによって、SAOの処理モードが切り替えられる。
つまり、各スライスには、それぞれ異なる値を示す境界制御フラグを設定することができ、境界制御フラグを0に設定することによって、デブロッキングフィルタ処理またはSAOなどにループフィルタ処理によって生じるスライス間の依存関係を抑えることができる。このような境界制御フラグは、スライス間の依存関係を抑えることができるため、画像の符号化または復号の並列処理、またはGDR(Gradual decoder refresh)というリフレッシュ処理を機能的に行うために利用される。
ここで、GDRは、例えば、符号化されたが画像復号装置で受信されなかったデータを参照するようなランダムアクセスが行われる場合に、動画像を複数のピクチャに亘って段階的にきれいな画像に回復させるためのものである。
図2は、GDRを説明するための図である。
ピクチャp1でGDRが開始されると、ピクチャp1における先頭のスライスs1はイントラ予測のみで符号化される。つまり、そのスライスs1はリフレッシュモードで符号化される。したがって、符号化順でピクチャp1よりも前のピクチャを参照することなく、スライスs1は符号化される。このようなスライスs1は、リフレッシュされる領域(以下、リフレッシュ領域という)である。また、ピクチャp1のスライスs1以外の領域は、リフレッシュされない領域(以下、非リフレッシュ領域という)である。
ピクチャp2における先頭のスライスs1は、ピクチャp1のスライスs1だけしか参照することができない動き補償によって符号化されるか、イントラ予測によって符号化される。つまり、このピクチャp2のスライスs1もリフレッシュモードで符号化される。このピクチャp2のスライスs1もリフレッシュ領域であり、ピクチャp2では、リフレッシュ領域が拡大している。
ピクチャp3における先頭のスライスs1と2番目のスライスs2は、ピクチャp1のスライスs1とピクチャp2のスライスs1だけしか参照することができない動き補償によって符号化されるか、イントラ予測によって符号化される。つまり、このピクチャp3のスライスs1およびスライスs2もリフレッシュモードで符号化される。このピクチャp3のスライスs1,s2もリフレッシュ領域であり、ピクチャp3では、リフレッシュ領域がさらに拡大している。つまり、GDRが開始されると、ピクチャのそれぞれに含まれるリフレッシュ領域は、ピクチャの符号化順で段階的に大きくなる。
GDRの最後には、ピクチャの全ての領域がリフレッシュされる。したがって、GDRにかかる時間は、ピクチャの全ての領域をリフレッシュするために要する時間である。この時間は、SEI(Supplemental Enhancement Information)に含まれる情報として画像復号装置に送信される。
図3は、GDRを伴う画像符号化方法を示すフローチャートである。
画像符号化装置は、GDRを伴う符号化を開始すると、まず、第1制御パラメータ(refreshed_LCUs_in_current_frame)を0に設定する(ステップS901)。次に、画像符号化装置は、処理対象(符号化対象)スライスをリフレッシュモードで符号化する(ステップS902)。なお、GDRを伴う符号化の開始時には、ピクチャ内の先頭のスライスが処理対象スライスとして選択される。そして、画像符号化装置は、処理対象スライス内のLCUの数(number_of_LCUs_in_current_slice)をカウントする(ステップS903)。
次に、画像符号化装置は、そのLCUの数を第1制御パラメータに加算する(ステップS904)。ここで、画像符号化装置は、その第1制御パラメータが、直前のピクチャにおいてリフレッシュモードで符号化されたLCUの数を示す第2制御パラメータ(refreshed_LCUs_in_prev_frame)とデルタDとの和以下であるか否かを判定する(ステップS905)。デルタDは、GDRに要する時間をコントロールするために用いられるパラメータである。このデルタDの値が大きいと、1つのピクチャの全ての領域をリフレッシュするために必要とされるピクチャの数は少なく、デルタDの値が小さいと、そのピクチャの数は多くなる。
画像符号化装置は、第1制御パラメータが上述の和以下ではないと判定すると(ステップS905のNo)、ピクチャ内の残りの領域を非リフレッシュモードで符号化する(ステップS906)。一方、画像符号化装置は、第1制御パラメータが上述の和以下であると判定すると(ステップS905のYes)、ピクチャ内で符号化されていないスライスがあるか否かを判定する(ステップS907)。ここで、画像符号化装置は、符号化されていないスライスがあると判定すると(ステップS907のYes)、その符号化されていないスライスを処理対象スライスとして選択し(ステップS908)、ステップS902からの処理を繰り返し実行する。
このように、画像符号化装置は、スライスの符号化を開始するときには、処理対象スライスをリフレッシュモードで符号化すべきか否かを判断しなければならない。しかしながら、画像符号化装置は、処理対象スライスに対してのみ、つまり、処理対象スライスの符号化開示時にのみ、その判断を行うことができる。言い換えれば、画像符号化装置は、処理対象スライスを符号化しているときには、次のスライスをリフレッシュモードで符号化するか否かを判断することができない。この判断は、次のスライスの符号化が開始されるときにだけ可能である。
また、GDRでは、リフレッシュ領域と非リフレッシュ領域との間でデータに依存関係があることは避けなければならない。そこで、非リフレッシュ領域のデータがリフレッシュ領域に混入しないように、スライスヘッダにある上述の境界制御フラグを用いて、そのスライスヘッダを有するスライスの各スライス境界におけるループフィルタ処理が制御される。
ここで、SAOにおけるエッジオフセットでは、オフセットの対象とされる画素のそれぞれは、その画素に隣接する2つの画素と比較されることによって、何れかのクラスに分類される。各クラスはエッジインデックスによって定義される。
したがって、処理対象スライスのスライス境界周辺にある画素(処理対象画素)に対してSAOが行われるときには、処理対象スライスの外にある画素が、処理対象画素に隣接する画素として処理対象画素と比較される場合がある。このような場合に、処理対象スライスの外にある画素との比較を避ける必要があるときには、境界制御フラグが0に設定される。これにより、処理対象スライスのスライス境界周辺にある画素(処理対象画素)に対しては、上述の比較を行うことなく、エッジインデックスが0に設定される。
例えば、図1Cに示すように、スライスs2内のスライス境界周辺にある画素(処理対象画素)に対するSAOには、スライスs2の外にある画素(スライスs1内またはスライスs3内の画素)が比較対象として用いられる場合がある。このような場合に、スライスs2の外にある画素を比較対象として用いることを避ける必要があるときには、スライスs2の境界制御フラグが0に設定される。その結果、スライスs2内のスライス境界周辺にある画素(処理対象画素)に対しては、スライスs2の外にある画素が比較対象として用いられることなく、エッジインデックスが0に設定される。
SAOにおいて、処理対象画素のエッジインデックスが0の場合には、その処理対象画素の画素値には、オフセット値として「0」が加算される。このように、SAOにおいて、処理対象画素に隣接する2つの画素との比較を行わずにオフセット値として「0」を処理対象画素の画素値に加算する処理は、パディング(パディングモード)と呼ばれる。すなわち、このパディングは、SAOの処理モードのうちの1つであって、処理対象スライス以外の他のスライスにある画素を用いない処理モードである。SAOでは、このパディングによって、非リフレッシュ領域のデータがリフレッシュ領域に混入することを防ぐことができる。なお、SAOにおいて、処理対象画素とその処理対象画素に隣接する2つの画素とを比較して、その処理対象画素のエッジインデックスを設定する処理モードを、通常処理(通常処理モード)という。
図4は、GDRによってリフレッシュされるスライスを示す図である。
図4に示すように、スライスs1およびスライスs2はリフレッシュされ、スライスs3およびスライスs4はリフレッシュされない。
このような場合には、非リフレッシュ領域のスライスs3からリフレッシュ領域のスライスs2へのデータの依存関係が生じないことが要求される。つまり、スライスs2に対するループフィルタ処理では、スライスs3の画素が参照されないことが要求される。これによって、非リフレッシュ領域のスライスs3からのリフレッシュ領域のスライスs2へのデータの混入を防ぐことができる。
図5は、各スライスの境界制御フラグとスライス境界のループフィルタ処理との関係を示す図である。なお、図5中のBDはデブロッキングフィルタ処理を意味する。
図4に示すスライスs3からスライスs2へのデータの依存関係が生じないようにするという要求を満たすためには、スライスs3の境界制御フラグを0にして、スライスs2とスライスs3との間のスライス境界におけるデブロッキングフィルタ処理をオフにしなければならい。さらに、スライスs2の境界制御フラグを0にして、スライスs2のSAOにおいて、スライスs3の画素を参照しないようにしなければならない。これにより、ループフィルタ処理によって、スライスs3からスライスs2へのデータの依存関係が生じることを避けることができる。
しかしながら、図3を用いて説明したように、スライスs2を符号化しているときには、スライスs3を非リフレッシュモードで符号化するか否かを判断することができない。
つまり、処理対象スライスのスライスヘッダを符号化して、その処理対象スライスの全ての符号化が完了した後でなければ、次のスライスをリフレッシュモードおよび非リフレッシュモードのうちの何れのモードで符号化するか否かを判断することができない。したがって、処理対象スライスのスライスヘッダを符号化して、その処理対象スライスに対しする全ての符号化が完了した後に、次のスライス(例えばスライスs3)を非リフレッシュモードで符号化すると判断したときには、その処理対象スライスのスライスヘッダにある境界制御フラグを修正しなければならない場合がある。このことは、スライスヘッダの符号化に2つの符号化のパスが必要になることを意味し、実装のコストが増加し、処理負荷が大きくなるという問題がある。つまり、後にスライスヘッダを修正するために、処理されたスライスの全てをメモリに保存する必要があり、その結果、主にメモリの実装コストが増加する。
また、例えばテレビ会議システムのように低遅延が要求されるアプリケーションでは、送信遅延を抑えるために、スライスはさらに小さいパケットに分割される。このようなアプリケーションでは、スライスはより小さい分割単位に分割され、スライスの全ての符号化が完了する前にそれらの分割単位がそれぞれ画像復号装置に送信される。
しかしながら、上述のように、スライスの全てが符号化された後に、境界制御フラグを修正しなければならない場合がある。したがって、後に修正される可能性のあるスライスヘッダを含む最初の分割単位を早く送信することができないため、スライスをより小さい単位に分割しても送信遅延を抑えることができない。
さらに、複数のスライスの復号を並列に行うマルチスライス処理の場合には、処理対象スライスのSAOを行うために、次のスライスの復号を待つ必要があり、処理負荷が高くなるという問題がある。例えば、処理対象スライスの境界制御フラグが1を示す場合、その処理対象スライスの下および右のスライス境界周辺にあるその処理対象スライス内の各画素に対しては、通常処理によってSAOを行う必要がある。しかし、そのSAOを行うためには、上述の下および右のスライス境界を挟んで処理対象スライスと反対側にある次のスライスの画素が必要である。したがって、次のスライスの境界制御フラグが何れの値(0または1)を示している場合であっても、処理対象スライスに対するSAOを行うためには、次のスライスの復号を待たなければならい。
このように、非特許文献1の画像復号方法および画像符号化方法では、処理負荷が大きいという問題がある。
このような問題を解決するために、本発明の一態様に係る画像復号方法は、符号化ピクチャを復号する画像復号方法であって、前記符号化ピクチャに含まれる復号対象スライスのスライス境界に対するデブロッキングフィルタ処理とサンプル適応オフセット処理とを共通に制御するための境界制御フラグを取得し、前記復号対象スライスを復号し、前記境界制御フラグに基づいて、復号された前記復号対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界に対してのみ、前記デブロッキングフィルタ処理を行い、復号された前記復号対象スライスの全てのスライス境界のうち、前記上および左の少なくとも一方のスライス境界に対してのみ、前記境界制御フラグに応じたサンプル適応オフセット処理を行う。
これにより、復号対象スライスの境界制御フラグ(slice_loop_filter_across_slices_enabled_flag)によって制御されるサンプル適応オフセット処理(SAO)の対象とされるスライス境界は、デブロッキングフィルタ処理と同様、復号対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界のみに限定される。したがって、復号対象スライスの境界制御フラグが1を示していても、次のスライスの境界制御フラグが0を示していれば、次のスライスの復号を待つことなく、その復号対象スライスに対してループフィルタ処理(デブロッキングフィルタ処理およびSAO)を行って、その復号対象スライスを出力または表示することができる。これにより、処理負荷を軽減することができる。
また、画像符号化方法では、本発明の一態様に係る画像復号方法における境界制御フラグを用いたループフィルタ処理と同様の処理を行うことができる。この場合、符号化対象スライスの境界制御フラグによって、符号化対象スライスと次のスライスとの間のスライス境界(符号化対象スライスの下および右のスライス境界)に対するループフィルタ処理は制御されない。したがって、GDRを伴う画像符号化を行うときには、符号化対象スライスの符号化が終了した後に、次のスライスが非リフレッシュ領域であることが分かった場合であっても、符号化対象スライスよりも先に符号化されているその境界制御フラグをわざわざ修正する必要がない。これにより、処理負荷を軽減することができる。
上述のような問題を解決するために、本発明の一態様に係る画像復号方法は、符号化ピクチャを復号する画像復号方法であって、前記符号化ピクチャに含まれる復号対象スライスのスライス境界に対するサンプル適応オフセット処理を制御するための境界制御フラグを取得し、前記復号対象スライスを復号し、復号された前記復号対象スライスの上および左の少なくとも一方のスライス境界周辺にある、前記復号対象スライス内の少なくとも1つの画素と、復号された他のスライス内の少なくとも1つの画素とに対するサンプル適応オフセット処理を、前記境界制御フラグに応じて共通に行う。
これにより、復号対象スライスの境界制御フラグ(slice_loop_filter_across_slices_enabled_flag)によって制御されるサンプル適応オフセット処理(SAO)は、デブロッキングフィルタ処理と同様、復号対象スライスの上および左の少なくとも一方のスライス境界周辺にある、復号対象スライス内の画素だけでなく、他のスライス内の画素に対しても共通に行われる。したがって、復号対象スライスの境界制御フラグが1を示していても、次のスライスの境界制御フラグが0を示していれば、次のスライスの復号を待つことなく、その復号対象スライスに対してループフィルタ処理(デブロッキングフィルタ処理およびSAO)を行って、その復号対象スライスを出力または表示することができる。これにより、処理負荷を軽減することができる。
また、画像符号化方法では、本発明の一態様に係る画像復号方法における境界制御フラグを用いたループフィルタ処理と同様の処理を行うことができる。つまり、符号化対象スライスの境界制御フラグによって、符号化対象スライスと次のスライスとの間のスライス境界(符号化対象スライスの下および右のスライス境界)に対するループフィルタ処理は制御されない。したがって、GDRを伴う画像符号化を行うときには、符号化対象スライスの符号化が終了した後に、次のスライスが非リフレッシュ領域であることが分かった場合であっても、符号化対象スライスのその境界制御フラグをわざわざ修正する必要がない。これにより、処理負担を軽減することができる。
また、前記サンプル適応オフセット処理を行う際には、前記境界制御フラグに応じて、前記サンプル適応オフセット処理の処理モードを切り替え、切り替えによって選択された処理モードにしたがって、前記サンプル適応オフセット処理を行ってもよい。例えば、前記サンプル適応オフセット処理を行う際には、前記境界制御フラグが0を示す場合には、前記サンプル適応オフセット処理の処理モードを、オフセットの対象とされる画素に0をオフセット値として加算するパディングモードに切り替え、前記パディングモードにしたがって、前記サンプル適応オフセット処理を行う。より、具体的には、前記サンプル適応オフセット処理には、オフセットの対象とされる画素のエッジ内での特徴に応じて分類される複数の処理モードがあり、前記複数の処理モードのそれぞれにはエッジインデックスが割り当てられてあり、前記サンプル適応オフセット処理を行う際には、前記境界制御フラグが0を示す場合には、エッジインデックスを0に設定することによって、前記サンプル適応オフセット処理の処理モードを前記パディングモードに切り替えてもよい。
これにより、境界制御フラグが0のときには、パディングモードによって、サンプル適応オフセット処理を実質的に機能させないようにすることができる。その結果、復号対象スライスの上よび左の少なくとも一方のスライス境界、つまりこのスライス境界の周辺にある画素に対しては、サンプル適応オフセット処理が実質的に行われないため、そのスライス境界を挟んで復号対象スライスと反対側にある他のスライスと、復号対象スライスとの間でのデータの依存関係を抑えることができる。これにより、複数のスライスの復号を並列に行うマルチスライス処理を容易に行うことができる。
また、前記境界制御フラグに基づいて、デブロッキングフィルタ処理をオンとオフとに切り替え、オンに切り替えられた場合にのみ、前記デブロッキングフィルタ処理を行ってもよい。
これにより、例えば境界制御フラグが0のときには、デブロッキングフィルタ処理をオフに切り替えることによって、デブロッキングフィルタ処理を機能させないようにすることができる。その結果、復号対象スライスの上よび左の少なくとも一方のスライス境界に対しては、デブロッキングフィルタ処理が行われないため、そのスライス境界を挟んで復号対象スライスと反対側にある他のスライスと、復号対象スライスとの間でのデータの依存関係を抑えることができる。これにより、複数のスライスの復号を並列に行うマルチスライス処理を容易に行うことができる。
また、前記境界制御フラグが0を示す場合には、前記デブロッキングフィルタ処理をオフに切り替えることによって、前記デブロッキングフィルタ処理を行わず、前記サンプル適応オフセット処理を行う際には、前記サンプル適応オフセット処理の処理モードを、0をオフセット値として画素値に加算するパディングモードに切り替え、前記パディングモードにしたがって、前記サンプル適応オフセット処理を行ってもよい。
これにより、境界制御フラグが0のときには、復号対象スライスの上よび左の少なくとも一方のスライス境界に対しては、デブロッキングフィルタ処理が行われず、且つ、サンプル適応オフセット処理が実質的に行われないため、そのスライス境界を挟んで復号対象スライスと反対側にある他のスライスと、復号対象スライスとの間でのデータの依存関係をより抑えることができる。これにより、複数のスライスの復号を並列に行うマルチスライス処理をさらに容易に行うことができる。
また、前記境界制御フラグに応じた前記サンプル適応オフセット処理の対象とされる画素が、他のスライスの他の境界制御フラグに応じたサンプル適応オフセット処理の対象にもされる特定画素である場合には、前記サンプル適応オフセット処理を行う際に、前記境界制御フラグと前記他の境界制御フラグのうちの少なくとも一方が0を示す場合には、前記サンプル適応オフセット処理の処理モードを前記パディングモードに切り替え、前記パディングモードにしたがって、前記特定画素に対する前記サンプル適応オフセット処理を行ってもよい。
これにより、1つの画素(特定画素)に対する複数の境界制御フラグによるサンプル適応オフセット処理の制御が競合するような場合には、それらの境界制御フラグのうち0を示す境界制御フラグによる制御が優先される。その結果、その特定画素に対するサンプル適応オフセット処理を適切に行うことができる。
上述のような問題を解決するために、本発明の一態様に係る画像符号化方法は、ピクチャを符号化する画像符号化方法であって、前記ピクチャに含まれる符号化対象スライスのスライス境界に対するデブロッキングフィルタ処理とサンプル適応オフセット処理とを共通に制御するための境界制御フラグを符号化し、前記符号化対象スライスを符号化し、前記符号化対象スライスの符号化によって生成されたデータから前記符号化対象スライスを再構成し、前記境界制御フラグに基づいて、再構成された前記符号化対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界に対してのみ、前記デブロッキングフィルタ処理を行い、再構成された前記符号化対象スライスの全てのスライス境界のうち、前記上および左の少なくとも一方のスライス境界に対してのみ、前記境界制御フラグに応じたサンプル適応オフセット処理を行う。
これにより、符号化対象スライスの境界制御フラグ(slice_loop_filter_across_slices_enabled_flag)によって制御されるサンプル適応オフセット処理(SAO)の対象とされるスライス境界は、デブロッキングフィルタ処理と同様、再構成された符号化対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界のみに限定される。したがって、符号化対象スライスの境界制御フラグが1を示していても、次のスライスの境界制御フラグが0を示していれば、次のスライスの再構成を待つことなく、再構成された符号化対象スライスに対してループフィルタ処理(デブロッキングフィルタ処理およびSAO)を行って、その再構成された符号化対象スライスを予測画像の生成に用いることができる。これにより、処理負荷を軽減することができる。
また、符号化対象スライスの境界制御フラグによって、再構成された符号化対象スライスと再構成された次のスライスとの間のスライス境界(符号化対象スライスの下および右のスライス境界)に対するループフィルタ処理は制御されない。したがって、GDRを伴う画像符号化を行うときには、符号化対象スライスの符号化が終了した後に、次のスライスが非リフレッシュ領域であることが分かった場合であっても、符号化対象スライスよりも先に符号化されているその境界制御フラグをわざわざ修正する必要がない。これにより、処理負荷を軽減することができる。
上述のような問題を解決するために、本発明の一態様に係る画像符号化方法は、ピクチャを符号化する画像符号化方法であって、前記ピクチャに含まれる符号化対象スライスのスライス境界に対するサンプル適応オフセット処理を制御するための境界制御フラグを符号化し、前記符号化対象スライスを符号化し、前記符号化対象スライスの符号化によって生成されたデータから前記符号化対象スライスを再構成し、再構成された前記符号化対象スライスの上および左の少なくとも一方のスライス境界周辺にある、前記符号化対象スライス内の少なくとも1つの画素と、再構成された他のスライス内の少なくとも1つの画素とに対するサンプル適応オフセット処理を、前記境界制御フラグに応じて共通に行う。
これにより、符号化対象スライスの境界制御フラグ(slice_loop_filter_across_slices_enabled_flag)によって制御されるサンプル適応オフセット処理(SAO)は、デブロッキングフィルタ処理と同様、再構成された符号化対象スライスの上および左の少なくとも一方のスライス境界周辺にある、再構成された符号化対象スライス内の画素だけでなく、再構成された他のスライス内の画素に対しても共通に行われる。したがって、符号化対象スライスの境界制御フラグが1を示していても、次のスライスの境界制御フラグが0を示していれば、次のスライスの再構成を待つことなく、その再構成された符号化対象スライスに対してループフィルタ処理(デブロッキングフィルタ処理およびSAO)を行って、その再構成された符号化対象スライスを予測画像の生成に用いることができる。これにより、処理負荷を軽減することができる。
また、符号化対象スライスの境界制御フラグによって、再構成された符号化対象スライスと再構成された次のスライスとの間のスライス境界(符号化対象スライスの下および右のスライス境界)周辺の画素に対するループフィルタ処理は制御されない。したがって、GDRを伴う画像符号化を行うときには、符号化対象スライスの符号化が終了した後に、次のスライスが非リフレッシュ領域であることが分かった場合であっても、符号化対象スライスよりも先に符号化されているその境界制御フラグをわざわざ修正する必要がない。これにより、処理負荷を軽減することができる。
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。
以下、実施の形態について、図面を参照しながら具体的に説明する。
なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、下記では、符号化(coding)はencodingの意味で使用する場合もある。
(実施の形態1)
図6は、本実施の形態における画像符号化装置の構成を示すブロック図である。
画像符号化装置100は、減算器101、変換部102、量子化部103、エントロピー符号化部104、逆量子化部105、逆変換部106、加算器107、デブロッキングフィルタ109、SAO部110、境界制御部111、および予測部112を備える。
減算器101は、動画像に含まれるブロックごとに、そのブロックと、予測部112によって生成された予測画像との差分を差分画像として算出する。
変換部102は、差分画像に対して離散コサイン変換などの直交変換を行うことにより、少なくとも1つの周波数係数を含む係数ブロックを生成する。
量子化部103は、係数ブロックに含まれる各周波数係数を量子化パラメータ(QP)にしたがって量子化することにより、少なくとも1つの量子化値を含む量子化ブロックを生成する。
エントロピー符号化部104は、量子化ブロックに含まれる各量子化値と、上述の量子化パラメータと、境界制御フラグとをエントロピー符号化することによって、ビットストリームを生成する。
逆量子化部105は、上述の量子化ブロックに対して逆量子化を行うことによって、少なくとも1つの周波数係数を含む係数ブロックを復元する。なお、この係数ブロックは、変換部102によって生成された係数ブロックと同一ではなく、量子化誤差を含む。
逆変換部106は、逆量子化部105によって復元された係数ブロックに対して逆離散コサイン変換などの逆直交変換を行うことにより、復号差分画像を生成する。
加算器107は、復号差分画像と、予測部112によって生成された予測画像とを加算することによって、再構成画像を生成する。
デブロッキングフィルタ109は、加算器107から少なくとも1つの再構成画像を取得し、それらの再構成画像の所定の境界に対してデブロッキングフィルタ処理を行う。ここで、デブロッキングフィルタ109は、処理対象スライスの所定のスライス境界に対しては、境界制御部111による制御に応じてデブロッキングフィルタ処理を行う。
SAO部110は、デブロッキングフィルタ109から少なくとも1つの再構成画像を取得すると、それらの再構成画像に対してSAOを行う。ここで、SAO部110は、それらの再構成画像から構成される処理対象スライスの所定のスライス境界に対しては、境界制御部111による制御に応じてSAOを行う。
予測部112は、SAOが行われた処理対象スライスを用いて符号化対象ブロックの予測画像を生成し、その予測画像を減算器101と加算器107とに出力する。
図7A〜図7Cは、本実施の形態における境界制御を説明するための図である。
境界制御部111は、処理対象(符号化対象)スライスに対する境界制御フラグを設定する。
境界制御フラグ(slice_loop_filter_across_slices_enable_flag)は、デブロッキングフィルタ処理とSAOのそれぞれのループフィルタ処理を共通に制御するためのものである。つまり、境界制御フラグは、デブロッキングフィルタ処理をオンとオフとに切り替えるために、且つ、SAOの処理モードを通常処理(通常処理モード)とパディング(パディングモード)とに切り替えるために用いられる。
図7Aに示すように、本実施の形態における境界制御フラグによって制御されるデブロッキングフィルタ処理の対象とされるスライス境界は、その境界制御フラグに対応する処理対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界である。具体的には、処理対象スライスがスライスs2の場合、スライスs2の境界制御フラグに基づいて、スライスs2の全てのスライス境界sb1〜sb5のうち、上および左のそれぞれのスライス境界sb1およびsb2に対してのみ、デブロッキングフィルタ処理が行われる。なお、処理対象スライスに、上のスライス境界および左のスライス境界があるときには、それらのスライス境界がデブロッキングフィルタ処理の対象となり、何れか一方のスライス境界しかないときには、その一方のスライス境界がデブロッキングフィルタ処理の対象となる。また、デブロッキングフィルタ処理は、そのスライス境界周辺にある、処理対象スライス内の少なくとも1つの画素と、そのスライス境界周辺にある、他のスライス内の少なくとも1つの画素とに対して行われる。
図7Bに示すように、本実施の形態における境界制御フラグによって制御されるSAOの対象とされるスライス境界は、デブロッキングフィルタ処理の対象とされるスライス境界と同一である。つまり、SAOの対象とされるスライス境界は、その境界制御フラグに対応する処理対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界である。具体的には、処理対象スライスがスライスs2の場合、スライスs2の全てのスライス境界sb1〜sb5のうち、上および左のそれぞれのスライス境界sb1およびsb2に対してのみ、スライスs2の境界制御フラグに応じたSAOが行われる。なお、処理対象スライスに、上のスライス境界および左のスライス境界があるときには、それらのスライス境界がSAOの対象となり、何れか一方のスライス境界しかないときには、その一方のスライス境界がSAOの対象となる。また、SAOは、デブロッキングフィルタ処理と同様に、そのスライス境界周辺にある、処理対象スライス内の少なくとも1つの画素と、そのスライス境界周辺にある、他のスライス内の少なくとも1つの画素とに対して共通に行われる。
図7Cに示すように、スライスs2の境界制御フラグによって、スライスs1とスライスs2とのスライス境界の周辺、つまりスライスs2の上と左のスライス境界の周辺にある画素に対するデブロッキングフィルタ処理とSAOとが制御される。例えば、境界制御フラグ=1の場合、デブロッキングフィルタ109によるデブロッキングフィルタ処理がオンに設定され、SAO部110によるSAOの処理モードが通常処理に設定される。つまり、スライスs2の上と左のスライス境界の周辺にある、スライスs2内の各画素と、スライスs1内の各画素とに対して、デブロッキングフィルタ109はデブロッキングフィルタ処理を行い、SAO部110はSAOを通常処理によって行う。
また、スライスs3の境界制御フラグによって、スライスs2とスライスs3とのスライス境界の周辺、つまりスライスs3の上と左のスライス境界の周辺にある、スライスs3内の各画素と、スライスs2内の各画素とに対するデブロッキングフィルタ処理とSAOとが制御される。例えば、境界制御フラグ=0の場合、デブロッキングフィルタ109によるデブロッキングフィルタ処理がオフに設定され、SAO部110によるSAOの処理モードがパディングに設定される。つまり、スライスs3の上と左のスライス境界の周辺にある、スライスs3内の各画素と、スライスs2内の各画素とに対しては、デブロッキングフィルタ109はデブロッキングフィルタ処理を行わず、SAO部110はSAOをパディングによって行う。
具体的には、SAO部110は、上述のスライス境界周辺にあるスライスs3内の各画素と、スライスs2内の画素とに対しては、エッジインデックス=0を設定することによって、上述のパディングを行う。なお、SAO部110は、上述のスライス境界周辺にあるスライスs2の画素に対するSAOでは、スライスs3の画素が参照される可能性があるため、そのスライスs2の画素に対するSAOをパディングによって行う。また、SAO部110は、スライスs2の画素と同様に、上述のスライス境界周辺にあるスライスs3の画素に対するSAOでは、スライスs2の画素が参照される可能性があるため、そのスライスs3の画素に対するSAOをパディングによって行う。
このように、本実施の形態では、SAO部110は、デブロッキングフィルタ処理の対象とされるスライス境界と同様に、その処理対象スライスのスライス境界のうち、上と左のスライス境界に対してのみ、その処理対象スライスの境界制御フラグに応じたSAOを行う。その結果、画像符号化装置100は、スライスに含まれる全てのLCUを符号化した後に、スライスヘッダを修正する必要なく、GDRを伴う符号化を行うことができる。
さらに、スライスs1とスライスs2とのスライス境界と、スライスs3とスライスs4とのスライス境界では、ループフィルタ処理の切り替えが行われないため、これらのスライス境界における画質を向上することができる。
図8は、本実施の形態における境界制御をさらに詳細に説明するための図である。
例えば、GDRによって、図8に示すように、スライスs1およびスライスs2はそれぞれリフレッシュ領域とされ、スライスs3およびスライスs4はそれぞれ非リフレッシュ領域とされる。
このような場合、本実施の形態では、スライスs3の境界制御フラグを0に設定するだけで、他の3つのスライスの境界制御フラグを1に設定していても、リフレッシュ領域と非リフレッシュ領域との間でデータの依存関係が生じることを避けることができる。
その結果、スライスs1とスライスs2とのスライス境界、およびスライスs3とスライスs4とのスライス境界において、デブロッキングフィルタ処理をオフにしたり、SAOをパディングによって行ったりするように、ループフィルタ処理を機能させないようにする必要がない。
このように、本実施の形態では、処理対象スライスの境界制御フラグは、処理対象スライスのスライス境界のうち上のスライス境界と左のスライス境界のみに対する、デブロッキングフィルタ処理とSAOとの制御に共通に用いられる。
図9は、本実施の形態における画像符号化装置100の処理動作を示すフローチャートである。
まず、画像符号化装置100の境界制御部111は、処理対象スライスの境界制御フラグを決定して、エントロピー符号化部104はその境界制御フラグをエントロピー符号化する(ステップS101)。次に、画像符号化装置100は、処理対象スライスを符号化し、その符号化によって生成されたデータから処理対象スライスの再構成画像を生成する(ステップS102)。次に、境界制御部111は、ステップS101で決定された境界制御フラグが0であるか否かを判定する(ステップS103)。ここで、境界制御フラグが0であると判定したときには(ステップS103のYes)、境界制御部111は、デブロッキングフィルタ109を制御することによって、処理対象スライスの上と左のスライス境界に対するデブロッキングフィルタ処理をオフに設定する。さらに、境界制御部111は、SAO部110を制御することによって、それらのスライス境界に対するSAOの処理モードをパディングに設定する(ステップS104)。一方、境界制御フラグが1であると判定したときには(ステップS103のNo)、境界制御部111は、デブロッキングフィルタ109を制御することによって、上述の上と左のスライス境界に対して、デブロッキングフィルタ処理をオンに設定する(ステップS105)。そして、デブロッキングフィルタ109は、上述の上と左のスライス境界に対してデブロッキングフィルタ処理を行う(ステップS106)。
次に、ステップS104またはステップS106の処理が実行された後、SAO部110は、上述の上と左のスライス境界に対してSAOを行う(ステップS107)。なお、このとき、ステップS104でSAOの処理モードがパディングに設定されているときには、そのパディングにしたがったSAOが行われる。
そして、画像符号化装置100は、符号化対象ピクチャにおいて符号化されていないスライスがあるか否かを判定する(ステップS108)。ここで、符号化されていないスライスがあると判定すると(ステップS108のYes)、画像符号化装置100は、その符号化されていないスライスを新たな処理対象スライスとして選択し(ステップS109)、ステップS101からの処理を繰り返し実行する。
なお、処理対象スライスにおける全てのスライス境界のうち、上述の上と左のスライス境界だけに対してループフィルタ処理が制御される。また、上と左のスライス境界のうち何れか一方のスライス境界がなければ、他方のスライス境界のみに対してループフィルタ処理が制御される。さらに、ループフィルタ処理の対象とされるスライス境界では、そのスライス境界の周辺にあって、そのスライス境界を挟む位置にある画素に対してループフィルタ処理が行われる。
このように本実施の形態における画像符号化方法では、処理対象スライスの境界制御フラグ(slice_loop_filter_across_slices_enabled_flag)によって制御されるサンプル適応オフセット処理(SAO)の対象とされるスライス境界は、デブロッキングフィルタ処理と同様、再構成された処理対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界のみに限定される。また、処理対象スライスの境界制御フラグによって制御されるサンプル適応オフセット処理(SAO)は、デブロッキングフィルタ処理と同様、再構成された処理対象スライスの上および左の少なくとも一方のスライス境界周辺にある、再構成された処理対象スライス内の画素だけでなく、再構成された他のスライス内の画素に対しても共通に行われる。
したがって、処理対象スライスの境界制御フラグが1を示していても、次のスライスの境界制御フラグが0を示していれば、次のスライスの再構成を待つことなく、再構成された処理対象スライスに対してループフィルタ処理(デブロッキングフィルタ処理およびSAO)を行って、その再構成された処理対象スライスを予測画像の生成に用いることができる。これにより、処理負荷を軽減することができる。
また、処理対象スライスの境界制御フラグによって、再構成された処理対象スライスと再構成された次のスライスとの間のスライス境界(処理対象スライスの下および右のスライス境界)に対するループフィルタ処理は制御されない。したがって、GDRを伴う画像符号化を行うときには、処理対象スライスの符号化が終了した後に、次のスライスが非リフレッシュ領域であることが分かった場合であっても、処理対象スライスよりも先に符号化されているその境界制御フラグをわざわざ修正する必要がない。これにより、処理負荷を軽減することができる。
図10は、本実施の形態における画像復号装置の構成を示すブロック図である。
画像復号装置200は、エントロピー復号部204、逆量子化部205、逆変換部206、加算器207、デブロッキングフィルタ209、SAO部210、境界制御部211、および予測部212を備える。
エントロピー復号部204は、符号化された動画像を示すビットストリームを取得し、そのビットストリームに対してエントロピー復号を行う。これにより、エントロピー復号部204は、少なくとも1つの量子化値を含む量子化ブロックと、量子化パラメータ(QP)と、境界制御フラグとを出力する。
逆量子化部205は、エントロピー復号部204から出力された量子化パラメータと量子化ブロックとを取得し、その量子化パラメータを用いて量子化ブロックに対する逆量子化を行うことによって、少なくとも1つの周波数係数を含む係数ブロックを復元する。
逆変換部206は、逆量子化部205によって復元された係数ブロックに対して逆離散コサイン変換などの逆直交変換を行うことにより、復号差分画像を生成する。
加算器207は、復号差分画像と、予測部212によって生成された予測画像とを加算することによって、再構成画像を生成する。このような再構成画像が順次生成されることによって、ビットストリーム中の符号化ピクチャに含まれる処理対象(復号対象)スライスが復号される。
デブロッキングフィルタ209は、加算器207から少なくとも1つの再構成画像を取得し、それらの再構成画像の所定の境界に対してデブロッキングフィルタ処理を行う。ここで、デブロッキングフィルタ209は、処理対象スライスの所定のスライス境界に対しては、境界制御部211による制御に応じてデブロッキングフィルタ処理を行う。
SAO部210は、デブロッキングフィルタ209から少なくとも1つの再構成画像を取得すると、それらの再構成画像に対してSAOを行う。ここで、SAO部110は、それらの再構成画像から構成される処理対象スライスの所定のスライス境界に対しては、境界制御部211による制御に応じてSAOを行う。
予測部212は、SAOが行われた処理対象スライスを用いて符号化対象ブロックの予測画像を生成し、その予測画像を加算器207に出力する。
図11は、本実施の形態における画像復号装置200の処理動作を示すフローチャートである。
まず、画像復号装置200のエントロピー復号部204は、ビットストリームから処理対象(復号対象)スライスの境界制御フラグを抽出して、その境界制御フラグをエントロピー復号する(ステップS201)。次に、画像復号装置200は、処理対象スライスを復号する(ステップS202)。次に、境界制御部211は、ステップS201でエントロピー復号された境界制御フラグが0であるか否かを判定する(ステップS203)。ここで、境界制御フラグが0であると判定したときには(ステップS203のYes)、境界制御部211は、デブロッキングフィルタ209を制御することによって、処理対象スライスの上と左のスライス境界に対するデブロッキングフィルタ処理をオフに設定する。さらに、境界制御部211は、SAO部210を制御することによって、それらのスライス境界に対するSAOの処理モードをパディングに設定する(ステップS204)。一方、境界制御フラグが1であると判定したときには(ステップS203のNo)、境界制御部211は、デブロッキングフィルタ209を制御することによって、上述の上と左のスライス境界に対するデブロッキングフィルタ処理をオンに設定する(ステップS205)。そして、デブロッキングフィルタ209は、上述の上と左のスライス境界に対してデブロッキングフィルタ処理を行う(ステップS206)。
次に、ステップS204またはステップS206の処理が実行された後、SAO部210は、上述の上と左のスライス境界に対してSAOを行う(ステップS207)。なお、このとき、ステップS204でSAOの処理モードがパディングに設定されているときには、そのパディングにしたがったSAOが行われる。
そして、画像復号装置200は、復号対象ピクチャにおいて復号されていないスライスがあるか否かを判定する(ステップS208)。ここで、復号されていないスライスがあると判定すると(ステップS208のYes)、画像復号装置200は、その復号されていないスライスを新たな処理対象スライスとして選択し(ステップS209)、ステップS201からの処理を繰り返し実行する。
なお、処理対象スライスにおける全てのスライス境界のうち、上述の上と左のスライス境界だけに対してループフィルタ処理が制御される。また、上と左のスライス境界のうち何れか一方のスライス境界がなければ、他方のスライス境界のみに対してループフィルタ処理が制御される。さらに、ループフィルタ処理の対象とされるスライス境界では、そのスライス境界の周辺にあって、そのスライス境界を挟む位置にある画素に対してループフィルタ処理が行われる。
このように、本実施の形態における画像復号方法および画像復号装置200は、上述の画像符号化方法および画像符号化装置100と同様に、境界制御フラグに基づいて、処理対象スライスのスライス境界に対するループフィルタ処理を制御する。つまり、本実施の形態における画像復号方法および画像復号装置200は、図7A〜図8を用いて説明した処理動作にしたがって、処理対象スライスのスライス境界に対するデブロッキングフィルタ処理とSAOとを行う。なお、画像復号方法および画像復号装置200において用いられる処理対象スライスは、復号対象スライスであり、画像符号化方法および画像符号化装置100において用いられる処理対象スライスは、符号化対象スライスである。
つまり、本実施の形態における画像復号方法では、処理対象スライスの境界制御フラグ(slice_loop_filter_across_slices_enabled_flag)によって制御されるサンプル適応オフセット処理(SAO)の対象とされるスライス境界は、デブロッキングフィルタ処理と同様、処理対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界のみに限定される。また、処理対象スライスの境界制御フラグによって制御されるサンプル適応オフセット処理(SAO)は、デブロッキングフィルタ処理と同様、処理対象スライスの上および左の少なくとも一方のスライス境界周辺にある、処理対象スライス内の画素だけでなく、他のスライス内の画素に対しても共通に行われる。
したがって、処理対象スライスの境界制御フラグが1を示していても、次のスライスの境界制御フラグが0を示していれば、次のスライスの復号を待つことなく、その処理対象スライスに対してループフィルタ処理(デブロッキングフィルタ処理およびSAO)を行って、その処理対象スライスを出力または表示することができる。これにより、処理負荷を軽減することができる。
さらに、本実施の形態では、境界制御フラグが0のときには、パディングモードによって、サンプル適応オフセット処理を実質的に機能させないようにすることができる。その結果、処理対象スライスの上よび左の少なくとも一方のスライス境界、つまりこのスライス境界の周辺にある画素に対しては、サンプル適応オフセット処理が実質的に行われないため、そのスライス境界を挟んで処理対象スライスと反対側にある他のスライスと、処理対象スライスとの間でのデータの依存関係を抑えることができる。これにより、複数のスライスの処理を並列に行うマルチスライス処理を容易に行うことができる。
さらに、本実施の形態では、境界制御フラグが0のときには、デブロッキングフィルタ処理をオフに切り替えることによって、デブロッキングフィルタ処理を機能させないようにすることができる。その結果、処理対象スライスの上よび左の少なくとも一方のスライス境界に対しては、デブロッキングフィルタ処理が行われないため、そのスライス境界を挟んで処理対象スライスと反対側にある他のスライスと、処理対象スライスとの間でのデータの依存関係を抑えることができる。これにより、複数のスライスの処理を並列に行うマルチスライス処理を容易に行うことができる。
(変形例1)
上記実施の形態における画像符号化方法および画像復号方法では、境界制御フラグに応じてSAOの処理モードを通常処理とパディングとに切り替えたが、デブロッキングフィルタ処理と同様に、SAOをオンとオフとに切り替えてもよい。
図12は、本変形例にかかるスライス境界に対するSAOの制御を説明するための図である。
この図12に示すように、スライスs3の境界制御フラグによって、スライスs2とスライスs3とのスライス境界の周辺、つまりスライスs3の上と左のスライス境界の周辺にある画素に対するSAOが、デブロッキングフィルタ処理と同様にオンとオフとに切り替えられる。
例えば、境界制御フラグ=0の場合、本変形例では、デブロッキングフィルタ処理は、上記実施の形態1と同様にオフに設定されるが、SAOもオフに設定される。つまり、スライスs3の上と左のスライス境界の周辺にある、スライスs3内の各画素とスライスs2内の各画素に対しては、デブロッキングフィルタ109,209はデブロッキングフィルタ処理を行わず、SAO部110,210もSAOを行わない。
つまり、SAO部110,210は、上述のスライス境界周辺にあるスライスs2の画素に対するSAOでは、スライスs3の画素が参照される可能性があるため、そのスライスs2の画素に対するSAOを行わない。また、SAO部110,210は、スライスs2の画素と同様に、上述のスライス境界周辺にあるスライスs3の画素に対するSAOでは、スライスs2の画素が参照される可能性があるため、そのスライスs3の画素に対するSAOを行わない。
このように本変形例では、SAOをオンとオフとに切り替えることによって、上記実施の形態と同様の効果を奏することができる。
(変形例2)
上記実施の形態における画像符号化方法および画像復号方法では、1つの画素が、複数の境界制御フラグに応じたループフィルタ処理の対象となってしまう場合がある。本変形例では、このような場合にも、その画素に対するループフィルタ処理を適切に行うことができる点に特徴がある。
図13は、スライスの角周辺におけるSAOのマスクの一例を示す図である。
上記実施の形態における境界制御フラグでは、スライスの角周辺にある画素に対するSAOをどのように行うかが不明確になる場合がある。SAOが適用される画素は、図13に示すマスクに含まれる3つの画素(図13中の3つの黒色の点)のうちの中央の画素である。この画素に対するSAOは、スライスs2とスライスs3のそれぞれの境界制御フラグによって同時に制御される。
図14は、スライスの角周辺におけるSAOのマスクの他の例を示す図である。
SAOが適用される画素は、図14に示すマスクに含まれる3つの画素のうちの中央の画素である。この画素に対するSAOは、図13に示す例と同様に、スライスs2とスライスs3のそれぞれの境界制御フラグによって同時に制御される。
図15A〜図15Fは、スライスの角周辺におけるSAOのマスクのさらに他の例を示す図である。
これらの図15A〜図15Fに示す例の場合であっても、上述と同様に、中央の画素に対するSAOは、いずれのスライス(スライスs2またはスライスs3)の境界制御フラグによって制御されるべきか不明確である。そして、これらの例においても、その制御を適切に行わなければならない。
図16は、SAOが適用される中央の画素とその周辺の画素との位置関係を示す図である。本変形例では、ルール1とルール2とを用いる。
ルール1では、以下の条件(1)〜(3)が満たされる場合には、その中央の画素に対するSAOでは、エッジインデックスが0に設定される。条件(1)は、中央の画素が処理対象スライス(スライスs1)内にあって、且つ、他のスライス(スライスs2)内にある画素がその中央の画素のSAOに必要とされることである。条件(2)は、他のスライス(スライスs2)内にある画素が、中央の画素の右、上、下、右上、または左下にあることである。条件(3)は、他のスライス(スライスs2)の境界制御フラグが0であることである。
ルール2では、以下の条件(1)〜(3)が満たされる場合には、その中央の画素に対するSAOでは、エッジインデックスが0に設定される。条件(1)は、中央の画素が処理対象スライス(スライスs1)内にあって、且つ、他のスライス(スライスs2)内にある画素がその中央の画素のSAOに必要とされることである。条件(2)は、他のスライス(スライスs2)内にある画素が、中央の画素の左、上、左上、右上、または左下にあることである。条件(3)は、処理対象スライス(スライスs1)の境界制御フラグが0であることである。
図17は、スライスの角周辺における45°のSAOのマスクの例を示す図である。
図17に示す3つの画素のうちの中央の画素に対して、45°のマスクを用いたSAOが適用される。この場合、中央の画素は、処理対象スライスであるスライスs3内にあって、且つ、他のスライスs2内にある画素がその中央の画素のSAOに必要とされる。したがって、スライスs2およびスライスs3のいずれかの境界制御フラグが0を示していれば、その中央の画素に対するSAOでは、エッジインデックスが0に設定される。
図18は、スライスの角周辺における135°のSAOのマスクの例を示す図である。
図18に示す3つの画素のうちの中央の画素に対して、135°のマスクを用いたSAOが適用される。この場合、中央の画素は、処理対象スライスであるスライスs2内にあって、且つ、他のスライスs1内にある画素とスライスs3内にある画素とがその中央の画素のSAOに必要とされる。したがって、スライスs2およびスライスs3のいずれかの境界制御フラグが0を示していれば、その中央の画素に対するSAOでは、エッジインデックスが0に設定される。
このように、本変形例では、スライスの角周辺ではパディングに優先度がある。これにより、スライスの角周辺にある1つの画素のためにスライスの全てのスライス境界においてパディングを行う必要がないため、スライス境界周辺の各画素に対して適切なループフィルタ処理を行うことができる。
言い換えれば、本変形例では、境界制御フラグに応じたSAOの対象とされる画素が、他のスライスの他の境界制御フラグに応じたSAOの対象にもされる特定画素であって、且つ、その境界制御フラグと他の境界制御フラグのうちの少なくとも一方が0を示す場合には、SAOの処理モードはパディングに切り替えられる。そして、パディングにしたがって、その特定画素に対するSAOが行われる。これにより、1つの画素(特定画素)に対する複数の境界制御フラグによるSAOの制御が競合するような場合には、それらの境界制御フラグのうち0を示す境界制御フラグによる制御が優先される。その結果、その特定画素に対するSAOを適切に行うことができる。
以上、一つまたは複数の態様に係る画像復号方法および画像符号化方法について、実施の形態およびその変形例に基づいて説明したが、本発明は、この実施の形態および変形例に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態および変形例に施したものや、各変形例における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。また、本発明の一態様または他の態様に係る画像復号方法および画像復号装置は、以下のようなものであってもよい。
図19Aは、本発明の一態様に係る画像復号方法を示すフローチャートである。
符号化ピクチャを復号する画像復号方法は、以下のステップS11〜S14を含む。ステップS11では、符号化ピクチャに含まれる復号対象スライスのスライス境界に対するデブロッキングフィルタ処理とサンプル適応オフセット処理とを共通に制御するための境界制御フラグを取得する。次に、ステップS12では、前記復号対象スライスを復号する。次に、ステップS13では、前記境界制御フラグに基づいて、復号された前記復号対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界に対してのみ、前記デブロッキングフィルタ処理を行う。そして、ステップS14では、復号された前記復号対象スライスの全てのスライス境界のうち、前記上および左の少なくとも一方のスライス境界に対してのみ、前記境界制御フラグに応じたサンプル適応オフセット処理を行う。
図19Bは、本発明の一態様に係る画像復号装置の構成を示すブロック図である。
符号化ピクチャを復号する画像復号装置10は、フラグ取得部11、復号部12、デブロッキングフィルタ13およびSAO部14を備える。フラグ取得部11は、符号化ピクチャに含まれる復号対象スライスのスライス境界に対するデブロッキングフィルタ処理とサンプル適応オフセット処理とを共通に制御するための境界制御フラグを取得する。次に、復号部12は、前記復号対象スライスを復号する。次に、デブロッキングフィルタ13は、前記境界制御フラグに基づいて、復号された前記復号対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界に対してのみ、前記デブロッキングフィルタ処理を行う。そして、SAO部14は、復号された前記復号対象スライスの全てのスライス境界のうち、前記上および左の少なくとも一方のスライス境界に対してのみ、前記境界制御フラグに応じたサンプル適応オフセット処理を行う。
このような本発明の一態様に係る画像復号方法および画像復号装置であっても、上記実施の形態およびその変形例と同様の効果を奏することができる。
図20Aは、本発明の他の態様に係る画像復号方法を示すフローチャートである。
符号化ピクチャを復号する画像復号方法は、以下のステップS21〜S23を含む。ステップS21では、符号化ピクチャに含まれる復号対象スライスのスライス境界に対するサンプル適応オフセット処理を制御するための境界制御フラグを取得する。次に、ステップS22では、前記復号対象スライスを復号する。そして、ステップS23では、復号された前記復号対象スライスの上および左の少なくとも一方のスライス境界周辺にある、前記復号対象スライス内の少なくとも1つの画素と、復号された他のスライス内の少なくとも1つの画素とに対するサンプル適応オフセット処理を、前記境界制御フラグに応じて共通に行う。
図20Bは、本発明の他の態様に係る画像復号装置の構成を示すブロック図である。
符号化ピクチャを復号する画像復号装置20は、フラグ取得部21、復号部22およびSAO部23を備える。フラグ取得部21は、符号化ピクチャに含まれる復号対象スライスのスライス境界に対するサンプル適応オフセット処理を制御するための境界制御フラグを取得する。次に、復号部22は、前記復号対象スライスを復号する。そして、SAO部23は、復号された前記復号対象スライスの上および左の少なくとも一方のスライス境界周辺にある、前記復号対象スライス内の少なくとも1つの画素と、復号された他のスライス内の少なくとも1つの画素とに対するサンプル適応オフセット処理を、前記境界制御フラグに応じて共通に行う。
このような本発明の他の態様に係る画像復号方法および画像復号装置であっても、上記実施の形態およびその変形例と同様の効果を奏することができる。
図21Aは、本発明の一態様に係る画像符号化方法を示すフローチャートである。
ピクチャを符号化する画像符号化方法は、以下のステップS31〜S35を含む。ステップS31では、前記ピクチャに含まれる符号化対象スライスのスライス境界に対するデブロッキングフィルタ処理とサンプル適応オフセット処理とを共通に制御するための境界制御フラグを符号化する。次に、ステップS32では、前記符号化対象スライスを符号化する。次に、ステップS33では、前記符号化によって生成されたデータから前記符号化対象スライスを再構成する。次に、ステップS34では、前記境界制御フラグに基づいて、再構成された前記符号化対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界に対してのみ、前記デブロッキングフィルタ処理を行う。そして、ステップS35では、再構成された前記符号化対象スライスの全てのスライス境界のうち、前記上および左の少なくとも一方のスライス境界に対してのみ、前記境界制御フラグに応じたサンプル適応オフセット処理を行う。
図21Bは、本発明の一態様に係る画像符号化装置の構成を示すブロック図である。
ピクチャを符号化する画像符号化装置30は、フラグ符号化部31、符号化部32、再構成部33、デブロッキングフィルタ34およびSAO部35を備える。つまり、フラグ符号化部31は、前記ピクチャに含まれる符号化対象スライスのスライス境界に対するデブロッキングフィルタ処理とサンプル適応オフセット処理とを共通に制御するための境界制御フラグを符号化する。次に、符号化部32は、前記符号化対象スライスを符号化する。次に、再構成部33は、前記符号化対象スライスの符号化によって生成されたデータから前記符号化対象スライスを再構成する。次に、デブロッキングフィルタ34は、前記境界制御フラグに基づいて、再構成された前記符号化対象スライスの全てのスライス境界のうち、上および左の少なくとも一方のスライス境界に対してのみ、前記デブロッキングフィルタ処理を行う。そして、SAO部35は、再構成された前記符号化対象スライスの全てのスライス境界のうち、前記上および左の少なくとも一方のスライス境界に対してのみ、前記境界制御フラグに応じたサンプル適応オフセット処理を行う。
このような本発明の一態様に係る画像符号化方法および画像符号化装置であっても、上記実施の形態およびその変形例と同様の効果を奏することができる。
図22Aは、本発明の他の態様に係る画像符号化方法を示すフローチャートである。
ピクチャを符号化する画像符号化方法は、以下のステップS41〜S44を含む。ステップS41では、前記ピクチャに含まれる符号化対象スライスのスライス境界に対するサンプル適応オフセット処理を制御するための境界制御フラグを符号化する。次に、ステップS42では、前記符号化対象スライスを符号化する。次に、ステップS43では、前記符号化対象スライスの符号化によって生成されたデータから前記符号化対象スライスを再構成する。そして、ステップS44では、再構成された前記符号化対象スライスの上および左の少なくとも一方のスライス境界周辺にある、前記符号化対象スライス内の少なくとも1つの画素と、再構成された他のスライス内の少なくとも1つの画素とに対するサンプル適応オフセット処理を、前記境界制御フラグに応じて共通に行う。
図22Bは、本発明の他の態様に係る画像符号化装置の構成を示すブロック図である。
ピクチャを符号化する画像符号化装置40は、フラグ符号化部41、符号化部42、再構成部43およびSAO部44を備える。つまり、フラグ符号化部41は、前記ピクチャに含まれる符号化対象スライスのスライス境界に対するサンプル適応オフセット処理を制御するための境界制御フラグを符号化する。次に、符号化部42は、前記符号化対象スライスを符号化する。次に、再構成部43は、前記符号化対象スライスの符号化によって生成されたデータから前記符号化対象スライスを再構成する。そして、SAO部44は、再構成された前記符号化対象スライスの上および左の少なくとも一方のスライス境界周辺にある、前記符号化対象スライス内の少なくとも1つの画素と、再構成された他のスライス内の少なくとも1つの画素とに対するサンプル適応オフセット処理を、前記境界制御フラグに応じて共通に行う。
このような本発明の他の態様に係る画像符号化方法および画像符号化装置であっても、上記実施の形態およびその変形例と同様の効果を奏することができる。
なお、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。言い換えると、画像符号化装置および画像復号装置は、処理回路(processing circuitry)と、当該処理回路に電気的に接続された(当該処理回路からアクセス可能な)記憶装置(storage)とを備える。処理回路は、専用のハードウェアおよびプログラム実行部の少なくとも一方を含む。また、記憶装置は、処理回路がプログラム実行部を含む場合には、当該プログラム実行部により実行されるソフトウェアプログラムを記憶する。ここで、上記実施の形態の画像復号装置を実現するソフトウェアは、図19Aまたは図20Aに示す各ステップをコンピュータに実行させるプログラムである。また、上記実施の形態の画像符号化装置を実現するソフトウェアは、図21Aまたは図22Aに示す各ステップをコンピュータに実行させるプログラムである。
なお、本実施の形態およびその変形例では、処理対象スライスと他のスライスとの間の境界であるスライス境界に対してループフィルタ処理を行ったが、このようなスライス境界に限らず、処理対象スライスの境界であればどのような境界に対してもループフィルタ処理を行ってもよい。また、本実施の形態およびその変形例では、境界制御フラグに基づいてスライス境界に対するループフィルタ処理を制御したが、スライスの内部では、ループフィルタ処理を通常どおり行ってもよい。
(実施の形態2)
上記各実施の形態で示した動画像符号化方法(画像符号化方法)または動画像復号化方法(画像復号方法)の構成を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等、プログラムを記録できるものであればよい。
さらにここで、上記各実施の形態で示した動画像符号化方法(画像符号化方法)や動画像復号化方法(画像復号方法)の応用例とそれを用いたシステムを説明する。当該システムは、画像符号化方法を用いた画像符号化装置、及び画像復号方法を用いた画像復号装置からなる画像符号化復号装置を有することを特徴とする。システムにおける他の構成について、場合に応じて適切に変更することができる。
図23は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex106、ex107、ex108、ex109、ex110が設置されている。
このコンテンツ供給システムex100は、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex106からex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114、ゲーム機ex115などの各機器が接続される。
しかし、コンテンツ供給システムex100は図23のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、固定無線局である基地局ex106からex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器であり、カメラex116はデジタルカメラ等の静止画撮影、動画撮影が可能な機器である。また、携帯電話ex114は、GSM(登録商標)(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband-Code Division Multiple Access)方式、若しくはLTE(Long Term Evolution)方式、HSPA(High Speed Packet Access)の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して上記各実施の形態で説明したように符号化処理を行い(即ち、本発明の一態様に係る画像符号化装置として機能する)、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号化処理して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
なお、撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。同様に配信されたデータの復号化処理はクライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。また、カメラex113に限らず、カメラex116で撮影した静止画像および/または動画像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理はカメラex116、コンピュータex111、ストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。
また、これら符号化・復号化処理は、一般的にコンピュータex111や各機器が有するLSIex500において処理する。LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、動画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化・復号化処理を行ってもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した動画データを送信してもよい。このときの動画データは携帯電話ex114が有するLSIex500で符号化処理されたデータである。
また、ストリーミングサーバex103は複数のサーバや複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号化し、再生することができ、特別な権利や設備を有さないユーザでも個人放送を実現できる。
なお、コンテンツ供給システムex100の例に限らず、図24に示すように、デジタル放送用システムex200にも、上記各実施の形態の少なくとも動画像符号化装置(画像符号化装置)または動画像復号化装置(画像復号装置)のいずれかを組み込むことができる。具体的には、放送局ex201では映像データに音楽データなどが多重化された多重化データが電波を介して通信または衛星ex202に伝送される。この映像データは上記各実施の形態で説明した動画像符号化方法により符号化されたデータである(即ち、本発明の一態様に係る画像符号化装置によって符号化されたデータである)。これを受けた放送衛星ex202は、放送用の電波を発信し、この電波を衛星放送の受信が可能な家庭のアンテナex204が受信する。受信した多重化データを、テレビ(受信機)ex300またはセットトップボックス(STB)ex217等の装置が復号化して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
また、DVD、BD等の記録メディアex215に記録した多重化データを読み取り復号化する、または記録メディアex215に映像信号を符号化し、さらに場合によっては音楽信号と多重化して書き込むリーダ/レコーダex218にも上記各実施の形態で示した動画像復号化装置または動画像符号化装置を実装することが可能である。この場合、再生された映像信号はモニタex219に表示され、多重化データが記録された記録メディアex215により他の装置やシステムにおいて映像信号を再生することができる。また、ケーブルテレビ用のケーブルex203または衛星/地上波放送のアンテナex204に接続されたセットトップボックスex217内に動画像復号化装置を実装し、これをテレビのモニタex219で表示してもよい。このときセットトップボックスではなく、テレビ内に動画像復号化装置を組み込んでもよい。
図25は、上記各実施の形態で説明した動画像復号化方法および動画像符号化方法を用いたテレビ(受信機)ex300を示す図である。テレビex300は、上記放送を受信するアンテナex204またはケーブルex203等を介して映像データに音声データが多重化された多重化データを取得、または出力するチューナex301と、受信した多重化データを復調する、または外部に送信する多重化データに変調する変調/復調部ex302と、復調した多重化データを映像データと、音声データとに分離する、または信号処理部ex306で符号化された映像データ、音声データを多重化する多重/分離部ex303を備える。
また、テレビex300は、音声データ、映像データそれぞれを復号化する、またはそれぞれの情報を符号化する音声信号処理部ex304、映像信号処理部ex305(本発明の一態様に係る画像符号化装置または画像復号装置として機能する)を有する信号処理部ex306と、復号化した音声信号を出力するスピーカex307、復号化した映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインタフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。インタフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314、ハードディスク等の外部記録メディアと接続するためのドライバex315、電話網と接続するモデムex316等を有していてもよい。なお記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex300の各部は同期バスを介して互いに接続されている。
まず、テレビex300がアンテナex204等により外部から取得した多重化データを復号化し、再生する構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、CPU等を有する制御部ex310の制御に基づいて、変調/復調部ex302で復調した多重化データを多重/分離部ex303で分離する。さらにテレビex300は、分離した音声データを音声信号処理部ex304で復号化し、分離した映像データを映像信号処理部ex305で上記各実施の形態で説明した復号化方法を用いて復号化する。復号化した音声信号、映像信号は、それぞれ出力部ex309から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex318、ex319等に一旦これらの信号を蓄積するとよい。また、テレビex300は、放送等からではなく、磁気/光ディスク、SDカード等の記録メディアex215、ex216から多重化データを読み出してもよい。次に、テレビex300が音声信号や映像信号を符号化し、外部に送信または記録メディア等に書き込む構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、制御部ex310の制御に基づいて、音声信号処理部ex304で音声信号を符号化し、映像信号処理部ex305で映像信号を上記各実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重/分離部ex303で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex320、ex321等に一旦これらの信号を蓄積するとよい。なお、バッファex318、ex319、ex320、ex321は図示しているように複数備えていてもよいし、1つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調/復調部ex302や多重/分離部ex303の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
また、テレビex300は、放送等や記録メディア等から音声データ、映像データを取得する以外に、マイクやカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。なお、ここではテレビex300は上記の符号化処理、多重化、および外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号化処理、外部出力のみが可能な構成であってもよい。
また、リーダ/レコーダex218で記録メディアから多重化データを読み出す、または書き込む場合には、上記復号化処理または符号化処理はテレビex300、リーダ/レコーダex218のいずれで行ってもよいし、テレビex300とリーダ/レコーダex218が互いに分担して行ってもよい。
一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生/記録部ex400の構成を図26に示す。情報再生/記録部ex400は、以下に説明する要素ex401、ex402、ex403、ex404、ex405、ex406、ex407を備える。光ヘッドex401は、光ディスクである記録メディアex215の記録面にレーザスポットを照射して情報を書き込み、記録メディアex215の記録面からの反射光を検出して情報を読み込む。変調記録部ex402は、光ヘッドex401に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。再生復調部ex403は、光ヘッドex401に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex215に記録された信号成分を分離して復調し、必要な情報を再生する。バッファex404は、記録メディアex215に記録するための情報および記録メディアex215から再生した情報を一時的に保持する。ディスクモータex405は記録メディアex215を回転させる。サーボ制御部ex406は、ディスクモータex405の回転駆動を制御しながら光ヘッドex401を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。システム制御部ex407は、情報再生/記録部ex400全体の制御を行う。上記の読み出しや書き込みの処理はシステム制御部ex407が、バッファex404に保持された各種情報を利用し、また必要に応じて新たな情報の生成・追加を行うと共に、変調記録部ex402、再生復調部ex403、サーボ制御部ex406を協調動作させながら、光ヘッドex401を通して、情報の記録再生を行うことにより実現される。システム制御部ex407は例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
以上では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
図27に光ディスクである記録メディアex215の模式図を示す。記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報はデータを記録する単位である記録ブロックex231の位置を特定するための情報を含み、記録や再生を行う装置において情報トラックex230を再生し番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233より内周または外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した多重化データの読み書きを行う。
以上では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。
また、デジタル放送用システムex200において、アンテナex205を有する車ex210で衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば図25に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111や携帯電話ex114等でも考えられる。
図28Aは、上記実施の形態で説明した動画像復号化方法および動画像符号化方法を用いた携帯電話ex114を示す図である。携帯電話ex114は、基地局ex110との間で電波を送受信するためのアンテナex350、映像、静止画を撮ることが可能なカメラ部ex365、カメラ部ex365で撮像した映像、アンテナex350で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex358を備える。携帯電話ex114は、さらに、操作キー部ex366を有する本体部、音声を出力するためのスピーカ等である音声出力部ex357、音声を入力するためのマイク等である音声入力部ex356、撮影した映像、静止画、録音した音声、または受信した映像、静止画、メール等の符号化されたデータもしくは復号化されたデータを保存するメモリ部ex367、又は同様にデータを保存する記録メディアとのインタフェース部であるスロット部ex364を備える。
さらに、携帯電話ex114の構成例について、図28Bを用いて説明する。携帯電話ex114は、表示部ex358及び操作キー部ex366を備えた本体部の各部を統括的に制御する主制御部ex360に対して、電源回路部ex361、操作入力制御部ex362、映像信号処理部ex355、カメラインタフェース部ex363、LCD(Liquid Crystal Display)制御部ex359、変調/復調部ex352、多重/分離部ex353、音声信号処理部ex354、スロット部ex364、メモリ部ex367がバスex370を介して互いに接続されている。
電源回路部ex361は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話ex114を動作可能な状態に起動する。
携帯電話ex114は、CPU、ROM、RAM等を有する主制御部ex360の制御に基づいて、音声通話モード時に音声入力部ex356で収音した音声信号を音声信号処理部ex354でデジタル音声信号に変換し、これを変調/復調部ex352でスペクトラム拡散処理し、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して送信する。また携帯電話ex114は、音声通話モード時にアンテナex350を介して受信した受信データを増幅して周波数変換処理およびアナログデジタル変換処理を施し、変調/復調部ex352でスペクトラム逆拡散処理し、音声信号処理部ex354でアナログ音声信号に変換した後、これを音声出力部ex357から出力する。
さらにデータ通信モード時に電子メールを送信する場合、本体部の操作キー部ex366等の操作によって入力された電子メールのテキストデータは操作入力制御部ex362を介して主制御部ex360に送出される。主制御部ex360は、テキストデータを変調/復調部ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して基地局ex110へ送信する。電子メールを受信する場合は、受信したデータに対してこのほぼ逆の処理が行われ、表示部ex358に出力される。
データ通信モード時に映像、静止画、または映像と音声を送信する場合、映像信号処理部ex355は、カメラ部ex365から供給された映像信号を上記各実施の形態で示した動画像符号化方法によって圧縮符号化し(即ち、本発明の一態様に係る画像符号化装置として機能する)、符号化された映像データを多重/分離部ex353に送出する。また、音声信号処理部ex354は、映像、静止画等をカメラ部ex365で撮像中に音声入力部ex356で収音した音声信号を符号化し、符号化された音声データを多重/分離部ex353に送出する。
多重/分離部ex353は、映像信号処理部ex355から供給された符号化された映像データと音声信号処理部ex354から供給された符号化された音声データを所定の方式で多重化し、その結果得られる多重化データを変調/復調部(変調/復調回路部)ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex350を介して送信する。
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、または映像およびもしくは音声が添付された電子メールを受信する場合、アンテナex350を介して受信された多重化データを復号化するために、多重/分離部ex353は、多重化データを分離することにより映像データのビットストリームと音声データのビットストリームとに分け、同期バスex370を介して符号化された映像データを映像信号処理部ex355に供給するとともに、符号化された音声データを音声信号処理部ex354に供給する。映像信号処理部ex355は、上記各実施の形態で示した動画像符号化方法に対応した動画像復号化方法によって復号化することにより映像信号を復号し(即ち、本発明の一態様に係る画像復号装置として機能する)、LCD制御部ex359を介して表示部ex358から、例えばホームページにリンクされた動画像ファイルに含まれる映像、静止画が表示される。また音声信号処理部ex354は、音声信号を復号し、音声出力部ex357から音声が出力される。
また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器・復号化器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号化器のみの受信端末という3通りの実装形式が考えられる。さらに、デジタル放送用システムex200において、映像データに音楽データなどが多重化された多重化データを受信、送信するとして説明したが、音声データ以外に映像に関連する文字データなどが多重化されたデータであってもよいし、多重化データではなく映像データ自体であってもよい。
このように、上記各実施の形態で示した動画像符号化方法あるいは動画像復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。
また、本発明はかかる上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
(実施の形態3)
上記各実施の形態で示した動画像符号化方法または装置と、MPEG−2、MPEG4−AVC、VC−1など異なる規格に準拠した動画像符号化方法または装置とを、必要に応じて適宜切替えることにより、映像データを生成することも可能である。
ここで、それぞれ異なる規格に準拠する複数の映像データを生成した場合、復号する際に、それぞれの規格に対応した復号方法を選択する必要がある。しかしながら、復号する映像データが、どの規格に準拠するものであるか識別できないため、適切な復号方法を選択することができないという課題を生じる。
この課題を解決するために、映像データに音声データなどを多重化した多重化データは、映像データがどの規格に準拠するものであるかを示す識別情報を含む構成とする。上記各実施の形態で示す動画像符号化方法または装置によって生成された映像データを含む多重化データの具体的な構成を以下説明する。多重化データは、MPEG−2トランスポートストリーム形式のデジタルストリームである。
図29は、多重化データの構成を示す図である。図29に示すように多重化データは、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム(PG)、インタラクティブグラフィックスストリームのうち、1つ以上を多重化することで得られる。ビデオストリームは映画の主映像および副映像を、オーディオストリーム(IG)は映画の主音声部分とその主音声とミキシングする副音声を、プレゼンテーショングラフィックスストリームは、映画の字幕をそれぞれ示している。ここで主映像とは画面に表示される通常の映像を示し、副映像とは主映像の中に小さな画面で表示する映像のことである。また、インタラクティブグラフィックスストリームは、画面上にGUI部品を配置することにより作成される対話画面を示している。ビデオストリームは、上記各実施の形態で示した動画像符号化方法または装置、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠した動画像符号化方法または装置によって符号化されている。オーディオストリームは、ドルビーAC−3、Dolby Digital Plus、MLP、DTS、DTS−HD、または、リニアPCMのなどの方式で符号化されている。
多重化データに含まれる各ストリームはPIDによって識別される。例えば、映画の映像に利用するビデオストリームには0x1011が、オーディオストリームには0x1100から0x111Fまでが、プレゼンテーショングラフィックスには0x1200から0x121Fまでが、インタラクティブグラフィックスストリームには0x1400から0x141Fまでが、映画の副映像に利用するビデオストリームには0x1B00から0x1B1Fまで、主音声とミキシングする副音声に利用するオーディオストリームには0x1A00から0x1A1Fが、それぞれ割り当てられている。
図30は、多重化データがどのように多重化されるかを模式的に示す図である。まず、複数のビデオフレームからなるビデオストリームex235、複数のオーディオフレームからなるオーディオストリームex238を、それぞれPESパケット列ex236およびex239に変換し、TSパケットex237およびex240に変換する。同じくプレゼンテーショングラフィックスストリームex241およびインタラクティブグラフィックスex244のデータをそれぞれPESパケット列ex242およびex245に変換し、さらにTSパケットex243およびex246に変換する。多重化データex247はこれらのTSパケットを1本のストリームに多重化することで構成される。
図31は、PESパケット列に、ビデオストリームがどのように格納されるかをさらに詳しく示している。図31における第1段目はビデオストリームのビデオフレーム列を示す。第2段目は、PESパケット列を示す。図31の矢印yy1,yy2,yy3,yy4に示すように、ビデオストリームにおける複数のVideo Presentation UnitであるIピクチャ、Bピクチャ、Pピクチャは、ピクチャ毎に分割され、PESパケットのペイロードに格納される。各PESパケットはPESヘッダを持ち、PESヘッダには、ピクチャの表示時刻であるPTS(Presentation Time−Stamp)やピクチャの復号時刻であるDTS(Decoding Time−Stamp)が格納される。
図32は、多重化データに最終的に書き込まれるTSパケットの形式を示している。TSパケットは、ストリームを識別するPIDなどの情報を持つ4ByteのTSヘッダとデータを格納する184ByteのTSペイロードから構成される188Byte固定長のパケットであり、上記PESパケットは分割されTSペイロードに格納される。BD−ROMの場合、TSパケットには、4ByteのTP_Extra_Headerが付与され、192Byteのソースパケットを構成し、多重化データに書き込まれる。TP_Extra_HeaderにはATS(Arrival_Time_Stamp)などの情報が記載される。ATSは当該TSパケットのデコーダのPIDフィルタへの転送開始時刻を示す。多重化データには図32下段に示すようにソースパケットが並ぶこととなり、多重化データの先頭からインクリメントする番号はSPN(ソースパケットナンバー)と呼ばれる。
また、多重化データに含まれるTSパケットには、映像・音声・字幕などの各ストリーム以外にもPAT(Program Association Table)、PMT(Program Map Table)、PCR(Program Clock Reference)などがある。PATは多重化データ中に利用されるPMTのPIDが何であるかを示し、PAT自身のPIDは0で登録される。PMTは、多重化データ中に含まれる映像・音声・字幕などの各ストリームのPIDと各PIDに対応するストリームの属性情報を持ち、また多重化データに関する各種ディスクリプタを持つ。ディスクリプタには多重化データのコピーを許可・不許可を指示するコピーコントロール情報などがある。PCRは、ATSの時間軸であるATC(Arrival Time Clock)とPTS・DTSの時間軸であるSTC(System Time Clock)の同期を取るために、そのPCRパケットがデコーダに転送されるATSに対応するSTC時間の情報を持つ。
図33はPMTのデータ構造を詳しく説明する図である。PMTの先頭には、そのPMTに含まれるデータの長さなどを記したPMTヘッダが配置される。その後ろには、多重化データに関するディスクリプタが複数配置される。上記コピーコントロール情報などが、ディスクリプタとして記載される。ディスクリプタの後には、多重化データに含まれる各ストリームに関するストリーム情報が複数配置される。ストリーム情報は、ストリームの圧縮コーデックなどを識別するためストリームタイプ、ストリームのPID、ストリームの属性情報(フレームレート、アスペクト比など)が記載されたストリームディスクリプタから構成される。ストリームディスクリプタは多重化データに存在するストリームの数だけ存在する。
記録媒体などに記録する場合には、上記多重化データは、多重化データ情報ファイルと共に記録される。
多重化データ情報ファイルは、図34に示すように多重化データの管理情報であり、多重化データと1対1に対応し、多重化データ情報、ストリーム属性情報とエントリマップから構成される。
多重化データ情報は図34に示すようにシステムレート、再生開始時刻、再生終了時刻から構成されている。システムレートは多重化データの、後述するシステムターゲットデコーダのPIDフィルタへの最大転送レートを示す。多重化データ中に含まれるATSの間隔はシステムレート以下になるように設定されている。再生開始時刻は多重化データの先頭のビデオフレームのPTSであり、再生終了時刻は多重化データの終端のビデオフレームのPTSに1フレーム分の再生間隔を足したものが設定される。
ストリーム属性情報は図35に示すように、多重化データに含まれる各ストリームについての属性情報が、PID毎に登録される。属性情報はビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム毎に異なる情報を持つ。ビデオストリーム属性情報は、そのビデオストリームがどのような圧縮コーデックで圧縮されたか、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか、アスペクト比はどれだけであるか、フレームレートはどれだけであるかなどの情報を持つ。オーディオストリーム属性情報は、そのオーディオストリームがどのような圧縮コーデックで圧縮されたか、そのオーディオストリームに含まれるチャンネル数は何であるか、何の言語に対応するか、サンプリング周波数がどれだけであるかなどの情報を持つ。これらの情報は、プレーヤが再生する前のデコーダの初期化などに利用される。
本実施の形態においては、上記多重化データのうち、PMTに含まれるストリームタイプを利用する。また、記録媒体に多重化データが記録されている場合には、多重化データ情報に含まれる、ビデオストリーム属性情報を利用する。具体的には、上記各実施の形態で示した動画像符号化方法または装置において、PMTに含まれるストリームタイプ、または、ビデオストリーム属性情報に対し、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示す固有の情報を設定するステップまたは手段を設ける。この構成により、上記各実施の形態で示した動画像符号化方法または装置によって生成した映像データと、他の規格に準拠する映像データとを識別することが可能になる。
また、本実施の形態における動画像復号化方法のステップを図36に示す。ステップexS100において、多重化データからPMTに含まれるストリームタイプ、または、多重化データ情報に含まれるビデオストリーム属性情報を取得する。次に、ステップexS101において、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成された多重化データであることを示しているか否かを判断する。そして、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成されたものであると判断された場合には、ステップexS102において、上記各実施の形態で示した動画像復号方法により復号を行う。また、ストリームタイプ、または、ビデオストリーム属性情報が、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠するものであることを示している場合には、ステップexS103において、従来の規格に準拠した動画像復号方法により復号を行う。
このように、ストリームタイプ、または、ビデオストリーム属性情報に新たな固有値を設定することにより、復号する際に、上記各実施の形態で示した動画像復号化方法または装置で復号可能であるかを判断することができる。従って、異なる規格に準拠する多重化データが入力された場合であっても、適切な復号化方法または装置を選択することができるため、エラーを生じることなく復号することが可能となる。また、本実施の形態で示した動画像符号化方法または装置、または、動画像復号方法または装置を、上述したいずれの機器・システムに用いることも可能である。
(実施の形態4)
上記各実施の形態で示した動画像符号化方法および装置、動画像復号化方法および装置は、典型的には集積回路であるLSIで実現される。一例として、図37に1チップ化されたLSIex500の構成を示す。LSIex500は、以下に説明する要素ex501、ex502、ex503、ex504、ex505、ex506、ex507、ex508、ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
例えば符号化処理を行う場合には、LSIex500は、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有する制御部ex501の制御に基づいて、AV I/Oex509によりマイクex117やカメラex113等からAV信号を入力する。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声信号の符号化および/または映像信号の符号化が行われる。ここで映像信号の符号化処理は上記各実施の形態で説明した符号化処理である。信号処理部ex507ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex506から外部に出力する。この出力された多重化データは、基地局ex107に向けて送信されたり、または記録メディアex215に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex508にデータを蓄積するとよい。
なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。バッファex508も1つに限ったものではなく、複数のバッファを備えていてもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。
また、上記では、制御部ex501が、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有するとしているが、制御部ex501の構成は、この構成に限らない。例えば、信号処理部ex507がさらにCPUを備える構成であってもよい。信号処理部ex507の内部にもCPUを設けることにより、処理速度をより向上させることが可能になる。また、他の例として、CPUex502が信号処理部ex507、または信号処理部ex507の一部である例えば音声信号処理部を備える構成であってもよい。このような場合には、制御部ex501は、信号処理部ex507、またはその一部を有するCPUex502を備える構成となる。
なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。このようなプログラマブル・ロジック・デバイスは、典型的には、ソフトウェア又はファームウェアを構成するプログラムを、ロードする又はメモリ等から読み込むことで、上記各実施の形態で示した動画像符号化方法、又は動画像復号化方法を実行することができる。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
(実施の形態5)
上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データを復号する場合、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データを復号する場合に比べ、処理量が増加することが考えられる。そのため、LSIex500において、従来の規格に準拠する映像データを復号する際のCPUex502の駆動周波数よりも高い駆動周波数に設定する必要がある。しかし、駆動周波数を高くすると、消費電力が高くなるという課題が生じる。
この課題を解決するために、テレビex300、LSIex500などの動画像復号化装置は、映像データがどの規格に準拠するものであるかを識別し、規格に応じて駆動周波数を切替える構成とする。図38は、本実施の形態における構成ex800を示している。駆動周波数切替え部ex803は、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合には、駆動周波数を高く設定する。そして、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801に対し、映像データを復号するよう指示する。一方、映像データが、従来の規格に準拠する映像データである場合には、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合に比べ、駆動周波数を低く設定する。そして、従来の規格に準拠する復号処理部ex802に対し、映像データを復号するよう指示する。
より具体的には、駆動周波数切替え部ex803は、図37のCPUex502と駆動周波数制御部ex512から構成される。また、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801、および、従来の規格に準拠する復号処理部ex802は、図37の信号処理部ex507に該当する。CPUex502は、映像データがどの規格に準拠するものであるかを識別する。そして、CPUex502からの信号に基づいて、駆動周波数制御部ex512は、駆動周波数を設定する。また、CPUex502からの信号に基づいて、信号処理部ex507は、映像データの復号を行う。ここで、映像データの識別には、例えば、実施の形態3で記載した識別情報を利用することが考えられる。識別情報に関しては、実施の形態3で記載したものに限られず、映像データがどの規格に準拠するか識別できる情報であればよい。例えば、映像データがテレビに利用されるものであるか、ディスクに利用されるものであるかなどを識別する外部信号に基づいて、映像データがどの規格に準拠するものであるか識別可能である場合には、このような外部信号に基づいて識別してもよい。また、CPUex502における駆動周波数の選択は、例えば、図40のような映像データの規格と、駆動周波数とを対応付けたルックアップテーブルに基づいて行うことが考えられる。ルックアップテーブルを、バッファex508や、LSIの内部メモリに格納しておき、CPUex502がこのルックアップテーブルを参照することにより、駆動周波数を選択することが可能である。
図39は、本実施の形態の方法を実施するステップを示している。まず、ステップexS200では、信号処理部ex507において、多重化データから識別情報を取得する。次に、ステップexS201では、CPUex502において、識別情報に基づいて映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものであるか否かを識別する。映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合には、ステップexS202において、駆動周波数を高く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、高い駆動周波数に設定される。一方、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、ステップexS203において、駆動周波数を低く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合に比べ、低い駆動周波数に設定される。
さらに、駆動周波数の切替えに連動して、LSIex500またはLSIex500を含む装置に与える電圧を変更することにより、省電力効果をより高めることが可能である。例えば、駆動周波数を低く設定する場合には、これに伴い、駆動周波数を高く設定している場合に比べ、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することが考えられる。
また、駆動周波数の設定方法は、復号する際の処理量が大きい場合に、駆動周波数を高く設定し、復号する際の処理量が小さい場合に、駆動周波数を低く設定すればよく、上述した設定方法に限らない。例えば、MPEG4−AVC規格に準拠する映像データを復号する処理量の方が、上記各実施の形態で示した動画像符号化方法または装置により生成された映像データを復号する処理量よりも大きい場合には、駆動周波数の設定を上述した場合の逆にすることが考えられる。
さらに、駆動周波数の設定方法は、駆動周波数を低くする構成に限らない。例えば、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を高く設定し、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することも考えられる。また、他の例としては、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、CPUex502の駆動を停止させることなく、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、処理に余裕があるため、CPUex502の駆動を一時停止させることも考えられる。識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合であっても、処理に余裕があれば、CPUex502の駆動を一時停止させることも考えられる。この場合は、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合に比べて、停止時間を短く設定することが考えられる。
このように、映像データが準拠する規格に応じて、駆動周波数を切替えることにより、省電力化を図ることが可能になる。また、電池を用いてLSIex500またはLSIex500を含む装置を駆動している場合には、省電力化に伴い、電池の寿命を長くすることが可能である。
(実施の形態6)
テレビや、携帯電話など、上述した機器・システムには、異なる規格に準拠する複数の映像データが入力される場合がある。このように、異なる規格に準拠する複数の映像データが入力された場合にも復号できるようにするために、LSIex500の信号処理部ex507が複数の規格に対応している必要がある。しかし、それぞれの規格に対応する信号処理部ex507を個別に用いると、LSIex500の回路規模が大きくなり、また、コストが増加するという課題が生じる。
この課題を解決するために、上記各実施の形態で示した動画像復号方法を実行するための復号処理部と、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する復号処理部とを一部共有化する構成とする。この構成例を図41Aのex900に示す。例えば、上記各実施の形態で示した動画像復号方法と、MPEG4−AVC規格に準拠する動画像復号方法とは、エントロピー符号化、逆量子化、デブロッキング・フィルタ、動き補償などの処理において処理内容が一部共通する。共通する処理内容については、MPEG4−AVC規格に対応する復号処理部ex902を共有し、MPEG4−AVC規格に対応しない、本発明の一態様に特有の他の処理内容については、専用の復号処理部ex901を用いるという構成が考えられる。復号処理部の共有化に関しては、共通する処理内容については、上記各実施の形態で示した動画像復号化方法を実行するための復号処理部を共有し、MPEG4−AVC規格に特有の処理内容については、専用の復号処理部を用いる構成であってもよい。
また、処理を一部共有化する他の例を図41Bのex1000に示す。この例では、本発明の一態様に特有の処理内容に対応した専用の復号処理部ex1001と、他の従来規格に特有の処理内容に対応した専用の復号処理部ex1002と、本発明の一態様に係る動画像復号方法と他の従来規格の動画像復号方法とに共通する処理内容に対応した共用の復号処理部ex1003とを用いる構成としている。ここで、専用の復号処理部ex1001、ex1002は、必ずしも本発明の一態様、または、他の従来規格に特有の処理内容に特化したものではなく、他の汎用処理を実行できるものであってもよい。また、本実施の形態の構成を、LSIex500で実装することも可能である。
このように、本発明の一態様に係る動画像復号方法と、従来の規格の動画像復号方法とで共通する処理内容について、復号処理部を共有することにより、LSIの回路規模を小さくし、かつ、コストを低減することが可能である。