(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0011】
以下、図面を参照して、本発明の実施形態に係る可視光通信システムを説明する。
【0012】
図1は、可視光通信システムの構成を示す図である。
図1に示すように、可視光通信システム1は、サーバ100と、マーカー200−1〜200−4(以下、マーカー200−1〜200−4をまとめて、適宜「マーカー200」と称する)と、撮像装置としての携帯端末300と、を含んで構成される。サーバ100とマーカー200とにより可視光通信制御システムが構成される。
【0013】
サーバ100は、通信ネットワーク500を介してマーカー200との間で通信を行い、マーカー200を制御する。マーカー200は、サーバ100の制御に従って、各種の情報に対応して変調された光を発する。本実施形態では、マーカー200−1〜200−4は、
図1に示すように、時計回りに、マーカー200−1、マーカー200−2、マーカー200−3、マーカー200−4の順に配置される。携帯端末300は、タブレット型パーソナルコンピュータ、携帯電話機、スマートフォン、ノート型パーソナルコンピュータ等の持ち運びが可能な端末である。携帯端末300はユーザ400によって所持される。携帯端末300は、マーカー200が配置されている領域を撮像するとともに、マーカー200が発した光を受け、その発光態様に応じて、撮像により得られた画像に立体画像を合成して表示する。
【0014】
図2は、サーバ100の構成を示す図である。
図2に示すように、サーバ100は、制御部102、メモリ104、操作部106、表示部107及び有線通信部108を含む。
【0015】
制御部102は、例えばCPU(Central Processing Unit)によって構成される。制御部102は、メモリ104に記憶されたプログラム(例えば、後述する
図5に示すサーバ100の動作を実現するためのプログラム)に従ってソフトウェア処理を実行することにより、サーバ100が具備する各種機能を制御するために、マーカー制御部112を有する。マーカー制御部112は、マーカー200が発する光の輝度や色相を制御する。
【0016】
メモリ104は、例えばRAM(Random Access Memory)やROM(Read Only Memory)である。メモリ104は、サーバ100における制御等に用いられる各種情報(プログラム等)を記憶する。有線通信部108は、例えばLAN(Local Area Network)カードである。有線通信部108は、通信ネットワーク500を介してマーカー200との間で通信を行う。
【0017】
操作部106は、テンキーやファンクションキー等によって構成され、ユーザの操作内容を入力するために用いられるインタフェースである。表示部107は、例えば、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、EL(Electroluminescence)ディスプレイ等によって構成される。表示部107は、制御部102から出力された画像信号に従って画像を表示する。
【0018】
図3は、マーカー200の構成を示す図である。
図3に示すように、マーカー200は、制御部202、メモリ204、有線通信部207、符号化・変調部210、駆動部212及びLED(Light Emitting Diode)214を含む。
【0019】
制御部202は、例えばCPUによって構成される。制御部202は、メモリ204に記憶されたプログラムに従ってソフトウェア処理を実行することにより、マーカー200が具備する各種機能を制御する。メモリ204は、例えばRAMやROMである。メモリ204は、マーカー200における制御等に用いられる各種情報(プログラム等)を記憶する。有線通信部207は、例えばLANカードである。有線通信部207は、通信ネットワーク500を介してサーバ100との間で通信を行う。
【0020】
符号化・変調部210は、制御部202から出力されたデータをビットデータ列に符号化する。更に、符号化・変調部210は、ビットデータ列に基づくデジタル変調を行う。駆動部212は、符号化・変調部210から出力される信号に対応し、LED214が発する光の輝度や色相を時間的に変化させるための駆動信号を生成する。LED214は、駆動部212から出力される駆動信号に応じて、時間的に輝度や色相が変化する光を発する。
【0021】
図4は、携帯端末300の構成を示す図である。
図4に示す携帯端末300は、制御部302、メモリ304、操作部306、表示部307、無線通信部308、アンテナ310、レンズ312、撮像部314、画像処理部316、GPS(Global Positioning System)受信機322、方位センサ324、傾斜センサ326及び加速度センサ328を含む。
【0022】
制御部302は、例えばCPUによって構成される。制御部302は、メモリ304に記憶されたプログラム(例えば、後述する
図10、
図12、
図13及び
図16に示す携帯端末300の動作を実現するためのプログラム)に従ってソフトウェア処理を実行し、携帯端末300が具備する各種機能を実現するために、マーカー検出部332、規則性取得部334、情報取得部336及び出力制御部338を有する。
【0023】
マーカー検出部332は、後述する画像処理部316からのフレーム内のマーカー200の位置を検出する。規則性取得部334は、マーカー200の発光態様に応じた規則性を取得する。本実施形態において、規則性は、マーカー200−1〜200−4の配置を特定可能とし、これらマーカー200−1〜200−4の各々を識別可能とするとともに、立体画像の出力方向を特定可能とするためのものである。情報取得部336は、マーカー200の発光態様に基づいて立体画像のデータを取得する。出力制御部338は、規則性に基づいてマーカー200に対応する情報である立体画像の表示位置を特定するとともに、その表示位置に立体画像を表示する制御を行う。メモリ304は、例えばRAMやROMである。メモリ304は、携帯端末300における制御等に用いられる各種情報(プログラム等)を記憶する。
【0024】
操作部306は、テンキーやファンクションキー等によって構成され、ユーザの操作内容を入力するために用いられるインタフェースである。表示部307は、例えば、LCD、PDP、ELディスプレイ等によって構成される。表示部307は、制御部302から出力された画像信号に従って画像(例えば、後述するスルー画像)を表示する。
【0025】
無線通信部308は、例えば無線周波数(RF)回路やベースバンド(BB)回路等を用いて構成される。無線通信部308は、アンテナ310を介して、無線信号の送信及び受信を行う。また、無線通信部308は、送信信号の符号化及び変調と、受信信号の復調及び復号とを行う。
【0026】
レンズ312は、ズームレンズ等により構成される。レンズ312は、操作部306からのズーム制御操作、及び、制御部302による合焦制御により移動する。レンズ312の移動によって撮像部314が撮像する撮像画角や光学像が制御される。
【0027】
撮像部314は、受光面315に規則的に二次元配列された複数の受光素子により構成される。受光素子は、例えば、CCD(Charge Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)等の撮像デバイスである。撮像部314は、レンズ312を介して入光された光学像を、制御部302からの制御信号に基づいて所定範囲の撮像画角で撮像(受光)し、その撮像画角内の画像信号をデジタルデータに変換してフレームを生成する。また、撮像部314は、撮像とフレームの生成とを時間的に連続して行い、連続するフレームを画像処理部316に出力する。
【0028】
画像処理部316は、制御部302からの制御信号に基づいて、撮像部314から出力されたフレーム(デジタルデータ)について、表示部307にスルー画像として表示させるべく、画質や画像サイズを調整して制御部302へ出力する。また、画像処理部316は、操作部306からの記録指示操作に基づく制御信号が入力されると、記録指示された時点の撮像部314における撮像画角内、あるいは、表示部307に表示される表示範囲内の光学像を、例えば、JPEG(Joint Photographic Experts Group)等の圧縮符号化方式にて符号化、ファイル化する機能を有する。
【0029】
GPS受信機322は、GPS衛星からの信号を受信し、当該信号に基づいて、携帯端末300の位置(緯度及び経度)を測定する。方位センサ324は、地磁気の変化等に基づいて、撮像部314による撮影方向の方位を検出する。傾斜センサ326は、携帯端末300の傾斜を測定する。加速度センサ328は、携帯端末300の加速度を測定する。
【0030】
次に、可視光通信システム1の動作を説明する。
図5は、可視光通信システム1内のサーバ100のマーカー発光制御の動作の一例を示すフローチャートである。
【0031】
サーバ100の制御部102内のマーカー制御部112は、マーカー200の発光パターンを取得する(ステップS101)。発光パターンは、マーカー200−1〜200−4毎に設けられており、輝度、色相、これら輝度及び色相で発光させる時間を時系列で示す。発光パターンの情報は、例えばメモリ104に記憶されている。マーカー制御部112は、メモリ104に記憶されている発光パターンの情報を読み出す。
【0032】
図6及び
図7は、発光パターンの一例を示す図である。なお、
図6及び
図7に示す発光パターンでは、マーカー200−1〜マーカー200−4による発光タイミングは同期がとられている。
【0033】
図6に示す発光パターンでは、マーカー200−1は、ヘッダとして消灯(Bk)し、次に、データとして赤(R)、緑(G)、青(B)の何れかの発光を4回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。マーカー200−2は、パリティとして赤、緑、青の何れかの発光を行い、次に、ヘッダとして消灯し、その後、データとして赤、緑、青の何れかの発光を4回繰り返す。マーカー200−2は、データとして赤、緑、青の何れかの発光を行い、次に、パリティとして赤、緑、青の何れかの発光を行い、次に、ヘッダとして消灯し、その後、データとして赤、緑、青の何れかの発光を3回繰り返す。マーカー200−3及び200−4は、データとして赤、緑、青の何れかの発光を2回繰り返し、次に、パリティとして赤、緑、青の何れかの発光を行い、次に、ヘッダとして消灯し、その後、データとして赤、緑、青の何れかの発光を2回繰り返す。
【0034】
図7に示す発光パターンでは、マーカー200−1は、ヘッダとして消灯し、次に、データとしてシアン(C)、マゼンダ(M)、イエロー(Y)の何れかの発光を4回繰り返し、その後、パリティとしてシアン、マゼンダ、イエローの何れかの発光を行う。マーカー200−2〜200−4は、ヘッダとして消灯(Bk)し、次に、データとして赤、緑、青の何れかの発光を4回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。
【0035】
次に、マーカー制御部112は、発光パターンに応じて、マーカー200−1〜200−4の発光を制御する(ステップS102)。具体的には、マーカー制御部112は、マーカー200−1〜200−4毎に、発光パターンに応じたタイミングで、その発光パターンに応じた輝度及び色相の情報を有線通信部108へ出力するとともに、送信先のマーカー200に対応するIP(Internet protocol)アドレス及びMAC(Media Access Control)アドレス等を有線通信部108へ出力する。有線通信部108は、マーカー200に対応するIPアドレス及びMACアドレス等を宛先として、輝度及び色相の情報を送信する。
【0036】
マーカー200内の有線通信部207は、マーカー200に対応するIPアドレス及びMACアドレス等を宛先とする輝度及び色相の情報を受信し、制御部202へ出力する。制御部202は、輝度及び色相の情報を符号化・変調部210へ出力する。符号化・変調部210は、制御部202から出力されたタグIDに対する符号化してビットデータ列を生成するとともに、ビットデータ列に基づくデジタル変調を行う。駆動部212は、符号化・変調部210から出力される信号に対応し、LED214が発する光の輝度を時間的に変化させるための駆動信号を生成する。LED214は、駆動部212から出力される駆動信号に応じて、時間的に輝度及び色相が変化する光を発する。
【0037】
図8は、携帯端末300によるマーカー特定及び画像表示処理の動作の一例を示すフローチャートである。
図8に示すフローチャートは、マーカー200が
図6及び
図7に示す発光パターン、マーカー200−1の輝度が他のマーカー200−2〜200−4よりも低い発光パターンの何れかに応じた発光を行う場合の動作を示す。
【0038】
携帯端末300の制御部302内のマーカー検出部332は、複数(ここでは4つ)のマーカー200からの光を受光したか否かを判定する(ステップS201)。具体的には、マーカー検出部332は、複数のフレームのそれぞれにおける同一座標の輝度を判別する。判別の結果、撮像画角内の所定の座標における輝度が、あるフレームでは第1の所定値以上であり、他のフレームでは第2の所定値以下となるというように大きく変化する場合には、当該所定の座標は、マーカー200からの光を受光することにより生じる点滅箇所であると見なされる。点滅箇所が存在する場合には、マーカー検出部332は、その点滅箇所に1つのマーカー200が存在すると判断する。
【0039】
複数のマーカー200からの光が受光されていない場合(ステップS201:NO)、一連の動作が終了する。一方、複数のマーカー200からの光が受光された場合(ステップS201;YES)、規則性取得部334は、ヘッダタイミングが他と異なるマーカー200が存在するか否かを判定する(ステップS202)。
図6に示す発光パターンの場合、マーカー200−1は、他のマーカー200−2〜200−4とはヘッダのタイミング、換言すれば、消灯のタイミングが異なる。また、マーカー200−2は、他のマーカー200−1、マーカー200−3及び200−4とはヘッダのタイミング、換言すれば、消灯のタイミングが異なる。従って、マーカー200−1〜200−4が
図6に示す発光パターンで発光を行う場合には、規則性取得部334は、ヘッダタイミングが他と異なるマーカー200が存在すると判定する。
【0040】
ヘッダタイミングが他と異なるマーカー200が存在する場合(ステップS202;YES)、規則性取得部334は、最初に単独でヘッダタイミングとなったマーカー200(ここではマーカー200−1)からの光に対応する信号を基準信号に設定する(ステップS203)。ステップS203の処理により、マーカー200−1が基準マーカーとして識別される。次に、規則性取得部334は、2番目に単独でヘッダタイミングとなったマーカー200(ここではマーカー200−2)からの光に対応する信号を、マーカー200−1〜200−4を識別するための回転方向信号に設定する(ステップS204)。ステップS204の処理により、基準マーカーであるマーカー200−1から時計回りでの配置順に、マーカー200−2が第2のマーカー、マーカー200−3が第3のマーカー、マーカー200−4が第4のマーカーとして識別される。
【0041】
一方、ヘッダタイミングが他と異なるマーカー200が存在しない場合(ステップS202;NO)、規則性取得部334は、色相が他と異なるマーカー200が存在するか否かを判定する(ステップS205)。
図7に示す発光パターンの場合、マーカー200−1は、シアン、マゼンダ、イエローの何れかの光を発しており、赤、緑、青の何れかの光を発する他のマーカー200−2〜200−4とは色相が異なる。従って、マーカー200−1〜200−4が
図7に示す発光パターンで発光を行う場合には、規則性取得部334は、色相が他と異なるマーカー200が存在すると判定する。
【0042】
色相が他と異なるマーカー200(ここではマーカー200−1)が存在する場合(ステップS205;YES)、規則性取得部334は、その色相が他と異なるマーカー200−1からの光に対応する信号を基準信号に設定する(ステップS206)。ステップS206の処理により、マーカー200−1が基準マーカーとして識別される。
【0043】
一方、色相が他と異なるマーカー200が存在しない場合(ステップS207;NO)、規則性取得部334は、輝度が他と異なるマーカー200が存在するか否かを判定する(ステップS207)。マーカー200−1の輝度が他のマーカー200−2〜200−4よりも低い発光パターンの何れかに応じた発光を行う場合、には、規則性取得部334は、輝度が他と異なるマーカー200が存在すると判定する。
【0044】
輝度が他と異なるマーカー200が存在しない場合(ステップS207;NO)、一連の動作が終了する。一方、輝度が他と異なるマーカー200(ここではマーカー200−1)が存在する場合(ステップS207;YES)、規則性取得部334は、その輝度が他と異なるマーカー200−1からの光に対応する信号を基準信号に設定する(ステップS208)。ステップS208の処理により、マーカー200−1が基準マーカーとして識別される。
【0045】
ステップS206又はステップS208において基準信号が設定された後、次に、規則性取得部334は、マーカー200−1〜200−4を識別するための回転方向を時計回りに設定する(ステップS209)。ステップS209の処理により、マーカー200−1から時計回りでの配置順に、マーカー200−2が第2のマーカー、マーカー200−3が第3のマーカー、マーカー200−4が第4のマーカーとして識別される。
【0046】
ステップS204において回転方向信号が設定された後、又は、ステップS209において回転方向が時計回りに設定された後、出力制御部338は、フレーム上において全てのマーカー200−1〜200−4の位置に基づいて、これらマーカー200−1〜200−4の重心位置を決定する(ステップS210)。
【0047】
次に、情報取得部336は、全てのマーカー200−1〜200−4からの光に対応する信号をまとめてデータを生成する(ステップS211)。具体的には、情報取得部336は、マーカー200−1〜200−4毎に、フレーム上における当該マーカー200の位置の発光態様と対応する発光パターンとに基づいて情報を復元し、その情報内のデータ部分を抽出する。更に、情報取得部336は、マーカー200−1〜200−4毎に抽出したデータ部分をまとめてデータを生成する。なお、本実施形態においては、マーカー200−1〜200−4の全てが復元すべき情報を発光パターンとして送信した場合を説明するが、これらのマーカー200の全てが復元すべき情報を発光パターンとして送信(発光)する必要はなく、任意の1つ〜3つのマーカー200が復元すべき情報を送信し、他のマーカー200は単調な色点灯、点滅で発光させてもよい。すなわち、これらのマーカー200と立体表示すべき画像との位置関係を特定できればよい。
【0048】
次に、情報取得部336及び出力制御部338は、立体画像の方向を設定し、フレーム上の重心位置に立体画像を表示させる制御を行う(ステップS212)。具体的には、情報取得部336は、ステップS211において取得されたデータにより一意に特定される立体画像のデータを取得する。立体画像のデータは、メモリ204に記憶されていてもよく、ステップS211において取得されたデータそのものであってもよく、外部から取得されたデータであってもよい。出力制御部338は、フレーム上における基準マーカーであるマーカー200−1、第2のマーカーであるマーカー200−2、第3のマーカーであるマーカー200−3、第4のマーカーであるマーカー200−4の位置関係に応じて、立体画像の方向を設定する。例えば、フレーム上においてマーカー200−1〜200−4のうち、基準マーカーであるマーカー200−1が最も下に配置されている場合には、立体画像の方向を、正面から見た方向に設定する。また、フレーム上においてマーカー200−1〜200−4のうち、第2のマーカーであるマーカー200−2が最も下に配置されている場合には、立体画像の方向を左から見た方向に設定する。また、フレーム上においてマーカー200−1〜200−4のうち、第3のマーカーであるマーカー200−3が最も下に配置されている場合には、立体画像の方向を背面から見た方向に設定する。また、フレーム上においてマーカー200−1〜200−4のうち、第4のマーカーであるマーカー200−4が最も下に配置されている場合には、立体画像の方向を右から見た方向に設定する。更に、出力制御部338は、設定した方向に対応する立体画像のデータをメモリ304から読み出し、表示部307に表示されたフレーム上における重心位置に、その立体画像を表示させる制御を行う。
【0049】
図9は、携帯端末300による立体画像表示の一例を示す図である。
図9に示すように、携帯端末300の表示部307には、マーカー200−1〜200−4を含んだ領域が撮像されることにより、マーカー200−1に対応する画像201−1、マーカー200−2に対応する画像201−2、マーカー200−3に対応する画像201−3、及び、マーカー200−4に対応する画像201−4を含んだフレーム画像が表示される。更に、フレーム画像における重心位置250に、立体画像600が表示される。
【0050】
このように本実施形態では、マーカー200−1〜200−4は、サーバ100の制御に従って発光パターンに応じた発光を行う。一方、携帯端末300は、マーカー200−1〜200−4の発光態様に基づいて、マーカー200−1〜200−4の配置と識別とを行う。更に、携帯端末300は、配置に応じたフレーム上の重心位置に、識別に応じた方向の立体画像を表示させる。これにより、マーカー200−1〜200−4を含んだ領域の撮影方向に応じて、立体画像の方向を異ならせることが可能となり、可視光通信において、現実の撮影方向に沿った自然な画像合成出力が可能となる。
【0051】
なお、本発明は、上記実施形態の説明及び図面によって限定されるものではなく、上記実施形態及び図面に適宜変更等を加えることは可能である。
【0052】
(第1の他の実施形態)
図10及び
図11は、発光パターンの一例を示す図である。なお、
図10及び
図11に示す発光パターンでは、マーカー200−1〜マーカー200−4による発光タイミングは同期がとられている。
【0053】
図10に示す発光パターンでは、マーカー200−1は、ヘッダとして消灯(Bk)し、次に、識別子として赤(R)の発光を行い、次に、データとして赤、緑(G)、青(B)の何れかの発光を4回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。マーカー200−2〜200−4は、ヘッダとして消灯し、次に、識別子として緑の発光を行い、次に、データとして赤、緑、青の何れかの発光を4回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。
【0054】
図11に示す発光パターンでは、マーカー200−1は、ヘッダとして消灯し、次に、識別子として赤の発光を行い、次に、データとして赤、緑、青の何れかの発光を4回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。マーカー200−2は、ヘッダとして消灯し、次に、識別子として緑の発光を行い、次に、データとして赤、緑、青の何れかの発光を4回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。マーカー200−3及び200−4は、ヘッダとして消灯し、次に、識別子として青の発光を行い、次に、データとして赤、緑、青の何れかの発光を4回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。
【0055】
図12は、携帯端末300によるマーカー特定及び画像表示処理の動作の一例を示すフローチャートである。
図12に示すフローチャートは、マーカー200が
図10及び
図11に示す発光パターンの何れかに応じた発光を行う場合の動作を示す。
【0056】
携帯端末300の制御部302内のマーカー検出部332は、複数(ここでは4つ)のマーカー200からの光を受光したか否かを判定する(ステップS301)。具体的な動作は、
図8のステップS201と同様である。
【0057】
複数のマーカー200からの光が受光されていない場合(ステップS301:NO)、一連の動作が終了する。一方、複数のマーカー200からの光が受光された場合(ステップS301;YES)、規則性取得部334は、識別子に対応する光の色相に基づいて、基準信号に設定する(ステップS302)。
図10及び
図11に示す発光パターンの場合、マーカー200−1のみが、ヘッダとしての消灯の後、識別子として赤の光を発する。この場合、規則性取得部334は、マーカー200−1を他のマーカー200−2〜200−4と区別することができ、マーカー200−1からの光に対応する信号を基準信号に設定する。ステップS302の処理により、マーカー200−1が基準マーカーとして識別される。
【0058】
次に、規則性取得部334は、識別子に対応する光の色相に基づいて、マーカー200−1〜200−4を識別するための回転方向を決定する(ステップS303)。
図10に示す発光パターンの場合、マーカー200−2〜200−4の発光態様は同一であり、区別することができない。この場合には、規則性取得部334は、回転方向を時計回りに設定する。一方、
図11に示す発光パターンの場合、マーカー200−2とマーカー200−3及び200−4とは、識別子に対応する光の色相が異なっている。この場合、規則性取得部334は、マーカー200−2とマーカー200−3及び200−4とを区別することができ、回転方向を、マーカー200−1からマーカー200−2に向かう方向、すなわち、時計回りに設定する。ステップS303の処理により、マーカー200−1から時計回りでの配置順に、マーカー200−2が第2のマーカー、マーカー200−3が第3のマーカー、マーカー200−4が第4のマーカーとして識別される。
【0059】
その後、
図8のステップS210〜ステップS212と同様の動作が行われる。すなわち、出力制御部338は、フレーム上において全てのマーカー200−1〜200−4の位置に基づいて、これらマーカー200−1〜200−4の重心位置を決定する(ステップS304)。次に、情報取得部336は、全てのマーカー200−1〜200−4からの光に対応する信号をまとめてデータを生成する(ステップS305)。次に、情報取得部336及び出力制御部338は、立体画像の方向を設定し、フレーム上の重心位置に立体画像を表示させる制御を行う(ステップS306)。
【0060】
(第2の他の実施形態)
図13は、携帯端末300によるマーカー特定及び画像表示処理の動作の一例を示すフローチャートである。
図13に示すフローチャートは、マーカー200の発光パターンが不定である場合の動作を示す。
【0061】
携帯端末300の制御部302内のマーカー検出部332は、複数(ここでは4つ)のマーカー200からの光を受光したか否かを判定する(ステップS401)。具体的な動作は、
図8のステップS201と同様である。
【0062】
複数のマーカー200からの光が受光されていない場合(ステップS401:NO)、一連の動作が終了する。一方、複数のマーカー200からの光が受光された場合(ステップS401;YES)、規則性取得部334は、傾斜センサ326により測定される携帯端末300の傾斜が所定値以下であるか否かを判定する(ステップS402)。
【0063】
携帯端末300の傾斜が所定値以下である場合(ステップS402;YES)、規則性取得部334は、加速度センサ328により測定される携帯端末300の加速度に基づいて重力方向を検出する(ステップS403)。次に、規則性取得部334は、フレームと携帯端末300の傾斜と重力方向とに基づいて、マーカー200−1〜200−4のうち、地面から最も遠いマーカー200からの光に対応する信号を基準信号に設定する(ステップS404)。例えば、携帯端末300の傾斜と重力方向とによって特定される受光面315の垂直方向が水平方向である場合、フレーム内のマーカー200の画像のうち、最も上の画像に対応するマーカ200からの光に対応する信号を基準信号に設定する。ステップS404の処理により、マーカー200−1〜200−4の何れかが基準マーカーとして識別される。
【0064】
一方、携帯端末300の傾斜が所定値を超える場合(ステップS402;NO)、規則性取得部334は、方位センサ324により検出される方位に基づいて、北の方向を検出する(ステップS405)。次に、規則性取得部334は、北の方向に基づいて、マーカー200−1〜200−4のうち、最も北に位置するマーカー200からの光に対応する信号を基準信号に設定する(ステップS406)。ステップS406の処理により、マーカー200−1〜200−4の何れかが基準マーカーとして識別される。
【0065】
ステップS404又はステップS406の後、規則性取得部334は、マーカー200−1〜200−4を識別するための回転方向を時計回りに設定する(ステップS407)。
【0066】
その後、
図8のステップS210〜ステップS212と同様の動作が行われる。すなわち、出力制御部338は、フレーム上において全てのマーカー200−1〜200−4の位置に基づいて、これらマーカー200−1〜200−4の重心位置を決定する(ステップS408)。次に、情報取得部336は、全てのマーカー200−1〜200−4からの光に対応する信号をまとめてデータを生成する(ステップS409)。次に、情報取得部336及び出力制御部338は、立体画像の方向を設定し、フレーム上の重心位置に立体画像を表示させる制御を行う(ステップS410)。
【0067】
(第3の他の実施形態)
本実施形態では、
図14に示すように、サーバ700の筐体に当該サーバ700の稼働状況を示すマーカー200−1〜200−4が配置された場合を例に説明する。
図14(A)では、マーカー200−1〜200−4が直線状に配置され、
図14(B)では、マーカー200−1〜200−4が非直線状に配置されている。
【0068】
図15は、発光パターンの一例を示す図である。なお、
図15に示す発光パターンでは、マーカー200−1〜マーカー200−4による発光タイミングは同期がとられている。
【0069】
図15に示す発光パターンでは、マーカー200−1は、ヘッダとして消灯(Bk)し、次に、識別子として赤(R)の発光を行い、次に、マーカー200の数として赤、緑(G)、青(B)の何れかの発光を2回繰り返し、次に、マーカー200の配置(直線状であるか非直線状であるか)として赤、緑、青の何れかの発光を2回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。マーカー200−2は、ヘッダとして消灯し、次に、識別子として緑の発光を行い、次に、データとして赤、緑、青の何れかの発光を4回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。マーカー200−3及び200−4は、ヘッダとして消灯し、次に、識別子として青の発光を行い、次に、データとして赤、緑、青の何れかの発光を4回繰り返し、その後、パリティとして赤、緑、青の何れかの発光を行う。
【0070】
図16は、携帯端末300によるマーカー特定及び画像表示処理の動作の一例を示すフローチャートである。
図16に示すフローチャートは、マーカー200が
図15に示す発光パターンの何れかに応じた発光を行う場合の動作を示す。
【0071】
携帯端末300の制御部302内のマーカー検出部332は、複数(ここでは4つ)のマーカー200からの光を受光したか否かを判定する(ステップS501)。具体的な動作は、
図8のステップS201と同様である。
【0072】
複数のマーカー200からの光が受光されていない場合(ステップS501:NO)、一連の動作が終了する。一方、複数のマーカー200からの光が受光された場合(ステップS501;YES)、規則性取得部334は、識別子に対応する光の色相に基づいて、基準信号に設定する(ステップS502)。
図11に示す発光パターンの場合、マーカー200−1のみが、ヘッダとしての消灯の後、識別子として赤の光を発する。この場合、規則性取得部334は、マーカー200−1を他のマーカー200−2〜200−4と区別することができ、マーカー200−1からの光に対応する信号を基準信号に設定する。ステップS502の処理により、マーカー200−1が基準マーカーとして識別される。
【0073】
次に、規則性取得部334は、ステップS501における受光数が基準信号内のマーカー数と一致するか否かを判定する(ステップS503)。具体的には、情報取得部336は、フレーム上における基準マーカーであるマーカー200−1の位置の発光態様と対応する発光パターンとに基づいて情報を復元し、その情報内のマーカー数部分を抽出する。更に、情報取得部336は、ステップS501における受光数が抽出したマーカー数と一致するか否かを判定する。
【0074】
受光数が基準信号内のマーカー数と一致しない場合(ステップS503;NO)、一連の動作が終了する。一方、受光数が基準信号内のマーカー数と一致する場合(ステップS503;YES)、基準信号内のマーカー配置が直線であるか否かを判定する(ステップS504)。具体的には、情報取得部336は、フレーム上における基準マーカーであるマーカー200−1の位置の発光態様と対応する発光パターンとに基づいて情報を復元し、その情報内のマーカー配置部分を抽出する。更に、情報取得部336は、抽出したマーカー配置が直線であるか否かを判定する。
【0075】
基準信号内のマーカー配置が直線でない場合(ステップS504;NO)、規則性取得部334は、識別子に対応する光の色相に基づいて、マーカー200−1〜200−4を識別するための回転方向を決定する(ステップS505)。
図15に示す発光パターンの場合、マーカー200−2とマーカー200−3及び200−4とは、識別子に対応する光の色相が異なっている。この場合、規則性取得部334は、マーカー200−2とマーカー200−3及び200−4とを区別することができ、回転方向を、マーカー200−1からマーカー200−2に向かう方向、すなわち、時計回りに設定する。ステップS505の処理により、マーカー200−1から時計回りでの配置順に、マーカー200−2が第2のマーカー、マーカー200−3が第3のマーカー、マーカー200−4が第4のマーカーとして識別される。
【0076】
次に、出力制御部338は、フレーム上において全てのマーカー200−1〜200−4の位置に基づいて、これらマーカー200−1〜200−4の重心位置を決定する(ステップS506)。具体的な動作は、
図8のステップS210と同様である。
【0077】
一方、基準信号内のマーカー配置が直線である場合(ステップS504;YES)、規則性取得部334は、基準マーカーであるマーカー200−1に近い順に順序を設定する(ステップS507)。
図14(A)に示す配置の場合、規則性取得部334は、マーカー200−2、マーカー200−3、マーカー200−4の順に順序を設定する。ステップS507の処理により、マーカー200−1から時計回りでの配置順に、マーカー200−2が第2のマーカー、マーカー200−3が第3のマーカー、マーカー200−4が第4のマーカーとして識別される。
【0078】
ステップS506又はステップS507の後、情報取得部336は、全てのマーカー200−1〜200−4からの光に対応する信号をまとめてデータを生成する(ステップS508)。具体的な動作は、
図8のステップS211と同様である。
【0079】
次に、出力制御部338は、立体画像を表示させる制御を行う(ステップS509)。ここで、ステップS506において重心位置が決定された場合には、出力制御部338は、
図8のステップS212と同様、情報取得部336及び出力制御部338は、立体画像の方向を設定し、フレーム上の重心位置に立体画像を表示させる制御を行う。一方、マーカー200−1〜200−4の配置が直線状であり、重心位置が決定されなかった場合には、情報取得部336は、利対画像のデータを取得し、出力制御部338は、フレーム上の所定位置に予め定められた方向で立体画像を表示させる制御を行う。
【0080】
上述した第1〜第3の他の実施形態の何れにおいても、携帯端末300は、マーカー200−1〜200−4の配置と識別とを行う。更に、携帯端末300は、配置に応じたフレーム上の重心位置に、識別に応じた方向の立体画像を表示させることができる。これにより、マーカー200−1〜200−4を含んだ領域の撮影方向に応じて、立体画像の方向を異ならせることが可能となり、可視光通信において、現実の撮影方向に沿った自然な画像合成出力が可能となる。
【0081】
なお、例えば、コンピュータがプログラムを実行することで、サーバ100、マーカー200及び携帯端末300の機能を実現してもよい。また、マーカー200、携帯端末300及びサーバ100の機能を実現するためのプログラムは、CD−ROM等の記憶媒体に記憶されてもよいし、ネットワークを介してコンピュータにダウンロードされてもよい。
【0082】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0083】
(付記1)
撮像により画像を取得する撮像手段と、
前記撮像手段によって取得された画像から可視光通信用の光を発するマーカーを検出するマーカー検出手段と、
前記マーカー検出手段により前記マーカーが複数検出された場合、これら複数のマーカーの位置関係と出力すべき情報の出力位置の規則性を取得する規則性取得手段と、
前記複数のマーカーの少なくとも1つの発光態様に基づいて所定の情報を取得する情報取得手段と、
前記規則性取得手段によって取得された規則性に基づいて前記所定の情報の出力位置を特定するとともに、前記出力位置に前記情報取得手段によって取得された前記所定の情報を出力する制御を行う出力制御手段と、
を備えることを特徴とする撮像装置。
【0084】
(付記2)
前記規則性は、前記複数のマーカーの配置を特定可能とするとともに、前記複数のマーカーの各々を識別可能とするためのものであることを特徴とする付記1に記載の撮像装置。
【0085】
(付記3)
前記規則性には、前記所定の情報の出力方向を更に特定可能とするためのものであることを特徴とする付記1又は2に記載の撮像装置。
【0086】
(付記4)
前記規則性取得手段は、前記マーカーの発光態様に基づいて、前記複数のマーカーの位置関係と出力すべき情報の出力位置の規則性を取得することを特徴とする付記1乃至3の何れか1つに記載の撮像装置。
【0087】
(付記5)
前記可視光通信は、輝度変化を伴うものであり、
前記規則性取得手段は、前記発光態様としてマーカーが発する光の消灯タイミングに基づいて、前記規則性を取得することを特徴とする付記4に記載の撮像装置。
【0088】
(付記6)
前記可視光通信は、輝度変化を伴うものであり、
前記規則性取得手段は、前記発光態様として前記複数のマーカーのうちの1つが発する光の輝度が他のマーカーに対応する光の輝度とは異なることに基づいて、前記規則性を取得することを特徴とする付記4に記載の撮像装置。
【0089】
(付記7)
前記可視光通信は、色相変化を伴うものであり、
前記規則性取得手段は、前記発光態様として前記複数のマーカーのうちの1つが発する光の色相が他のマーカーに対応する光の色相とは異なることに基づいて、前記規則性を取得することを特徴とする付記4に記載の撮像装置。
【0090】
(付記8)
自身の配置に関する情報を取得する配置情報取得手段を更に備え、
前記規則性取得手段は、前記複数のマーカーの発光態様に加え、前記配置情報取得手段によって取得された前記配置に関する情報に基づいて、前記規則性を取得することを特徴とする付記4乃至7の何れか1つに記載の撮像装置。
【0091】
(付記9)
可視光通信用の光を発する複数のマーカーと、
前記複数のマーカーの発光態様に応じた規則性に基づいて、前記複数のマーカーの発光態様を変化させるマーカー制御手段と、
を備えることを特徴とする可視光通信制御システム。
【0092】
(付記10)
撮像により画像を取得する撮像ステップと、
前記撮像ステップにて取得された画像から可視光通信用の光を発するマーカーを検出するマーカー検出ステップと、
前記マーカー検出ステップにて前記マーカーが複数検出された場合、これら複数のマーカーの位置関係と出力すべき情報の出力位置の規則性を取得する規則性取得ステップと、
前記複数のマーカーの少なくとも1つの発光態様に基づいて所定の情報を取得する情報取得ステップと、
前記規則性取得ステップにて取得された規則性に基づいて前記所定の情報の出力位置を特定するとともに、前記出力位置に前記情報取得ステップにて取得された前記所定の情報を出力する制御を行う出力制御ステップと、
を含むことを特徴とする出力制御方法。
【0093】
(付記11)
複数のマーカーにより可視光通信用の光を発する発光ステップと、
前記複数のマーカーの発光態様に応じた規則性に基づいて、前記複数のマーカーの発光態様を変化させるマーカー制御ステップと、
を含むことを特徴とする可視光通信制御方法。
【0094】
(付記12)
撮像装置を、
撮像により画像を取得する撮像手段、
前記撮像手段によって取得された画像から可視光通信用の光を発するマーカーを検出するマーカー検出手段、
前記マーカー検出手段により前記マーカーが複数検出された場合、これら複数のマーカーの位置関係と出力すべき情報の出力位置の規則性を取得する規則性取得手段、
前記複数のマーカーの少なくとも1つの発光態様に基づいて所定の情報を取得する情報取得手段、
前記規則性取得手段によって取得された規則性に基づいて前記所定の情報の出力位置を特定するとともに、前記出力位置に前記情報取得手段によって取得された前記所定の情報を出力する制御を行う出力制御手段、
として機能させることを特徴とするプログラム。
【0095】
(付記13)
可視光通信制御システムを、
可視光通信用の光を発する複数のマーカー、
前記複数のマーカーの発光態様に応じた規則性に基づいて、前記複数のマーカーの発光態様を変化させるマーカー制御手段、
として機能させることを特徴とするプログラム。