説明

情報処理装置及び情報処理システム

【課題】 撮影画像内でID光を受信している画素の位置の検出処理の演算量を削減することで信号処理回路の消費電力を抑制する。
【解決手段】 ID光に重畳された低周波のパイロット信号を検出することでID受信位置を判断する際に、複数の画像フレームに亘った高速フーリエ変換演算を含む評価関数を用いた各画素毎の評価値を閾値と比較することでID受信画素であるか否かを判断する(S4、S5)が、解像度の異なる多階層のビニング画像を作成して(S2)まず低解像度のビニング画像でID受信画素を判断し、その範囲を絞ってより高い解像度のビニング画像でID受信画素を判断する、という処理を繰り返す。これにより、ビニングによる階層化を行わない場合に比べて評価値を算出する対象画素の数が大幅に少なくなり、評価値算出の演算実行回数が削減されるのでそれだけ消費電力を減らせる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、空間光通信を少なくとも一部に利用して、ユーザーの手元にある情報端末により、該情報端末から離れた位置に在る複数の情報機器がそれぞれ持つ所定情報を収集したり各種の情報機器を遠隔制御したりするために利用される情報処理システムと、こうしたシステムにおいてユーザーにより直接的に操作される情報処理装置とに関する。
【背景技術】
【0002】
近年、家庭内にパーソナルコンピュータが浸透しており、また、デジタルTV、DVDレコーダ等の各種のデジタル情報機器も普及している。こうした状況の中で、主としてこうした情報機器を中心とする家庭内でのネットワークの構築が進められようとしている。さらにまた、冷蔵庫、電子レンジといったこれまでいわゆる白物家電と呼ばれていた家電製品も、高機能化に伴い家庭内ネットワークに取り込むことが試みられている。しかしながら、実際上、こうした家庭内ネットワークの広範な普及には種々の課題が存在する。その一つは、ユーザーにとっての操作の簡便性、使い勝手の良さを如何に提供するかという点にあり、操作性の良好なユーザーインターフェイスの開発が急務である。
【0003】
一方、近年の携帯電話の普及は目覚ましく、その多くがデジタルカメラを備え、ストレージメディアを搭載するものも市販されている。また、携帯電話を情報端末として使用するような様々な応用システムも提案されている。こうした状況下で、本発明者らも、非特許文献1に開示されているように、携帯電話のデジタルカメラ機能を利用し、ユーザーから離れた位置にある各種の情報機器を携帯電話の表示画面上で視覚的に確認しながらそうした情報機器の操作を行うためのユーザーインターフェイスとして、「オプトナビ」と呼称する一種の遠隔制御システムを提案している。
【0004】
このシステムにおいては、制御対象である情報機器に設けた発光ダイオード(LED)から、その情報機器に固有のID情報などを光信号として送出する。受光機能を備える携帯電話はこの光信号を受けて情報機器の位置を認識し、その表示画面上に表示させた撮像画像上で遠隔制御可能な情報機器の位置を表示することができる。こうしたシステムを利用することにより、上述したような家庭内ネットワークに含まれる各種機器を簡便に操作することが可能となる。
【0005】
上記「オプトナビ」システムに対応した情報端末(例えば携帯電話)では、光信号を受けるために専用のイメージセンサを使用する。こうしたイメージセンサについて、本発明者らは例えば特願2004−319259号(平成16年11月2日出願)、非特許文献2等で既に提案している。このような専用のCMOSイメージセンサの意図するところは、携帯電話などの小形・軽量の情報端末に搭載するために、通常の画像撮影に加えて、受光した信号光に応じたID情報の読み出しを低消費電力で以て行うことである。そのために、通常の撮像フレームレートでイメージセンサの全画素の信号を読み出す機能に加え、限定された小さな画像範囲に対応する少数の画素信号を高い(少なくとも上記撮像フレームレートよりは高い)レートで読み出すという特徴的な機能を備えている。
【0006】
具体的に言うと、非特許文献2に記載のCMOSイメージセンサでは、QVGA画像(320×240画素の画像)を30fps(フレーム/秒)で繰り返し読み出しながら、5×5画素から成るID画像(ID情報を含む光信号を受けている画素周辺の画像)を最大7個まで1.2kfpsのレートで取得できるようにしている。即ち、高速で読み出すべき画素の範囲をID情報を含む光信号が当たっている部分近傍に限定することで、高速読み出しを行う画素数が少なくて済むため、その分だけ画素読み出しを高速化できるとともに消費電力を抑えることが可能である。
【0007】
上記「オプトナビ」システムやこれに相当するようなシステムにおいては、上述したようなイメージセンサ自体の低消費電力化とともに、撮影画像上でのID光(以下、ID情報を情報として含む光信号を「ID光」と呼ぶ)の受光位置の検出や受信処理に必要な信号処理回路(DSPやマイクロコンピュータなどを含む)の消費電力の低減も重要になってくる。そのためには、撮影画像上で目的とするID光の受光位置を見つけ出すまでの計算量をできるだけ減らすことが必要である。また、計算量が少ないことはID光の受光位置を見い出すまでの時間短縮をもたらすから、情報端末での操作の応答性の向上等も期待できる。従来、こうした目的のために計算量を減らして、より効率的に撮影画像上のID光の受光位置を見い出すような技術は提供されていない。
【0008】
【非特許文献1】香川景一郎ほか5名、「情報家電のビジュアルマルチリモコン:光ナビゲーションの提案」、プロシーディング・オブ・オプティクス・ジャパン・2004(Proc. of Optics Japan 2004)、2004年11月、pp.112-113
【非特許文献2】山本幸司ほか5名、「『オプトナビ』システムに向けた30fps通常画像・1kfpsID画像同時撮像可能なCMOSイメージセンサ」、映像情報メディア学会技術報告 29、24、2005年5月、pp.9-12
【発明の開示】
【発明が解決しようとする課題】
【0009】
本発明は上記課題に鑑みて成されたものであり、その目的とするところは、例えばユーザーの手元にある情報端末により空間光通信を利用して該情報端末から離れた位置に在る情報機器が持つ所定情報を取得する際に、その処理における計算量をできるだけ減らすことで消費電力を抑制することができる情報処理装置及び情報処理システムを提供することである。
【課題を解決するための手段】
【0010】
上記課題を解決するために成された本発明は、少なくとも所定情報を含む光を発する発光源を備える送信装置が有する前記情報を、空間光通信により取得するための受信機能を有する情報処理装置であって、撮像機能による撮像範囲の画像情報と並行してその撮像範囲内に存在する前記送信装置の発光源による発光光の位置情報を取得するために、
a)光電変換を行う画素セルが二次元状に配列された受光部と各画素セルで光電変換により得られた画素信号を読み出す読み出し回路とを含む撮像手段と、
b)前記撮像手段の各画素セルから読み出された画素信号に基づいて、隣接する複数の画素セルを仮想的にまとめた拡大画素セルの信号により、同一フレームに対し解像度の相違する複数の画像を作成するビニング処理手段と、
c)1個の画素セル又は1個の前記拡大画素セルにより得られる画素信号に対し、連続する一定数のフレームの画像に基づいて前記発光源による発光光の有無を反映した評価値を求め、該評価値により前記発光光を受光している画素セル又は拡大画素セルを判定する評価手段と、
d)前記ビニング処理手段により作成された最も解像度の低い画像に対する前記評価手段による判定により発光源による発光光を受光している拡大画素セルを特定し、その拡大画素セルを含む範囲に限定した次に解像度が低い画像に対して前記評価手段による判定を行って前記発光源による発光光を受光している拡大画素セル又は画素セルを特定する、という処理を所定回数繰り返すことで、発光源による発光光を受けている画素セルの位置を最終的に特定する処理手段と、
を備えることを特徴としている。
【発明の効果】
【0011】
本発明に係る情報処理装置の一態様として、前記評価手段は、連続する一定数のフレームの画像についての高速フーリエ変換演算を利用した評価関数により各画素セル又は拡大画素セル毎の評価値を算出する構成とすることができる。
【0012】
この情報処理装置では、当初、ビニング処理手段により作成された複数の画像の中で最も解像度の低い画像、つまり最も拡大画素セルの数が少ない画像について、各拡大画素セル毎に上記評価関数が用いられて評価値が算出され、例えばその評価値が所定の閾値を超えているか否かに応じて発光光を受光している画素セルを含む拡大画素セルであるか否かが判定される。こうしてその最低解像度の画像に対して発光光を受光している拡大画素セルが特定されると、その結果に基づいて、次に調べる拡大画素セル又は画素セルの範囲が絞られる。そして、解像度が1段階引き上げられた(つまり1個の拡大画素セルに含まれる画素セル数が減らされた)画像について、同様に各拡大画素セル毎に上記評価関数が用いられて評価値が算出され、その結果により発光光を受光している拡大画素セルが特定される。
【0013】
一般に高速フーリエ変換演算には時間が掛かるため、上記一態様の構成においては評価関数の計算量が処理全体の計算量を左右するが、本発明に係る情報処理装置によれば、ビニング処理により解像度の相違する複数の画像を階層的に作成し、低解像度の画像から順次評価関数による演算処理を適用しているため、ビニングによる階層化を行わない場合に比べて評価関数による演算を適用する画素セル(又は拡大画素セル)の数を減らすことができる。それによって、発光源による発光光の受光位置を見い出すための高速フーリエ演算の実行回数を大幅に削減することができる。
【0014】
したがって、撮影画像から発光源の発光光の受光位置を特定するための処理、具体的にはID光を発する情報機器の位置検出が従来よりも格段に少ない計算量で達成できる。それにより、例えば上述したオプトナビシステムような遠隔制御システムにおける情報端末の信号処理装置(回路)の消費電力を低減させることができる。また、例えばID光を発する情報機器の位置検出が迅速化されるので、位置を捕捉した情報機器からのID情報の取得も速やかに行えるという利点もある。
【0015】
なお、本発明に係る情報処理装置において、前記評価手段は、評価対象の画像の解像度に応じて精度の異なる評価関数を用いた評価を行う構成としてもよい。即ち、低解像度の画像を評価する際には正確性には劣っていても計算量の少ない評価関数を用い、評価対象の画素セルが絞られた後の高解像度の画像を評価する際には、計算量よりも正確性を重視した評価関数を用いるとよい。これによれば、評価対象が多い状況下での計算量が減るので、全体として計算量を一層削減することができる。
【0016】
上記本発明に係る情報処理装置が例えば携帯電話のようにユーザーが手に持って操作される装置である場合、送信装置の発光源の位置が固定されていたとしても、手振れ等による発光源の撮影画像上における発光源の相対的な移動は避けられない。そこで、本発明に係る情報処理装置においては、前記撮像手段の各画素セルから読み出された画素信号を用いて作成される連続する複数のフレームの画像に基づいて、撮像範囲内での前記発光源の相対的な移動に関わる方向や速度を推定する移動情報推定手段をさらに備え、前記評価手段は、前記移動情報推定手段により推定された移動情報に基づいて、その動きを補償した評価値を算出する構成とすることが好ましい。
【0017】
こうした動き補償は解像度の相違する画像を対象とする各階層毎に行うものとし、より上の(解像度の低い)階層で行った動き補償を、下位の(解像度の高い)階層に反映してゆくことで移動量の低減が可能となる。
【0018】
例えば移動情報推定手段は、連続するフレームの複数の画像の間の相互相関を計算し、その相関値の最大値に基づいて移動に関わる情報を取得するものとすることができる。
【0019】
この構成によれば、手振れ等に起因する発光源の位置の相対的移動があっても、その影響が軽減されて送信装置の位置を正確に検出することができる。
【0020】
また前記移動情報推定手段は、相対的に解像度の高い画像に移行するときに、領域分割した各部分領域それぞれに対して移動量の推定を行う構成とするとよい。この構成によれば、送信装置が複数存在する場合に、各送信装置の位置の認識精度を上げることができる。
【0021】
また、この発明に係る情報処理装置では、ビニング処理がなされることにより、動きに対する許容値が緩くなっている。例えば、320×240画素の画像から80×60画素のビニング画像を作成した場合、4×4画素の動きは許容されることになる。したがって、上位の階層で動き補償がなされていれば、その下の階層での移動量を推定する範囲はビニングサイズ以内でよい。そこで、前記移動情報推定手段は、相対的に解像度の高い画像に移行するときに、それまでの低い解像度の画像での動きの補償がなされているという前提の下に、ビニング処理による画素位置精度の不確定さを含む範囲内でのみ移動量の推定を行う構成とするとよい。これにより、移動量の推定がより容易に行える。
【0022】
また本発明に係る情報処理装置では、前記ビニング処理手段は、低解像度の画像を作成する際に、その低画像度の画像内で或る1個の拡大画素セルに対応する、高い解像度の画像中での複数の画素セル又は拡大画素セルと、低画像度の画像内で前記1個の拡大画素セルに隣接する1個の拡大画素セルに対応する、高い解像度の画像中での複数の画素セル又は拡大画素セルとで、その一部が重複するように画素セル又は拡大画素セルを設定する構成とするとよい。
【0023】
この構成によれば、高い解像度の画像中で隣接する画素セル又は拡大画素セルに跨るように受光領域が形成される場合でも、その境界を挟んだ両側の画素セル又は拡大画素セルの画素値が低解像度の画像中で1個の拡大画素セルの画素値に反映される。それによって、上述したように評価値を計算する場合にその評価値が見かけ上低くなってしまうことを回避し、受光領域、つまりは送信装置の検出の見逃しを防止することができる。
【0024】
また本発明に係る情報処理装置において、前記ビニング処理手段は各画素セル又は拡大画素セルの画素値を対数圧縮する構成としてもよい。この構成によれば、ビニングによる加算処理を行った際のビット数の増加を回避しながら、微小な画素値の変化を欠落させずに済む。
【0025】
また、本発明に係る情報処理システムは、上記発明に係る情報処理装置と、少なくとも所定周波数の光を発する発光源を含む送信装置とを含み、前記送信装置は、第1の周波数を有するパイロット信号と、該第1の周波数よりも高い周波数を有し、該送信装置に関わる情報を含むID信号とが異なる周波数帯域に重畳された光信号を送出し、前記情報処理装置は、前記パイロット信号の検出結果に基づいて送信装置の位置を認識し、その位置情報に基づいて前記撮像手段の受光部の1乃至複数の画素セルを特定して該画素セルによる画素信号に基づいて前記ID信号を取得することを特徴としている。
【0026】
この情報処理システムによれば、パイロット信号に基づいて送信装置の位置を正確に特定した上でその送信装置のID信号を取得して、例えばその送信装置を識別したり特定したりするために利用できる情報を得ることができる。それにより、例えば撮影画像上にそうした送信装置の特定情報に基づくアイコンなどを重ねて表示し、送信装置を制御するために便利なユーザーインターフェイスを提供することができる。
【発明を実施するための最良の形態】
【0027】
まず、本発明に係る情報処理装置を適用する情報処理システムの一実施例である遠隔制御システムについて説明する。図1はこの遠隔制御システムの全体構成を示す概念図である。
【0028】
制御の中心となる情報端末1は後述するような空間光通信機能などを備える携帯電話であり、制御対象の情報機器として、DVDレコーダ2、パソコン3、デジタルカメラ4、携帯型音楽プレーヤ5、デジタルテレビ6などが家庭内のネットワーク(もちろん、外部のネットワークに接続されていてもよい)7に接続されており、さらにこのネットワーク7にはリソースセンター8も接続されている。但し、ここでいうネットワーク7はこれに接続されている各情報機器が相互にデータ通信可能であることを意味しており、サーバ等の特定の機器を介して接続が達成されるとは限らない。また、ネットワーク7と各情報機器との接続は無線でも有線でもよい。また、制御対象の情報機器も上記記載のものに限らない。
【0029】
リソースセンター8は各情報機器に関するリソースを保存するものである。ここで言うリソースとは、情報機器の個々の定義情報、各情報機器を簡易表示する際の画像、例えばアイコンデータ、情報端末1で各情報機器に対応したユーザーインターフェースを提供したり各情報機器と通信・制御を行ったりするための制御プログラム(典型的にはJava(登録商標)アプリ)又はそれに相当する動作記述(具体的にはプログラミング言語によるものでなくマークアップランゲージのようなものでもよい)など、である。リソースセンター8は例えばサーバの機能を有するコンピュータで構成することもできるが、単なるストレージメディア、例えばフラッシュメモリ(具体的にはフラッシュメモリを用いた各種メモリカード)などであってもよい。
【0030】
図2は図1に示した遠隔制御システムの一使用形態を示す概略図である。この例において、ユーザーの手元には情報端末1があり、この情報端末1に対してID情報を送信し得る情報機器として、パソコン3、デジタルカメラ4、デジタルテレビ6がユーザーの眼前、即ち視認可能な位置に配置されている。これら情報機器はそれぞれID光を出射するともに、家庭内のネットワーク7にそれぞれ無線通信を介して接続されている。ここで無線通信としては、電波通信でも赤外線を用いた光通信でもよく、例えば、無線LAN、Bluetooth(登録商標)など既存のものを利用できる。もちろん、有線LANで接続されていてもよい。このようにネットワーク7を介して実質的なデータの送受信を行う構成とすることで、情報端末1を介した空間光通信によるデータ通信よりも高速で大容量のデータの交換が可能である。
【0031】
まず、図1及び図2の遠隔制御システムで実現可能な機能の一例について説明する。情報端末1による制御対象である上述したような情報機器は、いずれも最低限、それぞれの位置を示すパイロット信号とID信号とを光信号で送出する機能を有しているものの、それ以外のデータ通信などは光通信とは別の上述したネットワーク7を介して行われるようになっている。これら各情報機器はパッシブ機器とアクティブ機器とに分けることができる。図17は情報端末1との間の通信におけるパッシブ機器とアクティブ機器の相違を模式的に示す図である。図中に情報機器Aとして示すパッシブ機器とは、制御信号の受け付けは可能であるがデータ信号の双方向通信はできないものである。これに対し、図中に情報機器Bとして示すアクティブ機器は制御信号の受け付けが可能であるとともに、データ信号の相互通信も可能な機器である(図17(b)参照)。情報端末1に対しての光通信によるID信号の送信は、パッシブ機器とアクティブ機器とのいずれも可能である(図17(a)参照)
【0032】
この遠隔制御システムでは、情報端末1と複数の情報機器のうちの任意の一つとの間でのデータ通信を行うまでに情報機器を起動して通信を確立させる必要がある。その際のシーケンスは相手がパッシブ機器であるかアクティブ機器であるのかによって異なる。パッシブ機器に対する起動処理シーケンスについて図18(b)により説明する。
【0033】
まず情報端末1からデータ通信、つまりネットワーク7を介して各情報機器A(パッシブ機器)に対し起動信号を送る。各情報機器Aはこの起動信号を受けると、低周波のパイロット信号が重畳されたID信号を光信号として送出する。ここで、情報端末1は後で詳述するような手法でID信号に重畳されているパイロット信号を検出し、それによって情報端末1の撮像範囲に含まれる情報機器Aの位置を認識し、パイロット信号よりも高速なID信号を受信して復調する。ID信号には例えばそれぞれの情報機器のベンダー識別コード、製品種別識別コード、製造番号コードなどの各機器に固有のID(識別情報)が含まれるから、情報端末1はこれによってその情報機器Aを特定する。そして、ネットワーク7を介してリソースセンター8にその特定した情報機器Aについての問い合わせを行い、該当するリソースをダウンロードして内部のメモリに保存する。これによって、情報端末1はその情報機器Aについてのリソースを入手することができる。
【0034】
なお、情報端末1から最初に出される起動信号は必ずしも必須ではないが、起動信号がない場合には、各パッシブ機器は常時ID信号を光信号として送出している必要がある。一般にこれは消費電力の無駄であるので、起動信号を受けた後に始めて光源を駆動して光信号を出し始めるほうが好ましい形態である。
【0035】
次に、アクティブ機器に対する起動処理シーケンスについて図18(a)により説明する。まず、情報端末1からネットワーク7を介して各情報機器B(アクティブ機器)に対し探索信号を送る。この探索信号は上記起動信号に相当するものである。ここで、探索のためのユーザーの操作としては、情報端末1で起動しているWebブラウザから各情報機器B側で起動しているWebサーバ機能のCGIを利用することにより複数の情報機器Bを1つずつ順番に探すようにしてもよいし、UDP(User Datagram Protocol)を用いて一斉に複数の情報機器Bを探索するようにしてもよい。
【0036】
各情報機器Bはこの探索信号を受けると、その情報機器Bが有しているプロパティ情報を含む応答信号をネットワーク7を介して情報端末1に送る。情報端末1はこの応答によって周囲(物理的に周囲である場合とネットワーク上で周囲である場合とがあり得る)に存在する制御可能な情報機器Bを認識するとともに、プロパティ情報を参照してリソースセンター8に問い合わせを行い、該当するリソース情報をネットワーク7を介してダウンロードしてきて内部のメモリに一時的に格納する。さらに情報端末1は、応答して来た各情報機器Bにそれぞれ異なるID(アドレス)を割り当て、その情報を送信する。このときに各情報機器に割り当てるIDは固定したものでなく、例えば起動の度に変わる可能性のある一時的なものである。以下、何らかの意味で情報機器を識別可能な情報として、こうした一時的なアドレスも含めてIDと称す。
【0037】
次にIDの割り当てを受けた情報機器BはID信号を光信号として送出する。したがって、情報端末1は上述したような手法でID信号に重畳されているパイロット信号を検出し、それによって各情報機器Bの位置を認識してパイロット信号よりも高速なID信号を受信して復調する。このときまで、上記のように双方向のデータ通信を行っている情報機器Bがその情報端末1の撮像範囲内に存在するものであるか否かは不明であるが、光信号によるID信号の受信によって撮像範囲内つまり表示画面内に表示される情報機器Bであるか画面外の情報機器Bであるのかが識別できる。
【0038】
続いて、先にプロパティ情報を参照してメモリ内に取り込んだリソースが無効である場合には(例えばキャッシングしているデータ中のプロパティ情報に含まれるバージョンが取得した情報機器Bのプロパティ中のバージョンより古い場合など)、情報端末1からその情報機器Bに対してリソースの送信要求信号を送る。リソース送信要求を受けた情報機器Bは情報端末1に対して保有するリソースを送信する。通常、リソースはID信号等に比べて格段にデータ量が多いため、適宜の圧縮処理を行って送信するとよい。そして、こうして受けたリソースを先にメモリ内に保持してある無効なリソースに代えて記憶し、以降の処理で使用可能とする。なお、Javaアプリ等の制御プログラムに関するリソースは、特にユーザー操作に関する制御プログラムはダウンロードした時点ですぐに起動させていつでもそれを用いた操作が可能であるようにしておくと便利である。もちろん、必要に応じて制御プログラムを起動するようにしてもよい。
【0039】
なお、情報端末1の撮像画面内に存在しない情報機器Bからは光信号によるID信号は到来しないから、表示画面内に存在しないことを認識した上で、ネットワーク7を介してID信号を受け取って同様に処理を進めることができる。但し、この遠隔制御システムでは、実際上、ユーザーから見える範囲、つまり情報端末1による撮像範囲内に存在する情報機器を制御する可能性が高いから、撮像範囲内に存在するか否かによって各情報機器に優先順位を付け、優先順位の高い順にリソースの入手を行うことで見かけ上の高速化を図ることができる。
【0040】
上述したような起動処理により、情報端末1は各情報機器A、Bについてのリソースを入手することができる。次に、こうした入手したリソースを用いて、ユーザーが情報端末1上での操作によって情報機器の遠隔制御を行う際の処理について図19により説明する。
【0041】
図19において、情報端末1の表示画面21aの上側部分21bには、その撮像範囲内に存在する3つの情報機器がアイコンC1、C2、C3で以て表示されている。また、表示画面21aの下側部分21cにはこの撮像範囲内には存在しないもののネットワーク7上に存在することが確認されている情報機器がアイコンC4、C5で以て表示されている。これら各情報機器に対応したアイコンも先に入手したリソースに含まれる画像ファイル等のデータに基づくものである。いま、例えばアイコンC1で示される情報機器c1が携帯型音楽プレーヤであり、アイコンC2で示される情報機器c2がステレオオーディオシステムであり、携帯型音楽プレーヤに保存されている音楽ファイルをステレオオーディオシステムに取り込んで音楽再生を行う場合について考える。
【0042】
情報機器c1、c2についてのそれぞれのリソースはユーザーの手元の情報端末1内に保持されているから、アイコンC1について所定の操作を行うことにより、情報機器c1である携帯型音楽プレーヤに保持されている音楽ファイルの情報、例えばアーティスト名、アルバム名(曲名)などを表示させ、ユーザーはその中から所望のものを選択する。こうした操作は上述したようにその情報機器c1に対応したJavaアプリ等の制御プログラムの上で可能となる。そして、表示画面21a上でアイコンC1を選択してアイコンC2の上まで移動させて重ねる、つまりドラッグ&ドロップに相当する操作を行う。これによって、情報端末1内の情報機器c1、c2のリソースに含まれる応答規定リソースの機能により操作に応じた制御信号が、ネットワーク7を介して各情報機器c1、c2に送られる。
【0043】
なお、上記説明では、システム内に情報端末1が1個だけ存在する場合を想定していたが、実際には、複数の情報端末1が存在して同時に使用される状況が想定される。そうした場合に、或る情報端末1から或る情報機器に対し既にIDが割り振られていて、別の情報端末がその情報機器を制御することがある。その場合に、異なる情報端末から同一の情報機器に対し重複して異なるIDを割り振ると混乱が生じるから、IDが既に割り振られている情報機器は、別の情報端末からアクセスを受けたとき(探索されたとき)に、割り振られているIDを上述したような光信号として情報端末に送信し、情報端末はそのIDを使用して該情報機器に関する制御を行うとよい。
【0044】
また、上記のような遠隔制御システムにおいて、離れた位置にある情報機器をユーザーの手元にある情報端末から操作する場合、情報端末の画面上に表示したアイコンやそこから起動したアプリケーションソフトウエアを介する必要がある。いま、情報機器がウインドウズ(登録商標)等のOSを搭載したパソコンなどである場合、情報端末からそのパソコンのOSにログオンしてこれを制御するにはマウスのようなポインティングデバイスを用いると便利である。そこで、こうした目的のために、情報端末をポインティングデバイスとして用いることで、離れた位置にあるパソコン等の情報機器の操作を行うこともできる。
【0045】
例えば、情報端末において検出したパイロット信号及びID信号の位置座標の移動量をポインティングデバイスの移動制御量として情報機器に送信する。情報機器側では、受けた移動制御量に応じて例えば画面上に表示してあるポインタ(マウスカーソルなど)を移動させる。また、情報端末は、ユーザーによるクリック、ダブルクリック等のボタン操作を認識し、その認識結果に応じた制御信号を情報機器に送信する。情報機器側はその制御信号に応じたイベントを起こす。また、情報端末に十字キーを用意し(或いは既存の十字キーを利用し)、そのキーの操作情報を情報機器に送信して、対応する方向にポインタを移動させるようにしてもよい。いずれにしても、こうした構成を採ることにより、手元にある情報端末での簡便な操作により、離れた所にあるパソコンのOSを自在に制御することができる。
【0046】
また、上記システムでは、ユーザーの手元にある情報端末の表示画面上に、カメラにより撮影した画像と情報機器に対応したアイコンとをオーバラップして表示させるようにしていたが、ヘッドマウントディスプレイ(HMD)を利用することにより別の手法が可能となる。即ち、HMDに装着されたIDカメラではID情報と位置とを取得し、HMDの画面上には画像は表示せずにHMDを透過してくる景色にID位置に対応するアイコン等の画像情報をオーバーラップ表示する。そして、このHMDを装着したユーザーの視線入力やジョイスティック、キー入力等の方法で操作を行う。これによれば、実世界(実際の景色)とコンピュータ上での仮想世界(アイコン等の画像情報)をより自然に融合させたユーザーインターフェイスを実現することができる。
【0047】
次に、上述したような遠隔制御システムに用いられる情報端末について詳しく説明する。この情報端末1が本発明における情報処理装置に相当するものである。図3は、この情報端末1に内蔵される、光通信を行うための要部のブロック構成図である。
【0048】
この情報端末1は、撮像/受光部10として、受光レンズ12と撮像素子であるイメージセンサ11とを備える。ここでは、イメージセンサ11は微小受光素子(画素セル)が二次元状に配列されたCMOSイメージセンサであって本発明における撮像手段に相当する。このイメージセンサ11の各画素から読み出された信号(画素信号)を処理する回路として、撮像範囲全体の二次元画像を作成する画像データ処理部15、特定の画素から読み出された画素信号に基づいて復号処理等を行ってID(識別)情報を取り出すIDデータ受信処理部13と、ID情報を取り出すために後述するように撮影画像内でID光が当たっている画素セルを特定するためのID位置検出処理部14と、を備える。さらに、IDデータ受信処理部13で得た信号に基づいて当該情報端末1と所定の情報機器との間での通信を確立するための各種処理を実行する通信確立制御部16と、通信に係わる各種の制御及び処理を実行する主制御部20と、主制御部20に接続された操作部22及び表示部21と、を備える。この例では、ID位置検出処理部14が本発明におけるビニング処理手段、評価手段、及び処理手段の機能を有する。
【0049】
一方、上述した各情報機器(例えばパソコン3)は各機器に固有のID情報を光信号(ID光)として出射する発光源(光ビーコン)を備える。この光ビーコンは、例えば各情報機器の電源オン/オフ状態を示す表示LED等を利用することもできるし、これとは別途設けることもできる。
【0050】
光ビーコンによる出射光は可視光でもよいが、一般的には赤外光であることが望ましく、その場合に、情報端末1が備えるイメージセンサ11は、R(赤)、G(緑)、B(青)のほか、IR(赤外)又はその補色画素を配置した4画素を単位とするカラー対応のセンサとするとよい。このとき、画素の配置はベイヤ型のような千鳥格子状でもストライプ型でもよい。こうした構成によれば、検出対象である近赤外信号から可視光成分を除去して、後述するパイロット信号やID信号の検出精度を向上させることができる。
【0051】
図5は、各情報機器の光ビーコンから出射される光信号の周波数スペクトルを示す概略図である。また図6は各情報機器から情報端末1に対して送出されるID信号の1パケット分の信号フォーマットの一例を示す図である。
【0052】
この実施例においてパイロット信号は例えば標準的な画像フレーム周波数である30Hzの1/2よりも低い周波数であるfpで点滅する(又は強弱する)信号であり、一般には全て情報機器について同様のパイロット信号が利用される。このパイロット信号の主たる目的は、通信相手である情報端末1に自らの位置を認識させることにある。したがって、後述するパイロット信号の検出手法によっては、より高い周波数の信号をパイロット信号としてもよい。また、必ずしも周期的に点滅するものでなく、非周期的に点滅したり、外部からの要求に応じて発光するようなものとすることも考えられる。一方、ID情報はパイロット信号の周波数fpよりも十分に高い周波数fIDを中心とした周波数帯域を有し、同一のものが存在しないように全ての情報機器に割り当てられた固有アドレス又はその通信の際に各情報機器に一時的に割り当てられる一時アドレスなどの情報を含む。
【0053】
図6に示すように、上記のような固有ID等のIDデータには、この情報機器がパッシブ機器かアクティブ機器であるのかを識別するためのP/A識別ビットが付加され、このP/A識別ビットとIDデータとに対しエラー検出用のパリティ符号(又はそれ以外のエラー検出又は訂正符号)が付加され、さらに先頭には既定のプリアンブル信号が付加されてひとまとまりのデータ系列、つまり1パケットのデータが作成される。パッシブ機器、アクティブ機器については後述する。プリアンブルはパケットの先頭を見つけるためのものであって、例えば「111111110」の9ビットのデータ列とする。このようにして作成されたパケットは、伝送路の特性に合わせた適宜のデジタル変調が施された上で光信号として繰り返し送出される。具体的には、パケットは例えばマンチェスタ符号化されて光信号として送出される。
【0054】
本実施例では、パイロット信号の周波数fpは画像読み出しのフレームレートである30fpsで検出可能な周波数として5Hzとし、ID情報fIDの周波数はそれよりもかなり高速の1.2kfpsで検出可能な周波数として400Hzに設定し、ID情報としては8ビット程度のデータ長の一時的なIDを送出するようにしている。もちろん、これらの数値は適宜に変更することができ、ID情報としては例えばIPv6に相当するような長いビット長の固有アドレスやその機器の動作条件を示すデータなどのプロパティ情報を含むようにしてもよい。
【0055】
図2に示した遠隔制御システムにおいて、ユーザーは、或る情報機器の制御を行いたい場合などに情報端末1の撮像/受光部10(カメラ)をその情報機器に向ける。すると、情報端末1において、画像データ処理部15がまず30fpsのフレームレートで以て画像を取得し、主制御部20により、表示部21の画面上には図4に示すように撮像/受光部10の撮像範囲に含まれる二次元画像が表示される。これと並行して、ID位置検出処理部14はその撮像範囲内でパイロット信号を受信している画素セルを後述する方法で検出することにより、その画像中に存在する起動中の情報機器の光ビーコンを検出する。IDデータ受信処理部13は、その光ビーコンの位置近傍の小領域の画素信号のみを例えば1.2kfpsのレートで高速に読み出すことにより、ID光に含まれるID情報を取り出して復号する。このID情報を受けた主制御部20は、各情報機器の種類などを特定して、表示部21の画面上においてその光ビーコンの位置近傍に、各情報機器を選択するための識別情報21dをオーバーレイ表示する。
【0056】
即ち、ここでオーバーレイ表示された情報機器、例えば図4の例では、デジタルカメラ4、デジタルテレビ6、パソコン3の3つの情報機器が情報端末1よりID情報の取得可能な情報機器であり、換言すれば情報端末1により制御可能な情報機器である。したがって、ユーザーは情報端末1で所定のキー操作を行って1乃至複数の情報機器を選択し、その情報機器に対して所定の指令を例えばネットワーク7を介して送ることができる。具体的には、例えばデジタルカメラ4内のメモリカードに格納されている画像データをデジタルテレビ6に転送して、デジタルテレビ6の画面上に写真画像を表示させる、等の様々な制御が可能となる。
【0057】
上述したように情報端末1では撮像/受光部10で二次元画像を取得し、ID位置検出処理部14ではその二次元画像中に存在する光ビーコンを検出する必要があるが、その光ビーコン、具体的にはこの光ビーコンの位置を認識させるためのパイロット信号の検出手法に大きな特徴がある。そこで、このパイロット信号の検出手法について、図7〜図12及び図14を参照して以下に説明する。図7はパイロット信号の検出処理のフローチャート、図8はパイロット信号の検出手法を説明するための概念図、図9はパイロット信号検出時のビニング処理を説明するための概念図、図10はパイロット信号検出時のID領域分割を説明するための概念図、図11及び図12はパイロット信号検出時の動き補償を説明するための概念図、図14はパイロット信号検出時の発光部の明滅に対する処理を説明するための概念図である。
【0058】
ここでは、撮影画像内でパイロット信号が存在する位置を正確に検出するために、パイロット信号の評価関数p(x,y)として次の(1)式を導入する。
【数1】

