(57)【特許請求の範囲】
【請求項１】
実シーン（120）を表す画像ストリームの少なくとも１の画像（第１画像という）に、リアルタイムで、少なくも１の仮想オブジェクトの少なくとも１の３次元表示から抽出した、少なくとも１の画像（第２画像という）を挿入するための方法であって、
−前記画像ストリームからの前記少なくとも１の第１画像を取得するステップと、
−前記実シーンの実オブジェクトの位置・方向データに従って、前記実シーンにおける前記少なくとも１の仮想オブジェクトの位置・方向を決めるステップであって、前記実オブジェクトの方向データを有する、前記位置・方向データの少なくとも一部は、前記実シーンにおける少なくとも１のセンサ（135）から受信され、前記実オブジェクトの位置データを有する、前記位置・方向データの少なくとも他の一部は、前記取得した第１画像から取得したものであるステップと、
−前記少なくとも１の仮想オブジェクトの位置・方向に基づいて、前記少なくも１の仮想オブジェクトの３次元表示から前記少なくとも１の第２画像を抽出するステップと、
−前記少なくとも１の抽出された第２画像を、前記少なくとも１のオブジェクトの前記位置に基づいて、前記取得した少なくとも１の第１画像に挿入するステップ（610）と、を有する方法。
【請求項２】
前記少なくとも１の第１画像はカメラから出力され、前記少なくとも１のセンサは前記カメラに対して可動的であることを特徴とする請求項１に記載の方法。
【請求項３】
前記方向データの少なくとも１つは、前記実シーンに存在する角度センサ（135′、135″）から受け取られることを特徴とする請求項１又は２に記載の方法。
【請求項４】
前記位置・方向データの少なくとも１つは、前記センサに関係する特異な幾何学的構成要素（615）に基づいて前記取得した第1画像から抽出されることを特徴とする請求項１〜３のいずれか一項に記載の方法。
【請求項５】
−前記取得した第１画像をセグメント化するステップ（810）と、
−前記セグメント化された第１画像から少なくとも１の前記特異な幾何学的構成要素の輪郭を抽出するステップ（815）と、
−前記セグメント化された第１画像から抽出された輪郭に基づいて、前記特異な幾何学的構成要素の位置を決めるステップ（820）と、
を更に含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記第１画像を色相、飽和度および輝度を座標成分として有する空間に変換するステップをさらに有する、請求項１〜５のいずれか一項に記載の方法。
【請求項７】
前記実シーンにおける特異な幾何学的構成要素の位置が、前記第１画像における前記特異な幾何学的構成要素の位置により及び前記第１画像における前記特異な幾何学的構成要素の大きさにより決められることを特徴とする請求項５または６に記載の方法。
【請求項８】
前記特異な幾何学的構成要素は球である、請求項４〜７のいずれか一項に記載の方法。
【請求項９】
請求項１乃至８のいずれか1項の方法に基づく方法の各ステップを実行する命令を含むコンピュータプログラム。
【請求項１０】
請求項１乃至８のいずれか1項に記載の方法の各ステップを実行するためのコンピュータプログラムのコード命令を有するコンピュータ又はマイクロプロセッサにより部分的に又は全体的に読み取り可能である移動可能または不能の情報の格納手段。
【請求項１１】
少なくとも１のビデオカメラ及び少なくとも１の表示装置に接続され、請求項１乃至８のいずれか1項に記載の方法の各ステップを実施する手段を含むリアリティ向上装置。
【請求項１２】
−前記画像ストリームからの少なくとも１の第１画像を記憶する手段（210）と、
−前記少なくとも１の仮想オブジェクトの３次元表示を記憶する手段と、を有する、請求項１１に記載の装置。
【請求項１３】
少なくとも１の可視の特異な幾何学的構成要素（615）と、請求項１１または１２に基づく装置に位置及び/又は方向の情報を送信するセンサ（135″）とを備える装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は実画像とバーチャル画像との合成に関する。これにより、リアリティが向上する。更に具体的には、実シーン(scene reelle)からの位置・方向データを使って、実シーンの表示に仮想オブジェクトをリアルタイムで挿入するための方法に関する。
【背景技術】
【０００２】
カメラと表示装置を使うミラー(miroir)効果が多くの応用分野で、特に、ビデオゲームの分野で使われている。この技術の基本は、コンピュータ又はコンソールに接続されているwebcamタイプカメラの画像を取得することである。同画像は、前記カメラが接続されているシステムのメモリに記憶されることが好ましい。次に、オブジェクトを追跡するアルゴリズム（blobs trackingと呼ばれている）を使って、リアルタイムで所定要素の輪郭（ユーザの頭部、手）が計算される。画像の形状の位置により、表示画像の部分を修正したり、デフォルメしたりすることができる。このやり方により、自由度２に基づいて画像ゾーンを決めることができる。
【０００３】
実シーンを表す画像に仮想オブジェクトを挿入する位置・方向を決めるための方法は、実シーンにおいて、仮想オブジェクトの位置・方向を示すことである。一つの球がこのために使われる。その球は、この空間の２次元表現における球の位置に基づいて及びその直径に基づいて、３次元空間におけるその位置を計算できるように、十分大きいことが必要である。前記球の方向は、色づけされたシールをその表面に張って評価することができる。球が十分大きく、画像取得システムの精度が十分高い場合（これはユーザの動き、特に急激な移動を制限する）は、このやり方は効果がある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、このやり方は、多数のアプリケーションに対し必要なパフォーマンスを提供しない。従って、低コストで、このシステムのパフォーマンスを向上させる必要性がある。
【課題を解決するための手段】
【０００５】
本発明によれば、前記の複数課題の少なくとも１を解決することができる。
【０００６】
本発明は、少なくとも１のビデオカメラ及び少なくとも１の表示装置に接続されている本発明は、実シーンを表す画像ストリームの少なくとも１の画像（第１画像という）に、リアルタイムで、少なくとも１の仮想オブジェクトの３次元表示から抽出した少なくとも１の画像（第２画像という）を挿入するための方法を対象とする。この方法は次のステップを含むことを特徴とする。
【０００７】
−画像ストリームからの少なくとも１の第１画像を受信するステップ；
−前記実シーンの位置・方向データを使って、実シーンの表示における少なくとも１の仮想オブジェクトの位置・方向を決めるための情報を受信するステップ、但し、少なくとも１の前記データ部分は前記実シーンにおける少なくとも１のセンサから受信されたものである；
【０００８】
−少なくとも１の仮想オブジェクトの位置・方向に基づいて、少なくも１の仮想オブジェクトの前記少なくとも１の前記３次元表示の第２画像を抽出するステップ；及び
−前記少なくとも１の抽出された第２画像を、少なくとも１のオブジェクトの前記位置に基づいて、前記少なくとも１の第１画像に挿入するステップ。
【０００９】
本発明による方法によれば、リアルタイムで１又は複数の仮想オブジェクトを挿入する位置、並びに１又は複数の仮想オブジェクトを表示する方向を正確に決めることができる。前記仮想オブジェクトの位置と方向は自由度６に基づいて決定される。精度と計算時間によりリアリティ向上アプリケーション、例えばビデオゲーム（例えユーザが急激な動きをしても、ユーザのジェスチャーが追跡される）が可能になる。この方法により、大きな動きが可能になる。
【００１０】
具体的な実施例によれば、少なくとも１の前記方向データが実シーンに存在する角度センサから受信される。
【００１１】
具体的な実施例によれば、少なくとも１の前記位置データが実シーンに存在する角度センサから受信される。
【００１２】
別の具体的な実施例によれば、位置・方向データの１部分が実シーンに存在するセンサから受信され、位置・方向データの他の部分が前記取得された第１画像から抽出され、信頼性の高い、経済的な自由度６の位置・方向センサが形成される。
【００１３】
少なくとも１の前記位置・方向データが、特異な（singulier）幾何学的構成要素（１又は複数の仮想オブジェクトを挿入する位置を、精度高く決めを行う前記センサに接続されている）から取得される前記第１画像から抽出されると有利である。
【００１４】
具体的な実施例によれば、本方法は更に、次のステップを有している。
−取得される前記第１画像のセグメント化するステップ；
−前記セグメント化された第１画像から少なくとも特異な幾何学的構成要素の輪郭を抽出するステップ；及び
−前記セグメント化された第１画像から抽出された輪郭に基づいて、特異な幾何学的構成要素の位置を決めるステップ。
【００１５】
これらステップを実行することにより、画像ストリームの画像における特異な幾何学的構成要素の位置決めを改善することができる。有利なやり方で、実シーンにおける特異な幾何学的構成要素の位置が、前記第１画像における前記幾何学的構成要素の位置により及び前記第１画像における特異な構成要素の大きさにより決められる。
【００１６】
具体的な実施例に拠れば、本方法は更に、前記仮想オブジェクトの位置の推定ステップを有している。前記推定位置と前記決定位置との比較により、１又は複数の仮想オブジェクトを挿入する位置、並びに１又は複数の仮想オブジェクトを挿入する位置の精度を向上させることができる。
【００１７】
本発明は、前記方法の各ステップを実行する命令を含むコンピュータプログラムを対象とする。
【００１８】
本発明は、同様に、情報の格納手段（可動又は非可動）を対象とする。同格納手段は、コンピュータ又はマイクロプロセッサ（前記方法の各ステップを実行するためのコンピュータプログラムのコード命令を有する）により部分的に又は全体的に読み取り可能である。
【００１９】
本発明は、又、リアリティ向上の装置を対象とする。同装置は少なくとも１のビデオカメラ及び少なくとも１の表示装置に接続されている。前記装置は前記方法の各ステップを実行するように構成されている手段を有している。
【００２０】
本発明は、又、実シーンを表す画像ストリームの少なくとも１の画像（第１画像という）に、リアルタイムで、少なくも１の仮想オブジェクトの３次元表示から抽出した少なくとも１の画像（第２画像という）を挿入するための装置を対象とする。この装置は次の手段を含む点を特徴とする。
【００２１】
−画像ストリームからの少なくとも１の第１画像を受信する手段；
−少なくとも１の仮想オブジェクトの３次元表示を記憶する手段；
−前記実シーンの位置・方向データを使って、実シーンの表示における少なくとも１の仮想オブジェクトの位置・方向を決めるための情報を受信する手段；但し、少なくとも１の前記データ部分は前記実シーンにおける少なくとも１のセンサから受信されたものである；
−少なくとも１の仮想オブジェクトの位置・方向に基づいて、少なくも１の仮想オブジェクトの前記少なくとも１の前記３次元表示の第２画像を抽出する手段；及び
−前記少なくとも１の抽出された第２画像を、少なくとも１のオブジェクトの前記位置に基づいて、前記少なくとも１の第１画像に挿入する手段。
【００２２】
本発明による装置によれば、リアリティ向上アプリケーションのために、リアルタイムで１又は複数の仮想オブジェクトを挿入する位置、並びに、１又は複数の仮想オブジェクトを表示する方向を、自由度６に基づいて、正確に決定することができる。
【００２３】
具体的な実施例によれば、本方法は更に、取得された前記第１画像の少なくとも１の前記位置・方向データを抽出するための手段（信頼性の高い、経済的なセンサの利用を可能にする）を有している。
【００２４】
本発明は、又、少なくとも１の可視の特異な幾何学的構成要素とセンサを含む装置を対象とする。前記センサは、位置及び/又は方向の情報を前記装置に送信するように構成されている。この装置は信頼性が高く、経済的で、個人的アプリケーションに使用することもできる。
【図面の簡単な説明】
【００２５】
本発明の有利な点、目的、特徴は、非限定的な実施例を使って、図面を参照しながら、後記のとおり、詳細に説明する。
【図１】本発明に基づく第１装置の概要図である。
【図２】少なくとも部分的に本発明を実施するこのできる装置の例である。
【図３】第１の実施実施例に基づいて、本発明の装置の実施例の概略図である。ここでは自由度６のセンサが使用されている。
【図４】自由度６のセンサ及び《トリガ（gachette）》タイプのスイッチを持つ図３の把持部の１実施例である。
【図５】図５ａと図５ｂからなり、図３、４で示した装置を実施する実施例を示す図である。
【図６】本発明の第２実施例の装置の概略図である。
【図７】図７ａ、図７ｂ、図７ｃからなり、把持部の実施例である。図７ａは把持部の全体図であり、図７ｂ、図７は把持部の電気部分の概略図である。
【図８】実シーンの表示における幾何学的構成要素の３Ｄ位置を決めるため使われるアルゴリズムのステップである。
【図９】画像変換時の輝度に応じた飽和度を加重計算するために使われる係数αの変化を示す。
【図１０】カメラから出力される画像から、球とカメラとの間の距離を決めるために使われる原理を示す。
【発明を実施するための形態】
【００２６】
本発明によれば、実シーンの表示に挿入されるべき仮想オブジェクトの位置と方向に関係するデータは実シーンにおける少なくとも部分的に一つのセンサから出力される。
【００２７】
図１は本発明による第１装置100の概略図である。ユーザ105は、鏡の役割を持つ表示装置115に向かって、家具、植物のような各種要素を持つ周囲環境110に置かれることが好ましい。表示装置115に投影される画像は、ビデオカメラ125で撮影された実シーン120を修正した画像である。カメラ125から出力されるビデオストリームはコンピュータ130に送信される。同コンピュータは、修正を加えた後で、ビデオストリーム（カメラ125から出力された）を表示装置115に再送信する。コンピュータ130は、特に、１又は複数の仮想オブジェクトをビデオストリーム（カメラ125から出力された）に挿入する役割を果たしている。仮想オブジェクトの位置と方向は、少なくとも部分的にセンサ135（コンピュータ130に接続される）により実シーン120において決定される。
【実施例１】
【００２８】
第１実施例において、センサ135は６の自由度を持つセンサであって、同センサにより、実シーン120における位置及び方向（Ｘ、Ｙ、Ｚ、cap方位角、tangage：縦揺れ,roulis：横揺れ)を決定することができる。例として、このセンサはPolhemus社のセンサ《Fastrack》（Fastrackは出願商標）であってよい。第２実施例において、センサ135は３の自由度を持つセンサであって、同センサ135により、方向（cap、tangage,roulis）を決定することができ、センサの位置（Ｘ、Ｙ、Ｚ）はカメラ125の出力画像の視覚解析により決定される。
【００２９】
システム100は次の構成要素から構成されている。
−  表示装置（例えば、LCD表示装置、プラズマ表示装置、又はビデオプロジェクション表示装置）；
−  ３の自由度に基づいて方向を決定することができるセンサ、及び選択的に、３の自由度に基づいて位置を決定することができるセンサ；
−  ビデオカメラ；両眼視差（effets de parallaxe）を回避するために、表示装置近くに、表示装置の軸において設けられることが好ましい。
−次の操作を行うコンピュータ（例えばパーソナルコンピュータ）。
−カメラから送られて来るビデオ信号のリアルタイムのビデオ取得。（但し、ビデオ信号は、例えば、PAL（Phase Alternted Line）フォーマット信号、NTSC（National Television System Committee）、YUV (Luminance-Bandwidth-Chrominance)、YUV-HD(Luminance-Bandwidth-Chrominance High Definition Interface)、SDI (Seriai Digital Interface)又はHD- SDI (High Definition Seriai Digital Interface)である。これらは、例えば、HDMI(High Definition Multimedia Interface)又はUSB/USB2（Universsal Serial Bus）に基づいて送信される;
−動きセンサから来るデータストリームのリアルタイム収集、及び実施例によっては、位置センサから来るデータストリームのリアルタイム収集；
−コンピュータのグラフィックカードの出力を介したリアリティ向上画像の生成（前記出力は、例えば、VGA(Video Graphics Arrays)、DVI（Digital Visual Interface）、HDMI,SDI,HD−SDI,YUV,YUV−HDである）;及び
−《鏡》効果を構成するために画像の左側が右側になるように最終画像に対しシンメトリ操作を行うことが好ましい。
【００３０】
前記コンピュータは、Total Immersion社のソフトウェアD’fuison（D’fuisonはTotal Immersion社の商標）のようなリアリティ向上アプリケーションを有し、例えば次の機能を使って対話型のリアリティ向上シーンを生成することができる。
−動きデータのストリームのリアルタイム収集；
−カメラから出力されるビデオストリームに、３Ｄ合成オブジェクトの２次元表示をリアルタイムで追加すること、及び、表示装置に修正ビデオストリームを送信すること。
【００３１】
アプリケーションの原理については、特許出願ＷＯ2004/012445に記載されている。
【００３２】
Ｄ′fusionソフトウェアにより、決定された位置と方向に基づいて、合成オブジェクトをリアルタイムで表示することができる。又、ユーザはビデオストリームに挿入される別の仮想オブジェクトに対話する（interagir）ことができる。
【００３３】
図２に、本発明による又は本発明の一部による装置が記載されている。装置200は、例えばマイクロコンピュータ、ワークステーション、又はゲームコンソールである。
【００３４】
装置２００は、通信バスを備え、次のものに接続されていることが望ましい
− 中央処理ユニット又はマイクロプロセッサ204（CPU、Central Processing Unit）;
− オペレーティングシステム及び“Prog”のようなプログラムを含むことができる固定メモリ（ROM,Read Only Memory）206;
−  前記プログラム実行中に生成された及び修正された変数及びパラメータを登録するように構成されたレジスタを持つ動的メモリ又はキャッシュメモリ（RAM,Random Access Memory）208;
−  カメラ212に接続されたビデオキャプチャカード210；
−  センサ（図示していない）に接続されたデータ収集カード214；及び
−  表示装置又はプロジェクタ218に接続されたグラフィックカード216。
【００３５】
選択として、装置200は以下の構成要素を備えている。
−  前記プログラム“Prog”及び本発明に基づいて処理された又は処理すべきデータを有することができるハードディスク220；
−  キー222及びマウス224又は別の全てのポインタ装置（光学ペン、タッチ表示装置）又はリモートコントローラ(ユーザは本発明に基づくプログラムを使って対話することができる)；
−  通信ネットワーク（例えばインターネット）228に接続された通信インターフェース226。このインターフェースはデータを送受信することができる；
−  本発明に基づいて処理された又は処理すべきデータを読み書きできるメモリカードリーダ（図示しない）。
【００３６】
通信バスにより、装置200における及びそれに接続されている種々の構成要素の通信及びインターオペラビリティが可能になる。バスの表示は限定する（limitative）ものではない。特に、中央ユニットは、直接的に又は装置200の別の要素を介することにより、装置200の全構成要素に命令を通信することができる。
【００３７】
各プログラムの実行可能コードにより、本発明に基づいて、プログラム可能装置は、プロセスを実行することができる。前記実行可能コードを、例えば、ハードディスク220又は固定メモリ206に格納することができる。
【００３８】
本発明の変形例によれば、プログラムの実行可能コードは、通信ネットワーク228を介して、インターフェース226を通して受信され、前記と同一のやり方で格納することができる。
【００３９】
メモリカードは、例えばコンパクトディスク（CD−ROM又はDVD）のような情報記録担体に置き換えることができる。一般的に、メモリカードは情報記録手段（コンピュータ又はマイクロプロセッサにより読取り可能で、装置に組込まれ又は込まれず、移動可能であり、本発明の方法の実行が可能な１又は複数のプログラムを記憶するように構成された）に置換することができる。
【００４０】
より一般的には、１又は複数のプログラムは、実行する前に、装置200の格納手段に格納されることができる。
【００４１】
中央ユニット204は、本発明に基づく命令又はプログラムのソフトウェアコードの部分の実行を命令し、コントロールする。命令は、ハードディスク220又は固定メモリ206又は前記別の格納要素に、格納されている。電圧が与えられると、不揮発性メモリ（例えばハードディスク220又は固定メモリ206）に格納されている１又は複数のプログラムは、動的メモリ208（本発明による１又は複数のプログラムを実行することができるコードを収納する）及びレジスタ（本発明の実施に必要な変数及びパラメータを記憶する）に送られる。
【００４２】
本発明による装置を備える通信装置は、プログラムされた装置であることができることに注意すべきである。この装置は、例えば、ＡＳＩＣ（Application Specific Integrated Circuit）に固定されている１又は複数の情報処理プログラムのコードを持っている。
【００４３】
図３には、前記の本発明の第１実施例（６の自由度を持つセンサが使用されている）の装置の一例の概略が示されている。この実施例によれば、表示装置115及びカメラ125は、コンピュータ130′に接続されている。把持部300が、ボックス305を介してコンピュータ130′に接続されている。ビデオカメラ125は、光学的に広角で、ユーザが表示装置近傍で操作できることが好ましい。ビデオカメラ125は、例えば、対物レンズSony  VCLHG073Yを備えるカメラSony  HDR  HC1である。
【００４４】
コンピュータ130′は、ビデオカメラ125に接続されているビデオキャプチャカード210、表示装置115に接続されているグラフィックカード216、ボックス305を介して把持部300の位置、方向を検知するセンサに接続されている第１通信ポート２１４−１（COM1）、及び、好ましくはボックス305を介して把持部300の《トリガ》タイプのスイッチに接続されている第２通信ポート214-2 (COM2)を、備えている。《トリガ》タイプのスイッチには、《トリガ》を押圧し、時間的に正確に（de facon ponctuelle）、電気回路の開閉を可能にするスイッチが含まれる。このスイッチを使うことにより、ユーザとコンピュータ（130′）ソフトウェアとの間の対話を増大することができる。例えば、スイッチ310により、ゲームソフトにおける射撃をシミュレートすることができる。ビデオキャプチャカードは、例えば、Decklinck  PCleカードである。グラフィックカードは、合成画像をビデオストリームに挿入することができる３Ｄグラフィックカードである。例えば、ATI X1800XLカード又は、ATI 1900XTカードである。ここで説明した例は２つの通信ポート（ＣＯＭ１及びＣＯＭ２）を使うものであるが、別の通信インターフェースをコンピュータ130′と把持部300との間で使用することができる。
【００４５】
コンピュータ130′がオーディオカード320（表示装置115に一体的に組み込まれているスピーカ（ＨＰ）に接続する）を備えていると有利である。ビデオキャプチャカード210とビデオカメラ125との間の関係は、次の規格のうちの１つに基づくことができる。即ち： video composite、Svideo, YUV, YUV-HD1 SDI, HD-SDI, HDMI, VGAである。通信ポート214-1及び241-2、センサ及び把持部300の《トリガ》タイプのスイッチとの間の関係は、RS-232タイプであることができる。コンピュータ130′は、例えば、Intel Pentium（登録商標） IV（周波数 3GHz）, ＲＡＭメモリ容量 3Gbyte, ハードディスク容量120Gbyte 、収集用カード及びグラフィックカードのための２つのインターフェース PCI express (Peripheral Component Interconnect)を備えた標準ＰＣである。
【００４６】
把持部300は自由度６の位置、方向センサ135′を備えることが好ましい。例えば、センサはPolhemus 社の" Fastrack "で、スイッチは《トリガ》タイプスイッチ310である。図４に把持部300の一例を示す。
【００４７】
ボックス305は、把持部300とコンピュータ130′との間のインターフェースである。ボックス305は、位置・方向センサに接続されており、センサから出力される信号をコンピュータ130′が利用できるデータに変換する。ボックス305は動きセンサモジュール315を備えている。更にボックス305にセンサ135′の信号を無線送信できる送信機320を備えていると有利である。
【００４８】
図４にはセンサ135′と《トリガ》タイプのスイッチ310を持つ把持部300が示されている。通常、把持部300は、室内でアーケードゲーム（jeux d'arcade）で使用されるピストルである。例えば、Happ社が米国で販売している光学銃である。把持部を形成するために、銃の砲身は小さくすると有利である。又、《トリガ》タイプのスイッチ310だけを有するように、元の電子回路（l'electronique d'origine）は取り除かれる。位置・方向センサ135′が把持部に挿入される。センサのライン及びトリガのラインは、把持部とセンサボックス305との間の電子回路ケースに挿入される。ＤＢ9型コネクタが電子回路ケースの別の端部に設けられると有利である。その結果、ユーザがトリガを押すときに、スイッチは閉成され、直列ポートのプラグピン8と7は、4.7ＫΩの抵抗を介してそれぞれに接続される。
【００４９】
別の実施例では、電子回路ケースは取り除かれ、無線通信モジュールが把持部300に挿入される。この実施例によれば、センサから出力されるデータは無線でボックス305に送信される。それを無線通信モジュールに結合しない限り、《トリガ》タイプのスイッチは非アクティブである。
【００５０】
図５は、図５ａと図５ｂからなる。図５は、図３と４に示されている装置を使う実施例が示されている（その実施例によれば、データは把持部と動きセンサボックスとの間の有線接続を使って送信される）。図５ａは装置を側面から見た図であり、図５ｂは同装置の斜視図である。この実施例によれば、ユーザ105は、ユーザの前に、ほぼ目の高さに設けられている表示装置115をもつ装置500の正面にいると有利である。同装置500は、表示装置125の近傍に置かれるビデオカメラ125、動きを検知するボックス305、コンピュータ130′を備えている。コンピュータ130′には、前記ビデオカメラ125、前記表示装置115、前記‘動きを検知するボックス305’が接続されている。この実施例では、ユーザ105は、‘動きを検知するボックス305に接続された把持部300′を使っている。
【００５１】
特定の実施例によると、一様な色のバックグラウンド（例えば、ブルーのバックグラウンド又はグリーンのバックグラウンド）がユーザの後に置かれている。この一様な色を使って、ソフトウェアはユーザの輪郭を抽出する。即ち、ビデオカメラ125から出力される像からユーザを抽出し、合成シーンに又は二次的ビデオストリームに嵌め込む。合成シーンにユーザを入れるために、ソフトウェアD'Fusionは、リアルタイムで、ピクセルシェーダ機能を使って、クロマキー処理（第１画像において同定された色に基づいて、第１画像に第２画像をはめ込むこと）を実行する。ピクセルシェーダ機能はカメラから出力されるビデオストリームに処理を施すものである。
【００５２】
第１実施例の前記装置は、結果について満足するものであるが、自由度６の位置・方向センサは、個人的使用には高価である可能性がある。この欠点を克服するために、第２実施例は、安価な動きセンサと画像処理モジュールを組み合わせて使用し、自由度６のセンサの位置・方向を取得することを可能にする。
【００５３】
図６には、第２実施例による装置の概略が示されている。同装置は、表示装置115に接続されているコンピュータ130″、ビデオカメラ125、把持部600を備えている。コンピュータ130″は、画像処理モジュール605を備えているが、この点でコンピュータ130′と異なる。この画像処理モジュールは、把持部600の位置を取得するように構成されている。ビデオレンダリングモジュール610はコンピュータ130′のモジュール（図示しない）と類似しており、同じようにソフトウェアD’fusionを使うことができる。コンピュータ130′と130″の特性は類似している。ソフトウェアD’fusionに等価なソフトウェアを使って、ビデオストリームと仮想オブジェクトとを合成し（レンダリングモジュール３Ｄ610）、画像解析により把持部の位置情報を取得することができる（画像処理モジュール605）。ビデオカメラ125は、前述したビデオカメラと同じようにすることができる。簡単なwebcamであってもよい。
【００５４】
把持部600が、動きセンサBOXを使わずに、コンピュータ130″に無線接続されていると有利である。把持部600は、自由度３の把持部600の方向を決定できる方向センサ135″を備えている。例えば、方向センサ135″は、Ｘsens社の角度センサＭＴ９Ｂ又はIntersense社の角度センサInertia Cube 3（その有線、無線バージョン）である。センサから出力される方向データは、ポートＣＯＭを経由して又は無線プロトコールにより伝送される。１又は複数の《トリガ》タイプのスイッチ310が把持部600の中にあることが好ましい。把持部600は、又、特定の形状の幾何学的構成要素を含む。これにより、画像の中に把持部が見えるときに、保持部の位置を特定することが出来る。この幾何学的形状は、例えば、直径が数センチの有色球である。しかし、別の形状であってもよい。特に、円、平面又は多面体であってもよい。把持部600には溝が設けられていることが好ましい。ユーザは所定方向にそれを保持し、角度センサに一致する位置決めをしなければならない（指は溝に沿って位置する）。
【００５５】
図７は図７ａ、７ｂ、７ｃからなっており、把持部600を表している。図７ａは把持部600の全体図であり、図７ｂ、７ｃは同把持部の電気回路を示す。
【００５６】
図に示されているとおり、把持部600は、ユーザが握る下部分（筒（manche）と呼ぶ）を含んでいる。その下にはバッテリー700、例えば、リチウムバッテリー、無線通信モジュール705及び《トリガ》タイプのスイッチ310がある。角度センサ135″は筒の上部に固定されている。把持部の位置を同定するために、筒の上部はその周囲にネジ（これにより幾何学的構成要素の組立てを可能になる）を備えていると有利である。この実施例では、幾何学的構成要素は、筒の上部に向くように構成された開口を備える球615である。幾何学的構成要素を筒の上に固定する別の手段は、接着又はケーシングであってもよい。電球又はＬＥＤのような光源が球615の内部に置かれることが好ましい。これは好みによっては、透明又は半透明に構成される。この光源は、把持部600の電気的構成部品と同様に、ユーザの要求によってアクティブにされる。又は、収納のために、及び、特にバッテリー700の充電のために、把持部600が支持部715から切り離されるときに、アクティブにされる。この場合、支持部700は電源に接続されている。
【００５７】
図７ｂには、把持部600の電気的構成要素の構成が示されている。バッテリー700は、方向センサ135″、《トリガ》タイプのスイッチ310、無線通信モジュール705及び光源710に接続されており、電力を供給している。スイッチ720がバッテリー700の出力側にあって、方向センサ135″《トリガ》タイプのスイッチ310、無線通信モジュール705及び光源710の電源を切断したり、又はアクティブにする。スイッチ720は、例えば、把持部600は支持部715から引き出される時、ユーザが手動で制御したり、又は、自動的に制御される。スイッチが前記構成要素だけを制御するように、バッテリー700の接続を変更することは可能である。また、例えば、光源710をアクティブにせず把持部600を使用できるように、複数スイッチを使って、これら構成要素を独立に制御するようにすることもできる。
【００５８】
方向センサ135″及び《トリガ》タイプのスイッチ310は、無線通信モジュール705に接続され、前記センサ135”及びスイッチから出力される情報をコンピュータ130″に伝送する。無線通信モジュール705は、例えば、Bluetooth（登録商標）モジュール又はＷｉＦｉのような高周波モジュールである。無線通信モジュールはコンピュータ130″に接続され、把持部600から送信される信号を受信する。このモジュールは、例えばインターフェースＵＳＢ/ＵＳＢ2又はＲＳ-232を使って、コンピュータ130″に接続されている。
【００５９】
別の方法として、もし把持部600とコンピュータ130″との間が有線接続されているならば、把持部600は無線通信モジュール、バッテリー700は不要である。コンピュータが把持部600に電源を供給することができるからである。この代替例は図７ｃに示されている。この実施例では、電線カバー725は複数の電線を含んでおり、把持部600に電源を供給し、把持部600に接続されているセンサ135″及びスイッチ310から出力される信号をコンピュータ130″に伝送する。
【００６０】
溝に沿って握るので、把持部は、センサの方向に対する、手の方向についての不確定性を回避することができる。幾何学的構成要素は保持部の位置決定に使われるが、この構成要素は、動きが多数あっても、画像の中で容易にユーザは見分けることができる。この幾何学的構成要素は容易に分解でき、その色と形状を変更することができる。幾何学的構成要素の中又はその表面に配置される光源があるので、悪い照明条件においても、このオブジェクトを追跡することができる。
【００６１】
把持部の位置を決定するために、コンピュータ130″を使って、ビデオカメラまたはwebcam125から出力される画像（その上に把持部600の幾何学的構成要素が存在している）を解析する。この段階では、カメラから出力される画像における幾何学的構成要素の中心位置を正確に見出すことが重要である。測定結果の質を高めるための解決方法は、新しい色空間及びフィルタの新しいアプローチを使う。
【００６２】
画像における幾何学的構成要素の位置決めアルゴリズムのフローが図８に示されている。そのステップは次のとおりである。
【００６３】
−幾何学的構成要素の色の閾値を定義する(ステップ800)。破線を使って示されているように、幾何学的構成要素が画像の中でサーチされる度に、前記閾値を決める必要はない。これら閾値は把持部のパラメータ化時に予め決定され、及び/又は必要に応じて再評価される；
−ＲＧＢ画像をＨＳ′Ｌタイプの色空間（ＨＳＬ（Hue−Situation−Luminance）タイプの色空間から導出される）へ変換する(ステップ805)、及び、幾何学的構成要素の色に対応するピクセル領域の画像をセグメント化することによりサーチする（ステップ810）；
−これら領域の輪郭を再構成する、及び、追跡すべき幾何学的構成要素の形状に最も類似するものをサーチする（ステップ815）；
−初期に測定された大きさに応じてその奥行きを決めるために、画像におけるオブジェクトの大きさの評価し、画像における幾何学的構成要素の中心位置をサーチし、計算する（ステップ820）。
【００６４】
測定結果の精度を高めるためには、幾何学的構成要素の位置のリニアな外挿法による理論的方法で、位置を推定し（ステップ825）、画像解析から得られた位置と前記推定位置とを比較する（ステップ830）ことが好ましい。
【００６５】
幾何学的構成要素の位置決めは、最初に、検索する幾何学的構成要素の色に対応する色の画像領域を検出することが原則である。輝度変化の問題については、色空間ＲＧＢと比較すると、色空間ＨＳＬが好ましい。
【００６６】
ＲＧＢ画像を画像ＨＳＬに変換した後、全てのピクセルが選択され、輝度Ｌが所定のインターバル[θＬinf；θLsup]に存在しないピクセルは選択しない。ピクセルを選択しない場合は、例えば、輝度L、飽和度S、色相H（Hue）に対し数値を０にする。つまり、選択されたピクセルは、非０の値をとるが、選択されない場合の値は０である。
【００６７】
色空間ＨＳＬを使う画像のセグメント化は、結果として十分満足できるものではない。なぜなら、極めてくすんだ又は極めて明るい（黒でも、白でもない）ピクセルは、画像の中のどのような色相の値をも取り（画像取得時に画像において発生するノイズのために直ぐに変化する）、探している色相に近い色相をもつからである。このような不都合を回避するために、色空間ＨＳＬは、極めてくすんだ又は極めて明るいピクセルを対象にしないように変更される。そのために、新しい飽和度Ｓ′が生成される。飽和度Ｓ′は、加重係数αを使って、輝度Ｌに関係する飽和度Ｓから導出される。即ち、Ｓ′＝αＳ。加重係数αは０と1との間の数値であることが好ましい。図９に、輝度に応じた加重係数αの値を示す。
【００６８】
次に、飽和度Ｓ′が、予め定めた閾値θＳ′infより大きくないピクセルは選択しない。同様に、色相Hが幾何学的構成要素の色相に対応していないピクセル、即ち、幾何学的構成要素の色相に基づいて、予め定められたインターバル[θHinf；θHsup]に入らないピクセルは選択しない。色相は、理論上０から３６０°の角度で表現されることに留意すべきである。実際、色相はサイクリックな概念で、《赤》は２端部（０及び３６０）にある。実際には、３６０はオクテットでコード化することはできないから、対象とするアプリケーションによれば、色相の数値はインターバル[0,180[（後の“[”は、180を含まないの意）、[0、240[、又は[0,255]の上で再コード化される。計算コストを最適化するためには、インターバル[0、180[が好ましい。しかしながら、スケール（echelle）変更により生じた損失は結果に対して大きな影響を与えないことに注意すべきである。
【００６９】
ピクセルの非選択は、輝度Ｌ、飽和度Ｓ′、色相Ｈの順序で実施される。重要なときは、色相Ｈに基づいてセグメント化されるときである。輝度に基づくセグメント化、飽和度に基づくセグメント化により、結果の質及びグローバルなパフォーマンスを向上させることができる。特に、それにより、計算時間を最適にすることができる。
【００７０】
選択された画像ピクセルの一部分は幾何学的構成要素を表す。この部分を同定するために、輪郭抽出ステップが実行される。このフェーズでは、例えば、コンボリューションマスク（un masque de convolution）を使って、非ゼロのピクセルグループの輪郭を抽出する。輪郭抽出アルゴリズムは、多数存在することに注意すべきである。
【００７１】
次に、輪郭の中から、使われている幾何学的構成要素に最も類似している輪郭を決定しなければならない。ここでは、円形輪郭であり、幾何学的構成要素は球である。
【００７２】
大きさをピクセル数で表すとする。利用可能な大きさの円を表すためには、輪郭の小さいものは、全て選択しない。この選択は、予め決められた閾値θTに基づいて行われる。同様に、大きさをピクセル数で表すとする。面積が小さい輪郭は削除される。この選択は、予め決められた閾値θAに基づいて行われる。
【００７３】
次に、残りの輪郭について、輪郭を含む最小半径の円が計算される。更に、輪郭により決められる面積と計算された円の半径との間の比が算出される。求められた輪郭は最大の比を与える輪郭であると見なされる。この比は、前記輪郭はそれを含む円を最大限に満たし、同時に、‘円形に近い輪郭’及び‘より大きい半径の輪郭’が望ましい、ということを表現しようとするものである。この基準は、比較的計算コストが小さいというメリットがある。もちろん、選択基準は、幾何学的構成要素の形状に合せるべきである。
【００７４】
カラリメトリックなセグメント化及び幾何学的セグメント化をすることにより、球の投影を近似的に表す円を得ることができる。このやり方のメリットは、もし幾何学的構成要素の形状及び色が周囲に対しユニークである場合、この形状の認識は、部分的に見えない部分があっても確実に行われる。
【００７５】
次に、幾何学的構成要素の位置は、画像における投影から決められる。計算を簡単化するために、幾何学的構成要素は、画像を出力するカメラの光学軸の上にあると仮定する。球を投影すると、一般的には、投影画像は楕円になるが、球が光学軸上にある時だけ円になる。しかし、見かけの半径と比だけを使って、球の位置を決めるためには、このような近似法で十分である。
【００７６】
図１０に、球の距離を決めるために使う原理が示す。Ｃは光学中心である。即ち、カメラ位置に対応する投影中心である。Ｒは、カメラからＺだけ離れた球の物理的半径である。投影により、この半径Ｒは、焦点距離を表す距離ｆｍにある表示画面ではみかけ半径ｒｍに変換される。従って、ターレスの原理により、次の式が成り立つ。
【００７７】
【数１】
0005204126.tif 000002
【００７８】
比ｆｍ/ｒｍは、比ｆｐ/ｒｐに等しいことに留意すべきである。但し、ｆｐはピクセルで表された焦点であり、ｒｐはピクセルで表された球の半径である。従って、次の式が得られる。
【数２】
0005204126.tif 000003
【００７９】
カメラを原点とする基準フレーム（repere）における座標点（ｘ、ｙ、ｚ）が、カメラが撮影した画像の中に、座標（ｕ、ｖ）の点として、投影されるとき、その投影は、次式で表される。
【００８０】
【数３】
0005204126.tif 000004
【００８１】
但し、（ｐｘ、ｐｙ）は、画像における光学中心の位置（ピクセル表現での）である。画像においてその実座標Ｚ及びその座標ｕ、ｖが既知（ピクセル表現で）のときには、この式により、球の実座標ＸとＹを導出することができる。
【００８２】
【数４】
0005204126.tif 000005
【００８３】
球の半径の推定精度は、Ｚの位置決め精度（従って、Ｘ，Ｙ位置決め精度（これらは円の推定位置２Ｄ精度により影響される）に影響する）に大きな影響を及ぼすことに注意を払う必要がある。このＺの誤差は計量的に大きく、又視覚的にも大きい。何故なら、一般的に、センサに関係する仮想オブジェクトは、球より大きいからである。従って、半径の過大評価に基づく誤差は、このオブジェクトのサイズが球のサイズより大きければ大きい程、画像の中に挿入される仮想オブジェクトのみかけの大きさを一層拡大させる。
【００８４】
幾何学的構成要素を実際に位置決めするときの重大な問題は、円の位置（ｕ、ｖ）及び半径が一時的な安定を欠くことから来る。この問題は、センサに関係する仮想オブジェクトの位置Ｘ、Ｙ，Ｚの大きな振動になって表れる。これらの振動をフィルタするために、特定のフィルタが使われる。
【００８５】
このフィルタリングは、“低域パスフィルタに基づいて予測が行われ、仮にこの予測が新しい測定値に近いならばその値が応用される”という原理に基づく。一度予測が測定値から外れると、《attentiste》フェーズが実行され、そのズレがビデオストリームの孤立画像上にしか存在しないか、又は、このズレが時間と共に明らかになるかが確かめられる。予測されたフィルタ値が適用される。もし第１のズレがあることが確認されると、現実の測定値がビデオストリームの１画像分の遅れを以って、使われる。ｎの最終測定上で（異常と考えられるものを除いて）直交線形回帰法（regression orthogonale lineaire）（低品質の結果をもたらす直交自乗回帰法）を使って、低域パスフィルタが実行される。予測が正しい限り、ｎの値は所定閾値まで増大する値と共に可変である。予測が正しくない場合、次の画像により確認された変化の後で、最小のフィルタリングに対して、ｎの値は下がって４になる。この方法によれば、よりよいフィルタリング作用が可能になる。また、この方法は、半径が一定であるほど、振動が目に見えるという原理に基づく。その代わりに、動いているとき、振動はほとんど検知されず、待ち時間を減らすことができる。
【００８６】
次の式は、直交線形回帰の計算を式ｙ＝ａｘ+ｂの直線を使って詳述する。ｘは現在のフレーム（trame）値、ｙは３パラメータの値（ｕ、ｖ、フィルタされる前の球の半径）に対応する。但し、３パラメータは独立である。
【００８７】
直交線形回帰と測定点ｐi(ｘi, ｙi)との間の誤差は次式で表現される。
ｅi＝（ａｘi+ｂ）−ｙi
【００８８】
従って、次の式に基づいて表現される２乗誤差Ｅを最小にすることが必要である。
【００８９】
【数５】
0005204126.tif 000006
【００９０】
次のように置くと、
【００９１】
【数６】
0005204126.tif 000007
【００９２】
次のようになる。
Ｅ＝ａ２ｓｘ+２ａｂｓｘ+ｂ２ｎ-２ａｓｘｙ+２ｂｓｙ+ｓｙ２
【００９３】
関数Ｅは２次関数で、次が成立するときに、最小となる。
【００９４】
【数７】
0005204126.tif 000008
【００９５】
従って、
【００９６】
【数８】
0005204126.tif 000009
【００９７】
但し、  det=ｓｘ２・ｎ-ｓｘ２
【００９８】
カメラから出力されるビデオストリームの画像に対して、数値ａとｂが推定され、座標(u, v)に対する値及び球のみかけ半径に対する値を推定し、実シーンにおける球の座標(x, y, z)が導出される。これらの値が基準として使用され、前記画像解析に基づいて決められた値と比較される。その比較結果に基づいて、画像解析に基づいて決められた値が予測値の代わりに使用される。
【００９９】
仮想オブジェクトの位置・方向が実シーンにおいて決定される時、リアリティ向上ソフトウェア（例えばD'Fusion）は、このオブジェクトの３Ｄモデルから、挿入する前の仮想オブジェクト画像を決定する。次に、この仮想オブジェクト画像は、実シーン画像に挿入される。
【０１００】
実シーンにおける仮想オブジェクトの位置と方向を決定し、仮想オブジェクト画像を決定し、実シーン画像へ仮想オブジェクト画像を挿入するプロセスはカメラから出力されるビデオストリームの画像に対して繰り返し行われる。
【０１０１】
又、リアリティ向上ソフトウェアは、ユーザがゲームにおいて自身を見ることができるゲームに関連付けることができる。
【０１０２】
もちろん、特定の必要性を満たすために、当業者は以上の記載に変更を加えることができる。特に、実シーンで使われた少なくとも３の自由度をもつセンサの使用は必ずしも必要ではない。唯一の拘束条件としては、センサから出力されるデータが画像解析されたデータを補うものであることである。例えば、２の自由度を持つセンサを使い、画像解析により４の自由度に関係する情報を取得することが可能である。同様に、位置と方向のセンサをもつ把持部は前記の形状と異なる形状を持つことができる。
【図１】
0005204126.tif 000010
【図２】
0005204126.tif 000011
【図３】
0005204126.tif 000012
【図４】
0005204126.tif 000013
【図５ａ】
0005204126.tif 000014
【図５ｂ】
0005204126.tif 000015
【図６】
0005204126.tif 000016
【図７】
0005204126.tif 000017
【図８】
0005204126.tif 000018
【図９】
0005204126.tif 000019
【図１０】
0005204126.tif 000020