JP6145084B2 - サイズ判定方法、サイズ判定装置及びコンピュータプログラム - Google Patents

サイズ判定方法、サイズ判定装置及びコンピュータプログラム Download PDF

Info

Publication number
JP6145084B2
JP6145084B2 JP2014251130A JP2014251130A JP6145084B2 JP 6145084 B2 JP6145084 B2 JP 6145084B2 JP 2014251130 A JP2014251130 A JP 2014251130A JP 2014251130 A JP2014251130 A JP 2014251130A JP 6145084 B2 JP6145084 B2 JP 6145084B2
Authority
JP
Japan
Prior art keywords
size
block
sad
predetermined
threshold
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014251130A
Other languages
English (en)
Other versions
JP2016115983A (ja
Inventor
佳 蘇
佳 蘇
大西 隆之
隆之 大西
清水 淳
淳 清水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2014251130A priority Critical patent/JP6145084B2/ja
Publication of JP2016115983A publication Critical patent/JP2016115983A/ja
Application granted granted Critical
Publication of JP6145084B2 publication Critical patent/JP6145084B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、高効率動画像圧縮符号化規格であるHEVCに準拠した符号化器(エンコーダ)に用いるサイズ判定方法、サイズ判定装置及びコンピュータプログラムに関する。
次世代の動画圧縮規格として注目されているHEVCをハードウェア化する難しさは、HEVCの特徴である“木構造予測”と“複数の予測モード”に起因する。変換量子化演算器についてのハードウェア実装の難しさの原因として、TU(Transform Unit)の処理の複雑さがあるが、この問題を解決するためにTUサイズを事前に決定する方法がある。TUサイズとは、変換量子化が行われるブロックのサイズを表す。
非特許文献1では、ガウシアンモデルに基づいて算出された閾値と、ブロックのSAD(差分絶対値和)とを比較することにより、TUサイズを判定する手法が提案されている。非特許文献1に記載された技術では、ブロックをLブロック(Leaderブロック)、Mブロック(Memberブロック)、TWブロック(Temporary Workerブロック)のいずれであるかの判定が行われる。
ここで、Lブロックとは、オールゼロブロックと判定されるブロックを意味し、変換・量子化行列をすべて直接0に設定し、変換量子化演算処理をスキップできるブロックである。Mブロックとは、変換・量子化サイズが決定された状態で、変換・量子化演算を行うブロックを意味し、Mブロック(2N×2N)では、変換量子化サイズを2N×2Nに決定した状態で変換・量子化演算を行い、N×Nや(N/2)×(N/2)の変換・量子化ブロックの演算はスキップできる。TWブロックとは、現在のサイズ及び現在よりも小さなサイズ(すなわち、2N×2N、N×N、(N/2)×(N/2)の3サイズ)について、変換量子化演算を再帰的に実施するブロックを意味し、従来の変換量子化演算における再帰的な決定手法と同一のもので変換量子化されるブロックである。
(TWブロック及びLブロックにおける問題)
しかし、リアルタイムの処理が必要となるハードウェア符号化器においては、従来の再帰的な決定手法でTWブロックの処理を実施することは、演算量及びリアルタイム性の観点で非常に困難である。そのため、TWブロックを取り除いたTUサイズ判定手法が必要となる。さらには、変換量子化演算をスキップして演算量を削減する目的で設けられたLブロックは、ソフトウェア符号化器では処理時間の削減に有効であるが、ハードウェア符号化器の場合には有効性が小さい。なぜなら、ハードウェア符号化器は、リアルタイム処理可能な変換量子化演算器を具備していることが一般的であるから、Lブロックと判定しても変換量子化演算器の動作を停止することができるのみであり、これによって消費電力を低減する効果はあるものの、変換量子化器の回路そのものを取り除くことはできないから回路規模の削減には寄与しない。むしろ、変換量子化演算器を動作させて正確な変換量子化演算を行うほうが、変換量子化演算をスキップするよりも符号化効率への寄与が高いと考えられるためLブロックの判定も取り除くことが適当である。
(TWブロックと判定する機構及びLブロックと判定する機構を除く構成)
したがって、非特許文献1に基づく変換量子化演算器をTWブロック及びLブロックと判定する機構を取り除いたハードウェアにおけるエンコード処理の流れは図9のようになる。図9は、TWブロックと判定する機構及びLブロックと判定する機構を取り除いた変換量子化演算器の具体例を示す図である。
図9における変換量子化演算器は、インター予測部1、TUサイズ判定モジュール2、予測TUサイズの整数変換量子化部3、エントロピー符号化部4から構成される。ここで、TUサイズ判定モジュール2が行う判定処理について説明する。
2N×2NのSAD値の入力に対して、TUサイズ判定モジュール2が行うTUサイズ判定処理は、主に2つのステップからなる。まずステップ1として、2N×2NのSADは、対応する2N×2N用の閾値と比較される。もし、入力されたSAD値が閾値よりも小さければ、上述したようにTUブロックサイズは2N×2Nに決定される。一方、入力されたSAD値が閾値よりも大きければ、入力された2N×2Nブロックは2N×2Nブロックを構成する4つのN×Nブロックに分割される。
次に、ステップ2において、それぞれのN×Nブロックについて、N×NSADが、対応するN×N用の閾値と比較される。もし、入力されたSAD値が閾値よりも小さければ、TUブロックサイズはN×Nに決定される。一方、入力されたSAD値が閾値よりも大きければ、入力されたN×NブロックはN×Nブロックを構成する4つのN/2×N/2ブロックに分割される。各種の閾値は、非特許文献1で導出されている閾値と同様である。以下、上述した判定処理の流れを図10に示す。図10は、TUサイズ判定モジュール2の処理の流れを示すフローチャートである。以下、図10を用いて具体的に説明する。なお、ここでは、最も大きな変換量子化サイズを2N×2N(Nは自然数)として、N×Nと(N/2)×(N/2)の合計3サイズが選択可能という条件で説明する。
予測符号化後、符号化対象画像と予測画像との残差rij及びそのSAD(差分絶対値和)の値が、コーディングユニット(CU)単位にTUサイズ判定モジュール2に入力される。TUサイズ判定モジュール2は、図10に示すフローに従ってTUブロックサイズを判定する。例えば、TUサイズ判定モジュール2は、TUブロックサイズが、2N×2Nブロックであるのか、N×Nブロックであるのか、N/2×N/2ブロックであるのかを判定する。
まず、TUサイズ判定モジュール2は、インター予測部1から残差rij、そのSAD及び外部からQP値を入力する。TUサイズ判定モジュール2は、現在入力されている残差のサイズ(変換量子化サイズと同じ)におけるSAD2N×2Nの値と、ガウシアンモデルに基づいて算出された閾値TH2N×2N[QP]とを比較してSAD2N×2Nが閾値TH2N×2N[QP]よりも小さいか否か判定する(ステップS1)。SAD2N×2Nが閾値TH2N×2N[QP]よりも小さい場合(ステップS1−YES)、TUサイズ判定モジュール2は現在の残差ブロック(2N×2N)は2N×2Nの変換量子化サイズと判定する。
一方、SAD2N×2Nが閾値TH2N×2N[QP]よりも小さくない場合(ステップS1−NO)、TUサイズ判定モジュール2は現在の残差ブロック(2N×2N)を構成している4つのN×Nブロックそれぞれ(SADN×N[0]、SADN×N[1]、SADN×N[2]、SADN×N[3])について、SAD(N×N)の値と、対応する閾値THN×N[QP]とを比較する。具体的には、まず、TUサイズ判定モジュール2は、SADN×N[0]の値が閾値THN×N[QP]より小さいか否か判定する(ステップS2)。
SADN×N[0]の値が閾値THN×N[QP]より小さい場合(ステップS2−YES)、TUサイズ判定モジュール2は現在の残差ブロック(N×N)はN×Nの変換量子化サイズと判定する。
一方、SADN×N[0]の値が閾値THN×N[QP]より小さくない場合(ステップS2−NO)、TUサイズ判定モジュール2は現在の残差ブロック(N×N)はN/2×N/2の変換量子化サイズと判定する。
その後、TUサイズ判定モジュール2は、上述したようステップS2と同様の処理をSADN×N[1]〜SADN×N[3]に対して行うことによって変換量子化サイズを判定する(ステップS3〜5)。
TUブロックサイズが判定されたCUについては、決定したTUサイズである予測TUサイズに基づき、予測TUサイズの整数変換量子化部3において、残差rijが変換量子化される。
以上の処理結果は、エントロピー符号化部4においてエントロピー符号化され、出力ビットストリームとして出力される。
Jia Su, Koyo Nitta, Mitsuo Ikeda, Atsushi Shimizu: "Residue role assignment based transform partition predetermination on HEVC", ICIP 2013: 2019-2023.
上記TWブロック及びLブロックにおける問題の段落で説明したように、非特許文献1で示す手順に基づいてTWブロックと判定されるようなCUについては、現在のサイズ及び現在よりも小さなサイズ(例えば、2N×2N、N×N、(N/2)×(N/2)の3サイズ)について、変換量子化演算を再帰的に実施するため、多くの冗長な演算が存在する。また、変換量子化演算を再帰的に実現することがハード化の障害となる。
しかしながら、上記TWブロックと判定する機構及びLブロックと判定する機構を除く構成に関する段落で説明したように、TWブロックの判定を取り除くのみでは過分割によって符号量が増加してしまい、符号化性能が劣化してしまうという問題がある。TWブロックの判定を取り除くことにより、いったん分割が決定したブロックについては、分割を取り消す手順が存在しない。そのため、分割によって発生したより小さなブロックを個々に判定した結果、分割の効果がないと判明した場合であっても、分割前の元のサイズに戻すことができないためである。
上記事情に鑑み、本発明は、符号量の増加を抑止し、符号化性能の劣化を低減させる技術の提供を目的としている。
本発明の一態様は、動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割ステップと、分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定ステップと、を有し、前記サイズ判定ステップにおいて、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、前記所定のサイズのブロックにおいて前記変換量子化が行われるブロックのサイズを、前記閾値以上であると判定された時点の分割直前のブロックのサイズと判定するサイズ判定方法である。
本発明の一態様は、動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割部と、分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定部と、を備え、前記サイズ判定部は、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、前記所定のサイズのブロックにおいて前記変換量子化が行われるブロックのサイズを、前記閾値以上であると判定された時点の分割直前のブロックのサイズと判定するサイズ判定装置である。
本発明の一態様は、動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割ステップと、分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定ステップと、をコンピュータに実行させ、前記サイズ判定ステップにおいて、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、前記所定のサイズのブロックにおいて前記変換量子化が行われるブロックのサイズを、前記閾値以上であると判定された時点の分割直前のブロックのサイズと判定するコンピュータプログラムである。
本発明により、符号量の増加を抑止し、符号化性能の劣化を低減させることが可能となる。
本発明の一実施形態による変換量子化装置の構成を示すブロック図である。 TUサイズ判定部102が行うTUサイズ判定処理の流れを示すフローチャートである。 閾値テーブルの具体例を示す図である。 閾値テーブルの具体例を示す図である。 従来の技術による処理と本提案手法による処理との比較例を示す概略図である。 発生したビット量と、原画像との歪みとを2次元グラフ化したRD曲線の具体例を示す図である。 BDBRの結果を示す図である。 TU分割率の結果を示す図である。 TWブロックと判定する機構及びLブロックと判定する機構を取り除いた変換量子化演算器の具体例を示す図である。 TUサイズ判定モジュール2の処理の流れを示すフローチャートである。
以下、図面を参照して、本発明の一実施形態による変換量子化装置を説明する。
図1は、本発明の一実施形態による変換量子化装置の構成を示すブロック図である。変換量子化装置は、図1に示すように、インター予測部101、TUサイズ判定部102、予測TUサイズの整数変換量子化部103及びエントロピー符号化部104を備える。
インター予測部101は、変換量子化装置に入力された動画像符号化対象の原画像に基づいてインター予測を行う。インター予測部101は、符号化対象画像と予測画像との残差rij及びそのSAD(差分絶対値和)をTUサイズ判定部102に出力する。
TUサイズ判定部102は、インター予測部101から出力された残差rij及びSADに基づいて、変換量子化が行われるブロックのサイズを判定する。TUサイズ判定部102が行う処理については後述する。
予測TUサイズの整数変換量子化部103は、TUサイズ判定部102によって判定されたブロックのサイズに基づいて、当該ブロックのサイズで整数変換量子化を行う。
エントロピー符号化部104は、整数変換量子化が行われたブロックに対してエントロピー符号化を行って出力ビットストリームを出力する。
図2は、TUサイズ判定部102が行うTUサイズ判定処理の流れを示すフローチャートである。なお、ここでは、最も大きな変換量子化サイズを2N×2N(Nは自然数)として、N×Nと(N/2)×(N/2)の合計3サイズが選択可能という条件で説明する。変換量子化サイズ(N)、QP値(QP)、ビット深度(BitDepth)それぞれの閾値(THの値)テーブルは、図3、図4に示すように、事前に計算される(図3、図4はBitDepthが8の場合である)。図3、図4の計算方法は後述する。
まず、TUサイズ判定部102は、インター予測部101から残差rij、そのSAD及び外部からQP値を入力する。インター予測部101において、SADは、コーディングユニット(CU)それぞれについて動き推定を行って計算される。続いて、TUサイズ判定部102は、現在入力されている残差のサイズ(変換量子化サイズと同じ)におけるSAD2N×2Nの値と、対応する閾値TH2N×2N[QP]とを比較してSAD2N×2Nが閾値TH2N×2N[QP]よりも小さいか否か判定する(ステップS101)。
SAD2N×2Nが閾値2N×2N[QP]よりも小さい場合(ステップS101−YES)、TUサイズ判定部102は現在の残差ブロック(2N×2N)は2N×2Nの変換量子化サイズと判定する。
一方、SAD2N×2Nが閾値2N×2N[QP]よりも小さくない場合(ステップS101−NO)、TUサイズ判定部102は現在の残差ブロック(2N×2N)を、現在の残差ブロック(2N×2N)を構成している4つのN×Nブロックに分割する。そして、TUサイズ判定部102は、分割した4つのN×Nブロックそれぞれ(SADN×N[0]、SADN×N[1]、SADN×N[2]、SADN×N[3])について、SAD(N×N)の値と、対応する閾値TH’N×N[QP]とを比較する(ステップS102)。そして、4つのN×Nブロック全てが閾値TH’N×N[QP]よりも大きい場合(ステップS102−YES)、TUサイズ判定部102は現在の残差ブロック(2N×2N)は2N×2Nの変換量子化サイズと判定する。
一方、4つのN×Nブロックのいずれかが閾値TH’N×N[QP]よりも大きくない場合(ステップS102−NO)、次にTUサイズ判定部102は4つのN×Nブロックそれぞれ(SADN×N[0]、SADN×N[1]、SADN×N[2]、SADN×N[3])の値と、対応する閾値THN×N[QP]とを比較する。具体的には、TUサイズ判定部102は、SADN×N[0]の値と対応する閾値THN×N[QP]とを比較し、SADN×N[1]の値と対応する閾値THN×N[QP]とを比較し、SADN×N[2]の値と対応する閾値THN×N[QP]とを比較し、SADN×N[3]の値と対応する閾値THN×N[QP]とを比較する。以下、それぞれの処理について説明する。
TUサイズ判定部102は、SADN×N[0]の値が対応する閾値THN×N[QP]よりも小さいか否か判定する(ステップS103)。SADN×N[0]の値が対応する閾値THN×N[QP]よりも小さい場合(ステップS103−YES)、TUサイズ判定部102は現在の残差ブロック(N×N)はN×Nの変換量子化サイズと判定する。
一方、SADN×N[0]の値が対応する閾値THN×N[QP]よりも小さくない場合(ステップS103−NO)、TUサイズ判定部102は残差ブロック(N×N)を、残差ブロック(N×N)を構成している4つのN/2×N/2ブロックに分割する。そして、TUサイズ判定部102は、分割した4つのN/2×N/2ブロックそれぞれ(SADN/2×N/2[0][0]、SADN/2×N/2[0][1]、SADN/2×N/2[0][2]、SADN/2×N/2[0][3])について、SAD(N/2×N/2)の値と、対応する閾値TH’N/2×N/2[QP]とを比較する(ステップS104)。
そして、4つのN/2×N/2ブロック全てが閾値TH’N/2×N/2[QP]よりも大きい場合(ステップS104−YES)、TUサイズ判定部102は現在の残差ブロック(N×N)はN×Nの変換量子化サイズと判定する。
一方、4つのN/2×N/2ブロックのいずれかが閾値TH’ N/2×N/2[QP]よりも大きくない場合(ステップS104−NO)、TUサイズ判定部102は現在の残差ブロック(N×N)はN/2×N/2の変換量子化サイズと判定する。
ステップS103及びステップS104の処理と同様の処理を、TUサイズ判定部102は、SADN×N[1]の値〜SADN×N[3]の値に対して行う。
具体的には、TUサイズ判定部102は、SADN×N[1]の値が対応する閾値THN×N[QP]よりも小さいか否か判定する(ステップS105)。SADN×N[1]の値が対応する閾値THN×N[QP]よりも小さい場合(ステップS105−YES)、TUサイズ判定部102は現在の残差ブロック(N×N)はN×Nの変換量子化サイズと判定する。
一方、SADN×N[1]の値が対応する閾値THN×N[QP]よりも小さくない場合(ステップS105−NO)、TUサイズ判定部102は残差ブロック(N×N)を、残差ブロック(N×N)を構成している4つのN/2×N/2ブロックに分割する。そして、TUサイズ判定部102は、分割した4つのN/2×N/2ブロックそれぞれ(SADN/2×N/2[0][0]、SADN/2×N/2[0][1]、SADN/2×N/2[0][2]、SADN/2×N/2[0][3])について、SAD(N/2×N/2)の値と、対応する閾値TH’N/2×N/2[QP]とを比較する(ステップS106)。
そして、4つのN/2×N/2ブロック全てが閾値TH’N/2×N/2[QP]よりも大きい場合(ステップS106−YES)、TUサイズ判定部102は現在の残差ブロック(N×N)はN×Nの変換量子化サイズと判定する。
一方、4つのN/2×N/2ブロックのいずれかが閾値TH’ N/2×N/2[QP]よりも大きくない場合(ステップS106−NO)、TUサイズ判定部102は現在の残差ブロック(N×N)はN/2×N/2の変換量子化サイズと判定する。
また、TUサイズ判定部102は、SADN×N[2]の値が対応する閾値THN×N[QP]よりも小さいか否か判定する(ステップS107)。SADN×N[2]の値が対応する閾値THN×N[QP]よりも小さい場合(ステップS107−YES)、TUサイズ判定部102は現在の残差ブロック(N×N)はN×Nの変換量子化サイズと判定する。
一方、SADN×N[2]の値が対応する閾値THN×N[QP]よりも小さくない場合(ステップS107−NO)、TUサイズ判定部102は残差ブロック(N×N)を、残差ブロック(N×N)を構成している4つのN/2×N/2ブロックに分割する。そして、TUサイズ判定部102は、分割した4つのN/2×N/2ブロックそれぞれ(SADN/2×N/2[0][0]、SADN/2×N/2[0][1]、SADN/2×N/2[0][2]、SADN/2×N/2[0][3])について、SAD(N/2×N/2)の値と、対応する閾値TH’N/2×N/2[QP]とを比較する(ステップS108)。
そして、4つのN/2×N/2ブロック全てが閾値TH’N/2×N/2[QP]よりも大きい場合(ステップS108−YES)、TUサイズ判定部102は現在の残差ブロック(N×N)はN×Nの変換量子化サイズと判定する。
一方、4つのN/2×N/2ブロックのいずれかが閾値TH’ N/2×N/2[QP]よりも大きくない場合(ステップS108−NO)、TUサイズ判定部102は現在の残差ブロック(N×N)はN/2×N/2の変換量子化サイズと判定する。
また、TUサイズ判定部102は、SADN×N[3]の値が対応する閾値THN×N[QP]よりも小さいか否か判定する(ステップS109)。SADN×N[3]の値が対応する閾値THN×N[QP]よりも小さい場合(ステップS109−YES)、TUサイズ判定部102は現在の残差ブロック(N×N)はN×Nの変換量子化サイズと判定する。
一方、SADN×N[3]の値が対応する閾値THN×N[QP]よりも小さくない場合(ステップS109−NO)、TUサイズ判定部102は残差ブロック(N×N)を、残差ブロック(N×N)を構成している4つのN/2×N/2ブロックに分割する。そして、TUサイズ判定部102は、分割した4つのN/2×N/2ブロックそれぞれ(SADN/2×N/2[0][0]、SADN/2×N/2[0][1]、SADN/2×N/2[0][2]、SADN/2×N/2[0][3])について、SAD(N/2×N/2)の値と、対応する閾値TH’N/2×N/2[QP]とを比較する(ステップS110)。
そして、4つのN/2×N/2ブロック全てが閾値TH’N/2×N/2[QP]よりも大きい場合(ステップS110−YES)、TUサイズ判定部102は現在の残差ブロック(N×N)はN×Nの変換量子化サイズと判定する。
一方、4つのN/2×N/2ブロックのいずれかが閾値TH’ N/2×N/2[QP]よりも大きくない場合(ステップS110−NO)、TUサイズ判定部102は現在の残差ブロック(N×N)はN/2×N/2の変換量子化サイズと判定する。
なお、閾値THと閾値TH’とは、通常はTH’>THであるが、後に示す評価のように、簡単化のため同一の値とすることもできる。
次に、閾値の決定について説明する。閾値を導出するにあたっては、インター予測残差である残差サンプルrijと量子化前変換係数dijがガウシアンモデルに基づいていることを前提とする。変換量子化係数qijの絶対値がすべて1未満となる場合(すなわち、オールゼロブロックとなる場合)変換量子化に入力される残差の係数はすべて、分散がQP(量子化ステップ)の1ステップの範囲に収まっていることが推定される。そこで、2つのガウスモデルの分散の関係を計算することによって、SAD値と閾値との関係性が構築される。閾値の導出方法を以下に説明する。
変換量子化係数の絶対値が1未満、すなわち、|quv|<1の場合、このブロックは、オールゼロブロックである。HM(HEVC試験モデル)において、変換量子化係数qijは、以下の式1のように導出される。
Figure 0006145084
ここで、HMは、HEVC標準化に用いられる参照エンコーダソフトウェアであり、符号化に用いられる複数のモードやパラメータについて、網羅的に符号化を試し、その中で符号化効率(ビットレート−歪み特性)がもっとも優れたモードやパラメータを選び出して符号化を行うため、エンコードした結果はビットレート−歪み特性が最適化された状態にあり、事前の分析に適している。
ただし、
Figure 0006145084
Figure 0006145084
であり、BitDepthは、ピクセルのビット深度と定義される。
量子化前変換係数duvがQPの1ステップ未満となるたるための条件は下記式4に基づいて導出される。
Figure 0006145084
ただしshift=29+QP/6−logN−Bitdepthである。
量子化前変換係数dijの分布と、インター予測残差rijの分布がそれぞれガウス分布と仮定した場合、この分布の分散間で成立する関係(近似式)は、以下の式5のように導出される。
Figure 0006145084
ここで、TはHMで定義されている正規化された変換行列である。
[A]は行列Aの(u,u)番目のコンポーネントである。Rij=ρ|j−i|ρ=0.6では、σ (u,v)は以下の式6のように導出される。
Figure 0006145084
上記のとおり、σ (u,v)の中で最大の値は、DC成分で発生しているので、以下の式7ようになる。
Figure 0006145084
Figure 0006145084
残差サンプルrij(i,j=0...N−1)と量子化前変換係数dijは、ガウス分布としてモデル化しているので、dijの分布は(−nσ,nσ)の範囲内に収まると現される。nはゼロ以上の実数であり、n=3の場合、dijがこの範囲に収まる確率は約99%である。それゆえ、変換係数の分布σ(u,v)と、インター予測残差の分布σには、次の関係が成り立つ。
TH[QP]>n×σ
一方、
Figure 0006145084
であり、
N=8の場合、
Figure 0006145084
である。
8×8ブロックの場合におけるSADと変換係数閾値の関係(不等式)は、インター予測残差の分布の分散がSADを用いた式で近似できることから、以下の式11のように導出される。
Figure 0006145084
8×8以外のブロックの関係も、以下の式12〜式14のように導出される。
Figure 0006145084
Figure 0006145084
Figure 0006145084
この実施形態中では、画質を保つため、閾値TH[QP]に乗じる調整係数を求めるための係数nの値は2に、TH’[QP]に乗じる調整係数を求めるための係数nの値は1に設定されている。なお、図2中の閾値TH[QP]及びTH’[QP]は、それぞれ上記のTH[QP]、TH’[QP]に調整係数を乗じたものを改めてTH[QP]及びTH’[QP]としたものである。
以上のように構成された変換量子化装置によれば、符号化性能の劣化を低減させることが可能になる。この効果について詳細に説明する。
本実施形態における変換量子化装置では、TUサイズの判定時に分割されたブロックのそれぞれについてTUサイズの再判定の処理が行なわれる。この再判定の処理によって、現在の残差ブロックにより適したTUサイズの予測判定が可能になる。具体的な例を図5に示す。図5は、従来の技術による処理と本提案手法による処理との比較例を示す概略図である。図5(A)は従来の技術による処理を表し、図5(B)は本提案手法による処理を表す。図5に示されるように、従来の技術では、一度ブロックが分割された場合には、分割されたブロックサイズをTUサイズとするかさらに分割したブロックサイズをTUサイズと判定していた。それに対し、本提案手法では、一度ブロックが分割された場合であっても分割後のブロックサイズにおけるSADと閾値とを比較して所定の条件を満たす場合には分割後のブロックサイズよりも大きなブロックサイズをTUサイズとして判定することができる。したがって、現在の残差ブロックにより適したTUサイズの予測判定が可能になる。そのため、符号量の増加を抑止し、符号化性能の劣化を低減させることが可能になる。
また、本実施形態による変換量子化装置によって生じる他の効果について説明する。本実施形態による変換量子化装置の効果を明らかにするために、符号化効率とTU分割率の評価を行った。大小の動き、クローズアップや広い範囲の画像、パンやシーンチェンジなどを含んだクラスA(2560×1600)、及びクラスB(1920×1080)のHEVCテストシーケンスを使用した。符号化効率を比較するには一般的に、発生したビット量と、原画像との歪みとを2次元グラフ化したRD曲線(図6)を使用する。図6において、縦軸はPSNR(Peak signal-to-noise ratio)を表し、横軸はビットレートを表す。指標として下記の参考文献1に記載のBDBRを採用する。(参考文献1「G. Bjontegard, ''Calculation of average PSNR differences between RD-curves,'' ITU-T VCEG-M33, 2001.」)
これは、本発明に基づくアルゴリズムと従来手法の性能との間のビットレートの平均差であり、図7に示すように、ビデオの品質を測定するものである。BDBRにおける+(プラス)はビットレートの利得を表す。さらに、TU分割率を図8に記載している。ここで、TU分割率(PR)は、従来手法のTU分割率Poriginalと、提案方式のTU分割率Pproposalによって以下の式15に基づいて計算している。
Figure 0006145084
なお、本実施形態では、ブロック全てが閾値以上であった場合にTUサイズ判定部102がブロックのサイズを分割前の大きなブロックサイズであると判定する構成を示したが、これに限定される必要はない。例えば、事前に定められた0以上3以下の個数以上の値が閾値以上である場合にTUサイズ判定部102がブロックのサイズを分割前の大きなブロックサイズであると判定するように構成されてもよい。事前に定められた値が小さいほど、TUサイズ判定部102がブロックのサイズを分割前の大きなブロックサイズであると判定する確率が上昇する。
本実施形態に基づいた方式によれば、残差の大きなブロックについて分割率は小さくなり、従来方式と比べてより低いビットレートを達成している。本提案手法はハードウェア符号化器に対して適用することが考えられる。これに限定されることなく、ソフトウェア型の符号化器にも適用可能であることは自明である。
なお、本発明における変換量子化装置の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりTUサイズ判定処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。更に、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
1…インター予測部, 2…TUサイズ判定モジュール, 3…予測TUサイズの整数変換量子化部, 4…エントロピー符号化部, 101…インター予測部, 102…TUサイズ判定部(分割部、サイズ判定部、サイズ判定装置), 103…予測TUサイズの整数変換量子化部, 104…エントロピー符号化部

Claims (3)

  1. 動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割ステップと、
    分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定ステップと、
    を有し、
    前記サイズ判定ステップにおいて、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、前記所定のサイズのブロックにおいて前記変換量子化が行われるブロックのサイズを、前記閾値以上であると判定された時点の分割直前のブロックのサイズと判定するサイズ判定方法。
  2. 動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割部と、
    分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定部と、
    を備え、
    前記サイズ判定部は、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、前記所定のサイズのブロックにおいて前記変換量子化が行われるブロックのサイズを、前記閾値以上であると判定された時点の分割直前のブロックのサイズと判定するサイズ判定装置。
  3. 動画像符号化対象である所定のサイズのブロックを、前記所定のサイズを構成している複数の同じサイズのブロックに分割する分割ステップと、
    分割後の前記ブロックそれぞれに対する差分絶対値和と、所定の方法で計算された閾値との比較結果に基づいて前記所定のサイズのブロックにおいて変換量子化が行われるブロックのサイズを判定するサイズ判定ステップと、
    をコンピュータに実行させ、
    前記サイズ判定ステップにおいて、分割後の前記ブロックそれぞれに対する差分絶対値和の全て、もしくは事前に定めた個数以上の値が、前記閾値以上である場合に、前記所定のサイズのブロックにおいて前記変換量子化が行われるブロックのサイズを、前記閾値以上であると判定された時点の分割直前のブロックのサイズと判定するコンピュータプログラム。
JP2014251130A 2014-12-11 2014-12-11 サイズ判定方法、サイズ判定装置及びコンピュータプログラム Active JP6145084B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014251130A JP6145084B2 (ja) 2014-12-11 2014-12-11 サイズ判定方法、サイズ判定装置及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014251130A JP6145084B2 (ja) 2014-12-11 2014-12-11 サイズ判定方法、サイズ判定装置及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2016115983A JP2016115983A (ja) 2016-06-23
JP6145084B2 true JP6145084B2 (ja) 2017-06-07

Family

ID=56142448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014251130A Active JP6145084B2 (ja) 2014-12-11 2014-12-11 サイズ判定方法、サイズ判定装置及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP6145084B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6633611B2 (en) * 1997-04-24 2003-10-14 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for region-based moving image encoding and decoding
JP3872076B2 (ja) * 1997-12-25 2007-01-24 三菱電機株式会社 動き補償装置
JP5326828B2 (ja) * 2009-06-03 2013-10-30 富士通株式会社 動画像符号化装置及び動画像符号化方法
JP5970369B2 (ja) * 2012-12-27 2016-08-17 日本電信電話株式会社 符号化単位サイズ決定方法、符号化単位サイズ決定装置、及びプログラム
JP6239838B2 (ja) * 2013-03-15 2017-11-29 キヤノン株式会社 動画像符号化装置、その制御方法、及び撮像装置

Also Published As

Publication number Publication date
JP2016115983A (ja) 2016-06-23

Similar Documents

Publication Publication Date Title
US9781449B2 (en) Rate distortion optimization in image and video encoding
JP5421757B2 (ja) 画像符号化装置
KR20040065406A (ko) 동영상 부호화 및 복호화 방법과 그 장치
JP2004215257A (ja) Dct基盤の改善された動映像符号化方法及びその装置
JP2017537518A (ja) グラフテンプレートから誘導された変換を用いてビデオ信号をデコーディング/エンコーディングする方法及び装置
JP6459761B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
JP6069128B2 (ja) 変換量子化方法、変換量子化装置及び変換量子化プログラム
JP2015043524A (ja) レート歪コスト推定装置及びプログラム
US8442338B2 (en) Visually optimized quantization
CN108028938A (zh) 视频编码方法及装置
JP6145084B2 (ja) サイズ判定方法、サイズ判定装置及びコンピュータプログラム
JP6564315B2 (ja) 符号化装置、復号装置、及びプログラム
JP2015076765A (ja) 画像処理装置及びその制御方法、並びに、コンピュータプログラム
JP6075875B2 (ja) 変換量子化方法、変換量子化装置及び変換量子化プログラム
CN109906610B (zh) 使用滤波和子空间投影的视频编译的恢复
JP4784386B2 (ja) 復号化装置、逆量子化方法及びプログラム
JP4451759B2 (ja) 可逆ビデオ符号化装置,可逆ビデオ符号化方法,可逆ビデオ復号装置,可逆ビデオ復号方法,可逆ビデオ符号化プログラム,可逆ビデオ復号プログラムおよびそれらのプログラムの記録媒体
JP7075012B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP6200220B2 (ja) 画像処理装置、符号化装置、復号装置、及びプログラム
JP7406208B2 (ja) 符号化装置、符号化方法及びプログラム
JP2010010768A (ja) 画像符号化装置及び画像符号化方法
KR100708206B1 (ko) 동영상 복호화 방법과 그 장치
KR100677616B1 (ko) 동영상 부호화 및 복호화 방법과 그 장치
KR100694166B1 (ko) 동영상 부호화 방법과 그 장치
KR100622305B1 (ko) 동영상 복호화 방법과 그 장치

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161101

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161222

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170509

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170512

R150 Certificate of patent or registration of utility model

Ref document number: 6145084

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150