(57)【要約】【課題】より低コストで店舗等の部屋の内観を変更すること。【解決手段】画像処理装置は、仮想スクリーン上に描かれる画像を取得する画像取得手段と、前記仮想スクリーンと所定の位置関係にある部屋の壁に設けられた窓の位置および形状を特定する窓情報を取得する窓情報取得手段と、前記窓情報により特定される窓と前記窓の枠を通して見える位置に画像を形成する画像形成装置とを対応させる対応情報を取得する対応情報取得手段と、前記部屋の中に存在する特定点の位置を特定する特定点情報を取得する特定点情報取得手段と、前記画像取得手段により取得された画像に対して前記特定点情報により特定される特定点を光源としたときの前記窓における射影を示す画像を抽出する画像抽出手段と、前記画像抽出手段により抽出された画像を、前記対応情報により特定された、前記窓に対応する画像形成装置に出力する出力手段とを有する。【選択図】図２
2010087547.tif 000002
【特許請求の範囲】
【請求項１】
あらかじめ決められた大きさおよび形状を有する仮想スクリーン上に描かれる画像を取得する画像取得手段と、
前記仮想スクリーンと所定の位置関係にある部屋の壁に設けられた窓の位置および形状を特定する窓情報を取得する窓情報取得手段と、
前記窓情報により特定される窓と前記窓の枠を通して見える位置に画像を形成する画像形成装置とを対応させる対応情報を取得する対応情報取得手段と、
前記部屋の中に存在する特定点の位置を特定する特定点情報を取得する特定点情報取得手段と、
前記画像取得手段により取得された画像に対して前記特定点情報により特定される特定点を光源としたときの前記窓における射影を示す画像を抽出する画像抽出手段と、
前記画像抽出手段により抽出された画像を、前記対応情報により特定された、前記窓に対応する画像形成装置に出力する出力手段と
を有する画像処理装置。
【請求項２】
前記特定点情報取得手段は、前記部屋の中に設けられたセンサから前記特定点情報を取得する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像抽出手段は、前記特定点情報により示される特定点の位置が変化すると、前記射影を示す画像を抽出する
ことを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記特定点情報が、前記特定点を基準とする向きを示す情報を含み、
前記画像抽出手段は、前記窓の位置が前記特定点および前記向きと所定の条件を満たす場合に、前記射影を示す画像を抽出する
ことを特徴とする請求項１−３のいずれかの項に記載の画像処理装置。
【請求項５】
前記仮想スクリーン上に描かれる画像を生成する画像生成手段を有し、
前記画像取得手段は、前記画像生成手段により生成された画像を取得する
ことを特徴とする請求項１−４のいずれかの項に記載の画像処理装置。
【請求項６】
ネットワークを介してサーバと通信する通信手段を有し、
前記画像取得手段は、前記通信手段を介して前記サーバから前記仮想スクリーン上に描かれる画像を取得する
ことを特徴とする請求項１−４のいずれかの項に記載の画像処理装置。
【請求項７】
前記通信手段は、前記窓情報を前記サーバに送信し、前記仮想スクリーン上に描かれる画像のうち前記窓情報により特定される窓の位置を基準とする所定の範囲内の画像を、前記仮想スクリーン上に描かれる画像として受信する
ことを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記窓情報が、複数の窓に係る情報を含み、
画像抽出手段は、窓を単位として射影を示す画像を抽出し、
前記対応情報が、複数の画像形成装置と前記複数の窓とを一対一に対応させる情報を含み、
前記出力手段は、前記画像抽出手段が窓を単位として抽出した画像を、前記複数の画像形成装置のうち前記対応情報により前記窓に対応することが示される画像形成装置に出力する
ことを特徴とする請求項１−７のいずれかの項に記載の画像処理装置。
【請求項９】
画像形成装置に画像を出力する出力手段を有する画像処理装置に、
あらかじめ決められた大きさおよび形状を有する仮想スクリーン上に描かれる画像を取得するステップと、
前記仮想スクリーンと所定の位置関係にある部屋の壁に設けられた窓の位置および形状を特定する窓情報を取得するステップと、
前記窓情報により特定される窓と前記窓の枠を通して見える位置に画像を形成する画像形成装置とを対応させる対応情報を取得するステップと、
前記部屋の中に存在する特定点の位置を特定する特定点情報を取得するステップと、
前記取得された画像に対して前記特定点情報により特定される特定点を光源としたときの前記窓における射影を示す画像を抽出するステップと、
前記出力手段が、前記抽出された画像を、前記対応情報により特定された、前記窓に対応する画像形成装置に出力するステップと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置およびプログラムに関する。
【背景技術】
【０００２】
レストランのような飲食店やパチンコ店のような遊技場において、内装の改装は新たな顧客を吸引する効果がある。しかし一方で改装にはコストがかかるという問題があった。そこで、改装する代わりに壁にかける絵を変更することが行われている。
ここで、例えば特許文献１には、３次元仮想空間内で任意の画像を抽出するシステムが、特許文献２には、スクリーンに全体画像を投影する際に複数の部分画像に分けて投影する技術が開示されている。
【０００３】
【特許文献１】特開平９−２１２６８６号公報
【特許文献２】特開２００４−３４９９８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１および２に記載された技術によっても、店舗等の部屋の内観を変更することはできなかった。
これに対し本発明は、より低コストで店舗等の部屋の内観を変更する技術を提供する。
【課題を解決するための手段】
【０００５】
本発明は、あらかじめ決められた大きさおよび形状を有する仮想スクリーン上に描かれる画像を取得する画像取得手段と、前記仮想スクリーンと所定の位置関係にある部屋の壁に設けられた窓の位置および形状を特定する窓情報を取得する窓情報取得手段と、前記窓情報により特定される窓と前記窓の枠を通して見える位置に画像を形成する画像形成装置とを対応させる対応情報を取得する対応情報取得手段と、前記部屋の中に存在する特定点の位置を特定する特定点情報を取得する特定点情報取得手段と、前記画像取得手段により取得された画像に対して前記特定点情報により特定される特定点を光源としたときの前記窓における射影を示す画像を抽出する画像抽出手段と、前記画像抽出手段により抽出された画像を、前記対応情報により特定された、前記窓に対応する画像形成装置に出力する出力手段とを有する画像処理装置を提供する。
この画像処理装置によれば、部屋の窓の内観が変更される。
【０００６】
好ましい態様において、前記特定点情報取得手段は、前記部屋の中に設けられたセンサから前記特定点情報を取得してもよい。
この画像処理装置によれば、センサにより取得された特定点情報により特定点が特定される。
【０００７】
別の好ましい態様において、前記画像抽出手段は、前記特定点情報により示される特定点の位置が変化すると、前記射影を示す画像を抽出してもよい。
この画像処理装置によれば、特定点が変化した場合でも、その変化に追従した画像が抽出される。
【０００８】
さらに別の好ましい態様において、前記特定点情報が、前記特定点を基準とする向きを示す情報を含み、前記画像抽出手段は、前記窓の位置が前記特定点および前記向きと所定の条件を満たす場合に、前記射影を示す画像を抽出してもよい。
この画像処理装置によれば、画像抽出の処理量が軽減される。
【０００９】
さらに別の態様において、前記画像処理装置は、前記仮想スクリーン上に描かれる画像を生成する画像生成手段を有し、前記画像取得手段は、前記画像生成手段により生成された画像を取得してもよい。
この画像処理装置によれば、他の装置とのデータ通信量が低減される。
【００１０】
さらに別の好ましい態様において、前記画像処理装置は、ネットワークを介してサーバと通信する通信手段を有し、前記画像取得手段は、前記通信手段を介して前記サーバから前記仮想スクリーン上に描かれる画像を取得してもよい。
この画像処理装置によれば、自装置の処理負荷が軽減される。
【００１１】
さらに別の好ましい態様において、前記通信手段は、前記窓情報を前記サーバに送信し、前記仮想スクリーン上に描かれる画像のうち前記窓情報により特定される窓の位置を基準とする所定の範囲内の画像を、前記仮想スクリーン上に描かれる画像として受信してもよい。
この画像処理装置によれば、サーバ装置から受信するデータ量が低減される。
【００１２】
さらに別の好ましい態様において、前記窓情報が、複数の窓に係る情報を含み、画像抽出手段は、窓を単位として射影を示す画像を抽出し、前記対応情報が、複数の画像形成装置と前記複数の窓とを一対一に対応させる情報を含み、前記出力手段は、前記画像抽出手段が窓を単位として抽出した画像を、前記複数の画像形成装置のうち前記対応情報により前記窓に対応することが示される画像形成装置に出力してもよい。
この画像処理装置によれば、複数の窓がある部屋でも、複数の窓で連携した画像が形成される。
【００１３】
また、本発明は、画像形成装置に画像を出力する出力手段を有する画像処理装置に、あらかじめ決められた大きさおよび形状を有する仮想スクリーン上に描かれる画像を取得するステップと、前記仮想スクリーンと所定の位置関係にある部屋の壁に設けられた窓の位置および形状を特定する窓情報を取得するステップと、前記窓情報により特定される窓と前記窓の枠を通して見える位置に画像を形成する画像形成装置とを対応させる対応情報を取得するステップと、前記部屋の中に存在する特定点の位置を特定する特定点情報を取得するステップと、前記取得された画像に対して前記特定点情報により特定される特定点を光源としたときの前記窓における射影を示す画像を抽出するステップと、前記出力手段が、前記抽出された画像を、前記対応情報により特定された、前記窓に対応する画像形成装置に出力するステップとを実行させるためのプログラムを提供する。
このプログラムによれば、部屋の窓の内観が変更される。
【発明を実施するための最良の形態】
【００１４】
１．構成
図１は、本発明の一実施形態に係る画像形成システム１の構成を示すブロック図である。画像形成システム１は、いわゆるデジタルサイネージシステムである。画像形成システム１は、店舗等の部屋の中（室内）に画像を形成する。画像形成システム１は、複数の画像形成装置４０（画像形成装置４０−１、画像形成装置４０−２、画像形成装置４０−３）と、複数のスクリーン５０（スクリーン５０−１、スクリーン５０−２、スクリーン５０−３）と、複数のセンサ６０（センサ６０−１、センサ６０−２、センサ６０−３）と、情報処理装置１０と、サーバ２０とを有する。
【００１５】
画像形成装置４０およびスクリーン５０は、室内に設置されている。画像形成装置４０とスクリーン５０とは、一対一に対応している。情報処理装置１０とサーバ２０とは、ネットワーク３０（例えばインターネット）を介して接続されている。この例で、部屋の壁に設けられた窓がスクリーン５０として用いられる。
【００１６】
１−１．情報処理装置１０
図２は、情報処理装置１０の機能構成を示す図である。情報処理装置１０は、複数の画像形成装置４０を制御する、画像処理装置の一例である。画像取得手段１１は、あらかじめ決められた大きさおよび形状を有する仮想スクリーン上に描かれる画像（以下、「全体画像」という）を取得する。窓情報取得手段１２は、窓情報を取得する。「窓情報」とは、仮想スクリーンと所定の位置関係にある部屋の壁に設けられた窓の位置および形状を特定する情報である。対応情報取得手段１３は、対応情報を取得する。「対応情報」とは、窓と画像形成装置４０とを対応させる情報である。画像形成装置４０は、窓の枠を通して見える位置に画像を形成する。「窓の枠を通して見える位置に画像を形成する」とは、部屋の内部から窓を見たときに、画像形成装置４０により形成される画像の少なくとも一部が、窓の枠の中に形成されることをいう。特定点情報取得手段１４は、特定点情報を取得する。「特定点情報」とは、その室内に存在する特定点の位置を特定する情報である。「特定点」とは、所定の対象物を代表する点（この例では、店舗内における客の目の位置（より詳細には、２つの目の中点の位置））である。画像抽出手段１５は、画像取得手段１１により取得された画像に対して特定点情報により特定される特定点を光源としたときの窓における射影を示す画像を抽出する。以下、この射影を示す画像を「射影画像」という。出力手段１６は、画像抽出手段１５により抽出された画像を、対応情報により窓に対応することが示される画像形成装置４０に出力する。
【００１７】
この例で、特定点情報取得手段１４は、室内に設けられたセンサ６０から特定点情報を取得する。画像抽出手段１５は、特定点情報により示される特定点の位置が変化すると、射影画像を抽出する。特定点情報は、特定点を基準とする向きを示す情報を含んでおり、画像抽出手段１５は、窓の位置が特定点およびその向きと所定の条件を満たす場合に、射影画像を抽出する。
【００１８】
さらにこの例で、画像生成手段１７は、仮想スクリーン上に描かれる画像を生成する。画像抽出手段１５は、前記画像生成手段により生成された画像を取得する。記憶手段１８は、システムの動作に用いられるプログラムやデータを記憶する。通信手段１９は、ネットワーク３０を介した通信を行う。
【００１９】
図３は、情報処理装置１０のハードウェア構成を示す図である。この例で、情報処理装置１０はいわゆるパーソナルコンピュータである。ＣＰＵ（Central Processing Unit）１１０は、情報処理装置１０の構成要素を制御する制御装置である。ＲＯＭ（Read Only Memory）１２０は、情報処理装置１０の起動に必要なデータおよびプログラムを記憶する記憶装置である。ＲＡＭ（Random Access Memory）１３０は、ＣＰＵ１１０がプログラムを実行する際の作業領域として機能する記憶装置である。Ｉ／Ｆ（Interface）１４０は、種々の入出力装置や記憶装置との間でデータおよび制御信号の入出力をするインターフェースである。ＨＤＤ（Hard Disk Drive）１５０は、各種プログラムおよびデータを記憶する記憶装置である。キーボード・マウス１６０は、ユーザが情報処理装置１０に対して指示入力を行うのに用いられる入力装置である。ディスプレイ１７０は、データの内容あるいは処理の状況などを表示する出力装置である。ネットワークＩＦ１８０は、ネットワーク３０を介して接続された他の装置との間でデータの送受信を行うためのインターフェースである。ＵＳＢ（Universal Serial Bus）−ＩＦ１８５は、ＵＳＢ規格に従ったインターフェースである。バス１９０は、データの伝送路である。ＣＰＵ１１０、ＲＯＭ１２０、ＲＡＭ１３０、およびＩ／Ｆ１４０は、バス１９０を介して接続されている。
【００２０】
情報処理装置１０は、ＵＳＢ−ＩＦ１８５を介して画像形成装置４０と接続されている。情報処理装置１０は、ＵＳＢ−ＩＦ１８５を介して、画像形成装置４０にデータおよび制御信号を出力する。
【００２１】
ＨＤＤ１５０は、情報処理装置１０を制御する制御プログラムを記憶している。ＣＰＵ１１０が制御プログラムを実行することにより、図２に示される機能が情報処理装置１０に実装される。この例で、制御プログラムを実行しているＣＰＵ１１０は、画像取得手段１１、対応情報取得手段１３、対応情報取得手段１３、特定点情報取得手段１４、画像抽出手段１５、および画像生成手段１７の一例である。制御プログラムは複数のプログラムモジュールまたはサブルーチンを有し、各プログラムモジュールまたはサブルーチンが、各機能構成要素に対応する。ＵＳＢ−ＩＦ１８５は、出力手段１６の一例である。ＲＯＭ１２０、ＲＡＭ１３０、およびＨＤＤ１５０は、記憶手段１８の一例である。ネットワークＩＦ１８０は、通信手段１９の一例である。
【００２２】
１−２．サーバ２０
図４は、サーバ２０の機能構成を示す図である。記憶手段２１は、全体画像の生成に用いられるデータを記憶している。「全体画像の生成に用いられるデータ」とは、全体画像そのもの、あるいは、全体画像の素材を示すデータ（以下、「素材データ」という）である。「全体画像の素材」は、背景画像および前景画像を含む。「前景画像」は複数のオブジェクトを含む。例えば、背景画像は海の中の風景（海底、岩、海水など）を示す画像であり、前景画像は、海の中で動いているもの（魚、海藻など）を示す画像である。「画像」は静止画および動画を含む概念である。選択手段２２は、あらかじめ決められたアルゴリズムに従って、選択手段２２に記憶されているデータの中から、情報処理装置１０に出力するデータを選択する。このアルゴリズムは、例えば、情報処理装置１０のリクエストに応じてデータを選択するものである。あるいは、このアルゴリズムは、情報処理装置１０の属性（情報処理装置１０が設置されている場所、設置されている部屋の大きさまたは用途、情報処理装置１０が設置されている場所の時刻など）に応じてデータを選択するものである。出力手段２３は、選択手段２２により選択されたデータを情報処理装置１０に出力する。
【００２３】
図５は、サーバ２０のハードウェア構成を示す図である。ＣＰＵ２１０は、サーバ２０の構成要素を制御する制御装置である。ＲＯＭ２２０は、サーバ２０の起動に必要なデータおよびプログラムを記憶する記憶装置である。ＲＡＭ２３０は、ＣＰＵ２１０がプログラムを実行する際の作業領域として機能する記憶装置である。Ｉ／Ｆ２４０は、種々の入出力装置や記憶装置との間でデータおよび制御信号の入出力をするインターフェースである。ＨＤＤ２５０は、各種プログラムおよびデータを記憶する記憶装置である。キーボード・マウス２６０は、ユーザがサーバ２０に対して指示入力を行うのに用いられる入力装置である。ディスプレイ２７０は、データの内容あるいは処理の状況などを表示する出力装置である。ネットワークＩＦ２８０は、ネネットワーク３０を介して接続された他の装置との間でデータの送受信を行うためのインターフェースである。バス２９０は、データの伝送路である。ＣＰＵ２１０、ＲＯＭ２２０、ＲＡＭ２３０、およびＩ／Ｆ２４０は、バス２９０を介して接続されている。
【００２４】
ＨＤＤ２５０は、サーバ２０を制御する制御プログラムを記憶している。ＣＰＵ２１０が制御プログラムを実行することにより、図４に示される機能がサーバ２０に実装される。この例で、制御プログラムを実行しているＣＰＵ２１０は、記憶手段２１、選択手段２２、および出力手段２３としての機能を有する。制御プログラムは複数のプログラムモジュールまたはサブルーチンを有し、各プログラムモジュールまたはサブルーチンが、各機能構成要素に対応する。
【００２５】
１−３．画像形成装置４０
画像形成装置４０は、スクリーン５０（より具体的には、窓枠を通して見える位置）に画像を形成する装置である。この例で、画像形成装置４０は、スクリーン５０に映像を投射するプロジェクタである。画像形成装置４０はＵＳＢ−ＩＦ１８５を介して情報処理装置１０に接続されている。情報処理装置１０は、形成する画像を示すデータを、ＵＳＢ−ＩＦ１８５を介して画像形成装置４０に供給する。
【００２６】
図６は、画像形成装置４０とスクリーン５０との位置関係を例示する図である。この例で、部屋は壁７１により仕切られている。壁７１の内部にはさらに壁７２が設けられている。壁７２には、窓枠７３が設けられている。壁７１は窓枠７３の外側に位置し、スクリーン５０として機能する。画像形成装置４０は、壁７１と壁７２の間に設置されている。このような配置により、室内にいるユーザから画像形成装置４０が見えない（あるいは見えにくい）状態になり、室内の美観が損なわれない。
【００２７】
１−４．センサ６０
センサ６０は、室内の状態をセンシングする装置である。この例で、センサ６０はカメラすなわち画像センサである。センサ６０は、室内の所定の位置に複数設置されている。センサ６０はＵＳＢ−ＩＦ１８５を介して情報処理装置１０に接続されている。情報処理装置１０は、カメラが取得した画像を、ＵＳＢ−ＩＦ１８５を介して取得する。
【００２８】
２．動作
続いて、画像形成システム１の動作を説明する。ここでは、部屋がレストランの店舗であり、店舗内の窓に映像を投影する例について説明する。また、この例で仮想スクリーンは半球のドーム状の形状を有している。この半球は、中心が店舗の床の重心と一致するように設定されている。
【００２９】
図７は、画像形成システム１のうち、特に情報処理装置１０の動作を示すフローチャートである。図７のフローは、例えばユーザが情報処理装置１０に対し制御プログラムの実行を指示したことを契機として開始される。ＣＰＵ１１０が制御プログラムを実行することにより、以下の処理が行われる。
【００３０】
ステップＳ１００において、ＣＰＵ１１０は、全体画像を取得する。この例で、制御プログラムは、全体画像を生成するモジュールを有しており、ＣＰＵ１１０は、このモジュールを実行した結果得られるデータを全体画像として取得する。
【００３１】
全体画像を生成するモジュールの機能は以下のとおりである。ＣＰＵ１１０は、サーバ２０から、全体画像の素材データを取得する。素材データは、背景画像のデータおよび前景画像のデータを含んでいる。いま、背景画像として海中の風景の画像が、前景画像として魚の画像が用いられる例について説明する。
【００３２】
ＨＤＤ１５０は、仮想スクリーンの位置および大きさを特定するパラメータ（例えば、球の中心の座標および球の半径）を記憶している。ＣＰＵ１１０は、このパラメータをＨＤＤ１５０から読み出す。ＣＰＵ１１０は、読み出したパラメータにより特定される仮想スクリーンに相当する記憶領域を、ＲＡＭ１３０上に確保する。この記憶領域は、背景用記憶領域、前景用記憶領域および合成用記憶領域を含んでいる。ＣＰＵ１１０は、背景用記憶領域に背景画像のデータを書き込み、前景用記憶領域に前景画像のデータを書き込む。この例で、前景画像は動画である。また、前景画像は、複数のオブジェクト（例えば、複数の魚の画像）を含む。前景画像はオブジェクトを単位として更新される。すなわち、複数の魚が１匹づつ異なる動きをするように、前景画像が更新される。オブジェクトの変化のさせ方（例えば魚の動き）は、あらかじめプログラムされている。ＣＰＵ１１０は、所定の時間間隔で、前景画像を書き替える。これにより、例えば魚が泳いで移動する様子が表現される。ＣＰＵ１１０は、前景画像と背景画像を合成した画像のデータを合成用記憶領域に書き込む。こうして、全体画像が生成される。
【００３３】
ステップＳ１１０において、ＣＰＵ１１０は、窓情報を取得する。この例で、窓情報はＨＤＤ１５０にあらかじめ記憶されており、ＣＰＵ１１０は、ＨＤＤ１５０から窓情報を読み出すことにより、窓情報を取得する。
【００３４】
図８は、窓情報を例示する図である。この例で、窓情報は、窓を特定する識別子（窓ＩＤ）と、窓枠の頂点の座標とを含む。
【００３５】
再び図７を参照する。ステップＳ１２０において、ＣＰＵ１１０は、対応情報を取得する。この例で、対応情報はＨＤＤ１５０にあらかじめ記憶されており、ＣＰＵ１１０は、ＨＤＤ１５０から対応情報を読み出すことにより、対応情報を取得する。
【００３６】
図９は、対応情報を例示する図である。この例で、対応情報は、窓ＩＤと、その窓に画像を形成する画像形成装置４０の識別子（画像形成装置ＩＤ）とを含む。すなわち、対応情報は、複数の画像形成装置４０と複数の窓とを一対一に対応させる情報を含む。
【００３７】
再び図７を参照する。ステップＳ１３０において、ＣＰＵ１１０は、特定点情報を取得する。この例で、特定点情報として、カメラ（センサ６０）により取得された画像を示す画像データが用いられる。また、この例で、制御プログラムは、画像データを用いて特定点の座標を算出するモジュールを有しており、ＣＰＵ１１０は、このモジュールを実行した結果から特定点の座標を取得する。
【００３８】
図１０は、特定点の座標を算出する処理を示すフローチャートである。ステップＳ１３１において、ＣＰＵ１１０は、カメラから画像データを取得する。画像データの取得は、所定のタイミングで（例えば、所定の時間間隔、あるいは所定のイベントをトリガとして）行われる。ＣＰＵ１１０は、カメラを特定する識別子（カメラＩＤ）とともに、得られた画像データをＲＡＭ１３０に記憶する。カメラはアングルが固定されており、店内の所定の座席に座っている客を撮影できる位置に設置されている。その座席に客が座っていれば、客の顔の画像が取得される。その座席が空席であれば、得られた画像に人間は写っていない。
【００３９】
ステップＳ１３２において、ＣＰＵ１１０は、取得した画像に対して顔認識処理を行う。顔認識処理には、公知のアルゴリズムが用いられる。座席に客が座っていた場合、顔認識処理により、その客の目の位置が特定される。ステップＳ１３３において、ＣＰＵ１１０は、顔認識処理の結果を用いて、店舗内における客の目の位置（より詳細には、２つの目の中点の位置）の座標を算出する。ＨＤＤ１５０は、カメラＩＤとカメラにより撮影される領域の座標（例えば、カメラのフレームの端点または中心の座標）を対応させる情報をあらかじめ記憶している。ＣＰＵ１１０は、ＨＤＤ１５０からこの情報を読み出し、顔認識処理の結果とあわせて、店舗内における客の目の位置を、特定点の座標として算出する。ＣＰＵ１１０は、算出した特定点の座標を現在の特定点の座標としてＲＡＭ１３０に記憶する。さらに、ＣＰＵ１１０は、１サイクル前に算出した特定点の座標を前回の特定点の座標としてＲＡＭ１３０に記憶する。
【００４０】
ステップＳ１３４において、ＣＰＵ１１０は、顔における目の位置に基づいて、視線の向きを算出する。すなわち、画像データは、目の位置を基準として視線の向きを示す方向ベクトルを算出する。このように画像から視線の向きが算出されるので、画像データは、特定点を基準とする向きを示す情報を含んでいるといえる。ＣＰＵ１１０は、算出した方向ベクトルをＲＡＭ１３０に記憶する。
【００４１】
再び図７を参照する。ステップＳ１４０において、ＣＰＵ１１０は、現在の特定点の位置と前回の特定点の位置の差が所定の範囲（誤差の範囲）を超えたか、すなわち特定点の位置が変化したか判断する。特定点の位置が変化したと判断された場合（Ｓ１４０：ＹＥＳ）、ＣＰＵ１１０は、処理をステップＳ１５０に移行する。特定点の位置が変化していないと判断された場合（Ｓ１４０：ＮＯ）、ＣＰＵ１１０は、処理をステップＳ１３０に移行する。ステップＳ１５０で説明する射影画像の抽出は、所定の時間間隔で繰り返し行われるが、それに加えて特定点が変化したというような特定のイベントが起こったときにも、射影画像の抽出が行われる。
【００４２】
ステップＳ１５０において、ＣＰＵ１１０は、全体画像から射影画像を抽出する。射影画像の抽出は、窓を単位として、すなわち窓毎に行われる。詳細には以下のとおりである。まず、ＣＰＵ１１０は、あらかじめ決められたアルゴリズムに従って、処理対象となる窓（以下「対象窓」という）を特定する。この例で、ＣＰＵ１１０は、まず、特定点および方向ベクトルに対して所定の位置関係を満たす窓、より具体的には、特定点を基準とし、方向ベクトルとなす角度が所定の角度（例えば、人間の視野角に相当する角度）内にある窓を対象窓の候補として特定する。さらに、ＣＰＵ１１０は、対象窓の候補として絞り込んだ窓の中から、特定点を基準とし、方向ベクトルとなす角度が小さい窓から１つずつ順番に対象窓を特定する。ＣＰＵ１１０は、特定点を光源とし、仮想スクリーン上に対象窓を射影したときの射影の頂点の座標を算出する。
【００４３】
図１１は、特定点を光源とし、仮想スクリーン上への対象窓の射影を例示する図である。特定点ＰSから対象窓Ｗの窓枠の頂点の座標を結ぶ直線と仮想スクリーンが交わる点Ｐ1、Ｐ2、Ｐ3、およびＰ4が、射影の頂点の座標である。ＣＰＵ１１０は、仮想スクリーン上において射影により切り取られる画像を、対象窓にマッピングする。マッピングにより得られた画像が、射影画像である。
【００４４】
再び図７を参照する。ステップＳ１６０において、ＣＰＵ１１０は、得られた射影画像を、対象窓に対応する画像形成装置４０に出力する。対象窓に対応する画像形成装置４０は、対応情報により特定される。特に図７には示していないが、前景画像または背景画像が動画である場合に、ステップＳ１３０−１６０の処理は、所定の時間間隔で繰り返し行われる。
【００４５】
図１２は、画像形成システム１により形成される画像を例示する図である。この例で、窓と窓の間には壁がある。仮想スクリーンには海の中を魚が泳いでいる画像が描かれ、窓には客の視点から見た射影画像が形成される。したがって、客から見ると窓にはあたかも自分が海中にいるような画像が形成される。例えば魚が窓と窓の間を泳いでいる途中では壁に隠れて魚の姿が見えなくなるので、店舗の内部によりリアルな画像が提供される。レストランやパチンコ店の改装にはコストと時間がかかるが、画像形成システム１によればコストと時間をかけずに、店の内観を変えることができる。
【００４６】
３．他の実施形態
本発明は上述の実施形態に限定されるものではなく、これ以外の態様でも実施が可能である。以下、変形例をいくつか説明する。以下で説明する変形例のうち２つ以上のものが組み合わせて用いられてもよい。以下において、上述の実施形態と共通する事項については説明を省略し、また、共通する要素には共通の参照符号を用いて説明する。
【００４７】
３−１．変形例１
情報処理装置１０は、全体画像を生成する機能、すなわち画像生成手段１７を有していなくてもよい。この場合、情報処理装置１０は、通信手段１９を介して、サーバ２０から全体画像を取得する。またこの場合、サーバ２０は、全体画像を生成する機能を有する。サーバ２０は、情報処理装置１０に対していわゆるストリーミング配信の技術を用いて、全体画像を送信する。
【００４８】
３−２．変形例２
変形例１の場合において、情報処理装置１０は、全体画像のうち一部のみをサーバ２０から取得してもよい。この場合、まず情報処理装置１０は、窓情報をサーバ２０に送信する。サーバ２０は、受信した窓情報を記憶する。サーバ２０は、全体情報から、窓情報により特定される窓の位置に応じて全体画像の一部を切り出し、切り出した部分を情報処理装置１０に送信する。
【００４９】
窓の位置に応じて全体画像から一部を切り出すアルゴリズムとしては、例えば、窓との距離が所定の範囲内にある部分を切り出すアルゴリズムが採用される。実際に画像形成装置４０により形成されるのは窓の部分の画像だけであるから、窓の近傍の画像だけを送信すれば、ネットワークのトラフィックおよび処理すべきデータ量が削減される。
【００５０】
３−３．変形例３
特定点情報は向きを示す情報を含んでいなくてもよい。あるいは、特定点情報が向きを示す情報を含んでいた場合でも、情報処理装置１０は、向きを示す情報に応じた処理をしなくてもよい。すなわち、図１０のステップＳ１３４の処理は省略されてもよい。この場合、ＣＰＵ１１０は、視線の向きに応じた対象窓の絞り込みを行わなくてもよい。
【００５１】
３−４．変形例４
射影画像の抽出を行うタイミングは、実施形態で説明したものに限定されない。図７のステップＳ１４０の割り込み判定が行わなくてもよい。この場合、射影画像は、所定の時間間隔で定期的に抽出される。
【００５２】
３−５．変形例５
情報処理装置１０に特定点情報を供給するセンサ６０は、実施形態で説明したカメラに限定されない。特定点情報を供給できるものであれば、どのようなセンサが用いられてもよい。例えば、センサ６０としてＲＦＩＤ（Radio Frequency IDentification）リーダが用いられてもよい。この場合、客はＲＦＩＤタグを身に付ける。ＲＦＩＤリーダをレストランのフロアやテーブルに一定の間隔で配置することにより、客の位置を特定することができる。その他、光センサ、温度センサ、タッチセンサ、静電センサなどが用いられてもよい。
【００５３】
また、センサの配置は、特定点の位置を、システムが要求する精度で特定できるものであれば、どのような配置であってもよい。例えば、一つのテーブルを囲むように複数のカメラを配置してもよいし、スクリーン５０の周辺に１台のカメラを配置してもよい。
【００５４】
３−６．変形例６
特定点情報の取得元は、センサ６０に限定されない。特定点情報取得手段１４は、ＲＡＭ１３０等の記憶手段１８から特定点情報を取得してもよい。この場合、店員が特定点情報として客の位置を情報処理装置１０にマニュアルで入力し、情報処理装置１０のＣＰＵ１１０は、入力された特定点情報をＲＡＭ１３０に記憶する。図７のステップＳ１３０において、ＣＰＵ１１０は、ＲＡＭ１３０から特定点情報を読み出すことにより、特定点情報を取得する。別の例で、特定点の位置は、システムの設計上ある位置に固定されていてもよい。この場合、特定点情報は、システムのパラメータとしてＨＤＤ１５０に記憶されている。ＣＰＵ１１０は、ＨＤＤ１５０から特定点情報を読み出すことにより、特定点情報を取得する。
【００５５】
３−７．変形例７
仮想スクリーンは、実施形態で説明したものに限定されない。あらかじめ決められた大きさおよび形状を有し、部屋（窓）との位置関係が規定されているものであれば、どのような仮想スクリーンが用いられてもよい。例えば、仮想スクリーンの形状は半球でなく、球、直方体、多角形、またはこれらの組み合わせなど、どのような形状でもよい。また、図１１では仮想スクリーンが部屋の外側にある例を説明したが、仮想スクリーンはその一部または全部が部屋の中にあってもよい。
【００５６】
３−８．変形例８
画像形成装置４０とスクリーン５０の位置関係は、図６で説明したものに限定されない。店舗の壁が一枚であり、店舗内にある画像形成装置４０から窓に画像を投射する構成としてもよい。あるいは図６の例で、１つのスクリーン５０に対して複数の画像形成装置４０を用いて画像を形成してもよい。例えば、スクリーン５０を上下方向および左右方向にそれぞれ２分割、計４分割し、分割された領域に対し１つの画像形成装置４０が画像を形成する構成としてもよい（すなわち、４分割された場合は４台の画像形成装置４０が用いられる）。この場合、情報処理装置１０は、射影画像を４分割し、分割した画像をそれぞれ対応する画像形成装置４０に出力する。
【００５７】
３−９．変形例９
画像形成装置４０はプロジェクタに限定されない。スクリーン５０に画像を形成できるのであれば、どのような装置であってもよい。また、画像形成装置４０は、スクリーン５０を内蔵していてもよい。例えば、画像形成装置４０は、リアプロジェクションディスプレイ、液晶ディスプレイ、有機ＥＬ（Electro-Luminescence）ディスプレイ、プラズマディスプレイであってもよい。
【００５８】
３−１０．変形例１０
本稿でいう「窓」は、現実および仮想の窓の双方を含む。「現実の窓」とは、物理的な構造体としての窓をいう。この場合、図６のように窓枠とスクリーン５０とが異なる面に形成される構造であってもよいし、スクリーン５０が窓枠と同じ面（すなわち窓枠の中）に形成される構造であってもよい。「仮想の窓」とは、物理的な構造体としての窓ではないスクリーン５０に窓枠も含めた画像を形成したもの、すなわち壁に窓枠も含めた画像を形成したものをいう。
【００５９】
３−１１．変形例１１
窓情報の取得元は、ＨＤＤ１５０に限定されない。窓情報取得手段１２は、情報処理装置１０以外の他の装置から窓情報を取得してもよい。特に、仮想の窓が用いられ、窓の位置が変化する場合に、窓の位置を検出する装置から窓情報を取得してもよい。
【００６０】
３−１２．変形例１２
全体画像、窓情報、対応情報、および特定点情報を取得する順番は図７に示されるものに限定されない。射影画像を抽出する時点で処理に用いられる情報が取得できていれば、これらの情報がどのような順番で取得されてもよい。
【００６１】
３−１３．他の変形例
情報処理装置１０のハードウェア構成は図３で示されるものに限定されない。必要な機能構成を実現できるものであれば、どのようなハードウェア構成を有する装置が用いられてもよい。また、情報処理装置１０の機能構成とハードウェア構成の対応関係は、実施形態で説明したものに限定されない。例えば上述の実施形態では、制御プログラムを実行しているＣＰＵ１１０が、画像取得手段１１、対応情報取得手段１３、対応情報取得手段１３、特定点情報取得手段１４、画像抽出手段１５、および画像生成手段１７としての機能を兼ね備えていたが、これらのうち１つ以上の機能が、ＣＰＵ１１０以外のプロセッサにより実装されてもよい。また、各機能構成要素は、汎用プロセッサとプログラムの協働により実装されてもよいし、ＡＳＩＣ（Application Specific Integrated Circuit）のように特定の機能を有するプロセッサとして実装されてもよい。あるいは、物理的に別体の複数のプロセッサが協働して、これらの要素として機能してもよい。サーバ２０についても同様である。
【００６２】
画像形成装置４０が、情報処理装置１０としての機能を兼ね備えていてもよい。
【００６３】
実施形態では部屋の壁に複数の窓が存在する例について説明したが、窓の数はひとつであってもよい。
【００６４】
上述の実施形態においてＣＰＵ１１０またはＣＰＵ２１０によって実行されるプログラムは、磁気記録媒体（磁気テープ、磁気ディスク（ＨＤＤ（Hard Disk Drive）、ＦＤ（Flexible Disk））など）、光記録媒体（光ディスク（ＣＤ（Compact Disk）、ＤＶＤ（Digital Versatile Disk））など）、光磁気記録媒体、半導体メモリ（フラッシュＲＯＭなど）などのコンピュータ読取り可能な記録媒体に記憶した状態で提供されてもよい。また、このプログラムは、インターネットのようなネットワーク経由でダウンロードされてもよい。
【図面の簡単な説明】
【００６５】
【図１】一実施形態に係る画像形成システム１の構成を示すブロック図である。
【図２】情報処理装置１０の機能構成を示す図である。
【図３】情報処理装置１０のハードウェア構成を示す図である。
【図４】サーバ２０の機能構成を示す図である。
【図５】サーバ２０のハードウェア構成を示す図である。
【図６】画像形成装置４０とスクリーン５０との位置関係を例示する図である。
【図７】情報処理装置１０の動作を示すフローチャートである。
【図８】窓情報を例示する図である。
【図９】対応情報を例示する図である。
【図１０】特定点の座標を算出する処理を示すフローチャートである。
【図１１】仮想スクリーン上への対象窓の射影を例示する図である。
【図１２】画像形成システム１により形成される画像を例示する図である。
【符号の説明】
【００６６】
１…画像形成システム、１０…情報処理装置、１１…画像取得手段、１２…窓情報取得手段、１３…対応情報取得手段、１４…特定点情報取得手段、１５…画像抽出手段、１６…出力手段、１７…画像生成手段、１８…記憶手段、１９…通信手段、２０…サーバ、２１…記憶手段、２２…選択手段、２３…出力手段、３０…ネットワーク、４０…画像形成装置、５０…スクリーン、６０…センサ、７１…壁、７２…壁、７３…窓枠、１１０…ＣＰＵ、１２０…ＲＯＭ、１３０…ＲＡＭ、１４０…Ｉ／Ｆ、１５０…ＨＤＤ、１６０…キーボード・マウス、１７０…ディスプレイ、１８０…ネットワークＩＦ、１８５…ＵＳＢ−ＩＦ、１９０…バス、２１０…ＣＰＵ、２２０…ＲＯＭ、２３０…ＲＡＭ、２４０…Ｉ／Ｆ、２５０…ＨＤＤ、２６０…キーボード・マウス、２７０…ディスプレイ、２８０…ネットワークＩＦ、２９０…バス
【図１】
2010087547.tif 000003
【図２】
2010087547.tif 000004
【図３】
2010087547.tif 000005
【図４】
2010087547.tif 000006
【図５】
2010087547.tif 000007
【図６】
2010087547.tif 000008
【図７】
2010087547.tif 000009
【図８】
2010087547.tif 000010
【図９】
2010087547.tif 000011
【図１０】
2010087547.tif 000012
【図１１】
2010087547.tif 000013
【図１２】
2010087547.tif 000014