(57)【特許請求の範囲】
【請求項１】
視聴装置において、イベントのユーザ選択可能な新規ビューを生成する方法であって、
該方法は、
（ａ）複数のカメラを構成するそれぞれのカメラ用のサーバシステムが、画像データを、前記それぞれのカメラのための少なくとも１つの前景モデルと、前記それぞれのカメラのための少なくとも１つの周囲モデルとに再構成し；
（ｂ）前記サーバシステムが、前記それぞれのカメラごとの少なくとも１つの前景モデルを結合して、すべての前景モデルの視覚的アトラスを生成し；
（ｃ）前記サーバシステムが、３Ｄデータ表現における３Ｄ座標に、前記視覚的アトラス内の前景画像データ用の前景マッピングデータを生成し；
（ｄ）前記サーバシステムが、すべてのカメラの周囲画像データを、それぞれのカメラごとに、それぞれの周囲モデルに投影し；
（ｅ）前記サーバシステムが、３Ｄデータ表現における３Ｄ座標に、それぞれの周囲モデル内の周囲画像データ用の周囲マッピングデータを生成し；
（ｆ）前記サーバシステムが、それぞれのカメラごとに、それぞれの周囲モデルを周囲画像として保存し；
（ｇ）前記サーバシステムが、前記前景マッピングデータ、前記周囲マッピングデータ、およびデプスマップを圧縮し；
（ｈ）前記サーバシステムが、それぞれの周囲モデルに背景ラスタを投影することにより、画像シーケンス内の新たな画像フレームとして、前記視覚的アトラスをそれぞれの周囲モデルに挿入し；
（ｉ）前記サーバシステムが、前記視覚的アトラスを圧縮し；
（ｊ）前記サーバシステムが、それぞれの周囲画像および前記それぞれの周囲モデルを圧縮し；
（ｋ）前記サーバシステムが、それぞれの圧縮データを圧縮された順に送信し；
（ｌ）前記視聴装置が、すべての圧縮データを受信し；
（ｍ）前記視聴装置が、すべての圧縮データを非圧縮データに戻し；
（ｎ）前記視聴装置上のユーザが、前記新規ビューを選択し；および
（ｏ）前記視聴装置が、それぞれの新規ビューのために、前記それぞれの周囲画像を前記それぞれの周囲モデル上にレンダリングする；
ステップを備える方法。
【請求項２】
前記ステップ（ａ）の前に、
前記複数のカメラを用いて、前景と周囲からなる前記イベントを撮像し、複数の画像フレームとし、
前記サーバシステムが、前記複数の画像フレームから、画像データを抽出する、
ステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記画像データを、前記３Ｄデータ表現として保存するステップをさらに含む、請求項２に記載の方法。
【請求項４】
前記ステップ（ｅ）の後に、
前記サーバシステムが、前記それぞれの周囲モデルについてモデル中央値を計算する、
ステップをさらに含む、請求項１に記載の方法。
【請求項５】
前記ステップ（ｆ）の後に、
前記サーバシステムが、前記それぞれの周囲画像について画像中央値を計算し、
前記モデル中央値と前記画像中央値の差を決定する、
ステップをさらに含む、請求項４に記載の方法。
【請求項６】
前記サーバシステムが、輝度画像を前記周囲画像に挿入するステップをさらに含む、請求項１に記載の方法。
【請求項７】
前記サーバシステムが、前記輝度画像を圧縮するステップをさらに含む、請求項６に記載の方法。
【請求項８】
前記ステップ（ｈ）において、指数マトリックスを用いて、投影重みを決定する、請求項１に記載の方法。
【請求項９】
前記ステップ（ｈ）において、それぞれのカメラを通じてルーピングし、前記視覚的アトラスにおける画像データを参照する、請求項１に記載の方法。
【請求項１０】
視聴装置上にイベントのユーザ選択可能な新規ビューを生成するためのインタラクティブ・プレーヤシステムであって、
該システムは、サーバシステムと視聴装置とを含み、
前記サーバシステムは、
（ａ）複数のカメラを構成するそれぞれのカメラごとに、画像データを、前記それぞれのカメラのための少なくとも１つの前景モデルと、前記それぞれのカメラのための少なくとも１つの周囲モデルとに再構成し；
（ｂ）前記それぞれのカメラごとの少なくとも１つの前景モデルを結合して、すべての前景モデルの視覚的アトラスを生成し；
（ｃ）３Ｄデータ表現における３Ｄ座標に、前記視覚的アトラス内の前景画像データ用の前景マッピングデータを生成し；
（ｄ）すべてのカメラの周囲画像データを、それぞれのカメラごとに、それぞれの周囲モデルに投影し；
（ｅ）３Ｄデータ表現における３Ｄ座標に、それぞれの周囲モデル内の周囲画像データ用の周囲マッピングデータを生成し；
（ｆ）それぞれのカメラごとに、前記それぞれの周囲モデルを周囲画像として保存し；
（ｇ）前記前景マッピングデータ、前記周囲マッピングデータ、およびデプスマップ（距離画像）を圧縮し；
（ｈ）それぞれの周囲モデルに背景ラスタを投影することにより、画像シーケンス内の新たな画像フレームとして、前記視覚的アトラスをそれぞれの周囲モデルに挿入し；
（ｉ）前記視覚的アトラスを圧縮し；
（ｊ）前記それぞれの周囲画像および前記それぞれの周囲モデルを圧縮し；
（ｋ）それぞれの圧縮データを圧縮された順に送信し；
前記視聴装置は、
すべての圧縮データを受信し；
すべての圧縮データを非圧縮データに戻し；
該視聴装置上のユーザにより、前記新規ビューを選択し；および
それぞれの新規ビューのために、前記それぞれの周囲画像を前記それぞれの周囲モデル上にレンダリングする；
ことを特徴とするシステム。
【請求項１１】
前記視聴装置は、経路を選択し、複数の新規ビューを表示可能とするための、経路選択モジュールを備える、請求項１０に記載のシステム。
【請求項１２】
前記サーバ側は、前記（ａ）〜（ｋ）を実行するためのコンフィギュレーションエンジンを備える、請求項１０に記載のシステム。
【請求項１３】
前記複数のカメラは、前景および周囲からなる前記イベントを撮像して、複数の画像フレームを得るためのものであり、
前記画像フレーム内の前記周囲から前記前景を分離するためのＦＥＳモジュールをさらに備える、
請求項１０に記載のシステム。
【請求項１４】
複数の視聴装置および該視聴装置の複数のユーザの間での通信を可能とするためのソーシャルメッセージングシステムをさらに含む、請求項１０に記載のシステム。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
この出願は、２０１４年４月３０日に出願され、かつ、係属中である、米国特許出願第６１／９８６，４３９号に対応すると共に、これに基づく優先権を主張する出願であり、参照により実質的にその内容の全体が本明細書に援用される。
【０００２】
この出願は、２０１４年１０月３１日に出願され、かつ、係属中である、米国特許出願第６２／０７１，９４３号に対応すると共に、これに基づく優先権を主張する出願であり、参照により実質的にその内容の全体が本明細書に援用される。
【０００３】
この出願は、２０１４年１０月３１日に出願され、かつ、係属中である、米国特許出願第６２／０７３，５９６号に対応すると共に、これに基づく優先権を主張する出願であり、参照により実質的にその内容の全体が本明細書に援用される。
【技術分野】
【０００４】
本発明は、複数のカメラから画像および映像を再構成するためのシステムおよび方法に関する。特に、本発明は、サーバシステムから離れた視聴装置上にユーザ選択可能な新規ビューを生成することに関する。
【背景技術】
【０００５】
マルチビュー再構成は、１以上の立体物の複数の２次元像を組み合わせて、物体の単一の３次元データ表現を作るプロセスである。前記表現は、ユーザのために任意の角度からレンダリングできる。
【０００６】
マルチビュー再構成は、典型的には、２次元画像から抽出され、かつ、３次元仮想空間に割り当てられたデータから導かれる、ポイントクラウドモデルを使用して達成される。ポイントクラウドモデルを構築するという計算上の課題は幾度となく解決されてきた。しかしながら、既存の解決法には、いくつかの欠点がある。
【０００７】
一つの重大な欠点は、フォトリアルのレベルでのレンダリング出力を提供することができなかったことである。その原因は、既存のシステムでは、オクルージョンの問題を回避するために、観察中の物体（たとえば前景）と、周囲の物体（たとえば背景）とを区別し得なかったことにある。
【０００８】
第１のタイプのオクルージョンは、仮想レンダリングカメラが、本来はその上に投影されるべき物体を通過して、投影されてしまう場合に生じる。第２のタイプのオクルージョンは、物体の一部がそれ自体を遮る場合、たとえば、仮想コンフィギュレーションおよびレンダリングカメラに対して、プレーヤの手が前景にあり、プレーヤの胴体の一部を遮るような場合に生じる。オクルージョンが発生し、レンダリング中に適切に解決されない場合、レンダリング出力は正確であるとの視聴者の認識を損なう。
【０００９】
さらなる重大な欠点は、色が全体的に一定である（フラットである）か、あるいは、仮想レンダリングカメラがある位置から別の位置へ移動する際に、色が突然変化する（ジャンプする）ことである。このような色の問題は、視聴者の通常の認識と大いに矛盾する。フォトリアルの成果により、マルチビュー再構成の活用は、その場で人間が物体に接近しているような用途にまで急速に拡がっている。
【００１０】
したがって、オクルージョンおよび色の問題を効果的に解決するフォトリアルな出力を提供するマルチビュー再構成が望まれている。また、サーバシステムから離れた視聴装置上にユーザ選択可能な新規ビューを生成することを可能とすることが望まれている。
【発明の概要】
【課題を解決するための手段】
【００１１】
これらの目的およびその他の目的は、本発明の１以上の実施形態によって達成される。
【００１２】
イベントのフォトリアルなレンダリングのマルチビュー再構成のためのシステムは、前記イベントを複数の画像フレームで画像化するための複数のカメラと；前記画像フレームの画像データから周囲をモデル化するためのＣＥＭモジュール、および、前記画像フレームの画像データのうち前記周囲から前景を分割すると共に、３Ｄデータ表現を構築するＦＥＳモジュールとを有するコントローラと；経路選択モジュールを有するコンフィギュレーションおよびレンダリングエンジンと；を含み、前記コンフィギュレーションおよびレンダリングエンジンは、前記経路選択モジュールを用いてユーザが選択した経路に沿って前記フォトリアルなレンダリングについてのコンフィグレーションおよびレンダリングを実行するためのものであり、前記経路は少なくとも１個の新規ビュー画像を含んでいる。前記フォトリアルなレンダリングは、前記新規ビュー画像の複数の出力ピクセルラスタ値と前記カメラによって画像化された前記画像フレームとの間の相違が１０％以下である。好ましくは、前記相違は、前記新規ビュー画像の位置および向きにおける１０％以下の相違に基づくものであり、２個以上の物理的カメラセンサに対する画像の相違である。
【００１３】
イベントのフォトレアリスティックなレンダリングのマルチビュー再構成のためのシステムであって、該システムは、前景と周囲からなるイベントを複数の画像フレームで画像化するための複数のカメラと；前記画像フレームの画像データから前記周囲をモデル化するためのＣＥＭモジュールと；前記画像フレームの画像データのうち前記周囲から前記前景を分割するとともに、３Ｄデータ表現を構築するＦＥＳモジュールと；前記フォトリアルなレンダリングについてのコンフィグレーションおよびレンダリングを実行するためのコンフィギュレーションエンジンと；視聴者に表示するための再生を受け取るための視聴装置と；少なくとも１個の新規ビュー画像を含む経路を前記再生においてユーザが選択するための経路選択モジュールとを含み、前記フォトリアルなレンダリングは、前記新規ビュー画像の複数の出力ピクセルラスタ値と前記カメラによって画像化された前記画像フレームとの間の相違が１０％未満である。
【００１４】
ユーザが選択可能な新規ビューを用いてイベントのフォトリアルなレンダリングを再構成する方法であって、該方法は、前景と周囲からなる前記イベントを複数のカメラで画像化して複数の画像フレームを発生させ；ＣＥＭモジュールにより、前記画像フレームの画像データから前記周囲をモデル化し；ＦＥＳモジュールにより。前記画像フレームの画像データのうち前記周囲から前記前景を分割するとともに、３Ｄデータ表現を構築し；コンフィギュレーションエンジンにより、前記イベントの再生についてのコンフィギュレーションおよびレンダリングを実行し；視聴装置により、視聴者に表示するために前記再生を受け取り；前記視聴装置上の経路選択モジュールを用いて、ユーザが少なくとも１個の新規ビュー画像を含む経路を選択することを含み、前記フォトリアルなレンダリングは、前記新規ビュー画像の複数の出力ピクセルラスタ値と前記カメラによって画像化された前記画像フレームとの間の相違が１０％未満である。
【００１５】
イベント空間で生じるイベントの３次元再構成における３次元再構成システムによる周囲の処理を制限する方法であって、
該方法は、
（ａ）ユーザにより、前記イベント空間のボリュームが決定され；
（ｂ）ユーザにより、細分化モジュールと、前記イベントを複数の画像フレームに記録するための複数のカメラとを含むシステムのために前記ボリュームが定義され；
（ｃ）前記細分化モジュールにより、前記ボリュームを、該ボリュームを構成する複数のサブボリュームに分割し；
（ｄ）前記細分化モジュールにより、前記複数のサブボリュームのそれぞれを、それぞれのカメラから投影して、それぞれのカメラに対応する複数のサブボリュームマスクを生成し；
（ｅ）前記システムにより、前記イベントを記録し；
（ｆ）前記細分化モジュールにより、それぞれのカメラのための画像マスクを生成し；
（ｇ）前記細分化モジュールにより、それぞれのカメラごとに、前記それぞれの画像マスクと前記それぞれのサブボリュームマスクとを比較し、かつ、前記細分化モジュールにより、少なくとも１個の画像マスクから前記イベントに関連する少なくとも１個の特徴を抽出し；
（ｈ）前記細分化モジュールにより、前記少なくとも１個の特徴をサブ空間分割マスクに保存し；
（ｉ）前記システムにより、前記部分空間分割マスクを用いて、前記画像フレームから前記少なくとも１個の特徴を切り出し；および
（ｊ）前記システムにより、前記少なくとも１個の特徴のみを３Ｄ再構成のために処理する、
工程を含む。
【００１６】
前記システムは、前記複数のカメラと関連付けられたサーバをさらに備え、前記方法は、前記細分化モジュールによりサブボリュームマスクのそれぞれを、前記サーバのメモリに記憶する工程を、前記工程（ｄ）と（ｅ）の間にさらに備える。
【００１７】
本発明の１以上の実施形態によれば、前記システムは、複数のサーバをさらに備え、それぞれのサーバが前記複数のカメラの内のそれぞれのカメラと関連づけられており、前記方法は、前記細分化モジュールにより、それぞれのカメラと関連付けられた前記サブボリュームマスクを、前記それぞれのカメラと関連付けられた前記サーバのメモリに記憶する工程を、前記工程（ｄ）と（ｅ）の間にさらに備える。
【００１８】
ボリュームを有するイベント空間で生じるイベントの３次元再構成における周囲の処理を制限するシステムであって、
該システムは、
前記イベントを複数の画像フレームに記録するための複数のカメラと；
細分化モジュールと；
を備え、
前記細分化モジュールにより、前記ボリュームを、該ボリュームを構成する複数のサブボリュームに分割し；
前記細分化モジュールにより、前記複数のサブボリュームのそれぞれを、それぞれのカメラから投影して、それぞれのカメラに対応する複数のサブボリュームマスクを生成し；
該システムにより、前記イベントを記録し；
前記細分化モジュールにより、それぞれのカメラのための画像マスクを生成し；
前記細分化モジュールにより、それぞれのカメラごとに、前記それぞれの画像マスクと前記それぞれのサブボリュームマスクとを比較し、かつ、前記細分化モジュールにより、少なくとも１個の画像マスクから前記イベントに関連する少なくとも１個の特徴を抽出し；
前記細分化モジュールにより、前記少なくとも１個の特徴をサブ空間分割マスクに保存し；および、
該システムにより、前記部分空間分割マスクを用いて、前記画像フレームから前記少なくとも１個の特徴を切り出す；
ようになっており、
該システムは、前記少なくとも１個の特徴のみを３Ｄ再構成のために処理することを特徴とする。
【００１９】
イベントのフォトリアルな新規ビューを用いるソーシャルインタラクション用のシステムであって、
該システムは、
前記イベントの送信データを展開するためのマルチビュー再構成システムと；
それぞれが前記マルチビュー再構成システムからの前記送信データを受信し、前記送信データをフォトリアルな新規ビューとしてレンダリングする、複数のクライアント側レンダリング装置と；
を備える。
【００２０】
イベントのフォトリアルな新規ビューを用いるソーシャルインタラクション方法であって、
該方法は、
（ａ）サーバにより、前記イベントの送信データが送信され；
（ｂ）第１のレンダリング装置上の第１のユーザにより、前記送信データが受信され；
（ｃ）第１のユーザにより、第１のレンダリング装置上で、少なくとも１つの新規ビューをレンダリングするための経路が選択され；
（ｄ）第１のレンダリング装置により、前記少なくとも１つの新規ビューがレンダリングされ；および
（ｅ）前記ユーザにより、前記少なくとも１つの新規ビューのための新規ビューデータが、第１のレンダリング装置に保存される、
ステップを備える。
【００２１】
ユーザが選択可能なイベントの新規ビューを、視聴装置上に生成させる方法であって、
該方法は、
（ａ）複数のカメラを構成するそれぞれのカメラ用のサーバシステムにより、画像データを、前記それぞれのカメラのための少なくとも１つの前景モデルと、前記それぞれのカメラのための少なくとも１つの周囲モデルとに再構成し；
（ｂ）前記サーバシステムにより、前記それぞれのカメラごとの少なくとも１つの前景モデルを結合して、すべての前景モデルの視覚的アトラスを生成し；
（ｃ）前記サーバシステムにより、３Ｄデータ表現における３Ｄ座標に、前記視覚的アトラス内の前景画像データ用の前景マッピングデータを生成し；
（ｄ）前記サーバシステムにより、すべてのカメラの周囲画像データを、それぞれのカメラごとに、それぞれの周囲モデルに投影し；
（ｅ）前記サーバシステムにより、３Ｄデータ表現における３Ｄ座標に、それぞれの周囲モデル内の周囲画像データ用の周囲マッピングデータを生成し；
（ｆ）前記サーバシステムにより、それぞれのカメラごとに、それぞれの周囲モデルを周囲画像として保存し；
（ｇ）前記サーバシステムにより、前記前景マッピングデータ、前記周囲マッピングデータ、およびデプスマップ（距離画像）を圧縮し；
（ｈ）前記サーバシステムにより、それぞれの周囲モデルに背景ラスタを投影することにより、画像シーケンス内の新たな画像フレームとして、前記視覚的アトラスをそれぞれの周囲モデルに挿入し；
（ｉ）前記サーバシステムにより、前記視覚的アトラスを圧縮し；
（ｊ）前記サーバシステムにより、前記それぞれの周囲画像および前記それぞれの周囲モデルを圧縮し；
（ｋ）前記サーバシステムにより、それぞれの圧縮データを圧縮された順に送信し；
（ｌ）前記視聴装置により、すべての圧縮データを受信し；
（ｍ）前記視聴装置により、すべての圧縮データを非圧縮データに戻し；
（ｎ）前記視聴装置上のユーザにより、前記新規ビューを選択し；および
（ｏ）前記視聴装置により、それぞれの新規ビューのために、前記それぞれの周囲画像を前記それぞれの周囲モデル上にレンダリングする；
ステップを備える。
【００２２】
ユーザが選択可能なイベントの新規ビューを視聴装置上で生成するインタラクティブ・プレーヤシステムであって、
該システムは、サーバシステムと；視聴装置と；を含み、
前記サーバシステムは、
（ａ）複数のカメラを構成するそれぞれのカメラごとに、画像データを、前記それぞれのカメラのための少なくとも１つの前景モデルと、前記それぞれのカメラのための少なくとも１つの周囲モデルとに再構成し；
（ｂ）前記それぞれのカメラごとの少なくとも１つの前景モデルを結合して、すべての前景モデルの視覚的アトラスを生成し；
（ｃ）３Ｄデータ表現における３Ｄ座標に、前記視覚的アトラス内の前景画像データ用の前景マッピングデータを生成し；
（ｄ）すべてのカメラの周囲画像データを、それぞれのカメラごとに、それぞれの周囲モデルに投影し；
（ｅ）３Ｄデータ表現における３Ｄ座標に、それぞれの周囲モデル内の周囲画像データ用の周囲マッピングデータを生成し；
（ｆ）それぞれのカメラごとに、前記それぞれの周囲モデルを周囲画像として保存し；
（ｇ）前記前景マッピングデータ、前記周囲マッピングデータ、およびデプスマップ（距離画像）を圧縮し；
（ｈ）それぞれの周囲モデルに背景ラスタを投影することにより、画像シーケンス内の新たな画像フレームとして、前記視覚的アトラスをそれぞれの周囲モデルに挿入し；
（ｉ）前記視覚的アトラスを圧縮し；
（ｊ）前記それぞれの周囲画像および前記それぞれの周囲モデルを圧縮し；
（ｋ）それぞれの圧縮データを圧縮された順に送信し；
前記視聴装置は、
すべての圧縮データを受信し；
すべての圧縮データを非圧縮データに戻し；
該視聴装置上のユーザにより、前記新規ビューを選択し；および
それぞれの新規ビューのために、前記それぞれの周囲画像を前記それぞれの周囲モデル上にレンダリングする；
ことを特徴とする。
【図面の簡単な説明】
【００２３】
【図１ａ】本発明の１以上の実施形態によるマルチビュー再構成のためのシステムの概要を示す概略図である。
【図１ｂ】本発明の１以上の実施形態による図１ａのシステムのコントローラの概略図である。
【図１ｃ】本発明の１以上の実施形態による図１ａのシステム上で少なくとも部分的に作動する複数の方法の概要図である。
【図２ａ】本発明の１以上の実施形態によるイベント空間内のイベントの平面図である。
【図２ｂ】図２ａにおけるイベント空間とイベントの一部の立面図である。
【図２ｃ】図２ａのイベント空間における選択されたカメラの重複する視野の平面図である。
【図２ｄ】図２ａと図２ｃのイベント空間における仮想カメラ、複数の新規ビュー、ビューパスの一部、現実のカメラの視野の平面図である。
【図３】本発明の１以上の実施形態による画像化トリガ、タイマ、および画像フレームを捉える複数のカメラの概略図である。
【図４】本発明の１以上の実施形態による初期セットアップ方法の概略図である。
【図５】本発明の１以上の実施形態による較正および周囲をモデル化する方法の概略図である
【図６】本発明の１以上の実施形態による部分空間分割方法の概略図である。
【図７】本発明の１以上の実施形態による画像獲得方法の概略図である。
【図８】本発明の１以上の実施形態による画像獲得方法のタイミングの概略図である。
【図９】本発明の１以上の実施形態によるイベントキャプチャ方法の概略図である。
【図１０ａ】本発明の１以上の実施形態による周囲をモデル化する方法の概略図である。
【図１０ｂ】本発明の１以上の実施形態による色変化に基づく分割および再構成方法のサブルーチンの概略図である。
【図１０ｃ】本発明の１以上の実施形態による色変化に基づく分割および再構成方法の概略図である。
【図１０ｄ】本発明の１以上の実施形態によるグラウンド投影分割および再構成方法の概略図である。
【図１０ｅ】本発明の１以上の実施形態による周囲の更新サブルーチンの概略図である。
【図１０ｆ】本発明の１以上の実施形態による周囲をモデル化する方法の概略図である。
【図１１ａ】本発明の１以上の実施形態によるカメラとは一致していないビューから取り込んだイベントの概略図である。
【図１１ｂ】図１１ａの取り込まれたイベントの周囲モデルの概略図である。
【図１１ｃ】第１のカメラ（カメラ１）から見た、図１１ａの取り込まれたイベントについての概略図である。
【図１１ｄ】第２のカメラ（カメラ２）から見た、図１１ａの取り込まれたイベントについての概略図である。
【図１１ｅ】第２のカメラによって画像化された図１１ｄの前景を、図１１ｂの周囲モデル上に投影し、第１のカメラによって見た場合の該前景の概略図である。
【図１１ｆ】第１のカメラによって画像化された図１１ｃの前景を、図１１ｂの周囲モデル上に投影し、第２のカメラによって見た場合の該前景の概略図である。
【図１１ｇ】第２のカメラによって画像化された前景を、図１１ｂの周囲モデル上に投影し、第１のカメラによって見た場合の該前景の概略図である。
【図１１ｈ】第１のカメラによって画像化された前景を、図１１ｂの周囲モデル上に投影し、第２のカメラによって見た場合の該前景の概略図である。
【図１１ｉ】図１１ａの取り込まれたイベントの新規ビューからの概略図であって、前記前景が、第１のカメラと第２のカメラの両方によって画像化され、周囲モデルに重ねられた場合の概略図である。
【図１１ｊ】両方のカメラから見た前景を示す新規ビューからの概略図である。
【図１１ｋ】周囲データが存在する場所を示す図１１ｊの概略図である。
【図１１ｌ】両方のカメラから見ることができない前景を除いた周囲モデルを示す図１１ｋの概略図である。
【図１１ｍ】両方のカメラから見ることができない前景を除くとともに、追加のカメラから見ることができない前景も除いた周囲モデルを示す図１１ｋの概略図である。
【図１２ａ】本発明の１以上の実施形態によるコンフィギュレーション方法の概略図である。
【図１２ｂ】本発明の１以上の実施形態によるインタラクティブ・プレーヤシステム５００の概略図である。
【発明を実施するための形態】
【００２４】
以下の詳細な説明は、現在想定される本発明の最良の実施形態のものである。そのような説明は、本発明を限定する意味ではなく、本発明の説明のためだけに提示された本発明の一例であると理解されることを意図したものであり、当業者は、以下の説明と添付の図面に関連付けて参照することにより、本発明の効果と構成を知ることができる。種々の図面において、同一の参照符合は、同一または類似の要素を示す。
【００２５】
「定義」
すべての技術用語および科学用語は、当業者によって通常理解される意味と同じ意味を有するものとする。それにもかかわらず、次の用語は、開示の理解を助けるべく、以下に定義され、その定義は、その用語が明示的にそのように定義されているか否かに関わらず、用語のすべての品詞に適用される。
【００２６】
「約」、「概ね」、「実質的に類似の」は、名目値から１０％以内のばらつきを意味する。明示的記載がない場合でも、ばらつきが具体的に言及されているか否かに関わらず、記載された値には常にばらつきが含まれていることを理解されたい。
【００２７】
「２Ｄ」は、２次元および／または２次元の、を意味する。典型的には、本開示において、２Ｄは、単一の２次元座標平面にある画像データを有する画像、および／または、深さなどの第３の次元のない画像データの再構成を意味する。また、「２Ｄ」は、画像に構成されたまたは画像を含むピクセルのアレイである画像ラスタをいい、それぞれのピクセルは平面中の格子位置、たとえばＸＹ位置と、ＲＧＢ色空間情報とを有している。
【００２８】
「３Ｄ」は、３次元および／または３次元の、を意味する。典型的には、本開示において、３Ｄは、物理的非仮想ボリューム、および／または、深さなどの第３の次元を有する画像データの再構成をいう。また、「３Ｄ」は、３次元、たとえば、焦点面と焦点面から垂直に測定された距離を有する仮想空間をいう。
【００２９】
動詞の形態での「捉える（キャプチャ）」は、（ａ）デジタル画像センサなどの１以上の画像センサを介して物体の画像データを取得すること、および、（ｂ）その画像データを、任意の適切なメモリストレージに、任意の適切なフォーマットを有するファイルとして保存することを意味する。
【００３０】
「演算装置」あるいは同義の「ハードウェア」は、本開示において、実質的に広義に解釈され、すべての用途、すべての装置、および／または、すべてのシステムおよび／または本開示におけるシステムに対する、少なくとも中央処理ユニット、データネットワークにインタフェースするための通信装置、一時的コンピュータ可読メモリ、および／または、非一時的なコンピュータ可読メモリ、および／または、記憶媒体を含む装置として定義される。中央処理ユニットは、本明細書に記載の任意の方法の１以上のステップの全部または一部を達成するために、演算動作、論理動作、および入出力動作を行うことによって、非一次的コンピュータ可読メモリおよび／または媒体に保存された１以上のコンピュータプログラムの命令を実行する。
【００３１】
演算装置は、本開示における１以上の適切な機能のために、１以上のユーザ、他の演算装置によって直接的および／または間接的に、能動的および／または受動的に使用可能である。演算装置の具体例としては、コンピュータ、ラップトップ、タブレットコンピュータ、スマートフォン、および／または、他の任意の適切な装置が例示され、ネットワーク化された演算装置、サーバなども含まれる。演算装置は、好ましくは、１以上の人が入力するための装置、たとえば、コンピュータマウスおよび／またはキーボード、および、１以上のヒューマンインタラクション装置、たとえば、モニタを備える。演算装置には、１以上のユーザに仮想現実の経験を与えることに関連する任意の入力、出力、および／または計算装置も含まれる。
【００３２】
１つの演算装置が図示および／または記載されている場合であっても、複数の演算装置を用いることができる。逆に、複数の演算装置が図示および／または記載されている場合であっても、単一の演算装置を用いることができる。
【００３３】
「コンピュータプログラム」あるいは同義の「ソフトウェア」は、本開示における１以上の適切な機能を実行するため、および／または、１以上の方法を実行するために、非一時的コンピュータ可読メモリまたは非一時的コンピュータ可読媒体に保存された、任意の命令セットを意味する。明示的な記載がない場合でも、本開示において、演算装置は、本開示における１以上の適切な機能を実行するため、および／または１以上の方法を実行するために非一時的コンピュータ可読メモリまたは非一時的コンピュータ可読媒体に保存された任意の命令セットを有するソフトウェアを含む
【００３４】
「マスク」または「マスクモデル」は、画像上に置かれたとき、画像のその部分を除去する１以上のデータ表現を意味する。
【００３５】
「非一時的コンピュータ可読メモリ」または互換可能に「非一時的コンピュータ可読媒体」は、１以上のコンピュータプログラムを保存するための、ハードドライブ、ソリッドステートドライブ、コンパクトディスクドライブ、ＤＶＤドライブなどのいずれか１つまたは複数の組み合わせであり得る。
【００３６】
「フォトリアルなレンダリング」は、テレビ放送のために供給される品質、たとえば少なくとも７２０ピクセルの解像度での再生を意味する。「フォトリアルなレンダリング」は、新規カメラビューから構成される１以上のシーケンスにおける１以上の画像フレームをいい、この場合、それぞれのビューは、新規ビュー画像の出力ピクセルラスタ値とグラウンドトゥルース画像との間の相違が１０％未満となるように、色およびオクルージョンの情報を有する３Ｄデータ表現のピクセルの外挿としてレンダリングされる。ここで、グラウンドトゥルース画像は、画像センサから直接生成され、好ましくは、後述するように画像フレームである。
【００３７】
より具体的には、新規ビューが「フォトリアルなレンダリング」であるか否かは、次のＲＭＳベースのフォトリアリズム決定プロセスを用いて決定することもできる。
１．任意の適切なシーンであり得るシーンの画像を取り込む。
２．新規ビュー、すなわち取り込まれた画像におけるシーンと同じシーンの画像であって、ステップ１において画像を取り込んだカメラの内因性および外因性の属性を模倣した画像を、画像解析を含む１以上のアルゴリズムを用いて生成する。
３．取り込まれた画像と新規ビューとの間の差を、徹底的なＲＭＳ比較を用いて以下のように決定する。
ａ．取り込まれた画像の全領域および新規ビューの全領域のそれぞれを、少なくとも１００等分されたセクションに分割する。取り込まれた画像の領域、新規ビューの領域、およびそれぞれのセクションは、ピクセル単位で測定され、サイズが少なくとも１ピクセルであるべきである。セクションは、取り込まれた画像および新規ビューの両方において同一でなければならず、同じピクセルオフセットに位置する両画像からのセクションは対応すると考えるべきである。
ｂ．実際に取り込まれた画像における対応するセクションと新規ビューにおけるセクションとの間で、ＲＧＢ色空間におけるピクセルごとのＲＭＳ比較を、以下の計算をすることによって行う。
ＲＭＳ＝（｜Ｒｍ−Ｒｇ｜）＾２＋｜Ｇｍ−Ｇｇ｜＾２＋｜Ｂｍ−Ｂｇ｜＾２  ）＾０．５
式中Ｒ、Ｇ、Ｂは、ＲＧＢ値を表し、Ｘｍは作られた画像のピクセル値を示し、Ｘｇは取り込まれた画像のピクセル値を表す。
ｃ．ＲＭＳ値を、純粋白色と純粋黒色の間の距離が１となるように線形に正規化する。
ｄ．ＲＭＳ値を、１つのセクション内の全ピクセルについて合計し、次にそのセクションの領域における合計を、純粋白色および純粋黒色セクションの間の結果が１となるように分割する。
ｅ．全セクションの全比較から得られた最大値を選択する。
４．フォトリアルな品質は、徹底的なＲＭＳ比較の結果が０．１（１０％）未満である場合に達成される。
【００３８】
「ユーザ」は、本開示における１以上のシステムおよび／または方法の全体または一部に対する必要、要求、または意図を有しているであろう１名以上の個人、人間、および／またはグループを意味する。本開示の１以上の特徴のユーザは、必ずしも本開示の１以上の他の特徴のユーザとも同一のユーザまたは関連するユーザである必要はない。さらに、１つの特徴のユーザは、同一のまたは異なる特徴の他のユーザを知っていなくてもよい。１名のユーザが図示および／または記載されている場合に、複数のユーザが存在する可能性がある。複数のユーザが図示および／または記載されている場合に、１名のユーザのみしか存在しない可能性がある。種々の理由のために、１名のユーザまたは１つのユーザグループが、本明細書に記載した１以上のステップを実行することが好ましいが、本開示は、ユーザの同一性におけるそのような切り換えは明示的に記載されていなくても排除されない。したがって、１名のユーザまたはユーザ群が、あるステップまたはステップの一部を実施するものとして記載されている場合、他のユーザまたはユーザ群が、他のユーザまたはユーザ群によって実施されたステップの後のまたはその前のステップ、もしくはそのステップの後続する部分またはその前の部分を実施してもよい。
【００３９】
ユーザは、「フォトリアルなレンダリング」を観る人間であってもよい。従来の映像では、ユーザ・視聴者が、１以上のカメラからの視野に一致する予め定められたビューからの映像を観察する。これに対して、フォトリアルなレンダリングを観察することは、ユーザ・視聴者が、１以上のカメラからの視野と必ずしも一致しない新規ビューを対話的に選択することを意味する。
【００４０】
それが適切な場合には、他の用語または概念が、本開示の他の場所で定義される。本セクションからそのような定義が除かれていることを、その用語または概念が他の任意の意図した目的のために適切に定義されていなかったとは解してはならない。
【００４１】
「マルチビュー再構成のためのシステム」
図１は、本発明の１以上の実施形態によるマルチビュー再構成のためのシステムの全体を示す概略図である。図１ｂは、本発明の１以上の実施形態による図１ａのシステムのコントローラの概略図である。図１ｃは、本発明の１以上の実施形態による図１ａのシステム上の少なくとも一部を操作する複数の方法の概要を示す。
【００４２】
図２ａは、本発明の１以上の実施形態によるイベント空間におけるイベントの平面図である。図２ｂは、図２ａにおけるイベントおよびイベント空間の一部の立面図である。図２ｃは、図２ａのイベント空間において選択されたカメラの重複する視野の平面図である。図３は、本発明の１以上の実施形態による画像化トリガ、タイマ、および画像フレームを捉える複数のカメラの概略図である。
【００４３】
本発明の１以上の実施形態によれば、システム１００は、イベント空間１５において生じるイベント１０の１以上の部分を記録し、画像フレームからの画像データ６を較正し、イベント１０の周囲１６から前景１７を分割し、イベント１０の記録部分（複数可）を再構成し、再構成したものをレンダリングし、新規ビュー６６を含む、オクルージョンおよび色の問題を効果的に解決するフォトリアルな出力を得る。
【００４４】
具体的には、システム１００は、
複数の同期した画像フレーム５を記録し、捉え、
画像フレーム５から画像データ６を抽出し、
画像データ６を、少なくとも１つの周囲モデルと少なくとも１つの前景モデルに再構成し、かつ
フォトリアルな品質を有する１以上のユーザ選択の新規ビューを含む再生６４に前記モデルをレンダリングする。
【００４５】
本発明の１以上の実施形態によれば、マルチビュー再構成システム１００は、コントローラ１０５、１以上の画像化サーバ１１０、および、複数の通信リンク１２０によって、コントローラ１０５および／または少なくとも１つのサーバ１１０と相互接続される、複数のカメラ１１５を備える。
【００４６】
コントローラ１０５は、システム１００の制御を提供し、１以上のユーザのために任意の方法の機能制御を可能にする任意の適切な演算装置であり得る。好ましくは、システム１００は、１以上のユーザによりシステム全体を効果的に制御するための単一のコントローラ１０５を備える。
【００４７】
必要に応じて、また当分野で理解されるように、コントローラ１０５は、明示的に記載されていなくても必要な場合、物理的に具体化されたものであるか仮想的なものであるかに関わらず、１以上のヒューマンインタフェース装置を備えていてもよい。ヒューマンインタフェース装置は、１以上のモニタ、キーボード、映像ジョグデバイス、映像または画像再生制御装置、および／または他の任意の既知のまたは今後開発される装置であり得る。
【００４８】
コントローラ１０５は、１以上の独立した制御サーバ（図示せず）を含むことができ、それぞれの制御サーバは、１以上の演算装置として構成される。ここで、第１の制御サーバは、１以上のモジュールの始動、および／または、１以上のカメラと後述する１以上のサーバ１１０すなわち画像化サーバとの間のデータの転送および／またはハンドリングのために用いられる。第１の制御サーバは、第１の制御サーバと一体化された１以上のサーバ１１０を含む、あるいは備えることが好ましいが、一体化は必ずしも必要とされない。第２の制御サーバ（図示せず）は、カメラマネージャ１０６として使用され、このカメラマネージャは、任意の適切なインタフェースを有し得るが、好ましくはユーザが容易かつ効率的にアクション、映像データ２０、または他の情報を選択できるようにするためのグラフィカル・ユーザインタフェースを含む、あるいは備える。
【００４９】
ユーザは１名であることが非常に好ましいが、複数のユーザが、コントローラ１０５および／またはカメラマネージャ１０６を用いてもよい。たとえば、「ナビゲータ」ユーザが、イベント前およびイベント後のプロシージャを実施し、システム１００が技術的に機能的であり、かつ、あらゆる不安定さの問題を解決することを保証し、「パイロット」ユーザがカメラマネージャ１０６を操作する間に、たとえば、画像取り込み関連のステップ、フレーム選択、およびカメラ経路選択／生成のためのヒューマンインタラクションを提供することもできる。
【００５０】
本発明の１以上の実施形態（第１のサーバ・メモリ実施形態）によれば、サーバ１１０は、システム１００の１以上のデータを保存するための１以上のメモリを有する任意の適切な演算装置であり得る。好ましくは、サーバ１１０は、カメラ１１５から受け取った、捉えられた画像フレーム５の周期的バッファを保存するための第１のメモリ１１０ａと、第１のメモリ１１０ａから取り込まれた複数の画像フレーム５を保存するための第２のメモリ１１０ｂとを備える。
【００５１】
本発明の１以上の実施形態（第２のサーバ・メモリ実施形態）によれば、それぞれのサーバ１１０は、いずれも好ましくはランダムアクセスメモリである少なくとも２つの第１のメモリ１１０ａと、いずれも好ましくはソリッドステートドライブである１つ以上の第２のメモリ１１０ｂとを含む任意の適切な演算装置であり得る。第１のメモリ１１０ａは、予め定められた量の画像データ、たとえば生画像ファイルフォーマットの１分の画像データを、周期的に、たとえば先入れ先出し方式で保存する。取り込み関連のコマンド、たとえば取り込み開始コマンド１０６（後述）が発生すると、サーバ１１０は、画像データを１以上の第２のメモリ１１０ｂに転送する。他の第１のメモリ１１０ａは、本明細書に記載されているように、セグメント化、再構成、コンフィギュレーション、およびレンダリングのために用いることができる。
【００５２】
本発明の１以上の実施形態によれば、サーバ１１０は、１つの第１のメモリ１１０ａが生画像ファイルフォーマットの画像データを１以上の第２メモリ１１０ｂに連続的に書き込み、すなわちストリーミングするように構成することもできる。他の第１のメモリ１１０ａは、本明細書に記載されているように、セグメント化、再構成、コンフィギュレーション、およびレンダリングのために用いることができる。
【００５３】
本発明の１以上の実施形態によれば、それぞれのカメラ１１５は、そのカメラ専用の１つのサーバ１１０とともに動作可能である。すなわち、それぞれのカメラ１１５は、そのカメラ１１５専用のサーバ１１０と一対一の関係にある。有利な点として、１つのカメラと１つのサーバが一対一の関係にあることにより、帯域幅チョークポイントなどの１以上のネットワークの問題を回避するか、または処理チョークポイントを回避する、バランスの取れたネットワークアーキテクチャが可能となる。しかし、サーバ１１０は、たとえばＲＡＩＤ構成サーバのような複数のデータアクセス可能メモリを備える中央データサーバとして構成してもよい。
【００５４】
カメラマネージャ１０６は、サーバ１１０、カメラ１１５、および通信リング１２０をモニタリングし、制御するべくコントローラ１０５上で実行される。カメラマネージャ１０６は、物理的演算装置としてコントローラ１０５内で具現化されるかまたはコントローラ１０５と結合されていてもよいが、コントローラ１０５において実行されるソフトウェアであることが好ましく、これにより１以上の機能の追加を容易にできる。
【００５５】
カメラマネージャ１０６は、任意の適切なインタフェースを備えることができるが、好ましくは、ユーザが容易かつ効率的にアクション、映像データ、または他の情報を選択できるグラフィカル・ユーザインタフェースからなるか、あるいは備えることが好ましい。グラフィカル・ユーザインタフェース内に、カメラマネージャ１０６内であるがグラフィカル・ユーザインタフェースの外に、またはカメラマネージャとは別体として、カメラマネージャはさらに、カメラ１１５とは別体のカメラからのイベント１０を観察しおよび／または追跡するための；１以上のカメラ１１５で捉えられた１以上の画像を選択的に観察するための；および／または、１以上のカメラ１１５、サーバ１１０、および／または通信リンク１２０の１以上の状態インジケータを選択的に観察するための、１以上の現実または仮想のモニタまたはスクリーンを備える。
【００５６】
カメラマネージャ１０６は、イベント空間１５の同期画像フレームのキャプチャを開始するための画像化トリガ１０７をも備えていてもよい。画像化トリガ１０７は、システム１００内に物理的演算装置として具現化されていてもよく、あるいは任意の他の演算装置と結合されていてもよいが、コントローラ１０５内で実行されるソフトウェアであることが好ましく、これにより、１以上の機能の追加を容易にできる。画像化トリガ１０７の１以上の状態インジケータは、グラフィカル・ユーザインタフェース内に、またはカメラマネージャ１０６内であるがグラフィカル・ユーザインタフェースの外に組み込まれるか、またはそれらとは別体の１以上のディスプレイ１０５として組み込まれていてもよい。
【００５７】
画像化トリガ１０７は、１以上の規則的な間隔で周期的タイミング信号を生成し、かつ１以上のカメラ１１５に対して命令セットに含めて周期的信号を発し、その命令セットを受信したすべてのカメラ１１５の間で同期して画像フレーム５を取り込むためのタイマ１０８を備えている。
【００５８】
タイマ１０８は、任意の適切なタイマであり得るが、好ましくは、毎秒１以上の信号を生成することができるロジックコントローラタイマ、デジタルチップタイマ、またはクロック発振器であり、命令セットに含めて周期的信号を発することができる１以上の適切な送信器を備えていてもよい。タイマ１０８は、命令セットにおいて１以上のタイミング信号に伴う唯一のおよび／または連続的な識別子を生成することができる。したがって、たとえば、命令セットが、タイミング信号、画像キャプチャすなわち画像フレーム５を生成させるためのそれぞれのカメラ１１５への１以上の命令、および特定のタイミング信号に関連する唯一のおよび／または連続的な識別子を含み得る。しかし、命令セットは、信号発生の間で変化しないパルス信号のみからなるものでもよく、その場合、カメラ１１５は画像フレーム５を自動的に捉える。
【００５９】
フレーム取り込みモジュール１０９が、カメラマネージャ１０６および画像化トリガ１０７に関連づけられており、フレーム取り込みモジュール１０９は、１以上の、好ましくはすべてのサーバ１１０上で実行されるソフトウェアであり、カメラ１１５によって捉えられた画像フレーム５をサーバ１１０の１以上のメモリ内に保存する。
【００６０】
複数のカメラのそれぞれのカメラ１１５は、異なるタイプのカメラでもよいが、好ましくは、すべてのカメラ１１５は同じタイプのカメラで、任意の適切なデジタル画像装置を備える。カメラ１１５は、固定焦点のまたは調節可能な焦点を有するレンズと、１以上の画像データ６を取得するための任意の解像度を有する画像センサと、画像センサと相互作用し、任意の適切なフォーマットで任意のメモリストレージに保存される画像フレーム５の形式で画像データ６を、１秒間あたり複数回捉えることができる演算装置と、カメラ１１５とコントローラ１０５および／またはサーバ１１０との間の通信を確立し、維持するための任意の適切な通信インタフェースとを備える。
【００６１】
好ましくは、画像フレーム５は、画像センサのデジタルデータ、すなわち「生（ＲＡＷ）の」ピクセル情報またはデジタルネガを保存する生（ＲＡＷ）画像ファイルフォーマットで保存される。限定しないが、画像フレーム５の解像度は変えられるものであり、３８４０×２１６０から５１２０×３０７２の範囲で変化できることが好ましい。なお、ここでの解像度は、幅ピクセル×高さピクセルである。
【００６２】
本発明の１以上の実施形態によれば、カメラ１１５は４Ｋカメラでもよく、４Ｋカメラは、一般的に約４０００ピクセルの水平解像度を有するカメラとして当分野で知られている。たとえば、４Ｋカメラとしてのカメラ１１５は、４Ｋ産業の標準により、１９：１０または１．９：１のアスペクト比で４０９６×２１６０の解像度を有する超高精細カメラであることが好ましく、８メガピクセルの画像センサを有している。あるいは、９メガピクセルの画像センサを用いて４０９６×２３０４の解像度を有することもできる。本発明の１以上の実施形態によれば、カメラ１１５として５Ｋカメラを用いることもできる。
【００６３】
本発明の１以上の実施形態によれば、カメラ１１５は５Ｋカメラであり、５Ｋカメラらは、一般的に１５メガピクセルの画像センサを用いて５１２０×３０７２の解像度を有するカメラとして当分野で知られている。代替的にまたは追加的に、カメラ１１５は、１秒間あたり３０、４０、または５０フレームで５１２０×３０７２の解像度を生み出す１６メガピクセルを有する画像センサを備える５Ｋカメラであることが好ましい。
【００６４】
カメラ１１５には、既知のまたは今後発明される任意の適切な入力センサを有する任意の適切なカメラを用いることができる。カメラセンサのサイズおよび解像度は、年々増加しているので、カメラ１１５としては、最も進歩した市販のカメラを用いることが期待される。
【００６５】
カメラ１１５は、好ましくはイベント空間１５の外側で好ましくは固定位置に配置され、イベント空間１５の１以上の部分（および、任意選択により、周囲１６の１以上の部分）に固定的に向けられた視野１１７を有している。本発明の１以上の実施形態によれば、カメラ１１５は可動式、すなわち可変視野１１７を有するものでもよい。
【００６６】
カメラ位置１１６において視野１１７を有する場合、カメラ１１５は、少なくとも１以上の画像フレーム５を捉え、この画像フレームはイベント空間１５の、さらに任意選択で、周囲１６の画像データを含む。イベント空間１５の少なくとも一部、および任意選択で、背景の少なくとも一部が、少なくとも２つのカメラによって捉えられるが、それぞれのカメラ１１５は、イベント空間１５の同じ部分および／または周囲１６の同じ部分に対して、異なる別の視野１１７を有する。これは、好ましくは、図２ｃにおいて選択されたカメラ１１５について示されているように、異なる別のカメラ位置１１６にそれぞれのカメラ１１５を配置することによって達成される。異なるカメラ１１５からの複数の同期画像フレーム５は、画像フレームセット７である。１つの画像フレームセット７は、時間的に次の来る別の画像フレームセット７に「隣接」することができる。
【００６７】
本発明の１以上の好ましい実施形態によれば、複数のカメラ１１５のそれぞれのカメラ１１５は、１秒間あたり少なくとも３０フレームを捉えられる５１２０×３０７２の解像度を有する１６メガピクセルの画像センサを備える５Ｋカメラである。それぞれのカメラ１１５は、固定化された不動のカメラ位置１１６に配置され、イベント空間１５の同じ部分および／または周囲１６の同じ部分の視野１１７を有し、イベント空間１５の、また任意選択により周囲１６の少なくとも１以上の画像フレーム５を捉える。
【００６８】
通信リンク１２０は、１以上のカメラ１１５を、コントローラ１０５および／または１以上のサーバ１１０と動作可能に接続された状態とする任意の適切な装置である。通信リンク１２０は、ビデオ画像を必要な帯域幅で転送可能な任意の適切な媒体、たとえば限定しないが、同軸ケーブル、無線通信装置、赤外線通信装置、および／またはそれらの組み合わせである。通信リンク１２０は、通信リンクの範囲を拡大する１以上の増幅装置１２０ａと、１以上の通信リンク１２０を互いに接続する１以上のノード１２０ｂ、特に１以上のタイミング信号を発するべく戦略的に配置された主ノードとを備える。
【００６９】
本発明の１以上の好ましい実施形態によれば、それぞれのカメラ１１５は、ファイバエクステンダである増幅装置１２０ａを介して対応するサーバ１１０に接続される。
【００７０】
図示されていないが、電力は、必要および／または要望に応じて、１以上の電源からシステム１００の任意の部分に容易に供給することができる。
【００７１】
必要かつ望ましい幾何学的測定値、たとえば前記周囲の１以上の基準高さデータの取得などは、直接の測定および／または任意の他の適切な手段によって得ることができる。
【００７２】
システム１００の１以上の構成要素の間、特に１以上のカメラ１１５との通信は、あらゆる適切な通信プロトコルを用いて達成することができる。通信プロトコルとしては、ＡＩＡ（Ａｕｔｏｍａｔｅｄ  Ｉｍａｇｉｎｇ  Ａｓｓｏｃｉａｔｉｏｎ）によるカメラ  Ｌｉｎｋ（登録商標）標準を挙げることができ、より具体的には、２０１１年１１月に公表されたカメラＬｉｎｋ（登録商標）２．０標準であり得る。
【００７３】
「イベント前（プリ・イベント）」
「初期セットアップ」
図４は、本発明の１以上の実施形態による初期セットアップ方法の概略図である。
【００７４】
本発明の１以上の実施形態によれば、１以上のユーザがシステム１００の初期セットアップ方法２００を実施する。初期セットアップ方法は、１以上のステップ２０２〜２０８を含む。
【００７５】
初期セットアップ方法は、イベント空間１５で生じているイベント１０を、新規ビューからのコンフィギュレーションおよびレンダリングのために捉える必要があるときに実施される。イベント１０は、物理的空間で生じているあらゆる適切なイベントである。イベント１０には、コンピュータ生成画像（ＣＧＩ）、たとえばディスプレイ装置のスクリーン上に示されているＣＧＩが含まれるが、イベント１０自体はＣＧＩではない。この点に関し、イベント１０は、少なくとも１つの形を有しボリュームがある物体、すなわち３次元空間を占める物理的実体である点でＣＧＩから区別される。
【００７６】
しかしながら、新規ビューは、コンピュータ生成画像も含むことがきる。ただし、背景のイベント前におけるボリュームの再構成、および、イベントにおける前景自体そのままのボリュームの再構成はいずれも、ＣＧＩではなく、イベント１０の物質的世界に基づいた画像のフォトリアルなレンダリングである。
【００７７】
イベント空間１５は、任意の適切な空間である。たとえば、イベント１０は、スタジアムのグラウンドといったイベント空間１５で行われる、複数のプレーヤを含むフットボール、野球、サッカーの試合などを挙げることができる。その他、イベント１０の例として、室内ヨガスタジオのイベント空間１５で生ずるヨガ指導、病院の手術室で行われる手術、さらには、街中の広場などのイベント空間１５における一般歩行者の往来なども挙げることができる。
【００７８】
初期セットアップ方法２００は一度だけ実施される場合もある。たとえば、イベント空間１５がヨガスタジオであり、通常のレッスンの間にヨガの指導者の姿勢を示すために用いられること想定されている場合である。しかし、初期セットアップ方法２００は、複数回実施される場合もある。たとえば、スタジアムで複数種のスポーツイベント（イベント）が開催される場合であって、イベント空間１５であるグラウンドが、スポーツの種類に応じて変わる場合である。
【００７９】
初期セットアップ方法２００は、好ましくは、ステップ２０２から開始され、システム１００によって捉えられ再構成される１以上のイベントが生じるイベント空間１５が、ユーザにより定義すなわち決定される。イベント空間１５は、規則的な３次元の幾何学的形状であることが好ましいが、任意の使いやすい３次元形状であってもよい。
【００８０】
ステップ２０２において、捉えられる周囲１６の範囲を、ユーザが定義すなわち決定してもよい。周囲１６は、好ましくは、イベント空間１５を囲む1以上の周囲的な（マージンのような）３次元空間あるいは３次元領域であり、イベント１０の再構成に含まれることが必要とされるか、あるいは望ましい。周囲１６は、任意の使いやすい形状を採ることができ、これらには限定されないが、規則的なまたは不規則な２次元または３次元の幾何学的形状である。
【００８１】
周囲１６が１以上の静的な要素を含むかまたはそれからなるのに対して、前景１７が１以上の動的すなわち運動する要素を含むかまたはそれからなる点で、周囲１６は、前景１７と異なる。限定はされないが、通常、周囲１６は、イベント空間１５における実質的に静的な要素であり、シート、フロア、テーブル、ベンチ、グラウンド、サッカー場でのマーキングのようなグラウンド・マーキング、建築物、静的または動的な広告、噴水、審判の椅子、屋根のジョイスト、屋根、照明、シャンデリア、チームのダグアウト、フラグ、ゴール、ゴールポストなどが挙げられる。
【００８２】
たとえば、イベント１０がバレーボールの試合などのスポーツイベントである場合、イベント空間１５は、試合の競技場全体または一部、すなわち、ピッチと競技場に１つ以上の間隔を結ぶように延びるタッチラインの一部とを包囲する３次元空間として定義される。イベント空間１５は、ピッチ自体の表面を含む必要はなく、ネット上でボレーが行われると予測される中央ではより高いところで、パスが対象となる他の領域ではより低いところで、形状が切りとられる。周囲１６は、観客席エリア、コーチエリア、および／またはピッチといった部分を１つ以上含む。
【００８３】
しかし、対象物が周囲１６の一部であるが、あとで前景の一部になることもある。たとえば、シートは、通常、スポーツイベントの初めには周囲の一部である。しかしながら、スポーツイベントのある時点で、怒ったプレーヤまたはコーチがシートを掴んでスポーツイベントのフィールド内に投げ込む場合がある。こうしたイベントは、システム１００においては関心事となるので、投げ込まれている状態にあるシートは、周囲１６としてではなく、前景１７の一部として扱われ、前景１７の新規ビュー画像に含められる。
【００８４】
ステップ２０４では、ユーザは、イベント空間１５および／または周囲１６を捉えるために必要とされる、または望ましいカメラ１１５の数を決定する。次に、ユーザは、それぞれのカメラ１１５について、少なくとも１つのカメラ位置１１６を決定する。カメラ位置の選択およびカメラの物理的な取り付けの後、ユーザは、イベント空間１５および／または周囲１６の１以上の部分を捉える視野１１７を有するように、カメラ１１５の向きを決定する。好ましくは、カメラは、イベント空間１５において目立たない位置に配置される。たとえば、イベント空間１５がスポーツイベントである場合、スタジアムのインフラ構造物、たとえば梁または柱の上にカメラ位置１１６が設定され、競技フィールドが視野１１７となる。
【００８５】
前景要素を効果的に捉えるために、好ましくは、前景要素は、互いに隣接して連続的に配置された少なくとも３台のカメラによって捉えられる、すなわち前景１７の特定の要素が、互いに隣接する連続的なカメラ位置１１６に配置された３台のカメラによって捉えられることが好ましい。対照的に、周囲１６の特定の要素は、１台のカメラ１１５だけによって捉えられてもよいが（この場合、手動によってのみ、この領域にあるボリュームの再構成が可能となる）、２台以上のカメラ１１５が周囲１６の特定の要素を画像化することが好ましい。
【００８６】
ステップ２０４では、イベント空間に近接する構造物の物理的な限界などの１以上の制約が存在した場合には、イベント空間１５および／または周囲１６を再定義することが可能である。
【００８７】
ステップ２０６では、任意選択的に、１以上のカメラ１１５に組み込まれた全地球測位システム（ＧＰＳ）受信器からのデータを用いて、すべてのカメラ１１５についてカメラ位置データ１１６ａが決定される。
【００８８】
カメラ位置データ１１６ａには、すべてのカメラ１１５に共通に選択される、絶対的基準点または局所的基準点である基準点に対する、それぞれのカメラ１１５（より好ましくは、カメラ１１５の画像センサの中心点）ごとの空間位置データが含まれる。たとえば、空間位置データは、すべてのカメラ１１５について選択された基準点に対する、Ｘ、Ｙ、およびＺ座標で表すことができる。
【００８９】
カメラ位置データ１１６ａには、それぞれのカメラ（より好ましくは、カメラ１１５の画像センサの中心点）ごとの撮像方向データがさらに含まれる。撮像方向データは、カメラ（または画像センサ）の空間位置データに関連付けられる。たとえば、空間位置データにおいては、撮像方向はユークリッド幾何学的なラインとして記述される。しかしながら、撮像方向データは、カメラ（または画像センサ）の空間位置に対する、オイラー角またはテイト・ブライアン角、すなわちヨー、ピッチ、およびロールとして記述することもできる。カメラ位置データ１１６ａは、サーバ１１０の１以上のメモリ１１０ｃまたは他の任意の適切なストレージに保存され、かつ任意の適切なデータフォームで保存される。たとえば、カメラ位置データ１１６ａは、センサ、ラスタ、および深度情報などのカメラ１１５に関するデータとともに、カメラ投影マトリックスすなわちカメラマトリックス２３３として保存される。
【００９０】
好ましくは、１回以上の検討に基づいて、カメラ１１５が配置され、および／または、カメラ位置１１６が選択される。連続したカメラの間でイベント空間１５すなわちカバー領域の中心点を向けて生成される三角形上に、３０度以下の絶対座標系（すなわち３次元の）円弧が存在するように、カメラ１１５が配置、および／または、カメラ位置１１６が選択されるべきである。物理的に隣接するカメラ１１５間と、「再構成されるべき前景」とみなされた最近接点との間に生成される三角形上に、３０度以下の絶対座標系（すなわち３次元の）円弧が存在するように、カメラ１１５が配置、および／または、カメラ位置１１６が選択されるべきである。前景１７とみなされたそれぞれのイベント空間１５すなわちカバー領域は、少なくとも３つの連続したカメラによって画像化されるべきである。
【００９１】
たとえば、スポーツイベントの場合、フィールドの中心を向く２つのカメラ１１５の間の角度は、２０度以下（オクルージョンをうまく処理するためには１６度が好ましい）であり、これらのカメラに関してフィールドの最も近接する縁部を向く２つのカメラの間は３０度以下である。
【００９２】
本発明の１以上の実施形態によれば、カメラ位置データ１１６ａは、後述するように、１以上の画像フレーム５から決定される
【００９３】
ステップ２０８では、ユーザが、コントローラ１０５および／またはサーバ１１０の適切な物理的位置を決定し、コントローラおよびサーバをそこに配置する。次に、ユーザは、１以上の通信リンク１２０を介して、カメラ１１５をコントローラ１０５および／またはサーバ１１０に接続する。
【００９４】
本発明の１以上の実施形態によれば、ステップ２０８は、新たに設けられた通信リンク１２０および／または既存の通信ネットワーク（インターネット、ＲＳ２３２、ＬＡＮ、ＷＡＮなど）を介して、１以上のカメラ１１５を、任意の適切な位置にすでに配置されたコントローラ１０５および／またはサーバ１１０に接続することによって実施することができる。
【００９５】
本発明の１以上の実施形態によれば、ステップ２０４、２０６、および２０８は、ステップ２０２の前に実施してもよい。したがって、ステップ２０２は、１以上のカメラ１１５から受け取った撮像データに基づいて、捉えられるべきイベント空間１５および／または周囲１６を、コントローラ１０５により自動的に決定することもできる。たとえば、システム１００は、セキュリティを目的に、広場などのバブリックスペースにおいて発生する活動を特定するために用いることができる。この場合、ステップ２０４、２０６、および２０８において、通常のインフラのアップグレードによって、カメラ１１５がすでに配置されていたり、その測量データを使用することにより、カメラ位置データ１１６ａが、すでに決定されて保存されていたりする。そして、１以上のカメラ１１５を用いて、パブリックスペースにおける活動すなわちイベント１０が発生する場所を決定することにより、イベント空間１５が活動の発生に関連づけて定められる。なお、処理能力やネットワーク容量の節約、および／または他の任意の適切な理由から、一連のステップにおいて、すべてのカメラ１１５が用いられるわけではない。
【００９６】
「イベント前カメラ較正および周囲モデリング」
図５は、本発明の１以上の実施形態による、較正および周囲モデリング（ＣＥＭ）方法の概略図である。
【００９７】
本発明の１以上の実施形態によれば、イベント１０の発生する前、すなわち「イベント前」に、ユーザは、システム１００の較正および周囲モデリング（ＣＥＭ）モジュール２２１を利用して、ＣＥＭ方法２２０を実行する。このＣＥＭ方法２２０は、１以上のステップ２２２〜２３９を含み、ステップ２２２〜２３９の内の１以上のステップは、本明細書に記載された番号順に行われることが好ましい。
【００９８】
ＣＥＭ方法２２０は、好ましくはＣＥＭモジュール２２１上で実行され、イベント１０に関連する周囲１６のその後の再構成において使用される周囲モデル２２３を生成する。周囲モデル２２３は、背景３Ｄモデルまたは背景データ表現であると解釈することができる。ＣＥＭ方法２２０は、イベント１０の画像フレーム５を捉える前に実施されることが好ましい。ＣＥＭモジュール２２１は、システム１００における、あるいは他の任意の演算装置に関連づけられた物理的演算装置でもよいが、コントローラ１０５において実行されるソフトウェアであることが好ましく、これにより、１以上の機能の追加を容易にできる。
【００９９】
なお、好ましくは、前記周囲は、イベント前にモデル化され、主として活動を構成する前景は、イベントの間にモデル化される。
【０１００】
ＣＥＭ方法２２０は、それぞれのカメラ１１５について、カメラ位置データ１１６を、他のカメラ位置との関係から決定し、その情報を、後述するカメラデータベース５２に保存し、バンドル調整後に「存続」できる特徴に基づいて、疎な周囲モデルを展開する。特に、この較正方法は、画像フレームを取り込み、さらに、特にデモザイクして色画像ファイルとすることにより、カメラ同士の間でマッチングされる特徴を得ている。代替的に、生画像（ＲＡＷ画像）を用いて、デモザイク後に、カメラ同士の間でマッチングされる特徴を得ることもできる。
【０１０１】
ステップ２２２では、初期セットアップ方法２００を実施した後に、ユーザはＣＥＭモジュール２２１を開始して、カメラから同期画像フレーム５の少なくとも１つの画像フレームセット７を取り込んでデータベース５０に入れ、周囲１６を捉える。
【０１０２】
ＣＥＭモジュール２２１は、任意の適切な方法を用いて、カメラ１１５から同期画像フレーム５を取得してデータベース５０に保存することができる。しかしながら、画像取得方法２４０の実行に実質的に類似した方法を使用することが好ましい。この場合、イベント１０の発生なく、すなわちイベント前に使用して、周囲１６、特にイベント１０が生じることになるグラウンドの表面が容易に認識されるようにすることが好ましい。
【０１０３】
ステップ２２４では、取り込みフレーム４０のそれぞれが、ＣＥＭモジュール２２１により、当分野で知られた１以上のデモザイク処理アルゴリズムに従って、デモザイクされ、処理されることにより、生画像ファイルフォーマットからフォーマッティングされた画像ファイルにされ、画像データベース５０に保存される。たとえば、取り込みフレーム４０のそれぞれは、生画像ファイルのデモザイクにより、ｔｉｆｆ画像ファイルまたはｊｐｇ画像ファイルの処理済みフレーム４０ａに変換される。
【０１０４】
ステップ２２６では、ＣＥＭモジュール２２１は、特徴抽出方法２２６ａを実行する。特徴抽出方法２２６ａは、当分野で知られた１以上のアルゴリズムを用いて、それぞれの処理済みフレーム４０ａから１以上の特徴５７を抽出し、特徴５７を、その処理済みフレーム４０ａに関連づけられた特徴データベース５８に保存する。
【０１０５】
特徴は、処理済みフレーム４０ａ内において、１以上の隣接するピクセルより目立つピクセルまたはピクセルセットである。通常、ピクセルは、処理済み画像４０ａに関する画像情報である。この画像情報は、立体または非立体のエッジライン、形状、または外形である。特に、特徴５７は、周囲１６に関連する画像情報を示す。
【０１０６】
特徴データベース５８は、特徴５７についてのあらゆる有用な情報を含むことができるが、好ましくは、処理済みフレーム４０ａ内の特徴の２Ｄ座標、処理済みフレーム４０ａの参照識別子（好ましくは処理済みフレーム４０ａに関連する画像フレーム５の同一のまたは異なる参照識別子である）、スケール、方向、テンプレート、スケール不変特徴変換（ＳＩＦＴ）アルゴリズムの使用に関連する１以上の特徴パラメータ、固有値、コンフィグレーションおよびレンダリングまたはバンドル調整における特徴の使用頻度、１以上の特徴５７の使用を示す１以上のタイムスタンプ、および／または、同じ特徴５７がみられる処理済みフレーム４０ａの参照識別子のリストを含む。
【０１０７】
ステップ２２８において、ＣＥＭモジュール２２１は、バンドル調整２８ａを実施する。それぞれの処理済みフレーム４０ａの投影画は、当分野で知られているようにバンドル調整において他の処理済みフレーム４０ａと同時に、ＣＥＭモジュール２２１によって再調整され、仮想３Ｄ空間５９におけるすべての処理済みフレームの自己較正を実質的に達成する。バンドル調整は、好ましくは、すべての処理済みフレーム４０ａ、たとえばカメラ１１５の間の不一致を分散することによって、風、振動、隣接移動などによる意図しない移動からカメラ１１５の位置を再調整する。また、バンドル調整は、カメラ位置および周囲モデルの「構造」すなわちマトリックスを決定するための基礎を、他のモジュールとの連携により、提供する。この周囲モデルのマトリックスは、疎なマトリックスであり、これを密なマトリックスにするためには、マニュアルで増強する必要がある。なお、疎と密は、当分野で一般的に知られている用語と同義で用いられる。
【０１０８】
具体的には、「イベント前較正」はバンドル調整を介して達成され、「ライブイベント安定化／レジスト（重ね調整）」は、たとえばレーベンバーグ・マーカート法を用いた安定化を介して行われる。
【０１０９】
好ましくは、バンドル調整のための特徴マッチングは、少なくとも２つの処理済みフレーム４０ａの１以上の特徴５７を仮想３Ｄ空間５９に投影し、１以上の特徴５７の３Ｄ位置を、少なくとも２つの処理済みフレーム４０の投影における同一の１以上の特徴５７のマッチングに基づき、較正することによって行われる。より具体的には、複数の処理済みフレーム４０ａの特徴が、仮想３Ｄ空間５９においてマッチングされる。
【０１１０】
ステップ２３０では、ＣＥＭモジュール２２１が、仮想３Ｄ空間５９に対するバンドル調整２２８ａの幾何学的結果から、それぞれの処理済みフレーム４０ａの投影における正規化された原点すなわち投影位置２３０ａを得る。正規化された原点は実際の原点とは異なるが、これは前記調整が、それぞれのカメラの実際の誤差を決定するのではなく、当分野で知られた１以上のアルゴリズムに従って、それぞれの投影の原点に関する誤差を較正すなわち分散するためである。さらに、投影位置２３０ａは、実質的に画像センサの原点と近いので、ＣＥＭモジュール２２１は、少なくともそれぞれのカメラ１１５のカメラ位置を決定して、カメラ１１５からの画像データ６を３Ｄ空間５９における対応する投影位置２３０ａと相互に関連づける。
【０１１１】
ここで、投影位置２３０ａは、投影位置データ２３０ｂを含む。投影位置データ２３０ｂは、基準点に対する、それぞれのカメラ１１５（より好ましくは、カメラ１１５の画像センサの中心点）用の３Ｄ空間５９における空間位置データを含む。基準点は、すべてのカメラに共通に選択された絶対的基準点または局所的基準点である。たとえば、空間位置データは、すべてのカメラ１１５に対して選択された基準点に対する、Ｘ、Ｙ、およびＺ座標で表される。
【０１１２】
投影位置データ２３０ｂは、それぞれのカメラ１１５（より好ましくは、カメラ１１５の画像センサの中心点）の撮像方向データをさらに含む。撮像方向データは、カメラ１１５（または画像センサ）の空間位置データに対するものであり、たとえば、空間位置データにおいて撮像方向を記述するユークリッド幾何学的ラインである。しかし、撮像方向データは、カメラ１１５（または画像センサ）の空間的位置の対するオイラー角またはテイト・ブライアン角、すなわち、ヨー角、ピッチ角、およびロール角として記述することもできる。
【０１１３】
ステップ２３２では、ＣＥＭモジュール２２１は、投影位置データ２３０ｂを用いて、１以上のカメラマトリックス２３３を生成し、それぞれのカメラ１１５について、処理済みフレーム４０ａの２Ｄ位置からの画像データ６を、３Ｄ空間５９における３Ｄ位置へマッピングする。
【０１１４】
カメラマトリックス２３３は、安定化方法３０８において、意図しないカメラの動きを補償するための別のステップにおいても、用いることができる。すなわち、それぞれのカメラマトリックス２３３は、カメラ１１５の位置（すなわちカメラ位置データ１１６ａ）を定義し、その位置または位置データは、カメラ１１５が固定されている上部構造に影響を与える風や人の往来などの種々の要因により、カメラ１１５が動いたときに、安定化方法３０８において再定義される。
【０１１５】
ステップ２３４において、カメラマトリックス２３３が計算された後、ＣＥＭモジュール２２１は、物理的に隣接するカメラ１１５がカメラ位置リスト２３５においても隣接するように、カメラ１１５を投影位置データ２３０ｂに基づいて順序づけして、カメラ位置リスト２３５にする。
【０１１６】
ステップ２３６では、ＣＥＭモジュール２２１は、好ましくは特徴抽出方法２２６ａに実質的に類似した特徴抽出方法を繰り返して、ステップ２２６で見出された特徴５７に近接する、さらなる特徴５７を抽出し、保存する。カメラ１１５の較正のために、いくつかの目立つ特徴５７のみが必要とされるのであれば、システムをより迅速にオンラインで利用可能にするための負担および処理時間を節約できるため、有利である。
【０１１７】
しかしながら、本発明の１以上の実施形態によれば、具体的には、目立つ特徴５７が抽出された後、初めに見出された特徴に近接するが、１以上の抽出アルゴリズムにおいて信頼度の低かったさらなる特徴５７が抽出され、特徴データベース５８に保存される。ＣＥＭモジュール２２１は、繰り返し処理直前あるいはいずれかの繰り返し処理において発見された特徴５７に近接する特徴を抽出し、保存する、特徴抽出方法の実行を継続する。それぞれの繰り返し処理は、使用される１以上の抽出アルゴリズムに関して統計的に低い信頼度を有する。
【０１１８】
ステップ２３８では、ＣＥＭモジュール２２１は、当分野で知られているような近接度、疎らさ、類似性の原理を用いて、特徴データベース５８における異常値を取り除き、特徴５７が３Ｄ空間５９に投影されて３Ｄデータ表現６０を生成するときに、誤った特徴５７が減らされるようにする。
【０１１９】
ここで、３Ｄデータ表現６０は、任意の適切なフォーマット、たとえばデータベースまたはポイントリストである。本発明の１以上の実施形態によれば、３Ｄデータ表現６０は３Ｄポイントクラウド、および／または。３Ｄポイントクラウドデータベースである。しかしながら、３Ｄデータ表現６０は、規則的なまたは不規則な３Ｄ幾何学的図形の点（ポイント）または面（ファセット）による１種以上の表現でもよく、１以上のそのような３Ｄ幾何学的図形および／または１以上のそのような３Ｄ幾何学的図形のデータベースでもよい。
【０１２０】
本発明の１以上の実施形態によれば、好ましくは、四分位範囲法が使用される。この方法では、３Ｄデータポイントのｘ、ｙ、またはｚ座標が上側および下側四分位範囲の外側にある場合、その３Ｄデータポイントは除去される。すなわち、リスト（Ｑ１は第１四分位数で、Ｑ３は第３四分位数）内の任意の座標αを有するデータポイントについては、もしそれが次の条件のうちの１つを満たす場合には、そのデータポイントが除去される。
α＜Ｑ１−（Ｑ３−Ｑ１）×１．５、または、
α＞Ｑ３−（Ｑ３−Ｑ１）×１．５
【０１２１】
ステップ２３９では、ＣＥＭモジュール２２１は、周囲１６の１以上のモデル２２３を構築する。それぞれの周囲モデル２２３は、少なくとも３Ｄデータ表現６０の部分に適合した１以上のポリゴンメッシュを含み、そのモデルを、たとえば、データベースまたは任意の適切なフォーマットからなるモデルストレージ２２５に保存する。ここで、周囲１６の全体は、１つのポリゴンメッシュを含むわずか１つの周囲モデル２２３、あるいは、それぞれのモデルが１以上のポリゴンメッシュモデルを含む複数のモデル２２３からなる。しかしながら、周囲１６の一部は、それぞれのモデルが１以上のポリゴンメッシュモデルを含む１以上のモデル２２３からなる。追加的または代替的に、メッシュを使用するのでなく、ポイントクラウドまたは３Ｄデータ表現を用いることもできる。
【０１２２】
代替的または追加的に、マスクモデル２４１が、ＣＡＤ（コンピュータ支援設計または製図）を用いて構築される。周囲１６がよく分かっている場合、たとえば、会議室またはダンススタジオである場合、周囲１６は、建築データや設計データを利用することによって非常に正確かつ迅速に表現することができる。
【０１２３】
「部分空間分割」
図６は、本発明の１以上の実施形態による部分空間分割方法の概略図である。
【０１２４】
本発明の１以上の実施形態によれば、イベント１０が起こる前、すなわち、「イベント前」において、ユーザはシステム１００の部分空間分割（ＳＤ）モジュール２６１を利用して、部分空間分割（ＳＤ）方法２６０を実行する。この方法は、１以上のステップ２６２〜２７２を含み、それらのうちの１以上のステップは、本明細書に記載された番号順に行われることが好ましい。
【０１２５】
ＳＤ方法２６０は、その後のコンフィギュレーション、すなわちそのイベントの間に使用されるデータベースを作成するためのＳＤモジュール２６１上で実行されることが好ましく、これにより、イベント空間１５内でそのライブイベントが起こっていない周囲の再構成を避けることにより、イベント１０に関連する周囲１６のレンダリングおよび／またはコンフィギュレーションをスピードアップすることができる。したがって、ＳＤ方法２６０は、好ましくは、イベント１０の画像フレーム５を取り込む前にＳＤモジュール２６１によって行われ、その周囲のデータベースまたはデータ表現、たとえば、ランレングス符号化（ＲＬＥ）データベース２６５を生成する。
【０１２６】
ＳＤモジュール２６１は、システム１００内の物理的演算装置、あるいは他の任意の演算装置でもよいが、コントローラ１０５内で実行されるソフトウェアであることが好ましく、これにより、１以上の機能の追加を容易にできる。本発明の１以上の実施形態によれば、キューブプロジェクションが凸であるため、ＳＤ方法２６０は、ランレングス符号化（ＲＬＥ）データベースを記憶フォーマットとして使用することが有利である。
【０１２７】
ＳＤモジュール２６１は、３Ｄモデルを再現するための画像の全画像セットおよび全ピクセルセットを使用する。代替的または追加的に、部分分割方法を実行するＳＤモジュール２６１により、イベント空間１５をより小さい空間に、すなわちキューブなどのサブボリュームに分割してもよい。これにより、再構成のそれぞれのステップを実行する際に、３Ｄ再構成のために、関連するサブボリュームのみが必要とされ、その結果、たとえば、コンフィギュレーション方法４００などのコンフィギュレーションおよびレンダリング方法の前に行われる処理による処理時間を大幅に短縮できる。
【０１２８】
ステップ２６２では、イベント前、すなわち、ユーザによりイベント空間のボリュームが決定され、かつ、ユーザによりＳＤモジュールを含むシステム用のボリュームを定義することを含む、初期セットアップにおいて、ＳＤモジュール２６１は、関連するボリューム、典型的にはイベント空間１５を、その関連するボリュームよりも物理的に小さい複数のサブボリュームに分割する。この時点では、その関連するボリュームは、周囲１６のみを含む、あるいは、周囲１６のみから構成されている。
【０１２９】
ステップ２６４において、カメラ１１５のために、ＳＤモジュール２６１は、それぞれのカメラ１１５からサブボリュームのそれぞれを投影して、それぞれのカメラ１１５に対するサブボリュームマスクのセットを作成する。
【０１３０】
ステップ２６６において、ＳＤモジュール２６１は、それぞれのカメラ１１５からのサブボリュームマスクを対応するカメラ１１５に関連づけられたサーバ１１０の第１メモリ１１０ａに記憶する。
【０１３１】
ステップ２６８において、システム１００によるイベントの記録中に、ＳＤモジュール２６１は、画像フレームごとのサブボリュームのそれぞれに対するイベント１０の画像マスクをカメラ１１５ごとに作成する。
【０１３２】
ステップ２７０において、ＳＤモジュール２６１は、その画像マスクをそれぞれのサブボリュームマスクと比較し、その比較結果から、抽出された特徴５７が他のサブボリュームと重なっているか他のサブボリュームと重なっていないかを判定する。そして、ＳＤモジュール２６１は、それぞれの特徴を追加または保存して、ステップ２６８で記録された画像フレームから３Ｄデータ表現６０を切りとるための、合成部分空間分割（ＳＤ）マスク２６３を作成する。
【０１３３】
ステップ２７２において、ＳＤモジュール２６１は、すべてのカメラ１１５からの特徴５７を有するサブボリュームのセットを、好ましくはすべてのデータを含むマトリックスを有するデータベースに記憶する。ここで、サブボリューム、すなわちキューブのカメラ上への投影は、常に単一の凸状小塊となる。２ライン・ランレングス符号化（ＲＬＥ）データベース２６５を使えば、その記述は非常に容易である。同じカメラから見た、いくつかの隣接サブボリュームは、単一のレンダ上に集められるため、３Ｄ再構成をより効率的なものにできる。「ポジティブ表現」がどれだけ前景の存在を構成するかを解釈することによって、ノイズ、クラッタ、並びに外側および内側の背景を除去するために、フィルファクタを使用できる。たとえば、キューブの特定のラスタ化されたファセットにおけるポジティブ（白色）ピクセルの０．０５％フィルファクタのファクタは前景を構成するが、それより少ないものはノイズと判定される。
【０１３４】
「記録」
「画像獲得」
図７は、本発明の１以上の実施形態による画像獲得方法の概略図である。図８は、本発明の１以上の実施形態による画像獲得方法のタイミングの概略図である。
【０１３５】
本発明の１以上の実施形態によれば、一人または複数のユーザは、システム１００を利用して、１以上のステップ２４２〜２４８を含む画像獲得方法２４０を実行する。
【０１３６】
画像獲得方法２４０は、カメラ１１５を使用して、イベント空間１５内のイベント１０および／または周囲１６から得た１以上の同期画像フレーム５を獲得するために使用される。画像獲得方法２４０は、必ずしも初期セットアップ方法の後に行う必要はなく、イベント空間１５および／または周囲１６の画像フレームが要求される場合には、イベント前を含む適時に任意に実行することができる。
【０１３７】
ステップ２４２において、必要に応じて、ユーザは、１以上のハードウェアに電力を供給するとともに、１以上のソフトウェアを起動して、画像データシステム１００を動作状態に置く。
【０１３８】
ステップ２４４において、ユーザは、システム１００を撮像モードにする。このモードでは、システム１００は、１以上のカメラ１１５からの画像フレーム５を連続的に取り込む。システム１００を構成するカメラ１１５のすべてが、イベント空間１５内のイベント１０および／または周囲１６を捉える必要はないので、この撮像モードにおいて、すべてのカメラ１１５が必ずしも使用されるわけではない。
【０１３９】
この撮像モードは、カメラマネージャ１０６が１以上の画像キャプチャコマンド１０６ａをトリガ１０７に出力することにより開始され、トリガ１０７は、１以上の予め定義されたパラメータに従ってタイマ１０８を介して周期的なタイミング信号Ｓ、たとえば、毎秒３０個の信号を発生する。画像キャプチャコマンド１０６ａが、トリガ１０７に対して、タイマ１０８から通信リンク１２０を介して、使用中のカメラ１１５の内の１台以上、好ましくはすべてのカメラに送られる命令セットにおいて、タイミング信号を伝達するように指示してもよい。
【０１４０】
意図しない遅延および／または受信器遅延の可能性を減らすためには、少なくともタイマ１０８を、通信リンク１２０と直接つながっているメインノード１２０ｂに配置することによって、すべての必要なカメラ１１５が周期的タイミング信号Ｓを実質的に同時に受け取れるようにすることができる。
【０１４１】
命令セットに応答して、命令セットを受信するそれぞれのカメラ１１５は、画像フレーム５を取り込み、画像フレーム５を１以上のサーバ１１０に送信する。好ましくは、それぞれの画像フレーム５は、「生（ＲＡＷ）」ピクセル情報またはデジタルネガティブ状態にある画像センサのデジタル画像データ６を保存するための生画像ファイルフフォーマットで保存される。
【０１４２】
画像フレーム５は、画像データ６に加え、画像、および／または、その画像を作り出したカメラまたはイメージセンサを識別するために必要な、および／または、好適な情報を含むことができる。たとえば、カメラは、カメラまたは画像センサ識別子、予め決められるか、または、ＧＰＳ受信機によって決められた空間位置データ、シーケンス番号、および／または、タイムスタンプによって識別することが可能である。
【０１４３】
サーバ１１０においては、フレーム取り込みモジュール１０９が１以上のメモリ１１０ａへの画像フレーム５の連続ストリームの記憶を開始する。メモリ１１０ａは、任意の好適な記憶装置でよいが、好ましくは、メモリ１１０ａはサイクリックバッファである。画像フレーム５の連続ストリームを記憶できるようにバッファを維持するために、フレーム取り込みモジュール１０９は、画像フレーム５を所定の方法で削除および／または上書きする。たとえば、最も古い画像フレーム５を削除および／または上書きしたのち、その次の画像フレーム５を削除および／または上書きする。さらに、フレーム取り込みモジュール１０９は、画像フレーム４０を取り込むための取り込み開始指令１０６ｂの到達に継続的に注意を向けつつ待機する。
【０１４４】
ステップ２４６では、ユーザは、撮像基準時間Ｔ０において、カメラマネージャ１０６のインタフェースから、イベント１０の映像データを取り込む適切な瞬間が存在する時間を決定する。そして、ユーザは、システム１００を取り込みモードにすることによってイベント１０の画像５の取り込みを開始する。
【０１４５】
本発明の１以上の実施形態によれば、カメラマネージャ１０６は、撮像基準時間Ｔ＋１において取り込み開始指令１０６ｂを発する。フレーム取り込みモジュール１０９が取り込み開始指令１０６ｂを受信すると、撮像基準時間Ｔ＋２に動作を開始するフレーム取り込みモジュール１０９は、カメラ１１５から到来する画像フレーム５を、さらなる処理のために第２のメモリ１１０ｂに記憶する。理解の容易化のために、画像が第２のメモリ１１０ｂに記憶されている、あるいは書き込まれているとき、および／または、すでに記憶されているか、あるいは書き込まれているときに、画像フレーム５が取り込まれているものとする。取り込まれる、あるいはすでに取り込まれた画像フレーム５は、取り込みフレーム４０とも呼ぶ。
【０１４６】
たとえば、ライブのスポーツイベントの際のように、ユーザが、イベント１０の画像フレーム５を取り込む適切な瞬間が存在することを認識し、取り込み開始指令１０６ｂを出す時点には遅延があるため、サイクリックバッファ、すなわち第１メモリ１１０ａに記憶された１以上の画像フレーム５は、バックワード取り込み動作において第２メモリ１１０ｂにも書き込まれる。第１メモリ１１０ａから第２にメモリ１１０ｂに書き込む画像フレーム５の量は、フレーム数（たとえば、９０フレーム）として予め決定されるか、または、毎秒３０フレームのフレームキャプチャーレートにおいて９０秒に対応する時間（すなわち、３秒）として予め決定される。このようにして、バックワード取り込み動作は、撮像基準時間Ｔ０の前の時間、すなわち撮像基準時間Ｔ−１から撮像基準時間Ｔ＋１まで画像フレーム５を取り込む。カメラマネージャ１０６からフレーム取り込みモジュール１０９に到達する取り込み開始指令１０６ｂにも遅延があるため、バックワード取り込み動作は、撮像基準時間Ｔ０の前の時間、すなわち撮像基準時間Ｔ−１から撮像基準時間Ｔ＋２まで画像フレーム５を取り込む。
【０１４７】
ステップ２４８においては、撮像基準時間Ｔ＋３において、ユーザは、イベント１０の画像フレーム５をさらに取り込む必要はないと判断する。画像フレーム５の取り込みは、取り込み開始指令１０６ｂが解除されるまで続く、すなわち、ボタンを連続的に押すことによって取り込み開始指令１０６ｂが開始される場合には、所定の時間の後に取り込み開始指令１０６ｂがタイムアウトとなる、または、取り込み終了指令１０６ｃがユーザによって出されるまで取り込みが続く。
【０１４８】
取り込み終了指令１０６ｃに代替して、サイクリックバッファのサイズ、すなわち、画像フレーム５の取り込みが終了する時を、イベントの継続時間に対する利用可能なメモリ、すなわち第１メモリ１１０ａの関数として予め決定しておくことが好ましい。イベントの継続時間は、レンダリングすべきフレームの数として測定される、および／または、標準的な秒当たりフレーム数（ＦＰＳ）が既知の場合は単位時間で測定される。たとえば、好適なサイクリックバッファは、たとえば、３０ＦＰＳで３０秒からなる、９００フレームであり、ユーザは、１フレームから９００フレームまでの間で任意に取り込むフレームを選択できる。コントローラ１０５は、取り込み開始指令１０６ｂを実行するための数個の「取り込みボタン」を備えることができる。たとえば、バックワード取り込みとフォワ−ド取り込みの組み合わせとしてそれぞれ定義される、１秒、１０秒、および３０秒の取り込みボタンである。たとえば、取り込み開始指令１０６ｂを実行する１つのボタンは、この指令の実行前の５秒とこの指令の実行後の５秒の間の取り込みを行う。このような変更は、サイクリックバッファ全体のサイズ内で可能である。取り込み動作が行われると、サイクリックバッファは、画像データを第２のメモリ１１０ｂに転送し、別の取り込み開始指令１０６ｂによる別の実行の前に、新たな画像データを第１のメモリ１１０ａに保存しなければならない。ここで、取り込み開始指令１０６ｂは、第１のメモリ１１０ａの１以上の所定の部分を第２のメモリ１１０ｂに転送する指令として機能する。
【０１４９】
このように、取り込みモードが終了した撮像基準時間Ｔ＋４において、フレーム取り込みモジュール１０９により指示が受け取られるか、あるいは、そのような指示が取り込み開始指令１０６ｂに内在している場合に、フレーム取り込みモジュール１０９は、第１のメモリ１１０ａへの画像フレーム５の記憶を再開する。この間も、フレーム取り込みモジュール１０９は新たな取り込み開始指令１０６ｂを連続的に聞くおよび／または待つ。取り込みモードの間中、タイマ１０８は、継続的にタイミング信号を発生し、１以上のカメラ１１５に指令セットを出す。
【０１５０】
本発明の１以上の実施形態によれば、サーバ１１０は、１つの第１のメモリ１１０ａが、生画像ファイルフォーマットの画像データを１以上の第２のメモリ１１０ｂに連続的に書き込む、すなわちストリーミングするように構成されている。この場合、取り込み開始指令１０６ｂは、上記のように機能することもできるが、第１のメモリ１１０ａの１以上の所定の部分を第２のメモリ１１０ｂに転送することが好ましい。
【０１５１】
本発明の１以上の実施形態によれば、それぞれのカメラ１１５は、そのカメラのためだけに備えられた１つのサーバ１１０と共に動作可能である。たとえば、それぞれのカメラ１１５は、そのカメラ１１５専用のサーバ１１０と１対１の関係にある。したがって、ステップ２４４では、フレーム取り込みモジュール１０９は、１つのカメラ１１５専用の第１のメモリ１１０ａおよび第２のメモリ１１０ｂを有するそれぞれのサーバ１１０上で、またはサーバ１１０とともに動作可能であり、システム内分散記憶モデルでは、画像フレーム５は、それぞれのサーバ１１０において第２のメモリ１１０ｂに個別に記憶されることになる。これに対し、集合的記憶モデルでは、１以上のサーバ１１０は、２つ以上のカメラ１１５からの画像フレーム５をさらなる処理のために１以上の第２のメモリ１１０ｂに記憶する。
【０１５２】
いずれの記憶モデルを使用するかに関係なく、すべての第２のメモリ１１０ｂが合同して、実際のまたは仮想の画像データベース５０を作成する。この画像データベース５０は、撮像基準時間Ｔ−１からＴ＋４までの期間にわたる、異なる視野１１７を有する少なくとも２つのカメラ１１５から得た、イベント空間１５および／または周囲１６の少なくとも同じ部分についての取り込みフレーム４０の複数の画像フレームセット７からなる画像データ６を含む。
【０１５３】
いずれの記憶モデルを使用するかに関係なく、処理済みのフレーム４０ａなどのデータが保存済み画像データベース５０である場合、そのデータは同じ記憶モデルを使用していることが好ましい。すなわち、処理済みのフレーム４０ａの画像データ６が特定の第２のメモリ１１０ｂにもともと保存されていた場合、処理済みのフレーム４０ａもその第２のメモリ１１０ｂに保存される。しかし、本発明の１以上の実施形態では、処理済みのフレーム４０ａを、異なる第２のメモリ１１０ｂに保存することも、あるいは、他の好適なデータ記憶装置に保存することも可能である。
【０１５４】
本発明の１以上の実施形態によれば、カメラ位置データ１１６ａは、カメラ位置データベース５２に記憶される。ここで、データベース５０および５２は互いに、カメラ１１５に関連する少なくとも１以上の参照データ（たとえば、唯一のカメラまたは画像センサ識別子）によって、相互参照される。
【０１５５】
本発明の１以上の実施形態によれば、カメラ１１５のカメラ位置データ１１６ａは、そのカメラからの１以上の取り込みフレーム４０に関連する画像データデータベース５０に記憶される。
【０１５６】
本発明の１以上の実施形態によれば、ＣＥＭモジュール２２１は、マスクモデル２４１に色を付与するために、ステップ２５２〜２５４からなるカラーマッチング方法２５０を実行する。
【０１５７】
ステップ２５２において、ＣＥＭモジュール２２１は、周囲を含む周囲モデル２２３（たとえば、背景３Ｄモデル）上に、処理済みフレーム４０ａのそれぞれのピクセルを投影する。この投影は、それぞれのピクセルが投影位置２３０ａに位置している処理済み画像４０ａ内のピクセルから、仮想直線を延伸させて、この仮想直線が、対応するカメラ１１５のレンズの中心を通り、仮想３Ｄ空間５９内の対応する３Ｄメッシュポイント２４５にある周囲モデル２２３（たとえば、背景３Ｄモデル）と交差するようにして、実行される。すなわち、投影は、仮想３Ｄ空間５９内の３Ｄメッシュポイント２４５にあるマスクモデルのメッシュと交差する。
【０１５８】
本開示では、コンフィギュレーション、レンダリング、および投影（プロジェクション）に関連して、「ピクセル」の語が使用されているが、「ボクセル」も同じ意味で使用できる。ここで、「ボクセル」は、立体ピクセルである。システム１００は、「背景」すなわち周囲１６についてはイベント前に行われるのに対して、前景１７、すなわち、前景物体に忠実な「ボクセル」表現をほぼリアルタイムで作成する。
【０１５９】
ステップ２５４において、ＣＥＭモジュール２２１は、それぞれの処理済みフレーム４０ａのＲＧＢ色空間を、ｌαβ色空間に変換する。そして、コンフィギュレーションエンジンは、ルマ（ｌｕｍａ）および色の画像の平均および標準偏差を見つける。そして、コンフィギュレーションエンジンは、次のように、ソース画像ピクセル値からソース画像の平均値を減算する。
0006599436.tif 000002
【０１６０】
次に、コンフィギュレーションエンジンは、標準偏差間のファクタに従って、ピクセル値のスケーリングを行う。
0006599436.tif 000003
【０１６１】
コンフィギュレーションエンジンは、デスティネーション平均をピクセル値に加える。ＣＥＭモジュール２２１は、それぞれの処理済みフレーム４０ａのｌαβ色空間を、ＲＧＢ色空間に変換する。
【０１６２】
ＣＥＭモジュール２２１は、それぞれのカメラ１１５のために、カメラ１１５の露出を制御する手段として、色値とルマ値（すなわち輝度）とを関連づける。ＣＥＭモジュール２２１は、ピクセルを対応する３Ｄメッシュポイント２４５と関連づけるとともに、３Ｄメッシュポイント２４５の位置およびそのピクセルを捉えたカメラの識別子に関連する色値を、モデルデータベース２４３に記憶する。モデル上の特定の位置は、それぞれがピクセルを発生する２台以上のカメラで捉えられているため、それぞれのカメラに関連する３Ｄマスクポイント２４５は、それぞれ複数のピクセルからの複数の色値（好ましくはヒストグラムで配置されている）を含むことができる。
【０１６３】
ここで、３Ｄメッシュポイント２４５は、複数のマスクと関連づけられていてもよい。たとえば、３Ｄメッシュポイント２４５は、ピクセルがグラウンドの一部であるか、すなわちグラウンドマスクモデルであるか否かだけでなく、ピクセルが新規ビューのコンフィギュレーションおよびレンダリング領域内にあるか、すなわちコンフィギュレーションおよびレンダリングマスクモデルであるか否か、および／または、ピクセルがカラーマッチング計算領域内にあるか、すなわちカラーマッチングマスクモデルであるか否かに関連づけられてもよい。さらに、これらのマスクは、システムのコンフィギュレーションのサイクルの中で、連続的にアップデートされ、かつ改良される。
【０１６４】
「再構成」  
「画像データキャプチャ」
図９は、本発明の１以上の実施形態によるイベントキャプチャ方法の概略図である。
【０１６５】
本発明の１以上の実施形態によれば、ユーザは、イベントキャプチャモジュール３０１を利用して、イベントキャプチャ方法３００を実行する。イベントキャプチャ方法３００は、１以上のステップ３０２〜３０６からなり、その１以上のステップは、本明細書に記載された番号順に行われることが好ましい。
【０１６６】
イベントキャプチャ方法３００は、イベントキャプチャモジュール３０１を実行し、１以上の画像フレームセット７を取り込み、このフレームセットから１以上の特徴５７を抽出し、統計的に信頼の高い特徴についての３Ｄデータ表現６０上の位置を特定することが好ましい。イベントキャプチャモジュール３０１は、システム１００内の物理的演算装置、あるいは任意の他の演算装置でもよいが、コントローラ１０５内で実行されるソフトウェアであることが好ましく、これにより、１以上の機能の追加を容易にできる。
【０１６７】
ステップ３０２において、イベント１０の間に待望されたこと、たとえば、スポーツゲームにおいて重要な瞬間が生じた場合には、ユーザは、イベントキャプチャモジュール３０１を起動して、カメラ１１５からの同期画像フレーム５の１以上の画像フレームセット７を取り込んで、データベース５０に記憶して、イベント１０を保存（キャプチャ）する。
【０１６８】
イベントキャプチャモジュール３０１は、任意の適切な方法により、カメラ１１５から同期画像フレーム５を得て、データベース５０に保存することができる。ただし、画像獲得方法２４０を実行する方法と実質的に類似した方法を用いることが好ましい。
【０１６９】
ステップ３０４において、それぞれの取り込みフレーム４０は、当分野で知られた１以上のデモザイキング・アルゴリズムに従って、イベントキャプチャモジュール３０１によって、デモザイクされ、生画像ファイルフォーマットからフォーマットされた画像ファイルに処理されて、画像データベース５０に保存される。たとえば、それぞれの取り込みフレーム４０は、デモザイクされ、かつ、生（ｒａｗ）画像ファイルから、ｔｉｆｆ画像ファイルまたはｊｐｇ画像ファイルの処理済みフレーム４０ａに変換される。
【０１７０】
ステップ３０６において、イベントキャプチャモジュール３０１は、任意の好適な特徴抽出方法を実行するが、特徴抽出方法２２６ａを実行して、イベント１０を示す処理済みフレーム４０ａから１以上の特徴５７を抽出し、かつ、これらを特徴データベース５８に保存することが好ましい。
【０１７１】
「安定化」
本発明の１以上の実施形態によれば、ユーザは、システム１００の安定化モジュール３０９を利用して、安定化方法３０８を実行する。この安定化方法３０８は、１以上のステップ３１０〜３１６からなり、それらのうちの１以上のステップは、本明細書に記載された番号順に行われることが好ましい。
【０１７２】
安定化方法３０８は、好ましくは、安定化モジュール３０９上で実行され、画像フレームセット７のためにそれぞれのカメラ１１５ごとの投影位置データ２３０ｂを含む投影位置２３０ａを決定し、３Ｄデータ表現６０内における、あるいは、カメラに垂直な無限平面上における、統計的に信頼性のある特徴の位置を特定する。安定化モジュール３０８は、システム１００内の物理的演算装置、あるいは任意の他の演算装置でもよいが、コントローラ１０５内で実行されるソフトウェアであることが好ましく、これにより、１以上の機能の追加を容易にできる。
【０１７３】
本発明の１以上の実施形態によれば、安定化方法３０８は、疑似３Ｄ空間で行われるが、この疑似３Ｄ空間では、特定され、基準較正画像と比較される特徴は、必ずしも３Ｄデータ表現６０（たとえば、立体点クラウド）と対応している必要はなく、カメラに垂直な無限平面上に位置しているものと仮定される。その平面は、好ましくは、わずかなカメラの揺れまたは振動によって生じる視差がないものとして理想化されている。
【０１７４】
ステップ３１０において、安定化モジュール３０９は、安定化方法３０８の実行を開始し、ステップ３０６で獲得された画像フレームセット７のすべての画像フレーム５から特徴５７を抽出する。
【０１７５】
ステップ３１２において、イベントキャプチャモジュール３０１は、ステップ３１０で抽出された特徴５７をＣＥＭ方法２２０で抽出された特徴５７と比較し、意図しないカメラの動きを補償する。１以上のカメラマトリックス３１１を作成するために、投影位置データ２３０ｂがモジュール３０１によって生成される。カメラマトリックス３１１は、カメラ１１５ごとに、処理済みフレーム４０ａの２Ｄ位置からのマッピング画像データ６２を、３Ｄ空間５９における３Ｄ座標位置へ記述するためのものである。
【０１７６】
カメラマトリックス３１１は、意図しないカメラの動き補償するために他のステップで使用されてもよい。すなわち、それぞれのカメラマトリックス３１１は、カメラ１１５の位置を定義するが、カメラ１１５の位置は、種々の要因（たとえば、カメラ１１５が固定される上部構造物に影響を与える風や歩行者の往来）によって移動した位置にカメラ１１５がある場合に再定義される。
【０１７７】
ステップ３１４において、安定化モジュール３０９は、好ましくは特徴抽出方法２２６ａに実質的に類似した特徴抽出方法を繰り返し、ステップ３０６または３０８で見つかった特徴５７に近接するさらなる特徴５７を抽出して保存する。特に、目立つ特徴５７が抽出された後に、その最初に見つかった特徴に隣接しているが、１以上の抽出アルゴリズムにおいて信頼度がより低いさらなる特徴５７が抽出され、特徴データベース５８に保存される。イベントキャプチャモジュール３０１は、特徴抽出方法の実行を継続して、直前の繰り返しまたは任意の繰り返しにおいて見つかった特徴５７に近接する特徴５７を抽出して保存する。それぞれの繰り返しは、使用される１以上の抽出アルゴリズムにおいてより低い信頼度を有する。
【０１７８】
ステップ３１６において、安定化モジュール３０９は、特徴データベース５８における異常値を除去するために、当分野で知られているように、近接度、疎らさ、類似性の原則を使用する。これにより、３Ｄデータ表現６０を作るために特徴５７が３Ｄ空間５９に投影されるとき、誤った特徴５７が削減される。
【０１７９】
本発明の１以上の実施形態によれば、好ましくは、四分位範囲法が使用される。この方法では、３Ｄデータポイントのｘ、ｙ、またはｚ座標が、上側および下側四分位領域の外側にある場合、その３Ｄデータポイントは除去される。すなわち、リスト（Ｑ１は第１四分位数で、Ｑ３は第３四分位数）内の任意の座標αを有するデータポイントについては、もしそれが次の条件の内の１つを満たす場合はそのデータポイントが除去される。
α＜Ｑ１−（Ｑ３−Ｑ１）×１．５、または、
α＞Ｑ３−（Ｑ３−Ｑ１）×１．５
【０１８０】
ここで、当分野で知られているように、レーベンバーグ・マーカート最適化を用いて誤差を分散させることが好ましい。カメラマトリッククス３１１と２３３は、１以上の対応するカメラ１１５に対して実質的に同一であることが好ましい。
【０１８１】
「周囲からの前景の分割（セグメント化）」
図１０ａは、本発明の１以上の実施形態による周囲モデル化方法の概略図である。図１０ｂは、本発明の１以上の実施形態による色変化に基づく分割および再構成方法のサブルーチンの概略図である。図１０ｃは、本発明の１以上の実施形態による色変化に基づく分割および再構成方法の概略図である。図１０ｄは、本発明の１以上の実施形態によるグラウンド投影分割および再構成方法の概略図である。図１０ｅは、本発明の１以上の実施形態による周囲更新サブルーチンの概略図である。
【０１８２】
本発明の１以上の実施形態によれば、ユーザは、前景／周囲分割（ＦＥＳ）方法３１８を実行するために、システム１００の分割および再構成（ＦＥＳ）モジュール３１９を利用する。前景／周囲分割（ＦＥＳ）方法３１８は、１以上のステップ３２２〜３２８からなり、それらのうちの１以上のステップは、本明細書に記載された番号順に行われることが好ましい。
【０１８３】
図１１ａ〜図１１ｋは、周囲モデル２２３を得るための周囲からの前景の分割を示す。これらの図において、図１１ａは、本発明の１以上の実施形態による、カメラと一致していないビューから取り込まれたイベントの概略図である。図１１ｂは、図１１ａの取り込まれたイベントの周囲モデルの概略図である。図１１ｃは、第１のカメラ、すなわちカメラ１から見た図１１ａの取り込まれたイベントの概略図である。図１１ｄは、第２のカメラ、すなわちカメラ２から見た図１１ａの取り込まれたイベントの概略図である。図１１ｅは、第２のカメラによって画像化された図１１ｄの前景を、図１１ｂの周囲モデル上に投影し、第１のカメラによって見た場合の該前景の概略図である。図１１ｆは、第１のカメラによって画像化された図１１ｃの前景を、図１１ｂの周囲モデル上に投影し、第２のカメラによって見た場合の該前景の概略図である。図１１ｇは、第２のカメラによって画像化された前景を、図１１ｂの周囲モデル上に投影し、第１のカメラによって見た場合の該前景の概略図である。図１１ｈは、第１のカメラによって画像化された前景を、図１１ｂの周囲モデル上に投影し、第２のカメラによって見た場合の該前景の概略図である。図１１ｉは、図１１ａの取り込まれたイベントの新規ビューからの概略図で、前景を第１のカメラと第２のカメラによって画像化し周囲モデルに重ねた場合の概略図である。図１１ｊは、両方のカメラから見た前景を示す新規ビューからの概略図である。図１１ｋは、周囲データが存在する場所を示す図１１ｊの概略図である。図１１ｌは、両方のカメラから見ることができない前景を除いた周囲モデルを示す図１１ｋの概略図である。図１１ｍは、両方のカメラから見ることができない前景を除き、かつ、追加のカメラからも見ることができない前景を除いた周囲モデルを示す図１１ｋの概略図である。
【０１８４】
具体的には、それぞれのカメラ１１５は、特定の視野１１７を有しているため、それぞれのカメラは異なる角度から前景要素１７を捉え、このため、それぞれのカメラ１１５では、前景要素１７が周囲１６の異なる部分を遮る。それぞれのカメラのビューが新規ビューに投影され、重なっていない部分が互いに引かれると、周囲のより多くの部分が新規ビューで見られる。数台のカメラだけが使用される場合（図１１ｌ）と異なり、すべてのカメラが上手く設置されて適用されていれば（図１１ｍ）、周囲のほとんどを見ることができる。
【０１８５】
具体的には、ＦＥＳモジュール３１９が、前景／周囲分割方法３１８を実行し、ライブ要素に関連する１以上のピクセルを、前景要素、すなわち、前景１７としてのイベント１０の一部に分離し、ピクセルが周囲１６の一部、すなわち周囲要素であるか否かについては、背景状態マシン３１７として実行する。
【０１８６】
本発明の１以上の実施形態によれば、前景／周囲分割方法３１８は、色変化に基づく分離サブルーチン３２２、移動認識サブルーチン３２４、グラウンド投影サブルーチン３２６、および周囲更新サブルーチン３２８を含んでいることが好ましい。
【０１８７】
本発明の１以上の実施形態によれば、色変化に基づく分離サブルーチン３２２において、ＦＥＳモジュール３１９が、背景状態マシン３１７を起動し、所定の時間にわたるピクセルの色の変化に基づいて、ピクセルが前景要素であるか周囲要素であるかを分析する。前景１７内のピクセルはレンダリングされ、周囲１６内のピクセルは、周囲モデル２２３とは別にはレンダリングされない。
【０１８８】
ここで、背景状態マシン３１７は、１以上の所定の時間だけ時間的に隣接する同期画像フレーム５の画像フレームセット７から、所定のレベルに従って同じピクセルの色に変化があったかを分析する。背景状態マシン３１７は、２つの目的のために使用される。第１は、マスクを生成する動作検出モジュールにおいて「ヒント」として使われ、また、周囲モデル２２３、すなわち背景モデルにおいて、ある領域／ピクセルがすべてのカメラから完全に見えなくなる場合に作用するシェーダプロセス、すなわち、陰影処理方法３３１ａおよび／または３３１ｂにおいて、「レイヤー」として使われる。たとえば、プレーヤが集まっている状態は、いずれのダイレクトカメラからも見えない領域をグラウンド上に形成する。
【０１８９】
そのピクセルのＲＧＢカラーが時間を通して所定のレベルで同じである場合、背景状態マシン３１７は、それが前景１７ではなく周囲１６にデフォルトで設定されている場合、そのピクセルは周囲要素であると判定する。ＲＧＢカラーが時間を通して所定のレベルだけ変化する場合、背景状態マシン３１７は、ピクセルは前景であると判定する。ここで、背景状態マシン３１７は、フレーム４０の取り込みと積極的に協働する。得られた「クリーンな背景」は取り込みごとに保存され、本明細書に記載されているように使用される。
【０１９０】
そのピクセルのＲＧＢカラーが時間を通して同じである場合、背景状態マシン３１７は、それが周囲ではなく前景にデフォルトで設定されている場合、そのピクセルは周囲要素であると判定する。ＲＧＢカラーが時間を通して所定のレベルだけ変化している場合、背景状態マシン３１７は、ピクセルは前景１７であると判定する。
【０１９１】
ステップ３２２ａにおいて、ＦＥＳモジュール３１９は、時間的に隣接する同期取り込みフレーム４０の複数の画像フレームセット７を画像データベース５０から検索する。
【０１９２】
ステップ３２２ｂにおいて、ＦＥＳモジュール３１９は、好ましくは、新規ビュー６６にレンダリングされるすべてのピクセルのＲＧＢ色空間を用いて、平均色値を計算する。
【０１９３】
ステップ３２２ｃにおいて、ＦＥＳモジュール３１９は、それぞれのピクセルのガウス分布モデルを計算する。好ましくは、ＦＥＳモジュール３１９は、取り込みフレーム４０ａを分析する順番を決定するために、後述するカメラ再構成リスト４０９を使用する。すなわち、他の（第２の）カメラ１１５の前にリストされた（第１の）カメラ１１５からの処理済みフレーム４０ａは、第２のカメラの取り込みフレームよりも前に分析され、好ましくは、それぞれのフレームセット７は時系列順に分析されることが好ましい。カメラ再構成リスト４０９に代替して、物理的な位置の隣接性に基づく連続的なカメラリストを使用してもよい。
【０１９４】
それぞれの処理済みフレーム４０ａを分析したあとで、ＦＥＳモジュール３１９は、ガウス統計をアップデートする。あるピクセルがガウス標準偏差内にあれば、そのピクセルは前景要素であるとＦＥＳモジュール３１９によって判定される。取り込みフレーム４０のすべてが分析された後で、そのピクセルがガウス標準偏差内にない場合は、そのピクセルは周囲要素であるとＦＥＳモジュール３１９によって判定される。
【０１９５】
ステップ３２２ｄにおいて、ＦＥＳモジュール３１９は、ステップ３２２ｃで周囲要素であると判定されたすべてのピクセルを含む周囲の第１のビューに基づくマスクモデル２２３ａを作成する。ここで、それぞれのピクセルまたは特徴について、ピクセルまたは特徴が前景１７であるか周囲１６であるかが、スキャンラインメカニズム（すなわち、何にカメラのラスタのピクセルからの垂直な直線が衝突するか）に基づいて決定される。その特徴が前景物体である場合、それは、前景手続によって「シェーディング」、すなわち色付けされる。それが背景要素である場合、それは、背景シェーダプロセスによって「シェーディング」、すなわち色付けされる。
【０１９６】
本発明の１以上の実施形態によれば、動作認識サブルーチン３２４において、ＦＥＳモジュール３１９は、背景状態マシン３１７を起動して、ピクセルがイベント空間内において時間とともに動いているかを分析する。移動するピクセルは、それがイベント１０の一部であり周囲１６の一部ではないことを示す。
【０１９７】
ステップ３２４ａにおいて、ＦＥＳモジュール３１９は、時間的に隣接する同期取り込みフレーム４０の複数の画像フレームセット７を画像データベース５０から検索するか、ステップ３２２ａで受信した同期取り込みフレーム４０の複数の画像フレームセット７を使用する。
【０１９８】
ステップ３２４ｂにおいて、ＦＥＳモジュール３１９は、その後に制御値となる複数の値を計算する。具体的には、
ａ．ピクセルの輝度が閾値を超える場合、そのピクセルは前景要素と判定される。
差閾値（ＤｉｆｆＴｈｒ）−動作ごとのチャンネルあたりの最小輝度差
ｂ．ピクセルが少なくとも所定の割合だけ移動した場合、ピクセルは前景要素と判定される。
移動閾値−（ＭｏｖｅＴｈｒ）最小移動割合値（フレーム＞ＤｉｆｆＴｈｒ／フレーム＜ＤｉｆｆＴｈｒ）
【０１９９】
ステップ３２４ｃにおいて、ＦＥＳモジュール３１９は、それぞれのピクセルが、ステップ３２４ｂで計算された１以上の制御値を超えたかどうかを計算する。好ましくは、ＦＥＳモジュール３１９は、カメラ再構成リスト４０９を使用して、取り込みフレーム４０ａを分析する順番を決定する。すなわち、他の（第２の）カメラ１１５の前にリストされた（第１の）カメラ１１５からの処理済みフレーム４０ａは、第２のカメラの取り込みフレームよりも前に分析され、それぞれのフレームセット７は、時系列順に分析されることが好ましい。
【０２００】
それぞれの処理済みフレーム４０ａを分析した後、ＦＥＳモジュール３１９は、ピクセルがステップ３２４ｂで計算された１以上の制御値を超える場合には、そのピクセルが前景要素であると判定する。取り込みフレーム４０のすべてが分析された後で、ピクセルが制御値を超えない場合は、そのピクセルは周囲要素であると、ＦＥＳモジュール３１９によって判定される。
【０２０１】
ステップ３２４ｄにおいて、ＦＥＳモジュール３１９は、ステップ３２４ｃで周囲要素であると判定されたすべてのピクセルを含む周囲の第２のビューに基づく周囲モデル２２３ｂを作成する。
【０２０２】
本発明の１以上の実施形態によれば、グラウンド投影サブルーチン３２６において、ＦＥＳモジュール３１９は、背景状態マシン３１７を起動して、ピクセルがグラウンドの一部であり、周囲要素であるかを分析する。グラウンドの一部であるピクセルは、周囲１６の一部である。
【０２０３】
ステップ３２６ａにおいて、ＦＥＳモジュール３１９は、フィルタをセットして、最大１％のフィルタリングの設定を使用して、ピクセルから「ノイズ」を除去する。たとえば、ウィーナノイズフィルタを使用できる。
【０２０４】
ステップ３２６ｂにおいて、ステップ３２２ｂ、３２２ｃ、３２４ｂ、および３２４ｃで分析中のまたは分析された取り込みフレーム４０ａに基づいて、ＦＥＳモジュール３１９は、任意の１台のカメラ１１５からの取り込みフレーム４０ａのＲＧＢ色空間における平均輝度値が第１の所定の値よりも大きいかを判定し、その後、コンフィギュレーションエンジン４０１は、輝度値を第２の所定の値だけ増加させるのに適したファクタによって、周囲モデル２２３の輝度値をアップデートする。たとえば、第１の所定の値は周囲モデル２２３の輝度値の５〜４０輝度に等しく、第２の所定の値は、取り込みフレーム４０ａ間の輝度値のすべての差と周囲モデル２２３の輝度値の平均に等しい。
【０２０５】
本発明の１以上の実施形態によれば、周囲更新サブルーチン３２８において、ＦＥＳモジュール３１９は、背景状態マシン３１７を起動して、好ましくは同時期に周囲モデル２２３をアップデートする。
【０２０６】
ステップ３２８ａにおいて、ＦＥＳモジュール３１９は、好ましくは、新規ビュー６６にレンダリングするすべてのピクセルのＲＧＢ色空間を用いて平均色値を計算する。
【０２０７】
ステップ３２８ｂにおいて、ステップ３２２ｂ、３２２ｃ、３２４ｂ、および３２４ｃで分析中のまたは分析された取り込みフレーム４０ａに基づいて、ＦＥＳモジュール３１９は、任意の１台のカメラ１１５からの取り込みフレーム４０ａのＲＧＢ色空間における平均輝度値が第１の所定の値よりも大きいかを判定し、コンフィギュレーションエンジン４０１は、輝度値を第２の所定の値だけ増加させるのに適したファクタによって、周囲モデル２２３の輝度値をアップデートする。たとえば、第１の所定の値は、周囲モデル２２３の輝度値よりも５０％大きい値に等しく、第２の所定の値は、取り込みフレーム４０ａ間の輝度値のすべての差と周囲モデル２２３の輝度値の平均に等しい。
【０２０８】
ステップ３２８ｃにおいて、準最小残差値を得るために、バイナリ閾値を含む他の閾値が決定され、および／または、完全な前景を提供するために、前景１７の一部である特徴５７を除去することにより、背景がアップデートされる。
【０２０９】
ステップ３２８ｄにおいて、ＦＥＳモジュール３１９は、既存の背景と新しい画像フレーム５の間の差である初期マスクを決定し、追加の特徴５７が存在するかを判定する。増幅のために、その差は二乗にされる。
【０２１０】
ステップ３２８ｅにおいて、よりノイズの少ない特徴を際立たせるために、ノイズを伴う、たとえば３×３ピクセルといった、より大きいピクセル空間を有する特徴５７は、ＦＥＳモジュール３１９によって除去される。
【０２１１】
ステップ３２８ｆにおいて、ＦＥＳモジュール３１９によって、背景の影が除去され、新しい画像フレーム５およびマスクされていない領域のＬＡＢ（ｌαβ）空間での背景においてマスクされていない領域に対する差が決定され、一方、輝度差が閾値よりも大きいがＡＢ（ＹＵＶのおけるＵＶまたはクロマ）が低いピクセル、すなわち特徴をサーチする。そして、これらの領域における輝度がアップデートされる。
【０２１２】
ここで、ＦＥＳモジュール３１９は、それぞれ処理済みフレーム４０ａのＲＧＢ色空間をｌαβ色空間に変換する。そして、コンフィギュレーションエンジンは、輝度および色画像の平均および標準偏差を見つける。そして、コンフィギュレーションエンジンは、次のように、ソース画像ピクセル値からソース画像の平均を減算する。
0006599436.tif 000004
【０２１３】
その後、コンフィギュレーションエンジンは、標準偏差間のファクタに従って、ピクセル値のスケーリングを行う。
0006599436.tif 000005
【０２１４】
コンフィギュレーションエンジンは、デスティネーション平均をピクセル値に加える。
【０２１５】
ＦＥＳモジュール３１９は、それぞれ処理済みレーム４０ａのｌαβ色空間をＲＧＢ色空間に変換する。
【０２１６】
ステップ３２８において、ＦＥＳモジュール３１９は、マスクの外側の新しい画像からのブレンドで、周囲モデル２２３をアップデートする。
【０２１７】
ステップ３２８ｈにおいて、コンフィギュレーションエンジン４０１は、アップデートされた周囲モデル２２３と前景マスク４２３を画像データベース５０に保存する。
【０２１８】
ステップ３２８ｉにおいて、前景は、その後、以前のステップでの情報に基づいてリファインされる。
【０２１９】
「シェーディング」
図１０ｆは、本発明の１以上の実施形態による周囲モデル化方法の概略図である。
【０２２０】
本発明の１以上の実施形態によれば、ユーザは、システム１００の周囲シェーディングモジュール３３０ａを利用して、周囲シェーディング方法３３１ａを実行し、および／または、前景シェーディングモジュール３３０ｂを利用して、前景シェーディング方法３３１ｂを実行する。この方法は、１以上のステップ３３２〜３４０を含み、それらのうちの１以上のステップは、本明細書に記載された番号順に行われることが好ましい。
【０２２１】
シェーディング方法３３１ａおよび／または３３１ｂは、それぞれシェーディングモジュール３３０ａおよび／または３３０ｂ上で実行されることが好ましく、これらのモジュールは、システム１００内の物理的演算装置、あるいは任意の他の演算装置により実現されてもよいが、コントローラ１０５内で実行されるソフトウェアであることが好ましく、これにより、１以上の機能の追加を容易にできる。
【０２２２】
ステップ３３２おいて、モジュール３３０ｂは、シェーダ３３３を実施して、後述する深さマップ４１５を使用して、いつ３Ｄデータ表現再構成の３Ｄポイントが深さマップ４１５の背部に位置するか、たとえば、いつ３Ｄポイントが新規ビュー６６からの他のポイントによって遮られていないかについて判定する。すなわち、深さマップの背部にあるピクセルはレンダリングされない。
【０２２３】
シェーダ３３３は、システム１００内の物理的演算装置であってもよく、あるいは任意の他の演算装置であってもよいが、コントローラ１０５内で実行されるソフトウェアであることが好ましく、これにより、１以上の機能の追加を容易にできる。
【０２２４】
ステップ３３４において、コンフィギュレーションエンジン４０１は、カメラ再構成リスト４０９を使用して、周囲モデル２２３および前景モデル４２３にピクセルをレンダリングする順番を決定する。
【０２２５】
新規ビュー６６においてレンダリングされたそれぞれのピクセルのために、シェーダ３３３は、そのピクセルを含む取り込みフレーム４０ａの色値に基づいて、色情報を決定する。そのピクセルが遮られていない場合、任意の適切な手段を使用して決定されるファクタを用いて、その色値を決定することができるが、好ましくは、仮想カメラ６６ａからそのピクセルに向かうベクトルと、そのピクセルを画像化したそれぞれのカメラ１１５からそのピクセル自体に向かうベクトルとの間の角度に応じて重みがつけられる。
【０２２６】
ここで、ピクセルの色値ファクタは、次の式によって決定することができる。
色値ファクタ＝
（０．５＊ｐｏｗ（角度ファクタ、プロジェクタ重みファクタ））＋（０．５＊ｐｏｗ（角度ファクタ、プロジェクタ重みファクタ１））
【０２２７】
代替的または追加的に、シェーダ３３３は用いられない。すなわち、物理的近接度に基づくカメラ１１５のリスティングを用いて、１つのカメラによって画像化された特徴５７が、他のカメラ１１５から見たときに遮られるかどうかを判定する。その場合、遮りを有するカメラ１１５に関連するルックアップテーブルに（０）の値を置く。
【０２２８】
ステップ３３６において、モジュール３３０ａは、それぞれの３Ｄメッシュポイント２４５の平均色値を計算し、その値をマスクモデルデータベース２４３に保存する。このように、平均色値は、マスクモデルの同じ３Ｄ位置上のすべてのカメラが見る色の平均値、すなわち、すべてのカメラが見る同じマスクモデルスポットの平均色である。代替または追加においては、メッシュを使う代わりに、３Ｄデータ表現のポイントクラウドが使用される。
【０２２９】
ステップ３３８において、モジュール３３０ａは、それぞれの３Ｄメッシュポイント２４５の色値に適用される重みづけファクタとしての、マスクモデル２４１についての平均色値を得るために、すべての３Ｄメッシュポイント２４５の平均色値を計算する。
【０２３０】
ステップ３４０において、モジュール３３０ａは、物理的に隣接するカメラ位置を有するカメラからのそれぞれのピクセルの色値に適用される重みづけファクタとしての、それぞれのカメラ１１５によりキャプチャされたすべてのピクセルに対する平均色値を計算する。これにより、隣接するカメラの色を互いにより接近させ、色の一貫性がもたらされ、仮想カメラが新規ビュー間で移動する際に一貫性のある新規ビューを作成することがアシストされる。
【０２３１】
代替的または追加的に、それぞれのモジュールは、連続的に配置されたカメラ間でより一貫性のある生データから「投影ラスタ／画像」を再生するために使用される、新規の色「ルックアップテーブル」を生成する。これにより、コンフィギュレーションエンジン４０１は、色マッチングについての情報を得ることなく、より一貫性のある色が付けられた画像セットを投影するための色を入力ラスタ画像として単純に得る。ここで、投影された入力は、最終的な放送用色出力を導くが、この最終的な放送用色出力では、再構成のために、クリーンで一貫したグラジエントを得ることよりも、色の鮮やかさの方がより重要である。これに対して、再構成それ自体は、通常、本発明の１以上の実施形態による最終放送用画像と比べると、再構成の目的のために使用されるより暗い画像をもたらす。
【０２３２】
「コンフィギュレーション」
図２ｄは、図２ａと図２ｃのイベント空間における仮想カメラ、複数の新規ビュー、ビューパスの一部、実際のカメラの視野の平面図である。図１２ａは、本発明の１以上の実施形態によるコンフィギュレーション方法の概略図である。
【０２３３】
本発明の１以上の実施形態によれば、ユーザは、システム１００のコンフィギュレーションエンジン４０１を利用して、コンフィギュレーション方法４００を実行する。この方法は、１以上のステップ４０２〜４３２からなり、それらのうちの１以上のステップは、本明細書に記載された番号順に行われることが好ましい。
【０２３４】
コンフィギュレーション方法４００は、コンフィグレーションエンジン４０１を実行することにより、イベント空間１５の一部またはすべてにおいて、少なくとも撮像基準時間ＴＭにおいて生じるイベント１０の３Ｄデータ表現再構成６２を行い、ユーザが選択可能な１以上の新規ビュー６６からの、撮像基準時間ＴＭにおいて生じるイベント１０の再生６４を可能とすることが好ましい。
【０２３５】
コンフィギュレーションエンジン４０１は、システム１００内の物理的演算装置、あるいは、任意の他の演算装置でもよいが、コントローラ１０５内で実行されるソフトウェアであることが好ましく、これにより、１以上の機能の追加を容易にできる。
【０２３６】
再生６４は、新規ビュー６６および／またはビューパス６８に沿う視野１１７と一致する１以上のビューのレンダリングのシーケンスである。好ましくは、ビューパス６８は、後述する、静的設定または動的設定におけるユーザが選択可能な３Ｄ経路である。
【０２３７】
新規ビュー６６は、３Ｄデータ表現再構成６２に画像データ６を付与したいずれのカメラ１１５の視野１１７と必ずしも一致していない、３Ｄデータ表現再構成６２のレンダリングされたビューである。一致には、画像フレーム５の取り込み後の画像フレーム５の取り出しおよび／または画像フレーム５の中心のシフトによって変化した視野１１７は除外される。
【０２３８】
たとえば、複数のカメラ１１５は、それぞれが人の顔の少なくとも半分を斜めに示す画像データ６を含む画像フレームセット７を取り込むが、いずれの視野１１７も顔を捉える向きにないため、複数のカメラ１１５のいずれも顔の正面ビューを提供することはない。したがって、人の顔の正面ビューが、視野のいずれとも一致していないため、新規ビュー６６となる。
【０２３９】
明確化のために、それぞれの新規ビュー６６は、仮想カメラ６６ａがあるものとして、その仮想カメラ６６ａの中心から生成したものと考えることができる。
【０２４０】
それぞれのビューパス６８は、１以上の新規ビュー６６を含むが、視野１１７と一致する１以上のビユーも含むことができる。ビューパス６８は、ユーザが選択できる。具体的には、経路選択モジュール４０３を使用して、コントローラ１０５上の１以上のヒューマンインタフェース装置から、ユーザがシーンセンタ６８ａを選択する。経路選択モジュール４０３は、システム１００内の物理的演算装置であるか、あるいは任意の他の演算装置と関連づけられたものでもよいが、コントローラ１０５内で実行されるソフトウェアであることが好ましく、これにより、１以上の機能の追加を容易にできる。
【０２４１】
ビューパス６８は、円弧パス、高さパス、インアウトパスなどの、予めプログラムされた映画的なパスを含むことができる。ここで、円弧パスは、カメラが左または右に動く仮想レールを再構築する。これが第１レベルの動きであり、３Ｄデータ表現再構成のためのビューポイントを最適化できることを常に保証する。エレベーションレール、すなわち高さパスは、第２レベルの自由度を有する仮想レールであり、これは、上下いずれかの方向への垂直動作を可能にする。カメラを円弧レールに沿って移動させながら、仮想レールを上昇させることにより、下から上に向かう斜めの動作が生み出される。ドリートレイル、すなわちインアウトパスは、仮想カメラが円弧レールから目標に向かって移動できるようにする仮想カメラのための第３のレールであり、目標に向かう前進および後退移動を可能にする第３レベルの自由度をもたらす。
【０２４２】
ステップ４０２において、ユーザは、複数の取り込みフレーム４０または複数の処理済みフレーム４０ａから、再生６４のためのシーン７０ａを選択する。この点に関し、ユーザは、それぞれのカメラ１１５のいくつかのモニタからのフィードを切り替えることにより、再生６４を開始する最も有利なシーン７０ａを決定することができる。
【０２４３】
ここで、ユーザは、それぞれのカメラ１１５ごとの取り込みフレーム４０を映像として再生し、必要に応じて停止することにより、再生６４を開始する最も有利な瞬間を見つけることができる。明確化のために、この再生６４を開始する最も有利な瞬間を撮像基準時間ＴＭと呼ぶ。なお、ＴＭは、撮像基準時間Ｔ−１〜Ｔ＋４の間に置かれる。静的設定は、再生６４が、固定された時間、すなわち撮像基準時間ＴＭに限定されてなされる設定である。
【０２４４】
動的設定は、時間が固定されることなく再生６４が行われる、すなわち、再生６４が撮像基準時間ＴＭ１〜ＴＭ２の間に行われ、撮像時間範囲ＴＭ１〜ＴＭ２が撮像基準時間Ｔ−１〜Ｔ＋４の間に置かれる。したがって、再生６４を開始する最も有利な瞬間を撮像基準時間ＴＭ１と呼び、再生６４を停止する画像化の瞬間を撮像基準時間ＴＭ２と呼ぶ。
【０２４５】
言い換えれば、動的設定は、撮像基準時間を通して進む一続きのものとして処理される、それぞれの撮像基準時間のための画像フレームセット７の範囲をユーザが決定する設定である。重要なことには、それぞれの画像フレームセット７は、それぞれの画像フレームのセットごとに独立した３Ｄデータ表現として処理されることである。しかしながら、静的設定と同じように、それぞれの画像フレームセット７の結果は、画像フレームセットの内の必須とされるセットの独立した３Ｄデータ表現からそれぞれの新規ビューが得られる「動的」再生を行うために、カメラパスインタフェースを介して使用されるか、あるいは、携帯機器など、すなわちクライエント上において、インタラクティブな視聴を可能とするためにサーバ／クラウドに送られることが可能である。
【０２４６】
また、ユーザは、撮像基準時間ＴＭまたはＴＭ１を有する画像フレームセット７の取り込みフレーム４０ａから選択を行うことにより、再生６４を始める最も有利なシーン７０ａを有するカメラを選択することができる。
【０２４７】
ユーザが最も有利な瞬間とシーンを選択すると同時に、ユーザは、そのシーンをもたらしたカメラ１１５の視野１１７、および、そこから３Ｄデータ表現再構成を生成する撮像基準時間ＴＭまたはＴＭ１を有する画像フレームセット７と一致するシーンセンタ７１ａを選択したこととなる。
【０２４８】
ステップ４０４において、ユーザは経路選択モジュール４０３を利用して、第１のシーンセンタ７１ａから新規なシーンセンタ７１ｂへ移動するビューパス６８を選択する。なお、新規なシーンセンタ７１ｂに伴う新しいシーンは新規ビュー６６となるものである。ビューパス６８は、１つのシーンセンタから新しいシーンセンタへの複数のシーンシフトを含むことができる。
【０２４９】
ステップ４０６において、コンフィギュレーションエンジン４０１は、第２のシーンセンタ７１ｂの３Ｄデータ表現６０における３Ｄ座標４０７を決定する。第２のシーンセンタ７１ｂの３Ｄ座標４０７は、仮想カメラ６６ａの３Ｄ位置でもある。すなわち、シーン７０ｂは、中心、たとえば仮想カメラ６６ａから得られるシーンセンタ７１ｂを有する平面であり、仮想カメラの中心がシーンセンタ７１ｂである。
【０２５０】
ステップ４０８において、コンフィギュレーションエンジン４０１は、カメラマトリッククス３１１を使用して、カメラ１１５のリスト、すなわち、カメラ再構成リスト４０９を作成する。このリストは、カメラ１１５についての識別子や他の好適な情報を、シーンセンタ７１ｂに関連する投影位置２３０ａに対する物理的近接性に基づく順番で列挙している。すなわち、シーンセンタ７１ｂに最も近いカメラ１１５の識別子と情報が、リストの最初に記入される。２番目に記入されたカメラやその他のカメラは、コンフィギュレーションエンジン４０１によって、最初に記入されたカメラに対しての近接性、すなわち隣接度合の順序でリストされ、カメラ１１５の画像データ６を優先順位に基づいて処理できるようになっている。
【０２５１】
ステップ４１０において、ユーザ、たとえばテレビのプロデューサは、処理速度を上げるために、イベント空間１５がレンダリングされる範囲を、境界ボリューム２０として制限する。境界ボリューム２０は、任意の好適な形状をとることができ、規則的または不規則的ないかなる幾何学的形状と一致している必要はない。本発明の１以上の実施形態によれば、境界ボリューム２０は、イベント空間１５の一部でも、あるいはイベント空間１５の全体でもよい。
【０２５２】
境界ボリューム２０は、第１のシーンセンタ７１ａに基づくことができる。たとえば、シーンセンタ７１ａは、ゴールが決められる際には、イベント空間の一端に位置させることができる。この場合、他端のコンフィギュレーションおよびレンダリングは必要とはされない。
【０２５３】
ステップ４１０は、コントローラ１０５を用いて実行することもでき、コントローラ１０５は、すでに選択されているシーン７０ａに基づいて、データポイントの密度、特徴などが所定の閾値を満たすイベント空間１５の領域を決定する。さらに、コントローラ１０５は、統計的分析に基づいて、境界ボリューム２０を決定する。
【０２５４】
ステップ４１２において、コンフィギュレーションエンジン４０１は、３Ｄポイント再構成６２を使用して、シーンセンタ７１ｂの新規ビューに関連するカメラ６６ａの特定の位置から投影したときに、再構成６２および／またはマスクモデル２２３内の他の物体によるオクルージョンを描写する、１以上の幾何的なシャドウマップ４１３、すなわち、マッチングを生成する。
【０２５５】
第１のタイプのオクルージョンは、投影されるべき物体を通して仮想レンダリングカメラ６６が投射される場合に起こり、第２のタイプのオクルージョンは、物体の一部が物体自体を遮る場合、たとえば、仮想レンダリングカメラ６６ａに対してプレーヤの手が前景にあり、プレーヤの胴体の一部を遮っている場合に起こる。
【０２５６】
ステップ４１４において、コンフィギュレーションエンジン４０１は、カメラリスト上の順番に、現実のカメラ１１５のそれぞれに対してオクルージョンを解決するための深さマップ４１５を作成する。深さマップ４１５は、シーン７１ｂに関する仮想カメラ６６ａを含む平面の焦点中心、すなわち３Ｄシーンセンタ４０７とそれぞれの特徴との間の距離、すなわち正規化距離を含む。この距離は、仮想カメラ６６ａのカメラ位置とそれぞれのピクセルとの間の三角測量で決定される。
【０２５７】
深さマップ４１５は、データベースとして保存することができ、このデータベースは、好ましくは、３Ｄ座標を有する３Ｄデータ表現６０内の１以上のピクセル、ＲＧＢカラー（赤、緑、および青の光を加えた付加的カラーモデルに基づく）、および、それぞれのピクセルからの正規化ベクトル情報に相当する。
【０２５８】
代替的または追加的に、深さマップ４１５は、「スプラット」に基づく構造であり、この構造では、それぞれの３次元ポイント（あるいは「ボクセル」）は、オクルージョンを考慮しながら種々のセンサから色情報を集める。
【０２５９】
たとえば、第２のカメラにおいて、白の手袋が赤のシャツで覆われている場合、その情報は、ＸＹＺ位置、法線方向ベクトル、およびカメラ１１５ごとの色を含んでいることが好ましい。対応するカメラ位置を有する色情報は、たとえば、第１のカメラ−白、第２のカメラ−白、第３のカメラ−白、第４のカメラ−なし（遮られている）である。
【０２６０】
ステップ４１６において、コンフィギュレーションエンジン４０１は、周囲モデル２２３と前景モデル４２３とを組み合わせて新規ビュー６６とするとともに、オーバーレイ画像のエッジにおけるノイズを減少させるために、深さマップのエッジの周囲をソフトにするおよび／または、たとえば、ガウスぼかしを使用して新規ビュー６６の中心でない領域をぼかす。
【０２６１】
ステップ４１８において、コンフィギュレーションエンジン４０１は、好ましくはフォトリアルな品質で、新規ビュー６６をユーザに出力する。フォトリアルな品質にとって重要なことは、３Ｄデータ表現６０の再構成の後に色値と輝度値が調整されることである。ここで、コンフィギュレーションエンジン４０１は、Ｔｒｕｅ３Ｄ空間で計算される、被写界深度、モーションブラーなどの物理的現象についてのピクセルごとの計算を実行する。
【０２６２】
ステップ４２０において、コンフィギュレーションエンジン４０１は、ビューパス６８、および、シーンセンタの新規ビュー６６に一致する新しいシーンセンタ、すなわち、第３のシーンセンタへの変化に応答して、コンフィギュレーション方法４００を実行し、コンフィギュレーション方法４００は、さらなる新規ビューをレンダリングするための新しいシーンセンタから始まる。
【０２６３】
代替的または追加的に、新規ビュー６６は好ましくは「ラスタ化」されるが、この場合、必ずしもシーンセンタからのものである必要はなく、むしろ新規ビューカメラを介して見た２次元のラスタとしてラスタ化される。
【０２６４】
静的設定では、次の新規ビューの再構成で使用される取り込みフレーム４０は、撮像基準時間ＴＭにおいて取り込まれた画像フレームセット７からのものである。動的設定では、次の新規ビューの再構成で使用される取り込みフレーム４０は、撮像基準時間ＴＭ１とＴＭ２の間に取り込まれた画像フレームセット７からのものである。
【０２６５】
１以上の新規ビュー６６およびビューパス６８に沿った視野１１７と一致する１以上のビユーからなる、複数のレンダリングされたシーケンスにより、再生６４が構成される。
【０２６６】
ステップ４２２において、結論として、コントローラ１０５は、好適なフォーマットで再生６４をユーザ・視聴者に出力する。たとえば、ユーザ・視聴者がテレビネットワークである場合、再生６４は、無損失画像のシーケンスのフォーマットで、好適な変換ハードウェアによるＨＤ−ＳＤＩフィードへの変換を介して、放送装置に送られる。
【０２６７】
「対話型プレーヤ」
図１２ｂは、本発明の１以上の実施形態による対話型プレーヤシステム５００の概略図である。
【０２６８】
本発明の１以上の実施形態によれば、新規ビュー対話型プレーヤシステム５００は、サーバ側５０１とビューワ側５５１とを含み、ビューワ側５５１は、演算装置により構成される視聴装置上で、ユーザ選択可能な視聴のための圧縮ファイルを、ビューワが受け取るためのものである。
【０２６９】
プレーヤシステム５００は、サーバ側５０１内の物理的演算装置あるいは任意の他の演算装置として構成されていてもよいが、コントローラ１０５内で実行されるソフトウェアにより構成し、視聴装置上のビューワ側５５１も含めて、１以上の機能の追加が容易にできるようにしておくことが好ましい。
【０２７０】
本発明の１以上の実施形態によれば、ユーザは、複数のモジュールシステム５００を用いて、ステップ５０４〜５６２を含む送信および受信方法を実行する。
【０２７１】
「サーバ側」
好ましくは、サーバ側５０１は、前述のシステム１００と実質的に類似した構成を備えている。必要に応じて、初期設定方法２００、ＣＥＭ方法２２０、およびＳＤ方法２６０は継続的に実行される。周囲モデル２２３を得るために、周囲モデル化方法２２０が継続的に実行される。好ましくは、クロップマスク２６３および（ＲＬＥ）データベース２６５を得るために、ＳＤ方法２６０が実行される。３Ｄデータ表現６０を得るために、イベントキャプチャ方法３００が継続的に実行される。それぞれのカメラ１１５用に、深さマップ４１５が継続的に作成される。前景／周囲分割方法３１８ａが、それぞれのカメラ１１５のために継続的に行われ、前景モデル４２３がそれぞれのカメラ１１５のために継続的に得られる。
【０２７２】
たとえば、システム１００は、少なくとも３台のカメラ１１５から複数の同期画像フレーム５を取り込み、この画像フレームから画像データ６を抽出し、それぞれのカメラ１１５ごとに、画像データ６を再構成して、少なくとも１つの周囲モデル２２３と少なくとも１つの前景モデル４２３にする。本発明の１以上の実施形態によれば、送信方法５０２は、ビューワ側５５１へ送信するための複数データ５０２ａを用意する。ここで、ステップ５０４〜５３０は、ラスタ化パイプラインからなる。
【０２７３】
ステップ５０４において、コンフィギュレーションエンジン４０１は、すべての前景モデル４２３を結合して、単一の前景モデル５０５、すなわち視覚アトラスを作成し、前景データの隣接性と完全性を維持する。隣接性が維持され、取り込まれた画像内の隣接する前景ピクセルは、新規画像においても同じ隣接位置をとって隣接するピクセルとなる。
【０２７４】
ステップ５０６において、コンフィギュレーションエンジン４０１は、マッピングデータ５０７、たとえばルックアップテーブルを作成し、単一の前景モデル５０５内のピクセルまたは画像データの位置を、３Ｄデータ表現６０における、すなわちポイントごとの相関において、そのピクセルのオリジナルの３Ｄ座標と関連づける。ここで、それぞれのピクセルは、それらのオクルージョン値に従ってソーティングされ、八分木に挿入されるが、この点については後述する。
【０２７５】
ステップ５０８において、コンフィギュレーションエンジン４０１は、それぞれのカメラ１１５ごとに、それぞれのカメラ１１５についての前景／周囲分割方法３１８ａを介して得られたすべての周囲要素を、正規化されたベクトル、すなわちその画像内のピクセルから周囲モデル２２３の交点へと引いた仮想線を用いて、周囲モデル２２３上に投影して、その色値をアップデートする。すなわち、コンフィギュレーションエンジン４０１は、特定のカメラ１１５について、その特定のカメラ１１５についての前景／周囲分割方法３１８ａを介して得られたすべての周囲要素を、正規化されたベクトル、すなわちその画像内のピクセルから周囲モデル２２３の交点へと引いた仮想線を用いて、周囲モデル２２３上に投影して、その色値をアップデートする。
【０２７６】
代替的またはステップ５０８に追加的に、それぞれのカメラ１１５からの遮られていないすべてのピクセルからの、それぞれの３Ｄポイントまたはボクセルに、色情報が割り当てられ、すなわち投影されて、色情報がそのピクセルと関連づけられる。
【０２７７】
ステップ５１０において、コンフィギュレーションエンジン４０１は、マッピングデータ５０７、たとえばルックアップテーブルを作成し、周囲モデル２２３内のピクセルの位置を、３Ｄデータ表現６０での、すなわち、ポイントごとの相関での、そのピクセルのオリジナルの３Ｄ座標と関連づける。
【０２７８】
ステップ５１２において、コンフィギュレーションエンジン４０１は、周囲モデル２２３についての中央値（メディアン値）５１２ａを計算し、前景または異なるカメラパラメータ差によって影響されることが少ない周囲値を作成する。この点に関し、シェーディング方法３３１ａおよび／または３３１ｂを用いるシェーダ３３３は、どのピクセルが周囲１６、すなわち背景としてレンダリングされ、どの特徴５７が前景特徴５７によって遮られるのかを判定するとともに、物理的な位置的順序にあるカメラ１１５の色からの異なる混ぜ合わせパラメータを持つ色を決定する。
【０２７９】
ステップ５１４において、コンフィギュレーションエンジン４０１は、セット全体を通して静的周囲を表すために、それぞれのカメラ１１５のビューから周囲モデル２２３の周囲画像５１５を、それぞれのカメラ１１５ごとに記憶する。すなわち、それぞれの周囲モデル２２３は、画像ファイル５１５として保存される。
【０２８０】
ステップ５１６において、コンフィギュレーションエンジン４０１は、それぞれの周囲画像５１５についての中央値（メディアン値）５１２ｂを計算するとともに、中央値５１２ａに対する差５１２ｃを計算する。コンフィギュレーションエンジン４０１は、輝度値として表された差を、それぞれのカメラ１１５のための輝度画像５１７に保存する。ここで、背景色情報は、色情報を一回だけ保存し、輝度についてはフレームごとの変化分だけを保存し、その結果、処理時間が大幅に増加する。
【０２８１】
ステップ５１８において、コンフィギュレーションエンジン４０１は、任意の既知の圧縮アルゴリズムを用いて、深さマップ４１５を圧縮する。好ましくは、無損失圧縮が使用される。しかし、損失を伴う圧縮も使用できる。
【０２８２】
ステップ５２０において、コンフィギュレーションエンジン４０１は、任意の既知の圧縮アルゴリズムを用いてマッピングデータ５０７ａと５０７ｂを圧縮する。好ましくは、無損失圧縮が使用される。しかし、損失を伴う圧縮も使用できる。
【０２８３】
ステップ５２２において、コンフィギュレーションエンジン４０１は、画像シーケンス内の新しいフレームとして、前景モデル５０５を周囲画像５１５に挿入する。これは、背景ジオメトリ上の背景ラスタを投影することにより行われる。代替的または追加的に、画像シーケンスとして保存される代わりに、ラスタとして送信される。
【０２８４】
３Ｄデータ表現６０（たとえば、ポイントクラウド）およびラスタデータは、必要に応じて、非圧縮の状態に戻されて、メモリ１１０ａまたは１１０ｂ（一方はグラフィックプロセッサのメモリであることが好ましい）に記憶されるか、あるいは、グラフィックプロセッサのメモリに直接記憶される。そして、背景穴埋め画像が作られる。
【０２８５】
「新規ビュー」ラスタピクセルごとの処理およびレンダリングは、以下の動作を必要とする。すなわち、
ソートされたカメラを通してルーピングする（カメラの最大数は制限できる）；
視覚投影「アトラス」におけるポイント（ボクセル）を参照する；
指数マトリックスを用いて、投影ソーティングで計算された角度値に基づいて、投影重みを決定する；
浮動重み＝（０．５＊ｐｏｗ（角度ファクタ、プロジェクタ重みファクタ））＋（０．５＊ｐｏｗ（角度ファクタ、プロジェクタ重みファクタ１））を計算する；
深さと色を得るとともに、それに従ってピクセルに着色する；
重み付けされた色を合計して最終的な色を得る、また透明性も考える；
滑らかなエッジを得るために、ピクセルをサンプリングする（アンチエイリアシング）；および、
ピクセルごとの合成および／またはポスト効果を実施する。
【０２８６】
合成および／またはポスト効果は、以下のものを含むことができる。すなわち、
１．被写界深度：仮想レンダリングカメラの焦点距離および追加の内因的レンズパラメータを用いて、被写界深度の外側に位置するピクセルに対してぼかし効果を作る。
２．カメラモーションブラー：仮想カメラのモーションベクトルおよび追加の外因的および内因的レンズパラメータを用いて、シャッタスピードをエミュレートするピクセルに対するぼかしおよびスミアリング効果、並びに、異なる速度で変化する取り込みシーン内の物体に対する露出長さ効果を作る。
３．屈折：レンダリングされたシーンへの光の投影、および、そのシーン内のそれぞれのボクセル要素の光応答度の計算を用いて、光の相互作用および効果を作る。計算は、ミラーリング効果のように単純化されたものでもよく、無限に共振する軌跡をたどる光線のように複雑であってもよい。
４．２次元仮想オーバーレイ：テキストのような２次元のラスタグラフィックを追加する能力。
５．３次元仮想オーバーレイ：３次元のラスタグラフィックを追加する能力。３次元のラスタグラフィックには、３次元の第１およびダウンラインなどのシーンと相互に影響し合うものと、放送チャンネルのロゴなどの相互に影響し合わないものの両方がある。
６．画像コンバイナ：異なるソースからの仮想データのいくつかのソースを重ねる。ソースは、映像であっても静止画像であってもよい。
７．３次元ダスト：シーン照明と相互に影響する小斑点および粒子の効果を作る。
８．色補正：単純な機能から複雑な機能を用いて、画像の色空間を変える。単純な機能には、ガンマ、ゲインなどが含まれ、複雑な機能には、シーン内または他の場所の任意の可能な機能に由来するルックアップテーブルが含まれる。
【０２８７】
ステップ５２４において、コンフィギュレーションエンジン４０１は、任意の既知の圧縮アルゴリズムを用いて、前景モデル５０５を圧縮する。好ましくは、無損失圧縮が使用される。しかし、損失を伴う圧縮も使用できる。
【０２８８】
本発明の１以上の実施形態によれば、前景モデル５０５を効率的に圧縮するために、圧縮アルゴリズムは、最も密度の高いデータに焦点を当てるために、八分木などの１以上の木データ構造であってもよい。
【０２８９】
たとえば、八分木圧縮が、３Ｄデータ表現６０ごとに適用され、上述したように実行される。イベント空間１０が静的方法で分割され、多くの同一のサブボリューム、すなわち子ノードが作られる。メッシュポイントが完全な八分木フォーマットに置かれる。すなわち、ポイントを含まない子ノードは、八分木において空の子ノードとして表される。八分木のそれぞれの子ノードには、０から始まる増加インデクスが提供される。同じ親ノードの８個のすべての子ノードは連続番号を持ち、連続する親ノードは、それらの子ノードのインデクスにおいて８の相違を持つ。最下位の親ノードのシーケンシャルインデクスの差が、子ノードのフル／空状態とともに記憶される。差分シーケンスは、無損失ＬＺＷ圧縮される。
【０２９０】
本発明の１以上の実施形態によれば、コンフィギュレーションエンジン４０１は、次のサブステップにより、前景モデル５０５を圧縮する。
【０２９１】
１．３Ｄデータ表現６０が構築された後、コンフィギュレーションエンジン４０１は、３Ｄデータ表現６０からのそれぞれのピクセルを、すべてのカメラ１１５に投影することを試みるとともに、いずれのカメラがそれぞれのピクセルを画像化できたか印を付ける。コンフィギュレーションエンジン４０１は、そのカメラから、どのピクセルが画像化され、どのピクセルが画像化されなかったか印を付けるとともに、この情報３Ｄデータ表現６０を保存する。
２．同じカメラ１１５のセットから見えるすべてのピクセルが、コンフィギュレーションエンジン４０１によって集められ、上述のように圧縮されるべき単一の八分木に置かれ、この八分木が１以上のメモリに記憶される。八分木の使用は、表示段階でのレンダリング速度を上げることができるため、有利である。
３．コンフィギュレーションエンジン４０１は、画像内に見えるすべてのピクセルを前景とみなす。すべてのカメラからのすべての前景データは、コンフィギュレーションエンジン４０１によって組み合わされて、単一の前景フレーム画像とされる。
４．前景データがそのままではフィッティングするのに大きすぎるとコンフィギュレーションエンジン４０１が判断した場合は、それはブロックに分割され、そのブロックが、コンフィギュレーションエンジン４０１によって、前景フレーム画像内の空ブロック位置に置かれる。
５．コンフィギュレーションエンジン４０１は、前景フレームを構築するのに加えて、前景フレーム画像を前景モデル５０５としてマッピングする。
【０２９２】
ステップ５２６において、コンフィギュレーションエンジン４０１は、画像シーケンス内の新しいフレームとして、輝度画像５１７を周囲画像５１５に挿入し、あるいは代替的または追加的に、画像シーケンスとして保存する代わりに、ラスタとして送信する。
【０２９３】
ステップ５２８において、コンフィギュレーションエンジン４０１は、任意の既知の圧縮アルゴリズムを用いて、輝度画像５１７を圧縮する。好ましくは、無損失圧縮が使用される。しかし、損失を伴う圧縮も使用できる。
【０２９４】
ステップ５２８において、コンフィギュレーションエンジン４０１は、任意の既知の圧縮アルゴリズムを用いて、周囲画像５１５を圧縮する。好ましくは、無損失圧縮が使用される。しかし、損失を伴う圧縮も使用できる。
【０２９５】
ステップ５３０において、コンフィギュレーションエンジン４０１は、任意の既知の圧縮アルゴリズムを用いて、周囲モデル２２３を圧縮する。好ましくは、無損失圧縮が使用される。しかし、損失を伴う圧縮も使用できる。
【０２９６】
ステップ５３２において、コンフィギュレーションエンジン４０１は、それぞれの圧縮データを圧縮された順番で送信する。
【０２９７】
本発明の１以上の実施形態によれば、送信データ５０２ａを受信して再生６４にレンダリングするために、受信方法５５０がビューワ側５０１の演算装置のクライエント側レンダリングエンジン５０３で実施される。
【０２９８】
「ビューワ側」
ステップ５５２において、レンダリングエンジン５０３は、圧縮された順番で受信と圧縮解除を行う。
【０２９９】
ステップ５５４において、レンダリングエンジン５０３は、視聴装置のメモリ上に周囲画像５１５を再現する。周囲画像５１５は、プレーヤのユーザインタフェースを介してユーザが選択した新規ビュー６６、すなわち仮想カメラに従って生成される。ステップ５５２で抽出された周囲画像５１５は、混ぜ合わされ、ステップ５５２で抽出された周囲モデル２２３上に投影される。画像の混ぜ合わせは、背景画像を捉えたカメラからの仮想カメラの角距離に対して重みづけをすることで行われる。
【０３００】
ステップ５５６において、レンダリングエンジン５０３は、視聴装置のメモリ上で周囲値を再現する。これらの値は、プレーヤのユーザインタフェースを介してユーザが選択した新規ビュー６６、すなわち仮想カメラに従って再作成される。
【０３０１】
ステップ５５８において、レンダリングエンジン５０３は、ステップ５５２で抽出されたマッピングデータ５０７ａおよび５０７ｂを用い、ステップ５５２で抽出されたマップ済み画像上にマッピングされた周囲画像５１５のピクセルを再配置する。そして、ステップ５５２で抽出されたオクルージョンデータが、新規ビュー６６に対して無関係なピクセル（すなわち、ボクセル）の値を無視するために使用される。
【０３０２】
ステップ５６０において、レンダリングエンジン５０３は、ステップ５５４で再現された周囲画像５１５に輝度差を重ね、背景上に影、明るい部分、およびバウンス（輝度差）を再現する。得られた背景画像は、視聴装置の画面に表示される。
【０３０３】
ステップ５６２において、レンダリングエンジン５０３は、新規ビュー６６に従って、周囲モデル２２３上に周囲画像５１５の再現データを投影して、前景特徴を形成し、ステップ５６０で作られた背景画像の上に適用し、レンダリングされた新規ビュー画像または画像のシーケンスとして、視聴装置の画面に表示する。
【０３０４】
さらに、レンダリングエンジン５０３は、以上のステップ５５２〜５６２を繰り返して、境界ボリューム２０内において、新しい新規ビューのレンダリングされた画像または画像のシーケンスを視聴装置の画面上に生成する。すなわち、新規ビューは、境界ボリュームの外側にあるイベント１０を表示することはできない。
【０３０５】
「使用例」
本発明１以上の実施形態によれば、システム１００および新規ビュープレーヤシステム５００は、イベント１０が起きている間またはイベント１０が記録された後に、イベント１０を見るために１以上のユーザによって使用される。
【０３０６】
１以上のユーザ・視聴者２は、イベント１０内の任意の場所、イベント１０の周囲、あるいはその他の好適な場所に位置すことができる。それぞれのユーザは、システム５００によって伝搬された送信データ５０２ａを受信するためのクライエント側レンダリング装置５０３を備えた演算装置を有していることが好ましい。システム１００とシステム５００は、たとえば、スポーツ開催地における場合のように、互いに接近して配置されてもよい。あるいは、一人のユーザ・視聴者は、メインとなるスポーツ動作が起きている場所から離れていてもよい。送信データ５０２ａを受信した後で、ユーザ−ビューは、再生６４としてその行動を見ることもできる。ユーザ・視聴者が選んだビューパス６８を用いることにより、新規ビュー６６がユーザ・視聴者２に示される。
【０３０７】
また、システム１００、５００および／または視聴装置は、１以上のソーシャルメッセージングモジュール、すなわちフィーチャーを備えることができ、このようなモジュールは当該技術分野で知られており、直接的なテキストメッセージング、ウォールへの投稿、インターネットへのコンテンツのアップロード、および／または、ブロードフィールド放送のために使用できる。システム１００および／または５００のソーシャルメッセージングフィーチャーまたは任意の他の部分は、再生６４を全体的にまたは部分的に組み込み、再生６４の全体または再生６４の特定の基準位置にハイパーリンクすることが好ましい。システムおよび／または視聴装置は、画像としての新規ビュー、レンダリングされたクリップ、および／またはカメラビューパス６８を、さらなる使用および／または参考のために保存するための１以上のデータ操作モジュールを含み、ユーザが望む場合には、１以上の他のユーザ、または１以上のユーザアクセス可能データベース、たとえば、ソーシャルネットワークデータベースとシェアされる。
【０３０８】
システム５００を使用して、それぞれのユーザがシーンと画像のユーザ独自のデータベースを作り、それらを任意の望ましい手段、たとえば、ソーシャルネットワークまたはソーシャルネットワークへのアクセスポートを介して、１以上の他のユーザに送ることができると、有利である。その後、受取側のユーザは、ユーザが選択可能な彼らの新規ビュー画像と映像を決定して、それらについて議論し合うことができる。
【０３０９】
再生６４は、競技役員が得点の有効性を判定するためや、ファンが得点の有効性や、他の興味を起こさせたり物議を醸したりするスポーツ動作について議論するために用いられ、さらに、１以上の新規ビュー６６を使って彼らの見解の証拠を提供するために使用されることができる。
【０３１０】
本発明の１以上の実施形態によれば、システム１００および／またはサブシステムにおいて、異なるイベント１０における複数の再生６４を作り、比較として重ねてさらなる累積的再生６４を作ってもよい。たとえば、野球の試合の間またはその後に、交替で打席に立つ多くの選手の再生６４を比べて、種々のタイプの打撃スタイルを示すことができる。
【０３１１】
この点、比較方法において、ユーザは、関連し興味のあるそれぞれのイベントについて複数の再生６４、すなわち取り込みフレームセットを作成する。フレームセットは、固定された瞬間か、画像のシーケンスであるかは問われない。それぞれのフレームセットは、基準点、たとえば、野球のホームプレート、たとえば、ホームプレートのコーナーに視点を設けることができる。これにより、試合中の種々の投球とこれらの投球が種々の打者に対して成功したかどうかを示すことができる。画像フレームのそれぞれのデータセットは、複数のユーザのために１以上のウエブサイトにアップロードして、ユーザが評価したり、互いに対話したり、そのデータセットの作成者と対話できるようにすることもできる。
【０３１２】
本発明を特定の実施形態に関連して記載したが、多くの代替、変更、および変形については、上記の記載を参照することにより、当業者にとっては明白なものであると理解される。
【図１ａ】
0006599436.tif 000006
【図１ｂ】
0006599436.tif 000007
【図１ｃ】
0006599436.tif 000008
【図２ａ】
0006599436.tif 000009
【図２ｂ】
0006599436.tif 000010
【図２ｃ】
0006599436.tif 000011
【図２ｄ】
0006599436.tif 000012
【図３】
0006599436.tif 000013
【図４】
0006599436.tif 000014
【図５】
0006599436.tif 000015
【図６】
0006599436.tif 000016
【図７】
0006599436.tif 000017
【図８】
0006599436.tif 000018
【図９】
0006599436.tif 000019
【図１０ａ】
0006599436.tif 000020
【図１０ｂ】
0006599436.tif 000021
【図１０ｃ】
0006599436.tif 000022
【図１０ｄ】
0006599436.tif 000023
【図１０ｅ】
0006599436.tif 000024
【図１０ｆ】
0006599436.tif 000025
【図１１ａ】
0006599436.tif 000026
【図１１ｂ】
0006599436.tif 000027
【図１１ｃ】
0006599436.tif 000028
【図１１ｄ】
0006599436.tif 000029
【図１１ｅ】
0006599436.tif 000030
【図１１ｆ】
0006599436.tif 000031
【図１１ｇ】
0006599436.tif 000032
【図１１ｈ】
0006599436.tif 000033
【図１１ｉ】
0006599436.tif 000034
【図１１ｊ】
0006599436.tif 000035
【図１１ｋ】
0006599436.tif 000036
【図１１ｌ】
0006599436.tif 000037
【図１１ｍ】
0006599436.tif 000038
【図１２ａ】
0006599436.tif 000039
【図１２ｂ】
0006599436.tif 000040