(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-04-26
(45)【発行日】2023-05-09
(54)【発明の名称】位置推定装置、照明装置特定装置、学習器、及びプログラム
(51)【国際特許分類】
G01S 5/16 20060101AFI20230427BHJP
【FI】
G01S5/16
(21)【出願番号】P 2019123518
(22)【出願日】2019-07-02
【審査請求日】2022-05-16
(73)【特許権者】
【識別番号】503420833
【氏名又は名称】学校法人常翔学園
(74)【代理人】
【識別番号】100115749
【氏名又は名称】谷川 英和
(74)【代理人】
【識別番号】100121223
【氏名又は名称】森本 悟道
(72)【発明者】
【氏名】小林 裕之
【審査官】藤田 都志行
(56)【参考文献】
【文献】国際公開第2017/204839(WO,A1)
【文献】特表2005-523458(JP,A)
【文献】特開2010-261896(JP,A)
【文献】米国特許出願公開第2015/0377609(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G01S 5/00- 5/16
JSTPlus/JST7580(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
照明装置からの光を検出するセンサと、
前記センサによる検出結果をフーリエ変換することによって、前記照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンを取得する周波数パターン取得部と、
照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンである訓練用入力情報と、当該訓練用入力情報に対応する照明装置を示す訓練用出力情報との組を複数用いて学習された学習器が記憶される学習器記憶部と、
前記周波数パターン取得部によって取得された周波数パターンを前記学習器に適用することによって、前記センサによって検出された光に対応する照明装置を識別する照明識別子を取得する照明識別子取得部と、を備え
、
前記周波数パターンは、周波数領域において、周波数が大きくなるほど、より大きい周波数間隔となる周波数に関するパターンである、照明装置特定装置。
【請求項2】
照明装置からの光を検出するセンサと、
前記センサによる検出結果をフーリエ変換することによって、前記照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンを取得する周波数パターン取得部と、
照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンである訓練用入力情報と、当該訓練用入力情報に対応する照明装置を示す訓練用出力情報との組を複数用いて学習された学習器が記憶される学習器記憶部と、
前記周波数パターン取得部によって取得された周波数パターンを前記学習器に適用することによって、前記センサによって検出された光に対応する照明装置を識別する照明識別子を取得する照明識別子取得部と、
照明識別子と当該照明識別子で識別される照明装置の位置とを対応付ける対応情報が記憶される対応情報記憶部と、
前記対応情報と前記
照明識別子取得部によって取得された照明識別子とを用いて前記センサに関する位置を推定する位置推定部と、
前記位置推定部によって推定された位置を出力する出力部と、を備え、
前記照明識別子取得部は、2以上の照明識別子と、当該2以上の照明識別子にそれぞれ対応する尤度とを取得するものであり、
前記位置推定部は、前記照明識別子取得部によって取得された2以上の照明識別子に対応付けられている照明装置の位置と、当該2以上の照明識別子にそれぞれ対応する尤度である重みとを用いて、前記センサに関する位置を推定する、位置推定装置。
【請求項3】
照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンである訓練用入力情報と、当該訓練用入力情報に対応する照明装置を示す訓練用出力情報との複数の組の学習結果である学習器であって、
前記周波数パターンは、周波数領域において、周波数が大きくなるほど、より大きい周波数間隔となる周波数に関するパターンであり、
センサによる検出結果をフーリエ変換することによって取得された、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンが適用されると、前記センサによって検出された光に対応する照明装置を識別する照明識別子を取得することができる、学習器。
【請求項4】
コンピュータを、
照明装置からの光を検出するセンサによる検出結果をフーリエ変換することによって、前記照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンを取得する周波数パターン取得部、
前記周波数パターン取得部によって取得された周波数パターンを、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンである訓練用入力情報と、当該訓練用入力情報に対応する照明装置を示す訓練用出力情報との組を複数用いて学習された学習器に適用することによって、前記センサによって検出された光に対応する照明装置を識別する照明識別子を取得する照明識別子取得部として機能させ
、
前記周波数パターンは、周波数領域において、周波数が大きくなるほど、より大きい周波数間隔となる周波数に関するパターンである、プログラム。
【請求項5】
コンピュータを、
照明装置からの光を検出するセンサによる検出結果をフーリエ変換することによって、前記照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンを取得する周波数パターン取得部、
前記周波数パターン取得部によって取得された周波数パターンを、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンである訓練用入力情報と、当該訓練用入力情報に対応する照明装置を示す訓練用出力情報との組を複数用いて学習された学習器に適用することによって、前記センサによって検出された光に対応する照明装置を識別する照明識別子を取得する照明識別子取得部、
照明識別子と当該照明識別子で識別される照明装置の位置とを対応付ける対応情報と、前記照明識別子取得部によって取得された照明識別子とを用いて前記センサに関する位置を推定する位置推定部、
前記位置推定部によって推定された位置を出力する出力部として機能させ、
前記照明識別子取得部は、2以上の照明識別子と、当該2以上の照明識別子にそれぞれ対応する尤度とを取得するものであり、
前記位置推定部は、前記照明識別子取得部によって取得された2以上の照明識別子に対応付けられている照明装置の位置と、当該2以上の照明識別子にそれぞれ対応する尤度である重みとを用いて、前記センサに関する位置を推定する、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、照明光の明滅に関する周波数パターンを用いて、照明光を検出したセンサに関する位置を推定する位置推定装置等に関する。
【背景技術】
【0002】
従来、照明光を用いて自己位置を推定することが行われている(例えば、特許文献1~5,非特許文献1,2参照)。
【0003】
なお、特許文献1,2,5に記載された技術では、位置推定のために、各照明装置が異なる属性を有するように設定している。例えば、固有の識別情報が重畳された照明光を発する照明装置を用いたり、各照明装置を特定の周波数で点滅させたりすることが行われている。
【0004】
一方、特許文献3,4、及び非特許文献1,2に記載された技術では、照明光の個体差を用いて位置推定を行っている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2016-033457号公報
【文献】特開2010-261896号公報
【文献】国際公開第2017/205020号
【文献】国際公開第2017/204839号
【文献】米国特許第9644973号明細書
【非特許文献】
【0006】
【文献】山野鈴太郎、小林裕之、「照明光の周波数成分の個体差に基づく自己位置推定法の検討」、第18回計測自動制御学会システムインテグレーション部門講演会予稿集、3307-3309頁、2017年
【文献】S. Hamidi-Rad et al., "Infrastructure-less indoor localization using light fingerprints," Proc. 2017 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp.5995-5999.
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1,2,5に記載された技術では、上記のように、各照明装置が異なる属性を有するようにするため、専用の照明装置を用いる必要があり、その準備の負担が大きいという問題があった。
【0008】
特許文献3,4、及び非特許文献1,2に記載された技術では、照明光の個体差を用いて位置推定を行うため、専用の照明装置を用いる必要はない。一方、非特許文献1に記載された技術では、照明光の固有の周波数としてピークの周波数を検出するため、非常に高い分解能で周波数の検出を行う必要があり、固有の周波数の検出用の回路が大規模になるという問題がある。また、そのような照明光の固有の周波数は、経年変化の影響を受けやすく、その結果、精度が悪化するという問題もあった。
【0009】
また、特許文献3に記載された技術では、照明光をフーリエ変換した後の40kHz以上の周波数の情報を用いている。また、特許文献4に記載された技術では、照明光をフーリエ変換した後の30kHz~115kHzの周波数の情報を用いている。また、非特許文献2に記載された技術では、照明光をフーリエ変換した後の5kHz~255kHzの周波数の情報を用いている。このように、特許文献3,4、及び非特許文献2に記載された技術では、照明光の明滅に関して、可聴域を超える高い周波数の情報を用いているため、それに応じて専用の回路等を用意する必要があった。
【0010】
本発明は、上記課題を解決するためになされたものであり、汎用の構成を用いて、照明光に内在する個体差を用いた照明装置の特定を行うことができる照明装置特定装置や、照明装置特定装置によって特定された照明装置に基づいて位置推定を行うことができる位置推定装置等を提供することを目的とする。
【課題を解決するための手段】
【0011】
上記目的を達成するため、本発明による照明装置特定装置は、照明装置からの光を検出するセンサと、センサによる検出結果をフーリエ変換することによって、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンを取得する周波数パターン取得部と、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンである訓練用入力情報と、訓練用入力情報に対応する照明装置を示す訓練用出力情報との組を複数用いて学習された学習器が記憶される学習器記憶部と、周波数パターン取得部によって取得された周波数パターンを学習器に適用することによって、センサによって検出された光に対応する照明装置を識別する照明識別子を取得する照明識別子取得部と、を備えたものである。
このような構成により、専用の照明装置を用いなくても、照明装置の個体差を用いて、センサによって検出された光に対応する照明装置を特定することができる。また、その特定のために、可聴域以下の周波数の周波数パターンを用いるため、例えば、音声処理のための回路を用いてAD変換等を行うことができ、照明装置を特定するための専用の回路等を用意しなくてもよいというメリットがある。
【0012】
また、本発明による照明装置特定装置では、周波数パターンは、周波数領域において、周波数が大きくなるほど、より大きい周波数間隔となる周波数に関するパターンであってもよい。
このような構成により、周波数パターンの情報量を少なくすることができる。なお、照明光の明滅に関する周波数パターンを用いる場合には、上記非特許文献1に記載された技術で要求されるような高い分解能は必要なく、高い周波数の範囲において特にそうである。したがって、周波数が大きくなるほど、周波数間隔がより大きくなる周波数パターンを用いることにより、情報量を削減できると共に、照明装置の特定の精度の低下を抑えることもできる。
【0013】
また、本発明による位置推定装置は、照明装置特定装置と、照明識別子と照明識別子で識別される照明装置の位置とを対応付ける対応情報が記憶される対応情報記憶部と、対応情報と照明装置特定装置によって取得された照明識別子とを用いてセンサに関する位置を推定する位置推定部と、位置推定部によって推定された位置を出力する出力部と、を備え、照明識別子取得部は、2以上の照明識別子と、2以上の照明識別子にそれぞれ対応する尤度とを取得するものであり、位置推定部は、照明識別子取得部によって取得された2以上の照明識別子に対応付けられている照明装置の位置と、2以上の照明識別子にそれぞれ対応する尤度である重みとを用いて、センサに関する位置を推定する、ものである。
このような構成により、センサが照明装置の間に位置する場合においても、そのセンサに関する位置を推定することができる。
【0014】
また、本発明による学習器は、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンである訓練用入力情報と、訓練用入力情報に対応する照明装置を示す訓練用出力情報との複数の組の学習結果である学習器であって、センサによる検出結果をフーリエ変換することによって取得された、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンが適用されると、センサによって検出された光に対応する照明装置を識別する照明識別子を取得することができる、ものである。
【発明の効果】
【0015】
本発明による照明装置特定装置によれば、汎用の構成を用いて、照明光の個体差を用いた照明装置の特定を行うことができる。また、本発明による位置推定装置によれば、照明装置特定装置によって特定された照明装置に基づいて位置推定を行うことができる。
【図面の簡単な説明】
【0016】
【
図1】本発明の実施の形態による位置推定装置の構成を示すブロック図
【
図2】同実施の形態による位置推定装置の動作を示すフローチャート
【
図3】同実施の形態による位置推定装置に関する実験結果を示す図
【
図4】同実施の形態による位置推定装置または照明装置特定装置を実現するコンピュータシステムの一例を示す図
【発明を実施するための形態】
【0017】
以下、本発明による位置推定装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。本実施の形態による位置推定装置は、照明光の明滅に関する可聴域以下の周波数の周波数パターンを用いて光源を特定し、その特定した光源に基づいてセンサに関する位置を推定するものである。
【0018】
図1は、本実施の形態による位置推定装置1の構成を示すブロック図である。本実施の形態による位置推定装置1は、照明装置特定装置2と、対応情報記憶部11と、位置推定部12と、出力部13とを備える。照明装置特定装置2は、センサ21と、周波数パターン取得部22と、学習器記憶部23と、照明識別子取得部24とを備える。
【0019】
位置推定装置1は、例えば、スマートフォンやタブレット端末、パーソナル・コンピュータ等の汎用の装置であってもよく、位置推定を行うための専用の装置であってもよい。前者の場合において、スマートフォン等の装置が、光を検出できる照度計などのセンサを有しているときには、それをセンサ21として用いてもよく、そのようなセンサを有していないときには、装置に外付けのセンサ21を装着することによって、位置推定装置1として機能するようにしてもよい。
【0020】
センサ21は、1個または2個以上の照明装置からの光を検出する。本実施の形態による照明装置特定装置2は、照明装置からの光の明滅に関する個体差を用いて、照明光を識別する。したがって、照明装置の光源は、例えば、LEDや、蛍光灯などのように光が明滅するものである。なお、照明光の明滅は、肉眼では認識できない明滅であってもよい。本実施の形態では、照明装置が、屋内の空間を明るくするために用いられる場合について主に説明する。その場合に、照明装置は、例えば、天井に配置されていてもよい。なお、2個以上の照明装置が位置推定に用いられる場合には、各照明装置の照明光の強度が揃っていることが好適である。このセンサ21によって、照明光の強度の時間変化に応じた信号が取得される。このセンサ21は、上記のように、スマートフォン等が有する照度計等であってもよく、スマートフォンや専用の装置等に装着されるセンサであってもよい。後者の場合に、センサ21は、例えば、フォトダイオードや抵抗器を含む回路を有していてもよい。
【0021】
周波数パターン取得部22は、センサ21による検出結果をフーリエ変換することによって、照明装置からの光の明滅に関する周波数パターンを取得する。周波数パターンは、周波数領域における光の強度を示す情報、すなわち照明光の明滅に関する周波数スペクトルである。この周波数パターンは、照明光の個体差に応じた特徴を示すため、特徴量であると言うこともできる。
【0022】
なお、周波数パターンは、可聴域以下の周波数における情報である。したがって、センサ21からの信号をAD(アナログ/デジタル)変換する際には、音声処理用のAD変換器を用いることができる。位置推定装置1がスマートフォン等である場合には、スマートフォン等にあらかじめ備えられている音声処理用のAD変換器を用いてAD変換が行われてもよい。そのため、例えば、センサ21が外付けである場合には、スマートフォン等の音声入力端子(マイク端子)に装着されてもよい。また、位置推定装置1が位置推定のための専用の装置である場合であっても、汎用の音声処理用のAD変換器を用いることができ、低コストで装置を構成することができる。可聴域以下の周波数は、特に限定されるものではないが、例えば、50kHz以下の周波数であってもよく、44.1kHz以下の周波数であってもよく、22.05kHz以下の周波数であってもよい。また、周波数パターンにおける周波数の下限は、特に限定されるものではないが、例えば、20Hzであってもよく、50Hzであってもよく、100Hzであってもよい。
【0023】
また、周波数パターンは、例えば、周波数領域において、均等な周波数ごとの情報であってもよく、または、そうでなくてもよい。前者の場合には、周波数パターンは、特に限定されるものではないが、例えば、1Hzや0.5Hz、0.25Hzごとの情報などのように、1Hz以下の周波数間隔ごとの情報であってもよい。また、より低い周波数の範囲では、より高い分解能であることが照明光の個体差の識別には好適であるが、より高い周波数の範囲では、より低い分解能であっても照明光の個体差の識別を行うことができることが分かった。高い周波数の範囲では、照明光の個体差がより明確だからである。したがって、周波数パターンは、周波数領域において、周波数が大きくなるほど、より大きい周波数間隔となる周波数に関するパターンであってもよい。具体的には、周波数パターンは、対数目盛において等間隔となる周波数に関するパターンであってもよい。すなわち、周波数パターンは、対数周波数軸上で等間隔となる周波数ごとに照明光の強度を示す情報であってもよい。例えば、周波数パターン取得部22は、センサ21による検出結果をフーリエ変換して、0.25Hz刻みなどの高い分解能で情報を取得し、その取得した情報の周波数軸を対数スケールにした後に、対数周波数軸上で等間隔となる周波数ごとの情報のみを取得することによって周波数パターンを取得してもよい。このように、周波数領域において、周波数が大きくなるほど、より大きい周波数間隔となる周波数に関する周波数パターンを用いることによって、周波数パターンの情報量を低減することができ、後段の処理負荷をより低減することができる。一方、そのような周波数パターンを用いたとしても、上記のように、照明光の個体差を適切に識別することができる。
【0024】
学習器記憶部23では、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンである訓練用入力情報と、その訓練用入力情報に対応する照明装置を示す訓練用出力情報との組を複数用いて学習された学習器が記憶される。この学習器は、例えば、ニューラルネットワーク(Neural Network)の学習結果であってもよく、それ以外の機械学習の学習結果であってもよい。本実施の形態では、学習器がニューラルネットワークの学習結果である場合について主に説明し、それ以外の学習結果である場合については後述する。また、訓練用入力情報と訓練用出力情報との組を訓練情報と呼ぶこともある。
【0025】
ニューラルネットワークは、例えば、全結合層から構成されるニューラルネットワークであってもよく、それ以外のニューラルネットワークであってもよい。また、ニューラルネットワークが少なくとも1個の中間層(隠れ層)を有する場合には、そのニューラルネットワークの学習は、深層学習(ディープラーニング、Deep Learning)であると考えてもよい。また、機械学習にニューラルネットワークを用いる場合において、そのニューラルネットワークの層数、各層におけるノード数、各層の種類(例えば、畳み込み層、全結合層など)等については、適宜、選択したものを用いてもよい。また、各層において、バイアスを用いてもよく、または、用いなくてもよい。バイアスを用いるかどうかは、層ごとに独立して決められてもよい。また、出力層の前段にソフトマックス層が設けられていてもよい。なお、入力層と出力層のノード数は、通常、訓練情報に含まれる訓練用入力情報の情報数と訓練用出力情報の情報数とによって決まる。本実施の形態による学習器は、周波数パターンの分類器として用いられるため、例えば、分類器として用いられる一般的なニューラルネットワークの学習結果であってもよい。
【0026】
また、ニューラルネットワークにおける各設定は、次のようであってもよい。活性化関数は、例えば、ReLU(正規化線形関数)であってもよく、シグモイド関数であってもよく、その他の活性化関数であってもよい。また、学習では、例えば、誤差逆伝搬法を用いてもよく、ミニバッチ法を用いてもよい。また、損失関数(誤差関数)は、平均二乗誤差であってもよい。また、epoch数(パラメータの更新回数)は特に問わないが、過剰適合とならないepoch数が選択されることが好適である。また、過剰適合を予防するため、所定の層間においてドロップアウトを行ってもよい。なお、機械学習における学習方法としては、公知の方法を用いることができ、その詳細な説明を省略する。
【0027】
学習器が学習器記憶部23で記憶されているとは、例えば、学習器そのもの(例えば、入力に対して値を出力する関数や学習結果のモデル等)が記憶されていることであってもよく、学習器を構成するために必要なパラメータ等の情報が記憶されていることであってもよい。後者の場合であっても、そのパラメータ等の情報を用いて学習器を構成できるため、実質的に学習器が学習器記憶部23で記憶されていると考えることができるからである。本実施の形態では、学習器そのものが学習器記憶部23で記憶されている場合について主に説明する。
【0028】
ここで、学習器の生成について説明する。上記のように、訓練用入力情報は、照明装置からの光の検出結果をフーリエ変換して得られた周波数パターンである。したがって、訓練用入力情報は、周波数軸上の所定の周波数ごと(例えば、均等な周波数ごとや、上記のように、高周波になるほど間隔が広くなる周波数ごとなど)の情報となる。訓練用入力情報である周波数パターンは、照明識別子の特定に用いられる周波数パターンと、周波数の範囲や周波数の間隔が同じであることが好適である。また、天井に配置された複数の照明装置に関して訓練用入力情報を用意する場合には、例えば、位置の推定時と同様にすべての照明装置を点灯した状況において、1個の照明装置の直下における照明光の検出結果に応じた周波数パターンを取得してもよく、1個の照明装置のみを点灯した状況において、その1個の照明装置の直下における照明光の検出結果に応じた周波数パターンを取得してもよい。訓練用出力情報は、その訓練用出力情報と組となっている訓練用入力情報に対応する照明装置を示す情報である。すなわち、ある照明装置からの照明光の周波数パターンが訓練用入力情報である場合には、その照明装置を識別できる情報が、その訓練用入力情報と組となる訓練用出力情報であることが好適である。訓練用出力情報は、例えば、照明装置の個数と同じ個数の情報であって、訓練用入力情報に応じた照明装置に対応する情報だけが「1」となり、それ以外の照明装置に対応する情報が「0」となるものであってもよい。本実施の形態では、訓練用出力情報がそのような情報である場合について主に説明する。
【0029】
例えば、ある照明装置からの光を検出したセンサの検出結果を用いて取得された周波数パターンである訓練用入力情報と、その照明装置に応じたノードの値のみが「1」となり、それ以外のノードの値が「0」となる訓練用出力情報との組を、位置推定を行う空間に配置されたすべての照明装置についてそれぞれ取得し、訓練用入力情報及び訓練用出力情報の複数の組を学習することによって、学習器が製造される。なお、N個の照明装置が配置されている空間での位置推定を行う場合には、訓練情報の個数はN個になる。また、訓練情報を増やすため、1個の照明装置について、センサによる検出をM回行ってもよい。その場合には、訓練情報の個数はN×M個となる。また、そのようにして得られた訓練情報にノイズを加えることによって、訓練情報の個数をさらに増やしてもよい。
【0030】
なお、訓練用入力情報は、例えば、照明装置特定装置2が有するセンサ21や周波数パターン取得部22を用いて取得されてもよく、または、その他の装置によって取得されてもよい。例えば、非特許文献1に記載された技術では、照明光の固有の周波数を高い精度で検出する必要があるため、照明光の固有の周波数の検出に関して、事前の検出と、位置推定時の検出とに同じセンサが用いられることが好適である。一方、周波数パターンを用いた位置検出では、そのような鋭敏さは要求されないため、訓練用入力情報の取得に用いられるセンサと、位置推定に用いられるセンサ21とは、異なっていてもよい。
【0031】
上記のように複数の訓練情報を学習して生成された学習器に、センサ21による検出結果をフーリエ変換することによって取得された、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンが適用されると、センサ21によって検出された光に対応する照明装置を識別する照明識別子を取得することができる。具体的には、周波数パターンを学習器に入力すると、複数の照明装置にそれぞれ対応する出力層の複数のノードから、それぞれ0~1の値が出力される。この値がいわゆる尤度である。また、学習器の出力層の各ノードは、それぞれ照明装置に対応付けられているため、出力層の各ノードは、それぞれ照明識別子に対応付けられていると言うことができる。したがって、周波数パターンを学習器に適用することによって、2以上の照明識別子と、その2以上の照明識別子にそれぞれ対応する尤度とを取得することができる。
【0032】
学習器記憶部23に学習器が記憶される過程は問わない。例えば、記録媒体を介して学習器が学習器記憶部23で記憶されるようになってもよく、通信回線等を介して送信された学習器が学習器記憶部23で記憶されるようになってもよい。学習器記憶部23での記憶は、RAM等における一時的な記憶でもよく、または、長期的な記憶でもよい。学習器記憶部23は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
【0033】
照明識別子取得部24は、周波数パターン取得部22によって取得された周波数パターンを学習器に適用することによって、センサ21によって検出された光に対応する照明装置を識別する照明識別子を取得する。なお、照明識別子取得部24は、例えば、1つの照明識別子を取得してもよく、2以上の照明識別子を取得してもよい。前者の場合には、照明識別子取得部24は、例えば、最も高い尤度に対応する照明識別子を取得してもよい。その場合には、例えば、センサ21によって検出された光の光源である照明装置の照明識別子が取得されることになる。また、後者の場合、すなわち2以上の照明識別子を取得する場合には、照明識別子取得部24は、例えば、2以上の照明識別子と、その2以上の照明識別子にそれぞれ対応する尤度とを取得してもよい。また、センサ21によって検出された光に対応する照明装置を識別する照明識別子とは、センサ21によって検出された光の光源を特定可能な照明識別子と考えてもよい。例えば、2以上の照明識別子と、2以上の尤度とが取得された場合には、その尤度を用いることによって、センサ21によって検出された光の光源である照明装置を特定することができるからである。より具体的には、高い尤度に対応している照明識別子で識別される照明装置からの光が、センサ21によって受光されたことを知ることができる。
【0034】
なお、照明識別子と尤度との組を取得する場合に、照明識別子取得部24は、例えば、照明識別子と尤度とのすべての組(すなわち、出力層のノード数と同じ個数の組)を取得してもよく、尤度が所定の値の範囲である組のみを取得してもよい。後者の場合には、照明識別子取得部24は、例えば、尤度が所定の正の閾値を超える組や、尤度が所定の正の閾値以上である組を取得してもよい。その閾値は、例えば、0より大きく、1より小さい値であってもよい。本実施の形態では、照明識別子取得部24が、0を超える尤度のノードについて、照明識別子と尤度との組をそれぞれ取得する場合について主に説明する。照明識別子を取得するとは、結果として取得された照明識別子がどれであるのかを特定できるのであれば、その取得の方法は問わない。また、2以上の照明識別子と、その2以上の照明識別子にそれぞれ対応する尤度とを、学習器のすべての出力ノードについて取得する場合には、識別子取得部24は、例えば、あらかじめ決められたノードの順番に、尤度を取得してもよい。そのようにして取得された各尤度は、どの照明識別子に対応しているのかが分かるため、結果として、2以上の照明識別子と、その2以上の照明識別子にそれぞれ対応する尤度とが取得されたことと同じになる。
【0035】
また、本実施の形態では、周波数パターンを学習器に適用する処理が、周波数パターンを、学習器記憶部23で記憶されている学習器に適用する処理である場合について主に説明するが、そうでなくてもよい。周波数パターンを学習器に適用する処理は、例えば、周波数パターンを、照明装置特定装置2の外部に存在するサーバ等で記憶されている学習器に適用する処理であってもよい。この場合には、照明識別子取得部24は、学習器が記憶されているサーバ等に周波数パターンを送信し、そのサーバ等から、周波数パターンが学習器に適用された結果を受信することによって、周波数パターンの学習器への適用結果を取得してもよい。このように、結果として、周波数パターンの学習器への適用結果を取得できるのであれば、周波数パターンを学習器に適用する処理の内容は問わない。
【0036】
対応情報記憶部11では、照明識別子と、その照明識別子で識別される照明装置の位置とを対応付ける対応情報が記憶される。照明装置の位置は、例えば、所定の座標系における座標値であってもよい。その位置は、例えば、2次元平面における位置であってもよく、3次元空間における位置であってもよい。例えば、天井に照明装置が配置されている空間での位置推定の場合には、水平方向での位置が分かればよいため、照明装置の位置は、2次元平面における位置であってもよい。対応情報は、例えば、照明識別子と、その照明識別子で識別される照明装置の位置とを有する情報であってもよく、照明識別子と、その照明識別子で識別される照明装置の位置とのリンク関係を示す情報であってもよい。対応情報記憶部11では、通常、複数の対応情報が記憶される。
【0037】
対応情報記憶部11に対応情報が記憶される過程は問わない。例えば、記録媒体を介して対応情報が対応情報記憶部11で記憶されるようになってもよく、通信回線等を介して送信された対応情報が対応情報記憶部11で記憶されるようになってもよく、または、入力デバイスを介して入力された対応情報が対応情報記憶部11で記憶されるようになってもよい。対応情報記憶部11での記憶は、RAM等における一時的な記憶でもよく、または、長期的な記憶でもよい。対応情報記憶部11は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
【0038】
位置推定部12は、対応情報記憶部11で記憶されている対応情報と、照明装置特定装置2によって取得された照明識別子とを用いてセンサ21に関する位置を推定する。照明装置特定装置2によって取得された照明識別子とは、照明識別子取得部24によって取得された照明識別子のことである。照明識別子取得部24によって1つの照明識別子が取得される場合には、位置推定部12は、その照明識別子を検索キーとして対応情報記憶部11において検索を行い、ヒットした照明識別子に対応付けられている位置を取得してもよい。その取得された位置を用いて、センサ21に関する位置が取得される。
【0039】
センサ21に関する位置は、例えば、センサ21そのものの位置であってもよく、または、位置推定装置1の所定の箇所の位置であってもよい。センサ21に関する位置が、センサ21そのものの位置である場合には、例えば、照明識別子取得部24によって取得された1つの照明識別子に対応情報によって対応付けられている位置が、センサ21の位置となる。また、通常、センサ21の装着箇所と、位置推定装置1の所定の箇所との対応関係は既知であるため、センサ21の位置を用いて、位置推定装置1の所定の箇所の位置が取得されてもよい。なお、センサ21の位置から位置推定装置1の所定の箇所の位置が取得される際に、位置推定装置1の姿勢(向き)が用いられてもよい。その姿勢は、例えば、ジャイロセンサや、地磁気センサ(電子コンパス)等によって取得される方位角であってもよい。また、位置推定装置1が小型の装置である場合には、センサ21の位置と、位置推定装置1の所定の箇所の位置との差は小さいと考えられるため、センサ21の位置が、位置推定装置1の所定の箇所の位置であるとみなしてもよい。本実施の形態では、センサ21に関する位置が、センサ21の位置である場合について主に説明する。
【0040】
また、照明識別子取得部24によって、2以上の照明識別子と、その2以上の照明識別子にそれぞれ対応する尤度とが取得された場合には、位置推定部12は、その2以上の照明識別子のそれぞれを検索キーとして対応情報記憶部11において検索を行うことによって、各照明識別子に対応付けられている位置をそれぞれ取得する。このようにして、照明識別子取得部24によって取得された照明識別子と、その照明識別子によって識別される照明装置の位置との複数の組が特定される。次に、位置推定部12は、その2以上の照明識別子にそれぞれ対応する尤度である重みを用いて、センサ21に関する位置を推定する。具体的には、位置推定部12は、次式のように、2以上の照明識別子に対応する2以上の位置について、尤度である重みを用いた加重平均を計算することによって、センサ21に関する位置の取得を行ってもよい。すなわち、2以上の照明識別子に対応する2以上の位置について、尤度である重み付けを行った結果が、推定位置となってもよい。
式1:x=Σdipi
【0041】
なお、上式において、piはi番目の照明識別子によって識別される照明装置の位置、すなわちi番目の照明識別子に対応情報によって対応付けられている位置を示すベクトルであり、xは推定位置を示すベクトルであるとする。また、diはi番目の照明識別子に対応する尤度である。ここでは、ソフトマックス層などによって、尤度は0~1の範囲の値となっており、また、出力層における各尤度の合計が1になるようにされているものとしている。そうでない場合には、diがそのような値になるように、適宜、規格化等が行われてもよい。また、上記式1において、総和は、例えば、すべてのiについて取られてもよく、照明識別子が取得されたiについてのみ取られてもよい。なお、diが所定の閾値を超えるiについてのみ、照明識別子が取得される場合には、上記式1において、取得された照明識別子に対応するdiについて規格化が行われてもよい。なお、上記式1を用いて取得される位置はセンサ21の位置であるため、位置推定部12は、例えば、上記のように、そのセンサ21の位置を用いて、位置推定装置1の所定の箇所の位置を取得してもよい。
【0042】
出力部13は、位置推定部12によって推定された位置を出力する。出力された位置は、例えば、屋内におけるユーザの位置を把握するために用いられてもよく、自律的に移動する搬送台車等の移動体の移動制御に用いられてもよく、その他の用途に用いられてもよい。ここで、この出力は、例えば、表示デバイス(例えば、液晶ディスプレイや有機ELディスプレイなど)への表示でもよく、所定の機器への通信回線を介した送信でもよく、プリンタによる印刷でもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよい。なお、出力部13は、出力を行うデバイス(例えば、表示デバイスや通信デバイスなど)を含んでもよく、または含まなくてもよい。また、出力部13は、ハードウェアによって実現されてもよく、または、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【0043】
なお、学習器記憶部23と、対応情報記憶部11とは、同一の記録媒体によって実現されてもよく、または、別々の記録媒体によって実現されてもよい。前者の場合には、学習器を記憶している領域が学習器記憶部23となり、対応情報を記憶している領域が対応情報記憶部11となる。
【0044】
次に、位置推定装置1の動作について
図2のフローチャートを用いて説明する。
(ステップS101)位置推定部12は、位置の推定を行うかどうか判断する。そして、位置の推定を行う場合には、ステップS102に進み、そうでない場合には、位置の推定を行うと判断するまで、ステップS101の処理を繰り返す。なお、位置推定部12は、例えば、位置推定装置1が、位置を推定する旨の指示をユーザ等から受け付けた場合に、位置を推定すると判断してもよい。
【0045】
(ステップS102)センサ21は、照明装置からの光を検出し、検出結果である信号を周波数パターン取得部22に出力する。センサ21による検出結果は、例えば、あらかじめ決められた期間だけ、記録されてもよい。その記録は、例えば、周波数パターン取得部22によって行われてもよく、その他の構成によって行われてもよい。
【0046】
(ステップS103)周波数パターン取得部22は、センサ21による検出結果をフーリエ変換することによって、周波数パターンを取得する。
【0047】
(ステップS104)照明識別子取得部24は、ステップS103で取得された周波数パターンを、学習器記憶部23で記憶されている学習器に適用することによって、センサ21が検出した照明光に対応する照明装置の照明識別子を取得する。なお、照明識別子取得部24は、2以上の照明識別子と、その2以上の照明識別子に対応する尤度とを取得してもよい。
【0048】
(ステップS105)位置推定部12は、ステップS104で取得された照明識別子を用いて、位置の推定を行う。位置推定部12は、例えば、対応情報記憶部11で記憶されている対応情報を用いて、その照明識別子に対応する位置を取得してもよい。また、位置推定部12は、例えば、その対応情報を用いて、その2以上の照明識別子にそれぞれ対応する位置を取得し、その2以上の位置と、各位置に対応する尤度とを用いて、位置の推定を行ってもよい。
【0049】
(ステップS106)出力部13は、ステップS105で推定された位置を出力する。このようにして、照明光を用いた位置の推定に関する一連の処理は終了となる。
【0050】
なお、
図2のフローチャートにおいて、繰り返して位置の推定を行う場合には、ステップS106における出力の処理が終了した後に、ステップS101に戻ってもよい。また、
図2のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。
【0051】
次に、本実施の形態による位置推定装置1に関する実験結果について説明する。
本実験は、大阪工業大学梅田キャンパス(大阪市茶屋町)の16階の空間で行った。照明装置として、天井に設置されている20個の直管形のLED照明(コイズミ照明製、逆富士、W150)を用いた。本実験では、スマートフォンの音声入力端子に、フォトダイオードと抵抗器とを含む回路であるセンサ21を取り付けたものを用いて、モノラルの44.1kHzでサンプリング(録音)した。それ以降の処理には、パーソナル・コンピュータを用いた。周波数パターンの取得としては、センサ21による4秒分の検出結果を、離散フーリエ変換(DFT)して、100Hz~22kHzの範囲を0.25Hz刻みで取得し、その結果について、周波数領域を対数目盛として等分割してデータ量を削減した結果を用いた。なお、本実験では、周波数パターンは、1024次元の特徴ベクトルであった。
【0052】
本実験例では、学習器として、次のニューラルネットワークの学習結果を用いた。なお、各層では、バイアスを用いた。
入力層:入力のノード数は1024個
第1層:全結合層、出力のノード数は2048個
第2層:全結合層、出力のノード数は3072個
第3層:全結合層、出力のノード数は3072個
第3層の出力に、50%を無効にするドロップアウトを適用した。
第4層:全結合層、出力のノード数は2048個
第5層:全結合層、出力のノード数は20個、ソフトマックスを適用した。
【0053】
訓練用入力情報である周波数パターンは、照明装置の直下で照明光を受光した結果を用いて、センサ21及び周波数パターン取得部22によって生成した。なお、各照明光の受光を4回繰り返し、さらに、その結果にノイズを加えて訓練情報の個数を50倍程度に増やした4000個程度の訓練情報を用意して学習を行った。
【0054】
位置の推定では、照明識別子取得部24が、出力層の各ノードに対応する照明識別子と、それぞれに対応する尤度とを取得し、その尤度を用いて照明装置ごとの位置について加重平均を行うことによって、センサ21の位置を取得した。なお、出力層でソフトマックスを適用しているため、上記式1をそのまま用いて、尤度を重みとした加重平均を計算した。
【0055】
[実験1]
実験1では、20個の照明装置のそれぞれの直下において、照明光のセンシングを行った。そのセンシング結果を用いて位置推定を行った結果を、
図3(a)に示している。
図3(a)において、照明装置の位置が、図形「×」で示されており、推定された位置が、図形「+」で示されている。
図3(a)で示されるように、多くの照明装置について、正確な位置推定を行うことができていることが分かる。
【0056】
[実験2]
実験2では、20個の照明装置のそれぞれの直下と、照明装置が真上に存在しない間の位置とにおいて、照明光のセンシングを行った。そのセンシング結果を用いて位置推定を行った結果を、
図3(b)に示している。
図3(b)において、照明光のセンシングを行った位置が、図形「×」で示されており、推定された位置が、図形「+」で示されている。
図3(b)において、y=0(mm)のセンシング位置、及びy=3000(mm)付近のセンシング位置は、照明装置の直下の位置である。それ以外の4点のセンシング位置は、照明装置が真上に存在しない間の位置である。また、一部のセンシング位置と推定位置とについては、両者の対応関係を破線で示している。
図3(b)で示されるように、照明装置の直下では、一部を除いて、高い精度で位置推定を行うことができている。また、照明装置の間の位置においても、4個のセンシング位置のうち、2個については、2メートル程度の誤差で位置を推定できていることが分かる。
【0057】
実験1,2の結果から、本実施の形態による位置推定装置1によって、照明光の個体差を用いた位置推定を行うことができることが確認できた。その結果として、周波数パターンを用いることによって、照明光の識別を適切に行えることも確認されたことになる。さらに、照明装置の直下ではない位置においても、位置推定を有効に行えることが確認できた。また、学習器の出力である尤度を重みとして用いた加重平均によって位置を推定できることも確認できた。
【0058】
以上のように、本実施の形態による位置推定装置1によれば、専用の照明装置を用いなくても、照明装置の個体差を用いて、受光した照明光に応じた位置推定を行うことができる。そのため、専用の照明装置を設置しなくてもよくなり、照明光を用いた位置推定を容易に行うことができるようになる。また、その位置推定に、可聴域以下の周波数の周波数パターンを用いるため、音声処理用の汎用のAD変換器を用いることができ、例えば、スマートフォン等を用いて、位置推定装置1を実現することができるようになる。また、位置推定装置1が位置推定のための専用の装置である場合であっても、汎用の回路を用いて装置を構成でき、コストを低減することができる。また、非特許文献1のように、照明光の固有の周波数を用いた位置推定を行う場合には、高い分解能で周波数の検出を行う必要があるが、本実施の形態による位置推定装置1のように、周波数パターンを用いる場合には、そのような高い分解能は要求されない。したがって、より簡易な構成によって、位置推定を行うことができるようになる。また、周波数パターンを用いた方が、照明装置の経年変化の影響を受けにくいというメリットもある。さらに、周波数領域において、周波数が大きくなるほど、より大きい周波数間隔となる周波数パターンを用いることによって、周波数パターンの情報量を低減することができ、周波数パターンに関する処理負荷を軽減することができる。また、照明識別子取得部24によって、2以上の照明識別子と、それらに対応する2以上の尤度とを取得し、その取得結果を用いて、尤度である重みを用いた加重平均によって位置推定を行うことにより、照明装置の間の位置についても推定することができるようになる。また、尤度を用いるため、複数の照明装置の照明光の強度が揃っておらず、多少の変動がある場合であっても、照明光の強度を直接用いて位置推定を行った場合よりも、より正確に位置推定を行うことができるようになる。このように、尤度を用いることによって、照明光の強度の変動に対して頑強な位置推定を実現できることが期待できる。
【0059】
なお、上記実施の形態では、学習器がニューラルネットワークの学習結果である場合について主に説明したが、そうでなくてもよい。学習器として、SVM(サポートベクターマシン:Support Vector Machine)の学習結果を用いてもよい。通常、SVMの学習結果は、2値分類のために用いられるが、そのSVMの学習結果を組み合わせることによって、多値分類を行えることが知られている。SVMを多値分類に適用する方法として、例えば、one vs. rest法や、pairwise法などが知られている。例えば、N個の照明装置が存在する場合には、one vs. rest法では、N個の分類器(学習器)が構成され、そのN個の分類器を用いて、センシング結果に応じた周波数パターンが各照明装置に分類されたとした際の尤度を取得することができる。また、例えば、N個の照明装置が存在する場合には、pairwise法では、N(N-1)/2個の分類器(学習器)を用いて、センシング結果に応じた周波数パターンごとの投票数を取得することができる。例えば、特定の照明装置と、それ以外のN-1個のそれぞれの照明装置との組に対応するN-1個の分類器を用いて周波数パターンを分類した場合に、その特定の照明装置に分類された個数が投票数となる。このようにして、照明装置ごとに投票数を取得することができるため、投票数を規格化した値を、各照明装置(すなわち、各照明識別子)に対応する尤度として用いてもよい。このように、学習器記憶部23で記憶されている学習器は、2以上の学習器の集合であってもよい。また、ニューラルネットワークやSVM以外の学習結果である学習器が用いられてもよいことは言うまでもない。
【0060】
また、上記実施の形態では、照明装置特定装置2を有する位置推定装置1について主に説明したが、センサ21によって受光された照明光を出射した照明装置を特定する照明装置特定装置2のみが別途、使用されてもよい。その場合には、照明装置特定装置2は、照明識別子取得部24によって取得された1つまたは2以上の照明識別子を出力する出力部をさらに備えていてもよい。出力された照明識別子で識別される照明装置が、照明装置特定装置2によって特定された照明装置である。照明識別子の出力は、例えば、表示デバイスへの表示や、所定の機器への送信、プリンタによる印刷、記録媒体への蓄積、他の構成要素への引き渡しなどであってもよい。なお、照明識別子取得部24によって照明識別子と、その照明識別子に対応する尤度とが取得される場合には、照明識別子と尤度との1つまたは2以上の組が出力されてもよい。また、1つの照明識別子が出力される場合には、その照明識別子は、最も高い尤度に対応する照明識別子であってもよい。また、照明識別子と尤度との2以上の組が出力される場合には、高い尤度に対応する照明識別子によって識別される照明識別子が、照明装置特定装置2によって特定された照明装置であると考えてもよい。また、例えば、各エリアに照明装置が配置されている場合には、照明装置を特定することによって、照明装置特定装置2の存在するエリアを特定することができる。したがって、照明装置特定装置2によって照明装置を特定することにより、エリアの特定を行ってもよい。この場合には、例えば、最も高い尤度に対応する照明識別子が出力されてもよく、その照明識別子が、エリアの識別子に変換されて出力されてもよい。後者の場合には、例えば、照明識別子と、エリアの識別子とを対応付ける対応情報が図示しない記録媒体で記憶されており、その対応情報を用いて、照明識別子がエリアの識別子に変換されてもよい。また、この場合には、各エリアにおいて、センサ21によって検出される光が、単一の照明装置から出射されるようになっていてもよい。具体的には、各エリアは、1個の照明装置が配置された独立した部屋であってもよく、1個の照明装置が配置されており、他の照明装置からの光が到達しない領域(例えば、1個の照明装置が配置されている公園など)であってもよい。また、照明装置特定装置2は、位置推定以外に用いられてもよい。照明装置特定装置2によって、受光している照明光や、その照明光を出射した照明装置を特定することができる。そのため、例えば、照明装置特定装置2から出力される照明識別子によって、照明装置特定装置2がどこに存在しているのかが特定されることになる。そして、例えば、照明装置特定装置2、または照明装置特定装置2の出力結果を利用する装置は、その照明識別子に紐付けられた情報をサーバ等から取得することができる。その情報は、例えば、照明装置が配置されている店舗のクーポンやメニュー等であってもよく、照明装置の近傍の商品の説明であってもよく、照明装置によって照明されている絵画や工芸品等の説明であってもよい。
【0061】
また、上記実施の形態では、照明装置が屋内を明るくするために用いられる場合について主に説明したが、そうでなくてもよい。照明装置特定装置2が照明識別子を取得する対象となる照明装置は、例えば、屋外の照明であってもよく、照明看板等であってもよく、液晶パネル等のバックライト照明であってもよく、その他の照明であってもよい。
【0062】
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
【0063】
また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う2個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う2個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。
【0064】
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式、アドレス等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。
【0065】
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
【0066】
また、上記実施の形態において、位置推定装置1、照明装置特定装置2に含まれる2以上の構成要素が通信デバイスや入力デバイス等を有する場合に、2以上の構成要素が物理的に単一のデバイスを有してもよく、または、別々のデバイスを有してもよい。
【0067】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。なお、上記実施の形態における照明装置特定装置2を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、照明装置からの光を検出するセンサによる検出結果をフーリエ変換することによって、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンを取得する周波数パターン取得部、周波数パターン取得部によって取得された周波数パターンを、照明装置からの光の明滅に関する可聴域以下の周波数の周波数パターンである訓練用入力情報と、その訓練用入力情報に対応する照明装置を示す訓練用出力情報との組を複数用いて学習された学習器に適用することによって、センサによって検出された光に対応する照明装置を識別する照明識別子を取得する照明識別子取得部として機能させるためのプログラムである。なお、上記コンピュータは、例えば、学習器が記憶されている学習器記憶部にアクセス可能であり、その学習器を用いて処理を行ってもよく、上記のように、サーバ等で記憶されている学習器を用いて処理を行ってもよい。
【0068】
また、上記実施の形態における位置推定装置1を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、照明識別子と当該照明識別子で識別される照明装置の位置とを対応付ける対応情報が記憶される対応情報記憶部にアクセス可能なコンピュータを、上記周波数パターン取得部、上記照明識別子取得部、対応情報と照明識別子取得部によって取得された照明識別子とを用いてセンサに関する位置を推定する位置推定部、位置推定部によって推定された位置を出力する出力部として機能させ、照明識別子取得部は、2以上の照明識別子と、当該2以上の照明識別子にそれぞれ対応する尤度とを取得するものであり、位置推定部は、照明識別子取得部によって取得された2以上の照明識別子に対応付けられている照明装置の位置と、当該2以上の照明識別子にそれぞれ対応する尤度である重みとを用いて、センサに関する位置を推定する、ものである。
【0069】
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には少なくとも含まれない。
【0070】
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD-ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
【0071】
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。
【0072】
図4は、上記プログラムを実行して、上記実施の形態による位置推定装置1または照明装置特定装置2を実現するコンピュータシステム900の一例を示す図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
【0073】
図4において、コンピュータシステム900は、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムや、アプリケーションプログラム、システムプログラム、及びデータが記憶されるフラッシュメモリ等のROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、タッチパネル914と、無線通信モジュール915と、MPU911、ROM912等を相互に接続するバス916とを備える。また、バス916には、外付けのセンサ21も接続されており、センサ21によって検出された情報を、MPU911等が用いることができるようになっている。なお、コンピュータシステム900に照度計が組み込まれている場合には、その照度計がセンサ21として用いられてもよい。また、無線通信モジュール915に代えて、有線通信モジュールを備えていてもよい。また、タッチパネル914に代えて、ディスプレイと、マウスやキーボード等の入力デバイスとを備えていてもよい。
【0074】
コンピュータシステム900に、上記実施の形態による位置推定装置1または照明装置特定装置2の機能を実行させるプログラムは、無線通信モジュール915を介してROM912に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、ネットワークから直接、ロードされてもよい。
【0075】
プログラムは、コンピュータシステム900に、上記実施の形態による位置推定装置1または照明装置特定装置2の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
【0076】
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【0077】
以上より、本発明による位置推定装置等によれば、照明光の個体差を用いて照明装置を特定することができ、その特定結果に基づいて位置推定を行うことができるという効果が得られ、自己位置を推定する装置等として有用である。
【符号の説明】
【0078】
1 位置推定装置
2 照明装置特定装置
11 対応情報記憶部
12 位置推定部
13 出力部
21 センサ
22 周波数パターン取得部
23 学習器記憶部
24 照明識別子取得部