ここで、x、yは画素の座標、fは周波数、g(f)は連続する一定数のフレームについての高速フーリエ変換の周波数fに対する演算結果、fPILOTはパイロット信号の周波数(この例では5Hz)である。上記(1)式による評価値が所定の閾値を超えた画素が、パイロット信号を受信している画素セル又は拡大画素セルであると判断することとする。
【0059】
上記(1)式による評価は正確性が高いもののフーリエ変換の計算量が大きいため、全画素に対して順次評価計算を行ってゆくと全体の計算量は膨大なものとなる。そこで、ここではビニングによる階層化を導入して、評価計算の対象となる画素を少なくするようにしている。なお、「ビニング」とは、画像上で隣り合う素子(画素)のいくつかをひとまとめにして解像度を下げて取り扱うことである。
【0060】
パイロット信号の検出処理が開始されると、ID位置検出処理部14はまず所定フレーム数、例えば16フレーム分の全画素信号を蓄積する(ステップS1)。ここでは一例として有効画素が320×240画素であるQVGA画像を処理対象としているため、320×240画素×16フレームの画素信号が蓄積されることになる。次に、蓄積した上記画素信号を用いて所定のビニング処理を行い、各フレーム毎に多段階の異なる解像度の画像を作成する(ステップS2)。通常、2×2画素のビニング処理を(n−1)回実行してn階層の異なる解像度の画像を作成するが、ここではn=4として3回のビニング処理を実行する場合について考える。
【0061】
具体的には、図8に示すように、320×240画素の元画像(図8(d)参照)に対し、160×120画素(図8(c)参照)、80×60画素(図8(b)参照)、40×30画素(図8(a)参照)の各ビニング画像が作成される。元画像以外のビニング画像の画素セルは元画像の画素セルを複数まとめた仮想的な画素セル(即ちここで言う拡大画素セル)である。いま、図8に示す元画像を含む4枚の画像のうち、最も粗い、つまり解像度の低い40×30画素の画像を第1階層とし、解像度が高くなる順に第2階層、第3階層、第4階層と呼ぶこととする。
【0062】
上記のようなビニング処理を行う際に、次のような特徴的な処理を行う。例えば10ビットの画素値を有する縦2画素、横2画素の計4画素の画素値を加算して上位階層(解像度の低い)の画像の1画素(拡大画素セル)を作成する場合、一般には、隣接する2×2画素の4画素を1組として加算処理を行う。これに対し、ここでは加算処理自体は隣接する4×4画素の計16画素に対して行われる。即ち、図9に示すように、上位階層の画像P1内の或る拡大画素セル#1の画素値を求めるために、1階層下の画像P2内での加算対象領域として#1’で示す4×4画素の領域を設定する。そして、画像P1内で拡大画素セル#1に隣接する他の拡大画素セル#2の画素値を求めるために、画像P2内での加算対象領域として#2’で示す4×4画素の領域を設定する。この加算領域#2’は加算領域#1’と2×4画素が重なっており、この2×4画素の画素値は画像P1内で拡大画素セル#1と拡大画素セル#2との両方の画素値に反映されることになる。
【0063】
このように上位階層の画像を作成するために下位解像の画像において画素値を加算する領域の一部を重ね合わせることにより、光ビーコンからの入射光が画素を跨いで当たっているときに、その境界において画素値を加算した値が小さくなって、その影響が相対的に軽視されてしまうことを回避することができる。また、下位階層の画像P2において10ビットの画素値を16画素分加算することで上位画像P1の1画素分の画素値を求める場合、画素値は16倍の階調が必要になるため14ビットの値となる。こうしたビニング処理の場合、一般には、メモリを節約するため等の目的で加算後の画素値を丸め処理して10ビットにしてしまうが、ここではこうした丸め処理を行わず、上位階層の画素値はデータのビット数を増加させることで対応している。これにより、僅かな画素値変化の情報も保存し、結果的にパイロット信号の受光位置の検出精度を上げるのに寄与する。
【0064】
なお、メモリを節約しながら微小な画素値の変化を失わないようにするためには、ビニング処理後の値を対数圧縮して、例えば圧縮前に14ビットである値を10ビットに変換するとよい。
【0065】
上記のように作成した多階層のビニング画像に対し、まずID受光位置の探索対象の階層を1に設定し、探索範囲を全画素に設定する(ステップS3)。つまり、最も解像度の低い第1階層のビニング画像からID受光位置の探索を開始する。16フレーム分の第1階層のビニング画像に対し、上記(1)式による評価関数により各拡大画素セル毎に評価値を算出する(ステップS4)。この結果、40×30個の各拡大画素セル毎に評価値が求まる。そして、パイロット信号を受信している、つまり情報機器から出射されたID光が当たっている画素セルを含む拡大画素セルでは上記評価値が高くなるから、求めた評価値を規定の閾値と比較して、この閾値を超える評価値を有する拡大画素セル(以下、ID受信画素という)を見い出す(ステップS5)。
【0066】
次いで、上記ID受信画素の位置と大きさを判断し、そのID受信画素を含むm×m画素の範囲を切り出して次階層の探索範囲として設定する(ステップS6)。このとき、図10に示すように、上記ステップS5の閾値処理の結果によるID受信画素が隣接して連なっている領域#1、#2はそれぞれ1個のID受光領域であると判断する。そして、例えば図8(a)の場合にはm=5として、ID受光領域を含む5×5画素(拡大画素セル)の範囲を次階層の探索範囲として設定する。複数の情報機器から同時にそれぞれID光が到来する場合、ビニング画像上で離れた位置に複数のID受信領域が散らばるから、そのそれぞれに対して次階層の探察範囲を決定すればよい。それから、1個のID受光領域を構成する画素セルの数から推定されるID受光領域の大きさが所定値以上であるか否かを各ID受光位置について判断する(ステップS7)。
【0067】
ID受光領域の大きさが所定値以上であるID受光位置については十分な精度で以てID受光位置を特定できていると判断し、以降の探索を打ち切る(ステップS8)。いまビニング処理においてNBX×NBY画素を加算して解像度の低い画像を作成しているものとすると、例えば第n階層においてID受光領域のサイズが2×2画素以上であれば、最下位層の画像において(2NBXn-1) ×(2NBYn-1)画素以上のサイズであることが保証されるから、ここで探索を打ち切ることにより処理を簡単にすることできる。
【0068】
他方、ID受光領域の大きさが所定値より小さいID受光位置については最下位階層、つまりここでは第4階層であるか否かを判断し(ステップS10)、最下位階層であれば探索を終了する。そして、ID受信画素の位置(座標)を特定するためにイメージセンサ11に設けられたIDマップテーブルに、上記探索により求まった最終的なID受信画素の位置情報を書き込む(ステップS9)。このIDマップテーブルは、ID光を受光している画素信号のみを選択的に高速で繰り返し読み出す場合にその対象の画素セルを特定するために使用される。
【0069】
ステップS10で最下位層でないと判定されると、1階層下がった、つまり第1階層→第2階層、第2階層→第3階層、又は第3階層→第4階層の画像の探索に移行し(ステップS11)、さらにID光の受光位置の移動に伴う動き補償を実行した上で(ステップS12)ステップS4に戻り、上述したように、より解像度の高い画像上で上記ステップS6で次階層の探察範囲として決定された(厳密にはこれにステップS12での動き補償が考慮された)切り出し範囲についてID受信画素の検出を実行する。即ち、第1階層→第2階層に移行した直後である場合に、ここではm=5であるから、1段階解像度の高い第2階層のビニング画像の中の10×10画素の範囲に対して上記と同様の評価関数を用いた評価処理を行う。これが図8(b)に示す状態である。そして、十分な精度で以てID受信画素の位置を特定できるまで順番に下層に、つまり解像度の高い画像に移りながら同様の処理を繰り返してゆく。
【0070】
実際には、情報端末1はユーザーが手に持った状態で操作されるから手振れが生じ、それによってID受信画素の位置がイメージセンサ11の受光領域内で変化(相対的に移動)する。この変化の速度は画像のフレーム周波数に比べれば大きいものではなく、低解像度の画像ではあまり問題とならないが、画像の解像度を上げると16フレーム分の各画像の間でのID受信画素の移動が問題となることがある。この影響を抑制するための処理が上記ステップS12による動き補償である。
【0071】
即ち、動き補償を行う際には、まず動きの方向と量とを反映した移動ベクトルを求める。例えば、次階層の隣接フレーム間でID受信位置の移動範囲が収まる画素範囲を設定して両フレームの相互相関を計算し、相互相関値が最大となる移動ベクトルを求める。いま、ビニング処理においてNBX×NBY画素を加算して解像度の低い画像を作成している場合について考える。この例では具体的には上述したようにNBX=NBY=4である(図12参照)。
【0072】
上位階層n−1までに成された動き補償が階層nに既に反映されているという条件で考えると、横方向の動き範囲は−(NBX/2)〜+(NBX/2)、縦方向の動き範囲は−(NBY/2)〜+(NBY/2)に収まっていると推測できる。そこで、この動き範囲において時間的に隣接するフレームi、i+1の相互相関を計算し、相互相関値が最大となる移動ベクトルmiを求める。但し、相互相関は積演算が必要であって計算量が多いので、対応画素の差分絶対値の総和を評価関数として用いてもよい。
【0073】
移動ベクトルmiによりID受信位置の移動方向と移動速度とが推定できるから、この結果に基づいて、評価関数による評価値を計算する際の画像の切り出し範囲をフレーム毎に変えるような動き補償を行う。即ち、図11において、動き補償を行わない場合、上位階層の画像では同一画素セル(拡大画素セル)に受光領域が存在したとしても、下位階層の画像では動きによって受光領域が移動してしまう。そのため、動き補償を行わずに、つまり評価値を計算する際の画像の切り出し範囲を同一に保ったままで連続する所定フレーム数の画像から評価値を計算すると、評価値が小さくなって受光領域を見逃し易くなる。そこで、ここでは移動ベクトルmiで推定される移動量及び移動方向に応じ、その移動を打ち消すように画像の切り出し範囲をずらしてゆく。図11で言えば、n、n+1のような下位階層の画像では点線で示すように切り出し範囲を各フレーム毎にずらす。したがって、切り出された画像範囲では、見かけ上、受光位置は移動しておらず、こうした複数の画像に基づいて評価値を計算することにより、手振れ等の動きによって評価値が低下することを回避することができる。
【0074】
但し、図11に示した例では、画像全体が一様にシフトするような移動を想定しているが、実際には、上位階層の画層の中の1個の拡大画素セルに対応した下位階層の画像中の部分領域毎に移動ベクトルを求め、それに基づいて動き補償を行うことにより、複雑な動きの影響も軽減して評価値の算出精度を上げることができる。
【0075】
また、光ビーコンは低周波数のパイロット信号で点滅駆動されているから、上記のような動きのほかに、光ビーコンが消灯する期間を考慮する必要がある。このような光ビーコンの点滅を考慮した処理について図14により説明する。いま、フレーム番号iの画像が評価計算を行う16フレーム分の画像の先頭であるとする。また、この直前のフレーム番号i−1の画像に対するフレームiの画像の移動ベクトルをmiであるとする。このとき、光ビーコンの明滅(点灯/消灯)が切り替わるタイミングを認識するために、次のように二つの情報を利用することができる。
【0076】
即ち、1階層上の画像に基づいて評価関数により評価値を求める際に、パイロット信号の周波数fpを検出すれば、その周波数fpのFFT成分g(fp)の位相から光ビーコンの明滅の切り替わりタイミングが分かる。実際には、図14中に示すように位相π毎に明滅が切り替わることになる。また、上述したように動き補償のために移動量を算出する場合に、隣接フレーム間の相互相関の最大値が閾値以下になったときに光ビーコンの明滅状態が切り替わったものと推測できる。そして、光ビーコンの明滅状態を判断した上で、例えば光ビーコンの点灯期間中には上述したように連続するフレームの画像の相互相関を計算してその最大相互相関値から移動ベクトルを算出すればよい。また、光ビーコンの明滅の切り替わり時には、例えば、移動ベクトルを算出する代わりに最も直近の移動ベクトルで代用したり、1周期前の動き補償済みの画像との間での相互相関値の最大値から移動ベクトルを求めたりすればよい。このように光ビーコンの点滅の影響を殆ど受けずに上記のような動き補償を行うことができる。
【0077】
上記のようなID光の受光位置検出処理によれば、(1)式を用いた評価値の計算量を大幅に削減することができる。いま、元々の画像の解像度をNx×NY、同時に受信可能な最大ID数をnIDとして考える。上述のようなビニングによる階層化を行わない場合、(1)式の演算をNx×NY回だけ行う必要がある。これに対し、上記のようにビニングによる階層化を行った場合には、(1)式の演算の実行回数は、(Nx×NY/4n-1)+4m2(n−1)nID回となる。具体例を挙げると、320×240画素のQVGAの場合に、最大ID数nIDが7、ID画像サイズm×mが5×5である条件の下では、階層化を行わないと(1)式の演算実行回数は79360回、3階層のビニングを行うと6360回と、1/10以下の回数で済む。さらに4階層のビニングを行えば3340回と、一層演算実行回数は削減できる。このように上記処理によれば、イメージセンサ11においてID光を受けている画素を特定する際の処理における計算量が大幅に減らせる。
【0078】
なお、上記説明では解像度の相違する各階層において同一の評価関数を用いていたが、各階層毎に評価関数を変えるようにしてもよい。階層的探索を行う場合、最も粗い解像度の画像では全画素(拡大画素セル)の探索が必要である。そこで、例えば解像度の低い画像に対しては、精度は低いものの計算量が少ない評価関数を利用し、対象画素数が絞られた高解像度の画像に対しては、計算量は多くてもより精度の高い評価関数を用いるとよい。このようにすれば、全体の計算量をさらに削減することができる。
【0079】
上述したような方法によって光ビーコンからの光の受光位置(ID受信画素)を確定した上で、今度はその画素の近傍に絞った範囲でID信号を高速に読み出すわけであるが、その際のIDデータの復号処理について図15のフローチャートに従って説明する。
【0080】
まず、上述したようなIDマップテーブルに書き込まれているID受信画素の位置情報に基づいて特定の画素セルの画素値を高速に(この例では1.2kfpsのレートで)繰り返し読み出すことで、連続的なID画像を取得する(ステップS21)。この際、図13(a)に示すようにID受光領域のサイズが或る程度小さい場合には、そのID受信画素を含む所定範囲の全ての画素を読み出し対象として設定することができるが、図13(b)に示すようにID受光領域のサイズが大きい場合には、読み出し対象画素が多くなり過ぎる。したがって、その場合には、適宜の間隔で間引いて読み出し画素を設定することにより、読み出し対象画素を絞るとよい。
【0081】
そして、読み出した画素の全ての画素値の総和を計算し(ステップS22)、複数の平滑化処理を行うことでノイズの影響を軽減する(ステップS23)。その後に、平滑化処理して得られた画素値をフレームの順番に時系列的に配列し、その画素値を閾値を基準に判定することにより二値化する(ステップS24)。一般的にこうした二値化処理のための閾値を決めるために受信データの前方平均(前方の一定数のデータの平均)又は後方平均(後方の一定数のデータの平均)を用いるが、ここではパケットの端部では後方平均を用い、それ以外の部分では前方平均を用いる。
【0082】
なお、二値化のための別の方法としては、例えば1ビットを3フレームで捉える場合、相関カーネル{−1,−1,−1,1,1,1}を用いて相関演算を行うような0→1変化点検出フィルタを用い、その正負(正:”0”→”1”の変化、負:”1”→”0”の変化)の変化点の間を”0”又は”1”で埋めることにより二値化を行うようにしてもよい。
【0083】
この符号では1フレームだけが”1”又は”0”となるような孤立した”1”又は”0”は存在しない筈であるので、二値化処理の後に、こうした孤立したビットを除去するグリッチ除去処理を行う(ステップS25)。その後に、連続する”1”又は”0”の数をカウントし(ステップS26)、そのカウント値を閾値と比較することで”0”、”1”、”00”、”11”を復元する(ステップS27)。例えば、”0”又は”1”のカウント値が4以下である場合にはそれぞれ”0”又は”1”とし、”0”又は”1”のカウント値が5以上である場合にはそれぞれ”00”又は”11”とする。
【0084】
そうして得たデータ列に対し、上記のように予めプリアンブル信号として定めたデータ列、例えば「111111110」の9ビットのデータ列を見つけることでパケットの先頭を判断し(ステップS28)、プリアンブル信号の直後の先頭のビットからマンチェスタ符号の復号化を行う(ステップS29)。即ち、”01”→”1”、”10”→”0”と変換し、”00”又は”11”が出現した場合には復号エラーであると判断する(ステップS30でYES)。そして、復号エラーが発生しなければ、次いでエラー検出符号(又は訂正符号)を利用してエラー検出又は訂正を行う(ステップS31)。
【0085】
ステップS30で復号エラーが有る場合、及びステップS31でエラーが検出された場合(エラー訂正を行う場合には訂正不能なエラーが検出された場合)にはいずれも、ID信号の信頼性が乏しいのでID値を破棄し(ステップS34)、一方、いずれのエラーが無ければID値を取得する(ステップS33)。このようにして情報端末1は各情報機器が保持するID情報を得ることができる。
【0086】
上記のような多数フレームのID画像を取得する過程においても、パイロット信号の検出時と同様に手振れ等によりID受光領域が相対的に移動する可能性が高いから、こうした移動の補償を行ってID受光領域を追尾する。図16はそうしたIDの追尾方法を説明するための概念図であり、(a)は”0”が1ビットのみの場合、(b)は”0”が2ビット連続する場合に連続して得られるID画像の一例を描出している。ID画像は例えば1.2kHz毎に1枚ずつ得られる画像であり、この場合には、1ビットのデータが3枚のID画像で表現されている。
【0087】
図16に示すように、データビットが”0”である期間にはID受光領域はID画像上に存在せず、データビットが”1”である期間にはID受光領域は移動している。したがって、ID信号を正確に復号するためにはID受光領域の移動に伴ってこれを追尾することが必要である。そこで、パイロット信号を検出する際の動き補償時と同様の手法を利用し、ID画像について移動ベクトルを求める。即ち、ID画像のフレーム間の相互相関や差分絶対値和を利用して移動ベクトルを求め、これにより移動量と移動方向とを推測する。但し、上述したようにデータビットが”0”である期間には移動ベクトルが求まらないから、移動ベクトルに履歴の情報をもたせることにより、ID受光領域がない期間中にも移動を推定するようにするとよい。
【0088】
具体的には、前フレームでの最終的な移動ベクトルをmi-1、現フレームで求まった移動ベクトルをmi,0(但し、差分絶対値の総和が閾値以下の場合は切り捨ててゼロベクトルとする)としたときに、現フレームの最終的な移動ベクトルを、
i=βmi-1+(1−β)mi,0
但し、βは減衰率で0<β≦1
と定義するとよい。ID受光領域が存在しない(光ビーコンが消灯している)ID画像フレームでは、上記式により移動ベクトルを求めればよい。但し、この式による移動ベクトルでは、急に速度が増すような移動に対する応答性があまり良好でないので、ID受光領域が存在するID画像フレームではβ=0として現フレームで求まった移動ベクトルmi,0をそのまま用い、ID受光領域が存在しないID画像フレームでのみ上記式による移動ベクトルを利用するとさらに好ましい。こうして移動ベクトルが求まったならば、その移動量に応じてID画像を形成するための読み出し対象の画素の位置をずらし、確実にID受光領域を捉えるようにすることができる。
【0089】
上述したように、情報端末1ではID情報によりその情報機器を特定し、例えばリソースを収集してその情報機器に対応したアイコンを表示画面21a上に表示させることができるが、すぐにアイコンを表示するのではなく、一旦スコアリング処理を行う。即ち、IDの存在が認識されていない場合には、スコアは初期値から一定の割合で減少されてゆき、規定の下限値で飽和する(つまり、それ以上はスコアは下がらない)。ID情報が検出される毎にスコアに規定値を加算してゆき、或る回数だけIDが検出されてスコアが規定の上限閾値を上回ったならば、初めてIDの存在を認識し、表示画面21a上の対応する位置にアイコンを表示する。
【0090】
一旦存在が確認されたIDについてもIDが検出されなくなるとスコアが一定の割合で減少されるが、スコアが所定の下限閾値に達するまでにIDが検出されたならば、スコアは上記上限閾値に戻される。一方、IDが検出されない期間が長くなってスコアが下限閾値に達してしまうと、初めてIDが消滅したと認識し、それまで表示していたアイコンを表示画面21a上から消す。但し、このアイコンが何らかの操作中(例えばこのアイコンに対応した情報機器が制御動作中である場合やアイコン自体がドラッグ&ドロップ等の操作中である場合など)には、操作が終了して所定時間が経過するまではアイコンの消滅を延期する。
【0091】
情報端末1が情報機器の光ビーコンからID光を受信している間にも、外乱光による影響や光の遮蔽などによって一時的にエラーが発生したり受信不能に陥ったりする可能性が高い。また、情報機器自体の移動などによってパイロット信号が誤検出され、IDを正常に読み取ることができなくなる事態も想定される。そのため、上述のように復号したID情報をそのまま利用してIDに対応したアイコンを表示画面21a上に表示させようとすると、アイコンが短時間だけ出現したり逆に表示中のアイコンが短時間だけ頻繁に消えたたりするといった不安定な状態になる。これに対し、上述したようにスコアリング処理を行ってIDに対応したアイコンの表示やその消滅を制御することで、表示を安定させ、それに対するユーザーの操作を行い易くすることができる。
【0092】
なお、上記説明に関した挙げた数値、例えばID位置検出処理における階層数や画素数等はいずれも一例であり、これに限るものではなく適宜に変更することができる。また、パイロット信号の検出処理やID復号処理はそれぞれ図7、図15のフローチャートに限定するものではなく各種の変更が可能である。
【実施例】
【0093】
本発明者らが試作した簡易的な「オプトナビ」システムを用いた実験結果について説明する。イメージセンサ11は非特許文献2で開示したものを使用した。したがって、最大受信可能なID数nIDは7、ID情報を読み取るためのID画像の撮像フレームレートは1個のID当たり1.2kfpsである。また、情報機器の光ビーコンに相当するID光源としては赤色LEDを用いた。これは実験的に扱い易い可視波長の光を用いたものであり、好ましくは、人間の目に見えない近赤外光を用いるとよい。
【0094】
図2の遠隔制御システムにおいて情報機器に相当するID送信モジュールからは400Hzで変調した二値信号を送信したが、送信データとしては、IDコードである4ビットの二値データの先頭にデータ列が「11111110」であるプリアンブルを付加し、全体をマンチェスタ符号化した。マンチェスタ符号化後の1ビットの送出時間は2.5msであり、その1ビットを上記ID画像3フレームで受信するように設定した。またID光源を100ms毎にオン/オフすることにより、ID信号に5Hzのパイロット信号を重畳した。
【0095】
実験では部屋の中に3つのID送信モジュールを配置し、各ID受信モジュールからそれぞれ異なるIDコード(2,9,13)を送信した。情報端末1に相当するユーザー側のカメラとID送信モジュールとの間の離間距離は、最も近いもので約1m、最も遠いもので約3mとした。また、パイロット信号の検出時のビニングの階層は3段階とした。
【0096】
上記のような条件の下で、カメラで撮影する画像内に現れている3つのID送信モジュール情報機器のIDが正確に取得できることが確認できた。このようにして各種情報機器のIDが正確に得られるので、このIDにより各情報機器を特定して、上述したような様々な制御を行うことが可能となる。
【図面の簡単な説明】
【0097】
【図1】本発明に係る情報処理システムの一例である遠隔制御システムの全体構成を示す概念図。
【図2】図1に示した遠隔制御システムの一使用形態を示す概略図。
【図3】図1、図2に示すシステム中の情報端末に内蔵される光通信を行うための要部のブロック構成図。
【図4】図3に示した情報端末の表示部の画面の一例を示す模式図。
【図5】各情報機器の光ビーコンから出射されるID光の周波数スペクトルを示す概略図。
【図6】各情報機器から情報端末に対して送出されるID信号の1パケット分の信号フォーマットの一例を示す図。
【図7】本実施例の情報端末におけるパイロット信号検出処理のフローチャート。
【図8】本実施例の情報端末におけるパイロット信号の検出手法を説明するための概念図。
【図9】本実施例の情報端末におけるパイロット信号検出時のビニング処理を説明するための概念図。
【図10】本実施例の情報端末におけるパイロット信号検出時のID領域分割を説明するための概念図。
【図11】本実施例の情報端末におけるパイロット信号検出時の動き補償を説明するための概念図。
【図12】本実施例の情報端末におけるパイロット信号検出時の動き補償を説明するための概念図。
【図13】本実施例の情報端末におけるID復号処理時の間引き読み出しを説明するための概念図。
【図14】本実施例の情報端末におけるパイロット信号検出時の発光部の明滅に対する処理を説明するための概念図。
【図15】本実施例の情報端末におけるID復号処理のフローチャート。
【図16】本実施例の情報端末におけるID復号処理時の動き補償を説明するための概念図。
【図17】図1の遠隔制御システムにおける情報端末と各情報機器との間の通信形態を示す概念図。
【図18】図1の遠隔制御システムにおける起動処理シーケンスの説明図。
【図19】図1の遠隔制御システムにおいてユーザーが情報端末上の操作によって情報機器の遠隔制御を行う際の処理の一例の説明図。
【符号の説明】
【0098】
1…情報端末
10…撮像/受光部
11…イメージセンサ
12…受光レンズ
13…IDデータ受信処理部
14…ID位置検出処理部
15…画像データ処理部
16…通信確立制御部
20…主制御部
21…表示部
21a…識別情報
22…操作部
2…DVDレコーダ
3…パソコン
4…デジタルカメラ
5…携帯型音楽プレーヤ
6…デジタルテレビ
7…ネットワーク
8…リソースセンター

