(57)【特許請求の範囲】
【請求項１】
符号化対象のマクロブロックに含まれる第１のブロックサイズの複数のブロックの各々に関して、入力画像と予測画像との第１の差分値を算出する第１の算出部と、
前記マクロブロックに含まれる、第１のブロックサイズより大きい第２のブロックサイズの複数のブロックの各々に関して、入力画像と予測画像との第２の差分値を算出する第２の算出部と、
前記第１の算出部によって算出された前記マクロブロックに関する複数の第１の差分値と、前記第２の算出部によって算出された前記マクロブロックに関する複数の第２の差分値とに基づいて、前記マクロブロックに適用する予測モードを決定する決定部と、
を備え、
前記決定部は、前記複数の第１の差分値の総和と前記複数の第２の差分値の総和とに基づいて前記マクロブロック内におけるエッジの有無を判定し、エッジが有ると判定した場合には、前記マクロブロックに適用する予測モードを、第１のブロックサイズのブロック単位で予測を行う第１の予測モードに決定し、エッジが無いと判定した場合には、前記マクロブロックに適用する予測モードを、第２のブロックサイズのブロック単位で予測を行う第２の予測モードに決定し、
前記決定部は、前記複数の第２の差分値の総和から前記複数の第１の差分値の総和を減じた値が第１の閾値より大きい場合に、前記マクロブロック内にエッジが有ると判定する、符号化装置。
【請求項２】
前記第１の閾値は、画像の複雑度又は目標符号量に応じて異なる値に設定される、請求項１に記載の符号化装置。
【請求項３】
前記決定部はさらに、前記複数の第１の差分値の総和が第２の閾値未満である場合に、前記マクロブロック内にエッジが有ると判定する、請求項１又は２に記載の符号化装置。
【請求項４】
前記第２の閾値は、画像の複雑度又は目標符号量に応じて異なる値に設定される、請求項３に記載の符号化装置。
【請求項５】
前記第１の差分値及び前記第２の差分値は、ＳＡＴＤ（Sum of Absolute Transformed Differences）である、請求項１〜４のいずれか一つに記載の符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化装置に関し、特に、動画像の画像データに対してフレーム内予測符号化を行う符号化装置に関する。
【背景技術】
【０００２】
例えば下記特許文献１には、入力画像と予測画像との差分値（ＳＡＤ又はＳＡＴＤ）に基づいて、予測発生符号量を算出する技術が開示されている。
【０００３】
また、例えば下記特許文献２には、フィルタ回路を用いて入力画像内のエッジを検出し、その検出結果に基づいて予測モードを切り換える技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１２４６９９号公報
【特許文献２】特開２００８−２１９２０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１及び上記特許文献２に開示された技術を組み合わせて、予測発生符号量の算出とエッジの検出とを同一装置内で実現しようとした場合には、予測発生符号量を算出するための回路とエッジを検出するための回路とを個別に実装する必要があるため、回路規模及び処理サイクル数が増大する。
【０００６】
また、上記特許文献２に開示された技術では、直接に符号化される差分画像ではなく入力画像を対象としてエッジの検出が行われる。従って、入力画像で検出されたエッジが差分画像に現れない場合や、入力画像で検出されなかったエッジが差分画像に現れる場合があるため、予測モードの切り換えが適切でない状況が生じ得る。
【０００７】
本発明は、かかる事情に鑑みて成されたものであり、予測発生符号量を算出するための回路とエッジを検出するための回路とを個別に実装する場合と比較して、回路規模及び処理サイクル数を削減することが可能な符号化装置を得ることを目的とする。また、本発明は、入力画像を対象としたエッジの検出結果に基づいて予測モードを切り換える場合と比較して、予測モードの切り換えを適切に実行することが可能な符号化装置を得ることを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１の態様に係る符号化装置は、符号化対象のマクロブロックに含まれる第１のブロックサイズの複数のブロックの各々に関して、入力画像と予測画像との第１の差分値を算出する第１の算出部と、前記マクロブロックに含まれる、第１のブロックサイズより大きい第２のブロックサイズの複数のブロックの各々に関して、入力画像と予測画像との第２の差分値を算出する第２の算出部と、前記第１の算出部によって算出された前記マクロブロックに関する複数の第１の差分値と、前記第２の算出部によって算出された前記マクロブロックに関する複数の第２の差分値とに基づいて、前記マクロブロックに適用する予測モードを決定する決定部と、を備え、前記決定部は、前記複数の第１の差分値の総和と前記複数の第２の差分値の総和とに基づいて前記マクロブロック内におけるエッジの有無を判定し、エッジが有ると判定した場合には、前記マクロブロックに適用する予測モードを、第１のブロックサイズのブロック単位で予測を行う第１の予測モードに決定し、エッジが無いと判定した場合には、前記マクロブロックに適用する予測モードを、第２のブロックサイズのブロック単位で予測を行う第２の予測モードに決定し、前記決定部は、前記複数の第２の差分値の総和から前記複数の第１の差分値の総和を減じた値が第１の閾値より大きい場合に、前記マクロブロック内にエッジが有ると判定することを特徴とするものである。
【０００９】
第１の態様に係る符号化装置によれば、決定部は、第１の算出部によって算出された複数の第１の差分値と、第２の算出部によって算出された複数の第２の差分値とに基づいて、マクロブロックに適用する予測モードを決定する。入力画像と予測画像との差分値は、予測発生符号量を算出するために使用される指標である。従って、この差分値を予測発生符号量の算出のみならず予測モードの決定にも使用することにより、回路規模及び処理サイクル数を削減することが可能となる。
【００１１】
また、第１の態様に係る符号化装置によれば、決定部は、入力画像と予測画像との差分値に基づいてエッジの有無を判定する。従って、予測発生符号量を算出するための回路とエッジを検出するための回路とを個別に実装する場合と比較して、回路規模及び処理サイクル数を削減することが可能となる。
【００１３】
また、第１の態様に係る符号化装置によれば、決定部は、複数の第２の差分値の総和から複数の第１の差分値の総和を減じた値が第１の閾値より大きい場合に、マクロブロック内にエッジが有ると判定する。マクロブロック内にエッジが含まれる場合には、小さいブロックサイズのブロックを用いて算出された第１の差分値が、大きいブロックサイズのブロックを用いて算出された第２の差分値よりも顕著に小さくなる傾向がある。従って、第２の差分値の総和から第１の差分値の総和を減じた値が第１の閾値より大きい場合にエッジが有ると判定することにより、エッジの有無を高精度に判定することが可能となる。
【００１４】
本発明の第２の態様に係る符号化装置は、第１の態様に係る符号化装置において特に、前記第１の閾値は、画像の複雑度又は目標符号量に応じて異なる値に設定されることを特徴とするものである。
【００１５】
第２の態様に係る符号化装置によれば、第１の閾値は、画像の複雑度又は目標符号量に応じて異なる値に設定される。画像の複雑度が高い場合に第１の予測モードを適用すると発生符号量が増大しやすいため、この場合には第１の閾値を大きく設定することにより、第２の予測モードが選択されやすくすることができる。また、画像の複雑度が低い場合に第１の予測モードを適用しても発生符号量は増大しにくいため、この場合には第１の閾値を小さく設定することにより、第１の予測モードが選択されやすくすることができる。また、第１の予測モードを適用すると発生符号量が増大しやすいため、目標符号量が小さい場合には第１の閾値を大きく設定することにより、第２の予測モードが選択されやすくすることができる。また、第１の予測モードを適用すると画質を向上できるため、目標符号量が大きい場合には第１の閾値を小さく設定することにより、第１の予測モードが選択されやすくすることができる。
【００１６】
本発明の第３の態様に係る符号化装置は、第１又は第２の態様に係る符号化装置において特に、前記決定部はさらに、前記複数の第１の差分値の総和が第２の閾値未満である場合に、前記マクロブロック内にエッジが有ると判定することを特徴とするものである。
【００１７】
第３の態様に係る符号化装置によれば、決定部は、複数の第１の差分値の総和が第２の閾値未満である場合に、マクロブロック内にエッジが有ると判定する。画像の複雑度が高い場合には、たとえそのマクロブロック内にエッジが無くても、第１の差分値及び第２の差分値はいずれも大きくなるため、第２の差分値の総和から第１の差分値の総和を減じた値が大きくなりやすい傾向にある。従って、第１の差分値の総和が第２の閾値以上である場合には、単に画像の複雑度が高い領域とみなしてエッジ有無の判定対象から除外することにより、誤ってエッジ有りと判定される事態を回避することができる。
【００１８】
本発明の第４の態様に係る符号化装置は、第３の態様に係る符号化装置において特に、前記第２の閾値は、画像の複雑度又は目標符号量に応じて異なる値に設定されることを特徴とするものである。
【００１９】
第４の態様に係る符号化装置によれば、第２の閾値は、画像の複雑度又は目標符号量に応じて異なる値に設定される。画像の複雑度が高い場合に第１の予測モードを適用すると発生符号量が増大しやすいため、この場合には第２の閾値を小さく設定することにより、第２の予測モードが選択されやすくすることができる。また、画像の複雑度が低い場合に第１の予測モードを適用しても発生符号量は増大しにくいため、この場合には第２の閾値を大きく設定することにより、第１の予測モードが選択されやすくすることができる。また、第１の予測モードを適用すると発生符号量が増大しやすいため、目標符号量が小さい場合には第２の閾値を小さく設定することにより、第２の予測モードが選択されやすくすることができる。また、第１の予測モードを適用すると画質を向上できるため、目標符号量が大きい場合には第２の閾値を大きく設定することにより、第１の予測モードが選択されやすくすることができる。
【００２０】
本発明の第５の態様に係る符号化装置は、第１〜第４のいずれか一つの態様に係る符号化装置において特に、前記第１の差分値及び前記第２の差分値は、ＳＡＴＤ（Sum of Absolute Transformed Differences）であることを特徴とするものである。
【００２１】
第５の態様に係る符号化装置によれば、第１の差分値及び前記第２の差分値は、ＳＡＴＤである。エッジとそれ以外の部分とでは周波数成分が大きく異なるため、周波数成分を含むＳＡＴＤを用いることにより、周波数成分を含まないＳＡＤ（Sum of Absolute Differences）を用いる場合と比較すると、エッジの有無を正確に判定することが可能となる。
【発明の効果】
【００２４】
本発明によれば、回路規模及び処理サイクル数を削減できるとともに、予測モードの切り換えを適切に実行することが可能となる。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施の形態に係る符号化装置の全体構成を簡略化して示すブロック図である。
【図２】イントラ予測処理部の構成を示すブロック図である。
【図３】縦４画素×横４画素のブロックサイズの１６個のブロックに分割された１個のマクロブロックを示す図である。
【図４】縦８画素×横８画素のブロックサイズの４個のブロックに分割された１個のマクロブロックを示す図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。
【００２７】
図１は、本発明の実施の形態に係る符号化装置１の全体構成を簡略化して示すブロック図である。図１の接続関係で示すように、符号化装置１は、減算器２、直交変換部３、量子化部４、符号化部５、逆量子化部６、逆直交変換部７、加算器８、フレームメモリ９、イントラ予測処理部１０、インター予測処理部１１、スイッチ１２、及び動き検出部１３を備えて構成されている。符号化装置１には、入力画像のデータＤ１が入力される。符号化装置１からは、符号化されたデータＤ２が出力される。イントラ予測処理部１０及びインター予測処理部１１には、ローカルデコード画像のデータＤ３がフレームメモリ９から入力される。
【００２８】
図２は、イントラ予測処理部１０の構成を示すブロック図である。イントラ予測処理部１０は、差分画像作成部２１及び予測モード決定部２２を備えて構成されている。図２の接続関係で示すように、差分画像作成部２１は、第１予測部３１、減算器３２、第１演算部３３、第１判定部３４、第２予測部３５、減算器３６、第２演算部３７、及び第２判定部３８を有して構成されている。
【００２９】
Ｈ．２６４では、イントラ予測モードとして、イントラ４×４予測モード（以下「第１予測モード」と称す）、イントラ８×８予測モード（以下「第２予測モード」と称す）、及びイントラ１６×１６予測モード（以下「第３予測モード」と称す）の３つの予測モードが規定されている。第１予測モードでは、縦４画素×横４画素のブロックサイズのブロック単位で、予測及び直交変換が行われる。第２予測モードでは、縦８画素×横８画素のブロックサイズのブロック単位で、予測及び直交変換が行われる。第３予測モードでは、縦１６画素×横１６画素のブロックサイズのマクロブロック単位で予測が行われ、縦４画素×横４画素のブロックサイズのブロック単位で直交変換が行われる。
【００３０】
また、Ｈ．２６４では、第１予測モード及び第２予測モードに関しては、９方向の予測方向がそれぞれ規定されており、第３予測モードに関しては、４方向の予測方向が規定されている。本実施の形態に係る符号化装置１では、第３予測モードは使用せず、符号化対象のマクロブロックに適用する予測モードを、第１予測モード及び第２予測モードのいずれかに設定する。予測モードはマクロブロック単位で設定される。図２を参照して、第１予測部３１、減算器３２、第１演算部３３、及び第１判定部３４は第１予測モードに対応し、第２予測部３５、減算器３６、第２演算部３７、及び第２判定部３８は第２予測モードに対応する。
【００３１】
図３は、縦４画素×横４画素のブロックサイズの１６個のブロックに分割された１個のマクロブロックを示す図である。また、図４は、縦８画素×横８画素のブロックサイズの４個のブロックに分割された１個のマクロブロックを示す図である。図中の太線はマクロブロック内に含まれるエッジを示しており、図中の矢印は各ブロックに関する最適予測方向を示している。
【００３２】
図２を参照して、第１予測部３１は、符号化対象のマクロブロックに含まれる１６個のブロックの各々に関して、９方向の予測画像をそれぞれ作成する。減算器３２は、１６個のブロックの各々に関して、入力画像と９方向の予測画像との差分画像をそれぞれ作成する。これにより、各ブロックに関して９個の差分画像が得られる。差分画像は第１演算部３３に入力される。第１演算部３３は、下記式（１）に基づいて、各差分画像に関するＳＡＴＤ（Sum of Absolute Transformed Differences）を算出する。これにより、各ブロックに関して９個のＳＡＴＤが得られる。
【００３３】
【数１】
0005552078.tif 000002
【００３４】
式（１）に示すように、ＳＡＴＤは、差分画像をアダマール変換し、その係数の絶対値和をとったものである。なお、入力画像と予測画像との差分値としては、ＳＡＴＤの代わりにＳＡＤ（Sum of Absolute Differences）等を用いてもよい。
【００３５】
ＳＡＴＤは第１判定部３４に入力される。第１判定部３４は、下記式（２）に基づいて、各ＳＡＴＤから予測発生符号量を算出する。
【００３６】
【数２】
0005552078.tif 000003
【００３７】
オフセット値λは、量子化パラメータに依存する値であり、画素符号量以外の符号量（例えば予測方向符号量）に対応する。これにより、各ブロックに関して９方向それぞれの予測発生符号量が得られる。
【００３８】
次に、第１判定部３４は、各ブロックに関する９個の予測発生符号量の中から最小の予測発生符号量を選択し、その最小の発生符号量に対応する予測方向を、そのブロックに関する最適予測方向として特定する。第１判定部３４は、同様の処理をマクロブロック内の１６個のブロックに対してそれぞれ行うことにより、各ブロックの最適予測方向とそれに対応するＳＡＴＤとを予測モード決定部２２に入力する。
【００３９】
上記と同様に第２予測部３５は、符号化対象のマクロブロックに含まれる４個のブロックの各々に関して、９方向の予測画像をそれぞれ作成する。減算器３６は、４個のブロックの各々に関して、入力画像と９方向の予測画像との差分画像をそれぞれ作成する。これにより、各ブロックに関して９個の差分画像が得られる。差分画像は第２演算部３７に入力される。第２演算部３７は、下記式（３）に基づいて、各差分画像に関するＳＡＴＤを算出する。これにより、各ブロックに関して９個のＳＡＴＤが得られる。
【００４０】
【数３】
0005552078.tif 000004
【００４１】
ＳＡＴＤは第２判定部３８に入力される。第２判定部３８は、上記式（２）に基づいて、各ＳＡＴＤから予測発生符号量を算出する。これにより、各ブロックに関して９方向それぞれの予測発生符号量が得られる。
【００４２】
次に、第２判定部３８は、各ブロックに関する９個の予測発生符号量の中から最小の予測発生符号量を選択し、その最小の発生符号量に対応する予測方向を、そのブロックに関する最適予測方向として特定する。第２判定部３８は、同様の処理をマクロブロック内の４個のブロックに対してそれぞれ行うことにより、各ブロックの最適予測方向とそれに対応するＳＡＴＤとを予測モード決定部２２に入力する。
【００４３】
予測モード決定部２２は、第１判定部３４から入力された１６組の最適予測方向及びＳＡＴＤと、第２判定部３８から入力された４組の最適予測方向及びＳＡＴＤとに基づいて、符号化対象のマクロブロックに適用する予測モード（第１予測モード又は第２予測モード）を決定する。具体的には以下の通りである。
【００４４】
予測モード決定部２２は、下記式（４）に基づいて、第１判定部３４から入力された１６個のＳＡＴＤの総和MB_SATD１を算出する。
【００４５】
【数４】
0005552078.tif 000005
【００４６】
また、予測モード決定部２２は、下記式（５）に基づいて、第２判定部３８から入力された４個のＳＡＴＤの総和MB_SATD２を算出する。
【００４７】
【数５】
0005552078.tif 000006
【００４８】
式（４）及び式（５）の加算項数はそれぞれ１６個及び４個であるため、これらの演算は比較的小規模な回路で実装することができる。
【００４９】
次に、予測モード決定部２２は、下記式（６）及び式（７）に基づいて、マクロブロック内におけるエッジの有無を判定する。
【００５０】
【数６】
0005552078.tif 000007
【００５１】
【数７】
0005552078.tif 000008
【００５２】
式（６）及び式（７）の条件をともに満たす場合には、予測モード決定部２２は、符号化対象のマクロブロック内にエッジが有ると判定する。一方、式（６）及び式（７）の少なくとも一方の条件を満たさない場合には、予測モード決定部２２は、符号化対象のマクロブロック内にエッジが無いと判定する。なお、第１の閾値TH_EDGE及び第２の閾値TH_FINEは、実験やシミュレーション等によって適切な値に設定される。
【００５３】
なお、予測モード決定部２２は、上記式（６）及び式（７）に代えて、下記式（８）及び式（９）に基づいてエッジの有無を判定してもよい。
【００５４】
【数８】
0005552078.tif 000009
【００５５】
【数９】
0005552078.tif 000010
【００５６】
式（８）及び式（９）の条件をともに満たす場合には、予測モード決定部２２は、符号化対象のマクロブロック内にエッジが有ると判定する。一方、式（８）及び式（９）の少なくとも一方の条件を満たさない場合には、予測モード決定部２２は、符号化対象のマクロブロック内にエッジが無いと判定する。なお、オフセット値α，β及び第３の閾値TH_FLATは、実験やシミュレーション等によって適切な値に設定される。
【００５７】
次に、予測モード決定部２２は、エッジが有ると判定した場合には、符号化対象のマクロブロックに適用する予測モードを第１予測モードに決定し、エッジが無いと判定した場合には、符号化対象のマクロブロックに適用する予測モードを第２予測モードに決定する。そして、予測モード決定部２２は、決定した予測モードと、各ブロックに関する最適予測方向とを出力する。
【００５８】
なお、上記式（６）及び式（７）に関して、第１の閾値TH_EDGE及び第２の閾値TH_FINEは、画像の複雑度又は目標符号量等に応じて異なる値に設定してもよい。画像の複雑度が高い場合に第１予測モードを適用すると発生符号量が増大しやすいため、この場合には第１の閾値TH_EDGEを大きく設定することにより、第２予測モードが選択されやすくすることができる。また、画像の複雑度が低い場合に第１予測モードを適用しても発生符号量は増大しにくいため、この場合には第１の閾値TH_EDGEを小さく設定することにより、第１予測モードが選択されやすくすることができる。また、第１予測モードを適用すると発生符号量が増大しやすいため、目標符号量が小さい場合には第１の閾値TH_EDGEを大きく設定することにより、第２予測モードが選択されやすくすることができる。また、第１予測モードを適用すると画質を向上できるため、目標符号量が大きい場合には第１の閾値TH_EDGEを小さく設定することにより、第１予測モードが選択されやすくすることができる。
【００５９】
このように本実施の形態に係る符号化装置１によれば、予測モード決定部２２は、第１演算部３３によって算出された複数の差分値と、第２演算部３７によって算出された複数の差分値とに基づいて、マクロブロックに適用する予測モードを決定する。入力画像と予測画像との差分値は、予測発生符号量を算出するために使用される指標である。従って、この差分値を予測発生符号量の算出のみならず予測モードの決定にも使用することにより、回路規模及び処理サイクル数を削減することが可能となる。
【００６０】
また、本実施の形態に係る符号化装置１によれば、予測モード決定部２２は、入力画像と予測画像との差分値に基づいてエッジの有無を判定する。従って、予測発生符号量を算出するための回路とエッジを検出するための回路とを個別に実装する場合と比較して、回路規模及び処理サイクル数を削減することが可能となる。
【００６１】
また、本実施の形態に係る符号化装置１によれば、予測モード決定部２２は、式（６）に示した通り、MB_SATD２からMB_SATD１を減じた値が第１の閾値TH_EDGEより大きい場合に、マクロブロック内にエッジが有ると判定する。マクロブロック内にエッジが含まれる場合には、小さいブロックサイズ（縦４画素×横４画素）のブロックを用いて算出された差分値が、大きいブロックサイズ（縦８画素×横８画素）のブロックを用いて算出された差分値よりも顕著に小さくなる傾向がある。図３，４に示すように、小さいブロックサイズのブロックを用いた場合（図３）には、大きいブロックサイズのブロックを用いた場合（図４）と比較して、最適予測方向を細かいブロックサイズ単位で設定できるからである。従って、式（６）に示した条件を満たす場合にエッジが有ると判定することにより、エッジの有無を高精度に判定することが可能となる。
【００６２】
また、本実施の形態に係る符号化装置１によれば、予測モード決定部２２は、式（７）に示した通り、MB_SATD１が第２の閾値TH_FINE未満である場合に、マクロブロック内にエッジが有ると判定する。画像の複雑度が高い場合には、たとえそのマクロブロック内にエッジが無くても差分値は大きくなるため、MB_SATD２からMB_SATD１を減じた値が大きくなりやすい傾向にある。従って、MB_SATD１が第２の第２の閾値TH_FINE以上である場合には、単に画像の複雑度が高い領域とみなしてエッジ有無の判定対象から除外することにより、誤ってエッジ有りと判定される事態を回避することができる。
【００６３】
また、本実施の形態に係る符号化装置１によれば、差分値はＳＡＴＤである。エッジとそれ以外の部分とでは周波数成分が大きく異なるため、周波数成分を含むＳＡＴＤを用いることにより、周波数成分を含まないＳＡＤを用いる場合と比較すると、エッジの有無を正確に判定することが可能となる。
【００６４】
また、本実施の形態に係る符号化装置１によれば、差分画像作成部２１は、入力画像と予測画像との差分画像を作成し、予測モード決定部２２は、差分画像作成部２１によって作成された差分画像内におけるエッジの有無に基づいて、マクロブロックに適用する予測モードを決定する。このように、入力画像ではなく、直接に符号化される差分画像を対象としてエッジの有無を判定することにより、入力画像を対象としたエッジの検出結果に基づいて予測モードを切り換える場合と比較して、予測モードの切り換えを適切に実行することが可能となる。
【符号の説明】
【００６５】
１  符号化装置
１０  イントラ予測処理部
２１  差分画像作成部
２２  予測モード決定部
３１  第１予測部
３３  第１演算部
３４  第１判定部
３５  第２予測部
３７  第２演算部
３８  第２判定部
【図１】
0005552078.tif 000011
【図２】
0005552078.tif 000012
【図３】
0005552078.tif 000013
【図４】
0005552078.tif 000014