(57)【要約】      （修正有）【課題】遅延が少なく復号時にエラーから復帰するまでの時間を短縮できるようにする。【解決手段】イントラマクロブロック判定部３３は、複数のピクチャの画像データを符号化する際、イントラ符号化される強制イントラ領域を垂直方向に割り当てて、ピクチャにおける全ての符号化単位が、強制イントラ領域となるように割り当て領域をピクチャ毎に水平方向に移動させる。予測誤差画像データの符号化や予測画像データの生成を行う符号化処理部は、強制イントラ領域に対してイントラ符号化を行い、強制イントラ領域と異なる領域に対してはイントラ符号化またはインター符号化を符号化効率に応じて実行する。ピクチャにおける全ての符号化単位分の強制イントラ領域の復号により、エラーのない復号画像を得ることができる。強制イントラ領域を垂直方向に割り当てることで各ラインの符号量の違いを少なくすることが可能となり、復号時の遅延を少なくできる。【選択図】図２
2013165340.tif 000002
【特許請求の範囲】
【請求項１】
複数のピクチャの画像データを符号化する際、イントラ符号化される強制イントラ領域を垂直方向に割り当てて、前記ピクチャにおける全ての符号化単位が、前記強制イントラ領域となるように前記強制イントラ領域の割り当て領域を水平方向に移動させる領域設定部と、
前記領域設定部によって設定された前記強制イントラ領域に対してはイントラ符号化を実行し、前記強制イントラ領域と異なる領域に対してはイントラ符号化またはインター符号化を実行する符号化処理部と
を有する画像処理装置。
【請求項２】
前記ピクチャの動きベクトルを算出する動きベクトル算出部を有し、
前記領域設定部は、前記動きベクトル算出部で算出された動きベクトルに応じて前記強制イントラ領域の水平方向の幅または移動量を設定する請求項１記載の画像処理装置。
【請求項３】
前記領域設定部は、前記動きベクトル検出部で検出された動きベクトルの水平方向の最大動きベクトルに応じて前記強制イントラ領域の水平方向の幅または移動量を設定する請求項２記載の画像処理装置。
【請求項４】
前記符号化処理部で用いるローカルデコード画像のフィルタ処理を行うフィルタ部を有し、
前記イントラ領域設定部は、前記強制イントラ領域外の画素を用いてフィルタ演算が行われる前記強制イントラ領域内の画素領域の水平方向サイズを用いて、前記強制イントラ領域の水平方向の幅または移動量を設定する請求項２記載の画像処理装置。
【請求項５】
前記符号化処理部で用いるローカルデコード画像のフィルタ処理を行うフィルタ部と、
デコードする際のエラーが伝搬しないように、フィルタ処理を制限する制御部とを更に有する請求項１記載の画像処理装置。
【請求項６】
前記符号化処理部は、Ｈ．２６４／ＡＶＣ規格に従って符号化し、
前記フィルタ部は、Ｈ．２６４／ＡＶＣ規格で規定されたデブロックフィルタである請求項５記載の画像処理装置。
【請求項７】
前記フィルタ部は、オフセット処理を行うフィルタ又は適応ループフィルタである請求項５記載の画像処理装置。
【請求項８】
複数のピクチャの画像データを符号化する際、イントラ符号化される強制イントラ領域を垂直方向に割り当てて、前記ピクチャにおける全ての符号化単位が、前記強制イントラ領域となるように前記強制イントラ領域の割り当て領域を水平方向に移動させる工程と、
前記強制イントラ領域に対してはイントラ符号化を実行し、前記強制イントラ領域と異なる領域に対してはイントラ符号化またはインター符号化を実行する工程と
を含む画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この技術は、画像処理装置と画像処理方法に関する。詳しくは、復号時にエラーから復帰するまでの時間を短縮し得る画像処理装置および画像処理方法を提供する。
【背景技術】
【０００２】
従来、離隔した位置に設けられている表示装置等に対して無線で例えばＨＤ（High Definition）動画像データを伝送する無線伝送技術が開発されている。この無線伝送技術に用いられる伝送方式としては、６０ＧＨｚ帯を使用するミリ波、５ＧＨｚ帯を使用するＩＥＥＥ８０２．１１ｎ(無線ＬＡＮ（Local Area Network））、ＵＷＢ（Ultra Wide Band）などが利用される。また、低い周波数帯を使用してもＨＤ動画像データの無線伝送を行うことができるように、画像データの符号化を行いデータ量を削減して伝送することが行われる。
【０００３】
このような動画像データの無線伝送技術において、例えば放送番組のリアルタイム表示を可能にするためには、動画像データを伝送してから表示装置に表示されるまでの遅延ができる限り小さいことが望ましい。
【０００４】
また、ピクチャ毎にＩピクチャ，ＰピクチャおよびＢピクチャの切り替えを行う符号化方式では、Ｉピクチャの符号量が他のピクチャと比して大きい。このため、この符号化方式を無線伝送技術に適用した場合、符号量が均一となるＧＯＰ（Group Of Picture）単位でのバッファリングが必要となり、遅延も大きくなる。そこで、イントラスライス方式を用いてピクチャ毎の符号量を均一にすることで遅延を小さくすることが行われている。
【０００５】
さらに、特許文献１では、Ｈ．２６４／ＡＶＣ（Advanced Video Coding）と呼ばれる符号化規格にイントラスライス方式が適用されている。Ｈ．２６４／ＡＶＣは、動き予測に１／４画素を生成することやデブロックフィルタを用いたフィルタ処理が行われる。このため、整数精度未満での動き予測処理の際、エラーから復帰していない未復帰のマクロブロックを参照して生成される整数精度未満の画素を含有しないように、特許文献１では、参照ブロックに対する探索範囲の設定が行われている。また、復号されるときにエラーから復帰していない未復帰のマクロブロックを参照しないように、デブロックフィルタ処理の制限が行われている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−３５４４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、イントラスライス方式では、イントラ符号化復号処理が行われるマクロブロックラインが設けられる。このマクロブロックラインは他のマクロブロックラインに比べて符号量が多くなってしまう。このため、符号量が均一となるフレーム単位でのバファリングが必要となることから、１フレーム分の遅延を生じてしまう。
【０００８】
そこで、この技術では遅延が少なく、復号時にエラーから復帰するまでの時間を短縮し得る画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
この技術の第１の側面は、複数のピクチャの画像データを符号化する際、イントラ符号化される強制イントラ領域を垂直方向に割り当てて、前記ピクチャにおける全ての符号化単位が、前記強制イントラ領域となるように前記強制イントラ領域の割り当て領域を水平方向に移動させる領域設定部と、前記領域設定部によって設定された前記強制イントラ領域に対してはイントラ符号化を実行し、前記強制イントラ領域と異なる領域に対してはイントラ符号化またはインター符号化を実行する符号化処理部とを有する画像処理装置にある。
【００１０】
この技術においては、複数のピクチャの画像データを符号化する際、イントラ符号化される強制イントラ領域を垂直方向に割り当てて、ピクチャにおける全ての符号化単位が、強制イントラ領域となるように強制イントラ領域の割り当て領域が水平方向に移動される。強制イントラ領域は、ピクチャから算出した動きベクトル例えば水平方向の最大動きベクトルに応じて水平方向の幅または移動量が設定される。また、符号化処理部で用いるローカルデコード画像のフィルタ処理を行うフィルタ部、例えばデブロックフィルタやオフセット処理を行うフィルタ（ＳＡＯ），適応ループフィルタが設けられて、このフィルタ部によって強制イントラ領域外の画素を用いてフィルタ演算が行われる強制イントラ領域内の画素領域の水平方向サイズを用いて、強制イントラ領域の水平方向の幅または移動量が設定される。また、デコードする際のエラーが伝搬しないように、フィルタ処理の制限が行われる
【００１１】
この技術の第２の側面は、複数のピクチャの画像データを符号化する際、イントラ符号化される強制イントラ領域を垂直方向に割り当てて、前記ピクチャにおける全ての符号化単位が、前記強制イントラ領域となるように前記強制イントラ領域の割り当て領域を水平方向に移動させる工程と、前記強制イントラ領域に対してはイントラ符号化を実行し、前記強制イントラ領域と異なる領域に対してはイントラ符号化またはインター符号化を実行する工程とを含む画像処理方法にある。
【発明の効果】
【００１２】
この技術によれば、複数のピクチャの画像データを符号化する際、イントラ符号化される強制イントラ領域が垂直方向に割り当てられて、ピクチャにおける全ての符号化単位が、強制イントラ領域となるように割り当て領域がピクチャ毎に水平方向に移動される。また、強制イントラ領域に対してはイントラ符号化が実行されて、強制イントラ領域と異なる領域に対してはイントラ符号化またはインター符号化が実行される。このため、ピクチャにおける全ての符号化単位分の強制イントラ領域の復号により、エラーのない復号画像を得ることができる。また、強制イントラ領域が垂直方向に割り当てられていることから、各ラインの符号量を均一とすることが可能となり、復号時の遅延を少なくできる。
【図面の簡単な説明】
【００１３】
【図１】無線画像データ伝送システムの構成を例示した図である。
【図２】第１の実施の形態における画像符号化部の構成を例示した図である。
【図３】リフレッシュ領域を示す図である。
【図４】動き予測によるエラーの伝搬を説明するための図である。
【図５】イントラ予測によるエラーの伝搬を説明するための図である。
【図６】デブロックフィルタによるエラーの伝搬を説明するための図である。
【図７】ＭＶｘ＝０の場合の参照対象ブロックを説明するための図である。
【図８】ＭＶｘ≠０の場合の参照対象ブロックを説明するための図である。
【図９】符号化処理を示すフローチャートである。
【図１０】マクロブロック判定処理を示すフローチャートである。
【図１１】探索範囲決定処理を示すフローチャートである。
【図１２】エラー復帰動作を説明するための図である。
【図１３】第２の実施の形態における画像符号化部の構成を例示した図である。
【図１４】quad-tree構造を説明するための図である。
【図１５】エッジオフセットを説明するための図である。
【図１６】エッジオフセットの規則一覧表を示す図である。
【図１７】符号化処理を示すフローチャートである。
【図１８】リフレッシュ領域の幅とずらし量の調整を説明するための図である。
【図１９】第３の実施の形態における画像符号化部の構成を例示した図である。
【図２０】リフレッシュ領域設定処理を示すフローチャートである。
【図２１】エラー伝搬の範囲を例示した図である。
【図２２】リフレッシュ領域の幅とずらし量の調整動作を例示した図である。
【発明を実施するための形態】
【００１４】
以下、本技術を実施するための形態について説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態
１−１．画像処理装置の構成
１−２．画像符号化部の構成
１−３．リフレッシュ領域について
１−４．エラーの伝搬要因
１−５．エラー伝搬の回避
１−５−１．第１のエラー伝搬要因の回避
１−５−２．第２のエラー伝搬要因の回避
１−５−３．第３のエラー伝搬要因の回避
１−６．処理手順
１−７．動作および効果
２．第２の実施の形態
２−１．画像符号化部の構成
２−２．エラー伝搬の回避
２−３．処理手順
２−４．動作および効果
３．第３の実施の形態
３−１．画像符号化部の構成
３−２．リフレッシュ領域の調整動作
３−３．動作および効果
４．他の実施の形態
【００１５】
＜１．第１の実施の形態＞
［１−１．画像処理装置の構成］
図１は、無線画像データ伝送システムの構成を例示している。無線画像データ伝送システム１０は、画像処理装置２０と表示装置８０を用いて構成されている。画像処理装置２０は、例えば放送や配信された番組コンテンツ等の画像データを符号化して送信する機能を有している。表示装置８０は、画像処理装置２０からの符号化データを受信して復号する機能と、符号化データを復号して得られた動画像の画像データに基づいて画像表示を行う機能を有している。なお、表示装置８０で音声出力を行う場合、画像処理装置２０は、番組コンテンツの音声データを符号化して表示装置８０に送信する。また、表示装置８０は、音声符号化データの復号を行い、得られた音声データに基づいて音声出力を行う。以下の説明では、動画像の画像データの伝送について説明を行い、音声データの説明は省略する。
【００１６】
画像処理装置２０は、放送受信部２１、チューナ部２２、画像符号化部３０、無線通信部６１を有している。
【００１７】
放送受信部２１は、例えばアンテナに接続されており放送信号を受信する。放送受信部２１は、受信した放送信号をチューナ部２２に出力する。
【００１８】
チューナ部２２は、放送信号から所望のチャンネルの信号を選局して復号を行い、視聴する番組コンテンツ等の画像データを画像符号化部３０に出力する。なお、画像処理装置２０は、インターネット等のネットワークを介して取得した動画像の画像データを画像符号化部３０に出力する構成であってもよい。
【００１９】
画像符号化部３０は、例えばＨ．２６４／ＡＶＣや後述するＨＥＶＣ等の動画像符号化方式を用いて画像データを符号化してビットストリームを生成する。画像符号化部３０は、生成したビットストリームを無線通信部６１に出力する。
【００２０】
無線通信部６１は、画像符号化部３０から供給されたビットストリームを表示装置８０に伝送する。例えば、無線通信部６１は、ＩＥＥＥ  ８０２．１１ｎなどの無線伝送方式を用いてビットストリームを送信する。
【００２１】
表示装置８０は、無線通信部８１、復号部８２、表示部８３を有している。無線通信部８１は、画像処理装置２０の無線通信部６１から送信された無線信号を受信する。無線通信部８１は、無線信号を受信して得られたビットストリームを復号部８２に出力する。復号部８２は、ビットストリームを復号して、得られた画像データを表示部８３に出力する。表示部８３は、復号部８２から供給された画像データに基づいて動画像表示を行う。
【００２２】
［１−２．画像符号化部の構成］
図２は、第１の実施の形態における画像符号化部の構成を例示している。画像符号化部３０は、バッファ３１、ピクチャヘッダ生成部３２、イントラマクロブロック判定部３３、を有している。また、画像符号化部３０は、演算部３４、直交変換部３５、量子化部３６、可逆符号化部３７、蓄積バッファ３８、レート制御部３９を有している。また、画像符号化部３０は、逆量子化部４１、逆直交変換部４２、演算部４３、デブロックフィルタ部４４、フレームメモリ４８、セレクタ５１、イントラ予測部５２、動き予測・補償部５３、画像選択部５４を有しており、これらによって符号化処理を行う。すなわち、これらは、請求項の符号化処理部に相当する。
【００２３】
バッファ３１は、チューナ部２２から供給された画像データを一時保持する。また、バッファ３１は保持している画像データを、ピクチャヘッダ生成部３２に出力する。
【００２４】
ピクチャヘッダ生成部３２は、ピクチャヘッダを生成してイントラマクロブロック判定部３３とイントラ予測部５２および画像選択部５４にそれぞれ出力する。ピクチャヘッダ生成部３２は、ピクチャヘッダにｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇ（詳しくは後述する）などのフラグを設ける。また、ピクチャヘッダ生成部３２は、バッファ３１から供給された画像データにピクチャヘッダを付加してイントラマクロブロック判定部３３に出力する。
【００２５】
イントラマクロブロック判定部３３は、マクロブロック毎に、強制的にイントラ符号化されるマクロブロックとするか、符号化効率に応じてイントラ符号化またはインター符号化するマクロブロックとするかを決定する。すなわち、イントラマクロブロック判定部３３は、請求項の領域設定部に相当する。以下、強制的にイントラ符号化されるマクロブロックを強制イントラマクロブロックという。また、符号化効率に応じてイントラ符号化またはインター符号化するマクロブロックを非強制マクロブロックという。イントラマクロブロック判定部３３は、決定結果を画像選択部５４に供給する。また、イントラマクロブロック判定部３３は、ピクチャヘッダ生成部３２から供給された画像データを演算部３４に出力する。
【００２６】
演算部３４は、イントラマクロブロック判定部３３から供給された画像データと画像選択部５４で選択された予測画像データとの差分を算出して、算出結果である予測誤差データを直交変換部３５に出力する。演算部３４は、例えばイントラ符号化の場合には、イントラ予測部５２で生成される予測画像データを用いて減算を行い予測誤差データを生成する。また、演算部３４は、例えばインター符号化の場合には、動き予測・補償部５３で生成される予測画像データを用いて減算を行い予測誤差データを生成する。
【００２７】
直交変換部３５は、ＤＣＴ（Discrete Cosine Transform）変換およびカルーネン・レーベ変換などの直交変換処理により、予測誤差データを直交変換し、直交変換係数を量子化部３６に供給する。量子化部３６は、レート制御部３９の制御によって決定された量子化パラメータを用いて直交変換係数を量子化し、量子化係数を可逆符号化部３７と逆量子化部４１に出力する。
【００２８】
可逆符号化部３７は、ＣＡＶＬＣ（Context-based Adaptive Variable Length Code）およびＣＡＢＡＣ（Context Adaptive Binary Arithmetic Coding）などのエントロピー符号化方式に従って量子化係数の可逆符号化を行い、得られた可逆符号化データを蓄積バッファ３８に出力する。
【００２９】
また、可逆符号化部３７は、イントラ符号化およびインター符号化に関する情報をイントラ予測部５２および動き予測・補償部５３から取得して、これらの情報を可逆符号化データのヘッダ情報に設定する。
【００３０】
蓄積バッファ３８は、可逆符号化データを蓄積すると共に、当該可逆符号化データを所定の伝送速度でビットストリームとして出力する。
【００３１】
レート制御部３９は、蓄積バッファ３８を監視し、可逆符号化データの発生符号量が所定の制御単位（例えばフレームやＧＯＰなど）毎に一定の符号量に近づくよう、量子化パラメータＱＰを決定する。
【００３２】
逆量子化部４１は、量子化係数を逆量子化して再生直交変換係数を生成する。逆量子化部４１は、生成した再生直交変換係数を逆直交変換部４２に出力する。逆直交変換部４２は、再生直交変換係数を逆直交変換して再生予測誤差データを生成する。また、逆直交変換部４２は、生成した予測誤差データを演算部４３に出力する。
【００３３】
演算部４３は、逆直交変換部４２から供給された予測誤差データと画像選択部５４で選択された予測画像データを加算してローカルデコード画像を生成する。演算部４３は、生成したローカルデコード画像をデブロックフィルタ部４４とフレームメモリ４８に出力する。
【００３４】
デブロックフィルタ部４４は、処理対象ブロックに対してデブロックフィルタ処理を実行し、これをフレームメモリ４８に供給する。
【００３５】
フレームメモリ４８は、演算部４３から供給されたローカルデコード画像と、デブロックフィルタ部４４から供給されたデブロックフィルタ処理後のローカルデコード画像を記憶する。
【００３６】
セレクタ５１は、演算部４３から供給されてフレームメモリ４８に記憶されているローカルデコード画像をイントラ予測部５２に出力する。また、セレクタ５１は、デブロックフィルタ部４４から供給されてフレームメモリ４８に記憶されているデブロックフィルタ処理後のローカルデコード画像を動き予測・補償部５３に出力する。
【００３７】
イントラ予測部５２は、ローカルデコード画像を参照してイントラ予測により処理対象ブロックの予測画像データを生成して、画像選択部５４に出力する。また、イントラ予測部５２は、強制イントラマクロブロックの領域における左端のマクロブロックについて、後述するインターマクロブロック領域を参照することなくイントラ符号化を実行する。
【００３８】
動き予測・補償部５３は、ローカルデコード画像を参照して動き予測を行い、処理対象ブロックの予測画像データを生成して、画像選択部５４に出力する。
【００３９】
画像選択部５４は、後述する強制イントラ領域の符号化処理において、イントラ予測部５２で生成された予測画像データを選択して、演算部３４，４３に出力する。また、画像選択部５４は、強制イントラ領域ではない領域の符号化処理では、イントラ予測部５２で生成された予測画像データと動き予測・補償部５３で生成された予測画像データの何れか符号化効率の高い画像データを選択して、演算部３４，４３に出力する。
【００４０】
このようにして、画像符号化部３０は、画像データを符号化してビットストリームを生成する。
【００４１】
［１−３．リフレッシュ領域について］
従来のイントラスライス方式では、イントラ符号化復号処理が行われるマクロブロックラインを設けることで、エラーから復帰することが可能となる。しかし、イントラ符号化復号処理が行われるマクロブロックラインは、他のマクロブロックラインに比べて符号量が多くなってしまう。このため、符号量が均一となるフレーム単位でのバファリングが必要となることから、１フレーム分の遅延を生じてしまう。そこで、イントラマクロブロック判定部３３は、図３に示すように、垂直方向に並ぶマクロブロックを、強制イントラマクロブロックとして強制イントラ領域（以下「リフレッシュ領域」という）ＲＬを設ける。すなわち、リフレッシュ領域ＲＬは、イントラスライス方式におけるイントラマクロブロックラインを垂直方向に設けた場合に相当する。また、イントラマクロブロック判定部３３は、リフレッシュ領域ＲＬを予め設定された幅（例えば複数マクロブロック分の幅）とする。また、イントラマクロブロック判定部３３は、ピクチャにおける全ての符号化単位がリフレッシュ領域ＲＬとなるように、リフレッシュ領域ＲＬとして割り当てる領域を、ピクチャ毎に順次水平方向に移動させる。イントラマクロブロック判定部３３は、リフレッシュ領域ＲＬの幅と移動量を一定とする場合、例えばピクチャ数のカウントを行い、カウント値に基づき、リフレッシュ領域ＲＬとして割り当てる領域を判定して、リフレッシュ領域ＲＬの設定を行う。なお、リフレッシュ領域ＲＬの幅と移動量を一定とする場合、一定周期でピクチャにおける全ての符号化単位がリフレッシュ領域ＲＬとなる。このようにリフレッシュ領域ＲＬを設けて、上述のイントラスライス方式と同様に、このリフレッシュ領域ＲＬを利用して次のピクチャで未復帰領域ＵＲのエラーからの復帰を行う。このように、イントラマクロブロック判定部３３は、垂直方向にリフレッシュ領域ＲＬを設けることで、各ラインの符号量を均一として、遅延を１フレーム分よりも少なくする。
【００４２】
［１−４．エラーの伝搬要因］
以下、Ｈ．２４６／ＡＶＣを用いた場合のエラー伝搬要因として、第１〜第３の伝搬要因について順次説明する。第１の伝搬要因は、動きベクトルの検出時における探索範囲である。
【００４３】
Ｈ．２６４／ＡＶＣでは、１／４画素精度で動きベクトルの検出をしている。このため、Ｈ．２６４／ＡＶＣに従って符号化処理を行う画像処理装置は、１／２画素および１／４画素を生成するために、隣接する６画素を用いて６タップのＦＩＲフィルタ処理を行う。
【００４４】
このため、図４に示すように、リフレッシュ領域ＲＬおよび未復帰領域ＵＲの境界ＢＤから３画素より外側（未復帰領域ＵＲ側）に位置する１／２画素（斜線で示す画素）および１／４画素（小さい円で示す画素）は、未復帰領域ＵＲを参照することになる。また、図４では、画素間においてｘ方向にのみ１／２画素および１／４画素が生成されているが、実際にはｙ方向にも１／２画素および１／４画素が生成される。なお、リフレッシュ領域ＲＬおよび未復帰領域ＵＲの境界ＢＤを、以下「リフレッシュ境界」と呼ぶ。
【００４５】
この結果、リフレッシュ領域ＲＬの内部であっても、リフレッシュ境界ＢＤから３画素より外側（未復帰領域ＵＲ側）に位置する１／２画素および１／４画素には、エラーが伝搬してしまう。以下、リフレッシュ領域ＲＬにおいてエラーが伝搬してしまうこれらの画素を、エラー伝搬画素と呼ぶ。従って、符号化時の動きベクトルの探索範囲でエラー伝搬画素が含まれると、復号時にエラー伝搬画素を参照してしまう可能性があり、復帰済領域ＡＲにおいてエラーを伝搬させることになる。これが第１のエラー伝搬要因である。
【００４６】
Ｈ．２６４／ＡＶＣでは、イントラ符号化に、画面内予測符号化を用いる。第２のエラー伝搬要因は、画面内予測符号化に起因するものである。
【００４７】
この画面内予測符号化では、図５に示すように、符号化対象のマクロブロックに隣接し、上または左隣若しくはその両方の画素を参照する。符号化対象のマクロブロックがその上または左をリフレッシュ境界ＢＤに隣接させて位置する場合、未復帰領域ＵＲを参照することになり、エラーを伝搬させることになる。これが第２のエラー伝搬要因である。
【００４８】
Ｈ．２６４／ＡＶＣでは、ブロックノイズを抑制するため、デブロックフィルタを使用する。第３のエラー伝搬要因は、デブロックフィルタに起因するものである。
【００４９】
デブロックフィルタは、ブロック境界から隣接する３画素ずつを参照することにより、デブロックフィルタ処理を実行する。従って、図６に示すように、リフレッシュ領域ＲＬにおけるリフレッシュ境界ＢＤから３画素（二重丸で示す画素）では、エラーを伝搬させてしまう。これが、第３のエラー伝搬要因である。
【００５０】
本技術では、これら第１〜第３のエラー伝搬要因を回避し、エラーの伝搬を防止し得るようになされている。
【００５１】
［１−５．エラー伝搬の回避］
［１−５−１．第１のエラー伝搬要因の回避］
画像符号化部３０は、エラーの伝搬が生じないよう探索範囲を設定する。リフレッシュ領域ＲＬが１マクロブロックの幅であった場合、１６×１６画素の検索ブロックがｘ方向に１／４画素でも移動すると、リフレッシュ領域ＲＬからはみ出ることになるため、未復帰領域ＵＲを参照することになる。この場合、動き予測・補償部５３は、動きベクトルの探索範囲をｙ方向にのみ設定する。
【００５２】
具体的に、動き予測・補償部５３は、ピクチャヘッダから符号化単位におけるマクロブロックサイズを確認する。動き予測・補償部５３は、マクロブロックサイズが１マクロブロックであった場合、ｘ方向の動きベクトルＭＶｘ＝０とし、ｙ方向の探索範囲を制限なし（ｙ方向に規格上許容される最大値）に設定し、この探索範囲内において整数精度で動きベクトルを検出する。
【００５３】
次に、動き予測・補償部５３、整数精度で検出された動きベクトルの周辺画素について、６タップのＦＩＲフィルタを用いて例えば図７に示すように、ｙ方向にのみ１／２画素および１／４画素を生成して、ｙ方向について１／４精度で動きベクトルを検出する。
【００５４】
これにより、画像符号化部３０は、探索範囲にｙ方向の１／２画素および１／４画素を含有させないため、リフレッシュ境界ＢＤに隣接する２画素分の１／２画素および１／４画素を含有させずに済む。この結果、画像符号化部３０は、復号時においてエラー伝搬画素を参照させずに済むため、復帰済領域ＡＲにおけるエラーの伝搬を防止することができ、第１のエラー伝搬要因を回避することができる。
【００５５】
また、動き予測・補償部５３は、リフレッシュ領域ＲＬが２マクロブロック以上であった場合、復号時においてエラー伝搬画素を参照しないように動きベクトルの探索範囲を設定する。
【００５６】
ここで、画像符号化部３０は、ピクチャ間においてリフレッシュ領域ＲＬを例えば右側にずらすように変動させてエラーから復帰させる。このため、エラー伝搬画素画が発生するのは、未復帰領域ＵＲと隣接するリフレッシュ領域ＲＬの右側のみとなる。そこで、画像符号化部３０は、リフレッシュ領域ＲＬの右側について、エラー伝搬画素を参照しないように探索範囲を設定する。
【００５７】
具体的に、動き予測・補償部５３は、探索範囲をリフレッシュ領域ＲＬの範囲内に設定し、この探索範囲内において整数精度で動きベクトルを検出する。動き予測・補償部５３は、整数精度で検出した動きベクトルの周辺画素について、６タップのＦＩＲフィルタを用いて例えば図８に示すように、１／２画素および１／４画素を生成する。このとき、動き予測・補償部５３は、リフレッシュ境界ＢＤから３画素よりも外側（リフレッシュ境界ＢＤ側）の領域について、ｘ方向に１／２画素および１／４画素を生成しないようにして参照対象ブロックを生成し、これを動き予測・補償部５３に供給する。
【００５８】
動き予測・補償部５３は、ｘおよびｙ方向について原則的に１／４精度で動きベクトルを検出する。動き予測・補償部５３は、リフレッシュ境界ＢＤから３画素よりも外側については、ｘ方向において１／２画素および１／４画素が存在しないため、整数精度で動きベクトルを検出することになる。
【００５９】
これにより、画像符号化部３０は、復号時にリフレッシュ境界ＢＤから３画素よりも外側（リフレッシュ境界ＢＤ側）についての１／２画素および１／４画素を参照させないようにでき、エラー伝搬画素の参照によるエラーの伝搬を防止することができる。
【００６０】
このように、画像符号化部３０は、動きベクトルの検出時において、エラー伝搬画素に対応する画素（リフレッシュ境界ＢＤから３画素よりも外側についての１／２画素および１／４画素）を参照しないようにした。これにより、復号部８２は、インター符号化により符号化された復帰済領域ＡＲを復号する際に、エラー伝搬画素を参照せずに復号できるため、エラー伝搬を防止することができ、第１のエラー伝搬要因を回避できる。
【００６１】
［１−５−２．第２のエラー伝搬要因の回避］
画像符号化部３０は、リフレッシュ領域ＲＬにおける画面内予測符号化において、当該リフレッシュ領域ＲＬ以外の画素を参照しないようにして、未復帰領域ＵＲからのエラーの伝搬を防止することができる。これにより、復号部８２は、リフレッシュ領域ＲＬを復号する際に、未復帰領域ＵＲを参照せずに復号できるため、エラー伝搬を防止することができる。
【００６２】
具体的に、イントラマクロブロック判定部３３は、処理対象となるマクロブロックがイントラ符号化すべき強制イントラマクロブロックか、符号化効率に応じてイントラ符号化またはインター符号化を行う非強制マクロブロックかを判別する。
【００６３】
イントラマクロブロック判定部３３は、所定マクロブロック数ずつ変動するリフレッシュ領域ＲＬに該当するマクロブロックを強制的にイントラ符号化される強制イントラマクロブロックと判定する。なお、以下、リフレッシュ領域ＲＬに属するマクロブロックを、リフレッシュマクロブロック（＝強制イントラマクロブロック）と呼ぶ。また、リフレッシュ領域ＲＬ以外のマクロブロックが構成する領域をインターマクロブロック領域と呼び、インターマクロブロック領域に属するマクロブロックを、他マクロブロック（＝非強制マクロブロック）と呼ぶ。
【００６４】
イントラマクロブロック判定部３３は、強制イントラマクロブロックおよび非強制マクロブロックの発生符号量を予測し、符号化効率のよい符号化方式を判定する。この判定結果は、画像選択部５４に供給される。
【００６５】
これにより、復号部８２は、リフレッシュ領域ＲＬの復号時に未復帰領域ＵＲを参照せずに済むため、エラーの伝搬を防止することができる。
【００６６】
このように、画像符号化部３０は、リフレッシュ領域ＲＬにおいてインターマクロブロック領域を参照しない。このため、復号部８２は、リフレッシュ領域ＲＬを復号する際に、未復帰領域ＵＲを参照せずに済むため、エラーの伝搬を防止することができ、第２のエラー伝搬要因を回避できる。
【００６７】
また、Ｈ．２６４／ＡＶＣでは、ｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇというフラグが用意されている。このフラグを「１」にすることにより、イントラ符号においてインター符号化された画素を参照しないことを規定することができる。ただし、このフラグが「１」に設定されていると、強制イントラマクロブロック以外のイントラマクロブロックでもインター符号化された画素を参照しないため、符号化効率が低下するという欠点を有する。
【００６８】
具体的に、画像符号化部３０のピクチャヘッダ生成部３２は、ピクチャヘッダにおけるＰＰＳ（Picture Parameter set）におけるｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇ＝１とする。このフラグが「１」であることは、イントラ符号においてインター符号化された画素を参照しないことを表している。
【００６９】
イントラ予測部５２は、ｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇ＝１であることを確認すると、イントラ符号化された画素のみを参照して画面内予測処理を実行する。この結果、復号部８２は、イントラ符号化された画素のみを参照して画像データを復号することができるため、未復帰領域ＵＲからのエラーの伝搬を防止できる。
【００７０】
このように、画像符号化部３０は、ｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇ＝１とすることにより、未復帰領域ＵＲからのエラーの伝搬を防止し、第２のエラー伝搬要因を回避し得るようになされている。
【００７１】
［１−５−３．第３のエラー伝搬要因の回避］
上述したように、デブロックフィルタを用いると、リフレッシュ領域ＲＬを復号する際、リフレッシュ境界ＢＤから３画素（以下、これを境界画素と呼ぶ）に未復帰領域ＵＲの画素が影響を与えるため、当該境界画素が壊れてしまう。従って、画像符号化部３０は、復号の際にエラーが伝搬しないようフィルタ処理を制限する制御部を設けて、デブロックフィルタを使用しないようにする。
【００７２】
具体的に、画像符号化部３０はフラグによって、リフレッシュ境界ＢＤに対してデブロックフィルタ処理を実行しないようにして、リフレッシュ境界以外ではデブロックフィルタ処理を実行して、デブロックノイズを低減させる。
【００７３】
このため、復号部８２は、リフレッシュ領域ＲＬを復号する際に、リフレッシュ領域ＲＬにデブロックフィルタ処理を実行せずに済むため、エラーの伝搬を防止することができる。
【００７４】
このように、画像符号化部３０は、デブロックフィルタを用いないことにより、未復帰領域ＵＲの画素の影響によってリフレッシュ領域ＲＬの境界画素が壊れることを防止でき、第３のエラー伝搬要因を回避できる。
【００７５】
［１−６．処理手順］
図９は、符号化処理を示すフローチャートである。画像符号化部３０は、符号化処理ＲＴ１を開始すると、ステップＳＰ１へ移り、処理対象となるマクロブロックがピクチャの先頭か否かを判別し、肯定結果が得られるとステップＳＰ２へ移る一方、否定結果が得られた場合、ステップＳＰ３へ移る。
【００７６】
ステップＳＰ２において、画像符号化部３０は、マクロブロックの先頭にピクチャヘッダを付加すると、次のステップＳＰ３へ移る。このとき画像符号化部３０は、ｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇを付加する。
【００７７】
ステップＳＰ３において、画像符号化部３０は、サブルーチンＳＲＴ１１へ移り、マクロブロック判定処理を実行する。画像符号化部３０は、マクロブロック判定処理として、処理対象となるマクロブロックをインター符号化すべきかイントラ符号化すべきかを判定すると、次のステップＳＰ４へ移る。
【００７８】
ステップＳＰ４において、画像符号化部３０は、処理対象となるマクロブロックがイントラ符号化すべきマクロブロック（強制イントラマクロブロックおよびイントラマクロブロック）であるか否かについて判別する。
【００７９】
ここで肯定結果が得られると、画像符号化部３０は、画面内予測処理を実行すべきであるため、次のステップＳＰ５へ移る。ステップＳＰ５において、画像符号化部３０は、リフレッシュ領域ＲＬにおいて、インター符号化されたマクロブロックを参照しないように画面内予測処理を実行する。また、画像符号化部３０は、符号化対象画像データと画面内予測処理で得られた予測画像データとの差分である予測誤差データを生成して、次のステップＳＰ８へ移る。
【００８０】
これに対してステップＳＰ４において否定結果が得られると、画像符号化部３０は、動き予測処理を実行すべきであるため、次のステップＳＰ６へ移る。
【００８１】
ステップＳＰ６において、画像符号化部３０は、サブルーチンＳＲＴ１２へ移り、探索範囲判定処理を実行する。画像符号化部３０は、探索範囲判定処理として、リフレッシュ領域ＲＬの右側について、エラー伝搬画素を参照しないよう探索範囲を設定して、次のステップＳＰ７へ移る。なお、エラー伝搬画素は、当該リフレッシュ領域ＲＬにおけるリフレッシュ境界ＢＤから３画素よりも外側の１／２画素および１／４画素である。
【００８２】
ステップＳＰ７において、画像符号化部３０は、ステップＳＰ６において設定された探索範囲において動きベクトルを検出し、動き予測処理を実行し、符号化対象画像データと予測画像データとの差分である予測誤差データを生成して、次のステップＳＰ８へ移る。
【００８３】
ステップＳＰ８において、画像符号化部３０は、予測誤差データに対し、直交変換処理および量子化処理を実行し、量子化係数を生成すると、次のステップＳＰ９およびＳＰ１０へ移り、同時並行して当該ステップＳＰ９およびＳＰ１０を実行する。ステップＳＰ９において、画像符号化部３０は、量子化係数に対し、可逆符号化処理を実行し、可逆符号化データを生成すると、これをビットストリームとして無線通信部６１に出力し、符号化処理ＲＴ１を終了する。
【００８４】
ステップＳＰ１０において、画像符号化部３０は、逆量子化処理、逆直交変換処理を実行し、ローカルデコード画像を生成すると、次のステップＳＰ１１へ移る。
【００８５】
ステップＳＰ１１において、画像符号化部３０は、ｄｉｓａｂｌｅ＿ｄｅｂｌｏｃｋｉｎｇ＿ｆｉｌｔｅｒ＿ｉｄｃを確認し、デブロックフィルタ処理を実行すべきか否かを判別する。
【００８６】
ここで肯定結果が得られた場合、画像符号化部３０は、ステップＳＰ１２へ移り、デブロックフィルタ処理を実行すると、終了ステップへ移って符号化処理ＲＴ１を終了する。
【００８７】
これに対してステップＳＰ１１において否定結果が得られた場合、画像符号化部３０は、終了ステップへ移って符号化処理ＲＴ１を終了する。
【００８８】
画像符号化部３０は、符号化処理ＲＴ１のステップＳＰ３から、図１０に示すマクロブロック判定処理であるサブルーチンＳＲＴ１１のステップＳＰ２１へ移る。
【００８９】
ステップＳＰ２１において、画像符号化部３０は、処理対象となる現在のマクロブロックがリフレッシュマクロブロックか否かを判別する。ここで肯定結果が得られた場合、このことは、処理対象のマクロブロックがリフレッシュ領域ＲＬに属していることを表している。このとき、画像符号化部３０は、ステップＳＰ２２へ移り、処理対象のマクロブロックを強制イントラマクロブロックとしてイントラ符号化することを選択し、次のステップＳＰ２４へ移る。
【００９０】
これに対してステップＳＰ２２において否定結果が得られた場合、このことは処理対象のマクロブロックが他マクロブロックであることを表している。このとき、画像符号化部３０は、次のステップＳＰ２３へ移る。
【００９１】
ステップＳＰ２３において、画像符号化部３０は、処理対象のマクロブロックのインター符号化およびイントラ符号化による発生符号量を予測する。画像符号化部４は、符号化効率のよい方の符号化方式を実際に処理対象のマクロブロックを符号化する符号化方式として選択すると、次のステップＳＰ２４へ移る。
【００９２】
ステップＳＰ２４において、画像符号化部３０は、処理対象のマクロブロックがピクチャにおける最後のマクロブロックか否かについて判別する。ここで否定結果が得られた場合、画像符号化部３０は、ステップＳＰ２１へ戻り、ピクチャ内の全てのマクロブロックに対する処理が終了するまで、ステップＳＰ２１〜ＳＰ２４までの処理を継続する。
【００９３】
これに対して、ステップＳＰ２４において肯定結果が得られた場合、画像符号化部３０は、次のステップＳＰ２５へ移る。
【００９４】
ステップＳＰ２５において、画像符号化部３０は、ピクチャの数をカウントするピクチャカウンタを「＋１」すると、次のステップＳＰ２６へ移る。
【００９５】
ステップＳＰ２６において、画像符号化部３０は、全てのピクチャに対する処理を終了したか否かについて判別し、否定結果が得られると、ステップＳＰ２１へ戻り、全てのピクチャに対する処理を終了するまで、ステップＳＰ２１〜ＳＰ２６の処理を継続する。
【００９６】
符号化処理ＲＴ１のステップＳＰ６において、画像符号化部３０は、図１１に示す探索範囲決定処理であるサブルーチンＳＲＴ１２のステップＳＰ３１へ移る。画像符号化部３０は、エラーの伝搬しない範囲を設定すると、図９に示す符号化処理ＲＴ１のステップＳＰ７へ移る。例えば、画像符号化部３０は、復号時にエラー伝搬画素を参照しないように、リフレッシュ領域ＲＬの右側について、リフレッシュ境界ＢＤから３画素より外側の１／２画素および１／４画素を除く範囲をｘ方向の動きベクトルＭＶｘの探索範囲に設定する。また、リフレッシュ境界ＢＤから３画素より外側の１／２画素および１／４画素を除く領域は、ｘ方向の動きベクトルＭＶｘの探索範囲を「０」（すなわち動きベクトルＭＶｘ＝「０」）に設定する。
【００９７】
［１−７．動作および効果］
画像符号化部３０は、ピクチャ毎に垂直方向に設けたリフレッシュ領域ＲＬをピクチャ毎に移動するように符号化を行う。従って、仮に復号時において１枚のピクチャにエラーが生じた場合、図１２の（Ａ）に示すように、次にピクチャにおいてリフレッシュ領域がＲＬのみが復帰し、残りのインターマクロブロック領域は未復帰領域ＵＲとなる。また、次のピクチャの復号時は、図１２の（Ｂ）に示すようにリフレッシュ領域ＲＬのみを参照して復号化することができ、未復帰領域ＵＲを参照せずに済む。このため、参照する直前のピクチャのリフレッシュ領域ＲＬに対応する部分を復帰済領域ＡＲとして復帰させることが可能となる。以下同様に処理を行うことで、図１２の（Ｃ）や図１２の（Ｄ）に示すように、復帰済領域ＡＲは、リフレッシュ領域ＲＬの出現に伴って徐々に増大してピクチャ内の全ての位置において画像を復帰させることができる。
【００９８】
また、画像符号化部３０は、強制イントラマクロブロックに対するイントラ符号化を実行する。画像符号化部３０は、参照対象となる参照ピクチャ（ローカルデコード画像）における参照符号化単位（参照対象ブロック）に対し、隣接画素を用いたフィルタ処理によって整数精度未満となる１／２画素および１／４画素の画素を生成する。
【００９９】
画像符号化部３０は、参照対象ブロックの１／２画素および１／４画素の画素を参照して実行される整数精度未満での動き予測処理の際、参照ブロックに対する探索範囲を設定する。画像符号化部３０は、探索範囲として、強制イントラマクロブロックおよび他マクロブロックの境界であるリフレッシュ境界ＢＤから、隣接画素の数に対応する１／２画素および１／４画素の画素（すなわちリフレッシュ境界ＢＤから３画素より外側に存在する１／２画素および１／４画素）を含有しない範囲を設定する。画像符号化部３０は、設定された探索範囲で動きベクトルを検出し、動き予測処理を実行する。
【０１００】
これにより、画像符号化部３０は、復号時にエラーが伝搬する可能性のあるエラー伝搬画素を参照せずに処理対象となるマクロブロックを符号化できる。このため、復号部８２は、エラーが生じた場合でも、エラー伝搬画素を参照せずに復号化できるため、動きベクトルの検出時に生じるエラーの伝搬を防止することができる。
【０１０１】
画像符号化部３０は、ピクチャにおける全ての符号化単位であるマクロブロックが、イントラ符号化される強制イントラブロックとなるように、リフレッシュ領域ＲＬの割り当ておよびリフレッシュ領域ＲＬとして割り当てる領域を水平方向に移動させる。
【０１０２】
画像符号化部３０は、フィルタ設定情報としてのｄｉｓａｂｌｅ＿ｄｅｂｌｏｃｋｉｎｇ＿ｆｉｌｔｅｒ＿ｉｄｃを設定することにより、デブロックフィルタ処理に対する制限を設定する。画像符号化部３０は、イントラ予測部５２および動き予測・補償部５３によって符号化されたマクロブロックのローカルデコード画像に対し、設定されたｄｉｓａｂｌｅ＿ｄｅｂｌｏｃｋｉｎｇ＿ｆｉｌｔｅｒ＿ｉｄｃに従って、デブロックフィルタ処理を実行する。
【０１０３】
これにより、画像符号化部３０は、エラー伝搬の原因となるデブロックフィルタの処理を制限することができ、復号時におけるエラーの伝搬を防止できる。
【０１０４】
このように、画像符号化部３０は、復号時におけるエラーの伝搬を防止するよう、符号化を実行する。これにより、復号部８２は、復号時にエラーが生じた場合であっても、エラーの伝搬を防止することができるため、エラーから復帰するまでに要する時間を短縮することができる。
【０１０５】
画像符号化部３０は、インターマクロブロック領域を参照しないよう、強制イントラマクロブロックに対する参照対象を制限し、当該制限に従って、画面内予測処理を実行する。
【０１０６】
これにより、画像符号化部３０は、リフレッシュ境界ＢＤの左側が未復帰であった場合であっても、インターマクロブロック領域を参照せずに済むため、リフレッシュ領域ＲＬにエラーを伝搬させずに済む。このため、画像符号化部３０は、無線伝送によるエラーが生じた際に、エラーから復帰するまでに要する時間を短縮させることができる。
【０１０７】
画像符号化部３０は、単数のマクロブロックが垂直方向に並ぶことによりリフレッシュ領域ＲＬが構成されていた場合には、水平方向の探索範囲を「０」に設定する。
【０１０８】
これにより、画像符号化部３０は、リフレッシュ境界ＢＤから３画素より外側に位置する１／２画素および１／４画素を参照せずに済む。これにより、復号部８２は、エラー伝搬画素を参照せずに済むため、エラーの伝搬を防止することができる。
【０１０９】
画像符号化部３０は、強制イントラマクロブロックで構成されるリフレッシュ領域ＲＬが、ピクチャ間において変動方向であるｘ方向右側に移動するように、強制イントラマクロブロックを割り当てる。そして画像符号化部３０は、ｄｉｓａｂｌｅ＿ｄｅｂｌｏｃｋｉｎｇ＿ｆｉｌｔｅｒ＿ｉｄｃを「２」に設定する。
【０１１０】
これにより、画像符号化部３０は、リフレッシュ領域ＲＬをピクチャ間において連続的に変動させることができるため、復帰済領域ＡＲの右側を、常にリフレッシュ領域ＲＬまたは復帰済領域ＡＲに隣接させることができる。このため、復号部８２は、復帰済領域ＡＲの右側において、エラー伝搬画素を発生させない。
【０１１１】
この結果、画像符号化部３０は、ｘ方向右側の動きベクトルの探索範囲をリフレッシュ境界ＢＤまでに設定することができ、探索範囲を拡大することができる。
【０１１２】
画像符号化部３０は、リフレッシュ領域ＲＬの１マクロブロック目において、左側のインターマクロブロック領域を参照しないようにすることで、復号部８２は、リフレッシュ領域ＲＬを復号する際、未復帰領域ＵＲを参照せずに済むため、リフレッシュ領域ＲＬを確実に復帰させることができる。
【０１１３】
画像符号化部３０は、ｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇを「１」に設定する。画像符号化部３０は、当該ｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇに従って、他マクロブロックを参照することなく強制イントラマクロブロックに対する画面内予測処理を実行する。
【０１１４】
これにより画像符号化部３０は、他マクロブロックを参照せずに画面内予測処理を実行することができる。このため、復号部８２は、画面内予測処理において、未復帰領域ＵＲを参照することがないため、リフレッシュ領域ＲＬを確実に復帰させることができる。
【０１１５】
画像符号化部３０は、他マクロブロックに割り当てたマクロブロックを、インター符号化されるインターマクロブロックと、イントラ符号化されるイントラマクロブロックとに割り当てる。
【０１１６】
これにより、画像符号化部３０は、強制イントラマクロブロックでないイントラ符号化の際、他マクロブロックを参照できる。一方、ｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇが「１」に設定されると、全てのＩマクロブロック（強制イントラマクロブロックおよびイントラマクロブロック）に対してＰマクロブロックが参照されない。このため、画像符号化部４は、ｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇを用いる場合と比較して、符号化効率を向上させることができる。
【０１１７】
画像符号化部３０は、復号されるときにエラーから復帰していない未復帰のマクロブロックを参照して生成される整数精度未満の画素を含有しないよう、参照ブロックに対する探索範囲を設定する。また、画像符号化部３０は、復号されるときにエラーから復帰していない未復帰のマクロブロックを参照しないよう、デブロックフィルタ処理を制限する。
【０１１８】
これにより、画像符号化部３０は、復号されるときのエラーの伝搬を適切に防止できるため、エラーから復帰するまでに要する時間を短縮できる。
【０１１９】
さらに、画像符号化部３０は、垂直方向にリフレッシュ領域ＲＬを設けて符号化を行う。これにより、各ラインの符号量が均一とされて、遅延を１フレーム分よりも少なくできる。例えば遅延を1ライン分程度とすることができる。
【０１２０】
＜２．第２の実施の形態＞
ところで、符号化方式では、Ｈ．２４６／ＡＶＣより更なる符号化効率の向上を目的として、ＩＴＵ―Ｔと、ＩＳＯ／ＩＥＣの共同の標準化団体であるＪＣＴＶＣ（Joint Collaboration Team - Video Coding）により、ＨＥＶＣ（High Efficiency Video Coding）と呼ばれる符号化方式の標準化が進められている。
【０１２１】
ＨＥＶＣにおいては、Ｈ．２４６／ＡＶＣにおけるマクロブロックと同様の役割を果たすＣｏｄｉｎｇ  Ｕｎｉｔ（ＣＵ）が規定されている。また、ＣＵは、最大の大きさを持つＬＣＵ（Largest Coding Unit）と最小の大きさを持つＳＣＵ（Smallest Coding Unit）の範囲内のサイズとされている。なお、ＣＵは、イントラ若しくはインター予測の単位であるＰｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ（ＰＵ）に分割され、また、直交変換の単位である、Ｔｒａｎｓｆｏｒｍ  Ｕｎｉｔ（ＴＵ）に分割される。
【０１２２】
また、ＨＥＶＣにおいては、インループフィルタ処理としてデブロックフィルタ処理だけでなく、ＳＡＯ（Sample Adaptive Offset）処理や適応ループフィルタ（Adaptive Loop Filter）処理が設けられている。
【０１２３】
次に、第２の実施の形態では、ＨＥＶＣを用いる場合について説明する。なお、以下の説明では、主にＨ．２６４／ＡＶＣと相違する部分について説明を行う。
【０１２４】
［２−１．画像符号化部の構成］
図１３は、第２の実施の形態における画像処理装置の構成を例示している。ＨＥＶＣを用いた画像符号化部３０では、ＳＡＯ処理を行うＳＡＯ部４５や適応ループフィルタ処理を行う適応ループフィルタ部４６が設けられている。
【０１２５】
ＳＡＯ部４５は、画像をquad-treeに分割し、それぞれの領域にどのようなオフセットを適用して符号化するかを選択する。ＳＡＯ部４５はデブロックフィルタ部４４から供給された画像データに対してＳＡＯ処理すなわち選択したオフセット処理を行い適応ループフィルタ部４６に出力する。
【０１２６】
ここで、ＳＡＯ処理について説明する。ＳＡＯ部のオフセットの種類としては、バンドオフセットと呼ばれるものが２種類、エッジオフセットと呼ばれるものが６種類あり、さらに、オフセットを適応しないことも可能である。そして、画像をquad-treeに分割し、それぞれの領域に、上述したどのオフセットの種類により符号化するかを選択することができる。
【０１２７】
次に、図１４を参照して、quad-tree構造について説明する。例えば、画像符号化部３０では、図１４の（Ａ）に示されるように、領域０が分割されていない状態を示すLevel-０（分割深度０）のコスト関数値Ｊ０が計算される。また、領域０が４つの領域１乃至４に分割された状態を示すLevel-１（分割深度０）のコスト関数値Ｊ１，Ｊ２，Ｊ３，Ｊ４が計算される。
【０１２８】
そして、図１４の（Ｂ）に示されるように、コスト関数値が比較され、Ｊ０＞（Ｊ１＋Ｊ２＋Ｊ３＋Ｊ４）により、コスト関数値が小さいLevel-１の分割領域（Partitions）が選択される。
【０１２９】
同様にして、図１４の（Ｃ）に示されるように、領域０が１６個の領域５乃至２０に分割された状態を示すLevel-２（分割深度２）のコスト関数値Ｊ５乃至Ｊ２０が計算される。
【０１３０】
そして、図１４の（Ｄ）に示されるように、コスト関数値がそれぞれ比較され、Ｊ１＜（Ｊ５＋Ｊ６＋Ｊ９＋Ｊ１０）により、領域１においては、Level-１の分割領域（Partitions）が選択される。Ｊ２＞（Ｊ７＋Ｊ８＋Ｊ１１＋Ｊ１２）により、領域２においては、Level-２の分割領域が選択される。Ｊ３＞（Ｊ１３＋Ｊ１４＋Ｊ１７＋Ｊ１８）により、領域３においては、Level-２の分割領域が選択される。Ｊ４＞（Ｊ１５＋Ｊ１６＋Ｊ１９＋Ｊ２０）により、領域４においては、Level-１の分割領域が選択される。
【０１３１】
その結果、quad-tree構造における図１４の（Ｄ）に示される最終的なquad-tree領域（Partitions）が決定される。そして、quad-tree構造の決定された領域毎に、２種類のバンドオフセット、６種類のエッジオフセット、およびオフセットなしの全てについてコスト関数値が算出され、どのオフセットにより符号化されるのかが決定される。
【０１３２】
例えば、図１４の（Ｅ）に示すように、領域１に対しては、ＥＯ（４）、すなわち、エッジオフセットのうちの４種類目が決定されている。領域７に対しては、ＯＦＦ、すなわち、オフセットなしが決定されており、領域８に対しては、ＥＯ（２）、すなわち、エッジオフセットのうちの２種類目が決定されている。領域１１および１２に対しては、ＯＦＦ、すなわち、オフセットなしが決定されている。
【０１３３】
また、領域１３に対しては、ＢＯ（１）、すなわち、バンドオフセットのうちの１種類目が決定されており、領域１４に対しては、ＥＯ（２）、すなわち、エッジオフセットのうちの２種類目が決定されている。領域１７に対しては、ＢＯ（２）、すなわち、バンドオフセットのうちの２種類目が決定されており、領域１８に対しては、ＢＯ（１）、すなわち、バンドオフセットのうちの１種類目が決定されている。領域４に対しては、ＥＯ（１）、すなわち、エッジオフセットのうちの１種類目が決定されている。
【０１３４】
次に、図１５を参照して、エッジオフセットの詳細について説明する。エッジオフセットにおいては、当該画素値と、当該画素値に隣接する隣接画素値の比較が行われ、これに対応したカテゴリに対して、オフセット値が伝送されることになる。
【０１３５】
エッジオフセットには、図１５の（Ａ）乃至（Ｄ）に示される４つの１次元パターンと、図１５の（Ｅ）および（Ｆ）に示される２つの２次元パターンが存在し、それぞれ、図１６に示されるカテゴリでオフセットが伝送される。
【０１３６】
図１５の（Ａ）は、当該画素Ｃに対して、隣接画素が左右の１次元に配置されている、すなわち、図１５の（Ａ）のパターンに対して０度をなしている1-D,0-degreeパターンを表している。図１５の（Ｂ）は、当該画素Ｃに対して、隣接画素が上下の１次元に配置されている、すなわち、図１５の（Ａ）のパターンに対して９０度をなしている1-D,90-degreeパターンを表している。
【０１３７】
図１５の（Ｃ）は、当該画素Ｃに対して、隣接画素が左上と右下の１次元に配置されている、すなわち、図１５の（Ａ）のパターンに対して１３５度をなしている1-D,135-degreeパターンを表している。図１５の（Ｄ）は、当該画素Ｃに対して、隣接画素が右上と左下の１次元に配置されている、すなわち、図１５の（Ａ）のパターンに対して４５度をなしている1-D,135-degreeパターンを表している。
【０１３８】
図１５の（Ｅ）は、当該画素Ｃに対して、隣接画素が上下左右２次元に配置されている、すなわち、当該画素Ｃに対して交差している2-D,crossパターンを表している。図１５の（Ｆ）は、当該画素Ｃに対して、隣接画素が右上左下、左上右下の２次元に配置されている、すなわち、当該画素Ｃに対して斜めに交差している2-D,diagonalパターンを表している。
【０１３９】
図１６の（Ａ）は、１次元パターンの規則一覧表（Classification rule for 1-D patterns）を示している。図１５の（Ａ）乃至（Ｄ）のパターンは、図１６の（Ａ）に示されるような５種類のカテゴリに分類され、そのカテゴリによりオフセットが算出されて、復号部に送られる。
【０１４０】
当該画素Ｃの画素値が２つの隣接画素の画素値より小さい場合、カテゴリ１に分類される。当該画素Ｃの画素値が一方の隣接画素の画素値より小さくて、他方の隣接画素の画素値と一致する場合、カテゴリ２に分類される。当該画素Ｃの画素値が一方の隣接画素の画素値より大きくて、他方の隣接画素の画素値と一致する場合、カテゴリ３に分類される。当該画素Ｃの画素値が２つの隣接画素の画素値より大きい場合、カテゴリ４に分類される。以上のどれでもない場合、カテゴリ０に分類される。
【０１４１】
図１６の（Ｂ）は、２次元パターンの規則一覧表（Classification rule for 2-D patterns）を示している。図１５の（Ｅ）および（Ｆ）のパターンは、図１６の（Ｂ）に示されるような７種類のカテゴリに分類され、そのカテゴリによりオフセットが復号部に送られる。
【０１４２】
当該画素Ｃの画素値が４つの隣接画素の画素値より小さい場合、カテゴリ１に分類される。当該画素Ｃの画素値が３つの隣接画素の画素値より小さくて、４番目の隣接画素の画素値と一致する場合、カテゴリ２に分類される。当該画素Ｃの画素値が３つの隣接画素の画素値より小さくて、４番目の隣接画素の画素値より大きい場合、カテゴリ３に分類される。
【０１４３】
当該画素Ｃの画素値が３つの隣接画素の画素値より大きくて、４番目の隣接画素の画素値より小さい場合、カテゴリ４に分類される。当該画素Ｃの画素値が３つの隣接画素の画素値より大きくて、４番目の隣接画素の画素値と一致する場合、カテゴリ５に分類される。当該画素Ｃの画素値が４つの隣接画素の画素値より大きい場合、カテゴリ６に分類される。以上のどれでもない場合、カテゴリ０に分類される。
【０１４４】
適応ループフィルタ部４６は、係数メモリ４７から供給された係数とＳＡＯ部４５から供給された画像データを用いて、適応ループフィルタ処理を行う。適応ループフィルタ部４６は、フィルタとして例えばウィナーフィルタ（Wiener Filter）が用いる。もちろんウィナーフィルタ以外のフィルタを用いてもよい。適応ループフィルタ部４６は、タップサイズの異なる複数のフィルタを有している。適応ループフィルタ部４６は、フィルタ処理結果をフレームメモリ４８に供給し、参照画像の画像データとして記憶させる。また、適応ループフィルタ部４６は、符号化効率が良好となる適応ループフィルタ処理で用いたフィルタサイズや係数セット等を示す情報を可逆符号化部３７に供給してビットストリームに含めるようにする。
【０１４５】
［２−２．エラー伝搬の回避］
上述のように、ＳＡＯ処理においては、３×３画素の判定処理が行われる。また、適応ループフィルタ処理では、例えば水平方向が５タップあるいは９タップ等でフィルタ処理が行われる。従って、第２の実施の形態の画像符号化部３０では、復号の際にエラーが伝搬しないようフィルタ処理を制限する制御部を設けて、ＳＡＯ処理や適応ループフィルタ処理の制限を行う。
【０１４６】
画像符号化部３０は、フィルタ設定情報として、例えばｓａｍｐｌｅ＿ａｄａｐｔｉｖｅ＿ｏｆｆｓｅｔ＿ｅｎａｂｌｅｄ＿ｆｌａｇを設定することによりＳＡＯ処理に対する制限を設定する。画像符号化部３０は、設定されたｓａｍｐｌｅ＿ａｄａｐｔｉｖｅ＿ｏｆｆｓｅｔ＿ｅｎａｂｌｅｄ＿ｆｌａｇに従って、ローカルデコード画像のＳＡＯ処理を実行する。
【０１４７】
画像符号化部３０は、フィルタ設定情報として、例えばａｄａｐｔｉｖｅ＿ｌｏｏｐ＿ｆｉｌｔｅｒ＿ｅｎａｂｌｅｄ＿ｆｌａｇを設定することにより適応ループフィルタ処理に対する制限を設定する。画像符号化部３０は、設定されたａｄａｐｔｉｖｅ＿ｌｏｏｐ＿ｆｉｌｔｅｒ＿ｅｎａｂｌｅｄ＿ｆｌａｇに従って、ローカルデコード画像の適応ループフィルタ処理を実行する。
【０１４８】
これにより、画像符号化部３０は、エラー伝搬の原因となるデブロックフィルタ処理だけでなく、ＳＡＯ処理や適応ループフィルタ処理を制限することができ、復号時におけるエラーの伝搬を防止できる。
【０１４９】
また、動き予測・補償部５３は、探索範囲をリフレッシュ領域ＲＬの範囲内に設定し、この探索範囲内において整数精度で動きベクトルを検出する。ＨＥＶＣにおいては、動き予測・補償部５３は、整数精度で検出した動きベクトルの周辺画素について、８タップのＦＩＲフィルタを用いて１／２画素および１／４画素を生成する。このとき、動き予測・補償部５３は、リフレッシュ境界ＢＤから４画素よりも外側（リフレッシュ境界ＢＤ側）の領域について、ｘ方向に１／２画素および１／４画素を生成しないようにして参照対象ブロックを生成する。
【０１５０】
［２−３．処理手順］
図１７は、符号化処理を示すフローチャートである。画像符号化部３０は、符号化処理ＲＴ１を開始すると、ステップＳＰ１へ移り、処理対象となるマクロブロックがピクチャの先頭か否かを判別し、肯定結果が得られるとステップＳＰ２へ移る一方、否定結果が得られた場合、ステップＳＰ３へ移る。
【０１５１】
ステップＳＰ２において、画像符号化部３０は、マクロブロックの先頭にピクチャヘッダを付加すると、次のステップＳＰ３へ移る。このとき画像符号化部３０は、ｃｏｎｓｔｒａｉｎｅｄ＿ｉｎｔｒａ＿ｐｒｅｄ＿ｆｌａｇを付加する。
【０１５２】
ステップＳＰ３において、画像符号化部３０は、サブルーチンＳＲＴ１１へ移り、マクロブロック判定処理を実行する。画像符号化部３０は、マクロブロック判定処理として、処理対象となるマクロブロックをインター符号化すべきかイントラ符号化すべきかを判定すると、次のステップＳＰ４へ移る。
【０１５３】
ステップＳＰ４において、画像符号化部３０は、処理対象となるマクロブロックがイントラ符号化すべきマクロブロック（強制イントラマクロブロックおよびイントラマクロブロック）であるか否かについて判別する。
【０１５４】
ここで肯定結果が得られると、画像符号化部３０は、画面内予測処理を実行すべきであるため、次のステップＳＰ５へ移る。ステップＳＰ５において、画像符号化部３０は、リフレッシュマクロブロックにおいて、インター符号化されたマクロブロックを参照しないように画面内予測処理を実行する。また、符号化対象画像データと画面内予測処理によって得られた予測画像データとの差分である予測誤差データを生成して、次のステップＳＰ８へ移る。
【０１５５】
これに対してステップＳＰ４において否定結果が得られると、画像符号化部３０は、動き予測処理を実行すべきであるため、次のステップＳＰ６へ移る。
【０１５６】
ステップＳＰ６において、画像符号化部３０は、サブルーチンＳＲＴ１２へ移り、探索範囲判定処理を実行する。画像符号化部３０は、探索範囲判定処理として、リフレッシュ領域ＲＬの右側について、エラー伝搬画素を参照しないよう探索範囲を設定して、次のステップＳＰ７へ移る。
【０１５７】
ステップＳＰ７において、画像符号化部３０は、ステップＳＰ６において設定された探索範囲において動きベクトルを検出し、動き予測処理を実行し、符号化対象画像データと予測画像データとの差分である予測誤差データを生成して、次のステップＳＰ８へ移る。
【０１５８】
ステップＳＰ８において、画像符号化部３０は、予測誤差データに対し、直交変換処理および量子化処理を実行し、量子化係数を生成すると、次のステップＳＰ９およびＳＰ１０へ移り、同時並行して当該ステップＳＰ９およびＳＰ１０を実行する。ステップＳＰ９において、画像符号化部３０は、量子化係数に対し、可逆符号化処理を実行し、可逆符号化データを生成すると、これをビットストリームとして無線通信部６１に出力し、ステップＳＰ１３に移る。
【０１５９】
ステップＳＰ１０において、画像符号化部３０は、逆量子化処理、逆直交変換処理を実行し、ローカルデコード画像を生成すると、次のステップＳＰ１１へ移る。
【０１６０】
ステップＳＰ１１において、画像符号化部３０は、ｄｉｓａｂｌｅ＿ｄｅｂｌｏｃｋｉｎｇ＿ｆｉｌｔｅｒ＿ｉｄｃを確認し、デブロックフィルタ処理を実行すべきか否かを判別する。
【０１６１】
ここで肯定結果が得られた場合、画像符号化部３０は、ステップＳＰ１２へ移り、デブロックフィルタ処理を実行すると、ステップＳＰ１３に移る。これに対してステップＳＰ１１において否定結果が得られた場合、画像符号化部３０は、ステップＳＰ１３に移る。
【０１６２】
ステップＳＰ１３において、画像符号化部３０は、ｓａｍｐｌｅ＿ａｄａｐｔｉｖｅ＿ｏｆｆｓｅｔ＿ｅｎａｂｌｅｄ＿ｆｌａｇを確認し、ＳＡＯ処理を実行すべきか否かを判別する。
【０１６３】
ここで肯定結果が得られた場合、画像符号化部３０は、ステップＳＰ１４へ移り、ＳＡＯ処理を実行すると、ステップＳＰ１５に移る。これに対してステップＳＰ１３において否定結果が得られた場合、画像符号化部３０は、ステップＳＰ１５に移る。
【０１６４】
ステップＳＰ１５において、画像符号化部３０は、ａｄａｐｔｉｖｅ＿ｌｏｏｐ＿ｆｉｌｔｅｒ＿ｅｎａｂｌｅｄ＿ｆｌａｇを確認し、適応ループフィルタ処理を実行すべきか否かを判別する。
【０１６５】
ここで肯定結果が得られた場合、画像符号化部３０は、ステップＳＰ１６へ移り、適応ループフィルタ処理を実行して符号化処理ＲＴ１を終了する。これに対してステップＳＰ１５において否定結果が得られた場合、画像符号化部３０は、終了ステップへ移って符号化処理ＲＴ１を終了する。
【０１６６】
［２−４．動作および効果］
画像符号化部３０は、フィルタ設定情報としてのｄｉｓａｂｌｅ＿ｄｅｂｌｏｃｋｉｎｇ＿ｆｉｌｔｅｒ＿ｉｄｃ，ｓａｍｐｌｅ＿ａｄａｐｔｉｖｅ＿ｏｆｆｓｅｔ＿ｅｎａｂｌｅｄ＿ｆｌａｇ，ａｄａｐｔｉｖｅ＿ｌｏｏｐ＿ｆｉｌｔｅｒ＿ｅｎａｂｌｅｄ＿ｆｌａｇを設定することにより、デブロックフィルタ処理やＳＡＯ処理および適応ループフィルタ処理に対する制限を設定する。画像符号化部３０は、演算部４３で生成されたローカルデコード画像に対し、設定されたｄｉｓａｂｌｅ＿ｄｅｂｌｏｃｋｉｎｇ＿ｆｉｌｔｅｒ＿ｉｄｃ，ｄｉｓａｂｌｅ＿ｄｅｂｌｏｃｋｉｎｇ＿ｆｉｌｔｅｒ＿ｉｄｃ，ｓａｍｐｌｅ＿ａｄａｐｔｉｖｅ＿ｏｆｆｓｅｔ＿ｅｎａｂｌｅｄ＿ｆｌａｇ，ａｄａｐｔｉｖｅ＿ｌｏｏｐ＿ｆｉｌｔｅｒ＿ｅｎａｂｌｅｄ＿ｆｌａｇに従って、デブロックフィルタ処理やＳＡＯ処理および適応ループフィルタ処理を実行する。
【０１６７】
これにより、画像符号化部３０は、エラー伝搬の原因となるデブロックフィルタ処理やＳＡＯ処理および適応ループフィルタ処理を制限することができ、復号時におけるエラーの伝搬を防止できる。
【０１６８】
このように、画像符号化部３０は、復号時におけるエラーの伝搬を防止するよう、符号化を実行する。これにより、復号部８２は、復号時にエラーが生じた場合であっても、エラーの伝搬を防止することができるため、エラーから復帰するまでに要する時間を短縮することができる。また、垂直方向にリフレッシュ領域ＲＬを設けることで、遅延を少なくする。
【０１６９】
＜３．第３の実施の形態＞
上述の第１および第２の実施の形態では、予め設定された幅のリフレッシュ領域ＲＬをピクチャ毎に水平方向にずらして設定した。しかし、リフレッシュ領域ＲＬの幅は、画像に応じて適応的に設定するようにしてもよい。次に、第３の実施の形態として、リフレッシュ領域ＲＬの幅とずらし量を、変更可能とする場合について説明する。
【０１７０】
図１８の（Ａ）は、リフレッシュ領域ＲＬの幅を例えば２マクロブロック、ずらし量を例えば右方向に１マクロブロックとした場合を例示している。この場合、（ｎ＋１）フレームの動き予測可能ブロックの探索範囲は、（ｎ）フレームのイントラマクロブロックすなわち水平方向の２マクロブロックの範囲となる。
【０１７１】
図１８の（Ｂ）は、リフレッシュ領域ＲＬの幅を例えば右方向に１マクロブロック増やした場合を例示している。この場合、（ｎ＋１）フレームの動き予測可能ブロックの探索範囲は、（ｎ）フレームのイントラマクロブロックすなわち水平方向が３マクロブロックの範囲となる。すなわち、探索範囲を２マクロブロックの範囲から１マクロブロック右方向に広げて３マクロブロックの範囲とすることが可能となる。
【０１７２】
図１８の（Ｃ）は、リフレッシュ領域ＲＬの幅を例えば右方向に１マクロブロック増やして、さらにずらし量を１マクロブロック増やした場合を例示している。この場合、（ｎ＋１）フレームの動き予測可能ブロックの探索範囲は、（ｎ）フレームのイントラマクロブロックすなわち水平方向の３マクロブロックの範囲となる。また、探索範囲を図１８の（Ａ）に比べて左方向に増やすことができる。すなわち、探索範囲を２マクロブロックの範囲から１マクロブロック左方向に広げて３マクロブロックの範囲とすることが可能となる。
【０１７３】
従って、画像符号化部３０は、探索範囲が最適となるように画像に応じて適応的にリフレッシュ領域ＲＬの幅とずらし量を調整することで、符号化効率が高くなるようにする。
【０１７４】
［３−１．画像符号化部の構成］
図１９は、第３の実施の形態における画像処理装置の構成を例示している。なお、第１の実施の形態と対応する部分については、同一符号を付している。
【０１７５】
第３の実施の形態の画像符号化部３０は、動きベクトル算出部５５とリフレッシュ領域調整部５６をさらに有している。なお、請求項の領域設定部は、リフレッシュ領域調整部５６が含まれる。
【０１７６】
動きベクトル算出部５５は、符号化対象のピクチャの動きベクトルを算出する。例えば、動きベクトル算出部５５は、符号化対象ピクチャの画面全体の動きベクトルを算出する。画面全体の動きベクトルの算出では、縮小画像を用いることで動きベクトルの算出を容易とする。また、動きベクトル算出部５５は、符号化対象のピクチャの符号化処理前に行われた符号化処理において、動き予測・補償部５３で算出されている動きベクトルを利用してもよい。この場合、場面の切り替わり等が生じると、符号化済みのピクチャの動きベクトルと符号化対象ピクチャの動きベクトルの相違が大きくなる場合がある。従って、動きベクトル算出部５５は、シーンチェンジ等が検出されていない場合に符号化済みのピクチャの動きベクトルを利用してもよい。動きベクトル算出部５５は、算出した動きベクトルをリフレッシュ領域調整部５６に出力する。
【０１７７】
リフレッシュ領域調整部５６は、動きベクトル算出部５５で算出された動きベクトルに基づきリフレッシュ領域ＲＬの幅および水平方向のずらし量を調整する。リフレッシュ領域調整部５６は、調整後のリフレッシュ領域ＲＬの幅および水平方向のずらし量をイントラマクロブロック判定部３３に出力する。なお、リフレッシュ領域ＲＬの幅および水平方向のずらし量の調整については後述する。
【０１７８】
イントラマクロブロック判定部３３は、調整後のリフレッシュ領域ＲＬの幅および水平方向のずらし量に基づき、各ピクチャのマクロブロック毎に、強制イントラマクロブロックとするか、非強制マクロブロックとするかを決定する。イントラマクロブロック判定部３３は、決定結果を画像選択部５４に供給する。また、イントラマクロブロック判定部３３は、ピクチャヘッダ生成部３２から供給された画像データを演算部３４に出力する。
【０１７９】
［３−２．リフレッシュ領域の調整動作］
図２０は、リフレッシュ領域調整部５６で行われるリフレッシュ領域の調整処理ＲＴ１３を示すフローチャートである。ステップＳＰ４１でリフレッシュ領域調整部５６は、水平方向の動きベクトルを取得する。リフレッシュ領域調整部５６は、動きベクトル算出部５５で算出された動きベクトルから水平方向の動きベクトルを取得してステップＳＰ４２へ移る。
【０１８０】
ステップＳＰ４２でリフレッシュ領域調整部５６は、左側付加量を決定する。リフレッシュ領域調整部５６は、式（１）の演算を行い左側付加量LeftMBNumを算出してステップＳＰ４３へ移る。なお、式（１）において、「LeftMV」は、ステップＳＰ４１で取得した水平方向の動きベクトルにおいて、左方向のベクトル量を示している。また、「AddPix」はエラーの伝搬を生じさせないための設定値、「BLS」はブロックサイズである。
LeftMBNum＝ceil（（abs（LeftMV）＋AddPix）／BLS）    ・・・（１）
【０１８１】
ステップＳＰ４３でリフレッシュ領域調整部５６は、右側付加量を決定する。リフレッシュ領域調整部５６は、式（２）の演算を行い右側付加量RightMBNumを算出してステップＳＰ４４へ移る。なお、式（２）において、「RightMV」は、ステップＳＰ４１で取得した水平方向の動きベクトルにおいて、右方向のベクトル量を示している。また、「AddPix」はエラーの伝搬を生じさせないための設定値、「BLS」はブロックサイズである。
RightMBNum＝ceil（（abs（RightMV）＋AddPix）／BLS）    ・・・（２）
【０１８２】
ステップＳＰ４４でリフレッシュ領域調整部５６は、リフレッシュ領域ＲＬの幅とずらし量を決定する。リフレッシュ領域調整部５６は、式（３）の演算を行い、領域幅IntraMBLineを決定する。また、リフレッシュ領域調整部５６は、式（４）の演算を行い、ずらし量ShiftNumを決定する。
IntraMBLine＝LeftMBNum＋RightMBNum＋１    ・・・（３）
ShiftNum   ＝LeftMBNum＋１                ・・・（４）
【０１８３】
なお、動きベクトルLeftMV，RightMVは、画面全体の動きベクトルに限らず、画面内のブロック毎に算出された動きベクトルの最大値を用いるようにしてもよい。
【０１８４】
ブロックサイズ「BLS」は、例えばＨ．２６４／ＡＶＣの場合、マクロブロックの水平方向の画素数が１６画素であるとき「１６」とする。また、ＨＥＶＣの場合、ブロック「BLS」は例えばＣＵのサイズとする。
【０１８５】
図２１は、デブロックフィルタ処理とＳＡＯ処理と適応ループフィルタ処理および１／４画素精度で動きベクトルの検出を行う際のエラーの伝搬を示している。
【０１８６】
デブロックフィルタ部４４は、上述のように６タップでフィルタ処理を行う。従って、画素位置Ｐ1〜Ｐ3で未復帰領域ＵＲのエラーの影響を受ける。また、ＳＡＯ処理では上述のように３×３画素で判定処理が行われる。従って、画素位置Ｐ1で未復帰領域ＵＲのエラーの影響を受ける。適応ループフィルタ処理で例えば５タップのフィルタ処理を行う場合、画素位置Ｐ1，Ｐ2で未復帰領域ＵＲのエラーの影響を受ける。さらに、適応ループフィルタ処理で例えば９タップのフィルタ処理を行う場合、画素位置Ｐ1〜Ｐ4で未復帰領域ＵＲのエラーの影響を受ける。
【０１８７】
その後、フィルタ処理後の画素を用いて１／４画素精度で動きベクトルの検出を行う場合、８タップのＦＩＲフィルタを用いると、適応ループフィルタ処理で例えば９タップのフィルタ処理を行う場合、画素位置Ｐ4でエラーが伝搬する。また、画素位置Ｐ4でエラーが伝搬することから、画素位置Ｐ8よりも外側では、１／２画素精度および１／４画素精度の画素についてエラーが伝搬してしまう。従って、ＨＥＶＣを用いる場合、インループフィルタ処理において９タップの適応ループフィルタ処理を考慮して、「AddPix」を「８」として付加量を算出する。なお、図２１で示しているエラー伝搬画素は、リフレッシュ領域ＲＬ内のフィルタ処理後の画素を用いた場合のエラー伝搬画素である。
【０１８８】
また、Ｈ．２６４／ＡＶＣのように、デブロックフィルタ処理後の画素を用いて１／４画素精度で動きベクトルの検出を行う場合、６タップのＦＩＲフィルタを用いると、デブロックフィルタ処理によって画素位置Ｐ3でエラーが伝搬する。また、画素位置Ｐ3でエラーが伝搬することから、図示せずも画素位置Ｐ6よりも外側では、１／２画素精度および１／４画素精度の画素についてエラーが伝搬する。従って、Ｈ．２６４／ＡＶＣを用いる場合、デブロックフィルタ処理を考慮して、「AddPix」を「６」として付加量を算出する。
【０１８９】
［３−３．動作および効果］
図２２は、リフレッシュ領域の調整動作を例示した図である。例えばＨ．２４６／ＡＶＣを用いる場合であって（「AddPix＝６」，「BLS＝１６」）、左方向の動きベクトル量が「LeftMV＝１２」、右方向の動きベクトル量が「RightMV＝２８」とする。この場合、左側付加量は「LeftMBNum＝２」となり、右側付加量は「RightMBNum＝３」となる。従って、リフレッシュ領域ＲＬの幅は「IntraMBLine＝６」とする。また、ずらし量は「ShiftNum＝３」とする。このようにリフレッシュ領域ＲＬの幅とずらし量を設定して、ピクチャ毎に位置をずらしてリフレッシュ領域ＲＬを設定する。なお、リフレッシュ領域ＲＬの幅とずらし量は、ピクチャ単位で設定してもよくピクチャ内で幅とずらし量を画像に応じて変更できる構成としてもよい。
【０１９０】
このような処理を行うと、水平方向の動きベクトルに応じて探索範囲を設定することが可能となり、固定された幅およびずらし量でリフレッシュ領域を設定する場合に比べて符号化効率を高めることができるようになる。
【０１９１】
＜４．他の実施の形態＞
他の実施の形態としては、例えばリフレッシュ領域ＲＬの左側境界でスライス分割を行い、スライスの先頭をリフレッシュ領域ＲＬの開始としてもよい。この場合、画面内予測符号化する際、スライスを跨ぐ画素を参照しない場合、リフレッシュ領域ＲＬをスライスの先頭にすることにより、未復帰領域ＵＲを参照せずに画面内符号化を容易に実行できる。また、ピクチャをタイル単位で分割可能とされる場合、リフレッシュ領域ＲＬの開始をタイルの境界の位置とすることもできる。
【０１９２】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【０１９３】
例えば、プログラムは記録媒体としてのハードディスクやＲＯＭ（Read Only Memory）に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory），ＭＯ（Magneto optical）ディスク，ＤＶＤ（Digital Versatile Disc）、磁気ディスク、半導体メモリカード等のリムーバブル記録媒体に、一時的または永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
【０１９４】
また、プログラムは、リムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトからＬＡＮ（Local Area Network）やインターネット等のネットワークを介して、コンピュータに無線または有線で転送してもよい。コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１９５】
なお、本技術は、上述した技術の実施の形態に限定して解釈されるべきではない。この技術の実施の形態は、例示という形態で本技術を開示しており、本技術の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本技術の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【０１９６】
また、本技術の画像処理装置は以下のような構成も取ることができる。
（１）  複数のピクチャの画像データを符号化する際、イントラ符号化される強制イントラ領域を垂直方向に割り当てて、前記ピクチャにおける全ての符号化単位が、前記強制イントラ領域となるように前記強制イントラ領域の割り当て領域を水平方向に移動させる領域設定部と、
前記領域設定部によって設定された前記強制イントラ領域に対してはイントラ符号化を実行し、前記強制イントラ領域と異なる領域に対してはイントラ符号化またはインター符号化を実行する符号化処理部と
を有する画像処理装置。
（２）  前記ピクチャの動きベクトルを算出する動きベクトル算出部を有し、
前記領域設定部は、前記動きベクトル算出部で算出された動きベクトルに応じて前記強制イントラ領域の水平方向の幅または移動量を設定する（１）記載の画像処理装置。
（３）  前記領域設定部は、前記動きベクトル検出部で検出された動きベクトルの水平方向の最大動きベクトルに応じて前記強制イントラ領域の水平方向の幅または移動量を設定する（２）記載の画像処理装置。
（４）  前記符号化処理部で用いるローカルデコード画像のフィルタ処理を行うフィルタ部を有し、
前記イントラ領域設定部は、前記強制イントラ領域外の画素を用いてフィルタ演算が行われる前記強制イントラ領域内の画素領域の水平方向サイズを用いて、前記強制イントラ領域の水平方向の幅または移動量を設定する（１）乃至（３）の何れかに記載の画像処理装置。
（５）  前記符号化処理部で用いるローカルデコード画像のフィルタ処理を行うフィルタ部と、
デコードする際のエラーが伝搬しないように、フィルタ処理を制限する制御部とを更に有する（１）乃至（４）の何れかに記載の画像処理装置。
（６）  前記符号化処理部は、Ｈ．２６４／ＡＶＣ規格に従って符号化し、
前記フィルタ部は、Ｈ．２６４／ＡＶＣ規格で規定されたデブロックフィルタである（５）に記載の画像処理装置。
（７）  前記フィルタ部は、オフセット処理を行うフィルタ又は適応ループフィルタである（５）記載の画像処理装置。
【産業上の利用可能性】
【０１９７】
この技術の画像処理装置と画像処理方法では、複数のピクチャの画像データを符号化する際、イントラ符号化される強制イントラ領域が垂直方向に割り当てられて、ピクチャにおける全ての符号化単位が、強制イントラ領域となるように割り当て領域がピクチャ毎に水平方向に移動される。また、強制イントラ領域に対してはイントラ符号化が実行されて、強制イントラ領域と異なる領域に対してはイントラ符号化またはインター符号化が実行される。このため、ピクチャにおける全ての符号化単位分の強制イントラ領域の復号により、エラーのない復号画像を得ることができる。また、強制イントラ領域が垂直方向に割り当てられていることから、各ラインの符号量を均一とすることが可能となり、復号時の遅延を少なくできる。従って、例えば公に配信されるコンテンツを録画する機能を有する各種電子機器等に利用することができる。
【符号の説明】
【０１９８】
１０・・・無線画像データ伝送システム、２０・・・画像処理装置、２１・・・放送受信部、２２・・・チューナ部、３０・・・画像符号化部、３１・・・バッファ、３２・・・ピクチャヘッダ生成部、３３・・・イントラマクロブロック判定部、３４，４３・・・演算部、３５・・・直交変換部、３６・・・量子化部、３７・・・可逆符号化部、３８・・・蓄積バッファ、３９・・・レート制御部、４１・・・逆量子化部、４２・・・逆直交変換部、４４・・・デブロックフィルタ部、４５・・・ＳＡＯ部、４６・・・適応ループフィルタ部、４７・・・係数メモリ、４８・・・フレームメモリ、５１・・・セレクタ、５２・・・イントラ予測部、５３・・・動き予測・補償部、５４・・・画像選択部、５５・・・動きベクトル算出部、５６・・・リフレッシュ領域調整部、６１・・・無線通信部、８０・・・表示装置、８１・・・無線通信部、８２・・・復号部、８３・・・表示部
【図１】
2013165340.tif 000003
【図２】
2013165340.tif 000004
【図３】
2013165340.tif 000005
【図４】
2013165340.tif 000006
【図５】
2013165340.tif 000007
【図６】
2013165340.tif 000008
【図７】
2013165340.tif 000009
【図８】
2013165340.tif 000010
【図９】
2013165340.tif 000011
【図１０】
2013165340.tif 000012
【図１１】
2013165340.tif 000013
【図１２】
2013165340.tif 000014
【図１３】
2013165340.tif 000015
【図１４】
2013165340.tif 000016
【図１５】
2013165340.tif 000017
【図１６】
2013165340.tif 000018
【図１７】
2013165340.tif 000019
【図１８】
2013165340.tif 000020
【図１９】
2013165340.tif 000021
【図２０】
2013165340.tif 000022
【図２１】
2013165340.tif 000023
【図２２】
2013165340.tif 000024