(57)【特許請求の範囲】
【請求項１】
入力画像から、合成処理の際の起点となるマーカであって予め登録されているマーカを検出するマーカ検出手段と、
前記マーカ検出手段によってマーカが検出された場合に、検出されたマーカに対応づけられて登録されている情報に基づき合成処理を行ってＣＧ画像を生成するＣＧ画像生成手段と、
入力画像からオブジェクトまたは特徴点を検出するオブジェクト・特徴点検出手段と、
前記マーカ検出手段によってマーカが検出された場合に、前記オブジェクト・特徴点検出手段によって検出された各オブジェクトおよび各特徴点周りのＣＧ画像の状態を示すデータを算出するオブジェクト・特徴点周りＣＧ画像状態算出手段と、
前記オブジェクト・特徴点周りＣＧ画像状態算出手段によって周りのＣＧ画像の状態を示すデータが算出された各オブジェクトおよび各特徴点をそれぞれ新たなマーカとして、当該オブジェクトまたは特徴点を識別するための識別情報と、当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータとを対応づけて記憶するマーカ情報記憶手段と、
前記オブジェクト・特徴点検出手段によって検出された各オブジェクトおよび各特徴点の情報と、前記マーカ情報記憶手段に記憶されている識別情報とを照合し、入力画像に、新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれているか否かを判定するマッチング手段と、
前記マッチング手段によって入力画像に新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれていると判定された場合に、前記マーカ情報記憶手段に記憶されている当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータに基づいて、ＣＧ画像を生成する第２のＣＧ画像生成手段とを備えた
ことを特徴とする拡張現実表示システム。
【請求項２】
マッチング手段は、予め登録されているマーカが検出されなかった場合に、入力画像から検出された各オブジェクトおよび各特徴点の情報と記憶されている識別情報とを照合して、入力画像に、新たなマーカとして記憶されているオブジェクトまたは特徴点が含まれているか否かを判定する
請求項１に記載の拡張現実表示システム。
【請求項３】
オブジェクト・特徴点周りＣＧ画像状態算出手段は、検出されたオブジェクトまたは特徴点周りのＣＧ画像の表示状態を示すデータとして、生成されたＣＧ画像の範囲内における、ＣＧ画像の表示位置を算出する
請求項１または請求項２に記載の拡張現実表示システム。
【請求項４】
オブジェクト・特徴点周りＣＧ画像状態算出手段は、検出されたオブジェクトまたは特徴点周りのＣＧ画像の合成状態を示すデータとして、生成されたＣＧ画像の範囲内における、ＣＧ画像の模様または形を示す値を算出する
請求項１から請求項３のうちのいずれか１項に記載の拡張現実表示システム。
【請求項５】
オブジェクト・特徴点周りＣＧ画像状態算出手段は、検出されたオブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータとして、生成されたＣＧ画像の範囲内における、他のオブジェクトまたは特徴点との間の位置関係を示す値を算出する
請求項１から請求項４のうちのいずれか１項に記載の拡張現実表示システム。
【請求項６】
オブジェクト・特徴点周りＣＧ画像状態算出手段は、入力画像に第２のマーカとして記憶されているオブジェクトまたは特徴点が含まれていると判定された場合に、まだ第２のマーカとして記憶されていないオブジェクトおよび特徴点について、各オブジェクトおよび各特徴点周りのＣＧ画像の状態を算出する
請求項１から請求項５のうちのいずれか１項に記載の拡張現実表示システム。
【請求項７】
画像が入力されると、オブジェクト・特徴点抽出手段が、前記入力画像からオブジェクトまたは特徴点を検出し、
前記入力画像から、合成処理の際の起点となるマーカであって予め登録されているマーカが検出された場合には、ＣＧ画像生成手段が、検出されたマーカに対応づけられて登録されている情報に基づき合成処理を行ってＣＧ画像を生成して、生成したＣＧ画像を利用者端末に送信し、
ＣＧ画像が生成されると、オブジェクト・特徴点周りＣＧ画像状態算出手段が、前記検出された各オブジェクトおよび各特徴点周りのＣＧ画像の状態を示すデータを算出し、算出された各オブジェクトおよび各特徴点をそれぞれ新たなマーカとして、当該オブジェクトまたは特徴点を識別するための識別情報と、当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータとを対応づけてマーカ情報記憶手段に記憶し、
前記入力画像から、合成処理の際の起点となるマーカであって予め登録されているマーカが検出されなかった場合には、マッチング手段が、当該入力画像から検出された各オブジェクトおよび各特徴点の情報と、当該時点で前記マーカ情報記憶手段に記憶されている識別情報とを照合し、当該入力画像に、新たなマーカとして前記マーカ情報記憶手段に記憶されたオブジェクトまたは特徴点が含まれているか否かを判定し、
入力画像に新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれていると判定された場合に、第２のＣＧ画像生成手段が、前記マーカ情報記憶手段に記憶されている当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータに基づいて、ＣＧ画像を生成して、生成したＣＧ画像を利用者端末に送信する
ことを特徴とする拡張現実表示方法。
【請求項８】
コンピュータに、
入力画像から、合成処理の際の起点となるマーカであって予め登録されているマーカを検出する処理、
入力画像から予め登録されているマーカが検出された場合に、検出されたマーカに対応づけられて登録されている情報に基づき合成処理を行ってＣＧ画像を生成する処理、
入力画像からオブジェクトまたは特徴点を検出する処理、
検出された各オブジェクトおよび各特徴点周りのＣＧ画像の状態を示すデータを算出する処理、
周りのＣＧ画像の状態を示すデータが算出された各オブジェクトおよび各特徴点をそれぞれ新たなマーカとして、当該オブジェクトまたは特徴点を識別するための識別情報と、当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータとを対応づけて所定の記憶装置に記憶させる処理、
入力画像から検出された各オブジェクトおよび各特徴点の情報と、前記記憶装置に記憶されている識別情報とを照合し、入力画像に新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれているか否かを判定する処理、および
入力画像に新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれていると判定された場合に、前記記憶装置に記憶されている当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータに基づいて、ＣＧ画像を生成する処理
を実行させるための拡張現実表示プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、現実環境を写した入力画像に対して合成処理等により情報を付加して表示する拡張現実表示システム、拡張現実表示方法および拡張現実表示プログラムに関する。
【背景技術】
【０００２】
拡張現実（ＡＲ：Augmented Reality ）の表示方法には、マーカやオブジェクト、位置情報を用いたものがある。マーカやオブジェクト認識でのＣＧ表示に注目すると、例えば、複数のマーカや物体との前後関係を認識して表示させる方法がある。
【０００３】
マーカやオブジェクト認識での拡張現実表示（ＣＧ画像合成・表示）では、カメラ等を通して得られる画像内からマーカやオブジェクトを認識し、事前に登録されているマーカ・オブジェクトの情報と照らし合わせて合致した場合に、そのマーカまたはオブジェクトに合わせたＣＧ画像を合成、表示する。拡張現実の表示に用いるマーカは一般的には面として捉えられる。例えば、ある領域を規定した枠（四角形の枠等）や枠内の文字、模様等を、入力された画像から認識することによりマーカを認識する。そして、認識したマーカに対応したＣＧ合成を行うことにより、拡張現実表示を行う。
【０００４】
認識したマーカに対応したＣＧ合成を行うには、認識したマーカの画像（入力画像から切り出されるマーカとして認識された部分の画像）と事前に登録されているマーカの画像（モデル画像）とをマッチングすることにより行う。すなわち、認識したマーカの画像と一致するモデル画像が登録されていた場合に、そのモデル画像に対応づけられている合成指示情報に基づき、合成処理を行う。
【０００５】
このようなマーカを認識してそのマーカに合わせたＣＧ画像を合成表示する技術に関し、例えば特許文献１には、認識した画像とモデル画像とで照明等により色などが異なる場合であっても、モデル画像内の形状等から物体を判断することにより、より実質的に登録されたマーカとの合致判定を行う旨が記載されている。
【０００６】
また、特許文献２には、画像から得られるオブジェクトを認識して、既に登録されているＣＧ画像データをそのオブジェクトに対して表示する技術が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−０３２７６６号公報
【特許文献２】特開２００６−３１３５４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、特許文献１に記載されている技術を適用しても、カメラにより撮影された画像内に、マーカが完全に入っていない場合（例えば、マーカの一部が欠けている場合やマーカが全く入っていない場合）には、マーカが正しく認識されずにＣＧ画像の合成ができないという問題があった。
【０００９】
例えば、建材（ドアなど）で拡張現実を用いて建材の色の違いを確認する場合、設置イメージを周りの風景と合わせながら様々な視点で（近づいたり、少し斜めから見たり等）見ることが、実物とのずれを無くすために重要となっているが、ＣＧ画像の表示を保つためには、ユーザはマーカに依存した状態でしか視点を切り替えることができず、ユーザの行動を制限していた。
【００１０】
なお、特許文献２に記載されている技術は、画像から得られるオブジェクトに対して行うＣＧ処理を予め登録しておかなければならず、マーカの登録がオブジェクトの登録に代わるだけで、そのオブジェクトが登録されていなければＣＧ画像の合成ができないという問題はマーカを用いた方法の場合と同様である。また、特許文献２には、追跡システムと呼ばれる技術が記載されているが、一旦認識されたオブジェクトが連続して移動するような画像に限り有効であるという点で依然としてユーザの視線を制限している。
【００１１】
そこで、本発明は、拡張現実表示の元となる画像にマーカが全て含まれていない場合であっても拡張現実表示を行うことができる拡張現実表示システム、拡張現実表示方法および拡張現実表示プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明による拡張現実表示システムは、入力画像から、合成処理の際の起点となるマーカであって予め登録されているマーカを検出するマーカ検出手段と、マーカ検出手段によってマーカが検出された場合に、検出されたマーカに対応づけられて登録されている情報に基づき合成処理を行ってＣＧ画像を生成するＣＧ画像生成手段と、入力画像からオブジェクトまたは特徴点を検出するオブジェクト・特徴点検出手段と、マーカ検出手段によってマーカが検出された場合に、オブジェクト・特徴点検出手段によって検出された各オブジェクトおよび各特徴点周りのＣＧ画像の状態を示すデータを算出するオブジェクト・特徴点周りＣＧ画像状態算出手段と、オブジェクト・特徴点周りＣＧ画像状態算出手段によって周りのＣＧ画像の状態を示すデータが算出された各オブジェクトおよび各特徴点をそれぞれ新たなマーカとして、当該オブジェクトまたは特徴点を識別するための識別情報と、当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータとを対応づけて記憶するマーカ情報記憶手段と、オブジェクト・特徴点検出手段によって検出された各オブジェクトおよび各特徴点の情報と、マーカ情報記憶手段に記憶されている識別情報とを照合し、入力画像に、新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれているか否かを判定するマッチング手段と、マッチング手段によって入力画像に新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれていると判定された場合に、マーカ情報記憶手段に記憶されている当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータに基づいて、ＣＧ画像を生成する第２のＣＧ画像生成手段とを備えたことを特徴とする。
【００１３】
また、本発明による拡張現実表示方法は、画像が入力されると、オブジェクト・特徴点抽出手段が、入力画像からオブジェクトまたは特徴点を検出し、入力画像から、合成処理の際の起点となるマーカであって予め登録されているマーカが検出された場合には、ＣＧ画像生成手段が、検出されたマーカに対応づけられて登録されている情報に基づき合成処理を行ってＣＧ画像を生成して、生成したＣＧ画像を利用者端末に送信し、ＣＧ画像が生成されると、オブジェクト・特徴点周りＣＧ画像状態算出手段が、検出された各オブジェクトおよび各特徴点周りのＣＧ画像の状態を示すデータを算出し、算出された各オブジェクトおよび各特徴点をそれぞれ新たなマーカとして、当該オブジェクトまたは特徴点を識別するための識別情報と、当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータとを対応づけてマーカ情報記憶手段に記憶し、入力画像から、合成処理の際の起点となるマーカであって予め登録されているマーカが検出されなかった場合には、マッチング手段が、当該入力画像から検出された各オブジェクトおよび各特徴点の情報と、当該時点でマーカ情報記憶手段に記憶されている識別情報とを照合し、当該入力画像に、新たなマーカとしてマーカ情報記憶手段に記憶されたオブジェクトまたは特徴点が含まれているか否かを判定し、入力画像に新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれていると判定された場合に、第２のＣＧ画像生成手段が、マーカ情報記憶手段に記憶されている当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータに基づいて、ＣＧ画像を生成して、生成したＣＧ画像を利用者端末に送信することを特徴とする。
【００１４】
また、本発明による拡張現実表示プログラムは、コンピュータに、入力画像から、合成処理の際の起点となるマーカであって予め登録されているマーカを検出する処理、入力画像から予め登録されているマーカが検出された場合に、検出されたマーカに対応づけられて登録されている情報に基づき合成処理を行ってＣＧ画像を生成する処理、入力画像からオブジェクトまたは特徴点を検出する処理、検出された各オブジェクトおよび各特徴点周りのＣＧ画像の状態を示すデータを算出する処理、周りのＣＧ画像の状態を示すデータが算出された各オブジェクトおよび各特徴点をそれぞれ新たなマーカとして、当該オブジェクトまたは特徴点を識別するための識別情報と、当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータとを対応づけて所定の記憶装置に記憶させる処理、入力画像から検出された各オブジェクトおよび各特徴点の情報と、記憶装置に記憶されている識別情報とを照合し、入力画像に新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれているか否かを判定する処理、および入力画像に新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれていると判定された場合に、記憶装置に記憶されている当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータに基づいて、ＣＧ画像を生成する処理を実行させることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、ユーザの視点の制限をすることなく、拡張現実表示の元となる画像にマーカが全て含まれていない場合であっても容易に拡張現実表示を行うことができる。
【図面の簡単な説明】
【００１６】
【図１】拡張現実表示システムの構成例を示すブロック図である。
【図２】ＡＲ表示システム３０の構成例を示すブロック図である。
【図３】マッチングシステム４０の構成例を示すブロック図である。
【図４】画像認識システム５０の構成例を示すブロック図である。
【図５】拡張現実表示システムの動作例を示すシーケンス図である。
【図６】拡張現実表示システムの動作例を示すシーケンス図である。
【図７】オブジェクト・特徴点の認識例を示す説明図である。
【図８】オブジェクト・特徴点周りでのＣＧ画像の状態の算出例の一例を示す説明図である。
【図９】識別子別ＣＧデータＤＢ４４に記憶される識別子別ＣＧデータの一例を示す説明図である。
【図１０】ＣＧ画像ＤＢ３３に記憶されるＣＧ画像データの一例を示す説明図である。
【図１１】ＡＲ表示方法の一例を示すフローチャートである。
【図１２】マーカが一部しか表示されていない場合のＡＲ表示方法の例を示す説明図である。
【図１３】本発明の概要を示すブロック図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態を図面を参照して説明する。図１は、本発明の一実施例である拡張現実表示システムの構成例を示すブロック図である。図１に示す拡張現実表示システムは、利用者端末１０と、ＡＲ表示システム３０と、マッチングシステム４０と、画像認識システム５０とを備える。なお、利用者端末１０とＡＲ表示システム３０とマッチングシステム４０と画像認識システム５０とは、それぞれ通信ネットワーク２０で接続されている。
【００１８】
利用者端末１０は、カメラ１１とディスプレイ１２とを備える。また、図示省略しているが、通信ネットワーク２０を介して接続される各種システム（本例では、少なくともＡＲ表示システム３０と、マッチングシステム４０と、画像認識システム５０）とデータの送受信をする通信機能を備える。なお、直に画像を撮影するカメラ１１の代わりに、別途撮影された画像のデータを入力する画像入力手段を有していてもよい。
【００１９】
ＡＲ表示システム３０は、マーカを検出してマーカに応じたＣＧ画像を合成、表示するシステムである。図２は、ＡＲ表示システム３０の構成例を示すブロック図である。図２に示すＡＲ表示システム３０は、マーカ検出手段３１と、ＣＧ画像表示手段３２と、ＣＧ画像データベース３３と、マーカデータベース３４とを備える。
【００２０】
マーカ検出手段３１は、利用者端末１０から送信される画像から、マーカを検出する。マーカ検出手段３１は、画像認識を行って所定のマーカを検出すればよい。
【００２１】
ＣＧ画像表示手段３２は、検出されたマーカに対して登録されている画像データを、利用者端末１０から送信された画像に合成してＣＧ画像を作成し、作成したＣＧ画像を利用者端末１０に送信して表示させる。ＣＧ画像表示手段３２は、後述するＣＧ画像データベース３３およびマーカ出たベース３４に登録されている情報に基づいて、検出したマーカに応じたＣＧ画像を作成すればよい。
【００２２】
ＣＧ画像データベース（ＣＧ画像ＤＢ）３３は、合成する画像データを記憶する。
【００２３】
マーカデータベース（マーカＤＢ）３４は、マーカの情報と、そのマーカが検出されたときにどのようなＣＧ画像の合成を行うかを示す情報（合成内容情報）とを対応づけて記憶する。
【００２４】
マッチングシステム４０は、ＡＲ表示システム３０から得られるＣＧ画像と、後述する画像認識システム５０から得られるオブジェクト・特徴点データとをマッチング処理するシステムである。図３は、マッチングシステム４０の構成例を示すブロック図である。図３に示すマッチングシステム４０は、ＣＧ画像座標抽出手段４１と、オブジェクト・特徴点周りＣＧマッチング手段４２と、識別子（ここでは、新たなマーカとして認識されたオブジェクト・特徴点の意）周り画像表示手段４３と、識別子別ＣＧデータデータベース４４とを備える。
【００２５】
ＣＧ画像座標抽出手段４１は、ＡＲ表示システム３０から得られるＣＧ画像の座標を抽出する。
【００２６】
オブジェクト・特徴点周りＣＧマッチング手段４２は、画像認識システム５０から得られるオブジェクト・特徴点データから、そのオブジェクトや特徴点周りのＣＧ画像について登録されているマーカを認識した際に表示するＣＧ画像とのマッチング処理を行う。
【００２７】
識別子周り画像表示手段４３は、マッチング処理の結果、検出された識別子に対して登録されている画像データを、利用者端末１０から送信された画像に合成してＣＧ画像を作成し、作成したＣＧ画像を利用者端末１０に送信して表示させる。
【００２８】
識別子別ＣＧデータデータベース（識別子別ＣＧデータＤＢ）４４は、新たなマーカとして扱うオブジェクトや特徴点の識別子と、その識別子に割りあてられたオブジェクトや特徴点が検出されたときにどのようなＣＧ画像の合成を行うかを示す情報（合成内容情報）とを対応づけて記憶する。
【００２９】
画像認識システム５０は、利用者端末１０から得られる画像からオブジェクトや特徴点の抽出を行うシステムである。図４は、画像認識システム５０の構成例を示すブロック図である。図４に示す画像認識システム５０は、オブジェクト・特徴点抽出手段５１と、オブジェクト・特徴点データベース５２とを備える。
【００３０】
オブジェクト・特徴点抽出手段５１は、利用者端末１０から得られる画像からオブジェクトや特徴点の抽出を行う。
【００３１】
オブジェクト・特徴点データベース（オブジェクト・特徴点ＤＢ）５２は、オブジェクト・特徴点抽出手段５１が抽出したオブジェクトまたは特徴点を新しい識別子（新しいマーカ）として記憶する。
【００３２】
本実施形態において、ＡＲ表示システム３０、マッチングシステム４０、画像認識システム５０は、例えば、ネットワーク通信機能と情報処理機能とデータベースシステムとを備えたサーバ装置によって実現される。また、マーカ検出手段３１、ＣＧ画像表示手段３２、ＣＧ画像座標抽出手段４１、オブジェクト・特徴点周りＣＧマッチング手段４２、識別子周り画像表示手段４３、オブジェクト・特徴点抽出手段５１は、例えば、各システムが備える、プログラムに従って動作するＣＰＵ等によって実現される。また、ＣＧ画像ＤＢ３３、マーカＤＢ３４、識別子別ＣＧデータＤＢ４４、オブジェクト・特徴点ＤＢ５２は、例えば、各システムが備える記憶装置によって実現される。
【００３３】
なお、図１に示す例では、ＡＲ表示システム３０と、マッチングシステム４０と、画像認識システム５０とを別のシステムとして備える例を示しているが、これらは１つのシステムとして実装することも可能である。
【００３４】
図５および図６は、本実施形態の動作例を示すシーケンス図である。なお、図５は利用者端末１１から得られる画像にマーカが全て表示されている場合の動作例を示し、図６は、マーカが全て表示されていない場合の動作例を示している。
【００３５】
まず、マーカが全て表示されている場合の動作について、図５を参照して説明する。まず利用者は、ＡＲ表示の元となる画像をカメラ１１を用いて撮影する。利用者端末１０は、得られた画像を、ＡＲ表示システム３０と、マッチングシステム４０と、画像認識システム５０とに送信する（ステップＳ１０１）。なお、利用者端末１０からはＡＲ表示システム３０にのみ送信し、ＡＲ表示システム３０からマッチングシステム４０と、画像認識システム５０とに送信するようにしてもよい。また、利用者端末１０側でマーカを検出する機能を有している場合には、検出されたマーカの情報をＡＲ表示システム３０に併せて送信してもよい。
【００３６】
ＡＲ表示システム３０のマーカ検出手段３１は、利用者端末１０から送信された画像からマーカを検出し、マーカＤＢ３４に記憶されているマーカの情報と照合する。マーカＤＢ３４に記憶されているマーカの情報と合致した場合には、ＣＧ画像表示手段３２が、マーカＤＢ３４およびＣＧ画像ＤＢ３３に記憶されている情報に基づいて、検出したマーカに対応づけられている合成処理を行うことによりＣＧ画像を生成する（ステップＳ１０３）。生成したＣＧ画像は、マッチングシステム４０と利用者端末１０とに送信される（ステップＳ１０３，Ｓ１０５）。
【００３７】
一方、画像認識システム５０では、利用者端末１０から画像を受け取ると、オブジェクト・特徴点抽出手段５１が受け取った画像からオブジェクトや特徴点を抽出する（ステップＳ１０２）。そして、得られたデータをオブジェクト・特徴点ＤＢ５２に記憶させるとともに、マッチングシステムシステム４０に送信する。
【００３８】
マッチングシステム４０では、ＡＲシステム３０からのＣＧ画像と、画像認識システム５０からのオブジェクト・特徴点データとを受け取ると、それらをマッチング処理する（ステップＳ１０４）。
【００３９】
マッチング処理では、まず、ＣＧ画像座標抽出手段４１が、検出されたオブジェクトや特徴点を、ＣＧ画像から抽出・認識する。すなわち、検出されたオブジェクトや特徴点が、ＣＧ画像においてどのように表示されているか等を認識し、そのデータ（例えば、ＣＧ画像における座標など）を抽出する。
【００４０】
次に、オブジェクト・特徴点周りのＣＧマッチング手段４２が、認識されたオブジェクトおよび特徴点周りでのＣＧ画像の状態を算出する。そして、各オブジェクト・各特徴点それぞれを１つの識別子として算出データを割り当てて、識別子別ＣＧデータＤＢ４４に記憶する。
【００４１】
このように、利用者端末１１から送信された画像にマーカが全て含まれている場合、マーカを検出する処理と併せて画像認識を行って、マーカとともに画像に表示されているオブジェクトや特徴点を認識し、認識したオブジェクトおよび特徴点周りでのＣＧ画像の状態（例えば、ＣＧ画像の表示・合成状態・位置関係）を計算して、新しい識別子（マーカとしての識別子）とともに記憶しておく。
【００４２】
次に、利用者端末１１から送信された画像にマーカが全て含まれていない場合の動作例について図６を参照して説明する。利用者は、引き続きＡＲ表示の元となる画像をカメラ１１を用いて撮影しているとする。利用者端末１０は、得られた画像を、ＡＲ表示システム３０と、マッチングシステム４０と、画像認識システム５０とに送信する（ステップＳ１０６）。
【００４３】
図６に示す例では、得られた画像にはマーカが全て含まれていないため、ＡＲ表示システム３０では、マーカが正しく検出されずにそのマーカに紐付けられているＣＧ画像は生成できない。
【００４４】
画像認識システム５０では、図５に示した場合と同様に、オブジェクト・特徴点抽出手段５１が、利用者端末１０から受け取った画像からオブジェクトや特徴点を抽出して、得られたデータをマッチングシステムシステム４０に送信する（ステップＳ１０７）。
【００４５】
マッチングシステム４０では、画像認識システム５０からのオブジェクト・特徴点データを受け取ると、マッチング処理する（ステップＳ１０８）。
【００４６】
なお、本例では、マッチングシステム４０には、マーカが検出されていない旨がＡＲ表示システム３０から通知されているものとする。マッチング処理では、まず、ＣＧ画像座標抽出手段４１が、画像認識システム５０からのオブジェクト・特徴点データに基づき、検出されたオブジェクトや特徴点を、ＣＧ画像を表示する領域から抽出・認識する。
【００４７】
次に、オブジェクト・特徴点周りＣＧマッチング手段４２が、認識されたオブジェクトおよび特徴点が、識別子別ＣＧデータＤＢ４４に記憶されているかを確認（照合）する。認識されたオブジェクトまたは特徴点が識別子別ＣＧデータＤＢ４４に記憶されている場合、識別子周りの画像表示手段４３が、識別子別ＣＧデータＤＢ４４に記憶されている情報を元に、ＣＧ画像を生成して、利用者端末１０に送信する。
【００４８】
このように、利用者端末１１から送信された画像にマーカが全て含まれていない場合には、画像認識を行ってオブジェクトや特徴点を認識し、マーカ検出の際にオブジェクトまたは特徴点の新しい識別子とマッチングする。そして合致した場合には、登録されているそのオブジェクト・特徴点周りでのＣＧ画像の状態を元に、そのオブジェクトまたは特徴点を起点としてＣＧ画像を合成、表示する。
【００４９】
図７は、オブジェクト・特徴点の認識例を示す説明図である。また、図８は、認識したオブジェクト・特徴点周りでのＣＧ画像の状態の算出例の一例を示す説明図である。本例では、色や模様の変更が容易ではない建材（ドア）に対してＡＲ表示を行う場合の例を示している。
【００５０】
図７では、ドアの画像から、「ドアのぶ」のオブジェクト６０と、「模様」の特徴点７０、８０と、「縁」の特徴点９０とを抽出、認識した例を示している。
【００５１】
また、図８は、認識された各オブジェクトまたは各特徴点周りでＣＧ画像がどのような状態で表示されているかを示すデータの算出例を示す説明図である。図８では、認識された各オブジェクトおよび各特徴点について、ＣＧ画像の表示として、ＣＧ画像の表示範囲を求める例を示している。この他、合成状態として、模様や形の形状を求めてもよいし、オブジェクトまたは特徴点同士の位置関係として、他のオブジェクトまたは特徴点との間の距離や角度（方角）を求めてもよい。なお、オブジェクト周り、特徴点周りのＣＧ画像の状態とは、表示するＣＧ画像の範囲内におけるＣＧ画像の状態を言う。
【００５２】
ＣＧ画像の表示は、例えば、どの位置にＣＧ画像を表示するのかの計算を行えばよい。例えば、マーカ内で、マーカを中心にＸＹＺ軸の座標を用いてＣＧ画像の場所を特定する場合、その方法を適用して、得られたオブジェクトまたは特徴点を（０，０，０）の原点として、ＣＧ画像がどこの範囲まで設定されているのかｘｙｚ軸の座標系で算出してもよい。
【００５３】
また、合成状態は、例えば、ＣＧ画像データを特定するためのＩＤであってもよい。また、位置関係は、ドアのぶなどの丸い形のオブジェクトを認識した場合など、上下左右の判断がつかない形状のオブジェクトに対して、他に認識したオブジェクトや特徴点との位置関係により上下判断を行うために算出してもよい。
【００５４】
図９は、識別子別ＣＧデータＤＢ４４に記憶される識別子別ＣＧデータの一例を示す説明図である。図８に示す例では、認識されたオブジェクト・特徴点に対して割り当てた識別子（図では特徴点画像のデータＩＤ）に対応づけて、そのオブジェクト・特徴点周りのＣＧ画像の状態として、表示する画像の範囲（ｘ、ｙ、ｚ軸における始値および終値）と、表示するＣＧ画像の情報（ＣＧ画像のデータＩＤ）とを対応づけて記憶する例を示している。なお、本例のＣＧ画像のデータＩＤは、ＣＧ画像ＤＢ３３に記憶されるＣＧ画像のデータに用いられている識別子と対応しているものとする。
【００５５】
図１０は、ＣＧ画像ＤＢ３３に記憶されるＣＧ画像データの一例を示す説明図である。図１０に示す例では、ＣＧ画像ＤＢ３３は、ＣＧ画像データとして、ＣＧ画像のデータＩＤと、色情報、模様を識別するための模様ＩＤとを対応づけて記憶している。
【００５６】
なお、オブジェクト・特徴点周りＣＧマッチング手段４２が算出するデータとしては、少なくとも、オブジェクトや特徴点の画像とマーカから得られるＣＧ画像の位置または表示範囲が含まれていればよい。また、オブジェクト・特徴点周りＣＧマッチング手段４２が算出動作を行う際の必須条件としては、初期状態にマーカのデータが取得されていることを要する。なお、既に説明したように、上下左右の区別が付かないオブジェクト・特徴点の場合、２以上のオブジェクト・特徴点が検出されていることが必須条件となる。
【００５７】
次に、図１１を参照して、本実施形態におけるＣＧ画像とオブジェクト・特徴点のマッチング処理について説明する。図１１は、本実施形態のＡＲ表示方法の一例を示すフローチャートである。なお、図１１では、３つのシステムを纏めて一つのシステムとし、全体構成の動作フローの一例として示している。
【００５８】
電源がＯＮされた後（ステップＳ１１）、画像が入力されると（ステップＳ１２）、画像認識を実施する（ステップＳ１３）。そして、カメラ１１を通して得られた画像内に、予め登録されているマーカ（ここでは、図７の識別子１）が含まれているか否かを判定する（ステップＳ１４）。画像内に登録されているマーカが入っていない場合（ステップＳ１４のＮｏ）、画像の取得〜画像認識（ステップＳ１２〜Ｓ１３）を繰り返し実施する。
【００５９】
画像内に、登録されているマーカが完全に含まれている場合（ステップＳ１４）、そのマーカ（識別子１）によるＣＧ処理を実行し、生成されたＣＧ画像を配信する（ステップＳ１５）とともに、さらなる画像認識とマッチング処理を実施する（ステップＳ１６〜Ｓ１８）。
【００６０】
ステップＳ１６の画像認識処理では、得られた画像から、ＣＧ画像を合成、表示する範囲内において、オブジェクトや特徴点の認識を実施する。ここでは、ドアのぶのオブジェクト６０や、模様の特徴点７０，８０や、縁の特徴点９０が認識され、それらのデータ（オブジェクトまたは特徴点を特定する情報等）が抽出される。
【００６１】
次に、得られた認識データを基に、各オブジェクト・各特徴点周りのＣＧ画像の状態（表示・合成状態・位置関係）を計算する（ステップＳ１７）。得られたデータは、認識したオブジェクトや特徴点をそれぞれ新しいマーカ（第２のマーカ，第３のマーカ，・・・）とし、それらの識別子（識別子２，識別子３，・・・）を、それぞれのＣＧデータとともに記憶しておく（ステップＳ１８）。
【００６２】
例えば、最初にマーカを認識した場合に表示するＣＧ画像の表示場所がＸＹＺ軸を用いて特定されているとする。オブジェクトや特徴点を認識した際には、そのオブジェクトや特徴点を原点としたＣＧ画像として座標変換を行えばよい。各原点（オブジェクトや特徴点）からの表示範囲をＸＹＺ軸を用いて計算を行い、それを新しい識別子とともに登録する。例えば、マーカの中心を（０，０，０）とし、この座標系における一つのオブジェクトや特徴点の座標は（ｘ０，ｙ０，ｚ０）で表現されるものとする。この点を中心とするとした場合、表示されているＣＧ画像の座標は、ＧＣ画像の座標群を［Ｘ，Ｙ，Ｚ］とすると、［Ｘ，Ｙ，Ｚ］−［ｘ０，ｙ０，ｚ０］で表されるもので変換され、ＣＧデータとして登録される。
【００６３】
ステップ１５により、マーカを認識してＣＧ画像を配送した後、例えば、利用者がカメラの視点を変え、新たな画像を入力したとする（ステップＳ１２に戻る）。新たな画像が入力されると、登録されているマーカだけでなく、登録されているオブジェクトや特徴点を対象に画像認識を行う（ステップＳ１３）。ステップＳ１３では、まずマーカを対象に画像認識を行った後、マーカが含まれていない場合に登録されているオブジェクトおよび特徴点を第２のマーカとして扱って画像認識を行ってもよい。
【００６４】
例えば、マーカが画像内に含まれていない場合であっても、ステップＳ１６〜Ｓ１８で得られた新しい識別子のオブジェクトや特徴点が含まれている場合には（ステップＳ１４のＹｅｓ）、そのオブジェクトや特徴点周りで検出したＣＧ画像の状態データを基に、そのオブジェクトまたは特徴点を起点として画像を合成することによってＣＧ画像を生成することができる（ステップＳ１５）。その後も同様に、登録されているマーカまたはオブジェクトが画像内に含まれるか否かを判定し（ステップＳ１４）、それぞれに合ったＣＧ画像を利用者の持つ端末にデータを送信する（ステップＳ１５）。
【００６５】
なお、既に登録されている第２，第３，・・・のマーカとしてのオブジェクトや特徴点が検出された場合には、そのオブジェクトや特徴点から得られる情報を元に、さらに新たなオブジェクトや特徴点を認識して、認識したオブジェクトや特徴点を新たなマーカ（例えば、第４のマーカ）として登録することも可能である（ステップＳ１６〜Ｓ１８）。
【００６６】
図１２は、マーカが一部しか表示されていない場合のＡＲ表示方法の例を示す説明図である。図１２に示すように、マーカが一部しか表示されていない場合には、マーカを検出した際に認識され登録されているドアのぶのオブジェクト６０や模様の特徴点８０を認識して、そのオブジェクト６０や特徴点８０を起点とすることによってＣＧ画像を合成・表示することができる。
【００６７】
以上のように、本実施形態によれば、マーカを検出する際に、マーカの枠内（モデル画像）を超えてオブジェクト・特徴点を検出し、得られたオブジェクト・特徴点を新しいモデル画像として登録することによって、一度マーカを認識した後は、マーカの枠が完全に画像内に入っていない場合であっても新しいモデル画像を利用した拡張現実表示を行うことができる。
【００６８】
このため、ユーザの視点の制限をすることなく、自由な視点、距離でのＡＲ表示を実現することができる。また、マッチング処理によりオブジェクトや特徴点周りのＣＧ画像の状態を得るため、事前での識別子やそのＣＧ画像の登録が不要となり効率的である。また、マーカ用に登録されたＣＧ画像データを兼用することで、ＣＧ画像に関するデータ量を削減することができる。
【００６９】
なお、上記本実施形態では、建材に対してＡＲ表示を行う場合を例に説明したが、それに限らず、例えば、博物館や科学館での展示物の中身を自由な視点でＡＲ表示させたり、商品棚に対して移動しながら陳列イメージを拡張現実によって表示し続けるといった利用法も可能である。
【００７０】
次に、本発明の概要について説明する。図１３は、本発明の概要を示すブロック図である。図１３に示すように、本発明による拡張現実表示システムは、マーカ検出手段５０１と、ＣＧ画像生成手段５０２と、オブジェクト・特徴点検出手段５０３と、オブジェクト・特徴点周りＣＧ画像状態算出手段５０４と、マーカ状態記憶手段５０５と、マッチング手段５０６と、第２のＣＧ画像生成手段５０７とを備えている。
【００７１】
マーカ検出手段５０１（例えば、マーカ検出手段３１）は、入力画像から合成処理の際の起点となるマーカであって予め登録されているマーカを検出する。
【００７２】
ＣＧ画像生成手段５０２（例えば、ＣＧ画像表示手段３２）は、マーカ検出手段５０１によってマーカが検出された場合に、検出されたマーカに対応づけられて登録されている情報に基づき合成処理を行ってＣＧ画像を生成する。
【００７３】
オブジェクト・特徴点検出手段５０３（例えば、オブジェクト・特徴点抽出手段５１）は、入力画像からオブジェクトまたは特徴点を検出する。
【００７４】
オブジェクト・特徴点周りＣＧ画像状態算出手段５０４（例えば、ＣＧ画像座標抽出手段４１およびオブジェクト・特徴点周りＣＧマッチング手段４２）は、マーカ検出手段５０１によってマーカが検出された場合に、オブジェクト・特徴点検出手段５０３によって検出された各オブジェクトおよび各特徴点周りのＣＧ画像の状態を示すデータを算出する。
【００７５】
マーカ情報記憶手段５０５（例えば、識別子別ＣＧデータＤＢ４４）は、オブジェクト・特徴点周りＣＧ画像状態算出手段５０４によって周りのＣＧ画像の状態を示すデータが算出された各オブジェクトおよび各特徴点をそれぞれ新たなマーカとして、当該オブジェクトまたは特徴点を識別するための識別情報と、当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータとを対応づけて記憶する。
【００７６】
マッチング手段５０６（例えば、オブジェクト・特徴点周りＣＧマッチング手段４２）は、オブジェクト・特徴点検出手段５０３によって検出された各オブジェクトおよび各特徴点の情報と、前記マーカ情報記憶手段に記憶されている識別情報とを照合し、入力画像に、新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれているか否かを判定する。
【００７７】
第２のＣＧ画像生成手段５０７（例えば、識別子周り画像表示手段４３）は、マッチング手段５０６によって入力画像に新たなマーカとして記憶されたオブジェクトまたは特徴点が含まれていると判定された場合に、マーカ情報記憶手段５０５に記憶されている当該オブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータに基づいて、ＣＧ画像を生成する。
【００７８】
なお、マッチング手段５０６は、予め登録されているマーカが検出されなかった場合に、入力画像から検出された各オブジェクトおよび各特徴点の情報と記憶されている識別情報とを照合して、入力画像に、新たなマーカとして記憶されているオブジェクトまたは特徴点が含まれているか否かを判定してもよい。
【００７９】
また、オブジェクト・特徴点周りＣＧ画像状態算出手段５０４は、例えば、検出されたオブジェクトまたは特徴点周りのＣＧ画像の表示状態を示すデータとして、生成されたＣＧ画像の範囲内における、ＣＧ画像の表示位置を算出してもよい。
【００８０】
また、オブジェクト・特徴点周りＣＧ画像状態算出手段５０４は、例えば、検出されたオブジェクトまたは特徴点周りのＣＧ画像の合成状態を示すデータとして、生成されたＣＧ画像の範囲内における、ＣＧ画像の模様または形を示す値を算出してもよい。
【００８１】
また、オブジェクト・特徴点周りＣＧ画像状態算出手段５０４は、例えば、検出されたオブジェクトまたは特徴点周りのＣＧ画像の状態を示すデータとして、生成されたＣＧ画像の範囲内における、他のオブジェクトまたは特徴点との間の位置関係を示す値を算出してもよい。
【００８２】
また、オブジェクト・特徴点周りＣＧ画像状態算出手段５０４は、入力画像に第２のマーカとして記憶されているオブジェクトまたは特徴点が含まれていると判定された場合にも、まだ第２のマーカとして記憶されていないオブジェクトおよび特徴点について、各オブジェクトおよび各特徴点周りのＣＧ画像の状態を算出してもよい。
【００８３】
なお、図１３に示す例では、特徴をわかりやすくするために、予め登録されているマーカを検出してＣＧ画像を生成する手段（マーカ検出手段５０１とＣＧ画像生成手段５０２）と、新たなマーカとして記憶されたオブジェクト・特徴点を検出してＣＧ画像を生成する手段（オブジェクト・特徴点検出手段５０３、マッチング手段５０６、第２のＣＧ画像生成手段５０７）とを別々の手段として示しているが、予め登録されているマーカと新たに登録されたマーカとを区別せずに、その時点で登録されている情報に基づき入力画像からマーカを検出してＣＧ画像を生成する手段ととして実装することも可能である。
【産業上の利用可能性】
【００８４】
本発明は、マーカを用いて拡張現実表示を行う既存の拡張現実表示システムを拡張・変更して、高性能化を実現する用途にも好適に適用可能である。
【符号の説明】
【００８５】
１０  利用者端末
１１  カメラ
１２  ディスプレイ
２０  通信ネットワーク
３０  ＡＲ表示システム
３１  マーカ検出手段
３２  ＣＧ画像表示手段
３３  ＣＧ画像データベース
３４  マーカデータベース
４０  マッチングシステム
４１  ＣＧ画像座標抽出手段
４２  オブジェクト・特徴点周りＣＧマッチング手段
４３  識別子周り画像表示手段
４４  識別子別ＣＧデータベース
５０  画像認識システム
５１  オブジェクト・特徴点抽出手段
５２  オブジェクト・特徴点データベース
５０１  マーカ検出手段
５０２  ＣＧ画像生成手段
５０３  オブジェクト・特徴点検出手段
５０４  オブジェクト・特徴点周りＣＧ画像状態算出手段
５０５  マーカ情報記憶手段
５０６  マッチング手段
５０７  第２のＣＧ画像生成手段
【図１】
0005158162.tif 000002
【図２】
0005158162.tif 000003
【図３】
0005158162.tif 000004
【図４】
0005158162.tif 000005
【図５】
0005158162.tif 000006
【図６】
0005158162.tif 000007
【図７】
0005158162.tif 000008
【図８】
0005158162.tif 000009
【図９】
0005158162.tif 000010
【図１０】
0005158162.tif 000011
【図１１】
0005158162.tif 000012
【図１２】
0005158162.tif 000013
【図１３】
0005158162.tif 000014