(57)【要約】【課題】立体の各部の位置の特定を高速に実施することができる位置特定装置を得ること。【解決手段】位置特定装置は、位置座標の異なる複数の点で構成されるパターンが複数配置されたスクリーンを撮影した画像に基づいて、各点の画像内の座標値を算出する座標算出部２１と、前記座標値に基づいてパターンのスクリーン内の位置を示す情報であるアドレスコードを推定する格子パターン推定部２２と、推定したアドレスコードに基づいて、スクリーン内の位置を特定するアドレス決定部２３と、を備え、パターンは、パターンの点ごとに基準パターンの対応する点からずれたスクリーン内の位置に配置され、パターンを構成する点に対応する基準パターンの対応する点に対するずれの方向を数値化した値を点コードとし、アドレスコードは、パターンを構成する複数の点の点コードで構成される数列である。【選択図】図４
2015142237.tif 000002
【特許請求の範囲】
【請求項１】
位置座標の異なる複数の点で構成されるパターンが複数配置された部材を撮影した画像に基づいて、前記画像内の前記点の前記画像内の座標値を算出する座標算出部と、
前記座標値に基づいて前記パターンの前記部材内の位置を示す情報であるアドレスコードを推定する格子パターン推定部と、
推定した前記アドレスコードに基づいて、前記パターンの前記部材内の位置を特定するアドレス決定部と、
を備え、
前記パターンは、複数の点で構成される基準パターンに対して、前記パターンの点ごとに前記基準パターンの対応する点からずれた前記部材内の位置に配置され、
前記パターンを構成する点に対応する前記基準パターンの対応する点に対するずれの方向を数値化した値を点コードとし、前記アドレスコードは、前記パターンを構成する前記複数の点の前記点コードで構成される数列であることを特徴とする位置特定装置。
【請求項２】
前記格子パターン推定部は、前記画像内の前記パターンの各点の座標値である第１の座標値と前記基準パターンの各点の座標値とを用いて、前記パターンの基準座標系からの射影変換行列を推定し、推定した前記射影変換行列に基づいて前記パターンの各点の前記基準座標系における座標値である第２の座標値を推定し、前記第２の座標値と前記基準パターンの各点の座標値とに基づいて、前記パターンのアドレスコードを推定することを特徴とする請求項１に記載の位置特定装置。
【請求項３】
前記基準パターンは、正方格子であることを特徴とする請求項１または２に記載の位置特定装置。
【請求項４】
前記基準パターンは、３×３の正方格子であることを特徴とする請求項３に記載の位置特定装置。
【請求項５】
位置座標の異なる複数の点で構成されるパターンが複数配置された部材を撮影した画像に基づいて、前記画像内の前記点の前記画像内の座標値を算出する座標算出部と、
前記座標値に基づいて前記パターンの前記部材内の位置を示す情報であるアドレスコードを推定する格子パターン推定部と、
推定した前記アドレスコードに基づいて、前記パターンの前記部材内の位置を特定するアドレス決定部と、
前記アドレス決定部により特定された前記パターンの位置に基づいて、前記部材の形状に対応した射影変換行列を算出し、前記部材へ投影する映像データを、前記射影変換行列を用いて座標変換する映像データ変換部と、
を備え、
前記パターンは、複数の点で構成される基準パターンに対して、前記パターンの点ごとに前記基準パターンの対応する点からずれた前記部材内の位置に配置され、
前記パターンを構成する点に対応する前記基準パターンの対応する点に対するずれの方向を数値化した値を点コードとし、前記アドレスコードは、前記パターンを構成する前記複数の点の前記点コードで構成される数列であること特徴とする映像処理装置。
【請求項６】
複数の点で構成されるパターンを生成する格子パターン生成部と、
部材内の位置を示す情報であるアドレスコードに基づいて、前記パターンの前記部材内の配置を決定する配置部と、
を備え、
前記パターンは、複数の点で構成される基準パターンに対して、前記パターンの点ごとに前記基準パターンの対応する点からずれた前記部材内の位置に配置され、
前記パターンを構成する点に対応する前記基準パターンの対応する点に対するずれの方向を数値化した値を点コードとし、前記アドレスコードは、前記パターンを構成する前記複数の点の前記点コードで構成される数列であることを特徴とするパターン生成装置。
【請求項７】
生地と、
前記生地に印刷された複数のパターンと、
を備え、
前記パターンは複数の点で構成され、前記点の位置は、前記生地内の位置を示すアドレスコードに基づいて決定され、
前記パターンは、複数の点で構成される基準パターンに対して、前記パターンの点ごとに前記基準パターンの対応する点からずれた前記生地内の位置に配置され、
前記パターンを構成する点に対応する前記基準パターンの対応する点に対するずれの方向を数値化した値を点コードとし、前記アドレスコードは、前記パターンを構成する前記複数の点の前記点コードで構成される数列であること特徴とするスクリーン。
【請求項８】
前記基準パターンは、正方格子であることを特徴とする請求項７に記載のスクリーン。
【請求項９】
前記基準パターンは、３×３の正方格子であることを特徴とする請求項８に記載のスクリーン。
【請求項１０】
前記パターンは、再帰性反射材により形成されることを特徴とする請求項７、８または９に記載のスクリーン。
【請求項１１】
前記パターンは、非可視光を反射または放射する材質により形成されることを特徴とする請求項７、８または９に記載のスクリーン。
【請求項１２】
前記パターンは、赤外光を反射または放射する材質により形成されることを特徴とする請求項１１に記載のスクリーン。
【請求項１３】
前記アドレスコードは、前記スクリーンを撮影した画像に仮想情報を付加するための情報に基づいて生成されることを特徴とする請求項７から１２のいずれか１つに記載のスクリーン。
【請求項１４】
請求項７に記載のスクリーンと、
前記スクリーンを含む画像を撮影する撮影装置と、
前記画像に基づいて、前記スクリーンに投影する映像データを座標変換する請求項５に記載の映像処理装置と、
前記映像処理装置により座標変換された映像データを前記スクリーンに投影する投影装置と、
を備えることを特徴とするスクリーンシステム。
【請求項１５】
位置座標の異なる複数の点で構成されるパターンが複数配置された部材を撮影した画像に基づいて、前記画像内の前記点の前記画像内の座標値を算出する座標算出ステップと、
前記座標値に基づいて前記パターンの前記部材内の位置を示す情報であるアドレスコードを推定する格子パターン推定ステップと、
推定した前記アドレスコードに基づいて、前記パターンの前記部材内の位置を特定するアドレス決定ステップと、
を含み、
前記パターンは、複数の点で構成される基準パターンに対して、前記パターンの点ごとに前記基準パターンの対応する点からずれた前記部材内の位置に配置され、
前記パターンを構成する点に対応する前記基準パターンの対応する点に対するずれの方向を数値化した値を点コードとし、前記アドレスコードは、前記パターンを構成する前記複数の点の前記点コードで構成される数列であること特徴とする位置特定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、位置特定装置、映像処理装置、パターン生成装置、スクリーン、スクリーンシステムおよび位置特定方法に関する。
【背景技術】
【０００２】
建物や物体、空間などの３次元形状を有するスクリーンに対して映像を映し出す技術がある。この技術は、例えばプロジェクションマッピング等と呼ばれる。スクリーンが固定されている場合には、映像を歪みなく投影するために、既知のスクリーンの形状情報を用いることができる。また、未知の形状のスクリーンに投影する方法として、マーカーやパターン等をスクリーンに投影して、スクリーンの形状を把握する方法もある。
【０００３】
また、建物等の固定物だけでなく、移動する動体に設けられた立体スクリーンに対して映像を投影する映像投影システムが、下記特許文献１に開示されている。特許文献１に記載の技術では、立体スクリーンに投影する被投影体に複数のマーカーを設け、マーカーを含む映像を撮影する。そして、撮影した映像中のマーカーの一座標を用いて立体スクリーンの位置および方向情報を取得する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−２５４４１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のスクリーンが移動する場合、マーカーや座標系等をスクリーンに投影する方法では、スクリーンへのマーカー等を投影し、投影した映像に基づいてスクリーンの位置や形状を把握し、その後に映像を投影することになる。このため、スクリーンの移動速度が速い場合等には、これらの処理時間が移動の速度より遅くなり、処理が間に合わない可能性があるという問題がある。
【０００６】
また、上記特許文献１に記載の技術は、ある程度の形状が既知である動体を想定して、複数のマーカーを用いて、投影する映像データをスクリーンに整合させている。特許文献１に記載の技術では、ある形状のものがその形状のまま移動することを想定しており、局所的な形状変化には対応できないという問題がある。また、検出できないマーカーが発生した場合等に、各マーカーの位置を求めることができないという問題がある。
【０００７】
本発明は、上記に鑑みてなされたものであって、立体の各部の位置の特定を高速に実施することができる位置特定装置、映像処理装置、パターン生成装置、スクリーン、スクリーンシステムおよび位置特定方法を得ることを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一つの実施形態によれば、位置特定装置は、位置座標の異なる複数の点で構成されるパターンが複数配置された部材を撮影した画像に基づいて、前記画像内の前記点の前記画像内の座標値を算出する座標算出部と、前記座標値に基づいて前記パターンの前記部材内の位置を示す情報であるアドレスコードを推定する格子パターン推定部と、推定した前記アドレスコードに基づいて、前記部材内の位置を特定するアドレス決定部と、を備え、前記パターンは、複数の点で構成される基準パターンに対して、前記パターンの点ごとに前記基準パターンの対応する点からずれた前記部材内の位置に配置され、前記パターンを構成する点に対応する前記基準パターンの対応する点に対するずれの方向を数値化した値を点コードとし、前記アドレスコードは、前記パターンを構成する前記複数の点の前記点コードで構成される数列であることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、立体の各部の位置の特定を高速に実施することができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明にかかるスクリーンシステムの構成例を示す図である。
【図２】図２は、実施の形態のスクリーンシステムの適用例を示す図である。
【図３】図３は、映像処理装置として機能する計算機システムの構成例を示す図である。
【図４】図４は、映像処理装置の機能構成例を示す図である。
【図５】図５は、パターン生成装置の構成例を示す図である。
【図６】図６は、基準となる格子パターンの一例を示す図である。
【図７】図７は、アドレスコードを与えた格子パターンの一例を示す図である。
【図８】図８は、位置特定処理および映像投影処理の一例を示すフローチャートである。
【図９】図９は、スクリーン上にアドレスコードの異なる格子パターンを配置した例を示す図である。
【図１０】図１０は、格子パターンをカメラにより実際に撮影した画像の例を示している。
【図１１】図１１は、格子パターンをカメラにより実際に撮影した画像の例を示している。
【図１２】図１２は、格子パターンをカメラにより実際に撮影した画像の例を示している。
【図１３】図１３は、格子パターンをカメラにより実際に撮影した画像の例を示している。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照して、実施形態にかかる位置特定装置、映像処理装置、パターン生成装置、スクリーン、スクリーンシステムおよび位置特定方法を詳細に説明する。なお、これらの実施形態により本発明が限定されるものではない。
【００１２】
図１は、本発明にかかるスクリーンシステムの構成例を示す図である。図１に示すように、本実施の形態のスクリーンシステムは、スクリーン１（部材）、映像処理装置２、投影装置３および撮影装置４を備える。
【００１３】
図２は、本実施の形態のスクリーンシステムの適用例を示す図である。図２に示すように、スクリーン１は、例えば、移動可能な立体５の表面に沿って設置される。映像処理装置２は、パーソナルコンピュータ等の計算機システムである。投影装置３は、プロジェクタ等と呼ばれ、映像を拡大して投影する装置である。撮影装置４は、例えばデジタルカメラ等であり、撮影した映像を映像データとして出力可能な装置である。投影装置３、撮影装置４の方式等に制約はなく、どのようなものを用いてもよい。
【００１４】
図３は、本実施の形態の映像処理装置２として機能する計算機システムの構成例を示す図である。この計算機システムは、たとえば、制御部１０１と入力部１０２と記憶部１０３と表示部１０４と通信部１０５とを備え、これらはシステムバス１０６を介して接続されている。
【００１５】
制御部１０１は、本発明にかかる位置特定プログラムおよび映像投影プログラムを実行する。入力部１０２は、たとえばキーボードやマウスなどで構成され、計算機システムのユーザが、各種情報の入力を行うために使用する。記憶部１０３は、ＲＡＭ（Random  Access  Memory），ＲＯＭ（Read  Only  Memory）などの各種メモリおよびハードディスクなどのストレージデバイスを含み、上記制御部１０１が実行すべきプログラム，処理の過程で得られた必要なデータ，などを記憶する。また、記憶部１０３は、プログラムが一時的に利用する一時的な記憶領域としても使用される。表示部１０４は、ＣＲＴ，ＬＣＤ（液晶表示パネル）などで構成され、計算機システムのユーザに対して各種画面を表示する。
【００１６】
ここで、本発明にかかる位置特定プログラムおよび映像投影プログラムが実行可能な状態になるまでの計算機システムの動作例について説明する。上述した構成をとる計算機システムには、たとえば、ＣＤ−ＲＯＭドライブ（図示せず）にセットされたＣＤ−ＲＯＭから、位置特定プログラムおよび映像投影プログラムが記憶部１０３にインストールされる。そして、位置特定プログラムおよび映像投影プログラムの実行時に、記憶部１０３から読み出された位置特定プログラムおよび映像投影プログラムが記憶部１０３の所定の場所に格納される。この状態で、制御部１０１は、記憶部１０３に格納されたプログラムに従って、位置特定処理および映像投影処理を実行する。
【００１７】
なお、ここでは、ＣＤ−ＲＯＭを記録媒体として、上記プログラムを提供しているが、これに限らず、計算機システムの構成、提供するプログラムの容量などに応じて、たとえば、フロッピー（登録商標）ディスクなどの磁気ディスク，光磁気ディスク，磁気テープなどの記録媒体を用いることも可能である。また、電子メール，インターネットなどの伝送媒体により提供されたプログラムを用いることとしてもよい。
【００１８】
図４は、本実施の形態の映像処理装置２の機能構成例を示す図である。映像処理装置２は、座標算出部２１、格子パターン推定部２２、アドレス決定部２３、座標変換行列決定部２４および映像データ変換部２５を備える。座標算出部２１、格子パターン推定部２２、アドレス決定部２３は、位置特定プログラムにより制御部１０１内に生成される処理部である。座標変換行列決定部２４および映像データ変換部２５は、映像投影プログラムにより制御部１０１内に生成される処理部である。また、映像処理装置２は、格子パターンデータ２６および映像データ２７を、図３の記憶部１０３内に保持している。
【００１９】
なお、本実施の形態では、映像処理装置２が、位置特定プログラムを実行する位置特定装置としての機能と映像投影プログラムを実行する映像投影プログラム実行装置としての機能とを備えるようにしたが、位置特定プログラムと映像投影プログラムをそれぞれ異なる装置により実行してもよい。位置特定プログラムと映像投影プログラムをそれぞれ異なる装置で実行する場合、位置特定プログラムを実行する位置特定装置は、座標算出部２１、格子パターン推定部２２、アドレス決定部２３を備え、格子パターンデータ２６を保持する。映像投影プログラム実行装置は、座標変換行列決定部２４および映像データ変換部２５を備え、映像データ２７を保持する。
【００２０】
図５は、本実施の形態のパターン生成装置６の構成例を示す図である。本実施の形態のパターン生成装置６は、格子パターン生成プログラムを実行する装置であり、スクリーン１に印刷される後述の格子パターンのデータを生成する装置である。パターン生成装置６は、本実施の形態のスクリーンシステムとは独立した別の装置であってもよいし、スクリーンシステムの構成要素であってもよい。パターン生成装置６は、映像処理装置２が実装される図３に示した計算機システムと同様の計算機システムに実装される。例えば、１つの計算機システムが映像処理装置２としての機能とパターン生成装置６としての機能を有していてもよい。格子パターン生成プログラムが実行可能な状態になるまでの計算機システムの動作例は、上述の位置特定プログラムと同様である。
【００２１】
本実施の形態のパターン生成装置６は、アドレスコード配置部６１、格子パターン生成部６２および印刷データ生成部６３を備える。アドレスコード配置部６１、格子パターン生成部６２および印刷データ生成部６３は、格子パターン生成プログラムにより制御部１０１内に生成される処理部である。また、パターン生成装置６は、格子パターンデータ６４を、記憶部１０３内に保持している。
【００２２】
次に、本実施の形態の動作について説明する。本実施の形態では、スクリーン１に、アドレスコードを埋め込んだ格子パターンが印刷されている。アドレスコードとは、後述するように格子パターンの基準座標系における位置を示す情報（数列）であり、本実施の形態では、この数列により、格子パターンのスクリーン１内の位置を示す。なお、ここでは、格子パターンが印刷される例を示すが、格子パターンがスクリーン１上に配置される方法であれば、印刷に限定されず、例えば、格子パターンの点となる物質をスクリーン１にスプレー等で塗布する方法であってもよく、どのような方法であってもよい。
【００２３】
まず、パターン生成装置６のアドレスコード配置部６１は、スクリーン１内の各格子パターンを配置する格子領域（ここでは、一例として矩形の平面の領域とする）をそれぞれ決定し、格子パターンごとのアドレスコードを決定する。格子領域は、各格子パターンを配置する際に、格子パターンの各点の位置を決定するために定義する基準領域であり、ここではスクリーンが平面状であるとしてスクリーン１を示す平面内に設けられた領域とする。スクリーン１には、格子領域が配置される。各格子領域は互いに重複しないように配置されてもよいし、一部重複されてもよく、格子領域間は離れていても（接していなくても）よい。格子領域内の格子パターンの各点は、後述するように、アドレスコードに応じて、格子領域内に基準パターンが配置された場合の各点の位置からそれぞれずれた位置に決定される。なお、ここでは、格子領域を平面としたが、格子領域は完全な平面でなくてもよく「局所的に平面近似可能な曲面」であってもよい。例えば、カーテンのような曲面であってもよい。格子パターン生成部６２は、アドレスコード配置部６１が決定したアドレスコードに基づいて、アドレスコードを埋め込んだ格子パターンを生成する。
【００２４】
アドレスコードを埋め込んだ格子パターンとは、格子パターンの位置自体にアドレス情報が含まれている格子パターンのことを示す。ここで、本実施の形態のアドレスコードを埋め込んだ格子パターンについて説明する。基準座標系とは、スクリーン１が移動や歪み等のない初期状態に置かれた場合のスクリーン１上の座標系である。
【００２５】
図６は、基準となる格子パターン（基準パターン）の一例を示す図である。ここでは、アドレスコードを埋め込んだ格子パターンとして３×３点の正方格子パターンを用いる例を説明する。図６の３×３の９点について、インデックスｋを図６に示すように設定する（図６の各点の右上方に記載した数字が各点のｋの値）。
【００２６】
各インデックスｋに対応する点の座標を［ｕ（ｋ），ｖ（ｋ）］Tとする。アドレスコードは、３×３の９点にそれぞれ設定されたコードを示す数列である。各点に対応するコード（点コード）ｐ（ｋ）は、０から３の整数とする。このとき、コードに応じて位置をずらした点の座標［ｕ´（ｋ），ｖ´（ｋ）］Tを、次の式（１）で与える。
【００２７】
【数１】
2015142237.tif 000003
【００２８】
ここで、Ｄは、位置をずらす幅であり定数である。ここでは、Ｄを格子点間隔の１／１０の幅とする。１／１０は一例であり、Ｄは１／１０に限定されず、格子点間隔の半分より小さい数値であればよい。例えば、アドレスコードｐとして［０，１，２，３，０，１，２，３，０］を与えた場合、格子パターンは図７のようになる。図７は、アドレスコードを与えた格子パターンの一例を示す図である。図７の、黒丸は図６で示した基準パターンの各点の座標（［ｕ（ｋ），ｖ（ｋ）］T）を示し、×は各点をアドレスコードに従って、それぞれ位置をずらした格子点の座標（［ｕ´（ｋ），ｖ´（ｋ）］T）である。この×がアドレスコードを埋め込んだ格子パターンとなる。
【００２９】
本実施の形態では、アドレスコードを格子パターンが含まれる格子領域のスクリーン１内の位置に応じて生成しておくことで、格子領域内の格子パターンのアドレスコードを解読できれば、当該格子領域のスクリーン１内の位置を知ることができる。なお、格子領域の一例としては、図６、７に領域２００として示したような矩形の領域を用いることができるが、格子領域の形状は図６、７の例に限定されず、どのような形状であってもよい。
【００３０】
印刷データ生成部６３は、スクリーン１に印刷する全格子パターンについて、格子パターン生成部６２が生成した格子パターンを、当該格子パターンに対応する（アドレスコード配置部６１が決定した）格子領域のスクリーン１内の位置に配置し、スクリーン１に対応する印刷データとして出力する。なお、ここでは、スクリーン１に印刷する全格子パターンをまとめて出力するようにしたが、スクリーン１の領域を２つ以上に分割して、分割した領域ごとに、印刷データを出力するようにしてもよい。そして、印刷データに基づいて、スクリーン１への各格子パターン（格子パターンを構成する各点）を印刷する。なお、印刷データ生成部６３が、スクリーン１へ印刷する機能を有している場合は、印刷データ生成部６３は、印刷データを出力するのではなく、印刷データをスクリーン１へ印刷してもよい。以上の処理により、アドレスコードを埋め込んだ格子パターンが印刷されたスクリーン１が生成される。
【００３１】
スクリーン１は、平板上の基材にコーティング等が施された生地を備え、この生地に格子パターンを構成する各点が印刷される。基材としては、布や樹脂シート等どのようなものを用いてもよく、コーティング剤にもどのようなものを用いてもよい。スクリーン１への格子パターンの印刷方法としてはどのような方法を用いてもよいが、例えば、特定の方向の光のみを反射する材質や可視光以外の光（例えば赤外光）を放出または反射する材質等を格子パターンとしてスクリーンに印刷することが考えられる。このような材質を用いることにより、投影した映像を観測する観測者からは格子パターンは見えない。例えば、特定の方向の光のみを反射する材質を用いる場合、撮影装置４の視線方向と一致する方向に光を放出する光源を用い、撮影装置４からは格子パターンが撮影できるように配置する。特定の方向の光のみを反射する材質としては、例えば、再帰性反射材を用いることができる。また、可視光以外の光（例えば赤外光）を放出または反射する材質を格子パターンとして用いる場合、どのような材質を用いてもよいが、格子パターンを構成する材質、それ以外の領域（生地に相当する部分）との間で、撮影装置４において十分な感度の差が得られる波長を適用する。また、再帰性反射材が全面に形成されたものを生地として、格子パターンを構成するマーカー部分以外の領域を別の印刷塗料で塗布し、マーカー部分以外の再帰性反射材を隠す（例：酸化チタンによる塗料で例えば白色に塗布する等）といった方法も考えられる。
【００３２】
図８は、本実施の形態の位置特定処理および映像投影処理の一例を示すフローチャートである。位置特定処理は、位置特定プログラムにより実現される処理であり、映像投影処理は、映像投影プログラムにより実現される処理である。本実施の形態では、図８に示す処理を、例えば、一定時間ごと、またはスクリーン１の移動が検出された場合等に実施する。
【００３３】
図８に示すように、まず、座標算出部２１が撮影装置４からスクリーン１（アドレスコードを埋め込んだ格子パターンが印刷されたスクリーン１）を撮影した画像データを取得する（ステップＳ１）。本実施の形態では、上述したように格子パターンのスクリーン内の位置（すなわち、上記の格子領域のスクリーン内１の位置）により異なるアドレスコードを埋め込み、スクリーン１にこれらの格子パターンを印刷しておく。そして、撮影装置４は、スクリーン１を撮影することにより、これらの格子パターンを含む画像データを取得する。上記のステップＳ１では、座標算出部２１は、この画像データを撮影装置４から取得する。格子パターンのアドレスコードと格子パターンの位置との対応は格子パターンデータ２６として保持される。格子パターンデータ２６としては、パターン生成装置６の格子パターンデータ６４と同一のものを用いる。
【００３４】
次に、格子パターン推定部２２が、画像データを用いて格子点の画像データ中の座標を算出する（ステップＳ２）。具体的には、画像データ中の印刷されている３×３の９点の格子点の座標を求める。ここでは、１組の（９点で構成される）格子パターンについてアドレスコードを推定する例について説明するが、複数の格子パターンについてアドレスコードを推定する場合は、図８のステップＳ２〜ステップＳ５を繰り返す。
【００３５】
次に、格子パターン推定部２２が、画像データ中の複数の（ここでは９点の）格子点の座標に基づいて、この９点の格子パターンのアドレスコードを推定する（ステップＳ３）。具体的には、次のようにアドレスコードを推定する。
【００３６】
画像データ中の格子点の座標を［ｕcam（ｋ），ｖcam（ｋ）］Tとすると、［ｕcam（ｋ），ｖcam（ｋ）］Tは、以下の式（２）に示すように、［ｕ´（ｋ），ｖ´（ｋ）］Tに射影変換行列Ｈ（太字）を適用したものとして観測される。なお、ｓは、スケールを決定するための変数である。
【００３７】
【数２】
2015142237.tif 000004
【００３８】
このとき、［ｕcam（ｋ），ｖcam（ｋ）］Tと［ｕ´（ｋ），ｖ´（ｋ）］Tの組が４組以上あれば、射影変換行列Ｈ（太字）を推定することができる。しかしながら、［ｕ´（ｋ），ｖ´（ｋ）］Tは、アドレスコードが既知の場合にしか計算することができない。そこで、［ｕ´（ｋ），ｖ´（ｋ）］Tの代わりに［ｕ（ｋ），ｖ（ｋ）］Tを用いても大きな誤差が生じないと仮定し、［ｕcam（ｋ），ｖcam（ｋ）］Tと［ｕ（ｋ），ｖ（ｋ）］Tの組を用いて最小二乗法により射影変換行列Ｈ（太字）´を推定する。
【００３９】
具体的には、例えば、次のようにして射影変換行列Ｈ（太字）´を推定する。まず、Ｈ（太字）´を以下の式（３）で表されるとする。Ｈ（太字）´の９番目の要素が１であるのは、スケールが任意のためである。式（３）に示すように、射影変換行列Ｈ（太字）´は８パラメータで表すことができる。
【００４０】
【数３】
2015142237.tif 000005
【００４１】
Ｎ（Ｎ≧４）組の［ｕcam（ｋ），ｖcam（ｋ）］Tと［ｕ´（ｋ），ｖ´（ｋ）］Tとの組み合わせ（ｋ＝１，２，…，Ｎ、かつＮ≧４）を用いるとすると、ｋ＝１，２，…，Ｎ（Ｎ≧４）について、上記式(２)、（３）から２Ｎ個の方程式が得られる。これらの方程式を行列の掛け算で表現すると以下の式（４）のようになる。
【００４２】
【数４】
2015142237.tif 000006
【００４３】
このとき、射影変換行列Ｈ（太字）´の８パラメータ（８個の要素）を要素とするｈ（太字）は以下の式（５）で最小二乗法により求めることができる。なお、Ｂ（太字）+は、Ｂ（太字）の擬似逆行列を示す。
【００４４】
【数５】
2015142237.tif 000007
【００４５】
以下の式（５）により求めたｈ（太字）の要素を上記の式（３）のように成形することで射影変換行列Ｈ（太字）´を推定することができる。なお、以上述べた射影変換行列Ｈ（太字）´の推定方法は一例であり、具体的な処理手順は上記の例に限定されない。
【００４６】
この推定された射影変換行列Ｈ（太字）´を用いて以下の式（６）に示すように、［ｕ（ｋ），ｖ（ｋ）］Tからもとの格子パターンの座標［ｕ´´（ｋ），ｖ´´（ｋ）］Tを推定する。
【００４７】
【数６】
2015142237.tif 000008
【００４８】
最後に、［ｕ´´（ｋ），ｖ´´（ｋ）］Tが［ｕ（ｋ），ｖ（ｋ）］Tからどの方向にずれているかを格子点ごとに求めることによりアドレスコードを推定する。すなわち、推定されるアドレスコードｐest（ｋ）は、次の式（７）で与えられる。
【００４９】
【数７】
2015142237.tif 000009
【００５０】
ただし、θ＝tan-1（（ｖ´´（ｋ）−ｖ（ｋ））／（ｕ´´（ｋ）−ｕ（ｋ）））は、［ｕ（ｋ），ｖ（ｋ）］Tからみた［ｕ´´（ｋ），ｖ´´（ｋ）］Tの角度を表す。
【００５１】
以上に述べたアドレスコードの推定方法では、アドレスコードによって射影変換の推定誤差の傾向が異なるため、推定されるアドレスコードｐest（ｋ）の推定において、誤りが生じやすいコード列と誤りにくいコード列が存在する。また、射影変換行列Ｈ（太字）´の推定には、図６の基準パターンを用いる場合、格子パターンを構成する９点の全てを使用する場合に比べ、インデックスｋが５となる格子点（図６の中央の点）を除いた点を用いた方がアドレスコードの推定精度が高くなることをシミュレーションにより確認している。このように、格子パターンにより、推定時に用いる格子点の点数を適切に選択することにより、アドレスコードの推定精度を向上させることができる。
【００５２】
図８の説明に戻り、ステップＳ３の処理の後、格子パターン推定部２２は、アドレスコードの推定が可であったか否かを判断する（ステップＳ４）。アドレスコードの推定が可であった場合（ステップＳ４  Ｙｅｓ）、アドレス決定部２３は、アドレスコードに基づいて格子パターンの基準座標系における位置を確定する（ステップＳ５）。
【００５３】
そして、座標変換行列決定部２４は、格子パターンの基準座標系における位置（座標値）と画像データ中の格子パターンの位置（座標値）とに基づいて、投影する映像を変換するための座標変換行列を算出する（ステップＳ６）。そして、映像データ変換部２５は、保持している映像データを座標変換行列を用いて変換して、変換後の映像データを投影データとして生成して投影装置３へ出力する（ステップＳ７）。その後、投影装置３は、投影データをスクリーン１に投影する。
【００５４】
アドレスコードの推定が不可であった場合（ステップＳ４  Ｎｏ）、座標算出部２１は、画像データ中の座標を求める格子点を変更し（ステップＳ８）、ステップＳ２へ戻る。アドレスコードの推定が不可となるのは、座標を算出した９点の格子点が同一の格子パターンを構成するものではなかった場合である。例えば隣接する２つの格子パターンに属する９点であった場合等、隣接する格子パターンの点が混ざった９点であった場合等である。このような場合には、画像データ中の座標を求める格子点を変更する（例えば、１点ずつずらす等）。
【００５５】
なお、ここでは、格子パターン単位で位置（すなわち射影変換行列）を求める例を説明したが、格子パターン内の各格子点の配置を用いて、格子点単位で位置（すなわち射影変換行列）を求めることも可能である。
【００５６】
スクリーン１上にアドレスコードの異なる格子パターンを複数配置することにより、スクリーン１上の複数の位置の検出が可能となる。図９は、スクリーン１上にアドレスコードの異なる格子パターンを配置した例を示す図である。図９の黒丸は、各格子点である。図９では、図６、７を用いて説明した３×３の格子パターンを用いる例を示している。図９中の薄く示した数字は、格子パターンの番号を示している。
【００５７】
また、図９に示した格子パターンの番号は、アドレスコードの推定精度を示すスコアに応じて定めている。上述したように、アドレスコードの推定精度は、アドレスコードを設定した際のアドレスコードの値（基準パターンからのずらし方）に依存する。
【００５８】
以下では、アドレスコードの推定精度が高い、すなわち射影変換にロバストなアドレスコードの選択方法について説明する。射影変換にロバストなアドレスコードは、全てのアドレスコード（４9通り）について、それぞれ射影変換に対するロバスト性の指標となるスコアを求める。ここでは、シミュレーションにより、正対する平面を±８０の範囲で５°ずつＸ軸およびＹ軸回りに（ロールおよびピッチ）回転させた平面に変化するための射影変換を与え、上述した方法によりアドレスコードを推定する。そして、９点のアドレスコードの全てが正解した場合にスコアを１加算する。したがって、スコアの上限は、Ｘ軸およびＹ軸回りの全ての角度で、アドレスコードが全て正解した場合に対応する、３３×３３＝１０８９である。
【００５９】
このようにしてアドレスコードごとにスコアを求め、スコアの高い順に３×３の格子パターンを走査線上に並べて格子パターンを生成する。図９では、格子パターンの番号が、当該格子パターンに対応するスコアを示している。このように、図９では、スコアの高い順に格子パターンを並べている。図９では、スコアの高い順に格子パターンを並べる例を示したが、スクリーン１上の配置はこれに限定されない。ただし、スクリーン１の端等の歪みが大きくなることが予想される場所には、スコアの高い格子パターンを配置すること望ましい。
【００６０】
図１０〜図１３は、図９に示した配置の格子パターンをカメラにより実際に撮影した画像の例を示している。図１０〜図１３は、それぞれ異なる角度で撮影している。図１０，１１，１２，１３に示した画像を用いて、図１０では１０番、図１１では３８番、図１２では２１番、図１３では１６番の格子パターンのアドレスコードをそれぞれシミュレーションで推定した。シミュレーションの結果、いずれの場合も、正しくアドレスコードが推定できた。
【００６１】
以上の処理により、移動する立体とともにスクリーン１が時間の経過に伴い移動または形状変化する、または移動するとともに形状変換する場合にも、高速に任意のスクリーン１上の位置（スクリーン上の基準座標系に対する射影変換）を推定することができる。
【００６２】
なお、ここでは、アドレスコードを埋め込むパターンの一例として３×３の正方格子パターンを用いる例を説明したが、ｎ×ｍ（ｎ≠ｍ）の点の長方形のパターンであってもよい。また、ここでは、基準パターンとして、縦方向、および横方向の各点の間隔が等間隔となる例を説明したが、縦方向、横方向の一方または両方が等間隔でなくてもよい。さらに、基準パターンが正方形や長方形の矩形ではなく、円であったり、多角形であったりしてもよく、５点以上で構成されるパターンであれば形状に制約はない。ただし、位置算出時の誤差を低減するには、基準パターン内の各点は基準パターン内でなるべく偏らないよう配置されることが望ましい。また、格子パターン同士が重なるようにしても、本実施の形態の位置特定方法により位置の特定を実施することができる。
【００６３】
上述したアドレスコードを埋め込んだ格子パターンを用いることで、撮影されたカメラ画像上の位置・２次元座標の回転角度・３次元平面の位置・３次元平面の傾きを推定することができる。これらの情報は、プロジェクタ・カメラシステムにおいて、投影画像の幾何補正のために利用される情報である。一方で，これらの情報を用いることで，アドレスコードを埋め込んだ格子パターンをＡＲ（Augmented  Reality，拡張現実）マーカーとして利用することも可能である。ＡＲは、カメラで撮影した画像をディスプレイに表示する際に、カメラ画像に情報を付加して表示する技術である。例えば、画像上に文字情報を付加したり、現実には存在しない物体をＣＧ（Computer  Graphics）モデルで付加したりする。このＡＲでは、しばしば、ＡＲマーカーを補助的に使用する。例えば、Hiroマーカーが有名である。ＡＲマーカーを、紙や布，平板などに印刷しておき、それをカメラで撮影し、ＡＲマーカーの位置や傾きに合わせてＣＧモデルの位置や傾きを決定することで、現実には存在しない仮想情報（ＣＧモデルなど）を違和感なくカメラ画像に合成することができる。
【００６４】
アドレスコードを埋め込んだ格子パターンは、カメラ画像から、カメラ画像上の位置・２次元座標の回転角度・３次元平面の位置・３次元平面の傾きを推定することができるため、ＣＧモデルなどの付加情報を合成する位置・姿勢の決定に利用できる。また、格子パターンが印刷された面（平面やゆるやかな曲面）の形状をカメラから推定することができるため、現実には印刷されていない仮想情報（画像や模様，文字など）があたかもその平面に印刷されているかのように画像に合成するための情報を付加することも可能である。すなわち、仮想情報（ＣＧモデルや平面の画像や模様，文字など）をカメラ画像に合成するための情報に基づいてアドレスコードを生成することにより、格子パターンをＡＲマーカーとして用いることができる。格子パターンを実装する方法としては印刷に限定されず、例えば、格子パターンの点となる物質をスクリーン１にスプレー等で塗布する方法であってもよく、どのような方法であってもよい。
【００６５】
アドレスコードを埋め込んだ格子パターンでは、アドレスコードによって印刷面上の絶対座標を定義することができるため、アドレスコードごとに異なる情報を付加することが可能である。このとき、カメラの移動に伴い、あるアドレスコードが一時的に見えなくなったことで、そのアドレスコードに対応する情報が画像上に付加できなくなったとしても、再度そのアドレスコードがカメラから見えた際には、そのアドレスコードに対応する情報を再び表示することができる。
【００６６】
一般に、これまでに使用されているＡＲマーカーを用いてマーカーごとに異なる情報を付加したい場合、多くの種類のＡＲマーカーが必要になる。これに対し、アドレスコードを埋め込んだ格子パターンをＡＲマーカーとして用いると、アドレスコードを変えることで、容易に多様な情報を付加することが可能である。
【００６７】
これまでに使用されているＡＲマーカーは、ロバストに位置・姿勢を求めるために、Hiroマーカーのように、四角形の枠内に固有のコードや模様をもつものが使用されていた。これに対して、アドレスコードを埋め込んだ格子パターンは、点の座標で情報を表現できるため、印刷されるＡＲマーカーを目立たなくすることができる。また、印刷の際に、特定の方向の光のみを反射する材質や可視光以外の光（例えば赤外光）を放出または反射する材質等を格子パターンとしてスクリーンに印刷することが考えられる。このような材質を用いることにより、観測者からは格子パターンは見えないＡＲマーカーを実現することができる。
【産業上の利用可能性】
【００６８】
以上のように、本発明にかかる位置特定装置、映像処理装置、パターン生成装置、スクリーン、スクリーンシステムおよび位置特定方法は、映像を投影するスクリーンシステムに有用であり、特に、スクリーンが移動するシステムに適している。
【符号の説明】
【００６９】
１  スクリーン、２  映像処理装置、３  投影装置、４  撮影装置、５  立体、６  パターン生成装置、２１  座標算出部、２２  格子パターン推定部、２３  アドレス決定部、２４  座標変換行列決定部、２５  映像データ変換部、２６  格子パターンデータ、２７  映像データ、６１  アドレスコード配置部、６２  格子パターン生成部、６３  印刷データ生成部、１０１  制御部、１０２  入力部、１０３  記憶部、１０４  表示部、１０５  通信部、１０６  システムバス。
【図１】
2015142237.tif 000010
【図２】
2015142237.tif 000011
【図３】
2015142237.tif 000012
【図４】
2015142237.tif 000013
【図５】
2015142237.tif 000014
【図６】
2015142237.tif 000015
【図７】
2015142237.tif 000016
【図８】
2015142237.tif 000017
【図９】
2015142237.tif 000018
【図１０】
2015142237.tif 000019
【図１１】
2015142237.tif 000020
【図１２】
2015142237.tif 000021
【図１３】
2015142237.tif 000022