特許第5908914号(P5908914)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ トムソン ライセンシングの特許一覧

特許5908914運動行列を用いた映像の符号化および復号のための方法および装置
<>
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000040
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000041
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000042
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000043
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000044
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000045
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000046
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000047
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000048
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000049
  • 特許5908914-運動行列を用いた映像の符号化および復号のための方法および装置 図000050
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5908914
(24)【登録日】2016年4月1日
(45)【発行日】2016年4月26日
(54)【発明の名称】運動行列を用いた映像の符号化および復号のための方法および装置
(51)【国際特許分類】
   H04N 19/90 20140101AFI20160412BHJP
   H04N 19/60 20140101ALI20160412BHJP
【FI】
   H04N19/90
   H04N19/60
【請求項の数】21
【全頁数】29
(21)【出願番号】特願2013-533907(P2013-533907)
(86)(22)【出願日】2011年10月10日
(65)【公表番号】特表2013-540403(P2013-540403A)
(43)【公表日】2013年10月31日
(86)【国際出願番号】US2011055562
(87)【国際公開番号】WO2012051094
(87)【国際公開日】20120419
【審査請求日】2014年10月7日
(31)【優先権主張番号】61/393,186
(32)【優先日】2010年10月14日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】501263810
【氏名又は名称】トムソン ライセンシング
【氏名又は名称原語表記】Thomson Licensing
(74)【代理人】
【識別番号】110001243
【氏名又は名称】特許業務法人 谷・阿部特許事務所
(72)【発明者】
【氏名】アブドルレザ モガダム
(72)【発明者】
【氏名】ジョエル ソール
(72)【発明者】
【氏名】ルー シャオアン
【審査官】 堀井 啓明
(56)【参考文献】
【文献】 米国特許第06157677(US,A)
【文献】 米国特許出願公開第2008/0055120(US,A1)
【文献】 特表2006−523390(JP,A)
【文献】 特表2007−502561(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N19/00−19/98
(57)【特許請求の範囲】
【請求項1】
運動行列を用いて映像シーケンスのピクチャを符号化するための映像エンコーダを備え、前記運動行列はデコーダに前記運動行列および参照フレームを用いて前記ピクチャを一意的に再構築させることができるデータを有し、
前記運動行列は、所与の階数を有し、前記運動行列の列を積み上げることにより形成されるベクトルは、辞書と疎な表現との積からなり、
前記辞書は、前記ピクチャを表すため、ならびに前記ピクチャを対応するデコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの前記組を含み、前記辞書は、非ゼロの残差の数を最小化するために前記映像シーケンスの参照ピクチャの組から形成され、
前記運動行列は、
第1の表現を見出す第1のステップであって、前記辞書と前記第1の表現との積が、初期値が前記ピクチャである第1の行列の列を積み上げることにより形成されるベクトルである、前記第1のステップと、
前記第1の表現の大きい方から所与の数の成分だけを有する第2の表現を生成する第2のステップと、
第2の行列を作成する第3のステップであって、前記第2の行列の列を積み上げることにより形成されるベクトルは前記辞書と前記第2の表現との積である、前記第3のステップと、
前記第2の行列の大きい方から前記所与の階数と同じ数の固有値を有する第3の行列を生成する第4のステップと、
前記第1の表現がある特定のレベルに収束するまで、前記第1の行列を前記第3の行列に置き換えて前記第1のステップから前記第4のステップを繰り返し、前記第1の表現がある特定のレベルに収束したとき、前記第1の行列を前記運動行列とする、第5のステップと、
により見出される、装置。
【請求項2】
前記辞書は、前記ピクチャと参照ピクチャの前記組との間の空間的相関および時間的相関から形成される、請求項1に記載の装置。
【請求項3】
前記映像エンコーダは、埋め込み行列に前記運動行列を埋め込むための埋め込みデバイスと、前記埋め込み行列をサンプリングして前記埋め込み行列からのサンプルのサブセットを提供するためのサンプラと、前記サンプルのサブセットを量子化して量子化されたサンプルのサブセットを提供するための量子化器と、前記量子化されたサンプルのサブセットを圧縮されたシンボルにエントロピー符号化するためのエントロピーコーダとを備える、請求項1に記載の装置。
【請求項4】
前記埋め込み行列は、前記運動行列を乗じた2つの行列を用いて決定され、前記2つの行列は、前記埋め込み行列のランダムな固有ベクトルの閾値の量を与えるように選択される、請求項3に記載の装置。
【請求項5】
運動行列を用いて映像シーケンスのピクチャを符号化するステップを含み、前記運動行列はデコーダに前記運動行列および参照フレームを用いて前記ピクチャを一意的に再構築させることができるデータを有し、
前記運動行列は、所与の階数を有し、前記運動行列の列を積み上げることにより形成されるベクトルは、辞書と疎な表現との積からなり、
前記辞書は、前記ピクチャを表すため、ならびに前記ピクチャを対応するデコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの前記組を含み、前記辞書は、非ゼロの残差の数を最小化するために前記映像シーケンスの参照ピクチャの組から形成され、
前記運動行列は、
第1の表現を見出す第1のステップであって、前記辞書と前記第1の表現との積が、初期値が前記ピクチャである第1の行列の列を積み上げることにより形成されるベクトルである、前記第1のステップと、
前記第1の表現の大きい方から所与の数の成分だけを有する第2の表現を生成する第2のステップと、
第2の行列を作成する第3のステップであって、前記第2の行列の列を積み上げることにより形成されるベクトルは前記辞書と前記第2の表現との積である、前記第3のステップと、
前記第2の行列の大きい方から前記所与の階数と同じ数の固有値を有する第3の行列を生成する第4のステップと、
前記第1の表現がある特定のレベルに収束するまで、前記第1の行列を前記第3の行列に置き換えて前記第1のステップから前記第4のステップを繰り返し、前記第1の表現がある特定のレベルに収束したとき、前記第1の行列を前記運動行列とする、第5のステップと、
により見出される、映像エンコーダにおける方法。
【請求項6】
前記辞書は、前記ピクチャと参照ピクチャの前記組との間の空間的相関および時間的相関から形成される、請求項5に記載の方法。
【請求項7】
前記符号化するステップは、
埋め込み行列に前記運動行列を埋め込むステップと、
前記埋め込み行列をサンプリングして前記埋め込み行列からのサンプルのサブセットを提供するステップと、
前記サンプルのサブセットを量子化して量子化されたサンプルのサブセットを提供するステップと、
前記量子化されたサンプルのサブセットを圧縮されたシンボルにエントロピー符号化するステップと、
を含む、請求項5に記載の方法。
【請求項8】
前記埋め込み行列は、前記運動行列を乗じた2つの行列を用いて決定され、前記2つの行列は、前記埋め込み行列のランダムな固有ベクトルの閾値の量を与えるように選択される、請求項7に記載の方法。
【請求項9】
前記サンプルのサブセットは、前記埋め込み行列からランダムに選択される、請求項7に記載の方法。
【請求項10】
前記サンプリングするステップは、前記サンプルのサブセットの前記サンプルと異なる前記埋め込み行列内の位置にある前記埋め込み行列の部分を破棄するステップを含む、請求項7に記載の方法。
【請求項11】
運動行列の近似値を用いて映像シーケンスのピクチャを復号するための映像デコーダを備え、前記運動行列は前記映像デコーダに前記運動行列および参照フレームを用いて前記ピクチャを一意的に再構築させることができるデータを有し、
前記運動行列の前記近似値は、所与の階数を有し、前記運動行列の列を積み上げることにより形成されるベクトルは、辞書と疎な表現との積からなり、
前記辞書は、前記ピクチャを表すため、ならびに前記ピクチャを前記映像デコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの前記組を含み、前記辞書は、非ゼロの残差の数を最小化するために前記映像シーケンスの参照ピクチャの組から形成され、
前記運動行列は、
第1の表現を見出す第1のステップであって、前記辞書と前記第1の表現との積が、初期値が前記ピクチャである第1の行列の列を積み上げることにより形成されるベクトルである、前記第1のステップと、
前記第1の表現の大きい方から所与の数の成分だけを有する第2の表現を生成する第2のステップと、
第2の行列を作成する第3のステップであって、前記第2の行列の列を積み上げることにより形成されるベクトルは前記辞書と前記第2の表現との積である、前記第3のステップと、
前記第2の行列の大きい方から前記所与の階数と同じ数の固有値を有する第3の行列を生成する第4のステップと、
前記第1の表現がある特定のレベルに収束するまで、前記第1の行列を前記第3の行列に置き換えて前記第1のステップから前記第4のステップを繰り返し、前記第1の表現がある特定のレベルに収束したとき、前記第1の行列を前記運動行列とする、第5のステップと、
により見出される、装置。
【請求項12】
前記辞書は、前記ピクチャと参照ピクチャの前記組との間の空間的相関および時間的相関から形成される、請求項11に記載の装置。
【請求項13】
前記映像デコーダは、圧縮されたシンボルをエントロピー復号して、埋め込み行列からの量子化されたサンプルのサブセットを提供するためのエントロピーデコーダと、前記量子化されたサンプルのサブセットを逆量子化して、前記埋め込み行列の復元されたバージョンからのサンプルのサブセットの近似値を提供するための逆量子化器と、前記埋め込み行列の前記復元されたバージョンの欠落した部分を決定して、前記埋め込み行列の完成した復元されたバージョンを提供するための行列完成デバイスと、前記埋め込み行列の前記完成した復元されたバージョンから前記運動行列の前記近似値を再構築するための再構築デバイスと、を備える、請求項11に記載の装置。
【請求項14】
前記埋め込み行列の前記復元されたバージョンの前記欠落した部分は、前記サンプルのサブセットの前記サンプルと異なる前記埋め込み行列内の位置にある前記埋め込み行列の以前に破棄された部分に対応する、請求項13に記載の装置。
【請求項15】
運動行列の近似値を用いて映像シーケンスのピクチャを復号するステップを含み、前記運動行列は映像デコーダに前記運動行列および参照フレームを用いて前記ピクチャを一意的に再構築させることができるデータを有し、
前記運動行列の前記近似値は、所与の階数を有し、前記運動行列の列を積み上げることにより形成されるベクトルは、辞書と疎な表現との積からなり、
前記辞書は、前記ピクチャを表すため、ならびに前記ピクチャを前記映像デコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの前記組を含み、前記辞書は、非ゼロの残差の数を最小化するために前記映像シーケンスの参照ピクチャの組から形成され、
前記運動行列は、
第1の表現を見出す第1のステップであって、前記辞書と前記第1の表現との積が、初期値が前記ピクチャである第1の行列の列を積み上げることにより形成されるベクトルである、前記第1のステップと、
前記第1の表現の大きい方から所与の数の成分だけを有する第2の表現を生成する第2のステップと、
第2の行列を作成する第3のステップであって、前記第2の行列の列を積み上げることにより形成されるベクトルは前記辞書と前記第2の表現との積である、前記第3のステップと、
前記第2の行列の大きい方から前記所与の階数と同じ数の固有値を有する第3の行列を生成する第4のステップと、
前記第1の表現がある特定のレベルに収束するまで、前記第1の行列を前記第3の行列に置き換えて前記第1のステップから前記第4のステップを繰り返し、前記第1の表現がある特定のレベルに収束したとき、前記第1の行列を前記運動行列とする、第5のステップと、
により見出される、前記映像デコーダにおける方法。
【請求項16】
前記辞書は、前記ピクチャと参照ピクチャの前記組との間の空間的相関および時間的相関から形成される、請求項15に記載の方法。
【請求項17】
圧縮されたシンボルをエントロピー復号して、埋め込み行列からの量子化されたサンプルのサブセットを提供するステップと、
前記量子化されたサンプルのサブセットを逆量子化して、前記埋め込み行列の復元されたバージョンからのサンプルのサブセットの近似値を提供するステップと、
前記埋め込み行列の前記復元されたバージョンの欠落した部分を決定して、前記埋め込み行列の完成した復元されたバージョンを提供するステップと、
前記埋め込み行列の前記完成した復元されたバージョンから前記運動行列の前記近似値を再構築するステップと
をさらに含む、請求項15に記載の方法。
【請求項18】
前記埋め込み行列の前記復元されたバージョンの前記欠落した部分は、前記サンプルのサブセットの前記サンプルと異なる前記埋め込み行列内の位置にある前記埋め込み行列の以前に破棄された部分に対応する、請求項17に記載の方法。
【請求項19】
前記運動行列の前記近似値は、前記埋め込み行列と、前記埋め込み行列を乗じた2つの行列とを用いて決定される、請求項17に記載の方法。
【請求項20】
前記埋め込み行列からの前記サンプルのサブセットの前記サンプルが前記映像デコーダおよび対応する映像エンコーダにおいて同じそれぞれの位置にあることを保証するために、同じ乱数のシードおよび同じ乱数生成器が前記映像デコーダおよび前記対応する映像エンコーダによって使用される、請求項17に記載の方法。
【請求項21】
前記運動行列の疎な表現が、前記埋め込み行列の前記復元されたバージョンに対して決定され、前記ピクチャのベクトル化された形態が、前記疎な表現および前記辞書に応じて決定され、前記ベクトル化された形態は、前記ピクチャの再構築されたバージョンを得るために再整形される、請求項17に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本出願は、2010年10月14日に出願した米国仮出願第61/393,186号の利益を主張するものであり、この仮出願は、参照によりその全体が本明細書に組み込まれる。
【0002】
本原理は、概して、映像の符号化および復号に関し、より詳細には、運動行列を用いた映像の符号化および復号のための方法および装置に関する。
【背景技術】
【0003】
映像コーデックは、デジタル映像に関する映像の圧縮および/または解凍を可能にするデバイスである。映像の品質と、その映像を表すために必要とされるデータの量(ビットレートとしても知られる)と、符号化アルゴリズムおよび復号アルゴリズムの複雑性と、データの損失および誤りに対する堅牢性と、編集の容易さと、ランダムアクセスと、最先端の圧縮アルゴリズムの設計と、エンドツーエンドの遅延と、いくつかのその他の要因との間には、複雑なバランスがある。
【0004】
映像コーデックは、本来アナログであるデータセットをデジタルフォーマットで表そうとする。アナログ映像信号の設計は、輝度(luma)の情報と色の情報とを別々に表すので、コーデック設計における画像データ圧縮の通常の最初のステップは、画像をYCbCr色空間で表し、記憶することである。YCbCrへの変換は、以下の2つの利点、すなわち、第1に、この変換が、色信号の相関をなくすことによって圧縮性を高めることと、第2に、この変換が、知覚する上で遥かに重要である輝度信号を、知覚する上で比較的重要でなく、比較的低い解像度で表され得る色差(chroma)信号から分離してより効率的なデータ圧縮を実現することとをもたらす。
【0005】
復号プロセスは、符号化プロセスの各段階の逆変換を可能な限り実行することからなる。完全には可逆でない1つの段階は、量子化の段階である。この段階では、逆変換のベストエフォートの近似が行われる。プロセスのこの部分は、「逆量子化」と呼ばれることが多いが、量子化は本質的に非可逆プロセスである。
【0006】
映像を符号化する従来の方法は、参照における単純な動きおよび何らかの残差に関してフレームを分解することを含む。図1に目を向けると、従来の符号化の方法が、全体的に参照番号100によって示されている。符号化の方法100は、符号化されるべきフレーム2(時間tにおけるf)と、(参照)フレーム1(時間tにおけるf)と、何らかの残差とを含む。フレーム2(時間tにおけるf)は、フレーム1(時間tにおけるf)に対する参照と残差とを用いて符号化される。ISO/IEC(International Organization for Standardization/International Electrotechnical Commission) MPEG−4(Moving Picture Experts Group−4) Part 10 AVC(Advanced Video Coding)規格/ITU−T(International Telecommunication Union,Telecommunication Sector) H.264勧告(以降、「MPEG−4 AVC規格」)などの従来のハイブリッド映像コーデックは、この原理に基づいている。ブロックがイントラ予測またはインター予測され、次いで、典型的な変換のプロセス、量子化、エントロピー符号化、および場合によっては何らかのフィルタリングが適用される。
【0007】
映像の符号化は非常に幅広い分野であり、この主題に関して数十年に及ぶ研究がある。さまざまな技術が、映像の符号化に適用されてきた。最近登場した圧縮センシングは、この問題で使用するさらに別のツールをもたらした。例えば、1つの従来技術のアプローチにおいては、圧縮センシングが、データブロックを符号化するためのモードとして使用される。しかしながら、このアプローチは、やはり従来の方式に頼っており、圧縮センシングをシステムに付随的な方法として導入する。
【発明の概要】
【0008】
従来技術のこれらのおよびその他の難点および欠点が、運動行列を用いた映像の符号化および復号のための方法および装置を対象とする本原理によって対処される。
【0009】
本原理の一態様によれば、装置が提供される。この装置は、運動行列を用いて映像シーケンスのピクチャ(picture)を符号化するための映像エンコーダを含む。運動行列は、所与の閾値未満の階数と、辞書に対する疎な表現とを有する。辞書は、ピクチャを表すため、ならびにピクチャを対応するデコーダにおいてアトム(atom)および基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの組を含む。辞書は、映像シーケンスの参照ピクチャの組から形成される。
【0010】
本原理の別の態様によれば、映像エンコーダにおける方法が提供される。この方法は、運動行列を用いて映像シーケンスのピクチャを符号化するステップを含む。運動行列は、所与の閾値未満の階数と、辞書に対する疎な表現とを有する。辞書は、ピクチャを表すため、ならびにピクチャを対応するデコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの組を含む。辞書は、映像シーケンスの参照ピクチャの組から形成される。
【0011】
本原理のさらに別の態様によれば、装置が提供される。この装置は、運動行列の近似値を用いて映像シーケンスのピクチャを復号するための映像デコーダを含む。運動行列の近似値は、所与の閾値未満の階数と、辞書に対する疎な表現とを有する。辞書は、ピクチャを表すため、ならびにピクチャを映像デコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの組を含む。辞書は、映像シーケンスの参照ピクチャの組から形成される。
【0012】
本原理のさらに別の態様によれば、映像デコーダにおける方法が提供される。方法は、運動行列の近似値を用いて映像シーケンスのピクチャを復号するステップを含む。運動行列の近似値は、所与の閾値未満の階数と、辞書に対する疎な表現とを有する。辞書は、ピクチャを表すため、およびピクチャを映像デコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの組を含む。辞書は、映像シーケンスの参照ピクチャの組から形成される。
【0013】
本原理のこれらのおよびその他の態様、特徴、および利点は、添付の図面に関連して読まれるべき例示的な実施形態の以下の詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【0014】
本原理は、以下の例示的な図にしたがってより深く理解され得る。
図1】従来技術による従来の符号化の方法を示す図である。
図2】本原理の一実施形態による、本原理が適用され得る例示的な映像エンコーダを示すブロック図である。
図3】本原理の一実施形態による、本原理が適用され得る例示的な映像デコーダを示すブロック図である。
図4】本原理の一実施形態による、運動行列のベクトル化の例示的な操作およびベクトル化操作の逆変換を示す図である。
図5】本原理の一実施形態による、運動行列に基づく映像符号化方式を用いた符号化のための例示的な方法を示す流れ図である。
図6】本原理の一実施形態による、運動行列に基づく映像符号化方式を用いた復号のための例示的な方法を示す流れ図である。
図7】本原理の一実施形態による、運動行列を低階数の密行列Zに埋め込むための例示的な方法を示す図である。
図8】本原理の一実施形態による、運動行列からのサンプリングおよび行列の完成のための例示的な方法を示す図である。
図9】本原理の一実施形態による、対応する固有値が十分にランダムであるときの低階数の行列の完成の例を示す図である。
図10】本原理の一実施形態による、対応する固有値が十分にはランダムでないことが原因で失敗する低階数の行列の例を示す図である。
図11】本原理の一実施形態による、修正されたフレームf’の疎な表現の圧縮サンプル(compressive sample)から形成された埋め込み行列(embedded matrix)Zの例を示す図である。
【発明を実施するための形態】
【0015】
本原理は、運動行列を用いた映像の符号化および復号のための方法および装置を対象とする。
【0016】
この説明は、本原理を示す。したがって、当業者が、本明細書においてはっきりと説明されていないかまたは示されていないが本原理を具現化し、本原理の精神および範囲に含まれるさまざまな構成を考案し得ることが理解される。
【0017】
本明細書に記載のすべての例および条件を表す言い回しは、当技術分野を発展させるために(1人のまたは複数の)発明者によって与えられた本原理および概念を読者が理解することを助けるために教示を目的とするように意図されており、そのような具体的に記載された例および条件に限定されないものと解釈されるべきである。
【0018】
さらに、本原理の原理、態様、および実施形態ならびにそれらの具体的な例を示す本明細書のすべての記述は、それらの構造的均等物と機能的均等物の両方を包含するように意図される。加えて、そのような均等物は、現在知られている均等物と将来開発された均等物の両方、すなわち、構造に関係なく同じ機能を実行する開発された任意の要素を含むことが意図される。
【0019】
したがって、例えば、本明細書に示された構成図は、本原理を具現化する例示的な回路の概念図を表すことが当業者によって理解される。同様に、任意のフローチャート、流れ図、状態遷移図、擬似コードなどは、実質的にコンピュータ可読媒体中に表現される可能性があり、したがって、コンピュータまたはプロセッサが明示的に示されているか否かにかかわらずそのようなコンピュータまたはプロセッサによって実行される可能性があるさまざまなプロセスを表すことが理解される。
【0020】
図に示されたさまざまな要素の機能は、専用のハードウェア、および適切なソフトウェアに関連してソフトウェアを実行することができるハードウェアを使用することによって提供され得る。プロセッサによって提供されるとき、それらの機能は、単一の専用プロセッサによって、単一の共有プロセッサによって、または一部が共有される可能性がある複数の個別的なプロセッサによって提供され得る。さらに、用語「プロセッサ」または「コントローラ」の明示的な使用は、ソフトウェアを実行することができるハードウェアを排他的に指すものと解釈されるべきでなく、デジタル信号プロセッサ(「DSP」)ハードウェア、ソフトウェアを記憶するための読み出し専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、および不揮発性ストレージを限定することなしに暗黙的に含み得る。
【0021】
通常のおよび/またはカスタムのその他のハードウェアも、含まれ得る。同様に、図に示された任意のスイッチは、概念的であるに過ぎない。それらのスイッチの機能は、プログラム論理の動作によって、専用の論理によって、プログラムの制御と専用の論理とのインタラクションによって、またはさらには手動でも実行される可能性があり、具体的な技術は、状況からより具体的に理解されるように実施者によって選択され得る。
【0022】
本出願の請求項においては、指定された機能を実行するための手段として表された任意の要素は、例えば、a)その機能を実行する回路要素の組み合わせ、またはb)機能を実行するためにそのソフトウェアを実行するための適切な回路と組み合わされた任意の形態のソフトウェア、したがって、ファームウェア、マイクロコードなどを含むソフトウェアを含む、その機能を実行する任意の方法を包含するように意図される。そのような請求項によって定義される本原理は、さまざまな記載された手段によって提供される機能が、請求項が求めるように組み合わされ、まとめられるという事実に存する。したがって、それらの機能を提供することができる任意の手段は、本明細書に示された手段と均等であると見なされる。
【0023】
本明細書における本原理の「一実施形態」との言及およびそのその他の変化形は、その実施形態に関連して説明された特定の特徴、構造、特性などが本原理の少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書中のさまざまな場所に現れる表現「一実施形態において」および任意のその他の変化形が現れることは、必ずしもすべてが同じ実施形態に言及しているとは限らない。
【0024】
例えば、「A/B」、「Aおよび/またはB」、および「AおよびBのうちの少なくとも1つ」の場合の以下の「/」、「および/または」、および「〜のうちの少なくとも1つ」のいずれかの使用は、1番目に挙げられた選択肢(A)のみの選択、または2番目に挙げられた選択肢(B)のみの選択、または両方の選択肢(AおよびB)の選択を包含するように意図されることを理解されたい。さらなる例として、「A、B、および/またはC」および「A、B、およびCのうちの少なくとも1つ」の場合、そのような表現法は、1番目に挙げられた選択肢(A)のみの選択、または2番目に挙げられた選択肢(B)のみの選択、または3番目に挙げられた選択肢(C)のみの選択、または1番目および2番目に挙げられた選択肢(AおよびB)のみの選択、または1番目および3番目に挙げられた選択肢(AおよびC)のみの選択、または2番目および3番目に挙げられた選択肢(BおよびC)のみの選択、または3つの選択肢のすべて(AおよびBおよびC)の選択を包含するように意図される。これは、当業者にはすぐに分かるように、列挙される項目の数に合わせて拡張され得る。
【0025】
また、本明細書において使用されるとき、語「ピクチャ」および「画像」は交換可能なように使用され、映像シーケンスからの静止画像またはピクチャを指す。知られているように、ピクチャは、フレームまたはフィールドである可能性がある。
【0026】
図2に目を向けると、本原理が適用され得る例示的な映像エンコーダが、全体的に参照番号200によって示されている。図2は、発明者の提案する映像の符号化のアプローチの中心的要素のみを含んでおり、デブロッキングフィルタ(de−blocking filter)、予測などブロックによってさらに改善され得ることに留意することが重要である。映像エンコーダ200は、運動行列生成器220の第1の入力に信号通信で接続された出力を有する辞書生成器210を含む。運動行列生成器220の出力は、行列エンベッダ230の入力に信号通信で接続される。行列エンベッダ230の出力は、サンプラ240の入力に信号通信で接続される。サンプラ240の出力は、量子化器250の入力に信号通信で接続される。量子化器250の出力は、エントロピーエンコーダ260の入力に信号通信で接続される。辞書生成器210の入力および運動行列生成器220の第2の入力は、参照フレームを受信するためのエンコーダ200の入力として利用可能である。運動行列生成器220の第3の入力は、符号化されるべきフレームを受信するためのエンコーダ200の入力として利用可能である。エントロピーエンコーダ260の出力は、符号化されたビットストリームを出力するためのエンコーダ200の出力として利用可能である。
【0027】
図3に目を向けると、本原理が適用され得る例示的な映像デコーダが、全体的に参照番号300によって示されている。図3は、発明者の提案する映像の復号のアプローチの中心的要素のみを含んでおり、デブロッキングフィルタ、予測などブロックによってさらに改善され得ることに留意することが重要である。映像デコーダ300は、逆量子化器320の入力に信号通信で接続された出力を有するエントロピーデコーダ310を含む。逆量子化器320の出力は、行列完成器330の入力に信号通信で接続される。行列完成器330の出力は、運動行列復元器340の入力に信号通信で接続される。運動行列復元器340の出力は、画像リコンストラクタ350の第1の入力に信号通信で接続される。辞書生成器360の出力は、画像リコンストラクタ350の第2の入力に信号通信で接続される。エントロピーデコーダ310の入力は、入力ビットストリームを受信するためのデコーダ300の入力として利用可能である。辞書生成器360の入力は、参照フレームを受信するためのデコーダ300の入力として利用可能である。画像リコンストラクタ350の出力は、1つまたは複数の再構築された画像を出力するためのデコーダ300の出力として利用可能である。画像リコンストラクタ350は、参照フレームを受信するための1つまたは複数の追加的な入力を含む可能性がある。
【0028】
上述のように、本原理は、運動行列を用いた映像の符号化および復号のための方法および装置を対象とする。
【0029】
高い圧縮効率を実現するために、実質的にすべての映像符号化方式は、以下、すなわち、
(a)時間的相関、または連続するフレームの間の相関、および
(b)空間的相関、つまりフレームおよび/またはピクチャ内の隣接するピクセル(もしくはそれ以外の状態で近くにあるピクセル)の間の相関
を利用する。
【0030】
高い空間的相関は、(位置(i,j)のピクセル値が行列の第(i,j)成分に記憶される)行列の形態のN×Mピクセルのデジタル画像を考えた場合、その画像のピクセル値が強い相関を有し、独立していないことを意味する。数学的観点から、これは、対応する行列が低い階数または低い独立性を有することを意味する。一方、高い時間的相関は、特定の時間のフレームの多くの部分が、厳密にかまたはおおよそかのどちらかで前のフレームで(おそらく異なる位置で)発見され得ることを意味する。本原理によって、発明者は、圧縮センシングおよび低階数の行列の完成の数学的ツールを利用する新たなシステムを開発した。発明者は、この新しいアプローチを、高い時間的相関および空間的相関を利用して映像シーケンスを符号化するための代替的なアプローチを表す概念、「運動行列」と呼ぶ。
【0031】
発明者は、運動行列の原理と、運動行列がどのようにして映像エンコーダおよびデコーダで実装されるかを開示し、説明する。さらに、提案される運動行列の例/実施形態が示され、対応するエンコーダ/デコーダのさまざまなコンポーネントが説明される。この方式は、本明細書に記載のいくつかの新たな符号化ブロックを含む。
【0032】
また、説明を簡単にするために、普遍性を損なうことなく、本原理は1つの参照フレームのみが存在するPフレームに関連して説明される。明らかに、この考え方は、複数の参照フレームの場合に容易に拡張可能である。
【0033】
[概要]
本原理によって、発明者は、映像コンテンツを符号化および復号するためのシステムを説明する。説明を明瞭にするために特定の文脈および実施形態で説明されるが、本明細書に記載の同じ原理のうちの1つまたは複数を利用し、したがって本原理の範疇に入ることから除外されてはならないその他の実施形態は、当業者に明らかであろう。例えば、デコーダの圧縮センシングモジュールは、「基底追跡(basis pursuit)」アルゴリズムを用いて実現され得るが、同じ目的を達成することができる文献中のその他のよくあるアルゴリズム(およびその他の将来開発されたアルゴリズム)が存在し、それらのアルゴリズムは、本発明の包括的原理および範囲に含まれるように意図される。発明者は、基底追跡(BP)アルゴリズムが凸最適化問題を解くことを伴うことを強調する。より具体的には、BPは、一次方程式の劣決定系y=Pxに対する最小のL1ノルム(絶対値の総和)を用いて解を発見し、ここで、yの値および係数Pの行列が与えられており、xは未知のベクトルである。さらに、一次方程式の劣決定系によって、発明者は、式の数(ここではPの行列の行の数)が未知数の数(未知のベクトルxの長さ)未満であることを意味する。数学的形式で、BPは以下の最適化問題を解く。
y=PxであるようなArgmin||x||=Σ|x
特定の条件の下で、BPによって発見される解は最も疎な解、すなわち、最小数の非ゼロの数を有する解であることが証明されている。
【0034】
映像シーケンスからの時間tにおける画像fを考える。この画像が、例えば図1に示されるように時間tにおいてfに変化すると仮定する。大まかに言って、最も古典的な映像符号化方式においては、そのような動きは以下のように分解される。
=X(f)+R
ここで、X(.)は基本関数(basic function)であり、Rは何らかの残差である。例えば、図1の例に関して、X(.)は、画像(f)を入力として受け取り、次いで、出力のためにその画像(f)を右に1ピクセルだけシフトする関数であり、Rは残差である。圧縮は、X(.)およびRを効率的に符号化することによって達せられる。例に戻ると、X(.)は、動きベクトルとして符号化される可能性があり、Rは、離散コサイン変換(DCT)などの変換領域でRを表すことによって効率的に圧縮され得る。この符号化の包括的な枠組み、すなわち、参照フレームにおける何らかの動きおよび何らかの残差に関して画像を分解することは、時間的相関を広く利用して圧縮を行うことに留意されたい。空間的相関は、残差の変換符号化によっても利用される。一方、DCT、ウェーブレットなどの利用可能な変換は、残差の代わりに、相関性の高い画像を希薄化する(疎にする)ように設計されている。言い換えると、変換を利用して残差を符号化することは過去うまくいっていたが、映像データを圧縮する能力をよりいっそう高めるために、将来開発される方式においては空間的相関が使用される可能性がある。
【0035】
一次方程式の劣決定系およびさらに低階数の行列の完成の問題に関して最近生み出された成果を使用する、本発明の原理による、発明者が本明細書で説明する方法および装置は、代替的な符号化および復号方式を設計するために使用される。
【0036】
[運動行列]
符号化されるべきフレーム(例えば、図1のf)に関する運動行列は、行列Yである。デコーダは、運動行列および参照フレーム(例えば、f)を用いて符号化されたフレームを一意的に再構築することができる。さらに、運動行列は、以下の2つの追加的な重要な性質を有する。
・運動行列は、低い階数を有する。言い換えると、Yの成分は相関性が高い。
・運動行列は、符号化されるべきフレームの知識を必要とせずにデコーダにおいて導出され得る辞書ψ、すなわち、アトム/基底ベクトルの組(例えば、離散コサイン変換は画像を表現するための辞書である)に対する疎な表現αを有し、つまり、Vec(Y)=ψαであり、ここで、Vec(.)は、行列の列を積み上げることによって形成される行列のベクトル化された形態(図4参照)を表し、αは、要素のほとんどがゼロである疎なベクトルである。
【0037】
ここで、発明者は、本明細書で導入された運動行列が、概念と、さらには圧縮を行うために選択されるアプローチとの両方において従来の研究の変位行列(displacement matrix)および運動行列におけるそれから離れることを強調する必要がある。以下で、発明者は、重要な違いのうちのいくつかを明らかにする。
・変位行列および従来の運動行列は、主として2値行列を利用する。一方、提案される運動行列の成分は、負数および浮動小数点数を含む任意の数を取り得る。
・従来の研究の変位行列および運動行列の成分は、一部のブロックおよび/またはピクセルにおけるいくつかの種類の動きの存在を示す。一方、提案される運動行列の成分は、一部のブロックにおける動きを示すタスクに制限されない。例えば、提案される運動行列の成分は、フレーム全体におけるいくつかの全体的な動き(フレームにおけるすべての動きに応じて決まる値)を知らせる可能性がある。
・従来の研究においては、参照フレームが与えられたとして、運動および/または変位行列は、通常、フレームを再構築するために十分でない。例えば、残差行列、またはデコーダ側での望ましい再構築のためのその他のシグナリングなどのオーバーヘッドデータを送信する必要がある可能性がある。発明者の方法は、単独で機能する運動行列を対象としており、参照フレームが与えられるとすれば、運動行列さえあれば、既に符号化されたフレームを妥当な誤差で近似するために十分である。
・従来の運動行列および/または変位行列は、発明者の定義におけるすべての必要条件に(通常)反するので、それらの従来の運動行列および/または変位行列は、発明者の提案する運動行列の枠組みに入らない。例えば、斜線が数ピクセルだけ右または左にシフトするフレームまたはブロックを考える。そのとき、対応する変位行列はフルランク(最大のあり得る階数)の対角行列になることは容易に理解できる。さらに、そのような対角行列(つまり画像)は、DCT、ウェーブレットなどの従来の変換の下では疎でない(これらの種類の行列に適した何らかの方向変換(directional transform)が存在する可能性があるが、しかし、我々は、それらの変換/辞書のパラメータをデコーダに送信する必要があり、これは余計なオーバーヘッドを生じる)。したがって、従来の変位/運動行列は、運動行列に関する2つの必要条件(すなわち、低階数であることおよび希薄化領域(sparsifying domain)の存在)に容易に違反し得る。
・別の違いが復号段階に現れる。より具体的には、従来の符号化の方法は、予測および残差の符号化を利用して圧縮を行う。一方、発明者は、行列の完成および(圧縮センシングを用いて)一次方程式の劣決定系を解くことなどの最近生み出された/解かれたアルゴリズム/問題を利用して同様の目的を達成する。
【0038】
最後になるが、従来の変位行列および運動行列は、概して、異なるフレームの間の時間的相関に応じて決まり、フレーム内の隣接するピクセルの間の空間的相関には(反応するにしても)あまり左右されない。しかし、発明者の提案する運動行列は、映像コンテンツを圧縮するために時間的相関と空間的相関とを同時にまとめて考慮する。
【0039】
図4に目を向けると、運動行列をベクトル化する例示的な操作と、ベクトル化操作の逆の操作とが、全体的に参照番号400によって示されている。ベクトル化された形態が参照番号410によって示され、ベクトル化された形態の逆の形態が参照番号420によって示されている。
【0040】
運動行列は、符号化されるべきフレームの(低階数の行列をもたらす)高い空間的相関と、(希薄化フレーム(sparsifying frame)の存在につながる)高い時間的相関とを一緒に利用することによって形成され得る。運動行列の形成は、上述のアプローチに限定されず、したがって、運動行列を形成するためのその他のアプローチも、本原理の精神を維持しながら、本明細書において与えられた本原理の教示にしたがって使用され得ることを理解されたい。
【0041】
次に、運動行列に基づく映像符号化方式のための対応するエンコーダおよびデコーダを示す。
【0042】
図5に目を向けると、運動行列に基づく映像符号化方式を用いた符号化のための例示的な方法が、全体的に参照番号500によって示されている。方法500は、機能ブロック510および機能ブロック515に制御を渡す開始ブロック505を含む。機能ブロック510は、参照{f,...,fq−1}フレームを入力し、機能ブロック520に制御を渡す。機能ブロック520は、符号化されるべきフレームがその辞書に対して疎である辞書を(例えば、参照フレームに基づいて)生成し、機能ブロック525に制御を渡す。機能ブロック515は、符号化されるべきフレームfを入力し、機能ブロック525に制御を渡す。機能ブロック525は、運動行列を発見し、機能ブロック530に制御を渡す。機能ブロック530は、運動行列を、より圧縮しやすい(おそらくはより小さい)行列に埋め込み、機能ブロック535に制御を渡す。機能ブロック535は、埋め込み行列からサンプリングし(すなわち、成分のサブセットを残し、残りを破棄する)、機能ブロック540に制御を渡す。機能ブロック540は、埋め込み行列のサンプルを量子化し、機能ブロック545に制御を渡す。機能ブロック545は、埋め込み行列の量子化されたサンプルをエントロピー符号化し、機能ブロック550に制御を渡す。機能ブロック550は、埋め込み行列のエントロピー符号化されたサンプルを記憶および/または送信し、終了ブロック599に制御を渡す。
【0043】
説明された運動行列に関する符号化の方法500は、5つの主要な構成部分を含む。
【0044】
1.符号化されるべきフレームおよび一連の参照フレームが与えられたとき、(符号化されるべきフレームがその辞書に対して疎である)辞書ψを形成し、運動行列Yを発見する。上述のように、運動行列Yおよび参照フレーム(および、したがって、希薄化辞書(sparsifying dictionary)ψ)があれば、デコーダは、符号化されたフレームを再構築することができる。
【0045】
2.運動行列を、埋め込み行列Z=pYpに埋め込み、ここで、pおよびpは2つの行列である。設計によって、埋め込み行列Zは、さらなる圧縮を実現するために利用され得る運動行列のすべての望ましい性質、すなわち、低階数の性質と、その行列に関する希薄化基底(sparsifying basis)の存在とを受け継ぐことに留意されたい。配置された行列pおよびpも、我々が圧縮を行うのに役立つ可能性がある。例えば、pおよびpがそれぞれ幅が広い行列および高さが高い行列である場合、埋め込み行列Zは、運動行列よりも小さくなり、このことは、レベルの違う圧縮につながる。このステップの目的は、Zの多くの成分が支障なく破棄される可能性があり、その一方で、デコーダが破棄された成分を復元することができることを保証することである。さらに、このステップは、以降で示されるように、デコーダのステップ3および4が成功するために極めて重要である。行列pおよびpは、(a)Z、p、およびpがあれば、我々が運動行列Yを再構築することができ、(b)Zの固有ベクトルが十分にランダムであるように選択されることに留意することが重要である。例えば、pおよびpが、それぞれ、幅が広いランダム行列および高さが高いランダム行列である場合、埋め込み行列Zが運動行列Yよりも小さいとしても、上述の要件の両方が満たされる。行列pおよびpのそのようなランダムな選択は、圧縮の観点からすると最適なアプローチではない可能性がある。
【0046】
3.サンプリング:埋め込み行列Zの成分の(おそらくはランダムな)サブセットSを残し、残りの成分を破棄する。このステップは、我々が残差(または画像自体)の最も大きなDCT係数を残し、そのような重要度の大きい成分の値および位置をシグナリングする従来の映像方式の圧縮ステップを思わせると考える人もいるであろう。一方、発明者の方式のこのステップは、完全にランダムであり、埋め込み行列のどの成分もその他の成分と区別しない。結果として、エンコーダおよびデコーダが同じ乱数のシードおよび乱数生成器を使用する場合、それらのエンコーダおよびデコーダは、両方とも、Zの成分の位置について一致する。したがって、これらの成分の位置をシグナリングする必要はなく、エンコーダは、サンプル値を記憶/送信するだけである可能性がある。
【0047】
4.埋め込み行列からのサンプルSを
【0048】
【数1】
【0049】
へと量子化する。明らかに、これは非可逆圧縮ステップである。しかし、このステップは、実質的にすべての圧縮技術に必須である。
【0050】
5.埋め込み行列の量子化されたサンプル
【0051】
【数2】
【0052】
を圧縮されたシンボルCへとエントロピー符号化する。これらのシンボルCは、記憶されるか、またはデコーダに送信される。
【0053】
図6に目を向けると、運動行列に基づく映像符号化方式を用いた復号のための例示的な方法が、全体的に参照番号600によって示されている。方法600は、機能ブロック610および機能ブロック645に制御を渡す開始ブロック605を含む。機能ブロック610は、符号化されたシンボルCを入力し、機能ブロック615に制御を渡す。機能ブロック615は、受信されたシンボルCをエントロピー復号し、機能ブロック620に制御を渡す。機能ブロック620は、復号されたシンボルCを逆量子化し、機能ブロック625に制御を渡す。機能ブロック625は、行列の完成を行い、機能ブロック630に制御を渡す。機能ブロック630は、埋め込み行列から運動行列を復元し、機能ブロック635に制御を渡す。機能ブロック645は、参照フレーム{f,...,fq−1}を入力し、機能ブロック650に制御を渡す。機能ブロック650は、辞書を生成し、機能ブロック635に制御を渡す。機能ブロック635は、運動行列を復号してfを出力し、終了ブロック699に制御を渡す。
【0054】
復号の方法600は、5つの主要な構成部分を含む。
【0055】
1.圧縮されたシンボルCをエントロピー復号して、埋め込み行列Zの量子化されたサンプル
【0056】
【数3】
【0057】
を得る。
【0058】
2.サンプル
【0059】
【数4】
【0060】
を逆量子化して、埋め込み行列のサンプルの近似値
【0061】
【数5】
【0062】
を得る。
【0063】
3.埋め込み行列Zの一部の成分の近似値
【0064】
【数6】
【0065】
を得たとき、行列の完成を行うことによって、埋め込み行列Zの破棄された成分を復元する。このステップは、エンコーダで実行されたサンプリング(ステップ2)の逆の処理であることに留意されたい。非可逆な量子化のステップが原因で、破棄された成分が厳密に復元されないことが十分にあり得る。したがって、発明者は、この段階の出力を
【0066】
【数7】
【0067】
と表記する。
【0068】
4.(前のステップで復元された埋め込み行列)
【0069】
【数9】
【0070】
から運動行列(の近似値)
【0071】
【数8】
【0072】
を再構築する。運動行列が辞書ψに対して疎な表現αを有する(すなわち、
【0073】
【数10】
【0074】
)という事実を利用して一次方程式の(おそらくは劣決定の)系を形成する人もいるであろう。より具体的には、
【0075】
【数11】
【0076】
を得たとき、我々は、以下に対する解
【0077】
【数12】
【0078】
を見つける。
【0079】
【数13】
【0080】
この解は、(基底追跡または直交マッチング追跡(Orthogonal Matching Pursuit)などの)圧縮センシングのデコーダを使用することによって発見され得る。結果として、運動行列(の近似値)は、
【0081】
【数14】
【0082】
によって推定可能であり、ここで、Vec−1(.)は、ベクトルを行列の形態に戻すように再整形する(図4参照)。辞書ψは符号化されたフレームとは無関係に決まり、したがって、デコーダ側でオーバーヘッドなしで、または極めて少ないオーバーヘッドで複製され得ることに留意することが重要である。
【0083】
5.符号化されたフレームfを再構築するためには、運動行列Yおよび参照フレームがあれば十分であると考えられる。したがって、我々は、(前のステップからの)元の運動行列の近似値
【0084】
【数15】
【0085】
および参照フレームを利用して(符号化されたフレームfの近似値)
【0086】
【数16】
【0087】
を再構築することができる。
【0088】
[エンコーダ]
本節では、運動行列の一実施形態の例が示される。また、そのような運動行列を符号化および復号するための必要とされるステップが、より詳細に与えられる。
【0089】
[単純な運動行列]
我々は、参照フレームfを利用することによってフレームfを符号化したいものとする。上述のように、提案されるエンコーダの第1の段階は、運動行列Yを見つけることである。単純な形態の運動行列は、f(すなわち、符号化されるべきフレーム)の修正されたバージョンであり、したがって、
【0090】
【数17】
【0091】
によって表されるこの修正されたバージョンは、以下の3つの重要な性質を有する。
【0092】
(a)Yは低階数である。
【0093】
(b)Yは、参照フレームと、おそらくはDCTまたはウェーブレットなどのいくつかのその他の変換とから構築された過剰決定辞書(over−complete dictionary)に対する疎な表現αを有する。
【0094】
(c)Yは、f(符号化されるべきフレーム)の優れた近似であり、すなわち、
【0095】
【数18】
【0096】
初めの2つの性質は、運動行列の要件であり、3つ目の性質は、運動行列および参照フレームから符号化されたフレームを推定する(デコーダのステップ5)必要がないことを示している。言い換えると、運動行列自体が、符号化されたフレームに極めて近く、直接表示され得る。
【0097】
ここで、そのような運動行列を発見するための必要とされるステップについてさらに詳細に検討することにする。そのような運動行列を発見するための第1のステップは、運動行列
【0098】
【数19】
【0099】
がその辞書に対して疎になる辞書ψを生成することである。上述のように、この辞書は、参照フレームのみに応じて決まる(かつ符号化されるべきフレームとは無関係に決まる)。したがって、辞書は、デコーダ側で正確に複製され得る。例えば、この辞書は、参照フレームに対してさまざまな動き(さまざまな方向へのさまざまなシフト、回転、拡大など)またはいくつかの予測を計算することによって形成され得る。この辞書を拡張し、さらに、この辞書がすべてのあり得る画像を生成することができることを保証する(すなわち、この辞書がフルランクである)ために、いくつかの変換(例えば、DCT、ウェーブレットなど)が辞書に追加され得る。適切に設計される場合、高い時間的相関が、符号化されるべきフレームがこの辞書に対する疎な表現を有することを保証することに留意されたい。
【0100】
目標の希薄化辞書ψを形成した後、運動行列
【0101】
【数20】
【0102】
を発見することがまだ残っている。この運動行列は、以下の方法によって計算され得る。
【0103】
入力:希薄化辞書ψ、参照フレームf、符号化されるべきフレームf、目標の階数r、および目標の疎性(sparsity)k
出力:運動行列Y
初期化Y=f
do{
・ψに対するYの表現αを見つける:
Vec(Y)=ψα
【0104】
【数21】
【0105】
が、αの大きい方からk個の成分だけを残し、残りのインデックス(index)のところはゼロとすることによって計算されたベクトルであるものとする
・Yを
【0106】
【数22】
【0107】
に更新する。
・Yの大きい方からr個の固有値を残し、残りの固有値をゼロに設定する
}収束するか、または誤差が十分に小さくなるまで繰り返す
【0108】
基本的に、この方法は、2つの制約、つまり、(a)出力行列Yが階数rを有することと、(b)出力行列Yが辞書ψに対する疎性kの表現を有することとの間で繰り返される。以下のようないくつかの注意点を強調しておくことが重要である。
・kおよびrを調整することにより、圧縮の量を制御する。具体的には、rおよびkが増加するにつれて、デコーダで再構築される運動行列の品質が高くなり、その代償として圧縮幅は少なくなり、その逆も同様である。
・高い空間的相関は、運動行列
【0109】
【数23】
【0110】
の品質の急激な落ち込みを招くことなく、符号化されるべきフレームの階数(r)を大幅に低くすることを可能にする。
・高い時間的相関は、符号化されるべきフレームfが辞書ψのほんの数個(k個)のアトムを用いて近似されることを可能にする。
【0111】
[行列の埋め込み]
修正されたフレーム(つまり運動行列)
【0112】
【数24】
【0113】
を得て、行列pおよびpを利用することにより、我々は、f
【0114】
【数25】
【0115】
に埋め込む。ここで、第1の行列pは幅が広い行列であり、一方、第2の行列pは高さが高い行列である。さらに、行列pおよびpは、埋め込み行列Z、p、およびpがあれば、我々が
【0116】
【数26】
【0117】
を復元できるように選択される。例えば、pおよびpはランダム行列である可能性があるが、ただし、そのような選択は最適な選択ではない。図7に目を向けると、運動行列を低階数の密行列Zに埋め込むための例示的な方法が、全体的に参照番号700によって示されている。方法700は、低階数の運動行列を、別の、低階数であるがよりコンパクトな埋め込み行列Z 720へと圧縮するために使用されるランダムで密な行列p 705、(低階数の)運動行列710、およびランダムで密な行列p 715を含む。行列の埋め込みの役割と、さらに行列pおよびpの役割とは、デコーダの説明に関連してより詳細に検討される。行列Zは、(最高でも運動行列の階数に等しい)低階数であることに留意されたい。さらに重要なことに、行列Zは、符号化されるべきフレームfまたはフレームfの修正/再構築されたバージョン、つまり
【0118】
【数27】
【0119】
よりも少ない成分を有する。
【0120】
したがって、これは、提案される方法の最初のレベルの圧縮である。明らかに、このステップで実現され得る圧縮のレベルにはいくつかの制限がある。より具体的には、行列Zの成分の数は、前のステップのkおよびrに直接的に応じて決まる。これらの実施形態においては、kおよびrの異なる値が使用される可能性があり、またはこれらの値がフレームfもしくは行列Zの特性に適応的である可能性があることに留意されたい。
【0121】
[サンプリング]
埋め込み行列Zの比較的小さなランダムなサブセット(S)のみを残し、残りの成分を破棄することによって、レベルの違う圧縮が実現される。図8に目を向けると、運動行列からのサンプリングおよび行列の完成のための例示的な方法が、全体的に参照番号800によって示されている。方法800は、低階数で密な埋め込み行列805および低階数で密な埋め込み行列810を含む。デコーダおよびエンコーダが同じ乱数のシードおよび乱数生成器を使用する場合、成分の値Sのみが送信され、デコーダとエンコーダの両方はこれらの成分の位置が分かり、このことは(インデックスが送信されないので)さらなる圧縮をもたらす。
【0122】
[量子化およびエントロピー符号化]
前の段階からの埋め込み行列Zの成分のランダムなサブセット(S)は、量子化され、最終的な圧縮されたシンボルCを得るためにエントロピーコーダに通される。
【0123】
デコーダ
デコーダのさまざまなコンポーネントが、本明細書において既に導入された基本的な運動行列の場合について示され、説明される。
【0124】
[逆量子化およびエントロピー復号]
最も古典的な映像符号化方式と同様に、デコーダの第1の段階は、圧縮されたシンボルCを復号し、復号されたシンボルを逆量子化して、埋め込み行列Zの成分のランダムなサブセットの近似値
【0125】
【数28】
【0126】
を得る。
【0127】
[行列の完成]
最近、非常に関心の高い問題、具体的には、「低階数の行列の完成」が、いくつかの条件の下である程度まで解かれた。大まかに言って、この問題は、我々は、低階数の行列があり、その行列の成分のサブセットのみを見ることができるとして、見えない成分を近似することができるのかという疑問に対応する。もちろん、この疑問に対応する答えは、その行列による。図9に目を向けると、対応する固有ベクトルが十分にランダムであるときの低階数の行列の完成の例が、全体的に参照番号900によって示されている。図10に目を向けると、対応する固有ベクトルが十分にはランダムでないことが原因で失敗する低階数の行列の例が、全体的に参照番号1000によって示されている。したがって、例えば、例900に関して、我々が基礎となる行列が低階数であると確信している場合、欠けている成分は、第2列が第1列の3倍であるので6である。一方、例1000に関しては、欠けている成分は、任意の数である可能性があり、推定し得ない。いくつかの条件が満たされる場合、例えば、低階数の行列の固有ベクトルが十分にランダムである場合、低階数の行列の完成は容易に解くことができることが示されており、特異値閾値法(Singular Value Thresholding)(SVT)、不動点連続法(Fixed Point Continuation)(FPC)などのいくつかのアルゴリズムが、この問題を解くために提案されている。
【0128】
今や、埋め込みのステップおよび行列pおよびpの役割は、明らかであるに違いない。特に、これらの行列は、埋め込み行列Zの固有ベクトルが十分にランダムであることを保証する。したがって、そのような行列の多くの成分が、圧縮を行うために破棄される可能性がある一方、いくつかの行列完成アルゴリズムが、それらの破棄された成分を復元することができる。埋め込み行列(Z)が低階数であるという事実を利用して、サンプルの近似値
【0129】
【数29】
【0130】
が、Zの欠落した成分(図8参照)を復元するために行列完成アルゴリズムに入力として与えられる。復元された行列
【0131】
【数30】
【0132】
は、埋め込み行列(Z)と等しくない可能性があることに留意されたい。これは、量子化ステップからの誤差の伝播
【0133】
【数31】
【0134】
が原因である。しかし、推定誤差
【0135】
【数32】
【0136】
(ここで、||.||はフロベニウス行列ノルムを表す)は、量子化ステップで生じた誤差に比例する。
【0137】
[一次方程式の劣決定系を解く]
運動行列
【0138】
【数33】
【0139】
、つまり、符号化されるべきフレームの修正されたバージョンは、参照フレームに基づいて構築された辞書ψに対する疎な表現を(近似的に)有し、すなわち、Vec(Y)=ψαであることを思い出されたい。埋め込み運動行列
【0140】
【数34】
【0141】
のベクトル化された形態は、以下によって表現し直され得ることにも留意されたい。
【0142】
【数35】
【0143】
ここで、
【0144】
【数36】
【0145】
は、クロネッカーテンソル積であり、Vec(.)は、行列のベクトル化された形態を表す(図11参照)。図11に目を向けると、修正されたフレームf’の疎な表現の圧縮サンプルから形成された埋め込み行列Zの例が、全体的に参照番号1100によって示されている。埋め込み行列Zは
【0146】
【数37】
【0147】
に比べて少ない数の成分を有するので、したがって、(1)は、埋め込み行列Zの成分が等式であり、αの成分が未知である一次方程式の劣決定系である。最近生み出された圧縮センシング(CS)の理論は、解が疎であるとき、一次方程式の劣決定系の解が、特定の条件の下で容易に計算され得ることを示した。ここで、行列pおよびpの役割は、これらの条件を満たしやすくすることである。ゆえに、
【0148】
【数38】
【0149】
(Zの近似値)があれば、疎なベクトルαは、通常のCSデコーダによって、例えば、「基底追跡」のアルゴリズムを用いることにより復元され得る。その他の実施形態においては、本原理の精神を維持しながら、疎なベクトルを復元するためのその他の方法が使用され得る。
【0150】
結果として、運動行列のベクトル化された形態は、以下によって復元され得る。
Vec(Y)=ψα
運動行列のベクトル化された形態を再整形することにより、我々は運動行列を得る。しかし、この例において、我々は、運動行列が符号化されたフレームの優れた近似であると仮定した。したがって、運動行列および参照フレームから符号化されたフレームを推定する必要はなく、我々は、導出された運動行列をそのまま表示することができる。
【0151】
一部が上で説明された本発明に付随する多くの利点/特徴のうちのいくつかが、以下で説明される。例えば、1つの利点/特徴は、運動行列を用いて映像シーケンスのピクチャを符号化するための映像エンコーダを有する装置である。運動行列は、所与の閾値未満の階数と、辞書に対する疎な表現とを有する。辞書は、ピクチャを表すため、およびピクチャがその組のみを用いて対応するデコーダにおいて導出されることを可能にするためのアトムおよび基底ベクトルの組を含む。辞書は、映像シーケンスの参照ピクチャの組から形成される。
【0152】
別の利点/特徴は、上述のように映像エンコーダを有する装置であり、辞書は、ピクチャと参照ピクチャの組との間の空間的相関および時間的相関から形成される。
【0153】
さらに別の利点/特徴は、上述のように映像エンコーダを有する装置であり、映像エンコーダは、埋め込み行列に運動行列を埋め込むための埋め込みデバイスと、埋め込み行列をサンプリングして埋め込み行列からのサンプルのサブセットを提供するためのサンプラと、サンプルのサブセットを量子化して量子化されたサンプルのサブセットを提供するための量子化器と、量子化されたサンプルのサブセットを圧縮されたシンボルにエントロピー符号化するためのエントロピーコーダとを含む。
【0154】
さらに別の利点/特徴は、上述のように、映像エンコーダが、埋め込み行列に運動行列を埋め込むための埋め込みデバイスと、埋め込み行列をサンプリングして埋め込み行列からのサンプルのサブセットを提供するためのサンプラと、サンプルのサブセットを量子化して量子化されたサンプルのサブセットを提供するための量子化器と、量子化されたサンプルのサブセットを圧縮されたシンボルにエントロピー符号化するためのエントロピーコーダとを含む、映像エンコーダを有する装置であり、埋め込み行列は、運動行列を乗じた2つの行列を用いて決定され、2つの行列は、埋め込み行列のランダムな固有ベクトルの閾値の量を与えるように選択される。
【0155】
さらに、別の利点/特徴は、上述のように、映像エンコーダが、埋め込み行列に運動行列を埋め込むための埋め込みデバイスと、埋め込み行列をサンプリングして埋め込み行列からのサンプルのサブセットを提供するためのサンプラと、サンプルのサブセットを量子化して量子化されたサンプルのサブセットを提供するための量子化器と、量子化されたサンプルのサブセットを圧縮されたシンボルにエントロピー符号化するためのエントロピーコーダとを含む、映像エンコーダを有する装置であり、サンプルのサブセットは、埋め込み行列からランダムに選択される。
【0156】
さらに、別の利点/特徴は、上述のように、サンプルのサブセットが、埋め込み行列からランダムに選択される、映像エンコーダを有する装置であり、埋め込み行列からのサンプルのサブセットのサンプルが映像エンコーダおよび対応する映像デコーダにおいて同じそれぞれの位置にあることを保証するために、同じ乱数のシードおよび同じ乱数生成器が映像エンコーダおよび対応する映像デコーダによって使用される。
【0157】
さらに、別の利点/特徴は、上述のように、映像エンコーダが、埋め込み行列に運動行列を埋め込むための埋め込みデバイスと、埋め込み行列をサンプリングして埋め込み行列からのサンプルのサブセットを提供するためのサンプラと、サンプルのサブセットを量子化して量子化されたサンプルのサブセットを提供するための量子化器と、量子化されたサンプルのサブセットを圧縮されたシンボルにエントロピー符号化するためのエントロピーコーダとを含む、映像エンコーダを有する装置であり、前記サンプラは、サンプルのサブセットのサンプルと異なる埋め込み行列内の位置にある埋め込み行列の部分を破棄する。
【0158】
本原理のこれらのおよびその他の特徴および利点は、本明細書の教示に基づいて当業者によって容易に確認され得る。本原理の教示は、さまざまな形態のハードウェア、ソフトウェア、ファームウェア、専用プロセッサ、またはこれらの組み合わせで実装され得ることを理解されたい。
【0159】
最も好ましくは、本原理の教示は、ハードウェアとソフトウェアの組み合わせとして実装される。さらに、ソフトウェアは、プログラムストレージユニットに有形で具現化されるアプリケーションプログラムとして実装され得る。アプリケーションプログラムは、任意の好適なアーキテクチャを備える機械にアップロードされ、そのような機械によって実行され得る。好ましくは、機械は、1つまたは複数の中央演算処理装置(「CPU」)、ランダムアクセスメモリ(「RAM」)、および入力/出力(「I/O」)インターフェースなどのハードウェアを有するコンピュータプラットフォーム上に実装される。また、コンピュータプラットフォームは、オペレーティングシステムおよびマイクロ命令コードを含み得る。本明細書において説明されたさまざまなプロセスおよび機能は、CPUによって実行され得るマイクロ命令コードの一部かもしくはアプリケーションプログラムの一部かのどちらか、またはそれらの任意の組み合わせである可能性がある。加えて、追加的なデータストレージユニットおよび印刷ユニットなどのさまざまなその他の周辺ユニットが、コンピュータプラットフォームに接続され得る。
【0160】
添付の図面に示された構成要素のシステムコンポーネントおよび方法の一部はソフトウェアで実装されることが好ましいので、システムコンポーネントまたはプロセスの機能ブロックの間の実際の接続は、本原理がプログラムされる方法によって変わり得ることをさらに理解されたい。本明細書の教示が与えられれば、当業者は、本原理のこれらのおよび同様の実装または構成を考えることができる。
【0161】
例示的な実施形態が添付の図面を参照して本明細書において説明されたが、本原理はそれらの厳密な実施形態に限定されず、さまざまな変更および修正が、本原理の範囲または精神を逸脱することなく当業者によってそれらの実施形態で行われ得ることを理解されたい。すべてのそのような変更および修正は、添付の特許請求の範囲に記載された本原理の範囲に入るように意図される。
(付記1)
運動行列を用いて映像シーケンスのピクチャを符号化するための映像エンコーダを備え、
前記運動行列は、所与の閾値未満の階数と、辞書に対する疎な表現とを有し、前記辞書は、前記ピクチャを表すため、ならびに前記ピクチャを対応するデコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの前記組を含み、前記辞書は、前記映像シーケンスの参照ピクチャの組から形成される、装置。
(付記2)
前記辞書は、前記ピクチャと参照ピクチャの前記組との間の空間的相関および時間的相関から形成される、付記1に記載の装置。
(付記3)
前記映像エンコーダは、埋め込み行列に前記運動行列を埋め込むための埋め込みデバイスと、前記埋め込み行列をサンプリングして前記埋め込み行列からのサンプルのサブセットを提供するためのサンプラと、前記サンプルのサブセットを量子化して量子化されたサンプルのサブセットを提供するための量子化器と、前記量子化されたサンプルのサブセットを圧縮されたシンボルにエントロピー符号化するためのエントロピーコーダとを備える、付記1に記載の装置。
(付記4)
前記埋め込み行列は、前記運動行列を乗じた2つの行列を用いて決定され、前記2つの行列は、前記埋め込み行列のランダムな固有ベクトルの閾値の量を与えるように選択される、付記3に記載の装置。
(付記5)
前記サンプルのサブセットは、前記埋め込み行列からランダムに選択される、付記3に記載の装置。
(付記6)
前記埋め込み行列からの前記サンプルのサブセットのサンプルが前記映像エンコーダおよび対応する映像デコーダにおいて同じそれぞれの位置にあることを保証するために、同じ乱数のシードおよび同じ乱数生成器が前記映像エンコーダおよび前記対応する映像デコーダによって使用される、付記5に記載の装置。
(付記7)
前記サンプラは、前記サンプルのサブセットのサンプルと異なる前記埋め込み行列内の位置にある前記埋め込み行列の部分を破棄する、付記3に記載の装置。
(付記8)
運動行列を用いて映像シーケンスのピクチャを符号化するステップを含み、
前記運動行列は、所与の閾値未満の階数と、辞書に対する疎な表現とを有し、前記辞書は、前記ピクチャを表すため、ならびに前記ピクチャを対応するデコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの前記組を含み、前記辞書は、前記映像シーケンスの参照ピクチャの組から形成される、映像エンコーダにおける方法。
(付記9)
前記辞書は、前記ピクチャと参照ピクチャの前記組との間の空間的相関および時間的相関から形成される、付記8に記載の方法。
(付記10)
前記符号化するステップは、埋め込み行列に前記運動行列を埋め込むステップと、
前記埋め込み行列をサンプリングして前記埋め込み行列からのサンプルのサブセットを提供するステップと、前記サンプルのサブセットを量子化して量子化されたサンプルのサブセットを提供するステップと、前記量子化されたサンプルのサブセットを圧縮されたシンボルにエントロピー符号化するステップとを含む、付記8に記載の方法。
(付記11)
前記埋め込み行列は、前記運動行列を乗じた2つの行列を用いて決定され、前記2つの行列は、前記埋め込み行列のランダムな固有ベクトルの閾値の量を与えるように選択される、付記10に記載の方法。
(付記12)
前記サンプルのサブセットは、前記埋め込み行列からランダムに選択される、付記10に記載の方法。
(付記13)
前記埋め込み行列からの前記サンプルのサブセットのサンプルが前記映像エンコーダおよび対応する映像デコーダにおいて同じそれぞれの位置にあることを保証するために、同じ乱数のシードおよび同じ乱数生成器が前記映像エンコーダおよび前記対応する映像デコーダによって使用される、付記12に記載の方法。
(付記14)
前記サンプリングするステップは、前記サンプルのサブセットのサンプルと異なる前記埋め込み行列内の位置にある前記埋め込み行列の部分を破棄するステップを含む、付記10に記載の方法。
(付記15)
運動行列の近似値を用いて映像シーケンスのピクチャを復号するための映像デコーダを備え、前記運動行列の前記近似値は、所与の閾値未満の階数と、辞書に対する疎な表現とを有し、前記辞書は、前記ピクチャを表すため、ならびに前記ピクチャを前記映像デコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの前記組を含み、前記辞書は、前記映像シーケンスの参照ピクチャの組から形成される、装置。
(付記16)
前記辞書は、前記ピクチャと参照ピクチャの前記組との間の空間的相関および時間的相関から形成される、付記15に記載の装置。
(付記17)
前記映像デコーダは、圧縮されたシンボルをエントロピー復号して、埋め込み行列からの量子化されたサンプルのサブセットを提供するためのエントロピーデコーダと、前記量子化されたサンプルのサブセットを逆量子化して、前記埋め込み行列の復元されたバージョンからのサンプルのサブセットの近似値を提供するための逆量子化器と、前記埋め込み行列の前記復元されたバージョンの欠落した部分を決定して、前記埋め込み行列の完成した復元されたバージョンを提供するための行列完成デバイスと、前記埋め込み行列の前記完成した復元されたバージョンから前記運動行列の前記近似値を再構築するための再構築デバイスとを備える、付記15に記載の装置。
(付記18)
前記埋め込み行列の前記復元されたバージョンの前記欠落した部分は、前記サンプルのサブセットのサンプルと異なる前記埋め込み行列内の位置にある前記埋め込み行列の以前に破棄された部分に対応する、付記17に記載の装置。
(付記19)
前記運動行列の前記近似値は、前記埋め込み行列と、前記埋め込み行列の行列を乗じた2つの行列とを用いて決定される、付記17に記載の装置。
(付記20)
前記埋め込み行列からの前記サンプルのサブセットのサンプルが前記映像デコーダおよび対応する映像エンコーダにおいて同じそれぞれの位置にあることを保証するために、同じ乱数のシードおよび同じ乱数生成器が前記映像デコーダおよび前記対応する映像エンコーダによって使用される、付記17に記載の装置。
(付記21)
前記運動行列の疎な表現が、前記埋め込み行列の前記復元されたバージョンに対して決定され、前記ピクチャのベクトル化された形態が、前記疎な表現および前記辞書に応じて決定され、前記ベクトル化された形態は、前記ピクチャの再構築されたバージョンを得るために再整形される、付記15に記載の装置。
(付記22)
運動行列の近似値を用いて映像シーケンスのピクチャを復号するステップを含み、
前記運動行列の前記近似値は、所与の閾値未満の階数と、辞書に対する疎な表現とを有し、前記辞書は、前記ピクチャを表すため、ならびに前記ピクチャを映像デコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの前記組を含み、前記辞書は、前記映像シーケンスの参照ピクチャの組から形成される、前記映像デコーダにおける方法。
(付記23)
前記辞書は、前記ピクチャと参照ピクチャの前記組との間の空間的相関および時間的相関から形成される、付記22に記載の方法。
(付記24)
圧縮されたシンボルをエントロピー復号して、埋め込み行列からの量子化されたサンプルのサブセットを提供するステップと、
前記量子化されたサンプルのサブセットを逆量子化して、前記埋め込み行列の復元されたバージョンからのサンプルのサブセットの近似値を提供するステップと、
前記埋め込み行列の前記復元されたバージョンの欠落した部分を決定して、前記埋め込み行列の完成した復元されたバージョンを提供するステップと、
前記埋め込み行列の前記完成した復元されたバージョンから前記運動行列の前記近似値を再構築するステップと
をさらに含む、付記22に記載の方法。
(付記25)
前記埋め込み行列の前記復元されたバージョンの前記欠落した部分は、前記サンプルのサブセットのサンプルと異なる前記埋め込み行列内の位置にある前記埋め込み行列の以前に破棄された部分に対応する、付記24に記載の方法。
(付記26)
前記運動行列の前記近似値は、前記埋め込み行列と、前記埋め込み行列を乗じた2つの行列とを用いて決定される、付記24に記載の方法。
(付記27)
前記埋め込み行列からの前記サンプルのサブセットのサンプルが前記映像デコーダおよび対応する映像エンコーダにおいて同じそれぞれの位置にあることを保証するために、同じ乱数のシードおよび同じ乱数生成器が前記映像デコーダおよび前記対応する映像エンコーダによって使用される、付記24に記載の方法。
(付記28)
前記運動行列の疎な表現が、前記埋め込み行列の前記復元されたバージョンに対して決定され、前記ピクチャのベクトル化された形態が、前記疎な表現および前記辞書に応じて決定され、前記ベクトル化された形態は、前記ピクチャの再構築されたバージョンを得るために再整形される、付記22に記載の方法。
(付記29)
符号化された映像信号データをその中に有するコンピュータ可読ストレージ媒体であって、
運動行列を用いて符号化された、映像シーケンスのピクチャを含み、
前記運動行列は、所与の閾値未満の階数と、辞書に対する疎な表現とを有し、前記辞書は、前記ピクチャを表すため、ならびに前記ピクチャを対応するデコーダにおいてアトムおよび基底ベクトルの組だけを用いて導出することを可能にするためのアトムおよび基底ベクトルの前記組を含み、前記辞書は、前記映像シーケンスの参照ピクチャの組から形成される、コンピュータ可読ストレージ媒体。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11