(57)【要約】【課題】符号量の増加を抑止し、符号化性能の劣化を低減させること。【解決手段】動画像符号化対象である所定のサイズのブロックを、所定のサイズを構成している複数の同じサイズのブロックに分割する分割ステップと、分割後のブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定ステップと、を有し、サイズ判定ステップにおいて、分割後のブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、閾値以上である場合に、分割後のブロックにおいて変換量子化が行われるブロックのサイズを分割前のサイズと判定するサイズ判定方法。【選択図】図１
2016115983.tif 000002
【特許請求の範囲】
【請求項１】
動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割ステップと、
分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定ステップと、
を有し、
前記サイズ判定ステップにおいて、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、分割後の前記ブロックにおいて前記変換量子化が行われるブロックのサイズを分割前のサイズと判定するサイズ判定方法。
【請求項２】
動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割部と、
分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定部と、
を備え、
前記サイズ判定部は、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、分割後の前記ブロックにおいて前記変換量子化が行われるブロックのサイズを分割前のサイズと判定するサイズ判定装置。
【請求項３】
動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割ステップと、
分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定ステップと、
をコンピュータに実行させ、
前記サイズ判定ステップにおいて、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、分割後の前記ブロックにおいて前記変換量子化が行われるブロックのサイズを分割前のサイズと判定するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高効率動画像圧縮符号化規格であるＨＥＶＣに準拠した符号化器（エンコーダ）に用いるサイズ判定方法、サイズ判定装置及びコンピュータプログラムに関する。
【背景技術】
【０００２】
次世代の動画圧縮規格として注目されているＨＥＶＣをハードウェア化する難しさは、ＨＥＶＣの特徴である“木構造予測”と“複数の予測モード”に起因する。変換量子化演算器についてのハードウェア実装の難しさの原因として、ＴＵ（Transform Unit）の処理の複雑さがあるが、この問題を解決するためにＴＵサイズを事前に決定する方法がある。ＴＵサイズとは、変換量子化が行われるブロックのサイズを表す。
非特許文献１では、ガウシアンモデルに基づいて算出された閾値と、ブロックのＳＡＤ（差分絶対値和）とを比較することにより、ＴＵサイズを判定する手法が提案されている。非特許文献１に記載された技術では、ブロックをＬブロック（Leaderブロック）、Ｍブロック（Memberブロック）、ＴＷブロック（Temporary Workerブロック）のいずれであるかの判定が行われる。
【０００３】
ここで、Ｌブロックとは、オールゼロブロックと判定されるブロックを意味し、変換・量子化行列をすべて直接０に設定し、変換量子化演算処理をスキップできるブロックである。Ｍブロックとは、変換・量子化サイズが決定された状態で、変換・量子化演算を行うブロックを意味し、Ｍブロック（２Ｎ×２Ｎ）では、変換量子化サイズを２Ｎ×２Ｎに決定した状態で変換・量子化演算を行い、Ｎ×Ｎや（Ｎ／２）×（Ｎ／２）の変換・量子化ブロックの演算はスキップできる。ＴＷブロックとは、現在のサイズ及び現在よりも小さなサイズ（すなわち、２Ｎ×２Ｎ、Ｎ×Ｎ、（Ｎ／２）×（Ｎ／２）の３サイズ）について、変換量子化演算を再帰的に実施するブロックを意味し、従来の変換量子化演算における再帰的な決定手法と同一のもので変換量子化されるブロックである。
【０００４】
（ＴＷブロック及びＬブロックにおける問題）
しかし、リアルタイムの処理が必要となるハードウェア符号化器においては、従来の再帰的な決定手法でＴＷブロックの処理を実施することは、演算量及びリアルタイム性の観点で非常に困難である。そのため、ＴＷブロックを取り除いたＴＵサイズ判定手法が必要となる。さらには、変換量子化演算をスキップして演算量を削減する目的で設けられたＬブロックは、ソフトウェア符号化器では処理時間の削減に有効であるが、ハードウェア符号化器の場合には有効性が小さい。なぜなら、ハードウェア符号化器は、リアルタイム処理可能な変換量子化演算器を具備していることが一般的であるから、Ｌブロックと判定しても変換量子化演算器の動作を停止することができるのみであり、これによって消費電力を低減する効果はあるものの、変換量子化器の回路そのものを取り除くことはできないから回路規模の削減には寄与しない。むしろ、変換量子化演算器を動作させて正確な変換量子化演算を行うほうが、変換量子化演算をスキップするよりも符号化効率への寄与が高いと考えられるためＬブロックの判定も取り除くことが適当である。
【０００５】
（ＴＷブロックと判定する機構及びＬブロックと判定する機構を除く構成）
したがって、非特許文献１に基づく変換量子化演算器をＴＷブロック及びＬブロックと判定する機構を取り除いたハードウェアにおけるエンコード処理の流れは図９のようになる。図９は、ＴＷブロックと判定する機構及びＬブロックと判定する機構を取り除いた変換量子化演算器の具体例を示す図である。
図９における変換量子化演算器は、インター予測部１、ＴＵサイズ判定モジュール２、予測ＴＵサイズの整数変換量子化部３、エントロピー符号化部４から構成される。ここで、ＴＵサイズ判定モジュール２が行う判定処理について説明する。
【０００６】
２Ｎ×２ＮのＳＡＤ値の入力に対して、ＴＵサイズ判定モジュール２が行うＴＵサイズ判定処理は、主に２つのステップからなる。まずステップ１として、２Ｎ×２ＮのＳＡＤは、対応する２Ｎ×２Ｎ用の閾値と比較される。もし、入力されたＳＡＤ値が閾値よりも小さければ、上述したようにＴＵブロックサイズは２Ｎ×２Ｎに決定される。一方、入力されたＳＡＤ値が閾値よりも大きければ、入力された２Ｎ×２Ｎブロックは２Ｎ×２Ｎブロックを構成する４つのＮ×Ｎブロックに分割される。
【０００７】
次に、ステップ２において、それぞれのＮ×Ｎブロックについて、Ｎ×ＮＳＡＤが、対応するＮ×Ｎ用の閾値と比較される。もし、入力されたＳＡＤ値が閾値よりも小さければ、ＴＵブロックサイズはＮ×Ｎに決定される。一方、入力されたＳＡＤ値が閾値よりも大きければ、入力されたＮ×ＮブロックはＮ×Ｎブロックを構成する４つのＮ／２×Ｎ／２ブロックに分割される。各種の閾値は、非特許文献１で導出されている閾値と同様である。以下、上述した判定処理の流れを図１０に示す。図１０は、ＴＵサイズ判定モジュール２の処理の流れを示すフローチャートである。以下、図１０を用いて具体的に説明する。なお、ここでは、最も大きな変換量子化サイズを２Ｎ×２Ｎ（Ｎは自然数）として、Ｎ×Ｎと（Ｎ／２）×（Ｎ／２）の合計３サイズが選択可能という条件で説明する。
【０００８】
予測符号化後、符号化対象画像と予測画像との残差ｒｉｊ及びそのＳＡＤ（差分絶対値和）の値が、コーディングユニット（ＣＵ）単位にＴＵサイズ判定モジュール２に入力される。ＴＵサイズ判定モジュール２は、図１０に示すフローに従ってＴＵブロックサイズを判定する。例えば、ＴＵサイズ判定モジュール２は、ＴＵブロックサイズが、２Ｎ×２Ｎブロックであるのか、Ｎ×Ｎブロックであるのか、Ｎ／２×Ｎ／２ブロックであるのかを判定する。
【０００９】
まず、ＴＵサイズ判定モジュール２は、インター予測部１から残差ｒｉｊ、そのＳＡＤ及び外部からＱＰ値を入力する。ＴＵサイズ判定モジュール２は、現在入力されている残差のサイズ（変換量子化サイズと同じ）におけるＳＡＤ２Ｎ×２Ｎの値と、ガウシアンモデルに基づいて算出された閾値ＴＨ２Ｎ×２Ｎ［ＱＰ］とを比較してＳＡＤ２Ｎ×２Ｎが閾値ＴＨ２Ｎ×２Ｎ［ＱＰ］よりも小さいか否か判定する（ステップＳ１）。ＳＡＤ２Ｎ×２Ｎが閾値ＴＨ２Ｎ×２Ｎ［ＱＰ］よりも小さい場合（ステップＳ１−ＹＥＳ）、ＴＵサイズ判定モジュール２は現在の残差ブロック（２Ｎ×２Ｎ）は２Ｎ×２Ｎの変換量子化サイズと判定する。
【００１０】
一方、ＳＡＤ２Ｎ×２Ｎが閾値ＴＨ２Ｎ×２Ｎ［ＱＰ］よりも小さくない場合（ステップＳ１−ＮＯ）、ＴＵサイズ判定モジュール２は現在の残差ブロック（２Ｎ×２Ｎ）を構成している４つのＮ×Ｎブロックそれぞれ（ＳＡＤＮ×Ｎ［０］、ＳＡＤＮ×Ｎ［１］、ＳＡＤＮ×Ｎ［２］、ＳＡＤＮ×Ｎ［３］）について、ＳＡＤ（Ｎ×Ｎ）の値と、対応する閾値ＴＨＮ×Ｎ［ＱＰ］とを比較する。具体的には、まず、ＴＵサイズ判定モジュール２は、ＳＡＤＮ×Ｎ［０］の値が閾値ＴＨＮ×Ｎ［ＱＰ］より小さいか否か判定する（ステップＳ２）。
【００１１】
ＳＡＤＮ×Ｎ［０］の値が閾値ＴＨＮ×Ｎ［ＱＰ］より小さい場合（ステップＳ２−ＹＥＳ）、ＴＵサイズ判定モジュール２は現在の残差ブロック（Ｎ×Ｎ）はＮ×Ｎの変換量子化サイズと判定する。
一方、ＳＡＤＮ×Ｎ［０］の値が閾値ＴＨＮ×Ｎ［ＱＰ］より小さくない場合（ステップＳ２−ＮＯ）、ＴＵサイズ判定モジュール２は現在の残差ブロック（Ｎ×Ｎ）はＮ／２×Ｎ／２の変換量子化サイズと判定する。
その後、ＴＵサイズ判定モジュール２は、上述したようステップＳ２と同様の処理をＳＡＤＮ×Ｎ［１］〜ＳＡＤＮ×Ｎ［３］に対して行うことによって変換量子化サイズを判定する（ステップＳ３〜５）。
【００１２】
ＴＵブロックサイズが判定されたＣＵについては、決定したＴＵサイズである予測ＴＵサイズに基づき、予測ＴＵサイズの整数変換量子化部３において、残差ｒｉｊが変換量子化される。
以上の処理結果は、エントロピー符号化部４においてエントロピー符号化され、出力ビットストリームとして出力される。
【先行技術文献】
【非特許文献】
【００１３】
【非特許文献１】Jia Su, Koyo Nitta, Mitsuo Ikeda, Atsushi Shimizu: “Residue role assignment based transform partition predetermination on HEVC”, ICIP 2013: 2019-2023.
【発明の概要】
【発明が解決しようとする課題】
【００１４】
上記ＴＷブロック及びＬブロックにおける問題の段落で説明したように、非特許文献１で示す手順に基づいてＴＷブロックと判定されるようなＣＵについては、現在のサイズ及び現在よりも小さなサイズ（例えば、２Ｎ×２Ｎ、Ｎ×Ｎ、（Ｎ／２）×（Ｎ／２）の３サイズ）について、変換量子化演算を再帰的に実施するため、多くの冗長な演算が存在する。また、変換量子化演算を再帰的に実現することがハード化の障害となる。
【００１５】
しかしながら、上記ＴＷブロックと判定する機構及びＬブロックと判定する機構を除く構成に関する段落で説明したように、ＴＷブロックの判定を取り除くのみでは過分割によって符号量が増加してしまい、符号化性能が劣化してしまうという問題がある。ＴＷブロックの判定を取り除くことにより、いったん分割が決定したブロックについては、分割を取り消す手順が存在しない。そのため、分割によって発生したより小さなブロックを個々に判定した結果、分割の効果がないと判明した場合であっても、分割前の元のサイズに戻すことができないためである。
【００１６】
上記事情に鑑み、本発明は、符号量の増加を抑止し、符号化性能の劣化を低減させる技術の提供を目的としている。
【課題を解決するための手段】
【００１７】
本発明の一態様は、動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割ステップと、分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定ステップと、を有し、前記サイズ判定ステップにおいて、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、分割後の前記ブロックにおいて前記変換量子化が行われるブロックのサイズを分割前のサイズと判定するサイズ判定方法である。
【００１８】
本発明の一態様は、動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割部と、分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定部と、を備え、前記サイズ判定部は、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、分割後の前記ブロックにおいて前記変換量子化が行われるブロックのサイズを分割前のサイズと判定するサイズ判定装置である。
【００１９】
本発明の一態様は、動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割ステップと、分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定ステップと、をコンピュータに実行させ、前記サイズ判定ステップにおいて、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、分割後の前記ブロックにおいて前記変換量子化が行われるブロックのサイズを分割前のサイズと判定するコンピュータプログラムである。
【発明の効果】
【００２０】
本発明により、符号量の増加を抑止し、符号化性能の劣化を低減させることが可能となる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態による変換量子化装置の構成を示すブロック図である。
【図２】ＴＵサイズ判定部１０２が行うＴＵサイズ判定処理の流れを示すフローチャートである。
【図３】閾値テーブルの具体例を示す図である。
【図４】閾値テーブルの具体例を示す図である。
【図５】従来の技術による処理と本提案手法による処理との比較例を示す概略図である。
【図６】発生したビット量と、原画像との歪みとを２次元グラフ化したＲＤ曲線の具体例を示す図である。
【図７】ＢＤＢＲの結果を示す図である。
【図８】ＴＵ分割率の結果を示す図である。
【図９】ＴＷブロックと判定する機構及びＬブロックと判定する機構を取り除いた変換量子化演算器の具体例を示す図である。
【図１０】ＴＵサイズ判定モジュール２の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下、図面を参照して、本発明の一実施形態による変換量子化装置を説明する。
図１は、本発明の一実施形態による変換量子化装置の構成を示すブロック図である。変換量子化装置は、図１に示すように、インター予測部１０１、ＴＵサイズ判定部１０２、予測ＴＵサイズの整数変換量子化部１０３及びエントロピー符号化部１０４を備える。
インター予測部１０１は、変換量子化装置に入力された動画像符号化対象の原画像に基づいてインター予測を行う。インター予測部１０１は、符号化対象画像と予測画像との残差ｒｉｊ及びそのＳＡＤ（差分絶対値和）をＴＵサイズ判定部１０２に出力する。
【００２３】
ＴＵサイズ判定部１０２は、インター予測部１０１から出力された残差ｒｉｊ及びＳＡＤに基づいて、変換量子化が行われるブロックのサイズを判定する。ＴＵサイズ判定部１０２が行う処理については後述する。
予測ＴＵサイズの整数変換量子化部１０３は、ＴＵサイズ判定部１０２によって判定されたブロックのサイズに基づいて、当該ブロックのサイズで整数変換量子化を行う。
エントロピー符号化部１０４は、整数変換量子化が行われたブロックに対してエントロピー符号化を行って出力ビットストリームを出力する。
【００２４】
図２は、ＴＵサイズ判定部１０２が行うＴＵサイズ判定処理の流れを示すフローチャートである。なお、ここでは、最も大きな変換量子化サイズを２Ｎ×２Ｎ（Ｎは自然数）として、Ｎ×Ｎと（Ｎ／２）×（Ｎ／２）の合計３サイズが選択可能という条件で説明する。変換量子化サイズ（Ｎ）、ＱＰ値（ＱＰ）、ビット深度（ＢｉｔＤｅｐｔｈ）それぞれの閾値（ＴＨの値）テーブルは、図３、図４に示すように、事前に計算される（図３、図４はＢｉｔＤｅｐｔｈが８の場合である）。図３、図４の計算方法は後述する。
まず、ＴＵサイズ判定部１０２は、インター予測部１０１から残差ｒｉｊ、そのＳＡＤ及び外部からＱＰ値を入力する。インター予測部１０１において、ＳＡＤは、コーディングユニット（ＣＵ）それぞれについて動き推定を行って計算される。続いて、ＴＵサイズ判定部１０２は、現在入力されている残差のサイズ（変換量子化サイズと同じ）におけるＳＡＤ２Ｎ×２Ｎの値と、対応する閾値ＴＨ２Ｎ×２Ｎ［ＱＰ］とを比較してＳＡＤ２Ｎ×２Ｎが閾値ＴＨ２Ｎ×２Ｎ［ＱＰ］よりも小さいか否か判定する（ステップＳ１０１）。
【００２５】
ＳＡＤ２Ｎ×２Ｎが閾値２Ｎ×２Ｎ［ＱＰ］よりも小さい場合（ステップＳ１０１−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（２Ｎ×２Ｎ）は２Ｎ×２Ｎの変換量子化サイズと判定する。
一方、ＳＡＤ２Ｎ×２Ｎが閾値２Ｎ×２Ｎ［ＱＰ］よりも小さくない場合（ステップＳ１０１−ＮＯ）、ＴＵサイズ判定部１０２は現在の残差ブロック（２Ｎ×２Ｎ）を、現在の残差ブロック（２Ｎ×２Ｎ）を構成している４つのＮ×Ｎブロックに分割する。そして、ＴＵサイズ判定部１０２は、分割した４つのＮ×Ｎブロックそれぞれ（ＳＡＤＮ×Ｎ［０］、ＳＡＤＮ×Ｎ［１］、ＳＡＤＮ×Ｎ［２］、ＳＡＤＮ×Ｎ［３］）について、ＳＡＤ（Ｎ×Ｎ）の値と、対応する閾値ＴＨ’Ｎ×Ｎ［ＱＰ］とを比較する（ステップＳ１０２）。そして、４つのＮ×Ｎブロック全てが閾値ＴＨ’Ｎ×Ｎ［ＱＰ］よりも大きい場合（ステップＳ１０２−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（２Ｎ×２Ｎ）は２Ｎ×２Ｎの変換量子化サイズと判定する。
【００２６】
一方、４つのＮ×Ｎブロックのいずれかが閾値ＴＨ’Ｎ×Ｎ［ＱＰ］よりも大きくない場合（ステップＳ１０２−ＮＯ）、次にＴＵサイズ判定部１０２は４つのＮ×Ｎブロックそれぞれ（ＳＡＤＮ×Ｎ［０］、ＳＡＤＮ×Ｎ［１］、ＳＡＤＮ×Ｎ［２］、ＳＡＤＮ×Ｎ［３］）の値と、対応する閾値ＴＨＮ×Ｎ［ＱＰ］とを比較する。具体的には、ＴＵサイズ判定部１０２は、ＳＡＤＮ×Ｎ［０］の値と対応する閾値ＴＨＮ×Ｎ［ＱＰ］とを比較し、ＳＡＤＮ×Ｎ［１］の値と対応する閾値ＴＨＮ×Ｎ［ＱＰ］とを比較し、ＳＡＤＮ×Ｎ［２］の値と対応する閾値ＴＨＮ×Ｎ［ＱＰ］とを比較し、ＳＡＤＮ×Ｎ［３］の値と対応する閾値ＴＨＮ×Ｎ［ＱＰ］とを比較する。以下、それぞれの処理について説明する。
【００２７】
ＴＵサイズ判定部１０２は、ＳＡＤＮ×Ｎ［０］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さいか否か判定する（ステップＳ１０３）。ＳＡＤＮ×Ｎ［０］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さい場合（ステップＳ１０３−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ×Ｎの変換量子化サイズと判定する。
一方、ＳＡＤＮ×Ｎ［０］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さくない場合（ステップＳ１０３−ＮＯ）、ＴＵサイズ判定部１０２は残差ブロック（Ｎ×Ｎ）を、残差ブロック（Ｎ×Ｎ）を構成している４つのＮ／２×Ｎ／２ブロックに分割する。そして、ＴＵサイズ判定部１０２は、分割した４つのＮ／２×Ｎ／２ブロックそれぞれ（ＳＡＤＮ／２×Ｎ／２［０］［０］、ＳＡＤＮ／２×Ｎ／２［０］［１］、ＳＡＤＮ／２×Ｎ／２［０］［２］、ＳＡＤＮ／２×Ｎ／２［０］［３］）について、ＳＡＤ（Ｎ／２×Ｎ／２）の値と、対応する閾値ＴＨ’Ｎ／２×Ｎ／２［ＱＰ］とを比較する（ステップＳ１０４）。
【００２８】
そして、４つのＮ／２×Ｎ／２ブロック全てが閾値ＴＨ’Ｎ／２×Ｎ／２［ＱＰ］よりも大きい場合（ステップＳ１０４−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ×Ｎの変換量子化サイズと判定する。
一方、４つのＮ／２×Ｎ／２ブロックのいずれかが閾値ＴＨ’ Ｎ／２×Ｎ／２［ＱＰ］よりも大きくない場合（ステップＳ１０４−ＮＯ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ／２×Ｎ／２の変換量子化サイズと判定する。
【００２９】
ステップＳ１０３及びステップＳ１０４の処理と同様の処理を、ＴＵサイズ判定部１０２は、ＳＡＤＮ×Ｎ［１］の値〜ＳＡＤＮ×Ｎ［３］の値に対して行う。
具体的には、ＴＵサイズ判定部１０２は、ＳＡＤＮ×Ｎ［１］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さいか否か判定する（ステップＳ１０５）。ＳＡＤＮ×Ｎ［１］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さい場合（ステップＳ１０５−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ×Ｎの変換量子化サイズと判定する。
一方、ＳＡＤＮ×Ｎ［１］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さくない場合（ステップＳ１０５−ＮＯ）、ＴＵサイズ判定部１０２は残差ブロック（Ｎ×Ｎ）を、残差ブロック（Ｎ×Ｎ）を構成している４つのＮ／２×Ｎ／２ブロックに分割する。そして、ＴＵサイズ判定部１０２は、分割した４つのＮ／２×Ｎ／２ブロックそれぞれ（ＳＡＤＮ／２×Ｎ／２［０］［０］、ＳＡＤＮ／２×Ｎ／２［０］［１］、ＳＡＤＮ／２×Ｎ／２［０］［２］、ＳＡＤＮ／２×Ｎ／２［０］［３］）について、ＳＡＤ（Ｎ／２×Ｎ／２）の値と、対応する閾値ＴＨ’Ｎ／２×Ｎ／２［ＱＰ］とを比較する（ステップＳ１０６）。
【００３０】
そして、４つのＮ／２×Ｎ／２ブロック全てが閾値ＴＨ’Ｎ／２×Ｎ／２［ＱＰ］よりも大きい場合（ステップＳ１０６−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ×Ｎの変換量子化サイズと判定する。
一方、４つのＮ／２×Ｎ／２ブロックのいずれかが閾値ＴＨ’ Ｎ／２×Ｎ／２［ＱＰ］よりも大きくない場合（ステップＳ１０６−ＮＯ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ／２×Ｎ／２の変換量子化サイズと判定する。
【００３１】
また、ＴＵサイズ判定部１０２は、ＳＡＤＮ×Ｎ［２］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さいか否か判定する（ステップＳ１０７）。ＳＡＤＮ×Ｎ［２］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さい場合（ステップＳ１０７−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ×Ｎの変換量子化サイズと判定する。
一方、ＳＡＤＮ×Ｎ［２］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さくない場合（ステップＳ１０７−ＮＯ）、ＴＵサイズ判定部１０２は残差ブロック（Ｎ×Ｎ）を、残差ブロック（Ｎ×Ｎ）を構成している４つのＮ／２×Ｎ／２ブロックに分割する。そして、ＴＵサイズ判定部１０２は、分割した４つのＮ／２×Ｎ／２ブロックそれぞれ（ＳＡＤＮ／２×Ｎ／２［０］［０］、ＳＡＤＮ／２×Ｎ／２［０］［１］、ＳＡＤＮ／２×Ｎ／２［０］［２］、ＳＡＤＮ／２×Ｎ／２［０］［３］）について、ＳＡＤ（Ｎ／２×Ｎ／２）の値と、対応する閾値ＴＨ’Ｎ／２×Ｎ／２［ＱＰ］とを比較する（ステップＳ１０８）。
【００３２】
そして、４つのＮ／２×Ｎ／２ブロック全てが閾値ＴＨ’Ｎ／２×Ｎ／２［ＱＰ］よりも大きい場合（ステップＳ１０８−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ×Ｎの変換量子化サイズと判定する。
一方、４つのＮ／２×Ｎ／２ブロックのいずれかが閾値ＴＨ’ Ｎ／２×Ｎ／２［ＱＰ］よりも大きくない場合（ステップＳ１０８−ＮＯ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ／２×Ｎ／２の変換量子化サイズと判定する。
【００３３】
また、ＴＵサイズ判定部１０２は、ＳＡＤＮ×Ｎ［３］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さいか否か判定する（ステップＳ１０９）。ＳＡＤＮ×Ｎ［３］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さい場合（ステップＳ１０９−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ×Ｎの変換量子化サイズと判定する。
一方、ＳＡＤＮ×Ｎ［３］の値が対応する閾値ＴＨＮ×Ｎ［ＱＰ］よりも小さくない場合（ステップＳ１０９−ＮＯ）、ＴＵサイズ判定部１０２は残差ブロック（Ｎ×Ｎ）を、残差ブロック（Ｎ×Ｎ）を構成している４つのＮ／２×Ｎ／２ブロックに分割する。そして、ＴＵサイズ判定部１０２は、分割した４つのＮ／２×Ｎ／２ブロックそれぞれ（ＳＡＤＮ／２×Ｎ／２［０］［０］、ＳＡＤＮ／２×Ｎ／２［０］［１］、ＳＡＤＮ／２×Ｎ／２［０］［２］、ＳＡＤＮ／２×Ｎ／２［０］［３］）について、ＳＡＤ（Ｎ／２×Ｎ／２）の値と、対応する閾値ＴＨ’Ｎ／２×Ｎ／２［ＱＰ］とを比較する（ステップＳ１１０）。
【００３４】
そして、４つのＮ／２×Ｎ／２ブロック全てが閾値ＴＨ’Ｎ／２×Ｎ／２［ＱＰ］よりも大きい場合（ステップＳ１１０−ＹＥＳ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ×Ｎの変換量子化サイズと判定する。
一方、４つのＮ／２×Ｎ／２ブロックのいずれかが閾値ＴＨ’ Ｎ／２×Ｎ／２［ＱＰ］よりも大きくない場合（ステップＳ１１０−ＮＯ）、ＴＵサイズ判定部１０２は現在の残差ブロック（Ｎ×Ｎ）はＮ／２×Ｎ／２の変換量子化サイズと判定する。
なお、閾値ＴＨと閾値ＴＨ’とは、通常はＴＨ’＞ＴＨであるが、後に示す評価のように、簡単化のため同一の値とすることもできる。
【００３５】
次に、閾値の決定について説明する。閾値を導出するにあたっては、インター予測残差である残差サンプルｒｉｊと量子化前変換係数ｄｉｊがガウシアンモデルに基づいていることを前提とする。変換量子化係数ｑｉｊの絶対値がすべて１未満となる場合（すなわち、オールゼロブロックとなる場合）変換量子化に入力される残差の係数はすべて、分散がＱＰ（量子化ステップ）の１ステップの範囲に収まっていることが推定される。そこで、２つのガウスモデルの分散の関係を計算することによって、ＳＡＤ値と閾値との関係性が構築される。閾値の導出方法を以下に説明する。
【００３６】
変換量子化係数の絶対値が１未満、すなわち、｜ｑｕｖ｜＜１の場合、このブロックは、オールゼロブロックである。ＨＭ（ＨＥＶＣ試験モデル）において、変換量子化係数ｑｉｊは、以下の式１のように導出される。
【数１】
2016115983.tif 000003
【００３７】
ここで、ＨＭは、ＨＥＶＣ標準化に用いられる参照エンコーダソフトウェアであり、符号化に用いられる複数のモードやパラメータについて、網羅的に符号化を試し、その中で符号化効率（ビットレート−歪み特性）がもっとも優れたモードやパラメータを選び出して符号化を行うため、エンコードした結果はビットレート−歪み特性が最適化された状態にあり、事前の分析に適している。
ただし、
【数２】
2016115983.tif 000004
【数３】
2016115983.tif 000005
であり、ＢｉｔＤｅｐｔｈは、ピクセルのビット深度と定義される。
【００３８】
量子化前変換係数ｄｕｖがＱＰの１ステップ未満となるたるための条件は下記式４に基づいて導出される。
【００３９】
【数４】
2016115983.tif 000006
ただしｓｈｉｆｔ＝２９＋ＱＰ／６−ｌｏｇ２Ｎ−Ｂｉｔｄｅｐｔｈである。
【００４０】
量子化前変換係数ｄｉｊの分布と、インター予測残差ｒｉｊの分布がそれぞれガウス分布と仮定した場合、この分布の分散間で成立する関係（近似式）は、以下の式５のように導出される。
【数５】
2016115983.tif 000007
ここで、ＴはＨＭで定義されている正規化された変換行列である。
【００４１】
［Ａ］ｕ，ｕは行列Ａの（ｕ，ｕ）番目のコンポーネントである。Ｒｉｊ＝ρ｜ｊ−ｉ｜ρ＝０．６では、σ２Ｔ（ｕ，ｖ）は以下の式６のように導出される。
【００４２】
【数６】
2016115983.tif 000008
【００４３】
上記のとおり、σ２Ｔ（ｕ，ｖ）の中で最大の値は、ＤＣ成分で発生しているので、以下の式７ようになる。
【００４４】
【数７】
2016115983.tif 000009
【数８】
2016115983.tif 000010
【００４５】
残差サンプルｒｉｊ（ｉ，ｊ＝０．．．Ｎ−１）と量子化前変換係数ｄｉｊは、ガウス分布としてモデル化しているので、ｄｉｊの分布は（−ｎσ，ｎσ）の範囲内に収まると現される。ｎはゼロ以上の実数であり、ｎ＝３の場合、ｄｉｊがこの範囲に収まる確率は約９９％である。それゆえ、変換係数の分布σＴ（ｕ，ｖ）と、インター予測残差の分布σｒには、次の関係が成り立つ。
ＴＨ［ＱＰ］＞ｎ×σＴ
【００４６】
一方、
【数９】
2016115983.tif 000011
であり、
Ｎ＝８の場合、
【数１０】
2016115983.tif 000012
である。
【００４７】
８×８ブロックの場合におけるＳＡＤと変換係数閾値の関係（不等式）は、インター予測残差の分布の分散がＳＡＤを用いた式で近似できることから、以下の式１１のように導出される。
【００４８】
【数１１】
2016115983.tif 000013
【００４９】
８×８以外のブロックの関係も、以下の式１２〜式１４のように導出される。
【数１２】
2016115983.tif 000014
【数１３】
2016115983.tif 000015
【数１４】
2016115983.tif 000016
【００５０】
この実施形態中では、画質を保つため、閾値ＴＨ［ＱＰ］に乗じる調整係数を求めるための係数ｎの値は２に、ＴＨ’［ＱＰ］に乗じる調整係数を求めるための係数ｎの値は１に設定されている。なお、図２中の閾値ＴＨ［ＱＰ］及びＴＨ’［ＱＰ］は、それぞれ上記のＴＨ［ＱＰ］、ＴＨ’［ＱＰ］に調整係数を乗じたものを改めてＴＨ［ＱＰ］及びＴＨ’［ＱＰ］としたものである。
【００５１】
以上のように構成された変換量子化装置によれば、符号化性能の劣化を低減させることが可能になる。この効果について詳細に説明する。
本実施形態における変換量子化装置では、ＴＵサイズの判定時に分割されたブロックのそれぞれについてＴＵサイズの再判定の処理が行なわれる。この再判定の処理によって、現在の残差ブロックにより適したＴＵサイズの予測判定が可能になる。具体的な例を図５に示す。図５は、従来の技術による処理と本提案手法による処理との比較例を示す概略図である。図５（Ａ）は従来の技術による処理を表し、図５（Ｂ）は本提案手法による処理を表す。図５に示されるように、従来の技術では、一度ブロックが分割された場合には、分割されたブロックサイズをＴＵサイズとするかさらに分割したブロックサイズをＴＵサイズと判定していた。それに対し、本提案手法では、一度ブロックが分割された場合であっても分割後のブロックサイズにおけるＳＡＤと閾値とを比較して所定の条件を満たす場合には分割後のブロックサイズよりも大きなブロックサイズをＴＵサイズとして判定することができる。したがって、現在の残差ブロックにより適したＴＵサイズの予測判定が可能になる。そのため、符号量の増加を抑止し、符号化性能の劣化を低減させることが可能になる。
【００５２】
また、本実施形態による変換量子化装置によって生じる他の効果について説明する。本実施形態による変換量子化装置の効果を明らかにするために、符号化効率とＴＵ分割率の評価を行った。大小の動き、クローズアップや広い範囲の画像、パンやシーンチェンジなどを含んだクラスＡ（２５６０×１６００）、及びクラスＢ（１９２０×１０８０）のＨＥＶＣテストシーケンスを使用した。符号化効率を比較するには一般的に、発生したビット量と、原画像との歪みとを２次元グラフ化したＲＤ曲線（図６）を使用する。図６において、縦軸はＰＳＮＲ（Peak signal-to-noise ratio）を表し、横軸はビットレートを表す。指標として下記の参考文献１に記載のＢＤＢＲを採用する。（参考文献１「G. Bjontegard, ''Calculation of average PSNR differences between RD-curves,'' ITU-T VCEG-M33, 2001.」）
これは、本発明に基づくアルゴリズムと従来手法の性能との間のビットレートの平均差であり、図７に示すように、ビデオの品質を測定するものである。ＢＤＢＲにおける＋（プラス）はビットレートの利得を表す。さらに、ＴＵ分割率を図８に記載している。ここで、ＴＵ分割率（ＰＲ）は、従来手法のＴＵ分割率Ｐoriginalと、提案方式のＴＵ分割率Ｐproposalによって以下の式１５に基づいて計算している。
【００５３】
【数１５】
2016115983.tif 000017
【００５４】
なお、本実施形態では、ブロック全てが閾値以上であった場合にＴＵサイズ判定部１０２がブロックのサイズを分割前の大きなブロックサイズであると判定する構成を示したが、これに限定される必要はない。例えば、事前に定められた０以上３以下の個数以上の値が閾値以上である場合にＴＵサイズ判定部１０２がブロックのサイズを分割前の大きなブロックサイズであると判定するように構成されてもよい。事前に定められた値が小さいほど、ＴＵサイズ判定部１０２がブロックのサイズを分割前の大きなブロックサイズであると判定する確率が上昇する。
本実施形態に基づいた方式によれば、残差の大きなブロックについて分割率は小さくなり、従来方式と比べてより低いビットレートを達成している。本提案手法はハードウェア符号化器に対して適用することが考えられる。これに限定されることなく、ソフトウェア型の符号化器にも適用可能であることは自明である。
【００５５】
なお、本発明における変換量子化装置の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりＴＵサイズ判定処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００５６】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。更に、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００５７】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００５８】
１…インター予測部，  ２…ＴＵサイズ判定モジュール，  ３…予測ＴＵサイズの整数変換量子化部，  ４…エントロピー符号化部，  １０１…インター予測部，  １０２…ＴＵサイズ判定部（分割部、サイズ判定部、サイズ判定装置），  １０３…予測ＴＵサイズの整数変換量子化部，  １０４…エントロピー符号化部
【図１】
2016115983.tif 000018
【図２】
2016115983.tif 000019
【図３】
2016115983.tif 000020
【図４】
2016115983.tif 000021
【図５】
2016115983.tif 000022
【図６】
2016115983.tif 000023
【図７】
2016115983.tif 000024
【図８】
2016115983.tif 000025
【図９】
2016115983.tif 000026
【図１０】
2016115983.tif 000027