(57)【特許請求の範囲】
【請求項１】
電子透かしを表す信号が重畳された空間情報を含む光を用いて撮像装置が撮影した撮影画像内の複数の領域それぞれから、前記電子透かしを検出し、
前記電子透かしと、前記撮影画像に写る空間内の位置を示す位置情報とを対応付けて記憶する記憶部を参照して、前記複数の領域それぞれから検出した前記電子透かしに対応する前記空間内の位置を推定し、
推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の位置を特定する、
処理をコンピュータに実行させる画像処理プログラム。
【請求項２】
前記画像処理プログラムは、
特定した前記撮像装置の前記位置に基づいて、前記撮影画像内の所定位置に表示する画像情報を生成し、
前記撮影画像と生成した前記画像情報とを重畳表示する表示情報を生成する、
処理を前記コンピュータにさらに実行させることを特徴とする請求項１記載の画像処理プログラム。
【請求項３】
前記コンピュータは、推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の撮影方向をさらに特定し、前記空間内に表示する物体の画像を、前記撮像装置の前記位置と前記撮影方向とを用いて前記画像情報に変換することを特徴とする請求項２記載の画像処理プログラム。
【請求項４】
前記コンピュータは、前記複数の領域のうち第１領域から検出した前記電子透かしと、前記第１領域に隣接する第２領域から検出した前記電子透かしとを比較した結果に基づいて、前記第１領域と前記第２領域との間に境界を設定し、設定した前記境界に基づいて前記空間内の面を推定し、前記空間内の前記面を前記空間内の前記位置として用いることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理プログラム。
【請求項５】
電子透かしと、前記撮影画像に写る空間内の位置を示す位置情報とを対応付けて記憶する記憶部と、
前記電子透かしを表す信号が重畳された空間情報を含む光を用いて撮像装置が撮影した撮影画像内の複数の領域それぞれから、前記電子透かしを検出する検出部と、
前記記憶部を参照して、前記検出部が前記複数の領域それぞれから検出した前記電子透かしに対応する前記空間内の位置を推定し、推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の位置を特定する特定部と、
を備えることを特徴とする画像処理装置。
【請求項６】
情報埋め込み装置と画像処理装置とを備える画像処理システムであって、
前記情報埋め込み装置は、
電子透かしと、空間内の位置を示す位置情報とを対応付けて記憶する第１記憶部と、
前記第１記憶部を参照して、前記空間を表す空間情報に、前記電子透かしを表す信号を重畳する埋め込み部とを含み、
前記画像処理装置は、
前記電子透かしと前記位置情報とを対応付けて記憶する第２記憶部と、
前記信号が重畳された前記空間情報を含む光を用いて撮像装置が撮影した撮影画像内の複数の領域それぞれから、前記信号が表す前記電子透かしを検出する検出部と、
前記第２記憶部を参照して、前記検出部が前記複数の領域それぞれから検出した前記電子透かしに対応する前記空間内の位置を推定し、推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の位置を特定する特定部とを含むことを特徴とする画像処理システム。
【請求項７】
前記光は、前記空間情報を含む映像であり、前記情報埋め込み装置は、前記信号が重畳された前記映像を被投影領域に対して投影する投影装置をさらに含み、前記撮像装置は、前記投影装置が前記被投影領域に対して投影した前記映像を撮影し、前記撮影画像は、前記撮像装置が撮影した前記映像に含まれることを特徴とする請求項６記載の画像処理システム。
【請求項８】
前記情報埋め込み装置は、前記光を出力する発光装置をさらに含み、前記撮像装置は、前記発光装置が出力した前記光を撮影することを特徴とする請求項６記載の画像処理システム。
【請求項９】
コンピュータが、
電子透かしを表す信号が重畳された空間情報を含む光を用いて撮像装置が撮影した撮影画像内の複数の領域それぞれから、前記電子透かしを検出し、
前記電子透かしと、前記撮影画像に写る空間内の位置を示す位置情報とを対応付けて記憶する記憶部を参照して、前記複数の領域それぞれから検出した前記電子透かしに対応する前記空間内の位置を推定し、
推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の位置を特定する、
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理プログラム、画像処理装置、画像処理システム、及び画像処理方法に関する。
【背景技術】
【０００２】
近年、拡張現実（Augmented Reality, ＡＲ）技術を用いた演出を行う試みが多くなされている。例えば、立体物の立体構造を考慮して、プロジェクタによって立体物に映像コンテンツを投影する、プロジェクションマッピングが知られている（例えば、特許文献１を参照）。このようなプロジェクションマッピングにおいて、ユーザがスマートデバイスに搭載されたカメラで映像コンテンツを撮影したとき、撮影された映像中にＡＲコンテンツが重畳表示されれば、投影された映像コンテンツがより印象的になると考えられる。
【０００３】
可視光の光信号を追加した画像を被投射物に投射し、反射光を用いて被投射物の位置情報を算出する技術も知られている（例えば、特許文献２を参照）。時系列に沿ってシンボルの値に応じて変化する信号を動画像データ又は照明光に重畳する技術も知られている（例えば、特許文献３及び特許文献４を参照）。ＡＲコンテンツを表示するために画像から平面を検出する技術、及び画像からカメラの位置及び向きを推定する技術も知られている（例えば、非特許文献１〜非特許文献７を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−４５７５１号公報
【特許文献２】国際公開第２０１３／１１１３７５号パンフレット
【特許文献３】特開２０１２−１４２７４１号公報
【特許文献４】国際公開第２０１６／００１９７２号パンフレット
【非特許文献】
【０００５】
【非特許文献１】G. Klein et al., “Parallel Tracking and Mapping for Small AR Workspaces”, ISMAR, 2007
【非特許文献２】V. Lepetit et al., “EPnP: An Accurate O(n) Solution to the PnP Problem”, International Journal of Computer Vision, Vol.81, Issue 2, pp.155-166, 2008
【非特許文献３】M. Bujnak et al., “A general solution to the P4P problem for camera with unknown focal length”, In Proc. CVPR 2008, pp.1-8, 2008.
【非特許文献４】T. Drummond et al., “Real-Time Visual Tracking of Complex Structures”, PAMI, Vol. 24, No. 7, pp.932-946, 2002.
【非特許文献５】Luca Vacchetti et al., “Combining Edge and Texture Information for Real-Time Accurate 3D Camera Tracking”, ISMAR, 2004
【非特許文献６】“第７章  座標変換”、［online］、［平成２８年２月１２日検索］、インターネット＜ＵＲＬ：http://www.wakayama-u.ac.jp/~tokoi/lecture/gg/ggbook03.pdf＞
【非特許文献７】“SSII2015  チュートリアル  特徴点追跡による動画像からの逐次三次元復元とその応用−座標系の基礎から応用事例・最新研究動向まで−”、［online］、［平成２８年２月２４日検索］、インターネット＜ＵＲＬ：http://yokoya.naist.jp/paper/datas/1407/SSII%E3%83%81%E3%83%A5%E3%83%BC%E3%83%88%E3%83%AA%E3%82%A2%E3%83%AB%E4%BD%90%E8%97%A4.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来のプロジェクションマッピングでは、ＡＲコンテンツを重畳表示するために、立体物に対して投影された映像を撮影した映像から、その立体物の立体構造を高精度に特定することは困難である。
【０００７】
なお、かかる問題は、立体物に対して投影された映像から立体構造を特定する場合に限らず、３次元空間の情報を含む映像を撮影した映像から、その３次元空間内の位置を特定する場合においても生ずるものである。
【０００８】
また、かかる問題は、プロジェクションマッピングの映像を撮影する場合に限らず、イルミネーションのように、発光装置が出力する光を撮影する場合においても生ずるものである。
【０００９】
１つの側面において、本発明は、撮像装置によって撮影した空間情報を含む画像から、空間内における撮像装置の位置を高精度に特定することを目的とする。
【課題を解決するための手段】
【００１０】
１つの案では、画像処理プログラムは、以下の処理をコンピュータに実行させる。
（１）コンピュータは、撮像装置が撮影した撮影画像内の複数の領域それぞれから、撮影画像に埋め込まれた埋め込み情報を検出する。
（２）コンピュータは、埋め込み情報と、撮影画像に写る空間内の位置を示す位置情報とを対応付けて記憶する記憶部を参照して、複数の領域それぞれから検出した埋め込み情報に対応する空間内の位置を推定する。
（３）コンピュータは、推定した空間内の位置に基づいて、空間内の撮像装置の位置を特定する。
【発明の効果】
【００１１】
実施形態によれば、撮像装置によって撮影した空間情報を含む画像から、空間内における撮像装置の位置を高精度に特定することができる。
【図面の簡単な説明】
【００１２】
【図１】ＡＲコンテンツを重畳した映像を示す図である。
【図２】画像処理装置の機能的構成図である。
【図３】画像処理のフローチャートである。
【図４】画像処理システムの構成図である。
【図５】３次元空間が写った画像を示す図である。
【図６】複数の面が写っている領域を示す図である。
【図７】領域推定処理を示す図である。
【図８】映像投影処理のフローチャートである。
【図９】画像処理の具体例を示すフローチャートである。
【図１０】領域推定処理のフローチャートである。
【図１１】境界点設定処理のフローチャートである。
【図１２】境界点を示す図である。
【図１３Ａ】直線フィッティング処理のフローチャート（その１）である。
【図１３Ｂ】直線フィッティング処理のフローチャート（その２）である。
【図１３Ｃ】直線フィッティング処理のフローチャート（その３）である。
【図１４】直線フィッティング処理を示す図である。
【図１５】選択対象の境界点を示す図である。
【図１６】撮像装置の位置及び撮影方向を示す図である。
【図１７】領域ＩＤが埋め込まれた画像を示す図である。
【図１８】制御装置及び投影装置を一体化した情報埋め込み装置の構成図である。
【図１９】撮像装置を含まない画像処理装置の構成図である。
【図２０】発光装置を示す図である。
【図２１】発光装置を含む情報埋め込み装置の構成図である。
【図２２】発光処理のフローチャートである。
【図２３】信号パターンを用いる情報埋め込み装置の構成図である。
【図２４】信号パターンを用いる発光処理のフローチャートである。
【図２５】時間制御情報を用いる情報埋め込み装置の構成図である。
【図２６】時間制御情報を用いる発光処理のフローチャートである。
【図２７】情報処理装置の構成図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら、実施形態を詳細に説明する。
図１は、プロジェクションマッピングにおいてＡＲコンテンツを重畳した映像の例を示している。映像１０２が投影される立体物が部屋である場合、プロジェクタ１０１は、部屋の天井、壁、及び床に対して映像１０２を投影し、ユーザは、スマートデバイスに搭載されたカメラで映像１０２を撮影する。そして、スマートデバイスは、撮影した映像１０２にＡＲコンテンツのオブジェクト１１１〜オブジェクト１１３を重畳した映像１０３を、画面上に表示する。
【００１４】
この場合、オブジェクト１１１〜オブジェクト１１３が空間的に同期していることが好ましい。具体的には、天井の領域に表示されるオブジェクト１１１は、天井からぶら下がっているように表示し、壁の領域に表示されるオブジェクト１１２は、壁に張り付いているように表示することが好ましい。また、床の領域に表示されるオブジェクト１１３は、床を這っているように表示することが好ましい。
【００１５】
なお、天井、壁、及び床を有する部屋は実在していなくてもよく、投影される映像１０２に含まれるコンテンツであってもよい。
【００１６】
このようなＡＲコンテンツの重畳表示によって、映像をユーザ毎に演出する利用形態としては、例えば、以下のようなものが考えられる。
（ａ）スマートデバイスを魔法のレンズ、カメラ等に見立て、スマートデバイスを通して映像を見た場合にのみ、特定のオブジェクトが表示される。特定のオブジェクトは、昆虫又は動物であってもよく、妖精又は妖怪であってもよい。
（ｂ）ＡＲコンテンツをゲームコンテンツ等と連動させ、ゲームのデータに応じて表示するオブジェクトを変更する。
（ｃ）ＡＲコンテンツが、ユーザの保有するキャラクタ又はアバタとして表示される。
（ｄ）ＡＲコンテンツとして表示されたエージェントが、ユーザの現在位置に応じて道案内を行う。
（ｅ）映像中の各領域に、天井、壁、又は床のような位置情報を示すＡＲコンテンツを表示する。
【００１７】
ＡＲコンテンツを空間的に同期させるために、立体物上に可視マーカを配置することも可能であるが、投影された映像に可視マーカが映ると、映像コンテンツの美観を損ねるという問題がある。
【００１８】
特許文献２の技術では、可視光の光信号を追加した画像が被投射物に投射され、反射光が光学カラーフィルタを透過することで光信号が取得され、取得された光信号を用いて被投射物の位置情報が算出される。しかしながら、この技術では、光学カラーフィルタによって、可視光の光信号以外の波長の光が遮断されてしまうため、投影された映像が正しく撮影されない。このため、特許文献２の技術は、撮影した映像にＡＲコンテンツを重畳表示する用途には適していない。
【００１９】
また、非特許文献１の技術では、撮影された画像から抽出した特徴点の３次元マップを生成することで、ＡＲコンテンツを表示するための平面が検出される。しかしながら、画像に写っている物体の幾何学特性によって検出精度が変化するため、プロジェクションマッピングのような任意の映像コンテンツに対して、この技術を適用することは困難である。
【００２０】
図２は、実施形態の画像処理装置の機能的構成例を示している。図２の画像処理装置２０１は、記憶部２１１、検出部２１２、及び特定部２１３を含む。
【００２１】
記憶部２１１は、撮像装置が撮影した撮影画像に埋め込まれた埋め込み情報と、その撮影画像に写る空間内の位置を示す位置情報とを対応付けて記憶する。検出部２１２は、撮影画像から埋め込み情報を検出し、特定部２１３は、記憶部２１１を参照して、埋め込み情報に基づき空間内の撮像装置の位置を特定する。
【００２２】
図３は、図２の画像処理装置２０１が行う画像処理の例を示すフローチャートである。まず、検出部２１２は、撮影画像内の複数の領域それぞれから埋め込み情報を検出する（ステップ３０１）。
【００２３】
次に、特定部２１３は、記憶部２１１を参照して、検出部２１２が複数の領域それぞれから検出した埋め込み情報に対応する空間内の位置を推定し（ステップ３０２）、推定した空間内の位置に基づいて、空間内の撮像装置の位置を特定する（ステップ３０３）。
【００２４】
このような画像処理装置２０１によれば、撮像装置によって撮影した空間情報を含む画像から、空間内における撮像装置の位置を高精度に特定することができる。
【００２５】
画像処理装置２０１は、画像を撮影するためのカメラを含むスマートデバイス、携帯電話機等の携帯端末であってもよく、サーバのような情報処理装置であってもよい。
【００２６】
図４は、図２の画像処理装置２０１を含む画像処理システムの構成例を示している。図４の画像処理システムは、画像処理装置２０１及び情報埋め込み装置４０１を含む。
【００２７】
情報埋め込み装置４０１は、制御装置４１１及び投影装置４１２を含む。制御装置４１１は、例えば、情報処理装置であり、埋め込み部４１３及び記憶部４１４を含む。記憶部４１４は、立体構造情報４２１と、空間を表す空間情報を含む映像４２２とを記憶する。映像４２２は、複数時刻それぞれにおける複数の画像を含む。立体構造情報４２１は、映像４２２中の各画像に埋め込まれる埋め込み情報と、各画像に写る空間内の面を示す位置情報とを対応付ける情報である。位置情報は、空間を表す３次元モデルに含まれる各面の座標であってもよい。
【００２８】
埋め込み部４１３は、立体構造情報４２１を参照して、各画像内の各面に対応する領域に、対応する埋め込み情報を表す信号を重畳することで、各画像に埋め込み情報を埋め込む。そして、埋め込み部４１３は、埋め込み情報を埋め込んだ映像４２２を投影装置４１２へ出力する。投影装置４１２は、例えば、プロジェクタであり、埋め込み部４１３が出力する映像４２２を表す光を、被投影領域に対して投影する。
【００２９】
埋め込み情報としては、例えば、特許文献１の電子透かしを用いることができる。この場合、埋め込み部４１３は、映像４２２中の各画像に重畳される透かしパターンの面積を、時系列に沿って、電子透かしに含まれるシンボルの値に応じて周期的に変化させる。そして、埋め込み部４１３は、各画像とその画像に対応する透かしパターンとが重なる領域に含まれる各画素の値を、透かしパターンに含まれる画素が持つ所定の値に応じて修正する。これにより、映像４２２の画質が劣化しないように電子透かしを映像４２２に埋め込むことができる。
【００３０】
画像処理装置２０１は、記憶部２１１、検出部２１２、特定部２１３、撮像装置４３１、生成部４３２、及び表示部４３３を含む。特定部２１３は、領域推定部４４１及び位置特定部４４２を含み、記憶部２１１は、立体構造情報４５１を記憶する。立体構造情報４５１は、立体構造情報４２１と同様の情報である。
【００３１】
撮像装置４３１は、例えば、受光素子を含むカメラであり、被投影領域に投影された映像４２２を撮影して映像４５２を生成し、生成した映像４５２を記憶部２１１に格納する。検出部２１２は、映像４５２中の各画像から埋め込み情報を検出する。例えば、特許文献１の電子透かしを用いた場合、検出部２１２は、各領域から時系列に変化する信号を抽出することで、埋め込み情報を検出することができる。
【００３２】
領域推定部４４１は、検出部２１２が検出した埋め込み情報から、各画像内の各面に対応する領域を推定する。位置特定部４４２は、立体構造情報４５１を参照して、画像内における各面に対応する領域と、空間内における各面の位置とを対応付けることで、空間内における撮像装置４３１の位置及び撮影方向を特定する。
【００３３】
生成部４３２は、位置特定部４４２が特定した撮像装置４３１の位置及び撮影方向に基づいて、各画像内の所定位置に表示するオブジェクトの画像情報を生成し、複数時刻の画像情報をオブジェクト映像４５３として記憶部２１１に格納する。そして、生成部４３２は、映像４５２とオブジェクト映像４５３とを重畳表示する表示情報として、ＡＲ映像４５４を生成し、生成したＡＲ映像４５４を記憶部２１１に格納する。表示部４３３は、ＡＲ映像４５４を画面上に表示する。
【００３４】
図５は、立体構造情報４２１及び立体構造情報４５１が表す３次元空間が写った画像の例を示している。図５（ａ）の画像には、天井、壁Ａ１、壁Ａ２、壁Ｂ１、壁Ｂ２、及び床を表す面が含まれており、図５（ｂ）の画像には、それらの面が、図５（ａ）とは異なる位置に、図５（ａ）とは異なる大きさで含まれている。
【００３５】
この場合、埋め込み部４１３は、映像４２２中の各画像の各面に対応する領域に、各面に対応する埋め込み情報を埋め込む。埋め込み情報としては、例えば、各面の識別情報（面ＩＤ）を用いることができる。検出部２１２は、映像４５２中の各画像を複数の領域に分割して、領域毎に埋め込み情報を検出し、領域推定部４４１は、各領域から検出された埋め込み情報から、各面に対応する領域を推定する。
【００３６】
これにより、３次元空間内の各面が写っている領域に、その面に適したオブジェクトを重畳表示し、ＡＲコンテンツを空間的に同期させることが可能になる。例えば、天井の領域に床を這っている昆虫を重畳表示することがなくなり、ＡＲコンテンツが効果的に表示される。
【００３７】
図６は、複数の面が写っている領域の例を示している。この例では、分割された１つの領域内において、部分領域６０１に天井が写っており、部分領域６０２に壁Ａ２が写っており、部分領域６０３に壁Ｂ１が写っている。例えば、埋め込み情報の信号強度が面積に比例する場合、領域全体の埋め込み情報として、最も面積の大きい天井の面ＩＤが検出される。
【００３８】
図７は、領域推定処理の例を示している。図５（ｂ）に示した画像を複数のメッシュ領域に分割して、各メッシュ領域から埋め込み情報を検出することで、面ＩＤマップ７０１が生成される。この面ＩＤマップ７０１は、各メッシュ領域から検出された埋め込み情報が表す面ＩＤを含む。この場合、領域推定部４４１は、面ＩＤマップ７０１内で同じ面ＩＤを有するメッシュ領域同士を統合することで、各面を表す領域を生成する。
【００３９】
領域推定部４４１は、面ＩＤマップ７０２に示すように、各面を表す領域の端点を直線で結ぶことで、領域間の境界を補正してもよい。これにより、面を表す領域間の境界を直線で表現することができる。
【００４０】
位置特定部４４２は、面ＩＤマップ７０１又は面ＩＤマップ７０２における各面を表す領域を、立体構造情報４５１が表す位置情報と対応付けることで、３次元空間内における撮像装置４３１の位置及び撮影方向を特定する。撮影方向は、３次元空間を正面から撮影する方向、斜め向きに撮影する方向のように、３次元空間内における撮像装置４３１の姿勢を表す。
【００４１】
これにより、３次元空間内の各面が写っている領域に、撮像装置４３１の位置及び撮影方向に適したオブジェクトを重畳表示することが可能になる。例えば、壁Ｂ２に張り付いている昆虫を、撮像装置４３１から見た角度で重畳表示することができ、ＡＲコンテンツがさらに効果的に表示される。
【００４２】
図８は、図４の情報埋め込み装置４０１が行う映像投影処理の例を示すフローチャートである。立体構造情報４２１には、３次元モデルに含まれる各面の位置情報と、各面の面ＩＤとの対応関係が含まれる。
【００４３】
まず、埋め込み部４１３は、立体構造情報４２１を参照して、映像４２２中の各画像内の各面に対応する領域毎に、その面の面ＩＤを表す埋め込み情報を埋め込む（ステップ８０１）。そして、投影装置４１２は、埋め込み情報が埋め込まれた映像４２２を被投影領域に対して投影する（ステップ８０２）。
【００４４】
図９は、図４の画像処理装置２０１が行う画像処理の具体例を示すフローチャートである。立体構造情報４５１には、立体構造情報４２１と同様に、３次元モデルに含まれる各面の位置情報と、各面の面ＩＤとの対応関係が含まれる。
【００４５】
まず、撮像装置４３１は、被投影領域に投影された映像４２２を撮影して映像４５２を生成する（ステップ９０１）。検出部２１２は、映像４５２中の各画像を複数のメッシュ領域に分割し（ステップ９０２）、メッシュ領域毎に埋め込み情報を検出して、面ＩＤマップを生成する（ステップ９０３）。
【００４６】
次に、領域推定部４４１は、面ＩＤマップを用いて、画像内における各面を表す領域を推定する（ステップ９０４）。位置特定部４４２は、立体構造情報４５１を参照して、画像内における各面を表す領域の位置と、３次モデルが表す３次元空間内における各面の位置とを対応付ける（ステップ９０５）。そして、位置特定部４４２は、３次元空間内における各面の位置を用いて、３次元空間内における撮像装置４３１の位置及び撮影方向を特定する（ステップ９０６）。
【００４７】
次に、生成部４３２は、撮像装置４３１の位置及び撮影方向に基づいて、オブジェクト映像４５３を生成し（ステップ９０７）、映像４５２とオブジェクト映像４５３とを重畳して、ＡＲ映像４５４を生成する（ステップ９０８）。そして、表示部４３３は、ＡＲ映像４５４を画面上に表示する（ステップ９０９）。
【００４８】
図１０は、図９のステップ９０４における領域推定処理の例を示すフローチャートである。領域推定部４４１は、検出部２１２が生成した面ＩＤマップのメッシュ領域間に境界点を設定し（ステップ１００１）、境界点に対する直線フィッティングを行う（ステップ１００２）。
【００４９】
図１１は、図１０のステップ１００１における境界点設定処理の例を示すフローチャートである。まず、領域推定部４４１は、面ＩＤマップ内の１つのメッシュ領域を、処理対象のメッシュ領域として選択し（ステップ１１０１）、処理対象のメッシュ領域に隣接する１つのメッシュ領域を、比較対象のメッシュ領域として選択する（ステップ１１０２）。このとき、処理対象のメッシュ領域に隣接するメッシュ領域のうち、未だ処理対象のメッシュ領域と比較されていないメッシュ領域が、比較対象のメッシュ領域として選択される。
【００５０】
次に、領域推定部４４１は、処理対象のメッシュ領域の面ＩＤと、比較対象のメッシュ領域の面ＩＤとを比較する（ステップ１１０３）。２つの面ＩＤが異なっている場合（ステップ１１０３，ＹＥＳ）、領域推定部４４１は、処理対象のメッシュ領域と、比較対象のメッシュ領域との間の境界線上に存在する頂点を、境界点に決定する（ステップ１１０４）。そして、領域推定部４４１は、その境界点が接するメッシュ領域の面ＩＤを、記憶部２１１に記録する。
【００５１】
次に、領域推定部４４１は、処理対象のメッシュ領域に隣接するすべてのメッシュ領域を選択したか否かをチェックし（ステップ１１０５）、未選択のメッシュ領域が残っている場合（ステップ１１０５，ＮＯ）、次のメッシュ領域についてステップ１１０２以降の処理を繰り返す。
【００５２】
処理対象のメッシュ領域に隣接するすべてのメッシュ領域を選択した場合（ステップ１１０５，ＹＥＳ）、領域推定部４４１は、面ＩＤマップ内のすべてのメッシュ領域を処理対象のメッシュ領域として選択したか否かをチェックする（ステップ１１０６）。未選択のメッシュ領域が残っている場合（ステップ１１０６，ＮＯ）、領域推定部４４１は、次のメッシュ領域についてステップ１１０１以降の処理を繰り返す。そして、面ＩＤマップ内のすべてのメッシュ領域を選択した場合（ステップ１１０６，ＹＥＳ）、領域推定部４４１は、処理を終了する。
【００５３】
２つの面ＩＤが同じである場合（ステップ１１０３，ＮＯ）、領域推定部４４１は、ステップ１１０６以降の処理を行う。
【００５４】
なお、処理対象のメッシュ領域が面ＩＤマップの外枠に接している場合は、そのメッシュ領域の外枠上の頂点は、領域と外枠との境界点として扱われ、そのメッシュ領域の面ＩＤ及び外枠を示すＩＤが記録される。また、隣接するメッシュ領域が面ＩＤを有していない場合も、領域と外枠との境界点として扱われる。
【００５５】
図１２は、面ＩＤマップ内に設定された境界点の例を示している。図１２の面ＩＤマップ１２０１は、図５（ａ）に示した画像に対応し、６４個のメッシュ領域を含む。領域１２１１〜領域１２１６は、それぞれ、天井、壁Ａ１、壁Ａ２、壁Ｂ１、壁Ｂ２、及び床を表す。
【００５６】
例えば、領域１２１１に含まれる１６個のメッシュ領域の頂点には、２２個の境界点が設定されている。このうち、境界点１２２１は、天井を表す領域１２１１、壁Ａ１を表す領域１２１２、及び壁Ａ２を表す領域１２１３の３つの領域と接している。したがって、境界点１２２１に接する面の面ＩＤとして、天井のＩＤ、壁Ａ１のＩＤ、及び壁Ａ２のＩＤが記録される。
【００５７】
一方、境界点１２２２は、天井を表す領域１２１１及び壁Ａ１を表す領域１２１２と接している。したがって、境界点１２２２に接する面の面ＩＤとして、天井のＩＤ及び壁Ａ１のＩＤが記録される。また、境界点１２２３は、天井を表す領域１２１１及び外枠と接している。したがって、境界点１２２２に接する面の面ＩＤとして、天井のＩＤ及び外枠を示すＩＤが記録される。
【００５８】
図１３Ａ〜図１３Ｃは、図１０のステップ１００２における直線フィッティング処理の例を示すフローチャートである。まず、領域推定部４４１は、面ＩＤマップ内の１つの面ＩＤに対応する領域を選択し（ステップ１３０１）、選択した領域に外枠と接する境界点が存在するか否かをチェックする（ステップ１３０２）。
【００５９】
外枠と接する境界点が存在する場合（ステップ１３０２，ＹＥＳ）、領域推定部４４１は、外枠と接する１つの境界点を選択する（ステップ１３０３）。次に、領域推定部４４１は、外枠と接する境界点の中から、選択した境界点に隣接する１つの境界点を選択する（ステップ１３０４）。ステップ１３０４において、隣接する境界点は、選択した境界点と同じメッシュ領域に含まれる境界点のうち、選択した境界点に対して対角位置以外に位置する境界点を表す。そして、領域推定部４４１は、選択した２つの境界点を直線で結ぶ（ステップ１３０５）。
【００６０】
次に、領域推定部４４１は、外枠と接するすべての境界点が直線で結ばれたか否かをチェックする（ステップ１３０６）。未だ直線で結ばれていない境界点が残っている場合（ステップ１３０６，ＮＯ）、領域推定部４４１は、外枠と接する次の境界点についてステップ１３０３以降の処理を繰り返す。
【００６１】
外枠と接するすべての境界点が直線で結ばれた場合（ステップ１３０６，ＹＥＳ）、領域推定部４４１は、選択した領域を囲むＮ角形（Ｎは３以上の整数）が形成されたかをチェックする（ステップ１３０７）。
【００６２】
Ｎ角形が形成された場合（ステップ１３０７，ＹＥＳ）、領域推定部４４１は、面ＩＤマップ内のすべての面ＩＤに対応する領域を選択したかをチェックする（ステップ１３０８）。未選択の領域が残っている場合（ステップ１３０８，ＮＯ）、領域推定部４４１は、次の領域についてステップ１３０１以降の処理を繰り返す。
【００６３】
Ｎ角形が形成されない場合（ステップ１３０７，ＮＯ）、領域推定部４４１は、外枠と接する境界点を結ぶ直線の１つの端点を選択する（ステップ１３１０）。端点は、他の１つの境界点のみと直線で結ばれた境界点を意味する。したがって、他の２つの境界点と直線で結ばれた境界点は、端点ではない。
【００６４】
図１４は、図１２に示した面ＩＤマップ１２０１の領域１２１１に対する直線フィッティング処理の例を示している。領域１２１１において、外枠と接する１１個の境界点を直線で結ぶことで、外枠上の折れ線１４１１が生成される。折れ線１４１１は、端点１４０１及び端点１４０２を有する。この時点では、端点１４０１と端点１４０２とを結ぶ直線１４１２〜直線１４１５が未だ生成されていないため、Ｎ角形は形成されない。そこで、例えば、端点１４０１が選択される。
【００６５】
次に、領域推定部４４１は、選択した領域に、３つの面を表す３つの他の領域と接する境界点が存在するか否かをチェックする（ステップ１３１１）。以下では、簡単のため、３つの面を表す３つの他の領域と接する境界点を、３つの面と接する境界点と記すことがある。ただし、３つの面に外枠は含まれない。
【００６６】
３つの面と接する境界点が存在する場合（ステップ１３１１，ＹＥＳ）、領域推定部４４１は、３つの面と接する境界点の中から、選択した端点に最も近い境界点を選択する（ステップ１３１２）。そして、領域推定部４４１は、選択した端点と境界点とを直線で結ぶ（ステップ１３１３）。
【００６７】
図１４の領域１２１１において、３つの面と接する境界点は、境界点１４０３〜境界点１４０５の３個である。境界点１４０３は、図１２の境界点１２２１に対応し、天井を表す領域１２１１、壁Ａ１を表す領域１２１２、及び壁Ａ２を表す領域１２１３に接している。境界点１４０４は、天井を表す領域１２１１、壁Ｂ１を表す領域１２１４、及び壁Ｂ２を表す領域１２１５に接しており、境界点１４０５は、天井を表す領域１２１１、壁Ａ２を表す領域１２１３、及び壁Ｂ１を表す領域１２１４に接している。
【００６８】
折れ線１４１１の端点１４０１が選択された場合、境界点１４０３〜境界点１４０５のうち、端点１４０１に最も近いものは境界点１４０３である。そこで、端点１４０１と境界点１４０３とを結ぶ直線１４１２が生成される。図１４では、折れ線１４１１と区別するため、直線１４１２が一点鎖線で示されている。
【００６９】
一方、３つの面と接する境界点が存在しない場合（ステップ１３１１，ＮＯ）、領域推定部４４１は、外枠と接する境界点を結ぶ直線の端点の中から、選択した端点から最も遠い端点を選択する（ステップ１３１６）。そして、領域推定部４４１は、選択した２つの端点を直線で結ぶ（ステップ１３１３）。
【００７０】
次に、領域推定部４４１は、外枠と接する境界点を結ぶ直線のすべての端点が、直線で結ばれたか否かをチェックする（ステップ１３１４）。未だ直線で結ばれていない端点が残っている場合（ステップ１３１４，ＮＯ）、領域推定部４４１は、次の端点についてステップ１３１０以降の処理を繰り返す。
【００７１】
これにより、折れ線１４１１の端点１４０２が選択され、端点１４０２と、端点１４０２に最も近い境界点１４０４とを結ぶ直線１４１３が生成される。図１４では、折れ線１４１１と区別するため、直線１４１３が一点鎖線で示されている。
【００７２】
すべての端点が直線で結ばれた場合（ステップ１３１４，ＹＥＳ）、領域推定部４４１は、選択した領域を囲むＮ角形が形成されたかをチェックする（ステップ１３１５）。Ｎ角形が形成された場合（ステップ１３１５，ＹＥＳ）、領域推定部４４１は、ステップ１３０８以降の処理を行う。
【００７３】
Ｎ角形が形成されない場合（ステップ１３１５，ＮＯ）、領域推定部４４１は、これまでに生成された直線のうち、端点を有するものを処理対象として、処理対象の直線の１つの端点を選択する（ステップ１３１７）。そして、領域推定部４４１は、３つの面と接する未選択の境界点が存在するか否かをチェックする（ステップ１３１８）。
【００７４】
この時点では、直線１４１２の端点１４０３と直線１４１３の端点１４０４とを結ぶ直線１４１４及び直線１４１５が未だ生成されていないため、Ｎ角形は形成されない。そこで、直線１４１２及び直線１４１３が処理対象の直線となり、例えば、端点１４０３が選択される。
【００７５】
３つの面と接する未選択の境界点が存在する場合（ステップ１３１８，ＹＥＳ）、領域推定部４４１は、３つの面と接する未選択の境界点の中から、選択した端点に隣接する境界点を選択する（ステップ１３１９）。ステップ１３１９において、隣接する境界点は、選択した領域以外に、選択した端点と共通に接する領域を有する境界点を表す。そして、領域推定部４４１は、選択した端点と境界点とを直線で結ぶ（ステップ１３２０）。
【００７６】
端点１４０３が選択された場合、３つの面と接する未選択の境界点は境界点１４０５のみである。そして、端点１４０３及び境界点１４０５は、領域１２１１だけでなく、領域１２１３とも共通に接している。そこで、端点１４０３と境界点１４０５とを結ぶ直線１４１４が生成される。図１４では、折れ線１４１１と区別するため、直線１４１４が破線で示されている。
【００７７】
一方、３つの面と接する未選択の境界点が存在しない場合（ステップ１３１８，ＮＯ）、領域推定部４４１は、ステップ１３１７の境界点を結ぶ直線の端点の中から、選択した端点から最も遠い端点を選択する（ステップ１３２３）。そして、領域推定部４４１は、選択した２つの端点を直線で結ぶ（ステップ１３２０）。
【００７８】
次に、領域推定部４４１は、処理対象の直線のすべての端点が、直線で結ばれたか否かをチェックする（ステップ１３２１）。未だ直線で結ばれていない端点が残っている場合（ステップ１３２１，ＮＯ）、領域推定部４４１は、次の端点についてステップ１３１７以降の処理を繰り返す。
【００７９】
直線１４１４が生成されると、直線１４１３及び直線１４１４が処理対象の直線となり、例えば、直線１４１３の端点１４０４が選択される。この場合、３つの面と接する未選択の境界点は残っておらず、処理対象の直線の端点としては、直線１４１４の端点１４０５のみが存在する。そこで、端点１４０４と端点１４０５とを結ぶ直線１４１５が生成される。図１４では、折れ線１４１１と区別するため、直線１４１５が破線で示されている。
【００８０】
処理対象の直線のすべての端点が直線で結ばれた場合（ステップ１３２１，ＹＥＳ）、領域推定部４４１は、選択した領域を囲むＮ角形が形成されたかをチェックする（ステップ１３２２）。Ｎ角形が形成されない場合（ステップ１３２２，ＮＯ）、領域推定部４４１は、次の端点についてステップ１３１７以降の処理を繰り返す。Ｎ角形が形成された場合（ステップ１３２２，ＹＥＳ）、領域推定部４４１は、ステップ１３０８以降の処理を行う。
【００８１】
直線１４１５が生成された時点で、折れ線１４１１及び直線１４１２〜直線１４１５で囲まれた５角形が形成されるため、次の領域１２１２が選択されて、領域１２１２に対する直線フィッティング処理が行われる。
【００８２】
外枠と接する境界点が存在しない場合（ステップ１３０２，ＮＯ）、領域推定部４４１は、３つの面と接する１つの境界点を選択する（ステップ１３０９）。次に、領域推定部４４１は、３つの面と接する未選択の境界点の中から、選択した境界点に隣接する境界点を選択して（ステップ１３１９）、ステップ１３２０以降の処理を行う。
【００８３】
例えば、領域１２１３に対する直線フィッティング処理において、境界点１４０３が選択され、境界点１４０５〜境界点１４０７が未選択である場合、境界点１４０３及び境界点１４０５は、領域１２１３だけでなく、領域１２１１とも共通に接している。また、境界点１４０３及び境界点１４０７は、領域１２１３だけでなく、領域１２１２とも共通に接している。しかし、境界点１４０６は、領域１２１３以外に、境界点１４０３と共通に接する領域を有していない。この場合、境界点１４０５又は境界点１４０７のいずれかと境界点１４０３とを結ぶ直線が生成される。
【００８４】
すべての面ＩＤに対応する領域を選択した場合（ステップ１３０８，ＹＥＳ）、領域推定部４４１は、処理を終了する。ステップ１３０７、ステップ１３１５、及びステップ１３２２におけるＮの下限値は３に限られることはなく、３次元モデルの立体構造に応じて設定することができる。
【００８５】
図１０の領域推定処理によれば、面ＩＤマップに境界点を設定して、境界点同士を直線で結ぶことで、メッシュ領域間の階段状の境界線が直線で近似されるため、画像内において各面に対応する領域を正確に特定することができる。したがって、画像内でＡＲコンテンツを表示する位置の精度が向上し、より正確にＡＲコンテンツを表示することが可能になる。例えば、図７に示した面ＩＤマップ７０１に対して領域推定処理を行うことで、面ＩＤマップ７０２が生成される。
【００８６】
図９のステップ９０５において、位置特定部４４２は、面ＩＤマップにおける各面の位置と、３次元空間内における各面の位置とを対応付け、ステップ９０６において、３次元空間内における撮像装置４３１の位置及び撮影方向を特定する。
【００８７】
例えば、位置特定部４４２は、非特許文献２に記載されているように、面ＩＤマップと３次元空間との対応付けをPerspective-n-Point（ＰｎＰ）問題として扱うことで、撮像装置４３１の位置を特定することができる。この場合、位置特定部４４２は、面ＩＤマップ上の３個の境界点を選択して、それらの境界点の位置から、３次元空間内における撮像装置４３１の位置を特定する。そして、位置特定部４４２は、画像処理装置２０１に搭載されたジャイロセンサから、撮像装置４３１の撮影方向を取得する。
【００８８】
また、位置特定部４４２は、非特許文献３に記載されているように、面ＩＤマップと３次元空間との対応付けをＰ４Ｐ問題として扱うことも可能である。この場合、位置特定部４４２は、面ＩＤマップ上の４個の境界点を選択して、それらの境界点の位置から、３次元空間内における撮像装置４３１の位置及び撮影方向を特定する。Ｐ４Ｐ問題では、画像内の任意の４点を３次元空間内の４点と対応付けることで、撮像装置４３１の位置及び撮影方向が一意に決定される。
【００８９】
図１５は、面ＩＤマップ７０２上における選択対象の境界点の例を示している。Ｐ４Ｐ問題では、例えば、境界点１５０１〜境界点１５０６のうちいずれか４点が選択されて、３次元空間内の４点と対応付けられる。外枠と接する境界点は、選択対象から除外されるが、面ＩＤを有していないメッシュ領域と接する境界点は、選択対象に含められる。
【００９０】
非特許文献４に記載されているように、境界点を結ぶ直線を３次元空間内における直線と対応付けることで、撮像装置４３１の位置及び撮影方向を特定することも可能である。また、非特許文献５に記載されているように、境界点と直線の両方を用いて、撮像装置４３１の位置及び撮影方向を特定することも可能である。
【００９１】
図１６は、３次元空間内における撮像装置４３１の位置及び撮影方向の例を示している。図１５に示した面ＩＤマップ７０２に対応する３次元空間内において、点１６０１は、撮像装置４３１の位置を表し、視線ベクトル１６０２は、撮像装置４３１の撮影方向を表す。
【００９２】
図９のステップ９０７において、生成部４３２は、点１６０１の３次元座標及び視線ベクトル１６０２を用いて、オブジェクトを回転させ、拡大又は縮小することで、撮像装置４３１の位置から見たオブジェクトの画像情報を生成する。このとき、生成部４３２は、非特許文献６に記載されているビュー変換を行うことで、オブジェクトを回転させ、拡大又は縮小することができる。ビュー変換と同様に、撮像装置の位置及び撮影方向に応じてオブジェクトを変換する処理は、非特許文献７のｐ１０−１６にも記載されている。
【００９３】
重畳表示するオブジェクトの目的によっては、回転、拡大、又は縮小を省略することも可能である。例えば、撮像装置４３１の位置に応じた案内情報をオブジェクトとして表示する場合、必ずしも回転、拡大、又は縮小を行う必要はない。また、巨大なプロジェクションマッピングの映像を２人のユーザが見ている状況で、各ユーザが保持するスマートデバイスが、特定した自己の位置を相手のスマートデバイスへ送信することもできる。この場合、各ユーザのスマートデバイスは、特定した自己の位置から、受信した相手の位置までの案内情報を、オブジェクトとして表示してもよい。
【００９４】
ところで、画像内で面を表す領域毎に面ＩＤを埋め込む代わりに、十分に小さなメッシュ領域毎に領域ＩＤを埋め込むことで、ステップ９０４の領域推定処理を省略することも可能である。この場合、各メッシュ領域が３次元空間内の点と直接対応付けられる。
【００９５】
図１７は、メッシュ領域毎に領域ＩＤが埋め込まれた画像の例を示している。画像１７０１は、十分に小さなメッシュ領域に分割されており、メッシュ領域毎に異なる領域ＩＤが埋め込まれている。この場合、検出部２１２は、各メッシュ領域から領域ＩＤを検出して、領域ＩＤマップを生成する。
【００９６】
そして、位置特定部４４２は、領域ＩＤマップにおける各メッシュ領域の位置と、３次元空間内における各点の位置とを対応付けることで、３次元空間内における撮像装置４３１の位置及び撮影方向を特定する。例えば、メッシュ領域１７１１〜メッシュ領域１７１４は、天井を表す面内の点と対応付けられる。
【００９７】
図１８は、制御装置及び投影装置を一体化した情報埋め込み装置の構成例を示している。図１８の情報埋め込み装置１８０１は、例えば、情報埋め込み機能を有するプロジェクタであり、図４の制御装置４１１及び投影装置４１２を一体化した構成を有する。図４の画像処理システムにおいて、情報埋め込み装置４０１の代わりに、情報埋め込み装置１８０１を用いてもよい。
【００９８】
図１９は、撮像装置を含まない画像処理装置の構成例を示している。図１９の画像処理装置１９０１は、図４の画像処理装置２０１から撮像装置４３１を削除して、映像入力部１９１１を追加した構成を有する。映像入力部１９１１は、撮像装置４３１から入力される映像４５２を取得し、取得した映像４５２を記憶部２１１に格納する。図４の画像処理システムにおいて、画像処理装置２０１の代わりに、撮像装置４３１及び画像処理装置１９０１を用いてもよい。
【００９９】
次に、被投影領域に投影される映像の代わりに、発光装置が出力する光に対して埋め込み情報を表す信号を重畳する画像処理システムについて説明する。この画像処理システムでは、発光装置が出力する光を撮影した映像から、埋め込み情報が検出される。
【０１００】
図２０は、信号が重畳された光を出力する発光装置の例を示している。発光装置２００１の表面には、複数の発光素子２００２が設けられ、各発光素子２００２は、埋め込み情報を表す信号が重畳された光を発する。発光装置２００１は、例えば、建造物に設置されたイルミネーション装置であり、発光素子２００２としては、発光ダイオード（ＬＥＤ）電球等が用いられる。
【０１０１】
この場合、発光装置２００１の表面上の領域２０１１〜領域２０１４それぞれに設けられた発光素子２００２が、壁Ｃ１〜壁Ｃ４それぞれの面ＩＤを表す信号が重畳された光を発するように、発光装置２００１を制御してもよい。
【０１０２】
図２１は、発光装置を含む情報埋め込み装置の構成例を示している。図２１の情報埋め込み装置２１０１は、制御装置２１１１及び発光装置２１１２を含む。発光装置２１１２は、図２０の発光装置２００１に対応する。この場合、図４の画像処理システムにおいて、情報埋め込み装置４０１の代わりに、情報埋め込み装置２１０１を用いることができる。
【０１０３】
制御装置２１１１は、例えば、情報処理装置であり、埋め込み部２１２１及び記憶部２１２２を含む。記憶部２１２２は、立体構造情報２１３１を記憶する。立体構造情報２１３１は、空間を表す空間情報に埋め込まれる埋め込み情報と、空間内の面を示す位置情報とを対応付ける情報である。位置情報としては、例えば、各面に対応する１つ又は複数の発光素子２００２の位置を示す座標が用いられる。
【０１０４】
埋め込み部２１２１は、立体構造情報２１３１を参照して、各面に対応する発光素子２００２を制御する制御情報に、対応する埋め込み情報を表す信号を重畳することで、空間情報に埋め込み情報を埋め込んだ制御パターンを生成する。そして、埋め込み部２１２１は、生成した制御パターンを発光装置２１１２へ出力する。
【０１０５】
埋め込み情報としては、例えば、特許文献４の発光パターンを用いることができる。この場合、埋め込み部２１２１は、制御パターンを介して、発光装置２００１が出力する光の特性を、時系列に沿って、発光パターンが表すシンボルの値に応じて周期的に変化させる。
【０１０６】
発光装置２１１２は、制御部２１４１及び発光部２１４２を含む。制御部２１４１は、埋め込み部２１２１が出力する制御パターンに従って発光部２１４２を制御する。発光部２１４２は、複数の発光素子２００２を含み、埋め込み情報を表す信号が重畳された空間情報を含む光を出力する。
【０１０７】
図２２は、図２１の情報埋め込み装置２１０１が行う発光処理の例を示すフローチャートである。立体構造情報２１３１には、３次元モデルに含まれる各面に対応する発光素子２００２の位置情報と、各面の面ＩＤとの対応関係が含まれる。
【０１０８】
まず、埋め込み部２１２１は、立体構造情報２１３１を参照して、各面に対応する発光素子２００２の制御情報に、その面の面ＩＤを表す埋め込み情報を埋め込んで、制御パターンを生成する（ステップ２２０１）。そして、制御部２１４１は、制御パターンに従って発光部２１４２を制御し、発光部２１４２は、面ＩＤが埋め込まれた光を出力する（ステップ２２０２）。これにより、制御部２１４１は、発光部２１４２をリアルタイムで制御することができる。
【０１０９】
画像処理装置２０１は、図９と同様の画像処理を行って、空間内における撮像装置４３１の位置及び撮影方向を特定し、ＡＲ映像４５４を画面上に表示する。このような画像処理システムによれば、イルミネーション等を撮影した映像に対して、ＡＲコンテンツを効果的に重畳表示することが可能になる。
【０１１０】
図２３は、信号パターンを用いる情報埋め込み装置の構成例を示している。図２３の情報埋め込み装置２３０１は、図２１の情報埋め込み装置２１０１において、埋め込み部２１２１及び制御部２１４１を、それぞれ、埋め込み部２３１１及び記憶部２３１２に置き換えた構成を有する。
【０１１１】
埋め込み部２３１１は、立体構造情報２１３１を参照して、各面に対応する発光素子２００２を制御する制御信号に、対応する埋め込み情報を表す信号を重畳することで、空間情報に埋め込み情報を埋め込んだ信号パターンを生成する。そして、埋め込み部２３１１は、生成した信号パターンを発光装置２１１２へ出力し、記憶部２３１２は、埋め込み部２３１１が出力する信号パターンを記憶する。
【０１１２】
発光部２１４２は、記憶部２３１２から出力される信号パターンに従って、埋め込み情報を表す信号が重畳された空間情報を含む光を出力する。
【０１１３】
図２４は、図２３の情報埋め込み装置２３０１が行う発光処理の例を示すフローチャートである。まず、信号生成フェーズにおいて、埋め込み部２３１１は、立体構造情報２１３１を参照して、各面に対応する発光素子２００２の制御信号に、その面の面ＩＤを表す埋め込み情報を埋め込んで、信号パターンを生成する（ステップ２４０１）。そして、埋め込み部２３１１は、生成した信号パターンを記憶部２３１２に格納する。
【０１１４】
次に、発光フェーズにおいて、発光部２１４２は、記憶部２３１２から出力される信号パターンに従って、面ＩＤが埋め込まれた光を出力する（ステップ２３０２）。このような発光処理によれば、事前に信号パターンを発光装置２１１２に格納しておくことができるため、発光フェーズにおいて、埋め込み情報を埋め込む処理が不要になる。
【０１１５】
図２５は、時間制御情報を用いる情報埋め込み装置の構成例を示している。図２５の情報埋め込み装置２５０１は、図２１の情報埋め込み装置２１０１において、埋め込み部２１２１及び制御部２１４１を、それぞれ、埋め込み部２５１１及び制御部２５１２に置き換え、記憶部２５１３を追加した構成を有する。
【０１１６】
埋め込み部２５１１は、図２３の埋め込み部２３１１と同様に、立体構造情報２１３１を参照して信号パターンを生成し、記憶部２５１３は、埋め込み部２５１１が生成した信号パターンを記憶する。
【０１１７】
さらに、埋め込み部２５１１は、複数の発光素子２００２の信号パターンを時間的に同期させるために、時間制御情報を生成し、生成した時間制御情報を発光装置２１１２へ出力する。
【０１１８】
制御部２５１２は、埋め込み部２５１１が出力する時間制御情報に従って、記憶部２５１３から信号パターンを読み出し、読み出した信号パターンを発光部２１４２へ出力する。発光部２１４２は、制御部２５１２から出力される信号パターンに従って、埋め込み情報を表す信号が重畳された空間情報を含む光を出力する。
【０１１９】
図２６は、図２５の情報埋め込み装置２５０１が行う発光処理の例を示すフローチャートである。まず、信号生成フェーズにおいて、埋め込み部２５１１は、立体構造情報２１３１を参照して、各面に対応する発光素子２００２の制御信号に、その面の面ＩＤを表す埋め込み情報を埋め込んで、信号パターンを生成する（ステップ２６０１）。そして、埋め込み部２５１１は、生成した信号パターンを記憶部２５１３に格納する。
【０１２０】
次に、発光フェーズにおいて、埋め込み部２５１１は、時間制御情報を生成する（ステップ２６０２）。そして、制御部２５１２は、時間制御情報に従って、記憶部２５１３から信号パターンを読み出し、発光部２１４２は、信号パターンに従って、面ＩＤが埋め込まれた光を出力する（ステップ２６０３）。このような発光処理によれば、リアルタイムに生成される時間制御情報を用いて、複数の発光素子２００２から出力される光に重畳された信号を同期させることができる。
【０１２１】
図２、図４、及び図１９の画像処理装置の構成は一例に過ぎず、画像処理装置の用途又は条件に応じて一部の構成要素を省略又は変更してもよい。例えば、図４の画像処理装置２０１及び図１９の画像処理装置１９０１において、ＡＲ映像４５４を生成する処理が外部の装置によって行われる場合は、生成部４３２及び表示部４３３を省略することができる。各メッシュ領域が３次元空間内の点と直接対応付けられる場合は、領域推定部４４１を省略することができる。
【０１２２】
図４、図１８、図２１、図２３、及び図２５の情報埋め込み装置の構成は一例に過ぎず、情報埋め込み装置の用途又は条件に応じて一部の構成要素を省略又は変更してもよい。例えば、図４の情報埋め込み装置４０１及び図１８の情報埋め込み装置１８０１において、投影装置４１２が外部に設けられる場合は、投影装置４１２を省略することができる。図２１の情報埋め込み装置２１０１、図２３の情報埋め込み装置２３０１、及び図２５の情報埋め込み装置２５０１において、発光装置２１１２が外部に設けられる場合は、発光装置２１１２を省略することができる。
【０１２３】
図２０の発光装置２００１は一例に過ぎず、発光素子２００２の配置を変更してもよく、別の形状の発光装置を用いてもよい。
【０１２４】
図３、図８〜図１１、図１３Ａ〜図１３Ｃ、図２２、図２４、及び図２６のフローチャートは一例に過ぎず、画像処理システムの構成又は条件に応じて一部の処理を省略又は変更してもよい。例えば、図９の画像処理において、ＡＲ映像４５４を生成する処理が外部の装置によって行われる場合は、ステップ９０７〜ステップ９０９の処理を省略することができる。各メッシュ領域が３次元空間内の点と直接対応付けられる場合は、ステップ９０４の処理を省略することができる。
【０１２５】
図９のステップ９０２において、検出部２１２は、映像４５２中の各画像をメッシュ領域に分割する代わりに、別の形状を有する小領域に分割してもよい。図８の映像投影処理において、特許文献１の電子透かし以外の埋め込み情報を用いてもよく、図２２、図２４、及び図２６の発光処理において、特許文献４の発光パターン以外の埋め込み情報を用いてもよい。
【０１２６】
図１の映像と図５及び図１７の画像は一例に過ぎず、画像処理システムの用途に応じて、様々な映像又は画像が撮影される。例えば、撮影された画像に写る立体物は部屋でなくてもよく、建造物、車両、動物等であってもよい。
【０１２７】
図６の領域と図７、図１２、図１４、及び図１５の面ＩＤマップは一例に過ぎず、撮影された映像又は画像に応じて、様々な領域又は面ＩＤマップが生成される。図１６の撮像装置の位置及び撮影方向は一例に過ぎず、撮影された映像又は画像に応じて、様々な位置及び撮影方向が生成される。
【０１２８】
図２及び図４の画像処理装置２０１と図１９の画像処理装置１９０１は、例えば、図２７に示すような情報処理装置（コンピュータ）を用いて実現可能である。また、図４の制御装置４１１と、図１８の情報埋め込み装置１８０１と、図２１、図２３、及び図２５の制御装置２１１１も、図２７の情報処理装置を用いて実現可能である。
【０１２９】
図２７の情報処理装置は、Central Processing Unit（ＣＰＵ）２７０１、メモリ２７０２、入力装置２７０３、出力装置２７０４、補助記憶装置２７０５、媒体駆動装置２７０６、及びネットワーク接続装置２７０７を含む。これらの構成要素はバス２７０８により互いに接続されている。撮像装置４３１、投影装置４１２、及び発光装置２１１２は、バス２７０８に接続されていてもよい。
【０１３０】
メモリ２７０２は、例えば、Read Only Memory（ＲＯＭ）、Random Access Memory（ＲＡＭ）、フラッシュメモリ等の半導体メモリである。メモリ２７０２は、画像処理装置２０１、画像処理装置１９０１、制御装置４１１、情報埋め込み装置１８０１、又は制御装置２１１１が行う処理のためのプログラム及びデータを格納する。メモリ２７０２は、記憶部２１１、記憶部４１４、又は記憶部２１２２として用いることができる。
【０１３１】
情報処理装置が画像処理装置２０１又は画像処理装置１９０１である場合、ＣＰＵ２７０１（プロセッサ）は、例えば、メモリ２７０２を利用してプログラムを実行することにより、検出部２１２及び特定部２１３として動作する。ＣＰＵ２７０１は、プログラムを実行することにより、生成部４３２、領域推定部４４１、及び位置特定部４４２としても動作する。
【０１３２】
情報処理装置が制御装置４１１又は情報埋め込み装置１８０１である場合、ＣＰＵ２７０１は、プログラムを実行することにより、埋め込み部４１３として動作する。情報処理装置が制御装置２１１１である場合、ＣＰＵ２７０１は、プログラムを実行することにより、埋め込み部２１２１、埋め込み部２３１１、又は埋め込み部２５１１として動作する。
【０１３３】
入力装置２７０３は、例えば、キーボード、ポインティングデバイス等であり、ユーザ又はオペレータからの指示や情報の入力に用いられる。出力装置２７０４は、例えば、表示装置、プリンタ、スピーカ等であり、ユーザ又はオペレータへの問い合わせや処理結果の出力に用いられる。処理結果は、撮像装置４３１の位置及び撮影方向であってもよく、ＡＲ映像４５４であってもよい。出力装置２７０４は、表示部４３３として用いることができる。
【０１３４】
補助記憶装置２７０５は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置２７０５は、ハードディスクドライブ又はフラッシュメモリであってもよい。情報処理装置が携帯端末である場合、補助記憶装置２７０５としてフラッシュメモリを用いることができる。情報処理装置は、補助記憶装置２７０５にプログラム及びデータを格納しておき、それらをメモリ２７０２にロードして使用することができる。補助記憶装置２７０５は、記憶部２１１、記憶部４１４、又は記憶部２１２２として用いることができる。
【０１３５】
媒体駆動装置２７０６は、可搬型記録媒体２７０９を駆動し、その記録内容にアクセスする。可搬型記録媒体２７０９は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体２７０９は、Compact Disk Read Only Memory（ＣＤ−ＲＯＭ）、Digital Versatile Disk（ＤＶＤ）、Universal Serial Bus（ＵＳＢ）メモリ等であってもよい。情報処理装置が携帯端末である場合、可搬型記録媒体２７０９としてメモリカードを用いることができる。ユーザ又はオペレータは、この可搬型記録媒体２７０９にプログラム及びデータを格納しておき、それらをメモリ２７０２にロードして使用することができる。
【０１３６】
このように、プログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ２７０２、補助記憶装置２７０５、及び可搬型記録媒体２７０９のような、物理的な（非一時的な）記録媒体である。
【０１３７】
ネットワーク接続装置２７０７は、Local Area Network、Wide Area Network等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。情報処理装置が携帯端末である場合、ネットワーク接続装置２７０７として無線装置を用いることができる。情報処理装置は、ネットワーク接続装置２７０７を介して外部の装置からプログラム及びデータを受信し、それらをメモリ２７０２にロードして使用することができる。
【０１３８】
撮像装置４３１、投影装置４１２、及び発光装置２１１２は、ネットワーク接続装置２７０７に接続されていてもよい。情報処理装置は、ネットワーク接続装置２７０７を介して、ユーザ端末から処理要求を受信し、処理結果をユーザ端末へ送信することもできる。
【０１３９】
なお、情報処理装置が図２７のすべての構成要素を含む必要はなく、用途又は条件に応じて一部の構成要素を省略することも可能である。例えば、情報処理装置がユーザ端末から通信ネットワーク経由で処理要求を受信する場合は、入力装置２７０３及び出力装置２７０４を省略してもよい。また、可搬型記録媒体２７０９又は通信ネットワークを利用しない場合は、媒体駆動装置２７０６又はネットワーク接続装置２７０７を省略してもよい。
【０１４０】
情報処理装置が携帯端末である場合、情報処理装置は、マイク及びスピーカのような通話用の装置を含んでいてもよい。
【０１４１】
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
【０１４２】
図１乃至図２７を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
（付記１）
撮像装置が撮影した撮影画像内の複数の領域それぞれから、前記撮影画像に埋め込まれた埋め込み情報を検出し、
前記埋め込み情報と、前記撮影画像に写る空間内の位置を示す位置情報とを対応付けて記憶する記憶部を参照して、前記複数の領域それぞれから検出した前記埋め込み情報に対応する前記空間内の位置を推定し、
推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の位置を特定する、
処理をコンピュータに実行させる画像処理プログラム。
（付記２）
前記画像処理プログラムは、
特定した前記撮像装置の前記位置に基づいて、前記撮影画像内の所定位置に表示する画像情報を生成し、
前記撮影画像と生成した前記画像情報とを重畳表示する表示情報を生成する、
処理を前記コンピュータにさらに実行させることを特徴とする付記１記載の画像処理プログラム。
（付記３）
前記コンピュータは、推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の撮影方向をさらに特定し、前記空間内に表示する物体の画像を、前記撮像装置の前記位置と前記撮影方向とを用いて前記画像情報に変換することを特徴とする付記２記載の画像処理プログラム。
（付記４）
前記コンピュータは、前記複数の領域のうち第１領域から検出した前記埋め込み情報と、前記第１領域に隣接する第２領域から検出した前記埋め込み情報とを比較した結果に基づいて、前記第１領域と前記第２領域との間に境界を設定し、設定した前記境界に基づいて前記空間内の面を推定し、前記空間内の前記面を前記空間内の前記位置として用いることを特徴とする付記１乃至３のいずれか１項に記載の画像処理プログラム。
（付記５）
撮像装置が撮影した撮影画像に埋め込まれた埋め込み情報と、前記撮影画像に写る空間内の位置を示す位置情報とを対応付けて記憶する記憶部と、
前記撮影画像内の複数の領域それぞれから前記埋め込み情報を検出する検出部と、
前記記憶部を参照して、前記検出部が前記複数の領域それぞれから検出した前記埋め込み情報に対応する前記空間内の位置を推定し、推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の位置を特定する特定部と、
を備えることを特徴とする画像処理装置。
（付記６）
前記特定部が特定した前記撮像装置の前記位置に基づいて、前記撮影画像内の所定位置に表示する画像情報を生成し、前記撮影画像と生成した前記画像情報とを重畳表示する表示情報を生成する生成部をさらに備えることを特徴とする付記５記載の画像処理装置。
（付記７）
前記特定部は、推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の撮影方向をさらに特定し、前記生成部は、前記空間内に表示する物体の画像を、前記撮像装置の前記位置と前記撮影方向とを用いて前記画像情報に変換することを特徴とする付記６記載の画像処理装置。
（付記８）
前記特定部は、前記複数の領域のうち第１領域から検出した前記埋め込み情報と、前記第１領域に隣接する第２領域から検出した前記埋め込み情報とを比較した結果に基づいて、前記第１領域と前記第２領域との間に境界を設定し、設定した前記境界に基づいて前記空間内の面を推定し、前記空間内の前記面を前記空間内の前記位置として用いることを特徴とする付記５乃至７のいずれか１項に記載の画像処理装置。
（付記９）
情報埋め込み装置と画像処理装置とを備える画像処理システムであって、
前記情報埋め込み装置は、
埋め込み情報と、空間内の位置を示す位置情報とを対応付けて記憶する第１記憶部と、
前記第１記憶部を参照して、前記空間を表す空間情報に、前記埋め込み情報を表す信号を重畳する埋め込み部とを含み、
前記画像処理装置は、
前記埋め込み情報と前記位置情報とを対応付けて記憶する第２記憶部と、
前記信号が重畳された前記空間情報を含む光を用いて撮像装置が撮影した撮影画像内の複数の領域それぞれから、前記信号が表す前記埋め込み情報を検出する検出部と、
前記第２記憶部を参照して、前記検出部が前記複数の領域それぞれから検出した前記埋め込み情報に対応する前記空間内の位置を推定し、推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の位置を特定する特定部とを含むことを特徴とする画像処理システム。
（付記１０）
前記光は、前記空間情報を含む映像であり、前記情報埋め込み装置は、前記信号が重畳された前記映像を被投影領域に対して投影する投影装置をさらに含み、前記撮像装置は、前記投影装置が前記被投影領域に対して投影した前記映像を撮影し、前記撮影画像は、前記撮像装置が撮影した前記映像に含まれることを特徴とする付記記載の画像処理システム。
（付記１１）
前記情報埋め込み装置は、前記光を出力する発光装置をさらに含み、前記撮像装置は、前記発光装置が出力した前記光を撮影することを特徴とする付記記載の画像処理システム。
（付記１２）
コンピュータが、
撮像装置が撮影した撮影画像内の複数の領域それぞれから、前記撮影画像に埋め込まれた埋め込み情報を検出し、
前記埋め込み情報と、前記撮影画像に写る空間内の位置を示す位置情報とを対応付けて記憶する記憶部を参照して、前記複数の領域それぞれから検出した前記埋め込み情報に対応する前記空間内の位置を推定し、
推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の位置を特定する、
ことを特徴とする画像処理方法。
（付記１３）
前記コンピュータは、さらに、
特定した前記撮像装置の前記位置に基づいて、前記撮影画像内の所定位置に表示する画像情報を生成し、
前記撮影画像と生成した前記画像情報とを重畳表示する表示情報を生成する、
ことを特徴とする付記１２記載の画像処理方法。
（付記１４）
前記コンピュータは、推定した前記空間内の前記位置に基づいて、前記空間内の前記撮像装置の撮影方向をさらに特定し、前記空間内に表示する物体の画像を、前記撮像装置の前記位置と前記撮影方向とを用いて前記画像情報に変換することを特徴とする付記１３記載の画像処理方法。
（付記１５）
前記コンピュータは、前記複数の領域のうち第１領域から検出した前記埋め込み情報と、前記第１領域に隣接する第２領域から検出した前記埋め込み情報とを比較した結果に基づいて、前記第１領域と前記第２領域との間に境界を設定し、設定した前記境界に基づいて前記空間内の面を推定し、前記空間内の前記面を前記空間内の前記位置として用いることを特徴とする付記１２乃至１４のいずれか１項に記載の画像処理方法。
【符号の説明】
【０１４３】
１０１  プロジェクタ
１０２、１０３  映像
１１１〜１１３  オブジェクト
２０１、１９０１  画像処理装置
２１１、４１４、２１２２、２３１２、２５１３  記憶部
２１２  検出部
２１３  特定部
４０１、１８０１、２１０１、２３０１、２５０１  情報埋め込み装置
４１１、２１１１  制御装置
４１２  投影装置
４１３、２１２１、２３１１、２５１１  埋め込み部
４２１、４５１、２１３１  立体構造情報
４２２、４５２  映像
４３１  撮像装置
４３２  生成部
４３３  表示部
４４１  領域推定部
４４２  位置特定部
４５３  オブジェクト映像
４５４  ＡＲ映像
６０１〜６０３  部分領域
７０１、７０２、１２０１  面ＩＤマップ
１２１１〜１２１６  領域
１２２１〜１２２３、１４０３〜１４０７、１５０１〜１５０６  境界点
１４０１、１４０２  端点
１４１１  折れ線
１４１２〜１４１５  直線
１６０１  点
１６０２  視線ベクトル
１７０１  画像
１７１１〜１７１４  メッシュ領域
１９１１  映像入力部
２００１、２１１２  発光装置
２００２  発光素子
２０１１〜２０１４  領域
２１４１、２５１２  制御部
２１４２  発光部
２７０１  ＣＰＵ
２７０２  メモリ
２７０３  入力装置
２７０４  出力装置
２７０５  補助記憶装置
２７０６  媒体駆動装置
２７０７  ネットワーク接続装置
２７０８  バス
２７０９  可搬型記録媒体
【図１】
0006763154.tif 000002
【図２】
0006763154.tif 000003
【図３】
0006763154.tif 000004
【図４】
0006763154.tif 000005
【図５】
0006763154.tif 000006
【図６】
0006763154.tif 000007
【図７】
0006763154.tif 000008
【図８】
0006763154.tif 000009
【図９】
0006763154.tif 000010
【図１０】
0006763154.tif 000011
【図１１】
0006763154.tif 000012
【図１２】
0006763154.tif 000013
【図１３Ａ】
0006763154.tif 000014
【図１３Ｂ】
0006763154.tif 000015
【図１３Ｃ】
0006763154.tif 000016
【図１４】
0006763154.tif 000017
【図１５】
0006763154.tif 000018
【図１６】
0006763154.tif 000019
【図１７】
0006763154.tif 000020
【図１８】
0006763154.tif 000021
【図１９】
0006763154.tif 000022
【図２０】
0006763154.tif 000023
【図２１】
0006763154.tif 000024
【図２２】
0006763154.tif 000025
【図２３】
0006763154.tif 000026
【図２４】
0006763154.tif 000027
【図２５】
0006763154.tif 000028
【図２６】
0006763154.tif 000029
【図２７】
0006763154.tif 000030