【特許請求の範囲】
【請求項1】
少なくとも所定情報を含む光を発する発光源を備える送信装置が有する前記情報を、空間光通信により取得するための受信機能を有する情報処理装置であって、撮像機能による撮像範囲の画像情報と並行してその撮像範囲内に存在する前記送信装置の発光源による発光光の位置情報を取得するために、
a)光電変換を行う画素セルが二次元状に配列された受光部と各画素セルで光電変換により得られた画素信号を読み出す読み出し回路とを含む撮像手段と、
b)前記撮像手段の各画素セルから読み出された画素信号に基づいて、隣接する複数の画素セルを仮想的にまとめた拡大画素セルの信号により、同一フレームに対し解像度の相違する複数の画像を作成するビニング処理手段と、
c)1個の画素セル又は1個の前記拡大画素セルにより得られる画素信号に対し、連続する一定数のフレームの画像に基づいて前記発光源による発光光の有無を反映した評価値を求め、該評価値により前記発光光を受光している画素セル又は拡大画素セルを判定する評価手段と、
d)前記ビニング処理手段により作成された最も解像度の低い画像に対する前記評価手段による判定により発光源による発光光を受光している拡大画素セルを特定し、その拡大画素セルを含む範囲に限定した次に解像度が低い画像に対して前記評価手段による判定を行って前記発光源による発光光を受光している拡大画素セル又は画素セルを特定する、という処理を所定回数繰り返すことで、発光源による発光光を受けている画素セルの位置を最終的に特定する処理手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記評価手段は、連続する一定数のフレームの画像についての高速フーリエ変換演算を利用した評価関数により各画素セル又は拡大画素セル毎の評価値を算出することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記評価手段は、評価対象の画像の解像度に応じて精度の異なる評価関数を用いた評価を行うことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記撮像手段の各画素セルから読み出された画素信号を用いて作成される連続する複数のフレームの画像に基づいて、撮像範囲内での前記発光源の相対的な移動に関わる方向や速度を推定する移動情報推定手段をさらに備え、前記評価手段は、前記移動情報推定手段により推定された移動情報に基づいて、その動きを補償した評価値を算出することを特徴とする請求項1〜3のいずれかに記載の情報処理装置。
【請求項5】
前記移動情報推定手段は、相対的に解像度の高い画像に移行するときに、領域分割した各部分領域それぞれに対して移動量の推定を行うことを特徴とする請求項4に記載の情報処理装置。
【請求項6】
前記移動情報推定手段は、連続するフレームの複数の画像の間の相互相関を計算し、その相関値の最大値に基づいて移動に関わる情報を取得することを特徴とする請求項4又は5に記載の情報処理装置。
【請求項7】
前記移動情報推定手段は、相対的に解像度の高い画像に移行するときに、それまでの低い解像度の画像での動きの補償がなされているという前提の下に、ビニング処理による画素位置精度の不確定さを含む範囲内でのみ移動量の推定を行うことを特徴とする請求項4〜6のいずれかに記載の情報処理装置。
【請求項8】
前記ビニング処理手段は、低解像度の画像を作成する際に、その低解像度の画像内で或る1個の拡大画素セルに対応する、高い解像度の画像中での複数の画素セル又は拡大画素セルと、低画像度の画像内で前記1個の拡大画素セルに隣接する1個の拡大画素セルに対応する、高い解像度の画像中での複数の画素セル又は拡大画素セルとで、その一部が重複するように画素セル又は拡大画素セルを設定することを特徴とする請求項1〜7のいずれかに記載の情報処理装置。
【請求項9】
前記ビニング処理手段は各画素セル又は拡大画素セルの画素値を対数圧縮することを特徴とする請求項1〜8のいずれかに記載の情報処理装置。
【請求項10】
請求項1〜9のいずれかに記載の情報処理装置と、少なくとも所定周波数の光を発する発光源を含む送信装置とを含み、前記送信装置は、第1の周波数を有するパイロット信号と、該第1の周波数よりも高い周波数を有し、該送信装置に関わる情報を含むID信号とが周波数分割により重畳された光信号を送出し、前記情報処理装置は、前記パイロット信号の検出結果に基づいて送信装置の位置を認識し、その位置情報に基づいて前記撮像手段の受光部の1乃至複数の画素セルを特定して該画素セルによる画素信号に基づいて前記ID信号を取得することを特徴とする情報処理システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2007−60093(P2007−60093A)
【公開日】平成19年3月8日(2007.3.8)
【国際特許分類】
【出願番号】特願2005−241021(P2005−241021)
【出願日】平成17年8月23日(2005.8.23)
【出願人】(503360115)独立行政法人科学技術振興機構 (1,734)
【出願人】(504143441)国立大学法人 奈良先端科学技術大学院大学 (226)
【出願人】(000201113)船井電機株式会社 (7,855)
【Fターム(参考)】