(57)【要約】【課題】算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、符号化効率の改善を図る。【解決手段】ＣＡＢＡＣを行う画像符号化装置であって、直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非０の係数値を有する領域を特定する特定部と、シンタックス要素に含まれる有意係数フラグが、領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグに対し、特定された領域の位置を用いて、非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示すグループフラグを有する第１領域群を推定する推定部と、前記最後の非０の係数値の位置、前記第１領域群以外の領域のグループフラグ、及び、前記第１領域群以外でグループフラグが非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示す領域と前記第１領域群の領域との有意係数フラグ、を算術符号化する算術符号化部とを備える。【選択図】図４
2014096638.tif 000002
【特許請求の範囲】
【請求項１】
コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）を行う画像符号化装置であって、
直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非０の係数値を有する領域を特定する特定部と、
前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグに対し、前記特定部により特定された領域の位置を用いて、非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示すグループフラグを有する第１領域群を推定する推定部と、
前記最後の非０の係数値の位置、前記第１領域群以外の領域のグループフラグ、及び、前記第１領域群以外でグループフラグが非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示す領域と前記第１領域群の領域との有意係数フラグ、を算術符号化する算術符号化部と
を備える画像符号化装置。
【請求項２】
前記特定部は、
特定された前記領域における、前記最後の非０の係数値の位置を特定し、
前記推定部は、
前記特定部により特定された係数値の位置を用いて、前記第１領域群を拡張する請求項１記載の画像符号化装置。
【請求項３】
前記推定部は、
前記複数の領域のうち、前記特定部により特定された領域の位置を用いて、前記第１領域群と、全ての有意係数フラグが０の係数値を示すグループフラグを有する第２領域群とを推定し、
前記算術符号化部は、
前記最後の非０の係数値の位置、及び前記第１領域群の領域の有意係数フラグを算術符号化し、前記第１領域群と前記第２領域群とのグループフラグを算術符号化しない請求項１又は２記載の画像符号化装置。
【請求項４】
前記第１領域群以外の領域のグループフラグの値に基づいて、前記第２領域群を推定するか否かを決定する決定部をさらに備え、
前記算術符号化部は、
前記決定部の決定内容を示す使用フラグに基づいて、前記第２領域群のグループフラグを算術符号化するか否かを決定し、前記使用フラグを符号化対象に含めて算術符号化を行う請求項３記載の画像符号化装置。
【請求項５】
コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）を行う画像符号化装置における画像符号化方法であって、
直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非０の係数値を有する領域を特定する特定ステップと、
前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグに対し、前記特定ステップにより特定された領域の位置を用いて、非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示すグループフラグを有する第１領域群を推定する推定ステップと、
前記最後の非０の係数値の位置、前記第１領域群以外の領域のグループフラグ、及び、前記第１領域群以外でグループフラグが非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示す領域と前記第１領域群の領域との有意係数フラグ、を算術符号化する算術符号化ステップと
を有する画像符号化方法。
【請求項６】
コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）を行うためのコンピュータに、
直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非０の係数値を有する領域を特定する特定ステップと、
前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグに対し、前記特定ステップにより特定された領域の位置を用いて、非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示すグループフラグを有する第１領域群を推定する推定ステップと、
前記最後の非０の係数値の位置、前記第１領域群以外の領域のグループフラグ、及び、前記第１領域群以外でグループフラグが非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示す領域と前記第１領域群の領域との有意係数フラグ、を算術符号化する算術符号化ステップと
を実行させる画像符号化プログラム。
【請求項７】
コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）が行われたストリームを復号する画像復号装置であって、
前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非０の係数値の位置を復号する位置復号部と、
復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非０の係数値を有する領域を特定する特定部と、
特定された前記領域に基づき、前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグを復号する第１フラグ復号部と、
復号された前記グループフラグの値が、非０の係数値を示す有意係数フラグが少なくとも１つ含むことを示す値となる領域の有意係数フラグを復号する第２フラグ復号部と、
を備える画像復号装置。
【請求項８】
コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）が行われたストリームを復号する画像復号装置における画像復号方法であって、
前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非０の係数値の位置を復号する位置復号ステップと、
復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非０の係数値を有する領域を特定する特定ステップと、
特定された前記領域に基づき、前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグを復号する第１フラグ復号ステップと、
復号された前記グループフラグの値が、非０の係数値を示す有意係数フラグが少なくとも１つ含むことを示す値となる領域の有意係数フラグを復号する第２フラグ復号ステップと、
を有する画像復号方法。
【請求項９】
コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）が行われたストリームを復号するためのコンピュータに、
前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非０の係数値の位置を復号する位置復号ステップと、
復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非０の係数値を有する領域を特定する特定ステップと、
特定された前記領域に基づき、前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグを復号する第１フラグ復号ステップと、
復号された前記グループフラグの値が、非０の係数値を示す有意係数フラグが少なくとも１つ含むことを示す値となる領域の有意係数フラグを復号する第２フラグ復号ステップと、
を実行させる画像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、算術符号化を行う画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラムに関する。
【背景技術】
【０００２】
近年マルチメディア化が進み、動画像を扱う機会が多くなってきている。画像データは情報量が大きく、画像の集合である動画像は、テレビ放送の主流であるハイビジョン（１９２０×１０８０）放送で１Ｇｂｉｔ／ｓｅｃを超える情報量である。
【０００３】
そのため、動画像データは、Ｈ．２６４／ＡＶＣ（Advanced Video Coding）（例えば非特許文献１参照）や規格化作業中のＨＥＶＣ（High Efficiency Video Coding）などに代表される符号化標準技術によって、情報量を圧縮して伝送・蓄積が行われている。
【０００４】
これらの符号化技術において、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ：Context-Adaptive Binary Arithmetic Coding）という技術が用いられる。ＣＡＢＡＣでは、様々なシンタックス要素が用いられ、算術符号化が行われる。
【０００５】
このシンタックス要素の１つである有意係数フラグ（significant_coeff_flag）は、変換対象ブロック内の各係数値の位置毎に設定される。この有意係数フラグは、各係数値が０か否かを示す値を有するフラグである。例えば、有意係数フラグが１の場合は非０の係数値であることを示し、有意係数フラグが０の場合は０の係数値であることを示す。
【０００６】
この有意係数フラグを算術符号化する際に、データ量を削減する技術がある。例えば、ＨＥＶＣにおいて、変換ブロック（ＴＵ：Transform Unit）のサイズが１６×１６もしくは３２×３２の場合に、ＴＵを１６分割した各領域内の有意係数フラグをグループ化する概念の導入が検討されている。具体的には、各領域内に、１の値を有する有意係数フラグが少なくとも１つ含まれるか否かを示すグループフラグ（significant_coeffgroup_flag）が導入される（非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Nguyen Nguyen, Tianying Ji, Dake He, Gaelle Martin-Cocher, and Lin Song ,"Multi-level significance maps for Large Transform Unit", JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/WG11 JCTVC-G644 (Nov.2011)
【発明の概要】
【発明が解決しようとする課題】
【０００８】
図１は、有意係数フラグとグループフラグとの関係の一例を示す図である。図１に示す例では、変換対象の変換ブロックｔｕ１０１（サイズ１６×１６）が、４×４を１つのグループとした領域に分割される。１つの升目が１つの画素位置を示し、変換ブロックｔｕ１０１内の「１」、「０」の値は、有意係数フラグの値を示す。
【０００９】
ここで、グループフラグを導入しない場合、図１に示す範囲ａｒ１００に含まれる有意係数２１７個が符号化される。なお、図１に示す範囲ａｒ１０１に含まれる有意係数フラグは、最後の非０の有意係数（last_significant_coeff）以降の係数位置のため、符号化されない。
【００１０】
一方、非特許文献１に記載のようにグループフラグを導入した場合、各領域のグループフラグと、グループフラグが１である領域内の有意係数フラグとが符号化される。図１に示す領域ブロックｇｒ１０１は、変換ブロックｔｕ１０１を４×４に分割し、グループ化した領域のブロックを示す。
【００１１】
領域ブロックｇｒ１０１内の値は、グループフラグの値を示す。図１に示す例では、グループフラグが１の場合、領域内に、１の値を有する有意係数フラグを少なくとも１つ含むことを示し、グループフラグが０の場合、領域内の有意係数フラグが全て０の値であることを示す。
【００１２】
範囲ａｒ１０２に含まれる領域のグループフラグは、last_significant_coeffを含む領域であるため、グループフラグが１であることが想定されるため符号化されない。また、範囲ａｒ１０３内に含まれる各領域のグループフラグは、１であることが想定されるため符号化されない。これは、右側及び下側に隣接した領域のグループフラグがともに１であるので、周波数変換後の係数の特性を考慮すると、範囲内ａｒ１０３内のグループフラグは１であることが想定されるからである。
【００１３】
この結果、グループフラグを導入した場合に符号化されるデータは、図２に示される。図２は、グループフラグを導入した場合の符号化データの一例を示す図である。図２に示す例では、範囲ａｒ１０４内に含まれる有意係数フラグ１４８個と、範囲ａｒ１０５内に含まれるグループフラグ１０個とが符号化データとなる。
【００１４】
非特許文献１の技術では、図１，２に示す例において、グループフラグを導入しない場合の符号化データ２１７個に対し、５９（＝２１７−（１４８＋１０））個の符号化データを削減することができる。
【００１５】
しかしながら、グループフラグを導入する場合でも、符号化効率を改善する余地がまだある。
【００１６】
そこで、本発明は、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、符号化効率の改善を図ることができる画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明の一態様における画像符号化装置は、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）を行う画像符号化装置であって、直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非０の係数値を有する領域を特定する特定部と、前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグに対し、前記特定部により特定された領域の位置を用いて、非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示すグループフラグを有する第１領域群を推定する推定部と、前記最後の非０の係数値の位置、前記第１領域群以外の領域のグループフラグ、及び、前記第１領域群以外でグループフラグが非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示す領域と前記第１領域群の領域との有意係数フラグ、を算術符号化する算術符号化部とを備える。
【００１８】
また、前記特定部は、前記特定された領域における、前記最後の非０の係数値の位置を特定し、前記推定部は、前記特定部により特定された係数値の位置を用いて、前記第１領域群を拡張してもよい。
【００１９】
また、前記推定部は、前記複数の領域のうち、前記特定部により特定された領域の位置を用いて、前記第１領域群と、全ての有意係数フラグが０の係数値を示すグループフラグを有する第２領域群とを推定し、前記算術符号化部は、前記最後の非０の係数値の位置、及び前記第１領域群の領域の有意係数フラグを算術符号化し、前記第１領域群と前記第２領域群とのグループフラグを算術符号化しなくてもよい。
【００２０】
また、前記第１領域群以外の領域のグループフラグの値に基づいて、前記第２領域群を推定するか否かを決定する決定部をさらに有し、前記算術符号化部は、前記決定部の決定内容を示す使用フラグに基づいて、前記第２領域群のグループフラグを算術符号化するか否かを決定し、前記使用フラグを符号化対象に含めて算術符号化を行わなくてもよい。
【００２１】
また、本発明の他の態様における画像符号化方法は、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）を行う画像符号化装置における画像符号化方法であって、直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非０の係数値を有する領域を特定する特定ステップと、前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグに対し、前記特定ステップにより特定された領域の位置を用いて、非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示すグループフラグを有する第１領域群を推定する推定ステップと、前記最後の非０の係数値の位置、前記第１領域群以外の領域のグループフラグ、及び、前記第１領域群以外でグループフラグが非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示す領域と前記第１領域群の領域との有意係数フラグ、を算術符号化する算術符号化ステップとを有する。
【００２２】
また、本発明の他の態様における画像符号化プログラムは、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）を行うためのコンピュータに、直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非０の係数値を有する領域を特定する特定ステップと、前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグに対し、前記特定ステップにより特定された領域の位置を用いて、非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示すグループフラグを有する第１領域群を推定する推定ステップと、前記最後の非０の係数値の位置、前記第１領域群以外の領域のグループフラグ、及び、前記第１領域群以外でグループフラグが非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示す領域と前記第１領域群の領域との有意係数フラグ、を算術符号化する算術符号化ステップとを実行させる。
【００２３】
また、本発明の他の態様における画像復号装置は、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）が行われたストリームを復号する画像復号装置であって、前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非０の係数値の位置を復号する位置復号部と、復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非０の係数値を有する領域を特定する特定部と、特定された前記領域に基づき、前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグを復号する第１フラグ復号部と、復号された前記グループフラグの値が、非０の係数値を示す有意係数フラグが少なくとも１つ含むことを示す値となる領域の有意係数フラグを復号する第２フラグ復号部と、を備える。
【００２４】
また、また、本発明の他の態様における画像復号方法は、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）が行われたストリームを復号する画像復号装置における画像復号方法であって、前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非０の係数値の位置を復号する位置復号ステップと、復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非０の係数値を有する領域を特定する特定ステップと、特定された前記領域に基づき、前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグを復号する第１フラグ復号ステップと、復号された前記グループフラグの値が、非０の係数値を示す有意係数フラグが少なくとも１つ含むことを示す値となる領域の有意係数フラグを復号する第２フラグ復号ステップと、を有する。
【００２５】
また、本発明の他の態様における画像復号プログラムは、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）が行われたストリームを復号するためのコンピュータに、前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非０の係数値の位置を復号する位置復号ステップと、復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非０の係数値を有する領域を特定する特定ステップと、特定された前記領域に基づき、前記ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグを復号する第１フラグ復号ステップと、復号された前記グループフラグの値が、非０の係数値を示す有意係数フラグが少なくとも１つ含むことを示す値となる領域の有意係数フラグを復号する第２フラグ復号ステップと、を実行させる。
【発明の効果】
【００２６】
本発明によれば、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、符号化効率の改善を図ることができる。
【図面の簡単な説明】
【００２７】
【図１】有意係数フラグとグループフラグとの関係の一例を示す図。
【図２】グループフラグを導入した場合の符号化データの一例を示す図。
【図３】実施例１における画像符号化装置の概略構成の一例を示すブロック図。
【図４】実施例１におけるエントロピー符号化部の構成の一例を示すブロック図。
【図５】実施例１における削減部の構成の一例を示すブロック図。
【図６】第１領域群を説明するための図。
【図７】変換ブロックと領域との一例を示す図。
【図８】推定例１を示す図。
【図９】推定例２を示す図。
【図１０】推定例３を示す図。
【図１１】推定例４を示す図。
【図１２】実施例１における有意係数フラグに関する符号化処理の一例を示すフローチャート。
【図１３】実施例２における削減部の構成の一例を示すブロック図。
【図１４】推定例５を示す図。
【図１５】実施例２における有意係数フラグに関する符号化処理の一例を示すフローチャート。
【図１６】実施例３における削減部の構成の一例を示すブロック図。
【図１７】各領域のグループフラグの例を示す図。
【図１８】実施例３における有意係数フラグに関する符号化処理の一例を示すフローチャート。
【図１９】実施例４における画像復号装置の概略構成の一例を示すブロック図。
【図２０】実施例４におけるエントロピー復号部の構成の一例を示すブロック図。
【図２１】実施例４における有意係数フラグに関する復号処理の一例を示すフローチャート。
【図２２】実施例５における画像処理装置８０の構成の一例を示すブロック図。
【発明を実施するための形態】
【００２８】
以下、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、さらなる符号化効率の改善を図ることができる各実施例について、添付図面を参照しながら詳細に説明する。
【００２９】
［実施例１］
実施例１では、直交変換の対象ブロック内の最後の非０の係数値であるlast_significant_coeffを含む領域より左上方向に存在する領域に対し、グループフラグを１と推定して符号化しないことで、符号化効率を向上させる。
【００３０】
＜構成＞
図３は、実施例１における画像符号化装置１０の概略構成の一例を示すブロック図である。図３に示す例では、画像符号化装置１０は、前処理部１００、予測誤差信号生成部１０１、直交変換部１０２、量子化部１０３、エントロピー符号化部１０４、逆量子化部１０５、逆直交変換部１０６、復号画像生成部１０７、ループフィルタ部１０９、復号画像記憶部１１０、イントラ予測部１１１、インター予測部１１２、動きベクトル計算部１１３及び予測画像選択部１１５を有する。各部についての概略を以下に説明する。
【００３１】
前処理部１００は、ピクチャタイプに合わせてピクチャを並べ替え、ピクチャタイプ及びフレームごとのフレーム画像等を順次出力する。また、前処理部１００は、ブロック分割なども行う。
【００３２】
予測誤差信号生成部１０１は、入力された動画像データの符号化対象画像が、例えば３２×３２、１６×１６、８×８画素などのブロックに分割されたブロックデータを取得する。
【００３３】
予測誤差信号生成部１０１は、そのブロックデータと、予測画像選択部１１５から出力される予測画像のブロックデータとにより、予測誤差信号を生成する。予測誤差信号生成部１０１は、生成された予測誤差信号を直交変換部１０２に出力する。
【００３４】
直交変換部１０２は、入力された予測誤差信号を直交変換処理する。直交変換部１０２は、変換された係数値を示す信号を量子化部１０３に出力する。
【００３５】
量子化部１０３は、直交変換部１０２からの出力信号を量子化する。量子化部１０３は、量子化することによって出力信号の符号量を低減し、この出力信号をエントロピー符号化部１０４及び逆量子化部１０５に出力する。
【００３６】
エントロピー符号化部１０４は、量子化部１０３からの出力信号や動きベクトル計算部１１３から出力された動きベクトル情報やループフィルタ部１０９からのフィルタ係数などをエントロピー符号化して出力する。エントロピー符号化とは、シンボルの出現頻度に応じて可変長の符号を割り当てる方式をいう。エントロピー符号化部１０４の詳細は、図４などを用いて後述する。
【００３７】
逆量子化部１０５は、量子化部１０３からの出力信号を逆量子化してから逆直交変換部１０６に出力する。逆直交変換部１０６は、逆量子化部１０５からの出力信号を逆直交変換処理してから復号画像生成部１０７に出力する。これら逆量子化部１０５及び逆直交変換部１０６によって復号処理が行われることにより、符号化前の予測誤差信号と同程度の信号が得られる。
【００３８】
復号画像生成部１０７は、インター予測部１１２で動き補償された画像のブロックデータと、逆量子化部１０５及び逆直交変換部１０６により復号処理された予測誤差信号とを加算する。復号画像生成部１０７は、加算して生成した復号画像のブロックデータを、ループフィルタ部１０９に出力する。
【００３９】
ループフィルタ部１０９は、例えばＡＬＦ（Adaptive Loop Filter）やデブロッキングフィルタであり、いずれか又は両方を備えてもよい。
【００４０】
例えば、ループフィルタ部１０９は、入力画像を所定サイズ毎のグループに分け、グループ毎に適切なフィルタ係数を生成する。ループフィルタ部１０９は、フィルタ処理された復号画像を、所定サイズ毎にグループ分けし、生成したフィルタ係数を用いてグループ毎にフィルタ処理を行う。ループフィルタ部１０９は、フィルタ処理結果を復号画像記憶部１１０に出力し、参照画像として蓄積させる。所定サイズは、例えば、直交変換サイズである。
【００４１】
復号画像記憶部１１０は、入力した復号画像のブロックデータを新たな参照画像のデータとして記憶し、イントラ予測部１１１、インター予測部１１２及び動きベクトル計算部１１３に出力する。
【００４２】
イントラ予測部１１１は、符号化対象画像の処理対象ブロックに対して、すでに符号化された参照画素から予測画像のブロックデータを生成する。イントラ予測部１１１は、複数の予測方向を用いて予測を行い、最適な予測方向を決定する。
【００４３】
インター予測部１１２は、復号画像記憶部１１０から取得した参照画像のデータを動きベクトル計算部１１３から提供される動きベクトルで動き補償する。これにより、動き補償された参照画像としてのブロックデータが生成される。インター予測部１１２は、動き補償に用いた予測ブロックの情報を直交変換部１０２に出力する。
【００４４】
動きベクトル計算部１１３は、符号化対象画像におけるブロックデータと、復号画像記憶部１１０から取得する参照画像とを用いて、動きベクトルを求める。動きベクトルとは、ブロック単位で参照画像内から処理対象ブロックに最も類似している位置を探索するブロックマッチング技術などを用いて求められるブロック単位の空間的なずれを示す値である。
【００４５】
動きベクトル計算部１１３は、求めた動きベクトルをインター予測部１１２に出力し、動きベクトルや参照画像を示す情報を含む動きベクトル情報をエントロピー符号化部１０４に出力する。
【００４６】
イントラ予測部１１１とインター予測部１１２から出力されたブロックデータは、予測画像選択部１１５に入力される。
【００４７】
予測画像選択部１１５は、イントラ予測部１１１とインター予測部１１２から取得したブロックデータのうち、どちらか一方のブロックデータを予測画像として選択する。選択された予測画像は、予測誤差信号生成部１０１に出力される。
【００４８】
なお、図３に示す画像符号化装置１０の構成は一例であり、必要に応じて各構成を組み合わせたり、各構成を適宜変更したりしてもよい。
【００４９】
＜エントロピー符号化部の構成＞
次に、エントロピー符号化部１０４の構成について説明する。図４は、実施例１におけるエントロピー符号化部１０４の構成の一例を示すブロック図である。図４に示すエントロピー符号化部１０４は、可変長符号化部２００と、２値算術符号化部２０１とを有する。
【００５０】
可変長符号化部２００は、例えば、ＣＡＶＬＣ（Context-Adaptive Variable Length Coding）と呼ばれるコンテキスト適応型可変長符号化方式を利用して、量子化されたＤＣＴの係数値のうち、必要な係数値を符号化する。符号化された係数値は、ストリームに含まれる。
【００５１】
２値算術符号化部２０１は、例えば、ＣＡＢＡＣを利用してシンタックス要素などを算術符号化する。２値算術符号化部２０１は、２値化部２０２、削減部２０３、コンテキスト計算部２０４、算術符号化部２０５を有する。
【００５２】
２値化部２０２は、多値信号のシンタックス要素を２値信号に変換する。２値化の方式は、シンタックス要素によって異なるようにしてもよい。
【００５３】
削減部２０３は、２値化されたシンタックス要素のうち、有意係数フラグに対するグループフラグ（significant_coeffgroup_flag）について、符号化データを削減する。削減部２０３の詳細は、図５を用いて後述する。
【００５４】
コンテキスト計算部２０４は、２値信号の発生確率を複数保持しており、現在の符号化対象や周囲の状況（コンテキスト）に応じて発生確率を切替えて算術符号化部２０５に与える。
【００５５】
算術符号化部２０５は、与えられた２値信号の発生確率を用いて入力信号を算術符号化する。算術符号化されたデータは、ストリームに含まれる。
【００５６】
＜削減部＞
次に、削減部２０３の構成について説明する。図５は、実施例１における削減部２０３ａの構成の一例を示すブロック図である。図５に示す削減部２０３ａは、特定部３０１と、推定部３０２とを有する。削減部２０３ａでは、有意係数フラグに対するグループフラグを削減対象とするため、その他のシンタックス要素については言及しない。
【００５７】
特定部３０１は、２値化された有意係数フラグに基づいて、直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非０の係数値（last_significant_coeff）を有する領域を特定する。以降では、直交変換の対象ブロックを変換ブロックとも称し、last_significant_coeffを有する領域を最後領域とも称す。
【００５８】
また、特定部３０１は、位置特定部３１１を有し、位置特定部３１１は、最後領域内のどの位置に、最後の非０の係数値があるかを特定してもよい。以降では、最後の非０の係数値がある位置を最後位置とも称す。特定部３０１は、特定した最後領域、最後位置を推定部３０２に出力する。
【００５９】
推定部３０２は、ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグに対し、以下の推定を行う。推定部３０２は、特定部３０１により特定された領域の位置を用いて、非０の係数値を示す有意係数フラグを少なくとも１つ領域内に含むことを示すグループフラグを有する領域を推定する。以降では、推定部３０２により推定された領域を第１領域群とも称す。
【００６０】
例えば、グループフラグは、領域内の有意係数フラグが全て「０」の場合に、「０」を示し、領域内の有意係数フラグが少なくとも１つ「１」を含む場合に、「１」を示すとする。
【００６１】
推定部３０２は、最後領域の位置を用いて、グループフラグが「１」となる領域を含む第１領域群を推定する。
【００６２】
推定部３０２は、第１領域群推定部３２１と、不要領域決定部３２２とを有する。第１領域群推定部３２１は、例えば、変換ブロック内の領域のうち、最後領域よりも左上方向に位置する領域を第１領域群として推定する。また、第１領域群推定部３２１は、最後位置を取得した場合は、最後位置を用いて、第１領域群を拡張してもよい。つまり、第１領域群推定部３２１は、最後位置を用いて、第１領域群に含まれる領域の数を増加させてもよい。
【００６３】
不要領域決定部３２２は、グループフラグが１であると推定された第１領域群に含まれる領域を、符号化が不要な領域として決定する。推定部３０２は、最後位置と、第１領域群以外のグループフラグと、グループフラグが「１」（推定された「１」も含む）の領域内の有意係数フラグとを算術符号化部２０５に出力する。これにより、算術符号化部２０５では、第１領域群のグループフラグを符号化しない。
【００６４】
よって、算術符号化部２０５は、最後の非０の係数値の位置（最後位置）と、第１領域群以外の領域のグループフラグとを算術符号化する。なお、算術符号化部２０５は、最後領域以降に走査される領域が存在する場合は、この領域と第１領域群の領域とを符号化不要領域とし、符号化不要領域以外の領域のグループフラグを算術符号化する。
【００６５】
また、算術符号化部２０５は、第１領域群以外の領域のグループフラグが、非０の係数値を示す有意係数フラグを少なくとも１つ含むことを示す領域内の有意係数フラグと、前記第１領域群の領域内の有意係数フラグとを算術符号化する。つまり、算術符号化部２０５は、グループフラグが「１」（推定された「１」も含む）の領域内の有意係数フラグを算術符号化する。
【００６６】
算術符号化部２０５は、所定の走査順（例えばジグザグスキャン）により走査したグループフラグや有意係数フラグを算術符号化する。このとき、符号化されないグループフラグや有意係数フラグがどの位置にあるかについては、デコーダ側で認識可能である。なぜなら、デコーダ側では、最後位置を復号することで最後領域を特定でき、最後領域が分かればエンコーダと同様にしてどの領域のグループフラグが符号化されていないかを認識することができるからである。
【００６７】
＜第１領域群の例＞
次に、第１領域群の例について説明する。図６は、第１領域群を説明するための図である。図６（Ａ）は、有意係数フラグで表された変換ブロックの一例を示す図である。図６（Ａ）に示す有意係数フラグｆｒ２０１は、例えばジグザグスキャンにおいて最後位置にある有意係数フラグである。
【００６８】
図６（Ａ）に示すように、最後位置の左上方向の有意係数フラグを含む範囲ａｒ２０１内のグループフラグが「１」と推定される。この推定は、例えばＤＣＴ（Discrete Cosine Transform）により周波数変換された係数値に対し、左上方向に非０の係数値が集まる傾向に基づく。
【００６９】
図６（Ｂ）は、図６（Ａ）の領域毎のグループフラグを示す図である。図６（Ｂ）に示すように、領域内に１つでも「１」の有意係数フラグがあればグループフラグは「１」になり、領域内全てが「０」の有意係数フラグであればグループフラグは「０」である。
【００７０】
ここで、最後領域及び最後位置を用いた場合の第１領域群が、図６（Ｂ）に示される。推定部３０２は、最後領域及び最後位置を用いて、範囲ａｒ２０２内にある領域を、グループフラグが「１」である領域と推定する。推定の詳細な方法については、図７〜１１を用いて後述する。
【００７１】
これにより、算術符号化部２０５は、第１領域群内のグループフラグを符号化せず、範囲ａｒ２０３、ａｒ２０４内のグループフラグを符号化する。算術符号化部２０５は、例えば、所定の走査順で走査し、符号化するグループフラグだけを符号化すればよい。最も右下の領域は、最後位置に基づきグループフラグが０であることが推定されるので、符号化されない。
【００７２】
＜推定処理＞
次に、推定部３０２による推定処理について、具体例を用いて説明する。図７は、変換ブロックと領域との一例を示す図である。図７（Ａ）は変換ブロックを示す。図７（Ａ）に示す例では、変換ブロックとして１６×１６を用いて説明するが、３２×３２などでもよい。図７（Ａ）に示す例では、変換ブロックを分割した領域をＡ［ｋ］［ｌ］（ｋ＝０〜３、ｌ＝０〜３）として表す。
【００７３】
図７（Ｂ）は、領域内の画素位置を示す。図７（Ｂ）に示す例では、領域内の画素位置をＢ［ｎ］［ｍ］（ｎ＝０〜３、ｍ＝０〜３）として表す。
【００７４】
（推定例１）
図８は、推定例１を示す図である。図８では、特定部３０１が、最後領域をＡ［２］［３］と特定した場合である（図８（Ａ））。
【００７５】
このとき、推定部３０２は、最後領域Ａ［２］［３］よりも左上方向に存在する範囲ａｒ３０２内にある領域（Ａ［０〜１］［０〜２］）のグループフラグを「１」と推定し、範囲ａｒ３０２内にある領域を第１領域群と推定する。また、推定部３０２は、最後領域であるＡ［２］［３］も、グループフラグは「１」となるため、第１領域群に含める。
【００７６】
図８に示す例は、最後位置が、Ｂ［０］［０］の場合の推定処理であり（図８（Ｂ））、また、最後位置を特定せず、最後領域のみで第１領域群を推定する場合の推定処理でもある。
【００７７】
これにより、算術符号化部２０５は、範囲ａｒ３０３、ａｒ３０４内の領域のグループフラグだけを符号化すればよい。
【００７８】
（推定例２）
図９は、推定例２を示す図である。図９では、特定部３０１が、最後領域をＡ［２］［３］と特定し（図９（Ａ））、最後位置をＢ［０］［１〜３］のいずれかに特定した場合である（図９（Ｂ））。
【００７９】
このとき、推定部３０２は、最後領域Ａ［２］［３］よりも左上方向に存在する領域（Ａ［０〜１］［０〜２］）のグループフラグを「１」と推定する。また、推定部３０２は、最後位置の上方向にも「１」の有意係数フラグがあると推定し、領域Ａ［０］［３］、Ａ［１］［３］を第１領域群に含める。よって、推定部３０２は、範囲ａｒ４０２内にある領域を第１領域群と推定する。また、推定部３０２は、最後領域であるＡ［２］［３］も、グループフラグは「１」となるため、第１領域群に含める。
【００８０】
これにより、算術符号化部２０５は、範囲ａｒ４０３内の領域のグループフラグだけを符号化すればよい。
【００８１】
（推定例３）
図１０は、推定例３を示す図である。図１０では、特定部３０１が、最後領域をＡ［２］［３］と特定し（図１０（Ａ））、最後位置をＢ［１〜３］［０］のいずれかに特定した場合である（図１０（Ｂ））。
【００８２】
このとき、推定部３０２は、最後領域Ａ［２］［３］よりも左上方向に存在する領域（Ａ［０〜１］［０〜２］）のグループフラグを「１」と推定する。また、推定部３０２は、最後位置の左方向にも「１」の有意係数フラグがあると推定し、領域Ａ［２］［０］、Ａ［２］［１］、Ａ［２］［２］を第１領域群に含める。よって、推定部３０２は、範囲ａｒ５０２内にある領域を第１領域群と推定する。また、推定部３０２は、最後領域であるＡ［２］［３］も、グループフラグは「１」となるため、第１領域群に含める。
【００８３】
これにより、算術符号化部２０５は、範囲ａｒ５０３、ａｒ５０４内の領域のグループフラグだけを符号化すればよい。
【００８４】
（推定例４）
図１１は、推定例４を示す図である。図１１では、特定部３０１が、最後領域をＡ［２］［３］と特定し（図１１（Ａ））、最後位置をＢ［１〜３］［１〜３］のいずれかに特定した場合である（図１１（Ｂ））。
【００８５】
このとき、推定部３０２は、最後領域Ａ［２］［３］よりも左上方向に存在する領域（Ａ［０〜１］［０〜２］）のグループフラグを「１」と推定する。また、推定部３０２は、最後位置の上方向及び左方向にも「１」の有意係数フラグがあると推定し、領域Ａ［０］［３］、Ａ［１］［３］、Ａ［２］［０］、Ａ［２］［１］、Ａ［２］［２］を第１領域群に含める。よって、推定部３０２は、範囲ａｒ６０２内にある領域を第１領域群と推定する。また、推定部３０２は、最後領域であるＡ［２］［３］も、グループフラグは「１」となるため、第１領域群に含める。
【００８６】
これにより、算術符号化部２０５は、範囲ａｒ６０３内の領域のグループフラグだけを符号化すればよい。
【００８７】
以上の推定処理により、図２に示す従来技術よりも、符号化されるグループフラグの数を削減することができ、符号化効率の向上を図ることができる。
【００８８】
＜動作＞
次に、実施例１における画像符号化装置１０の動作について説明する。図１２は、実施例１におけるシンタックス要素の１つである有意係数フラグに関する符号化処理の一例を示すフローチャートである。図１２に示す処理は、有意係数フラグやグループフラグに対する算術符号化処理を示す。
【００８９】
ステップＳ１０１で、特定部３０１は、変換ブロック内の複数の領域に対し、最後の非０係数値を含む領域（最後領域）を特定する。また、特定部３０１は、さらに、領域内における最後の非０係数値の位置（最後位置）を特定してもよい。
【００９０】
ステップＳ１０２で、推定部３０２は、最後領域の位置を用いて、グループフラグが「１」となる可能性が高い領域を含む第１領域群を推定する（例えば図８参照）。推定部３０２は、最後位置が特定されている場合は、最後位置を用いて第１領域群の領域を拡張してもよい（例えば図９〜１１参照）。
【００９１】
ステップＳ１０３で、推定部３０２は、第１領域群を、符号化不要領域として決定する。従って、推定部３０２は、第１領域群を含む符号化不要領域以外の領域のグループフラグを算術符号化部２０５に出力する。符号化不要領域は、第１領域群の領域と、最後領域以降に走査される領域とを含む。
【００９２】
ステップＳ１０４で、算術符号化部２０５は、最後位置と、符号化が不要な領域以外の領域のグループフラグと、グループフラグが「１」（推定された「１」も含む）を示す領域の有意係数フラグとを算術符号化する。
【００９３】
なお、ステップＳ１０３の符号化不要決定処理は、第１領域群のグループフラグを出力しないと予め決定しておくことが可能であり、必ずしも必要な処理ではない。
【００９４】
以上、実施例１によれば、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、符号化効率の改善を図ることができる。また、実施例１によれば、最後位置を特定することで、第１領域群を拡張することで、さらなる符号化効率の改善を図ることができる。
【００９５】
［実施例２］
次に、実施例２における画像符号化装置について説明する。実施例２では、最後領域の位置を用いて、グループフラグが「０」となる領域を推定することで、グループフラグを符号化しなくて済み、さらなる符号化効率の改善を図ることができる。
【００９６】
＜構成＞
実施例２における画像符号化装置、エントロピー符号化部の構成は、実施例１の図３、図４に示す構成と同様であるため、同じ符号を用いて説明する。実施例２では、削減部２０３の処理が実施例１と異なるため、実施例２では、削減部２０３ｂと表記し、以下では削減部２０３ｂを主に説明する。
【００９７】
＜削減部＞
図１３は、実施例２における削減部２０３ｂの構成の一例を示すブロック図である。図１３に示す削減部２０３ｂの構成のうち、図５に示す構成と同様のものは同じ符号を付す。以下では、推定部４０１を主に説明する。
【００９８】
推定部４０１は、第１領域群推定部４１１と、第２領域群推定部４１２と、不要領域決定部４１３とを有する。第１領域群推定部４１１は、実施例１における第１領域群推定部３２１と同様の処理を行い、第１領域群を推定する。
【００９９】
第２領域群推定部４１２は、特定部３０１により特定された最後領域の位置を用いて、上述した第１領域群と、全ての有意係数フラグが０の係数値を示すグループフラグを有する領域を含む第２領域群とを推定する。第２領域群推定部４１２は、例えば、第１領域群以外の領域を第２領域群と推定する。
【０１００】
不要領域決定部４１３は、符号化不要領域として、第１領域群と第２領域群とを決定し、第１領域群及び第２領域群のグループフラグを出力しない。これにより、グループフラグは一切符号化されないことになり、符号化効率を高めることができる。
【０１０１】
ここで、第２領域群の中に、実際はグループフラグが「１」となる領域が含まれている場合でも、画質にそれほど影響を与えないと考えられる。この理由は、第２領域群は、変換ブロックの右側方向、下側方向の領域であるため、周波数変換後の係数値の特性を考慮すれば、画質にそれほど影響を与える領域ではないからである。
【０１０２】
＜推定処理＞
次に、推定部４０１による推定処理について、具体例を用いて説明する。
【０１０３】
（推定例５）
図１４は、推定例５を示す図である。図１４では、特定部３０１が、最後領域をＡ［２］［３］と特定した場合である（図１４（Ａ））。
【０１０４】
このとき、推定部４０１は、最後領域Ａ［２］［３］よりも左上方向に存在する範囲ａｒ７０２内にある領域（Ａ［０〜１］［０〜２］）のグループフラグを「１」と推定し、範囲ａｒ７０２内にある領域を第１領域群と推定する。また、推定部４０１は、最後領域であるＡ［２］［３］も、グループフラグは「１」となるため、第１領域群に含める。
【０１０５】
また、推定部４０１は、範囲ａｒ７０３、ａｒ７０４内の領域を第２領域群と推定する。推定部４０１は、例えば、第１領域群以外の領域を第２領域群と推定する。
【０１０６】
図１４に示す例は、最後位置が、Ｂ［０］［０］の場合の推定処理であり（図１４（Ｂ））、また、最後位置を特定せず、最後領域のみで第１領域群を推定する場合の推定処理である。
【０１０７】
これにより、算術符号化部２０５は、グループフラグを符号化しなくてもよく、さらなる符号化効率の改善を図ることができる。
【０１０８】
なお、特定部３０１で最後位置を特定する場合は、図９〜１１に示す例で、推定部４０１は、第１領域群以外の領域を第２領域群に推定する。
【０１０９】
＜動作＞
次に、実施例２における画像符号化装置１０の動作について説明する。図１５は、実施例２におけるシンタックス要素の１つある有意係数フラグに関する符号化処理の一例を示すフローチャートである。図１５に示す処理は、有意係数フラグやグループフラグに対する算術符号化処理を示す。
【０１１０】
ステップＳ２０１の処理は、図１２に示すステップＳ１０１の処理と同様であるため、その説明を省略する。
【０１１１】
ステップＳ２０２で、推定部４０１は、最後領域の位置を用いて、グループフラグが「１」となる可能性が高い領域を含む第１領域群を推定する。推定部４０１は、最後領域の位置を用いて、グループフラグが「０」となる可能性が高い領域を含む第２領域群を推定する（例えば図１４参照）。推定部３０２は、最後位置が特定されている場合は、最後位置を用いて第１領域群の領域を拡張してもよい。
【０１１２】
ステップＳ２０３で、推定部４０１は、第１領域群と第２領域群とを、符号化不要領域として決定する。従って、推定部４０１は、最後位置と、グループフラグが「１」の領域内の有意係数フラグとを算術符号化部２０５に出力する。
【０１１３】
ステップＳ２０４で、算術符号化部２０５は、最後位置と、グループフラグが「１」（推定された「１」も含む）を示す領域の有意係数フラグとを算術符号化する。
【０１１４】
なお、ステップＳ２０３の符号化不要決定処理は、符号化不要領域のグループフラグを出力しないと予め決定しておくことが可能であり、必ずしも必要な処理ではない。
【０１１５】
以上、実施例２によれば、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、グループフラグを推定することで符号化の必要がなくなり、さらなる符号化効率の改善を図ることができる。
【０１１６】
［実施例３］
次に、実施例３における画像符号化装置について説明する。実施例３では、実施例１の推定処理を適用するか、実施例２の推定処理を適用するかを、フラグを用いて決定し、適応的な推定処理を可能することで、符号化効率の改善を図ることができる。
【０１１７】
＜構成＞
実施例３における画像符号化装置、エントロピー符号化部の構成は、実施例１の図３、図４に示す構成と同様であるため、同じ符号を用いて説明する。実施例３では、削減部２０３の処理が実施例１、２と異なるため、実施例３では、削減部２０３ｃと表記し、以下では削減部２０３ｃを主に説明する。
【０１１８】
＜削減部＞
図１６は、実施例３における削減部２０３ｃの構成の一例を示すブロック図である。図１６に示す削減部２０３ｃの構成のうち、図５に示す構成と同様のものは同じ符号を付す。以下では、推定部５０１を主に説明する。
【０１１９】
推定部５０１は、第１領域群推定部５１１と、決定部５１２と、第２領域群推定部５１３と、不要領域決定部５１４とを有する。第１領域群推定部４１１は、実施例１における第１領域群推定部３２１と同様の処理を行い、第１領域群を推定する。
【０１２０】
決定部５１２は、第１領域群以外の領域のグループフラグの値に基づいて、第２領域群を推定するか否かを決定する。決定部５１２は、例えば、第１領域以外の領域のグループフラグが「１」である個数をカウントし、この個数が閾値以下であれば、第２領域群を推定すると決定する。閾値は、予め設定されていればよい。また、決定部５１２は、決定内容を示す使用フラグを定める。使用フラグは、例えばsignificant_coeffgroup_flag_useと表記する。
【０１２１】
決定部５１２は、閾値を０とした場合、第１領域群以外の領域のグループフラグが全て「０」の場合に、第２領域群の推定を行うと決定し、例えばsignificant_coeffgroup_flag_use＝０を設定する。また、決定部５１２は、カウントした個数が１以上の場合に、第２領域群の推定を行わないことを決定し、例えばsignificant_coeffgroup_flag_use＝１を設定する。決定部５１２は、設定した使用フラグを第２領域群推定部５１３及び不要領域決定部５１４に出力する。
【０１２２】
決定部５１２は、閾値を０とすることで、画質の劣化はなく、符号化効率の改善を図ることができる。また、決定部５１２は、閾値を１以上の値とした場合は、画質の劣化は多少あるかもしれないが、符号化効率の改善を図ることができる。
【０１２３】
図１７は、各領域のグループフラグの例を示す図である。この例では、決定部５１２により用いられる閾値を０とする。図１７（Ａ）に示す例では、決定部５１２は、第１領域群ａｒ８０１以外の領域のグループフラグが全て０であるため（個数≦閾値）、使用フラグを０に設定する。図１７（Ｂ）に示す例では、決定部５１２は、第１領域群ａｒ８０２以外の領域のグループフラグに１があるため（個数＞閾値）、使用フラグを１に設定する。
【０１２４】
図１６に戻り、第２領域群推定部５１３は、使用フラグが０である場合に、第２領域群の推定処理を行い、使用フラグが１である場合に、第２領域群の推定処理を行わない。
【０１２５】
不要領域決定部５１４は、使用フラグが１であれば、実施例１で説明したように、第１領域群を符号化不要領域に決定し、使用フラグが０であれば、実施例２で説明したように、第１領域群と第２領域群とを符号化不要領域に決定する。
【０１２６】
これにより、実施例３では、使用フラグを用いて、実施例１の処理と、実施例２の処理とを適応的に選択することができる。
【０１２７】
＜動作＞
次に、実施例３における画像符号化装置１０の動作について説明する。図１８は、実施例３におけるシンタックス要素の１つある有意係数フラグに関する符号化処理の一例を示すフローチャートである。図１８に示す処理は、有意係数フラグやグループフラグに対する算術符号化処理を示す。
【０１２８】
ステップＳ３０１〜Ｓ３０２の処理は、図１２に示すステップＳ１０１〜Ｓ１０２の処理と同様であるため、その説明を省略する。
【０１２９】
ステップＳ３０３で、決定部５１２は、第１領域群以外の領域のグループフラグの値に基づいて、第２領域群を推定するか否かを示す使用フラグを設定する。決定部５１２は、第１領域群以外の領域のグループフラグの値が「１」である個数をカウントし、この個数と閾値とを比較することで使用フラグを設定する。
【０１３０】
ステップＳ３０４で、第２領域群推定部５１３は、使用フラグが「１」であるか否かを判定する。使用フラグが「１」であれば（ステップＳ３０４−ＹＥＳ）ステップＳ３０６に進み、使用フラグが「０」であれば（ステップＳ３０４−ＮＯ）ステップＳ３０５に進む。
【０１３１】
ステップＳ３０５で、第２領域群推定部５１３は、実施例２と同様にして、第２領域群を推定する。
【０１３２】
ステップＳ３０６で、不要領域決定部５１４は、使用フラグが「１」であれば第１領域群を符号化不要領域に決定し、使用フラグ「０」であれば第１領域群及び第２領域群を符号化不要領域に決定する。従って、推定部５０１は、最後位置と、使用フラグと、グループフラグが「１」（推定された「１」も含む）の領域内の有意係数フラグと、使用フラグが「１」の場合は符号化不要領域以外のグループフラグとを算術符号化部２０５に出力する。
【０１３３】
ステップＳ３０７で、算術符号化部２０５は、最後位置と、使用フラグと、グループフラグが「１」（推定された「１」も含む）を示す領域の有意係数フラグと、使用フラグが「１」の場合は符号化不要領域以外のグループフラグとを算術符号化する。
【０１３４】
なお、ステップＳ３０６の符号化不要決定処理は、符号化不要領域のグループフラグを出力しないと予め決定しておくことが可能であり、必ずしも必要な処理ではない。
【０１３５】
以上、実施例３によれば、実施例１の処理と実施例２の処理とを適応的に選択可能とすることで、符号化効率の改善を図ることができる。
【０１３６】
［実施例４］
次に、実施例４における画像復号装置６０について説明する。実施例４における画像復号装置４０は、実施例１〜３における画像符号化装置１０で符号化されたビットストリームを復号する装置である。
【０１３７】
＜構成＞
図１９は、実施例４における画像復号装置６０の概略構成の一例を示すブロック図である。図１９に示すように、画像復号装置６０は、エントロピー復号部６０１、逆量子化部６０２、逆直交変換部６０３、イントラ予測部６０４、復号情報記憶部６０５、インター予測部６０６、予測画像選択部６０７、復号画像生成部６０８、ループフィルタ部６１０、及びフレームメモリ６１１を有する。各部についての概略を以下に説明する。
【０１３８】
エントロピー復号部６０１は、ビットストリームが入力されると、画像符号化装置１０のエントロピー符号化に対応するエントロピー復号を行う。エントロピー復号部６０１により復号された予測誤差信号などは逆量子化部６０２に出力される。また、復号したフィルタ係数や、インター予測されている場合の、復号された動きベクトルなどは復号情報記憶部６０５に出力される。
【０１３９】
また、エントロピー復号部６０１は、イントラ予測の場合、イントラ予測部６０４にその旨通知する。また、エントロピー復号部６０１は、復号対象画像がインター予測されているか、イントラ予測されているかを予測画像選択部６０７に通知する。エントロピー復号部６０１に対する有意係数フラグに関する復号処理は、図２０を用いて後述する。
【０１４０】
逆量子化部６０２は、エントロピー復号部６０１からの出力信号に対して逆量子化処理を行う。逆量子化された出力信号は逆直交変換部６０３に出力される。
【０１４１】
逆直交変換部６０３は、逆量子化部６０２からの出力信号の復号ブロックに対して逆直交変換処理を行い、残差信号を生成する。残差信号は復号画像生成部６０８に出力される。
【０１４２】
イントラ予測部６０４は、フレームメモリ６１１から取得する復号対象画像のすでに復号化された周辺画素から、複数の予測方向を用いて予測画像を生成する。
【０１４３】
復号情報記憶部６０５は、復号されたループフィルタのフィルタ係数や動きベクトルや分割モードなどの復号情報を記憶する。
【０１４４】
インター予測部６０６は、フレームメモリ６１１から取得した参照画像のデータを復号情報記憶部６０５から取得する動きベクトルや分割モードを用いて動き補償する。これにより、動き補償された参照画像としてのブロックデータが生成される。インター予測部６０６は、予測ブロックの情報を逆直交変換部６０３に通知する。
【０１４５】
予測画像選択部６０７は、イントラ予測画像、又はインター予測画像どちらか一方の予測画像を選択する。選択されたブロックデータは、復号画像生成部６０８に出力される。
【０１４６】
復号画像生成部６０８は、予測画像選択部６０７から出力される予測画像と、逆直交変換部４０３から出力される残差信号とを加算し、復号画像を生成する。生成された復号画像はループフィルタ部６１０に出力される。
【０１４７】
ループフィルタ部６１０は、復号画像生成部６０８から出力された復号画像に対し、ブロック歪を低減するためのフィルタをかけ、ループフィルタ処理後の復号画像をフレームメモリ６１１に出力する。なお、ループフィルタ後の復号画像は表示装置などに出力されてもよい。
【０１４８】
フレームメモリ６１１は、参照画像となる復号画像などを記憶する。なお、復号情報記憶手段６０５とフレームメモリ６１１は、分けた構成にしているが、同じ記憶部であってもよい。
【０１４９】
＜エントロピー復号部の構成＞
次に、エントロピー復号部６０１の構成について説明する。図２０は、実施例４におけるエントロピー復号部６０１の構成の一例を示すブロック図である。図２０に示すエントロピー復号部６０１は、位置復号部７０１と、特定部７０２と、第１フラグ復号部７０３と、第２フラグ復号部７０４と、係数値復号部７０５とを有する。以下では、有意係数フラグに関する復号処理を説明する。
【０１５０】
位置復号部７０１は、入力されたストリームのうち、直交変換の対象ブロックに対し、所定の走査順（例えばジグザグスキャン）で最後の非０の係数値の位置（最後位置）を復号する。
【０１５１】
特定部７０２は、位置復号部７０１により復号された係数値の位置に基づき、対象ブロックが分割された複数の領域に対し、最後の非０の係数値を有する領域（最後領域）を特定する。これにより、画像符号化装置１０と同様の最後領域を特定することができる。
【０１５２】
第１フラグ復号部７０３は、特定部７０２により特定された最後領域に基づき、ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグを復号する。
【０１５３】
第１フラグ復号部７０３は、例えば、最後領域より左上方向のグループフラグは「１」と推定して取得し、ストリームに含まれる符号化されたグループフラグを復号して、残りの領域のグループフラグを取得する。この場合、対象ブロックの各領域のグループフラグを取得する処理をグループフラグの復号処理と称す。
【０１５４】
また、第１フラグ復号部７０３は、符号化されたグループフラグがストリームに含まれない場合は、最後領域に基づき、グループフラグが「１」の領域と、「０」の領域とを推定して取得する。
【０１５５】
また、第１フラグ復号部７０３は、使用フラグが復号された場合、使用フラグの値に応じて、適応的にグループフラグの復号処理を変更する。
【０１５６】
第２フラグ復号部７０４は、第１フラグ復号部７０４により復号されたグループフラグの値が、非０の係数値を示す有意係数フラグが少なくとも１つ有することを示す値である領域に対し、この領域の有意係数フラグを復号する。
【０１５７】
例えば、第２フラグ復号部７０４は、グループフラグが「１」を示す領域に対し、この領域内の有意係数フラグを復号する。
【０１５８】
なお、位置復号部７０１、第１フラグ復号部７０３、第２フラグ復号部７０４は、画像符号化装置１０の算術符号化に対応する復号処理を行う。
【０１５９】
係数値復号部７０５は、有意係数フラグが「１」の画素位置に対応する係数値を復号する。係数値復号部７０５は、画像符号化装置１０の可変長符号化に対応する復号処理を行う。復号された係数値は、逆量子化部６０２に出力される。
【０１６０】
これにより、実施例１〜３の画像符号化装置１０により符号化されたストリームを適切に復号することができる。
【０１６１】
＜動作＞
次に、画像復号装置６０の動作について説明する。図２１は、実施例４における有意係数フラグに関する復号処理の一例を示すフローチャートである。
【０１６２】
ステップＳ４０１で、位置復号部７０１は、入力されたストリームのうち、直交変換の対象ブロックに対し、所定の走査順（例えばジグザグスキャン）で最後の非０の係数値の位置（最後位置）を復号する。
【０１６３】
ステップＳ４０２で、特定部７０２は、位置復号部７０１により復号された係数値の位置に基づき、対象ブロックが分割された複数の領域に対し、最後の非０の係数値を有する領域（最後領域）を特定する。
【０１６４】
ステップＳ４０３で、第１フラグ復号部７０３は、特定部７０２により特定された最後領域に基づき、ＣＡＢＡＣのシンタックス要素に含まれる有意係数フラグが、領域内の全てにおいて０の係数値を示す値であるか否かを示すグループフラグを復号する。
【０１６５】
ステップＳ４０４で、第２フラグ復号部７０４は、第１フラグ復号部７０３により復号されたグループフラグの値が、非０の係数値を示す有意係数フラグが少なくとも１つ有することを示す値である領域に対し、この領域の有意係数フラグを復号する。
【０１６６】
ステップＳ４０５で、係数値復号部７０５は、有意係数フラグが「１」の画素位置に対応する係数値を復号する。
【０１６７】
以上、実施例４によれば、実施例１〜３における画像符号化装置１０で符号化されたビットストリームを適切に復号することができる。
【０１６８】
［実施例５］
図２２は、実施例５における画像処理装置８０の構成の一例を示すブロック図である。図２２に示す画像処理装置８０は、上述した実施例１〜３で説明した画像符号化処理又は実施例４で説明した画像復号処理をソフトウェアで実装した装置の一例である。
【０１６９】
図２２に示すように、画像処理装置８０は、制御部８０１、主記憶部８０２、補助記憶部８０３、ドライブ装置８０４、ネットワークＩ／Ｆ部８０６、入力部８０７、表示部８０８を有する。これら各構成は、バスを介して相互にデータ送受信可能に接続されている。
【０１７０】
制御部８０１は、コンピュータの中で、各装置の制御やデータの演算、加工を行うＣＰＵ（Central Processing Unit）である。また、制御部８０１は、主記憶部８０２又は補助記憶部８０３に記憶された画像符号化処理のプログラム、又は画像復号処理のプログラムを実行する演算装置である。制御部８０１は、入力部８０７や記憶装置からデータを受け取り、演算、加工した上で、表示部８０８や記憶装置などに出力する。
【０１７１】
また、制御部８０１は、画像符号化処理、又は画像復号処理のプログラムを実行することで、各実施例で説明した処理を実現することができる。
【０１７２】
主記憶部８０２は、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）などである。主記憶部８０２は、制御部８０１が実行する基本ソフトウェアであるＯＳ（Operating System）やアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
【０１７３】
補助記憶部８０３は、ＨＤＤ（Hard Disk Drive）などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
【０１７４】
ドライブ装置８０４は、記録媒体８０５、例えばフレキシブルディスクからプログラムを読み出し、記憶部にインストールする。
【０１７５】
また、記録媒体８０５に、所定のプログラムを格納し、この記録媒体８０５に格納されたプログラムはドライブ装置８０４を介して画像処理装置８０にインストールされる。インストールされた所定のプログラムは、画像処理装置８０により実行可能となる。
【０１７６】
ネットワークＩ／Ｆ部８０６は、有線及び／又は無線回線などのデータ伝送路により構築されたＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）などのネットワークを介して接続された通信機能を有する周辺機器と画像処理装置８０とのインターフェースである。
【０１７７】
入力部８０７は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、表示部８０８の表示画面上でキーの選択等を行うためのマウスやスライドパット等を有する。表示部８０８は、ＬＣＤ（Liquid Crystal Display）等により構成され、制御部８０１から入力される表示データに応じた表示が行われる。
【０１７８】
なお、図３に示す復号画像記憶部１１１は、例えば主記憶部８０２又は補助記憶部８０３により実現され、図３に示す復号画像記憶部１１１以外の構成は、例えば制御部８０１及びワークメモリとしての主記憶部８０２により実現されうる。
【０１７９】
また、図１９に示す復号情報記憶部４０５及びフレームメモリ４１１は、例えば主記憶部８０２又は補助記憶部８０３により実現され、図１９に示す復号情報記憶部４０５及びフレームメモリ４１１以外の構成は、例えば制御部８０１及びワークメモリとしての主記憶部８０２により実現されうる。
【０１８０】
画像処理装置８０で実行されるプログラムは、実施例１〜４で説明した各部を含むモジュール構成となっている。実際のハードウェアとしては、制御部８０１が補助記憶部８０３からプログラムを読み出して実行することにより上記各部のうち１又は複数の各部が主記憶部８０２上にロードされ、１又は複数の各部が主記憶部８０２上に生成されるようになっている。
【０１８１】
このように、上述した実施例１〜３で説明した画像符号化処理や実施例４で説明した画像復号処理は、コンピュータに実行させるためのプログラムとして実現されてもよい。このプログラムをサーバ等からインストールしてコンピュータに実行させることで、各実施例で説明した処理を実現することができる。
【０１８２】
また、このプログラムを記録媒体８０５に記録し、このプログラムが記録された記録媒体８０５をコンピュータや携帯端末に読み取らせて、前述した処理を実現させることも可能である。なお、記録媒体８０５は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的，電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。また、上述した各実施例で説明した処理は、１つ又は複数の集積回路に実装してもよい。
【０１８３】
なお、実施例５における画像処理装置８０は、上記の通り、画像符号化装置１０、画像復号装置６０としての機能を有する。
【０１８４】
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、上記変形例以外にも種々の変形及び変更が可能である。
【符号の説明】
【０１８５】
１０  画像符号化装置
６０  画像復号装置
８０  画像処理装置
１０１  予測画像生成部
１０２  直交変換部
１０３  量子化部
１０４  エントロピー符号化部
２０１  ２値算術符号化部
２０２  ２値化部
２０３  削減部
２０４  コンテキスト計算部
２０５  算術符号化部
３０１  特定部
３０２、４０１、５０１  推定部
６０１  エントロピー復号部
７０１  位置復号部
７０２  特定部
７０３  第１フラグ復号部
７０４  第２フラグ復号部
７０５  係数値復号部
【図１】
2014096638.tif 000003
【図２】
2014096638.tif 000004
【図３】
2014096638.tif 000005
【図４】
2014096638.tif 000006
【図５】
2014096638.tif 000007
【図６】
2014096638.tif 000008
【図７】
2014096638.tif 000009
【図８】
2014096638.tif 000010
【図９】
2014096638.tif 000011
【図１０】
2014096638.tif 000012
【図１１】
2014096638.tif 000013
【図１２】
2014096638.tif 000014
【図１３】
2014096638.tif 000015
【図１４】
2014096638.tif 000016
【図１５】
2014096638.tif 000017
【図１６】
2014096638.tif 000018
【図１７】
2014096638.tif 000019
【図１８】
2014096638.tif 000020
【図１９】
2014096638.tif 000021
【図２０】
2014096638.tif 000022
【図２１】
2014096638.tif 000023
【図２２】
2014096638.tif 000024