(57)【特許請求の範囲】
【請求項１】
量子化レベルから変換係数を逆量子化する方法であって、
プロセッサが、変換単位の前記変換係数について、デコードされた量子化レベルを受信するステップであって、前記デコードされた量子化レベルは、エントロピーデコーダによってデコードされ、あるいは前記エントロピーデコーダによって処理される、受信するステップと、
前記プロセッサが、前記デコードされた量子化レベルについて切り出し条件を決定するステップと、
前記プロセッサが、前記デコードされた量子化レベルについて切り出し範囲を決定するステップと、
前記プロセッサが、切り出し処理された量子化レベルを生成するために、前記切り出し範囲まで前記デコードされた量子化レベルを切り出すステップと、
前記プロセッサが、前記切り出し処理された量子化レベルを用いて、逆量子化された変換係数を生成するステップと、
を含み、
前記デコードされた量子化レベルを切り出すステップは、前記切り出し条件に従って実行され、前記切り出し条件は、量子化パラメータ、ビデオソースのビット深度、前記変換単位の変換サイズ、又はそれらのいずれかの組み合わせに関連する、
方法。
【請求項２】
前記切り出し条件は、量子化マトリクス、逆量子化ステップ、前記デコードされた量子化レベルの値、所定の値、又はそれらのいずれかの組み合わせにさらに関連する、
請求項１に記載の方法。
【請求項３】
前記デコードされた量子化レベルは、第１の切り出し条件について第１の範囲まで切り出され、前記デコードされた量子化レベルは、第２の切り出し条件について第２の範囲まで切り出される、
請求項１に記載の方法。
【請求項４】
前記第１の範囲は、量子化レベルのビット深度に関連する固定の範囲に対応する、
請求項３に記載の方法。
【請求項５】
前記第２の範囲は、前記デコードされた量子化レベルのダイナミックレンジに関連する、
請求項３に記載の方法。
【請求項６】
前記切り出し条件は、第１の重み付けされた値と閾値とを比較することによって決定され、前記第１の重み付けされた値は、量子化マトリクス、量子化パラメータ、逆量子化ステップ、ビデオソースのビット深度、前記変換単位の変換サイズ、又はそれらのいずれかの組み合わせの、第１の線形関数に対応する、
請求項１に記載の方法。
【請求項７】
前記閾値は、固定値に対応する、
請求項６に記載の方法。
【請求項８】
前記切り出し条件は、(20+M+DB-QP/6)と閾値とを比較することを含み、前記閾値は16であり、Mは前記変換単位の変換サイズを表し、DBはB-8に等しくてBはビデオソースのビット深度であり、QPは量子化パラメータであり、逆量子化ステップのダイナミックレンジは7ビットであり、前記逆量子化された変換係数は32ビットで表され、前記デコードされた量子化レベルは16ビットで表される、
請求項１に記載の方法。
【請求項９】
前記切り出し条件は、(12+M+B-QP/6)と閾値とを比較することを含み、前記閾値は16であり、Mは前記変換単位の変換サイズを表し、Bはビデオソースのビット深度であり、QPは量子化パラメータであり、逆量子化ステップのダイナミックレンジは7ビットであり、前記逆量子化された変換係数は32ビットで表され、前記デコードされた量子化レベルは16ビットで表される、
請求項１に記載の方法。
【請求項１０】
前記切り出し条件は、QPと閾値とを比較することを含み、前記閾値は36であり、前記変換単位の変換サイズは4×4であり、ビデオソースのビット深度は8ビットであり、QPは量子化パラメータであり、逆量子化ステップのダイナミックレンジは7ビットであり、前記逆量子化された変換係数は32ビットで表され、前記デコードされた量子化レベルは16ビットで表される、
請求項１に記載の方法。
【請求項１１】
前記切り出し範囲は、量子化マトリクス、量子化パラメータ、逆量子化ステップ、ビデオソースのビット深度、前記変換単位の変換サイズ、前記デコードされた量子化レベルの値、所定の値、又はそれらのいずれかの組み合わせに関連する、
請求項１に記載の方法。
【請求項１２】
前記デコードされた量子化レベルは、前記デコードされた量子化レベルがMより大きい場合であって、ここでMは第１の正の整数である場合、Mまで切り出される、
請求項１に記載の方法。
【請求項１３】
前記デコードされた量子化レベルは、前記デコードされた量子化レベルが-Nより小さい場合であって、ここでNは第２の正の整数である場合、-Nまで切り出される、
請求項１２に記載の方法。
【請求項１４】
M及びNが、それぞれ、32767及び32768に対応する、
請求項１３に記載の方法。
【請求項１５】
比較器が、前記デコードされた量子化レベルを切り出すことについて使用される、
請求項１に記載の方法。
【請求項１６】
ビデオソースのビット深度が10ビット又はそれを超え、量子化マトリクスのダイナミックレンジが8ビットであり、逆量子化ステップのダイナミックレンジが7ビットであり、前記変換単位の変換サイズが4×4であり、量子化パラメータのダイナミックレンジが8ビットであり、前記逆量子化された変換係数が32ビットで表され、前記デコードされた量子化レベルが16ビットで表される場合、前記デコードされた量子化レベルを切り出すステップは、無条件の固定された範囲の切り出しに対応する、
請求項１に記載の方法。
【請求項１７】
前記逆量子化された変換係数を生成するステップは、前記切り出し処理された量子化レベルに、量子化マトリクスと逆量子化ステップとを乗算するステップを含む、
請求項１に記載の方法。
【請求項１８】
前記デコードされた量子化レベルを切り出すステップは、無条件の固定された範囲の切り出しに対応し、前記の切り出された量子化レベルはnビットで表わされる、
請求項１に記載の方法。
【請求項１９】
nは、8、16又は32に対応する、
請求項１８に記載の方法。
【請求項２０】
量子化レベルから変換係数を逆量子化する装置であって、
変換単位の前記変換係数について、デコードされた量子化レベルを受信する手段であって、前記デコードされた量子化レベルは、エントロピーデコーダによってデコードされ、あるいは前記エントロピーデコーダによって処理される、受信する手段と、
前記デコードされた量子化レベルについて切り出し条件を決定する手段と、
前記デコードされた量子化レベルについて切り出し範囲を決定する手段と、
切り出し処理された量子化レベルを生成するために、前記切り出し範囲まで前記デコードされた量子化レベルを切り出す手段と、
前記切り出し処理された量子化レベルを用いて、逆量子化された変換係数を生成する手段と、
を含み、
前記デコードされた量子化レベルを切り出す手段は、前記切り出し条件に従って実行され、前記切り出し条件は、量子化パラメータ、ビデオソースのビット深度、前記変換単位の変換サイズ、又はそれらのいずれかの組み合わせに関連する、
装置。
【請求項２１】
前記切り出し条件は、量子化マトリクス、逆量子化ステップ、前記デコードされた量子化レベルの値、所定の値、又はそれらのいずれかの組み合わせにさらに関連する、
請求項２０に記載の装置。
【請求項２２】
前記切り出し範囲は、量子化マトリクス、量子化パラメータ、逆量子化ステップ、ビデオソースのビット深度、前記変換単位の変換サイズ、前記デコードされた量子化レベルの値、所定の値、又はそれらのいずれかの組み合わせに関連する、
請求項２０に記載の装置。
【請求項２３】
比較器が、前記デコードされた量子化レベルを切り出すことについて使用される、
請求項２０に記載の装置。
【請求項２４】
前記デコードされた量子化レベルは、第１の切り出し条件について第１の範囲まで切り出され、前記デコードされた量子化レベルは、第２の切り出し条件について第２の範囲まで切り出される、
請求項２０に記載の装置。
【請求項２５】
前記デコードされた量子化レベルについて切り出し条件を決定する手段をさらに含み、前記デコードされた量子化レベルを切り出す手段は、前記切り出し条件に従って実行され、前記切り出し条件は、第１の重み付けされた値と閾値とを比較することによって決定され、前記第１の重み付けされた値は、量子化マトリクス、量子化パラメータ、逆量子化ステップ、ビデオソースのビット深度、前記変換単位の変換サイズ、又はそれらのいずれかの組み合わせの、第１の線形関数に対応する、
請求項２０に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ符号化に関する。より詳細には、本発明は、高効率ビデオ符号化（High  Efficiency  Video  Coding；ＨＥＶＣ）についての変換係数の逆量子化（dequantization）に関する。
【背景技術】
【０００２】
高効率ビデオ符号化（ＨＥＶＣ）は、新しい国際的なビデオ符号化標準であり、ビデオ符号化の共同研究チーム（Joint  Collaborative  Team  on  Video  Coding；ＪＣＴ−ＶＣ）によって開発されている。ＨＥＶＣは、ハイブリッドの、ブロックベースの、動き補償された、ＤＣＴのような、変換符号化アーキテクチャに基づいている。圧縮の基本単位は、符号化単位（Coding  Unit；ＣＵ）と呼ばれる、2N×2Nの正方形ブロックであり、各ＣＵは、所定の最小サイズに達するまで、４つのより小さなＣＵに再帰的に分割可能である。各ＣＵは、１つ又は複数のブロックサイズが可変の予測単位（ＰＵ）と変換単位（ＴＵ）とを含む。各ＰＵについて、画像内（intra-picture）予測か、画像間（inter-picture）予測かのいずれかを選択する。各ＴＵは、空間的なブロック変換によって処理され、それから、ＴＵについての変換係数が量子化される。ＨＥＶＣに関して許容される最小のＴＵサイズは4×4である。
【０００３】
変換係数の量子化は、ビデオ符号化におけるビットレート及び品質の制御において、重要な役割を果たす。一式の量子化ステップを使用して、ある量子化レベルへと変換係数を量子化する。より大きな量子化ステップサイズは、より低いビットレートとより低い品質とをもたらすことになる。一方で、より小さな量子化ステップサイズは、より高いビットレートとより高い品質とをもたらすことになる。量子化処理の単純な実装は、ハードウェアベースの実装においてより複雑になり、ソフトウェアベースの実装においてより多くのコンピュータのリソースを消費する、除算演算（division  operation）を引き起こすであろう。それに応じて、除算のない（division-free）量子化処理について、当分野において種々の手法が開発されている。ＨＥＶＣテストモデル第５版（HEVC  Test  Model  Revision  5；ＨＭ‐５．０）において、量子化処理は次のように示される。一式のパラメータが定義される。
B=入力ソースビデオのビット幅又はビット深度
DB=B-8
N=変換単位（ＴＵ）の変換サイズ
M=log2(N)
Q[x]=f(x)  ここで、f(x)={26214，23302，20560，18396，16384，14564}、x=0，…，5
IQ[x]=g(x)  ここで、g(x)={40，45，51，57，64，72}、x=0，…，5
Q[x]とIQ[x]とを、それぞれ、量子化、逆量子化ステップと呼ぶ。量子化処理は、下記に従って実行する。
qlevel=(coeff*Q[QP%6]+offset)>>(21+QP/6-M-DB)  ただし、
offset=1<<(20+QP/6-M-DB)      （１）
ここで、“%”はモジュロ演算子である。逆量子化処理は、下記に従って実行する。
coeffQ=((qlevel*IQ[QP%6]<<(QP/6))+offset)>>(M-1+DB)  ただし、
offset=1<<(M-2+DB)      （２）
式（１）及び（２）の変数qlevelは、変換係数の量子化レベルを表す。式（２）の変数coeffQは、逆量子化された変換係数（dequantized  transform  coefficient）を表す。IQ[x]は、逆量子化ステップ（逆量子化ステップサイズともいう）を示し、QPは量子化パラメータを表す。式（１）及び（２）の“QP/6”は、QPを6で割ったうちの整数部分を表す。式（１）及び（２）に示すように、量子化及び逆量子化処理を、整数の乗算に続いて算術シフトを行うことによって、実施する。式（１）及び（２）の双方においてオフセット値を加えて、丸めによって整数変換を実施する。
【０００４】
ＨＥＶＣについて、量子化レベルのビット深度は16ビットである（符号のための１ビットを含む）。換言すると、量子化レベルは、2バイト又は16ビットワードで表される。IQ(x)<=72かつQP<=51であるため、IQ[x]のダイナミックレンジは7ビットであり、“<<(QP/6)”という演算が8ビットへの左算術シフトを実行する。したがって、逆量子化された変換係数coeffQのダイナミックレンジ、すなわち、“(qlevel*IQ[QP%6])<<(QP/6)”は、31（16+7+8）ビットとなる。その結果、式（２）が示す逆量子化処理は、逆量子化処理が32ビットのデータ表現を用いるため、決してオーバーフローを引き起こさないことになる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、量子化マトリクスを導入する場合、逆量子化処理を、式（３）から（５）に示すように変更する。
iShift=M-1+DB+4      （３）
(iShift>QP/6)  の場合
coeffQ[i][j]=(qlevel[i][j]*W[i][j]*IQ[QP%6]+offset)>>(iShift-QP/6)  だたし
offset=1<<(iShift-QP/6-1)  ここで  i=0…nW-1，j=0…nH-1      （４）
その他の場合
coeffQ[i][j]=(qlevel[i][j]*W[i][j]*IQ[QP%6])<<(QP/6-iShift)      （５）
ここで、“[i][j]”は、変換単位の範囲内で変換された係数の位置（インデックスとも言う）を示し、Wは量子化マトリクスを示し、nW及びnHは変換の幅及び高さである。nが変換係数についての量子化レベルのダイナミックレンジを表す場合、ダイナミックレンジnはオーバフローを避けるために、次の条件を満たさなければならない。
n+w+iq+QP/6-M+DB-3≦32      （６）
ここで、wは量子化マトリクスWのダイナミックレンジであり、iqはIQ[x]のダイナミックレンジであり、逆量子化された、又は再構成された変換係数のビット深度は32ビットである。
【０００６】
量子化マトリクスWのダイナミックレンジが8ビットである場合、式（３）から（５）に示す再構成された変換係数のダイナミックレンジは、QP=51、M=2、かつDB=0の場合、34（16+8+7+3）ビットとなる。逆量子化処理が32ビットのデータ表現を用いる場合、式（３）から（５）によって再構成された変換係数は、オーバーフローして、システム障害を引き起こす可能性がある。したがって、起こりうるオーバーフローを回避するための、変換係数再構成についての手法を開発することが望まれる。
【課題を解決するための手段】
【０００７】
量子化レベルから変換係数を逆量子化する方法及び装置を開示する。本発明による実施形態は、変換係数を再構成する前に、量子化レベルを適応的に切り出すことによって、逆量子化された変換係数のオーバーフローを回避する。本発明の一実施形態において、その方法は、変換単位に関連付けられた変換係数の量子化レベルを受信するステップと、切り出し処理された量子化レベルを生成するために、量子化レベルを切り出すステップと、切り出し処理された量子化レベルを用いて、逆量子化された変換係数を生成するステップとを含む。量子化レベルを、第１の切り出し条件下にある第１の範囲まで切り出してよく、第２の切り出し条件下にある第２の範囲まで切り出してよい。第１の範囲は、量子化レベルのビット深度に関連する固定の範囲に対応してよく、第２の範囲は、量子化レベルのダイナミックレンジに関連してよい。
【０００８】
本発明の一態様は、デコードされた量子化レベルについて切り出し条件を決定することに対処する。一実施形態において、切り出し条件は、第１の重み付けされた値と閾値とを比較することによって、決定される。ここで、第１の重み付けされた値は、量子化マトリクス、量子化パラメータ、逆量子化ステップ、ビデオソースのビット深度、及び変換単位の変換サイズの、第１の線形関数に対応する。別の実施形態において、切り出し条件の決定は、(20+M+DB-QP/6)と閾値とを比較することを含む。ここで、Mは変換サイズであり、DBはB-8に等しくてBはビデオソースのビット深度であり、QPは量子化パラメータである。また別の実施形態において、切り出し条件の決定は、QPと閾値とを比較することを含む。
【０００９】
本発明による別の実施形態において、逆量子化された変換係数のオーバーフローが、デコードされた量子化レベルを適応的に切り出すことによって回避される。ここで、その切り出しは、エントロピーデコードの後に、又はエントロピーデコード中に行ってよい。その方法は、変換単位の変換係数について、デコードされた量子化レベルを受信するステップと、デコードされた量子化レベルについて、切り出し範囲を決定するステップと、切り出し処理された量子化レベルを生成するために、デコードされた量子化レベルを切り出し範囲まで切り出すステップと、切り出し処理された量子化レベルを用いて、逆量子化された変換係数を生成するステップと、を含む。その方法は、デコードされた量子化レベルについて、切り出し条件を決定するステップをさらに含む。ここで、切り出し条件は、量子化マトリクス、量子化パラメータ、逆量子化ステップ、ビデオソースのビット深度、変換単位の変換サイズ、デコードされた量子化レベルの値、所定の値、又はそれらのいずれかの組み合わせに関連する。同様にして、切り出し範囲は、量子化マトリクス、量子化パラメータ、逆量子化ステップ、ビデオソースのビット深度、変換単位の変換サイズ、デコードされた量子化レベルの値、所定の値、又はそれらのいずれかの組み合わせに関連する。別の実施形態において、デコードされた量子化レベルは常に[-N，M]まで切り出される。ここで、M及びNは正の整数である。
【図面の簡単な説明】
【００１０】
【図１】オーバーフローを回避するための本発明の一実施形態を具体化する、逆量子化処理の例示的なフローチャートを示す。
【図２】オーバーフローを回避するための本発明の一実施形態を具体化する、逆量子化処理の例示的なフローチャートを示す。
【図３】オーバーフローを回避するための本発明の一実施形態を具体化する、逆量子化処理の例示的なフローチャートを示す。
【図４】オーバーフローを回避するための本発明の一実施形態を具体化する、逆量子化処理の例示的なフローチャートを示す。
【発明を実施するための形態】
【００１１】
前述したように、上記のような係数の逆量子化（又は再構成）処理は、量子化マトリクスを具体化する場合、オーバーフローに苦しむ可能性がある。変換係数再構成の間の潜在的なオーバーフローを回避するために、本発明による実施形態は、逆量子化処理を実行する前に、変換係数の量子化レベルを制限する。変換係数の量子化レベルのダイナミックレンジを、整数nで表す。式（３）から（５）に示す例において、ダイナミックレンジのnは、逆量子化（又は再構成）変換係数について32ビットのデータ表現を使用する場合、32ビットを超えてはならない。したがって、nは次の制約を満たさなければならない。
n+8+7+(QP/6-(M-1+DB+4))≦32      （７）
これが以下をもたらす。
n≦20+M+DB-QP/6      （８）
ここで、Mは変換サイズを表し、DBはB-8に等しくてBはビデオソースのビット深度であり、QPは量子化パラメータである。例えば、M=2は変換サイズ4×4を表し、M=3は変換サイズ8×8を表し、M=5は変換サイズ32×32を表す。この場合、変換係数の量子化レベル、qlevelを、式（９）
qlevel=max(-2n-1，min(2n-1-1，qlevel))      （９）
に従って切り出し（clip）しなければならない。
【００１２】
オーバーフローを回避するために、変換係数の量子化レベルのダイナミックレンジを、式（８）によって制約する必要がある。式（８）によると、nは、オーバーフローを回避するために、(20+M+DB-QP/6)より小さいか、(20+M+DB-QP/6)に等しい。しかしながら、この例において、量子化レベルを16ビットで表している（すなわち、量子化レベルのビット深度=16である）ため、nは16ビットを超えてはならない。したがって、(20+M+DB-QP/6)が16より大きい場合、変換係数の量子化レベルを、16ビットのデータ表現を超えないような範囲に切り出す必要がある。以下の疑似コード（疑似コードＡ）は、変換係数再構成中のデータオーバーフローを回避するために、本発明の一実施形態に従う変換係数の量子化レベル、qlevelを切り出す例を示し、
疑似コードＡ：
if(20+M+DB-QP/6>=16)
qlevel=max(-215，min(215-1，qlevel))；
else
qlevel=max(-220+M+DB-QP/6-1，min(220+M+DB-QP/6-1-1，qlevel))
である。
【００１３】
疑似コードＡに示すように、２つの異なる切り出し条件について、２つの切り出し範囲を使用する。第１の切り出し条件は、“20+M+B-8-QP/6≧16”に対応し、第２の切り出し条件は、“20+M+B-8-QP/6<16”に対応する。第１の切り出し範囲は、固定の切り出し範囲、すなわち、(-215，215-1)に対応し、第２の切り出し範囲は(-220+M+DB-QP/6-1，220+M+DB-QP/6-1)に対応する。上記の例示の疑似コードＡにおいて、テスト条件“if(20+M+DB-QP/6≧16)”を用いている一方、他のテスト条件を用いてもよい。例えば、テスト条件は、パラメータDBに代わって、ビデオソースのビット深度Bを用いてよい。テスト条件は、“if(20+M+B-8-QP/6>=16)”すなわち、“if(12+M+B-QP/6>=16)”となる。対応する疑似コード（疑似コードＢ）は
疑似コードＢ：
if(12+M+B-QP/6>=16)
qlevel=max(-215，min(215-1，qlevel))；
else
qlevel=max(-212+M+B-QP/6-1，min(212+M+B-QP/6-1-1，qlevel))
となる。
【００１４】
ソースビデオのビット深度が8ビット（DB=0）で、変換サイズが4×4の場合、式（８）を次のように簡略化してよい。
n≦22-QP/6
その結果、この場合、テスト条件“if(12+M+B-QP/6≧16)”は“if(22-QP/6≧16)”になる。テスト条件を、“if(QP<=36)”へと、さらに簡略化してもよい。結果として、本発明の別の実施形態による変換係数の量子化レベルについての切り出し処理は、固定のダイナミックレンジを有するビデオソースについてQPに単に依存する。以下に示すのは例示的な疑似コード（疑似コードＣ）であり、
疑似コードＣ：
if(QP<=36)
qlevel=max(-215，min(215-1，qlevel))；
else
qlevel=max(-221-QP/6，min(221-QP/6-1，qlevel))
である。
【００１５】
ソースビデオのビット深度が１０ビット又はより大きい、すなわち、DB≧2の場合、（７）の条件は常に満たされる。この場合、１６ビットの切り出し、すなわちqlevel=max(-215，min(215-1，qlevel))又はqlevel=max(-32768，min(32767，qlevel))を、常に無条件に使用する。ビット深度が１０ビットに等しいかそれ以上の場合に切り出しを無条件で実行する一方、ソースビデオのビット深度にかかわらず、変換係数の量子化レベルを所望のビット深度まで無条件に切り出してもよい。所望のビット深度は、8ビット、16ビット又は32ビットであってよく、対応する切り出し範囲は、[-128，127]、[-32768，32767]及び[-2147483648，2147483647]であってよい。
【００１６】
本発明の一実施形態を具体化する３つの例示的な疑似コードを上に示した。これらの疑似コードは、変換係数再構成の間のデータオーバーフローを回避するための、例示的な処理を示すことを目的としている。当業者は、他のテスト条件を用いて本発明を実施してよい。例えば、“if(QP<=36)”をテストすることに代わって、テスト条件“if(QP/6<=6)”を使用してよい。別の例において、切り出し演算を、切り出し関数clip(x，y，z)などの他の関数を用いて実施してよい。clip(x，y，z)において、変数zはxとyとの間で切り出される（x<y）。切り出し演算を、比較器を用いて実施してもよい。例えば、clip(x，y，z)を、zとxとを比較することによって、及びzとyとを比較することによって実施してよい。zがxより小さい場合、zをxまで切り出して、演算を完了する。zがxより小さくない場合、続いて、zをyと比較する。zがyより大きい場合、zをyまで切り出して、演算を完了する。そうでない場合、zは切り出しを必要としない。疑似コードＣについての切り出し演算を
qlevel=clip(-215，215-1，qlevel)  及び
qlevel=clip(-221-QP/6，221-QP/6-1，qlevel)
で表してよい。
【００１７】
上記の例において、特定のパラメータを使用して、データオーバーフローを回避するための、本発明の実施形態を具体化する逆量子化処理を示している。使用される特定のパラメータは、本発明に対する限定とみなされるべきではない。当業者は、与えられるパラメータに基づいて、切り出し条件についてのテストを変更してよい。例えば、逆量子化ステップが7ビットのダイナミックレンジに代わって6ビットのダイナミックレンジを有する場合、式（８）の制約はn≦19+M+DB-QP/6となる。疑似コードＡにおける、対応する切り出し条件テストは“if(19+M+DB-QP/6>=16)”となる。
【００１８】
逆量子化係数の潜在的なオーバーフローを回避するために、本発明による実施形態は、変換係数の量子化レベルを制約する。量子化レベルは、エントロピーデコーダによってデコードされた後に、あるいはそのデコーダ側での量子化レベルのエントロピーデコード中に、切り出されてよい。量子化レベルを、切り出し条件に従って、切り出し範囲まで切り出す。切り出し条件及び切り出し範囲は、逆量子化マトリクス、逆量子化パラメータ、ビデオソースのビット深度、変換単位の変換サイズ、デコードされる量子化レベルの値、所定の値、又はそれらのいずれかの組み合わせに依存する。ソースビデオのビット深度にかかわらず、変換係数の量子化レベルを、所望のビット深度まで無条件に切り出してよい。所望のビット深度は、8ビット、16ビット又は32ビットであってよく、対応する切り出し範囲は、[-128，127]、[-32768，32767]及び[-2147483648，2147483647]であってよい。
【００１９】
図１は、本発明の一実施形態を具体化する例示的なシステムについてのフローチャートを示す。ステップ１１０において、変換単位に関連付けられた変換係数の量子化レベルを受信する。量子化レベルは、量子化マトリクスと量子化パラメータとに従って変換係数を量子化することによって、生成される。ステップ１２０において、量子化マトリクス、量子化パラメータ、逆量子化ステップ、ビデオソースのビット深度、変換単位の変換サイズ、又はそれらのいずれかの組み合わせに基づいて、切り出し条件を決定する。逆量子化ステップは、量子化パラメータに依存する。続いて、ステップ１３０に示すように、量子化レベルを切り出し条件に従って切り出して、切り出し処理された量子化レベルを生成する。それから、ステップ１４０に示すように、切り出し処理された量子化レベルを用いて、逆量子化された変換係数を生成する。
【００２０】
図２は、本発明の一実施形態を具体化する別の例示的なシステムについてのフローチャートを示す。ステップ１１０、１２０及び１４０を含むいくつかの処理ステップは、前述と同様である。しかしながら、ステップ１２０において切り出し条件を決定した後、切り出し条件が第１の切り出し条件であるのか第２の切り出し条件であるのかに依存して、２つの異なる切り出し範囲を使用する（ステップ２１０に示す）。切り出し条件が第１の切り出し条件である場合、ステップ２２１に示すように、第１の切り出し範囲を使用して量子化レベルを切り出す。切り出し条件が第２の切り出し条件である場合、ステップ２２２に示すように、第２の切り出し範囲を使用して量子化レベルを切り出す。
【００２１】
図３は、本発明の一実施形態を具体化するまた別の例示的なシステムについてのフローチャートを示す。ステップ３１０において、変換単位の変換係数について、デコードされた量子化レベルを受信する。ここで、デコードされた量子化レベルは、エントロピーデコーダによってデコードされるか、あるいは、エントロピーデコーダによって処理される。ステップ３２０において、デコードされた量子化レベルについて切り出し範囲を決定する。続いて、ステップ３３０において、デコードされた量子化レベルを切り出し条件に従って切り出し範囲まで切り出して、切り出し処理された量子化レベルを生成する。それから、ステップ３４０において、切り出し処理された量子化レベルを用いて、逆量子化された変換係数を生成する。図３のシステムは、図４に示す追加のステップ４１０を含んでよい。ステップ４１０において、デコードされた量子化レベルについて、切り出し条件を決定する。ここで、前述のデコードされた量子化レベルの切り出しを、切り出し条件に従って実行する。
【００２２】
図１〜図４のフローチャートは、逆量子化された変換係数のデータオーバーフローを回避するために、変換係数を再構成する前に、量子化レベルを切り出す例を示すことを目的とする。当業者は、ステップを再配置すること、１若しくは複数のステップを分割すること、又は１若しくは複数のステップを組み合わせることによって、本発明を実施してよい。
【００２３】
上記説明を提示することにより、当業者は、特定の用途とその必要条件とに照らして定めた通りに本発明を実施することが可能となる。説明した実施形態に対する種々の変更が当業者にとって明らかになるであろうし、本書で定義する全体的な原則を他の実施形態に適用してよい。したがって、本発明は、図示及び説明した特定の実施形態に限定されることを意図するものではなく、本書で開示する原則及び新規の特徴に一致する最も広い範囲を認められるべきものである。上記の詳細説明において、本発明への十分な理解を与えるために、種々の特定の詳細を示している。それにもかかわらず、本発明をどのように実施するかは、当業者によって理解されるであろう。
【００２４】
上述した本発明の実施形態を、種々のハードウェア、ソフトウェアコード、又は双方の組み合わせで実施してよい。例えば、本発明の一実施形態は、本書で説明した処理を実行するための、ビデオ圧縮チップに統合された回路、又はビデオ圧縮ソフトウェアに統合されたプログラムコードであってよい。さらに、本発明の一実施形態は、本書で説明した処理を実行するための、デジタルシグナルプロセッサ（ＤＳＰ）上で実行されるプログラムコードであってよい。さらに、本発明は、コンピュータプロセッサ、デジタルシグナルプロセッサ、マイクロプロセッサ、又はフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）によって実行されることになる、複数の関数を含んでよい。本発明によって具体化される特定の方法を定義する機械読み取り可能ソフトウェアコード又はファームウェアコードを実行することによって、本発明に従う特定のタスクを実行するように、これらのプロセッサを構成してよい。そのソフトウェアコード又はファームウェアコードを、種々のプログラミング言語及び種々のフォーマット又はスタイルで開発してよい。さらに、そのソフトウェアコードを、種々の対象プラットフォーム向けにコンパイルしてよい。しかしながら、本発明に従うタスクを実行するための、種々のコードフォーマット、スタイル、及び言語のソフトウェアコードと他の手段の構成コードとは、本発明の主旨及び範囲を逸脱するものではない。
【００２５】
本発明を、その趣旨又は必須の特性を逸脱しない範囲で、他の特定の形態において実施してよい。記載の例は、すべての点において、単なる例示とみなされるべきであって、限定とみなされるべきではない。したがって、本発明の範囲は、上述の説明によってではなく、別記の請求項によって明示される。請求項の均等物の意味及び範囲に含まれるすべての変更は、請求項の範囲に包含されることになる。
【００２６】
本出願は、ＰＣＴ特許出願シリアル番号PCT/CN2011/084083（申請日2011年12月15日、表題“Method  of  Clipping  Transformed  Coefficients  before  De-Quantization”）について優先権を主張する。本書においてそのＰＣＴ特許出願の全体を参照により援用する。
【図１】
0005753630.tif 000002
【図２】
0005753630.tif 000003
【図３】
0005753630.tif 000004
【図４】
0005753630.tif 000005