(57)【特許請求の範囲】
【請求項１】
コンピュータグラフィックスを使用して少なくとも１つの画像をレンダリングするためのデータ復号化方法であって、
前記コンピュータグラフィックスを生成するためのパラメータに基づく手続き型コンピュータグラフィックス生成方法の少なくとも１つのパラメータと、シンタックス要素とを有するビットストリームの部分を復号化するステップを有し、
前記シンタックス要素は、前記部分が前記少なくとも１つのパラメータを有することを示す方法。
【請求項２】
更なるシンタックス要素と、前記少なくとも１つの画像をレンダリングするために使用される少なくとも１つの画素ブロックの可逆変換を判定するための係数情報とを有する前記ビットストリームの異なる部分を復号化するステップを更に有し、
前記更なるシンタックス要素は、前記異なる部分が前記係数情報を更に有することを示す、請求項１に記載の方法。
【請求項３】
コンピュータグラフィックスを使用して少なくとも１つの画像をレンダリングするためのデータ符号化方法であって、
前記コンピュータグラフィックスを生成するためのパラメータに基づく手続き型コンピュータグラフィックス生成方法の少なくとも１つのパラメータと、シンタックス要素とをビットストリームの部分に符号化するステップを有し、
前記シンタックス要素は、前記部分が前記少なくとも１つのパラメータを有することを示す方法。
【請求項４】
更なるシンタックス要素と、前記少なくとも１つの画像をレンダリングするために使用される少なくとも１つの画素ブロックの可逆変換を判定するための係数情報とを前記ビットストリームの異なる部分に符号化するステップを更に有し、
前記更なるシンタックス要素は、前記異なる部分が前記係数情報を更に有することを示す、請求項３に記載の方法。
【請求項５】
前記コンピュータグラフィックスは、前記少なくとも１つの画像の地形をレンダリングするために使用され、前記少なくとも１つのパラメータは、実際の地形データから抽出される、請求項３又は４に記載の方法。
【請求項６】
前記コンピュータグラフィックスは、前記少なくとも１つの画像の第１の部分をレンダリングするために使用され、前記少なくとも１つの画素ブロックは、前記少なくとも１つの画像の異なる第２の部分をレンダリングするために使用される、請求項２又は４に記載の方法。
【請求項７】
前記少なくとも１つの画像は、第１の画像と異なる第２の画像とを有し、前記第１の部分は前記第１の画像を有し、前記第２の部分は前記第２の画像を有する、請求項６に記載の方法。
【請求項８】
前記少なくとも１つの画像は、第１の画像と異なる第２の画像とを有し、前記第１の部分は、前記第１の画像の一部と前記第２の画像の一部とを有し、前記第２の部分は、前記第１の画像の残りと前記第２の画像の残りとを有する、請求項６に記載の方法。
【請求項９】
前記コンピュータグラフィックスは３次元であり、前記少なくとも１つのパラメータは、前記コンピュータグラフィックスが投射されるレンダリング平面を判定することを可能にするカメラ位置情報及びカメラ方向情報を更に有する、請求項１ないし８のうちいずれか１項に記載の方法。
【請求項１０】
前記少なくとも１つの画像は、画像の系列を有し、前記少なくとも１つのパラメータは、前記コンピュータグラフィックスが前記画像の系列をレンダリングするために投射されるレンダリング平面の系列を判定することを可能にするカメラ軌道情報及びカメラ速度情報を更に有する、請求項９に記載の方法。
【請求項１１】
前記少なくとも１つのパラメータは、視野、アスペクト比、近いクリッピング平面及び遠いクリッピング平面のうち少なくとも１つに関する情報を有する投射情報を更に有する、請求項９又は１０に記載の方法。
【請求項１２】
前記少なくとも１つのパラメータは、
コンピュータグラフィックスのカテゴリ、
前記少なくとも１つの画像の表示の持続時間、
畝マルチフラクタル（ridged  multi-fractal）又はフラクタルブラウン運動（fractal  Brown  motion）のいずれかである、前記コンピュータグラフィックスの手続き型生成に使用される手続の種類を示す手続インジケータ、
干渉性雑音を生成するパラメータ、
ディテールのレベルの数、
セルサイズ、及び
グリッドサイズ
のうち少なくとも１つを示す、請求項１ないし１１のうちいずれか１項に記載の方法。
【請求項１３】
請求項１ないし１２のうちいずれか１項に記載の方法を実行する装置。
【請求項１４】
請求項３ないし５のうちいずれか１項に記載の方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像コーデック製品の分野で行われている。より正確には、本発明は、コンピュータグラフィックスを使用した画像レンダリング（rendering）のためのデータの符号化及び復号化に関する。
【背景技術】
【０００２】
数十年間、ビデオ符号化アルゴリズムは調査されている。従って、多くのビデオ符号化標準（例えば、MPEG-1/2/4、H.261、H.263、H.264/AVC）が策定されている。これらの標準の中で、H.264/AVCは、ローエンド（例えば、モバイルアプリケーション）からハイエンド（例えば、高解像度テレビ（HDTV：High-Definition  Television）アプリケーション）までのビデオ圧縮について最善のレート歪み性能を備えた最新のものである。
【０００３】
しかし、全ての既存の画像／ビデオ符号化標準は、取り込みデバイス（例えば、CMOSセンサ又はCCDチップ等）を使用して自然の情景の取り込みから生じる画素マップを圧縮するように設計されている。このように収集された画像データは、以下ではナチュラルビデオ（NV：natural  video）と呼ばれる。しかし、近年では、多くの映画又は他のビデオアプリケーションは、NVに加えて又はNVの代わりに、自然の情景の取り込みから生じたのではなく、何らかのコンピュータグラフィックス（CG：computer  graphics）シーン又は特殊効果から生じたコンテンツを統合している。ナチュラルビデオ及びレンダリングされたコンピュータグラフィックスの双方で構成された増強されたビデオコンテンツは、ゲーム、仮想ショッピング、旅行者用の仮想都市、モバイルTV、放送等のような実際のアプリケーションにますます現れている。将来的に3Dナチュラルビデオアプリケーションが成熟した場合、この種類の組み合わせは、世界中で広範囲な用途を見出すことが予想され得る。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従って、MPEG-4標準は、ナチュラルビデオとコンピュータグラフィックスとの組み合わせのための符号化方法に既に取り組んでいる。元々は1995年に、サブグループSNHC（Synthetic  Natural  Hybrid  Coding）が設定され（2005年に、MPEGのSNHCグループがその名前を3DGC（3D  Graphics  Coding）グループに変更した）、MPEG-4  part2:  visualの合成符号化ツールを開発した。合成ビジュアルツールは、FBA（Face  and  Body  Animation）と、2D及び3Dメッシュ符号化と、視聴（view）依存のスケーラビリティとを含む。簡単に言えば、MPEG-4  SNHCは、（ナチュラル）オーディオ及びビデオとの統合を可能にする枠組みにおいて、グラフィックス、アニメーション、圧縮及びストリーミング機能を組み合わせる。
【０００５】
MPEG-4  part  11では、BIFS（Binary  Format  for  Scene  Description）が補間器の圧縮のような一般的なグラフィックツールで規定されている。BIFS仕様は、2D及び3Dグラフィックスと画像とテキストとオーディオビジュアル素材とを有する動的且つインタラクティブなプレゼンテーションの効果的な表示を可能にするように設計されている。このようなプレゼンテーションの表示は、異なるシーン構成要素とユーザ相互作用及びアニメーションとの空間的及び時間的な構成の記述を含む。
【０００６】
MPEG-4では、各オブジェクトはストリームと密に結合される。このような結び付きは、オブジェクトを実際のストリームにリンクするオブジェクト記述フレームワーク（Object  Descriptor  Framework）を用いて行われる。この設計は、圧縮されたビデオストリームに依存するビデオオブジェクトには明白であるように思われる。これは、更に少し進められている。シーン記述及びオブジェクト記述子の記述自体がストリームになっている。換言すると、プレゼンテーション自体が、シーングラフを更新するストリームであり、実際のメディアストリームを参照することを可能にする記述子の動的セットに依存する。
【０００７】
米国特許第6,072,832は、オーディオ／ビデオ／コンピュータグラフィックスの同期再生／合成システム及び方法について記載している。ビデオ信号及びコンピュータグラフィックスデータは圧縮及び多重され、レンダリングエンジンがビデオ信号とコンピュータグラフィックスデータと視点動きデータとを受信し、ビデオ信号及びコンピュータグラフィックスデータの合成した画像を出力する。
【０００８】
本発明は、ナチュラルビデオ（NV）とレンダリングされたコンピュータグラフィックス（CG）との双方を含む出現しつつある種類のビデオコンテンツをどのように効率的に圧縮するかという問題に対処する。特に手続的に（procedural）生成されたCGコンテンツでは、本発明は、利点がその手続的な技術から引き出され得るように、従来のビデオ符号化方法を適合させることを提案する。
【課題を解決するための手段】
【０００９】
従って、請求項１に記載のコンピュータグラフィックスを使用して少なくとも１つの画像をレンダリングするためのデータ復号化方法と、請求項３に記載のコンピュータグラフィックスを使用して少なくとも１つの画像をレンダリングするためのデータ符号化方法とが提案される。
【００１０】
この符号化方法は、コンピュータグラフィックスを生成するためのパラメータに基づく手続き型コンピュータグラフィックス生成方法（parameter  based  procedural  computer  graphics  generation  method）の少なくとも１つのパラメータと、シンタックス要素（syntax  element）とをビットストリームの部分に符号化するステップを有し、このシンタックス要素は、この部分がこの少なくとも１つのパラメータを更に有することを示す。
【００１１】
実施例では、この符号化方法は、更なるシンタックス要素と係数情報とをビットストリームの異なる部分に符号化するステップを更に有する。復号化方法の対応する実施例では、この復号化方法は、ビットストリームの異なる部分に含まれる更なるシンタックス要素と係数情報とを復号化するステップを有する。係数情報は、少なくとも１つの画像をレンダリングするために使用される少なくとも１つの画素ブロックの可逆変換（invertible  transform）を判定するためのものであり、この更なるシンタックス要素は、この異なる部分がこの係数情報を更に有することを示す。
【００１２】
符号化方法の更なる実施例では、このコンピュータグラフィックスは、この少なくとも１つの画像の地形（terrain）をレンダリングするために使用され、この少なくとも１つのパラメータは、実際の地形データから抽出される。
【００１３】
符号化方法又は復号化方法の更に有利な実施例の特徴は、従属項に示されている。
【００１４】
本発明は、方法の請求項に提示された方法のうち１つを実行する装置を更に提案する。
【００１５】
提案された符号化方法のうち１つから生じたビットストリームを運ぶ記憶媒体も、本発明により提案される。
【発明の効果】
【００１６】
従って、本発明は、結合されたスペクトル変換符号化されたコンテンツと手続的に生成されたコンテンツの新たな符号化方法を提案する。実施例では、本発明は、手続的に生成された地形符号化（terrain  coding）に着目する。地形は、大きな圧縮比が実現できるように、数個のパラメータのみで符号化されてもよい。更に、シンタックス要素により、従来のビデオ符号化へのシームレスな統合が実現される。
【図面の簡単な説明】
【００１７】
【図１ａ】例示的な非干渉性雑音の図
【図１ｂ】例示的な干渉性雑音の図
【図２ａ】例示的なPerlin数値雑音の図
【図２ｂ】例示的なPerlin傾斜雑音の図
【図３】例示的なディテールのレベルの地形モデル化及びレンダリングの図
【図４】例示的なカメラパラメータの図
【発明を実施するための形態】
【００１８】
本発明の例示的な実施例が図面に示されており、以下の詳細な説明で詳細に説明される。例示的な実施例は、本発明を明瞭にするためにのみ説明されており、特許請求の範囲に定められた本発明の開示、範囲又は要旨を限定するものではない。
【００１９】
本発明は、対応して適合された処理デバイスを有する如何なる電子デバイスに実現されてもよい。例えば、本発明は、セットトップボックス、テレビ、DVD及び／又はBDプレイヤ、移動電話、パーソナルコンピュータ、デジタルスチルカメラ、デジタルビデオカメラ、mp3プレイヤ、ナビゲーションシステム又はカーオーディオシステムに実現されてもよい。
【００２０】
本発明は、パラメータに基づく手続き型コンピュータグラフィックス生成方法（parameter  based  procedural  computer  graphics  generation  method）を参照する。
【００２１】
手続的又は手続き型という用語は、特定の関数を計算する処理を示す。手続き型生成の一例であるフラクタルはこの概念を表しており、この周囲に、数学の全身（フラクタル幾何学）が展開されている。一般的な手続き型コンテンツは、テクスチャ（texture）及びメッシュ（mesh）を含む。手続き型技術は、自然に現れる2D又は3Dテクスチャ（大理石、木材、皮膚又は樹皮等）を生成し、特殊効果をシミュレートし、複雑なナチュラルモデル（natural  model）（木、植物種、粒子システム（particle  system）、滝、空又は山等）を生成するために、コンピュータグラフィックス内で使用されている。物（asset）の自然な物理的動きですら、パラメータに基づく手続き型コンピュータグラフィックス生成方法を使用して生成可能である。手続き型技術の最大の利点は、数パラメータのみで自然のシーンを生成することができ、このため、大きい圧縮比が実現できることである。“A  Survey  of  Procedural  Techniques  for  City  Generation”,  Institute  of  Technology  Blanchardstown  Journal,  14:87-130において、Kelly,  G.及びMcCabe,  H.は、フラクタル、Lシステム、Perlin雑音、タイリングシステム（tiling  system）及びセルラに基づくシステムを含む複数の手続き型技術の概要を提供している。
【００２２】
Perlin雑音は、一種の滑らかな疑似乱数雑音であり、干渉性雑音（coherent  noise）とも呼ばれる。この一例は、図１ｂに示されている。このような雑音では、同じ入力は常に同じ出力を生じ、入力の小さい変化は出力の小さい変化を生じる。このことは、雑音関数を静的且つ滑らかにする。入力の大きい変化のみが出力のランダムな変化を生じる。このことは、雑音関数をランダム且つ反復性のないものにする。
【００２３】
最も簡単なPerlin雑音は、図２ａに例示的に示す数値雑音（value  noise）と呼ばれ、疑似乱数値が各整数格子点で生成され、その間の位置の雑音値は、隣接する格子点の雑音値の滑らかな補間により評価される。図２ｂに例示的に示す傾斜雑音（gradient  noise）は、改善したPerlin雑音関数であり、疑似乱数傾斜ベクトルが各整数格子点で規定され、各整数点の雑音値はゼロとして設定され、その間の位置の雑音値は、隣接する格子点の傾斜ベクトルから評価される。Perlin雑音は、順列テーブル（permutation  table）を利用する。Perlin雑音は、Ken  Perlinによる“An  image  synthesizer”,  Siggraph,  1985,  pp.  287-296に記載されている。
【００２４】
例えば、地形の合成では、地形の異なるディテール（detail）のレベルをモデル化するために異なる周波数のPerlin雑音関数が組み合わされたランダムなスペクトル合成が使用されてもよい。ディテールの基本周波数レベルは、地形の全体の変動を表し、ディテールの少なくとも１つの高い周波数レベルは、地形幾何学のディテールを表す。一連のPerlin雑音関数は、地形高度マップを生成するために構成される。ランダムなスペクトル合成は、基本周波数及び周波数レベルの数により引き起こされる。周波数レベルは一般的にはオクターブ（octave）である。地形のランダムなスペクトル合成は、平均地形高度、高度の重み及び周波数レベル毎の高度の重み利得、並びに各周波数レベルの高度及び周波数の重みの計算のためのパラメータである空隙性（lacunarity）により更に引き起こされる。
【００２５】
レンダリングのために、生成された地形は、カメラ位置座標及びカメラ方向四元数（quaternion）を含むカメラ位置パラメータにより定められる仮想投射平面に投射される。これが図４に例示的に示されている。投射は、カメラの視野であるfield_of_view  FOVY、ウィンドウ高さHに対するウィンドウ幅Wの比を記述するaspect_ratio、カメラCAMの近いクリッピング平面NEARであるnear_plane、及びカメラCAMの遠いクリッピング平面FARであるfar_planeのようなカメラ投射パラメータにより引き起こされる。
【００２６】
コンピュータにより生成されたコンテンツからの一連の画像をレンダリングするために、仮想的なカメラ動きが、カメラ速度及びカメラの動きが生じるNURBS（Non-Uniform  Rational  B-Spline）を規定する制御点座標を備えた複数の制御点のようなカメラ動きパラメータにより規定される。
【００２７】
実際の地形レンダリングでは、合成された地形データは、クリップマップとも呼ばれる一連の高度マップによりサンプリングされる。各クリップマップは同じグリッドサイズを有してもよいが、図４に例示的に示すように異なる空間解像度を取る。レベルn-1のクリップマップが最も細かいレベルであり、最も小さい空間解像度で地形データをサンプリングする。レベル0のクリップマップが最も粗いレベルであり、最も大きい空間解像度で地形データをサンプリングする。粗い方のクリップマップの空間解像度は、その最も近い細かい方の従属グループ（sibling）の２倍である。細かいレベルのクリップマップは、粗いレベルのクリップマップ内でネスト構造になっている。合成された地形の実際のレンダリングのためにクリップマップを使用することは、ディテールのレベルの数、各レベルの空間解像度の程度、及び同じグリッドサイズにより引き起こされる。グリッドマップの説明は、Frank  Losasso及びHugues  Hoppe:“Geometry  clipmaps:  Terrain  rendering  using  nested  regular  grids”,  Siggraph,  2004に存在する。
【００２８】
本発明は、手続き型コンピュータグラフィックス生成に関与する少なくとも１つのステップの実行を可能にするデータと共にNVを符号化し、復号化器側でレンダリングするための符号化の枠組みを提案する。
【００２９】
従って、新たなシンタックス（syntax）が提案される。NVCGレベルでは、このシンタックスは、次のビットストリーム部分がCGコンテンツを有する場合に設定され、次のビットストリーム部分がNVコンテンツを有する場合に設定されないCG_flagを有する。
【００３０】
CG_flagは、従来のビデオ符号化ビットストリーム又はコンピュータグラフィックスにより生成されたビットストリームの種類を示すために使用される。このフラグは、様々な方法で表されてもよい。例えば、CGフラグは、H.264/AVCビットストリームの新たな種類のNAL（Network  Abstraction  Layer）として規定されてもよい。或いは、CGフラグは、MPEG-2ビットストリームにおける新たな種類のstart_codeとして規定されてもよい。
【００３１】
復号化器側では、まず、CG_flagビットが復号化される。後続のビットストリームが手続き型グラフィックス方法により符号化されたことをフラグが示す場合、グラフィックス復号化及びレンダリング処理が行われる。復号化器の実施例では、後続のビットストリームが残差符号化方法（residual  coding  method）に従って符号化されたことをフラグが示す場合、従来のビデオ復号化処理が行われる。
【００３２】
CGコンテンツについて、例示的な実施例では、以下の更なるシンタックス要素が提案される。
【００３３】
CG_categoryは、CGコンテンツのカテゴリを規定する。任意選択のCGコンテンツは、地形（Terrain）、海水（Seawater）、3Dメッシュモデル等でもよい。
【００３４】
CG_duration_h、CG_duration_m、CG_duration_s、CG_duration_msは、それぞれCGコンテンツの持続時間を時間、分、秒及びミリ秒で規定する。
CG_duration=CG_duration_h*60*60*1000+CG_duration_m*60*1000+CG_duration_s*1000+CG_duration_ms
CG_durationはミリ秒の単位で記録される。
【００３５】
terrain_coding_typeは、再構成の際に使用される地形生成方法を示す。任意選択の方法は、RMF（Ridged  Multi-Fractal）、FBM（Fractal  Brown  Motion）又は他の方法でもよい。
【００３６】
permutation_table_sizeは、順列テーブルのサイズを規定する。例えば、permutation_table_size=1024である。
【００３７】
number_of_octaveは、Perlin雑音のオクターブの数を示す。例えば、number_of_octave=12である。
【００３８】
octave_parameter_1及びoctave_parameter_2は、地形生成のための２つのパラメータを規定する。octave_parameter1はHを規定し、octave_parameter2は空隙性（lacunarity）を規定する。
【００３９】
average_heightは、平均高度を与える。すなわち、高さにおける地形のオフセットである。
【００４０】
hight_weight_gainは、ローカル高度値の重みである。
【００４１】
base_frequencyは、レベル1のオクターブの基本周波数を規定する。
【００４２】
number_of_LODは、ディテールのレベル（LOD：Level  of  Detail）の数である。
【００４３】
cell_sizeは、１つのセルの空間解像度である。
【００４４】
grid_sizeは、クリップマップにおけるグリッドのサイズである。
【００４５】
camera_trajectory_typeの0は、カメラ位置及び方向がキーフレームに格納されていることを意味し、1は、カメラ位置及び方向が制御点により規定されたNURBS（Non-Uniform  Rational  B-Spline）曲線から補間されることを意味する。
【００４６】
key_frame_time_msは、アニメーションのキーフレームがいずれかの滑らかな遷移の開始点及び終了点を規定する図であることを示す。key_frame_time_msは、いつ対応するキーフレームが生じるかを規定する。
【００４７】
position_x、position_y、position_zは、camera_trajectory_typeの値によるカメラの位置ベクトル又はNURBS曲線の制御点である。
【００４８】
orientation_x、orientation_y、orientation_z、orientation_wは、カメラの方向の四元数である。
【００４９】
navigation_speedは、カメラの移動速度である。
【００５０】
number_of_control_pointsは、NURBS曲線の制御点の数である。
【００５１】
本発明はまた、前述のパラメータのうち１つ以上の値を符号化し、残りのパラメータについて所定の値を使用することを許容する。すなわち、対応する符号化及び復号化方法及び装置で様々な符号化の枠組みが提案され、これらの符号化の枠組みの共通の特徴は、ナチュラルビデオに関するビットストリーム部分と手続き型生成コンテンツに関するビットストリーム部分とを区別するための第１のシンタックス要素、並びに、コンテンツの手続き型生成及び／又は手続的に生成されたコンテンツのレンダリングに関する少なくとも第２の要素にある。
【００５２】
例示的な実施例では、結合されたナチュラルビデオコンテンツ及びコンピュータ生成された手続き型地形コンテンツのビデオコードは、次のビットストリーム（従来の符号化されたビデオビットストリーム又はグラフィックス地形ビットストリーム）のカテゴリを示すビットを有する。このビットがグラフィックス地形ビットストリームを示す場合、次のビットストリームは、a)地形ビデオ持続時間情報、b)地形符号化方法情報、c)Perlin雑音に関する情報（例えば、オクターブの数、地形生成関数パラメータ、順列テーブルサイズ、平均高度、レベル1のオクターブの基本周波数及び／又はローカル高度値の重み）、d)レンダリングのためのクリップマップ情報（例えば、ディテールのレベル（LOD）の数、１つのセルの空間解像度及び／又はクリップマップのグリッドのサイズ）、e)レンダリングのためのカメラ情報（カメラ投射パラメータ、カメラ位置情報、カメラ方向情報、カメラ軌道情報及びナビゲーション速度を更に含む）のうち少なくともいくつかを有する。
【００５３】
手続き型コンピュータグラフィックスは、画像の第１の部分（例えば、背景又は空）をレンダリングするために使用されてもよく、画像の残りは、ナチュラルビデオを使用してレンダリングされてもよい。他の例示的な実施例では、全体の画像を有する画像の系列は、コンピュータを使用して手続的に生成され、対応して符号化される。この系列は、残差符号化された全体の他の画像を更に有する。この系列はまた、手続き型グラフィックスコンテンツを使用して部分的にのみレンダリングされた画像を有してもよい。
【００５４】
例示的な実施例では、地形が手続き型技術により非常にうまくモデル化され得る最も一般的な自然のシーンの１つであるため、地形に着目している。しかし、本発明はこれに限定されない。空、水、植物及び都市又は群衆もまた手続的に生成されてもよい。
【図１ａ】
0005575975.tif 000002
【図１ｂ】
0005575975.tif 000003
【図２ａ】
0005575975.tif 000004
【図２ｂ】
0005575975.tif 000005
【図３】
0005575975.tif 000006
【図４】
0005575975.tif 000007