複数の従来技術と対照的に、本明細書における複数の方法および実施形態は、公知のデコード方法のために設計されたデコードおよび/またはディスプレイハードウェアとの上位互換性を維持しつつ、同時に、効率的なビットストリームおよび拡張可能性を達成するための革新的なアプローチを表す。
本明細書に示されている複数の方法および実施形態は、複数のレガシーデコーダにより第1品質レベルまで、および、具体的に有効化されたデコーダにより1または複数の異なる(より高い)品質レベルまでデコードされるよう生成された上位互換ストリームを生成する複数のやり方も含む。
上位互換性により拡張可能性の目標を達成することとは別に、より高い複数の品質レベルのための異なるエンコード/デコード技術を使用することは、ビットストリーム全体に関するより高い効率性も達成し得る。
本明細書における複数の実施形態は、従来の複数のシステムおよび方法から逸脱し、任意の品質レベルまでのデコードのためにレガシーデコード方法を活用して信号をデコードする新規の複数の方法、および、任意の品質レベルのデコードされた信号に基づき最終的な(より高い)品質レベルの信号の表現を再構成する新規のデコード方法を提供する。
その最も幅広い態様によると、本願発明は、任意の解像度および/またはフレームレート(第1品質レベル)まで既存のデコードハードウェアを用い、その後、演算的にシンプルであるが、それでいて効果的な方法により1または複数の追加の品質レベルを再構成するための方法である。第1品質レベルより高い品質レベルのデコードを実行するよう更新されることが出来ない複数のレガシーデコードデバイスは、単に第1品質レベルの信号をデコードし、追加の拡張データを無視するであろう。すなわち、依然として、信号の表現をデコードすることが出来るであろう。
簡潔にするために、本明細書に示されている複数の非限定的な実施形態は、複数のサンプルのシーケンス(すなわち、2次元画像、ビデオフレーム、ビデオフィールド等)として信号について言及する。説明において、用語「画像」、「ピクチャ」または「平面」(「超平面」、すなわち、任意の数の次元および任意のサンプリンググリッドを有する複数の要素の配列の最も広い意味が意図されている)は、しばしば、複数のサンプルのシーケンスに従った信号のサンプルのデジタル表現を特定するのによく用いられる。各平面は、その次元(例えば、XおよびY)のそれぞれについての任意の解像度を有し、1または複数の「値」または「設定」によって(例えば、非限定的な例により、適切な色空間の色設定、密度レベルを示す設定、温度レベルを示す設定、オーディオピッチを示す設定、振幅を示す設定等)によって特徴付けられる、複数の面要素(または、「要素」または「ペル」、または、2次元画像についてはしばしば「画素」と呼ばれる表示要素、ボリューム画像についてはしばしば「ボクセル」と呼ばれる、等)のセットを含む。各面要素は、画像のサンプリンググリッドにおける当該要素の整数位置を示す適切な組の座標によって特定される。信号の複数の次元は、空間次元のみを含み得(例えば、画像の場合)、または時間次元も含み得る(例えば、時間が経つにつれて展開する信号の場合)。
複数の非限定的な例として、信号は、画像、オーディオ信号、マルチチャネルオーディオ信号、ビデオ信号、マルチビュービデオ信号(例えば、3Dビデオ)、ボリューム信号(例えば、医療用画像化、科学用画像化、ホログラフィック画像化等)、ボリュームビデオ信号、または、4つよりも多くの次元を含む複数の信号でさえあり得る。
簡潔にするために、本明細書に示されている複数の非限定的な実施形態はしばしば、例えばビデオ信号など複数の設定の2D平面(例えば、適切な色空間における2D画像)として表示される複数の信号について言及する。「フレーム」または「フィールド」という用語は、ビデオ信号のある時点におけるサンプルを示すのに「画像」という用語と交換可能に用いられるであろう。複数のフレームから成る複数のビデオ信号(プログレッシブビデオ信号)に関して示されている任意の複数の概念および方法は、複数のフィールドから成る複数のビデオ信号(インターレースされたビデオ信号)にも容易に適用可能であり得、またその逆も当てはまる。本明細書に示されている複数の実施形態がビデオ信号に焦点を当てているにも関わらず、当業者は、同じ複数の概念および方法が、任意の他のタイプの多次元信号(例えば、ボリューム信号、ビデオ信号、3Dビデオ信号、プレノプティック信号等)にも適用可能であることを容易に理解することが出来る。
本明細書に説明されている非限定的な実施形態において、信号プロセッサは、データストリームを受信し、それを2またはより多くのサブストリームへと分離されるよう構成される。第1サブストリームは、第1デコード方法によりデコードされ,第1品質レベルの信号の表現が生成される。第2サブストリームは第2デコード方法によりデコードされ、複数の残余が生成される。第1品質レベルの信号に基づき、信号プロセッサは、(より高い)第2品質レベルの信号の予測表現を生成する。信号プロセッサは、第2品質レベルの信号の予測(または「予備」)表現を複数の残余と組み合わせ、第2品質レベルの信号の表現を生成する。
本明細書に説明されている他の非限定的な複数の実施形態において、他のコンピュータデバイスに配置された信号プロセッサはデータストリームを受信するが、第2サブストリームをデコードするよう構成されていない。信号プロセッサは、第2サブストリームを無視し、単に第1サブストリームをデコードし、第1品質レベルの信号の表現を生成する。このやり方で、複数のレガシーデコーダは単に第2サブスクライバストリームを無視し、第2品質レベルの信号の表現の代わりに第1品質レベルの信号の表現を生成するので、データストリームにデータの第2サブスクライバストリームを含めることは、第2サブストリームをデコードするよう構成されていない複数のデコーダと実質的に上位互換である。
非限定的な実施形態において、方法は、MPEGベースの方法に従ってデコードするよう設計されたハードウェアのファームウェア上で実施され、第1サブストリームは、当該MPEGベースの方法に従ってデコードされる。
本明細書に説明されている他の非限定的な複数の実施形態において、第2サブストリームは、信号プロセッサにより実行される、第1品質レベルの信号に基づき、第2品質レベルの信号の予測または予備表現を生成する複数の処理に対応する複数のパラメータを含む。非限定的な実施形態において、当該複数のパラメータは、第1品質レベルの信号の表現をアップサンプリングするのに用いられるアップサンプリングカーネルの複数の係数を含む。
本明細書に説明されている他の非限定的な複数の実施形態において、デコードされた複数の残余は、第1品質レベルの第1残余セットと、第2品質レベルの第2残余セットとを含む。
本明細書に説明されている他の非限定的な複数の実施形態において、第2品質レベルの信号の予測表現を生成することは、第1品質レベルの信号の表現を第1残余セットと組み合わせることと、受信した複数のパラメータに対応する複数のアップサンプリング処理により第1品質レベルの信号の表現をアップサンプリングすることとを含む。
本明細書に説明されている他の非限定的な複数の実施形態において、残余セットをデコードすることは、変換され量子化された複数の残余をデコードすることと、変換され量子化された残余をそれらの間で、および/または複数の適切なパラメータとの間で合計および減算し、量子化された複数の残余を生成することと、量子化された複数の残余を逆量子化し、複数の残余を生成することとを含む。
非限定的な実施形態において、当該複数の適切なパラメータは、第1品質レベルの信号の表現の要素の値と、第2品質レベルの信号の予測表現の対応する複数の要素の平均との間の差を算出することにより得られる複数のパラメータを含む。
本明細書に説明されている他の非限定的な複数の実施形態において、残余セットをデコードすることは、量子化され変換された複数の残余をデコードすることと、量子化され変換された複数の残余を逆量子化し、変換された複数の残余を生成することと、変換された複数の残余を、それらの間で、および/または複数の適切なパラメータとの間で合計および減算し、複数の残余を生成することとを含む。
非限定的な一実施形態において、当該複数の適切なパラメータは、第1品質レベルの信号の表現の要素の値と、第2品質レベルの信号の予測表現の対応する複数の要素の平均との間の差を算出することにより得られる複数のパラメータを含む。
非限定的な実施形態において、複数の逆量子化処理が、任意のパラメータに従って各量子化範囲内の位置を特定することにより実行される。
非限定的な実施形態において、複数の逆量子化処理は、任意の確率分布に従って量子化範囲に含まれるランダム値を算出することにより、統計的ディザリングを用いて実行される。
他の非限定的な複数の実施形態において、量子化され変換された複数の残余をデコードすることは、エントロピーエンコードデータを受信し、それを適切なエントロピーデコード方法に従ってデコードすることを含む。非限定的な実施形態において、当該エントロピーデコード方法は、ハフマンデコードとランレングス(「RLE」)デコードとの組み合わせである。他の非限定的な複数の実施形態において、当該エントロピーデコード方法は、静的算術エンコーダを含む。他の非限定的な複数の実施形態において、エントロピーデコーダは、デコードされることになる複数のシンボルの確率分布に対応する複数のパラメータを受信する。
更なる非限定的な複数の実施形態によると、同じシーケンスの複数の後続の画像に関する複数の残余は、複数の後続の画像間の相関性を効果的に活用するよう、同じ共通の基準(サポートバッファ)からデコードされる。
更なる非限定的な複数の実施形態によると、同じシーケンスの複数の後続の画像に関する1または複数の残余は、複数の後続の画像間の相関性を効果的に活用するよう、先行する画像の対応する複数の残余に基づきデコードされる。
本明細書に説明されている他の非限定的な実施形態において、信号プロセッサは、データストリームを受信し、それを3またはそれより多くのサブストリームへと分離するよう構成される。第1サブストリームは、第1デコード方法によりデコードされ、第1品質レベルの信号の表現が生成される。第2サブストリームは、第2のデコード方法によりデコードされ、デコーダが、第1品質レベルの信号の表現に基づき、(より高い)第2品質レベルの信号の表現を生成することを可能とする拡張データが生成される。第3サブストリームは、第3のデコード方法によりデコードされ、デコーダが、第2品質レベルの信号の表現に基づき、(より高い)第3品質レベルの信号の表現を生成することを可能とする拡張データが生成される。
更なる非限定的な複数の実施形態によると、データストリームは、MPEGトランスポートストリームとして編成され、(異なる複数の品質レベルに対応する)異なる複数のサブストリームの複数のパケットは、それらが異なるエレメンタリーサブストリームに属することを示す異なる複数のパケット識別子(PID)を有する。本明細書に説明されているように、第1PIDによりデータにタグ付けすることは、第1デコーダによるデコードのためのデータの複数の部分を示し、第2PIDによりデータにタグ付けすることは、第2デコーダによるデコードのためのデータの複数の部分を示し、第3PIDによりデータにタグ付けすることは、第3デコーダによるデコードのためのデータの複数の部分を示す、等である。一実施形態において、(より高い複数の品質レベルを再構成することを可能とする)複数の拡張サブストリームに関する複数のPIDは、それらが複数のレガシーデコーダにより無視されるように選択される。
更なる非限定的な複数の実施形態によると、データストリームは、HDMI(登録商標)データ送信として編成され、第1品質レベルに対応するサブストリームは、(HDMI(登録商標)フォーマットに従って送信される)非圧縮ビデオであり、拡張サブストリームデータはメタデータとして送信される。いくつかの非限定的な実施形態において、第2品質レベルは、第1品質レベルより高いフレームレートを有する。他の非限定的な実施形態において、第2品質レベルは、第1品質レベルより高い空間解像度を有する。非限定的な実施形態において、拡張データは、複数のブランキング期間に送信される(水平方向の各ブランキング期間におけるIsland Packetの最大データは448バイトであり、追加のデータのために合計約480Mbpsを残す。オーディオデータも複数のブランキング期間を用いるが、それらの大部分は拡張データのために利用可能である)。他の非限定的な複数の実施形態において、拡張データの送信は、Vendor−Specific InfoFrame(VSI)を介したメタデータ送信を活用する。
更なる非限定的な複数の実施形態によると、データストリームはDisplayPort送信として編成され、第1品質レベルに対応するサブストリームは、(DisplayPortフォーマットに従って送信される)非圧縮ビデオであり、拡張サブストリームデータはメタデータとして送信される。
更なる非限定的な複数の実施形態によると、データストリームはブルーレイ(登録商標)ディスクファイルとして編成され、第1品質レベルに対応するサブストリームは、従来のブルーレイ(登録商標)ディスクビデオとしてエンコードされ、拡張サブストリームデータは、メタデータとしてブルーレイ(登録商標)ディスクに含められる。
第1実施形態の異なる並べ替え
他の複数の実施形態によると、コンピュータプロセッサハードウェアはデータストリームを受信する。コンピュータプロセッサハードウェアは、受信されたデータストリームを、エンコードデータの複数の第1部分およびエンコードデータの複数の第2部分へとパースする。コンピュータプロセッサハードウェアは第1デコーダを実行して、エンコードデータの複数の第1部分を信号の第1表現へとデコードする。コンピュータプロセッサハードウェアは第2デコーダを実行して、エンコードデータの複数の第2部分を再構成データへとデコードする。再構成データは、信号の第1表現をどのように変更するかを指定する。コンピュータプロセッサハードウェアは、再構成データを信号の第1表現に適用して、信号の第2表現を生成する。
上記の第1の例示的実施形態は、以下のまた更なる複数の実施形態を生成するのに、以下の複数の特徴の1または複数の何れかと共に実施され得る。
例えば、一実施形態において、エンコードデータの複数の第1部分は、非限定的な複数の例として、MPEG(Moving Pictures Experts Group)2、h.264、VC1、VP8、VP9、またはh.265によってなど、MPEGまたはMPEGベースのフォーマットに従って、(コンピュータプロセッサハードウェアの第1デコーダを介し)デコードされる。エンコードデータの複数の第2部分から導出される再構成データは、階層的エンコードフォーマットに従って、(コンピュータプロセッサハードウェアの第2デコーダを介し)デコードされる。
また更なる複数の実施形態によると、エンコードデータの複数の第1部分は非圧縮ビデオデータを備え、再構成データは、エンコードデータの複数の第2部分から導出され、階層的エンコードフォーマットに従ってデコードされる。エンコードデータの複数の第2部分は圧縮データであり得ることに留意されたい。第2デコーダを実行することは、複数のアップサンプリング処理を圧縮データに適用して再構成データを生成することを含み得、適用される複数のアップサンプリング処理は、より低い解像度の複数の表示要素設定をより高い解像度の複数の表示要素設定に変換する。
また更なる複数の実施形態において、コンピュータプロセッサハードウェアは第1コンピュータプロセッサハードウェアである。システムは、第2コンピュータプロセッサハードウェア(第1デコーダを含み、第2デコーダを含まないレガシーデコーダなど)を含み得る。また第2コンピュータプロセッサハードウェアもデータストリームを受信する。第2コンピュータプロセッサハードウェアは、データストリームにおいて受信されたエンコードデータの複数の第1部分のみを、信号の第2の第1表現へとデコードを開始し、ディスプレイスクリーンでの信号の第2の第1表現の表示を開始する。
更なる例として、エンコードデータの複数の第1部分は、レガシーデコーダコンピュータプロセッサハードウェアと互換性のあるデコード方法に従って、(第1のタイプのデコーダを用いて)デコードされ得、データストリームは、エンコードデータの複数の第2部分がレガシーデコーダコンピュータプロセッサハードウェアにより用いられない(および/または無視される)よう編成される。レガシーデコーダコンピュータプロセッサハードウェアは、i)エンコードデータの複数の第1部分のみのデコードを開始し、ii)それぞれのディスプレイスクリーン上での信号の第1表現の表示を開始する。
コンピュータプロセッサハードウェアにより受信されるデータストリームは、(第1デコーダにより処理される)エンコードデータの複数の第1部分が非圧縮ビデオデータであり、(第2デコーダにより処理される)エンコードデータの複数の第2部分が圧縮データであるHDMI(登録商標)(High−Definition Multimedia Interface)信号であり得る。代替的に、コンピュータプロセッサハードウェアにより受信されるデータストリームは、エンコードデータの複数の第1部分が非圧縮ビデオデータであり、エンコードデータの複数の第2部分が圧縮データであるDisplayPortインタフェース上で受信され得る。
更なる非限定的な例示的実施形態によると、データストリームは、データ(MPEG(Moving Pictures Experts Group)エンコードデータなど)の複数の第1部分とデータの複数の第2部分とを含むMPEGトランスポートストリームであり得、複数の第1部分と複数の第2部分とは、異なる複数のパケット識別子(PID)番号により特徴付けられる。
更なる非限定的な例示的実施形態によると、データストリームは、ブルーレイ(登録商標)ディスク上で格納されるように、およびブルーレイ(登録商標)ディスクデコーダデバイスによりデコードされるように編成されたファイルであり得る。データの複数の第1部分は、従来のHDビデオデータとしてブルーレイ(登録商標)フォーマットに含められ、第1のエンコード法(例えば、h.264またはVC1などHDビデオデータに関する従来のブルーレイ(登録商標)コーデック)を用いてエンコードされ、他方、データの複数の第2部分はレガシーHDブルーレイ(登録商標)ディスクデコーダデバイスにより無視されるメタデータとしてブルーレイ(登録商標)フォーマットに含められ、第2エンコード法に従ってエンコードされる。
一実施形態において、(データストリームにおけるエンコードデータの受信された複数の部分により捉えられた)信号は複数の表示要素を含み、信号の第2表現は、信号の第1表現より高い品質レベルを有する。
また更なる複数の実施形態において、信号の第2表現は、信号の第1表現と同じ表示要素解像度を有し得る。第2デコーダを実行してエンコードデータの複数の第2部分をデコードすることは、エンコードデータの複数の第2部分により指定されるように第1品質レベルの第1残余データセットをデコードすることと、第1残余データセットを利用して、信号の第1表現を変更し、信号の第2表現を生成することと、信号の第2表現に少なくとも部分的に基づき、信号の第2表現の解像度より高い解像度(いくつかの実施形態において、空間解像度。他の複数の実施形態において、時間解像度。さらに他の複数の実施形態において、空間および時間解像度の両方)を有する信号の第3表現を生成することと、エンコードデータの複数の第2部分により指定されるように第2品質レベルの第2残余データセットをデコードすることと、第2残余データセットを利用して、信号の第3表現を変更し、信号の第4表現を生成することとを含み得る。
加えて、コンピュータプロセッサハードウェアは、信号の第4表現に基づき、信号の第4表現の解像度より高い解像度(ここでも、特定の非限定的な実施形態に従って、空間および/または時間のいずれか)を有する信号の第5表現を生成する処理と、エンコードデータの複数の第2部分により指定されるように第3品質レベルの第3残余データセットをデコードする処理と、第3残余データセットを利用して、信号の第5表現を変更し、信号の第6表現を生成する処理とを実行するよう構成され得る。 信号の第1表現はインターレースされたビデオ信号であり得、信号の第6表現はプログレッシブビデオ信号であり得る。
他の非限定的な複数の実施形態において、受信されたデータストリームは、2より多くの別個のデコード方法に従って2より多くのデコーダによりデコードされた、エンコードデータの2より多くの別個の部分を含む。非限定的な実施形態において、受信されたデータストリームは、エンコードデータの3つの部分を含む。エンコードデータの複数の第1部分は、第1デコーダによりデコードされ、信号の第1表現が生成される。信号の第2表現は、信号の第1表現と同じ表示要素解像度を有する。第2デコーダを実行してエンコードデータの複数の第2部分をデコードすることは、エンコードデータの複数の第2部分により指定されるように第1品質レベルの第1残余データセットをデコードすることと、第1残余データセットを利用して、信号の第1表現を変更し、信号の第2表現を生成することと、信号の第2表現に少なくとも部分的に基づき、信号の第2表現の解像度より高い解像度を有する信号の第3表現を生成することと、エンコードデータの複数の第2部分により指定されるように第2品質レベルの第2残余データセットをデコードすることと、第2残余データセットを利用して、信号の第3表現を変更し、信号の第4表現を生成することとを含み得る。加えて、コンピュータプロセッサハードウェアは、エンコードデータの第3部分により指定されるように第3残余データセットをデコードする処理と、第3残余データセットを利用して、信号の第4表現を変更し、信号の第5表現を生成する処理と、信号の第5表現に基づき、信号の第5表現の解像度より高い解像度を有する信号の第6表現を生成する処理と、エンコードデータの複数の第3部分により指定されるように第4品質レベルの第4残余データセットをデコードする処理と、第4残余データセットを利用して、信号の第6表現を変更し、信号の第7表現を生成する処理と、信号の第7表現に基づき、信号の第7表現の解像度より高い解像度を有する信号の第8表現を生成する処理と、エンコードデータの複数の第3部分により指定されるように第5品質レベルの第5残余データセットをデコードする処理と、第5残余データセットを利用して、信号の第8表現を変更し、信号の第9表現を生成する処理とを実行するよう構成される。非限定的な実施形態において、信号の第1表現はインターレースされたSDビデオ信号であり、信号の第4表現は、インターレースされたHDビデオ信号であり、信号の第9表現は、プログレッシブUltraHDビデオ信号である。
第2デコーダを実行してエンコードデータの複数の第2部分をデコードすることは、エンコードデータの複数の第2部分により指定される複数のアップサンプリング処理を特定する処理と、複数のアップサンプリング処理を信号の第2表現に適用して、信号の第2表現の表示要素解像度より実質的に高い表示要素解像度を有する信号の第3表現を生成する処理とをさらに含み得る。いくつかの非限定的な実施形態において、より高い表示要素解像度はビデオ信号の各フィールドまたはフレームに関するより高い空間解像度(鉛直方向、水平方向、または鉛直方向および水平方向の両方)である。他の非限定的な複数の実施形態において、より高い表示要素解像度はより高い時間解像度(すなわち、より高いフレームレートのビデオ信号)である。さらに他の非限定的な複数の実施形態において、より高い表示要素解像度は、信号におけるより高い空間およびより高い時間解像度の両方である。
更なる複数の実施形態によると、エンコードデータの複数の第2部分により指定される複数のアップサンプリング処理を特定することは、アップサンプリングカーネルの特定の複数の係数に対応する複数のパラメータをデコードすることと、デコードされた複数のパラメータに少なくとも部分的に基づき、信号の第3表現の一部に対応するアップサンプリングカーネルを生成することと、信号の第3表現の一部を生成するために、アップサンプリングカーネルを信号の第2表現の一部に適用することとを含む。一実施形態において、信号の第3表現は、より実質的に高い表示要素解像度の信号の予備(または予測)表現である。第2デコーダを実行することは、再構成データを利用して、より実質的に高い表示要素解像度の信号の予備表現を変更することをさらに含み得、信号の変更された予備表現は、信号の予備表現と同じ解像度を有するが、より高い品質レベルを有する。したがって、エンコードデータの複数の第1部分により指定されるように、受信されたエンコードデータは、レガシーデコード方法(MPEG−2、MPEG−4、DivX、AVC/h.264、SVC、HEVC/h.265、VC1、VP8、VP9等など。簡潔にするために「MPEGデータ」)に従ってデコードされ得、または他の非限定的な複数の実施形態において、それは、非圧縮ビデオデータとして(例えば、HDMI(登録商標)、DisplayPort、またはDVI送信フォーマットに従って)デコードされさえし得る。データストリームにおける拡張データ(エンコードデータの複数の第2部分など)はデコードされ得、MPEGデータから導出される信号の表現をより高品質レベルの再生信号へと変換するのに用いられ得る。本明細書に説明されているように、拡張データは、非MPEGエンコードフォーマットに従ってエンコードされる。
また更なる複数の実施形態によると、受信されたデータストリームにおけるエンコードデータの複数の第2部分から、第2デコーダは、階層的フォーマットに従ってエンコードされた再構成データを生成する。エンコードデータの複数の第2部分から得られる、または導出される再構成データは、残余データを含み得る。例えば、一実施形態において、再構成データは少なくとも第1残余データセットおよび第2残余データセットを含み、第1残余データセットは、信号の表現をどのように第1表示要素解像度で変更するかを指定し、第2残余データセットは、信号の表現をどのように第2表示要素解像度で変更するかを指定する。第2表示要素解像度は、第1表示要素解像度より高い。非限定的な実施形態において、第2残余データセットは、第1残余データセットに少なくとも部分的に基づきデコードされる。
コンピュータプロセッサハードウェアは、第1残余データセットを利用して、信号の第1表現を変更し、信号の第2表現を生成する更なる処理と、信号の第2表現に基づき、第2表示要素解像度の信号の予備表現である信号の第3表現を生成する更なる処理と、第2残余データセットを利用して、信号の第3表現を変更し、第2表示要素解像度の信号の第4表現を生成する更なる処理とを実行するよう構成され得る。
コンピュータプロセッサハードウェアは、変換された残余データから第2残余データセットを生成するよう構成され得る。一実施形態において、コンピュータプロセッサハードウェアはさらに、エンコードデータの複数の第2部分を、量子化され変換された残余データへとデコードする処理と、量子化された残余データを逆量子化して、変換された残余データを生成する処理と、変換された残余データと、信号の第2表現と、信号の第3表現とを処理して、第2残余データセットを再生成する処理と、再生成された第2残余データセットを信号の第3表現に適用して、信号の第4表現を生成する処理を実行する。
いくつかの非限定的な実施形態において、量子化され変換された残余データは、エンコードデータの複数の第2部分により指定されるシンボル確率分布に従って、スタティックレンジエントロピーデコード法に従ってエンコードデータの複数の第2部分からデコードされる。他の非限定的な複数の実施形態において、スタティックレンジエントロピーデコード法に従ってデコードされた、量子化され変換された残余データは、第1残余データセットにより指定されるように信号のより低い品質レベルから継承される複数のシンボルと組み合わせられる。さらに他の非限定的な複数の実施形態において、量子化され変換された残余データは、ランレングス(RLE)デコード方法と組み合わせられたハフマンエントロピーデコード法に従って、エンコードデータの複数の第2部分からデコードされる。
更なる複数の実施形態において、コンピュータプロセッサハードウェアおよびそれぞれのデコードにより再生成される信号は、ビデオ信号である。残余データセットは、信号の複数の画像(フィールドまたはフレーム)に亘る時間的継承に従って生成され得、すなわち、任意の画像に関する1または複数の残余は、異なる画像に関してデコードされた残余データにより指定されるようにデコードされ得る。そのような場合、コンピュータプロセッサハードウェアはさらに、異なるフィールド/フレームに関してデコードされた残余データに少なくとも部分的に基づき、フィールド/フレームに関する残余データをデコードする複数の処理を実行する。
エンコードデータの複数の第1部分は、データストリームにおけるエンコードデータの複数の第2部分の間でインターリーブされ得る。データストリームをエンコードデータの複数の第1部分およびエンコードデータの複数の第2部分へとパースすることは、データストリームにおける複数のタグ(1または複数のPIDまたはパケット識別子など)を利用して、データの複数の第1部分とデータの複数の第2部分とを特定することを含み得る。データストリームは、エンコードデータの複数の第1部分(レガシーデコーダデバイスによりデコード可能であるMPEGコーデックによりエンコードされたデータなど)に第1パケット識別子(PID)が割り当てられ、エンコードデータの複数の第2部分(層ベースの階層的方法によりエンコードされたエンコードデータなど)に第2パケット識別子(PID)が割り当てられるMPEGトランスポートストリームとして編成され得る。前に説明されているように、コンピュータプロセッサハードウェアは第1デコーダを実行して、エンコードデータの複数の第1部分を信号の第1表現へとデコードする。コンピュータプロセッサハードウェアは第2デコーダを実行して、エンコードデータの複数の第2部分を再構成データへとデコードする。
エンコードデータの複数の第1部分は、任意の適切なフォーマットで、すなわち、任意の適切なコーデックを用いてエンコードされ得る。非限定的な例示的実施形態によると、エンコードデータの複数の第1部分は、MPEG(Moving Pictures Experts Group)h.264エンコードフォーマットに従ってエンコードされ得、エンコードデータの複数の第1部分は、MPEG2(Moving Pictures Experts Group 2)エンコードフォーマットに従ってエンコードされ得る、などである。
いくつかの非限定的な実施形態によると、エンコードされ再生成される信号は、複数の表示要素の複数のフレーム(またはインターレースされたビデオ信号に関しては、複数のフィールド)を含むビデオ信号である。簡潔にするために、ビデオ信号の複数のタイムサンプルを示すのに「フレーム」および「フィールド」という用語が交換可能に用いられるであろう。
いくつかの非限定的な実施形態によると、信号を表現するために、コンピュータプロセッサハードウェアはさらに、エンコードデータの複数の第1部分とエンコードデータの複数の第2部分との間の複数のタイミング関連性を特定する複数の処理を実行するよう構成され得、複数のタイミング関連性は、信号の第1表現における複数の表示要素の複数のフレームのどれに再構成データが関連するかを示す。再構成データを信号の第1表現に適用して信号の第2表現を生成することは、複数のタイミング関連性に従って再構成データを利用して、信号の第1表現を信号の第2表現へと時間的にアップサンプリングすることを含み得、信号の第2表現は、複数の表示要素のフレームを信号の第1表現より多く含む。したがって、複数のタイミング関連性は、コンピュータプロセッサハードウェアが、エンコードデータの複数の第1部分とエンコードデータの複数の第2部分との間の関係を特定することを可能とし、さらにデータストリームが、エンコードデータの複数の第1部分から導出された信号の表現を、データストリームにおけるエンコードデータの複数の第2部分を用いてより高い品質レベルの信号へと変換することを可能とする。
また更なる複数の実施形態によると、信号は、信号の第1表現が第1フレームレートを有し、信号の第2表現が第1フレームレートより高い第2フレームレートを有するビデオ信号である。コンピュータプロセッサハードウェアはさらに、第1フレームレートの信号の第1表現に基づき、および再構成データにより指定されるように第2フレームレートの信号の予備表現を生成する処理と、再構成データにより指定されるように残余データセットを生成する処理と、残余データセットを第2フレームレートの信号の予備表現に適用して、信号の第2表現を生成する処理とを実行する。
更なる複数の実施形態において、再構成データを適用することは、再構成データにより指定されるように、信号の第2表現を、信号の第2表現より高い表示要素解像度を有する信号の第3表現へと空間的にアップサンプリングすることを有する。
また更なる複数の実施形態において、再構成データは、複数の表示要素解像度に従ってエンコードされた残余データの階層を含む。第2デコーダは、複数のアップサンプリング処理をエンコードデータの複数の第2部分に適用して、残余データの階層を再生成する。残余データの階層は、信号のより高い複数の品質レベルを導出するのに用いられるデータを圧縮する固有のやり方である。
前に説明されているように、信号はビデオ信号であり得る。残余データの階層は、信号における複数の表示要素の複数のフレームに亘る複数の残余の時間的継承に従って生成され得る。コンピュータプロセッサハードウェアは、残余データの階層の任意のレベルで、第2フレーム/フィールドに関してデコードされた残余データに少なくとも部分的に基づき、第1フレーム/フィールドに関して残余データをデコードする。第2フレーム/フィールドは、第1フレーム/フィールドが関連する時点とは異なる時点に対応する。
更なる非限定的な実施形態において、残余データの階層は、信号における複数の表示要素の任意のフレーム/フィールド内の複数の残余の空間的継承に従って生成される。コンピュータプロセッサハードウェアは、残余データの階層における任意の品質レベルで、残余データの階層におけるより低い品質レベルに関してデコードされた再構成データのみに基づき、任意のフレーム/フィールドの一部に関して残余データをデコードする。
更なる非限定的な実施形態において、残余データの階層は、信号における複数の表示要素の任意のフレーム/フィールド内の複数の残余の空間的継承、および異なる複数のフレーム/フィールドに亘る残余データの時間的継承の両方に従って生成される。コンピュータプロセッサハードウェアは、残余データの階層における任意の品質レベルで、残余データの階層におけるより低い品質レベルに関してデコードされた再構成データ、および残余データ基準セットのみに基づき、任意のフレーム/フィールドの一部に関して残余データをデコードする。
また更なる複数の実施形態において、コンピュータプロセッサハードウェアはさらに、残余データ基本セットから第1残余データセットを導出する処理と、残余データ基本セットから、第1残余データセットとは異なる第2残余データセットを導出する処理と、第1残余データセットを、信号の第1表現の第1タイムサンプルに適用して、信号の第2表現における対応する第1タイムサンプルを生成する処理と、第2残余データセットを、信号の第1表現の第2タイムサンプルに適用して、信号の第2表現における対応する第2タイムサンプルを生成する処理とを実行する。信号の第2表現に基づき、コンピュータプロセッサハードウェアは、より実質的に高い表示要素解像度の信号の予備表現である信号の第3表現を生成する。コンピュータプロセッサハードウェアはさらに、第2残余データ基本セットをデコードし、第2残余データ基本セットから第3残余データセットを導出し、第2残余データ基本セットから、第3残余データセットとは異なる第4残余データセットを導出し、第3残余データセットを、信号の第3表現の第1タイムサンプルに適用して、信号の第4表現における対応する第1タイムサンプルを生成し、第4残余データセットを、信号の第3表現の第2タイムサンプルに適用して、第4残余データセットの信号の第4表現における対応する第2タイムサンプルを生成する。
さらに追加の複数の実施形態によると、コンピュータプロセッサハードウェアは、エンコードデータの複数の第2部分を変換された残余データへとデコードし、変換された残余データを処理して、量子化された残余データを生成し、量子化された残余データを逆量子化して、残余データを再生成し、再生成された残余データを信号の第1表現に適用して信号の第2表現を生成する。
更なる非限定的な例によると、コンピュータプロセッサハードウェアは、エンコードデータの複数の第2部分を第1品質レベルの残余データへとデコードし、第1品質レベルの残余データに基づき、第1品質レベルより高い第2品質レベルの残余データの予備表現を生成し、エンコードデータの複数の第2部分を、量子化され変換された残余データへとデコードし、量子化され変換された残余データを逆量子化して、変換された残余データを生成し、変換された残余データと、第1品質レベルの残余データと、第2品質レベルの残余データの予備表現との組み合わせを処理して、第2品質レベルの残余データを再生成し、第2品質レベルの再生成された残余データを信号の第1表現に適用して、信号の第2表現を生成するよう構成され得る。
加えて、コンピュータプロセッサハードウェアは、信号の第2表現に基づき、より実質的に高い表示要素解像度の信号の予備表現である信号の第3表現を生成し、エンコードデータの複数の第2部分を新たな変換された残余データセットへとデコードし、新たな変換された残余データセットと、信号の第2表現と、信号の第3表現との組み合わせを処理して、新たな残余データセットを生成し、新たな残余データセットを信号の第3表現に適用して、信号の第4表現を生成するよう構成され得る。
更なる複数の実施形態において、コンピュータプロセッサハードウェアは、アップサンプリング処理を信号の第2表現に適用して、信号の第2表現より実質的に高い表示要素解像度を有する信号の第3表現を生成するよう構成され得る。アップサンプリング処理の適用は、信号の第2表現における複数の表示要素に関する複数の設定に基づき、信号の第3表現における表示要素に関する複数の設定を導出することを含み得る。
一実施形態において、前に説明されているように、再構成データは残余データを含む。コンピュータプロセッサハードウェアは、残余データを信号の第3表現における複数の表示要素に適用して、信号の第4表現を生成する。適用される残余データは、信号の第3表現における複数の表示要素の複数の設定を変更して、信号の第4表現における対応する複数の表示要素に関する複数の設定を生成する。加えて、第2デコーダを実行してエンコードデータの複数の第2部分を残余データへとデコードするとき、第2デコーダは、結果を、任意の確率分布に従って生成される実質的にランダムな数と組み合わせることにより残余データにおける少なくとも1つの残余をデコードする。
また更なる複数の実施形態によると、コンピュータプロセッサハードウェアは、ハフマンエントロピーデコードおよび/またはランレングス(RLE)デコード方法を介し、エンコードデータの複数の第2部分の少なくともいくつかをデコードする。
また更なる複数の実施形態において、コンピュータプロセッサハードウェアは、再構成データにおいて指定されるシンボル確率分布に従って、スタティックレンジエントロピーデコーダを介しエンコードデータをデコードする。他の実施形態によると、コンピュータプロセッサハードウェアは、再構成データにおいて指定されるシンボル確率分布に従って静的算術エントロピーデコーダを介しエンコードデータをデコードする。
第2の実施形態の異なる並べ替え
更なる複数の実施形態によると、コンピュータプロセッサハードウェアはデータストリームを受信する。コンピュータプロセッサハードウェアは、データストリームを、エンコードデータの複数の第1部分、エンコードデータの複数の第2部分、およびエンコードデータの複数の第3部分へとパースする。コンピュータプロセッサハードウェアは第1デコーダを実行して、エンコードデータの複数の第1部分を第1品質レベルの信号の第1表現へとデコードする。コンピュータプロセッサハードウェアは第2デコーダを実行して、エンコードデータの複数の第2部分を、信号の第1表現を第1品質レベルより高い第2品質レベルの信号の第2表現へとどのように変更するかを指定する第1再構成データへとデコードする。コンピュータプロセッサハードウェアは、第1再構成データと信号の第1表現とを処理して、第2品質レベルの信号の第2表現を生成する。コンピュータプロセッサハードウェアは第3デコーダを実行して、エンコードデータの複数の第3部分を第2再構成データへとデコードする。第2再構成データは、信号の第2表現を、第3品質レベルの信号の第3表現へとどのように変更するかを指定する。第3品質レベルは、第2品質レベルより高い。コンピュータプロセッサハードウェアは、第2再構成データと信号の第2表現とを処理して、第3品質レベルの信号の第3表現を生成する。
この第2の例示的実施形態は、以下のまた更なる複数の実施形態、または本明細書に説明されている他の複数の実施形態を生成するのに、以下の複数の特徴の1または複数の何れかと共に実施され得る。
例えば、非限定的な一実施形態において、エンコードデータの複数の第1部分は、MPEG(Moving Pictures Experts Group)2、h.264、VC1、またはh.265などMPEGフォーマットに従ってデコードされ得る。コンピュータプロセッサハードウェアは、エンコードデータの複数の第2部分から第1再構成データを導出する。コンピュータプロセッサハードウェアは、エンコードデータの複数の第3部分から第2再構成データを導出する。エンコードデータの複数の第2部分およびエンコードデータの複数の第3部分の両方が、1または複数の階層的エンコードフォーマットに従ってエンコードされた圧縮ビデオデータであり得る。
第3の実施形態の異なる並べ替え
更なる複数の実施形態によると、コンピュータプロセッサハードウェアはデータストリームを受信する。コンピュータプロセッサハードウェアは、受信されたデータストリームを、既にデコードされたデータとまだデコードされていないエンコードデータの複数の部分へとパースする。デコードデータは、信号の第1表現と関連付けられた複数の設定を指定する。一実施形態において、コンピュータプロセッサハードウェアはデコードデータ(非圧縮データなど)を利用して、信号の第1表現を生成する。コンピュータプロセッサハードウェアはデコーダを実行して、エンコードデータ(圧縮データなど)を再構成データへとデコードする。再構成データは、信号の第1表現をどのように変更するかを指定する。コンピュータプロセッサハードウェアは、再構成データを信号の第1表現に適用して、信号の第2表現を生成する。
この例示的実施形態は、以下のまた更なる複数の非限定的な実施形態を生成するのに、以下の複数の特徴の1または複数の何れかと共に実施され得る。
例えば、他の複数の実施形態によると、データストリームにおけるエンコードデータは、データが、それぞれの圧縮階層における異なる複数の解像度に従ってエンコードされる階層的エンコードフォーマットに従ってエンコードされ得る。コンピュータプロセッサハードウェアは、階層における複数のより高いレベルの残余データを生成する複数のアップサンプリング処理を適用する。一実施形態において、複数のアップサンプリング処理は、より低い解像度の複数の表示要素設定を、信号の予備表現を変更するのに続いて用いられるより高い解像度の複数の表示要素設定に変換する。一実施形態において、信号の予備表現を変更するのに続いて用いられるより高い解像度の残余データを生成するために、アップサンプリングされた複数の要素設定(すなわち、より高い品質レベルの予備的な残余データセット)は、再構成データからデコードされた相対的な残余データと組み合わせられる。
更なる複数の実施形態によると、信号は、複数の表示要素のための複数の設定を指定するビデオ信号であり、信号の第2表現は、信号の第1表現より高い品質レベルを有し、信号の第2表現は、信号の第1表現と同じ表示要素解像度を有する。
デコーダを実行してエンコードデータをデコードすることは、エンコードデータにより指定される複数のアップサンプリング処理を特定することと、複数のアップサンプリング処理を信号の第2表現に適用して、信号の第2表現より実質的に高い表示要素解像度(時間および/または空間)を有する信号の第3表現を生成することとを含み得る。いくつかの非限定的な実施形態において、信号の第3表現は、同じ時間的表示要素解像度を有し、信号の第2表現より実質的に高い空間的表示要素解像度を有する。他の非限定的な複数の実施形態において、信号の第3表現は、より実質的に高い時間的表示要素解像度を有し(すなわち、より高いフレームレートを有し)、信号の第2表現と同じ空間的表示要素解像度を有する。さらに他の複数の非限定的な実施形態において、信号の第3表現は、信号の第2表現より実質的に高い時間的および空間的表示要素解像度を有する。
また更なる複数の実施形態によると、信号の第3表現は、より実質的に高い表示要素解像度の信号の予備表現であり得る。デコーダを実行することは、再構成データを利用して、より実質的に高い表示要素解像度の信号の予備表現を変更することをさらに含み得、信号の変更された予備表現は信号の予備表現より高い品質レベルを有し得る。
本明細書における複数の実施形態は、ソフトウェアまたはハードウェアで実施され得、または、ソフトウェアおよびハードウェアの組み合わせを用いて実施され得、本明細書に開示されている複数の方法の処理のいずれかまたは全てを実行および/またはサポートする1または複数のコンピュータ化されたデバイス、ルータ、ネットワーク、ワークステーション、ハンドヘルドまたはラップトップコンピュータ、タブレット、携帯電話、ゲームコンソール、セットトップボックス、ビデオ会議機器、ビデオ再生機等の構成を含み得ることに留意されたい。言い換えると、1または複数のコンピュータ化されたデバイスまたはプロセッサは、異なる複数の実施形態を実行するよう本明細書に説明されているように動作するようプログラムおよび/または構成され得る。
上記にて説明されている複数の技術に加えて、本明細書におけるさらに他の複数の実施形態は、上記にて要約され、以下に詳細に開示される複数のステップおよび処理を実行する複数のソフトウェアプログラムを含む。1つのそのような実施形態は、コンピュータプログラムロジック、命令等を含むコンピュータ可読ハードウェアストレージリソース(すなわち、非一時的コンピュータ可読媒体)を備える。当該コンピュータプログラムロジック、命令等は、当該コンピュータ可読ハードウェアストレージリソース上でエンコードされ、プロセッサおよび対応するメモリを有するコンピュータ化されたデバイスで実行されたときに、当該プロセッサを、本明細書に開示されている複数の処理の何れかを実行するようプログラムする、および/または当該プロセッサにそれらを実行させる。そのような構成は、光媒体(例えば、CD−ROM、DVD−ROM、またはブルーレイ(登録商標))、フラッシュメモリカード、フロッピー(登録商標)またはハードディスク、または1または複数のROMまたはRAMまたはPROMチップにファームウェアまたはマイクロコードなどのコンピュータ可読命令を格納可能な任意の他の媒体などコンピュータ可読媒体上で構成またはエンコードされたソフトウェア、コード、および/または他のデータ(例えば、データ構造)として、若しくは、特定用途向け集積回路(ASIC)として提供され得る。ソフトウェアまたはファームウェアまたは他のそのような複数の構成は、本明細書に説明されている複数の技術をコンピュータ化されたデバイスに実行させるよう当該コンピュータ化されたデバイスにインストールされ得る。
したがって、本開示の1つの特定の実施形態は、複数の信号処理オペレーションをサポートするための複数の命令が格納されたコンピュータ可読ハードウェア記憶媒体を含むコンピュータプログラムプロダクトを対象としている。コンピュータプロセッサハードウェアにより実行されたときに複数の命令は、システムのコンピュータプロセッサハードウェアに、
データストリームをエンコードデータの複数の第1部分およびエンコードデータの複数の第2部分へとパースする工程と、
第1デコーダを実行して、エンコードデータの複数の第1部分を信号の第1表現へとデコードする工程と、
第2デコーダを実行して、エンコードデータの複数の第2部分を、信号の第1表現をどのように変更するかを指定する再構成データへとデコードする工程と、
再構成データを信号の第1表現に適用して信号の第2表現を生成する工程と
を実行させる。
本開示の他の実施形態は、複数の信号処理オペレーションをサポートするための複数の命令が格納されたコンピュータ可読ハードウェア記憶媒体を含むコンピュータプログラムプロダクトを対象としている。コンピュータプロセッサハードウェアにより実行されたときに複数の命令は、システムのコンピュータプロセッサハードウェアに、
データストリームを、エンコードデータの複数の第1部分、エンコードデータの複数の第2部分、およびエンコードデータの複数の第3部分へとパースする工程と、
第1デコーダを実行して、エンコードデータの複数の第1部分を、第1品質レベルの信号の第1表現へとデコードする工程と、
第2デコーダを実行して、エンコードデータの複数の第2部分を、信号の第1表現をどのようにして、第1品質レベルより高い第2品質レベルの信号の第2表現へと変更するかを指定する第1再構成データへとデコードする工程と、
第1再構成データと信号の第1表現とを処理して、第2品質レベルの信号の第2表現を生成する工程と、
第3デコーダを実行して、エンコードデータの複数の第3部分を、信号の第2表現をどのようにして、第2品質レベルより高い第3品質レベルの信号の第3表現へと変更するかを指定する第2再構成データへとデコードする工程と、
第2再構成データと、信号の第2表現とを処理して、第3品質レベルの信号の第3表現を生成する工程と
を実行させる。
本開示の他の実施形態は、複数の信号処理オペレーションをサポートするための複数の命令が格納されたコンピュータ可読ハードウェア記憶媒体を含むコンピュータプログラムプロダクトを対象としている。コンピュータプロセッサハードウェアにより実行されたときに複数の命令は、システムのコンピュータプロセッサハードウェアに、
受信されたデータストリームを、信号の第1表現と関連付けられた複数の設定を指定するデコードデータおよびエンコードデータへとパースする工程と、
デコードデータを利用して、信号の第1表現を生成する工程と、
デコーダを実行して、エンコードデータを、信号の第1表現をどのように変更するかを指定する再構成データへとデコードする工程と、
再構成データを、信号の第1表現に適用して、信号の第2表現を生成する工程と
を実行させる。
これらのステップの順序は、明確とするべく追加されている。これらのステップは、任意の適切な順番で実行され得る。
本開示の他の複数の実施形態は、上記にて要約され、以下に詳細に開示されている方法の実施形態の複数のステップおよび処理の何れかを実行するソフトウェアプログラム、ファームウェア、および/またはそれぞれのハードウェアを含む。
また、本明細書に説明されているシステム、方法、装置、コンピュータ可読記憶媒体上の命令等は、プロセッサ内、またはオペレーティングシステム内、またはソフトウェアアプリケーション内等などで厳密にソフトウェアプログラムとして、ソフトウェア、ファームウェア、および/またはハードウェアのハイブリッドとして、若しくは、単独でハードウェアとして具現化され得ることが理解される。
上記にて説明したように、本明細書における複数の技術は、複数の信号を処理し、エンコードデータの複数のビットストリームを生成する、またはエンコードデータの複数のビットストリームを処理し、複数の信号の複数の表現を生成するソフトウェア、ファームウェア、および/またはハードウェア用途での使用によく適している。しかし、本明細書における複数の実施形態はそのような複数の用途での使用に限定されず、本明細書で説明されている複数の技術は他の複数の用途にも同様によく適していることに留意すべきである。
加えて、本明細書における複数の異なる特徴、技術、構成等のそれぞれが本開示の複数の異なる箇所において説明されるかもしれないが、それら概念のそれぞれは、互いに独立して、または、互いに組み合わせて実行され得ることが意図されていることに留意されたい。したがって、本明細書で説明される1または複数の本願発明、実施形態等は、多くの異なるやり方で具現化されること、および見ることが出来る。
また、本明細書における複数の実施形態の予備的な説明は、本開示の、または特許請求されている本願発明のあらゆる実施形態、および/または、増分的に新規の態様を特定しているのではないことに留意されたい。代わりに、この簡潔な説明は、一般的な実施形態、および従来技術に対して新規性を有する対応する点のみを提示している。発明の追加の複数の詳細および/または可能な考え方(並べ替え)に関して、読者には、以下にさらに説明されている本開示の詳細な説明のセクション、および対応する複数の図面を参照されたい。
本明細書に示されている複数の方法は、音声信号、マルチチャネル音声信号、ピクチャ、2次元画像、ビデオ信号、マルチビュービデオ信号、3Dビデオ信号、ボリューム信号、ボリュームビデオ信号、医療用画像信号、4つよりも多くの次元の信号等を含むがこれらに限定されない任意のタイプの多次元信号に適している。
簡潔にするために、説明に沿って示されている複数の実施形態は、ビデオシーケンス、すなわち、一連の2D画像(概して、「フレーム」、またはインターレースされたビデオ信号の場合には「フィールド」と呼ばれる。これら用語は本願において実質的に交換可能に用いられる)から成る時間ベースの信号のエンコードおよびデコードを使用するケースを通常採用している。(そのような非限定的な例の場合において典型的には「画素」と呼ばれる)各要素は、適切な色空間における複数の色設定のセット(例えば、YUV、RGB、HSV等)により特徴付けられる。2つの色度(UおよびV)平面は典型的には、輝度(Y)平面に関して算出された動き補償情報を活用するが、異なる複数の色平面(例えば、Y平面、およびUおよびV平面)はしばしば別々に、および(人の目の、色度情報に対するより低い感度に起因して)しばしば異なる複数の解像度でエンコードされる。
本明細書に示されている複数の方法および実施形態は、互いに、および/または他の複数の方法と関連して用いられ得る。本明細書に示されている好ましい複数の実施形態の多くは、マルチスケールデコード(例えば、非限定的な例として、同じTV(テレビ)チャネルのSD(標準解像度)およびHD(高解像度)バージョンを単一のデータストリームに含めること)と、効率的な圧縮(すなわち最少のビット量を用いて信号の適切な表現のエンコード)とを達成することを目標として複数の技術およびアルゴリズムを説明する。このことも非限定的な例である。他の非限定的な複数の実施形態は、処理能力の消費の低減、エネルギー効率性、CPUの発熱の低減、並列処理アーキテクチャの使用等などの異なる複数の目的を達成する。
図1Aは、本明細書における複数の実施形態に係るエンコードおよびデコードシステムを図示する非限定的な例示的な図である。
エンコーダ110は、信号100を受信し、それをデータストリーム115へとエンコードする。デコーダ120は、データストリーム115を受信し、再構成信号150を生成する。非限定的な実施形態において、信号100および信号150はビデオ信号であり、それぞれが、それぞれの一連の画像100−1、100−2、・・・100−n、および150−1、150−1、150−2、・・・150−nを備える。信号150の各画像150−iは、信号100のそれぞれの元の画像100−iの再構成表現である。例えば、画像150−1は画像100−1の再構成であり、画像150−2は元の画像100−2の再構成である、などである。
図1Bは、本明細書における複数の実施形態に係る、マルチスケールエンコードおよびデコードシステムを図示する非限定的な例示的な図である。
本例示的実施形態において、コンピュータプロセッサハードウェア106は、デコーダ120とレガシーデコーダ130とを含む。
エンコーダ110は信号100を受信し、それをハイブリッドマルチスケールデータストリーム115へとエンコードする。レガシーデコーダ130はデータストリーム115を受信し、第1品質レベルの再構成SD信号140を生成する。デコーダ120はデータストリーム115を受信し、第1品質レベルより高い第2品質レベルの再構成HD信号150を生成する。
非限定的な実施形態において、第2品質レベルの信号150は、第1品質レベルより高い解像度(空間および/または時間)を有する。他の非限定的な実施形態において、データストリーム115の一部をデコードするために、レガシーデコーダ130は、MPEGベースの複数のデコード技術(例えば、MPEG2、h.264等)を活用する。他の非限定的な実施形態において、デコーダ120は、再構成HD信号150を生成するための基準として、再構成SD信号140を生成する。言い換えるとコンピュータプロセッサハードウェア106は、再構成HD信号150を生成するための基準として、再構成SD信号140を用いるよう構成され得る。
一実施形態において、データストリーム115が備える情報は、レガシーデコーダ130により無視され、デコーダ120によりデコードされ、デコーダ120が、再構成SD信号140に基づき、再構成HD信号150を生成することを可能とする。非限定的な実施形態において、信号150の第2品質レベルは、任意の倍率で第1品質レベルの信号140の1または複数の空間次元をアップサンプリングすることにより得られる解像度を有する。
非限定的な例示的実施形態において、TVセットトップボックスのデコード信号プロセッサは、データストリーム115がMPEGトランスポートストリームの形態で受信されたブロードキャスト信号に対応する、図1Bに示されている方法を実装するようプログラムされる。前に説明されているように、および以下にさらに説明されているように、データストリーム115は、レガシーデコーダ130によりデコードされて再構成SD信号140を生成するためのエンコードデータの複数の第1部分と、デコーダ120によるデコードのためのエンコードデータの複数の第2部分(拡張データ)とを含む。一実施形態において、拡張データは、再構成SD信号140に基づき、再構成HD信号150を生成するようデコーダ120により用いられる情報に対応する。一実施形態において、再構成HD信号150を生成するのに用いられるデータストリーム115におけるデータは、再構成SD信号140に対応するメインエレメンタリーストリーム(main elementary stream)のパケット識別子(PID)とは異なるトランスポートストリームPIDにより特徴付けられる。言い換えると、一実施形態において、レガシーデコーダ130によりデコードされて信号140を再生成するエンコードデータの複数の第1部分は、第1固有識別子値(第1PIDなど)によりタグ付けされ、デコーダ120によりデコードされて信号150を生成することになるエンコードデータの複数の第2部分は、第2固有識別子値(第2PIDなど)によりタグ付けされる。
複数の異なるタイプのデコーダデバイス(例えば、非限定的な例としてセットトップボックス)が、データストリーム115を受信するよう構成され得る。ネットワーク環境における1または複数のデコーダデバイスの第1セットは、レガシーデコーダ130のみを含み得る。そのような場合、データストリーム115を受信する複数のデコーダデバイスは、エンコードデータの複数の第1部分のみをデコードして、それぞれのディスプレイスクリーン上での表示のために再構成SD信号140を生成可能である。対応するコンピュータプロセッサハードウェアは、データストリームにおいて受信されたエンコードデータの複数の第1部分のみの、信号の第1表現へのデコードを開始する。言い換えると、エンコードデータの複数の第2部分は、レガシーデコーダ130により用いられない。コンピュータプロセッサハードウェア(例えば、セットトップボックス)はその後、ディスプレイスクリーン上での信号の第1表現の表示を開始する。したがって、複数のレガシーデコーダは、データストリーム115を受信し、より高い品質レベル(HD)ではなくSDなどのより低い品質レベルであったとしても信号の表現を表示することが依然として可能である。
デコーダ120を含むアップグレードされた複数のデコーダデバイスは、データストリーム115におけるエンコードデータの複数の第2部分に加えて、エンコードデータの複数の第1部分をデコードして再構成HD信号150を再生成する能力を有する。このやり方で、複数のレガシーセットトップボックス、およびそれぞれの複数のデコーダは、同じデータストリーム115を受信するが、単に拡張データ(エンコードデータの複数の第2部分)は無視し、第1品質レベルまでの信号(再構成SD信号140など)をデコードする。他の非限定的な複数の実施形態によると、エンコードデータの複数の第1部分とエンコードデータの複数の第2部分とを備えるハイブリッドマルチスケールデータストリームは、エンコードデータの複数の第2部分(拡張データ)がメタデータとして含められる適切なブルーレイ(登録商標)ビデオフォーマットに従ってブルーレイ(登録商標)ディスクに格納される。複数のレガシーブルーレイ(登録商標)デコーダは、拡張データを無視し、エンコードデータの複数の第1部分を、第1品質レベル(フルHDなど)のビデオ信号へとデコードする。アップグレードされた複数のUltraHDブルーレイ(登録商標)デコーダは、(より高い)第2品質レベル(UltraHDなど)のビデオ信号をデコードする基準として第1品質レベルのビデオ信号を用いて、エンコードデータの複数の第1部分およびエンコードデータの複数の第2部分の両方をデコードする。
図1Cは、本明細書における複数の実施形態に係る、複数の拡張レイヤーを備えるマルチスケールエンコードおよびデコードシステムを図示する非限定的な例示的な図である。
示されているように、コンピュータプロセッサハードウェア106のこの例示的な実施は、デコーダ130と、デコーダ120と、デコーダ125とを含む。
この非限定的な例示的実施形態において、エンコーダ110は、最も高い品質レベル(UltraHDp60など)の元の信号100を受信し、それをマルチスケールのデータストリーム115へとエンコードする。レガシーデコーダ130はデータストリーム115を受信し、第1品質レベル(インターレースされたSD576i60など)の再構成SD信号140を生成する。デコーダ120はデータストリーム115を受信し、第1品質レベルより高い第2品質レベル(インターレースされたフルHD1080i60など)の再構成HD信号150を生成する。デコーダ125はデータストリーム115を受信し、第2品質レベルより高い第3品質レベル(プログレッシブUltraHDp60など)の再構成UltraHD信号160を生成する。
更なる非限定的な実施形態において、データストリーム115をデコードするために、レガシーデコーダ130は、MPEGベースの複数のデコード技術(例えば、MPEG2、h.264等)を活用する。他の非限定的な実施形態において、デコーダ130は再構成SD信号140を生成し、デコーダ120は再構成HD信号150を生成するための基準として信号140を用い、デコーダ125はその後、再構成UltraHD信号160を生成するための基準として再構成HD信号150を用いる。
データストリーム115が備える情報は、レガシーデコーダ130により無視され、デコーダ120によりデコードされ、デコーダ120が、再構成SD信号140に基づき、再構成HD信号150を生成することを可能とする。またデータストリーム115が備える情報は、デコーダ120により無視され、デコーダ125によりデコードされ、デコーダ125が、再構成HD信号150に基づき、再構成UltraHD信号160を生成することを可能とする。
このやり方で、受信されたデータストリーム115におけるエンコードデータの複数の異なる部分が、再構成されたより低い品質レベルの信号を、再構成されたより高い品質レベルの信号へと変換するのに用いられる。
より具体的には、コンピュータプロセッサハードウェア106はデータストリーム115におけるエンコードデータの複数の第1部分を利用して、再構成SD信号140を生成する。デコーダ120は、データストリーム115におけるエンコードデータの複数の第2部分をデコードする。コンピュータプロセッサハードウェア106は、デコードされた、エンコードデータの複数の第2部分を利用して、再構成SD信号140を再構成HD信号150へと変換する。またさらに、デコーダ125は、データストリーム115におけるエンコードデータの複数の第3部分をデコードする。コンピュータプロセッサハードウェア106は、エンコードデータのデコードされた複数の第3部分を利用して、再構成HD信号150を、再構成ウルトラHD信号160へと変換する。
いくつかの非限定的な実施形態によると、データストリーム115におけるエンコードデータの複数の第2部分は、再構成SD信号140に少なくとも部分的に基づきコンピュータプロセッサハードウェア106によりデコードされ、データストリーム115におけるエンコードデータの複数の第3部分は、再構成HD信号150に少なくとも部分的に基づきコンピュータプロセッサハードウェア106によりデコードされる。
非限定的な実施形態において、最初に、再構成HD信号150を第1残余セットと組み合わせ、その後、2または他の適切な値であるバーティカルファクタにより信号をアップサンプリングし(インターレースされたHDをプログレッシブHDとし)、その後、生成された信号を第2残余セットと組み合わせ、その後、両方の空間次元に関して2である倍率によりアップサンプリングし(第3品質レベルの信号の予測または予備表現を生成し)、最後に、第3品質レベルの信号の予測表現を第3残余セットと組み合わせることにより、デコーダ125は第3品質レベルを生成する。
非限定的な例示的実施形態において、TVセットトップボックスのデコード信号プロセッサは、ISO/IEC 13818−1およびETSI EN 50083−9に係るMPEGトランスポートストリームの形態で受信されたブロードキャスト信号にデータストリーム115が対応する、図1Cに示されているデコードの方法を実装するようプログラムされる。再構成SD信号140に基づき、再構成HD信号150および再構成UltraHD160を生成するために、デコーダ120およびデコーダ125により用いられる情報に対応する拡張データ(エンコードデータの複数の第2部分およびエンコードデータの複数の第3部分等など)は、再構成SD信号140を生成するのに用いられるメインエレメンタリーストリーム(MPEGエンコードデータなどエンコードデータの複数の第1部分)のトランスポートストリームパケット識別子(PID)とは異なる固有のPIDによりそれぞれ特徴付けられる。このやり方で、レガシーセットトップボックスの(レガシーMPEGフォーマットによりエンコードされたデータをデコードするレガシーデコーダ130のみを含む)複数のデコーダは、同じデータストリーム115を受信するが、単に拡張データを無視し、第1品質レベル(SD品質レベル)までの信号をデコードする。
図1Cにおけるさらに追加の複数の実施形態によると、コンピュータプロセッサハードウェア106は、複数のタグを用いて、データストリーム115を、エンコードデータの複数の第1部分(第1タグ値によりタグ付けされたデータ)、エンコードデータの複数の第2部分(第2タグ値によりタグ付けされたデータ)、およびエンコードデータの複数の第3部分(第3タグ値によりタグ付けされたデータ)へとパースする。
コンピュータプロセッサハードウェア106は第1デコーダ130を実装して、エンコードデータの複数の第1部分を第1品質レベルの信号(再構成SD信号140など)の第1表現へとデコードする。コンピュータプロセッサハードウェア106は第2デコーダ120を実装して、エンコードデータの複数の第2部分を第1再構成データへとデコードする。第1再構成データは、信号140の第1表現を第2品質レベルの信号150の第2表現へとどのように変更するかを指定する。第2品質レベルは、第1品質レベルより高い。言い換えると第2品質レベルの信号は、信号の複数の表現が導出される元の信号により近い。コンピュータプロセッサハードウェア106は、第1再構成データと信号140の第1表現とを処理して、(より高い)第2品質レベルの信号150の第2表現を生成する。
一実施形態において、コンピュータプロセッサハードウェア106は第3デコーダ125を実装して、データストリーム115におけるエンコードデータの複数の第3部分を第2再構成データへとデコードする。第2再構成データは、信号150の第2表現を、第3品質レベルの信号160の第3表現へとどのように変更するかを指定する。第3品質レベルは第2品質レベルより高い。コンピュータプロセッサハードウェア106は第2再構成データと信号150の第2表現とを処理して、第3品質レベルの信号160の第3表現を生成する。
更なる非限定的な例によると、エンコードデータの複数の第1部分は、MPEG(Moving Pictures Experts Group)フォーマットに従ってデコードされ得る。第1再構成データは、データストリーム115におけるエンコードデータの複数の第2部分から導出され得る。第2再構成データは、データストリーム115におけるエンコードデータの複数の第3部分から導出され得る。データストリームにおけるエンコードデータの複数の第2部分およびエンコードデータの複数の第3部分の両方は、異なる複数のエンコードフォーマット、非限定的な例として複数の階層的圧縮データエンコードフォーマットなどに従って、それぞれの再構成データへとデコードされ得る。
図1Dは、本明細書における複数の実施形態に係る、拡張メタデータによるディスプレイデバイスへのマルチスケール上位互換送信を図示する非限定的な例示的な図である。
この例示的実施形態において、コンピュータプロセッサハードウェア106は、有効化されたデコーダおよびディスプレイデバイス121、並びにレガシーデコーダおよびディスプレイデバイス131を含む。
送信デバイス111は、最も高い品質レベル(UltraHDp120など)の元の信号100を受信し、任意の送信フォーマット(非限定的な例として、HDMI(登録商標)ケーブルなどのリンク上での送信のためのHDMI(登録商標)フォーマットなど)に従ってマルチスケールのデータストリーム115を生成する。レガシーデコーダおよびディスプレイデバイス131はデータストリーム115を受信し、第1品質レベル(UltraHDp60など)の再構成信号141を生成する。有効化されたデコーダおよびディスプレイデバイス121はデータストリーム115を受信し、第1品質レベルより高い第2品質レベル(UltraHDp120など)の再構成信号151を生成する。
非限定的な実施形態において、第1品質レベルのデータ(非圧縮データなど)は、複数のレガシーデバイスと互換性のある標準的な送信フォーマット(HDMI(登録商標)、DisplayPort、またはDVIなど)に従って非圧縮ビデオデータとしてデータストリーム116において送信される。データストリーム116において送信される圧縮データなどの拡張データは、エンコードメタデータとして送信され、第1品質レベルの再構成信号141に基づき第2品質レベルの再構成信号151を生成するために、有効化されたデコーダおよびディスプレイデバイス121によりデコードされる。
非限定的な例示的実施形態において、TVセットのデコード信号プロセッサは、データストリーム116が受信HDMI(登録商標)信号に対応する、図1Dにおいて示されている方法を実装するようプログラムされる。圧縮データなどのストリーム116における拡張データは、再構成信号141を基準として用いて再構成信号151を生成するのにデコーダ121により用いられる情報である。非限定的な一実施形態において、拡張データは、HDMI(登録商標)送信の水平方向のブランキング期間において複数のIsland Packetとして送信される(オーディオデータもブランキング期間を用いるが、ブランキング期間の大部分は、拡張データのために利用可能である)。他の非限定的な複数の実施形態において、拡張データ(再構成信号141を再構成信号151へと変換するためのデータストリーム116における追加の圧縮データ)の送信は、Vendor−Specific InfoFrame(VSI)を介したHDMI(登録商標)メタデータ送信を活用する。他の非限定的な複数の実施形態において、送信はDisplayPortケーブルを活用し、拡張データは、DisplayPortフォーマットのメタデータとして送信される。
拡張データ(階層的な圧縮拡張データなど)をエンコードメタデータとして送信することにより、メタデータを解釈出来ない複数のレガシーディスプレイデバイスは同じデータストリーム116を受信するが、単に拡張データを無視し、第1品質レベルの信号141を表示する。このやり方で、例えば、この方法を採用するゲームコンソールはHDMI(登録商標)(またはDisplayPort)を介し、(画像141−1、画像141−2、・・・を含む)信号141を再生成するの必要とされる従来の(非圧縮の)送信フォーマットを単に採用した場合に可能であるであろうより高い解像度および/またはより高いフレームレートのビデオ信号を送信し得る。受信側の有効化されていない複数のディスプレイデバイスは単に第1品質レベルの信号141をデコードし、表示し、他方、複数の有効化されたディスプレイデバイスおよびデコーダは、追加の拡張データ(圧縮データ)もデコードし、1または複数のより高い品質レベルの信号の表現を再構成することが出来る。
図1Eは、本明細書における複数の実施形態に係る、それぞれのデータストリームを処理するコンピュータプロセッサハードウェアを図示する例示的な図である。
示されているように、データストリーム115は、エンコードデータの複数の第1部分181(第1圧縮データ)とエンコードデータの複数の第2部分182(第2圧縮データ)とを含む。一実施形態において、データストリーム115は、第1パケット識別子(PID#1)によりタグ付けされたデータの複数の第1部分181と、第2パケット識別子(PID#2)によりタグ付けされたデータの複数の第2部分182とを含むMPEG(Moving Pictures Experts Group)トランスポートストリームとして受信される。
示されているように、エンコードデータの複数の第1部分181は、データストリーム115におけるエンコードデータの複数の第2部分182の間にインターリーブされる。
エンコードデータの複数の第1部分181は、エンコードデータの第1部分181−1、エンコードデータの第1部分181−2などを含む。前に説明されているようにエンコードデータの複数の第1部分181のそれぞれは、そのようなデータがデコーダ130によりデコードされることになることを示す対応する第1の固有タグ付け値(トランスポートストリームにおけるPIDの数など)によりタグ付けされる。
エンコードデータの複数の第2部分182は、エンコードデータの第2部分182−1、エンコードデータの第2部分182−2などを含む。エンコードデータの複数の第2部分182のそれぞれは、そのようなデータがデコーダ120によりデコードされることになることを示す対応する第2の固有タグ付け値によりタグ付けされる。
コンピュータプロセッサハードウェア106はパーサーロジック176を含む。その名前が示唆するように、パーサーロジック176は、受信されたデータストリーム115を、デコーダ130によりデコードされることになるデータの複数の部分(圧縮されたMPEGデータなど)、およびデコーダ120によりデコードされることになるデータの複数の部分(圧縮された階層的エンコードデータなど)へとパースする。一実施形態において、パーサーロジック176は、データストリーム115における複数のタグを利用して、データの複数の第1部分181とデータの複数の第2部分182とを特定する。
更なる複数の実施形態によると、データストリーム115は、エンコードデータの複数の第1部分とエンコードデータの複数の第2部分との間の対応する複数の再生タイミング関連性を示すタイミング情報を含む。本例示的実施形態において、データストリーム115におけるタイミング情報は、エンコードデータの一部181−1とエンコードデータの一部182−1との間のタイミング関連性183−1を示し、データストリーム115におけるタイミング情報は、エンコードデータの一部181−2とのエンコードデータの一部182−2との間のタイミング関連性183−2を示す、などである。
更なる非限定的な例示的実施形態によると、コンピュータプロセッサハードウェア106は、エンコードデータの複数の第1部分181とエンコードデータの複数の第2部分182との間の複数のタイミング関連性を特定する。複数のタイミング関連性および情報は、再構成データ184(残余データなど)が信号の第1表現146−1における複数の表示要素の複数のフレームまたは画像のうちどれに関連するかを示す。
コンピュータ処理ハードウェア106は第1デコーダ130を実装して、エンコードデータの複数の第1部分181を信号の第1表現146−1へとデコードする。
さらに示されているように、コンピュータプロセッサハードウェア106は第2デコーダ120を実装して、エンコードデータの複数の第2部分182をそれぞれの再構成データ184へとデコードする。非限定的な実施形態によると、再構成データ184の一部は、信号の第1表現146−1にも少なくとも部分的に基づきエンコードデータ182からデコードされる。コンピュータプロセッサハードウェア106は、エンコードデータの複数の第2部分182に対して更なる複数のデコード処理を実行する、変更ロジック178−1、アップサンプリングロジック179−1、変更ロジック178−2等をさらに含む。したがって、変更ロジック178−1、アップサンプリングロジック179−1、変更ロジック178−2等は、第2デコーダ120の一部として見なされ得る。変更ロジック178−1、アップサンプリングロジック179−1、変更ロジック170−2等により実行される複数の機能はさらに以下に説明されている。
概して、再構成データ184は、信号の第1表現146−1(複数のフレームまたはフィールドを含むビデオ信号など)をより高い品質レベルの(同じ、または異なる解像度の)信号にどのように変更するかを指定する。
一実施形態において、デコーダ130は、MPEG(Moving Pictures Experts Group)デコード方法に従ってエンコードデータの複数の第1部分181をデコードする。デコーダ120は、階層的エンコードフォーマットに従ってエンコードデータの複数の第2部分182をデコード(展開)して再構成データ184を生成する。
更なる非限定的な例によると、信号の表現146−1は、エンコードデータの複数の第1部分181から導出される標準解像度のSD信号であり得る。本明細書において説明されているように、コンピュータプロセッサハードウェア106は、再構成データ184を信号の第1表現146−1に適用して、信号の第2表現(同じ、または異なる解像度のより高い品質レベル)を生成する。前に説明されているように、複数の再構成信号は、ビデオの、複数の表示要素をそれぞれが含む複数の画像またはフレームを含み得る。
コンピュータプロセッサハードウェア106は変更ロジック178−1を実装して、信号の表現146−1を、(より高い品質レベルを有する)信号の表現146−2へと変換する。一実施形態において、変更ロジック178−1は再構成データ184の一部を利用して、より高い品質レベルの信号の表現146−2を生成する。再構成データ184(残余データなど)は、信号の表現146−2を生成するために、信号の表現146−1における1または複数の表示要素または画像に加えられることになる複数の変更(修正など)を示す。言及されているように、信号の第2表現146−2は、信号の第1表現146−1と同じ表示要素解像度(同じ空間解像度および同じフレームレートなど)を有し得る。
更なる非限定的な例示的な実施形態によると、再構成データを信号の第1表現146−1(信号の予備表現など)に適用して信号の第2表現146−2を生成することは、上記にて説明されたように特定されたタイミング関連性に従って、再構成データ184を利用して信号の第1表現を、複数の表示要素のフレームを信号の第1表現より多く含む信号の第2表現146−2へと時間的にアップサンプリングすることを含み得る。
更なる例として、信号の第1表現146−1は、1秒当たり複数のサンプルの60フレームを含み得、信号の第2表現146−2は1秒当たり120フレームを含み得、信号の第1表現146−1は1秒当たり120フレームを含み得、信号の第2表現146−2は1秒当たり240フレームを含み得る、などである。そのような実施形態において、時間的なアップサンプリングを達成するべく、コンピュータプロセッサハードウェアは、(第1フレームレートなどの)信号の第1表現146−1に基づき、および再構成データ184により指定されるように第2フレームレートの信号の予備表現を生成し、再構成データ184により指定されるように残余データセットを生成し、残余データセットを第2フレームレートの信号の予備表現に適用して、信号の第2表現146−2を生成するよう構成され得る。したがって、変更ロジック178−1は、再構成データ184により指定されるように、(信号をより高いフレームレートに高める)複数の時間的アップサンプリング処理に加えて、残余データを用いて複数の修正を実行するよう構成され得る。
更なる複数の実施形態によると、信号の表現146−2は、信号の表現146−1における1秒当たりのフレーム数と同じ1秒当たりのフレーム数を有し得ることに留意されたい。例えば、信号の第1表現146−1は1秒当たり60フレームを含み得、変更ロジック178−1により生成される信号の第2表現146−2はより高い品質レベルを有し得、同じく1秒当たり60フレームを含み得、信号の第1表現146−1は1秒当たり120フレームを含み得、信号の第2表現146−2は、より高い品質レベルを有し得、1秒当たり120フレームを含み得る、などである。
コンピュータ処理ハードウェア106は、アップサンプリングロジック179−1をさらに含む。再構成データ184により指定される複数の設定に従って、アップサンプリングロジック179−1は、信号146−2の、信号の表現146−3へのアップサンプリングを実行する。一実施形態において、アップサンプリングロジック179−1により実行される複数のアップサンプリング処理は、信号の表現146−2の、信号のより高い解像度の表現146−3への変換を含む。言い換えると、信号の表現146−2はSD信号であり得る。アップサンプリングロジック179−1により適用される複数のアップサンプリング処理は、信号146−2におけるより低い解像度の複数の表示要素設定を、信号146−3における、対応するより高い解像度の複数の表示要素設定へ変換するよう構成され得る。このことは、以下により詳細に説明されている。
更なる複数の実施形態によると、第2デコーダ120および関連するロジックを実装してエンコードデータの複数の第2部分182をデコードすることは、再構成データ184を利用して、複数のアップサンプリング処理を特定することと、アップサンプリングロジック179−1を介し、特定された複数のアップサンプリング処理を信号の第2表現146−2に適用して、信号の第2表現146−2の表示要素解像度より実質的に高い表示要素解像度を有する信号の第3表現146−3を生成することとを含み得る。 (再構成データ184を生成するのに用いられる)エンコードデータの複数の第2部分182により指定される複数のアップサンプリング処理を特定することは、アップサンプリングカーネルの特定の複数の係数に対応する複数のパラメータをデコードすることと、デコードされた複数のパラメータに少なくとも部分的に基づき、信号の第3表現146−3の一部に対応するアップサンプリングカーネルを生成することと、信号の第3表現146−3の一部を生成するために、アップサンプリングカーネルを信号の第2表現146−2の一部に適用することとを含み得る。
信号の表現146−3は、修正を必要とする予備HD信号であり得る。
コンピュータプロセッサハードウェア106は変更ロジック178−2をさらに含む。一実施形態において、変更ロジック178−2は再構成データ184の一部を利用して、信号の表現146−4を生成する。例えば、再構成データ184は、信号の表現146−4を生成するために、信号の表現146−3における1または複数の表示要素に加えられることになる複数の変更(修正など)を示す。変更ロジック178−2は、再構成データ184を信号146−3に適用して、適した複数の表示要素設定を修正する。前に説明されたのと同様のやり方で、変更ロジック178は、時間的アップサンプリングを実行するようにも構成され得る。したがって、信号146−4は、信号146−3より多くの、単位時間当たりの再生フレーム画像を含み得る。
この(空間的および/または時間的に)アップサンプリングし、その後変更を加える処理は、任意の数のレベルで繰り返され得る。したがって、HD信号などのための信号の表現140は、それぞれのディスプレイスクリーン上での再生のために、対応するウルトラHD信号へとアップサンプリングされ、修正され得る。
また更なる複数の実施形態によると、コンピュータプロセッサハードウェア106は第2デコーダ120および関連する複数の構成要素を実装して、エンコードデータの複数の第2部分182をデコードする。このことは、エンコードデータの複数の第2部分182により指定されるように第1品質レベルの第1残余データセットをデコードすることと、第1残余データセット(再構成データ184の一部)を利用して、信号の第1表現146−1を変更し、信号の第2表現146−2を生成することと、信号の第2表現146−2に少なくとも部分的に基づき、信号の第2表現146−2の解像度(SD解像度)より高い解像度(HD解像度など)を有する信号の第3表現146−3を生成することと、エンコードデータの複数の第2部分182により指定されるように第2品質レベルの第2残余データセット(再構成データ184)をデコードすることと、第2残余データセットを利用して、信号の第3表現146−3を変更し、信号の第4表現146−4を生成することとを含み得る。さらに所望される場合、コンピュータプロセッサハードウェアは、信号の第4表現146−4に基づき、信号の第4表現146−4の解像度より高い解像度(プログレッシブフルHD解像度、Ultra HD解像度等など)を有する信号の第5表現を生成し、エンコードデータの複数の第2部分182により指定されるように第3品質レベルの第3残余データセット(再構成データ184)をデコードし、第3残余データセットを利用して、信号の第5表現を変更し、信号(修正されたUltra HD解像度信号など)の第6表現を生成するよう構成され得る。一実施形態において、信号の第1表現はインターレースされたビデオ信号であり、信号の第6表現はプログレッシブビデオ信号である。既に言及されたように、より高い品質レベルへと変更し、信号の予備的なアップサンプリング表現へとアップサンプリングし、その後、次に高い品質レベルの信号の表現へと変更する処理は、特定の非限定的な実施形態に基づき任意の回数繰り返され得る。
前に図1Dに関連して説明されたように、送信デバイス111は、それぞれのデータストリーム116を対応するコンピュータプロセッサハードウェア107に送信するよう構成され得る。図1Fは、本明細書における複数の実施形態に係るそれぞれのデータストリーム116を処理するコンピュータプロセッサハードウェア107を図示する例示的な図である。
示されているように、データストリーム116は、デコードデータ191の複数のセグメント(デコードデータ191−1、デコードデータ191−2、・・・)を含む。データストリーム116は、エンコードデータ192の複数のセグメント(エンコードデータ192−1、エンコードデータ192−2、・・・)も含む。
非限定的な一実施形態において、デコードデータ191は非圧縮データである。エンコードデータ192は圧縮データ(階層的エンコードフォーマットに従って圧縮されたデータなど)である。データストリーム116は、エンコードデータ192が圧縮ビデオデータであり、デコードデータが非圧縮ビデオデータであるHDMI(登録商標)信号であり得る。他の実施形態によると、データストリーム116は、エンコードデータ192が圧縮ビデオデータであり、デコードデータが非圧縮ビデオデータであるDisplayPortインタフェースである。
さらに示されているように、コンピュータ処理ハードウェア107はパーサーロジック196を含む。その名前が示唆するように、パーサーロジック196は、データストリーム160において受信されたデータをデコードデータ191およびエンコードデータ192へとパースする。デコードデータ(HDMI(登録商標)送信フォーマットに従ってフォーマット化されたデータなど)は、信号の第1表現146−1を再構成する複数の設定を指定する。デコードデータ191を介し、コンピュータプロセッサハードウェア107は信号の第1表現146−1を生成する。一実施形態において、信号は、複数の表示要素に関する複数の設定を指定するビデオ信号である。
コンピュータプロセッサハードウェア107はデコーダ120を含む。コンピュータプロセッサハードウェア107は、全てがデコーダ120の一部であると見なされ得る、またはそれと関連付けられ得る変更ロジック198−1、アップサンプリングロジック199−1、変更ロジック198−2等などの追加のロジックを含む。
コンピュータプロセッサハードウェア107はデコーダ120−1を実装して、エンコードデータ192をそれぞれの再構成データ184へとデコードする。非限定的な実施形態によると、再構成データ184の一部は、信号の第1表現146−1にも少なくとも部分的に基づきエンコードデータ192からデコードされる。再構成データ184は、信号の第1表現146−1をどのように変更するかを指定する。一実施形態において、コンピュータプロセッサハードウェア107は、階層的エンコードフォーマットに従ったデコードを介し、エンコードデータ192を再構成データ184へとデコードする。本明細書にさらに説明されているように、エンコードデータ192は、データが階層における異なる複数の解像度(空間および/または時間)に従ってエンコードされる階層的エンコードフォーマットに従ってエンコードされ得る。本明細書における複数の実施形態は、1または複数のアップサンプリング処理を適用して、再構成データ184における残余データを生成することをさらに含み得る。複数のアップサンプリング処理は、より低い解像度の複数の表示要素設定をより高い解像度の複数の表示要素設定に変換する。
変更ロジック198−1を介し、コンピュータプロセッサハードウェア107は再構成データ184の一部(残余データの一部など)を信号の第1表現146−1に適用して、信号の第2表現146−2を生成する。信号の第2表現146−2は、信号の第1表現146−1より高い品質レベルを有する。一実施形態において、信号の第2表現146−2は、信号の第1表現146−1と同じ表示要素解像度(SDなど)を有する。更なる非限定的な例によると、再構成データ184を用いて、変更ロジック198−1は、信号の表現146−1における複数の表示要素の特定の複数の設定を修正して、信号の表現146−2を生成する。
前に説明されているように、コンピュータプロセッサハードウェア107はアップサンプリングロジック199−1をさらに含む。コンピュータプロセッサハードウェア107は、(エンコードデータ192から導出される)再構成データ184により指定される1または複数のアップサンプリング処理を特定する。アップサンプリングロジック199−1は、特定された複数のアップサンプリング処理を信号の第2表現146−2に適用して、信号の第3表現146−3を生成する。一実施形態において、信号の第3表現146−3は、信号の第2表現146−2より実質的に高い表示要素解像度を有する。例として、信号の第2表現146−2は、SD解像度のビデオ信号であり得、信号の第3表現146−3は、予備HD解像度のビデオ信号であり得る。
更なる複数の実施形態によると、信号の第3表現146−3は、信号の表現146−2より実質的に高い表示要素解像度の信号の予備表現である。コンピュータプロセッサハードウェアは変更ロジック198−2をさらに含む。示されているように、変更ロジック198−2は再構成データ184(残余データなど)の一部を利用して、信号の予備表現146−3を、信号の表現146−4へと変更する。信号の表現146−4(信号の変更された予備表現146−3)は、HD解像度の信号の予備表現146−3より高い品質レベルを有する。前に説明されたのと同様のやり方で、コンピュータプロセッサハードウェア107は、アップサンプリングし、任意の望ましいレベルの解像度(空間および/または時間)に変更する処理を繰り返し得る。
他の非限定的な複数の実施形態によると、信号の第4表現は、信号の第1表現より高いフレームレートを有し、複数のアップサンプリング処理は、複数の適切な時間的アップサンプリング処理を備える。
図1Gは、本明細書における複数の実施形態に係る処理を図示する例示的な図である。
示されているように、コンピュータプロセッサハードウェア106は、エンコードデータの複数の第1部分181を利用して、画像またはフレームFR1、FR2、FR3等を含む信号の表現146−1を生成する。コンピュータプロセッサハードウェア106はデコーダ120を実装して、エンコードデータの複数の第2部分182から、残余データ184−1、184−2などを生成する。
残余データ184−1の、信号の第1表現146−1におけるフレームFR1、FR2、FR3等への適用を介し、コンピュータプロセッサハードウェア106は、画像またはフレームFR1'、FR1.5'、FR2'、FR2.5'、FR3'等を含む(第2フレームレートの)信号の予備表現を生成する。示されているように、信号のこの予備表現は、信号の表現146−1が有するよりも多くのフレームを含む。他の非限定的な複数の実施形態において、予備表現は、信号の表現146−1が有するフレームと同じ数のフレームを含む。
コンピュータプロセッサハードウェア106はさらに、残余データ184−2を用いて、フレームFR1'、FR1.5'、FR2'、FR2.5'、FR3'等を含む信号の予備表現を、フレームFR1''、FR1.5''、FR2''、FR2.5''、FR3''等を含む信号の表現146−2へと変更する。信号の表現146−2は、フレームFR1'、FR1.5'、FR2'、FR2.5'、FR3'等を含む信号の予備表現より高い品質レベルを有する。
一実施形態において、それぞれの残余データセットは、信号の複数のフレームに亘る時間的継承に従って生成される。例えば、コンピュータプロセッサハードウェアは、信号の任意のフレームに関する残余データ(フレームFR2からフレームFR2'を生成するための残余データなど)を、異なるフレームに関してデコードされた残余データ(フレームFR1をフレームFR1'へと変換するのに用いられる残余データなど)に少なくとも部分的に基づきデコードするよう構成され得る。いくつかの非限定的な実施形態によると、時間的継承は、次のように(図1Fにおける時間的継承の「方法1」)任意のフレームに関して残余データをデコードすることにより実施される。任意のフレームに関する予備残余データをデコードし、(再構成データ184により示されるように)残余データの一部に関し、任意のフレームに関する予備残余データを基準フレームの残余データと組み合わせ、任意のフレームに関する残余データを生成する。他の非限定的な複数の実施形態によると、時間的継承は、次のように(図1Fにおける時間的継承の「方法2」)任意のフレームに関する残余データをデコードすることにより実施される。複数のフレームのシーケンスに関する第1基本残余データをデコードし、基本残余データを相対的な残余データと組み合わせ、任意のフレームに関する残余データを生成する。いくつかの実施形態において、第1基本残余データは、相対的な残余データを、より高いレベルの集約である第2基本残余データと組み合わせることによっても生成される。
図1Hは、本明細書における複数の実施形態に係る処理を図示する例示的な図である。
示されているように、コンピュータプロセッサハードウェア106はエンコードデータの複数の第1部分181を利用して、画像またはフレームFR1、FR2、FR3、FR4等を含む信号の表現146−1を生成する。コンピュータプロセッサハードウェア106はデコーダ120を実装して、エンコードデータの複数の第2部分182から、第1セットの基本残余データ184−B1、184−B2などを生成する。
一実施形態において、再構成データ184は、複数の表示要素解像度に従ってエンコードされた残余データの階層を含む。第2デコーダ120(または他の適切なリソース)は、複数のアップサンプリング処理をエンコードデータの複数の第2部分(または再構成データ184)に適用して、基本残余データ184−B1(複数のタイムサンプルでの適用のための残余データを再生成するルーツデータ)から導出される残余データの階層167−1を再生成する。言い換えると、再構成データ184は、複数の要素解像度に従ってエンコードされた残余データの階層167−1であり得、またはそれを含み得る(階層167−1において複数のより低いレベルは、空間および/または時間解像度がより低く、階層167−1における複数のより高いレベルは、より高い空間および/または時間解像度のものである)。一実施形態において、第2デコーダ120は複数のアップサンプリング処理をエンコードデータの複数の第2部分182に適用して、残余データの階層167−1を再生成する。
更なる複数の実施形態によるとコンピュータプロセッサハードウェアは、信号における複数の表示要素の複数のフレームに亘る複数の残余の時間的継承に従って階層167−1を生成する。示されているように、残余データの階層の任意のより高いレベルで、コンピュータプロセッサハードウェアは、信号の複数のタイムサンプルに関する残余データを再生成するための基準としての役割を担う残余データ基本セット(階層167−1におけるより低い残余データなど)に少なくとも部分的に基づき、第1フレームに関する残余データ(残余データ185−1など)をデコードする。残余データ基本セットは時間的にアップサンプリングされ、その後、より高い時間解像度の残余データを生成するために、(再構成データ184により指定されるように再生成される)相対的な残余データと組み合わせられる。時間的継承が基本残余データの任意の一部に関して(適切な時間的継承シンボルによってなど)指定されたとき、残余データ基本セットの対応する部分は、それを何らかの追加の残余データと組み合わせることなく(すなわち、再構成データ184からの何らかの追加の情報をデコードすることなく)信号の複数のタイムサンプルに関する残余データへと拡張される。言い換えると、基本再構成データ184−B1の一部は、複数のタイミングに亘って拡張されて、信号の複数のタイムサンプル(画像またはフレームなど)に関してそれぞれの残余データ185−1、185−2等の一部を生成する。
時間的継承に加えて、またはその代替として、残余データの階層185は、信号における複数の表示要素の任意のフレーム内の複数の残余の空間的継承に従って生成され得る。そのような場合、任意の画像またはフレームに関する残余データは、次のように一連の処理により、異なる複数の空間解像度の残余データの階層としてエンコードされる。階層における任意の品質レベルの残余データをデコードし、残余データをアップサンプリングし、次に高い解像度で予備残余データを生成し、当該次に高い解像度に関する相対的な残余データをデコードし、相対的な残余データを予備残余データに適用し、階層において次に高い品質レベルの残余データを生成する。相対的な残余データは、信号の各タイムサンプルに関して独立して、または複数のレベルの集約性の時間的階層に従ってデコードされ得る。残余データの階層における任意の品質レベルで、コンピュータプロセッサハードウェアは、残余データの階層におけるより低い品質レベルに関してデコードされた再構成データのみに基づき、任意のフレームの一部に関する残余データをデコードする。言い換えると、残余データの一部に関し、再構成データ184が、空間的継承シンボルと共に低い(空間的)品質レベルの情報を指定し、デコーダは、再構成データからの何らかの追加の情報なしでより高い品質レベルの残余データの対応する部分を再構成することが出来る。他の非限定的な複数の実施形態によると、残余データの一部に関し、再構成データ184が、時間的継承シンボルと共に低い(空間的)品質レベルの情報を指定し、デコーダは、基準として残余データ基準セットを用い、より高い品質レベルの残余データの対応する部分を再構成する。
コンピュータプロセッサハードウェア106は、第1セットの基本残余データ184−B1を利用して、(タイムサンプル#1に関する)残余データ185−1、(タイムサンプル#2に関する)残余データ185−2、(タイムサンプル#3に関する)残余データ185−3等を再生成する。
さらに示されるように、コンピュータプロセッサハードウェアは第1残余データセット185−1を利用して、フレームFR1をフレームFR1'へと変更および変換し、コンピュータプロセッサハードウェアは第2残余データセット185−2を利用して、フレームFR2をフレームFR2'へと変更および変換し、コンピュータプロセッサハードウェアは第3残余データセット185−3を利用して、フレームFR3をフレームFR3'へと変更および変換する、などである。本例示的実施形態における信号の表現146−2(解像度#1)は、信号の表現146−1(解像度#1)における複数のフレームから導出されるフレームFR1'、FR2'、FR3'、FR4'等を含む。
コンピュータプロセッサハードウェア106は再構成データ184により指定される複数のアップサンプリング処理を実行して、信号の表現146−2を信号の表現146−3へとアップサンプリングする。例えば、アップサンプリングロジック188−1は、フレームFR1'における複数の表示要素をフレームFR1''へと空間的にアップサンプリングし、アップサンプリングロジック188−2は、フレームFR2'における複数の表示要素をフレームFR2''へと空間的にアップサンプリングし、アップサンプリングロジック188−3は、フレームFR3'における複数の表示要素をフレームFR3''へと空間的にアップサンプリングする、などである。アップサンプリングは、信号の低い解像度の表現146−2を、信号のより高い解像度の表現146−3へと変換することを含み得る。
したがって、本明細書における複数の実施形態は、残余データ186を、信号の第3表現146−3における複数の表示要素に適用して、信号の第4表現146−4を生成することを含み、適用される残余データ186は、信号の第3表現146−3における複数の表示要素の複数の設定を変更して、信号の第4表現146−4における対応する複数の表示要素のための複数の設定を生成する。本例示的実施形態において信号の表現146−3(解像度#2)は、フレームFR1''、FR2''、FR3''、FR4''等を含む。
さらに示されているように、コンピュータプロセッサハードウェア106はデコーダ120また関連するロジックを実装して、エンコードデータの複数の第2部分182から第2基本残余データセット184−B2を生成する。コンピュータプロセッサハードウェア106が、階層167−2におけるアップサンプリングを介し基本残余データ184−B1から複数の残余データセット185を導出するのと同様のやり方で、コンピュータプロセッサハードウェア106は、第2基本残余データセット184−B2を利用して、(タイムサンプル#1に関する)残余データ186−1、(タイムサンプル#2に関する)残余データ186−2、(タイムサンプル#3に関する)残余データ186−3等を再生成する。
示されているように、コンピュータプロセッサハードウェアは、階層的に導出された第1残余データセット186−1を利用して、フレームFR1''をフレームFR1'''へと変換し、コンピュータプロセッサハードウェアは、第2残余データセット186−2を利用して、フレームFR2''をフレームFR2'''へと変換し、コンピュータプロセッサハードウェアは、第3残余データセット186−3を利用して、フレームFR3''をフレームFR3'''へと変換する、などである。本例示的実施形態における信号の表現146−4(解像度#2)は、信号の表現146−3(解像度#2)から導出されるフレームFR1'''、FR2'''、FR3'''、FR4'''等を含む。
図2は、本明細書における複数の実施形態に係るデコードシステムを図示する非限定的な例示的な図である。
データストリーム115がブロック200によって受信され分離され、レガシーSDデータ210および追加のデータ220が生成される。レガシーSDデータは、ブロック230における「レガシーSDデータからSDをデコード」によりデコードされ、SD LOQ(品質レベル)140−1、第1品質レベルの信号の表現(SD品質レベル)が生成される。SD LOQ140−1はブロック270によりアップサンプリングされ、(より高い)第2品質レベル(HD品質レベル)の信号の予測表現である予備HD LOQ280が生成される。
拡張データ220は、ブロック240における「複数のHD残余をデコード」によりデコードされ、HD残余260が生成される。
予備HD LOQ280と複数のHD残余260とが組み合わせられ、最終的なHD LOQ、すなわち再構成HD信号150−1が生成される。
非限定的な実施形態において、SD LOQ140−1は、第1品質レベルの複数の要素の2次元平面であり、他方、予備HD LOQ280、複数のHD残余260、および再構成HD信号150−1は、(より高い)第2品質レベルの複数の要素の複数の2次元平面である。
非限定的な実施形態において、(視覚的な表現を簡潔にするために図2において示されていない、ブロック230により生成される)SD LOQ140−2が前にデコードされた信号140−1に少なくとも部分的に依存するように、ブロック230は、時間的デコード方法(例えば、MPEG2、H.264、VP8等)を活用する。他の非限定的な複数の実施形態において、ブロック240も時間的デコード方法を実装する。非限定的な実施形態において、ブロック240によりデコードされて信号150−2を生成する複数のHD残余は、信号150−1を生成するようデコードされるHD残余に少なくとも部分的に基づく。他の非限定的な実施形態において、信号150−2を生成するようデコードされる複数のHD残余は、信号150−1を生成するよう適用される複数のHD残余をデコードするためにブロック240によっても用いられる共通のサポート平面に少なくとも部分的に基づく。
非限定的な実施形態において、拡張データ220は、SD LOQ140−1を補正しアップサンプリングするようブロック270により処理される情報を含む。
非限定的な実施形態において、特定の複数のレガシーデコーダが、単に拡張データ220を無視しレガシーデータ210をデコードすることによりデータストリーム115を受信しデコードし、SD LOQ140−1を生成し得るよう、データストリーム115は、当該複数のデコーダにより無視される複数のパケット識別子を活用することにより拡張データ220を含む。
非限定的な実施形態において、デコーダ120は、エンコードデータの複数の第2部分により指定されるようにディザリングを実行する。実施形態において、このことは、任意の確率分布に従って生成される実質的にランダムな数を適用することにより残余データ260における少なくとも1つの残余をデコードすることにより実施される。
図3Aは、図2において説明されたものと類似のデコードシステムを説明する非限定的な例示的な図であり、データストリーム115は拡張データ310に対応する情報を備えている。ブロック320は、SD LOQ140−1を補正レイヤー(SD残余データ)と組み合わせ、その後それをアップサンプリングし、予測HD LOQ280を生成する。
非限定的な実施形態において、補正レイヤーは、層ベースの階層デコード方法に従ってデコードされる。
非限定的な実施形態において、予測HD LOQ280を生成するのに用いられるアップサンプリングおよび画像処理オペレーションは、拡張データ310により示されるように実施される。
他の非限定的な複数の実施形態において、拡張データ310は、ブロック320により用いられる複数のアップサンプリング処理のための複数のカーネル係数を備える。非限定的な実施形態において、複数のアップサンプリング処理は、拡張データ310により示される4×4カーネル(より低い品質レベルにおいて16の要素の、16の係数を用いる加重平均。または、より高い品質レベルの各画素を生成するために、各空間次元について2の倍数のアップサンプリングを行う非限定的な場合においてはより高い品質における各2×2画素ブロックに関する64の係数を用いる加重平均)を用いる。非限定的な実施形態において、拡張データ310は、SD LOQ140−1を予測HD LOQ280へとアップサンプリングするのにブロック320により用いられる複数のカーネル係数の平面に対応する情報を備える。非限定的な実施形態において、ブロック320により用いられるアップサンプリングおよび画像処理オペレーションは、複数の非線形処理を含む。非限定的な実施形態において、複数の彩度成分(例えば、YUV色空間におけるUおよびV)のアップサンプリングは、複数の輝度(Y)成分に関する最終的なHD LOQ150−1を生成した後に実行され、(非限定的な実施形態において、バイラテラルフィルタリング法を用いて)最終的なHD LOQ150−1の再構成されたY面に少なくとも部分的に基づく。
非限定的な実施形態において、ブロック320により実行される複数の処理は、複数の画像処理オペレーション(例えば、アンシャープマスキング、エッジ再構成フィルタ、ディザリング等)を含む。他の非限定的な実施形態において、ブロック240により実行される複数の処理は、デコードされた残余を、任意の確率分布に従って算出された複数のランダム値と組み合わせることを含む。
図3Bは、図2および図3Aにおいて説明されるものと類似のデコードシステムを説明する非限定的な例示的な図であり、データストリーム116は、レガシーのより低いフレームレートのデータ330、動き補償拡張データ311、および追加の拡張データ312に対応する情報を備えている。ブロック321は、低フレームレート信号332に基づき、予測された高フレームレート信号360を生成する。非限定的な実施形態において、信号332に対する信号360の追加の複数のフレーム/フィールドを生成するために実行される複数の処理は、複数の時間的アップサンプリング処理および/または動き補償処理を備える。
ブロック340は追加の拡張データ312を処理し、追加の複数のフレーム/フィールドに関して複数の残余350をデコードする。複数の残余350はその後、信号360の新たに生成された複数のフレーム/フィールドと組み合わせられ、最終的な再構成された高フレームレート信号151−1が生成される。
非限定的な実施形態において、データストリーム116はHDMI(登録商標)規格送信ガイドラインに準拠してHDMI(登録商標)ケーブルを介して送信され、レガシーのより低いフレームレートのデータ330はHDMI(登録商標)規格送信ガイドラインに準拠する非圧縮ビデオデータを含む。拡張データ311および312は、(単に信号332をデコードし表示する)複数のレガシーHDMI(登録商標)デバイスにより無視されるメタデータとして送信され、他方、それらは、適切に有効化された(信号151をデコードし表示する)複数のデバイスにより処理されデコードされる。
図3Cは、図3Bに説明されているものと類似のデコードシステムをさらに図示する非限定的な例示的な図である。図3Cは、より低いフレームレート(すなわち、時間解像度の点で、より低い品質レベル)のビデオ信号、および拡張情報に基づき、より高いフレームレート(すなわち、時間解像度の点で、より高い品質レベル)のビデオ信号を生成するために追加の複数のフレームを生成する処理を説明する。
他の非限定的な複数の実施形態において、より低い品質レベルの信号に基づき、より高い空間解像度およびより高いフレームレートの両方により特徴付けられるビデオ信号を生成するよう拡張データが処理される。
図4は、本明細書における複数の実施形態に係る、図2および図3A〜3Cに説明されている複数のシステムと類似のデコードシステムを図示する非限定的な例示的な図であり、データストリーム115は、レガシーSDデータ210、エンコードデータ410、アップサンプリングエンコードデータ415、およびエンコードデータ420に対応する情報を備えている。エンコードデータ410はブロック430、複数のSD残余をデコード、により処理され、第1品質レベル(非限定的な実施形態において、SD解像度)の複数の残余435の平面が生成される。非限定的な実施形態において、ブロック430により実行される複数の処理は、エンコードデータ410をエントロピーデコードし、エントロピーデコードにより生成される複数のシンボルを逆量子化し、複数の残余435を生成することを備える。他の非限定的な実施形態において、ブロック430により実行される複数の処理は、エンコードデータ410をエントロピーデコードし、エントロピーデコードにより生成される複数のシンボルを変換し、変換されたシンボルを逆量子化し、複数の残余435を生成することを備える。他の非限定的な実施形態において、ブロック430により実行される複数の処理は、エンコードデータ410をエントロピーデコードし、エントロピーデコードにより生成される複数のシンボルを逆量子化し、逆量子化された複数のシンボルを複数の残余435へと変換することを備える。非限定的な実施形態において、複数の逆量子化処理は量子化されたシンボルを受信し、任意の確率分布に従って、対応する量子化間隔に含まれる値を生成する。他の非限定的な複数の実施形態において、ブロック430により実行される複数の処理は、層ベースの階層デコード方法に基づき複数の残余の平面をデコードすることを備える。一実施形態において、方法は、(より低い)第1品質レベルの複数の残余の平面をデコードすることと、第1品質レベルの複数の残余の平面に基づき、(より高い)第2品質レベルの複数の残余の予測平面を生成することと、第2品質レベルの複数の残余の予測平面をデコードデータと組み合わせ、第2品質レベルの複数の残余の平面を生成することを備える。
複数の残余435は、SD LOQ140−1と組み合わせられて、補正SD LOQ460が生成される。補正SD LOQ460は、アップサンプリングエンコードデータ415に対応する複数のアップサンプリング処理を活用することにより、ブロック480によりアップサンプリングされ、予測HD LOQ280が生成される。
エンコードデータ420はブロック440によりデコードされ、変換された残余470が生成される。変換された残余470、補正SD LOQ460、および予測HD LOQ280は、ブロック490、変換および合計、により処理され、再構成HD信号150−1が生成される。
非限定的な実施形態において、再構成HD信号150−1は、ビデオシーケンスの個別の画像(例えば、フレームまたはフィールド)である。非限定的な実施形態において、エンコードデータ410、アップサンプリングエンコードデータ415、および/またはエンコードデータ420は、画像150−1に関する拡張データ(例えば、SD残余、アップサンプリング情報および/またはHD変換された残余)、およびビデオシーケンスにおける他の複数の画像(例えば、フレームまたはフィールド)に関する拡張データの両方を生成するのに用いられる情報を備える。非限定的な実施形態において、当該情報は、複数の変換された残余470(例えば、非限定的な例によると、エンコードデータ420からデコードされた、画像150−1に対応する相対的な複数の残余を合計することにより)、およびビデオシーケンスにおける他の複数の画像に関する複数の変換された残余(例えば、ビデオシーケンスにおける他の複数の画像に対応する相対的な複数の残余を合計することにより)の両方を再構成するのに用いられる複数の残余の「サポートバッファ」平面を備える。他の非限定的な実施形態において、シーケンスにおける画像に関する拡張データの一部は、シーケンスにおける他の画像に関する拡張データの対応する部分に少なくとも部分的に基づきデコードされる。
図5Aは、本明細書における複数の実施形態に係る残余デコードを説明する非限定的な例示的な図である。
エンコードデータ410は、(ハフマンエントロピーデコード法を実装する)ハフマンデコード500により、その後(ランレングスエンコードデコード法を実装する)RLEデコード510により、およびその後(適切な逆量子化法を実装する)逆量子化520により処理され、複数の残余435が生成される。
他の非限定的な複数の実施形態において、ブロック520の入力は、逆量子化される前に変換される(すなわち、処理される)。非限定的な実施形態において、ブロック520は最初に、受信された複数のシンボルを逆量子化し、その後、その複数の結果を、適切な変換方法(例えば、DCT、アダマール、Directional Decomposition Transform等)に従って複数の残余435へと変換する。
一実施形態において、デコーダ430または他の適切なリソースを介し、(コンピュータプロセッサハードウェア107の)コンピュータプロセッサハードウェア106は、エンコードデータ(図5Aにおけるエンコードデータ410など)の複数の第2部分182を変換された残余データへとデコードし、変換された残余データを処理して、量子化された残余データを生成し、量子化された残余データを逆量子化して残余データを再生成し、再生成された残余データを信号の第1表現に適用して、信号の第2表現を生成する。処理は、任意の適切なやり方で起こり得ることに留意されたい。他の実施形態によると、1または複数の残余データセットの何れかが、変換された残余データから生成され得る。例えば、コンピュータプロセッサハードウェアは、エンコードデータの複数の第2部分182を、量子化され変換された残余データへとデコードし、量子化された残余データを逆量子化して、変換された残余データを生成し、変換された残余データ、信号(図7A)のそれぞれの1または複数の表現を処理して、残余データを再生成し、再生成残余データを信号の表現に適用するよう構成され得る。
図5Bは、本明細書における複数の実施形態に係る層ベースの階層的デコード方法に従う残余のデコードを説明する非限定的な例示的な図である。
エンコードデータ410は、複数の残余435の平面の任意の品質レベルにそれぞれが対応する、エンコードデータの複数のサブセットへと分割される。
残余データに関する最も低い(最下の)品質レベルに対応するエンコードデータサブセット410−Bは残余デコーダ530+Bにより処理され、残余平面YBOTTOM560+Bが生成される。平面560+Bは、予測計算機570+Bにより処理され、予測表現UB+1580+B+1が生成される。非限定的な実施形態において、予測表現UB+1を生成するのに実行される複数の処理は、アップサンプリング処理を含む。
ブロック430は、後続の(漸進的により高い)品質レベルに関して、複数のエンコードデータサブセットをデコードすることにより、および当該サブセットからデコードされる残余データを、前の(より低い)品質レベルに基づき、対応する予測表現Uと組み合わせることにより継続する。
例えば、エンコードデータサブセット410−1は、継承情報532−1に少なくとも部分的に基づき残余デコーダ531により処理され、中間データ541が生成される。非限定的な実施形態において、継承情報532−1は、サブセット410−1が中間データ541の、より低い品質レベルから直接的に継承された複数の部分についての何らかの情報を指定する必要なく、それら複数の部分を指定する。中間データ541および予測表現U−1581は、再構成器551により処理され組み合わせられ、複数の残余Y−1561の平面が生成される。平面561は、予測計算機571により処理され、予測表現U0580が生成される。
エンコードデータサブセット410−0は、継承情報532−0に少なくとも部分的に基づき残余デコーダ530により処理され、中間データ540が生成される。中間データ540および予測表現U0580は再構成器550により処理され組み合わせられ、残余435に対応する複数の残余Y0560の平面が生成される。
非限定的な実施形態において、予測計算機570、571、・・・、570+Bは、ブロック430により受信された、エンコードデータの対応する複数のサブセットにおいて指定される複数のパラメータに従って複数のアップサンプリング処理、および/または画像処理オペレーションを実装する。
他の非限定的な複数の実施形態において、残余デコーダ530、531、・・・530+Bは、ビデオシーケンスにおける複数の画像に亘る時間相関性を効率的に示すために、基準データにも基づき中間データを生成する。いくつかの非限定的な実施形態において、基準データは、ビデオシーケンスにおける複数の画像の対応する複数のエンコードデータサブセットにおいて指定されるデータと組み合わせられる1または複数のサポート平面である。他の非限定的な複数の実施形態において、基準データは、ビデオシーケンスにおける基準画像に関する対応する残余データである。当該実施形態のいくつかにおいて、継承情報532−0、・・・532−Bは、中間データ540+Nの要素が、デコードデータをビデオシーケンスにおける基準画像に関するY−Nの対応する要素と組み合わせることにより算出されることになることを示す情報を備える(すなわち、平面Yのどの要素が基準画像に基づかなくてはならないかについての情報が、層化された階層に沿って継承され、時間相関性によって利益を得る複数の要素を効率的に区別する、例えば、画像の大きな一部に関するより低い品質レベルの継承を指定および「最終化」することを可能とする)。いくつかの非限定的な実施形態において、Y−Nの対応する要素は、ブロック430により受信された動きについての適切な情報を処理することにより、動き補償法に従って算出される。
図5Cは、本明細書における複数の実施形態に係る、図5Bの残余デコーダ531の実装を図示する非限定的な例示的な図である。
複数のシンボル確率581を生成するために、エンコードデータサブセット410−1は、確率推定器580−1により処理される。非限定的な実施形態において、効率的なスタティックエントロピーデコードを可能とするよう、確率推定器580−1は、エンコードデータサブセット410−1において指定される複数のパラメータに少なくとも部分的に基づき、エンコードデータサブセット410−1へとエントロピーエンコードされた複数のシンボルに関する確率分布を再構成する。
エンコードデータサブセット410−1および複数のシンボル確率581はその後、スタティックレンジデコーダ580−2により処理され、複数のデコードされたシンボル582が生成される。いくつかの非限定的な実施形態において、ブロック580−2がデコードされたシンボル582のパラレルエントロピーデコードを実行することを可能とするよう、ブロック580−1は、複数のシンボル確率581の複数のセット(デコードする複数のシンボルの各隣接するタイル1つ毎に1つ)を生成する。他の非限定的な実施形態において、ブロック580−2は、算術デコードなど異なるスタティックエントロピーデコード方法を実装する。
複数のデコードされたシンボル582は逆量子化器580−3により処理され、複数の逆量子化されたシンボル583が生成される。
複数の逆量子化されたシンボル583、継承情報532−1、および基準情報584はコンバイナ580−3により処理され、中間データ541および継承情報530−1の両方が生成される。非限定的な実施形態において、継承情報532−1は、エンコードデータサブセット410−1がより低い品質レベルから直接的に継承された複数の部分についての何らかの情報を指定する必要なしに中間データ541のそれら複数の部分を指定する。このことにより、デコーダが既に有する情報を用いてデコーダにより効果的に予測され得る複数の要素についての何らかの情報をエンコードデータが指定する必要がないので、データの送信におけるより高い効率性が可能となる。非限定的な実施形態において、継承情報530−1は、中間データ541のどの部分が基準情報584に少なくとも部分的に基づき生成されなければならないかも指定する。
したがって、エンコードデータは、再構成データにおいて指定されるシンボル確率分布に従ってスタティックレンジエントロピーデコーダを介しデコードされ得る。また更なる複数の実施形態によると、エンコードデータは、再構成データにおいて指定されるシンボル確率分布に従って静的算術エントロピーデコーダを介しデコードされ得る。
図6Aおよび6Bは、本明細書における複数の実施形態に係る変換された残余のデコードを図示する非限定的な例示的な図である。
図6Aは、複数の変換された残余の4つのSD平面(すなわち、SD解像度の4つの平面)、複数のA変換された残余640−1、複数のB変換された残余640−2、複数のC変換された残余640−3、複数のD変換された残余640−4を生成するために非限定的な実施形態において用いられる一連の処理を説明する。示されているように、エンコードデータ420の複数の異なる部分が、ハフマンエントロピーデコード(ハフマンデコーダ610)と複数のランレングス(RLE)デコード方法(RLEデコーダ620)との組み合わせに従ってデコードされる。非限定的な実施形態において、逆量子化ブロック630−1、630−2、630−3、630−4は、複数の異なる逆量子化法および/またはパラメータを活用する(複数の変換された残余の複数の異なるセットが、複数の異なる量子化パラメータに従ってエンコーダにより量子化されたことに対応する)。
図6Bは非限定的な実施形態を説明し、複数のA残余640−1およびD残余640−4が、エンコードデータ420に含まれるデコード情報を用いてではなく、デコーダ側において知られているデフォルトの複数の平面に従って再構成される(例えば、非限定的な実施形態において、複数の要素の複数の平面はゼロに初期化されている)。
他の非限定的な複数の実施形態(図6Aおよび6Bにおいて示されていない)において、図5Cに図示されている方法と類似のスタティックエントロピーデコード方法に従ってエンコードデータセット420−1、・・・、420−4がデコードされ、エントロピーデコーダは、エンコードデータ内に示されている1または複数のパラメータから外挿法によって推定されたシンボル確率分布に従ってスタティックエントロピーデコード方法を実装する。
図7A、7Bおよび7Cは、ブロック490の非限定的な実施形態により実行される複数の処理を図示する、複数の変換された残余の使用を図示する非限定的な例示的な図である。
図7Aは、本明細書における複数の実施形態に係る予備HD LOQ280、補正SD LOQ460、および複数の変換された残余640に基づき、ブロック490が最終的なHD LOQ150−1をどのように再構成するかを図示する。
最終的なHD LOQ150−1の複数の要素150−1−iの各2×2ブロック(図7Aは、150−1−1を図示しているが、同様の複数の処理が、画像の他の複数の2×2ブロックに関して実施される)が、予備HD LOQ280の対応するブロック280−i、補正SD LOQ460の対応する要素460−i(例えば、非限定的な実施形態において、画像内で280−iおよび150−1−iと共に配置された要素。280−iおよび150−1−iの「親要素」としても定義される)、および4つの対応する変換された残余640−1−i、640−2−i、640−3−iおよび640−4−iを処理することにより生成される。
より具体的には、複数の要素150−1−1の2×2ブロックの図示されているケースに関して、4つの要素280−1は、それらの対応する、補正SD LOQ460の親要素460−1と共にPA生成700のブロックにより処理され、値PA730−1が生成される。
B残余640−2−1は、ブロック280−1の複数の値のそれぞれに加算され、またはそこから減算され、例えば、非限定的な実施形態において、2×2ブロックの左の複数の要素に加算され、2×2ブロックの右の複数の要素から減算される。
C残余640−3−1は、ブロック280−1の複数の値のそれぞれに加算され、またはそれから減算され、例えば、非限定的な実施形態において、2×2ブロックの上部の複数の要素に加算され、2×2ブロックの下部の複数の要素から減算される。
D残余640−3−1は、ブロック280−1の複数の値のそれぞれに加算され、またはそれから減算され、例えば、非限定的な実施形態において、2×2ブロックの左上および右下の複数の要素に加算され、2×2ブロックの右上および左下の複数の要素から減算される。
これら組み合わせの全ての結果は、最終的なHD LOQ150−1の複数の要素150−1−1の2×2ブロックである。
手順はその後、最終的なHD LOQ150−1の複数の2×2ブロックの全てに関して繰り返される。非限定的な実施形態において、最終的なHD LOQ150−1の複数の次元の1つが奇数の数の要素を有している場合、デコーダは最初に、追加の行または列を含む画像を再構成し、その後そのような追加の行または列を破棄する。
言い換えると、説明されている非限定的な実施形態は、次のように最終的なHD LOQ150−1を再構成する。信号の第2表現(補正SD LOQ460)に基づき、より実質的に高い表示要素解像度の信号の予備表現である信号の第3表現(予備HD LOQ280)を生成し、エンコードデータの複数の第2部分を、変換された残余データセット(A残余、B残余、C残余、およびD残余640)へとデコードし、変換された残余データセット、信号の第2表現(補正SD LOQ460)、および信号の第3表現(予備HD LOQ280)の組み合わせを処理して、新たな残余データセットを生成し(予備HD LOQ280に直接的に適用されるので図面に示されず)、および、新たな残余データセットを信号の第3表現に適用して、信号の第4表現を生成する。
図7Bはブロック700の非限定的な実施形態を図示し、複数のPA730のSD平面の各値730−iは、要素460−i(例えば、yh,k)と、2×2ブロック280−iの対応する4つの要素の値(例えば、pi,j,pi,j+1,pi+1,j,pi+1,j+1)の平均との間の差を算出することにより生成される。値730−1はA残余640−1−1と組み合わせられ、結果として得られる値は、ブロック280−1の4つの要素のそれぞれに加算される。
図7Cは、階層的方法に従って残余データ(信号の第1表現を信号の第2表現へと変更するために適用される残余データなど)の再構成内の複数の変換された残余を用いる非限定的な実施形態を図示する。
実施形態によると、残余データは、一連の、より低い品質レベルの残余データの再構成と、(複数のアップサンプリング処理を介してなど)次に高い品質レベルの残余データの予備表現を生成することと、複数の変換された残余をデコードすることと、変換された残余により指定されるように次に高い品質レベルの相対的な残余データを生成することと、相対的な残余データを適用することにより次に高い品質レベルの残余データの予備表現を変更し、次に高い品質レベルの残余データを生成することに従って漸進的により高い複数の品質レベルで再構成される。信号の第2表現を生成するために、残余データの階層における最も高い品質レベルの残余データはその後、信号の第1表現に適用される。
言い換えると、実施形態はエンコードデータを次のように処理する。エンコードデータの複数の第2部分を第1品質レベルの残余データへとデコードし、第1品質レベルの残余データに基づき、第1品質レベルより高い第2品質レベルの残余データの予備表現を生成し、エンコードデータの複数の第2部分を、量子化され変換された残余データへとデコードし、量子化され変換された残余データを逆量子化して、変換された残余データを生成し、変換された残余データと、第1品質レベルの残余データと、第2品質レベルの残余データの予備表現との組み合わせを処理して、第2品質レベルの残余データを再生成し(図7Cに説明されているように、第2品質レベルの残余データの予備表現を、相対的な残余データセットと組み合わせることによってなど)、第2品質レベルの再生成された残余データを信号の第1表現に適用して、信号の第2表現を生成する。
非限定的な実施形態は、信号の第2表現に基づき、より実質的に高い表示要素解像度の信号の予備表現である信号の第3表現を生成することと、エンコードデータの複数の第2部分を新たな変換された残余データセットへとデコードすることと、新たな変換された残余データセットと、信号の第2表現と、信号の第3表現との組み合わせを処理して、新たな残余データセットを生成することと、新たな残余データセットを信号の第3表現に適用して、信号の第4表現を生成することとをさらに備える。
図8は、本明細書における複数の実施形態に係る機能性の何れかが実行される例示的なコンピュータアーキテクチャを図示する図である。1または複数の異なる処理技術の何れかが、コンピュータプロセッサハードウェア上でのソフトウェアコードの実行を介して実装され得る。
非限定的な実施形態において、コンピュータシステム850は、セットトップボックスまたは他の適切なリソースに配置される。本明細書における複数の実施形態は、コンピュータシステム850が、本明細書において説明されているように、エンコードデータをデコードし、1または複数の異なるより高い品質レベルの何れかで信号を再構成することを可能とする。非限定的な例として、コンピュータシステム850におけるコンピュータプロセッサハードウェアは、他の複数のレガシーセットトップボックスが第1品質レベルのみでデコードする(例えば、SDビデオを生成する)同じデータストリームを処理することにより第2品質レベル(例えば、HDビデオ)を生成するよう構成され得る。
例えば、より具体的に示されているように、本実施例のコンピュータシステム850(例えば、コンピュータプロセッサハードウェア)は、デジタル情報が格納され取り出され得る非一時的なタイプの媒体(すなわち任意のタイプのハードウェアストレージ媒体)などコンピュータ可読記憶媒体812を結合するインターコネクト811を含み得る。コンピュータシステム850は、プロセッサ813(すなわち、共に配置された1または複数のプロセッサ、若しくは共通点のないように配置された複数のプロセッサデバイスなどのコンピュータプロセッサハードウェア106、107等)、I/Oインタフェース814、通信インタフェース817等をさらに含み得る。
コンピュータプロセッサハードウェア(すなわち、プロセッサ813)は、単一の位置に配置され得、または複数の位置に分散させられ得る。
その名前が示唆するように、I/Oインタフェース814は、レポジトリ880、制御デバイス(コントローラ892など)、1または複数のディスプレイスクリーン等などの複数のリソースへの接続可能性を提供する。
コンピュータ可読記憶媒体812は、メモリ、光学ストレージ、ハードドライブ、フロッピー(登録商標)ディスク等などのデータを格納する任意のハードウェアストレージデバイスであり得る。一実施形態において、コンピュータ可読記憶媒体812は、複数の命令および/またはデータを格納する。
通信インタフェース817は、コンピュータシステム850およびプロセッサリソース813が、複数のネットワーク190の何れかなどのリソース上で通信を行うことを可能とする。I/Oインタフェース814は、プロセッサリソース813が、ローカルな、または遠隔の位置からデータにアクセスする、それぞれのディスプレイスクリーンを制御する、入力を受信する、等を行うことを可能とする。
示されているように、コンピュータ可読記憶媒体812は、プロセッサ813により実行されるデコーダアプリケーション840−1(例えば、ソフトウェア、ファームウェア等)によりエンコードされ得る。デコーダアプリケーション840−1は、本明細書に説明されている複数の処理の何れかを実装するための複数の命令を含むよう構成され得る。
一実施形態の処理の間、コンピュータ可読記憶媒体812に格納されたデコーダアプリケーション840−1の複数の命令を起動する、走らせる、実行する、解釈する、さもなくば実行するために、プロセッサ813は、インターコネクト811を介しコンピュータ可読記憶媒体812にアクセスする。
デコーダアプリケーション840−1の実行によって、プロセッサリソース813におけるデコーダプロセス840−2などの処理機能性が生成される。言い換えると、プロセッサリソース813と関連付けられたデコーダプロセス840−2は、コンピュータシステム850におけるプロセッサリソース813内での、またはその上でのデコーダアプリケーション840−1の実行の1または複数の態様を表す。
当業者は、コンピュータシステム850が、デコーダアプリケーション840−1を実行するための複数のハードウェアリソースの割り当ておよび使用を制御するオペレーティングシステムなど他の複数の処理および/またはソフトウェアおよびハードウェア構成要素を含み得ることを理解しよう。
複数の異なる実施形態によると、コンピュータシステムは、セットトップボックス、アクセスポイント、モバイルコンピュータ、パーソナルコンピュータシステム、無線デバイス、基地局、電話機、デスクトップコンピュータ、ラップトップ、ノートブック、ネットブックコンピュータ、メインフレームコンピュータシステム、ハンドヘルドコンピュータ、ワークステーション、ネットワークコンピュータ、アプリケーションサーバー、記憶デバイス、カメラ、カムコーダ−、セットトップボックス、モバイルデバイス、ビデオゲームコンソール、携帯型ビデオゲームデバイスなど消費者向け電子デバイス、スイッチ、モデム、ルータ等などの周辺機器、または一般的に、任意のタイプのコンピューティングデバイスまたは電子デバイスを含むがこれらに限定されない様々なタイプのデバイスのいずれかであり得ることに留意されたい。
コンピュータシステム850は、ネットワーク環境における任意の位置または複数の位置に存在し得る。コンピュータシステム850は、本明細書に説明されている機能性を実装するようネットワーク環境における任意の適切なリソースに含まれ得る。
ここで、異なる複数のリソースによりサポートされる機能性が、図9、10および11のフローチャートを介して説明される。以下の複数のフローチャートにおける複数のステップは、任意の適切な順番で実行され得ることに留意されたい。
図9は、複数の実施形態に係る例示的な方法を図示するフローチャート900である。上記で説明された複数の概念との何らかの重複があるであろうことに留意されたい。
処理ブロック910において、コンピュータプロセッサハードウェアは、データストリームを、エンコードデータの複数の第1部分181およびエンコードデータの複数の第2部分182へとパースする。
処理ブロック920において、コンピュータプロセッサハードウェアは第1デコーダ130を実装して、エンコードデータの複数の第1部分181を信号の第1表現へとデコードする。
処理ブロック930において、コンピュータプロセッサハードウェアは第2デコーダ120を実装して、エンコードデータの複数の第2部分182を、信号の第1表現をどのように変更するかを指定する再構成データ184へとデコードする。
処理ブロック940において、コンピュータプロセッサハードウェアは再構成データ184を信号の第1表現に適用して、信号の第2表現を生成する。
図10は、複数の実施形態に係る例示的な方法を図示するフローチャート1000である。上記で説明された複数の概念との何らかの重複があるであろうことに留意されたい。
処理ブロック1010において、コンピュータプロセッサハードウェアは、データストリームを、エンコードデータの複数の第1部分、エンコードデータの複数の第2部分、およびエンコードデータの複数の第3部分へとパースする。
処理ブロック1020において、コンピュータプロセッサハードウェアは第1デコーダを実行して、エンコードデータの複数の第1部分を第1品質レベルの信号の第1表現へとデコードする。
処理ブロック1030において、コンピュータプロセッサハードウェアは第2デコーダを実行して、エンコードデータの複数の第2部分を、信号の第1表現を第1品質レベルより高い第2品質レベルの信号の第2表現へとどのように変更するかを指定する第1再構成データへとデコードする。
処理ブロック1040において、コンピュータプロセッサハードウェアは、第1再構成データと信号の第1表現とを処理して、第2品質レベルの信号の第2表現を生成する。
処理ブロック1050において、コンピュータプロセッサハードウェアは第3デコーダを実行して、エンコードデータの複数の第3部分を、信号の第2表現を第2品質レベルより高い第3品質レベルの信号の第3表現へとどのように変更するかを指定する第2再構成データへとデコードする。
処理ブロック1060において、コンピュータプロセッサハードウェアは、第2再構成データと信号の第2表現とを処理して、第3品質レベルの信号の第3表現を生成する。
図11は、複数の実施形態に係る例示的な方法を図示するフローチャート1100である。上記で説明された複数の概念との何らかの重複があるであろうことに留意されたい。
処理ブロック1110において、コンピュータプロセッサハードウェアは、受信されたデータストリームを、信号の第1表現と関連付けられた複数の設定を指定するデコードデータおよびエンコードデータへとパースする。
処理ブロック1120において、コンピュータプロセッサハードウェアはデコードデータを利用して、信号の第1表現を生成する。
処理ブロック1130において、コンピュータプロセッサハードウェアはデコーダを実行して、エンコードデータを、信号の第1表現をどのように変更するかを指定する再構成データへとデコードする。
処理ブロック1140において、コンピュータプロセッサハードウェアは、再構成データを信号の第1表現に適用して、信号の第2表現を生成する。
図12Aは、本明細書における複数の実施形態に係る非限定的な例示的なエンコード法を図示する。
元のビデオ信号100はダウンコンバータ1200により処理され、ダウンコンバート信号1220が生成される。非限定的な実施形態において、ダウンコンバート信号1220は、より低い表示要素解像度の信号である。
レガシーエンコーダ1240はダウンコンバート信号1220を処理し、エンコードデータ1250が生成される。非限定的な実施形態において、レガシーエンコーダ1240は、MPEG(Motion Picture Expert Group)エンコード法に従って、ダウンコンバート信号をエンコードする。
再構成データ生成器1230は、元の信号100と、レガシーエンコーダ1240によりエンコードされた信号の(レガシーエンコーダ1240から再構成表現を受信することにより、または、図12Aに図示されているようにエンコードデータ1250を受信しデコードすることにより得られる)再構成表現とを処理し、エンコードデータ1260(エンコード拡張データなど)が生成される。
コンバイナ1270は、エンコードデータ1250(エンコードデータの複数の第1部分)とエンコードデータ1260(エンコードデータの複数の第2部分)とを受信し、それらをデータストリーム115へと組み合わせる。非限定的な実施形態において、データストリーム115は、エンコードデータの複数の第2部分が、エンコードデータの複数の第1部分とは異なるパケット識別子(PID)と関連付けられるMPEG−2トランスポートストリームとして編成される。
図12Bは、本明細書における複数の実施形態に係る非限定的な例示的なエンコード法を図示する。
元のビデオ信号100(UltraHDビデオ信号など)は、ダウンコンバータ1200により処理され、ダウンコンバート信号1220(元のビデオ信号のSD表現など)およびダウンコンバート信号1225(元のビデオ信号のHD表現など)が生成される。
レガシーエンコーダ1240はダウンコンバート信号1220を処理し、エンコードデータ1250が生成される。非限定的な実施形態において、レガシーエンコーダ1240は、MPEG(Motion Picture Expert Group)エンコード法に従って、ダウンコンバート信号をエンコードする。
HD再構成データ生成器1230は、信号のダウンコンバートされたHD表現1225と、レガシーエンコーダ1240によりエンコードされた信号の(レガシーエンコーダ1240から再構成表現を受信することにより、または、図12Bに示されるようにエンコードデータ1250を受信しデコードすることにより得られる)再構成表現を処理し、エンコードデータ1260(エンコードHD拡張データなど)が生成される。
UltraHD再構成データ生成器1237は、元の信号100と、1230から受信されたHD信号の再構成表現1235とを処理し、エンコードデータ1265(エンコードUltraHD拡張データなど)が生成される。
コンバイナ1271は、エンコードデータ1250(エンコードデータの複数の第1部分)と、エンコードデータ1260(エンコードデータの複数の第2部分)と、エンコードデータ1265(エンコードデータの複数の第3部分)とを受信し、それらをデータストリーム115へと組み合わせる。非限定的な実施形態において、データストリーム115は、エンコードデータの複数の第2部分とエンコードデータの複数の第3部分とが、エンコードデータの複数の第1部分のPIDと異なる特定のパケット識別子(PID)に関連付けられるMPEG−2トランスポートストリームとして編成される。
繰り返すが、本明細書に説明する技術は、受信されたデータをエンコードしデコードすることによく適していることに留意されたい。しかし、本明細書における複数の実施形態は、そのような複数の用途での使用に限定されず、本明細書に説明する技術は、他の複数の用途にも同じくよく適していることに留意すべきである。
本明細書に明記した説明に基づき、特許請求されている主題の理解を深められるよう数多くの具体的な詳細を明記した。しかし、当業者であれば、これらの具体的な詳細を用いずとも特許請求されている主題を実施し得ることを理解されよう。他の複数の例において、当業者には公知であろう方法、装置、システム等は、特許請求されている主題を曖昧にすることを避けるべく詳細には説明していない。詳細な説明のいくつかの箇所は、コンピュータメモリなどのコンピューティングシステムのメモリ内に格納されたデータビットまたは2値デジタル信号に対する処理のアルゴリズムまたは記号表現に関して提示した。これらのアルゴリズムを用いた説明または表現は、データ処理に関する分野の当業者が研究の内容を他の当業者に伝えるために用いる技術の例である。本明細書で説明される、または一般的にアルゴリズムは、所望される結果をもたらす首尾一貫した一連の処理または同様の処理であるものと見なされる。この文脈において、オペレーションまたは処理は、物理量の物理的な操作を伴う。必ずしもそうではないが典型的には、そのような量は、格納され得る、伝送され得る、組み合わせられ得る、比較され得る、さもなくば操作され得る電子信号または磁気信号の形態であり得る。主に共通の使用が理由となり、そのような信号をビット、データ、値、要素、シンボル、文字、用語、数字、数詞などと呼ぶことが時々、好都合であることが分かっている。しかし、これらの、および同様の用語は全て適切な物理量と関連付けられ、単に好都合なラベルに過ぎないことが理解されるべきである。具体的に異なるように述べられていない限り、以下の説明から明らかなように、本明細書を通じて「処理」、「演算」、「算出」、「判断」、または同様のものなどの用語を利用した説明は、メモリ、レジスタ、または他の情報記憶デバイス、送信デバイス、またはコンピューティングプラットホームのディスプレイデバイス内で物理的な電子量または磁気量として表されるデータを操作する、または変換するコンピュータまたは同様の電子コンピューティングデバイスなどのコンピューティングプラットホームによる動作または処理を指すことが理解される。
好ましい実施形態を参照し、本願発明を具体的に示し説明してきたが、当業者には、添付の請求項により規定される本願の思想および態様から逸脱することなく、形態および詳細に関して様々な変更が加えられ得ることが理解されよう。そのような変更は、本願の態様に含まれることが意図されている。よって、本願の実施形態の先述した説明は限定を意図しない。むしろ、本願発明の任意の限定は以下の請求項において提示される。
本明細書によれば、以下の各項目に記載の事項もまた開示される。
[項目1]
コンピュータプロセッサハードウェアを介してハイブリッド上位互換性のあるデータストリームをデコードするための方法であって、
前記コンピュータプロセッサハードウェアのパーサーロジックによって、前記データストリームを、レガシーフォーマットに従ってエンコードされ、第1固有識別子値によりタグ付けされるデータの複数の第1部分、および階層的エンコードフォーマットに従ってエンコードされ、第2固有識別子値によりタグ付けされるデータの複数の第2部分へパースする段階と、
前記データストリームの第1表現を第1品質レベルで得るために、第1デコーダにおいて、前記複数の第1部分をデコードする段階と、
前記データストリームの予備的な第2表現を第2品質レベルで得るために、前記第1品質レベルを有する前記第1表現をアップサンプリングする段階と、
再構成データを得るために、第2デコーダにおいて、前記複数の第2部分をデコードする段階であって、前記再構成データは、前記第1表現よりも高い品質を有する第2品質レベルで前記データストリームの第2表現を得るべく、前記予備的な第2表現をどのように変更するかを指定する、デコードする段階と、
前記再構成データを前記予備的な第2表現に適用して、前記第2表現を第2品質レベルで生成する段階と
を備え、
前記複数の第1部分は、前記レガシーフォーマットに従ってデコードされ、
前記複数の第2部分から導出される前記再構成データは、前記階層的エンコードフォーマットに従ってデコードされる、方法。
[項目2]
前記複数の第1部分はMPEG(Moving Pictures Experts Group)フォーマットに従ってデコードされる、項目1に記載の方法。
[項目3]
前記複数の第1部分は非圧縮ビデオデータを含む、項目1または2に記載の方法。
[項目4]
前記複数の第2部分は少なくとも時間的または空間的に圧縮されたデータであり、
前記第2デコーダにおいてデコードする段階は、少なくとも時間的および空間的なアップサンプリング処理のうちの1つを前記圧縮されたデータに適用して前記再構成データを生成する段階を有し、
適用される前記アップサンプリング処理は、より低い解像度の複数の表示要素設定をより高い解像度の複数の表示要素設定に変換する、項目2または3に記載の方法。
[項目5]
前記コンピュータプロセッサハードウェアは第1コンピュータプロセッサハードウェアであり、
第2コンピュータプロセッサハードウェアを介して、
前記データストリームを受信する段階と、
前記データストリームにおいて受信された前記複数の第1部分のみの、前記第1表現へのデコードを開始する段階と、
前記第1表現の、ディスプレイスクリーン上での表示を開始する段階と
を備える、項目1から4のいずれか一項に記載の方法。
[項目6]
前記複数の第1部分は、レガシーデコーダコンピュータプロセッサハードウェアと互換性のあるデコード方法に従ってデコードされ、前記データストリームは、前記複数の第2部分がレガシーデコーダコンピュータプロセッサハードウェアにより用いられないよう編成され、
前記レガシーデコーダコンピュータプロセッサハードウェアは、i)前記複数の第1部分のみのデコードを開始し、ii)前記第1表現の、それぞれのディスプレイスクリーン上での表示を開始する、項目5に記載の方法。
[項目7]
前記再構成データは、1または複数の表示要素解像度に従ってエンコードされた残余データの階層を含む、項目1から6のいずれか1項に記載の方法。
[項目8]
前記第2デコーダを実行して前記複数の第2部分をデコードする段階は、
前記複数の第2部分により指定されるように第1品質レベルの第1残余データセットをデコードする段階と、
前記第1残余データセットを利用して、前記第1表現に少なくとも部分的に基づき、前記第1表現よりも高い品質レベルを有する前記第2表現を生成する段階と、
前記第2表現に少なくとも部分的に基づき、前記第2表現の解像度より高い解像度を有する前記データストリームの第3表現を生成する段階と、
前記複数の第2部分により指定されるように第2品質レベルの第2残余データセットをデコードする段階と、
前記第2残余データセットを利用して、前記第3表現に少なくとも部分的に基づき、前記第3表現よりも高い品質レベルを有する前記データストリームの第4表現を生成する段階と
を有する、項目1から7のいずれか一項に記載の方法。
[項目9]
前記第2デコーダを実行して、前記複数の第2部分をデコードする段階は、
前記複数の第2部分により指定される複数のアップサンプリング処理を特定する段階と、
前記複数のアップサンプリング処理を前記第2表現に適用して、前記第2表現の表示要素解像度より実質的に高い表示要素解像度を有する前記データストリームの第3表現を生成する段階と
を有する、項目1から8のいずれか一項に記載の方法。
[項目10]
前記再構成データは少なくとも第1残余データセットおよび第2残余データセットを含み、
前記第1残余データセットは、前記データストリームの表現をどのように第1表示要素解像度で変更するかを指定し、
前記第2残余データセットは、前記データストリームの表現をどのように第2表示要素解像度で変更するかを指定し、
前記第2表示要素解像度は、前記第1表示要素解像度より高い、項目1から9のいずれか一項に記載の方法。
[項目11]
前記データストリームは、複数の表示要素の複数のフレームを含むビデオ信号であり、
前記複数の第1部分と前記複数の第2部分との間の複数のタイミング関連性を特定する段階をさらに備え、
前記複数のタイミング関連性は、前記再構成データが、前記データストリームの前記第1表現における前記複数の表示要素の前記複数のフレームのどれに関連するかを示し、
前記再構成データを前記第1表現に適用して前記第2表現を生成する段階は、前記複数のタイミング関連性に従って、前記再構成データを利用して、前記第1表現を前記第2表現へと時間的にアップサンプリングする段階を有し、
前記第2表現は、複数の表示要素のフレームを前記第1表現より多く含む、項目1から10のいずれか一項に記載の方法。
[項目12]
前記再構成データを適用する段階は、前記再構成データにより指定されるように、前記第2表現を、前記第2表現より高い表示要素解像度を有する前記データストリームの第3表現へと空間的にアップサンプリングする段階を有する、項目1から11のいずれか一項に記載の方法。
[項目13]
前記再構成データは、複数の表示要素解像度に従ってエンコードされた残余データの階層を含み、
前記第2デコーダは、複数のアップサンプリング処理を前記複数の第2部分に適用して前記残余データの階層を再生成する、項目1から12のいずれか一項に記載の方法。
[項目14]
前記複数の第2部分を、変換された残余データへとデコードする段階と、
前記変換された残余データを処理して量子化された残余データを生成する段階と、
前記量子化された残余データを逆量子化して残余データを再生成する段階と、
再生成された前記残余データを前記第1表現に適用して前記第2表現を生成する段階と
をさらに備える、項目1から13のいずれか一項に記載の方法。
[項目15]
前記複数の第2部分を第1品質レベルの残余データへとデコードする段階と、
前記第1品質レベルの前記残余データに基づき、前記第1品質レベルより高い第2品質レベルの残余データの予備表現を生成する段階と、
前記複数の第2部分を、量子化され変換された残余データへとデコードする段階と、
前記量子化され変換された残余データを逆量子化して、変換された残余データを生成する段階と、
前記変換された残余データと、前記第2品質レベルの前記残余データの予備表現との組み合わせを処理して、前記第2品質レベルの残余データを再生成する段階と、
前記第2品質レベルの再生成された前記残余データを前記第1表現に適用して、前記第2表現を生成する段階と
をさらに備える、項目1から14のいずれか一項に記載の方法。
[項目16]
前記第2表現に基づき、より実質的に高い表示要素解像度の前記データストリームの予備表現である前記データストリームの第3表現を生成する段階と、
前記複数の第2部分を、変換された残余データセットへとデコードする段階と、
前記変換された残余データセットと、前記第3表現との組み合わせを処理して、残余データセットを生成する段階と、
前記残余データセットを前記第3表現に適用して、前記データストリームの第4表現を生成する段階と
をさらに備える、項目1から15のいずれか一項に記載の方法。
[項目17]
アップサンプリング処理を、前記第2表現に適用して、前記第2表現より実質的に高い表示要素解像度を有する前記データストリームの第3表現を生成する段階をさらに備え、
前記アップサンプリング処理の適用は、前記第2表現における複数の表示要素のための複数の設定に基づき、前記第3表現における表示要素のための複数の設定を導出することを有する、項目1から16のいずれか一項に記載の方法。
[項目18]
前記パーサーロジックによって、前記データストリームを、前記階層的エンコードフォーマットに従ってエンコードされ、第3固有識別子値によりタグ付けされるデータの複数の第3部分へとパースする段階と、
第2再構成データを得るために、第3デコーダにおいて、前記複数の第3部分をデコードする段階であって、前記第2再構成データは、前記第2品質レベルより高い第3品質レベルで前記データストリームの第3表現を得るべく、前記第2表現をどのように変更するかを指定する、デコードする段階と、
前記第2再構成データと、前記第2表現とを処理して、前記第3品質レベルの前記第3表現を生成する段階と
を備える、項目1から17のいずれか一項に記載の方法。
[項目19]
前記データストリームを少なくとも1つの宛先に送信する段階と
を更に備える、項目1から18のいずれか一項に記載の方法。
[項目20]
前記データストリームを前記少なくとも1つの宛先に送信する段階は、
前記データストリームを、前記複数の第1部分のみをデコードする第1宛先へ送信して、前記第1表現を再生成し再生する段階と、
前記データストリームを、前記複数の第1部分と前記複数の第2部分とをデコードする第2宛先へ送信する段階と
を有し、
前記第2宛先は、デコードされた、前記複数の第1部分に基づき前記第1表現を再生成し、
前記第2宛先は、デコードされた、前記複数の第2部分を前記第1表現に適用して、前記第2表現を生成し再生する、項目19に記載の方法。