(57)【要約】【課題】表示部に表示されないデータを仮想オブジェクトとして常に観察可能な構成を実現する。【解決手段】表示部を持つＰＣや携帯電話などの様々な表示装置において、表示部外の領域にはみ出した非表示データを表示部の表示データに連続する位置に仮想オブジェクトとして表示する構成を実現する。この構成により、ユーザはＰＣなとの限定された表示領域の表示データのみならず、表示部の外に出てしまったデータを常に観察して確認することが可能となり、データ処理効率を高めることができる。【選択図】図２
2010257123.tif 000002
【特許請求の範囲】
【請求項１】
第１表示部を利用したデータ処理において前記第１表示部の表示データに連続する非表示データと該非表示データの位置情報をメモリに格納するアプリケーション実行部と、
カメラ撮影画像に含まれる前記第１表示部を含む実オブジェクトの三次元位置を解析する三次元情報解析部と、
前記メモリに格納された非表示データと該非表示データの位置情報と、前記三次元情報解析部の解析した前記第１表示部の三次元位置情報を入力し、前記カメラ撮影画像に含まれる実オブジェクトと、前記非表示データからなる仮想オブジェクトからなる合成画像を生成して第２表示部に表示する仮想オブジェクト管理部を有し、
前記仮想オブジェクト管理部は、
前記第２表示部における前記仮想オブジェクトの表示位置を、前記第２表示部に表示する前記第１表示部の表示データの境界から第１表示部外に延長した方向の位置に設定する情報処理装置。
【請求項２】
前記仮想オブジェクト管理部は、
前記メモリに格納された非表示データの位置情報である座標データを、前記第２表示部の表示画像における表示位置の指標となるカメラ座標系に変換し、該変換後の座標データを適用して前記仮想オブジェクトの表示位置を決定する請求項１に記載の情報処理装置。
【請求項３】
前記オブジェクト管理部は、
カメラ座標系に変換した前記仮想オブジェクトの表示位置と、カメラ撮影画像に含まれる実オブジェクトの形成面とが交差するか否かを判定し、交差する場合には、前記変換後の座標データを、前記実オブジェクトの形成面上に位置するように座標再変換処理を実行し、再変換処理後の座標データを適用して前記仮想オブジェクトの表示位置を決定する請求項２に記載の情報処理装置。
【請求項４】
前記情報処理装置は、
前記アプリケーション実行部を有する第１の装置と、
前記三次元情報解析部と、前記仮想オブジェクト管理部とを有する第２の装置によって構成され、
前記アプリケーション実行部が第１の装置内の第１メモリに格納したデータを通信部を介して前記第２の装置に転送し、前記第２装置において、前記三次元情報解析部と、前記仮想オブジェクト管理部とが受信データを利用した処理を行う請求項１〜３いずれかに記載の情報処理装置。
【請求項５】
情報処理装置において実行する情報処理方法であり、
アプリケーション実行部が、第１表示部を利用したデータ処理において前記第１表示部の表示データに連続する非表示データと該非表示データの位置情報をメモリに格納するアプリケーション実行ステップと、
三次元情報解析部が、カメラ撮影画像に含まれる前記第１表示部を含む実オブジェクトの三次元位置を解析する三次元情報解析ステップと、
仮想オブジェクト管理部が、前記メモリに格納された非表示データと該非表示データの位置情報と、前記三次元情報解析部の解析した前記第１表示部の三次元位置情報を入力し、前記カメラ撮影画像に含まれる実オブジェクトと、前記非表示データからなる仮想オブジェクトからなる合成画像を生成して第２表示部に表示する仮想オブジェクト管理ステップを有し、
前記仮想オブジェクト管理ステップは、
前記第２表示部における前記仮想オブジェクトの表示位置を、前記第２表示部に表示する前記第１表示部の表示データの境界から第１表示部外に延長した方向の位置に設定する処理を行なうステップを有する情報処理方法。
【請求項６】
情報処理装置において情報処理を実行させるプログラムであり、
アプリケーション実行部に、第１表示部を利用したデータ処理において前記第１表示部の表示データに連続する非表示データと該非表示データの位置情報をメモリに格納させるアプリケーション実行ステップと、
三次元情報解析部に、カメラ撮影画像に含まれる前記第１表示部を含む実オブジェクトの三次元位置を解析させる三次元情報解析ステップと、
仮想オブジェクト管理部に、前記メモリに格納された非表示データと該非表示データの位置情報と、前記三次元情報解析部の解析した前記第１表示部の三次元位置情報を入力させ、前記カメラ撮影画像に含まれる実オブジェクトと、前記非表示データからなる仮想オブジェクトからなる合成画像を生成して第２表示部に表示させる仮想オブジェクト管理ステップを有し、
前記仮想オブジェクト管理ステップは、
前記第２表示部における前記仮想オブジェクトの表示位置を、前記第２表示部に表示する前記第１表示部の表示データの境界から第１表示部外に延長した方向の位置に設定する処理を行なわせるステップを有するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、および情報処理方法、並びにプログラムに関する。さらに詳細には、実世界の実物体と電子的な表示を融合させた複合現実感（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）を利用したデータ処理を行う情報処理装置、および情報処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
例えばユーザがＰＣ（パーソナルコンピュータ）を利用したデータ処理を行う場合、ユーザは、ＰＣの表示部（ディスプレイ）の表示データに対する処理を行う。しかし、例えば文書作成を行う場合、その文書作成に適用している用紙の表示サイズが、ＰＣの表示部のサイズ（例えばウィンドウサイズ）よりも大きくなった場合、用紙全体をＰＣ画面内に表示することかできず、用紙の一部のみを画面に表示して作業を行うことが必要となる。
【０００３】
すなわち、画面からはみ出した情報はＰＣの画面内では表示されなくなってしまう。ＰＣ画面からはみ出した領域を表示する場合には、スクロール処理を行って表示することは可能であるが、スクロールの結果として今まで表示されていた領域が隠れてしまうという問題が発生する。全体を表示するためには例えば全体を縮小して表示する処理や、画面を２分割して表示するとっいった処理も可能ではあるが、このような処理を行うと、例えば文字サイズが小さくなり作業が行いにくくなるという問題が発生する。
【０００４】
本発明は、このような問題を、例えば複合現実感（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）を利用したデータ処理を利用して解決するものである。なお、複合現実感について説明した従来技術としては、例えば特許文献１（特開２００８−３０４２６８号公報）や、特許文献２（特開２００８−３０４２６９号公報）がある。これらの文献には、カメラによって撮影された画像を利用して実世界の三次元マップを作成する処理について記載している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−３０４２６８号公報
【特許文献１】特開２００８−３０４２６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、複合現実感（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）を利用したデータ処理により、例えばＰＣなどの表示部（ディスプレイ）以外の領域に、様々なデータを電子的に貼り付けた合成画像を生成して、この合成画像を観察可能とすることで、主要ワーク領域として利用する表示部以外の空間領域を有効に利用可能とした情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の第１の側面は、
第１表示部を利用したデータ処理において前記第１表示部の表示データに連続する非表示データと該非表示データの位置情報をメモリに格納するアプリケーション実行部と、
カメラ撮影画像に含まれる前記第１表示部を含む実オブジェクトの三次元位置を解析する三次元情報解析部と、
前記メモリに格納された非表示データと該非表示データの位置情報と、前記三次元情報解析部の解析した前記第１表示部の三次元位置情報を入力し、前記カメラ撮影画像に含まれる実オブジェクトと、前記非表示データからなる仮想オブジェクトからなる合成画像を生成して第２表示部に表示する仮想オブジェクト管理部を有し、
前記仮想オブジェクト管理部は、
前記第２表示部における前記仮想オブジェクトの表示位置を、前記第２表示部に表示する前記第１表示部の表示データの境界から第１表示部外に延長した方向の位置に設定する情報処理装置にある。
【０００８】
さらに、本発明の情報処理装置の一実施態様において、前記仮想オブジェクト管理部は、前記メモリに格納された非表示データの位置情報である座標データを、前記第２表示部の表示画像における表示位置の指標となるカメラ座標系に変換し、該変換後の座標データを適用して前記仮想オブジェクトの表示位置を決定する。
【０００９】
さらに、本発明の情報処理装置の一実施態様において、前記オブジェクト管理部は、カメラ座標系に変換した前記仮想オブジェクトの表示位置と、カメラ撮影画像に含まれる実オブジェクトの形成面とが交差するか否かを判定し、交差する場合には、前記変換後の座標データを、前記実オブジェクトの形成面上に位置するように座標再変換処理を実行し、再変換処理後の座標データを適用して前記仮想オブジェクトの表示位置を決定する。
【００１０】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記アプリケーション実行部を有する第１の装置と、前記三次元情報解析部と、前記仮想オブジェクト管理部とを有する第２の装置によって構成され、前記アプリケーション実行部が第１の装置内の第１メモリに格納したデータを通信部を介して前記第２の装置に転送し、前記第２装置において、前記三次元情報解析部と、前記仮想オブジェクト管理部とが受信データを利用した処理を行う。
【００１１】
さらに、本発明の第２の側面は、
情報処理装置において実行する情報処理方法であり、
アプリケーション実行部が、第１表示部を利用したデータ処理において前記第１表示部の表示データに連続する非表示データと該非表示データの位置情報をメモリに格納するアプリケーション実行ステップと、
三次元情報解析部が、カメラ撮影画像に含まれる前記第１表示部を含む実オブジェクトの三次元位置を解析する三次元情報解析ステップと、
仮想オブジェクト管理部が、前記メモリに格納された非表示データと該非表示データの位置情報と、前記三次元情報解析部の解析した前記第１表示部の三次元位置情報を入力し、前記カメラ撮影画像に含まれる実オブジェクトと、前記非表示データからなる仮想オブジェクトからなる合成画像を生成して第２表示部に表示する仮想オブジェクト管理ステップを有し、
前記仮想オブジェクト管理ステップは、
前記第２表示部における前記仮想オブジェクトの表示位置を、前記第２表示部に表示する前記第１表示部の表示データの境界から第１表示部外に延長した方向の位置に設定する処理を行なうステップを有する情報処理方法にある。
【００１２】
さらに、本発明の第３の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
アプリケーション実行部に、第１表示部を利用したデータ処理において前記第１表示部の表示データに連続する非表示データと該非表示データの位置情報をメモリに格納させるアプリケーション実行ステップと、
三次元情報解析部に、カメラ撮影画像に含まれる前記第１表示部を含む実オブジェクトの三次元位置を解析させる三次元情報解析ステップと、
仮想オブジェクト管理部に、前記メモリに格納された非表示データと該非表示データの位置情報と、前記三次元情報解析部の解析した前記第１表示部の三次元位置情報を入力させ、前記カメラ撮影画像に含まれる実オブジェクトと、前記非表示データからなる仮想オブジェクトからなる合成画像を生成して第２表示部に表示させる仮想オブジェクト管理ステップを有し、
前記仮想オブジェクト管理ステップは、
前記第２表示部における前記仮想オブジェクトの表示位置を、前記第２表示部に表示する前記第１表示部の表示データの境界から第１表示部外に延長した方向の位置に設定する処理を行なわせるステップを有するプログラムにある。
【００１３】
なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な画像処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、画像処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【００１４】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００１５】
本発明の一実施例の構成によれば、表示部を持つＰＣや携帯電話などの様々な表示装置において、表示部外の領域にはみ出した非表示データを表示部の表示データに連続する位置に仮想オブジェクトとして表示する構成を実現する。この構成により、ユーザはＰＣなとの限定された表示領域の表示データのみならず、表示部の外に出てしまったデータを常に観察して確認することが可能となり、データ処理効率を高めることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の情報処理装置の一実施例構成について説明する図である。
【図２】本発明の情報処理装置の実行する仮想オブジェクトの表示例について説明する図である。
【図３】本発明の情報処理装置の実行する一処理例について説明する図である。
【図４】本発明の情報処理装置の実行する処理の一例を示す具体的な処理例について説明する図である。
【図５】本発明の情報処理装置の実行する処理の一例を示す具体的な処理例について説明する図である。
【図６】本発明の情報処理装置の実行する処理シーケンスについて説明するフローチャートを示す図である。
【図７】本発明の情報処理装置の実行する処理の一例を示す具体的な処理例について説明する図である。
【図８】本発明の情報処理装置の実行する処理の一例を示す具体的な処理例について説明する図である。
【図９】本発明の情報処理装置の実行する処理の一例を示す具体的な処理例について説明する図である。
【図１０】本発明の情報処理装置の実行する処理の一例を示す具体的な処理例について説明する図である。
【図１１】本発明の情報処理装置の実行する処理シーケンスについて説明するフローチャートを示す図である。
【図１２】本発明の情報処理装置の実行する処理の一例を示す具体的な処理例について説明する図である。
【図１３】本発明の情報処理装置の実行する処理の一例を示す具体的な処理例について説明する図である。
【図１４】本発明の情報処理装置の実行する処理の一例を示す具体的な処理例について説明する図である。
【発明を実施するための形態】
【００１７】
以下、図面を参照しながら本発明の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。
【００１８】
本発明について以下の項目に従って順次説明する。
１．本発明の情報処理装置の構成例と処理例について（実施例１）
２．実世界のオブジェクト形状に適合させた仮想オブジェクトの表示処理（実施例２）
３．その他の表示装置を利用した処理例
【００１９】
［１．本発明の情報処理装置の構成例と処理例について］
本発明の情報処理装置の構成例と処理例について図１以下を参照して説明する。図１は、本発明の情報処理装置の一構成例を示す図である。
【００２０】
ユーザ１００は、ＰＣ（パーソナルコンピュータ）１２０を操作して各種のデータ処理を行う。ＰＣ１２０は、図に示すように、アプリケーション実行部１２１、メモリ１２２、通信部１２３を有する。アプリケーション実行部１２１では、ユーザの選択したアプリケーションプログラムが実行される。例えば文書作成アプリケーションや描画アプリケーションなどである。メモリ１２２は、ＲＡＭ，ＲＯＭ等によって構成され、アプリケーションプログラムの格納領域やワークエリアとして利用される。例えば、以下において説明するスクロール処理などによってＰＣの表示部（ディスプレイ）に表示されなくなった非表示データおよび非表示データの位置情報などの格納領域としても利用される。通信部１２３は、複合現実間（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）生成装置１３０との通信処理を行う。
【００２１】
ユーザ１００は、仮想オブジェクトを表示するディスプレイを有するメガネ１４１を装着している。メガネ１４１には周囲の環境を撮影するカメラ１４２が備えられている。メガネ１４１とカメラ１４２は、複合現実間（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）生成装置１３０に接続されている。ユーザ１００はメガネ１４１に設けられたディスプレイの表示画像を観察しながら作業を行う。
【００２２】
メガネ１４１のディスプレイには、カメラ１４２の撮影画像である実世界画像を表示し、さらに複合現実感（ＭＲ）生成装置１３０の生成した仮想オブジェクトを実世界画像に併せて表示する。
【００２３】
図１の例において、ユーザ１００はＰＣ（パーソナルコンピュータ）１２０を操作しており、カメラ１４２は、ユーザ１００の操作するＰＣ（パーソナルコンピュータ）１２０を撮影している。従って、メガネ１４１のディスプレイには、実世界画像として、例えば、ユーザ１００の操作するＰＣ（パーソナルコンピュータ）１２０のディスプレイとその周囲の様々な実オブジェクトを含む画像が表示される。さらに、この実世界画像に複合現実感（ＭＲ）生成装置１３０の生成した仮想オブジェクトが重ねて表示される。ユーザ１００の動きに応じて、カメラ１４２の向きも変更され、例えばユーザが自分の手を見た場合、手の画像が実世界画像としてメガネ１４１のディスプレイに表示され、その実世界画像に仮想オブジェクトが併せて表示されることになる。
【００２４】
ユーザ１００が、ＰＣ１２０の画面に向かって処理を行っている場合、カメラ１４２はＰＣ１２０の画面の画像を中心とした画像を撮影する。この結果、例えば図２に示すようなディスプレイ表示画像２００が、ユーザ１００の装着したメガネ１４１のディスプレイに表示される。この図２に示すディスプレイ表示画像１５０は、実オブジェクトと仮想オブジェクトの合成画像である。
【００２５】
図２についての説明の前に、図１に示す複合現実感（ＭＲ）生成装置１３０の構成について説明する。複合現実感（ＭＲ）生成装置１３０は、図１に示すように、三次元情報解析部１３１、仮想オブジェクト管理モジュール１３２、メモリ１３３、通信部１３４を有する。
【００２６】
三次元情報解析部１３１は、ユーザの装着したカメラ１４２の撮影画像を入力し、撮影画像に含まれるオブジェクトの三次元位置を解析する処理を行う。この三次元位置解析処理は、例えば、ＳＬＡＭ（ｓｉｍｕｌｔａｎｅｏｕｓ  ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  ｍａｐｐｉｎｇ）を適用した処理として行われる。ＳＬＡＭは、カメラの撮影画像に含まれる様々な実オブジェクトから特徴点を選択し、選択した特徴点の位置とカメラの位置姿勢を併せて検出する処理である。なお、ＳＬＡＭについては、前述の特許文献１（特開２００８−３０４２６８号公報）や、特許文献２（特開２００８−３０４２６９号公報）に記載されている。なお、ＳＬＡＭの基本的な処理については、論文［Ａｎｄｒｅｗ  Ｊ．Ｄａｖｉｓｏｎ，"Ｒｅａｌ−ｔｉｍｅ  ｓｉｍｕｌｔａｎｅｏｕｓ  ｌｏｃａｌｉｓａｔｉｏｎ  ａｎｄ  ｍａｐｐｉｎｇ  ｗｉｔｈ  ａ  ｓｉｎｇｌｅ  ｃａｍｅｒａ"，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ９ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，Ｎｉｎｔｈ，（２００３）］に記載がある。
【００２７】
三次元情報解析部１３１は、例えば上記のＳＬＡＭを適用してユーザの装着したカメラ１４２の撮影画像に含まれる実オブジェクトの三次元位置を算出する。ただし三次元情報解析部１３１は、上記のＳＬＡＭに限らず、その他の方法でカメラ撮影画像に含まれるオブジェクトの三次元位置を求める設定であってもよい。
【００２８】
仮想オブジェクト管理モジュール１３２は、ユーザの装着したメガネ１４１のディスプレイに表示する仮想オブジェクトの管理を行う。仮想オブジェクトは、メモリ１３３に格納されたデータである。具体的には、例えば、ユーザの装着したメガネ１４１のディスプレイには、図２に示すディスプレイ表示画像１５０が表示される。ディスプレイ表示画像１５０に含まれるＰＣ画像１５１は、カメラ１４２によって撮影された実画像（実オブジェクト）である。この実画像（実オブジェクト）に対して図２に示す仮想オブジェクト１６１が併せて表示される。
【００２９】
図１に示すユーザ１００は、例えば図２に示す実オブジェクトと仮想オブジェクトとの合成画像をメガネ１４１のディスプレイにおいて観察することができる。図２に示すＰＣ画像１５１はカメラ１４２によって撮影された実オブジェクトである。ＰＣ画像１５１内のＰＣ表示部１５２も実画像である。このＰＣ表示部１５２には、ユーザが作成中の文書の一部が表示されている。
【００３０】
一方、図２に示す表示画像１５０に含まれる仮想オブジェクト１６１は、現実世界のオブジェクト（実オブジェクト）ではない。図２に示す仮想オブジェクト１６１は、ＰＣ画像１５１内のＰＣ表示部１５２内に示されるユーザが処理対象としている用紙の一部である。
【００３１】
ユーザは、図１に示すＰＣ１２０の操作を行い、用紙のサイズを設定し、設定したサイズの用紙に対して文字などを入力しているが、用紙サイズが大きくてＰＣ１２０の表示領域からはみ出してしまい、用紙全体がＰＣのディスプレイには表示されない。図２に示す仮想オブジェクト２２１は、ＰＣ１２０の表示領域からはみ出した非表示データである。ＰＣ１２０のアプリケーション実行部１２１は、非表示データの発生を検出すると、非表示データと、その位置情報をＰＣ１２０内のメモリ１２２に格納する。
【００３２】
メモリ１２２に格納されたデータは、ＰＣ１２０の通信部１２３と、複合現実感（ＭＲ）生成装置１３０の通信部１３４との通信によって、複合現実感（ＭＲ）生成装置１３０に送信される。複合現実感（ＭＲ）生成装置１３０は、ＰＣ１２０からの受信データを複合現実感（ＭＲ）生成装置１３０内のメモリ１３３に格納する。
【００３３】
複合現実感（ＭＲ）生成装置１３０の仮想オブジェクト管理モジュール１３２は、メモリ１３３に格納されたデータを仮想オブジェクトとしてユーザの装着したメガネ１４１のディスプレイに表示する処理を行う。具体的には、例えば仮想オブジェクトの表示位置を決定して、決定した表示位置に仮想オブジェクトを表示する処理を行う。
【００３４】
図２に示す例では、仮想オブジェクト１６１を、実オブジェクト画像として表示されるＰＣ画像１５１のＰＣ表示部１５２の上部に表示した例を示している。この表示位置は、ＰＣ１２０のアプリケーション実行部１２１が非表示データとともにメモリ１２２に格納した位置情報を適用して、仮想オブジェクト管理モジュール１３２が決定する。この位置情報も通信によってＰＣ１２０から複合現実間（ＭＲ）生成装置１３０に送信される。
【００３５】
図２に示す仮想オブジェクト１６１は、ユーザ１００によるＰＣ１２０の操作によって、ＰＣ１２０の表示部（ディスプレイ）の領域外にはみ出した非表示データである。この非表示データがその位置情報とともに通信によって複合現実感（ＭＲ）生成装置１３０に送信され、複合現実感（ＭＲ）生成装置１３０のメモリ１３３に格納される。複合現実感（ＭＲ）生成装置１３０の仮想オブジェクト管理モジュール１３２は、メモリ１３３に格納されたデータを仮想オブジェクトとして、仮想オブジェクトの表示位置を決定する処理を行ない、ユーザの装着したメガネ１４１のディスプレイに表示する。
【００３６】
なお、図１に示す装置では、ＰＣ１２０と、複合現実感（ＭＲ）生成装置１３０の２つの装置を別の装置として両装置間のデータ通信を行う構成としているが、ＰＣ１２０と、複合現実感（ＭＲ）生成装置１３０を１つの装置として構成することも可能であり、この場合、図１に示す各装置の通信部は省略できる。例えばＰＣ１２０に複合現実感（ＭＲ）生成装置１３０の三次元情報解析部１３１、仮想オブジェクト管理モジュール１３２を設定して、１つのＰＣ内で処理を行なう構成とすることも可能である。
【００３７】
すなわち、図１には、ＰＣ（パーソナルコンピュータ）１２０と複合現実間（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）生成装置１３０の２つの装置を個別に示しているが、本発明の情報処理装置は、図１に示す複合現実間（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）生成装置１３０単独の装置としてもよいし、複合現実間（ＭＲ：Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）生成装置１３０とＰＣ１２０の２つの装置から構成される装置であってもよい。あるいは２つの装置の機能を合わせ持つ１つの装置によって構成することもできる。
【００３８】
図１の構成を適用した具体的な処理例について図３以下を参照して説明する。ユーザ１００は、ＰＣ１２０のアプリケーション実行部１２１において文書作成アプリケーションを実行しており、図３（ａ）に示すようにＰＣ１２０の表示部２０１に作成文書を表示して文書を作成している。ＰＣ１２０の表示部１２０には、作成対象の文書の用紙２０２ａが表示され、ユーザは、この用紙２０２ａに文字などを入力している。表示部２０１には、用紙２０２ａの半分程度が表示され残りは隠れている。
【００３９】
文書作成が進むと、ユーザは用紙２０２ａを上方向に移動（スクロール）させ、下半分を表示せて入力作業を継続する。すなわち、図３（ｂ）に示すように、作成対象の文書用紙２０２ｂの下側を表示し、ユーザは、この文書用紙２０２ｂに文字などを入力することができる。しかし、この図３（ｂ）に示す状態では、表示部２０１には、用紙２０２ｂの下半分のみが表示され残りの上側の領域は表示部２０１の領域外となり、ユーザは確認することができない。
【００４０】
本発明の装置では、表示部２０１領域外に出たデータ、すなわち、非表示データをその位置情報とともに、一旦、ＰＣ１２０のメモリ１２２に格納する。その後、この非表示データを位置情報とともに通信部１２３を介して複合現実感（ＭＲ）生成装置１３０に送信する。複合現実感（ＭＲ）生成装置１３０は、ＰＣ１２０からの受信データ、すなわち非表示データと位置情報を複合現実感（ＭＲ）生成装置１３０内のメモリ１３３に格納する。
【００４１】
複合現実感（ＭＲ）生成装置１３０の三次元情報解析部１３１は、ユーザ１００に装着したカメラ１４２の撮影画像を入力し、例えば前述のＳＬＡＭを適用して撮影画像に含まれるオブジェクトの三次元位置を算出する。例えば図３に示すＰＣのディスプレイの４隅に設定されたマーカー３２１ａ〜ｄを特徴点として選択し、これらの特徴点の三次元位置を算出する。
【００４２】
なお、図３に示す例は、特徴点の識別のためにマーカー３２１ａ〜ｄを設定した例を示しているが、このようなマーカーを設定することは必須ではなく、実オブジェクトの形状、例えば画像に含まれる実オブジェクトの角部（コーナー）を検出し、検出した角部（コーナー）を特徴点として選択して、その特徴点の三次元位置を判定することも可能である。なお、角部（コーナー）の検出処理は、既存のハリスコーナーディテクター（Ｈａｒｒｉｓ  Ｃｏｒｎｅｒ  Ｄｅｔｅｃｔｏｒ）を用いた特徴点抽出処理によって実行可能である。
【００４３】
なお、三次元情報解析部１３１は、撮影画像から特定のオブジェクトを検出する機能を持つ構成としてもよい。具体的には、例えばＰＣの形状や特徴情報を予め登録し、この登録情報を適用してＰＣの画面領域を判別する構成とすれば、撮影画像から、正確にかつ迅速にＰＣの画面領域を判別することができる。
【００４４】
仮想オブジェクト管理モジュール１３２は、三次元情報解析部１３１からカメラ撮影画像に含まれる実オブジェクトの三次元位置情報を取得する。例えばＰＣの表示部の周囲の４点の位置情報を取得する。さらに、仮想オブジェクト管理モジュール１３２は、メモリ１３３に格納された非表示データ、すなわちＰＣ１２０の操作においてＰＣ画面からはみ出てしまった非表示データを取得し、取得したデータを仮想オブジェクトとしてユーザ１００のメガネ１４１のディスプレイに表示する。
【００４５】
仮想オブジェクトの表示位置は、仮想オブジェクト管理モジュール１３２が決定する。ＰＣ１２０から受信した非表示データの位置情報と、三次元情報解析部１３１から取得したカメラ撮影画像中の実オブジェクトの三次元位置情報を適用して決定する。本例では、ＰＣ表示部の周囲に設定されることになる。
【００４６】
仮想オブジェクト管理モジュール１３２は、ユーザ１００のメガネ１４１のディスプレイに対する仮想オブジェクトの表示位置を、メガネ１４１のディスプレイに表示するＰＣの表示部の表示データの境界からＰＣの表示部外に延長した方向に設定する。すなわち、図２の表示データ１５０のような位置に仮想オブジェクト１６１を設定した合成画像を生成して表示する。このような表示処理によって、ユーザは、違和感を感ずることなく処理対象としている用紙全体を観察することができる。
【００４７】
図４を参照して、ＰＣ１２０のアプリケーション実行部１２１が、メモリ１２２に格納する非表示データの位置情報について説明する。
【００４８】
ＰＣ１２０のアプリケーション実行部１２１は、例えばスクロール操作によって画面に表示されなくなった非表示データが生じた場合、その非表示データをメモリ１２２に格納する。図４の例では、点線枠で示す非表示データ３３０のデータ内容がＰＣ１２０のメモリ１２２に格納される。
【００４９】
さらに、ＰＣ１２０のアプリケーション実行部１２１は、ＰＣの表示部２０１を形成する平面をｘｙ平面として、特定の位置を原点に設定する。図に示す例では、表示部２０１の左上部の点を原点３５０としている。
【００５０】
水平方向をｘ軸、縦方向をｙ軸とした表示部２０１に平行な平面を設定する。この座標系をＰＣ表示部対応座標系とする。アプリケーション実行部１２１は、このＰＣ表示部対応座標系における非表示データ３３０の位置を求める。
【００５１】
図４に示す非表示データ３３０の４隅の座標は、図に示すように、
（ｘ１０，ｙ１０）
（ｘ１１，ｙ１１）
（ｘ１２，ｙ１２）
（ｘ１３，ｙ１３）
この４点の座標となる。なお、図４に示す例では、非表示データの位置情報を、非表示データの４隅の座標としているが、非表示データの形状に応じて、必要とする位置情報は異なる。アプリケーション実行部１２１は、非表示データを仮想データとして表示する場合に必要となる非表示データの形状に応じた位置情報を取得してメモリ１２２に格納する処理を実行する。
【００５２】
図４に示すような矩形形の非表示データ３３０の場合は、その４隅の座標データを非表示データの位置情報として取得する。その後の処理について図５を参照して説明する。図５に示すように、アプリケーション実行部１２１は、この４つの座標データを非表示データの位置情報として、非表示データの実体データとともに、メモリ１２２に格納する。
【００５３】
ＰＣ１２０側のメモリ１２２に格納された非表示データとその位置情報は、通信部を介して複合現実感（ＭＲ）生成装置１３０に送信され、複合現実感（ＭＲ）生成装置１３０のメモリ１３３に格納される。
【００５４】
複合現実感（ＭＲ）生成装置１３０の仮想オブジェクト管理モジュール１３２は、このようにしてＰＣ１２０から受信した非表示データの位置情報と、三次元情報解析部１３１から取得したカメラ撮影画像中の実オブジェクトの三次元位置情報を適用して、仮想オブジェクト（非表示データ）の表示位置を決定する。この処理によって、先に図２を参照して説明した表示データ１５０が生成され、ユーザ１００のメガネ１４１に設定されたディスプレイに表示されることになる。
【００５５】
図６に示すフローチャートを参照して、本発明の情報処理装置の処理シーケンスについて説明する。
図６に示すフローチャートのステップＳ１０１〜Ｓ１０３の処理は、図１に示すＰＣ１２０の処理である。
ステップＳ１０４〜Ｓ１０７の処理は、図１に示す複合現実感（ＭＲ）生成装置１３０の処理である。
【００５６】
まず、ＰＣ１２０のアプリケーション実行部１２１は、ステップＳ１０１において、ＰＣの表示部の領域外にはみ出した非表示データの発生を検出すると、ステップＳ１０２において、非表示データの実体データと、その位置情報をＰＣ１２０のメモリ１２２に格納する。この処理は、図４、図５を参照して説明した処理である。非表示データの位置情報は、例えば、ＰＣ表示部平面における非表示データの４隅の座標データである。
【００５７】
次に、ステップＳ１０３において、メモリに格納された非表示データと位置情報が、通信部を介して複合現実感（ＭＲ）生成装置１３０に転送される。
【００５８】
ステップＳ１０４以降は、複合現実感（ＭＲ）生成装置１３０の処理として行われる。
まず、ステップＳ１０４において、複合現実感（ＭＲ）生成装置１３０はＰＣ１２０から転送された非表示データとその位置情報を複合現実感（ＭＲ）生成装置１３０側のメモリ１３３に格納する。
【００５９】
次に、ステップＳ１０５において、複合現実感（ＭＲ）生成装置１３０の仮想オブジェクト管理モジュール１３２は、メモリ１３３に格納されたデータ、すなわち、非表示データとその位置情報を取得する。
【００６０】
ステップＳ１０６において、仮想オブジェクト管理モジュール１３２は、メモリ１３３から取得した非表示データの位置情報を三次元情報解析部１３１から取得したカメラ撮影画像に対応するカメラ座標系に変換する処理を行う。
【００６１】
この処理について、図７を参照して説明する。三次元情報解析部１３１はカメラ撮影画像に含まれるＰＣ１２０の表示部の４隅のマーカー３２１ａ〜３２１ｄの三次元位置情報を取得している。図７に示すように、
マーカー３２１ａ＝（Ｘａ，Ｙａ，Ｚａ）
マーカー３２１ｂ＝（Ｘｂ，Ｙｂ，Ｚｂ）
マーカー３２１ｃ＝（Ｘｃ，Ｙｃ，Ｚｃ）
マーカー３２１ｄ＝（Ｘｄ，Ｙｄ，Ｚｄ）
これらの位置情報が取得されている。
【００６２】
仮想オブジェクト管理表示モジュール１３２は、この三次元位置情報に基づいて、カメラ座標系における実オブジェクトであるＰＣの表示部の平面を算出し、その算出した平面上に、ＰＣ１２０から取得した非表示データ３３０を設定するように、座標変換を実行する。カメラ撮影画像にはＰＣ表示部内の用紙位置も含まれ、カメラから取得されたＰＣ表示部内の用紙位置に併せてＰＣ１２０から取得した非表示データ３３０を設定するように座標変換を実行する。なお、カメラ座標系を、図７に示すように、カメラ撮影画像におけるＰＣ表示部平面をＸＹ平面としてＰＣ表示部の垂直方向をＺ軸として設定すれば、４つのマーカーのＺ座標は全て０となるので、Ｚ座標は使用しない設定とすることができる。
【００６３】
図７に示すＰＣの表示部平面によって形成さるＸＹ平面上に、先にＰＣ１２０から受信した非表示データの４隅の座標が設定されるように座標変換を実行すればよい。図７に示すように、ＰＣ表示部対応座標系（ｘ，ｙ）における非表示データ３３０の４隅の位置座標は、カメラ座標系（Ｘ，Ｙ）の座標として以下のように変換される。
（ｘ１０，ｙ１０）→（Ｘ１０，Ｙ１０）
（ｘ１１，ｙ１１）→（Ｘ１１，Ｙ１１）
（ｘ１２，ｙ１２）→（Ｘ１２，Ｙ１２）
（ｘ１３，ｙ１３）→（Ｘ１３，Ｙ１３）
【００６４】
仮想オブジェクト管理モジュール１３２は、この座標を仮想オブジェクトの表示位置として設定する。このようにして、仮想オブジェクト管理モジュール１３２は、図６に示すフローチャートのステップＳ１０６において、メモリ１３３から取得した非表示データの位置情報を三次元情報解析部１３１から取得したカメラ撮影画像に対応するカメラ座標系に変換する処理を行う。
【００６５】
ステップＳ１０７では、仮想オブジェクト管理モジュール１３２は、メモリ１３３から取得した非表示データを仮想オブジェクトとして、ステップＳ１０６において算出した仮想オブジェクトの表示位置に表示する処理を実行する。
【００６６】
この処理によって、図８に示す表示データ４００が、ユーザ１００の装着したメガネ１４１のディスプレイに表示される。図８に示す表示データ４００は、実オブジェクトとしてのＰＣ４０１と、仮想オブジェクト４０２が併せて表示される合成画像である。仮想オブジェクト管理モジュール１３２は、仮想オブジェクトの表示位置を、図８に示すように、ＰＣ表示部の表示データの境界からＰＣの表示部外への延長方向に設定する。このような表示処理によって、ユーザは、違和感を感ずることなく処理対象としている用紙全体を観察することができる。
【００６７】
この処理により、ユーザ１００は、ＰＣの表示部に表示されたデータとともに、ＰＣの表示部外にはみ出した非表示データについても仮想オブジェクトとして常時確認することが可能となる。
【００６８】
なお、図６に示すフローチャートを参照して説明した処理は、ユーザがＰＣ１２０を操作し、例えばスクロール処理などによって非表示データの範囲が変更されるたびに行われる。アプリケーション実行部１２１は、非表示データの領域や内容が変更される毎にメモリ１２２の記憶データの更新を実行し、更新データが複合現実感（ＭＲ）生成装置１３０に送信され、複合現実感（ＭＲ）生成装置１３０は更新されたデータに基づいて仮想オブジェクトの表示態様を変更する処理をリアルタイム更新処理として実行する。
【００６９】
［２．実世界のオブジェクト形状に適合させた仮想オブジェクトの表示処理］
次に、本発明の第２実施例として、実世界のオブジェクト形状に適合させた仮想オブジェクトの表示処理について説明する。
【００７０】
上述した実施例では、仮想オブジェクトの表示をＰＣの画面に対応する平面を拡大して表示する構成としていた。しかし、例えば、図９に示すように、実世界において、ＰＣの表示部の平面が、壁５２１によってさえぎられている場合がある。このような場合、上述した仮想オブジェクトの表示処理を実行すると、仮想オブジェクトは、壁を突き抜けて表示されることになり、ユーザは違和感のあるデータを観察することになる。
【００７１】
以下では、図９に示すような表示データ５００を生成してユーザに提示する。すなわち、仮想オブジェクト５１２を実世界の実オブジェクト（例えば図９に示す壁５２１ａ，５２１ｂ）の形状に併せて表示する。
【００７２】
本実施例は、仮想オブジェクト５１２は、実世界のオブジェクトに沿って表示することを可能とする実施例である。例えば図９に示すように、仮想オブジェクト５１２を、実オブジェクトである壁５２１ｂの表面に沿ってれ表示することを可能とする。なお、本実施例においても、装置構成は、図１を参照して説明した構成を適用する。
【００７３】
図１０を参照して、本実施例において、ＰＣ１２０のアプリケーション実行部１２１が、メモリ１２２に格納する非表示データの位置情報について説明する。ＰＣ１２０のアプリケーション実行部１２１は、例えばスクロール操作によって画面に表示されなくなった非表示データが生じた場合、その非表示データをメモリ１２２に格納する。図１０の例では、点線枠で示す非表示データ５３０のデータ内容がＰＣ１２０のメモリ１２２に格納される。
【００７４】
さらに、ＰＣ１２０のアプリケーション実行部１２１は、先に説明した実施例と同様、表示部２０１の左上部の点を原点とし、水平方向をｘ軸、縦方向をｙ軸とした表示部２０１に平行な平面を設定する。この座標系をＰＣ表示部対応座標系とする。アプリケーション実行部１２１は、このＰＣ表示部対応座標系における非表示データ５３０の位置を求める。
【００７５】
図１０に示す非表示データ５３０の４隅の座標は、図に示すように、
（ｘ１０，ｙ１０）
（ｘ１１，ｙ１１）
（ｘ１２，ｙ１２）
（ｘ１３，ｙ１３）
この４点の座標となる。
【００７６】
ＰＣ１２０側のメモリ１２２に格納された非表示データとその位置情報は、通信部を介して複合現実感（ＭＲ）生成装置１３０に送信され、複合現実感（ＭＲ）生成装置１３０のメモリ１３３に格納される。
【００７７】
複合現実感（ＭＲ）生成装置１３０の仮想オブジェクト管理モジュール１３２は、このようにしてＰＣ１２０から受信した非表示データの位置情報と、三次元情報解析部１３１から取得したカメラ撮影画像中の実オブジェクトの三次元位置情報を適用して、仮想オブジェクト（非表示データ）の表示位置を決定する。
【００７８】
本実施例では、図９を参照して説明した表示データ５００を生成する。すなわち仮想オブジェクトが実オブジェクトの表面に沿って表示されるように仮想オブジェクトの表示位置を決定する。
【００７９】
図１１に示すフローチャートを参照して、本発明の情報処理装置の処理シーケンスについて説明する。
図１１に示すフローチャートのステップＳ２０１〜Ｓ２０３の処理は、図１に示すＰＣ１２０の処理である。
ステップＳ２０４〜Ｓ２０９の処理は、図１に示す複合現実感（ＭＲ）生成装置１３０の処理である。
【００８０】
まず、ＰＣ１２０のアプリケーション実行部１２１は、ステップＳ２０１において、ＰＣの表示部の領域外にはみ出した非表示データの発生を検出すると、ステップＳ２０２において、非表示データの実体データと、その位置情報をＰＣ１２０のメモリ１２２に格納する。この処理は、図１０を参照して説明した処理である。非表示データの位置情報は、例えば、ＰＣ表示部平面における非表示データの４隅の座標データである。
【００８１】
次に、ステップＳ２０３において、メモリに格納された非表示データと位置情報が、通信部を介して複合現実感（ＭＲ）生成装置１３０に転送される。
【００８２】
ステップＳ２０４以降は、複合現実感（ＭＲ）生成装置１３０の処理として行われる。
まず、ステップＳ２０４において、複合現実感（ＭＲ）生成装置１３０はＰＣ１２０から転送された非表示データとその位置情報を複合現実感（ＭＲ）生成装置１３０側のメモリ１３３に格納する。
【００８３】
次に、ステップＳ２０５において、複合現実感（ＭＲ）生成装置１３０の仮想オブジェクト管理モジュール１３２は、メモリ１３３に格納されたデータ、すなわち、非表示データとその位置情報を取得する。
【００８４】
ステップＳ２０６において、仮想オブジェクト管理モジュール１３２は、メモリ１３３から取得した非表示データの位置情報を三次元情報解析部１３１から取得したカメラ撮影画像に対応するカメラ座標系に変換する処理を行う。
【００８５】
この処理は、先に第１実施例の処理として説明した図６に示すフローチャートのステップＳ１０６の処理と同様の処理である。
すなわち、三次元情報解析部１３１がカメラ撮影画像に含まれるＰＣ１２０の表示部の４隅のマーカー３２１ａ〜３２１ｄの三次元位置情報を取得する。先に図７を参照して説明したように、
マーカー３２１ａ＝（Ｘａ，Ｙａ，Ｚａ）
マーカー３２１ｂ＝（Ｘｂ，Ｙｂ，Ｚｂ）
マーカー３２１ｃ＝（Ｘｃ，Ｙｃ，Ｚｃ）
マーカー３２１ｄ＝（Ｘｄ，Ｙｄ，Ｚｄ）
これらの位置情報を取得する。
【００８６】
仮想オブジェクト管理表示モジュール１３２は、この三次元位置情報に基づいて、カメラ座標系における実オブジェクトであるＰＣの表示部の平面を算出し、その算出した平面上に、ＰＣ１２０から取得した非表示データ５３０を設定するように、座標変換を実行する。カメラ撮影画像にはＰＣ表示部内の用紙位置も含まれ、カメラから取得されたＰＣ表示部内の用紙位置に併せてＰＣ１２０から取得した非表示データ３３０を設定するように座標変換を実行する。
【００８７】
この座標変換では、ＰＣの表示部平面によって形成さるＸＹ平面上に、先にＰＣ１２０から受信した非表示データの４隅の座標が設定されるように座標変換を実行する。ＰＣ表示部対応座標系（ｘ，ｙ，ｚ）における非表示データ３３０の４隅の位置座標は、カメラ座標系（Ｘ，Ｙ，Ｚ）の座標として以下のように変換される。
（ｘ１０，ｙ１０，ｚ１０）→（Ｘ１０，Ｙ１０，Ｚ１０）
（ｘ１１，ｙ１１，ｚ１１）→（Ｘ１１，Ｙ１１，Ｚ１１）
（ｘ１２，ｙ１２，ｚ１２）→（Ｘ１２，Ｙ１２，Ｚ１２）
（ｘ１３，ｙ１３，ｚ１３）→（Ｘ１３，Ｙ１３，Ｚ１３）
なお、本実施例では、先の実施例と異なり、Ｚ方向についても考慮した処理を行う。
【００８８】
仮想オブジェクト管理表示モジュール１３２は、ステップＳ２０７において、ステップＳ２０６の変換処理によって得た仮想オブジェクトの表示位置を示すカメラ座標系の４つの座標によって得られる面が、実オブジェクトの面と交差していないかを判定する。実オブジェクトの面、三次元情報解析部１３１の取得する実オブジェクトの三次元位置情報から取得される。
【００８９】
仮想オブジェクトの表示面が、実オブジェクトの面と交差していない場合は、ステップＳ２０７の判定はＮｏとなる。この場合は、ステップＳ２０９に進み、ステップＳ２０６において算出した変換座標を適用して、仮想オブジェクトを表示する。この処理は、先に説明した第１実施例と同様の処理となり、ＰＣ表示部の平面を拡大した平面上に、仮想オブジェクトを表示する。
【００９０】
一方、ステップＳ２０７において、ステップＳ２０６の変換処理によって得た仮想オブジェクトの表示位置を示すカメラ座標系の４つの座標によって得られる面が、実オブジェクトの面と交差していると判定した場合は、ステップＳ２０８に進む。
【００９１】
すなわち、図９に示すような状態の場合である。この様な場合は、ステップＳ２０８において、仮想オブジェクトの表示位置を示す座標を再変換する処理を行う。すなわちステップＳ２０６において算出した仮想オブジェクトの表示位置を示す４つの座標を再度変換する処理を行う、
【００９２】
この変換処理は、仮想オブジェクトの表示位置を示す４つの座標を、実オブジェクトを形成する面に設定するように変換する処理として行なわれる。この処理について、図１２を参照して説明する。
【００９３】
ステップＳ２０６において、算出した仮想オブジェクトの表示位置である４隅の座標が、図１２に示す点５４１〜５４４である。これらの座標は、図に示すように、以下の座標である。
点５４１＝（Ｘ１０，Ｙ１０，Ｚ１０）
点５４２＝（Ｘ１１，Ｙ１１，Ｚ１１）
点５４３＝（Ｘ１３，Ｙ１３，Ｚ１３）
点５４４＝（Ｘ１２，Ｙ１２，Ｚ１２）
【００９４】
しかしこの４点によって掲載される面は、実オブジェクトである壁５２１の面と交差している。なお、実オブジェクトである壁５２１の形成面は、三次元情報解析部１３１の解析によって得られる。例えば図１２に示す壁の４隅の点を特徴点として検出し、この４つの特徴点によって構成される面を、実オブジェクトである壁５２１の形成面と判定する。
【００９５】
図１２に示す例では、壁５２１ｂの平面は、４隅の座標である以下の４つの座標によって定義される。
（Ｘ３０，Ｙ３０，Ｚ３０）
（Ｘ３１，Ｙ３１，Ｚ３１）
（Ｘ３２，Ｙ３２，Ｚ３２）
（Ｘ３３，Ｙ３３，Ｚ３３）
【００９６】
仮想オブジェクト管理モジュール１３２は、図１２に示す仮想オブジェクトの４点５４１〜５４４を上記の壁５２１ｂの形成面に展開するように、仮想オブジェクトの４点５４１〜５４４の座標を変換する。この結果として、図に示すような変換座標が得られる。
点５４１（Ｘ１０，Ｙ１０，Ｚ１０）→変換後（Ｘ１０ｖ，Ｙ１０ｖ，Ｚ１０ｖ）（＝点５４１）
点５４２（Ｘ１１，Ｙ１１，Ｚ１１）→変換後（Ｘ１１ｖ，Ｙ１１ｖ，Ｚ１１ｖ）（＝点５５２）
点５４３（Ｘ１３，Ｙ１３，Ｚ１３）→変換後（Ｘ１３ｖ，Ｙ１３ｖ，Ｚ１３ｖ）（＝点５５３）
点５４４（Ｘ１２，Ｙ１２，Ｚ１２）→変換後（Ｘ１２ｖ，Ｙ１２ｖ，Ｚ１２ｖ）（＝点５４２）
このように４つの変換座標を算出する。なお、図から理解されるように点５４１と点５４２は、変換前後の座標位置に変化はない。
壁５２１ｂを突き抜けた位置にあった点５４２と点５４３は、壁５２１ｂの平面上の位置に変換する処理が行なわれる。
【００９７】
ステップＳ２０８において、このような座標変換処理の後、ステップＳ２０９に進む。ステップＳ２０９では、仮想オブジェクト管理モジュール１３２は、メモリ１３３から取得した非表示データを仮想オブジェクトとして、ステップＳ２０８において算出した仮想オブジェクトの表示位置に表示する処理を実行する。
【００９８】
この処理によって、例えば図１３に示す表示データ５００が、ユーザ１００の装着したメガネ１４１のディスプレイに表示される。図１３に示す表示データ５００は、実オブジェクトとしてのＰＣ５１１と、仮想オブジェクト５１２が併せて表示される合成画像である。
【００９９】
ユーザ１００は、ＰＣの表示部に表示されたデータとともに、ＰＣの表示部外にはみ出した非表示データについても仮想オブジェクトとして常時確認することが可能となる。
【０１００】
なお、図１１に示すフローチャートを参照して説明した処理は、ユーザがＰＣ１２０を操作し、例えばスクロール処理などによって非表示データの範囲が変更されるたびに行われる。アプリケーション実行部１２１は、非表示データの領域や内容が変更される毎にメモリ１２２の記憶データの更新を実行し、更新データが複合現実感（ＭＲ）生成装置１３０に送信され、複合現実感（ＭＲ）生成装置１３０は更新されたデータに基づいて仮想オブジェクトの表示態様を変更する処理をリアルタイム更新処理として実行する。
【０１０１】
［３．その他の表示装置を利用した処理例］
上述した実施例では、ユーザがＰＣを操作する場合にＰＣの表示画面に表示されなくなったデータを仮想オブジェクトとして観察することを可能とした構成を説明した。
【０１０２】
しかし、本発明を適用した処理、すなわち、仮想オブジェクト表示処理は、ＰＣにおける処理データばかりではなく、様々な表示部を有する装置において利用できる。例えば図１４に示すように携帯電話６００の表示部に表示するデータの、表示領域以外の観察を行う場合にも、上述した仮想オブジェクト表示処理を行う個とで、図１４に示すような表示データ７００をユーザ１００の装着したメガネ１４１のディスプレイに表示することができる。
【０１０３】
表示データ７００にはユーザの所有する実オブジェクトとしての携帯電話画像７０１と、地図データとしての仮想オブジェクト７０２が表示され、ユーザは、携帯電話の表示部の外の部分の広い地図情報を確認することが可能となる。
【０１０４】
本発明の構成によれば、例えば、ＰＣなどの表示部の画面外にスクロールされた情報がそのまま実世界に表示されるので、情報を表示するのにスクロールバーを操作する必要がなく、広い領域のデータを常時確認することが可能となる。また、画面外への仮想オブジェクトの表示は、ユーザ操作を行っている画面に連続して表示されるため、視覚的な違和感を生じることなく、広い領域の情報を常時確認することが可能となる。
【０１０５】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０１０６】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１０７】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０１０８】
以上、説明したように、本発明の一実施例の構成によれば、表示部を持つＰＣや携帯電話などの様々な表示装置において、表示部外の領域にはみ出した非表示データを表示部の表示データに連続する位置に仮想オブジェクトとして表示する構成を実現する。この構成により、ユーザはＰＣなとの限定された表示領域の表示データのみならず、表示部の外に出てしまったデータを常に観察して確認することが可能となり、データ処理効率を高めることができる。
【符号の説明】
【０１０９】
１００  ユーザ
１２０  ＰＣ（パーソンナルコンピュータ）
１２１  アプリケーション実行部
１２２  メモリ
１２３  通信部
１３０  複合現実感（ＭＲ）生成装置
１３１  三次元情報解析部
１３２  仮想オブジェクト管理モジュール
１３３  メモリ
１３４  通信部
１４１  メガネ
１４２  カメラ
１５０  ディスプレイ表示画像
１５１  ＰＣ画像
１５２  ＰＣ表示部
１６１  仮想オブジェクト
２０１  表示部
２０２  用紙
３２１ａ〜３２１ｄ  マーカー
３３０  非表示データ
３５０  原点
４０１  ＰＣ
４０２  仮想ブジェクト
５００  表示データ
５１１  ＰＣ
５１２  仮想オブジェクト
５２１  壁
５３０  非表示データ
６００  携帯電話
７００  表示データ
７０１  携帯電話画像（実オブジェクト）
７０２  仮想オブジェクト
【図６】
2010257123.tif 000003
【図１１】
2010257123.tif 000004
【図１】
2010257123.tif 000005
【図２】
2010257123.tif 000006
【図３】
2010257123.tif 000007
【図４】
2010257123.tif 000008
【図５】
2010257123.tif 000009
【図７】
2010257123.tif 000010
【図８】
2010257123.tif 000011
【図９】
2010257123.tif 000012
【図１０】
2010257123.tif 000013
【図１２】
2010257123.tif 000014
【図１３】
2010257123.tif 000015
【図１４】
2010257123.tif 000016