(57)【特許請求の範囲】
【請求項１】
分割された画像内における画素値の出現頻度を示すヒストグラムを生成し、該ヒストグラム及び復号画像信号の画素値に基づいてブロックごとに復号画像信号における符号化歪を補正するオフセットを与えるサンプル適応オフセットにおけるバンドオフセットモードを用いる画像符号化装置であって、
生成した前記ヒストグラムを用いて、与えられた画像信号の画素値が属するカテゴリを決定するカテゴリ決定手段と、
前記カテゴリごとにオフセット値を最適化手法に基づいて決定するオフセット決定手段と
を備え、
前記カテゴリ決定手段は、
前記画素値の前記ヒストグラムに基づいて、画素数全体に対する所定の割合だけ画素を含む各カテゴリのバンド幅を決定し、決定した前記バンド幅に前記画素値を割り当てることによって前記画素値が属するｎ（ｎは３以上の整数）個のカテゴリを決定し、一部のカテゴリにおいて画素数全体に対する所定の割合だけ画素を含むことができない場合には、１番目のカテゴリにおいては画素値０からｊ（ｊは１以上の整数）までの出現回数の総和に基づいて前記１番目のカテゴリの終端画素値ｘ１を決定し、２番目からｎ−１番目までのカテゴリにおいては画素値ｘ１＋１からｊまでの出現回数の総和に基づいて前記２番目からｎ−１番目までのカテゴリの終端画素値ｎ−１を決定し、ｎ番目のカテゴリにおいては最大画素値を前記ｎ番目のカテゴリの終端画素値ｘｎに決定することによって前記画素値が属するカテゴリを決定する画像符号化装置。
【請求項２】
前記カテゴリ決定手段は、
前記カテゴリを決定した後に、決定した前記カテゴリの内部に納まる範囲で長すぎるカテゴリ長を再設定する請求項１に記載の画像符号化装置。
【請求項３】
分割された画像内における画素値の出現頻度を示すヒストグラムを生成し、該ヒストグラム及び復号画像信号の画素値に基づいてブロックごとに復号画像信号に対して符号化歪を補正するオフセットを与えるサンプル適応オフセットにおけるバンドオフセットモードを用いる画像復号装置であって、
生成した前記ヒストグラム及び前記オフセットを与えるために必要となる情報を読み込み、各画像信号に与えるオフセットを計算するオフセット計算手段と、
前記画像信号に前記オフセットを与えることで符号化歪を補正する補正手段と
を備え、
前記オフセット計算手段は、
画像符号化装置が画素値のヒストグラムに基づいて、画素数全体に対する所定の割合だけ画素を含む各カテゴリのバンド幅を決定し、決定した前記バンド幅に前記画素値を割り当てることによって前記画素値が属するｎ（ｎは３以上の整数）個のカテゴリを決定し、一部のカテゴリにおいて画素数全体に対する所定の割合だけ画素を含むことができない場合には、１番目のカテゴリにおいては画素値０からｊ（ｊは１以上の整数）までの出現回数の総和に基づいて前記１番目のカテゴリの終端画素値ｘ１を決定し、２番目からｎ−１番目までのカテゴリにおいては画素値ｘ１＋１からｊまでの出現回数の総和に基づいて前記２番目からｎ−１番目までのカテゴリの終端画素値ｎ−１を決定し、ｎ番目のカテゴリにおいては最大画素値を前記ｎ番目のカテゴリの終端画素値ｘｎに決定した各カテゴリの前記終端画素値、カテゴリ数及び各画素に対して与える前記オフセットを、生成した前記ヒストグラム及び前記オフセットを与えるために必要となる情報から復元することによって、前記画素値が属するカテゴリを決定し、各画素に対して与える前記オフセットを決定する画像復号装置。
【請求項４】
前記オフセット計算手段は、
前記カテゴリを決定した後に、決定した前記カテゴリの内部に納まる範囲で長すぎるカテゴリ長を再設定し、各画素に対して与える前記オフセットを決定する請求項３に記載の画像復号装置。
【請求項５】
コンピュータを、請求項１又は請求項２に記載の画像符号化装置として機能させるための画像符号化プログラム。
【請求項６】
コンピュータを、請求項３又は請求項４に記載の画像復号装置として機能させるための画像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像信号の符号化及び復号に関し、特にＨ．２６５／ＨＥＶＣ（High Efficiency Video Coding）において用いられるサンプル適応オフセット（ＳＡＯ）フィルタリングにおけるバンドオフセットに関する。
【背景技術】
【０００２】
動画像（映像）の国際標準圧縮方式であるＨ．２６５／ＨＥＶＣでは、効率よく動画像を圧縮するために、画像の予測と変換という２種類の処理が施される。画像の予測は、直近における画像間の相関関係や、同一フレームにおける近傍画素の相関関係を利用して情報を圧縮する手法である。画像の変換は、画素値が低周波成分に集まる経験則を利用して画素値を周波数成分に変換する手法である。Ｈ．２６５／ＨＥＶＣでは離散コサイン変換（Discrete Cosine Transform：ＤＣＴ）及び離散サイン変換（Discrete Sine Transform：ＤＳＴ）が採用されている。ＪＰＥＧの後継規格であるＪＰＥＧ２０００では、離散ウェーブレット変換（Discrete Wavelet Transform：ＤＷＴ）が採用されている。
【０００３】
Ｈ．２６５／ＨＥＶＣでは、画像の予測や変換が原因で発生するリンギング（画像のエッジ周辺で画素値が波打つように歪む現象）の低減や画素値のずれの補完を目的として、サンプル適応オフセット（Sample Adaptive Offset：以下、ＳＡＯと称する）という機構が導入されている。
【０００４】
図１８は、Ｈ．２６５／ＨＥＶＣにおけるＳＡＯの処理単位を示す説明図である。ＳＡＯは、図１８に示すように、画像内の正方画素ブロック（Coding Tree Unit：ＣＴＵ）を輝度成分、色差成分に分割したブロック（Coding Tree Block：ＣＴＢ）ごとに処理を行う。ＳＡＯでは、ＣＴＢ内の各画素を５つのカテゴリに分類する。４つのカテゴリにおいて、カテゴリごとに原画像との誤差を減少させるようなオフセット値を定める。残り１つのカテゴリでは、オフセットを与えない。Ｈ．２６５／ＨＥＶＣでは、カテゴリの分類方法としてエッジオフセット（Edge Offset：以下、ＥＯと称する）モード、バンドオフセット（Band Offset：以下、ＢＯと称する）モードの２種類が存在する。
【０００５】
ＥＯでは、ＣＴＢ内の画素を、隣接する画素値との大小関係に基づいてカテゴリ分類する。図１９は、ＥＯにおける４種類の隣接画素の位置関係を示す説明図である。大小関係の比較に用いる隣接画素の位置関係として、図１９に示すように、４種類のパターンが定義されている。図２０は、ＥＯにおけるカテゴリ分類を示す説明図である。各隣接パターンにおいて、隣接画素との大小関係を元に図２０のようなカテゴリ分類を行う。図２０に示すように、矢印の方向にオフセットをかける。なお、ＥＯモードでは、カテゴリによってオフセット値の正負が固定的に定められている。このようなカテゴリ分類により、局所的な画素値の山や谷を平坦に補正する効果がある。
【０００６】
一方、ＢＯでは、ＣＴＢ内の画素を、画素値に基づいてカテゴリ分類する。図２１は、Ｈ．２６５／ＨＥＶＣでのＢＯにおけるカテゴリ分類を示す説明図である。図２１に示すように、画素値の最小値（０）から最大値（画素諧調８ｂｉｔの場合２５５）までを３２個のバンドに等分し、各画素に対し、画素が属するバンドに応じてオフセット値を切り替えてオフセット処理を実施する。ＢＯモードのＳＡＯ処理を実施するＣＴＢでは、連続した４個のバンドを、オフセットを与える４つのカテゴリとみなす。それ以外のバンドはオフセットを与えないカテゴリに分類させる。このようなカテゴリ分類は、低周波成分の量子化誤差に基づく歪みや、フレーム間参照の位相ずれに基づく歪みの補正に有効である。
【０００７】
Ｈ．２６５／ＨＥＶＣにおけるＳＡＯでは、それぞれのカテゴリにオフセットを加えるために必要な情報として、以下に示す（Ａ）〜（Ｄ）のパラメータを伝送する必要がある。
（Ａ）上または左のＣＴＵからパラメータコピーを行うか否かを示すフラグ
（Ｂ）ＳＡＯにおける、どのパターンを利用するか（４種類のＥＯ、ＢＯ、利用しない）
（Ｃ）４つのカテゴリにおけるオフセット値
（Ｄ）ＢＯである場合は、連続した４つのバンドにおける開始地点
【０００８】
Ｈ．２６５／ＨＥＶＣにおけるＳＡＯでは、ＣＴＵごとに自身の上または左のＣＴＵにおけるパラメータをコピーすることが可能となっている。（Ｂ）以降のデータは、パラメータコピーを行わない場合のみ伝送する。以下では、上記のオフセットを加えるために必要な情報（Ａ）〜（Ｄ）を、ＳＡＯパラメータと呼ぶ。また、以下では、本発明においてＳＡＯの動作を制御するために必要となるパラメータは全てＳＡＯパラメータの一部とみなすこととする。
【０００９】
以上の技術詳細については、非特許文献１、非特許文献２、非特許文献３に詳しく記述されている。
【００１０】
なお、本明細書において、画像とは、静止画像、または動画像を構成する１フレーム分の画像のことをいう。また映像とは、動画像と同じ意味であり、一連の画像の集合である。
【先行技術文献】
【非特許文献】
【００１１】
【非特許文献１】大久保榮（監）、鈴木輝彦、高村誠之、中條健（編）、「Ｈ．２６５／ＨＥＶＣ教科書」、株式会社インプレスジャパン、ｐｐ．１５７−１６１、２３２−２３６、２０１３年
【非特許文献２】村上篤道、浅井光太郎、関口俊一（共編）、「高効率映像符号化技術ＨＥＶＣ／Ｈ．２６５とその応用」、株式会社オーム社、ｐｐ．１５４−１５７、２０１３年
【非特許文献３】ITU-T STUDY Group 16-Questions 6/16：“SERIES H：AUDIOVISUAL AND MULTIMEDIA SYSTEMS Infrastructure of audiovisual services-Coding of moving video，High efficiency video coding”，Recommendation ITU-T H．265，ｐｐ．44-45，158-160，2013
【発明の概要】
【発明が解決しようとする課題】
【００１２】
ＢＯにおいて、どの画素値がどのカテゴリに分類されるべきかは、動画像ごとに異なる。各バンドに１つのオフセット値しか定められないことから、ＢＯがより効果的に働くためには、バンドに関して以下に示す（α）、（β）のような性質を満たしていることが望ましい。
（α）１つのバンドに対して、極端に多い画素数が割り当てられたり、極端に少ない画素数が割り当てられたりしない。
（β）画素値の値域が広い場合においても、適切な箇所にオフセットが与えられる。
【００１３】
（α）において、１つのバンドに極端に多い画素数が割り当てられる場合、多数の画素を一つのオフセット値のみで制御する必要があり、細かなオフセット値が設定できない。逆に、極端に少ない画素数しか割り当てられなかった場合、いくら細かなオフセット値を設定できても全体のごく僅かな部分のみの調整に留まってしまう。
【００１４】
（β）が満たされない場合、ＣＴＢ内で頻出する画素値でありオフセットによる改善の余地があるにもかかわらず、オフセット値が割り当てられないような画素値帯が発生してしまう可能性がある。
【００１５】
Ｈ．２６５／ＨＥＶＣにおけるＢＯでは、４つ連続した固定長のバンドをそれぞれのカテゴリとみなし、カテゴリに含まれる画素値に対して、それぞれオフセットを加える。このカテゴリの決定方法では、以下に示す（ａ）、（ｂ）のような問題が発生しうる。
（ａ）海や空などの比較的平坦な画像の場合、画素値の変化があまり起こらないため、ごく狭い画素値の範囲に数多くの画素値が存在すると考えられる。そのため、１つまたは２つのカテゴリが数多くの画素を含んでしまう可能性があり、（α）が満たされないことによる性能劣化が発生しうるという問題がある。
（ｂ）ＣＴＢがエッジを含むような場合、極端に離れた画素値が同じＣＴＢ内に存在するため、４つ連続した固定長のカテゴリだけでは画素値全体を覆いきれない可能性がある。そのため、（β）による性能劣化が発生しうるという問題もある。
【００１６】
本発明は、このような事情に鑑みてなされたもので、サンプル適応オフセット処理を行っても主観画質と符号化効率の改善を図ることができる画像符号化装置、画像復号装置、画像符号化プログラム及び画像復号プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明の一態様は、分割された画像内における画素値の出現頻度を示すヒストグラムを生成し、該ヒストグラム及び復号画像信号の画素値に基づいてブロックごとに復号画像信号における符号化歪を補正するオフセットを与えるサンプル適応オフセットにおけるバンドオフセットモードを用いる画像符号化装置であって、生成した前記ヒストグラムを用いて、与えられた画像信号の画素値が属するカテゴリを決定するカテゴリ決定手段と、前記カテゴリごとにオフセット値を最適化手法に基づいて決定するオフセット決定手段とを備え、前記画素値の前記ヒストグラムに基づいて、画素数全体に対する所定の割合だけ画素を含む各カテゴリのバンド幅を決定し、決定した前記バンド幅に前記画素値を割り当てることによって前記画素値が属するｎ（ｎは３以上の整数）個のカテゴリを決定し、一部のカテゴリにおいて画素数全体に対する所定の割合だけ画素を含むことができない場合には、１番目のカテゴリにおいては画素値０からｊ（ｊは１以上の整数）までの出現回数の総和に基づいて前記１番目のカテゴリの終端画素値ｘ１を決定し、２番目からｎ−１番目までのカテゴリにおいては画素値ｘ１＋１からｊまでの出現回数の総和に基づいて前記２番目からｎ−１番目までのカテゴリの終端画素値ｎ−１を決定し、ｎ番目のカテゴリにおいては最大画素値を前記ｎ番目のカテゴリの終端画素値ｘｎに決定することによって前記画素値が属するカテゴリを決定する画像符号化装置である。
【００１９】
本発明の一態様は、前記画像符号化装置であって、前記カテゴリ決定手段は、前記カテゴリを決定した後に、決定した前記カテゴリの内部に納まる範囲で長すぎるカテゴリ長を再設定する。
【００２０】
本発明の一態様は、分割された画像内における画素値の出現頻度を示すヒストグラムを生成し、該ヒストグラム及び復号画像信号の画素値に基づいてブロックごとに復号画像信号に対して符号化歪を補正するオフセットを与えるサンプル適応オフセットにおけるバンドオフセットモードを用いる画像復号装置であって、生成した前記ヒストグラム及び前記オフセットを与えるために必要となる情報を読み込み、各画像信号に与えるオフセットを計算するオフセット計算手段と、前記画像信号に前記オフセットを与えることで符号化歪を補正する補正手段とを備え、前記オフセット計算手段は、画像符号化装置が画素値のヒストグラムに基づいて、画素数全体に対する所定の割合だけ画素を含む各カテゴリのバンド幅を決定し、決定した前記バンド幅に前記画素値を割り当てることによって前記画素値が属するｎ（ｎは３以上の整数）個のカテゴリを決定し、一部のカテゴリにおいて画素数全体に対する所定の割合だけ画素を含むことができない場合には、１番目のカテゴリにおいては画素値０からｊ（ｊは１以上の整数）までの出現回数の総和に基づいて前記１番目のカテゴリの終端画素値ｘ１を決定し、２番目からｎ−１番目までのカテゴリにおいては画素値ｘ１＋１からｊまでの出現回数の総和に基づいて前記２番目からｎ−１番目までのカテゴリの終端画素値ｎ−１を決定し、ｎ番目のカテゴリにおいては最大画素値を前記ｎ番目のカテゴリの終端画素値ｘｎに決定した各カテゴリの前記終端画素値、カテゴリ数及び各画素に対して与える前記オフセットを、生成した前記ヒストグラム及び前記オフセットを与えるために必要となる情報から復元することによって、前記画素値が属するカテゴリを決定し、各画素に対して与える前記オフセットを決定する画像復号装置である。
【００２２】
本発明の一態様は、前記画像復号装置であって、前記オフセット計算手段は、前記カテゴリを決定した後に、決定した前記カテゴリの内部に納まる範囲で長すぎるカテゴリ長を再設定し、各画素に対して与える前記オフセットを決定する。
【００２３】
本発明の一態様は、コンピュータを、前記画像符号化装置として機能させるための画像符号化プログラムである。
【００２４】
本発明の一態様は、コンピュータを、前記画像復号装置として機能させるための画像復号プログラムである。
【発明の効果】
【００２５】
本発明によれば、サンプル適応オフセットのバンドオフセットにおいて、より適切なオフセット値を割り当てられるようになり、予測参照に用いる復号画像をより原画像に近づけることが可能になるため、主観画質と符号化効率の改善を図ることができるという効果が得られる。
【図面の簡単な説明】
【００２６】
【図１】本発明の第１の実施形態による動画像符号化装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態による動画像復号装置の構成を示すブロック図である。
【図３】図１に示すサンプル適応オフセット処理部１１１の構成を示すブロック図である。
【図４】図３に示すサンプル適応オフセット処理部１１１が行うサンプルオフセット処理の動作を示すフローチャートである。
【図５】図２に示すサンプル適応オフセット処理部２０９の構成を示すブロック図である。
【図６】図５に示すサンプル適応オフセット２０９の処理動作を示すフローチャートである。
【図７】図３に示すＢＯ処理部３０３の構成を示すブロック図である。
【図８】ＢＯのカテゴリ分類方法を示す説明図である。
【図９】図７に示すＢＯ処理部３０３の処理動作を示すフローチャートである。
【図１０】従来技術によるＢＯ処理部３０３‘の構成を示すブロック図である。
【図１１】図５に示すＢＯ処理部４０４の構成を示すブロック図である。
【図１２】図１１に示すＢＯ処理部４０４の処理動作を示すフローチャートである。
【図１３】本発明の第２の実施形態によるＢＯ処理部３０３’’の構成を示すブロック図である。
【図１４】ＢＯのカテゴリ分類方法を示す説明図である。
【図１５】図１３に示すＢＯ処理部３０３’’の動作を示すフローチャートである。
【図１６】本発明の第２の実施形態によるＢＯ処理部４０４’の構成を示すブロック図である。
【図１７】図１６に示すＢＯ処理部４０４’の処理動作を示すフローチャートである。
【図１８】Ｈ．２６５／ＨＥＶＣにおけるＳＡＯの処理単位を示す説明図である。
【図１９】ＥＯにおける４種類の隣接画素の位置関係を示す説明図である。
【図２０】ＥＯにおけるカテゴリ分類を示す説明図である。
【図２１】Ｈ．２６５／ＨＥＶＣでのＢＯにおけるカテゴリ分類を示す説明図である。
【発明を実施するための形態】
【００２７】
＜第１の実施形態＞
以下、図面を参照して、本発明の第１の実施形態による動画像符号化装置及び動画像復号装置を説明する。図１は、同実施形態における動画像符号化装置の構成を示すブロック図である。動画像符号化装置１００は、符号化対象の入力映像信号を入力し、入力映像信号の各フレームをＣＴＵごとに符号化し、符号化結果のビットストリームを符号化ストリームとして出力する。なお、第１の実施形態では画像を動画像としているが、本技術が対象としている画像は静止画像、動画像（映像）の全てを含むものである。
【００２８】
動画像符号化装置１００は、図１に示すように、イントラ予測処理部１０１、インター予測処理部１０２、予測残差信号生成部１０３、変換処理部１０４、量子化処理部１０５、逆量子化処理部１０６、逆変換処理部１０７、復号信号生成部１０８、フレームメモリ１０９、デブロッキングフィルタ処理部１１０、サンプル適応オフセット処理部１１１、インター予測情報格納部１１２、イントラ予測情報格納部１１３、及びエントロピー符号化処理部１１４を備えている。
【００２９】
イントラ予測処理部１０１は、入力映像信号及びフレームメモリ１０９からイントラ復号信号を入力し、入力映像信号に基づいて予測信号を生成する。ここで、イントラ復号信号とはイントラ予測に必要な信号（参照画像）のことを指す。また、イントラ予測とインター予測を区別せず、インター予測またはイントラ予測のどちらかの予測方式に基づいて生成された信号を予測信号と呼ぶ。イントラ予測処理部１０１は、入力映像信号に基づいて、予測モードなどを含むイントラ予測情報を生成し、生成したイントラ予測情報をイントラ予測情報格納部１１３に記憶させて格納する。
【００３０】
インター予測処理部１０２は、入力映像信号と、サンプル適応オフセット処理部１１１から出力するインター復号信号の２つを入力する。ここで、インター復号信号とはインター予測を行うために必要となる信号（参照画像）を指す。Ｈ．２６５／ＨＥＶＣでは、複数のフィルタによりイントラ復号信号の符号化歪を除去することでインター復号信号が生成される。インター予測処理部１０２は、入力映像信号とインター復号信号とに基づいて、予測信号を生成する。また、インター予測処理部１０２は、入力映像信号とインター復号信号とに基づいて、動きベクトルを含むインター予測情報を生成し、生成したインター予測情報をインター予測情報格納部１１２に記憶させて格納する。
【００３１】
予測残差信号生成部１０３は、入力映像信号と、イントラ予測処理部１０１あるいはインター予測処理部１０２から出力される予測信号との差分を生成する。予測残差信号生成部１０３は、算出した差分を予測残差信号として変換処理部１０４に出力する。
【００３２】
変換処理部１０４は、予測残差信号生成部１０３から入力した予測残差信号に対してＤＣＴやＤＳＴ等の直交変換を行う。変換処理部１０４は、直交変換により得られた変換係数を量子化処理部１０５に出力する。
【００３３】
量子化処理部１０５は、変換処理部１０４から入力した変換係数を量子化し、その量子化された変換係数を逆量子化処理部１０６とエントロピー符号化処理部１１４の２つに出力する。
【００３４】
逆量子化処理部１０６は、量子化処理部１０５から入力した変換係数を逆量子化して逆変換処理部１０７に出力する。逆変換処理部１０７は、逆量子化処理部１０６から入力した変換係数を逆直交変換する。逆変換処理部１０７は、逆直交変換により得られた予測残差復号信号を、復号信号生成部１０８に出力する。
【００３５】
復号信号生成部１０８は、逆変換処理部１０７から入力した予測残差復号信号と、イントラ予測処理部１０１あるいはインター予測処理部１０２が出力する予測信号とを加算する。復号信号生成部１０８は、加算結果を符号化した符号化対象ブロックのイントラ復号信号としてフレームメモリ１０９に記憶する。
【００３６】
フレームメモリ１０９は、復号信号生成部１０８が生成し出力したイントラ復号信号を記憶する。デブロッキングフィルタ処理部１１０は、フレームメモリ１０９に記憶されているイントラ復号信号を読み出し、読み出したイントラ復号信号に対してデブロッキングフィルタ処理を行う。デブロッキングフィルタ処理部１１０は、デブロッキングフィルタ処理後の中間復号映像信号をサンプル適応オフセット処理部１１１へ出力する。ここで、中間復号映像信号とは、インター復号信号の生成過程で、複数のフィルタにより符号化歪などが除去されている場合、その途中過程で出力される信号を指し、第一の実施形態ではデブロッキングフィルタ処理部１１０の出力となる。
【００３７】
サンプル適応オフセット処理部１１１は、デブロッキングフィルタ処理部１１０から中間復元信号及び入力映像信号を受け取り、サンプル適用オフセット処理後の画像をインター復号映像信号としてインター予測処理部１０２に出力し、かつＳＡＯパラメータをエントロピー符号化処理部１１４へと出力する。
【００３８】
なお、本実施形態ではデブロッキングフィルタ処理部１１０の後にサンプル適応オフセット処理部１１１が設けられているが、この後にＨ．２６５／ＨＥＶＣの標準化において提案されていた適応ループフィルタ（Adaptive Loop Filter：ＡＬＦ）といった符号化歪を低減するフィルタや復号信号の画質を改善するためのフィルタを挿入してもよい。また、各種フィルタの適用順序は入れ替わってもよい。
【００３９】
インター予測情報格納部１１２は、インター予測処理部１０２が生成したインター予測情報を記憶する。イントラ予測情報格納部１１３は、イントラ予測処理部１０１が生成したイントラ予測情報を記憶する。
【００４０】
エントロピー符号化処理部１１４は、（１）量子化処理部１０５において量子化された変換係数、（２）インター予測情報格納部１１２に格納されているインター予測情報と、（３）イントラ予測情報格納部１１３に格納されているイントラ予測情報と、（４）サンプル適応オフセット処理部１１１で計算されたＳＡＯパラメータ、の４つを入力として受け取り、エントロピー符号化を行った後に符号化ストリームとして出力する。
【００４１】
動画像符号化装置１００は、前述の各機能部を備えることにより、入力映像信号の各フレームを複数のブロック（例えばＨ．２６５／ＨＥＶＣで定義されるＣＴＵなど）に分割してブロックベースの予測符号化を行い、入力映像信号を符号化して得られた符号化ストリームを出力する。
【００４２】
図２は、第１の実施形態における動画像復号装置２００の構成を示すブロック図である。動画像復号装置２００は、図２に示した動画像符号化装置１００などにより符号化されて出力される符号化ストリームを入力し、符号化ストリームを復号することにより復号画像である復号映像信号を出力する。ここで、最終的に得られる復号映像信号は、インター復号信号と等しい。
【００４３】
動画像復号装置２００は、図２に示すように、エントロピー復号処理部２０１、イントラ予測処理部２０２、インター予測処理部２０３、逆量子化処理部２０４、逆変換処理部２０５、復号信号生成部２０６、フレームメモリ２０７、デブロッキングフィルタ処理部２０８、サンプル適応オフセット処理部２０９、インター予測情報格納部２１０及びイントラ予測情報格納部２１１を備えている。
【００４４】
エントロピー復号処理部２０１は、符号化ストリームを入力として受け取り、以下に示す（１）〜（４）の４つの情報を出力する。（１）入力した符号化ストリームから復号対象ブロックの量子化変換係数をエントロピー復号して逆量子化処理部２０４へ出力し、（２）イントラ予測に関するイントラ予測情報をエントロピー復号しイントラ予測情報格納部２１１へ出力し、（３）インター予測に関するインター予測情報をエントロピー復号し、インター予測情報格納部２１０へ出力し、（４）サンプル適応オフセット処理部２０９へＳＡＯパラメータを出力する。
【００４５】
イントラ予測処理部２０２は、フレームメモリ２０７からイントラ復号信号を参照画像として読み出す。また、イントラ予測処理部２０２は、イントラ予測情報格納部２１１からイントラ予測情報を読み出す。そして、イントラ予測処理部２０２は、読み出した参照画像と、読み出したイントラ予測情報に基づいて、予測信号を生成する。
【００４６】
インター予測処理部２０３は、インター予測情報格納部２１０からインター予測情報を読み出す。そして、インター予測処理部２０３は、インター予測情報と、サンプル適応オフセット処理部２０９が出力したインター復号信号とに基づいて、予測信号を生成する。
【００４７】
逆量子化処理部２０４は、エントロピー復号処理部２０１から読み出した量子化変換係数を逆量子化して復号変換係数を算出し、算出した復号変換係数を逆変換処理部２０５に出力する。
【００４８】
逆変換処理部２０５は、逆量子化処理部２０４から入力した復号変換係数に逆直交変換を施し、予測残差復号信号を算出し、算出した予測残差復号信号を復号信号生成部２０６に出力する。
【００４９】
復号信号生成部２０６は、逆変換処理部２０５から入力した予測残差復号信号と、イントラ予測処理部２０２あるいはインター予測処理部２０３が出力する予測信号とを加算する。そして、復号信号生成部２０６は、加算結果をイントラ復号信号としてフレームメモリ２０７に記憶させて格納する。フレームメモリ２０７は、復号信号生成部２０６が算出したイントラ復号信号を記憶する。
【００５０】
デブロッキングフィルタ処理部２０８は、フレームメモリ２０７からイントラ復号信号を読み出し、読み出したイントラ復号信号により示される画像に対して符号化歪みを低減するフィルタ処理を行う。デブロッキングフィルタ処理部２０８は、フィルタ処理後の画像を中間復号映像信号として出力する。また、サンプル適応オフセット処理部２０９は、エントロピー復号処理部２０１からＳＡＯパラメータを受け取り、かつデブロッキングフィルタ処理部２０８が生成した中間復号映像信号を読み出し、オフセットを加えた画像を復号映像信号として出力する。
【００５１】
なお、本実施形態ではデブロッキングフィルタ処理部２０８の後にサンプル適応オフセット処理部２０９が設けられているが、この後にＨ．２６５／ＨＥＶＣの標準化において提案されていた適応ループフィルタ（Adaptive Loop Filter：ＡＬＦ）といった符号化歪を低減するフィルタや復号信号の画質を改善するためのフィルタを挿入してもよい。また、各種フィルタの適用順序は入れ替わってもよい。
【００５２】
インター予測情報格納部２１０は、エントロピー復号処理部２０１が復号したインター予測情報を格納する。イントラ予測情報格納部２１１は、エントロピー復号処理部２０１が復号したイントラ予測情報を格納する。
【００５３】
動画像復号装置２００は、前述の各機能部を備えることにより、ブロックベースの予測符号化により符号化された映像の符号化ストリームを入力し、入力された符号化ストリームから映像を復号して復号映像信号を出力する。
【００５４】
次に、図３を参照して、図１に示すサンプル適応オフセット処理部１１１の構成を説明する。図３は、図１に示すサンプル適応オフセット処理部１１１の構成を示すブロック図である。サンプル適応オフセット処理部１１１は、ＥＯ処理部３０１、マージモード適用処理部３０２、ＢＯ処理部３０３、ＳＡＯモード決定処理部３０４から構成される。
【００５５】
ＥＯ処理部３０１は、デブロッキングフィルタ処理部１１０が生成した中間復号映像信号及び原信号である入力映像信号を入力とし、ＥＯ処理を行った際に生じる符号量及び画質の改善度を４種類の隣接関係全てのパターンについて計算し、それぞれの（ＳＡＯパラメータ、符号量、画質の改善度）の組をＳＡＯモード決定処理部３０４へと出力する。ここで、画質の改善度はＰＳＮＲ等の原画とＥＯ適用後復号信号との誤差エネルギーを用いて計算される。
【００５６】
マージモード適用処理部３０２は、デブロッキングフィルタ処理部１１０が生成した中間復号映像信号及び原信号である入力映像信号を入力とし、自身のＣＴＵからみて上、もしくは左に位置するＣＴＵのパラメータをコピーしてオフセットを加えた際に生じる符号量及び画質の改善度をそれぞれ計算し、それぞれの（ＳＡＯパラメータ、符号量、画質の改善度）の組をＳＡＯモード決定処理３０４へと出力する。
【００５７】
ＢＯ処理部３０３は、デブロッキングフィルタ処理部１１０が生成した中間復号映像信号及び原信号である入力映像信号を入力とし、ＢＯ処理を行った際に生じる全ての符号量及び画質の改善度を計算し、それぞれの（ＳＡＯパラメータ、符号量、画質の改善度）の組をＳＡＯモード決定処理部３０４へと出力する。
【００５８】
ＳＡＯモード決定処理部３０４は、ＥＯ処理部３０１、マージモード適用処理部３０２、ＢＯ処理部３０３において、入力として受け取った（ＳＡＯパラメータ、符号量、画質の改善度）の組、及びＳＡＯを使用しない場合のうち、レート歪（Rate Distortion：ＲＤ）最適化の観点から最も優れているパターン、すなわちＲＤコストが最も低いパターンを選択し、ＳＡＯパラメータ、及びオフセットを加えた後の復号映像信号を出力する。ＲＤ最適化の具体的な方法や種類については、非特許文献１（ｐｐ．２３２−２３６）に記述されている。
【００５９】
次に、図４を参照して、図３に示すサンプル適応オフセット処理部１１１の処理動作を説明する。図４は、図３に示すサンプル適応オフセット処理部１１１が行うサンプルオフセット処理の動作を示すフローチャートである。
【００６０】
まず、ＥＯ処理部３０１は、ＥＯ処理を行った際に生じる符号量及び画質の改善度を図１９に示すような４種類の隣接関係全てのパターンについて計算し、それぞれの（ＳＡＯパラメータ、符号量、画質の改善度）の組をＳＡＯモード決定処理部３０４へと出力する（ステップＳ１０１）。
【００６１】
次に、マージモード適用処理部３０２は、デブロッキングフィルタ処理部１１０が生成した中間復号映像信号を入力とし、自身のＣＴＵからみて上、もしくは左に位置するＣＴＵのパラメータをコピーしてオフセットを加えた際に生じる符号量及び画質の改善度をそれぞれ計算し、それぞれの（ＳＡＯパラメータ、符号量、画質の改善度）の組をＳＡＯモード決定処理３０４へと出力する（ステップＳ１０２）。
【００６２】
次に、ＢＯ処理部３０３は、デブロッキングフィルタ処理部１１０が生成した中間復号映像信号を入力とし、ＢＯ処理を行った際に生じる全ての符号量及び画質の改善度を計算し、それぞれの（ＳＡＯパラメータ、符号量、画質の改善度）の組をＳＡＯモード決定処理部３０４へと出力する（ステップＳ１０３）。
【００６３】
次に、ＳＡＯモード決定処理部３０４は、入力として受け取った処理に必要な符号量と画質の改善度の組み合わせのうち、ＲＤ最適化の観点から最も優れている、すなわちＲＤコストが最も低いパターンを、ＥＯ処理部３０１、マージモード適用処理部３０２、ＢＯ処理部３０３のそれぞれから選択し、そのＳＡＯパラメータ、及びオフセットを加えた後の復号映像信号を出力する（ステップＳ１０４）。ＲＤ最適化の具体的な方法や種類については、非特許文献１（ｐｐ．２３２−２３６）に記述されている公知の技術であるため、ここでは詳細な説明を省略する。
【００６４】
次に、図５を参照して、図２に示すサンプル適応オフセット処理部２０９の構成を説明する。図５は、図２に示すサンプル適応オフセット処理部２０９の構成を示すブロック図である。サンプル適応オフセット処理部２０９は、ＳＡＯモード判定処理部４０１、ＥＯ処理部４０２、マージモード適用処理部４０３、ＢＯ処理部４０４から構成される。
【００６５】
ＳＡＯモード判定処理部４０１は、エントロピー復号処理部２０１からＳＡＯパラメータ及びデブロッキングフィルタ処理部２０８から中間復号映像信号を受け取る。その受け取った情報から、マージモードが適用される場合はマージモード適用処理部４０３へＳＡＯパラメータを出力し、ＥＯ処理が行われる場合はＥＯ処理部４０２へＳＡＯパラメータをそのまま出力し、ＢＯ処理が行われる場合はＢＯ処理部４０４へＳＡＯパラメータをそのまま出力する。また、それぞれの処理（ＢＯ処理、ＥＯ処理、ＳＡＯをかけない場合）に応じて、適切な場所に中間復号映像信号が出力される。ＳＡＯをかけない場合は、中間復号映像信号が、そのまま復号映像信号として出力される。
【００６６】
ＥＯ処理部４０２は、ＳＡＯモード判定処理部４０１から中間復号映像信号及びＳＡＯパラメータを受け取り、与えられた情報に基づいてＥＯ処理を行い、復号映像信号として出力する。
【００６７】
マージモード適用処理部４０３は、ＳＡＯモード判定処理部４０１から、どのＣＴＵのパラメータをコピーするかを受け取り、上もしくは左のＣＴＵからＳＡＯパラメータをコピーして、ＳＡＯモード判定処理部４０１と同様にＥＯ処理部４０２を適用する場合、ＢＯ処理部４０４を適用する場合を選択し、ＳＡＯモード判定処理部４０１が出力したＳＡＯパラメータを上書きする。
【００６８】
ＢＯ処理部４０４は、ＳＡＯモード判定処理部４０１から中間復号映像信号及びＳＡＯパラメータを受け取り、与えられた情報に基づいてＢＯ処理を行い、復号映像信号として出力する。
【００６９】
次に、図６を参照して、図５に示すサンプル適応オフセット２０９の処理動作を説明する。図６は、図５に示すサンプル適応オフセット２０９の処理動作を示すフローチャートである。
【００７０】
ＳＡＯモード判定処理部４０１は、ＳＡＯパラメータを受け取った後に、まずマージモードを適用するか否かの情報をＳＡＯパラメータから読み取る（ステップＳ２０１）。マージモードを適用する場合は、マージモード適用処理部４０３により、マージモードを適用する上もしくは左のＣＴＵから、ＳＡＯパラメータをコピーする（ステップＳ２０２）。
【００７１】
次に、ＳＡＯモード判定処理部４０１は、次にＢＯの処理を行うか否かをＳＡＯパラメータから読み取る（ステップＳ２０３）。ＢＯの処理を行う場合は、ＢＯ処理部４０２の処理に基づいてオフセット値を加算する（ステップＳ２０４）。ＢＯ処理を行わない場合、次にＳＡＯモード判定処理部４０１は、ＥＯの処理を行うか否かをＳＡＯパラメータから読み取る（ステップＳ２０５）。ＥＯを行う場合は、ＥＯ処理部４０３の処理に基づいてオフセット値を加算する（ステップＳ２０６）。
【００７２】
次に、図７を参照して、図３に示すＢＯ処理部３０３の構成について説明する。図７は、図３に示すＢＯ処理部３０３の構成を示すブロック図である。ＢＯ処理部３０３は、ヒストグラム計算処理部５０１、カテゴリ列挙処理部５０２、最適オフセット計算処理部５０３から構成される。
【００７３】
ヒストグラム計算処理部５０１は、中間復号映像信号を入力として受け取り、画素値の頻度を表すヒストグラムを計算し、カテゴリ列挙処理部５０２へと出力する。ヒストグラムは、図６で示されるように、横軸に画素値の値、縦軸に画素値の出現回数をとったものである。
【００７４】
カテゴリ列挙処理部５０２は、ヒストグラム計算処理部５０１が出力した画素値のヒストグラムを入力として受け取り、カテゴリの総数ｎ、各カテゴリの終端画素値ｘｉ（ｉ＝１．．．ｎ−１）の組をＮ個出力する。Ｎ個のカテゴリの組は、ｎが全て異なるように設定する。
【００７５】
カテゴリ列挙処理部５０２は、図８に示すようにカテゴリをｎ個用意し、カテゴリｉ（ｉ＝１．．．ｎ）が画素をおよそ画素数全体に対して割合ｂｉだけ含むようにバンド幅を決定する。図８は、ＢＯのカテゴリ分類方法を示す説明図である。すなわち、１つのＣＴＢ内の画素数をＭ個とすると、画素をおよそａｉ（＝Ｍｂｉ）個含むようにバンド幅を決定する。ここで、ｂｉは全ての映像において共通な固定のパラメータをエンコーダ、デコーダの間であらかじめ定めておく。
【００７６】
これにより、パラメータ調整の自由度を制限する代わりに、ｂｉの情報をエントロピー符号化処理部１１４へ出力する必要がない。また、Ｎ＝１とし、ｎも事前に決定しておけば、ｂｉと同様にエントロピー符号化処理部１１４へとｎを出力する必要がなくなる。ｎに自由度を与える場合は、ｎがＳＡＯパラメータに追加される。また、カテゴリの位置を決定するために従来用いていたＳＡＯパラメータ（Ｄ）である連続した４つのバンドにおける開始地点を用いなくてもカテゴリ位置を定めることができるため、伝送コストの低減が期待される。
【００７７】
カテゴリｉは画素を丁度ａｉ個含むことが不可能である場合も存在する。そこで、カテゴリの終端画素値ｘｉを以下に示す（１）〜（３）のように決定する。以下では、画素値ｋの出現回数をｈｋとする。
（１）カテゴリ１の終端画素値ｘｉを決定することを考える。以下、ｓｊを画素値０かｊまでの出現回数の総和、すなわち
【数１】
0006454229.tif 000002
とする。
【００７８】
このとき、ｓｊが最もａｉと近づくように、すなわち、式（１）に従ってｘ１を選択する。複数通りの候補が出現した場合は、最も小さなｊを選択する。
【数２】
0006454229.tif 000003
【００７９】
（２）（１）と同様に、カテゴリｉ（２．．．ｎ−１）の終端画素値ｘｉを、ｉが小さい順に決定することを考える。以下、ｓｉｊを画素値ｘｉ−１＋１からｊまでの出現回数の総和、すなわち
【数３】
0006454229.tif 000004
とする。
【００８０】
このとき、ｓｉｊが最もａｉと近づくように、すなわち、式（２）に従ってｘｉを選択する。複数通りの候補が出現した場合は、最も小さなｊを選択する。
【数４】
0006454229.tif 000005
【００８１】
（３）カテゴリｎの終端画素値ｘｎは、最大画素値に固定する。
【００８２】
最適オフセット計算処理部５０３は、復号映像信号及びカテゴリ列挙処理部５０２から決定されたカテゴリ数と各カテゴリの終端画素値の組の候補、及び原信号である入力映像信号を受け取り、それぞれの候補に対して各カテゴリの最適なオフセット値を計算する。そして、必要符号量とＰＳＮＲ等の画質の改善度を計算した後、（ＳＡＯパラメータ、必要符号量、画質の改善度）を組にして出力する。Ｈ．２６５／ＨＥＶＣ参照ソフトウェアにおいては、各カテゴリの最適なオフセット値は、以下のような最小二乗法を基に決定している。
【００８３】
カテゴリｉ属しているＣＴＢ内の座標位置（ｘ，ｙ）の集合をＳｉ、ＣＴＢ内の座標（ｘ，ｙ）における原画像における画素値をｒｘｙ、復元画像のＣＴＢ内の座標（ｘ，ｙ）における原画像における画素値をｐｘｙとする。カテゴリｉにおける最適なオフセット値ｃｉは、例えば以下の式（３）のように求められる。
【数５】
0006454229.tif 000006
【００８４】
また、以下の式（４）のように求めてもよい。
【数６】
0006454229.tif 000007
【００８５】
次に、図９を参照して、図７に示すＢＯ処理部３０３の処理動作を説明する。図９は、図７に示すＢＯ処理部３０３の処理動作を示すフローチャートである。まず、ヒストグラム計算処理部５０１は、中間復号映像信号を入力として受け取り、画素値の頻度を表すヒストグラムを計算し、カテゴリ列挙処理部５０２へと出力する（ステップＳ３０１）。
【００８６】
次に、カテゴリ列挙処理部５０２は、ヒストグラム計算処理部５０１が出力した画素値のヒストグラムを入力として受け取り、カテゴリの総数ｎ、各カテゴリの終端画素値ｘｉ（ｉ＝１．．．ｎ−１）の組をＮ個出力する（ステップＳ３０２）。具体的な手順は、前述した通りである。
【００８７】
次に、最適オフセット計算処理部５０３は、中間復号映像信号及びカテゴリ決定処理部５０２から決定されたカテゴリ数と各カテゴリの終端画素値の組の候補を受け取り、それぞれの候補に対して各カテゴリの最適なオフセット値を計算し、ＲＤコストを最小とする最適なＳＡＯパラメータにおける（ＳＡＯパラメータ、符号量、画質の改善度）の組を出力する（ステップＳ３０３）。
【００８８】
本実施形態におけるＢＯ処理部３０３は、ヒストグラム計算処理部５０１が画素値の出現回数に関するヒストグラムを基に、カテゴリの個数や区間を決定している点が、従来技術にはない特徴である。
【００８９】
図１０は、従来技術によるＢＯ処理部３０３‘の構成を示すブロック図である。最適オフセット計算処理部６０２は、本実施形態における最適オフセット計算処理部５０３と同じ機能を有する。ＢＯ処理部３０３’におけるカテゴリ列挙処理部６０１は、図２１で示すように画素値の最小値から最大値までを均等に３２等分し、連続した４つのバンドの組み合わせを２９通り全て列挙して出力する。
【００９０】
次に、図１１を参照して、図５に示すＢＯ処理部４０４の構成を説明する。図１１は、図５に示すＢＯ処理部４０４の構成を示すブロック図である。ヒストグラム計算処理部７０１は、ＳＡＯモード判定処理部４０１から中間復号映像信号を受け取り、画素値のヒストグラムを生成する。カテゴリ決定処理部７０２は、ヒストグラム計算処理部７０１が生成したヒストグラム、及び最適なＳＡＯパラメータを受け取り、カテゴリ数及び各カテゴリの終端画素値、各カテゴリに加算するオフセット値を復元し、加算すべきオフセット値を出力する。オフセット加算処理部７０３は、カテゴリ決定処理部７０２から加えるべきオフセットを受け取り、中間復号映像信号にオフセット値を加算して出力する。
【００９１】
次に、図１２を参照して、図１１に示すＢＯ処理部４０４の処理動作を説明する。図１２は、図１１に示すＢＯ処理部４０４の処理動作を示すフローチャートである。まず、ヒストグラム計算処理部７０１は、ＳＡＯモード判定処理部４０１から中間復号映像信号を受け取り、画素値のヒストグラムを生成する（ステップＳ４０１）。
【００９２】
次に、カテゴリ決定処理部７０２は、ヒストグラム計算処理部７０１が生成したヒストグラム、及び最適なＳＡＯパラメータを受け取り、カテゴリ数及び各カテゴリの終端画素値、各カテゴリに加算するオフセット値を復元し、加算すべきオフセット値を出力する（ステップＳ４０２）。
【００９３】
次に、オフセット加算処理部７０３は、カテゴリ決定処理部７０２から加算すべきオフセット値を受け取り、中間復号映像信号にオフセット値を加算して出力する（ステップＳ４０３）。
【００９４】
＜第２の実施形態＞
次に、本発明の第２の実施形態による画像符号化装置及び画像復号装置を説明する。第２の実施形態は第１の実施形態における、図３に示すＢＯ処理部３０３及び図５に示すＢＯ処理部４０４の構成のみが異なる。そのため、ここでは、第２の実施形態におけるＢＯ処理部３０３’’及びＢＯ処理部４０４’の構成のみを説明する。
【００９５】
図１３は、ＢＯ処理部３０３’’の構成を示すブロック図である。ＢＯ処理部３０３’’は、図１３に示すようにヒストグラム計算処理部８０１、カテゴリ列挙処理部８０２、カテゴリ再選択処理部８０３、最適オフセット計算処理部８０４から構成される。
【００９６】
ヒストグラム計算処理部８０１、カテゴリ列挙処理部８０２及び最適オフセット計算処理部８０４は、それぞれ図５におけるヒストグラム計算処理部５０１、カテゴリ列挙処理部５０２、最適オフセット計算処理部５０３と同じ構成となっている。
【００９７】
カテゴリ再選択処理部８０３は、カテゴリ列挙処理部８０２から決定された（カテゴリ数、各カテゴリの終端画素値）の組の候補、及び画素値のヒストグラムを受け取り、ヒストグラム計算処理部８０１から画素値ヒストグラムを受け取る。
【００９８】
そして、図１４に示すように、画素値のヒストグラムにおいて１つのカテゴリが保持する区間の長さがＷを超えてしまった場合に、長さがＷで最も画素値が多く含まれるような区間にカテゴリを制限する。図１４は、ＢＯのカテゴリ分類方法を示す説明図である。制限した後のカテゴリ数と各カテゴリの終端画素値の組を最適オフセット計算処理部８０４へと出力する。
【００９９】
ＢＯ処理では、画素値ごとにカテゴリを分類しているため、近い画素値であれば同程度のオフセットを与えればよいという考えに基づいている。第１の実施形態の場合、１つのカテゴリが保持する区間が広すぎるため、上記の考えに基づいた適切なオフセット値が定められない場合が考えられた。第２の実施形態の場合、最大区間長を制限し、近い画素値のみ１つのオフセットを対応させることで、より適切なオフセット値を定められる場合もありうる。
【０１００】
カテゴリの最大区間長Ｗは、ＣＴＵごとに変更しても、全ての映像で同一のパラメータに設定してもよい。前者の場合はより精細にパラメータを設定することができ、後者の場合はＷを逐一伝送する必要がなくなるため必要符号量を削減できる。ＷをＣＴＵごとに変更する場合はＷがＳＡＯパラメータの一部になる。
【０１０１】
次に、図１５を参照して、図１３に示すＢＯ処理部３０３’’の動作を説明する。図１５は、図１３に示すＢＯ処理部３０３’’の動作を示すフローチャートである。図１５に示すステップＳ５０１、ステップＳ５０２、ステップＳ５０４は、それぞれ図９に示すステップＳ３０１、ステップＳ３０２、ステップＳ３０３と同じ処理動作となっている。図１５に示すステップＳ５０３では、カテゴリ列挙処理部８０２が出力した全ての（カテゴリ数、各カテゴリの終端画素値）の組に対して、カテゴリの区間がＷを超えた場合について、カテゴリの区間長をＷに制限し、最も画素数が多く含まれるような区間にカテゴリを再設定する。
【０１０２】
図１６は、ＢＯ処理部４０４’の構成を示すブロック図である。ヒストグラム計算処理部９０１は、ＳＡＯモード判定処理部４０１から中間復号映像信号を受け取り、画素値のヒストグラムを生成する。カテゴリ決定処理部９０２は、ヒストグラム計算処理部９０１が生成したヒストグラム、及び最適なＳＡＯパラメータを受け取り、カテゴリ数及び各カテゴリの終端画素値、各カテゴリに加算するオフセット値を復元し、カテゴリの区間が最大画素値Ｗを超えた場合にカテゴリの区間長をＷに制限し、加算すべきオフセット値を出力する。オフセット加算処理部９０３は、カテゴリ決定処理部９０２から加えるべきオフセットを受け取り、中間復号映像信号にオフセット値を加算して出力する。
【０１０３】
次に、図１７を用いて、図１６に示すＢＯ処理部４０４’の処理動作を説明する。図１７は、図１６に示すＢＯ処理部４０４’の処理動作を示すフローチャートである。まず、ヒストグラム計算処理部９０１は、ＳＡＯモード判定処理部４０１から復号映像信号を受け取り、画素値のヒストグラムを生成する（ステップＳ６０１）。
【０１０４】
次に、カテゴリ決定処理部９０２は、ヒストグラム計算処理部９０１が生成したヒストグラム、及び最適なＳＡＯパラメータを受け取り、カテゴリ数及び各カテゴリの終端画素値、各カテゴリに加算するオフセット値を復元し、カテゴリの区間が最大画素値Ｗを超えた場合にカテゴリの区間長をＷに制限し、加算すべきオフセット値を出力する（ステップＳ６０２）。
【０１０５】
次に、オフセット加算処理部９０３は、カテゴリ決定処理部９０２から加算すべきオフセット値を受け取り、中間復号映像信号にオフセット値を加算して出力する（ステップＳ６０３）。
【０１０６】
以上説明したように、本実施形態では、画素値の出現頻度を計測し、各カテゴリがおよそ均等に画素値を保持するよう調整することで、前述の（α）による性能劣化を防ぐようにした。しかし、ＢＯでは画素値が近ければオフセット値も近いという仮定を置いており、画素値の値域が広すぎる場合において、性能劣化が発生する可能性がある。そこで、必要に応じてカテゴリの最大幅を導入することで、前述の（β）による性能劣化を防ぐようにした。
【０１０７】
また、本実施形態は、復号画像に対して原画像との誤差を低減させるサンプル適応オフセットにおけるバンドオフセットの１手法であり、復号画像から画素値のヒストグラムを計算し、画素値のヒストグラムに基づきバンド幅や開始地点を求め、各カテゴリにおける最適なオフセット値を計算するようにした。
【０１０８】
また、復号画像から画素値のヒストグラムを計算する際に、１つのＣＴＢを読み込み、画素値ごとに出現回数を計測するようにした。
【０１０９】
また、画素値のヒストグラムに基づきバンド幅や開始地点を求める際には、画素値のヒストグラムに基づき、ＢＯにおける性質（ａ）（ｂ）を満たすようなバンド幅やバンドの開始位置を求めるようにした。
【０１１０】
また、各カテゴリにおける最適なオフセット値を計算する際には、最小２乗誤差などの観点から最適なオフセット値を、各カテゴリにおいて導出するようにした。
【０１１１】
このように、サンプル適応オフセット処理を行うＣＴＢ内における画素値のヒストグラムに基づき適切なカテゴリを決定することで、主観画質と符号化効率の改善を図ることができる。
【０１１２】
前述した実施形態における動画像符号化装置、動画像復号装置の全部または一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、ＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されるものであってもよい。
【０１１３】
以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行ってもよい。
【産業上の利用可能性】
【０１１４】
サンプル適応オフセット処理を行っても主観画質と符号化効率の改善を図ることが不可欠な用途に適用できる。
【符号の説明】
【０１１５】
１１１、２０９・・・サンプル適応オフセット処理部、３０１、４０２・・・ＥＯ処理部、３０２、４０３・・・マージモード適用処理部、３０３、４０４・・・ＢＯ処理部、３０４、４０１・・・ＳＡＯモード決定処理部、５０１、７０１、８０１、９０１・・・ヒストグラム計算処理部、５０２、８０２・・・カテゴリ列挙処理部、５０３、８０４・・・最適オフセット計算処理部、７０２、９０２・・・カテゴリ決定処理部、７０３、９０３・・・オフセット加算処理部、８０３・・・カテゴリ再選択処理部
【図１】
0006454229.tif 000008
【図２】
0006454229.tif 000009
【図３】
0006454229.tif 000010
【図４】
0006454229.tif 000011
【図５】
0006454229.tif 000012
【図６】
0006454229.tif 000013
【図７】
0006454229.tif 000014
【図８】
0006454229.tif 000015
【図９】
0006454229.tif 000016
【図１０】
0006454229.tif 000017
【図１１】
0006454229.tif 000018
【図１２】
0006454229.tif 000019
【図１３】
0006454229.tif 000020
【図１４】
0006454229.tif 000021
【図１５】
0006454229.tif 000022
【図１６】
0006454229.tif 000023
【図１７】
0006454229.tif 000024
【図１８】
0006454229.tif 000025
【図１９】
0006454229.tif 000026
【図２０】
0006454229.tif 000027
【図２１】
0006454229.tif 000028