JP2019534620A - 広視野ビデオを符号化及び復号する方法及び装置 - Google Patents

広視野ビデオを符号化及び復号する方法及び装置 Download PDF

Info

Publication number
JP2019534620A
JP2019534620A JP2019517061A JP2019517061A JP2019534620A JP 2019534620 A JP2019534620 A JP 2019534620A JP 2019517061 A JP2019517061 A JP 2019517061A JP 2019517061 A JP2019517061 A JP 2019517061A JP 2019534620 A JP2019534620 A JP 2019534620A
Authority
JP
Japan
Prior art keywords
mode
intra prediction
list
equal
picture
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2019517061A
Other languages
English (en)
Other versions
JP2019534620A5 (ja
Inventor
ラス,ガガン
ギャルピン,フランク
ラケイプ,ファビアン
ポワリエ,タンギ
ルリアネック,ファブリス
Original Assignee
インターデジタル ヴイシー ホールディングス, インコーポレイテッド
インターデジタル ヴイシー ホールディングス, インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by インターデジタル ヴイシー ホールディングス, インコーポレイテッド, インターデジタル ヴイシー ホールディングス, インコーポレイテッド filed Critical インターデジタル ヴイシー ホールディングス, インコーポレイテッド
Publication of JP2019534620A publication Critical patent/JP2019534620A/ja
Publication of JP2019534620A5 publication Critical patent/JP2019534620A5/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Abstract

広視野ビデオをコード化してビットストリームにする方法及び装置が開示される。上記広視野ビデオの少なくとも1つのピクチャは、表面として表され、上記表面は、投影関数を使用して少なくとも1つの2Dピクチャに投影される。上記少なくとも1つの2Dピクチャの少なくとも1つの現在のブロックに対して、上記投影関数から、上記2Dピクチャの上記現在のブロックに空間的に隣接していない上記2Dピクチャの少なくとも1つの近隣のブロックが決定され、上記少なくとも1つの近隣のブロックは、上記表面上の上記現在のブロックに空間的に隣接する。次いで、上記現在のブロックは、少なくとも上記決定された近隣のブロックを使用して符号化される。また、対応する復号方法及び装置も開示される。

Description

本開示は、没入型ビデオの符号化及び復号に関し、例えば、そのような没入型ビデオがバーチャルリアリティ、オーグメンテッドリアリティ又はオーグメンテッドバーチャリティに対してシステムで処理される際のもの、及び、例えば、頭部装着型表示デバイスで表示される際のものに関する。
最近は、利用可能な広視野コンテンツ(最大360°)が増加している。そのようなコンテンツは、潜在的には、頭部装着型ディスプレイ、スマートグラス、PCスクリーン、タブレット、スマートフォン及び同様のものなどの没入型表示デバイスでコンテンツを見ているユーザが完全に見ることができるものではない。それは、ある瞬間に、ユーザがコンテンツの一部しか見ることができないことを意味する。しかし、ユーザは、典型的には、頭の移動、マウスの移動、タッチスクリーン、音声及び同様のものなどの様々な手段によって、コンテンツ内でナビゲートすることができる。典型的には、このコンテンツを符号化及び復号することが望ましい。
本原理の態様によれば、広視野ビデオをコード化してビットストリームにする方法が開示される。上記広視野ビデオの少なくとも1つのピクチャは、3D表面として表され、上記3D表面は、投影関数を使用して少なくとも1つの2Dピクチャに投影される。符号化方法は、上記少なくとも1つの2Dピクチャの少なくとも1つの現在のブロックに対して、
− 上記投影関数から、上記2Dピクチャの上記現在のブロックに空間的に隣接していない上記2Dピクチャの少なくとも1つの近隣のブロックを決定することであって、上記少なくとも1つの近隣のブロックが、上記3D表面の上記現在のブロックに空間的に隣接する、決定することと、
− 少なくとも上記決定された近隣のブロックを使用して上記現在のブロックを符号化することと
を含む。
本原理は、3D表面上の空間的に隣接する近隣のブロックが現在のブロックのコード化に対して利用可能である際に、3D表面を1つ又は複数のピクチャに投影するために使用される投影関数に従って、コード化予定の現在のブロックに対する新しい近隣のブロックを決定することを可能にする。例えば、現在のブロックが2D長方形ピクチャの境界又は立方体投影の一面の境界に位置する際、既にコード化済み及び復号済みの3D表面上の現在のブロックに空間的に隣接するブロックを現在のブロックのコード化のための新しい近隣のブロックとして決定することができる。現在のブロックのそのような適応させた近隣のブロックは、そのような3D表面が2Dピクチャに投影される際、3D表面の領域の空間的に隣接する近隣のブロックの復元を可能にする。
適応させた近隣のブロックは、現在のブロックを符号化するための2Dビデオコーダのいかなる符号化モジュールによっても使用することができ、従って、広視野ビデオに適用される2Dビデオコード化スキームの圧縮効率の増加を可能にする。
本開示の実施形態によれば、上記現在のブロックを符号化することは、
− 上記現在のブロックに対するイントラ予測モードをコード化するための最確モードリストを決定することと、
− 上記現在のブロックに対する動きベクトルをコード化するための動きベクトル予測因子を導出することと、
− 上記現在のブロックをコード化するためのインター予測マージモードにおける動き情報を導出することと、
− 上記現在のブロックをコンテキスト算術エントロピー符号化することと、
− 上記現在のブロックの少なくとも1つのサンプルをサンプル適応オフセットフィルタリングすることと
を少なくとも含む群に属する。
本開示の別の実施形態によれば、符号化方法は、上記投影関数に関連する情報のアイテムをコード化することをさらに含む。
また、広視野ビデオを表すビットストリームを復号する方法も開示される。そのような復号方法は、3D表面として表される広視野ビデオのピクチャの投影を表す上記少なくとも1つの2Dピクチャの少なくとも1つの現在のブロックに対して、
− 上記投影関数から、上記2Dピクチャの上記現在のブロックに空間的に隣接していない上記2Dピクチャの少なくとも1つの近隣のブロックを決定することであって、上記少なくとも1つの近隣のブロックが、上記3D表面の上記現在のブロックに空間的に隣接する、決定することと、
− 少なくとも上記決定された近隣のブロックを使用して上記現在のブロックを復号することと
を含む。
本開示の実施形態によれば、上記現在のブロックを復号することは、
− 上記現在のブロックに対するイントラ予測モードを復号するための最確モードリストを決定することと、
− 上記現在のブロックに対する動きベクトルを再構成するための動きベクトル予測因子を導出することと、
− 上記現在のブロックを再構成するためのインター予測マージモードにおける動き情報を導出することと、
− 上記現在のブロックをコンテキスト算術エントロピー復号することと、
− 上記現在のブロックの少なくとも1つのサンプルをフィルタリングするためのサンプル適応オフセットと
を少なくとも含む群に属する。
本開示の別の実施形態によれば、上記復号方法は、上記投影関数に関連する情報のアイテムを復号することをさらに含む。
本開示の別の実施形態によれば、3D表面は球体であり、投影関数は正距円筒投影である。この実施形態の変形形態によれば、現在のブロックは、2Dピクチャの右側の境界に位置し、少なくとも1つの近隣のブロックは、2Dピクチャの左側の境界に位置する。
本開示の別の実施形態によれば、上記現在のブロックを符号化又は復号することは、上記少なくとも1つの近隣のブロックから得られた少なくとも予測データを含む予測因子リストを構築することを含み、上記現在のブロックからのデータは、上記予測因子リストから選択された予測データの候補を使用してコード化又は復号される。
この実施形態によれば、現在のブロックの新しい決定された近隣のブロックによって提供された予測データは、現在のブロックをコード化又は復号するための予測因子リストに追加される。例えば、そのような予測因子リストは、現在のブロックがイントラコード化される際は、イントラ予測モードの最確モードであり得る。現在のブロックがインター予測される際は、予測因子リストは、現在のブロックの動きベクトルを予測するための動きベクトル予測因子のセット又は現在のブロックが現在のブロックを予測するための動き情報を継承する動き候補のセットに相当し得る。
また、予測因子リストは、現在のブロックが現在のブロックの再構成された画素を処理するために継承するフィルタリングパラメータ(例えば、HEVC規格からSAOとしても知られているサンプル適応オフセットパラメータ)にも相当し得る。
また、広視野ビデオをコード化してビットストリームにする装置も開示される。そのような装置は、3D表面として表される広視野ビデオのピクチャの投影を表す上記少なくとも1つの2Dピクチャの少なくとも1つの現在のブロックに対して、上記投影関数から、上記2Dピクチャの上記現在のブロックに空間的に隣接していない上記2Dピクチャの少なくとも1つの近隣のブロックを決定する手段であって、上記少なくとも1つの近隣のブロックが、上記3D表面の上記現在のブロックに空間的に隣接する、手段と、少なくとも上記決定された近隣のブロックを使用して上記現在のブロックを符号化する手段とを含む。
また、広視野ビデオを表すビットストリームを復号する装置も開示される。上記装置は、3D表面として表される広視野ビデオのピクチャの投影を表す上記少なくとも1つの2Dピクチャの少なくとも1つの現在のブロックに対して、
− 上記投影関数から、上記2Dピクチャの上記現在のブロックに空間的に隣接していない上記2Dピクチャの少なくとも1つの近隣のブロックを決定する手段であって、上記少なくとも1つの近隣のブロックが、上記3D表面の上記現在のブロックに空間的に隣接する、手段と、
− 少なくとも上記決定された近隣のブロックを使用して上記現在のブロックを復号する手段と
を含む。
また、コード化済みの広視野ビデオを表すビットストリームも開示される。上記広視野ビデオの少なくとも1つのピクチャは、3D表面として表され、上記3D表面は、投影関数を使用して少なくとも1つの2Dピクチャに投影される。ビットストリームは、上記2Dピクチャの少なくとも1つの現在のブロックを表すコード化済みのデータを含み、上記現在のブロックは、上記2Dピクチャの上記現在のブロックに空間的に隣接していない上記2Dピクチャの少なくとも1つの近隣のブロックを使用してコード化され、上記少なくとも1つの近隣のブロックは、上記3D表面の上記現在のブロックに空間的に隣接する。
本開示の実施形態によれば、ビットストリームは、上記投影関数に関連する情報のアイテムを表すコード化済みのデータをさらに含む。
本開示の別の実施形態によれば、ビットストリームは、非一時的なプロセッサ可読媒体上に格納される。
また、広視野ビデオを表すビットストリームを復号する装置を含む没入型レンダリングデバイスも開示される。
また、符号化してビットストリームにされた広視野ビデオの没入型レンダリングのシステムも開示される。そのようなシステムは、
− データネットワークから上記ビットストリームを受信するネットワークインタフェースと、
− 本明細書で開示される実施形態のいずれか1つに従って上記ビットストリームを復号する装置と、
− 復号済みの広視野ビデオをレンダリングするための没入型レンダリングデバイスと
を少なくとも含む。
一実装形態によれば、本明細書において上記で説明されるような広視野ビデオをコード化する方法又は広視野ビデオを表すビットストリームを復号する方法の異なるステップは、広視野ビデオをコード化する装置又は広視野ビデオを表すビットストリームを復号する装置のデータプロセッサによる実行が意図されるソフトウェア命令を含む1つ又は複数のソフトウェアプログラム又はソフトウェアモジュールプログラムによって実装され、これらのソフトウェア命令は、本原理による方法の異なるステップの実行を命じるように設計される。
また、コンピュータによる又はデータプロセッサによる実行が可能なコンピュータプログラムも開示され、このプログラムは、本明細書において上記で言及されるような広視野ビデオをコード化する方法のステップ又は広視野ビデオを表すビットストリームを復号する方法のステップの実行を命じるための命令を含む。
このプログラムは、いかなるプログラミング言語も使用することができ、ソースコード、オブジェクトコード又はソースコードとオブジェクトコードとの間の中間コード(部分的にコンパイルされた形式など)の形式でも、他の望ましいいかなる形式でもあり得る。
情報キャリアは、プログラムの格納が可能ないかなる実体又は装置でもあり得る。例えば、キャリアは、ROMなどの格納手段(例えば、CD ROM若しくは超小型電子回路ROM)又は磁気記録手段(例えば、フロッピーディスク若しくはハードディスクドライブ)を含み得る。
また、情報キャリアは、無線によって又は他の手段によって、電気又は光ケーブルを介して搬送することができる電気又は光信号などの伝送可能キャリアであり得る。本原理によるプログラムは、特に、インターネットタイプのネットワークにアップロードすることができる。
代替として、情報キャリアは、プログラムが組み込まれた集積回路であり得、回路は、問題の方法を実行するように又は問題の方法を実行する際に使用されるように適応される。
一実施形態によれば、方法/装置は、ソフトウェア及び/又はハードウェアコンポーネントによって実装することができる。この点において、「モジュール」又は「ユニット」という用語は、この文書では、ソフトウェアコンポーネント、ハードウェアコンポーネント、又は、ソフトウェアコンポーネントとハードウェアコンポーネントのセットに同じようにうまく当てはめることができる。
ソフトウェアコンポーネントは、1つ又は複数のコンピュータプログラム、プログラムの1つ又は複数のサブプログラム、或いは、より一般的には、関連モジュールに対して本明細書において以下で説明されるような1つの機能又は1組の機能の実装が可能なプログラムの任意の要素又はソフトウェアの断片に相当する。そのようなソフトウェアコンポーネントは、物理的実体(端末、サーバなど)のデータプロセッサによって実行され、この物理的実体のハードウェア資源(メモリ、記録媒体、通信バス、入力/出力電子ボード、ユーザインタフェースなど)へのアクセスが可能である。
同じように、ハードウェアコンポーネントは、関連モジュールに対して本明細書において以下で説明されるような1つの機能又は1組の機能の実装が可能なハードウェアユニットのいかなる要素にも相当する。ハードウェアコンポーネントは、プログラム可能なハードウェアコンポーネント、又は、ソフトウェアの実行のための集積プロセッサ(例えば、集積回路)、スマートカード、メモリカード、ファームウェアの実行のための電子ボードなどを有するコンポーネントであり得る。
全方向ビデオに加えて、本原理は、広視野ビデオコンテンツ(例えば、180°)にも適用される。
本開示の実施形態の好ましい環境による符号化及び復号システムの機能の概要を表す。 本開示によるシステムの第1の実施形態を表す。 本開示によるシステムの第1の実施形態を表す。 本開示によるシステムの第1の実施形態を表す。 本開示によるシステムの第1の実施形態を表す。 本開示によるシステムの第1の実施形態を表す。 本開示によるシステムの第1の実施形態を表す。 本開示によるシステムの第1の実施形態を表す。 本開示によるシステムの第1の実施形態を表す。 本開示による没入型ビデオレンダリングデバイスの第1の実施形態を表す。 本開示による没入型ビデオレンダリングデバイスの第1の実施形態を表す。 本開示による没入型ビデオレンダリングデバイスの第1の実施形態を表す。 球面Sから長方形ピクチャFへの投影の例を示す。 ピクチャFのXY平面座標系を示す。 球体Sの角度座標系を示す。 立方体表面Sから6つのピクチャへの投影の例を示す。 立方体座標系を示す。 2DピクチャFのXY平面座標系を示す。 2Dピクチャに投影された立方体の6つの面のレイアウトを示す。 図14Dに示されるレイアウトによる、対応する再構成された長方形ピクチャを示す。 従来のビデオコード化スキームからの因果的空間的近傍(causal spatial neighborhood)を示す。 正距円筒投影を使用して、球体として表される全方向ビデオが投影されている長方形ピクチャを示す。 図14Dによる、立方体投影を使用して、立方体として表される全方向ビデオが投影されている長方形ピクチャ及び6つの面のレイアウトを示す。 本開示の実施形態による、全方向ビデオの投影である2Dピクチャの現在のブロックをコード化するための例示的な方法のブロック図を示す。 本開示の実施形態による、全方向ビデオをコード化してビットストリームにするための例示的な方法のブロック図を示す。 本開示の実施形態による、全方向ビデオの投影である2Dピクチャの現在のブロックを復号するための例示的な方法のブロック図を示す。 本開示の実施形態による、ビットストリームから、全方向ビデオの3Dピクチャを表す2Dピクチャの現在のブロックを復号するための例示的な方法のブロック図を示す。 一実施形態による、全方向ビデオを符号化してビットストリームにするための例示的な装置を示す。 一実施形態による、全方向ビデオを表すビットストリームを復号するための例示的な装置を示す。 本開示の実施形態による、最確イントラ予測モードを決定するための現在のブロックに対する適応させた近隣のブロックを示す。 本開示の実施形態による、動きベクトル予測因子又は動き情報を導出するための現在のブロックに対する適応させた近隣のブロックを示す。 本開示の実施形態による、コンテキスト算術バイナリコード化のためのコンテキストを導出するための現在のブロックに対する適応させた近隣のブロックを示す。 本開示の実施形態による、サンプル適応オフセットパラメータを導出するための現在のブロックに対する適応させた近隣のブロックを示す。 HEVCにおけるイントラ予測方向を描写する図の例である。
広視野コンテンツは、数ある中でも特に、三次元コンピュータグラフィック画像シーン(3D CGIシーン)、ポイントクラウド又は没入型ビデオであり得る。そのような没入型ビデオを設計するため、例えば、バーチャルリアリティ(VR)、360、パノラマ、4πステラジアン、没入型、全方向、広視野など、多くの用語を使用することができる。
例えば、データネットワーク上での送信のために、全方向ビデオをコード化してビットストリームにするため、従来のビデオコーデック(HEVC、H.264/AVCなど)を使用することができる。従って、全方向ビデオの各ピクチャは、最初に、適切な投影関数を使用して1つ又は複数の2Dピクチャ(例えば、1つ又は複数の長方形ピクチャ)に投影される。実際には、全方向ビデオからのピクチャは、3D表面として表される。投影を容易にするため、通常は、投影に対して、球体、立方体又はピラミッドなどの簡単な凸状の表面が使用される。次いで、全方向ビデオを表す投影された2Dピクチャは、従来のビデオコーデックを使用してコード化される。
図13Aは、正距円筒投影を使用して、球体として表される表面Sにマッピングされた全方向ビデオのフレームを1つの長方形ピクチャIに投影する例を示す。
図14Aは、ここでは立方体として表される表面Sにマッピングされた全方向ビデオのフレームを6つのピクチャ又は面に投影する別の例を示す。図14Bに座標系が示される立方体の面は、場合により、図14Dに示されるレイアウトを使用して、図14Eに示されるような1つの長方形ピクチャに再構成することができる。
次いで、全方向ビデオをコード化する場合、表面の投影された長方形ピクチャは、HEVC、H.264/AVCなどの従来のビデオコード化規格を使用してコード化することができる。そのような規格によれば、2Dピクチャは、最初に、2Dピクチャを小さな非オーバーラップブロックに分割し、次いで、それらのブロックを個別に符号化することによって符号化される。冗長性を低減するため、従来のビデオコーダは、コード化予定の現在のブロックの値を予測するための因果的空間的近傍のブロックデータを使用する。そのような因果的空間的近傍のブロックの例は、図15に示されており、コード化予定の現在のブロックBKは、4つの近隣のブロックA、B、C、Dを有し、4つの近隣のブロックA、B、C、Dは、既にコード化済み/復号済みであり、現在のブロックBKに対するコード化/復号プロセスのコード化ステップにおける使用に対して利用可能である。そのような近隣のブロックは、イントラ予測、最確コード化モード決定(HEVC又はH.264/AVCではMPM決定として知られている)、インターピクチャコード化における動きベクトル予測のために使用することができる。また、そのような近隣のブロックは、符号化の後、デブロッキングフィルタリングプロセス又はサンプル適応オフセットプロセス(HEVCではSAOとしても知られている)においてなど、現在のブロックのフィルタリングのために使用することもできる。実行するプロセスに応じて、別の因果的空間的/時間的近傍を使用することができる。
因果的空間的近傍のブロックは、本明細書では、ピクチャのスキャン順番(例えば、ラスタスキャン順番)に従って既にコード化済み及び復号済みのブロックとして理解するものとする。
全方向ビデオでは、正距円筒投影を使用すると、球体の円対称性により、3D表面からのブロックは、ブロックの左側及びブロックの右側に近隣のブロックを有する。しかし、3D表面を2D長方形ピクチャに投影すると、いくつかの近隣のブロックは、ブロックに対してもはや利用可能ではない場合がある。例えば、正距円筒投影では、2Dピクチャの右側の境界に位置する2Dピクチャのブロックに投影された3D表面のブロックは、3D表面上では、2Dピクチャの左側の境界に位置する2Dブロックに投影された3D表面のブロックに隣接する。例えば、図16Aに示されるように、3D表面上では、2Dピクチャの右側の境界に位置するブロックF、Jは、ブロックA、Gに空間的に隣接する。
しかし、2Dピクチャでは、ピクチャの右側の境界に位置するブロックは、ピクチャの左側の境界に位置するブロックにはもはや隣接しない。図16Aに示されるように、2Dピクチャ上では、ブロックF、Jは、ブロックA、Gにはもはや空間的に隣接しない。
従来のビデオコード化スキームは、ピクチャの境界に位置しない2Dブロックのコード化と比べると、特別な方法でこれらのブロックをコード化する。まさに、従来のビデオコード化スキームは、欠けている近隣のブロックに対処しなければならない。
その上、2Dピクチャの復号の後に2Dピクチャを3D表面に再投影すると、3D表面の連続性が壊れているために、2Dピクチャの境界に位置する2Dブロックから投影された3Dブロックを含む緯度において、いくつかの目に見えるアーチファクトが現れる場合があり、2Dピクチャの符号化プロセスにおいて適応処置(そのような画素伝達又はパディング)を適用してもよい。
図14E又は14Fに示されるように、全方向ビデオを3D立方体として表し、長方形ピクチャに投影された立方体の6つの面を再構成する際にも同様の問題が生じる。そのような投影されたピクチャでは、投影された立方体の面の境界に位置するブロックは、2Dピクチャにおいて、3D立方体の隣接する面に属する因果的近傍のブロックから利益を得ることはできない。
従って、全方向ビデオの新規の符号化及び復号方法が必要とされる。
本原理は、本明細書では、全方向ビデオの場合で開示されており、本原理は、超広視野で取得された(すなわち、魚眼レンズのような極小焦点距離で取得された)従来の平面画像の場合でも適用することができる。
図1は、例示的な実施形態による符号化及び復号システムの一般的な概要を示す。図1のシステムは、機能システムである。前処理モジュール300は、符号化デバイス400による符号化のためのコンテンツを準備することができる。前処理モジュール300は、複数画像の取得、取得した複数画像を共通の空間(典型的には、方向を符号化する場合は3D球体)にマージすること、及び、例えば、これらに限定されないが、正距円筒マッピング又は立方体マッピングを使用して、3D球体を2Dフレームにマッピングすることを実行することができる。また、前処理モジュール300は、特定のフォーマット(例えば、正距円筒)の全方向ビデオを入力として受け取り、符号化により適したフォーマットにマッピングを変更するためにビデオを前処理することもできる。取得したビデオデータ表現に応じて、前処理モジュールは、マッピング空間変更を実行することができる。符号化デバイス400及び符号化方法は、本明細書の他の図に関して説明する。符号化した後、データ(例えば、没入型ビデオデータを符号化することができる又は3D CGI符号化済みのデータ)は、ネットワークインタフェース500に送信され、ネットワークインタフェース500は、典型的には、いかなるネットワークインタフェースでも実装することができる(例えば、ゲートウェイに存在する)。次いで、データは、インターネットなどの通信ネットワークを通じて送信されるが、他のいかなるネットワークも想定することができる。次いで、データは、ネットワークインタフェース600を介して受信される。ネットワークインタフェース600は、ゲートウェイ、テレビ、セットトップボックス、頭部装着型表示デバイス、イマーシブ(投影型)ウォール又は任意の没入型ビデオレンダリングデバイスにおいて実装することができる。受信後、データは、復号デバイス700に送信される。復号機能は、以下の図2〜12で説明される処理機能のうちの1つである。次いで、復号済みのデータは、プレーヤ800によって処理される。プレーヤ800は、レンダリングデバイス900用にデータを準備し、センサ又はユーザ入力データからの外部データを受信することができる。より正確には、プレーヤ800は、レンダリングデバイス900によって表示される予定のビデオコンテンツの一部を準備する。復号デバイス700及びプレーヤ800は、単一のデバイス(例えば、スマートフォン、ゲームコンソール、STB、タブレット、コンピュータなど)に統合することができる。変形形態では、プレーヤ800は、レンダリングデバイス900に統合される。
例えば、没入型ビデオをレンダリングする際、没入型表示デバイスの復号、再生及びレンダリング機能を実行するために、いくつかのタイプのシステムを想像することができる。
オーグメンテッドリアリティ、バーチャルリアリティ又はオーグメンテッドバーチャリティコンテンツを処理するための第1のシステムは、図2〜6に示されている。そのようなシステムは、処理機能、没入型ビデオレンダリングデバイス(例えば、頭部装着型ディスプレイ(HMD)、タブレット又はスマートフォンであり得る)を含み、センサを含む場合もある。また、没入型ビデオレンダリングデバイスは、表示デバイスと処理機能との間に追加のインタフェースモジュールを含み得る。処理機能は、1つ又はいくつかのデバイスによって実行することができる。処理機能を没入型ビデオレンダリングデバイスに組み込むことも、処理機能を1つ又はいくつかの処理デバイスに組み込むこともできる。処理デバイスは、1つ又はいくつかのプロセッサ、及び没入型ビデオレンダリングデバイスとの通信インタフェース(無線又は有線通信インタフェースなど)を含む。
また、処理デバイスは、直接又はネットワークデバイス(ホーム若しくはローカルゲートウェイなど)を通じて、インターネットなどのワイドアクセスネットワーク及びクラウド上に位置するアクセスコンテンツとの第2の通信インタフェースも含み得る。また、処理デバイスは、イーサネットタイプのローカルアクセスネットワークインタフェースなどの第3のインタフェースを通じてローカルストレージにアクセスすることもできる。実施形態では、処理デバイスは、1つ又はいくつかの処理ユニットを有するコンピュータシステムであり得る。別の実施形態では、処理デバイスは、没入型ビデオレンダリングデバイスに有線又は無線リンクを通じて接続することができるスマートフォンでも、没入型ビデオレンダリングデバイスのハウジングに挿入することができ、コネクタを通じて又は無線で没入型ビデオレンダリングデバイスと通信することができるスマートフォンでもあり得る。処理デバイスの通信インタフェースは、有線インタフェース(例えば、バスインタフェース、広域ネットワークインタフェース、ローカルエリアネットワークインタフェース)又は無線インタフェース(IEEE802.11インタフェース若しくはBluetooth(登録商標)インタフェースなど)であり得る。
処理機能が没入型ビデオレンダリングデバイスによって実行される際は、没入型ビデオレンダリングデバイスは、コンテンツを受信及び/又は送信するために、直接又はゲートウェイを通じてネットワークへのインタフェースと共に提供することができる。
別の実施形態では、システムは、没入型ビデオレンダリングデバイス及び処理デバイスと通信する補助デバイスを含む。そのような実施形態では、この補助デバイスは、処理機能の少なくとも1つを内包し得る。
没入型ビデオレンダリングデバイスは、1つ又はいくつかのディスプレイを含み得る。デバイスは、そのディスプレイの各々の前でレンズなどの光学系を採用することができる。また、ディスプレイは、スマートフォン又はタブレットの場合のように、没入型表示デバイスの一部でもあり得る。別の実施形態では、ディスプレイ及び光学系は、ユーザが着用することができるヘルメット、眼鏡又はバイザに埋め込むことができる。また、没入型ビデオレンダリングデバイスは、後に説明されるように、いくつかのセンサを統合することもできる。また、没入型ビデオレンダリングデバイスは、いくつかのインタフェース又はコネクタも含み得る。没入型ビデオレンダリングデバイスは、センサ、処理機能、ハンドヘルド、又は、他のボディ部分関連のデバイス若しくはセンサと通信するために、1つ又はいくつかの無線モジュールを含む場合もある。
また、没入型ビデオレンダリングデバイスは、処理機能も含み得、処理機能は、1つ又はいくつかのプロセッサによって実行され、コンテンツを復号するように又はコンテンツを処理するように構成されている。本明細書では、コンテンツを処理することにより、すべての機能が表示できるコンテンツを準備することが理解されている。このことは、例えば、コンテンツを復号すること、コンテンツを表示する前にコンテンツをマージすること及び表示デバイスに適合するようにコンテンツを修正することを含み得る。
没入型コンテンツレンダリングデバイスの1つの機能は、仮想ボリュームとして構築されたコンテンツの少なくとも一部を捕捉するバーチャルカメラを制御することである。システムは、バーチャルカメラの姿勢を処理するためにユーザの姿勢(例えば、ユーザの頭の姿勢)を完全に又は部分的に追跡する姿勢追跡センサを含み得る。いくつかの測位センサは、ユーザの移動を追跡することができる。また、システムは、例えば、照明、温度又は音の状態を測定するために、環境に関連する他のセンサも含み得る。また、そのようなセンサは、例えば、発汗又は心拍数を測定するために、ユーザの身体にも関連し得る。これらのセンサを通じて取得された情報は、コンテンツを処理するために使用することができる。また、システムは、ユーザ入力デバイス(例えば、マウス、キーボード、リモートコントロール、ジョイスティック)も含み得る。ユーザ入力デバイスからの情報は、コンテンツを処理するため、ユーザインタフェースを管理するため又はバーチャルカメラの姿勢を制御するために使用することができる。センサ及びユーザ入力デバイスは、有線又は無線通信インタフェースを通じて、処理デバイス及び/又は没入型レンダリングデバイスと通信する。
図2〜6を使用すると、オーグメンテッドリアリティ、バーチャルリアリティ、オーグメンテッドバーチャリティ、又は、オーグメンテッドリアリティからバーチャルリアリティまでの任意のコンテンツを表示するためのこの第1のタイプのシステムのいくつかの実施形態が説明されている。図2は、没入型ビデオを復号、処理及びレンダリングするように構成されたシステムの特定の実施形態を示す。システムは、没入型ビデオレンダリングデバイス10、センサ20、ユーザ入力デバイス30、コンピュータ40及びゲートウェイ50(任意選択の)を含む。
図10に示される没入型ビデオレンダリングデバイス10は、ディスプレイ101を含む。ディスプレイは、例えば、OLED又はLCDタイプのものである。没入型ビデオレンダリングデバイス10は、例えば、HMD、タブレット又はスマートフォンである。デバイス10は、タッチ面102(例えば、タッチパッド若しくは触覚スクリーン)、カメラ103、少なくとも1つのプロセッサ104に接続されたメモリ105及び少なくとも1つの通信インタフェース106を含み得る。少なくとも1つのプロセッサ104は、センサ20から受信された信号を処理する。センサからの測定値のいくつかは、デバイスの姿勢を演算するため及びバーチャルカメラを制御するために使用される。姿勢推定のために使用されるセンサは、例えば、ジャイロスコープ、加速度計又はコンパスである。また、より複雑なシステム(例えば、カメラのリグを使用する)を使用することもできる。この場合は、少なくとも1つのプロセッサは、デバイス10の姿勢を推定するために、画像処理を実行する。他のいくつかの測定値は、環境状態又はユーザの反応に従ってコンテンツを処理するために使用される。環境及びユーザを観察するために使用されるセンサは、例えば、マイクロフォン、光センサ又は接触センサである。また、例えば、ユーザの目を追跡するビデオカメラのような、より複雑なシステムを使用することもできる。この場合は、少なくとも1つのプロセッサは、予想される測定を操作するために、画像処理を実行する。また、センサ20及びユーザ入力デバイス30のデータは、コンピュータ40に送信することもでき、コンピュータ40は、これらのセンサの入力に従ってデータを処理する。
メモリ105は、プロセッサ104用のパラメータ及びコードプログラム命令を含む。また、メモリ105は、センサ20及びユーザ入力デバイス30から受信されたパラメータも含み得る。通信インタフェース106は、没入型ビデオレンダリングデバイスがコンピュータ40と通信できるようにする。処理デバイスの通信インタフェース106は、有線インタフェース(例えば、バスインタフェース、広域ネットワークインタフェース、ローカルエリアネットワークインタフェース)又は無線インタフェース(IEEE802.11インタフェース若しくはBluetooth(登録商標)インタフェースなど)であり得る。コンピュータ40は、データを送信し、任意選択により、没入型ビデオレンダリングデバイス10に対するコマンドを制御する。コンピュータ40は、データの処理を担当する(すなわち、没入型ビデオレンダリングデバイス10による表示用にデータを準備する)。処理をコンピュータ40によって排他的に行うことも、処理の一部をコンピュータによって行い、別の部分を没入型ビデオレンダリングデバイス10によって行うこともできる。コンピュータ40は、直接又はゲートウェイ若しくはネットワークインタフェース50を通じて、インターネットに接続される。コンピュータ40は、インターネットから没入型ビデオを表すデータを受信し、これらのデータを処理し(例えば、データを復号し、場合により、没入型ビデオレンダリングデバイス10によって表示される予定のビデオコンテンツの一部を準備する)、表示のために処理済みのデータを没入型ビデオレンダリングデバイス10に送信する。また、変形形態では、システムは、没入型ビデオを表すデータが格納されたローカルストレージ(表示せず)も含み得、上記ローカルストレージは、コンピュータ40上、又は、例えば、ローカルエリアネットワークを通じてアクセス可能なローカルサーバ(表示せず)上のものであり得る。
図3は、第2の実施形態を表す。この実施形態では、STB 90は、直接(すなわち、STB 90はネットワークインタフェースを含む)又はゲートウェイ若しくはネットワークインタフェース50を介して、インターネットなどのネットワークに接続されている。STB 90は、テレビ100又は没入型ビデオレンダリングデバイス200などのレンダリングデバイスに無線インタフェースを通じて又は有線インタフェースを通じて接続される。STBの古典的な機能に加えて、STB 90は、テレビ100又は任意の没入型ビデオレンダリングデバイス200上でレンダリングするためにビデオコンテンツを処理するための処理機能を含む。これらの処理機能は、コンピュータ40に対して説明されるものと同じであり、ここでは、再度説明することはしない。また、センサ20及びユーザ入力デバイス30は、図2に関して以前に説明されたものと同じタイプのものである。STB 90は、インターネットから没入型ビデオを表すデータを得る。変形形態では、STB 90は、没入型ビデオを表すデータが格納されたローカルストレージ(表示せず)から没入型ビデオを表すデータを得て、上記ローカルストレージは、例えば、ローカルエリアネットワークを通じてアクセス可能なローカルサーバ(表示せず)上のものであり得る。
図4は、図2で表されるものに関連する第3の実施形態を表す。ゲームコンソール60は、コンテンツデータを処理する。ゲームコンソール60は、データを送信し、任意選択により、没入型ビデオレンダリングデバイス10に対するコマンドを制御する。ゲームコンソール60は、没入型ビデオを表すデータを処理し、表示のために処理済みのデータを没入型ビデオレンダリングデバイス10に送信するように構成されている。処理をゲームコンソール60によって排他的に行うことも、処理の一部を没入型ビデオレンダリングデバイス10によって行うこともできる。
ゲームコンソール60は、直接又はゲートウェイ若しくはネットワークインタフェース50を介して、インターネットに接続される。ゲームコンソール60は、インターネットから没入型ビデオを表すデータを得る。変形形態では、ゲームコンソール60は、没入型ビデオを表すデータが格納されたローカルストレージ(表示せず)から没入型ビデオを表すデータを得て、上記ローカルストレージは、ゲームコンソール60上、又は、例えば、ローカルエリアネットワークを通じてアクセス可能なローカルサーバ(表示せず)上のものであり得る。
ゲームコンソール60は、インターネットから没入型ビデオを表すデータを受信し、これらのデータを処理し(例えば、データを復号し、場合により、表示される予定のビデオの一部を準備する)、表示のために処理済みのデータを没入型ビデオレンダリングデバイス10に送信する。ゲームコンソール60は、センサ20及びユーザ入力デバイス30からデータを受信し、それらのデータを使用して、インターネットから又はローカルストレージからから得られた没入型ビデオを表すデータを処理することができる。
図5は、上記第1のタイプのシステムの第4の実施形態を表し、没入型ビデオレンダリングデバイス70は、ハウジング705に挿入されたスマートフォン701によって形成される。スマートフォン701は、インターネットに接続することができ、従って、インターネットから没入型ビデオを表すデータを得ることができる。変形形態では、スマートフォン701は、没入型ビデオを表すデータが格納されたローカルストレージ(表示せず)から没入型ビデオを表すデータを得て、上記ローカルストレージは、スマートフォン701上、又は、例えば、ローカルエリアネットワークを通じてアクセス可能なローカルサーバ(表示せず)上のものであり得る。
没入型ビデオレンダリングデバイス70は、没入型ビデオレンダリングデバイス70の好ましい実施形態を与える図11を参照して説明される。没入型ビデオレンダリングデバイス70は、任意選択により、少なくとも1つのネットワークインタフェース702及びスマートフォン701用のハウジング705を含む。スマートフォン701は、スマートフォン及びディスプレイのすべての機能を含む。スマートフォンのディスプレイは、没入型ビデオレンダリングデバイス70ディスプレイとして使用される。従って、スマートフォン701のディスプレイ以外のディスプレイは含まない。しかし、スマートフォンディスプレイ上でデータを見るために、レンズなどの光学系704が含まれる。スマートフォン701は、場合により、センサ20から及びユーザ入力デバイス30から受信されたデータに従って、没入型ビデオを表すデータを処理する(例えば、復号し、表示用に準備する)ように構成されている。センサからの測定値のいくつかは、デバイスの姿勢を演算するため及びバーチャルカメラを制御するために使用される。姿勢推定のために使用されるセンサは、例えば、ジャイロスコープ、加速度計又はコンパスである。また、より複雑なシステム(例えば、カメラのリグを使用する)を使用することもできる。この場合は、少なくとも1つのプロセッサは、デバイス10の姿勢を推定するために、画像処理を実行する。他のいくつかの測定値は、環境状態又はユーザの反応に従ってコンテンツを処理するために使用される。環境及びユーザを観察するために使用されるセンサは、例えば、マイクロフォン、光センサ又は接触センサである。また、例えば、ユーザの目を追跡するビデオカメラのような、より複雑なシステムを使用することもできる。この場合は、少なくとも1つのプロセッサは、予想される測定を操作するために、画像処理を実行する。
図6は、上記第1のタイプのシステムの第5の実施形態を表し、没入型ビデオレンダリングデバイス80は、データコンテンツを処理して表示するためのすべての機能を含む。システムは、没入型ビデオレンダリングデバイス80、センサ20及びユーザ入力デバイス30を含む。没入型ビデオレンダリングデバイス80は、場合により、センサ20から及びユーザ入力デバイス30から受信されたデータに従って、没入型ビデオを表すデータを処理する(例えば、復号し、表示用に準備する)ように構成されている。没入型ビデオレンダリングデバイス80は、インターネットに接続することができ、従って、インターネットから没入型ビデオを表すデータを得ることができる。変形形態では、没入型ビデオレンダリングデバイス80は、没入型ビデオを表すデータが格納されたローカルストレージ(表示せず)から没入型ビデオを表すデータを得て、上記ローカルストレージは、没入型ビデオレンダリングデバイス80上、又は、例えば、ローカルエリアネットワークを通じてアクセス可能なローカルサーバ(表示せず)上のものであり得る。
没入型ビデオレンダリングデバイス80は、図12に示される。没入型ビデオレンダリングデバイスは、ディスプレイ801を含む。ディスプレイは、例えば、OLED又はLCDタイプのもの、タッチパッド(任意選択の)802、カメラ(任意選択の)803、少なくとも1つのプロセッサ804に接続されたメモリ805及び少なくとも1つの通信インタフェース806であり得る。メモリ805は、プロセッサ804用のパラメータ及びコードプログラム命令を含む。また、メモリ805は、センサ20及びユーザ入力デバイス30から受信されたパラメータも含み得る。また、メモリは、没入型ビデオコンテンツを表すデータを格納できるほど十分に大容量のものでもあり得る。メモリ805は、異なるタイプのもの(SDカード、ハードディスク、揮発性又は不揮発性メモリ…)でもあり得る。通信インタフェース806は、没入型ビデオレンダリングデバイスがインターネットネットワークと通信できるようにする。プロセッサ804は、ディスプレイ801にビデオを表示するために、ビデオを表すデータを処理する。カメラ803は、画像処理ステップのための環境の画像を捕捉する。データは、没入型ビデオレンダリングデバイスを制御するために、このステップから抽出される。
オーグメンテッドリアリティ、バーチャルリアリティ又はオーグメンテッドバーチャリティコンテンツを処理するための第2のシステムは、図7〜9に示される。そのようなシステムは、イマーシブウォールを含む。
図7は、第2のタイプのシステムを表す。第2のタイプのシステムは、コンピュータ4000からデータを受信するイマーシブ(投影型)ウォールであるディスプレイ1000を含む。コンピュータ4000は、インターネットから没入型ビデオデータを受信することができる。コンピュータ4000は、通常は、直接又はゲートウェイ5000若しくはネットワークインタフェースを通じて、インターネットに接続される。変形形態では、没入型ビデオデータは、コンピュータ4000によって、没入型ビデオを表すデータが格納されたローカルストレージ(表示せず)から得て、上記ローカルストレージは、コンピュータ4000内、又は、例えば、ローカルエリアネットワークを通じてアクセス可能なローカルサーバ(表示せず)内のものであり得る。
また、このシステムは、センサ2000及びユーザ入力デバイス3000も含み得る。イマーシブウォール1000は、OLED又はLCDタイプのものである。イマーシブウォール1000は、1つ又はいくつかのカメラを装備し得る。イマーシブウォール1000は、センサ2000(又は複数のセンサ2000)から受信されたデータを処理することができる。センサ2000から受信されたデータは、照明状態、温度、ユーザの環境(例えば、物体の位置)に関連し得る。
また、イマーシブウォール1000は、ユーザ入力デバイス3000から受信されたデータを処理することもできる。ユーザ入力デバイス3000は、ユーザの感情に対するフィードバックを与えるために、触力覚信号などのデータを送信する。ユーザ入力デバイス3000の例は、スマートフォン、リモートコントロール及びジャイロスコープ機能を有するデバイスなどのハンドヘルドデバイスである。
また、センサ2000及びユーザ入力デバイス3000のデータは、コンピュータ4000に送信することもできる。コンピュータ4000は、これらのセンサ/ユーザ入力デバイスから受信されたデータに従ってビデオデータを処理することができる(例えば、ビデオデータを復号し、表示用にビデオデータを準備する)。センサ信号は、イマーシブウォールの通信インタフェースを通じて受信することができる。この通信インタフェースは、Bluetoothタイプのものでも、WIFIタイプのものでも、任意の他のタイプの接続のものでもよく、好ましくは、無線のものであるが、有線接続でもよい。
コンピュータ4000は、イマーシブウォール1000に処理済みのデータを送信し、任意選択により、コマンドを制御する。コンピュータ4000は、イマーシブウォール1000によって表示される予定のデータを処理する(すなわち、表示用にデータを準備する)ように構成されている。処理をコンピュータ4000によって排他的に行うことも、処理の一部をコンピュータ4000によって行い、別の部分をイマーシブウォール1000によって行うこともできる。
図8は、第2のタイプの別のシステムを表す。システムは、イマーシブ(投影型)ウォール6000を含み、イマーシブ(投影型)ウォール6000は、ビデオコンテンツを処理し(例えば、データを復号し、表示用にデータを準備する)、表示するように構成されている。システムは、センサ2000、ユーザ入力デバイス3000をさらに含む。
イマーシブウォール6000は、インターネットからゲートウェイ5000を通じて又はインターネットから直接、没入型ビデオデータを受信する。変形形態では、没入型ビデオデータは、イマーシブウォール6000によって、没入型ビデオを表すデータが格納されたローカルストレージ(表示せず)から得て、上記ローカルストレージは、イマーシブウォール6000内、又は、例えば、ローカルエリアネットワークを通じてアクセス可能なローカルサーバ(表示せず)内のものであり得る。
また、このシステムは、センサ2000及びユーザ入力デバイス3000も含み得る。イマーシブウォール6000は、OLED又はLCDタイプのものである。イマーシブウォール6000は、1つ又はいくつかのカメラを装備し得る。イマーシブウォール6000は、センサ2000(又は複数のセンサ2000)から受信されたデータを処理することができる。センサ2000から受信されたデータは、照明状態、温度、ユーザの環境(例えば、物体の位置)に関連し得る。
また、イマーシブウォール6000は、ユーザ入力デバイス3000から受信されたデータを処理することもできる。ユーザ入力デバイス3000は、ユーザの感情に対するフィードバックを与えるために、触力覚信号などのデータを送信する。ユーザ入力デバイス3000の例は、スマートフォン、リモートコントロール及びジャイロスコープ機能を有するデバイスなどのハンドヘルドデバイスである。
イマーシブウォール6000は、これらのセンサ/ユーザ入力デバイスから受信されたデータに従ってビデオデータを処理することができる(例えば、ビデオデータを復号し、表示用にビデオデータを準備する)。センサ信号は、イマーシブウォールの通信インタフェースを通じて受信することができる。この通信インタフェースは、Bluetoothタイプのものでも、WIFIタイプのものでも、任意の他のタイプの接続のものでもよく、好ましくは、無線のものであるが、有線接続でもよい。イマーシブウォール6000は、センサ及びインターネットと通信するために少なくとも1つの通信インタフェースを含み得る。
図9は、イマーシブウォールがゲームのために使用される第3の実施形態を示す。1つ又はいくつかのゲームコンソール7000は、好ましくは、無線インタフェースを通じて、イマーシブウォール6000に接続される。イマーシブウォール6000は、インターネットからゲートウェイ5000を通じて又はインターネットから直接、没入型ビデオデータを受信する。変形形態では、没入型ビデオデータは、イマーシブウォール6000によって、没入型ビデオを表すデータが格納されたローカルストレージ(表示せず)から得て、上記ローカルストレージは、イマーシブウォール6000内、又は、例えば、ローカルエリアネットワークを通じてアクセス可能なローカルサーバ(表示せず)内のものであり得る。
ゲームコンソール7000は、命令及びユーザ入力パラメータをイマーシブウォール6000に送信する。イマーシブウォール6000は、表示用にコンテンツを準備するため、場合により、センサ2000、ユーザ入力デバイス3000及びゲームコンソール7000から受信された入力データに従って没入型ビデオコンテンツを処理する。また、イマーシブウォール6000は、表示予定のコンテンツを格納するための内部メモリも含み得る。イマーシブウォール6000は、OLED又はLCDタイプのものである。イマーシブウォール6000は、1つ又はいくつかのカメラを装備し得る。
センサ2000から受信されたデータは、照明状態、温度、ユーザの環境(例えば、物体の位置)に関連し得る。また、イマーシブウォール6000は、ユーザ入力デバイス3000から受信されたデータを処理することもできる。ユーザ入力デバイス3000は、ユーザの感情に対するフィードバックを与えるために、触力覚信号などのデータを送信する。ユーザ入力デバイス3000の例は、スマートフォン、リモートコントロール及びジャイロスコープ機能を有するデバイスなどのハンドヘルドデバイスである。
イマーシブウォール6000は、これらのセンサ/ユーザ入力デバイスから受信されたデータに従って没入型ビデオデータを処理することができる(例えば、没入型ビデオデータを復号し、表示用に没入型ビデオデータを準備する)。センサ信号は、イマーシブウォールの通信インタフェースを通じて受信することができる。この通信インタフェースは、Bluetoothタイプのものでも、WIFIタイプのものでも、任意の他のタイプの接続のものでもよく、好ましくは、無線のものであるが、有線接続でもよい。イマーシブウォール6000は、センサ及びインターネットと通信するために少なくとも1つの通信インタフェースを含み得る。
図17は、本開示の実施形態による、全方向ビデオの投影である2Dピクチャの現在のブロックをコード化するための例示的な方法のためのブロック図を示す。上記全方向ビデオの少なくとも1つのピクチャは、上記で開示されるものなどの球体又は立方体など、3D表面として表される。しかし、本原理は、全方向ビデオのいかなる3D表現にも適用することができる。3D表面は、投影関数を使用して少なくとも1つの2Dピクチャに投影される。例えば、そのような投影関数は、正距円筒投影又は他のタイプの投影関数であり得る。次いで、結果として得られた2Dピクチャは、画素の非オーバーラップブロックに分割される。本明細書では、図15で開示されるものなど、従来の近隣のブロックを使用する従来の2Dビデオコード化スキームを使用して2Dピクチャの少なくとも1つの現在のブロックを符号化する方法が開示される。
ブロック1700では、3D表面を2Dピクチャに投影するために使用された投影関数に従って、上記現在のブロックに対する上記2Dピクチャの少なくとも1つの近隣のブロックが決定される。決定された近隣のブロックは、2Dピクチャの上記現在のブロックに空間的に隣接していないが、上記3D表面の現在のブロックに空間的に隣接する。
本原理の実施形態によれば、投影関数は、正距円筒投影であり、3D表面は、球体である。2Dピクチャの右側の境界に位置する現在のブロックに対する近隣のブロックは、図13Bに示されるようなXY平面上のデカルト座標(正規化された)と図13Cに示されるような球体上の角座標との間の以下の関係を使用することによって決定される。
y=φ/π、−0.5≦y≦0.5、−π/2≦φ≦π/2
x=θ/2π、0≦x≦1、0≦θ≦2π
式中、(x,y)は、2Dピクチャの正規化されたXY平面上のポイントMの場所に相当し、(θ,φ)は、球体上の対応するポイントM’の座標である。
図16Aの場合は、2Dピクチャの最後の列のブロック(例えば、ブロックF)の右側の近隣のブロックに対し、ブロックの左上隅のポイントは、2Dピクチャの列インデックスwに位置し、XY平面上のx=1に位置する。球体上のその対応するポイントは、角座標(2π,φ)=(0,φ)を有する。従って、2Dピクチャの右側の境界に位置する現在のブロック(すなわち、2Dピクチャの最後の列)に対し、近隣のブロックは、現在のブロックの同じ行の2Dピクチャの第1のブロックであると決定される。例えば、図16Aに示されるように、現在のブロックF及びJに対し、近隣のブロックはそれぞれ、A及びGである。
本開示の実施形態によれば、2Dピクチャの右側の境界に位置する現在のブロックに対する近隣のブロックは、現在のブロックの下の行又は上の行の2Dピクチャの左側の境界に位置する近隣のブロックでもあり得る。正距円筒投影により、そのような近隣のブロックは、球体上の現在のブロックに少なくとも部分的に空間的に隣接する。例えば、図16Aに示されるブロックJに対し、ブロックA及び/又はKは3D表面上のブロックJに少なくとも部分的に空間的に隣接するため、それらのブロックA及び/又はKは、本原理に従って、近隣のブロックと決定することができる。しかし、近隣のブロックと決定するには、ターゲットブロック(例えば、K)は、現在のブロックのコード化に対して利用可能でなければならない(すなわち、近隣のブロックは、コード化/復号のために使用されるスキャン順番に従って、現在のブロックの前にコード化/復号されているものとする)。そのような場合は、例えば、ブロックK及びJが、コード化単位の同じ行に位置する1群のブロックを含むコード化単位に属する際、近隣のブロックK及び現在のブロックJに対して起こり得る。
別の実施形態によれば、投影関数が立方体投影である際、2Dピクチャに投影された立方体の現在の面の境界(例えば、立方体の現在の面の最後の又は最初の列)に位置する現在のブロックに対し、近隣のブロックは、現在の面が3D表面のエッジを共有する立方体の別の面の境界のブロックであると決定される。例えば、図16Bは、図16Cに示されるレイアウトに従って立方体の6つの投影面が再構成されている2Dピクチャを示す。現在のブロックC、A、E、Kに対し、本原理に従って決定される近隣のブロックはそれぞれ、D、F、I、Hである。立方体投影に従って近隣のブロックを決定する場合、図14Cに示されるXY平面のポイントのデカルト座標と以下で開示されるものなどの立方体との間の関係を使用することができ、
Figure 2019534620

対応するレイアウトは図16Cに示される。座標kは、面の数を示し、(u,v)(u,v∈[−1,1])は、その面上の座標を示す。立方体の各面は、幅w及び高さhを有するものである。
ブロック1701では、本原理に従って少なくとも1つの近隣のブロックが決定された時点で、少なくとも決定された近隣のブロックを使用して、現在のブロックを符号化して上記ビットストリームにする。現在のブロックの符号化の間、以下で詳述するように、符号化モジュールのすべて又はほんのいくつかは、決定された近隣のブロックを使用することができる。
ブロック1702では、投影関数に関連する情報の少なくとも1つのアイテムをコード化してビットストリームにする。そのような情報のアイテムは、3D表面を2Dピクチャに投影するために使用した投影関数の種類をデコーダに示すことを可能にする。従って、デコーダは、符号化の間に実行されたように現在のブロックの近隣のブロックを決定し、同じ近隣のブロックを使用することができる。
異なる変形形態によれば、投影関数に関連する情報のアイテムは、H.264/AVC規格又はHEVC規格によって定義されるものなどのシーケンスパラメータセット構文要素で、H.264/AVC規格又はHEVC規格によって定義されるものなどのピクチャパラメータセット構文要素で、或いは、H.264/AVC規格又はHEVC規格によって定義されるものなどの上記2Dピクチャに対応するスライスヘッダ構文要素で、コード化することができる。投影関数に関連する情報のアイテムは、ピクチャ又はシーケンスレベルでそのようなアイテムの信号伝達が可能な適切ないかなる構文要素でもコード化することができる。
図18は、例示的なビデオエンコーダ400を示す概略ブロック図である。そのようなビデオエンコーダ400は、本原理の実施形態による、全方向ビデオの投影を表す1組のピクチャを符号化してビットストリームにすることを実行する。ビデオエンコーダ400は、HEVCコーダと一致するものとして開示されるが、本原理は、2Dピクチャのシーケンスとしてビデオを処理するいかなる2Dビデオコード化スキームにも適用することができる。
古典的には、ビデオエンコーダ400は、図18に示されるように、ブロックベースのビデオ符号化のためのいくつかのモジュールを含み得る。符号化予定の全方向ビデオからの投影ピクチャを表す2DピクチャIは、エンコーダ400に入力される。
最初に、細分化モジュールは、ピクチャIを1組の画素単位に分割する。
使用されるビデオコード化規格に応じて、細分化モジュールによって伝達される画素単位は、H.264/AVCなどのマクロブロック(MB)又はHEVCなどのコード化木単位(CTU)であり得る。
HEVCコーダによれば、コード化木単位は、輝度サンプルの1つのコード化木ブロック(CTB)と、クロミナンスサンプルの2つのコード化木ブロックと、コード化木ブロックのさらなる細分化に関する対応する構文要素とを含む。輝度サンプルのコード化木ブロックは、16×16画素、32×32画素又は64×64画素のサイズを有し得る。各コード化木ブロックは、木構造及び四分木のような信号伝達を使用して、より小さなブロック(コード化ブロックCBとして知られている)にさらに細分化することができる。四分木のルートは、コード化木単位と関連付けられる。輝度コード化ブロックのサイズは、輝度コード化ブロックの最大サポートサイズである。1つの輝度コード化ブロック及び通常は2つのクロミナンスコード化ブロックは、コード化単位(CU)を形成する。コード化木単位は、1つのコード化単位を含んでもよく、複数のコード化単位を形成するように分けられてもよく、各コード化単位は、予測単位(PU)及び変換単位(TU)の木への関連付けられたパーティション化を有する。インターピクチャ予測を使用してピクチャエリアをコード化するか又はイントラピクチャ予測を使用してピクチャエリアをコード化するかの決定は、コード化単位レベルで行われる。予測単位パーティション化構造は、コード化単位レベルでそのルートを有する。次いで、基本的な予測タイプ決定に応じて、輝度及びクロミナンスコード化ブロックをサイズでさらに分けることができ、輝度及びクロミナンス予測ブロック(PB)から予測することができる。HEVC規格は、64×64サンプルから4×4サンプルまで、可変予測ブロックサイズをサポートする。予測残差は、ブロック変換を使用してコード化される。変換単位(TU)木構造は、コード化単位レベルでそのルートを有する。輝度コード化ブロック残差は、輝度変換ブロックと同一でも、より小さな輝度変換ブロックにさらに分けてもよい。同じことが、クロミナンス変換ブロックにも当てはまる。変換ブロックは、4×4、8×8、16×16又は32×32サンプルのサイズを有し得る。
符号化プロセスは、ブロックBLKと呼ばれる画素の単位に適用するものとして、以下で説明する。そのようなブロックBLKは、マクロブロック、コード化木単位、上記で説明される単位のうちの1つからの任意のサブブロック、又は、輝度サンプルとクロミナンスサンプルとを含むか若しくは輝度サンプルのみを含むピクチャIの細分化の他の任意のレイアウトに相当し得る。
以下で説明される符号化及び復号プロセスは、例示を目的とする。いくつかの実施形態によれば、符号化又は復号モジュールは、追加しても、取り除いても、以下のモジュールとは異なるものでもよい。しかし、本明細書で開示される原理は、依然として、これらの実施形態に適用することができる。
本原理は、本明細書では、正距円筒投影の場合で開示されている。しかし、他の投影関数を使用することもできる。従って、ブロック1700に従って決定される2Dピクチャの境界にある現在のブロックに対する近隣のブロックは、この投影関数に従って決定される。
エンコーダ400は、以下の通り、ピクチャIの各ブロックの符号化を実行する。エンコーダ400は、例えば、レート/歪み最適化に基づいて、コード化予定のピクチャのブロックBLKに対するコード化モードを選択するためのモード選択ユニットを含む。そのようなモード選択ユニットは、
− コード化予定のピクチャの1つの現在のブロックと参照ピクチャとの間の動きを推定するための動き推定モジュールと、
− 推定された動きを使用して現在のブロックを予測するための動き補償モジュールと、
− 現在のブロックを空間的に予測するためのイントラ予測モジュールと
を含む。
また、モード選択ユニットは、例えば、レート/歪み最適化に従って、ブロックの細分化が必要かどうかを決定することもできる。その場合は、モード選択ユニットは、次いで、ブロックBLKの各サブブロックに対して動作する。
モード選択ユニットは、2Dピクチャの右側の境界に位置する現在のBLKの近隣のブロックを導出するために、図17に関連して開示される原理を適用することができる。
変形形態によれば、開示される原理は、現在のブロックBLKに対するイントラ予測コード化モードをコード化するための最確モードリストを決定する際に実行される。この変形形態によれば、イントラ予測モードコード化は、予測単位レベルで実行され、従って、本明細書における現在のブロックBLKは、予測単位(図23に示されるような現在のPU)に相当する。HEVC規格は、33の方向配向に相当する33の方向予測モード(2〜34のインデックスが設けられる)、平面予測モード(0のインデックスが設けられる)及びDC予測モード(1のインデックスが設けられる)を指定しており、図27によって示されるような現在の予測単位を空間的に予測するための35の可能なイントラ予測モードのセットが得られる。現在の予測単位をコード化するためにどのイントラ予測モードを使用するかを信号伝達するために必要なビットレートを低減するため、最確モード(MPM)リストが構築される。MPMリストは、コード化予定の現在のブロックに対する3つの最確イントラ予測モードを含む。これらの3つのMPMは、現在のブロックの近隣のブロックをコード化するために使用されたイントラ予測モードに従って決定される。HEVCによれば、現在のブロックの左側及び上側の近隣のブロックのみが考慮され、図23(a)に示される現在のPUに対してA及びBのそれぞれが考慮される。2つのブロックA及び/又はBが利用可能ではないか又はイントラコード化されない場合は、そのブロックに対してDC予測モードが想定される。以下では、ブロックAのイントラ予測モードは、m_Aで示され、ブロックBのイントラ予測モードは、m_Bで示される。
HEVCでは、MPMのセットは、以下の通り構築される。
(HEVC_1)m_A及びm_Bが等しくなければ、MPM[0]=m_Aであり、MPM[1]=m_Bである。MPM[2]と示されるセットの第3の最確モードは、以下の通り決定される。
m_Aもm_Bも平面モード(図27のインデックス0)でなければ、MPM[2]=平面モード(0)であり、
それらのうちの1つ(すなわち、m_A又はm_B)は平面モードであるが、m_Aもm_BもDCモードでなければ、MPM[2]=DCモード(1)であり、
m_A及びm_Bの一方が平面モードであり、他方がDCモードであれば、MPM[2]=垂直角度イントラ予測モード(図27の方向モード26)である。
(HEVC_2)m_A及びm_Bは等しいが、平面モードともDCモードとも異なれば、MPM[0]=m_Aであり、MPM[1]=m_A−であり、MPM[2]=m_A+であり、式中、m_A−及びm_A+は、HEVC規格によって指定されるようなブロックAのイントラ予測モードの2つの隣接する角度モードを示し、そうでなければ、MPM[0]=平面モード(HEVCのインデックス0)であり、MPM[1]=DCモード(HEVCのインデックス1)であり、MPM[2]=垂直角度イントラ予測モードモード26(図27の方向モード26)である。+及び−は、m_Aの現在の角度方向の両側に位置する角度方向を指す。例として、m_Aが図17のインデックス14のモードと等しいならば、m_A−は、インデックス13のモードと等しく、m_A+は、インデックス15のモードと等しい。モード2及び34に対しては2つの特別な場合がある。m_Aが2であれば、m_A−は33であり、m_A+は3である。m_Aが34であれば、m_A−は33であり、m_A+は3である。
本原理によれば、最確モードのセットの構築は、ピクチャの右側に位置するブロックに対してのみ修正される。
図23(b)に示されるように、現在のブロックに対する新しい近隣のブロックは、現在のブロックの右側のブロックCであると決定される(すなわち、投影関数によれば、近隣のブロックは、現在のブロックが属する現在のCTUと同じ行の最初のCTUのブロックである)。正距円筒投影の連続性のため、行に沿った最初及び最後のCTUが空間的な近隣のブロックである。
次いで、現在のブロックの上側及び左側のブロックに加えて、右側の近隣のブロックもMPMのリストを決定するために使用される。エンコーダ/デコーダは、行の最初のCTUのイントラコード化済みの(左側の)境界のブロックに対するイントラ予測モードを保存し、最後のCTUの(右側の)境界のブロックをコード化するためにそれらを使用する。1つのCTUの境界ブロックに対する情報しか保存する必要がないため、メモリ要件はかなり低い。MPMのセットは、ここでは、現在のブロックに対して、図23(b)に示されるように、3つの近隣のブロック(A、B、C)で使用される予測モードに基づく。MPMのセットは、以下の通り構築される。
m_A及びm_Bは等しくないが、Cのイントラ予測モード(m_Cと示される)がm_A又はm_Bのいずれかと等しければ、規則HEVC_1を使用してセットが構築される。しかし、m_Cがm_Aともm_Bとも等しくなければ(すなわち、m_Cがm_Aともm_Bとも異なる)、MPM[0]=m_Aであり、MPM[1]=m_Bであり、MPM[2]=m_Cである。
m_A及びm_Bが等しく、m_Cがm_A及びm_Bの両方と等しいならば、規則HEVC_2を使用してセットが構築される。
m_A及びm_Bは等しいが、m_Cがm_Aともm_Bとも等しくなければ、規則HEVC_1を使用してセットが構築され、Bは、Cと置き換えられる。
クロマ予測の場合、クロマの予測モードは近隣のブロックのものに基づいて導出されないため、HEVCクロマ予測は、現在のブロックに対して不変のままであり得る。
現在のブロックに対するイントラ予測モードをコード化するためのプロセスの残りは、HEVCで定義されるものと同じままである。現在のブロックのイントラ予測モードがMPMセットに属していれば、フラグprev_intra_luma_pred_flagが設定され、mpm_idxと呼ばれる別のフラグがMPMセットからの候補を信号伝達する。フラグprev_intra_luma_pred_flagが設定されなければ、フラグrem_intra_luma_pred_modeが残りの32の予測モードからの特定のモードを信号伝達する。
現在のブロックがイントラコード化される際は、予測ブロックは、現在のブロックに対して選択されたイントラ予測モードに従ってイントラ予測を実行することによって演算される。そのようなプロセスは、当業者にはよく知られており、さらに論じることはしない。
別の変形形態によれば、開示される原理は、現在のブロックがインター予測される際に現在のブロックに対する動きベクトルをコード化するための動きベクトル予測因子を導出する際に実行される。現在のブロックがインター予測される際、その動きベクトルは、利用可能な予測方向に応じて、参照ピクチャリストI0又はI1に存在する参照ピクチャを使用して推定される。予測ブロックは、推定された動きベクトルを使用して現在のブロックを動き補償することによって演算される。次いで、現在のブロックの動きベクトルがコード化され、ビットストリームにされる。
HEVCは、インター予測を有するCUの動きベクトルを符号化する前に高度な動きベクトル予測(AMVP)を使用する。現在の動きベクトルに対する予測として単一の動きベクトルが近隣の動きベクトルから構築されるH.264とは異なり、HEVCでは、2つの動きベクトルの集合は、図24(a)に示されるような5つの空間的な近隣のブロックからの動きベクトル及び同一場所に位置する時間的な動きベクトルを使用して得られる。2つの候補動きベクトルA、Bは、次の通り選択される。候補動きベクトルAは、空間的な近隣のブロックA0、A1の動きベクトルに基づいて構築され、候補ベクトルBは、空間的な近隣のブロックB0、B1、B2の動きベクトルに基づいて構築され、それらのブロックは候補ブロックとも呼ばれる。それは、2パスのプロセスである。第1のパスでは、候補ブロックのいずれかが現在のブロックの参照インデックスと等しい参照インデックスを有するかどうかがチェックされる。A0、A1は、順次チェックされる。第1の動きベクトルが候補Aとされる。A0、A1からの両方の参照インデックスが現在のブロックの参照インデックスとは異なる参照ピクチャを指し示している場合は、関連動きベクトルをそのまま使用することはできない。従って、第2のパスでは、現在の参照ピクチャ(すなわち、現在のブロックの参照ピクチャ)及び候補参照ピクチャ(すなわち、候補ブロックの参照ピクチャ)(A0次いでA1の順に順番に検索される)が両方ともショートタームかどうかが最初にチェックされる。チェックが検証された場合は(すなわち、現在の参照ピクチャ及び候補参照ピクチャが両方ともショートタームである場合)、対応する候補ブロックの動きベクトルがスケーリングされ、候補動きベクトルAとして使用される。スケーリング因子は、候補参照ピクチャと現在のピクチャとの間の時間的距離に依存し、また、現在の参照ピクチャと現在のピクチャとの間の時間的距離にも依存する。結果的に、A0が現在のブロックの参照インデックスと等しい参照インデックスを有する場合は、第1のパスにおいてA1をチェックする必要はない。A0の動きベクトルが候補Aとされる。A0が現在のブロックの参照インデックスと異なる参照インデックスを有する場合は、A1が現在のブロックの参照インデックスと等しい参照インデックスを有するかどうかをチェックする。A1が現在のブロックの参照インデックスと等しい参照インデックスを有する場合は、A1の動きベクトルが候補Aとされ、そうでなければ、第2のパスが適用される。
候補動きベクトルBの場合、候補ブロックB0、B1、B2は、第1のパスにおいて、A0、A1のように順番に検索される。現在のブロックと同じ参照インデックスを有する第1の候補ブロックは、動きベクトルBとして使用される。A0、A1が利用可能ではない又はイントラ予測される場合は、候補AはBに等しく設定される。この場合は、第2のパスにおいて、現在のブロックと同じ参照インデックスを有する第2の候補ブロックが検索され、見つかれば、その動きベクトルは、候補Bとして使用される。そうでなければ、現在の参照ピクチャ及び候補参照ピクチャが両方ともショートタームピクチャである場合は、スケーリングされた動きベクトルが計算され、候補Bとして使用される。第1のパスが現在のブロックと同じ参照インデックスを有する候補を見つけられなかった場合は、A0、A1が利用可能ではない又はイントラ予測される場合は、第2のパスが実行される。この場合は、現在の参照ピクチャ及び候補参照ピクチャが両方ともショートタームピクチャである場合は、スケーリングされた動きベクトルが計算され、候補Bとして使用される。従って、第2のパスは、ブロックA0、A1がいかなる動き情報も含まない時にのみ実行される。時間的な候補は、2つの空間的な候補が利用可能ではない時又はそれらが同一である場合にのみ考慮される。
2つの動きベクトルのうち1つは、現在の動きベクトルを予測するための候補動きベクトルとして選択される。選択された動きベクトルは、list_0及びlist_1参照ピクチャに相当するフラグmvp_I0_flag及びmvp_I1_flagを使用して示される。
この実施形態によれば、図24(b)に示されるように、2つの候補動きベクトルを選択する場合、右側の境界に位置する現在のブロックに対して、7つの近隣のブロックの動きベクトルが考慮される。
そのような現在のブロックに対し、従来のHEVC方法が使用される場合は、近隣のブロックB0は利用可能ではない。
本明細書で開示される原理によれば、ブロックB0、C0、C1は、フレームの左側の境界の同じ行の最初のCTUの一部である。これらのブロックは、既に符号化済みであり、それらの動きベクトル情報は、右側の境界の現在のブロックが符号化されると利用可能である。従って、それらの動きベクトル情報は、候補動きベクトルの集合を改善するために使用することができる。
この変形形態によれば、候補Aに対し、ブロックA0、A1、C0、C1の動きベクトルは、その順番で考慮される。
アルゴリズムは、4つの候補が考慮されることを除いて、HEVCと同じままである。
第1のパスでは、A0、A1、C0、C1が順次チェックされる。現在のブロックの参照インデックスと等しい参照インデックスを有する4つの候補ブロックのうちの第1の候補ブロックが候補Aとされる。4つの候補ブロックのいずれも同じ参照インデックスを有さない場合は、第2のパスにおいて、現在の参照ピクチャ及び候補参照ピクチャ(上記と同じ順番で取られる)が両方ともショートタームかどうかがチェックされる。チェックが検証された場合は、考慮される候補の動きベクトルがスケーリングされ、候補動きベクトルAとして使用される。スケーリング因子は、それらの参照ピクチャと現在のピクチャとの間の時間的距離に依存し、また、現在のブロックの参照ピクチャと現在のピクチャとの間の時間的距離にも依存する。スケーリングは、HEVCのように行われる。
候補Bに対し、アルゴリズムは、HEVC規格のものと同じままである。候補B0〜B2は、第1のパスにおいてA0、A1がチェックされる方法と同じ方法で順次チェックされる。しかし、第2のパスは、ブロックA0、A1がいかなる動き情報も含まない(すなわち、利用可能ではない又はイントラ予測される)時にのみ実行される。
1ビット構文要素mvp_I0_flag及びmvp_I1_flag符号化は、余分な情報をコード化する必要がないため、HEVCのものと同じままである。この実施形態によれば、予測因子のセットを増加するための予測因子の数及びセットの構築は修正されるが、セットの予測因子の数は、同じままであり、従って、余分な情報をコード化する必要はない。
別の変形形態によれば、2Dピクチャの境界の現在のブロックに対する動きベクトルを推定する際、動き推定モジュールは、動きが推定される2D参照ピクチャの左右の境界における連続性から利益を得ることができる。従来のブロックベースの動き推定技法では、検索範囲は、動きベクトルが2D参照ピクチャの外側に位置する利用不可能な画素を指し示さないように切り捨てられる。検索範囲は、動きベクトルが検索される範囲である。
この変形形態によれば、完全な検索範囲は、ここでは、2Dピクチャの境界に位置する現在のブロックに対する動きを推定する際に考慮することができる。2D参照ピクチャの境界は、反対側の境界からの画素を使用することによって対称的に拡張することができる。その結果、推定された動きベクトルは、現在のブロックから参照ピクチャの外側の画素まで指し示し得る。そのような参照ピクチャの外側の位置は、2D参照ピクチャの対称的に拡張されたブロックと一致する。デコーダ側では、デコーダは、そのような動きベクトルに対する参照ピクチャの対称的な拡張を実行するだけでよい。
別の変形形態によれば、開示される原理は、2Dピクチャの右側の境界に位置する現在のブロックをコード化するためのインター予測マージモードにおける動き情報を導出する際に実行される。AMVPに加えて、HEVCもまた、動き情報の符号化を低減するために予測ブロックマージを使用する。その目的のため、HEVCエンコーダは、同じ5つの空間的な近隣のブロック(24(a)に示されるような)及び潜在的に1つの時間的な近隣のブロックの動き情報を考慮することによって、インターコード化予定の現在のブロックに対するマージリストを作成する。選択された候補の動き情報(予測方向も、参照ピクチャのピクチャ参照リストI0、I1、ピクチャ参照リストの参照ピクチャの参照インデックス及び動きベクトルを参照する)は、他のサイド情報無しで現在のブロックを予測するために直接使用される。このマージモードでは、現在のブロックは、選択された候補からすべての動き情報を継承することによって予測される。従って、予測ブロックは、継承した動き情報を使用して現在のブロックを動き補償することによって演算される。
インター予測マージモードを信号伝達するため、エンコーダは、merge_flagと呼ばれるフラグを使用する。merge_flagが1であれば、構文要素merge_idxは、選択された候補を信号伝達する。マージリストの候補の最大数は、スライスヘッダで信号伝達されるcMaxと呼ばれるパラメータを使用して信号伝達される。マージリストは、5つの空間的な近隣のブロックから導出される最大で4つのマージ候補、1つの時間的な候補並びに追加のマージ候補(組み合わされた双予測候補及びゼロ動きベクトル候補を含む)を内包し得る。
この実施形態によれば、右側の境界のCUに位置する現在のブロックに対するマージリストの空間的な動き候補の数は、5まで増加される。追加の動き候補は、B0、C0、C1から導出される。この追加の動き候補は、HEVCによって導出される際に、他の4つの候補と共に含まれる。結果的に、境界のCUに対し、候補の数は、cMax+1とされる。
図18に戻ると、現在のブロックBLKに対してコード化モードが選択された時点で、モード選択ユニットは、デコーダで同じブロック予測を実行するために、コード化してビットストリームにする予定の予測ブロックPRED及び対応する構文要素を伝達する。
次いで、残差ブロックRESは、オリジナルのブロックBLKから予測ブロックPREDを減ずることによって得られる。
次いで、残差ブロックRESは、変換処理モジュールによって変換され、変換処理モジュールは、変換済みの係数の変換ブロックTCOEFを伝達する。次いで、伝達された変換ブロックTCOEFの各々は、量子化モジュールによって量子化され、量子化モジュールは、量子化済みの残差変換係数の量子化済みの変換ブロックQCOEFを伝達する。
次いで、構文要素及びブロックQCOEFの量子化済みの残差変換係数は、ビットストリームSTRのコード化済みのビデオデータを伝達するために、エントロピー符号化モジュールに入力される。
別の変形形態によれば、開示される原理は、エントロピー符号化モジュールによって使用することができる。HEVCは、コンテキスト算術エントロピー符号化(CABACとしても知られている)を使用する。エントロピー符号化モジュールによって実行される算術コード化は、ビットのストリーム全体を符号化し、ビットのストリーム全体は、区間(0,1)によって表される、それらの同時確率によって、符号化するため(構文要素、量子化済みの変換係数など)の適切なシンボルの二進化の後に得られる。エントロピー符号化モジュールは、異なる構文要素に対するコンテキストモデルを通じてシンボルの確率をモデル化し、すべてのビットを符号化した後にモデル状態を更新することによって、算術コード化を実行する。コンテキストモデルは、近隣のブロック符号化情報に基づいて確率を初期化する。
HEVCでは、CU_split_flag及びCU_skip_flagは、コード化単位がさらに分けられるかどうか及びコード化単位が省略されるかどうかをそれぞれ示すため(すなわち、他の情報が現在のコード化単位に対してコード化されるかどうかを示すため)、現在のコード化単位に対してコード化される。これらのフラグをコード化するためのエントロピー符号化モジュールは、これらのフラグを符号化するために使用されるコンテキストモデルを選択するために以前にコード化された近隣のCUからの情報を使用する。適用可能な初期化タイプの各々に対する3つのコンテキストモデルのセットが利用可能である。図25(a)に示されるように、現在のブロックに対するCU_split_flag及びCU_skip_flagに対するコンテキストモデルは、近隣のブロックA、Bに基づいて決定される。CU_split_flagコンテキストは、近隣のブロックが利用可能であり、そのコード化木深度が現在のブロックより大きい場合に、1つインクリメントする。同様に、CU_skip_flagコンテキストのコンテキストは、近隣のブロックが利用可能であり、CU_skip_flagが設定されている場合に、1つインクリメントする。
本原理によれば、2Dピクチャの右側の境界の現在のブロックに対し、既に符号化済みの左側の境界のCTUの一部である近隣のブロックからの情報も考慮される。これは、図25(b)に示されている。2Dピクチャの右側の境界に位置する現在のブロックに対し、CU_split_flag及びCU_skip_flagの両方に対する4つのコンテキストモデルが使用される。HEVCのように、CU_split_flagコンテキストは、近隣の(上側、左側、右側の)ブロックが利用可能であり、そのコード化木深度が現在のブロックより大きい場合に、1つインクリメントする。同様に、CU_skip_flagのコンテキストは、近隣の(上側、左側、右側の)ブロックが利用可能であり、CU_skip_flagが設定されている場合に、1つインクリメントする。
図18に戻ると、量子化済みの変換ブロックQCOEFの量子化済みの残差変換係数は、逆量子化モジュールによって処理され、逆量子化モジュールは、非量子化変換係数のブロックTCOEF’を伝達する。ブロックTCOEF’は、残差予測のブロックRES’を再構成するために逆変換モジュールに渡される。
次いで、ブロックBLKの再構成バージョンRECは、予測ブロックPREDを再構成残差予測ブロックRES’に加えることによって得られる。再構成ブロックRECは、ピクチャIの復号バージョンI’を再構成するためのピクチャ再構成モジュールによる後の使用のためにメモリに格納される。ピクチャIのすべてのブロックBLKがコード化された時点で、ピクチャ再構成モジュールは、再構成ブロックRECからピクチャIの復号バージョンI’の再構成を実行する。任意選択により、再構成ブロック間のブロッキングアーチファクトを除去するために、再構成ピクチャI’にデブロッキングフィルタリングを適用することができる。
別の変形形態によれば、右側の境界のCTUに対してサンプル適応オフセットフィルタリングを実行するSAOモジュールは、開示される原理を使用することができる。SAOは、エンコーダによって送信されたルックアップテーブルの値に基づいて、デブロッキングフィルタを適用した後にオフセット値を各サンプルに条件付きで加えることによって、復号済みのサンプルを修正するプロセスである。SAOは、CTUごとに選択されたフィルタリングタイプに基づいて、領域ごとに実行される。
HEVCでは、CTUは、左側のCTU若しくは上側のCTU(図26(a))のSAOパラメータを再利用することによって又は新しいSAOパラメータを送信することによって、SAOパラメータを信号伝達するための3つのオプションを使用することができる。sao_merge_left_flag及びsao_merge_top_flagと呼ばれる2つのフラグは、左側のCTU SAO情報が使用されるか又は上側のCTU SAO情報が使用されるかに応じて設定される。
この実施形態によれば、sao_merge_right_flagと呼ばれる追加のフラグは、フレームの右側の境界のCTUに対して追加される。同じ行の左側の境界のCTUは、右側の近隣のブロックとして使用される。現在のCTUが右側の近隣のブロックのSAO情報を使用すれば、sao_merge_right_flagが設定される。
HEVCは、sao_merge_left_flag及びsao_merge_top_flagを符号化するための1つのコンテキストモデルを使用する。この変形形態では、右側の境界のCTUに対して、sao_merge_right_flagを符号化するために、同じコンテキストが使用される。
図18に戻ると、再構成ピクチャI’がデブロックされ、SAOフィルタリングが行われた時点で、結果として得られた再構成ピクチャは、コード化予定のピクチャのセットの後続のピクチャを符号化するための参照ピクチャとして、後の使用のために参照ピクチャメモリに追加される。
次いで、上記で説明される符号化プロセスから生成されたビットストリームは、ビットストリームSTRから復号される全方向ビデオの没入型レンダリングのために、データネットワーク上で送信されるか又はメモリ上に格納される。
図19は、本開示の実施形態による、投影関数を使用して全方向ビデオの投影を表す2Dピクチャの現在のブロックを復号するための例示的な方法のためのブロック図を示す。そのような方法は、例えば、本明細書で開示されるものなどの没入型システムのデコーダ(700)によって実行することができる。
ブロック1900では、上記投影関数に関連する情報のアイテムが全方向ビデオを表すビットストリームから復号される。或いは、デコーダは、全方向ビデオを2Dピクチャに投影するために使用された投影関数を知っている場合がある。例えば、そのような情報は、デコーダのメモリに格納することができる。
ブロック1901では、上記2Dピクチャの現在のブロックに対し、図17からのブロック1700で開示されるような投影関数に従って、上記2Dピクチャの少なくとも1つの近隣のブロックが決定される。
ブロック1902では、少なくとも決定された近隣のブロックを使用して、現在のブロックが復号される。現在のブロックを復号する間、決定された近隣のブロックは、デコーダのすべての復号モジュールによって又はそれらのいくつかによって使用することができる。例えば、そのような復号モジュールは、
− 上記現在のブロックに対するイントラ予測モードを復号するための最確モードリストを決定するためのモジュール、
− 上記現在のブロックに対する動きベクトルを再構成するための動きベクトル予測因子を導出するためのモジュール、
− 上記現在のブロックを再構成するためのインター予測マージモードにおける動き情報を導出するためのモジュール、
− 上記現在のブロックをコンテキスト算術エントロピー復号するためのモジュール、
− 上記現在のブロックの少なくとも1つのサンプルをフィルタリングするためのサンプル適応オフセットのためのモジュール
を含む群に含めることができる。
図19で開示される方法の実施形態のいずれか1つは、本開示の実施形態に従って、以下で開示されるもの及び図20で開示されるものなど、全方向ビデオを表すビットストリームを復号するための例示的なデコーダにおいて実装することができる。
図20は、本原理を使用して符号化されたビットストリームを復号するように適応させた例示的なビデオデコーダ方法を示す概略ブロック図である。上記2Dピクチャへの全方向ビデオの投影を表すコード化済みのピクチャを表すビットストリームSTRは、上記2Dピクチャの少なくとも1つの現在のブロックBLKを表すコード化済みのデータを含む。そのような現在のブロックは、本開示の実施形態に従ってコード化されているものであり得る。
また、実施形態によれば、ビットストリームSTRは、投影関数に関連する情報のアイテムを表すコード化済みのデータも含み得る。
本明細書で開示されるビデオデコーダ700は、HEVCビデオコード化規格に従ってピクチャの復号を実行する。しかし、本原理は、いかなるビデオコード化規格にも容易に適用することができる。
ビデオデコーダ700は、ピクチャごとにコード化済みのピクチャをビットストリームから復号することによって及びブロックごとに各ピクチャを復号することによって、全方向ビデオの再構成を実行する。使用されるビデオ圧縮スキームによれば、ピクチャごとに又はブロックごとにビットストリームを復号するために、並列処理を使用することができる。従って、ピクチャI’は、以下の通り、圧縮ビットストリームから再構成される。
コード化済みのデータは、ビデオデコーダ700のビデオ復号モジュールに渡される。図20に示されるように、コード化済みのデータは、エントロピー復号モジュールに渡され、エントロピー復号モジュールは、エントロピー復号を実行し、量子化済みの変換係数のブロックQCOEFを逆量子化モジュールに伝達し、構文要素を予測モジュールに伝達する。本原理の実施形態によれば、エントロピー復号モジュールは、現在のブロックに対するCU_split_flag及び/又はCU_skip_flagの算術バイナリ復号を実行するためのコンテキストモデルを導出するために、図19からのブロック1901及び1902で開示されるような処理を実行することができる。
エントロピー復号の後に、量子化済みの変換係数のブロックQCOEFは、非量子化変換係数のブロックTCOEF’を伝達するために、逆量子化モジュールによって逆量子化される。
非量子化変換係数のブロックTCOEF’は、逆変換モジュールによって逆変換され、逆変換モジュールは、残差予測ブロックRES’を伝達する。
予測モジュールは、構文要素に従って、現在のブロックがインター予測されている場合は動き補償モジュールを使用して、又は、現在のブロックが空間的に予測されている場合はイントラ予測モジュールを使用して、予測ブロックPREDを構築する。現在のブロックが2Dピクチャの境界のブロックである際は、現在のブロックに対する予測ブロックPREDを構築する場合、予測モジュールは、図19からのブロック1901及び1902で開示されるような処理を実行することができ、従って、
− 残差動きベクトルが現在のブロックに対して明示的にコード化されてビットストリームにされた際に、現在のブロックに対する動きベクトルを再構成するための動きベクトル予測因子を導出するため、
− 現在のブロックがインター予測マージモードを使用してコード化されている際に、現在のブロックに対する動き情報を導出するため、又は
− 現在のブロックがイントラ予測モードを使用してコード化されている際に、最確モードリストを決定するため、
本原理に従って現在のブロックに対する近隣のブロックを決定することができる。
次いで、再構成ブロックRECは、予測ブロックPREDを再構成残差予測ブロックRES’に追加することによって得られる。再構成ブロックRECは、復号済みのピクチャI’を再構成するためのピクチャ再構成モジュールによる後の使用のためにメモリに格納される。ピクチャIのすべてのブロックが復号された時点で、ピクチャ再構成モジュールは、再構成ブロックRECから復号済みのピクチャI’の再構成を実行する。任意選択により、再構成ブロック間のブロッキングアーチファクトを除去するために、再構成ピクチャI’にデブロッキングフィルタリングを適用することができる。
SAOモジュールのエンコーダにおいて、本開示の実施形態に従って現在のブロックの近隣のブロックを導出するためのプロセスが適用されている場合は、SAOフィルタリングは、エンコーダと同じ方法でデコーダでも適用される。従って、2Dピクチャの境界の現在のブロックに対し、SAOモジュールは、図19からのブロック1901及び1902で開示されるような処理を実行することができ、従って、本原理に従って現在のブロックに対する近隣のブロックを決定することができる。
次いで、再構成ピクチャI’は、復号予定のピクチャのセットの後続のピクチャを復号するための参照ピクチャとして、後の使用のために参照ピクチャメモリに格納される。
次いで、再構成ピクチャI’は、上記で開示されるように、メモリに格納されるか又はビデオデコーダ装置700によって没入型レンダリングデバイス(10)に出力される。また、ビデオデコーダ装置700は、没入型レンダリングデバイス(80)に含めることもできる。その場合は、再構成ピクチャI’は、デコーダ装置によって没入型レンダリングデバイス(80)の表示モジュールに出力される。
実装される没入型レンダリングシステムによれば、開示されるデコーダ装置は、例えば、コンピュータ(40)、ゲームコンソール(60)、スマートフォン(701)、没入型レンダリングデバイス(80)又はイマーシブウォール(6000)など、本明細書で開示されるものなどの没入型レンダリングシステムの処理デバイスのいずれか1つに含めることができる。
装置デコーダ700は、ハードウェア、ソフトウェア又はハードウェアとソフトウェアの組合せとして実装することができる。
図21は、実施形態による、全方向ビデオをコード化する装置(400)の簡略化された構造を示す。そのような装置は、本明細書において上記で図17及び18を参照して説明されている本原理による全方向ビデオをコード化する方法を実装するように構成されている。
実施形態によれば、エンコーダ装置は、処理ユニットPROCを含み、処理ユニットPROCは、例えば、プロセッサが装備され、メモリMEMに格納されたコンピュータプログラムPGによって駆動され、本原理による全方向ビデオをコード化する方法を実装する。
初期化の際、コンピュータプログラムPGのコード命令は、例えば、RAM(図示せず)にロードされ、次いで、処理ユニットPROCのプロセッサによって実行される。処理ユニットPROCのプロセッサは、コンピュータプログラムPGの命令に従って、本明細書において上記で説明されている全方向ビデオをコード化する方法のステップを実装する。
エンコーダ装置は、符号化済みのビットストリームSTRをデータネットワークに送信するための通信ユニットCOMOUTを含む。
また、エンコーダ装置は、コード化予定のピクチャ又は符号化予定の全方向ビデオを受信するためのインタフェースCOMINも含む。
図22は、実施形態による、全方向ビデオを表すビットストリームを復号する装置(700)の簡略化された構造を示す。そのような装置は、本明細書において上記で図19及び20を参照して説明されている本原理による全方向ビデオを表すビットストリームを復号する方法を実装するように構成されている。
実施形態によれば、デコーダ装置は、処理ユニットPROCを含み、処理ユニットPROCは、例えば、プロセッサが装備され、メモリMEMに格納されたコンピュータプログラムPGによって駆動され、本原理による全方向ビデオを表すビットストリームを復号する方法を実装する。
初期化の際、コンピュータプログラムPGのコード命令は、例えば、RAM(図示せず)にロードされ、次いで、処理ユニットPROCのプロセッサによって実行される。処理ユニットPROCのプロセッサは、コンピュータプログラムPGの命令に従って、本明細書において上記で説明されている全方向ビデオを表すビットストリームを復号する方法のステップを実装する。
装置は、ビデオデータの再構成ピクチャをレンダリングデバイスに送信するための通信ユニットCOMOUTを含み得る。
また、装置は、データネットワーク、ゲートウェイ又はセットトップボックスから復号予定の全方向ビデオを表すビットストリームSTRを受信するためのインタフェースCOMINも含む。

Claims (22)

  1. 広視野ビデオをコード化してビットストリームにする方法であって、前記広視野ビデオの少なくとも1つのピクチャが、表面として表され、前記表面が、投影関数を使用して少なくとも1つの2Dピクチャに投影され、前記方法が、現在のイントラ予測モードmに従ってコード化される前記少なくとも1つの2Dピクチャの少なくとも1つの現在のブロックに対して、
    − 前記投影関数から、前記2Dピクチャの前記現在のブロックに空間的に隣接していない、第1の近隣のブロックCと呼ばれる前記2Dピクチャの少なくとも1つの近隣のブロックを決定することであって、前記少なくとも1つの近隣のブロックが、前記表面上の前記現在のブロックに空間的に隣接する、決定することと、
    − 前記第1の近隣のブロックCのイントラ予測モードm_Cに基づいて、さらに、第2の近隣のブロックAのイントラ予測モードm_A及び第3の近隣のブロックBのイントラ予測モードm_Bに少なくとも基づいて、最確モードのリストを決定することであって、前記第2及び第3の近隣のブロックが、前記2Dピクチャの前記現在のブロックに空間的に隣接する、決定することと、
    − 前記最確モードのリストから前記現在のイントラ予測モードを符号化することと
    を含む、方法。
  2. 前記最確モードのリストを決定することが、
    − m_A及びm_Bが異なれば、以下の通り:
    m_Cがm_A又はm_Bのいずれかと等しければ、前記最確モードのリストが、m_A及びm_B並びに追加のイントラ予測モードを含み、前記追加のイントラ予測モードが、m_Aもm_Bも平面モードではない場合は、平面モードと等しく、m_A又はm_Bが平面モードであるが、m_Aもm_BもDCモードではない場合は、DCモードと等しく、そうでなければ、垂直イントラ予測モードと等しいように、
    そうでなければ、前記最確モードのリストが、m_A、m_B及びm_Cを含むように前記リストを決定すること、
    − m_A及びm_Bが等しければ、以下の通り:
    m_Cがm_Aと等しければ、前記最確モードのリストが、m_Aが平面及びDCモードと異なる場合は、m_A及びm_Aの2つの隣接する角度モードを含むか、そうでなければ、前記最確モードのリストが、平面モード、DCモード及び垂直モードを含むように、
    そうでなければ、前記最確モードのリストが、m_A及びm_C並びに追加のイントラ予測モードを含み、前記追加のイントラ予測モードが、m_Aもm_Cも平面モードではない場合は、平面モードと等しく、m_A又はm_Cが平面モードであるが、m_Aもm_CもDCモードではない場合は、DCモードと等しく、そうでなければ、垂直イントラ予測モードと等しいように前記リストを決定すること
    を含む、請求項1に記載の方法。
  3. 前記現在のイントラ予測モードを符号化することが、
    − 前記現在のイントラ予測モードが前記最確モードのリストのうちの1つのモードと等しいかどうかを示すフラグを符号化することと、
    − 前記現在のイントラ予測モードが前記最確モードのリストのうちの1つのモードと等しい場合は、前記現在のイントラ予測モードと等しい前記リストの前記最確モードを識別するインデックスを符号化し、そうでなければ、前記現在のイントラ予測モードを識別するインデックスを符号化することと
    を含む、請求項1又は2に記載の方法。
  4. 前記投影関数に関連する情報のアイテムをコード化することをさらに含む、請求項1〜3のいずれか一項に記載の方法。
  5. 前記3D表面が球体であり、前記投影関数が正距円筒投影である、請求項1〜4のいずれか一項に記載の方法。
  6. 広視野ビデオをコード化してビットストリームにする装置であって、前記広視野ビデオの少なくとも1つのピクチャが、表面として表され、前記表面が、投影関数を使用して少なくとも1つの2Dピクチャに投影され、前記装置が、
    − 現在のイントラ予測モードmに従ってコード化される前記少なくとも1つの2Dピクチャの少なくとも1つの現在のブロックに対して、前記投影関数から、前記2Dピクチャの前記現在のブロックに空間的に隣接していない、第1の近隣のブロックCと呼ばれる前記2Dピクチャの少なくとも1つの近隣のブロックを決定する手段であって、前記少なくとも1つの近隣のブロックが、前記表面上の前記現在のブロックに空間的に隣接する、手段と、
    − 前記第1の近隣のブロックCのイントラ予測モードm_Cに基づいて、さらに、第2の近隣のブロックAのイントラ予測モードm_A及び第3の近隣のブロックBのイントラ予測モードm_Bに少なくとも基づいて、最確モードのリストを決定する手段であって、前記第2及び第3の近隣のブロックが、前記2Dピクチャの前記現在のブロックに空間的に隣接する、手段と、
    − 前記最確モードのリストから前記現在のイントラ予測モードを符号化する手段と
    を含む、装置。
  7. 前記最確モードのリストを決定する手段が、以下の通り:
    − m_A及びm_Bが異なれば、
    m_Cがm_A又はm_Bのいずれかと等しければ、前記最確モードのリストが、m_A及びm_B並びに追加のイントラ予測モードを含み、前記追加のイントラ予測モードが、m_Aもm_Bも平面モードではない場合は、平面モードと等しく、m_A又はm_Bが平面モードであるが、m_Aもm_BもDCモードではない場合は、DCモードと等しく、そうでなければ、垂直イントラ予測モードと等しいように、
    そうでなければ、前記最確モードのリストが、m_A、m_B及びm_Cを含むように、
    − m_A及びm_Bが等しければ、
    m_Cがm_Aと等しければ、前記最確モードのリストが、m_Aが平面及びDCモードと異なる場合は、m_A及びm_Aの2つの隣接する角度モードを含むか、そうでなければ、前記最確モードのリストが、平面モード、DCモード及び垂直モードを含むように、
    そうでなければ、前記最確モードのリストが、m_A及びm_C並びに追加のイントラ予測モードを含み、前記追加のイントラ予測モードが、m_Aもm_Cも平面モードではない場合は、平面モードと等しく、m_A又はm_Cが平面モードであるが、m_Aもm_CもDCモードではない場合は、DCモードと等しく、そうでなければ、垂直イントラ予測モードと等しいように
    前記最確モードのリストを決定するように構成されている、請求項6に記載の装置。
  8. 前記現在のイントラ予測モードを符号化する前記手段が、
    − 前記現在のイントラ予測モードが前記最確モードのリストのうちの1つのモードと等しいかどうかを示すフラグを符号化することと、
    − 前記現在のイントラ予測モードが前記最確モードのリストのうちの1つのモードと等しい場合は、前記現在のイントラ予測モードと等しい前記リストの前記最確モードを識別するインデックスを符号化し、そうでなければ、前記現在のイントラ予測モードを識別するインデックスを符号化することと
    を行うように構成されている、請求項6又は7に記載の装置。
  9. 前記符号化する手段が、前記投影関数に関連する情報のアイテムを符号化するようにさらに構成されている、請求項6〜8のいずれか一項に記載の装置。
  10. 前記3D表面が球体であり、前記投影関数が正距円筒投影である、請求項6〜9のいずれか一項に記載の装置。
  11. 広視野ビデオを表すビットストリームを復号する方法であって、前記広視野ビデオの少なくとも1つのピクチャが、表面として表され、前記表面が、投影関数を使用して少なくとも1つの2Dピクチャに投影され、前記方法が、現在のイントラ予測モードmに従ってコード化された前記少なくとも1つの2Dピクチャの少なくとも1つの現在のブロックに対して、
    − 前記投影関数から、前記2Dピクチャの前記現在のブロックに空間的に隣接していない、第1の近隣のブロックCと呼ばれる前記2Dピクチャの少なくとも1つの近隣のブロックを決定することであって、前記少なくとも1つの近隣のブロックが、前記表面上の前記現在のブロックに空間的に隣接する、決定することと、
    − 前記第1の近隣のブロックCのイントラ予測モードm_Cに基づいて、さらに、第2の近隣のブロックAのイントラ予測モードm_A及び第3の近隣のブロックBのイントラ予測モードm_Bに少なくとも基づいて、最確モードのリストを決定することであって、前記第2及び第3の近隣のブロックが、前記2Dピクチャの前記現在のブロックに空間的に隣接する、決定することと、
    − 前記最確モードのリストから前記現在のイントラ予測モードを復号することと
    を含む、方法。
  12. 前記最確モードのリストを決定することが、
    − m_A及びm_Bが異なれば、以下の通り:
    m_Cがm_A又はm_Bのいずれかと等しければ、前記最確モードのリストが、m_A及びm_B並びに追加のイントラ予測モードを含み、前記追加のイントラ予測モードが、m_Aもm_Bも平面モードではない場合は、平面モードと等しく、m_A又はm_Bが平面モードであるが、m_Aもm_BもDCモードではない場合は、DCモードと等しく、そうでなければ、垂直イントラ予測モードと等しいように、
    そうでなければ、前記最確モードのリストが、m_A、m_B及びm_Cを含むように前記リストを決定すること、
    − m_A及びm_Bが等しければ、以下の通り:
    m_Cがm_Aと等しければ、前記最確モードのリストが、m_Aが平面及びDCモードと異なる場合は、m_A及びm_Aの2つの隣接する角度モードを含むか、そうでなければ、前記最確モードのリストが、平面モード、DCモード及び垂直モードを含むように、
    そうでなければ、前記最確モードのリストが、m_A及びm_C並びに追加のイントラ予測モードを含み、前記追加のイントラ予測モードが、m_Aもm_Cも平面モードではない場合は、平面モードと等しく、m_A又はm_Cが平面モードであるが、m_Aもm_CもDCモードではない場合は、DCモードと等しく、そうでなければ、垂直イントラ予測モードと等しいように前記リストを決定すること
    を含む、請求項11に記載の方法。
  13. 前記現在のイントラ予測モードを復号することが、
    − 前記現在のイントラ予測モードが前記最確モードのリストのうちの1つのモードと等しいかどうかを示すフラグを復号することと、
    − 前記現在のイントラ予測モードが前記最確モードのリストのうちの1つのモードと等しい場合は、前記現在のイントラ予測モードと等しい前記リストの前記最確モードを識別するインデックスを復号し、そうでなければ、前記現在のイントラ予測モードを識別するインデックスを復号することと
    を含む、請求項11又は12に記載の方法。
  14. 前記投影関数に関連する情報のアイテムを復号することをさらに含む、請求項11〜13のいずれか一項に記載の方法。
  15. 前記3D表面が球体であり、前記投影関数が正距円筒投影である、請求項11〜14のいずれか一項に記載の方法。
  16. 広視野ビデオを表すビットストリームを復号する装置であって、前記広視野ビデオの少なくとも1つのピクチャが、表面として表され、前記表面が、投影関数を使用して少なくとも1つの2Dピクチャに投影され、前記装置が、
    − 現在のイントラ予測モードmに従ってコード化された前記少なくとも1つの2Dピクチャの少なくとも1つの現在のブロックに対して、前記投影関数から、前記2Dピクチャの前記現在のブロックに空間的に隣接していない、第1の近隣のブロックCと呼ばれる前記2Dピクチャの少なくとも1つの近隣のブロックを決定する手段であって、前記少なくとも1つの近隣のブロックが、前記表面上の前記現在のブロックに空間的に隣接する、手段と、
    − 前記第1の近隣のブロックCのイントラ予測モードm_Cに基づいて、さらに、第2の近隣のブロックAのイントラ予測モードm_A及び第3の近隣のブロックBのイントラ予測モードm_Bに少なくとも基づいて、最確モードのリストを決定する手段であって、前記第2及び第3の近隣のブロックが、前記2Dピクチャの前記現在のブロックに空間的に隣接する、手段と、
    − 前記最確モードのリストから前記現在のイントラ予測モードを復号する手段と
    を含む、装置。
  17. 最確モードのリストを決定する前記手段が、以下の通り:
    − m_A及びm_Bが異なれば、
    m_Cがm_A又はm_Bのいずれかと等しければ、前記最確モードのリストが、m_A及びm_B並びに追加のイントラ予測モードを含み、前記追加のイントラ予測モードが、m_Aもm_Bも平面モードではない場合は、平面モードと等しく、m_A又はm_Bが平面モードであるが、m_Aもm_BもDCモードではない場合は、DCモードと等しく、そうでなければ、垂直イントラ予測モードと等しいように、
    そうでなければ、前記最確モードのリストが、m_A、m_B及びm_Cを含むように、
    − m_A及びm_Bが等しければ、
    m_Cがm_Aと等しければ、前記最確モードのリストが、m_Aが平面及びDCモードと異なる場合は、m_A及びm_Aの2つの隣接する角度モードを含むか、そうでなければ、前記最確モードのリストが、平面モード、DCモード及び垂直モードを含むように、
    そうでなければ、前記最確モードのリストが、m_A及びm_C並びに追加のイントラ予測モードを含み、前記追加のイントラ予測モードが、m_Aもm_Cも平面モードではない場合は、平面モードと等しく、m_A又はm_Cが平面モードであるが、m_Aもm_CもDCモードではない場合は、DCモードと等しく、そうでなければ、垂直イントラ予測モードと等しいように
    前記最確モードのリストを決定するように構成されている、請求項16に記載の装置。
  18. 前記現在のイントラ予測モードを復号する前記手段が、
    − 前記現在のイントラ予測モードが前記最確モードのリストのうちの1つのモードと等しいかどうかを示すフラグを復号することと、
    − 前記現在のイントラ予測モードが前記最確モードのリストのうちの1つのモードと等しい場合は、前記現在のイントラ予測モードと等しい前記リストの前記最確モードを識別するインデックスを復号し、そうでなければ、前記現在のイントラ予測モードを識別するインデックスを復号することと
    を行うように構成されている、請求項17に記載の装置。
  19. 前記復号する手段が、前記投影関数に関連する情報のアイテムを復号するようにさらに構成されている、請求項16〜18のいずれか一項に記載の装置。
  20. 前記3D表面が球体であり、前記投影関数が正距円筒投影である、請求項16〜19のいずれか一項に記載の装置。
  21. 請求項16〜20のいずれか一項に記載の広視野ビデオを表すビットストリームを復号する装置を含む没入型レンダリングデバイス。
  22. 符号化してビットストリームにされた広視野ビデオの没入型レンダリングのシステムであって、
    − データネットワークから前記ビットストリームを受信するネットワークインタフェース(600)と、
    − 請求項16〜20のいずれか一項に記載の前記ビットストリームを復号する装置(700)と、
    − 没入型レンダリングデバイス(900)と
    を少なくとも含む、システム。
JP2019517061A 2016-09-30 2017-09-14 広視野ビデオを符号化及び復号する方法及び装置 Withdrawn JP2019534620A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP16306262.3A EP3301914A1 (en) 2016-09-30 2016-09-30 Method and apparatus for encoding and decoding a large field of view video
EP16306262.3 2016-09-30
PCT/EP2017/073101 WO2018059946A1 (en) 2016-09-30 2017-09-14 Method and apparatus for encoding and decoding a large field of view video

Publications (2)

Publication Number Publication Date
JP2019534620A true JP2019534620A (ja) 2019-11-28
JP2019534620A5 JP2019534620A5 (ja) 2020-10-15

Family

ID=57137998

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019517061A Withdrawn JP2019534620A (ja) 2016-09-30 2017-09-14 広視野ビデオを符号化及び復号する方法及び装置

Country Status (6)

Country Link
US (1) US20200029092A1 (ja)
EP (2) EP3301914A1 (ja)
JP (1) JP2019534620A (ja)
KR (1) KR20190052015A (ja)
CN (1) CN109792517A (ja)
WO (1) WO2018059946A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102531386B1 (ko) 2016-10-04 2023-05-12 주식회사 비원영상기술연구소 영상 데이터 부호화/복호화 방법 및 장치
US20190253624A1 (en) * 2017-07-17 2019-08-15 Ki Baek Kim Image data encoding/decoding method and apparatus
WO2018128247A1 (ko) * 2017-01-03 2018-07-12 엘지전자 주식회사 360도 비디오에 대한 영상 코딩 시스템에서 인트라 예측 방법 및 장치
CN110692249A (zh) * 2017-04-11 2020-01-14 Vid拓展公司 使用面部连续性的360度视频编码
EP3669330A4 (en) * 2017-08-15 2021-04-07 Nokia Technologies Oy ENCODING AND DECODING VOLUMETRIC VIDEO
EP3669333B1 (en) 2017-08-15 2024-05-01 Nokia Technologies Oy Sequential encoding and decoding of volymetric video
EP3685585A1 (en) 2017-09-20 2020-07-29 Vid Scale, Inc. Handling face discontinuities in 360-degree video coding
EP3514968B1 (en) 2018-01-18 2023-03-08 BlackBerry Limited Methods and devices for entropy coding point clouds
KR102618498B1 (ko) * 2018-03-08 2023-12-27 삼성전자주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
EP3780608A4 (en) 2018-04-02 2021-12-01 SZ DJI Technology Co., Ltd. IMAGE PROCESSING PROCESS AND IMAGE PROCESSING DEVICE
EP3937132A1 (en) 2018-04-09 2022-01-12 BlackBerry Limited Methods and devices for binary entropy coding of point clouds
DK3777180T3 (da) * 2018-04-11 2023-10-02 Interdigital Vc Holdings Inc Fremgangsmåde og apparat til kodning/afkodning af en punktsky, der repræsenterer et 3d-objekt
CN112567771A (zh) 2018-08-09 2021-03-26 华为技术有限公司 基于历史的帧内模式编解码方法和装置
TWI822863B (zh) 2018-09-27 2023-11-21 美商Vid衡器股份有限公司 360度視訊寫碼樣本導出
KR20210068537A (ko) * 2018-10-08 2021-06-09 후아웨이 테크놀러지 컴퍼니 리미티드 코딩 블록의 기하학적 분할의 인터 예측을 위한 장치 및 방법
CA3132582A1 (en) * 2019-03-07 2020-09-10 Digitalinsights Inc. Image encoding/decoding method and apparatus
WO2020182079A1 (en) * 2019-03-10 2020-09-17 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods using intra mode coding for intra prediction
JP7359936B2 (ja) * 2019-07-20 2023-10-11 北京字節跳動網絡技術有限公司 パレットモードの使用の指示の条件依存符号化
MX2022005905A (es) * 2019-11-15 2022-06-24 Hfi Innovation Inc Metodo y aparato para se?alizacion de compensacion de movimiento envolvente horizontal en la codificacion de video vr360.
US20230334719A1 (en) * 2020-10-30 2023-10-19 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100677142B1 (ko) * 2004-08-13 2007-02-02 경희대학교 산학협력단 파노라마 영상의 움직임 추정 및 보상
US9088796B2 (en) * 2011-11-07 2015-07-21 Sharp Kabushiki Kaisha Video decoder with enhanced CABAC decoding
US9918082B2 (en) * 2014-10-20 2018-03-13 Google Llc Continuous prediction domain
GB2534606A (en) * 2015-01-29 2016-08-03 Canon Kk Method and device for encoding or decoding an image comprising encoding of decoding information representing prediction modes

Also Published As

Publication number Publication date
EP3301914A1 (en) 2018-04-04
CN109792517A (zh) 2019-05-21
US20200029092A1 (en) 2020-01-23
EP3520397A1 (en) 2019-08-07
WO2018059946A1 (en) 2018-04-05
KR20190052015A (ko) 2019-05-15

Similar Documents

Publication Publication Date Title
JP2019534620A (ja) 広視野ビデオを符号化及び復号する方法及び装置
CN109804633B (zh) 利用自适应帧内预测的全向视频编码和解码的方法和装置
JP7043148B2 (ja) 適応型イントラ最確モードを用いた全方位映像符号化のための方法および装置
US20190313097A1 (en) Method and apparatus for coding/decoding a large field of view video
CN109845264B (zh) 用于编码和解码大视场视频的方法和装置
EP3301916A1 (en) Method and apparatus for omnidirectional video coding with adaptive intra most probable modes
KR20190055101A (ko) 전방향성 비디오를 인코딩하고 디코딩하기 위한 방법 및 장치
US11653014B2 (en) Method and apparatus for encoding and decoding an omnidirectional video
CN111448799A (zh) 全向视频切片段
EP3349460A1 (en) Method and apparatus for coding/decoding a picture of an omnidirectional video
EP3349462A1 (en) Method and apparatus for coding/decoding a picture of an omnidirectional video
EP3349463A1 (en) Method and apparatus for coding/decoding a picture of an omnidirectional video

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200904

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200904

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20210915