(57)【特許請求の範囲】
【請求項１】
入力画像のブロックに対して復号時に使用される適応フィルタについての第１の動作モードおよび第２の動作モードを決定するモード決定部であって、前記入力画像の第１の信号に基づいて前記第１の動作モードを決定し、前記入力画像の第２の信号に基づいて前記第２の動作モードを決定する、前記モード決定部と、
前記第２の動作モードと前記第１の動作モードとの類似性が高いほど、ビット数が小さい符号を前記第２の動作モードに割り当てることで、前記第２の動作モードを符号化する符号化部と、
を有する画像符号化装置。
【請求項２】
前記符号化部は、前記第２の動作モードが前記第１の動作モードと同じ場合には、異なる場合より小さいビット数の符号を前記第２の動作モードに割り当てる、
請求項１記載の画像符号化装置。
【請求項３】
前記符号化部は、前記第２の動作モードが前記第１の動作モードとが同じか否かを示すフラグ情報をさらに符号化し、前記入力画像を符号化した符号化データに前記フラグ情報を含め、前記第２の動作モードが前記第１の動作モードと同じ場合には、前記第２の動作モードに対応する符号を生成して前記符号化データに含める処理をスキップする、
請求項１記載の画像符号化装置。
【請求項４】
前記符号化部は、前記第２の動作モードが前記第１の動作モードと異なる場合、前記ブロックの周囲に存在する符号化済みブロックについて決定された前記第２の動作モードに基づいて、前記ブロックについての前記第２の動作モードに割り当てる符号のビット数を決定する、
請求項１乃至３のいずれか１項に記載の画像符号化装置。
【請求項５】
前記符号化部は、前記第２の動作モードが前記第１の動作モードと異なる場合、前記ブロックの周囲に存在する符号化済みブロックの画素値に基づいて、前記第２の動作モードに割り当てる符号のビット数を決定する、
請求項１乃至３のいずれか１項に記載の画像符号化装置。
【請求項６】
前記符号化部による符号化は、前記第２の動作モードにインデックスを割り当てる第１の処理と、前記インデックスの値が小さいほど前記複数の符号のうちビット数が小さい符号を割り当てる第２の処理とを含み、
前記第１の処理では、前記第２の動作モードと前記第１の動作モードとの類似性が高いほど、前記インデックスとして小さい値を割り当てる、
請求項１乃至５のいずれか１項に記載の画像符号化装置。
【請求項７】
コンピュータが、
入力画像のブロックに対して復号時に使用される適応フィルタについての第１の動作モードおよび第２の動作モードを決定し、前記決定は、前記入力画像の第１の信号に基づいて前記第１の動作モードを決定する処理と、前記入力画像の第２の信号に基づいて前記第２の動作モードを決定する処理とを含み、
前記第２の動作モードと前記第１の動作モードとの類似性が高いほど、ビット数が小さい符号を前記第２の動作モードに割り当てることで、前記第２の動作モードを符号化する、
画像符号化方法。
【請求項８】
コンピュータに、
入力画像のブロックに対して復号時に使用される適応フィルタについての第１の動作モードおよび第２の動作モードを決定し、前記決定は、前記入力画像の第１の信号に基づいて前記第１の動作モードを決定する処理と、前記入力画像の第２の信号に基づいて前記第２の動作モードを決定する処理とを含み、
前記第２の動作モードと前記第１の動作モードとの類似性が高いほど、ビット数が小さい符号を前記第２の動作モードに割り当てることで、前記第２の動作モードを符号化する、
処理を実行させる画像符号化プログラム。
【請求項９】
入力された符号化動画像データから、適応フィルタについての第１の動作モードおよび第２の動作モードにそれぞれ対応する第１の符号および第２の符号を抽出し、前記第１の符号に基づいて前記第１の動作モードを判別し、前記第２の符号のビット数が小さいほど、前記第２の動作モードを、判別された前記第１の動作モードとの類似性が高い動作モードと判別する復号部と、
前記符号化動画像データから復号された復号画像におけるブロックの第１の信号に対して、前記適応フィルタを用いた処理を判別された前記第１の動作モードにしたがって実行し、前記ブロックの第２の信号に対して、前記適応フィルタを用いた処理を判別された前記第２の動作モードにしたがって実行するフィルタ処理部と、
を有する画像復号装置。
【請求項１０】
前記復号部は、前記第２の符号が、所定の複数パターンの符号のうち最小ビット数の符号と一致した場合、前記第２の動作モードを判別された前記第１の動作モードと同一の動作モードと判別する、
請求項９記載の画像復号装置。
【請求項１１】
前記復号部は、判別された前記第２の動作モードが判別された前記第１の動作モードと異なり、かつ、それらの組み合わせが特定の組み合わせである場合には、前記ブロックの周囲に存在する復号済みブロックについて判別された前記第２の動作モードに基づいて、前記ブロックについての前記第２の動作モードを判別し直す、
請求項９または１０記載の画像復号装置。
【請求項１２】
前記復号部は、判別された前記第２の動作モードが判別された前記第１の動作モードと異なり、かつ、それらの組み合わせが特定の組み合わせである場合には、前記ブロックの周囲に存在する復号済みブロックの画素値に基づいて、前記ブロックについての前記第２の動作モードを判別し直す、
請求項９または１０記載の画像復号装置。
【請求項１３】
コンピュータが、
入力された符号化動画像データから、適応フィルタについての第１の動作モードおよび第２の動作モードにそれぞれ対応する第１の符号および第２の符号を抽出し、
前記第１の符号に基づいて前記第１の動作モードを判別し、
前記第２の符号のビット数が小さいほど、前記第２の動作モードを、判別された前記第１の動作モードとの類似性が高い動作モードと判別し、
前記符号化動画像データから復号された復号画像におけるブロックの第１の信号に対して、前記適応フィルタを用いた処理を判別された前記第１の動作モードにしたがって実行し、
前記ブロックの第２の信号に対して、前記適応フィルタを用いた処理を判別された前記第２の動作モードにしたがって実行する、
画像復号方法。
【請求項１４】
コンピュータに、
入力された符号化動画像データから、適応フィルタについての第１の動作モードおよび第２の動作モードにそれぞれ対応する第１の符号および第２の符号を抽出し、
前記第１の符号に基づいて前記第１の動作モードを判別し、
前記第２の符号のビット数が小さいほど、前記第２の動作モードを、判別された前記第１の動作モードとの類似性が高い動作モードと判別し、
前記符号化動画像データから復号された復号画像におけるブロックの第１の信号に対して、前記適応フィルタを用いた処理を判別された前記第１の動作モードにしたがって実行し、
前記ブロックの第２の信号に対して、前記適応フィルタを用いた処理を判別された前記第２の動作モードにしたがって実行する、
処理を実行させる画像復号プログラム。
【請求項１５】
符号化動画像データを生成する画像符号化装置と、前記符号化動画像データを復号する画像復号装置とを有する画像伝送システムであって、
前記画像符号化装置は、
入力画像のブロックに対して復号時に使用される適応フィルタについての第１の動作モードおよび第２の動作モードを決定するモード決定部であって、前記入力画像の第１の信号に基づいて前記第１の動作モードを決定し、前記入力画像の第２の信号に基づいて前記第２の動作モードを決定する、前記モード決定部と、
前記第１の動作モードに第１の符号を割り当て、前記第２の動作モードと前記第１の動作モードとの類似性が高いほど、ビット数が小さい第２の符号を前記第２の動作モードに割り当て、前記第１の符号と前記第２の符号とを前記符号化動画像データに設定する符号化部と、
を有し、
前記画像復号装置は、
前記符号化動画像データから前記第１の符号と前記第２の符号を抽出し、前記第１の符号に基づいて前記第１の動作モードを判別し、前記第２の符号のビット数が小さいほど、前記第２の動作モードを、判別された前記第１の動作モードとの類似性が高い動作モードと判別する復号部と、
前記符号化動画像データから復号された前記ブロックの第１の信号に対して、前記適応フィルタを用いた処理を判別された前記第１の動作モードにしたがって実行し、前記符号化動画像データから復号された前記ブロックの第２の信号に対して、前記適応フィルタを用いた処理を判別された前記第２の動作モードにしたがって実行するフィルタ処理部と、
を有する、
画像伝送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、画像復号プログラムおよび画像伝送システムに関する。
【背景技術】
【０００２】
次世代の動画像符号化規格として、Ｈ．２６５／ＨＥＶＣ（High Efficiency Video Coding）規格（以下、「ＨＥＶＣ規格」と略称する）が注目されている。ＨＥＶＣ規格では、従来のＨ．２６４／ＭＰＥＧ−４  ＡＶＣ（Moving Picture Experts Group-phase 4 Advanced Video Coding）規格と比較して、約２倍の圧縮性能を有する。また、ＨＥＶＣ規格では、ＳＡＯ（Sample Adaptive Offset）と呼ばれる適応フィルタを用いて、復号画像の画質を改善できるようになっている。
【０００３】
この適応フィルタに関する技術としては、例えば、適応オフセット部からのｑｕａｄ−ｔｒｅｅ構造と、決定した輝度信号に対するオフセット値を参照して、分割された領域ごとに色差信号に対するオフセット値を算出する画像処理装置が提案されている。
【０００４】
また、ＨＥＶＣ規格での復号技術としては、例えば、色差信号のイントラ予測パラメータに応じて、色差信号に対する方向性予測、または輝度信号と色差信号との相関パラメータに基づいて色差信号の予測画像を生成する画像復号装置が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−１２８４５号公報
【特許文献２】国際公開第２０１４−１６３２００号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の適応フィルタについての設定項目は複数存在し、符号化処理の際には、各項目についての設定値が符号化されて符号化データに設定される。このように、動画像の符号化データには、多数の項目についての設定値を符号化した情報が設定される。このことが、符号化データのデータ量を増大させる要因となる。
【０００７】
１つの側面では、本発明は、符号化データのデータ量を削減可能な画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、画像復号プログラムおよび画像伝送システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
１つの案では、モード決定部と符号化部とを有する次のような画像符号化装置が提供される。この画像符号化装置において、モード決定部は、入力画像のブロックに対して復号時に使用される適応フィルタについての第１の動作モードおよび第２の動作モードを決定する。このモード決定部は、入力画像の第１の信号に基づいて第１の動作モードを決定し、入力画像の第２の信号に基づいて第２の動作モードを決定する。符号化部は、第２の動作モードと第１の動作モードとの類似性が高いほど、ビット数が小さい符号を第２の動作モードに割り当てることで、第２の動作モードを符号化する。
【０００９】
また、１つの案では、上記の画像符号化装置と同様の処理をコンピュータが実行する画像符号化方法が提供される。
さらに、１つの案では、上記の画像符号化装置と同様の処理をコンピュータに実行させる画像符号化プログラムが提供される。
【００１０】
また、１つの案では、復号部とフィルタ処理部とを有する次のような画像復号装置が提供される。この画像復号装置において、復号部は、入力された符号化動画像データから、適応フィルタについての第１の動作モードおよび第２の動作モードにそれぞれ対応する第１の符号および第２の符号を抽出し、第１の符号に基づいて第１の動作モードを判別し、第２の符号のビット数が小さいほど、第２の動作モードを、判別された第１の動作モードとの類似性が高い動作モードと判別する。フィルタ処理部は、符号化動画像データから復号された復号画像におけるブロックの第１の信号に対して、適応フィルタを用いた処理を判別された第１の動作モードにしたがって実行し、ブロックの第２の信号に対して、適応フィルタを用いた処理を判別された第２の動作モードにしたがって実行する。
【００１１】
また、１つの案では、上記の画像復号装置と同様の処理をコンピュータが実行する画像復号方法が提供される。
また、１つの案では、上記の画像復号装置と同様の処理をコンピュータに実行させる画像復号プログラムが提供される。
【００１２】
また、１つの案では、符号化動画像データを生成する画像符号化装置と、符号化動画像データを復号する画像復号装置とを有する、次のような画像伝送システムが提供される。この画像伝送システムにおいて、画像符号化装置は、モード決定部と符号化部とを有する。モード決定部は、入力画像のブロックに対して復号時に使用される適応フィルタについての第１の動作モードおよび第２の動作モードを決定する。このモード決定部は、入力画像の第１の信号に基づいて第１の動作モードを決定し、入力画像の第２の信号に基づいて第２の動作モードを決定する。符号化部は、第１の動作モードに第１の符号を割り当て、第２の動作モードと第１の動作モードとの類似性が高いほど、ビット数が小さい第２の符号を第２の動作モードに割り当て、第１の符号と第２の符号を符号化動画像データに設定する。また、画像復号装置は、復号部とフィルタ処理部とを有する。復号部は、符号化動画像データから第１の符号と第２の符号を抽出し、第１の符号に基づいて第１の動作モードを判別し、第２の符号のビット数が小さいほど、第２の動作モードを、判別された第１の動作モードとの類似性が高い動作モードと判別する。フィルタ処理部は、符号化動画像データから復号されたブロックの第１の信号に対して、適応フィルタを用いた処理を判別された第１の動作モードにしたがって実行し、符号化動画像データから復号されたブロックの第２の信号に対して、適応フィルタを用いた処理を判別された第２の動作モードにしたがって実行する。
【発明の効果】
【００１３】
１つの側面では、符号化データのデータ量を削減できる。
【図面の簡単な説明】
【００１４】
【図１】第１の実施の形態に係る画像符号化装置の構成例および処理例を示す図である。
【図２】第２の実施の形態に係る画像符号化装置の構成例を示す図である。
【図３】ＳＡＯについて説明するための図である。
【図４】輝度信号のフィルタモードにインデックスを割り当てるための割り当てテーブルを示す図である。
【図５】輝度信号と色差信号との相関について説明するための図である。
【図６】インデックスの割り当てテーブルの例を示す図である。
【図７】エントロピー符号化の際のビット記号の割り当てテーブルの例を示す図である。
【図８】フィルタモードの符号化処理手順の例を示すフローチャートである。
【図９】色差信号のフィルタモードに対するインデックス割り当て処理手順の例を示すフローチャートである。
【図１０】第２の実施の形態に係る画像復号装置の構成例を示す図である。
【図１１】画像復号装置におけるフィルタモードの復号およびＳＡＯ処理手順の例を示すフローチャートである。
【図１２】色差信号のフィルタモードの設定処理手順の例を示すフローチャートである。
【図１３】画像符号化装置がコンピュータとして実現される場合のハードウェア構成例を示す図である。
【図１４】変形例１の画像符号化装置における、色差信号のフィルタモードに対するインデックス割り当て処理手順の例を示すフローチャートである。
【図１５】色差信号用の割り当てテーブルの例を示す図である。
【図１６】変形例１の画像復号装置における、色差信号のフィルタモードの設定処理手順の例を示すフローチャートである。
【図１７】周囲のブロックの状況に基づくＥＯクラスの決定処理の例を示す図である。
【図１８】変形例２の画像符号化装置における、色差信号のフィルタモードに対するインデックス割り当て処理手順の例を示すフローチャートである。
【図１９】変形例２の画像復号装置における、色差信号のフィルタモードの設定処理手順の例を示すフローチャートである。
【図２０】第３の実施の形態に係る画像伝送システムの構成例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態について図面を参照して説明する。
〔第１の実施の形態〕
図１は、第１の実施の形態に係る画像符号化装置の構成例および処理例を示す図である。画像符号化装置１０は、入力画像を符号化して符号化データを生成する装置である。入力画像は、動画像である。以下、入力画像１が入力され、符号化データ２が出力されるものとして説明する。
【００１６】
画像符号化装置１０は、モード決定部１１と符号化部１２を有する。モード決定部１１と符号化部１２は、例えば、半導体回路として実現される。また、モード決定部１１と符号化部１２の処理の少なくとも一部は、プロセッサが所定のプログラムを実行することで実現されてもよい。
【００１７】
モード決定部１１は、入力画像１における符号化対象のブロック１ａに対して復号時に使用される適応フィルタについての第１の動作モードと第２の動作モードを決定する。モード決定部１１は、入力画像１の第１の信号に基づいて第１の動作モードを決定し（ステップＳ１ａ）、入力画像１の第２の信号に基づいて第２の動作モードを決定する（ステップＳ１ｂ）。なお、例えば、第１の信号は輝度信号であり、第２の信号は色差信号である。あるいは、第１の信号はＧ（Green）信号であり、第２の信号はＲ（Red）信号およびＢ（Blue）信号に基づく信号であってもよい。
【００１８】
符号化部１２は、第１の動作モードおよび第２の動作モードを示す情報を符号化データ２に組み込むために、第１の動作モードおよび第２の動作モードを符号化する（ステップＳ２ａ，Ｓ２ｂ）。符号化部１２は、第２の動作モードと第１の動作モードとの類似性が高いほど、ビット数が小さい符号を第２の動作モードに割り当てることで、第２の動作モードを符号化する。
【００１９】
第１の信号と第２の信号は同じ入力画像１の信号成分なので、第１の信号と第２の信号との間には相関がある。このため、第２の動作モードは第１の動作モードと類似する可能性が高い。例えば、第２の動作モードが第１の動作モードとは異なる可能性より、第２の動作モードが第１の動作モードと同じになる可能性が高い。したがって、上記の処理が入力画像１内の各ブロックについて実行されたとき、各ブロックに対応する第２の動作モードとして、小さいビット数の符号が割り当てられる可能性が高くなる。
【００２０】
例えば、第２の動作モードが第１の動作モードと同じ場合、第２の動作モードに１ビットの符号が割り当てられ、第２の動作モードが第１の動作モードと異なる場合、第２の動作モードに２ビットの符号が割り当てられるとする。この場合、上記のように第２の動作モードは第１の動作モードと同じになる可能性が高いことから、各ブロックに対応する第２の動作モードとして、２ビットの符号より１ビットの符号が割り当てられる可能性が高くなる。
【００２１】
これにより、符号化データ２には、第２の動作モードとして１ビットの符号が設定される確率が高くなる。その結果、符号化データ２のデータ量を削減できる。
なお、上記手順で生成された符号化データ２を受信した画像復号装置（図示せず）は、次のような復号処理を実行することができる。画像復号装置は、受信した符号化データ２から、ブロック１ａに対応する第１の動作モードおよび第２の動作モードをそれぞれ示す第１の符号および第２の符号を取得する。画像復号装置は、第１の符号に基づいて第１の動作モードを判別する。また、画像復号装置は、判別された第１の動作モードと、第２の符号とに基づいて、第２の動作モードを判別する。第２の動作モードの判別では、画像復号装置は、第２の符号のビット数が小さいほど、第２の動作モードを、判別された第１の動作モードとの類似性が高い動作モードと判別する。
【００２２】
画像復号装置は、このようにして判別された第１の動作モードおよび第２の動作モードを適用して、復号画像上のブロック１ａに対する適応フィルタの処理を実行する。これにより、例えば、入力画像１に対応する復号画像の画質を向上させることができる。
【００２３】
〔第２の実施の形態〕
次に、第２の実施の形態として、ＨＥＶＣ規格にしたがって動画像の符号化および復号をそれぞれ実行する画像符号化装置および画像復号装置について説明する。
【００２４】
図２は、第２の実施の形態に係る画像符号化装置の構成例を示す図である。画像符号化装置１００は、予測誤差信号生成部１０１、直交変換部１０２、量子化部１０３、逆量子化部１０４、逆直交変換部１０５、復号画像生成部１０６、デブロッキングフィルタ１０７、ＳＡＯ部１０８、復号画像記憶部１０９、動き探索部１１０、動き補償部１１１、予測画像生成部１１２およびエントロピー符号化部１１３を有する。
【００２５】
画像符号化装置１００に入力された動画像データの各ピクチャは、ブロックに分割される。予測誤差信号生成部１０１は、符号化対象ブロックを取得し、取得した符号化対象ブロックと、予測画像生成部１１２から出力される予測画像との差分を演算することにより、予測誤差信号を生成する。
【００２６】
直交変換部１０２は、予測誤差信号生成部１０１から出力された予測誤差信号を直交変換し、水平方向および垂直方向の周波数成分に分離された信号を出力する。量子化部１０３は、直交変換部１０２からの出力信号を量子化する。これにより、予測誤差信号の情報量が削減される。
【００２７】
逆量子化部１０４は、量子化部１０３から出力された量子化データを逆量子化する。逆直交変換部１０５は、逆量子化部１０４からの出力データを逆直交変換する。これにより、符号化前の予測誤差信号に対応する信号が得られる。復号画像生成部１０６は、予測画像生成部１１２から出力された予測画像のブロックデータと、逆直交変換部１０５からの出力信号とを加算する。これにより、符号化対象ブロックを再生した局所復号画像のブロックデータが生成される。
【００２８】
デブロッキングフィルタ１０７は、復号画像生成部１０６から出力された局所復号画像のブロックデータに対して、ブロック歪みを低減するためのフィルタ処理を施す。ＳＡＯ部１０８は、デブロッキングフィルタ１０７によって処理された局所復号画像のブロックデータに対して、所定の方法で画素値にオフセットを加算する処理を施す。
【００２９】
復号画像記憶部１０９は、ＳＡＯ部１０８によって処理された局所復号画像のブロックデータを、新たな参照ピクチャのブロックデータとして記憶する。動き探索部１１０は、ブロックマッチング技術を用いて、符号化対象ブロックと類似する領域を、復号画像記憶部１０９に記憶された参照ピクチャから判別し、判別した領域を示す動きベクトルを算出する。動き補償部１１１は、復号画像記憶部１０９から読み出した参照ピクチャを、動き探索部１１０によって算出された動きベクトルを用いて動き補償することで、インター予測の予測画像を生成する。予測画像生成部１１２は、イントラ予測またはインター予測の予測画像を出力する。イントラ予測の予測画像は、復号画像記憶部１０９に記憶された参照ピクチャにおける符号化済みの周辺ブロックのデータに基づいて生成される。インター予測の予測画像は、動き補償部１１１から取得される。
【００３０】
エントロピー符号化部１１３は、量子化部１０３から出力された量子化データをエントロピー符号化し、動画像ストリームとして出力する。このエントロピー符号化とは、シンボルの出現頻度に応じて可変長の符号を割り当てる符号化方式を指す。
【００３１】
また、画像符号化装置１００はさらに、ＳＡＯのフィルタモードについてのインデックスを算出するための機能として、インデックス生成部１２１、インデックス記憶部１２２およびインデックス生成部１２３を有する。
【００３２】
インデックス生成部１２１は、ＳＡＯ部１０８によって決定された輝度信号のフィルタモードの入力を受け、そのフィルタモードのインデックスを生成する。インデックス記憶部１２２は、インデックス生成部１２１によって生成された、輝度信号のフィルタモードのインデックスを一時的に記憶する。インデックス生成部１２３は、インデックス記憶部１２２に記憶された輝度信号のフィルタモードのインデックスと、ＳＡＯ部１０８によって決定された色差信号のフィルタモードとに基づいて、色差信号のフィルタモードのインデックスを生成する。エントロピー符号化部１１３は、エントロピー符号化対象のシンタックスの１つとして、インデックス生成部１２１，１２３からそれぞれフィルタモードのインデックスを取得し、取得したインデックスをエントロピー符号化する。
【００３３】
ところで、動画像符号化で用いられる画像フォーマットとして、輝度信号（Ｙ信号）と色差信号（Ｕ信号、Ｖ信号）とを分離したＹＵＶフォーマットが知られている。なお、色差信号としてＣｂ信号、Ｃｒ信号が用いられる場合もある。また、ＹＵＶフォーマットにしたがった画像信号のデータ量を削減する方式としては、色差信号の解像度を落とす方式が知られている。
【００３４】
具体的には、色差信号の解像度を落とさない（すなわち、輝度信号と色差信号の解像度が同じ）フォーマットは、「４：４：４」と呼ばれる。また、色差信号についての水平方向の解像度を１／２に間引いたフォーマットは、「４：２：２」と呼ばれる。さらに、色差信号についての水平方向および垂直方向の解像度をともに１／２に間引くことで、色差信号についての全体の解像度を１／４に落としたフォーマットは、「４：２：０」と呼ばれる。本実施の形態の画像符号化装置１００は、上記のいずれのフォーマットの画像信号についても符号化が可能である。
【００３５】
また、４：４：４フォーマットでは、ＹＵＶ信号の代わりにＲＧＢ信号が用いられる場合もある。この場合、ＨＥＶＣ規格書Ａｎｎｅｘ  Ｅに記載の通り、Ｇ信号、Ｂ信号、Ｒ信号をそれぞれＹ信号、Ｕ信号、Ｖ信号と見なして信号が伝送される。これによって、ＹＵＶ信号の場合と同様に画像符号化処理が実行可能となる。本実施の形態の画像符号化装置１００は、このような画像信号についても符号化が可能である。
【００３６】
次に、図３は、ＳＡＯについて説明するための図である。
ＳＡＯは、ＨＥＶＣ規格で新たに導入されたループフィルタ技術である。その目的は、動き補償フィルタに起因するリンギングの低減や、デコード画面に発生することがある画素値のずれの補正によって、画質を改善することである。ＳＡＯのフィルタ処理では、所定の方法にしたがって画素値にオフセットが加算される。また、ＳＡＯのパラメータ（フィルタモード）は、ＣＴＵ（Coding Tree Unit）ごとに設定される。
【００３７】
図３に示すように、ＳＡＯのフィルタ処理タイプ（ＳＡＯタイプ）には、エッジオフセット（ＥＯ）と、バンドオフセット（ＢＯ）と、フィルタ処理を行わないＮｏｎｅとがある。ＳＡＯタイプは、ＣＴＵ単位で輝度信号、色差信号に対して別々に指定可能である。輝度信号のＳＡＯタイプはｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａというシンタックス要素によって指定され、色差信号のＳＡＯタイプはｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａというシンタックス要素によって指定されて、符号化器から復号器へ伝送される。
【００３８】
エッジオフセットは、ある画素Ｃとそれに隣接する隣接画素Ｎ０，Ｎ１との関係に基づいて、画素値にオフセット値を加算する処理である。一方、バンドオフセットは、画素の階調を３２個のバンドに分割し、連続する４個のバンドに対して、バンドごとに設定したオフセット値を加算する処理である。
【００３９】
エッジオフセットについては、隣接画素Ｎ０，Ｎ１の位置に応じた４つのクラス（以下、「ＥＯクラス」と記載する）が選択される。図３に示すように、ＥＯクラスの違いは隣接画素の配列方向の違いを表しており、これはすなわちエッジの角度の違いを表す。ＥＯクラス０はエッジ角度０°を示し、ＥＯクラス１はエッジ角度９０°を示し、ＥＯクラス２はエッジ角度１３５°を示し、ＥＯクラス３はエッジ角度４５°を示す。
【００４０】
ＥＯクラスは、ＣＴＵ単位で輝度信号、色差信号に対して別々に指定可能である。輝度信号のＥＯクラスはｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａというシンタックス要素によって指定され、色差信号のＥＯクラスはｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａというシンタックス要素によって指定されて、符号化器から復号器へ伝送される。
【００４１】
さらに、選択されたＥＯクラスに対して、画素Ｃと隣接画素Ｎ０，Ｎ１との画素値の相対関係に応じて決まる４種類のカテゴリごとに、オフセットの絶対値が設定される。
ここで、ＥＯクラスの選択処理例について説明する。画素Ｃと隣接画素Ｎ０，Ｎ１との関係に基づいて、次の４つのカテゴリが規定される。
【００４２】
カテゴリ１：Ｃ＜Ｎ０かつＣ＜Ｎ１
カテゴリ２：Ｃ＜Ｎ０かつＣ＝Ｎ１、またはＣ＝Ｎ０かつＣ＜Ｎ１
カテゴリ３：Ｃ＞Ｎ０かつＣ＝Ｎ１、またはＣ＝Ｎ０かつＣ＞Ｎ１
カテゴリ４：Ｃ＞Ｎ０かつＣ＞Ｎ１
ＳＡＯは、これらのカテゴリの中で最大の誤差を最小化するためのオフセットを加算するものである。これにより、符号化誤差を小さくすることがＳＡＯの目的である。そこで、画像符号化装置１００は、ＥＯクラスごとに各カテゴリの誤差の累積を求める。入力画像（原画像）の画素をＯ（ｘ，ｙ）、デブロッキングフィルタ１０７から出力された復号画像の画素をＲ（ｘ，ｙ）と表すと、ＥＯクラス０（エッジの角度０°）の場合、誤差ＥはＯ（ｘ，ｙ）−Ｒ（ｘ，ｙ）によって算出される。画素Ｃをカテゴリに分類したとき、カテゴリｎについての誤差累積値Ｅ（ｎ）はΣ｛Ｏ（ｘ，ｙ）−Ｒ（ｘ，ｙ）｝と表される。また、ＥＯクラス０についてのカテゴリｎごとの誤差累積値Ｅ（ｎ）のうちの最大誤差絶対値｜Ｅ（ｎ）｜を、Ｅ（クラス０）と表す。同様の手順により、ＥＯクラス１〜３のそれぞれについて最大誤差絶対値Ｅ（クラス１），Ｅ（クラス２），Ｅ（クラス３）が算出される。画像符号化装置１００は、算出された最大誤差絶対値が最大となるＥＯクラスを、復号時に適用するＥＯクラスに決定する。
【００４３】
一方、バンドオフセットについても最大誤差絶対値を求めることが可能である。画像符号化装置１００は最終的に、エッジオフセットとバンドオフセットとで最大誤差絶対値が最大となるように、ＳＡＯに関する設定値を決定する。これにより、少なくともＳＡＯタイプおよびＥＯクラスを決定できる。
【００４４】
なお、本実施の形態では、ＳＡＯに関するシンタックス要素のうち、上記のｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａ、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａ、ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａ、ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａを「フィルタモード」と呼ぶ場合がある。
【００４５】
図４は、輝度信号のフィルタモードにインデックスを割り当てるための割り当てテーブルを示す図である。図４に示す割り当てテーブル１３１ａ，１３１ｂは、例えば、画像符号化装置１００が備える記憶部１３０にあらかじめ格納されて、インデックス生成部１２１から参照される。なお、記憶部１３０は、例えば、フラッシュメモリやＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）などの不揮発性記録媒体の記憶領域として実装される。
【００４６】
ＳＡＯ部１０８によって輝度信号のＳＡＯタイプが決定されると、インデックス生成部１２１は、割り当てテーブル１３１ａに基づいて、ＳＡＯタイプを示すフィルタモード（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａ）にインデックス（シンタックス要素値）を割り当てる。また、ＳＡＯ部１０８によって、輝度信号のＳＡＯタイプがバンドオフセット（ＢＯ）に決定され、さらにＥＯタイプが決定されると、インデックス生成部１２１は、割り当てテーブル１３１ｂに基づいて、ＥＯタイプを示すフィルタモード（ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａ）にインデックスを割り当てる。なお、インデックスの数値が小さいほど、エントロピー符号化の際に割り当てられるビット数が小さくなる。
【００４７】
ここで、従来は、色差信号のフィルタモードについても、図４と同様の対応関係に基づいてインデックスが割り当てられていた。これに対して、本実施の形態では、インデックス生成部１２３は、輝度信号と色差信号との相関に基づき、色差信号のフィルタモードの設定値のうち、色差信号について決定される可能性の高い設定値に対して小さいインデックスを割り当てる。これにより、エントロピー符号化の際にフィルタモードに対して小さいビット数の符号が割り当てられる可能性が高くなり、その結果、ビデオストリームのデータ容量を削減できる。
【００４８】
図５は、輝度信号と色差信号との相関について説明するための図である。図５では例として、人物１６１が写った画像を、Ｙ信号に基づく画像Ｐｙと、Ｕ信号に基づく画像Ｐｕと、Ｖ信号に基づく画像Ｐｖとに分解して示している。
【００４９】
Ｙ，Ｕ，Ｖの各信号間では、画素値そのものには相関はないが、エッジの有無やエッジの方向には相関がある。例えば、輝度信号に基づく画像にエッジがあるということは、そのエッジ部分で色味も変化している可能性が高い。図５の例では、Ｙ信号に基づく画像Ｐｙにおける人物１６１と背景との間のエッジの領域については、Ｕ信号、Ｖ信号にそれぞれ基づく画像Ｐｕ，Ｐｖでもエッジである可能性が高い。
【００５０】
また、色差信号の間引き率が小さいほど、エッジの精細さが維持されるため、輝度信号との間の相関がより高くなる。したがって、４：４：４フォーマット、４：２：２フォーマット、４：２：０フォーマットの順で、輝度信号と色差信号との間の相関が高いと言える。
【００５１】
このように、Ｙ，Ｕ，Ｖの各信号間では、エッジの有無やエッジの方向に相関がある。このため、色差信号のフィルタモードの設定値は、輝度信号のフィルタモードの設定値と同じになる可能性が高い。そこで、インデックス生成部１２３は、色差信号のフィルタモードについてＳＡＯ部１０８で決定された設定値が、輝度信号のフィルタモードの設定値と類似するほど、色差信号のフィルタモードの設定値に対して小さいインデックスを割り当てる。具体的には、インデックス生成部１２３は、次の図６に示す変換テーブルに基づいてインデックスを割り当てる。
【００５２】
図６は、インデックスの割り当てテーブルの例を示す図である。図６に示す割り当てテーブル１３２ａ〜１３２ｃは、例えば、前述の記憶部１３０にあらかじめ格納されて、インデックス生成部１２３から参照される。
【００５３】
割り当てテーブル１３２ａは、色差信号のＳＡＯタイプを示すフィルタモード（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａ）にインデックスを割り当てるために利用される。割り当てテーブル１３２ａにおいては、輝度信号について決定されたＳＡＯタイプのインデックスと、色差信号について決定されたＳＡＯタイプとの組み合わせごとに、インデックスが対応付けられている。したがって、インデックス生成部１２３は、ＳＡＯ部１０８によって色差信号のＳＡＯタイプが決定されると、色差信号のＳＡＯタイプをＳＡＯ部１０８から取得するとともに、同じブロックについての輝度信号のＳＡＯタイプのインデックスをインデックス記憶部１２２から取得する。そして、インデックス生成部１２３は、取得したこれらの情報と割り当てテーブル１３２ａとに基づいて、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａにインデックスを割り当てる。
【００５４】
上記のように、輝度信号と色差信号との間では、エッジの有無や方向に相関がある。このため、割り当てテーブル１３２ａによれば、色差信号のＳＡＯタイプが輝度信号のＳＡＯタイプと同じ場合に、色差信号のＳＡＯタイプに対して最も小さい値のインデックスが割り当てられる。
【００５５】
また、輝度信号と色差信号とで異なるタイプのフィルタ処理が選択される（すなわち、一方のＳＡＯタイプがエッジオフセットで他方のＳＡＯタイプがバンドオフセットとなる）可能性は低い。なぜなら、同じ領域について、輝度信号と色差信号のうち一方にはエッジが存在し、他方はフラットになる可能性は低いからである。このため、割り当てテーブル１３２ａによれば、輝度信号と色差信号のうち、一方のＳＡＯタイプがエッジオフセットで他方のＳＡＯタイプがバンドオフセットの場合に、色差信号のＳＡＯタイプに対して最も大きい値のインデックスが割り当てられる。
【００５６】
また、Ｎｏｎｅは、例えば、エッジがある、あるいはフラットであるといった特性がブロックから検出されなかった場合に選択される。Ｎｏｎｅとエッジオフセットまたはバンドオフセットとの類似性は、特性が異なるエッジオフセットとバンドオフセットとの類似性より高いと考えられる。このため、割り当てテーブル１３２ａによれば、輝度信号と色差信号のうち、一方のＳＡＯタイプがＮｏｎｅで他方のＳＡＯタイプがエッジオフセットまたはバンドオフセットの場合に、色差信号のＳＡＯタイプに対して中間的な値のインデックスが割り当てられる。
【００５７】
一方、割り当てテーブル１３２ｂ，１３２ｃは、色差信号のＥＯクラスを示すフィルタモード（ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａ）にインデックスを割り当てるために利用される。まず、輝度信号と色差信号の両方ともＳＡＯタイプとしてエッジオフセットが選択された場合、割り当てテーブル１３２ｂを用いてｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａにインデックスが割り当てられる。
【００５８】
割り当てテーブル１３２ｂにおいては、輝度信号について決定されたＥＯクラスのインデックスと、色差信号について決定されたＥＯクラスとの組み合わせごとに、インデックスが対応付けられている。したがって、インデックス生成部１２３は、ＳＡＯ部１０８によって色差信号のＥＯクラスが決定されると、色差信号のＥＯクラスをＳＡＯ部１０８から取得するとともに、同じブロックについての輝度信号のＥＯクラスのインデックスをインデックス記憶部１２２から取得する。そして、インデックス生成部１２３は、取得したこれらの情報と割り当てテーブル１３２ｂとに基づいて、ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａにインデックスを割り当てる。
【００５９】
ある領域について、輝度信号にエッジが存在する場合には、色差信号にも同じ角度のエッジが存在する可能性が高い。そこで、割り当てテーブル１３２ｂによれば、色差信号のＥＯクラスが輝度信号のＥＯクラスと同じ場合（すなわち、エッジの角度が同じ場合）に、色差信号のＥＯクラスに対して最も小さい値のインデックスが割り当てられる。
【００６０】
逆に、色差信号と輝度信号との間でエッジの角度の差が大きい（すなわち、１８０°に近い）ＥＯクラスが選択される可能性は低い。エッジの角度の差が大きいほど、ＥＯクラス間の類似度は低いと言える。そこで、割り当てテーブル１３２ｂによれば、輝度信号と色差信号との間でのＥＯクラスの組み合わせが、エッジの角度の差が大きい組み合わせであるほど、色差信号のＥＯクラスに対して大きい値のインデックスが割り当てられる。例えば、輝度信号と色差信号との間でのＥＯクラスの組み合わせが、クラス０とクラス１、またはクラス２とクラス３である場合に、色差信号のＥＯクラスに対して最も大きい値のインデックスが割り当てられる。
【００６１】
以上の割り当てテーブル１３２ａ，１３２ｃを用いることで、色差信号のフィルタモードの設定値として出現する確率が高いほど、小さい値のインデックスが割り当てられるようになる。
【００６２】
一方、色差信号のＳＡＯタイプとしてエッジオフセットが選択され、輝度信号のＳＡＯタイプとしてそれ以外のタイプが選択された場合には、割り当てテーブル１３２ｃを用いてｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａにインデックスが割り当てられる。割り当てテーブル１３２ｃにおいては、輝度信号についての割り当てテーブル１３１ｂ（図４参照）と同様に、色差信号についてＳＡＯ部１０８で決定されたＳＡＯタイプに対してインデックスが対応付けられている。したがって、インデックス生成部１２３は、色差信号のＳＡＯタイプとしてエッジオフセットが選択され、輝度信号のＳＡＯタイプとしてそれ以外のタイプが選択された場合、色差信号についてＳＡＯ部１０８で決定されたＳＡＯタイプだけに基づいて、割り当てテーブル１３２ｃにしたがってｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａにインデックスを割り当てる。
【００６３】
図７は、エントロピー符号化の際のビット記号の割り当てテーブルの例を示す図である。図７に示す割り当てテーブル１３３は、例えば、前述の記憶部１３０にあらかじめ格納されて、エントロピー符号化部１１３から参照される。
【００６４】
エントロピー符号化部１１３は、インデックス生成部１２１によって輝度信号のフィルタモード（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａ、ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａ）に割り当てられたインデックスに対して、割り当てテーブル１３３に基づいてビット記号（符号）を割り当てる。また、エントロピー符号化部１１３は、インデックス生成部１２３によって色差信号のフィルタモードに割り当てられたインデックス（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａ、ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａ）に対して、割り当てテーブル１３３に基づいてビット記号（符号）を割り当てる。
【００６５】
図７に示すように、割り当てテーブル１３３によれば、小さい値のインデックスほどビット数が小さいビット記号が割り当てられる。図５，図６で説明したように、色差信号のフィルタモードについては、輝度信号との相関に基づき、出現確率が高い設定値ほど小さい値のインデックスが割り当てられている。このため、色差信号のフィルタモードの設定値に対しては、出現確率が高いほど、エントロピー符号化の際にビット数が小さいビット記号が割り当てられる。その結果、符号化データのサイズを削減できる。
【００６６】
なお、図７では、シンタックス要素の設定値として取り得るパターン数に応じて、インデックスに割り当てるビット記号の例を複数示している。ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａおよびｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａは３パターンの設定値を取り得るので、例１に基づいてビット記号が割り当てられる。また、ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａおよびｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａは４パターンの設定値を取り得るので、例２に基づいてビット記号が割り当てられる。
【００６７】
ここで、４：４：４フォーマットでＲ，Ｇ，Ｂの各信号が用いられる場合について補足説明する。前述のように、４：４：４フォーマットでは、Ｇ信号、Ｂ信号、Ｒ信号をそれぞれＹ信号、Ｕ信号、Ｖ信号と見なして信号が伝送される場合がある。Ｒ，Ｇ，Ｂの各信号は、例えば次の式（１−１）〜（１−３）にしたがって、Ｙ，Ｕ，Ｖの各信号から変換される。なお、これらの式（１−１）〜（１−３）は、ＩＴＵ−Ｒ（International Telecommunication Union−Radiocommunications sector）  ＢＴ．７０９で規定されている。
Ｒ＝１．０００＊Ｙ＋０．０００＊Ｕ＋１．４０２＊Ｖ      ・・・（１−１）
Ｇ＝１．０００＊Ｙ−０．３４４＊Ｕ−０．７１４＊Ｖ      ・・・（１−２）
Ｂ＝１．０００＊Ｙ＋１．７７２＊Ｕ＋０．０００＊Ｖ      ・・・（１−３）
式（１−１）〜（１−３）に示すように、Ｒ，Ｇ，Ｂの各信号はいずれも輝度信号と色差信号とから計算される。しかも、４：４：４フォーマットでは、水平方向と垂直方向のいずれの方向にも間引きが行われないので、信号成分の間の相関が高い。このため、４：４：４フォーマットでＲ，Ｇ，Ｂの各信号を用いた場合でも、これらの信号の間ではエッジの有無やエッジの方向に高い相関があると言える。したがって、このような場合でも、図６の割り当てテーブル１３２ａ，１３２ｂを用いてＢ信号およびＲ信号に基づくフィルタモードにインデックスが割り当てられることで、符号化データのサイズを削減できる。
【００６８】
以下の説明では、Ｙ，Ｕ，Ｖの各信号を用いた場合の処理について記載するが、４：４：４フォーマットでＲ，Ｇ，Ｂの各信号を用いた場合でも、同様の手順で符号化処理および復号処理を実行可能であり、符号化データのサイズ削減という同様の効果が得られる。
【００６９】
次に、画像符号化装置１００におけるフィルタモードの符号化処理手順について、フローチャートを用いて説明する。
図８は、フィルタモードの符号化処理手順の例を示すフローチャートである。
【００７０】
［ステップＳ１１］デブロッキングフィルタ１０７から出力された復号画像の各ブロックについて、ステップＳ１１〜Ｓ２２のブロックループの処理が実行される。
［ステップＳ１２］符号化対象として選択されたブロックについて、ステップＳ１２〜Ｓ２１の信号ループの処理が実行される。
【００７１】
［ステップＳ１３］ＳＡＯ部１０８は、輝度信号を処理するか、色差信号を処理するかを判定する。輝度信号を処理する場合、ステップＳ１４の処理が実行され、色差信号を処理する場合、ステップＳ１７の処理が実行される。なお、ＳＡＯ部１０８は、同じブロックについて、先に輝度信号を処理し、その後に色差信号を処理する。
【００７２】
［ステップＳ１４］ＳＡＯ部１０８は、復号画像のブロックおよびその周囲のブロックの輝度信号に基づいて、輝度信号のフィルタモードを決定する。具体的には、ＳＡＯ部１０８は、輝度信号のＳＡＯタイプを決定する。また、ＳＡＯタイプがエッジオフセットに決定された場合、ＳＡＯ部１０８は、輝度信号のＥＯタイプを決定する。
【００７３】
［ステップＳ１５］インデックス生成部１２１は、輝度信号用の割り当てテーブル１３１ａに基づいて、輝度信号のＳＡＯタイプを示すｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａにインデックスを割り当てる。また、ＳＡＯタイプがエッジオフセットの場合、インデックス生成部１２１は、輝度信号用の割り当てテーブル１３１ｂに基づいて、輝度信号のＥＯクラスを示すｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａにインデックスを割り当てる。
【００７４】
［ステップＳ１６］インデックス生成部１２１は、ステップＳ１５で割り当てたインデックスをインデックス記憶部１２２に格納する。
［ステップＳ１７］ＳＡＯ部１０８は、ブロックおよびその周囲のブロックの色差信号に基づいて、色差信号のフィルタモードを決定する。具体的には、ＳＡＯ部１０８は、色差信号のＳＡＯタイプを決定する。また、ＳＡＯタイプがエッジオフセットに決定された場合、ＳＡＯ部１０８は、色差信号のＥＯクラスを決定する。
【００７５】
［ステップＳ１８］インデックス生成部１２３は、インデックス記憶部１２２から、ステップＳ１６で格納された同じブロックについてのフィルタモードのインデックスを読み出す。
【００７６】
［ステップＳ１９］インデックス生成部１２３は、色差信号のフィルタモードにインデックスを割り当てる。処理の詳細は、後の図９において説明する。
［ステップＳ２０］エントロピー符号化部１１３は、ステップＳ１５またはステップＳ１９で割り当てられたインデックスをインデックス生成部１２１またはインデックス生成部１２３から取得する。エントロピー符号化部１１３は、割り当てテーブル１３３に基づいて、取得したインデックスに符号を割り当て、エントロピー符号化する。
【００７７】
［ステップＳ２１］輝度信号と色差信号の両方について処理が完了すると、信号ループの処理が終了する。
［ステップＳ２２］復号画像の各ブロックについて処理が完了すると、ブロックループの処理が終了する。
【００７８】
図９は、色差信号のフィルタモードに対するインデックス割り当て処理手順の例を示すフローチャートである。この図９の処理は、図８のステップＳ１９の処理に対応する。
［ステップＳ１９１］インデックス生成部１２３は、ステップＳ１８で取得した輝度信号のＳＡＯタイプ（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａ）のインデックスと、ステップＳ１７で決定された色差信号のＳＡＯタイプとに基づいて、色差信号用の割り当てテーブル１３２ａにしたがって色差信号のＳＡＯタイプを示すｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａにインデックスを割り当てる。
【００７９】
ここで、インデックス生成部１２３は、ステップＳ１７で決定された色差信号のＳＡＯタイプがエッジオフセットである場合には、ステップＳ１９２以降の処理を実行する。一方、色差信号のＳＡＯタイプがエッジオフセットでない場合には、ステップＳ１９２〜Ｓ１９４の処理はスキップされる。
【００８０】
［ステップＳ１９２］インデックス生成部１２３は、輝度信号のＳＡＯタイプがエッジオフセットかを判定する。エッジオフセットの場合、ステップＳ１９３の処理が実行され、エッジオフセットでない場合、ステップＳ１９４の処理が実行される。
【００８１】
［ステップＳ１９３］インデックス生成部１２３は、ステップＳ１８で取得した輝度信号のＥＯクラス（ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａ）のインデックスと、ステップＳ１７で決定された色差信号のＥＯクラスとに基づいて、色差信号用の割り当てテーブル１３２ｂにしたがって色差信号のＥＯクラスを示すｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａにインデックスを割り当てる。
【００８２】
［ステップＳ１９４］インデックス生成部１２３は、ステップＳ１７で決定された色差信号のＥＯクラスだけに基づいて、色差信号用の割り当てテーブル１３２ｃにしたがって色差信号のＥＯクラスを示すｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａにインデックスを割り当てる。
【００８３】
次に、上記の画像符号化装置１００によって符号化された動画像ストリームを復号する画像復号装置について説明する。
図１０は、第２の実施の形態に係る画像復号装置の構成例を示す図である。画像復号装置２００は、エントロピー復号部２０１、逆量子化部２０２、逆直交変換部２０３、復号画像生成部２０４、デブロッキングフィルタ２０５、ＳＡＯ部２０６、復号画像記憶部２０７、動き補償部２０８および予測画像生成部２０９を有する。さらに、画像復号装置２００は、ＳＡＯ部２０６にフィルタモードを設定するための機能として、フィルタモード設定部２１１、フィルタモード記憶部２１２およびフィルタモード設定部２１３を有する。
【００８４】
エントロピー復号部２０１は、入力された動画像ストリームをエントロピー復号し、量子化データを出力する。逆量子化部２０２は、エントロピー復号部２０１から出力された量子化データを逆量子化する。逆直交変換部２０３は、逆量子化部２０２からの出力データを逆直交変換する。これにより、符号化前の予測誤差信号に対応する信号が得られる。復号画像生成部２０４は、予測画像生成部２０９から出力された予測画像のブロックデータと、逆直交変換部２０３からの出力信号とを加算する。これにより、符号化対象ブロックを再生した復号画像のブロックデータが生成される。
【００８５】
デブロッキングフィルタ２０５は、復号画像生成部２０４から出力された復号画像のブロックデータに対して、ブロック歪みを低減するためのフィルタ処理を施す。ＳＡＯ部２０６は、フィルタモード設定部２１１，２１３から設定されたフィルタモードにしたがって、デブロッキングフィルタ２０５によって処理された復号画像のブロックデータに対して、画素値にオフセットを加算する処理を施す。ＳＡＯ部２０６によって処理された復号画像は、最終的な出力画像として出力される。
【００８６】
復号画像記憶部２０７は、ＳＡＯ部２０６によって処理された復号画像のブロックデータを、参照ピクチャのブロックデータとして記憶する。動き補償部２０８は、復号画像記憶部２０７から読み出した参照ピクチャを、復号された動きベクトルを用いて動き補償することで、インター予測の予測画像を生成する。予測画像生成部２０９は、イントラ予測またはインター予測の予測画像を出力する。イントラ予測の予測画像は、復号画像記憶部２０７に記憶された参照ピクチャにおける符号化済みの周辺ブロックのデータに基づいて生成される。インター予測の予測画像は、動き補償部２０８から取得される。
【００８７】
フィルタモード設定部２１１は、エントロピー復号部２０１によってエントロピー復号された、輝度信号のフィルタモードのインデックスを取得する。フィルタモード設定部２１１は、図２のインデックス生成部１２１と逆の手順により、取得したインデックスに基づいて輝度信号のフィルタモードを判別する。フィルタモード設定部２１１は、判別したフィルタモードをＳＡＯ部２０６に設定するとともに、フィルタモード記憶部２１２に格納する。フィルタモード記憶部２１２は、フィルタモード設定部２１１によって判別されたフィルタモードを一時的に記憶する。
【００８８】
フィルタモード設定部２１３は、エントロピー復号部２０１によってエントロピー復号された、色差信号のフィルタモードのインデックスを取得する。フィルタモード設定部２１３は、図２のインデックス生成部１２３とは逆の手順により、フィルタモード記憶部２１２に記憶された輝度信号のフィルタモードと、エントロピー復号部２０１から取得した色差信号のフィルタモードのインデックスとに基づいて、色差信号のフィルタモードを判別する。フィルタモード設定部２１３は、判別した色差信号のフィルタモードをＳＡＯ部２０６に設定する。
【００８９】
図１１は、画像復号装置におけるフィルタモードの復号およびＳＡＯ処理手順の例を示すフローチャートである。
［ステップＳ３１］入力された動画像ストリームにおける１ピクチャの各ブロックについて、ステップＳ３１〜Ｓ４２のブロックループの処理が実行される。
【００９０】
［ステップＳ３２］符号化対象として選択されたブロックについて、ステップＳ３２〜Ｓ４２の信号ループの処理が実行される。
［ステップＳ３３］エントロピー復号部２０１は、輝度信号を処理するか、色差信号を処理するかを判定する。輝度信号を処理する場合、ステップＳ３４の処理が実行され、色差信号を処理する場合、ステップＳ３７の処理が実行される。なお、エントロピー復号部２０１は、同じブロックについて、先に輝度信号を処理し、その後に色差信号を処理する。
【００９１】
［ステップＳ３４］エントロピー復号部２０１は、輝度信号のフィルタモードを示すインデックスを復号する。具体的には、エントロピー復号部２０１は、動画像ストリームから、輝度信号のＳＡＯタイプを示すｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａの符号を抽出する。エントロピー復号部２０１は、割り当てテーブルに基づいて、抽出した符号をｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａのインデックスに変換する。また、ＳＡＯタイプがエッジオフセットである場合、エントロピー復号部２０１は、動画像ストリームから、輝度信号のＥＯクラスを示すｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａの符号を抽出する。エントロピー復号部２０１は、割り当てテーブルに基づいて、抽出した符号をｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａのインデックスに変換する。
【００９２】
なお、これらの割り当てテーブルは、図７の割り当てテーブル１３３と同等の対応関係を示す情報を保持し、画像復号装置２００の記憶部にあらかじめ記憶される。
フィルタモード設定部２１１は、復号された各インデックスをエントロピー復号部２０１から取得する。
【００９３】
［ステップＳ３５］フィルタモード設定部２１１は、ステップＳ３４で取得したフィルタモード（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａ、ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａ）のインデックスをフィルタモード記憶部２１２に格納する。
【００９４】
［ステップＳ３６］フィルタモード設定部２１１は、ステップＳ３４で取得したインデックスに基づいて、輝度信号のフィルタモードを判別する。具体的には、フィルタモード設定部２１１は、取得したｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａのインデックスに基づいて、輝度信号用の割り当てテーブルにしたがって輝度信号のＳＡＯタイプを判別する。この割り当てテーブルは、図４の割り当てテーブル１３１ａと同等の対応関係を示す情報を保持し、画像復号装置２００の記憶部にあらかじめ記憶される。また、ＳＡＯタイプがエッジオフセットの場合、フィルタモード設定部２１１は、取得したｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａに基づいて、輝度信号用の割り当てテーブルにしたがって輝度信号のＥＯクラスを判別する。この割り当てテーブルは、図４の割り当てテーブル１３１ｂと同等の対応関係を示す情報を保持し、画像復号装置２００の記憶部にあらかじめ記憶される。
【００９５】
フィルタモード設定部２１１は、判別した輝度信号のフィルタモード（ＳＡＯタイプおよびＥＯクラス）をＳＡＯ部２０６に設定する。
［ステップＳ３７］エントロピー復号部２０１は、色差信号のフィルタモードを示すインデックスを復号する。具体的には、エントロピー復号部２０１は、動画像ストリームから、色差信号のＳＡＯタイプを示すｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａの符号を抽出する。エントロピー復号部２０１は、割り当てテーブルに基づいて、抽出した符号をｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａのインデックスに変換する。また、ＳＡＯタイプがエッジオフセットである場合、エントロピー復号部２０１は、動画像ストリームから、色差信号のＥＯクラスを示すｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａの符号を抽出する。エントロピー復号部２０１は、割り当てテーブルに基づいて、抽出した符号をｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａのインデックスに変換する。
【００９６】
なお、これらの割り当てテーブルは、図７の割り当てテーブル１３３と同等の対応関係を示す情報を保持し、画像復号装置２００の記憶部にあらかじめ記憶される。
フィルタモード設定部２１３は、復号された各インデックスをエントロピー復号部２０１から取得する。
【００９７】
［ステップＳ３８］フィルタモード設定部２１３は、フィルタモード記憶部２１２から、ステップＳ３５で格納されたフィルタモード（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａ、ｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａ）のインデックスを読み出す。
【００９８】
［ステップＳ３９］フィルタモード設定部２１３は、色差信号のフィルタモードを判別してＳＡＯ部２０６に設定する。処理の詳細は、後の図１２において説明する。
［ステップＳ４０］ＳＡＯ部２０６は、ステップＳ３６またはステップＳ３９で設定されたフィルタモードにしたがって、ブロックについての輝度信号または色差信号に対してＳＡＯのフィルタ処理を施す。ステップＳ３６でフィルタモードが設定された場合、輝度信号に対するフィルタ処理が実行され、ステップＳ３９でフィルタモードが設定された場合、色差信号に対するフィルタ処理が実行される。
【００９９】
［ステップＳ４１］輝度信号と色差信号の両方について処理が完了すると、信号ループの処理が終了する。
［ステップＳ４２］１ピクチャ上の各ブロックについて処理が完了すると、ブロックループの処理が終了する。
【０１００】
図１２は、色差信号のフィルタモードの設定処理手順の例を示すフローチャートである。この図１２の処理は、図１１のステップＳ３９の処理に対応する。
［ステップＳ３９１］フィルタモード設定部２１３は、ステップＳ３７で取得したｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａのインデックスと、ステップＳ３８で読み出したｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａのインデックスとに基づき、割り当てテーブルにしたがって色差信号のＳＡＯタイプを判別する。この割り当てテーブルは、図６の割り当てテーブル１３２ａと同等の対応関係を示す情報を保持し、画像復号装置２００の記憶部にあらかじめ記憶される。
【０１０１】
ここで、フィルタモード設定部２１３は、色差信号のＳＡＯタイプがエッジオフセットと判別された場合には、ステップＳ３９２以降の処理を実行する。色差信号のＳＡＯタイプがエッジオフセットでない場合、ステップＳ３９２〜Ｓ３９４の処理はスキップされる。
【０１０２】
［ステップＳ３９２］フィルタモード設定部２１３は、輝度信号のＳＡＯタイプがエッジオフセットかを判定する。エッジオフセットの場合、ステップＳ３９３の処理が実行され、エッジオフセットでない場合、ステップＳ３９４の処理が実行される。
【０１０３】
［ステップＳ３９３］フィルタモード設定部２１３は、ステップＳ３７で取得したｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａのインデックスと、ステップＳ３８で読み出したｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａのインデックスとに基づき、割り当てテーブルにしたがって色差信号のＥＯクラスを判別する。この割り当てテーブルは、図６の割り当てテーブル１３２ｂと同等の対応関係を示す情報を保持し、画像復号装置２００の記憶部にあらかじめ記憶される。
【０１０４】
［ステップＳ３９４］フィルタモード設定部２１３は、ステップＳ３８で読み出したｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｌｕｍａのインデックスだけに基づき、割り当てテーブルにしたがって色差信号のＥＯクラスを判別する。この割り当てテーブルは、図６の割り当てテーブル１３２ｃと同等の対応関係を示す情報を保持し、画像復号装置２００の記憶部にあらかじめ記憶される。
【０１０５】
［ステップＳ３９５］フィルタモード設定部２１３は、判別された色差信号のフィルタモード（ＳＡＯタイプおよびＥＯクラス）をＳＡＯ部２０６に設定する。
以上の図１１、図１２の処理により、画像復号装置２００は、画像符号化装置１００によって生成された動画像ストリームを正常に復号することができる。
【０１０６】
なお、以上の第１の実施の形態では、ＳＡＯタイプとＥＯタイプとが個別のシンタックス要素として設定されていた。しかし、例えば、ＳＡＯタイプとＥＯタイプとを単一のシンタックス要素として設定することもできる。例えば、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａとｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａとを、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａに一元化し、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａによってＳＡＯタイプとＥＯタイプの両方を復号器側に伝送する。
【０１０７】
この場合、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａに対するインデックスの割り当ては、例えば、次のように行われる。輝度信号のＳＡＯタイプと色差信号のＳＡＯタイプとが同じで、かつ、輝度信号のＥＯクラスと色差信号のＥＯクラスとが同じ場合、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａには最も小さいインデックス「０」が割り当てられる。輝度信号のＳＡＯタイプと色差信号のＳＡＯタイプとが異なり、かつ、輝度信号のＥＯクラスと色差信号のＥＯクラスとが異なる場合、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａには比較的大きいインデックスが割り当てられる。そして、例えば、輝度信号のＳＡＯタイプと色差信号のＳＡＯタイプとが同じだが、輝度信号のＥＯクラスと色差信号のＥＯクラスとが異なる場合、または、輝度信号のＳＡＯタイプと色差信号のＳＡＯタイプとは異なるが、輝度信号のＥＯクラスと色差信号のＥＯクラスとは同じ場合には、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａには中間的なインデックスの値が割り当てられる。
【０１０８】
このような割り当て方法により、入力画像全体で見ると、ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａに対応する符号としてビット数の小さい符号が動画像ストリームに組み込まれる可能性が高くなる。その結果、動画像ストリームのデータ量を削減できる。
【０１０９】
ところで、上記の画像符号化装置１００および画像復号装置２００は、例えば、ＳｏＣ（System-on-a-Chip）などの半導体装置として実現される。その場合、図２および図１０に示す各処理ブロックは、それぞれ半導体回路などの電気回路として実現される。また、画像符号化装置１００および画像復号装置２００の少なくとも一方は、次の図１３に示すようなコンピュータとして実現されてもよい。
【０１１０】
図１３は、画像符号化装置がコンピュータとして実現される場合のハードウェア構成例を示す図である。
図１３に示す画像符号化装置１００は、プロセッサ１５１によって装置全体が制御されている。プロセッサ１５１は、マルチプロセッサであってもよい。プロセッサ１５１は、例えばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ１５１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【０１１１】
プロセッサ１５１には、バス１５８を介して、ＲＡＭ（Random Access Memory）１５２と複数の周辺機器が接続されている。
ＲＡＭ１５２は、画像符号化装置１００の主記憶装置として使用される。ＲＡＭ１５２には、プロセッサ１５１に実行させるＯＳ（Operating System）プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１５２には、プロセッサ１５１による処理に必要な各種データが格納される。
【０１１２】
バス１５８に接続されている周辺機器としては、ＨＤＤ（Hard Disk Drive）１５３、グラフィック処理装置１５４、入力インタフェース１５５、読み取り装置１５６および通信インタフェース１５７がある。
【０１１３】
ＨＤＤ１５３は、画像符号化装置１００の補助記憶装置として使用される。ＨＤＤ１５３には、ＯＳプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、ＳＳＤ（Solid State Drive）などの他の種類の不揮発性記憶装置を使用することもできる。
【０１１４】
グラフィック処理装置１５４には、表示装置１５４ａが接続されている。グラフィック処理装置１５４は、プロセッサ１５１からの命令にしたがって、画像を表示装置１５４ａに表示させる。表示装置１５４ａとしては、液晶ディスプレイや有機ＥＬ（Electroluminescence）ディスプレイなどがある。
【０１１５】
入力インタフェース１５５には、入力装置１５５ａが接続されている。入力インタフェース１５５は、入力装置１５５ａから出力される信号をプロセッサ１５１に送信する。入力装置１５５ａとしては、キーボードやポインティングデバイスなどがある。ポインティングデバイスとしては、マウス、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【０１１６】
読み取り装置１５６には、可搬型記録媒体１５６ａが脱着される。読み取り装置１５６は、可搬型記録媒体１５６ａに記録されたデータを読み取ってプロセッサ１５１に送信する。可搬型記録媒体１５６ａとしては、光ディスク、光磁気ディスク、半導体メモリなどがある。
【０１１７】
通信インタフェース１５７は、ネットワーク１５７ａを介して他の装置との間でデータの送受信を行う。
以上のようなハードウェア構成によって、画像符号化装置１００の処理機能を実現することができる。また、画像復号装置２００の処理機能についても、図１３に示すハードウェア構成によって実現することができる。
【０１１８】
次に、上記の第２の実施の形態における処理の一部を変更した変形例について説明する。以下の各変形例における画像符号化装置および画像復号装置の基本的な処理機能の構成は、それぞれ図２、図１０と同様である。このため、以下の変形例については、図２、図１０に記載した符号を用いて説明する。
【０１１９】
〔変形例１〕
変形例１では、色差信号のフィルタモードが輝度信号のフィルタモードと同じであるか否かを示すダイレクトフラグが、新たなシンタックス要素として導入される。ダイレクトフラグは、１ビットの符号として符号化され、動画像ストリームに組み込まれる。
【０１２０】
ダイレクトフラグが、輝度信号のフィルタモードと同じであることを示す場合、色差信号のフィルタモードを示す情報は動画像ストリームに組み込まれない。一方、ダイレクトフラグが、輝度信号のフィルタモードと異なることを示す場合にのみ、色差信号のフィルタモードのインデックスが作成され、そのインデックスに基づいてフィルタモードを示す情報が動画像ストリームに組み込まれる。輝度信号と色差信号との相関から、色差信号のフィルタモードは輝度信号のフィルタモードと同じになる確率が高い。このため、入力画像全体で見ると、色差信号のフィルタモードを示す情報は動画像ストリームに組み込まれない可能性が高い。また、色差信号のフィルタモードが取り得る設定値の中には、輝度信号のフィルタモードを示す設定値を含める必要がない。このため、色差信号のフィルタモードに割り当てる符号のビット数を、第２の実施の形態の場合より１ケタ小さくすることができる。これらの理由から、動画像ストリームのデータ量をさらに削減できる。
【０１２１】
以下、例として、色差信号のＳＡＯタイプが輝度信号のＳＡＯタイプと同じか否かを示すダイレクトフラグが導入された場合の処理について説明する。ダイレクトフラグの値は、色差信号のＳＡＯタイプが輝度信号のＳＡＯタイプと同じ場合に「１」とされ、これらが異なる場合に「０」とされるものとする。
【０１２２】
図１４は、変形例１の画像符号化装置における、色差信号のフィルタモードに対するインデックス割り当て処理手順の例を示すフローチャートである。変形例１では、図９に示した処理の一部が図１４に示すように変形される。具体的には、ステップＳ１９１の代わりにステップＳ１９１ａ〜Ｓ１９１ｄが実行される。
【０１２３】
［ステップＳ１９１ａ］インデックス生成部１２３は、図８のステップＳ１７で決定された色差信号のＳＡＯタイプが、ステップＳ１４で決定された輝度信号のＳＡＯタイプと同じかを判定する。これらが同じ場合、ステップＳ１９１ｂの処理が実行され、これらが異なる場合、ステップＳ１９１ｃの処理が実行される。
【０１２４】
［ステップＳ１９１ｂ］インデックス生成部１２３は、ダイレクトフラグに「１」を設定する。また、このケースでは、色差信号のＳＡＯタイプを示すインデックスは生成されない。
【０１２５】
［ステップＳ１９１ｃ］インデックス生成部１２３は、ダイレクトフラグに「０」を設定する。
［ステップＳ１９１ｄ］インデックス生成部１２３は、図８のステップＳ１８で取得した輝度信号のＳＡＯタイプ（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａ）のインデックスと、ステップＳ１７で決定された色差信号のＳＡＯタイプとに基づいて、色差信号用の割り当てテーブルにしたがって色差信号のＳＡＯタイプを示すｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａにインデックスを割り当てる。この割り当てテーブルとしては、後の図１５に示す割り当てテーブルが利用される。
【０１２６】
この後、インデックス生成部１２３は、ステップＳ１７で決定された色差信号のＳＡＯタイプがエッジオフセットである場合には、ステップＳ１９２以降の処理を実行する。一方、色差信号のＳＡＯタイプがエッジオフセットでない場合には、ステップＳ１９２〜Ｓ１９４の処理はスキップされる。
【０１２７】
また、この後のステップＳ２０では、エントロピー符号化部１１３は、フィルタタイプのインデックスに加えて、ダイレクトモードも符号化する。
図１５は、色差信号用の割り当てテーブルの例を示す図である。画像符号化装置１００の記憶部１３０には、図６に示した割り当てテーブル１３２ａの代わりに、図１５に示す割り当てテーブル１３２ａ１が記録される。図１４のステップＳ１９１ｄでは、インデックス生成部１２３は、この割り当てテーブル１３２ａ１に基づいて、色差信号のＳＡＯタイプとして割り当てるインデックスを算出する。図１４に示すように、色差信号のＳＡＯタイプに割り当てられるインデックスは、２パターンの値しか取らない。このため、符号化の際にインデックスに割り当てる符号のビット数を、第２の実施の形態の場合より減らすことができる。
【０１２８】
図１６は、変形例１の画像復号装置における、色差信号のフィルタモードの設定処理手順の例を示すフローチャートである。変形例１では、図１１のステップＳ３７において、画像復号装置２００のエントロピー復号部２０１は、色差信号のフィルタモードを示すインデックスとともに、ダイレクトフラグを復号する。このとき、ダイレクトフラグの値によっては、色差信号のＳＡＯタイプに対応する符号が動画像ストリームに存在せず、この符号に基づくＳＡＯタイプのインデックスが復号されない場合がある。
【０１２９】
さらに、変形例１では、図１２に示した処理の一部が図１６に示すように変形される。具体的には、ステップＳ３９１の代わりにステップＳ３９１ａ〜Ｓ３９１ｃが実行される。
【０１３０】
［ステップＳ３９１ａ］フィルタモード設定部２１３は、エントロピー復号部２０１からダイレクトフラグを取得し、ダイレクトフラグが「１」であるかを判定する。ダイレクトフラグが「１」である場合、ステップＳ３９１ｂの処理が実行され、「０」である場合、ステップＳ３９１ｃの処理が実行される。
【０１３１】
［ステップＳ３９１ｂ］フィルタモード設定部２１３は、図１１のステップＳ３６で判別された輝度信号のＳＡＯタイプを、色差信号のＳＡＯタイプと判定する。
［ステップＳ３９１ｃ］フィルタモード設定部２１３は、ステップＳ３７で取得したｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａのインデックスと、ステップＳ３８で読み出したｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａのインデックスとに基づき、割り当てテーブルにしたがって色差信号のＳＡＯタイプを判別する。この割り当てテーブルは、図１５の割り当てテーブル１３２ａ１と同等の対応関係を示す情報を保持し、画像復号装置２００の記憶部にあらかじめ記憶される。
【０１３２】
この後、フィルタモード設定部２１３は、色差信号のＳＡＯタイプがエッジオフセットと判別された場合には、ステップＳ３９２以降の処理を実行する。色差信号のＳＡＯタイプがエッジオフセットでない場合、ステップＳ３９２〜Ｓ３９４の処理はスキップされる。
【０１３３】
〔変形例２〕
変形例２では、符号化処理の際に、あるブロックのＥＯクラスをその周囲のブロックのＥＯクラスに基づいて決定できるように第２の実施の形態が変形される。
【０１３４】
例えば、輝度信号のＥＯクラスが「１」（エッジ角度９０°）であった場合、色差信号のＥＯクラスも「１」である可能性が高い。このため、図６の割り当てテーブル１３２ｂでは、ＥＯクラスがこのような組み合わせの場合、色差信号のＥＯクラスに最も小さいインデックスが割り当てられる。一方、色差信号のＥＯクラスが、エッジ角度の差が最も大きい「０」（エッジ角度０°）である確率は低い。このため、図６の割り当てテーブル１３２ｂでは、ＥＯクラスがこのような組み合わせの場合、色差信号のＥＯクラスに最も大きいインデックスが割り当てられる。
【０１３５】
しかし、色差信号のＥＯクラスが「２」（エッジ角度１３５°）になる可能性と「３」（エッジ角度４５°）になる可能性のどちらが高いかは、不明である。これらの可能性は、ブロックの絵柄に依存する。そこで、変形例２では、輝度信号と色差信号との間でＥＯクラスがこのような組み合わせとなった場合には、符号化対象のブロックの周囲に存在する他のブロックの状況に基づいて、符号化対象のブロックのＥＯクラスに割り当てるインデックスを決定する。
【０１３６】
図１７は、周囲のブロックの状況に基づくＥＯクラスの決定処理の例を示す図である。ここでは画像符号化装置１００での処理について説明する。なお、図１７において、「Ｌｕｍａ  １」は、ブロックの輝度信号のＥＯクラス（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｌｕｍａ）が「１」であることを示す。また、「Ｃｈｒｏｍａ  １」は、ブロックの色差信号のＥＯクラス（ｓａｏ＿ｔｙｐｅ＿ｉｄｘ＿ｃｈｒｏｍａ）が「１」であることを示す。
【０１３７】
図１７において、ブロックＢ０は、現在符号化対象のブロックである。ブロックＢ０の左上、上、右上、左にそれぞれ隣接するブロックＢ１〜Ｂ４は、ブロックＢ０が符号化対象であるとき、すでに符号化が完了しているブロックである。したがって、画像符号化装置１００は、ブロックＢ０の符号化処理時に、周囲のブロックＢ１〜Ｂ４についての復号画像データも、これらのブロックＢ１〜Ｂ４について決定された色差信号のＥＯクラスも取得できる。
【０１３８】
変形例２では、画像符号化装置１００はまず、図６の割り当てテーブル１３２ｂに基づいて色差信号のＥＯクラスに対してインデックスを仮設定する。このとき、インデックスとして「１」または「２」が仮設定された場合に、画像符号化装置１００は、次の第１の処理例〜第３の処理例のいずれかによって、インデックスを再設定する。なお、図１７では、符号化対象のブロックＢ０についての輝度信号のＥＯクラスが「１」であるので、色差信号のＥＯクラスが「２」または「３」である場合に、次のような処理が実行される。
【０１３９】
ここでは例として、第１〜第３の処理例を記載する。まず、第１、第２の処理例は、符号化対象のブロックの周囲に存在する他のブロックにおけるＥＯクラスの決定状況に基づいて、符号化対象のブロックのＥＯクラスに割り当てるインデックスを決定するものである。第１、第２の処理例では、基本的に、決定されたＥＯクラスがブロックＢ０と類似する周辺ブロックが存在する場合に、ブロックＢ０について決定されたＥＯクラスに対して小さいインデックス（例えば、「１」と「２」のうちの「１」）が割り当てられる。
【０１４０】
なお、周囲ブロックについて決定済みのＥＯクラスは、符号化の際には符号化済みのブロックから参照でき、復号の際にも復号済みのブロックから参照できる。このため、画像符号化装置１００と画像復号装置２００との間でＥＯクラスのミスマッチが発生することはない。
【０１４１】
まず、第１の処理例では、輝度信号のＥＯクラスが示すエッジ角度と色差信号のＥＯクラスが示すエッジ角度とのズレがブロックＢ０と類似する周辺ブロックが存在する場合に、ブロックＢ０について決定されたＥＯクラスに対して小さいインデックスが割り当てられる。具体的には、画像符号化装置１００は、周囲のブロックＢ１〜Ｂ４の中に、ＥＯクラスの組み合わせが符号化対象のブロックＢ０と同じブロックがある場合に、色差信号のＥＯクラスに対してインデックス「１」を割り当てる。図１７において、例えば、ブロックＢ０についての輝度信号のＥＯクラスが「１」であり、色差信号のＥＯクラスが「２」であるとする。この場合、ＥＯクラスの組み合わせがブロックＢ０と同じブロックＢ１が存在するため、ブロックＢ０についての色差信号のＥＯクラスに対してインデックス「１」が割り当てられる。
【０１４２】
次に、第２の処理例では、画像符号化装置１００は、周囲のブロックＢ１〜Ｂ４の中から、色差信号のＥＯクラスが「２」であるブロックの数と「３」であるブロックの数を、それぞれ計数する。そして、画像符号化装置１００は、計数値が多かったＥＯクラスに対して小さいインデックス（ここでは「１」と「２」のうちの「１」）を割り当てる。図１７の例では、周囲のブロックＢ１〜Ｂ４のうち、色差信号のＥＯクラスが「２」であるブロックの数は「１」であり、「３」であるブロックの数は「０」である。このため、画像符号化装置１００は、ブロックＢ０についての色差信号のＥＯクラスが「２」であれば、インデックス「１」を割り当て、ＥＯクラスが「３」であれば、インデックス「２」を割り当てる。
【０１４３】
なお、以上の第２の処理例では、色差信号のＥＯクラスのみを比較対象としているが、輝度信号のＥＯクラスと色差信号のＥＯクラスとの組み合わせが比較対象とされてもよい。具体的には、画像符号化装置１００は、周囲のブロックＢ１〜Ｂ４の中から、輝度信号のＥＯクラスが「１」であり、かつ色差信号のＥＯクラスが「２」であるブロックの数と、輝度信号のＥＯクラスが「１」であり、かつ色差信号のＥＯクラスが「３」であるブロックの数とを、それぞれ計数してもよい。
【０１４４】
一方、第３の処理例は、少なくとも符号化済みの周辺ブロックの画素値に基づいて、符号化対象のブロックのＥＯクラスに割り当てるインデックスを決定するものである。より具体的には、画像符号化装置１００は、少なくとも符号化済みの周辺ブロックの色差信号に基づいて、ブロックＢ０の周辺に存在するエッジの角度（エッジが伸びている方向の角度）を推定する。画像符号化装置１００は、推定されたエッジの角度が、ブロックＢ０について決定されたＥＯクラスが示すエッジ角度と一致する場合に、そのＥＯクラスに対してインデックス「１」を割り当てる。
【０１４５】
エッジの推定対象とする画素としては、例えば、周辺画素のうちブロックＢ０に隣接する画素が選択される。これにより、ブロックＢ０にも存在するエッジを検出できる可能性が高くなる。エッジ角度は、例えば、Ｓｏｂｅｌフィルタを用いた次のような方法によって算出される。
【０１４６】
エッジの推定対象とする入力画素Ｐ、垂直エッジ抽出フィルタのフィルタ係数Ｙ、水平エッジ抽出フィルタのフィルタ係数Ｘは、例えば、それぞれ次の式（２−１），（２−２），（２−３）によって表される。
【０１４７】
【数１】
0006634936.tif 000002
【０１４８】
水平方向についてのＳｏｂｅｌフィルタによる処理結果ｄｙ、垂直方向についてのＳｏｂｅｌフィルタによる処理結果ｄｘは、それぞれ次の式（３−１），（３−２）のようになる。
ｄｙ＝Ｐ＊Ｙ＝−ａ−２ｄ−ｇ＋ｃ＋２ｆ＋ｉ      ・・・（３−１）
ｄｘ＝Ｐ＊Ｘ＝−ａ−２ｄ−ｃ＋ｇ＋２ｈ＋ｉ      ・・・（３−２）
これらの処理結果ｄｙ，ｄｘから、次の式（４−１），（４−２）のようにエッジベクトルの強度Ａｍｐとエッジ角度Ａｎｇが求められる。
【０１４９】
【数２】
0006634936.tif 000003
【０１５０】
次の式（５−１），（５−２）を満たすことで、エッジベクトルが特定の範囲（Ａｎｇl，Ａｎｇn）内の角度を指すことがわかる。
【０１５１】
【数３】
0006634936.tif 000004
【０１５２】
以上の第１〜第３の処理例によれば、ブロックＢ０の色差信号のＥＯクラスが「２」または「３」の場合に、より可能性の高いＥＯクラスの設定値に対してインデックス「１」が割り当てられるようになる。これにより、符号化によって出力される符号のビット数を削減でき、その結果、動画像ストリームのデータ量を削減できる。
【０１５３】
図１８は、変形例２の画像符号化装置における、色差信号のフィルタモードに対するインデックス割り当て処理手順の例を示すフローチャートである。変形例２では、図９に示した処理の一部が図１８に示すように変形される。具体的には、ステップＳ１９３の代わりにステップＳ１９３ａ〜Ｓ１９３ｃが実行される。
【０１５４】
［ステップＳ１９３ａ］ステップＳ１９３と同様の手順で、色差信号のＥＯクラスを示すｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａにインデックスが割り当てられ、このインデックス割り当てが仮設定される。
【０１５５】
［ステップＳ１９３ｂ］インデックス生成部１２３は、仮設定されたインデックスが「１」または「２」であるか否かを判定する。インデックスが「１」または「２」である場合、ステップＳ１９３ｃの処理が実行される。一方、インデックスが「０」または「３」の場合には、ステップＳ１９３ｃの処理がスキップされ、ステップＳ１９３ａでのインデックスの設定がそのまま適用される。
【０１５６】
［ステップＳ１９３ｃ］インデックス生成部１２３は、図１７に示した第１〜第３の処理例のいずれかの手順にしたがって、符号化対象のブロックの周囲に存在する符号化済みブロックの状況に基づいて、色差信号のＥＯクラスを示すｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａにインデックス「１」または「２」を再度割り当てる。
【０１５７】
図１９は、変形例２の画像復号装置における、色差信号のフィルタモードの設定処理手順の例を示すフローチャートである。変形例２では、図１２に示した処理に対してステップＳ３９６ａ〜Ｓ３９６ｅが追加される。
【０１５８】
まず、図１２のステップＳ３９２で色差信号のＳＡＯタイプがエッジオフセットと判別された場合には、ステップＳ３９６ａが実行される。
［ステップＳ３９６ａ］フィルタモード設定部２１３は、図１１のステップＳ３７で取得したｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａのインデックスが「１」または「２」であるか否かを判定する。インデックスが「１」または「２」である場合、ステップＳ３９６ｂの処理が実行され、インデックスが「０」または「３」の場合、ステップＳ３９３の処理が実行される。
【０１５９】
［ステップＳ３９６ｂ］フィルタモード設定部２１３は、ステップＳ３９３と同様の手順で、色差信号のＥＯクラスを仮判定する。
［ステップＳ３９６ｃ］フィルタモード設定部２１３は、復号対象のブロックの周辺に存在する復号済みブロックの状況に基づいて、ステップＳ３９６ｂで仮判定されたＥＯクラスが正しいかを判定する。この処理では、フィルタモード設定部２１３は、図１７の第１〜第３の処理例のいずれかの手順で、仮判定されたＥＯクラスに割り当てるべきインデックスを判別する。フィルタモード設定部２１３は、判別されたインデックスが、図１１のステップＳ３７で取得したｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａのインデックスと一致した場合に、仮判定されたＥＯクラスが正しいと判定する。
【０１６０】
［ステップＳ３９６ｄ］フィルタモード設定部２１３は、ステップＳ３９６ｃにおいて、仮判定されたＥＯクラスが正しいと判定された場合には、このＥＯクラスを正式に判別されたＥＯクラスと見なして、ステップＳ３９５の処理を実行する。一方、フィルタモード設定部２１３は、ステップＳ３９６ｃにおいて、仮判定されたＥＯクラスが正しくないと判定された場合には、ステップＳ３９６ｅの処理を実行する。
【０１６１】
［ステップＳ３９６ｅ］フィルタモード設定部２１３は、仮判定されたＥＯクラスを変更する。この処理では、図１１のステップＳ３７で取得したｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａのインデックスが「１」である場合、インデックスが「２」としてステップＳ３９６ｂを実行することで判定されるＥＯクラスに変更される。また、図１１のステップＳ３７で取得したｓａｏ＿ｅｏ＿ｃｌａｓｓ＿ｃｈｒｏｍａのインデックスが「２」である場合、インデックスが「１」としてステップＳ３９６ｂを実行することで判定されるＥＯクラスに変更される。
【０１６２】
〔第３の実施の形態〕
上記の第２の実施の形態に係る画像符号化装置１００および画像復号装置２００、またはその変形例１，２は、例えば、次の図２０に示すような画像伝送システムに組み込んで実現することができる。
【０１６３】
図２０は、第３の実施の形態に係る画像伝送システムの構成例を示す図である。画像伝送システムは、動画像ストリームを生成して送信する画像送信システム４１０と、動画像ストリームを受信して復号する画像受信システム４２０とを含む。
【０１６４】
画像送信システム４１０は、例えば、画像入力装置４１１、画像符号化装置４１２および送信装置４１３を含む。
画像入力装置４１１は、動画像のベースバンドデータを画像符号化装置４１２に供給する。画像入力装置４１１は、例えば、画像を撮像して出力するカメラであってもよいし、あらかじめ記録媒体に格納された画像データや、電波や有線を介して受信した画像データを画像符号化装置４１２に出力する装置であってもよい。
【０１６５】
画像符号化装置４１２は、画像入力装置４１１から供給された動画像のベースバンドデータを圧縮符号化し、動画像ストリームを生成する。第２の実施の形態に係る画像符号化装置１００またはその変形例１，２の機能は、画像符号化装置４１２に実装される。
【０１６６】
送信装置４１３は、画像符号化装置４１２から受信した動画像ストリームを画像受信システム４２０に送信する。送信装置４１３は、例えば、動画像ストリームを、所定の動画像伝送フォーマットや蓄積ファイルフォーマットを用いて送信する。また、動画像ストリームは、例えば、ネットワーク４３１を介して送信されてもよいし、電波を介して送信されてもよい。あるいは、動画像ストリームは一旦ストレージ４３２に格納され、ストレージ４３２から画像受信システム４２０に転送されてもよい。
【０１６７】
受信装置４２１は、送信装置４１３から送信された動画像ストリームを、例えばネットワーク４３１やストレージ４３２などを介して受信し、画像復号装置４２２に出力する。受信装置４２１は、例えば、上記の動画像伝送フォーマットや蓄積ファイルフォーマットを用いて送信装置４１３から送信されたデータから、動画像ストリームを抽出し、画像復号装置４２２に出力する。
【０１６８】
画像復号装置４２２は、受信装置４２１から出力された動画像ストリームを伸張復号して動画像のベースバンドデータに変換し、画像表示装置４２３に出力する。第２の実施の形態に係る画像復号装置２００またはその変形例１，２の機能は、画像復号装置４２２に実装される。
【０１６９】
画像表示装置４２３は、画像復号装置４２２から出力された動画像のベースバンドデータに基づいて、動画像を表示する。
なお、上記の各実施の形態に示した装置（例えば、画像符号化装置１０，１００、画像復号装置２００）の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【０１７０】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１７１】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。
【符号の説明】
【０１７２】
１  入力画像
１ａ  ブロック
２  符号化データ
１０  画像符号化装置
１１  モード決定部
１２  符号化部
【図１】
0006634936.tif 000005
【図２】
0006634936.tif 000006
【図３】
0006634936.tif 000007
【図４】
0006634936.tif 000008
【図５】
0006634936.tif 000009
【図６】
0006634936.tif 000010
【図７】
0006634936.tif 000011
【図８】
0006634936.tif 000012
【図９】
0006634936.tif 000013
【図１０】
0006634936.tif 000014
【図１１】
0006634936.tif 000015
【図１２】
0006634936.tif 000016
【図１３】
0006634936.tif 000017
【図１４】
0006634936.tif 000018
【図１５】
0006634936.tif 000019
【図１６】
0006634936.tif 000020
【図１７】
0006634936.tif 000021
【図１８】
0006634936.tif 000022
【図１９】
0006634936.tif 000023
【図２０】
0006634936.tif 000024