IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ フラウンホファー ゲセルシャフト ツール フェールデルンク ダー アンゲヴァンテン フォルシュンク エー.ファオ.の特許一覧

特許7522137改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム
<>
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図1a
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図1b
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図2
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図3
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図4
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図5
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図6
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図7
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図8
  • 特許-改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-16
(45)【発行日】2024-07-24
(54)【発明の名称】改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラム
(51)【国際特許分類】
   H04N 19/126 20140101AFI20240717BHJP
   H04N 19/12 20140101ALI20240717BHJP
   H04N 19/157 20140101ALI20240717BHJP
   H04N 19/176 20140101ALI20240717BHJP
   H04N 19/91 20140101ALI20240717BHJP
【FI】
H04N19/126
H04N19/12
H04N19/157
H04N19/176
H04N19/91
【請求項の数】 13
(21)【出願番号】P 2021573914
(86)(22)【出願日】2020-06-12
(65)【公表番号】
(43)【公表日】2022-08-15
(86)【国際出願番号】 EP2020066355
(87)【国際公開番号】W WO2020249762
(87)【国際公開日】2020-12-17
【審査請求日】2022-02-14
(31)【優先権主張番号】19180322.0
(32)【優先日】2019-06-14
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】500242786
【氏名又は名称】フラウンホファー ゲセルシャフト ツール フェールデルンク ダー アンゲヴァンテン フォルシュンク エー.ファオ.
(74)【代理人】
【識別番号】110002952
【氏名又は名称】弁理士法人鷲田国際特許事務所
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】ベンヤミン・ブロス
(72)【発明者】
【氏名】ファン・ホアン・トゥン・グエン
(72)【発明者】
【氏名】ハイコ・シュヴァルツ
(72)【発明者】
【氏名】デトレフ・マルペ
(72)【発明者】
【氏名】トーマス・ヴィーガント
【審査官】間宮 嘉誉
(56)【参考文献】
【文献】特表2017-522839(JP,A)
【文献】特開2014-11482(JP,A)
【文献】国際公開第2014/050676(WO,A1)
【文献】国際公開第2015/194187(WO,A1)
【文献】特開2014-195277(JP,A)
【文献】特表2015-526013(JP,A)
【文献】特開2019-75678(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/12
H04N 19/00-19/98
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
変換コーディングを使用するピクチャ信号のブロックベース符号化のためのエンコーダ(10)であって、
所定のブロック(18)について、選択された変換(130)を選択し、
前記選択された変換(130)が識別変換(128)であるか、それとも非識別変換(128)であるかに依存する量子化パラメータ(QP)(140)を使用して、前記選択された変換(130)に従って前記所定のブロック(18)に関連付けられる量子化すべきブロック(18’)を量子化し(32)、量子化ブロック(18’’)を取得し、
前記量子化ブロック(18’’)をデータストリーム(14)にエントロピー符号化するように構成されたエンコーダ(10)であって、
前記選択された変換(130)が前記識別変換(128)である場合、前記所定のブロックについての初期QPを決定し、前記初期QPが所定の値よりも小さいかどうかをチェックし、
前記初期QPが前記所定の値よりも小さい場合、デフォルトQP(140)に前記QP(140)を設定することを特徴とするエンコーダ。
【請求項2】
変換復号化を使用する符号化ピクチャ信号のブロックベース復号化のためのデコーダであって、
所定のブロックについて、選択された変換(130)を選択し、
データストリーム(14)から、前記選択された変換(130)に従って前記所定のブロックに関連付けられる逆量子化すべきブロックをエントロピー復号化し、
前記選択された変換(130)が識別変換(128)であるか、それとも非識別変換(128)であるかに依存する量子化パラメータ(QP)(140)を使用して、逆量子化すべき前記ブロック(118’)を逆量子化し、逆量子化ブロック(118’’)を取得するように構成されたデコーダであって、
前記選択された変換(130)が前記識別変換(128)である場合、前記所定のブロックについての初期QPを決定し、前記初期QPが所定の値よりも小さいかどうかをチェックし、
前記初期QPが前記所定の値よりも小さい場合、デフォルトQP(140)に前記QP(140)を設定することを特徴とするデコーダ。
【請求項3】
前記初期QPが前記所定の値よりも小さくない場合、前記QP(140)として前記初期QPを使用するように構成された請求項2に記載のデコーダ。
【請求項4】
QPリストから索引を決定することによって前記初期QPを決定するように構成された請求項2に記載のデコーダ。
【請求項5】
関数が前記QPを量子化ステップサイズに関連付ける、請求項2に記載のデコーダ。
【請求項6】
逆量子化すべき前記ブロックの前記逆量子化が、スケーリングとスケーリング因子1に対応するデフォルトQPを含む、請求項2に記載のデコーダ。
【請求項7】
前記データストリーム(14)から前記選択された変換(130)を読み取るように構成された請求項2に記載のデコーダ。
【請求項8】
前記データストリーム(14)から前記初期QPを読み取るように構成された請求項2に記載のデコーダ。
【請求項9】
前記所定のブロックが、ブロックベース復号化すべきピクチャ信号の予測残差のブロックを表す、請求項2に記載のデコーダ。
【請求項10】
変換コーディングを使用するピクチャ信号のブロックベース符号化のための方法であって、
所定のブロックについて、選択された変換を選択するステップと、
前記選択された変換が識別変換(128)であるか、それとも非識別変換(128)であるかに依存する量子化パラメータ(QP)を使用して、前記選択された変換に従って前記所定のブロックに関連付けられる量子化すべきブロックを量子化し、量子化ブロックを取得するステップと、
前記量子化ブロックをデータストリームにエントロピー符号化するステップと
を含み、
前記選択された変換(130)が前記識別変換(128)である場合、前記所定のブロックについての初期QPを決定し、前記初期QPが所定の値よりも小さいかどうかをチェックし、
前記初期QPが前記所定の値よりも小さい場合、デフォルトQP(140)に前記QP(140)を設定することを特徴とする方法。
【請求項11】
変換復号化を使用する符号化ピクチャ信号のブロックベース復号化のための方法であって、
所定のブロックについて、選択された変換を選択するステップと、
データストリームから、前記選択された変換に従って前記所定のブロックに関連付けられる逆量子化すべきブロックをエントロピー復号化するステップと、
前記選択された変換が識別変換(128)であるか、それとも非識別変換(128)であるかに依存する量子化パラメータ(QP)を使用して、逆量子化すべき前記ブロックを逆量子化し、逆量子化ブロックを取得するステップと
を含み、
前記選択された変換(130)が前記識別変換(128)である場合、前記所定のブロックについての初期QPを決定し、前記初期QPが所定の値よりも小さいかどうかをチェックし、
前記初期QPが前記所定の値よりも小さい場合、デフォルトQP(140)に前記QP(140)を設定することを特徴とする方法。
【請求項12】
コンピュータ上で実行されるとき、請求項10に記載の方法を実施するためのプログラムコードを有するコンピュータプログラム。
【請求項13】
コンピュータ上で実行されるとき、請求項11に記載の方法を実施するためのプログラムコードを有するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明による実施形態は、改良型の変換ベーススケーリングを用いるエンコーダ、デコーダ、方法、およびコンピュータプログラムに関する。
【背景技術】
【0002】
前置き
以下では、様々な本発明の実施形態および態様が説明される。さらに、別の実施形態が添付の特許請求の範囲によって定義される。
【0003】
特許請求の範囲によって定義される任意の実施形態が、以下の異なる本発明の実施形態および態様において説明される詳細(特徴および機能)のいずれかによって補足され得ることに留意されたい。
【0004】
さらに、本明細書において説明される個々の態様が、個々に、または組み合わせて使用され得ることに留意されたい。したがって、詳細が、前記個々の態様のそれぞれに、前記態様のうちの別のものに詳細を追加することなく追加され得る。
【0005】
本開示がエンコーダ(入力信号の符号化表現を提供するための装置)およびデコーダ(符号化表現に基づいて信号の復号化表現を提供するための装置)において使用可能な特徴を明示的または暗黙的に説明することにも留意されたい。したがって、本明細書において説明される特徴のいずれかが、エンコーダの文脈およびデコーダの文脈において使用され得る。
【0006】
さらに、方法に関して本明細書において開示される特徴および機能が、(そのような機能を実施するように構成された)装置においても使用され得る。さらに、装置に関連して本明細書において開示される任意の特徴および機能が、対応する方法においても使用され得る。言い換えれば、本明細書において開示される方法は、装置に関連して説明される特徴および機能のいずれかによって補足され得る。
【0007】
さらに、「実装代替」というセクションにおいて説明されるように、本明細書において説明される特徴および機能のいずれかが、ハードウェアもしくはソフトウェアとして、またはハードウェアとソフトウェアの組合せを使用して実装され得る。
【0008】
現況技術の不可逆ビデオ圧縮では、エンコーダが、特定の量子化ステップサイズΔを使用して予測残差(prediction residual)または変換後予測残差を量子化する。ステップサイズが小さいほど、量子化が細かくなり、元の信号と再構成された信号との間の誤りが小さくなる。最近のビデオコーディング規格(H.264やH.265など)は、いわゆる量子化パラメータ(QP)の指数関数、たとえば
【0009】
【数1】
【0010】
を使用して量子化ステップサイズΔを導出する。
【0011】
量子化ステップサイズと量子化パラメータとの間の指数関係により、得られるビットレートのより細かい調節が可能となる。デコーダは、量子化信号の正しいスケーリングを実施するために量子化ステップサイズを知っている必要がある。量子化は不可逆であるが、この段階は「逆量子化」と呼ばれることがある。そのために、デコーダはビットストリームからスケーリング因子またはQPを解析する。QPシグナリングは通常、階層的に実施され、すなわち、基本QPが、ビットストリーム中のより上位のレベルにおいて、たとえばピクチャレベルにおいてシグナリングされる。ピクチャが複数のスライス、タイル、またはブリックから構成され得るサブピクチャレベルにおいて、基本QPに対するデルタのみがシグナリングされる。さらに細かいグラニュラリティにおいてビットレートを調節するために、デルタQPがブロックまたはブロックのエリアごとにさらにシグナリングされ得、たとえば、HEVCではコーディングブロックのNxNエリア内の1つの変換単位においてシグナリングされ得る。エンコーダは通常、主観的最適化またはレート制御アルゴリズムのためにデルタQP技法を使用する。一般性を失うことなく、以下では、提示される発明での基本単位がピクチャであり、したがって基本QPが、エンコーダによって、単一のスライスからなる各ピクチャについてシグナリングされると仮定する。スライスQPとも呼ばれるこの基本QPに加えて、デルタQPが、各変換ブロック(または量子化グループとも呼ばれる、任意の単位の変換ブロック)についてシグナリングされ得る。
【0012】
High Efficiency Video Coding(HEVC)や、きたるべきVersatile Video Coding (VVC)規格などの現況技術のビデオコーディング方式は、広く使用されているタイプII離散コサイン変換(DCT-II)の整数近似に勝る追加の変換を可能にすることによって、様々な残差信号タイプのエネルギー圧縮を最適化する。HEVC規格はさらに、特定のイントラ方向性モード(intra directional mode)を使用して4×4変換ブロックについてのタイプVII離散サイン変換(DST-VII)の整数近似を指定する。この固定マッピングにより、DCT-IIが使用されるか、それともDST-VIIが使用されるかをシグナリングする必要がない。それに加えて、4×4変換ブロックについて識別変換が選択され得る。ここで、エンコーダは、DCT-II/DST-VIIが適用されるか、それとも識別変換が適用されるかをシグナリングする必要がある。識別変換は、1との乗算と同等の行列であるので、変換スキップとも呼ばれる。さらに、現在のVVC開発により、残差についてのDCT/DSTファミリのより多くの変換、ならびに追加の分離不能変換をエンコーダが選択することが可能となり、追加の分離不能変換は、エンコーダでのDCT/DST変換の後、かつデコーダでの逆DCT/DSTの前に適用される。DCT/DST変換の拡張セットと、追加の分離不能変換はどちらも、変換ブロックごとの追加のシグナリングを必要とする。
【0013】
図1bは、エンコーダ10での残差信号24の順方向変換および後続の量子化と、デコーダ36についての量子化変換係数のスケーリングおよびその後に続く逆変換とを用いるハイブリッドビデオコーディング手法を示す。変換および量子化関連のブロック28/32および52/54が強調表示されている。
【発明の概要】
【発明が解決しようとする課題】
【0014】
したがって、圧縮効率が改善される、ピクチャおよび/またはビデオのコーディングにおいて使用可能な量子化および/またはスケーリングについての概念を提供することが望ましい。
【課題を解決するための手段】
【0015】
このことは、本願の独立請求項の主題によって達成される。
【0016】
本発明による別の実施形態は、本願の従属請求項の主題によって定義される。
【0017】
本発明の第1の態様によれば、変換係数を量子化し、量子化変換係数をスケーリングするときに直面する1つの問題が、変換モードおよび/またはブロックサイズが異なる結果、スケーリング因子および量子化パラメータが異なるものとなり得ることから生じることに本願の発明者らは気付いた。ある変換モードでの量子化精度によって、別の変換モードでのひずみが増大し得る。本願の第1の態様によれば、量子化すべきブロックに対して使用される変換モードに応じて量子化精度を選択することにより、この難点が克服される。したがって、異なる変換モードおよび/またはブロックサイズに対して、異なる量子化精度が選ばれ得る。
【0018】
したがって、本願の第1の態様によれば、変換コーディングを使用するピクチャ信号のブロックベース符号化のためのエンコーダが、所定のブロック、たとえばビデオ信号またはピクチャ信号内のブロックのエリア内のブロックについて、選択された変換モード、たとえば識別変換または非識別変換を選択するように構成される。識別変換は変換スキップと理解され得る。さらに、エンコーダは、選択された変換モードに依存する量子化精度を使用して、選択された変換モードに従って所定のブロックに関連付けられる量子化すべきブロックを量子化し、量子化ブロックを取得するように構成される。量子化すべきブロックは、たとえば、選択された変換モードが施される所定のブロック、および/または、選択された変換モードが非識別変換であるケースでは、選択された変換モードの基礎となる変換を所定のブロックに対して適用することによって、選択された変換モードが識別変換であるケースでは、所定のブロックを等化することによって取得されるブロックである。量子化精度は、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズによって定義される。量子化ブロックを受け取るために、量子化すべきブロックの値が、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズで除算される。さらに、エンコーダは、量子化ブロックをデータストリームにエントロピー符号化するように構成される。
【0019】
同様に、本願の第1の態様によれば、変換復号化を使用する符号化ピクチャ信号のブロックベース復号化のためのデコーダが、所定のブロック、たとえば復号化ピクチャ信号またはビデオ信号内のブロックのエリア内のブロックについて、選択された変換モード、たとえば識別変換または非識別変換を選択するように構成される。識別変換は変換スキップと理解され得る。非識別変換は、エンコーダによって適用される変換の逆/反転変換であり得る。さらに、デコーダは、データストリームから、選択された変換モードに従って所定のブロックに関連付けられる逆量子化すべきブロックをエントロピー復号化するように構成される。逆量子化すべきブロックは、たとえば、選択された変換モードが施される前の所定のブロックである。さらに、デコーダは、選択された変換モードに依存する量子化精度を使用して、逆量子化すべきブロックを逆量子化し、逆量子化ブロックを取得するように構成される。量子化精度は、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズによって定義される。逆量子化ブロックを受け取るために、ブロックの値に、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズが乗算される。量子化精度は、たとえば、逆量子化すべきブロックの逆量子化の精度を定義する。量子化精度はスケーリング精度と理解され得る。
【0020】
一実施形態によれば、量子化精度は、選択された変換モードが識別変換であるか、それとも非識別変換であるかに部分的に依存する。予測モードおよび/またはブロックサイズおよび/またはブロック形状に応じて別の適合が行われ得ることに留意されたい。変換モードへの依存は、非識別変換が残差信号の精度を向上させ得、それによってダイナミックレンジも向上し得るという考えに基づく。しかしながら、識別変換についてはそうではない。非識別変換についての低いひずみに関連付けられる量子化精度は、変換モードが識別変換であるケースではより高いひずみとなり得る。したがって、識別変換と非識別変換との間の区別が有利である。
【0021】
選択された変換モードが識別変換である場合、エンコーダおよび/またはデコーダが、所定のブロックについての初期量子化精度を決定し、初期量子化精度が所定のしきい値よりも細かいかどうかをチェックするように構成され得る。選択された変換モードが非識別変換であるケースでは、所定のしきい値よりも細かい量子化精度によってひずみが低減され得るが、選択された変換モードが識別変換であるケースではそうではない。初期量子化精度が所定のしきい値よりも細かい場合、エンコーダおよび/またはデコーダは、選択された変換モードが識別変換であるケースでは、デフォルト量子化精度、たとえば所定のしきい値に対応するデフォルト量子化精度に量子化精度を設定するように構成され得る。したがって、デフォルト量子化精度について存在しない追加のひずみが回避され得る。
【0022】
さらに、エンコーダおよび/またはデコーダは、初期量子化精度が所定のしきい値よりも細かくない場合、量子化精度として初期量子化精度を使用するように構成され得る。このケースでは、初期量子化精度によって追加のひずみが導入されるべきではなく、それによって、変更または調節なしで初期量子化精度を使用することに問題はない。
【0023】
一実施形態によれば、初期量子化精度は、エンコーダのケースでは量子化パラメータリストから、デコーダのケースでは逆量子化パラメータリストから索引を決定することによって決定される。索引は、たとえば、量子化パラメータリスト、たとえばデコーダについての逆量子化パラメータリスト内の量子化パラメータ、たとえばデコーダについての逆量子化パラメータまたはスケーリングパラメータを指し示し、量子化パラメータリスト内のすべての量子化パラメータについて等しい関数を介して、量子化ステップサイズに関連付けられる。エンコーダは、たとえば、量子化すべきブロックの値を量子化ステップサイズで除算することによって量子化するように構成され得、デコーダは、逆量子化すべきブロックの値に量子化ステップサイズを乗算することによって逆量子化するように構成され得る。索引は量子化パラメータ(QP)に等しいものであり得、量子化パラメータリストおよび/または逆量子化パラメータリストは、levelScale[]={40, 45, 51, 64, 72}によって定義され得る。量子化ステップサイズ(Δ(QP))は、索引(QP)の指数関数を使用して導出され得、たとえば、
【0024】
【数2】
【0025】
、ただしlevelScale[]={40, 45, 51, 64, 72}。
【0026】
一実施形態によれば、エンコーダおよび/またはデコーダは、索引、すなわち量子化パラメータリストからの索引が所定の索引値よりも小さいかどうかをチェックすることによって、初期量子化精度が所定のしきい値よりも細かいかどうかをチェックするように構成される。所定の索引値は、たとえば、索引4、すなわち4に等しい索引を定義する。選択された変換モードが識別変換である場合、エンコーダおよび/またはデコーダは、索引、たとえば量子化パラメータQPを最小値4まで削減するように構成され得る。エンコーダおよび/またはデコーダは、4未満の量子化パラメータ(QP)を禁止するように構成され得る。QPが4未満である場合、エンコーダおよび/またはデコーダは、QPを4に設定するように構成され得、QPが4以上である場合、QPは維持され、たとえばTrafo Skip?Max(4, QP):QPである。したがって、変換スキップモードにおいてひずみを導入し得る、1未満のスケーリング因子となる索引、たとえばQP 0、1、2、および3が回避され、または変換スキップモードに対して許可されない。上記の例は8ビットビデオ信号についてのものであり、入力ビデオ信号ビット深さに応じて調節を必要とすることに留意されたい。ビット深さが1増加すると、しきい値が6減少する。シグナリングは、入力ビット深さに対する内部ビット深さの差の指定、入力ビット深さの直接的シグナリング、および/またはしきい値のシグナリングを介するような、直接的または間接的なものであり得る。間接的構成についての一例は以下の通りである。
sps_internal_bit_depth_minus_input_bit_depthが、以下のように変換スキップモードについての最小許容量子化パラメータを指定する。
QpPrimeTsMin = 4 + 6 * sps_internal_bit_depth_minus_input_bit_depth
sps_internal_bit_depth_minus_input_bit_depthの値は、0と8を含む0から8の範囲内にあるものとする。
そうでない場合(transform_skip_flag[xTbY][yTbY][cldx]が1に等しい)、以下が当てはまる。
qP = Clip3(QpPrimeTsMin, 63 + QpBdOfset, qP + QpActOffset)
【0027】
一実施形態によれば、エンコーダによって実施される、量子化すべきブロックの量子化は、スケーリングと、その後に続く整数量子化、たとえば最も近い整数値への量子化を含む。同様に、デコーダによって実施される、逆量子化すべきブロックの逆量子化は、スケーリング、たとえば再スケーリングと、その後に続く整数逆量子化、たとえば最も近い整数値への逆量子化を含む。さらに、エンコーダおよび/またはデコーダは、所定のしきい値および/またはデフォルト量子化精度がスケーリング因子1、たとえばデコーダのケースでの再スケーリング因子に関係するように構成される。エンコーダは、スケーリング因子を使用して、量子化すべきブロックを量子化するように構成され得、デコーダは、スケーリング因子を使用して、逆量子化すべきブロックを逆量子化するように構成され得る。エンコーダは、量子化すべきブロックの値をスケーリング因子で除算することによって、量子化すべきブロックを量子化するように構成され得、デコーダは、逆量子化すべきブロックの値にスケーリング因子を乗算することによって、逆量子化すべきブロックを量子化解除するように構成され得る。エンコーダおよび/またはデコーダは、たとえば、スケーリング因子、たとえば量子化ステップサイズΔ(QP)が所定のスケーリング因子よりも小さいかどうかをチェックすることによって、初期量子化精度が所定のしきい値よりも細かいかどうかをチェックするように構成される。所定のスケーリング因子は、たとえば、スケーリング因子1を定義する。選択された変換モードが識別変換である場合、エンコーダおよび/またはデコーダは、スケーリング因子を最小値1まで削減するように構成され得る。エンコーダおよび/またはデコーダは、1未満のスケーリング因子を禁止するように構成され得る。Δ(QP)が1未満である場合、エンコーダは、Δ(QP)を1に設定するように構成され、Δ(QP)が1以上である場合、Δ(QP)が維持され、たとえば、選択された変換モードが識別変換である場合、少なくとも1のスケーリング因子が得られる。
【0028】
一実施形態によれば、エンコーダおよび/またはデコーダは、所定のブロックを含むピクチャ全体、所定のブロックを含むいくつかのピクチャ、または所定のブロックを含むピクチャのスライスなどの、いくつかのブロック、たとえば所定のブロックを含む隣接するブロックについての初期量子化精度を決定するように構成される。いくつかのピクチャのケースでは、ピクチャのうちの少なくとも1つ、またはただ1つが所定のブロックを含まなければならない。エンコーダのケースでは、ピクチャは、符号化すべきピクチャ信号またはビデオ信号のピクチャであり、いくつかのブロックは、たとえば、ピクチャ信号またはビデオ信号のピクチャ内のブロックである。デコーダのケースでは、ブロックは、たとえば、復号化ピクチャ信号または復号化ビデオ信号の残差ピクチャ内の予測残差ブロックである。
【0029】
エンコーダは、たとえば、ピクチャ全体、いくつかのピクチャ、またはピクチャのスライスなどのいくつかのブロックについて、データストリームにおいて初期量子化精度をシグナリングするように構成され得る。デコーダは、たとえば、ピクチャ全体、いくつかのピクチャ、またはピクチャのスライスなどのいくつかのブロックについて、データストリームから初期量子化精度を読み取るように構成され得る。
【0030】
一実施形態によれば、エンコーダは、データストリームにおいて量子化精度および/または選択された変換モードをシグナリングするように構成される。デコーダは、たとえば、データストリームから量子化精度および/または選択された変換モードを読み取るように構成される。
【0031】
一実施形態によれば、エンコーダのケースでは、所定のブロックは、ブロックベース符号化すべきピクチャ信号の予測残差のブロックを表す。デコーダのケースでは、所定のブロックは、たとえば、ブロックベース復号化すべきピクチャ信号の予測残差のブロックを表す。デコーダのケースでは、所定のブロックは、たとえば復号化残差ブロックを表す。
【0032】
一実施形態によれば、エンコーダおよび/またはデコーダは、所定のブロックについての初期量子化精度を決定し、選択された変換モードに応じて初期量子化精度を修正するように構成される。初期量子化精度は、たとえば、索引、すなわちQP、および/またはスケーリング因子、すなわちΔ(QP)を含む。したがって、圧縮効率を向上させることが可能である。これは、初期量子化精度が、ブロックのグループについて、またはいくつかのピクチャについてデータストリームにおいてシグナリングされ得、符号化または復号化すべき各ブロックについて、それぞれのブロックについての変換モードに応じて、この初期量子化精度を個々に適合させることが可能であるという考えに基づく。
【0033】
初期量子化精度の修正は、選択された変換モードに応じて、オフセット値を使用して初期量子化精度をオフセットすることによって実施され得る。オフセットは、たとえば、知覚される視覚的品質を最大化すること、または所与のビットレートについての2乗誤差(square error)のような目標ひずみ(objective distortion)を最小限に抑えること、または所与の品質/ひずみについてのビットレートを低減することによって、圧縮効率が向上するように選ばれ得る。一実施形態によれば、エンコーダおよび/またはデコーダは、各変換モードについてオフセット値を決定するように構成される。これは、各ピクチャ信号またはビデオ信号について個々に実施され得る。代替として、いくつかのピクチャ、1つのピクチャ、ピクチャの1つまたは複数のスライス、ブロックのグループ、個々のブロックなどのより小さいエンティティについてオフセット値が決定される。代替または追加として、各変換モードについて、オフセット値がオフセット値のリストから取得され得る。
【0034】
前述のように、エンコーダは、量子化パラメータリストから索引を決定することによって初期量子化精度を決定するように構成され得る。同様に、デコーダは、逆量子化パラメータリストから索引を決定することによって初期量子化精度を決定するように構成され得る。一実施形態によれば、エンコーダおよび/またはデコーダは、索引にオフセット値を加算することによって、または索引からオフセット値を減算することによって初期量子化精度を修正するように構成される。索引、すなわち量子化パラメータ(QP)は、たとえばオフセット値だけ減少または増加する。
【0035】
前述のように、エンコーダのケースでは、量子化すべきブロックの量子化は、スケーリングと、その後に続く整数量子化、たとえば最も近い整数値への量子化を含み得る。エンコーダは、量子化すべきブロックの値をスケーリング因子で除算することによってスケーリングを実施するように構成され得る。同様に、デコーダのケースでは、逆量子化すべきブロックの逆量子化は、スケーリング、たとえば再スケーリングと、その後に続く整数逆量子化、たとえば最も近い整数値への逆量子化を含み得、デコーダは、逆量子化すべきブロックの値にスケーリング因子、たとえば再スケーリング因子を乗算することによってスケーリングを実施するように構成され得る。さらに、エンコーダおよび/またはデコーダは、スケーリング因子にオフセット値を加算することによって、またはスケーリング因子からオフセット値を減算することによって初期量子化精度を修正するように構成され得る。スケーリング因子は、たとえば量子化ステップサイズ(QP)に等しい。量子化ステップサイズΔ(QP)はオフセット値だけ減少または増加し得る。
【0036】
一実施形態によれば、エンコーダおよび/またはデコーダは、選択された変換モードが識別変換であるか、それとも非識別変換であるかに応じて、修正後初期量子化精度を提供するように構成される。言い換えれば、エンコーダおよび/またはデコーダは、選択された変換モードが識別変換であるか、それとも非識別変換であるかに応じて、初期量子化精度を修正するように構成され得る。
【0037】
一実施形態によれば、エンコーダおよび/またはデコーダは、選択された変換モードが識別変換である場合、所定のブロックについての初期量子化精度を決定し、初期量子化精度が所定のしきい値よりも粗いかどうかをチェックするように構成され、さらに、初期量子化精度が所定のしきい値よりも粗い場合、エンコーダおよび/またはデコーダは、修正後初期量子化精度が所定のしきい値よりも細かくなるように、選択された変換モードに応じて、オフセット値を使用して初期量子化精度を修正するように構成される。初期量子化精度は、たとえば、索引(QP)が10、20、30、35、40、または45よりも大きい場合、所定のしきい値よりも粗い。言い換えれば、所定のしきい値は、索引10、20、30、35、40、または45によって表され得る。したがって、索引またはスケーリング因子は、ビットレート範囲の第2の端で、すなわち低ビットレートについて、オフセット値だけ減少する。ビットレート範囲の第2の端は、たとえば、4以下のQPに関連付けられるビットレート範囲の第1の端と反対側のビットレート範囲の端に関連付けられる。
【0038】
一実施形態によれば、エンコーダおよび/またはデコーダは、初期量子化精度が所定のしきい値よりも粗くない場合、選択された変換モードに応じて、オフセット値を使用して初期量子化精度を修正しないように構成される。
【0039】
一実施形態によれば、エンコーダおよび/またはデコーダは、選択された変換モードが非識別変換である場合、オフセット値を使用して初期量子化精度を修正しないように構成される。したがって、オフセットは、たとえば、変換モードが識別変換であるケースでのみ使用される。
【0040】
一実施形態によれば、エンコーダおよび/またはデコーダは、レートひずみ最適化を使用することによってオフセットを決定するように構成される。したがって、オフセットがそれについて決定される所定のブロックについて使用すべき変換モードに応じて、生じるひずみが小さいものだけであるか、または全くない、高い圧縮効率が達成され得る。
【0041】
一実施形態によれば、エンコーダは、所定のブロックを含むピクチャ全体、所定のブロックを含むいくつかのピクチャ、または所定のブロックを含むピクチャのスライスなどの、いくつかのブロック、たとえば所定のブロックを含む隣接するブロックについて、オフセット、たとえばオフセット値、またはオフセット値のセット内のオフセット値を指し示す索引をデータストリームにおいてシグナリングするように構成される。ピクチャは、たとえば、符号化すべきピクチャ信号またはビデオ信号のピクチャであり、いくつかのブロックは、たとえば、ピクチャ信号またはビデオ信号のピクチャ内のブロックである。
【0042】
一実施形態によれば、デコーダは、所定のブロックを含むピクチャ全体、所定のブロックを含むいくつかのピクチャ、または所定のブロックを含むピクチャのスライスなどの、所定のブロックを含むいくつかのブロックについて、オフセット、たとえばオフセット値、またはオフセット値のセット内のオフセット値を指し示す索引をデータストリームから読み取るように構成され、所定のブロックを含むピクチャ全体、所定のブロックを含むいくつかのピクチャ、または所定のブロックを含むピクチャのスライスなどの、所定のブロックを含むいくつかのブロックについて、データストリームからオフセットを読み取るように構成される。
【0043】
エンコーダのケースでは、任意選択で、量子化すべきブロックの量子化は、ブロックグローバルスケーリング、たとえばブロックのすべての値についての1つのスケーリング因子と、イントラブロック変動スケーリング行列を用いるスケーリングおよびその後に続く整数量子化、たとえば最も近い整数値への量子化とを含む。たとえば、イントラブロック変動スケーリング行列は、たとえば複数の量子化パラメータ(QP)または複数の量子化ステップサイズΔ(QP)のような複数のスケーリング因子を有する行列である。たとえば、選択された変換を所定のブロックに適用することによって、スケーリングの前にエンコーダによって取得される各変換係数が、スケーリング行列の複数のスケーリング因子のうちの1つによってスケーリングされる。イントラブロック変動スケーリング行列を用いるスケーリングの結果、周波数に依存する重み付けまたは空間に依存する重み付けがもたらされ得る。さらに、エンコーダは、選択された変換モードに応じてイントラブロック変動スケーリング行列を決定するように構成され得る。
【0044】
デコーダのケースでは、逆量子化すべきブロックの逆量子化は、ブロックグローバルスケーリング、すなわちブロックグローバル再スケーリング、たとえばブロックのすべての値についての1つのスケーリング因子、すなわち再スケーリング因子と、イントラブロック変動スケーリング行列、すなわちイントラブロック変動再スケーリング行列を用いるスケーリング、たとえば再スケーリングおよびその後に続く整数逆量子化、たとえば最も近い整数値への逆量子化とを含む。たとえば、イントラブロック変動スケーリング行列は、たとえば複数の量子化パラメータ(QP)または複数の量子化ステップサイズΔ(QP)を有する行列のような複数のスケーリング因子、すなわち再スケーリング因子を有する行列である。ブロックの各値は、たとえば、スケーリング行列の複数のスケーリング因子のうちの1つによって個々にスケーリングされる。イントラブロック変動スケーリング行列によるスケーリングの結果、たとえば、周波数に依存する重み付けまたは空間に依存する重み付けが得られる。さらに、デコーダは、選択された変換モードに応じてイントラブロック変動スケーリング行列を決定するように構成され得る。
【0045】
一実施形態によれば、エンコーダおよび/またはデコーダは、イントラブロック変動スケーリング行列を決定し、決定の結果、サイズおよび形状が等しい、量子化または逆量子化すべき異なるブロックについて、異なるイントラブロック変動スケーリング行列が得られるように構成される。したがって、第1のブロックについての第1のイントラブロック変動スケーリング行列と、第2のブロックについての第2のイントラブロック変動スケーリング行列とは異なり得、第1のブロックと第2のブロックとは同一のサイズおよび形状を有し得る。
【0046】
さらに、任意選択で、決定は、サイズおよび形状が等しい、量子化すべき異なるブロックについて、または逆量子化すべき異なるブロックについて決定されたイントラブロック変動スケーリング行列が、選択された変換モードに依存し、選択された変換モードが識別変換と等しくないようなものとなる。これは、選択された変換モードが識別変換であるケースでは、周波数重み付けスケーリングが有益ではないという考えに基づく。識別変換では、たとえば、ブロックグローバルスケーリングまたは空間重み付けスケーリング行列が使用され得る。しかしながら、非識別変換に等しい変換モードでは、量子化または逆量子化すべきブロックの変換係数ごとに個々にスケーリングすることが有益である。イントラブロック変動スケーリング行列は、異なる非識別変換モードについて異なり得る。
【0047】
一実施形態によれば、エンコーダは、選択された変換モードが非識別変換である場合、選択された変換モードに対応する変換を所定のブロックに適用して、量子化すべきブロックを取得するように構成され、選択された変換モードが識別変換である場合、所定のブロックは量子化すべきブロックである。
【0048】
一実施形態によれば、デコーダは、選択された変換モードが非識別変換である場合、選択された変換モードに対応する逆変換を逆量子化ブロックに適用して、所定のブロックを取得するように構成され、選択された変換モードが識別変換である場合、逆量子化ブロックは所定のブロックである。
【0049】
一実施形態は、変換コーディングを使用するピクチャ信号のブロックベース符号化のための方法であって、所定のブロック、たとえばビデオ信号またはピクチャ信号内のブロックのエリア内のブロックについて、選択された変換モード、たとえば識別変換または非識別変換を選択することを含む方法に関する。識別変換は、たとえば変換スキップと理解される。さらに、方法は、選択された変換モードに依存する量子化精度を使用して、選択された変換モードに従って所定のブロックに関連付けられる量子化すべきブロックを量子化し、量子化ブロックを取得することを含む。量子化すべきブロックは、たとえば、選択された変換モードが施される所定のブロック、および/または、選択された変換モードが非識別変換であるケースでは、選択された変換モードの基礎となる変換を所定のブロックに対して適用することによって、選択された変換モードが識別変換であるケースでは、所定のブロックを等化することによって取得されるブロックである。量子化精度は、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズによって定義される。量子化ブロックを受け取るために、ブロックの値が、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズで除算される。さらに、方法は、量子化ブロックをデータストリームにエントロピー符号化することを含む。
【0050】
一実施形態は、変換復号化を使用する符号化ピクチャ信号のブロックベース復号化のための方法であって、所定のブロック、たとえば復号化残差ピクチャ信号または残差ビデオ信号内の隣接する残差ブロックのエリア内の残差ブロックについて、選択された変換モード、たとえば識別変換または非識別変換を選択することを含む方法に関する。識別変換は、たとえば変換スキップと理解され、非識別変換は、たとえば、エンコーダによって適用される変換の逆/反転変換である。さらに、方法は、データストリームから、選択された変換モードに従って所定のブロックに関連付けられる逆量子化すべきブロックをエントロピー復号化すること、および選択された変換モードに依存する量子化精度を使用して、逆量子化すべきブロックを逆量子化し、逆量子化ブロックを取得することを含む。量子化精度は、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズによって定義される。逆量子化ブロックを受け取るために、ブロックの値に、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズが乗算され得る。量子化精度は、たとえば、逆量子化すべきブロックの逆量子化の精度を定義する。
【0051】
前述の方法は、前述のエンコーダおよび/またはデコーダと同じ考慮に基づく。ところで、方法は、エンコーダおよび/またはデコーダに関してやはり説明される、すべての特徴および機能を備え得る。
【0052】
一実施形態は、コンピュータ上で実行中のとき、本明細書で説明される方法を実施するためのプログラムコードを有するコンピュータプログラムに関する。
【0053】
一実施形態は、ピクチャ信号のブロックベース符号化についての方法によって取得されるデータストリームに関する。
【0054】
図面は必ずしも原寸に比例せず、むしろ一般には、本発明の原理を示すことが強調されている。以下の説明では、本発明の様々な実施形態が、以下の図面を参照しながら説明される。
【図面の簡単な説明】
【0055】
図1a】エンコーダの概略図である。
図1b】代替エンコーダの概略図である。
図2】デコーダの概略図である。
図3】ブロックベースコーディングの概略図である。
図4】一実施形態によるエンコーダの概略図である。
図5】一実施形態によるデコーダの概略図である。
図6】最近のビデオコーディング規格でのデコーダ側スケーリングおよび逆変換の概略図である。
図7】一実施形態によるデコーダ側スケーリングおよび逆変換の概略図である。
図8】一実施形態によるブロックベース符号化のための方法のブロック図である。
図9】一実施形態によるブロックベース復号化のための方法のブロック図である。
【発明を実施するための形態】
【0056】
等しい、もしくは同等の要素、または等しい、もしくは同等の機能を有する要素が、以下の説明では、異なる図中で現れる場合であっても、等しい、または同等の参照番号で示される。
【0057】
以下の説明では、本発明の実施形態のより完全な説明を与えるために複数の詳細が述べられる。しかしながら、本発明の実施形態がこうした特定の詳細なしに実施され得ることは当業者には明らかであろう。別の場合には、本発明の実施形態を曖昧にするのを避けるために、周知の構造およびデバイスが、詳細にではなくブロック図形式で示される。さらに、別段に明記されていない限り、以下で説明される様々な実施形態の特徴が互いに組み合わされ得る。
【0058】
図の以下の説明は、本発明の実施形態がその中に組み込まれ得るコーディングフレームワークについての一例を形成するために、ビデオのピクチャをコーディングするためのブロックベース予測コーデックのエンコーダおよびデコーダの説明の提示から始まる。それぞれのエンコーダおよびデコーダは、図1aから図3に関連して説明される。本明細書で説明される本発明の概念の実施形態は、それぞれ図1a図1b、および図2のエンコーダおよびデコーダ内に組み込まれ得るが、図1a図1b、および図2のエンコーダおよびデコーダの基礎となるコーディングフレームワークに従って動作しないエンコーダおよびデコーダを形成するために、図4から図7と共に説明される実施形態も使用され得る。
【0059】
図1aは、例示的に変換ベース残差コーディングを使用して、ピクチャ12をデータストリーム14として予測的にコーディングするための装置(たとえば、ビデオエンコーダおよび/またはピクチャエンコーダ)を示す。装置、すなわちエンコーダは参照符号10を使用して示される。図1bも、ピクチャ12をデータストリーム14として予測的にコーディングするための装置を示し、可能な予測モジュール44がより詳細に示されている。図2は、対応するデコーダ20、すなわち、やはり変換ベース残差復号化を使用して、データストリーム14からピクチャ12'を予測的に復号化するように構成された装置20を示し、アポストロフィは、デコーダ20によって再構成されたピクチャ12'が、装置10によって元々符号化されたピクチャ12から、予測残差信号の量子化によって導入されたコーディング損失の点で逸脱することを示すために使用されている。図1a図1b、および図2は、例示的に変換ベース予測残差コーディングを使用するが、本願の実施形態は、この種類の予測残差コーディングに制限されない。このことは、以下で略述されるように、図1a図1b、および図2に関連して説明される他の詳細についても当てはまる。
【0060】
エンコーダ10は、予測残差信号に空間-スペクトル変換を施し、そのようにして取得された予測残差信号をデータストリーム14として符号化するように構成される。同様に、デコーダ20は、データストリーム14から予測残差信号を復号化し、そのようにして取得された予測残差信号にスペクトル-空間変換を施すように構成される。
【0061】
内部では、エンコーダ10は、元の信号、すなわちピクチャ12からの予測信号26の逸脱を測定するように予測残差24を生成する予測残差信号形成器22を備え得、予測信号26は、本発明の一実施形態による1つまたは複数の予測子ブロックのセットの一次結合と解釈され得る。予測残差信号形成器22は、たとえば、元の信号、すなわちピクチャ12から予測信号を減算する減算器であり得る。次いでエンコーダ10は、予測残差信号24に空間-スペクトル変換を施して、スペクトル領域予測残差信号24'を取得する変換器28をさらに備え、次いでスペクトル領域予測残差信号24'に、やはりエンコーダ10が備える量子化器32によって量子化が施される。そのようにして量子化された予測残差信号24''がビットストリーム14としてコーディングされる。この目的で、任意選択で、エンコーダ10は、変換され量子化された予測残差信号をデータストリーム14としてエントロピーコーディングするエントロピーコーダ34を備え得る。
【0062】
予測信号26は、データストリーム14として符号化され、データストリーム14から復号化可能な予測残差信号24''に基づいて、エンコーダ10の予測ステージ36によって生成される。この目的で、図1aに示されるように、予測ステージ36は内部に、量子化損失を除いて信号24'に対応するスペクトル領域予測残差信号24'''を得るように予測残差信号24''を逆量子化する逆量子化器38と、その後に続く、後者の予測残差信号24'''に逆変換、すなわちスペクトル-空間変換を施して、量子化損失を除いて元の予測残差信号24に対応する予測残差信号24''''を取得する逆変換器40とを備える。次いで、予測ステージ36の結合器42が、再構成信号46、すなわち元の信号12の再構成を取得するように、加算などによって予測信号26と予測残差信号24''''を再結合する。再構成信号46は信号12'に対応し得る。次いで、図1bにより詳細に示されているように、予測ステージ36の予測モジュール44は、たとえば、空間予測、すなわちイントラピクチャ予測、および/または時間予測、すなわちインターピクチャ予測を使用することによって、信号46に基づいて予測信号26を生成する。
【0063】
同様に、図2に示されているように、デコーダ20は内部的に、予測ステージ36に対応し、予測ステージ36に対応する方式で相互接続される構成要素から構成され得る。具体的には、デコーダ20のエントロピーデコーダ50は、データストリームからの量子化スペクトル領域予測残差信号24''をエントロピー復号化し得、それから予測ステージ36のモジュールに関連して上記で説明された方式で相互接続され、協働する逆量子化器52、逆変換器54、結合器56、および予測モジュール58が、予測残差信号24''に基づいて再構成信号を回復し、その結果、図2に示されるように、結合器56の出力が再構成信号、すなわちピクチャ12'となる。
【0064】
上記では具体的には説明されていないが、エンコーダ10が、たとえば、何らかのレートおよびひずみに関連する基準、すなわちコーディングコストを最適化する方式などの何らかの最適化方式に従って、たとえば予測モード、動きパラメータなどを含むいくつかのコーディングパラメータを設定し得ることは容易に明らかである。たとえば、エンコーダ10およびデコーダ20と、それぞれに対応するモジュール44、58は、イントラコーディングモードやインターコーディングモードなどの異なる予測モードをサポートし得る。エンコーダおよびデコーダがこれらの予測モードタイプの間で切り替わるグラニュラリティが、それぞれピクチャ12および12'のコーディングセグメントまたはコーディングブロックへの細分に対応し得る。これらのコーディングセグメントの単位では、たとえば、ピクチャが、イントラコーディングされているブロック、およびインターコーディングされているブロックに細分され得る。
【0065】
以下でより詳細に略述されるように、イントラコーディング済みブロックが、それぞれのブロック(たとえば、現ブロック)の、空間的な、既にコーディング/復号化されている近隣(たとえば、現テンプレート)に基づいて予測される。いくつかのイントラコーディングモードが存在し得、それぞれのどのセグメントがそれぞれの方向性イントラコーディングモードについて特有の一定の方向に沿って近隣のサンプル値をそれぞれのイントラコーディング済みセグメント内に外挿することによって埋められるかに従って、方向性または角度イントラコーディングモードを含むそれぞれのイントラコーディング済みセグメントについて選択され得る。イントラコーディングモードはまた、たとえば、それに従ってそれぞれのイントラコーディング済みブロックについての予測がそれぞれのイントラコーディング済みセグメント内のすべてのサンプルにDC値を割り当てる、DCコーディングモード、および/またはそれに従ってそれぞれのブロックの予測が近隣のサンプルに基づく2次元線形関数によって定義される平面の駆動傾斜およびオフセットと共にそれぞれのイントラコーディング済みブロックのサンプル位置にわたって2次元線形関数によって記述されるサンプル値の空間分布となるように近似または決定される、平面イントラコーディングモードなどの1つまたは複数の別のモードをも含み得る。
【0066】
それと比べて、インターコーディング済みブロックは、たとえば時間的に予測され得る。インターコーディング済みブロックでは、動きベクトルがデータストリーム14内でシグナリングされ得、動きベクトルは、ピクチャ12が属するビデオの以前にコーディングされたピクチャ(たとえば、基準ピクチャ)の部分の空間変位を示し、その空間変位において、それぞれのインターコーディング済みブロックについての予測信号を取得するために、以前にコーディング/復号化されたピクチャがサンプリングされる。これは、量子化スペクトル領域予測残差信号24''を表すエントロピーコーディング済み変換係数レベルなどの、データストリーム14によって含まれる残差信号コーディングに加えて、様々なブロックにコーディングモードを割り当てるためのコーディングモードパラメータと、インターコーディング済みセグメントについての動きパラメータなどの、ブロックのうちのいくつかについての予測パラメータと、それぞれピクチャ12および12'のセグメントへの細分を制御およびシグナリングするためのパラメータなどの任意選択の別のパラメータが、データストリーム14内に符号化されていることがあることを意味する。デコーダ20は、これらのパラメータを使用してエンコーダがしたのと同様にピクチャを細分し、セグメントに同一の予測モードを割り当て、同一の予測を実施して、同一の予測信号が得られる
【0067】
図3は、一方で、再構成信号、すなわち再構成ピクチャ12'と、他方で、データストリーム14においてシグナリングされる予測残差信号24''''と予測信号26との組合せとの間の関係を示す。上記で既に示されたように、組合せは加算であり得る。予測信号26が、ハッチングを使用して例示的に示されるイントラコーディング済みブロックと、ハッチングなしで例示的に示されるインターコーディング済みブロックへのピクチャエリアの細分として図3に示されている。細分は、正方形ブロックまたは非正方形ブロックの行および列へのピクチャエリアの規則的細分、クワッドツリー細分などの、ツリールートブロックから変動するサイズの複数のリーフブロックへのピクチャ12のマルチツリー細分などの任意の細分であり得、その混合が図3に示されており、ピクチャエリアがまずツリールートブロックの行および列に細分され、次いでツリールートブロックの行および列が、反復的マルチツリー細分に従って1つまたは複数のリーフブロックにさらに細分される。
【0068】
この場合も、いくつかのサポートされるイントラコーディングモードのうちの1つをそれぞれのイントラコーディング済みブロック80に割り当てるイントラコーディング済みブロック80について、データストリーム14内にイントラコーディングモードコーディングされていることがある。インターコーディング済みブロック82について、データストリーム14内に1つまたは複数の動きパラメータがコーディングされていることがある。一般的に言えば、インターコーディング済みブロック82は、時間コーディングされることに制限されない。代替として、インターコーディング済みブロック82は、ピクチャ12が属するビデオの以前にコーディングされたピクチャ、またはエンコーダおよびデコーダがそれぞれスケーラブルエンコーダおよびデコーダであるケースでは、別のビューまたは階層的に下位の層のピクチャなどの、現ピクチャ12自体を越えて以前にコーディングされた部分から予測される任意のブロックであり得る。
【0069】
図3の予測残差信号24''''はまた、ブロック84へのピクチャエリアの細分として示されている。これらのブロックは、コーディングブロック80および82と区別するために変換ブロックと呼ばれることがある。実際に、図3は、エンコーダ10およびデコーダ20が、それぞれピクチャ12およびピクチャ12'のブロックへの2つの異なる細分、すなわちそれぞれコーディングブロック80および82への1つの細分と、変換ブロック84への別の細分とを使用し得ることを示す。両方の細分は同一であり得、すなわち各コーディングブロック80および82は変換ブロック84を同時に形成し得るが、図3は、たとえば、変換ブロック84への細分がコーディングブロック80、82への細分の拡張を形成し、その結果、ブロック80および82の2つのブロック間の任意の境界が2つのブロック84間の境界と重なり、または言い換えると、各ブロック80、82のどちらかが変換ブロック84のうちの1つに一致し、または変換ブロック84のクラスタに一致するケースを示す。しかしながら、細分は互いに独立に決定または選択され得、その結果、代替として、変換ブロック84は、ブロック80、82の間のブロック境界を横切り得る。変換ブロック84への細分が関係する限り、ブロック80、82への細分に関して進められるものと同様の陳述が真であり、すなわちブロック84は(行および列への構成を伴う、または伴わない)ブロックへのピクチャエリアの規則的な細分の結果、ピクチャエリアの反復的マルチツリー細分の結果、またはそれらの組合せ、あるいは任意の他の種類のブロッケーション(blockation)であり得る。ところで、ブロック80、82、および84は正方形、長方形、または任意の他の形状に制限されないことに留意されたい。
【0070】
図3はさらに、予測信号26と予測残差信号24''''との組合せの結果、直接的に再構成信号12'が得られることを示す。しかしながら、代替実施形態によれば、複数の予測信号26が予測残差信号24''''と組み合わされ得、その結果ピクチャ12'が得られることに留意されたい。
【0071】
図3では、変換ブロック84は以下の意義を有するものとする。変換器28および逆変換器54は、これらの変換ブロック84の単位で変換を実施する。たとえば、多くのコーデックは、すべての変換ブロック84について何らかの種類のDST(離散サイン変換)またはDCT(離散コサイン変換)を使用する。あるコーデックは、変換をスキップすることを可能にし、その結果、変換ブロック84のうちのいくつかについて、予測残差信号が直接的に空間領域内でコーディングされる。しかしながら、以下で説明される実施形態によれば、エンコーダ10およびデコーダ20は、いくつかの変換をサポートするような方式で構成される。たとえば、エンコーダ10およびデコーダ20によってサポートされる変換は以下を含み得る。
・DCT-II(またはDCT-III)、ただしDCTは離散コサイン変換を表す
・DST-IV、ただしDSTは離散サイン変換を表す
・DCT-IV
・DST-VII
・識別変換(IT)
【0072】
当然ながら、変換器28はこれらの変換の順方向変換バージョンのすべてをサポートすることになり、一方、デコーダ20または逆変換器54は、それらの対応する逆方向バージョンまたは逆バージョンをサポートすることになる。
・逆DCT-II(または逆DCT-III)
・逆DST-IV
・逆DCT-IV
・逆DST-VII
・識別変換(IT)
【0073】
後続の説明は、どの変換がエンコーダ10およびデコーダ20によってサポートされ得るかに関するさらなる詳細を与える。いずれにしても、サポートされる変換のセットは1つのスペクトル-空間変換または1つの空間-スペクトル変換など、単に1つの変換を含み得るが、エンコーダまたはデコーダによって変換が全く使用されない、または単一のブロック80、82、84について使用されない可能性もあることに留意されたい。
【0074】
上記で既に略述されたように、図1aから図2は、本願に従ってエンコーダおよびデコーダについての特定の例を形成するために、本明細書において説明される本発明の概念が実装され得る一例として提示されたものである。その限りにおいて、それぞれ図1a図1b、および図2のエンコーダおよびデコーダは、上記において説明されたエンコーダおよびデコーダの可能な実装を表し得る。しかしながら、図1a図1b、および図2は例に過ぎない。しかしながら、本願の実施形態によるエンコーダは、上記または以下においてより詳細に略述される概念を使用するピクチャ12のブロックベース符号化を実施し得、たとえば、図3の例とは異なる方式でブロック80への細分が実施される点、および/または変換(たとえば、変換スキップ/識別変換)が全く使用されず、もしくは単一のブロックについて使用されない点などで、図1aまたは図1bのエンコーダとは異なる。同様に、本願の実施形態によるデコーダは、以下でさらに略述されるコーディング概念を使用して、データストリーム14からのピクチャ12'のブロックベース復号化を実施し得るが、たとえば、図2のデコーダ20が図3に関連して説明されるものとは異なる方式でピクチャ12'をブロックに細分する点、および/または図2のデコーダ20が変換領域内でデータストリーム14から予測残差を導出せず、たとえば空間領域内で導出する点、および/または図2のデコーダ20がどんな変換も全く使用せず、または単一のブロックについて使用しない点で、図2のデコーダ20とは異なり得る。
【0075】
一実施形態によれば、前述の本発明の概念は、エンコーダの量子化器32、またはデコーダの逆量子化器38、52において実装され得る。したがって、一実施形態によれば、量子化器32および/または逆量子化器38、52は、変換器28によって適用された、または逆変換器54によって適用されるべき、選択された変換に応じて、量子化すべきブロックに異なるスケーリングを適用するように構成され得る。したがって、量子化器32および/または逆量子化器38、52は、すべての変換モード(すなわち、変換タイプ)について1つの事前定義済みスケーリングを使用するだけでなく、それぞれの選択された変換モードについて異なるスケーリングを使用するように構成される。
【0076】
現況技術のハイブリッドビデオコーディング技術は、利用される変換およびブロックサイズとは無関係の逆量子化のための同一のスケーリング因子を利用する。提示される発明は、選択された変換およびブロックサイズに応じて、異なるスケーリング因子の使用を可能にする方法を説明する。エンコーダの観点からは、量子化ステップサイズは、選択された変換および変換ブロックサイズに応じて異なる。変換タイプおよび変換ブロックサイズに応じて異なる量子化ステップサイズを組み合わせることにより、エンコーダは、より高い圧縮効率を達成し得る。
【0077】
図4は、変換コーディングを使用するピクチャ信号のブロックベース符号化のためのエンコーダ10を示す。入力ピクチャ12の予測残差24の所定のブロック18が、エンコーダ10によって実行される。
【0078】
エンコーダ10は、所定のブロック18について、選択された変換モード130を選択するように構成される。選択された変換モード130は、たとえば、所定のブロック18の内容に基づいて、入力ピクチャ12の予測残差24の内容に基づいて、または入力ピクチャ12の内容に基づいて選択される。エンコーダは、変換モード128から、選択された変換モード130を選び得、変換モード128は、非識別変換1281および識別変換1282に分割され得る。
【0079】
一実施形態によれば、非識別変換1281は、DCT-II、DCT-III、DCT-IV、DST-IV、および/またはDST-VII変換を含む。
【0080】
さらに、エンコーダ10は、選択された変換モード130に依存する量子化精度140を使用して、選択された変換モード130に従って、所定のブロック18に関連付けられる、量子化すべきブロック18'を量子化し、量子化ブロック18''を取得するように構成される。
【0081】
一実施形態によれば、量子化器32によって量子化すべきブロック18'は、エンコーダによって、所定のブロック18に適用される1つまたは複数の処理ステップによって取得され得、エンコーダ10は、ステップのうちの1つにおいて、選択された変換モード130を使用するように構成され得る。量子化すべきブロック18'は、たとえば、所定のブロック18の処理済みバージョンである。量子化すべきブロック18'は、たとえば、選択された変換モード130の、所定のブロック18に対する適用によって取得され、識別変換は変換スキップに対応し得る。
【0082】
量子化すべきブロック18'は、一定の量子化精度140で量子化される。量子化精度140は、所定のブロック18について選択された、選択された変換モード130に基づいて決定され得、所定のブロック18が量子化すべきブロック18'に関連付けられる。最適化された量子化精度140で、量子化から生じるひずみが低減され得る。同一の量子化精度によって、異なる変換モード128について異なる量のひずみが生じ得る。したがって、個々の量子化精度140を異なる変換モード128に関連付けることが有利である。
【0083】
エンコーダ10は、たとえば、量子化精度140を定義する、量子化すべきブロック18'についての量子化パラメータを決定するように構成される。量子化精度140は、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズによって定義される。
【0084】
個々の量子化精度140を用いてブロック18'の量子化から得られた量子化ブロック18''が、エンコーダ10のエントロピーエンコーダ34によって、データストリーム14にエントロピー符号化される。
【0085】
任意構成され得る選択で、エンコーダ10は、同様の、または図7に関して説明された追加の特徴を備え得る。
【0086】
図5は、変換復号化を使用する符号化ピクチャ信号のブロックベース復号化のためのデコーダ20を示す。デコーダ20は、データストリーム14から出力ピクチャを再構成するように構成され得、所定のブロック118が、出力ピクチャの予測残差のブロックを表し得る。
【0087】
デコーダ20は、所定のブロック118について、選択された変換モード130を選択するように構成される。選択された変換モード130は、たとえば、データストリーム14におけるシグナリングに基づいて選択される。デコーダは、変換モード128から、選択された変換モード130を選び得、変換モード128は、非識別変換1281および識別変換1282に分割され得る。
【0088】
非識別変換1281は、エンコーダによって適用される変換の逆/反転変換を表し得る。一実施形態によれば、非識別変換1281は、逆DCT-II、逆DCT-III、逆DCT-IV、逆DST-IV、および/または逆DST-VII変換を含む。
【0089】
さらに、デコーダ20は、エントロピーデコーダ50によって、データストリーム14から、選択された変換モード130に従って所定のブロック118に関連付けられる、逆量子化すべきブロック118'をエントロピー復号化するように構成される。一実施形態によれば、逆量子化すべきブロック118'は、デコーダ20によって実施される1つまたは複数のステップによって処理され、所定のブロック118がもたらされ得、デコーダ20は、ステップのうちの1つにおいて、選択された変換モード130を使用するように構成され得る。所定のブロック118は、たとえば、逆量子化すべきブロック118'の処理済みバージョンである。量子化すべきブロック118'は、たとえば、選択された変換モード130が施される前の所定のブロック118である。図5に示されるように、任意選択で、デコーダ20は、逆変換器54を使用し、選択された変換モード130を使用して所定のブロック118を取得するように構成される。
【0090】
さらに、デコーダ20は、逆量子化器52によって、選択された変換モード130に依存する量子化精度140を使用して、逆量子化すべきブロック118'を逆量子化し、逆量子化ブロック118''を取得するように構成される。
【0091】
逆量子化すべきブロック118'は、一定の量子化精度140で逆量子化される。量子化精度140は、所定のブロック118について選択された、選択された変換モード130に基づいて決定され得、所定のブロック118が逆量子化すべきブロック118'に関連付けられる。最適化された量子化精度140で、量子化から生じるひずみが低減され得る。同一の量子化精度によって、異なる変換モード128について異なる量のひずみが生じ得る。したがって、個々の量子化精度140を異なる変換モード128に関連付けることが有利である。
【0092】
デコーダ20は、たとえば、量子化精度140を定義する、逆量子化すべきブロック118'についての量子化パラメータ、すなわち逆量子化パラメータを決定するように構成される。量子化精度140は、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズによって定義される。
【0093】
任意選択の変換器54は、選択された変換モード130を使用して逆量子化ブロック118''を変換し、所定のブロック118を取得するように構成され得る。
【0094】
本発明は、選択された変換および変換ブロックサイズに応じて、量子化ステップサイズ、すなわち量子化精度を変更する可能性を可能にする。以下の説明はデコーダの観点から書かれ、量子化ステップサイズを用いるデコーダ側スケーリング52(乗算)は、ステップサイズによるエンコーダ側除算の逆(不可逆)であると理解され得る。
【0095】
デコーダ側では、図6に示されるように、H.265/HEVCのような現在のビデオコーディング規格での(量子化)変換係数レベルのスケーリング52、すなわち逆量子化が、より高精度のDCT/DST整数変換から得られる変換係数について設計される。そこでは、可変bitDepthが、イメージサンプルのビット深さ、たとえば8または10ビットを指定する。変数log2TbWおよびlog2TbHが、それぞれ変換ブロック幅および高さの2を底とする対数を指定する。図6は、H.265/HEVCなどの最近のビデオコーディング規格でのデコーダ側スケーリング52および逆変換54を示す。
【0096】
デコーダにおいて、2つの1D DCT/DSTベースの整数変換1281が追加の因子
【0097】
【数3】
【0098】
を導入し、追加の因子は逆のスケーリングで補償する必要があることに留意されたい。端数のlog2TbH+log2TbWを有する非正方形ブロックでは、スケーリングは因子
【0099】
【数4】
【0100】
を含む。これは、目盛係数181/256を加えること、またはこのケースについてのその因子を組み込むlevelScale値の異なるセット、たとえばlevelScale[]={29, 32, 36, 40, 45, 51}を使用することによって考慮に入れられ得る。識別変換または変換スキップのケース1282では、これは当てはまらない。
【0101】
ステップサイズまたはスケーリング因子
【0102】
【数5】
【0103】
は、4未満のQPについて1より小さくなることがわかる。これらのQPについてのlevelScaleは64=26未満であるからである。変換係数では、整数順方向変換1281が残差信号の精度、したがってダイナミックレンジを向上させるので、このことは問題ではない。しかしながら、識別変換または変換スキップ1282のケースでの残差信号では、ダイナミックレンジは向上しない。このケースでは、1未満のスケーリング因子は、スケーリング因子1を有するQP 4については存在しない、QPs<4についてのひずみを導入し得る。これは、QPを低減するとひずみが低減するはずである、量子化器設計の意図とは矛盾する。
【0104】
選択された変換、たとえば変換がスキップされるか否かに応じて、量子化ステップサイズを変更することは、変換スキップ1282について異なる量子化ステップサイズを導出するために使用され得る。最低のQPs 0、1、2、および3については特に、これにより、最低のQPsについて1未満の量子化ステップサイズ/スケーリング因子を有する問題が解決されることになる。図7に示される一実施形態では、解決策は、最小許容値4(QP')まで量子化パラメータを削減する(53)ことであり得、その結果、1未満に下げることのできない量子化ステップサイズが得られる。それに加えて、変換によって必要とされる、bdShift1 541を用いた、サイズに依存する正規化、およびbdShift2を用いたビット深さへの最終的丸め542が、変換経路54に移動され得る。これは、変換スキップスケーリングを、丸めと共に10ビットのダウンシフトまで低減する。別の実施形態では、QP値を4まで削減するのではなく、変換スキップについて1未満のスケーリング因子となるQP値をエンコーダが使用することを許可しないビットストリーム制限が定義され得る。図7は、本発明による改良型のデコーダ側スケーリング52および逆変換54を示す。
【0105】
ビットレート範囲の他端では、すなわちより低いビットレートでは、識別変換1282についての量子化ステップサイズがオフセットだけ低減され得、その結果、変換を適用しない、または識別変換1282を適用するブロックについて、より高い忠実度が得られる。これにより、より高い圧縮効率を達成するために、変換スキップブロックについて適切なQP値をエンコーダが選択することが可能となる。この態様は、識別変換/変換スキップ1282に限定されず、他の変換タイプ1281についてのQPをオフセットだけ修正するためにも使用され得る。エンコーダは、たとえば、コーディング効率を向上させる方式で、たとえば、知覚される視覚的品質を最大化すること、または所与のビットレートについての2乗誤差のような客観的ひずみを最小限に抑えること、または所与の品質/ひずみについてのビットレートを低減することによって、このオフセットを決定する。スライスQPからのこの(適用される基準に関して)最適な導出は、たとえば、内容、ビットレート、または複雑性動作点(complexity operation point)と、選択された変換および変換ブロックサイズなどの別の因子とに依存する。本発明は、複数の変換のケースについて、QPオフセットをシグナリングするための方法を説明する。一般性を失うことなく、2つの代替変換を仮定すると、固定QPオフセットが、エンコーダによって、2つの代替変換のそれぞれについて、高レベル構文構造(シーケンスパラメータセット、ピクチャパラメータセット、タイルグループヘッダ、スライスヘッダなど)において送信され得る。代替として、QPオフセットは、たとえば、エンコーダが代替変換を選択したとき、エンコーダによって、各変換ブロックについて送信される。2つの手法の組合せは、高レベル構文構造における基本QPオフセットと、代替変換を使用する各変換ブロックについての追加のオフセットのシグナリングである。オフセットは、基本QPに対して加算または減算される値、またはオフセット値のセットへの索引であり得る。そのセットは、高レベル構文構造において事前定義またはシグナリングされ得る。
・本発明の好ましい実施形態では、識別変換についての基本QPに対するQPオフセットが、高レベル構文構造において、たとえば、シーケンス、ピクチャ、タイルグループ、タイル、またはスライスレベル上でシグナリングされる。
・本発明の別の好ましい実施形態では、識別変換についての基本QPに対するQPオフセットが、各コーディング単位、またはコーディング単位の事前定義済みセットについてシグナリングされる。
・本発明の別の好ましい実施形態では、識別変換についての基本QPに対するQPオフセットが、識別変換を適用する各変換単位についてシグナリングされる。
【0106】
本発明の別の態様は、異なる変換タイプ、たとえば識別変換/変換スキップについての異なるスケーリング行列の使用である。スケーリング行列は、変換係数ごとに異なるようにスケーリングすることを可能にする。変換係数は通常、残差信号の異なる空間周波数に関係するので、これは周波数に依存する重み付けと解釈され得る。異なる変換タイプから生じる係数の分散は異なり得るので、異なる変換タイプについて異なるスケーリング行列を使用することが示唆される。この特殊ケースは識別変換であり、その場合、係数は、空間周波数に関係しない残差サンプルに等しい。そのケースでは、周波数重み付けスケーリングは有益ではなく、別々の空間重み付けスケーリング行列が適用され、または行列ベースのスケーリングが適用されないことがある。
【0107】
さらに、図8および図9は、エンコーダおよび/またはデコーダに関して上記で説明された原理に基づく方法を示す。
【0108】
図8は、所定のブロックについて、選択された変換モード、たとえば識別変換または非識別変換を選択すること(810)を含む、変換コーディングを使用するピクチャ信号のブロックベース符号化のための方法800を示し、識別変換は変換スキップと理解され得る。さらに、方法800は、たとえば量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズによって定義される、選択された変換モードに依存する量子化精度を使用して、選択された変換モードに従って所定のブロックに関連付けられる量子化すべきブロック、たとえば選択された変換モードが施される所定のブロックを量子化し(820)、量子化ブロックを取得することを含む。量子化すべきブロックは、選択された変換モードが非識別変換であるケースでは、選択された変換モードの基礎となる変換を所定のブロックに対して適用することによって、選択された変換モードが識別変換であるケースでは、所定のブロックを等化することによって取得され得る。量子化ブロックを受け取るために、量子化すること(820)は、ブロックの値を量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズで除算することによって実施され得る。さらに、方法800は、量子化ブロックをデータストリームにエントロピー符号化すること(830)を含む。
【0109】
図9は、所定のブロック、たとえば復号化残差ピクチャ信号または残差ビデオ信号内の隣接する残差ブロック内のエリア内の残差ブロックについて、選択された変換モード、たとえば識別変換または非識別変換を選択すること(910)を含む、変換復号化を使用する符号化ピクチャ信号のブロックベース復号化のための方法900を示す。識別変換は変換スキップと理解され得、非識別変換は、エンコーダによって適用され、または符号化方法によって使用される変換の逆/反転変換であり得る。さらに、方法900は、データストリームから、選択された変換モードに従って所定のブロックに関連付けられる逆量子化すべきブロック、たとえば選択された変換モードが施される前の所定のブロックをエントロピー復号化すること(920)を含む。さらに、方法900は、選択された変換モードに依存する量子化精度を使用して、逆量子化すべきブロックを逆量子化し(930)、逆量子化ブロックを取得することを含む。量子化精度は、逆量子化すべきブロックの逆量子化930の精度を定義し得る。量子化精度は、たとえば、量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズによって定義される。逆量子化ブロックを受け取るために、逆量子化すること(930)は、たとえば、ブロックの値に量子化パラメータ(QP)、スケーリング因子、および/または量子化ステップサイズを乗算することによって実施される。
【0110】
実装代替:
いくつかの態様が装置の文脈において説明されたが、これらの態様は、対応する方法の説明も表すことは明らかであり、ブロックまたはデバイスが、方法ステップまたは方法ステップの特徴に対応する。同様に、方法ステップの文脈で説明された態様は、対応する装置の対応するブロックまたは項目または特徴の説明も表す。方法ステップの一部またはすべては、たとえばマイクロプロセッサ、プログラマブルコンピュータ、または電子回路のようなハードウェア装置によって(またはハードウェア装置を使用して)実行され得る。いくつかの実施形態では、最も重要な方法ステップのうちの1つまたは複数は、そのような装置によって実行され得る。
【0111】
いくつかの実装要件に応じて、本発明の実施形態は、ハードウェアまたはソフトウェアとして実装され得る。実装は、それぞれの方法が実施されるようにプログラマブルコンピュータシステムと協働する(または協働することのできる)、電子的に可読な制御信号が記憶されたデジタル記憶媒体、たとえばフロッピィディスク、DVD、Blue-ray、CD、ROM、PROM、EPROM、EEPROM、またはFLASH(登録商標)メモリを使用して実施され得る。したがって、デジタル記憶媒体はコンピュータ可読であり得る。
【0112】
本発明によるいくつかの実施形態は、本明細書において説明される方法のうちの1つが実施されるようにプログラマブルコンピュータシステムと協働することのできる、電子的に可読な制御信号を有するデータキャリアを含む。
【0113】
一般には、本発明の実施形態は、プログラムコードを有するコンピュータプログラム製品として実装され得、コンピュータプログラム製品がコンピュータ上で実行されるとき、プログラムコードは、方法のうちの1つを実施するように動作可能である。プログラムコードは、たとえば機械可読キャリア上に記憶され得る。
【0114】
他の実施形態は、機械可読キャリア上に記憶された、本明細書において説明される方法のうちの1つを実施するためのコンピュータプログラムを含む。
【0115】
言い換えれば、したがって、本発明の方法の実施形態は、コンピュータプログラムがコンピュータ上で実行されるとき、本明細書において説明される方法のうちの1つを実施するためのプログラムコードを有するコンピュータプログラムである。
【0116】
したがって、本発明の方法の別の実施形態は、本明細書において説明される方法のうちの1つを実施するためのコンピュータプログラムが記録されたデータキャリア(またはデジタル記憶媒体、またはコンピュータ可読媒体)である。データキャリア、デジタル記憶媒体、または記録された媒体は通常、有形かつ/または非遷移的である。
【0117】
したがって、本発明の方法の別の実施形態は、本明細書において説明される方法のうちの1つを実施するためのコンピュータプログラムを表す信号のデータストリームまたはシーケンスである。信号のデータストリームまたはシーケンスは、たとえば、データ通信接続を介して、たとえばインターネットを介して転送されるように構成され得る。
【0118】
別の実施形態は、本明細書において説明される方法のうちの1つを実施するように構成または適合される処理手段、たとえばコンピュータまたはプログラマブル論理デバイスを含む。
【0119】
別の実施形態は、本明細書において説明される方法のうちの1つを実施するためのコンピュータプログラムがインストールされたコンピュータを含み得る。
【0120】
本発明による別の実施形態は、本明細書において説明される方法のうちの1つを実施するためのコンピュータプログラムを(たとえば、電子的または光学的に)受信機に転送するように構成された装置またはシステムを含む。受信機は、たとえば、コンピュータ、モバイルデバイス、またはメモリデバイスなどであり得る。装置またはシステムは、たとえば、受信機にコンピュータプログラムを転送するためのファイルサーバを備え得る。
【0121】
いくつかの実施形態では、本明細書において説明される方法の機能の一部またはすべてを実施するためにプログラマブル論理デバイス(たとえば、フィールドプログラマブルゲートアレイ)が使用され得る。いくつかの実施形態では、フィールドプログラマブルゲートアレイは、本明細書において説明される方法のうちの1つを実施するためにマイクロプロセッサと協働し得る。一般には、方法は任意のハードウェア装置によって実施されることが好ましい。
【0122】
本明細書において説明される装置は、ハードウェア装置を使用して、またはコンピュータを使用して、またはハードウェア装置とコンピュータの組合せを使用して実装され得る。
【0123】
本明細書において説明される装置、本明細書において説明される装置の任意の構成要素は、少なくとも部分的にハードウェアおよび/またはソフトウェアとして実装され得る。
【0124】
本明細書において説明される方法は、ハードウェア装置を使用して、またはコンピュータを使用して、またはハードウェア装置とコンピュータの組合せを使用して実施され得る。
【0125】
本明細書において説明される方法、本明細書において説明される装置の任意の構成要素は、少なくとも部分的にハードウェアおよび/またはソフトウェアによって実施され得る。
【0126】
前述の実施形態は、本発明の原理についての例示に過ぎない。本明細書において説明される構成および詳細の修正形態および変形形態が当業者には明らかとなることを理解されたい。したがって、本明細書の実施形態の記述および説明によって提示される特定の詳細ではなく、以下の特許請求の範囲のみによって限定されるものとする。
【符号の説明】
【0127】
10 エンコーダ
12 ピクチャ
14 データストリーム
18 所定のブロック
18' 量子化すべきブロック
18'' 量子化ブロック
20 デコーダ
22 予測残差信号形成器
24 予測残差、予測残差信号
24' スペクトル領域予測残差信号
24'' 予測残差信号
24''' スペクトル領域予測残差信号
24'''' 予測残差信号
26 予測信号
28 変換器
32 量子化器
34 エントロピーコーダ
36 予測ステージ
38 逆量子化器
40 逆変換器
42 結合器
44 予測モジュール
46 再構成信号
50 エントロピーデコーダ
52 逆量子化器
54 逆変換器
56 結合器
58 予測モジュール
80 イントラコーディング済みブロック
82 インターコーディング済みブロック
84 変換ブロック
118 所定のブロック
118' 逆量子化すべきブロック
118'' 逆量子化ブロック
128 変換モード
1281 非識別変換
1282 識別変換
130 選択された変換モード
140 量子化精度
図1a
図1b
図2
図3
図4
図5
図6
図7
図8
図9