(57)【要約】【課題】大きなフィルタ適用面積を実現しつつ、高いフィルタ効果を実現する。【解決手段】動画像復号装置１の適応オフセットフィルタ６０は、選択対象となる複数のオフセットの数を導出し、画素値毎に、導出した数のオフセットの中から当該画素値に加算するオフセットを選択するオフセット設定部６３と、オフセット設定部６３が選択したオフセットを当該画素値に加算する適応フィルタ部６２と、を備えている。【選択図】図１
2013251827.tif 000002
【特許請求の範囲】
【請求項１】
複数の単位領域から構成される入力画像の各画素値に、複数のオフセットの中から選択したオフセットから導出した実オフセットを加算する画像フィルタ装置であって、
選択対象となる上記複数のオフセットの数を導出するオフセット数導出手段と、
上記画素値毎に、上記オフセット数導出手段が導出した数のオフセットの中から当該画素値に加算する実オフセットを導出するためのオフセットを選択するオフセット選択手段と、
上記オフセット選択手段が選択したオフセットから当該画素値に加算する実オフセットを導出する実オフセット導出手段と、
上記実オフセット導出手段が導出した実オフセットを当該画素値に加算するフィルタ手段と、を備えていることを特徴とする画像フィルタ装置。
【請求項２】
上記複数のオフセットの数を示すオフセット数情報を含む符号化データを復号する復号手段を備え、
上記オフセット数導出手段は、上記復号手段が復号したオフセット数情報を参照してオフセット数を導出することを特徴とする請求項１に記載の画像フィルタ装置。
【請求項３】
上記符号化データは、上記単位領域が所定サイズ以上の場合、上記オフセット数情報を含んでおり、
上記オフセット数導出手段は、上記単位領域が所定サイズ以上の場合、上記復号手段が復号したオフセット数情報を参照してオフセット数を導出し、上記単位領域が所定サイズよりも小さい場合、オフセット数を１として導出することを特徴とする請求項２に記載の画像フィルタ装置。
【請求項４】
上記符号化データは、輝度を示す画素値に加算するオフセットに関するオフセット数情報を含んでおり、
上記オフセット数導出手段は、輝度を示す画素値については、上記復号手段が復号したオフセット数情報を参照してオフセット数を導出し、色差を示す画素値については、輝度を示す画素値について導出したオフセット数を用いてオフセット数を導出することを特徴とする請求項２に記載の画像フィルタ装置。
【請求項５】
上記オフセット数導出手段は、色差を示す画素値についてのオフセット数を、輝度を示す画素値について導出したオフセット数と同数として導出することを特徴とする請求項４に記載の画像フィルタ装置。
【請求項６】
上記オフセット数導出手段は、色差を示す画素値についてのオフセット数を、輝度を示す画素値について導出したオフセット数の半数として導出することを特徴とする請求項４に記載の画像フィルタ装置。
【請求項７】
上記符号化データは、輝度を示す画素値に加算するオフセットに関するオフセット数情報を含んでおり、
上記オフセット数導出手段は、輝度を示す画素値については、上記復号手段が復号したオフセット数情報を参照してオフセット数を導出し、色差を示す画素値については、オフセット数を１として導出することを特徴とする請求項２に記載の画像フィルタ装置。
【請求項８】
上記オフセット数導出手段は、上記単位領域のサイズが小さくなるほど、導出するオフセット数を小さくすることを特徴とする請求項１に記載の画像フィルタ装置。
【請求項９】
上記オフセット数導出手段は、上記単位領域のサイズに加え、画素値が輝度を示すものか、色差を示すものかに応じて導出するオフセット数を決定することを特徴とする請求項８に記載の画像フィルタ装置。
【請求項１０】
上記オフセット数導出手段は、輝度を示す画素値に対応するオフセット数を４、色差を示す画素値に対応するオフセット数を１として導出することを特徴とする請求項１に記載の画像フィルタ装置。
【請求項１１】
上記フィルタ手段が加算するオフセットの値域は、上記オフセット数導出手段が導出したオフセット数が多くなるほど狭くなることを特徴とする請求項１〜１０のいずれか１項に記載の画像フィルタ装置。
【請求項１２】
符号化データから復号した予測残差に、生成した予測画像を加算して復号画像を生成する画像復号装置であって、
上記予測残差に上記予測画像を加算した加算画像の単位領域に含まれる各画素値に、複数のオフセットの中から選択したオフセットから導出した実オフセットを加算するオフセット加算手段と、
上記オフセット加算手段が実オフセットを加算した画像を復号画像として出力する出力手段と、を備え、
上記オフセット加算手段には、
選択対象となる上記複数のオフセットの数を導出するオフセット数導出手段と、
上記画素値毎に、上記オフセット数導出手段が導出した数のオフセットの中から当該画素値に加算する実オフセットを導出するためのオフセットを選択するオフセット選択手段と
上記オフセット選択手段が選択したオフセットから当該画素値に加算する実オフセットを導出する実オフセット導出手段と、
上記オフセット導出手段が導出した実オフセットを当該画素値に加算するフィルタ手段と、が含まれていることを特徴とする画像復号装置。
【請求項１３】
生成した予測画像と原画像との差分である予測残差を符号化することによって符号化データを生成する画像符号化装置であって、
原画像を符号化し、復号した復号画像の単位領域に含まれる各画素値に、複数のオフセットの中から選択したオフセットから導出した実オフセットを加算するオフセット加算手段と、
上記オフセット加算手段が実オフセットを加算した画像から上記予測画像を生成する予測画像生成手段と、
上記予測画像生成手段が生成した予測画像と原画像との差分である予測残差を符号化する符号化手段と、を備え、
上記オフセット加算手段には、
選択対象となる上記複数のオフセットの数を導出するオフセット数導出手段と、
上記画素値毎に、上記オフセット数導出手段が導出した数のオフセットの中から当該画素値に加算する実オフセットを導出するためのオフセットを選択するオフセット選択手段と
上記オフセット選択手段が選択したオフセットから当該画素値に加算する実オフセットを導出する実オフセット導出手段と、
上記オフセット導出手段が導出したオフセットを当該画素値に加算するフィルタ手段と、が含まれていることを特徴とする画像符号化装置。
【請求項１４】
画像復号装置において復号される、予測画像と原画像との差分である予測残差が符号化された符号化データのデータ構造であって、
上記予測残差を復号して得られる画素値に加算されるオフセットとして選択される対象である複数のオフセットの数を示すオフセット数情報を含むことを特徴とする符号化データのデータ構造。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像のフィルタリングを行う画像フィルタ装置に関する。また、そのような画像フィルタを備えている符号化装置、および、復号装置に関する。また、そのような復号装置によって復号される符号化データのデータ構造に関する。
【背景技術】
【０００２】
動画像を効率的に伝送または記録するために、動画像を符号化することによって符号化データを生成する動画像符号化装置（符号化装置）、および、当該符号化データを復号することによって復号画像を生成する動画像復号装置（復号装置）が用いられている。具体的な動画像符号化方式としては、例えば、Ｈ．２６４／ＭＰＥＧ−４．ＡＶＣに採用されている方式、その後継コーデックであるＨＭ（HEVC TestModel）ソフトウェアに採用されている方式などが挙げられる。
【０００３】
このような符号化方式において、動画像を構成する画像（ピクチャ）は、画像を分割することにより得られるスライス、スライスを分割することにより得られる最大符号化単位（LCU:Largest Coding Unit、ツリーブロックとも呼ばれる）、最大符号化単位を分割することにより得られる符号化単位（CU:Coding Unit、符号化ノードとも呼ばれる）、および、符号化単位を分割することにより得られるブロックおよびパーティションからなる階層構造により管理され、多くの場合、ブロックを最小単位として符号化される。
【０００４】
また、このような符号化方式においては、通常、入力画像を符号化し、復号することによって得られる局所復号画像に基づいて予測画像が生成され、当該予測画像と入力画像との差分データが符号化される。また、予測画像の生成方法としては、画面間予測（インター予測）、および、画面内予測（イントラ予測）と呼ばれる方法が知られている。
【０００５】
さらに、非特許文献１には、復号画像のブロック歪みを低減させるデブロッキングフィルタの後段であって、適応的に決定され符号化データ中に符号化されたパラメータを用いてフィルタ処理を行うループフィルタが２つ開示されている。一つは、フィルタパラメータとしてフィルタ係数を用いたフィルタ処理を行う適応的ループフィルタ（「適応フィルタ」、ＡＬＦとも呼ぶ）であり、もう一つは適応的オフセットフィルタ（「適応オフセットフィルタ」「SAO (Sample Adaptive Offset)」とも呼ぶ）である。この適応オフセットフィルタは、デブロッキングフィルタから出力される画像の各画素値に対して、適応的に設定されたオフセットを加算するというものである。
【０００６】
このような適応オフセットフィルタを備えることによって、符号化歪みをより効果的に抑制することができる。
【０００７】
また、非特許文献２には、適応オフセットフィルタにおけるオフセット数を４つとして、フィルタ処理を行うことが記載されている。
【０００８】
また、非特許文献３には、適応オフセットフィルタにてフィルタ処理を行うときのオフセット数は４つのままであるが、符号化するオフセット数を１または２とすることが記載されている。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】「High efficiency video coding (HEVC) text specification draft 6」,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 7th Meeting: Geneva, CH, 21‐30 November, 2011, JCTVC-H1003dK
【非特許文献２】「ALF text」, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG11, 9th Meeting: Geneva, CH, 27 April ‐ 7 May, 2012, JCTVC-I0603
【非特許文献３】「Reduced number of band offsets per LCU」, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 9th Meeting: Geneva, CH, 27-07 APRIL, 2012, JCTVC-I0162
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上述した非特許文献２に記載された方法では、オフセット数が４つあるため、フィルタ効果を見込むこことができるが、オフセットの符号量が多くなるため、フィルタ適用領域が限定されてしまう。
【００１１】
また、非特許文献３に記載された方法では、符号化するオフセット数が１または２のため、オフセットの符号量は少なくすることができる。しかしながら、オフセット数が少ないためにオフセットの自由度が小さくなり、フィルタ適用領域におけるフィルタ効果が小さくなってしまう。
【００１２】
本発明は、上記の問題に鑑みてなされたものであり、その目的は大きなフィルタ適用面積を実現しつつ、高いフィルタ効果を実現する画像フィルタ装置等を実現することにある。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、本発明に係る画像フィルタ装置は、複数の単位領域から構成される入力画像の各画素値に、複数のオフセットの中から選択したオフセットから導出した実オフセットを加算する画像フィルタ装置であって、選択対象となる上記複数のオフセットの数を導出するオフセット数導出手段と、上記画素値毎に、上記オフセット数導出手段が導出した数のオフセットの中から当該画素値に加算する実オフセットを導出するためのオフセットを選択するオフセット選択手段と、上記オフセット選択手段が選択したオフセットから当該画素値に加算する実オフセットを導出する実オフセット導出手段と、上記実オフセット導出手段が導出した実オフセットを当該画素値に加算するフィルタ手段と、を備えていることを特徴としている。
【００１４】
上記の構成によれば、画素値に加算する実オフセットを導出するための、複数のオフセットのオフセット数を導出する。よって、実オフセットを導出するために用いるオフセット数を、予め決められた数とする必要がなく、任意の数とすることができる。よって、単位領域の特性に合わせてオフセット数の数を決定することができ、オフセット数を多くしてフィルタ効果を高めたい場合とオフセット数を少なくしてフィルタをかける領域を広げたい場合とに対応することができる。したがって、大きなフィルタ適用面積を実現しつつ、高いフィルタ効果を実現することができる。
【００１５】
本発明に係る画像フィルタ装置では、上記複数のオフセットの数を示すオフセット数情報を含む符号化データを復号する復号手段を備え、上記オフセット数導出手段は、上記復号手段が復号したオフセット数情報を参照してオフセット数を導出してもよい。
【００１６】
上記の構成によれば、符号化データからオフセット数を導出することができる。よって、符号化データの生成時に、原画像と復号画像との特性に応じて適切なオフセット数を設定、符号化することが可能であり、画像フィルタ装置で適切なオフセット数を用いたフィルタ処理を行うことができる。そのため高いフィルタ効果を得ることができる。
【００１７】
本発明に係る画像フィルタ装置では、上記符号化データは、上記単位領域が所定サイズ以上の場合、上記オフセット数情報を含んでおり、上記オフセット数導出手段は、上記単位領域が所定サイズ以上の場合、上記復号手段が復号したオフセット数情報を参照してオフセット数を導出し、上記単位領域が所定サイズよりも小さい場合、オフセット数を１として導出するものであってもよい。
【００１８】
単位領域が小さい場合は、画像に含まれる単位領域の数が増えるため、オフセット数が多いと符号量が増えてしまう。上記の構成によれば、単位領域が所定サイズ以上の場合はオフセット数を復号し、単位領域が所定サイズよりも小さい場合はオフセット数を１とするので、符号量が増えてしまうことを防止することができ、符号化効率を向上させることができる。また、単位領域の数とオフセット数の積で定まるオフセットを格納するためのメモリサイズを小さくすることができる。
【００１９】
本発明に係る画像フィルタ装置では、上記符号化データは、輝度を示す画素値に加算するオフセットに関するオフセット数情報を含んでおり、上記オフセット数導出手段は、輝度を示す画素値については、上記復号手段が復号したオフセット数情報を参照してオフセット数を導出し、色差を示す画素値については、輝度を示す画素値について導出したオフセット数を用いてオフセット数を導出するものであってもよい。
【００２０】
上記の構成によれば、色差を示す画素値に対応するオフセット数を符号化する必要がないので符号量を減らすことができ、符号化効率を向上させることができる。
【００２１】
本発明に係る画像フィルタ装置では、上記オフセット数導出手段は、色差を示す画素値についてのオフセット数を、輝度を示す画素値について導出したオフセット数と同数として導出するものであってもよい。
【００２２】
上記の構成によれば、色差を示す画素値に対応するオフセット数を符号化する必要がないので符号量を減らすことができ、符号化効率を向上させることができる。
【００２３】
本発明に係る画像フィルタ装置では、上記オフセット数導出手段は、色差を示す画素値についてのオフセット数を、輝度を示す画素値について導出したオフセット数の半数として導出するものであってもよい。
【００２４】
上記の構成によれば、色差を示す画素値に対応するオフセット数を符号化する必要がないので符号量を減らすことができ、符号化効率を向上させることができる。一般に輝度に比べ色差のフィルタ効果が小さいため、輝度、色差全体の符号化効率を向上させるためには、輝度に比べ色差のオフセット数を小さくすることが適当である。また、色差において単位領域当たりのオフセット数を小さくするため、色差に関するオフセットを格納するためのメモリサイズを小さくすることができる。
【００２５】
本発明に係る画像フィルタ装置では、上記符号化データは、輝度を示す画素値に加算するオフセットに関するオフセット数情報を含んでおり、上記オフセット数導出手段は、輝度を示す画素値に対応するオフセット数については、上記復号手段が復号したオフセット数情報を参照してオフセット数を導出し、色差を示す画素値については、オフセット数を１として導出するものであってもよい。
【００２６】
上記の構成によれば、色差を示す画素値に対応するオフセット数を符号化する必要がないので符号量を減らすことができ、符号化効率を向上させることができる。一般に輝度に比べ色差のフィルタ効果が小さいため、輝度、色差全体の符号化効率を向上させるためには、輝度に比べ色差のオフセット数を小さくすることが適当である。また、色差において単位領域当たりのオフセット数を小さくするため、色差に関するオフセットを格納するためのメモリサイズを小さくすることができる。
【００２７】
本発明に係る画像フィルタ装置では、上記オフセット数導出手段は、上記単位領域のサイズが小さくなるほど、導出するオフセット数を小さくするものであってもよい。
【００２８】
単位領域が小さい場合は、画像に含まれる単位領域の数が増えるため、オフセット数が多いとオフセットを格納するメモリサイズが増えてしまう。上記の構成によれば、単位領域が小さくなるほど、導出するオフセット数が小さくなるので、メモリサイズを小さくすることができる。
【００２９】
本発明に係る画像フィルタ装置では、上記オフセット数導出手段は、上記単位領域のサイズに加え、画素値が輝度を示すものか、色差を示すものかに応じて導出するオフセット数を決定するものであってもよい。
【００３０】
上記の構成によれば、画素値が輝度を示すものか、色差を示すものかに応じてオフセット数を導出するので、色成分に対応させてオフセット数を導出することができる。一般に輝度に比べ色差のフィルタ効果が小さいため、輝度、色差全体の符号化効率を向上させるためには、輝度に比べ色差のオフセット数を小さくすることが適当である。また、色差において単位領域当たりのオフセット数を小さくするため、色差に関するオフセットを格納するためのメモリサイズを小さくすることができる。
【００３１】
本発明に係る画像フィルタ装置では、上記オフセット数導出手段は、輝度を示す画素値に対応するオフセット数を４、色差を示す画素値に対応するオフセット数を１として導出するものであってもよい。
【００３２】
上記の構成によれば、色成分に対応させてオフセット数を導出することができる。一般に輝度に比べ色差のフィルタ効果が小さいため、輝度、色差全体の符号化効率を向上させるためには、輝度に比べ色差のオフセット数を小さくすることが適当である。また、色差において単位領域当たりのオフセット数を小さくするため、色差に関するオフセットを格納するためのメモリサイズを小さくすることができる。
【００３３】
本発明に係る画像フィルタ装置では、上記フィルタ手段が加算するオフセットの値域は、上記オフセット数導出手段が導出したオフセット数が多くなるほど狭くなるものであってもよい。
【００３４】
上記の構成によれば、オフセット数が多くなると、オフセットの値域が狭くなるので、オフセット数とオフセットの値域で定まる、単位領域あたりのオフセットを格納するためのメモリサイズを小さくすることができる。
【００３５】
上記課題を解決するために、本発明に係る画像復号装置は、符号化データから復号した予測残差に、生成した予測画像を加算して復号画像を生成する画像復号装置であって、上記予測残差に上記予測画像を加算した加算画像の単位領域に含まれる各画素値に、複数のオフセットの中から選択したオフセットから導出した実オフセットを加算するオフセット加算手段と、上記オフセット加算手段が実オフセットを加算した画像を復号画像として出力する出力手段と、を備え、上記オフセット加算手段には、選択対象となる上記複数のオフセットの数を導出するオフセット数導出手段と、上記画素値毎に、上記オフセット数導出手段が導出した数のオフセットの中から当該画素値に加算する実オフセットを導出するためのオフセットを選択するオフセット選択手段と上記オフセット選択手段が選択したオフセットから当該画素値に加算する実オフセットを導出する実オフセット導出手段と、上記オフセット導出手段が導出した実オフセットを当該画素値に加算するフィルタ手段と、が含まれていることを特徴としている。
【００３６】
上記の構成によれば、画素値に加算する実オフセットを導出するための、複数のオフセットのオフセット数を導出する。よって、実オフセットを導出するために用いるオフセット数を、予め決められた数とする必要がなく、任意の数とすることができる。よって、単位領域の特性に合わせてオフセット数の数を決定することができ、オフセット数を多くしてフィルタ効果を高めたい場合とオフセット数を少なくしてフィルタをかける領域を広げたい場合とに対応することができる。したがって、大きなフィルタ適用面積を実現しつつ、高いフィルタ効果を実現することができる。
【００３７】
上記課題を解決するために、本発明に係る画像符号化装置は、生成した予測画像と原画像との差分である予測残差を符号化することによって符号化データを生成する画像符号化装置であって、原画像を符号化し、復号した復号画像の単位領域に含まれる各画素値に、複数のオフセットの中から選択したオフセットから導出した実オフセットを加算するオフセット加算手段と、上記オフセット加算手段が実オフセットを加算した画像から上記予測画像を生成する予測画像生成手段と、上記予測画像生成手段が生成した予測画像と原画像との差分である予測残差を符号化する符号化手段と、を備え、上記オフセット加算手段には、選択対象となる上記複数のオフセットの数を導出するオフセット数導出手段と、上記画素値毎に、上記オフセット数導出手段が導出した数のオフセットの中から当該画素値に加算する実オフセットを導出するためのオフセットを選択するオフセット選択手段と上記オフセット選択手段が選択したオフセットから当該画素値に加算する実オフセットを導出する実オフセット導出手段と、上記オフセット導出手段が導出したオフセットを当該画素値に加算するフィルタ手段と、が含まれていることを特徴としている。
【００３８】
上記の構成によれば、画素値に加算する実オフセットを導出するための、複数のオフセットのオフセット数を導出する。よって、実オフセットを導出するために用いるオフセット数を、予め決められた数とする必要がなく、任意の数とすることができる。よって、単位領域の特性に合わせてオフセット数の数を決定することができ、オフセット数を多くしてフィルタ効果を高めたい場合とオフセット数を少なくしてフィルタをかける領域を広げたい場合とに対応することができる。したがって、大きなフィルタ適用面積を実現しつつ、高いフィルタ効果を実現することができる。
【００３９】
上記課題を解決するために、本発明に係る符号化データのデータ構造は、画像復号装置において復号される、予測画像と原画像との差分である予測残差が符号化された符号化データのデータ構造であって、上記予測残差を復号して得られる画素値に加算されるオフセットとして選択される対象である複数のオフセットの数を示すオフセット数情報を含むことを特徴としている。
【００４０】
上記の構成によれば、符号化データにオフセット数が含まれているので、符号化データを受信した装置において、符号化装置で設定された適当なオフセット数を、符号化データを用いて導出することができる。
【発明の効果】
【００４１】
以上のように、本発明に係る画像フィルタ装置は、選択対象となる複数のオフセットの数を導出するオフセット数導出手段と、画素値毎に、上記オフセット数導出手段が導出した数のオフセットの中から当該画素値に加算する実オフセットを導出するためのオフセットを選択するオフセット選択手段と、上記オフセット選択手段が選択したオフセットから当該画素値に加算する実オフセットを導出する実オフセット導出手段と、上記実オフセット導出手段が導出した実オフセットを当該画素値に加算するフィルタ手段と、を備えている構成である。
【００４２】
これにより、単位領域の特性に合わせてオフセット数の数を決定することができ、オフセット数を多くしてフィルタ効果を高めたい場合とオフセット数を少なくしてフィルタをかける領域を広げたい場合とに対応することができるという効果を奏する。したがって、大きなフィルタ適用面積を実現しつつ、高いフィルタ効果を実現することができるという効果を奏する。
【図面の簡単な説明】
【００４３】
【図１】本発明の実施の形態に係る適応オフセットフィルタの構成を示すブロック図である。
【図２】本発明の実施形態に係る符号化データの構成を説明するための図であって、（ａ）は、シーケンスＳＥＱを規定するシーケンスレイヤを示しており、（ｂ）は、ピクチャＰＩＣＴを規定するピクチャレイヤを示しており、（ｃ）は、スライスＳを規定するスライスレイヤを示しており、（ｄ）は、ツリーブロック（Tree block）ＴＢＬＫを規定するツリーブロックレイヤを示しており、（ｅ）は、ツリーブロックＴＢＬＫに含まれる符号化単位（Coding Unit；ＣＵ）を規定するＣＵレイヤを示している。
【図３】上記実施形態に係る動画像復号装置の構成を示すブロック図である。
【図４】上記実施形態に係る符号化データのシーケンスパラメータセットＳＰＳに含まれるシンタクスを示す図である。
【図５】上記実施形態における、シンタクスslice_header()を示す図である。
【図６】上記実施形態における、シンタクスslice_data()を示す図である。
【図７】上記実施形態における、シンタクスsao_unit_cabac()を示す図である。
【図８】従来技術における、シンタクスsao_offset_cabac()を示す図である。
【図９】上記実施形態における、シンタクスsao_offset_cabac()を示す図である。
【図１０】エッジオフセットにおいて、オフセット数を導出するための方法を説明する図であり、（ａ）はオフセット数が４つの場合を示す図であり、（ｂ）はオフセット数が２つの場合を示す図であり、（ｃ）はオフセット数が１つの場合を示す図である。
【図１１】（ａ）、（ｂ）は、バンドオフセットにおいて、オフセット数を導出するための方法を説明する図である。
【図１２】別の実施形態における、シンタクスsao_offset_cabac()を示す図である。
【図１３】さらに別の実施形態における、シンタクスsao_offset_cabac()を示す図である。
【図１４】色差と輝度とのオフセット数の関係を示す図であり、（ａ）は色差のオフセット数を１とする場合を示す図であり、（ｂ）は色差のオフセット数を輝度のオフセット数に依存する場合を示す図であり、（ｃ）は色差のオフセット数を輝度のオフセット数の半分とする場合を示す図である。
【図１５】シンタクスsao_offset_cabac()の別の例を示す図である。
【図１６】さらに別の実施形態における、シンタクスsao_offset_cabac()を示す図である。
【図１７】（ａ）、（ｂ）は、ＣＴＢサイズとオフセット数との関係を示す図である。
【図１８】色コンポーネントとオフセット数との関係を示す図である。
【図１９】（ａ）、（ｂ）は、色コンポーネントおよびＣＴＢサイズとオフセット数との関係を示す図である。
【図２０】オフセット数とオフセット値の範囲との関係を示す図であり、（ａ）はオフセット数とオフセット値の範囲との関係を示す図であり、（ｂ）はbitDepth=8の場合のオフセット数とオフセット値の範囲との関係を示す図であり、（ｃ）はオフセット値の範囲を導出する式を示す図である。
【図２１】オフセット数とオフセット値の範囲との関係を示す図であり、（ａ）はオフセット数とオフセット値の範囲との関係を示す図であり、（ｂ）はbitDepth=8の場合のオフセット数とオフセット値の範囲との関係を示す図であり、（ｃ）はオフセット値の範囲を導出する式を示す図である。
【図２２】オフセット数とオフセット値の範囲との関係を示す図であり、（ａ）はオフセット数とオフセット値の範囲との関係を示す図であり、（ｂ）はbitDepth=8の場合のオフセット数とオフセット値の範囲との関係を示す図であり、（ｃ）はオフセット値の範囲を導出する式を示す図である。
【図２３】上記実施形態に係る動画像符号化装置の構成を示すブロック図である。
【図２４】上記実施形態に係る動画像符号化装置の備える適応オフセットフィルタの構成を示すブロック図である。
【図２５】動画像復号装置および動画像符号化装置が、動画像の送受信に利用できることを説明するための図であり、（ａ）は、動画像符号化装置を搭載した送信装置の構成を示したブロック図であり、（ｂ）は、動画像復号装置を搭載した受信装置の構成を示したブロック図である。
【図２６】動画像復号装置および動画像符号化装置が、動画像の記録および再生に利用できることを説明するための図であり、（ａ）は、動画像符号化装置２を搭載した記録装置の構成を示したブロック図であり、（ｂ）は、動画像復号装置を搭載した再生装置の構成を示したブロックである。
【発明を実施するための形態】
【００４４】
〔実施の形態１〕
（符号化データ＃１）
本実施形態に係る動画像符号化装置２および動画像復号装置１の詳細な説明に先立って、動画像符号化装置２によって生成され、動画像復号装置１によって復号される符号化データ＃１のデータ構造について説明する。
【００４５】
図２は、符号化データ＃１におけるデータの階層構造を示す図である。符号化データ＃１は、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。図２の（ａ）〜（ｅ）は、それぞれ、シーケンスＳＥＱを既定するシーケンスレイヤ、ピクチャＰＩＣＴを規定するピクチャレイヤ、スライスＳを規定するスライスレイヤ、ツリーブロック（Tree block）ＴＢＬＫを規定するツリーブロックレイヤ、ツリーブロックＴＢＬＫに含まれる符号化単位（Coding Unit；ＣＵ）を規定するＣＵレイヤを示す図である。
【００４６】
（シーケンスレイヤ）
シーケンスレイヤでは、処理対象のシーケンスＳＥＱ（以下、対象シーケンスとも称する）を復号するために動画像復号装置１が参照するデータの集合が規定されている。シーケンスＳＥＱは、図２の（ａ）に示すように、シーケンスパラメータセットＳＰＳ（Sequence Parameter Set）、ピクチャパラメータセットＰＰＳ（Picture Parameter Set）、適応パラメータセットＡＰＳ（Adaptation Parameter Set）、ピクチャＰＩＣＴ１〜ＰＩＣＴNP（ＮＰはシーケンスＳＥＱに含まれるピクチャの総数）、及び、付加拡張情報ＳＥＩ（Supplemental Enhancement Information）を含んでいる。
【００４７】
シーケンスパラメータセットＳＰＳでは、対象シーケンスを復号するために動画像復号装置１が参照する符号化パラメータの集合が規定されている。ＳＰＳの詳細については後述する。
【００４８】
ピクチャパラメータセットＰＰＳでは、対象シーケンス内の各ピクチャを復号するために動画像復号装置１が参照する符号化パラメータの集合が規定されている。例えば、ピクチャの復号に用いられる量子化幅の基準値（pic_init_qp_minus26）や重み付き予測の適用を示すフラグ（weighted_pred_flag）が含まれる。なお、ＰＰＳは複数存在してもよい。その場合、対象シーケンス内の各ピクチャから複数のＰＰＳの何れかを選択する。
【００４９】
適応パラメータセットＡＰＳは、対象シーケンス内の各スライスを復号するために動画像復号装置１が参照する符号化パラメータの集合が規定されている。なお、ＡＰＳは複数存在してもよい。その場合、対象シーケンス内の各スライスから複数のＡＰＳの何れかを選択する。
【００５０】
（ピクチャレイヤ）
ピクチャレイヤでは、処理対象のピクチャＰＩＣＴ（以下、対象ピクチャとも称する）を復号するために動画像復号装置１が参照するデータの集合が規定されている。ピクチャＰＩＣＴは、図２の（ｂ）に示すように、ピクチャヘッダＰＨ、および、スライスＳ1〜ＳNSを含んでいる（NSはピクチャＰＩＣＴに含まれるスライスの総数）。
【００５１】
なお、以下、スライスＳ1〜ＳNSのそれぞれを区別する必要が無い場合、符号の添え字を省略して記述することがある。また、以下に説明する符号化データ＃１に含まれるデータであって、添え字を付している他のデータについても同様である。
【００５２】
ピクチャヘッダＰＨには、対象ピクチャの復号方法を決定するために動画像復号装置１が参照する符号化パラメータ群が含まれている。なお、符号化パラメータ群は、必ずしもピクチャヘッダＰＨ内に直接含んでいる必要はなく、例えばピクチャパラメータセットＰＰＳへの参照（pic_parameter_set_id）を含むことで、間接的に含めても良い。
【００５３】
（スライスレイヤ）
スライスレイヤでは、処理対象のスライスＳ（対象スライスとも称する）を復号するために動画像復号装置１が参照するデータの集合が規定されている。スライスＳは、図２の（ｃ）に示すように、スライスヘッダＳＨ、および、ツリーブロックＴＢＬＫ1〜ＴＢＬＫNC（ＮＣはスライスＳに含まれるツリーブロックの総数）のシーケンスを含んでいる。
【００５４】
スライスヘッダＳＨには、対象スライスの復号方法を決定するために動画像復号装置１が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報（slice_type）は、スライスヘッダＳＨに含まれる符号化パラメータの一例である。
【００５５】
スライスタイプ指定情報により指定可能なスライスタイプとしては、（１）符号化の際にイントラ予測のみを用いるＩスライス、（２）符号化の際に単方向予測、または、イントラ予測を用いるＰスライス、（３）符号化の際に単方向予測、双方向予測、または、イントラ予測を用いるＢスライスなどが挙げられる。
【００５６】
なお、スライスヘッダＳＨには、上記シーケンスレイヤに含まれる、ピクチャパラメータセットＰＰＳへの参照（pic_parameter_set_id）、適応パラメータセットＡＰＳへの参照（aps_id）を含んでいても良い。
【００５７】
また、スライスヘッダＳＨには、動画像復号装置１の備える適応オフセットフィルタによって参照されるＳＡＯパラメータＳＡＯＰが含まれている。ＳＡＯパラメータＳＡＯＰの詳細については後述する。
【００５８】
なお、スライスはピクチャの組（シーケンス）から構成され、スライスは符号化ツリーブロック（CTB:Coding Tree block）の組から構成される。ＣＴＢは、スライスを構成する固定サイズ（例えば６４×６４）のブロックであり、最大符号化単位（ＬＣＵ:Largest Cording Unit）と呼ぶこともある。スライスレイヤを構成する符号化データの粒度は、ＣＴＢよりも小さい単位とすることができる。すなわち、スライスレイヤはＣＴＢの途中から開始すること、及び、ＣＴＢの途中で終了することができる。以下、ＣＴＢの途中にスライス境界がないＣＴＢを非分割ＣＴＢ、ＣＴＢの途中にスライス境界があるＣＴＢを分割ＣＴＢと呼ぶ。スライスレイヤの粒度は、SliceGranularityにより定まる。
【００５９】
（ツリーブロックレイヤ）
ツリーブロックレイヤでは、処理対象の符号化ツリーブロックを復号するために動画像復号装置１が参照するデータの集合が規定されている。ツリーブロックレイヤの符号化データは、ツリーブロックＴＢＬＫ（以下、対象ツリーブロックとも称する）から構成される。
【００６０】
ツリーブロックＴＢＬＫは、ツリーブロックヘッダＴＢＬＫＨと、符号化単位情報ＣＵ1〜ＣＵNL（ＮＬはツリーブロックＴＢＬＫに含まれる符号化単位情報の総数）とを含む。ここで、まず、ツリーブロックＴＢＬＫと、符号化単位情報ＣＵとの関係について説明すると次のとおりである。
【００６１】
ツリーブロックＴＢＬＫは、イントラ予測またはインター予測、および、変換の各処理で用いるブロックサイズを特定するためのユニットに分割される。
【００６２】
ツリーブロックＴＢＬＫの上記ユニットは、再帰的な４分木分割により分割されている。この再帰的な４分木分割により得られる木構造のノードのことを符号化ツリー（coding tree）と称する。
【００６３】
以下、符号化ツリーは、中間ノードの場合には、さらに符号化ツリーを含む形で再帰的に分割される。符号化ツリーが末端のノードであるリーフ（leaf）の場合には、符号化ノード（coding node）として参照する。また、符号化ノードは、符号化処理の基本的な単位となるため、以下、符号化ノードのことを、符号化単位（ＣＵ）とも称する。
【００６４】
つまり、符号化単位情報（以下、ＣＵ情報と称する）ＣＵ1〜ＣＵNLは、ツリーブロックＴＢＬＫを再帰的に４分木分割して得られる各符号化ノード（符号化単位）に対応する情報である。
【００６５】
また、符号化ツリーのルート（root）は、ツリーブロックＴＢＬＫに対応付けられる。換言すれば、ツリーブロックＴＢＬＫは、複数の符号化ノードを再帰的に含む４分木分割の木構造の最上位ノードに対応付けられる。
【００６６】
なお、各符号化ノードに対応する画像領域のサイズは、当該符号化ノードが直接に属する符号化ノード（すなわち、当該符号化ノードの１階層上位のノードのユニット）のサイズの縦横とも半分である。
【００６７】
また、ツリーブロックＴＢＬＫのサイズ、および、各符号化ノードのとり得るサイズは、符号化データ＃１のシーケンスパラメータセットＳＰＳに含まれる、最小符号化ノードのサイズ指定情報（log2_min_coding_block_size_minus3）および最大符号化ノードと最小符号化ノードの階層深度の差分（log2_diff_max_min_coding_block_size）に依存する。例えば、最小符号化ノードのサイズが８×８画素であって、最大符号化ノードと最小符号化ノードの階層深度の差分が３である場合、ツリーブロックＴＢＬＫのサイズが６４×６４画素であって、符号化ノードのサイズは、４種類のサイズ、すなわち、６４×６４画素、３２×３２画素、１６×１６画素、および、８×８画素の何れかをとり得る。
【００６８】
（ツリーブロックヘッダ）
ツリーブロックヘッダＴＢＬＫＨには、対象ツリーブロックの復号方法を決定するために動画像復号装置１が参照する符号化パラメータが含まれる。具体的には、図２の（ｄ）に示すように、対象ツリーブロックの各ＣＵへの分割パターンを指定するツリーブロック分割情報ＳＰ＿ＴＢＬＫ、および、量子化ステップの大きさを指定する量子化パラメータ差分Δｑｐ（qp_delta）が含まれる。
【００６９】
ツリーブロック分割情報ＳＰ＿ＴＢＬＫは、ツリーブロックを分割するための符号化ツリーを表す情報であり、具体的には、対象ツリーブロックに含まれる各ＣＵの形状、サイズ、および、対象ツリーブロック内での位置を指定する情報である。
【００７０】
なお、ツリーブロック分割情報ＳＰ＿ＴＢＬＫは、ＣＵの形状やサイズを明示的に含んでいなくてもよい。例えばツリーブロック分割情報ＳＰ＿ＴＢＬＫは、対象ツリーブロック全体またはツリーブロックの部分領域を四分割するか否かを示すフラグ(split_coding_unit_flag)の集合であってもよい。この場合、ツリーブロックの形状やサイズを併用することで各ＣＵの形状やサイズを特定できる。
【００７１】
また、量子化パラメータ差分Δｑｐは、対象ツリーブロックにおける量子化パラメータｑｐと、当該対象ツリーブロックの直前に符号化されたツリーブロックにおける量子化パラメータｑｐ’との差分ｑｐ−ｑｐ’である。
【００７２】
（ＣＵレイヤ）
ＣＵレイヤでは、処理対象のＣＵ（以下、対象ＣＵとも称する）を復号するために動画像復号装置１が参照するデータの集合が規定されている。
【００７３】
ここで、ＣＵ情報ＣＵに含まれるデータの具体的な内容の説明をする前に、ＣＵに含まれるデータの木構造について説明する。符号化ノードは、予測ツリー（prediction tree；ＰＴ）および変換ツリー（transform tree；ＴＴ）のルートとなる。予測ツリーおよび変換ツリーについて説明すると次のとおりである。
【００７４】
予測ツリーにおいては、符号化ノードが１または複数の予測ブロックに分割され、各予測ブロックの位置とサイズとが規定される。別の表現でいえば、予測ブロックは、符号化ノードを構成する１または複数の重複しない領域である。また、予測ツリーは、上述の分割により得られた１または複数の予測ブロックを含む。
【００７５】
予測処理は、この予測ブロックごとに行われる。以下、予測の単位である予測ブロックのことを、予測単位（prediction unit；ＰＵ）とも称する。
【００７６】
予測ツリーにおける分割の種類は、大まかにいえば、イントラ予測の場合と、インター予測の場合との２つがある。
【００７７】
イントラ予測の場合、分割方法は、２Ｎ×２Ｎ（符号化ノードと同一サイズ）と、Ｎ×Ｎとがある。
【００７８】
また、インター予測の場合、分割方法は、２Ｎ×２Ｎ（符号化ノードと同一サイズ）、２Ｎ×Ｎ、２Ｎ×ｎＵ、２Ｎ×ｎＤ、Ｎ×２Ｎ、ｎＬ×２Ｎ、ｎＲ×２Ｎ、および、Ｎ×Ｎなどがある。なお、２Ｎ×ｎＵは、２Ｎ×２Ｎの符号化ノードを上から順に２Ｎ×0.5Ｎと２Ｎ×1.5Ｎの２領域に分割することを示す。２Ｎ×ｎＤは、２Ｎ×２Ｎの符号化ノードを上から順に２Ｎ×1.5Ｎと２Ｎ×0.5Ｎの２領域に分割することを示す。ｎＬ×２Ｎは、２Ｎ×２Ｎの符号化ノードを左から順に0.5Ｎ×２Ｎと1.5Ｎ×２Ｎの２領域に分割することを示す。ｎＲ×２Ｎは、２Ｎ×２Ｎの符号化ノードを左から順に1.5Ｎ×２Ｎと0.5Ｎ×1.5Ｎの２領域に分割することを示す。
【００７９】
また、変換ツリーにおいては、符号化ノードが１または複数の変換ブロックに分割され、各変換ブロックの位置とサイズとが規定される。別の表現でいえば、変換ブロックは、符号化ノードを構成する１または複数の重複しない領域のことである。また、変換ツリーは、上述の分割より得られた１または複数の変換ブロックを含む。
【００８０】
変換ツリーにおける分割には、符号化ノードと同一のサイズの領域を変換ブロックとして割り付けるものと、上述したツリーブロックの分割と同様、再帰的な４分木分割によるものがある。
【００８１】
変換処理は、この変換ブロックごとに行われる。以下、変換の単位である変換ブロックのことを、変換単位（transform unit；ＴＵ）とも称する。
【００８２】
（ＣＵ情報のデータ構造）
続いて、図２の（ｅ）を参照しながらＣＵ情報ＣＵに含まれるデータの具体的な内容について説明する。図２の（ｅ）に示すように、ＣＵ情報ＣＵは、具体的には、スキップフラグＳＫＩＰ、ＰＴ情報ＰＴＩ、および、ＴＴ情報ＴＴＩを含んでいる。
【００８３】
スキップフラグＳＫＩＰは、対象のＣＵについて、スキップモードが適用されているか否かを示すフラグであり、スキップフラグＳＫＩＰの値が１の場合、すなわち、対象ＣＵにスキップモードが適用されている場合、そのＣＵ情報ＣＵにおけるＰＴ情報ＰＴＩの一部、および、ＴＴ情報ＴＴＩは省略される。なお、スキップフラグＳＫＩＰは、Ｉスライスでは省略される。
【００８４】
ＰＴ情報ＰＴＩは、ＣＵに含まれるＰＴに関する情報である。換言すれば、ＰＴ情報ＰＴＩは、ＰＴに含まれる１または複数のＰＵそれぞれに関する情報の集合であり、動画像復号装置１により予測画像を生成する際に参照される。ＰＴ情報ＰＴＩは、図２の（ｅ）に示すように、予測タイプ情報ＰＴｙｐｅ、および、予測情報ＰＩｎｆｏを含んでいる。
【００８５】
予測タイプ情報ＰＴｙｐｅは、対象ＰＵについての予測画像生成方法として、イントラ予測を用いるのか、または、インター予測を用いるのかを指定する情報である。
【００８６】
予測情報ＰＩｎｆｏは、予測タイプ情報ＰＴｙｐｅが何れの予測方法を指定するのかに応じて、イントラ予測情報、または、インター予測情報より構成される。以下では、イントラ予測が適用されるＰＵをイントラＰＵとも呼称し、インター予測が適用されるＰＵをインターＰＵとも呼称する。
【００８７】
また、予測情報ＰＩｎｆｏは、対象ＰＵの形状、サイズ、および、位置を指定する情報が含まれる。上述のとおり予測画像の生成は、ＰＵを単位として行われる。予測情報ＰＩｎｆｏの詳細については後述する。
【００８８】
ＴＴ情報ＴＴＩは、ＣＵに含まれるＴＴに関する情報である。換言すれば、ＴＴ情報ＴＴＩは、ＴＴに含まれる１または複数のＴＵそれぞれに関する情報の集合であり、動画像復号装置１により残差データを復号する際に参照される。なお、以下、ＴＵのことをブロックと称することもある。
【００８９】
ＴＴ情報ＴＴＩは、図２の（ｅ）に示すように、対象ＣＵの各変換ブロックへの分割パターンを指定するＴＴ分割情報ＳＰ＿ＴＴ、および、量子化予測残差ＱＤ1〜ＱＤNT（ＮＴは、対象ＣＵに含まれるブロックの総数）を含んでいる。
【００９０】
ＴＴ分割情報ＳＰ＿ＴＴは、具体的には、対象ＣＵに含まれる各ＴＵの形状、サイズ、および、対象ＣＵ内での位置を決定するための情報である。例えば、ＴＴ分割情報ＳＰ＿ＴＴは、対象となるノードの分割を行うのか否かを示す情報（split_transform_unit_flag）の集合により構成できる。
【００９１】
また、例えば、ＣＵのサイズが、６４×６４の場合、分割により得られる各ＴＵは、３２×３２画素から４×４画素までのサイズをとり得る。
【００９２】
各量子化予測残差ＱＤは、動画像符号化装置２が以下の処理１〜３を、処理対象のブロックである対象ブロックに施すことによって生成した符号化データである。
【００９３】
処理１：符号化対象画像から予測画像を減算した予測残差を周波数領域に直交変換（ＤＣＴ変換（Discrete Cosine Transform）またはＤＳＴ変換（Discrete Sine Transform）する；
処理２：処理１にて得られた変換係数を量子化する；
処理３：処理２にて量子化された変換係数を可変長符号化する；
なお、上述した量子化パラメータｑｐは、動画像符号化装置２が変換係数を量子化する際に用いた量子化ステップＱＰの大きさを表す（ＱＰ＝２^(qp/6)）。
【００９４】
（予測情報ＰＩｎｆｏ）
上述のとおり、予測情報ＰＩｎｆｏには、インター予測情報およびイントラ予測情報の２種類がある。
【００９５】
インター予測情報には、動画像復号装置１が、インター予測によってインター予測画像を生成する際に参照される符号化パラメータが含まれる。より具体的には、インター予測情報には、対象ＣＵの各インターＰＵへの分割パターンを指定するインターＰＵ分割情報、および、各インターＰＵについてのインター予測パラメータが含まれる。
【００９６】
インター予測パラメータには、参照画像インデックスと、推定動きベクトルインデックスと、動きベクトル残差とが含まれる。
【００９７】
一方、イントラ予測情報には、動画像復号装置１が、イントラ予測によってイントラ予測画像を生成する際に参照される符号化パラメータが含まれる。より具体的には、イントラ予測情報には、対象ＣＵの各イントラＰＵへの分割パターンを指定するイントラＰＵ分割情報、および、各イントラＰＵについてのイントラ予測パラメータが含まれる。イントラ予測パラメータは、各イントラＰＵについてのイントラ予測方法（予測モード）を指定するためのパラメータである。
【００９８】
（シーケンスパラメータセットＳＰＳ）
図４は、本実施形態に係る符号化データ＃１のシーケンスパラメータセットＳＰＳ（図４においてsequence_parameter_set_rbsp()と表記）に含まれるシンタクス要素の一部を示す。
【００９９】
profile_idx、level_idxはそれぞれビットストリームが適合するプロファイルとレベルを示す。seq_parameter_set_idは、パラメータセットの識別子を示す。chroma_format_idcは、対象シーケンスのカラーフォーマットを示す。pic_width_inluma_samplesとpic_height_in_luma_samplesはそれぞれ対象シーケンスに含まれるピクチャサイズの輝度画素単位での縦または横の長さを示す。sample_adaptive_offset_enable_flagは、対象シーケンスの復号時に適応オフセットフィルタを適用するか否かを示す。adaptive_loop_filter_enable_flagは、対象シーケンスの復号時に適応フィルタを適用するか否かを示す。
【０１００】
（ＳＨＳＡＯパラメータＳＡＯＰ＿Ｓ）
図５は、本実施形態に係る符号化データ＃１のスライスヘッダＳＨ（図５においてslice_header()と表記）の一部として含まれる、ＳＨＳＡＯパラメータＳＡＯＰ＿Ｓのシンタクス要素を示す図である。ＳＨＳＡＯパラメータＳＡＯＰ＿Ｓは、概略的には、各ツリーブロックに対する適応オフセットフィルタ処理のパラメータの格納方法を示す情報である。slice_sao_interleaving_flagは、各ツリーブロックに対して適用する適応オフセットフィルタのパラメータを、スライスデータ内の各ツリーブロックの符号化データにインターリーブして格納しているか否かを示す。このとき、インターリーブして格納される適応オフセットフィルタのパラメータを、ＣＴＢＳＡＯパラメータＳＡＯＰ＿Ｃと呼ぶ。slice_sao_interleaving_flagの値が偽であれば、ＳＡＯパラメータはツリーブロックの符号化データにインターリーブされていないことを示す。slice_sao_interleaving_flagの値が真であれば、ＳＡＯパラメータはツリーブロックの符号化データにインターリーブされて符号化されていることを示す。slice_sao_interleaving_flagの値が偽の場合には、ＳＡＯパラメータを参照すべきＡＰＳが、対象スライスヘッダＳＨ内のシンタクスaps_idによって指定される。
【０１０１】
slice_sample_adaptiveoffset_flagは、対象スライスにおいて、適応オフセットフィルタ処理が有効か否かを示す。sao_cb_enable_flagとsao_cr_enable_flagは、それぞれ、ピクチャの対応する色差プレーン（ＣｂプレーンとＣｒプレーン）において適応フィルタを適用するか否かを示すフラグである。
【０１０２】
（ＣＴＢＳＡＯパラメータＳＡＯＰ＿Ｃ）
図６は、本実施形態に係る符号化データ＃１のスライスデータＳＤ（図６においてslice_data()と表記）の一部として含まれる、ＣＴＢＳＡＯパラメータＳＡＯＰ＿Ｃの各シンタクス要素を示す図である。ＣＴＢＳＡＯパラメータＳＡＯＰ＿Ｃは、概略的には、ＣＴＢＳＡＯユニット情報（sao_unit_cabac()）およびＣＴＢＳＡＯオフセット情報（sao_unit_cabac()）をシンタクス要素として含む。
【０１０３】
（ＣＴＢＳＡＯユニット）
図７は、本実施形態に係る符号化データ＃１のＣＴＢＳＡＯユニット（図７においてsao_unit_cabac()と表記）のシンタクスを示す図である。ＣＴＢＳＡＯユニットはＳＡＯの処理単位を表し、１つ以上のツリーブロックに関連付けられるシンタクスであり、対応するツリーブロックの符号化データの付近に配置される。ＣＴＢＳＡＯユニットが処理対象とする画像上の領域は、対応するツリーブロックが示す領域となる。ＣＴＢＳＡＯユニットは、概略的には、ＣＴＢＳＡＯオフセット情報（sao_offset_cabac()）、および、ＣＴＢＳＡＯオフセット情報のマージ制御情報（sao_merge_left_flag, sao_merge_up_flag）をシンタクス要素として含む。sao_merge_left_flagは、対象ツリーブロックのＣＴＢＳＡＯオフセット情報を、対象ツリーブロックの左方隣接ツリーブロックから複製するか否かを示すフラグである。
【０１０４】
（ＣＴＢＳＡＯオフセット情報）
図８は、従来技術における符号化データ＃１のＣＴＢＳＡＯオフセット情報（図８においてsao_offset_cabac()と表記）のシンタクスを示す図である。ＣＴＢＳＡＯオフセット情報は、シンタクス要素として、オフセットタイプを示すインデックス（オフセットタイプ、sao_type_idx）、画素値域内でオフセットを適用するバンドの位置を示すインデックス（バンドオフセット位置、sao_band_position）、オフセットの値（sao_offset）を含む。sao_band_positionは、ＳＡＯのタイプがバンドオフセット（ＢＯ）である場合に用いられる。なお、符号化データ中のオフセットの値は、量子化された値や、線形予測等の予測を用いてオフセット値が導出できる予測残差として符号化されていても良い。sao_type_idxとsao_offsetについては後述する。
【０１０５】
図９は、本実施の形態にかかる符号化データ＃１のＣＴＢＳＡＯオフセット情報（図９においてsao_offset_cabac()と表記）のシンタクスを示す図である。本実施の形態では、図８に示すシンタクスに加え、オフセット数（sao_offset_num）を含んでおり、オフセット数を明示的に符号化している。
【０１０６】
なお、図４〜図９に示したDescriptor（記述子）ue(v)は、この記述子に関連付けられたシンタックスは符号なしの数値であり、値が可変長符号化されることを示している。se(v)は、この記述子に関連付けられたシンタックスは符号付きの数値であり、符号と絶対値に分けて可変長符号化されることを示している。ae(v)は、この記述子に関連づけられたシンタックスが算術符号を用いて可変長符号化されることを示している。u(n)は、この記述子に関連付けられたシンタックスは符号なしの数値であり、nビットの固定長符号化が用いられることを示している。f(n)は、固定値のビットパターンが用いられることを示している。
【０１０７】
次に、オフセットタイプsao_type_idxとオフセットsao_offsetについて、さらに詳細に説明する。
【０１０８】
（sao_type_idx）
sao_type_idxは、適応オフセットフィルタのタイプを表す識別子である。sao_type_idxは、カラー成分毎に、所定の単位（例えばツリーブロック）に対して割り当てられる。したがって、所定の単位の各々におけるタイプの値は、sao_type_idx[component][rx][ry]と添字を用いて表される。添字componentは輝度、色差Ｃｒ、色差Ｃｂのいずれかを示すインデックスであり、rxおよびryはそれぞれ、対象となる所定の単位（例えばＳＡＯユニットあるいはツリーブロック）のxおよびy座標を示す。本実施形態では、sao_type_idx[component][rx][ry]を、単にsao_type_idxやオフセットタイプと呼称することもある。単にsao_type_idxと呼称する場合においても、必要な個々の値はsao_type_idx[component][rx][ry]として参照することが可能である。
【０１０９】
オフセットタイプには大きく分けてエッジオフセット処理（ＥＯ）とバンドオフセット処理（ＢＯ）と呼ばれる２種類がある。エッジオフセット処理とは、処理対象画素の画素値とその周辺画素の画素値との差分に応じて、当該処理対象画素の画素値に複数のオフセットの何れかを加算する処理のことをいう。また、バンドオフセット処理とは、処理対象の各画素値の値に応じて、当該処理対象画素の画素値に複数のオフセットの何れかを加算する処理のことをいう。
【０１１０】
本実施形態において、sao_type_idxは、０から５までの整数値をとり、オフセットフィルタ前画像（例えば、後述するデブロック済復号画像Ｐ＿ＤＢ）に対して、どのようなフィルタ処理を行うか、あるいはフィルタ処理を行わないかを示す。具体的には以下の通りである。
・sao_type_idx＝０は、対象ツリーブロックにおけるオフセットフィルタ前画像に対して、オフセットフィルタ処理を行わないことを示す。
・sao_type_idx＝１〜４は、対象ツリーブロックにおけるオフセットフィルタ前画像に対して、エッジオフセット処理（ＥＯ）を行うことを示す。
・sao_type_idx＝５は、対象ツリーブロックにおけるオフセットフィルタ前画像に対して、バンドオフセット処理（ＢＯ）を行うことを示す。
【０１１１】
なお、エッジオフセットおよびバンドオフセットに対し、上記で説明したのと異なる数のオフセットタイプが用いられる場合がある。オフセットタイプの個数が本実施形態と異なる場合には、sao_type_idxの値の範囲は、オフセットタイプの総数に応じて変化する。たとえば、オフセットタイプの総数がオフセット処理をしない場合を含めて４個である場合には、sao_type_idxは０から３までの整数値をとる。
【０１１２】
また、バンドオフセット処理を行う場合は、オフセット処理を行う画素値帯の左端位置を指定するsao_band_positionが符号化される。
【０１１３】
（sao_offset）
sao_offset[component][rx][ry][i]は、本実施形態に係る適応オフセットフィルタ処理において、対象ツリーブロックに含まれる各画素に加算されるオフセットの値を導出するために用いられるパラメータである。本実施形態では、sao_offset[component][rx][ry][i]のことを単にsao_offsetあるいはオフセットもしくはオフセット値と呼称することもある。単にsao_offsetと呼称する場合においても、必要な個々の値はsao_offset[component][rx][ry][i]として参照することが可能である。
【０１１４】
sao_offset[component][rx][ry][i]は、上述の引数component、rx、ryに加えて、インデックスｉによって指定される。ここで、インデックスｉは、オフセットに対応するクラスを指定するためのインデックスである。インデックスｉは、適用するオフセットタイプに属するクラスがＮ個であれば、０〜Ｎ−１の値をとる。
【０１１５】
なお、本実施形態における適応オフセットフィルタの処理では、sao_offsetの値から実際に用いられるオフセット値（以下では、実オフセット値と呼ぶ）を導出して用いる。導出の詳細については後述する。
【０１１６】
ここで、「実オフセット」との表現における「実」は、「オフセット」が実数であるのか、複素数であるのかを示すことを意図したものではなく、当該実オフセットが、実際に用いられるオフセットであること、すなわち、画素値に対して実際に加算されるオフセットであることを示している。なお、実数が複素数かという観点で言えば、実際に加算されるオフセットは全て実数である。
【０１１７】
また、導出された各画素に加算されるオフセットの値の符号を導出するためのパラメータとしてsao_offset_signが符号化されている。sao_offset_signは、加算されるオフセット値が０以外のときに符号化されている。
【０１１８】
次に、sao_offsetとして符号化される値の範囲について説明する。
【０１１９】
オフセットタイプsao_type_idxが５でない場合、すなわちエッジオフセットのオフセットsao_offsetにおいては、値域は、
0 から ( 1<< ( Min( bitDepth, bitDepthTh ) − bitDepthD ) ) − 1 
である。ここで、bitDepthはオフセット適用対象となる画素値のビット深度を表す値、bitDepthThはオフセット値を量子化する下限のビット深度、bitDepthDはオフセット値の値域のビット数を調整する値である。また、<<は左シフト、Min()は引数のうち最小のものを選択する関数を表す。一方、オフセットタイプsao_type_idxが５である場合、すなわちバンドオフセットのオフセットsao_offsetにおいては、値域は、
−( 1<< ( Min( bitDepth, bitDepthTh ) − bitDepthD ) ) から ( 1<< ( Min( bitDepth, bitDepthTh ) − bitDepthD ) − 1 
である。以上から、例えば、bitDepth=8、bitDepthTh=10、 bitDepthD=5 である場合、オフセットsao_offsetの値域は、エッジオフセットの場合は０から７となり、バンドオフセットの場合は−７から７となる。
【０１２０】
（動画像復号装置１）
次に、本実施形態に係る動画像復号装置１について、図１および図３を参照して説明する。動画像復号装置１は、その一部に、Ｈ．２６４／ＭＰＥＧ−４．ＡＶＣに採用されている方式、その後継コーデックであるＨＭ（HEVC TestModel）ソフトウェアに採用されている技術を含んでいる。
【０１２１】
図３は、動画像復号装置１の構成を示すブロック図である。図３に示すように、動画像復号装置１は、可変長符号復号部１３、動きベクトル復元部１４、バッファメモリ１５、インター予測画像生成部１６、イントラ予測画像生成部１７、予測方式決定部１８、逆量子化・逆変換部１９、加算器２０、デブロッキングフィルタ４１、適応フィルタ５０、および適応オフセットフィルタ６０を含む構成である。動画像復号装置１は、符号化データ＃１を復号することによって動画像＃４を生成するための装置である。
【０１２２】
可変長符号復号部１３は、各パーティションに関する予測パラメータＰＰを、符号化データ＃１から復号する。すなわち、インター予測パーティションに関しては、参照画像インデックスＲＩ、推定動きベクトルインデックスＰＭＶＩ、および、動きベクトル残差ＭＶＤを符号化データ＃１から復号し、これらを動きベクトル復元部１４に供給する。一方、イントラ予測パーティションに関しては、（１）パーティションのサイズを指定するサイズ指定情報、および、（２）予測インデックスを指定する予測インデックス指定情報を符号化データ＃１から復号し、これをイントラ予測画像生成部１７に供給する。また、可変長符号復号部１３は、ＣＵ情報を符号化データから復号し、これを予測方式決定部１８に供給する（不図示）。更に、可変長符号復号部１３は、各ブロックに関する量子化予測残差ＱＤ、および、そのブロックを含むツリーブロックに関する量子化パラメータ差分Δｑｐを符号化データ＃１から復号し、これらを逆量子化・逆変換部１９に供給する。また、可変長符号復号部１３は、符号化データ＃１からＳＡＯパラメータＳＡＯＰを復号し、それらを適応オフセットフィルタ６０に供給する。ＳＡＯパラメータＳＡＯＰは、少なくとも、オフセット情報ＯＩを含む。
【０１２３】
動きベクトル復元部１４は、各インター予測パーティションに関する動きベクトルｍｖを、そのパーティションに関する動きベクトル残差ＭＶＤと、他のパーティションに関する復元済みの動きベクトルｍｖ’とから復元する。具体的には、（１）推定動きベクトルインデックスＰＭＶＩにより指定される推定方法に従って、復元済みの動きベクトルｍｖ’から推定動きベクトルｐｍｖを導出し、（２）導出した推定動きベクトルｐｍｖと動きベクトル残差ＭＶＤとを加算することによって動きベクトルｍｖを得る。なお、他のパーティションに関する復元済みの動きベクトルｍｖ’は、バッファメモリ１５から読み出すことができる。動きベクトル復元部１４は、復元した動きベクトルｍｖを、対応する参照画像インデックスＲＩと共に、インター予測画像生成部１６に供給する。なお、双方向予測（重み付き予測）を行うインター予測パーティションについては、復元した２つの動きベクトルｍｖ１およびｍｖ２を、対応する参照画像インデックスＲＩ１およびＲＩ２と共に、インター予測画像生成部１６に供給する。
【０１２４】
インター予測画像生成部１６は、各インター予測パーティションに関する動き補償画像ｍｃを生成する。具体的には、動きベクトル復元部１４から供給された動きベクトルｍｖを用いて、同じく動きベクトル復元部１４から供給された参照画像インデックスＲＩによって指定されるフィルタ済復号画像Ｐ＿ＦＬ’から動き補償画像ｍｃを生成する。ここで、フィルタ済復号画像Ｐ＿ＦＬ’は、局所復号画像Ｐに対して、デブロッキングフィルタ４１によるデブロック処理、適応オフセットフィルタ６０によるオフセットフィルタ処理、および適応フィルタ５０による適応的フィルタ処理を施すことによって得られる画像であり、インター予測画像生成部１６は、フィルタ済復号画像Ｐ＿ＦＬ’を構成する各画素の画素値をバッファメモリ１５から読み出すことができる。インター予測画像生成部１６によって生成された動き補償画像ｍｃは、インター予測画像Ｐｒｅｄ＿Ｉｎｔｅｒとして予測方式決定部１８に供給される。なお、双方向予測（重み付き予測）を行うインター予測パーティションについては、（１）動きベクトルｍｖ１を用いて、参照画像インデックスＲＩ１によって指定されたフィルタ済復号画像Ｐ＿ＦＬ１’から動き補償画像ｍｃ１を生成し、（２）動きベクトルｍｖ２を用いて、参照画像インデックスＲＩ２によって指定されたフィルタ済復号画像Ｐ＿ＦＬ２’から動き補償画像ｍｃ２を生成し、（３）動き補償画像ｍｃ１と動き補償画像ｍｃ２との加重平均にオフセット値を加えることによってインター予測画像Ｐｒｅｄ＿Ｉｎｔｅｒを生成する。
【０１２５】
イントラ予測画像生成部１７は、各イントラ予測パーティションに関する予測画像Ｐｒｅｄ＿Ｉｎｔｒａを生成する。具体的には、まず、符号化データ＃１から復号された予測インデックス指定情報およびサイズ指定情報を参照して予測モードを導出し、該予測モードを対象パーティションに対して、例えば、ラスタスキャン順に割り付ける。続いて、当該予測モードの示す予測方法に従って、バッファメモリから読み出した（不図示）局所復号画像Ｐから予測画像Ｐｒｅｄ＿Ｉｎｔｒａを生成する。イントラ予測画像生成部１７によって生成されたイントラ予測画像Ｐｒｅｄ＿Ｉｎｔｒａは、予測方式決定部１８に供給される。
【０１２６】
また、イントラ予測画像生成部１７は、対象パーティションのサイズ、および、対象パーティションに割り付けられた予測モードを示す情報であるイントラ符号化モード情報ＩＥＭを適応フィルタ５０に供給する（不図示）。
【０１２７】
予測方式決定部１８は、ＣＵ情報に基づいて、各パーティションがインター予測を行うべきインター予測パーティションであるのか、イントラ予測を行うべきイントラ予測パーティションであるのかを決定する。そして、前者の場合には、インター予測画像生成部１６にて生成されたインター予測画像Ｐｒｅｄ＿Ｉｎｔｅｒを予測画像Ｐｒｅｄとして加算器２０に供給し、後者の場合には、イントラ予測画像生成部１７にて生成されたイントラ予測画像Ｐｒｅｄ＿Ｉｎｔｒａを予測画像Ｐｒｅｄとして加算器２０に供給する。
【０１２８】
逆量子化・逆変換部１９は、（１）量子化予測残差ＱＤを逆量子化し、（２）逆量子化によって得られたＤＣＴ（Discrete Cosine Transform）係数またはＤＳＴ（Discrete Sine Transform）係数を逆ＤＣＴ変換または逆ＤＳＴ変換し、（３）逆ＤＣＴ変換または逆ＤＳＴ変換によって得られた予測残差Ｄを加算器２０に供給する。なお、量子化予測残差ＱＤを逆量子化する際に、逆量子化・逆変換部１９は、可変長符号復号部１３から供給された量子化パラメータ差分Δｑｐから量子化ステップＱＰを導出する。量子化パラメータｑｐは、直前に逆量子化／逆ＤＣＴ（またはＤＳＴ）変換したツリーブロックに関する量子化パラメータｑｐ’に量子化パラメータ差分Δｑｐを加算することによって導出でき、量子化ステップＱＰは、量子化ステップｑｐからＱＰ＝２ｐｑ／６によって導出できる。また、逆量子化・逆変換部１９による予測残差Ｄの生成は、ブロック（変換単位）を単位として行われる。
【０１２９】
加算器２０は、予測方式決定部１８から供給された予測画像Ｐｒｅｄと、逆量子化・逆変換部１９から供給された予測残差Ｄとを加算することによって局所復号画像Ｐを生成する。
【０１３０】
デブロッキングフィルタ４１は、局所復号画像Ｐにおけるブロック境界、またはＣＵ境界を介して互いに隣接する画素の画素値の差が予め定められた範囲内である場合にはブロック歪みが存在すると判定し、局所復号画像Ｐにおける当該ブロック境界、または当該ＣＵ境界に対してデブロッキング処理を施すことによって、当該ブロック境界、または当該ＣＵ境界付近の画像の平滑化を行う。デブロッキングフィルタ４１によりデブロッキング処理が施された画像は、デブロック済復号画像Ｐ＿ＤＢとして、適応オフセットフィルタ６０に出力される。
【０１３１】
適応オフセットフィルタ６０は、デブロッキングフィルタ４１から供給されるデブロック済復号画像Ｐ＿ＤＢに対して、符号化データ＃１から復号されたオフセットを用いたオフセットフィルタ処理を、ＱＡＯＵ（第１単位領域）を処理単位として施すことによってオフセットフィルタ済復号画像Ｐ＿ＯＦを生成する。生成されたオフセットフィルタ済復号画像Ｐ＿ＯＦは、適応オフセットフィルタ６０に供給される。適応オフセットフィルタ６０の具体的な構成については、後述するため、ここでは説明を省略する。
【０１３２】
適応フィルタ５０は、適応オフセットフィルタ６０から供給されるオフセットフィルタ済復号画像Ｐ＿ＯＦに対して、符号化データ＃１から復号されたフィルタパラメータＦＰ（フィルタセット番号、フィルタ係数群、領域指定情報、並びにオンオフ情報）を用いたフィルタ処理を施すことによって、フィルタ済復号画像Ｐ＿ＦＬを生成する。フィルタ済復号画像Ｐ＿ＦＬは、動画像＃４として外部に出力されると共に、可変長符号復号部１３によって符号化データから復号されたＰＯＣ指定情報と関連付けてバッファメモリ１５に格納される。
【０１３３】
なお、上記の説明では、ＳＡＯユニットＵを第２単位領域とし、ＱＡＯＵを第１単位領域とする場合を例に挙げたが、本実施形態はこれに限定されるものではなく、これらの単位領域として他のユニットを用いてもよい。
【０１３４】
（適応オフセットフィルタ６０の詳細）
次に、適応オフセットフィルタ６０の詳細について図１を参照して説明する。図１は、適応オフセットフィルタ６０の構成を示すブロック図である。図１に示すように、適応オフセットフィルタ６０は、ＳＡＯパラメータ復号部６１、適応フィルタ部６２、オフセット設定部６３、および、ＳＡＯパラメータ格納部６４を含む。
（ＳＡＯパラメータ復号部６１）
ＳＡＯパラメータ復号部６１は、入力されるＳＡＯパラメータＳＡＯＰからオフセットタイプsao_type_idx、バンド位置sao_band_position、オフセットsao_offset、オフセット符号sao_offset_signを抽出する。オフセットタイプsao_type_idx、バンド位置sao_band_positionは、特性値算出部６２１に出力され、オフセットタイプsao_type_idx、オフセットsao_offset、オフセット符号sao_offset_signは、オフセット設定部６３、およびＳＡＯパラメータ格納部６４に出力される。なお、対象ＣＴＢに関するＳＡＯパラメータＳＡＯＰであるＣＴＢＳＡＯオフセット情報のマージ制御情報（sao_merge_left_flag, sao_merge_up_flag）がマージであることを示すか否かに応じて、オフセットタイプsao_type_idx、バンド位置sao_band_position、オフセットsao_offset、オフセット符号sao_offset_signの抽出方法が異なる。マージ制御情報がマージであることを示す場合には、既に復号済みのパラメータをＳＡＯパラメータ格納部６４から読み出し抽出する。具体的には、sao_merge_left_flagが１の場合には、対象ＣＴＢの左に隣接するＣＴＢのパラメータを抽出する。sao_merge_up_flagが１の場合には、対象ＣＴＢの上に隣接するＣＴＢのパラメータを抽出する。逆に、マージ制御情報がマージであることを示さない場合には、ＣＴＢＳＡＯオフセット情報からパラメータを抽出する。
（オフセット設定部６３） 
オフセット設定部６３は、入力されるオフセットタイプsao_type_idx、オフセットsao_offset、オフセット符号sao_offset_signから実オフセットSaoOffsetValを導出し、オフセット割り付け部６２４に出力する。
【０１３５】
また、実オフセットSaoOffsetVal導出時に、画素値のビット深度に応じた逆量子化を行う。例えば、ビット深度が12bitである画像に対する適応オフセットフィルタのオフセット値が、ビット深度10bit相当に量子化されて符号化されている場合、SaoOffsetValは2bit分桁上げされて実オフセット値が導出される。なお、具体的な実オフセットSaoOffsetValを導出方法は後述する。
（ＳＡＯパラメータ格納部６４）
ＳＡＯパラメータ格納部６４は、ＳＡＯパラメータ復号部６１が抽出したオフセットタイプsao_type_idx、バンド位置sao_band_position、オフセットsao_offset、オフセット符号sao_offset_signを格納している。
（適応フィルタ部６２）
適応フィルタ部６２は、図１に示すように、特性値算出部６２１、オフセット割り付け部６２４、および、オフセット適用部６２５をさらに含む。
【０１３６】
（特性値算出部６２１）
特性値算出部６２１は、入力されるデブロック済復号画像Ｐ＿ＤＢの画素値に基づいて、オフセットタイプsao_type_idxに対応する特性値を算出する。特性値の算出は各画素位置において実行される。sao_type_idxが０の場合、特性値は算出しない。sao_type_idxが１〜４の場合は、エッジ分類を表す特性値edgeIdxを算出する。特性値edgeIdxはsao_type_idxに応じた特定方向に対する、対象画素と隣接画素の間の画素値変化に基づき設定される。sao_type_idxが５の場合は、画素値の大きさを表す特性値bandIdxを算出する。特性値bandIdxは、対象画素の画素値を量子化した値として計算される。
【０１３７】
（オフセット割り付け部６２４）
オフセット割り付け部６２４は、各画素に対して、オフセット設定部６３より入力される実オフセットSaoOffsetVal、特性値算出部６２１から入力された特性値edgeIdx、bandIdxから割り付けるオフセットを設定する。具体的には、sao_type_idxがエッジオフセットを示す場合には、オフセットとしてSaoOffsetVal[cIdx][rx][ry][edgeIdx]を割り付け、sao_type_idxがバンドオフセットを示す場合には、オフセットとしてSaoOffsetVal[cIdx][rx][ry][edgeIdx]を割り付ける。ここで、cIdxは、カラーコンポーネントインデックスを意味し、cIdx=0が輝度成分(Y)、cIdx=1が色差のCb成分(U)、cIdx=2が色差のCr成分（V）を意味する。rx、ryは各々、対象ＣＴＢの座標を示す。
【０１３８】
（オフセット適用部６２５）
オフセット適用部６２５は、各画素に対してオフセット割り付け部６２４で設定されたオフセットをデブロック済復号画像Ｐ＿ＤＢの画素値に加算してフィルタ済復号画像Ｐ＿ＦＬの画素値として設定する。
【０１３９】
（オフセット設定部６３におけるオフセットの導出方法）
次に、オフセット設定部６３におけるオフセットの導出方法の詳細について、図１０、１１を参照して説明する。
【０１４０】
上述したように、オフセット設定部６３は、オフセットsao_offsetとオフセット符号sao_offset_signとから実オフセットSaoOffsetValを導出する。実オフセットSaoOffsetValは、sao_num_offset個導出される。具体的には、エッジオフセットにおいて、sao_num_offsetが４、すなわち、オフセット数が４の場合、ＳＡＯパラメータ復号部６１が抽出した４つのオフセットEO(0)≧0、EO(1)≧0、EO(2)≧0、EO(3)≧0を用いて、実オフセットSaoOffsetValを、
EOv(0) = EO(0)
EOv(1) = EO(1)
EOv(2) = -EO(2)
EOv(3) = -EO(3)
として導出する。ここでは、４個の実オフセットSaoOffsetValを、EOv(i)（i＝0〜3）として表現している（以下同様）。具体的な導出例としては、図１０の（ａ）に示すように、以下の式により、i=0..3の４つのオフセットsao_offsetから、対応する実オフセットSaoOffsetValを導出する。
SaoOffsetVal[ cIdx ][ rx ][ ry ][ i+1] = 
offsetSign[i]*sao_offset[ Idx ][ rx ][ ry ][ i ] << ( bitDepth - n( bitDepth, 10 ) )
ここでは、実オフセットSaoOffsetVal[ cIdx ][ rx ][ ry ][0]はフィルタオフを意味し常に０とし、i=0..3のオフセットsao_offset[ cIdx ][ rx ][ ry ][ i ]が、i=1..4の実オフセットSaoOffsetVal[ cIdx ][ rx ][ ry ][i]に対応する。但し、フィルタオフを別の方法で処理する場合には、i=0..3のオフセットをそのままi=0..3の実オフセットに対応させても良い。以下、オフセット数が異なる場合も同様である。
【０１４１】
なお、図１０（ａ）において、<<は左シフト、Min()は引数のうち最小のものを選択する関数を表す（他の図でも同様）。bitDepthは画素値のビット深度、Min( bitDepth, 10 )は、sao_offsetのビット精度を意味する。( bitDepth - Min( bitDepth, 10 ) )で左シフトするとは、Min( bitDepth, 10 )精度として量子化されているsao_offsetを、逆量子化により画素値のビット深度bitDepthに合わせることを意味する。オフセットサインoffsetSignは、実オフセットの符号を示す。ここでは、以下の式のようにi=0,1のオフセットは正、i=2,3のオフセットは負であることを意味する。
【０１４２】
offsetSign[i] = {1, 1, -1, -1}
また、エッジオフセットにおいて、sao_num_offsetが２、すなわち、オフセット数が２の場合、ＳＡＯパラメータ復号部６１が抽出した２つのオフセットEO(0)≧0、EO(1)≧0を用いて、実オフセットSaoOffsetValを、
EOv(0) = EO(0)
EOv(1) = EO(1)
EOv(2) = -EO(1)
EOv(3) = -EO(0)
として導出する。すなわち、EOv(2)、EOv(3)について、それぞれEO(1)、EO(0)の符号を反転させたものを用いる。具体的な導出例としては図１０の（ｂ）に示すように、以下の式により、i=0..1の４つのオフセットsao_offsetから、i=1..4の４つの実オフセットSaoOffsetValを導出する。
tmp0 = (sao_offset[ cIdx ][ rx ][ ry ][0] ) << ( bitDepth - Min( bitDepth, 10 ) ))
tmp1 = (sao_offset[ cIdx ][ rx ][ ry ][1] ) << ( bitDepth - Min( bitDepth, 10 ) ))
SaoOffsetVal[ cIdx ][ rx ][ ry ][1] = offsetSign[0] * tmp0
SaoOffsetVal[ cIdx ][ rx ][ ry ][2] = offsetSign[1] * tmp1
SaoOffsetVal[ cIdx ][ rx ][ ry ][3] = offsetSign[2] * tmp1
SaoOffsetVal[ cIdx ][ rx ][ ry ][4] = offsetSign[3] * tmp0
ここで、tmp0、tmp1は上述の実オフセットEO(0)、EO(1)に対応する。２つのオフセット、sao_offset[ cIdx ][ rx ][ ry ][0]、sao_offset[ cIdx ][ rx ][ ry ][1]から実オフセットをtmp0、tmp1を求め、さらに各オフセットの符号を示すoffsetSignと乗算することで４つの実オフセットSaoOffsetValを求める。
【０１４３】
また、エッジオフセットにおいて、sao_num_offsetが１、すなわち、オフセット数が１の場合、ＳＡＯパラメータ復号部６１が抽出した１つのオフセットEO(0)≧0を用いて、実オフセットSaoOffsetValを、
EOv(0) = EO(0)
EOv(1) = EO(0)>>1
EOv(2) = -(EO(0)>>1)
EOv(3) = -EO(0)
として導出する（>>は右シフトを示す）。すなわち、EOv(1)、EOv(2)、EOv(3)について、それぞれEO(0)の半分、EO(0)の半分の値で符号を反転させたもの、EO(0)の符号を反転させたものを用いる。シンタクス例としては図１０の（ｃ）に示すようになり、以下の式により、i=0の２つのオフセットsao_offsetから、i=1..4の４つの実オフセットSaoOffsetValを導出する。
tmp = (sao_offset[ cIdx ][ rx ][ ry ][0] + 1) << ( bitDepth - Min( bitDepth, 10 ) ))
SaoOffsetVal[ cIdx ][ rx ][ ry ][1] = offsetSign[0] * tmp 
SaoOffsetVal[ cIdx ][ rx ][ ry ][2] = offsetSign[1] * (tmp>>1)
SaoOffsetVal[ cIdx ][ rx ][ ry ][3] = offsetSign[2] * (tmp>>1)
SaoOffsetVal[ cIdx ][ rx ][ ry ][4] = offsetSign[3] * tmp 
ここで、tmpは上述の実オフセットEO(0)に対応する。１つのオフセット、sao_offset[ cIdx ][ rx ][ ry ][0]を逆量子化することにより実オフセットtmpを求め、さらに>>1により実オフセットの半分を求める処理と、各オフセットの符号を示すoffsetSignと乗算処理により４つの実オフセットSaoOffsetValを求める。
【０１４４】
また、バンドオフセットの場合は、sao_num_offset個の実オフセットSaoOffsetValを導出する。具体的な導出例としては、図１１（ａ）または（ｂ）に示すようになる。図１１（ａ）の場合には、i=0..sao_num_offset-1の実オフセットを、以下の式により導出する。
SaoOffsetVal[ cIdx ][ rx ][ ry ][ i+1] = 
offsetSign[i]*sao_offset[ cIdx ][ rx ][ ry ][ i ] << ( bitDepth - Min( bitDepth, 10 ) )
図１１（ｂ）の場合には、i=0..sao_num_offset-1の実オフセットを、以下の式により導出する。
SaoOffsetVal[ cIdx ][ rx ][ ry ][ i+1] = offsetSign[i]*(1<<sao_offset[ cIdx ][ rx ][ ry ][ i ])
図１１（ａ）と図１１（ｂ）は、オフセットの逆量子化方法が異なる。図１１（ｂ）では、実オフセットは1, 2, 4, 8, ..,のように2の指数乗の値となるように逆量子化される。
【０１４５】
バンドオフセットの場合には、符号offsetSign[i]は、ＳＡＯパラメータＳＡＯＰ中のsao_offset_sign[i]を用いる。すなわちoffsetSign[i]＝sao_offset_sign[i]である。
【０１４６】
（動画像符号化装置２）
次に、符号化対象画像を符号化することによって符号化データ＃１を生成する動画像符号化装置２について、図２３、２４を参照して説明する。動画像符号化装置２は、その一部に、Ｈ．２６４／ＭＰＥＧ−４．ＡＶＣに採用されている方式、その後継コーデックであるＨＭ（HEVC TestModel）ソフトウェアに採用されている技術を含んでいる。
【０１４７】
図２３は、本実施形態に係る動画像符号化装置２の構成を示すブロック図である。図２３に示すように、動画像符号化装置２は、変換・量子化部２１、可変長符号符号化部２２、逆量子化・逆変換部２３、バッファメモリ２４、イントラ予測画像生成部２５、インター予測画像生成部２６、動きベクトル検出部２７、予測方式制御部２８、動きベクトル冗長性削除部２９、加算器３１、減算器３２、デブロッキングフィルタ３３、適応フィルタ７０、および適応オフセットフィルタ８０を含む構成である。動画像符号化装置２は、動画像＃１０（符号化対象画像）を符号化することによって、符号化データ＃１を生成する装置である。
【０１４８】
変換・量子化部２１は、（１）符号化対象画像から予測画像Ｐｒｅｄを減算した予測残差Ｄをブロック毎にＤＣＴ変換（Discrete Cosine Transform）またはＤＳＴ変換（Discrete Sine Transform）し、（２）ＤＣＴ変換により得られたＤＣＴ係数またはＤＳＴ変換により得られたＤＳＴ係数を量子化し、（３）量子化により得られた量子化予測残差ＱＤを可変長符号符号化部２２および逆量子化・逆変換部２３に供給する。なお、変換・量子化部２１は、（１）量子化の際に用いる量子化ステップＱＰを、ツリーブロック毎に選択し、（２）選択した量子化ステップＱＰの大きさを示す量子化パラメータ差分Δｑｐを可変長符号符号化部２２に供給し、（３）選択した量子化ステップＱＰを逆量子化・逆変換部２３に供給する。ここで、量子化パラメータ差分Δｑｐとは、ＤＣＴ（またはＤＳＴ）変換／量子化するツリーブロックに関する量子化パラメータｑｐ（ＱＰ＝２^(qp/6)）の値から、直前にＤＣＴ（またはＤＳＴ）変換／量子化したツリーブロックに関する量子化パラメータｑｐ’の値を減算して得られる差分値のことを指す。
【０１４９】
可変長符号符号化部２２は、（１）変換・量子化部２１から供給された量子化予測残差ＱＤ並びにΔｑｐ、（２）後述する予測方式制御部２８から供給された予測パラメータＰＰ、および、（３）後述する適応フィルタ７０から供給されたフィルタパラメータＦＰ（フィルタセット番号、フィルタ係数群、領域指定情報、並びにオンオフ情報）を可変長符号化することによって、符号化データ＃１を生成する。また、可変長符号符号化部２２は、適応オフセットフィルタ８０から供給されるＳＡＯパラメータＳＡＯＰを可変長符号化し、符号化データ＃１に含める。ＳＡＯパラメータＳＡＯＰは、少なくとも、オフセット情報ＯＩを含む。
【０１５０】
逆量子化・逆変換部２３は、（１）量子化予測残差ＱＤを逆量子化し、（２）逆量子化によって得られたＤＣＴ係数あるいはＤＳＴ係数を逆ＤＣＴ（Discrete Cosine Transform）変換あるいは逆ＤＳＴ（Discrete Sine Transform）変換し、（３）逆ＤＣＴ変換あるいは逆ＤＳＴ変換によって得られた予測残差Ｄを加算器３１に供給する。量子化予測残差ＱＤを逆量子化する際には、変換・量子化部２１から供給された量子化ステップＱＰを利用する。なお、逆量子化・逆変換部２３から出力される予測残差Ｄは、変換・量子化部２１に入力される予測残差Ｄに量子化誤差が加わったものであるが、ここでは簡単のために共通の呼称を用いる。
【０１５１】
イントラ予測画像生成部２５は、各パーティションに関する予測画像Ｐｒｅｄ＿Ｉｎｔｒａを生成する。具体的には、（１）各パーティションついてイントラ予測に用いる予測モードを選択し、（２）選択した予測モードを用いて、局所復号画像Ｐから予測画像Ｐｒｅｄ＿Ｉｎｔｒａを生成する。イントラ予測画像生成部２５は、生成したイントラ予測画像Ｐｒｅｄ＿Ｉｎｔｒａを、予測方式制御部２８に供給する。
【０１５２】
また、イントラ予測画像生成部２５は、各パーティションについて選択された予測モードと、各パーティションのサイズから各パーティションについての予測インデックスＰＩを特定し、当該予測インデックスＰＩを予測方式制御部２８に供給する。
【０１５３】
また、イントラ予測画像生成部２５は、対象パーティションのサイズ、および、対象パーティションに割り付けられた予測モードを示す情報であるイントラ符号化モード情報ＩＥＭを適応フィルタ７０に供給する（不図示）。
【０１５４】
動きベクトル検出部２７は、各パーティションに関する動きベクトルｍｖを検出する。具体的には、（１）参照画像として利用するフィルタ済復号画像Ｐ＿ＦＬ’を選択し、（２）選択したフィルタ済復号画像Ｐ＿ＦＬ’において対象パーティションを最良近似する領域を探索することによって、対象パーティションに関する動きベクトルｍｖを検出する。ここで、フィルタ済復号画像Ｐ＿ＦＬ’は、復号済みの復号画像に対して、デブロッキングフィルタ３３によるデブロック処理、適応オフセットフィルタ８０による適応的オフセット処理、および、適応フィルタ７０による適応的フィルタ処理を施すことによって得られる画像であり、動きベクトル検出部２７は、フィルタ済復号画像Ｐ＿ＦＬ’を構成する各画素の画素値をバッファメモリ２４から読み出すことができる。動きベクトル検出部２７は、検出した動きベクトルｍｖを、参照画像として利用したフィルタ済復号画像Ｐ＿ＦＬ’を指定する参照画像インデックスＲＩと共に、インター予測画像生成部２６および動きベクトル冗長性削除部２９に供給する。なお、双方向予測（重み付き予測）を行うパーティションについては、参照画像として２枚のフィルタ済復号画像Ｐ＿ＦＬ１’およびＰ＿ＦＬ２’を選択し、２枚のフィルタ済復号画像Ｐ＿ＦＬ１’およびＰ＿ＦＬ２’の各々に対応する動きベクトルｍｖ１およびｍｖ２、並びに、参照画像インデックスＲＩ１およびＲＩ２をインター予測画像生成部２６および動きベクトル冗長性削除部２９に供給する。
【０１５５】
インター予測画像生成部２６は、各インター予測パーティションに関する動き補償画像ｍｃを生成する。具体的には、動きベクトル検出部２７から供給された動きベクトルｍｖを用いて、動きベクトル検出部２７から供給された参照画像インデックスＲＩによって指定されるフィルタ済復号画像Ｐ＿ＦＬ’から動き補償画像ｍｃを生成する。動きベクトル検出部２７と同様、インター予測画像生成部２６は、フィルタ済復号画像Ｐ＿ＦＬ’を構成する各画素の画素値をバッファメモリ２４から読み出すことができる。インター予測画像生成部２６は、生成した動き補償画像ｍｃ（インター予測画像Ｐｒｅｄ＿Ｉｎｔｅｒ）を、動きベクトル検出部２７から供給された参照画像インデックスＲＩと共に、予測方式制御部２８に供給する。なお、双方向予測（重み付き予測）をパーティションについては、（１）動きベクトルｍｖ１を用いて、参照画像インデックスＲＩ１によって指定されたフィルタ済復号画像Ｐ＿ＦＬ１’から動き補償画像ｍｃ１を生成し、（２）動きベクトルｍｖ２を用いて、参照画像インデックスＲＩ２によって指定されたフィルタ済参照画像Ｐ＿ＦＬ２’から動き補償画像ｍｃ２を生成し、（３）動き補償画像ｍｃ１と動き補償画像ｍｃ２との加重平均にオフセット値を加えることによってインター予測画像Ｐｒｅｄ＿Ｉｎｔｅｒを生成する。
【０１５６】
予測方式制御部２８は、イントラ予測画像Ｐｒｅｄ＿Ｉｎｔｒａおよびインター予測画像Ｐｒｅｄ＿Ｉｎｔｅｒを符号化対象画像と比較し、イントラ予測を行うかインター予測を行うかを選択する。イントラ予測を選択した場合、予測方式制御部２８は、イントラ予測画像Ｐｒｅｄ＿Ｉｎｔｒａを予測画像Ｐｒｅｄとして加算器３１および減算器３２に供給すると共に、イントラ予測画像生成部２５から供給された予測インデックスＰＩを予測パラメータＰＰとして可変長符号符号化部２２に供給する。一方、インター予測を選択した場合、予測方式制御部２８は、インター予測画像Ｐｒｅｄ＿Ｉｎｔｅｒを予測画像Ｐｒｅｄとして加算器３１および減算器３２に供給すると共に、インター予測画像生成部２６から供給された参照画像インデックスＲＩ、並びに、動きベクトル冗長性削除部２９（後述）から供給された推定動きベクトルインデックスＰＭＶＩおよび動きベクトル残差ＭＶＤを予測パラメータＰＰとして可変長符号符号化部２２に供給する。
【０１５７】
予測方式制御部２８にて選択された予測画像Ｐｒｅｄを、符号化対象画像から減算することによって、減算器３２にて予測残差Ｄが生成される。減算器３２にて生成された予測残差Ｄは、上述したとおり、変換・量子化部２１によってＤＣＴ（またはＤＳＴ）変換／量子化される。一方、予測方式制御部２８にて選択された予測画像Ｐｒｅｄを、逆量子化・逆変換部２３にて生成された予測残差Ｄに加算することによって、加算器３１にて局所復号画像Ｐが生成される。加算器３１にて生成された局所復号画像Ｐは、デブロッキングフィルタ３３、適応オフセットフィルタ８０および適応フィルタ７０を経由したのち、フィルタ済復号画像Ｐ＿ＦＬとしてバッファメモリ２４に格納され、インター予測における参照画像として利用される。
【０１５８】
なお、動きベクトル冗長性削除部２９は、動きベクトル検出部２７によって検出された動きベクトルｍｖにおける冗長性を削除する。具体的には、（１）動きベクトルｍｖの推定に用いる推定方法を選択し、（２）選択した推定方法に従って推定動きベクトルｐｍｖを導出し、（３）動きベクトルｍｖから推定動きベクトルｐｍｖを減算することにより動きベクトル残差ＭＶＤを生成する。動きベクトル冗長性削除部２９は、生成した動きベクトル残差ＭＶＤを、選択した推定方法を示す推定動きベクトルインデックスＰＭＶＩと共に、予測方式制御部２８に供給する。
【０１５９】
デブロッキングフィルタ３３は、局所復号画像Ｐにおけるブロック境界、またはＣＵ境界を介して互いに隣接する画素の画素値の差が予め定められた閾値よりも小さい場合に、局所復号画像Ｐにおける当該ブロック境界、または当該ＣＵ境界に対してデブロッキング処理を施すことによって、当該ブロック境界、または当該ＣＵ境界付近の画像の平滑化を行う。デブロッキングフィルタ３３によりデブロッキング処理が施された画像は、デブロック済復号画像Ｐ＿ＤＢとして、適応オフセットフィルタ８０に出力される。
【０１６０】
適応オフセットフィルタ８０は、デブロッキングフィルタ３３から供給されるデブロック済復号画像Ｐ＿ＤＢに対して、適応的オフセットフィルタ処理を施すことによってオフセットフィルタ済復号画像Ｐ＿ＯＦを生成する。生成されたオフセットフィルタ済復号画像Ｐ＿ＯＦは、適応フィルタ７０に供給される。適応オフセットフィルタ８０の具体的な構成については、後述するため、ここでは説明を省略する。
【０１６１】
適応フィルタ７０は、適応オフセットフィルタ８０から供給されるオフセットフィルタ済復号画像Ｐ＿ＯＦに対して、適応的なフィルタ処理を施すことによって、フィルタ済復号画像Ｐ＿ＦＬを生成する。適応フィルタ７０によりフィルタ処理が施されたフィルタ済復号画像Ｐ＿ＦＬは、バッファメモリ２４に格納される。適応フィルタ７０によって用いられるフィルタ係数は、フィルタ済復号画像Ｐ＿ＦＬと符号化対象画像＃１０との誤差がより小さくなるように定められたものであり、このようにして定められたフィルタ係数がフィルタパラメータＦＰとして符号化され、動画像復号装置１に伝送される。
【０１６２】
（適応オフセットフィルタ８０）
次に、適応オフセットフィルタ８０について、図２４を参照して説明する。図２４は、適応オフセットフィルタ８０の構成を示すブロック図である。図２４に示すように、適応オフセットフィルタ８０は、ＳＡＯパラメータ設定部８１、ＳＡＯパラメータ号化部８３、ＳＡＯパラメータ格納部８４、および適応フィルタ部６２を含む構成である。
【０１６３】
（ＳＡＯパラメータ設定部８１）
ＳＡＯパラメータ設定部８１は、対象となる処理単位（例えばツリーブロック）について、入力される動画像＃１０とデブロック済復号画像Ｐ＿ＤＢに基づいて、各処理単位に対して適用するＳＡＯオフセット情報ＯＩを設定して出力する。ＳＡＯオフセット情報ＯＩは、オフセットタイプsao_type_idxおよびオフセットSaoOffsetValを含む。オフセットタイプsao_type_idxがバンドオフセットの場合には、バンドオフセット位置sao_band_positionも設定して出力する。なお、ＳＡＯオフセット情報ＯＩの各パラメータの値は、符号化効率がより向上するよう設定するとよい。
【０１６４】
ＳＡＯパラメータ設定部８１は、ＳＡＯオフセット情報ＯＩを含むＳＡＯパラメータＳＡＯＰを、ＳＡＯパラメータ号化部８３に出力する。
【０１６５】
（ＳＡＯパラメータ号化部８３）
ＳＡＯパラメータ号化部８３は、ＳＡＯパラメータ設定部８１で設定されたＳＡＯパラメータＳＡＯＰを符号化する。より詳細には、ＳＡＯオフセット情報ＯＩの符号化データは処理単位（例えばツリーブロック）毎に、算術符号を用いた可変長符号化によって生成され、スライスデータＳＤ内の各処理単位毎に格納される。処理単位がＣＴＢ単位の場合において、設定されたパラメータが、既に符号化されたＣＴＢのパラメータと等しい場合には、マージ制御情報（sao_merge_left_flag, sao_merge_up_flag）に対しマージを用いることを示す値を符号化し、オフセットタイプsao_type_idx及びオフセットsao_offsetは符号化しない。逆に、等しくない場合には、マージを用いないことを示す値を符号化し、オフセットタイプsao_type_idx及びオフセットsao_offsetを符号化する。より具体的には、対象ＣＴＢの左に隣接するＣＴＢとパラメータが等しい場合には、sao_merge_left_flag＝１、対象ＣＴＢの上に隣接するＣＴＢとパラメータが等しい場合には、sao_merge_up_flag＝１とし、それ以外の場合には、マージ制御情報を０とする。なお、符号化されたパラメータは、ＳＡＯパラメータ格納部８４に格納される。
【０１６６】
（ＳＡＯパラメータ格納部８４）
ＳＡＯパラメータ格納部８４は、ＳＡＯパラメータ号化部８３が符号化したＳＡＯパラメータＳＡＯＰを格納している。
【０１６７】
〔実施の形態２〕
本発明の他の実施の形態について図１２に基づいて説明すれば、以下のとおりである。本実施の形態は、ＣＴＢのサイズが所定値以上の場合のみオフセット数（sao_offset_num）を符号化し、それ以外の場合は、オフセット数を１としてオフセットを導出するものである。
【０１６８】
具体的なシンタクス例を図１２に示す。図１２は、符号化データ＃１のＣＴＢＳＡＯオフセット情報（図１２においてsao_offset_cabac()と表記）のシンタクスを示す図である。図１２に示すように、ＣＴＢのサイズが所定値（ＴＨ）以上の場合のみsao_offset_numが符号化されている。
【０１６９】
そして、ＣＴＢのサイズが所定値未満（cIdx＜TH）の場合には、sao_offset_numは符号化されず、sao_offset_num = 1としてオフセットを導出する。
【０１７０】
本実施の形態の構成によれば、オフセット数を符号化する場合をＣＴＢサイズが所定値以上の場合に限定されるので、ＣＴＢサイズが小さいために適用するオフセット数をそれほど必要としない場合に、複数のオフセットを符号化して符号量が増えてしまうことを防止することができる。
【０１７１】
また、単位領域の数とオフセット数の積で定まるオフセットを格納するためのメモリサイズを小さくすることができる。メモリサイズの低減の詳細は以下の通りである。
【０１７２】
ＳＡＯはデブロッキングフィルタ後にかかるフィルタであるため、対象ＣＴＢ内の下部領域のフィルタ処理は、対象ＣＴＢの下に隣接するＣＴＢを復号し、対象ＣＴＢと下に隣接するＣＴＢとの間の境界にデブロッキングフィルタ処理を行った後に行われる。このため、下に隣接するＣＴＢが復号されるまでの間、単位領域単位のＳＡＯパラメータＳＡＯＰ（ＣＴＢＳＡＯオフセット情報）を保持する必要があり、これは１ライン分のＣＴＢＳＡＯオフセット情報の保持が必要である。
【０１７３】
また、マージ制御情報により、ＣＴＢＳＡＯオフセット情報を隣接ＣＴＢから導出する場合にも、ＣＴＢＳＡＯオフセット情報を保持する必要がある。sao_merge_left_flagを用いる場合には１単位領域分、sao_merge_up_flagを用いる場合には１ライン分のＣＴＢＳＡＯオフセット情報の保持が必要である。これらの保持は、復号装置ではＳＡＯパラメータ格納部６４、符号化装置ではＳＡＯパラメータ格納部８４で行われる。
【０１７４】
ＣＴＢＳＡＯオフセット情報の格納に必要なメモリサイズは、単位領域の数と、単位領域当たりの必要メモリで定まる。単位領域の数は、１ラインのＣＴＢの数、すなわち、画像の幅をＣＴＢのサイズで割った数で決まる。よって、ＣＴＢのサイズが大きいほど単位領域の数は小さくなり、ＣＴＢのサイズが小さいほど単位領域の数は大きくなる。よって、単位領域の数が大きくなるようなＣＴＢサイズが小さい場合に、オフセットを格納するためのメモリサイズを小さく制限することが必要になる。また、単位領域当たりの必要メモリは、オフセットを格納するためのメモリサイズが最も大きく、オフセットを格納するためのメモリサイズは、オフセット数とオフセットの値で定まるビット数で定まる。従って、ＣＴＢサイズが小さい場合（すなわち、単位領域の数が大きくなる場合）に、単位領域当たりの必要メモリに関わる、オフセット数を小さく制限するため、単位領域の数とオフセット数の積で定まるオフセットを格納するためのメモリサイズを小さくすることができる。
【０１７５】
〔実施の形態３〕
本発明の他の実施の形態について図１３〜１５に基づいて説明すれば、以下のとおりである。本実施形態は、輝度のみオフセット数（sao_offset_num）を符号化し、色差のオフセット数については導出するものである。
【０１７６】
具体的なシンタクス例を図１３に示す。図１３は、符号化データ＃１のＣＴＢＳＡＯオフセット情報（図１３においてsao_offset_cabac()と表記）のシンタクスを示す図である。図１３に示すように、輝度の場合（cIdx=0）にオフセット数（sao_offset_num）は符号化されており、色差（cIdx > 0）の場合には、オフセットは導出される。
【０１７７】
次に、色差のオフセット数の導出方法について、図１４を参照して説明する。図１４に示すように、色差のオフセット数は固定値（例えば１）とするか、または輝度のオフセット数に依存して導出される。具体的には、図１４の（ａ）には、色差（colour componet cIdx > 0）では、オフセット数は符号化せずに１を用いる場合が示されている。
【０１７８】
また、図１４の（ｂ）には、色差のオフセット数を輝度のオフセット数と同じとする場合が示されている。
【０１７９】
また、図１４の（ｃ）には、色差のオフセット数を輝度のオフセット数の半分（(sao_nnum_offset[0][rx][ry]+1)>>1）とする場合が示されている。
【０１８０】
また、図１５の（ａ）に示すように、輝度のオフセット数が１の場合に、色差のオフセット数を０としてもよい。さらに、この場合に、図１５の（ｂ）に示すシンタクス例のように、輝度（cIdx == 0）の場合にはsao_type_idxを符号化し、色差（cIdx > 0）の場合には、輝度のオフセット数が１より大きい場合にのみsao_type_idxを符号化してもよい。そして、輝度のオフセット数が１の場合には、sao_type_idxは符号化せずにフィルタオフ（sao_type_idx=0）としてもよい。
【０１８１】
本実施形態の構成によれば、輝度と同じだけのオフセット数を必要としない色差のオフセット数を減らすことができ、符号化効率を向上させることができる。
【０１８２】
一般に、輝度に比べ色差のフィルタ効果が小さいため、輝度、色差全体の符号化効率を向上させるためには、輝度に比べ色差のオフセット数を小さくすることが適当である。また、色差において単位領域当たりのオフセット数を小さくするため、色差に関するオフセットを格納するためのメモリサイズを小さくすることができる。
【０１８３】
〔実施の形態４〕
本発明の他の実施の形態について図１６〜１９に基づいて説明すれば、以下のとおりである。本実施の形態は、オフセット数を符号化せず、導出するものである。
【０１８４】
具体的なシンタクス例を図１６に示す。図１６は、符号化データ＃１のＣＴＢＳＡＯオフセット情報（図１６においてsao_offset_cabac()と表記）のシンタクスを示す図である。図１６に示すように、本実施の形態では、オフセット数sao_offset_numは符号化されていない。
【０１８５】
オフセット数の導出方法について、図１７〜１９を参照して説明する。図１７は、ＣＴＢのサイズに応じてオフセット数を導出する場合を示す。図１７の（ａ）に示す例では、ＣＴＢサイズが６４のときにオフセット数を４、ＣＴＢサイズが３２のときにオフセット数を２、ＣＴＢサイズが１６のときにオフセット数を１としている。
【０１８６】
また、図１７の（ｂ）に示す例では、ＣＴＢサイズが６４のときにオフセット数を４、ＣＴＢサイズが３２のときとＣＴＢサイズが１６のときのオフセット数を１としている。
【０１８７】
図１８は、色コンポーネントに応じてオフセット数を導出する場合を示す。図１８に示す例では、輝度の場合のオフセット数を４、色差の場合のオフセット数を１としている。
【０１８８】
図１９は、ＣＴＢサイズと色コンポーネントに応じてオフセット数を導出する場合を示す。図１９の（ａ）に示す例では、輝度の場合でＣＴＢサイズが６４のときにオフセット数を４、ＣＴＢサイズが３２のときにオフセット数を２、ＣＴＢサイズが１６のときにオフセット数を１、色差の場合でＣＴＢサイズが６４、３２、１６のときのオフセット数を１としている。
【０１８９】
また、図１９の（ｂ）に示す例では、輝度の場合でＣＴＢサイズが６４のときにオフセット数を４、ＣＴＢサイズが３２のときにオフセット数を２、ＣＴＢサイズが１６のときにオフセット数を１、色差の場合でＣＴＢサイズが６４のときのオフセット数を２、ＣＴＢサイズが３２、１６のときのオフセット数を１としている。
【０１９０】
本実施形態の構成によれば、オフセット数を符号化する必要がないので、オフセット数を符号化するための符号量が不要となり符号化効率が向上する。また、符号化装置（エンコーダ）でオフセット数を決定する必要がなくなり、エンコーダの設計が容易になる。
【０１９１】
また、単位領域が小さくなるほど、導出するオフセット数が小さくなるので、単位領域の数とオフセット数の積で定まるオフセットを格納するためのメモリサイズを小さくすることができることができる。つまり、ＣＴＢサイズが小さい場合（単位領域の数が多くなる場合）に必要なメモリサイズを小さく制限できるという効果を奏する。
【０１９２】
〔実施の形態５〕
本発明の他の実施の形態について図２０〜２２に基づいて説明すれば、以下のとおりである。本実施の形態は、オフセット数の数に応じてオフセット値の値域を異ならせるものである。
【０１９３】
図２０に示す例では、オフセット数が４のときのオフセット値の値域を、0..(1<<(Min(bitDepth,10)−6))−1、オフセット数が２、１のときのオフセット値の値域を、0..(1<<(Min(bitDepth,10)−5))−1としている。また、オフセット値の値域をこのようにすることにより、オフセットのビット数は、オフセット数が４のときは4*Min(bitDepth,10)−6となり、オフセット数が２のときは2*Min(bitDepth,10)−5となり、オフセット数が１のときは1*Min(bitDepth,10)−5となる。
【０１９４】
例えば、bitDepth=8の場合であれば、図２０の（ｂ）に示すように、オフセット数が４の場合、オフセット値の値域は０..３、オフセットのビット数は4*(2+1)=12となり、オフセット数が２の場合、オフセット値の値域は０..７、オフセットのビット数は2*(3+1)=8となり、オフセット数が１の場合、オフセット値の値域は０..７、オフセットのビット数は1*(3+1)=4となる。
【０１９５】
また、オフセットの範囲（最大値をcMax）を式で示すと、図２０の（ｃ）に示すようになる。
【０１９６】
図２１に示す例では、オフセット数が４のときのオフセット値の値域を、0..(1<<(Min(bitDepth,10)-6))−1、オフセット数が２のときのオフセット値の値域を、0..(1<<(Min(bitDepth,10)-4))−1、オフセット数が１のときのオフセット値の値域を、0..(1<<(Min(bitDepth,10)-3))−1としている。また、オフセット値の値域をこのようにすることにより、オフセットのビット数は、オフセット数が４のときは4*Min(bitDepth,10)−6となり、オフセット数が２のときは2*Min(bitDepth,10)−4となり、オフセット数が１のときは1*Min(bitDepth,10)−3となる。
【０１９７】
例えば、bitDepth=8の場合であれば、図２１の（ｂ）に示すように、オフセット数が４の場合、オフセット値の値域は０..３、オフセットのビット数は4*(2+1)=12となり、オフセット数が２の場合、オフセット値の値域は０..１５、オフセットのビット数は2*(4+1)=10となり、オフセット数が１の場合、オフセット値の値域は０..３１、オフセットのビット数は1*(5+1)=6となる。
【０１９８】
また、オフセットの範囲（最大値をcMax）を式で示すと、図２１の（ｃ）に示すようになる。
【０１９９】
図２２に示す例では、オフセット数が４のときのオフセット値の値域を、0..(1<<(Min(bitDepth,10)-7))−1、オフセット数が２のときのオフセット値の値域を、0..(1<<(Min(bitDepth,10)-5))−1、オフセット数が１のときのオフセット値の値域を、0..(1<<(Min(bitDepth,10)-4))−1としている。また、オフセット値の値域をこのようにすることにより、オフセットのビット数は、オフセット数が４のときは4*Min(bitDepth,10)−7となり、オフセット数が２のときは2*Min(bitDepth,10)−5となり、オフセット数が１のときは1*Min(bitDepth,10)−4となる。
【０２００】
例えば、bitDepth=8の場合であれば、図２２の（ｂ）に示すように、オフセット数が４の場合、オフセット値の値域は０..１、オフセットのビット数は4*(1+1)=8となり、オフセット数が２の場合、オフセット値の値域は０..７、オフセットのビット数は2*(3+1)=8となり、オフセット数が１の場合、オフセット値の値域は０..１５、オフセットのビット数は1*(4+1)=8となる。
【０２０１】
また、オフセットの範囲（最大値をcMax）を式で示すと、図２２の（ｃ）に示すようになる。
【０２０２】
本実施形態の構成によれば、オフセット数が多い場合はオフセット値の値域を狭く、オフセット数が少ない場合はオフセット値の値域を広くするので、オフセット数とオフセット値の値域で定まる、ＳＡＯパラメータ格納部６４内のオフセット格納メモリを小さくする状態で維持することができ、メモリサイズを削減することができる。つまり、ＣＴＢサイズが小さい場合（単位領域の数が多くなる場合）に必要なメモリサイズを小さく制限できるという効果を奏する。
【０２０３】
（応用例）
上述した動画像復号装置１および動画像符号化装置２は、動画像の送信、受信、記録、再生を行う各種装置に搭載して利用することができる。なお、動画像は、カメラ等により撮像された自然動画像であってもよいし、コンピュータ等により生成された人工動画像（ＣＧおよびＧＵＩを含む）であってもよい）。
【０２０４】
まず、上述した動画像復号装置１および動画像符号化装置２を、動画像の送信および受信に利用できることを、図１９を参照して説明する。
【０２０５】
図１９（ａ）は、動画像符号化装置２を搭載した送信装置Ａの構成を示したブロック図である。図１９（ａ）に示すように、送信装置Ａは、動画像を符号化することによって符号化データを得る符号化部Ａ１と、符号化部Ａ１が得た符号化データで搬送波を変調することによって変調信号を得る変調部Ａ２と、変調部Ａ２が得た変調信号を送信する送信部Ａ３と、を備えている。上述した動画像符号化装置２は、この符号化部Ａ１として利用される。
【０２０６】
送信装置Ａは、符号化部Ａ１に入力する動画像の供給源として、動画像を撮像するカメラＡ４、動画像を記録した記録媒体Ａ５、動画像を外部から入力するための入力端子Ａ６、および画像を生成または加工する画像処理部Ａ７を更に備えていてもよい。図１９（ａ）においては、これら全てを送信装置Ａが備えた構成を例示しているが、一部を省略しても構わない。
【０２０７】
なお、記録媒体Ａ５は、符号化されていない動画像を記録したものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化された動画像を記録したものであってもよい。後者の場合、記録媒体Ａ５と符号化部Ａ１との間に、記録媒体Ａ５から読み出した符号化データを記録用の符号化方式に従って復号する復号部（不図示）を介在させるとよい。
【０２０８】
図１９（ｂ）は、動画像復号装置１を搭載した受信装置Ｂの構成を示したブロック図である。図１９（ｂ）に示すように、受信装置Ｂは、変調信号を受信する受信部Ｂ１と、受信部Ｂ１が受信した変調信号を復調することによって符号化データを得る復調部Ｂ２と、復調部Ｂ２が得た符号化データを復号することによって動画像を得る復号部Ｂ３と、を備えている。上述した動画像復号装置１は、この復号部Ｂ３として利用される。
【０２０９】
受信装置Ｂは、復号部Ｂ３が出力する動画像の供給先として、動画像を表示するディスプレイＢ４、動画像を記録するための記録媒体Ｂ５、および、動画像を外部に出力するための出力端子Ｂ６を更に備えていてもよい。図１９（ｂ）においては、これら全てを受信装置Ｂが備えた構成を例示しているが、一部を省略しても構わない。
【０２１０】
なお、記録媒体Ｂ５は、符号化されていない動画像を記録するためのものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化されたものであってもよい。後者の場合、復号部Ｂ３と記録媒体Ｂ５との間に、復号部Ｂ３から取得した動画像を記録用の符号化方式に従って符号化する符号化部（不図示）を介在させるとよい。
【０２１１】
なお、変調信号を伝送する伝送媒体は、無線であってもよいし、有線であってもよい。また、変調信号を伝送する伝送態様は、放送（ここでは、送信先が予め特定されていない送信態様を指す）であってもよいし、通信（ここでは、送信先が予め特定されている送信態様を指す）であってもよい。すなわち、変調信号の伝送は、無線放送、有線放送、無線通信、および有線通信の何れによって実現してもよい。
【０２１２】
例えば、地上デジタル放送の放送局（放送設備など）／受信局（テレビジョン受像機など）は、変調信号を無線放送で送受信する送信装置Ａ／受信装置Ｂの一例である。また、ケーブルテレビ放送の放送局（放送設備など）／受信局（テレビジョン受像機など）は、変調信号を有線放送で送受信する送信装置Ａ／受信装置Ｂの一例である。
【０２１３】
また、インターネットを用いたＶＯＤ（Video On Demand）サービスや動画共有サービスなどのサーバ（ワークステーションなど）／クライアント（テレビジョン受像機、パーソナルコンピュータ、スマートフォンなど）は、変調信号を通信で送受信する送信装置Ａ／受信装置Ｂの一例である（通常、ＬＡＮにおいては伝送媒体として無線または有線の何れかが用いられ、ＷＡＮにおいては伝送媒体として有線が用いられる）。ここで、パーソナルコンピュータには、デスクトップ型ＰＣ、ラップトップ型ＰＣ、およびタブレット型ＰＣが含まれる。また、スマートフォンには、多機能携帯電話端末も含まれる。
【０２１４】
なお、動画共有サービスのクライアントは、サーバからダウンロードした符号化データを復号してディスプレイに表示する機能に加え、カメラで撮像した動画像を符号化してサーバにアップロードする機能を有している。すなわち、動画共有サービスのクライアントは、送信装置Ａおよび受信装置Ｂの双方として機能する。
【０２１５】
次に、上述した動画像復号装置１および動画像符号化装置２を、動画像の記録および再生に利用できることを、図２０を参照して説明する。
【０２１６】
図２０（ａ）は、上述した動画像復号装置１を搭載した記録装置Ｃの構成を示したブロック図である。図２０（ａ）に示すように、記録装置Ｃは、動画像を符号化することによって符号化データを得る符号化部Ｃ１と、符号化部Ｃ１が得た符号化データを記録媒体Ｍに書き込む書込部Ｃ２と、を備えている。上述した動画像符号化装置２は、この符号化部Ｃ１として利用される。
【０２１７】
なお、記録媒体Ｍは、（１）ＨＤＤ（Hard Disk Drive）やＳＳＤ(Solid State Drive)などのように、記録装置Ｃに内蔵されるタイプのものであってもよいし、（２）ＳＤメモリカードやＵＳＢ（Universal Serial Bus）フラッシュメモリなどのように、記録装置Ｃに接続されるタイプのものであってもよいし、（３）ＤＶＤ（Digital Versatile Disc）やＢＤ（Blu-ray Disc:登録商標）などのように、記録装置Ｃに内蔵されたドライブ装置（不図示）に装填されるものであってもよい。
【０２１８】
また、記録装置Ｃは、符号化部Ｃ１に入力する動画像の供給源として、動画像を撮像するカメラＣ３、動画像を外部から入力するための入力端子Ｃ４、動画像を受信するための受信部Ｃ５、および、画像を生成または加工する画像処理部Ｃ６を更に備えていてもよい。図２０（ａ）においては、これら全てを記録装置Ｃが備えた構成を例示しているが、一部を省略しても構わない。
【０２１９】
なお、受信部Ｃ５は、符号化されていない動画像を受信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを受信するものであってもよい。後者の場合、受信部Ｃ５と符号化部Ｃ１との間に、伝送用の符号化方式で符号化された符号化データを復号する伝送用復号部（不図示）を介在させるとよい。
【０２２０】
このような記録装置Ｃとしては、例えば、ＤＶＤレコーダ、ＢＤレコーダ、ＨＤ（Hard Disk）レコーダなどが挙げられる（この場合、入力端子Ｃ４または受信部Ｃ５が動画像の主な供給源となる）。また、カムコーダ（この場合、カメラＣ３が動画像の主な供給源となる）、パーソナルコンピュータ（この場合、受信部Ｃ５または画像処理部Ｃ６が動画像の主な供給源となる）、スマートフォン（この場合、カメラＣ３または受信部Ｃ５が動画像の主な供給源となる）なども、このような記録装置Ｃの一例である。
【０２２１】
図２０（ｂ）は、上述した動画像復号装置１を搭載した再生装置Ｄの構成を示したブロックである。図２０（ｂ）に示すように、再生装置Ｄは、記録媒体Ｍに書き込まれた符号化データを読み出す読出部Ｄ１と、読出部Ｄ１が読み出した符号化データを復号することによって動画像を得る復号部Ｄ２と、を備えている。上述した動画像復号装置１は、この復号部Ｄ２として利用される。
【０２２２】
なお、記録媒体Ｍは、（１）ＨＤＤやＳＳＤなどのように、再生装置Ｄに内蔵されるタイプのものであってもよいし、（２）ＳＤメモリカードやＵＳＢフラッシュメモリなどのように、再生装置Ｄに接続されるタイプのものであってもよいし、（３）ＤＶＤやＢＤなどのように、再生装置Ｄに内蔵されたドライブ装置（不図示）に装填されるものであってもよい。
【０２２３】
また、再生装置Ｄは、復号部Ｄ２が出力する動画像の供給先として、動画像を表示するディスプレイＤ３、動画像を外部に出力するための出力端子Ｄ４、および、動画像を送信する送信部Ｄ５を更に備えていてもよい。図２０（ｂ）においては、これら全てを再生装置Ｄが備えた構成を例示しているが、一部を省略しても構わない。
【０２２４】
なお、送信部Ｄ５は、符号化されていない動画像を送信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを送信するものであってもよい。後者の場合、復号部Ｄ２と送信部Ｄ５との間に、動画像を伝送用の符号化方式で符号化する符号化部（不図示）を介在させるとよい。
【０２２５】
このような再生装置Ｄとしては、例えば、ＤＶＤプレイヤ、ＢＤプレイヤ、ＨＤＤプレイヤなどが挙げられる（この場合、テレビジョン受像機等が接続される出力端子Ｄ４が動画像の主な供給先となる）。また、テレビジョン受像機（この場合、ディスプレイＤ３が動画像の主な供給先となる）、デスクトップ型ＰＣ（この場合、出力端子Ｄ４または送信部Ｄ５が動画像の主な供給先となる）、ラップトップ型またはタブレット型ＰＣ（この場合、ディスプレイＤ３または送信部Ｄ５が動画像の主な供給先となる）、スマートフォン（この場合、ディスプレイＤ３または送信部Ｄ５が動画像の主な供給先となる）、デジタルサイネージ(電子看板や電子掲示板等とも称され、ディスプレイＤ３または送信部Ｄ５が動画像の主な供給先となる)なども、このような再生装置Ｄの一例である。
【０２２６】
（ソフトウェアによる構成）
最後に、動画像復号装置１および動画像符号化装置２の各ブロック、特に可変長符号復号部１３、動きベクトル復元部１４、インター予測画像生成部１６、イントラ予測画像生成部１７、予測方式決定部１８、逆量子化・逆変換部１９、デブロッキングフィルタ４１、適応フィルタ５０、適応オフセットフィルタ６０、変換・量子化部２１、可変長符号符号化部２２、逆量子化・逆変換部２３、イントラ予測画像生成部２５、インター予測画像生成部２６、動きベクトル検出部２７、予測方式制御部２８、動きベクトル冗長性削除部２９、デブロッキングフィルタ３３、適応フィルタ７０、適応オフセットフィルタ８０は、集積回路（ＩＣチップ）上に形成された論理回路によってハードウェア的に実現していてもよいし、ＣＰＵ（central processing unit）を用いてソフトウェア的に実現してもよい。
【０２２７】
後者の場合、動画像復号装置１および動画像符号化装置２は、各機能を実現する制御プログラムの命令を実行するＣＰＵ、上記プログラムを格納したＲＯＭ（read only memory）、上記プログラムを展開するＲＡＭ（random access memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである動画像復号装置１および動画像符号化装置２の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記の動画像復号装置１および動画像符号化装置２に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ（micro processing unit））が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０２２８】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ類、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ（compact disc read-only memory）／ＭＯディスク（magneto-optical disc）／ＭＤ（Mini Disc）／ＤＶＤ（digital versatile disc）／ＣＤ−Ｒ（CD Recordable）等の光ディスクを含むディスク類、ＩＣカード（メモリカードを含む）／光カード等のカード類、マスクＲＯＭ／ＥＰＲＯＭ（erasable programmable read-only memory）／ＥＥＰＲＯＭ（登録商標）（electrically erasable and programmable read-only memory）／フラッシュＲＯＭ等の半導体メモリ類、あるいはＰＬＤ（Programmable logic device）やＦＰＧＡ（Field Programmable Gate Array）等の論理回路類などを用いることができる。
【０２２９】
また、動画像復号装置１および動画像符号化装置２を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークは、プログラムコードを伝送可能であればよく、特に限定されない。例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ（local area network）、ＩＳＤＮ（integrated services digital network）、ＶＡＮ（value-added network）、ＣＡＴＶ（community antenna television/cable television）通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な媒体であればよく、特定の構成または種類のものに限定されない。例えば、ＩＥＥＥ（institute of electrical and electronic engineers）１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ（asymmetric digital subscriber loop）回線等の有線でも、ＩｒＤＡ（infrared data association）やリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＩＥＥＥ８０２．１１無線、ＨＤＲ（high data rate）、ＮＦＣ（Near Field Communication）、ＤＬＮＡ（Digital Living Network Alliance）、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【０２３０】
本発明は上述した各実施の形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０２３１】
本発明は、画像データにオフセットフィルタリングを行う画像フィルタに好適に用いることができる。また、符号化データを復号する復号装置、および、符号化データを符号化する符号化装置に好適に適用することができる。
【符号の説明】
【０２３２】
１      動画像復号装置（画像復号装置）
２      動画像符号化装置（画像符号化装置）
１６      インター予測画像生成部
１７      イントラ予測画像生成部
２２      可変長符号符号化部（符号化手段）
２５      イントラ予測画像生成部
２６      インター予測画像生成部
６０      適応オフセットフィルタ（画像フィルタ装置、オフセット加算手段）
６１      ＳＡＯパラメータ復号部（復号手段）
６３      オフセット設定部（オフセット数導出手段、オフセット選択手段、実オフセット導出手段）
８０      適応オフセットフィルタ（画像フィルタ装置、オフセット加算手段）
６２１      特性値算出部
６２４      オフセット割り付け部
６２５      オフセット適用部（フィルタ手段）
【図１】
2013251827.tif 000003
【図２】
2013251827.tif 000004
【図３】
2013251827.tif 000005
【図４】
2013251827.tif 000006
【図５】
2013251827.tif 000007
【図６】
2013251827.tif 000008
【図７】
2013251827.tif 000009
【図８】
2013251827.tif 000010
【図９】
2013251827.tif 000011
【図１０】
2013251827.tif 000012
【図１１】
2013251827.tif 000013
【図１２】
2013251827.tif 000014
【図１３】
2013251827.tif 000015
【図１４】
2013251827.tif 000016
【図１５】
2013251827.tif 000017
【図１６】
2013251827.tif 000018
【図１７】
2013251827.tif 000019
【図１８】
2013251827.tif 000020
【図１９】
2013251827.tif 000021
【図２０】
2013251827.tif 000022
【図２１】
2013251827.tif 000023
【図２２】
2013251827.tif 000024
【図２３】
2013251827.tif 000025
【図２４】
2013251827.tif 000026
【図２５】
2013251827.tif 000027
【図２６】
2013251827.tif 000028