(57)【要約】  本開示は、シンボル期間Ｔｓｙｍ＝１／ｆｓｙｍを有するシンボルレートｆｓｙｍで、光源によって放たれる可視光の中に符号化されているデータのシンボルに関する。シンボルのそれぞれは、時間に応じた発光レベルによって形成される１組の少なくとも２つの異なるシンボル波形の１つとして符号化され、シンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれを表す。異なるデータ値を表すシンボル波形の差は、シンボル期間内の所与の位相において所定の時間窓内でのみ形成され、所定の時間窓は０．７５・Ｔｓｙｍ未満の持続時間を有し、この時間窓内の光レベルは異なるシンボル波形について実質的に異なり、時間窓外の光レベルは異なるシンボル波形について実質的に同じである。
2017525258.tif 000002
【特許請求の範囲】
【請求項１】
光源によって放たれる光の中にデータのシンボルを符号化するための符号器であって、
符号器は、シンボル期間Ｔｓｙｍ＝１／ｆｓｙｍを有するシンボルレートｆｓｙｍで光の中に前記シンボルを符号化し、
前記シンボルのそれぞれは、時間に応じた発光レベルによって形成される１組の少なくとも２つの異なるシンボル波形の１つとして符号化され、前記シンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれの異なるデータ値を表し、
前記シンボル波形の差は、所定の時間窓内でのみ形成され、前記所定の時間窓は前記シンボル期間内の所与の位相にあり、０．２・Ｔｓｙｍ未満の持続時間を有し、前記時間窓内の前記光レベルは前記異なるシンボル波形について実質的に異なり、前記時間窓外の前記光レベルは前記異なるシンボル波形について実質的に同じである、
符号器。
【請求項２】
前記位相を少なくとも１回変え、変えられた位相で前記符号化を続ける、請求項１に記載の符号器。
【請求項３】
前記時間窓の前記シンボルレートを少なくとも１回変え、変えられたシンボルレートで前記符号化を続ける、請求項１又は２に記載の符号器。
【請求項４】
光源によって放たれる光の中に符号化されるデータのシンボルを復号するための復号器であって、
前記復号器は、前記光のサンプルを得るように動作可能であり、
シンボル期間Ｔｓｙｍ＝１／ｆｓｙｍを有するシンボルレートｆｓｙｍで前記シンボルが光の中に符号化され、
前記シンボルのそれぞれは、時間に応じた発光レベルによって形成される１組の少なくとも２つの異なるシンボル波形の１つとして符号化され、前記シンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれの異なるデータ値を表し、
前記シンボル波形の差は、所定の時間窓内でのみ形成され、前記所定の時間窓は前記シンボル期間内の所与の位相にあり、０．２・Ｔｓｙｍ以下の持続時間を有し、前記時間窓内の前記光レベルは前記異なるシンボル波形について実質的に異なり、前記時間窓外の前記光レベルは前記異なるシンボル波形について実質的に同じであり、
前記復号器は、前記サンプリング期間の複数の個々のインスタンスのそれぞれの間にサンプリングされる光量に基づき、前記シンボルの前記シンボル波形によって表される前記データ値を検出する、
復号器。
【請求項５】
前記サンプルが、サンプル期間Ｔｓａｍｐ＝１／ｆｓａｍｐを有するサンプルレートｆｓａｍｐでサンプリングされ、前記サンプル期間Ｔｓａｍｐは、Ｔｓｙｍから前記所定の時間窓の持続時間を引いた時間以下である、請求項４に記載の復号器。
【請求項６】
シンボル間干渉によって欠落したシンボルを訂正するための誤り訂正アルゴリズムを含む、請求項４又は５に記載の復号器。
【請求項７】
前記所定の時間窓の前記持続時間が０．１・Ｔｓｙｍ以下である、請求項１、２、又は３に記載の符号器。
【請求項８】
前記サンプルが、サンプル期間Ｔｓａｍｐ＝１／ｆｓａｍｐを有するサンプルレートｆｓａｍｐでサンプリングされ、前記所定の時間窓の前記持続時間が０．１・Ｔｓｙｍ以下及び０．１・Ｔｓａｍｐ以下である、請求項４乃至６の何れか一項に記載の復号器。
【請求項９】
請求項４乃至６又は８の何れか一項に記載の復号器、及び光の画像を捕捉するための画像センサを有するローリングシャッターカメラを含む受信機器であって、
前記サンプルのそれぞれが前記画像内の複数のラインのそれぞれに対応し、前記ローリングシャッターカメラがシーケンス内のそれぞれの異なる時点において前記ラインを捕捉する、
受信機器。
【請求項１０】
前記ローリングシャッターがライン期間Ｔｌｉｎｅ＝１／ｆｌｉｎｅを有するラインレートｆｌｉｎｅで前記ラインを捕捉し、各ラインがＴｌｉｎｅに等しい露光時間Ｔｅｘｐにわたって露光される、請求項９に記載の受信機器。
【請求項１１】
前記ローリングシャッターがライン期間Ｔｌｉｎｅ＝１／ｆｌｉｎｅを有するラインレートｆｌｉｎｅで前記ラインを捕捉し、各ラインが前記ライン期間Ｔｌｉｎｅを上回る露光時間Ｔｅｘｐにわたって露光され、前記復号器が前記サンプルを得るために前記複数のラインからの測定をフィルタリングするフィルタを含み、前記フィルタリング後に前記サンプルのそれぞれは、前記露光時間Ｔｅｘｐの期間よりも短い期間中に得られる光強度を表す、請求項９に記載の受信機器。
【請求項１２】
前記カメラが前記画像センサの小領域だけの画素を捕捉し、前記小領域は前記光源が現れる領域を含む又は当該領域から構成される、請求項９乃至１１の何れか一項に記載の受信機器。
【請求項１３】
光源によって放たれる光の中にデータのシンボルを符号化する方法であって、
シンボル期間Ｔｓｙｍ＝１／ｆｓｙｍを有するシンボルレートｆｓｙｍで前記シンボルが光の中に符号化され、
前記シンボルのそれぞれは、時間に応じた発光レベルによって形成される１組の少なくとも２つの異なるシンボル波形の１つとして符号化され、前記シンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれの異なるデータ値を表し、
前記シンボル波形の差は、所定の時間窓内でのみ形成され、前記所定の時間窓は前記シンボル期間内の所与の位相にあり、０．２・Ｔｓｙｍ未満の持続時間を有し、前記時間窓内の前記光レベルは前記異なるシンボル波形について実質的に異なり、前記時間窓外の前記光レベルは前記異なるシンボル波形について実質的に同じである、
方法。
【請求項１４】
光源によって放たれる光の中に符号化されるデータのシンボルを復号する方法であって、
シンボル期間Ｔｓｙｍ＝１／ｆｓｙｍを有するシンボルレートｆｓｙｍで前記シンボルが光の中に符号化され、
前記シンボルのそれぞれは、時間に応じた発光レベルによって形成される１組の少なくとも２つの異なるシンボル波形の１つとして符号化され、前記シンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれの異なるデータ値を表し、
前記シンボル波形の差は、所定の時間窓内でのみ形成され、前記所定の時間窓は前記シンボル期間内の所与の位相にあり、０．２・Ｔｓｙｍ以下の持続時間を有し、前記時間窓内の前記光レベルは前記異なるシンボル波形について実質的に異なり、前記時間窓外の前記光レベルは前記異なるシンボル波形について実質的に同じであり、
前記方法は、前記サンプリング期間の複数の個々のインスタンスのそれぞれの間にサンプリングされる光量に基づき、前記シンボルの前記シンボル波形によって表される前記データ値を検出するステップを含む、
方法。
【請求項１５】
光源によって放たれる可視光の中に符号化されるデータのシンボルを復号するためのコンピュータプログラムであって、前記コンピュータプログラムは１つ又は複数のコンピュータ可読記憶媒体上に実装され、そこから取得可能又はダウンロード可能であるソフトウェアを含み、
シンボル期間Ｔｓｙｍ＝１／ｆｓｙｍを有するシンボルレートｆｓｙｍで前記シンボルが光の中に符号化され、
前記シンボルのそれぞれは、時間に応じた発光レベルによって形成される１組の少なくとも２つの異なるシンボル波形の１つとして符号化され、前記シンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれの異なるデータ値を表し、
前記シンボル波形の差は、所定の時間窓内でのみ形成され、前記所定の時間窓は前記シンボル期間内の所与の位相にあり、０．２・Ｔｓｙｍ以下の持続時間を有し、前記時間窓内の前記光レベルは前記異なるシンボル波形について実質的に異なり、前記時間窓外の前記光レベルは前記異なるシンボル波形について実質的に同じであり、
前記コンピュータプログラムの前記ソフトウェアは、１個又は複数個のプロセッサ上で実行されるとき、前記サンプリング期間の複数の個々のインスタンスのそれぞれの間にサンプリングされる光量に基づき、前記シンボルの前記シンボル波形によって表される前記データ値を更に検出する、
コンピュータプログラム。
【請求項１６】
光源によって放たれる可視光の中にデータのシンボルを符号化するための、前記光源によって出力するための信号であって、
シンボル期間Ｔｓｙｍ＝１／ｆｓｙｍを有するシンボルレートｆｓｙｍで前記シンボルが符号化され、
前記シンボルのそれぞれは、時間に応じた発光レベルによって形成される１組の少なくとも２つの異なるシンボル波形の１つとして符号化され、前記シンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれの異なるデータ値を表し、
前記シンボル波形の差は、前記シンボル期間内の所与の位相において所定の時間窓内でのみ形成され、前記所定の時間窓は０．２・Ｔｓｙｍ以下の持続時間を有し、前記時間窓内の前記光レベルは前記異なるシンボル波形について実質的に異なり、前記時間窓外の前記光レベルは前記異なるシンボル波形について実質的に同じである、
信号。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、光源によって放たれる光の中にデータのシンボルを変調するための符号化方式に関する。
【背景技術】
【０００２】
符号化光とは、それによりありふれた照明器具等の光源によって放たれる光の中にデータが埋め込まれる技法を指す。典型的には光は、部屋等の対象環境を照らすための可視照明の寄与（概して光の主目的である）と、その環境内に情報を与えるための埋込信号との両方を含む。これを行うために、特定の変調周波数、好ましくは人間の知覚を上回り、従って主たる照明機能に影響しないほど十分高い周波数において光が変調される。一部の事例では、符号化光の放射源が照明機能を全く有さない場合がある。その場合、情報を伝送するための媒体として可視光又は不可視の赤外光が使用され得る。
【０００３】
符号化光は、幾つかの用途に使用され得る。例えば、光に埋め込まれるデータはその光を放つ光源の識別情報を含み得る。その識別情報は、各照明器具からの寄与度を明らかにするためにコミッショニング段階で使用されても良く、又は動作中に照明器具を識別してその照明器具を（例えばＲＦバックチャネルによって）遠隔制御するために使用され得る。別の例では、識別情報と、光源の知られている位置及び／又はその位置に関連する他の情報との間のマッピングを行うことにより、識別情報がナビゲーション又は他の位置ベースの機能に使用され得る。この場合、光を（例えば内蔵カメラによって）得る携帯電話やタブレット等の装置が埋め込まれた識別情報を検出し、それを使用してその識別情報にマップされる（例えばインターネット等のネットワーク上でアクセスされるロケーションデータベース内の）対応する位置及び／又は他の情報を調べることができる。また更なる応用では、他の情報が（光の中に埋め込まれるＩＤに基づいて調べられるのとは対照的に）光の中に直接符号化され得る。
【０００４】
国際公開第２０１２／１２７４３９号は、携帯電話やタブレット等のモバイル装置内に大抵統合される通常の「ローリングシャッター」型カメラを用いて符号化光が検出され得る技法を開示する。ローリングシャッターカメラでは、カメラの画像捕捉要素が複数のライン（典型的には水平ライン、即ち行）に分けられ、それらのラインはラインごとに順に露光される。つまり、所与のフレームを捕捉するために、最初の１ラインが対象環境内の光にさらされ、シーケンス内の次のラインが僅かに後の時点で露光され、その後も同様に続く。典型的には、シーケンスがフレームにわたって順に、例えば行単位で上から下に「ロール」し、そのため「ローリングシャッター」という名前で呼ばれる。符号化光を捕捉するために使用される場合、フレーム内の異なるラインが光を異なる時点において捕捉することを意味し、従ってラインレートが変調周波数に対して十分高い場合、変調波形の異なる位相において捕捉することを意味する。従って、光の中の変調が検出され得る。
【０００５】
ローリングシャッターカメラのできるだけ少ないライン内で符号化光を検出できることが一般に望ましい。例えば、それにより信号を検出するのにかかる時間を減らすことができ、かかる時間短縮はローリングシャッターカメラ自体のために（より高速の検出）、及び／又は（カメラがオンにされる必要がある時間を減らし且つ／又は必要な信号処理量を減らすことにより）電力を節約するために望ましくあり得る。別の検討事項として、より少数のラインから符号化光信号を検出できることは、捕捉画像内のより小さいフットプリントを有する光源から信号が検出されることを可能にし得る。
【０００６】
しかし慣例的に、エイリアシング効果がシンボルレートをサンプリングレートの半分以下に制限する。ローリングシャッターカメラを使用して符号化光を検出する場合、これはデータのシンボル当たり少なくとも２本のライン、実際にはシンボル当たり３本以上のラインを捕捉することを意味する。シンボル送信クロックとサンプリングクロックとが周波数及び位相に関して正確に同期される場合、エイリアシングなしにシンボルをクリーンにサンプリングすることができる。しかし、シナリオにもよるが、かかる同期は常に便利更には可能というわけではない。符号化信号とサンプリングとの間の同期を（必ずしも）必要とすることなく、２本のラインごとに１シンボルを上回る、即ちラインレートの半分を上回る速度で符号化光信号を伝達できることが望ましい。更に、ローリングシャッターカメラを用いた検出のためだけでなく、他の種類の光センサ（例えばゆっくりサンプリングするフォトセル）を用いた検出のためにも、やはり符号化信号とサンプリングとの間の同期を（必ずしも）必要とすることなく、２つのサンプルごとに１シンボルを上回る、即ちサンプルレートの半分を上回る速度で符号化光信号を伝達できることが望ましい。
【発明の概要】
【課題を解決するための手段】
【０００７】
本明細書で開示される一態様によれば、光源によって放たれる光の中にデータのシンボルを符号化するための符号器が提供される。この符号器は、シンボル期間Ｔｓｙｍ＝１／ｆｓｙｍを有するシンボルレートｆｓｙｍで光の中にシンボルを符号化するように構成され、前述のシンボルのそれぞれは、時間に応じた発光レベルによって形成される１組の少なくとも２つの異なるシンボル波形の１つとして符号化され、シンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれを表す。異なるデータ値を表すシンボル波形の差は、シンボル期間内の所与の位相において所定の時間窓内でのみ形成され、所定の時間窓は０．２・Ｔｓｙｍ未満の持続時間を有し、前述の時間窓内の光レベルは異なるシンボル波形について実質的に異なり、前述の時間窓外の光レベルは異なるシンボル波形について実質的に同じである。
【０００８】
本明細書で開示される別の態様によれば、光源によって放たれる光の中に符号化されるデータのシンボルを復号するための復号器が提供される。この復号器は、サンプル期間Ｔｓａｍｐ＝１／ｆｓａｍｐを有するサンプルレートｆｓａｍｐ（例えばライン期間１／Ｔｌｉｎｅを有するローリングシャッターカメラのラインレートｆｌｉｎｅ）でサンプリングされる光のサンプルを得るように動作可能であり、シンボル期間Ｔｓｙｍ＝１／ｆｓｙｍを有するシンボルレートｆｓｙｍでシンボルが光の中に符号化され、前述のシンボルのそれぞれは、時間に応じた発光レベルによって形成される１組の少なくとも２つの異なるシンボル波形の１つとして符号化され、シンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれを表す。異なるデータ値を表すシンボル波形の差は、シンボル期間内の所与の位相において所定の時間窓内でのみ形成され、所定の時間窓は０．２・Ｔｓｙｍ以下（実施形態では０．２・Ｔｓａｍｐ以下、例えばローリングシャッターカメラの場合は０．２・Ｔｌｉｎｅ以下でもある）の持続時間を有する。前述の時間窓内の光レベルは異なるシンボル波形について実質的に異なり、前述の時間窓外の光レベルは異なるシンボル波形について実質的に同じである。復号器は、サンプリング期間の複数の個々のインスタンスのそれぞれの間にサンプリングされる光量に基づき、シンボルのシンボル波形によって表されるデータ値を検出するように構成される。
【０００９】
図面及び詳細な説明の節の中でより詳細に例示されるように、このシンボルの組は「スパイク」符号を与え、それにより、実際のデータを符号化するために狭いパルス（又は「スパイク」）が使用される位置の間に「クリアスペース」が残される。有利には、本発明者は、シンボル期間のデータ符号化領域間にこのクリアスペースを残すことは、サンプルレートの半分よりも速いシンボルレートでデータ（２つのサンプルごとに、例えばローリングシャッターカメラの２本のラインごとに複数のシンボル）が符号化されることを可能にすることに気付いた。即ち、他の全てのシンボル期間内にあるのと同じ（「クリア」）信号レベルを有する領域が各シンボル期間内にあり、各シンボル期間はこのクリア領域を次のシンボルに対して同じ又はほぼ同じシンボルクロック位相オフセットにおいて有し、このことは「エイリアシング防止」特性又は「シンボル間干渉低減」特性を符号に与える。
【００１０】
概して、クリアスペースが大きければ大きいほど、エイリアシング防止又はシンボル間干渉の低減が効果的になる。従って実施形態では、前述の所定の時間窓の持続時間が０．１・Ｔｓｙｍ、更には０．０５・Ｔｓｙｍ以下であり、復号側でも好ましくは０．１・Ｔｓａｍｐ、更には０．０５・Ｔｓａｍｐ以下（例えば０．１・Ｔｌｉｎｅ、更には０．０５・Ｔｌｉｎｅ以下）である。しかし、窓の大きさが小さ過ぎる場合、シンボル間のエネルギ差が検出器の信号対雑音比を下回るので、シンボル情報が一部の検出器によってもはや検出できない可能性がある。そのため、窓の大きさを決めるとき、小さい窓を有すること（より優れたエイリアシング防止特性）とより大きい窓を有すること（より高いノイズフロアを有する検出器又は検出環境に対するより優れたサポート）との間のトレードオフが作り出され得る。
【００１１】
実施形態では、サンプルレートｆｓａｍｐはシンボルレートｆｓｙｍ以上である。即ち、サンプル当たり（例えばローリングシャッターカメラのライン当たり）１シンボルまでの速度でデータが符号化され得る。例えば、或るとりわけ有利な実施形態では、エイリアシングがないことを確実にするために、サンプル期間Ｔｓａｍｐは、Ｔｓｙｍから所定の時間窓の持続時間を引いた時間以下である。しかし、代わりに他の一部の実施形態では、サンプルレートｆｓａｍｐ（例えばラインレートｆｌｉｎｅ）が実際にシンボルレートｆｓｙｍ未満でも良く、復号器は、より低いラインレートによって欠落したサンプルを訂正するための誤り訂正アルゴリズムを含む。
【００１２】
実際に実施形態では、サンプルレートがシンボルレートよりも高い又は低いどちらの場合にも誤り訂正符号が有用である可能性があり、何れの場合にも、シンボル間干渉によって欠落したシンボルを訂正するための誤り訂正アルゴリズムを復号器が備え得る。
【００１３】
実施形態では、シンボルは必ずしも二値ではない。即ち、前述のシンボルのそれぞれは、発光レベルによって形成される１組の３つ以上のシンボル波形の１つとして符号化されても良く、３つ以上のシンボル波形のそれぞれは、対応する１組の異なるデータ値のそれぞれを表す。
【００１４】
更なる実施形態では、符号器が少なくとも１回位相を変え、変えられた位相で前述の符号化を続けるように構成され得る。例えば符号器は、データを少なくとも１回伝送した後に位相を変え、変えられた位相で（即ち同じ符号化方式だが異なる位相を使用して）前述のデータの符号化を繰り返すように構成され得る。このようにして、シンボルパルスがラインサンプルにまたがることにより、或るフレーム内で捕捉される画像から復号器がデータを検出できない場合、復号器はその後のフレーム内で検出を再び試み、シンボルが今度は新たな位相、従ってサンプリングに対する新たな時間整列にあるので、今度は検出を成功裏に果たし得る。
【００１５】
或いは又は加えて、符号器は、前述の時間窓のシンボルレートを少なくとも１回変え、変えられたシンボルレートで前述の符号化を続けるように構成され得る。例えば符号器は、データを少なくとも１回伝送した後に前述の時間窓のシンボルレートを変え、変えられたシンボルレートで（即ち同じ符号化方式だが異なるシンボルレートを使用して）前述のデータの符号化を繰り返すように構成され得る。
【００１６】
また更なる実施形態では、ローリングシャッターカメラを用いる検出の場合、各ラインがライン期間Ｔｌｉｎｅに等しい露光時間Ｔｅｘｐにわたって露光される。或いは、各ラインはライン期間Ｔｌｉｎｅを上回る露光時間Ｔｅｘｐにわたって露光されても良く、復号器は前述のサンプルを得るために前述の複数のラインからの測定をフィルタリングするように構成されるフィルタを含み、前述のサンプルのそれぞれは、前述のフィルタリング後に露光時間Ｔｅｘｐよりも短いそれぞれの期間中に得られる光強度を表す（実施形態ではＴｌｉｎｅのそれぞれのインスタンス中に得られる光強度を表す）（もっとも、一部の実現可能なフィルタはラインレートと異なる出力サンプル周波数を有し得る）。
【００１７】
実施形態では、カメラが画像センサの小領域（「関心領域」）だけの画素を捕捉するように構成されても良く、小領域は光源が現れる領域を含む又は当該領域から構成される。即ち、小領域は画像センサ上の光源のフットプリントか、又はフットプリント及び幾らかの背景を含むが、それでもなお１つ又は複数の他の領域を除外する光源のフットプリント付近の幾らか広い領域に対応する。
【００１８】
本明細書で開示される別の態様によれば、符号器、前述の光を放つための少なくとも１つの発光素子、及びそれにより符号器が発光内にシンボルを符号化するように構成される、符号器と少なくとも１つの発光素子との間に結合されるドライバを含む光源と、復号器及びローリングシャッターカメラを含む受信機器とを含む、システムが提供される。
【００１９】
本明細書で開示される別の態様によれば、本明細書で開示される符号器側又は復号器側の特徴の何れかによる、対応する符号化の方法、復号の方法、符号化のためのコンピュータプログラム製品、及び復号のためのコンピュータプログラム製品が提供される。コンピュータプログラム製品の場合、コンピュータプログラム製品からダウンロードされ又はさもなければそこから取得されるように構成され、１個又は複数個のプロセッサ上で実行されるとき、関連する符号器側又は復号器側の操作を行うように構成される、１つ又は複数のコンピュータ可読媒体上に実装されるソフトウェアを含む。
【００２０】
本開示の理解を助け、実施形態がどのように実施され得るのかを示すために添付図面を実施例として参照する。
【図面の簡単な説明】
【００２１】
【図１】１つ又は複数の光源が、ローリングシャッターカメラを有する装置によって検出される符号化光を放つ環境の概略図である。
【図２】ローリングシャッターカメラによって捕捉される１つ又は複数の光源の画像の概略図である。
【図３】ローリングシャッター画像センサの個々のラインを含む、ローリングシャッターカメラによって捕捉される画像の一部の概略図である。
【図４】経時的な発光強度及びローリングシャッターカメラの各ラインによって測定される対応する光量を示す略図である。
【図５】代替的な符号化方式を使用して符号化光源によって放たれる光の強度、及びローリングシャッターカメラの各ラインによって測定される対応する光量を概略的に示す略図である。
【図６】別の代替的な符号化方式を使用して符号化光源によって放たれる光の強度、及び再びローリングシャッターカメラの各ラインによって測定される対応する光量を概略的に示す略図である。
【図７】光源及び受信装置を含むシステムの概略的ブロック図である。
【図８】ローリングシャッター画像捕捉プロセスを概略的に示すタイミング図である。
【図９】ローリングシャッターラインのシーケンスにわたる一連の符号化光シンボルのサンプリングを概略的に示すタイミング図である。
【図１０】ローリングシャッターラインのシーケンスにわたる一連の符号化光シンボルのサンプリングを概略的に示す別のタイミング図である。
【図１１】ローリングシャッターラインのシーケンスにわたる一連の符号化光シンボルのサンプリングを概略的に示す別のタイミング図である。
【図１２】ローリングシャッターラインのシーケンスにわたる一連の符号化光シンボルのサンプリングを概略的に示す更に別のタイミング図である。
【図１３】シンボルの組の一例を概略的に示す略図である。
【図１４】別のシンボルの組の一例を概略的に示す略図である。
【図１５】更に別のシンボルの組の一例を概略的に示す略図である。
【図１６】或る実験結果のグラフである。
【発明を実施するための形態】
【００２２】
以下、屋内ナビゲーションに符号化光が使用される一例について説明する。但し、ローリングシャッターカメラのより少ないライン内で、又はより広くは光センサのより少ないサンプル内で符号化光信号を検出できることの恩恵を受けることができる他の多くの応用例があることが理解されよう。
【００２３】
ＧＰＳ等、装置が自らの位置を突き止めるための幾つかのやり方がある。しかし、屋内ＧＰＳはあまり上手く機能しない。業界の現在の一致した意見は、最も低い電力消費量で最も正確な位置決定を得るために、屋内ではスマートフォン内の感知モダリティの組合せが好ましくは使用されるべきというものである。かかる感知モダリティは、
−  移動通信用鉄塔の識別情報及び信号強度測定値、
−  WiFi（登録商標）アクセスポイントの識別情報及び信号強度測定値、
−  加速度計及びジャイロスコープ（ジャイロスコープはスマートフォンではまだ一般的ではないが、ますます組み込まれつつある）、
−  利用できる場合はBluetooth（登録商標）に基づく位置ビーコン、及び／又は
−  利用できる場合は符号化光に基づく位置ビーコン
を含む。
【００２４】
符号化光は、高サンプルレートのフォトダイオード（まだ殆どのスマートフォンで利用できない）によって読み取られても良く、又はスマートフォンの内蔵カメラを使用して読み取られ得る。注意：以下の内容はスマートフォンに関して説明されるが、本教示は他の種類の受信機器、例えばタブレット、ラップトップ、ヘッドフォン、リモコン、キーフォブ、スマートウォッチや他の「スマート」アパレル等の他のモバイル装置に等しく適用され得ることが理解されよう。
【００２５】
図１は、スマートフォン１０１のカメラを用いた符号化光の検出を示す。スマートフォン１０１は、１つ又は複数の光源１０３、１０４が現れるカメラ視野１０２を有する。光源１０３、１０４の少なくとも一方は、自らが放つ照明内に埋め込まれる識別情報（及び／又は他の情報）を伝送するように設定される符号化光源１０４である。
【００２６】
実施形態では光源１０３、１０４は、屋内環境又は屋外環境１００を照らす主目的を有する照明器具であり、少なくとも１つの符号化光源１０４が自ら放つ可視照明内に識別情報及び／又は他の情報を埋め込む。或いは、少なくとも１つの光源１０４が、可視光又は赤外（ＩＲ）光によって情報を伝送する主目的を有する専用符号化光源であり得ることも除外されない。例えば、ＩＲ光を検出することができる安価なＣＭＯＳカメラも存在し、そのため本明細書で開示される技法は、拡張現実ゲームの状況において等、「不可視の」ビーコンを作り出すためにＩＲ光が使用される応用例にも該当し得る。
【００２７】
図７は、光源１０４（又は１０３）及びスマートフォン１０１の更なる詳細を示す。光源１０４は、少なくとも１つの発光素子７０３（例えばＬＥＤやＬＥＤアレイ）と、少なくとも１つの照明要素７０３の入力に結合される出力を有するドライバ７０４と、ドライバ７０４の入力に結合される出力を有する符号器７０５とを含む。符号器７０５は、光源１０４の識別情報等のデータを埋め込むために、ドライバ７０４によって少なくとも１つの光源７０３を制御して光源７０３の発光を高周波で変調するように構成される。符号器７０５は、光源１０４の局所コンポーネント、遠隔コンポーネント、又は局所コンポーネントと遠隔コンポーネントとの組合せであり得る。符号器７０５は、１つ又は複数のメモリ上に記憶され、１個又は複数個のプロセッサ上で実行されるように構成されるソフトウェアによって実装されても良く、又は専用ハードウェア回路、ＰＧＡやＦＰＧＡ等の設定可能若しくは再設定可能な回路、若しくはそれらのあり得る可能性の任意の組合せによって実装され得る。
【００２８】
スマートフォン１０１は、カメラ７０１と、スマートフォン１０１のハウジング内に組み込まれる復号器７０２とを含む。復号器７０２は、カメラ７０１によって捕捉される静止画又は動画（つまり連続する複数の画像）を受信するように構成される、カメラ７０１の出力に結合される入力を有する。或いは復号器７０２は、外部装置、例えばパーソナルコンピュータやサーバ上にあることができ、外部接続（例えばＵＳＢポート等の有線接続、又はWi-Fi（登録商標）、Zigbee（登録商標）、Bluetooth（登録商標）等の無線接続）によって、及び／又は（例えば３ＧＰＰセルラネットワークやインターネット等のネットワークを介した）遠隔接続によってカメラ７０１から画像を受信することができる。復号器７０２は、１つ又は複数のメモリ上に記憶され、１個又は複数個のプロセッサ上で実行されるように構成されるソフトウェアによって実装されても良く、又は専用ハードウェア回路、ＰＧＡやＦＰＧＡ等の設定可能若しくは再設定可能な回路、若しくはそれらのものの任意の組合せによって実装され得る。
【００２９】
場所を突き止めるシナリオでは、符号器７０５は、光源１０４の識別情報を光源１０４の発光内に符号化するように構成され、その識別情報に基づいてスマートフォン１０１が光源１０４の位置を調べることを可能にする。例えば、３２ビットの識別情報又はその識別情報を暗号で符号化する６４ビットの値若しくは１２８ビットの値が送信されても良い。典型的には光源１０４は、識別情報の最初のインスタンスが送信されるとすぐに識別情報の伝送を（ことによるとインスタンスを区別するための短いギャップを伴って）１回又は複数回繰り返し、それにより、電話１０１と光源１０４との間に同期が一切なくても送信の少なくとも１つのインスタンスがカメラによって捕捉される確率を最大化する。
【００３０】
カメラによる位置測定を行うエネルギ使用量は、常にではないが関心事である場合がある。例えば本発明者は、カメラが活性状態にあり符号化光を検出するために何らかの画像処理が行われている電話は、カメラがオフにされている電話よりも約２５０ｍＷ多く消費すると推定する。利用者が商店街を移動しながらライブマップを５分間使用する場合、スマートフォンのカメラが連続して動作することによるその５分間にわたる約２５０ｍＷの電池消耗は電話の電池寿命に関して大きな懸念事項にはならない可能性がある。
【００３１】
しかし、続けて何時間も位置信号が必要であり得る「拡張現実」や「プッシュ広告」等の常にオンのアプリケーションにとって、カメラが連続してオンのままである場合、スマートフォンの電池に対する２５０ｍＷの消耗は重大である。
【００３２】
例えば、ヘッドアップディスプレイによって視野上のオーバレイが作り出されるスマートグラス等の拡張現実型アプリケーションを検討されたい。電池を消耗し過ぎることなく正確且つ実時間の位置／方向信号を得るために、解決策は、カメラを短く、例えば５秒に１回だけオンにし、素早く位置修正を行い、その間起こる位置／方向の変化を測定するために常にオンの加速度計及びジャイロスコープを利用することである。加速度計及びジャイロスコープは、常にオンにした場合でも約１０ｍＷしか消費しない。このシナリオでは、ずれを訂正するためにカメラがたまにしか使用されない。
【００３３】
別の実施例として、広告が供給される必要がある位置に利用者が入ったかどうかを判定するために位置修正が３０秒ごとに必要なプッシュベースの広告アプリケーションを検討されたい。この場合、加速度計及びジャイロスコープが連続してオンのままである必要はないが、利用者が歩いているのか止まっているのかを判定するために加速度計が断続的にオンにされ得る。カメラを非常に短時間オンにすることにより、例えば３０秒ごとに位置修正を得ることが望ましい。
【００３４】
電話で使用されるローリングシャッターＣＭＯＳカメラが、例えば単一のフレームだけを捕捉するために非常に短時間オンにされ、未使用時は「スタンバイ」モードにあるように稼働され得る。かかるＣＭＯＳカメラは、スタンバイモードにあるとき殆ど電力を消費しない。
【００３５】
図２は、単一のフレームが捕捉されると仮定し、図１の符号化光源１０３、１０４がローリングシャッターカメラ７０１によって捕捉される画像２００内でどのように見えるのかを示す。図３は、画像２００の右上角を拡大したものである。図３に示されているように、ローリングシャッターカメラでは、画像センサの画素が、捕捉画像２００内の同等のライン３００に対応する複数のライン、典型的には横の行にグループ化される。ローリングシャッターカメラ７０１は、複数のラインのそれぞれを相次いで順に（即ち時間的に次々と）露光することによって機能する。即ちカメラ７０１は、ライン３００の１本（例えば一番上のライン又は一番下のライン）をまず露光し始め、次いで僅かに後の時点においてシーケンス内の次のライン（例えば上から二番目のライン又は下から二番目のライン）を露光し始め、その後も同様に続く。カメラ７０１は、ローリングシャッターカメラの場合はラインの露光時間である露光時間Ｔｅｘｐによって特徴付けられ、各ライン３００は、シーケンス内のそれぞれの異なる時点において開始する露光時間Ｔｅｘｐのインスタンスにわたって露光される。
【００３６】
図３は、符号化光源１０４が現れるそれぞれの走査ライン３０１、３０２、３０３、３０４を示す。従って、復号器７０２は各ラインから、そのラインからサンプリングされる光量を測定するそれぞれのサンプルを得ることができる。実施形態では、ライン３００ごとに、復号器７０２がそのラインの個々の画素値の一部又は全てを受信し、ラインについて受信されるそれらの個々の画素値の一部又は全てを組み合わせる（例えば平均する）ことによってラインのサンプルを得る。或いは、この組合せ（例えば平均化）は、カメラの画像センサと例えばカメラ７０１に埋め込まれる復号器７０２との間の別の前処理段階（不図示）によって行われても良く、それにより復号器７０２は、前処理段階からラインサンプルを受信することにより、ライン３００ごとに組み合わさった（例えば平均）サンプルを単純に得る。別の実施例として、各ラインサンプルは、そのラインから単一の代表的画素値を取ることによって得られる。
【００３７】
ラインサンプルを得る手段が何であろうと、復号器７０２はこうして符号化光が現れる複数のライン３０１、３０２、３０３、３０４．．．のそれぞれからサンプルを得る。各ラインは僅かに異なる時点において順に露光されるので、このことは各ライン３０１、３０２、３０３、３０４．．．が符号化光を異なる瞬間に捕捉し、従って信号を符号化する変調が異なるラインにわたって明らかにされ得ることを意味する。
【００３８】
ローリングシャッターカメラを使って読まれ得る符号化光の幾つかの符号化が存在する。例えば、ＤＰＲ（デジタルパルス認識）は、単一のフレームを捕捉することによって符号が読まれ得るようにローリングシャッターのメカニズムを活用する符号化である。ＤＰＲでは、符号化がフレーム内の連続したカメラ走査ライン上で見える交互の明るい／暗い縞模様を作り出し、符号化情報を抽出するためにそれらの縞の幅が測定され得る。本明細書では、各走査ライン３００のローリングシャッター露光時間Ｔｅｘｐが、単一の走査ライン３００を読み出すのにかかる時間Ｔｌｉｎｅ（即ちライン時間）に等しいと仮定する。すぐに論じられるように、概して必ずしも常にそうである必要はなく、露光時間Ｔｅｘｐは実際は更に長いことが多々あるが（図８参照）、それぞれのライン時間中に捕捉される光だけを表すサンプルを回復するために、従って図４、図５、及び図６に示されている状況を回復するためにフィルタが利用され得る。
【００３９】
図４は、従来の事例でＤＰＲがどのように機能するのかを示す。グラフのＸ軸は時間であり、グラフのＹ軸は光強度である。Ｘ軸の一区分３０１、３０２、３０３、３０４、３０５、３０６は各走査ライン３００が読み取られる異なる時点を示す。区分４０１、４０２、４０３を有する太線は符号化光源１０４によって放たれる光強度Ｉｅを示す。網掛けされた棒４１１、４１２、４１３、４１４、４１５、４１６は、各走査ライン３０１、３０２、３０３、３０４、３０５、３０６のそれぞれ（の関連画素）によって測定される光量ＩＳを示す。図４では、放射信号が高強度状態から低強度状態に遷移する走査ライン３０３内で、中程度の光量が走査ライン３０３から読み出され、つまり棒４１３は最高レベルと最低レベルとの間の凡そ中間である。
【００４０】
４０１や４０２等のＤＰＲ縞の幅を正確に測定するために、ＤＰＲ縞が複数の走査ライン３００に及ぶ必要がある。例えば、ラインの走査速度が２０ＫＨｚである場合、１０ＫＨｚ（２０ＫＨｚ／２）未満の周波数を有するトーンだけが明確に区別され得る。例えば３０ＫＨｚのトーンは、３０ＫＨｚのトーンを１０ＫＨｚのトーンと同じように見せる「エイリアシング」効果をもたらす。従ってエイリアシングが原因で、（２つの信号レベル間でＬＥＤを駆動する）オンオフキーイング（ＯＯＫ）を使用して作られるＤＰＲ（及びトーンによる符号化光）は、ビットレートがライン走査速度の１／２を上回ることができない点でエイリアシングによる制限を有する。マルチレベルキーイング（３つ以上のあり得る振幅を有する縞）が使用される場合、ビットレートが幾らか高められ得るが、根本的なビットレートの制限が残る。
【００４１】
上記のビットレートの制限は、とりわけ符号化光源１０４が見える走査ライン３００の本数が少ない場合、符号化光源を読み取るのに数フレームかかる場合があることを含意する。例えば、３２ビットとして符号化される位置ビーコンＩＤが読み取られる必要がある場合、フレームは、符号化光源１０４が見える最低６４ライン含む必要がある（ＯＯＫを仮定する）。符号化光源１０４がより少ないライン内で見える場合、複数のフレームが捕捉される必要があり、異なるフレームのデータを「つなぎ」合せるために複雑なマルチフレーム再組立プロセスが必要とされる。
【００４２】
従って、より少数の走査ライン３００内に更に多くの情報を詰め込むことができる符号を提供することが有益である。１つの利点はより高速の検出であり、高速の検出は、それ自体（より高速の動作）のために、及び／又はエネルギを節約する（カメラ７０１が読み取らなければならないフレームが少なくなり且つ／又は走査しなければならないライン３００が少なくなるので、モバイル装置の電池寿命は延びる）ために望ましい場合がある。或いは又は加えて、別の利点は、電話内の電池電源消費量に影響を及ぼすことなしに符号化光源が物理的に小型化され得る（又は更に離され、従って画像内で更に小さく見える）ことである。この利点は、或る環境に符号化光を備える費用を下げることができ、且つ／又は符号化光源がより遠くから読み取られ得るので、より広い屋内空間内でより低密度の（特定の大きさの）符号化光源が必要であることを意味し得る。且つ／又は更に別のあり得る利点として、より少数の走査ライン内により多くの情報を詰め込むことができる符号は、放射源からスマートフォンのカメラへのより高速のビットレートデータ伝送の応用、例えばできるだけ速くＭＰ３ファイルを伝送することも支援する。
【００４３】
１つ又は複数のかかる問題に対処するために、以下の内容は、ローリングシャッターカメラを用いて読み取られる光の中に情報を符号化するための「スパイクシンボル」法を開示する。このスパイクシンボル符号化によれば、光レベル内の短いアップスパイク又はダウンスパイク（狭いパルス）を使用してシンボルが符号化され、スパイクはカメラのラインサンプリングレートよりも十分（好ましくははるかに）短い。この符号化は、エイリアシング効果又はシンボル間干渉を減らし、実施形態ではそれにより知られている符号化よりも同じカメラについて２倍速いビットレートを使用可能にする。
【００４４】
受信機側では、ローリングシャッターカメラ７０１が、このスパイクシンボル符号化の受信を最適化するように特定のやり方で駆動され得る。つまり実施形態では、受信機が（ｉ）符号化光が放たれるクロックレート（シンボルレート）ｆｓｙｍに等しいライン走査速度ｆｌｉｎｅ、及び（ｉｉ）１つのシンボル期間Ｔｓｙｍに等しいシャッター時間（露光時間）Ｔｅｘｐを使用するようにカメラ７０１を駆動するように構成され得る。これらの条件を仮定することにより、図５及び図６の例がより容易に理解され得る。但し、後でより詳細に説明されるように、これらの２つの条件の何れもあり得る全ての実施形態に概して必須ではない。
【００４５】
図５は、提案されるスパイク符号化の一実施形態を示す。この図面では、ライン走査速度ｆｌｉｎｅ及び符号化光放射源のシンボルクロックレートｆｓｙｍが等しい。ここでも、太線は符号化光源１０４によって放たれる光強度レベルＩｅを示し、網掛けされた棒はカメラ７０１によってサンプリングされる光強度ＩＳを示す。複数のローリングシャッター走査ライン３０１、３０２、３０３、３０４、３０５、３０６のそれぞれが、個々のラインの露光期間内にサンプリングされる合計光量又は総光量であるそれぞれの光強度レベル５１１、５１２、５１３、５１４、５１５、５１６をサンプリングする。スパイク符号化方式によれば、シンボル「１」が下方スパイク５０１、５０２、５０３、５０４として符号化され、シンボル「０」がかかるスパイクがないこと５０２、５０５によって符号化される。このことは、「０」のシンボルについてそれぞれのライン３０２、３０５内で得られる光量５１２、５１５に対して、「１」のシンボルについてそれぞれのライン３０１、３０３、３０４、３０６内で異なる光量５１１、５１３、５１４、５１６が得られることをもたらす。従って、復号器７０２はそれぞれのライン内で得られる合計光量又は総光量に基づいてシンボル値を検出することができる。更に、スパイクの持続時間（幅）Ｄが走査ライン３００の期間Ｔｌｉｎｅの持続時間（幅）よりも著しく狭いので、エイリアシングは殆ど又は全くなく、測定される光強度５１１、５１２、５１３内でクリーンなシンボル１又は０が見える。
【００４６】
図６は、符号化方式が３つ以上のあり得るシンボルをサポートする、図５の実施形態の改変形態を示す。ここでは、シンボル「１」が短期間Ｄ１のスパイク５０１’で符号化され、シンボル「２」がより長い、例えばＤ１の２倍の持続時間Ｄ２を有する（それでもライン期間Ｔｌｉｎｅよりも依然として実質的に短い）スパイク５０２’で符号化され、「０」はここでもスパイクなし５０３’で符号化される。この場合もやはり、異なるシンボルはそれぞれのライン３０１、３０２、３０３内で異なる光量５１１’、５１２’、５１３’が得られることをもたらし、それに基づき復号器７０２はそれぞれのシンボル値を検出することができる。更に、最大スパイク幅Ｄ２がライン期間Ｔｌｉｎｅよりも実質的に狭いので、エイリアシングは殆ど又は全くなく、クリーンなシンボル２、１、又は０が検出可能である。
【００４７】
あり得る別の改変形態は、例えば８個の異なるシンボルを符号化するために「スパイクなし」と７個の異なるスパイク幅とを使用することである。
【００４８】
実施形態では、各スパイク（各パルス）の最大幅（例えばＤやＤ２）がラインレートＴｌｉｎｅの一定の部分未満、例えばＴｌｉｎｅの１０分の１以下であるように、符号化方式が、特定のラインレートＴｌｉｎｅを有する特定のカメラに適応され得る。但し、より広くは、少なくとも任意のパルスがシンボル期間当たりシンボル期間Ｔｓｙｍの一定の部分未満の持続時間、例えばＴｓｙｍの１０分の１以下に制限されるように符号化方式が設計され得る。
【００４９】
図１３は、図５のシンボルの組を示す。このシンボルの組は、それぞれが異なるデータ値を表す持続時間Ｔｓｙｍの１対のシンボル波形を含み、そのため符号化信号内には、１つの（唯一の）シンボルを符号化するシンボル波形のうちの１つ（唯一の波形）がシンボル期間ごとにある。本明細書で開示される符号化方式によれば、シンボル波形内の任意の実質的活動がシンボル期間内の所与の位相における窓Ｗに制限され、窓Ｗはシンボル期間Ｔｓｙｍの持続時間よりも実質的に短い。窓Ｗの外側では、組内の両方のシンボル波形について波形が実質的に同じであり、窓Ｗの内側でのみ波形間の著しい違いが存在する。図５の二値の実施例では、０のデータ値が窓の内側及び外側の両方で全体を通して実質的に平らな波形（同じ光レベル）によって表わされ、１のデータ値が窓Ｗ内の持続時間Ｄのパルス（この事例では定義上窓Ｗの持続時間に等しい）によって表わされる。
【００５０】
図１４は、同様の原理によって構成される図６のシンボルの組を示す。ここでは、シンボルの組が持続時間Ｔｓｙｍの３つ（又はそれ以上）のシンボル波形を含み、ここでも１つの（唯一の）シンボルを符号化するシンボル波形のうちの１つ（唯一の波形）がシンボル期間ごとにある。ここでは、０のデータ値が窓Ｗの内側及び外側の両方で全体を通して実質的に平らな波形（同じ光レベル）によって表わされ、１のデータ値が窓Ｗ内の持続時間Ｄ１の短いパルス（窓Ｗの持続時間よりも短い）によって表わされ、２のデータ値が同じ窓Ｗ内の持続時間Ｄ２の幾らか長いパルスによって（この事例では窓Ｗと等しい持続時間の最大パルス長として）表わされる。従って、この場合もやはりシンボル波形内の任意の実質的活動がシンボル期間内の所与の位相における窓Ｗに制限され、窓Ｗはシンボル期間Ｔｓｙｍの持続時間よりも実質的に短い。
【００５１】
このことは、実際のデータを符号化するパルス（「スパイク」）間に「クリアスペース」が残されることを確実にする。シンボル期間のデータ符号化領域間にこのクリアスペースを残すことは、サンプルレートの半分よりも高いシンボルレートでデータ（２つのサンプルごとに、例えばローリングシャッターカメラの２本のラインごとに複数のシンボル）が符号化されることを可能にする。即ち、他の全てのシンボル期間にあるような同じ（「クリア」）信号レベルを有する領域が各シンボル期間内にあり、各シンボル期間はこのクリア領域を次のシンボルに対して同じ又はほぼ同じシンボルクロック位相のオフセットにおいて有し、このことは「エイリアシング防止」特性又は「シンボル間干渉低減」特性を符号に与える。
【００５２】
図５、図１３、図６、及び図１４の実施例は、開示される基準を満たすあり得る唯一の符号化方式ではないことに留意されたい。この特性を有する別のシンボルの組の例が図１５に示されている。図１５には、二値符号化方式の別の実施例が示されており、今回は０のデータ値が短期間Ｄ０のパルスによって表わされ、１のデータ値が持続時間Ｄ１（例えばＤ０の２倍の長さ）の幾らか長いパルスによって表わされる。更に、位相内で、０を表すパルスＤ０は１を表すパルスＤ１内に全く含まれず、又は重複さえしない。それでもなお、シンボル期間Ｔｓｙｍの持続時間よりも実質的に短い持続時間を有するシンボル期間内の所与の位相（即ち位置）において、両方のパルスが窓Ｗに含まれる。即ち、組の中の最も早いパルスＤ０の最も早い縁と、組の中の最も遅いパルスＤ１の最も遅い縁との差は、図１５に示されているシンボル期間内のそれらの位相に関してＷに等しく、ＷはＴｓｙｍよりも実質的に狭い。
【００５３】
更に、図中では下方スパイクが示されているが、この技法は上方スパイクが使用される場合にも機能することに留意されたい。部屋等の環境用の照明源として意図され、符号化光放射源としても機能するランプでは下方スパイクの方が適切な場合がある。上方スパイクは、できるだけ少ないエネルギを使用すること及び／又は人間に見えるできるだけ少ないアーティファクトを作ることを目標とする放射源により適している。理論上カメラのＡＤ変換器のダイナミックレンジをより上手く活用できるので、上方スパイクは多くのビットを有するシンボルを得る狙いにより適合し得る。更に、シンボル波形間に存在する任意の実質的な差、即ち異なるデータ値を伝える差が、繰り返し発生するシンボル期間内の所与の位相（時間位置）において窓Ｗに制限される条件にシンボル波形が準拠する限り、窓Ｗ内のスパイク又はパルスは必ずしも矩形又は或る特定の形状である必要はないことに留意されたい。
【００５４】
原則的に、Ｔｓｙｍ未満の如何なる窓の持続時間Ｗもエイリアシング又はシンボル間干渉を減らすが、０．２・Ｔｓｙｍ（２０％）以下の窓の持続時間が本開示では実用限界と見なされる。放射側と受信側との間で何らかの粗い位相整列メカニズムが使用される場合、この大きさの窓がとりわけ実用的であり得る。かかる粗い位相整列は、単に僅かに異なる送受信クロック速度を有し、位相が十分上手く整列するまで受信機においてしばらく待つことで構成されても良く、この手法は、とりわけエネルギを節約するためにカメラをデューティサイクルさせることが望ましい場合に魅力的である。更に、より大きい窓の大きさはより優れたＳＮＲを与え、そのためシンボルごとにより多くの情報が潜在的に符号化され得る。
【００５５】
但し、好ましくは窓の持続時間は実際にはこれよりも短く、０．１・Ｔｓｙｍ（１０％）以下である。
【００５６】
窓Ｗの幅は、最も広くはＴｓｙｍよりも実質的に短いシンボル期間Ｔｓｙｍに対して規定される。しかし実施形態では、この符号化は特定のローリングシャッターラインレートＴｌｉｎｅを有する特定のカメラ（例えば特定の型式やクラスのカメラ）専用に設計されても良い。その場合、窓ＷはＴｌｉｎｅに対して定められても良く、Ｔｌｉｎｅよりも実質的に短い。例えば、Ｗは以下であるように、又は０．１・Ｔｌｉｎｅ以下であるように制限され得る。
【００５７】
シンボル波形が窓Ｗの外側で「実質的に」同じ等と述べられる場合、これは、符号のエイリアシング防止特性に著しく影響せず且つ情報を伝えるために符号化方式によって使用されない任意の取るに足らない変化を除き、同じであることを意味する。例えば、符号器が時間窓Ｗの外側で放たれる光に少量の雑音を加える場合、その形態も本開示の範囲から外れることはない。更に、シンボル波形が窓Ｗの内側で「実質的に」異なると本明細書で述べられる場合、これは、それぞれの異なるサンプル内で測定される異なる光量に基づいて異なるデータ値が検出されることを可能にするのに少なくとも十分異なることを意味する。
【００５８】
感度に関して、或るシンボル期間の単一の窓内に符号化され得る異なるシンボルの数は、異なるシンボルによって引き起こされる光量５１１’、５１２’、５１３’の差を正確に測定するスマートフォンカメラの能力によって制限される。現代の典型的なＣＭＯＳカメラチップ内のアナログ−デジタル（ＡＤ）変換器は、１画素あたり１０ビット〜１２ビットのダイナミックレンジを有し得る。但し感度の制限は、とりわけ短いライン露光時間では、信号対雑音の考察によって殆ど決定される。本発明者の実験は、（３つ以上のシンボルを使用して）３つ以上の光量を区別することは、例えラインの露光時間が（１秒当たり２０，０００シンボル／ラインのシンボルクロック及びライン走査速度に対応する）２万分の１秒でも、典型的な屋内光源強度を有する光源に向けられるＣＭＯＳカメラにとって現実的であることを示した。この事例では、信号対雑音比を改善するために多くの水平画素値（光源１０４を見る複数の画素）を合計（又は平均）することが有益である。かかる合計は、水平ビニングモードを使用して殆どのＣＭＯＳチップによってハードウェア内で部分的に行われ得る。（水平ビニングモードを使用することはエネルギの節約も通常助けるが、その程度はカメラチップの設計にも依存する。）一部のＣＭＯＳカメラチップは、信号がカメラのアナログ−デジタル（ＡＤ）変換器に入る前に画素信号に対するアナログ前置増幅器の利得水準を設定することを支援し、かかる支援を有するカメラでは高利得を設定することが望ましい場合がある。
【００５９】
位相に関して、上記で窓Ｗがシンボル期間内の所与の位相に関して定められると述べられる場合、これは、異なるシンボル値についてさえ、現在のシンボル期間に対する現在のシンボル期間内の窓の位置が後続の隣接するシンボル期間に対するその後続のシンボル期間内の窓の位置と同じであり、その後も同様に続くことを意味する。そのため、或るシンボルから次のシンボルへとシンボル値に応じて窓の位置が変わることはない。但し、これは必ずしも位相が永続的に固定されることを意味しないことに留意されたい。例えば、シンボル期間内の時間窓の時間オフセットが、例えば不定期のステップ内で符号器によって変えられる場合があり得る。更に、隣接するシンボルのパルスが十分小さい所定窓から外れないという条件を満たすほどジッタ又はドリフトの程度が十分小さい限り、上記の条件は符号化の位相内のジッタ又は疑似スタティックドリフト（pseudostatic drift）があり得ることを排除しない。例えば、パルスが０．１・Ｔｓｙｍの窓に含まれるように符号化が設計されるが、ジッタが＋／−０．０５・Ｔｓｙｍ加える場合、この条件はパルスが０．２・Ｔｓｙｍの窓に含まれるという条件を依然として満たす。
【００６０】
先に述べたように、図４、図５、及び図６に関する検討は、各走査ライン３００のローリングシャッター露光時間Ｔｅｘｐが、単一の走査ラインを読み出すのにかかる時間Ｔｌｉｎｅ（即ちラインレートｆｌｉｎｅの逆数であるライン期間Ｔｌｉｎｅ）と等しいと仮定する。ソフトウェアによって制御されるＣＭＯＳカメラは、ライン期間Ｔｌｉｎｅに等しい（又はそれよりも短い場合がある）（比較的短い）露光時間Ｔｅｘｐを使用するようにソフトウェアによって構成され得る。但し、図８に示されているように、概してＴｅｘｐ＝Ｔｌｉｎｅが必ずしも成立するわけではないことに留意されたい。多くの場合、露光時間Ｔｅｘｐはライン期間Ｔｌｉｎｅよりも長く、そのため各走査ライン３００の露光がシーケンス内の様々なずれた瞬間において開始しても、それらの露光時間は重複する。ラインの露光時間Ｔｅｘｐをラインの走査時間Ｔｌｉｎｅと等しいように設定することで複雑さが低減する。しかし、他方でそのことは露光不足の画像を招き得る。露光不足は画素値を何らかの係数と掛けることによって訂正され得るが、結果は幾らか雑音があるものになる（より長い露光時間を使って得ることができる結果よりも質が低くなる）。従って、カメラ画像が単なる符号化光の復号よりも多い用途を有する一部の応用では、例えばラインのサンプル期間Ｔｌｉｎｅ及び／又はシンボルのクロック時間Ｔｓｙｍの４倍又は５倍の露光時間Ｔｅｘｐを有する画像からスパイク符号化を読み取ることが有益であり得る。
【００６１】
より長い露光時間Ｔｅｘｐに対処するために、復号器７０２は、それぞれのサンプルの個々のライン時間Ｔｌｉｎｅ中に得られる光だけを表すサンプルのバージョンを回復するためにフィルタを適用するように構成され得る。かかるフィルタの一例が以下で示される。
【００６２】
古典的な（周波数領域の）ウィーナフィルタリングでは、２つの独立した定常のゼロ平均ランダムプロセスＸ及びＮ０がある。典型的な応用では、ＸがフィルタＨに入力される入力信号を表し、Ｎ０はフィルタＨの出力において加えられる付加雑音を表す。ウィーナフィルタＧは、フィルタＨを等化するように、即ち雑音Ｎの存在下で入力信号Ｘに対するフィルタＨの効果を（最良近似まで）取り消すように構成される。古典的な（周波数領域内の）ウィーナフィルタの公式は
【数１】
2017525258.tif 000003
であり、Ｓ（ｆ）は入力信号Ｘのスペクトル密度であり、Ｎ（ｆ）は雑音項Ｎ０のスペクトル密度である。
【００６３】
ローリングシャッターカメラを用いた符号化光の検出への適用では、同等のデジタル信号処理問題が、時間的ボックス関数によってフィルタリングされているデジタル信号の回復に対応する。つまり、入力信号Ｘはローリングシャッターカメラによって捕捉される符号化光信号を表し、フィルタＨはローリングシャッターの取得プロセスのフィルタリング効果を表す。このフィルタＨは各ラインの露光によって作られる。フィルタＨは、幅Ｔｅｘｐを有する時間領域内のボックス関数（即ち矩形関数）に等しく、即ちラインが時間Ｔｅｘｐにわたって露光され、フィルタＨはその間信号を捕捉し（時間領域内のフィルタＨの変換関数は均等に「オン」である）、その前後は信号を一切捕捉しない（時間領域内のＨの変換関数はゼロである）。時間領域内のボックス関数は、周波数領域内のシンク関数に対応する。このフィルタの効果は、シンボル間干渉を作り出すことであり得る。従って以下の内容では、Ｔｅｘｐによって作り出されるフィルタが、「ＩＳＩフィルタ」としてその不所望の効果に関して言及され得る。
【００６４】
作業は、Ｙだけを使用してＸの最小二乗平均誤差推定を与える線形フィルタＧを見つけることである。それを行うために、等化される（即ち取り消される）フィルタＨの想定上の知識並びにＮ０に基づいてウィーナフィルタＧが事前に構成される。ウィーナフィルタは（理論的にＨの知識並びにＸ及びＮのスペクトルを所与として）ウィーナフィルタＧをＹに適用することが（Ｙは入力信号Ｘに雑音Ｎを加えたものである）、元の入力信号Ｘに対する二乗平均誤差（ＭＳＥ）を最小化する出力信号Ｘ＾をもたらすように解析的に構成される。
【００６５】
見て分かるように、ウィーナフィルタの公式は、この事例ではＨ＊及び｜Ｈ｜２（＝ＨＨ＊）の形を取る等化されるフィルタの表現を含む。従来、古典的なウィーナフィルタではＨ（ｆ）、等化されるフィルタ、及び雑音のスペクトル密度Ｎ（ｆ）が正確に分かっていると仮定される。ローリングシャッターの取得プロセスによって作り出されるＩＳＩフィルタに関する等価の場合、そのことはＴｅｘｐが正確に分かることを含意する。プロセスＸ及びＮそれぞれのスペクトル密度Ｓ（ｆ）及びＮ０（ｆ）も分かっていると仮定される。
【００６６】
但し、ウィーナフィルタは実際にＨ（ｆ）を推定する際の誤差に非常に敏感である。過去、最良の結果を得るまでターゲット応答を変えることを試みる反復的（時間がかかる）手法や、最悪例Ｈ（ｆ）を識別し、その最悪例のためにウィーナフィルタを最適化することを試みるミニマックス手法等、未知の歪みに対処するための幾つかの技法が開発されている。しかし、等化されるフィルタは依然として非常に正確には分からない場合がある。
【００６７】
従って、受信機側でＩＳＩを取り消すために、Ｈ（ｆ）の定義における不正確さに反応しないより「強力な」等化器フィルタを提供することが望ましい。実施形態では、これは決まった「平均ウィーナフィルタ」を計算することによって実現されても良く、平均ウィーナフィルタとは、ＩＳＩフィルタＨ（ｆ）の未知の変化の下でロバストなウィーナ様のフィルタである。Ｈ（ｆ）の関連パラメータの統計的分布を所与とし、この「ロバストなウィーナフィルタ」はＭＳＥに関してより最適な出力を作り出すことができる。
【００６８】
符号化光への適用では、この理論は符号化光信号を再構築することを可能にし、多くの場合にそうであり得るようにカメラのＴｅｘｐはおおよそしか知られていない。
【００６９】
以下、この問題が周波数領域内で（従って先に紹介されたようにＨ（ｆ）に関して）説明される。符号化光への適用では、ロバストなウィーナフィルタがカメラベースの（スマートフォンの）復号アルゴリズム内でＴｅｘｐとして実時間で構築されても良く、従ってＨ（ｆ）はランプの実際の読出し中に定められ又は変えられることに留意されたい。
【００７０】
ロバストなウィーナフィルタリングは、Ｈ（ｆ）が正確に分かっていないが、実際に少なくとも１つの未知量θ、即ちその値が知られておらず、実際に任意の所与の事例において或る値域内、例えば２つの限界−Δと＋Δ（又はより一般的にはΔ１とΔ２）との間で見つかり得るＨのパラメータに依存し得ることに注目することに基づく。つまり、フィルタＨ（ｆ；θ）は、Ｘ及びＮとは無関係にランダムパラメータθに依存すると考えられる。
【００７１】
幅θのボックス関数、即ち周波数領域内のシンクでは次式が成立する。
【数２】
2017525258.tif 000004
【００７２】
ボックスによって作り出されるＩＳＩフィルタの場合、θはＴｅｘｐである。
【００７３】
ロバストなウィーナフィルタが上記の古典的なウィーナフィルタ表現を取ることによって作成され、未知のパラメータθの潜在値にわたって平均される対応する平均表現（例えば−Δと＋Δとの間、又はより一般的にはΔ１とΔ２との間の平均）と置き換えられて、等化されるフィルタの表現が現れる。つまり、Ｈ（ｆ）に基づく項が現れる度、その項はθに関して平均される等化の平均項で置換される。
【００７４】
上記の古典的な公式から開始し、次式
【数３】
2017525258.tif 000005
が得られ、Ｅはθに関する平均である。
【００７５】
上記の例を所与とし、全ての実施形態において必ずしもＴｅｘｐ＝Ｔｌｉｎｅが成立するとは限らないことが見て取れる。更にかかる事例では、本開示の範囲は本明細書に記載のフィルタだけに限定されず、露光時間Ｔｅｘｐのシンボル間効果を取り消し、それによりライン時間Ｔｌｉｎｅに対応するサンプルを回復するために、他の種類の等化器等、他の種類のフィルタも適用可能であり得る。
【００７６】
更に、ここまで上記で説明された実施形態は、シンボルクロックレートｆｓｙｍと全く同じライン走査速度ｆｌｉｎｅに関して説明されてきたが、これもあり得る全ての実施形態にとって必ずしも必須ではない。例えば、ｆｓｙｍとｆｌｉｎｅとが全く同じであることは、クロックの位相差が、スパイクが２本の走査ラインの露光期間の間の境界と重なるものである場合、シンボルを明確にサンプリングすることができない不利益を有し得る。スパイクの幅を狭く、例えば走査ライン時間の１０分の１に保つことにより、そのような重なりが起こる可能性は１０回に１回に過ぎない。この問題は図９、図１０、図１１、及び図１２に関してより詳細に論じられる。
【００７７】
まず、カメラのラインサンプリングレートが、送信機のシンボルクロックレートと全く同じである事例を検討されたい。一実施例として、例えばどちらも１０ｋＨｚのクロックを使用するものとする。この条件は０．１ｍｓのシンボル持続時間を与える。例えばスパイクの幅はシンボル持続時間の１０分の１、従って０．０１ｍｓである。ＣＭＯＳカメラは１０ｋＨｚでラインを読み取るので、（ＣＭＯＳカメラが視野内の光源からの光を有する走査ラインをサンプリングしている限り）ＣＭＯＳカメラは０．１ｍｓごとに放射源からの符号化光のサンプルを１つもたらす。この例では、ラインの露光時間も０．１ｍｓだと仮定する。各サンプルは、０．１ｍｓの時間間隔にわたって得られる光を平均化する。
【００７８】
図９はこの構成を示す。この図面のグラフ内では、Ｘ軸が全て時間を（秒単位で）示し、Ｙ軸は伝送される光レベル（一番上のグラフ）又はサンプル内で得られる光量（下の３つのグラフ）を示す。下の３つのグラフでは、それぞれのバツ印がカメラから得られる単一のラインのサンプル値を描く。使用される符号は、そのシンボル送信期間中の一定の「オン」の光レベルによって示される「０」、及びシンボル期間の始めに挿入される、光が０．０１ｍｓの間オフになるスパイクによって示される「１」という２つのシンボルを有する。この図面の一番上のグラフは、シンボルシーケンスの一例「０１０１０１０．．．」、従って「０」シンボル及び「１」シンボルが交互に送信されることによる光レベルを示す。
【００７９】
上から二番目のグラフは、スパイク（及びスパイクが配置され得る窓）がサンプル境界にまたがらない一番上のグラフ内の符号化光から取られたサンプルを示し、各スパイクの発生は単一サンプルのサンプル期間内に完全に含まれる。後続のサンプルは、「０」シンボル及び「１」シンボルに対応する光量１及び０．９を示すことが見て取れる。
【００８０】
次に、スパイクが２つのサンプル期間にまたがる場合に何が起こるかを検討されたい。この場合、単一のサンプル期間が２つの隣接するシンボルからのスパイク又はスパイクの欠如を認め、つまりサンプル内にシンボル間干渉がある。上から三番目のグラフは、スパイクが２つのサンプル期間にまたがるが、各スパイクがその後の２つのサンプル期間内で不等部分を有する場合のサンプル信号を示し、この事例では最初のサンプル期間内で、次のサンプル期間内よりも多くのスパイクがある。シンボルは互いに干渉するが、その程度はサンプリング期間内で最も強く貢献するシンボルの値がもはや検出できないほどではない。但し、図面はサンプリング雑音を示さず、サンプリング雑音がないと仮定するシミュレーションによって作図されたことに留意されたい。幾らかのサンプリング雑音がある場合、あまり貢献していないシンボルをフィルタで正確に切り離すことがもはやできなくなる可能性がある。
【００８１】
図９の一番下のグラフでは、スパイクの中間がサンプル境界と正確に整列する場合に何が起こるのかが示されている。この事例では、０１０１０１．．．シンボルシーケンスが検出可能な信号をもはや作り出さず、シンボルが完全に破壊的に干渉する。
【００８２】
シンボルクロック時間の１０分の１のスパイクサイズ、及び放射源のクロックと受信機のクロックとを位相同期する措置が講じられていないがそれらの位相差が成り行き任せにされると仮定し、スパイクがサンプリング境界にまたがる確率は１０回に１回しかない。
【００８３】
それでもなお、この１０回に１回の確率が信頼性の問題を提起する。１０分の１の確率を受け入れることもできる。しかし、この確率を改善したい場合、次に論じる幾つかの解決策がある。
【００８４】
第１の選択肢は、スパイクがサンプリング間隔にまたがる原因となる位相差を回避するために、送信機と受信機との間で位相同期メカニズムを使用することである。スパイクシンボルを含む幾らか小さい窓の大きさは、非スパイクシンボルを使用するシステムに比べ、かかる同期メカニズムが非常に正確でなくても良いことを確実にする。かかるメカニズムの１つのあり得る実装形態は、悪い位相状況にあることを受信機が検出するとき、受信機が停止し、ＣＭＯＳカメラチップのクロックを再開して（願わくば）良い位相状況を作り出すことである。別のあり得る実装形態は、送信機に対してその位相を変えるよう伝えるために受信機が送信機へのバックチャネルを使用することだが、概して費用上の理由及び単純さの理由から、バックチャネルを必要とする設計の選択肢は回避したい。
【００８５】
第２の選択肢は、送信機が自らの送信機クロックの位相を定期的に変えること、又はスパイクがそのシンボル期間内で占有する時間オフセット位置を変えることである。従って、悪い位相状況にある受信機は送信機が位相を変えるまで単に待つだけで良い。例えば位相は、各メッセージ後にシンボル期間の１０分の２だけ進められ得る。別の実施例として、位相はメッセージ内の４ビットごとに１０分の２だけ進められても良く、メッセージ内のビットのうちの１０％が読めない場合にそのメッセージが依然として再構築され得るようにメッセージは誤り訂正符号を用いて符号化される。
【００８６】
第３の選択肢は、シンボル長から（あり得る最大の）スパイク長を引いた（又はより広くは窓Ｗの長さを引いた）長さ以下のサンプリング期間長を受信機が使用することである。このことは、隣接するシンボル内の２つのスパイク又は非スパイクの両方が、単一のラインサンプル内で測定される光量に決して同時に寄与できないことを確実にする。従って、全てのサンプル内のシンボル間干渉が回避される。
【００８７】
この第３の選択肢が図１０に示されている。図１０の軸及び記号は図９にあるのと同じである。一番上のグラフは、０．１ｍｓのシンボル長及び０．０１ｍｓのスパイク長を有する伝送信号を示し、（上記の第２の選択肢とは異なり）図示の期間内で送信機はクロック位相又はスパイクオフセットの調節を自ら一切行っていないことに留意されたい。上から二番目のグラフは、０．０４２ｍｓのサンプル時間（サンプル長）を有する受信機内のサンプルを示す。殆どのサンプルは通常の光量１、つまりスパイクが一切ないことを示す。一部のサンプルは、サンプル境界内に含まれ、約０．７６の光量をもたらすクリアスパイクを示す。一部のスパイクは隣接する２つのサンプルにまたがり、両方における１から０．７６の間の中間光量をもたらす。そのような隣接する２つのサンプルの平均光量は常に０．８８、つまり正確に０．７６と１との間である。シーケンス内の中間光量を有するサンプルを見つけ、その位置に注目することにより、復号器は幾らかの精度を伴って送信機のクロックの周波数及び位相を回復することができる。これらに基づき、識別を行い、スパイクの（有無又は長さ）を測定するために検討される必要があるサンプルの位置にシンボル内の（あり得る）スパイクの位置をマップすることは容易である。図１０の上から三番目のグラフも第３の選択肢を示し、ここでのサンプリング時間は０．０８４ｍｓである。
【００８８】
第４の選択肢は、上記の第３の選択肢よりも長いが、シンボル長に厳密に等しくはない受信機のサンプリング期間長を使用することである。例えば、図１１の上から二番目のグラフに示されているように、サンプリング時間は０．０９３ｍｓであり得る。図１１の信号及び軸は図１０にあるのと同じである。０．０９３ｍｓのサンプリング時間では、この事例では０．９から１の間の中間値を有するサンプルの対がここでも見て取れ、サンプルの少なくとも１つにシンボル間干渉がある。図９との関連で先に論じられたようにこの干渉は解決されることがあり得るが、必ずしも常に解決され得るわけではない。この問題に対処するために、誤り訂正符号を用いて、読むことができないシンボルの１０％以下を補償することができる。
【００８９】
図１１の一番下のグラフは、０．１０６ｍｓのサンプリング長を示す。依然としてシンボルの多くをクリーンに読むことができる、つまりシンボルのスパイク（又はスパイクなし）が単一のサンプル内に含まれることが見て取れる。しかし、ここでもやはりシンボル間干渉があり、今回はこの相互干渉がシンボルの１０％を僅かに超えて影響する。不都合な雑音条件を所与とし、回復するために０．０９３ｍｓのサンプリング時間の場合よりも強い誤り訂正符号が使用され得る。
【００９０】
送信機が同じメッセージ、例えば送信機による位置ビーコンであるビーコンメッセージを複数回繰り返す場合、誤り訂正符号を使用することの代替策があり得る。欠落シンボルを補償するために、そのメッセージの第２の複製内で異なるシンボルが欠落している（即ちシンボル間干渉が原因でサンプルから読み取ることができない）ことを期待し、受信機は待ち、そのメッセージの第２の複製を読み取ることができる。受信機は、必要な全てのシンボルの読み取りに成功するまでメッセージ又はメッセージの断片を読み取り続けることができる。従って、繰り返されるメッセージは受信機において誤り訂正を行う代わりのやり方を提供する。
【００９１】
従って、上記の内容は送信機及び受信機に適用可能な様々な技法を開示し、かかる技法は位相を同期する問題並びに送信機及び受信機内の異なるクロック速度の問題に対処可能な成功裏の組合せを構築するために組み合わせられ得る。
【００９２】
ＣＭＯＳカメラのラインサンプリングレートは典型的には水晶によって駆動されるクロックによって導かれるので、異なるカメラはそのラインレート間で僅かな差を有する場合があり、非常に高い又は低い環境温度にさらされるとき単一のカメラが僅かに異なるレートを有する場合もある。安価な符号化光送信機は水晶によって駆動されるクロックさえ有さない場合があり、そのためそのクロック速度は環境温度に応じて著しく（一桁のパーセント値単位で）変わり得る。全体的に、送信機のクロックと受信機のクロックとの間の正確な同期を実現する試みは若干費用のかかる提案である。従って、費用検討に関わる場合、クロック速度及び位相のずれを検出して補償するための技法を使用することが好ましい。
【００９３】
図１２は、メッセージがどのようにサンプリングされ得るのかについての更なる例を示す。軸及び記号は図１０にあるのと同じだが、今回はシンボルシーケンス０１０１０１ではなく本物のメッセージが示されている。この図面は、搬送波信号、つまり８個の「０」シンボルとその後に続く２個の「１」シンボルで始まるメッセージを示す。図１２の一番下のグラフは或る程度の外れ値（outlier）の事例を示し、メッセージがシンボル長の２倍のサンプル長でサンプリングされる。このグラフは隣接する２つの「００」及び「１１」シンボルが１及び０．９のサンプル値をもたらすのに対し、隣接する「１０」及び「０１」シンボルが０．９５の値をもたらすことを示す。このことは、サンプルクロックがシンボルクロックよりもはるかに低くてもメッセージの情報の一部が依然として読まれ得ることを意味する。非常に強力な誤り訂正符号、又は位相の整列が変えられる間に同一メッセージの多くの複製を後に読み取ることで最終的に全メッセージコンテンツを回復することができる。しかし、０．１ｍｓのシンボル長を有する符号は０．２ｍｓのサンプリング時間を有する受信機にあまりマッチせず、かかる受信機をサポートしようとする場合は０．２ｍｓ前後のシンボル長を有する符号の方が、それらの受信機にとってより効果的なビットレート、及びより単純な構成をもたらす。
【００９４】
図１６は、１６２７４Ｈｚのラインサンプリングレートを有するカメラを使って検出が行われるシンボルシーケンス「０１０１０１０１．．．」を符号化する、０．２・Ｔｓｙｍ（２０％）の窓の大きさ及び図５の符号化方式による一部の実験結果を示す。９０％のデューティサイクルで８．１８０８ｋＨｚのブロック波をＬＥＤランプ上に置くためにブロック波発生器が使用され、そのため光は９０％の時間オンであり、１０％はオフである。これは、クロック期間の１０分の２のものを有するシンボルと共に「１」シンボル及び「０」シンボルを交互に符号化する、１６３６１．６Ｈｚのシンボルクロックを有するスパイクシンボルの符号化シンボル列に対応する。カメラの露光時間Ｔｅｘｐはライン期間Ｔｌｉｎｅと等しく設定された。図１６のグラフは、光源１０４を含む画像を通る垂直スライスを取り、各水平走査ライン３０１、３０３．．．の輝度値を加算し、走査ラインにわたる輝度差を描くことによって得られた。走査ラインの数がＸ軸上に示されており、差がＹ軸上に示されている。このグラフ内では、「１」シンボルと「０」シンボルとの差がライン内で明確に認識できるＸ＝１００からＸ＝１８０まで、及びＸ＝２４０からＸ＝２８０までのラインの２つの部分が見て取れる。Ｘ＝１８０からＸ＝２４０の部分内ではシンボルがラインのサンプリング境界にまたがり、そのため見えなくなる。この実験で使用されたカメラは一般的なタブレットコンピュータ内で利用可能な６４０×４８０の分解能のカメラであった。描かれているカメラ信号に対して幾らかのソフトウェア雑音低減が行われ、その雑音低減はＸ＝１８０及びＸ＝２４０における信号の性質内の比較的急激な遷移に寄与した可能性が高い。他のカメラ及び他の雑音低減アルゴリズムは僅かに異なる実験結果をもたらし得る。復号器７０２に入力されるカメラ信号をカメラ７０１から得るとき、可能な場合はカメラ信号に対する雑音低減処理がオフにされることが望ましい場合がある。但し、かかる操作は、あり得る全てのカメラプラットフォーム上で可能ではない。
【００９５】
次に幾つかの更なる任意選択的特徴が説明され、その何れか１つ又は複数が、本明細書で開示される符号化及び復号方式と組み合わせて使用され得る。
【００９６】
実施形態では、照明要素７０３が１つ又は複数のＬＥＤを含み得る。例えば、１秒当たり２０，０００ラインのシンボルクロックでは、最大パルス幅は例えば１／２００，０００秒になる。これは、一般に使用される蛍光体による白色ＬＥＤを駆動するためにこの信号の符号化が使用される場合、スパイクが発光の青色光成分内でしか忠実に再現されず、蛍光体が光の黄色（低周波）成分内で示されるスパイク形状を僅かに平滑化することを意味する。従って一部の状況では、クロック位相の同期を保つことを試みない実施形態において、とりわけその位相に関して露光間隔の縁に近いシンボルについて青色成分（カメラによって測定される青色画素）だけを使用することが好ましい。
【００９７】
更なる実施形態では、符号器が複数の符号を混合するように構成され得る。つまり、符号化光の放射源は、他の種類の符号化光検出器と後方互換性があるように「高速」のスパイク符号及び「低速」のＤＰＲベース又はシンボルベースの符号の両方をインタリーブ式に放つことができる。その場合、高速符号が予測可能なレートで放たれれば有益であり得る。スマートフォンは自らのカメラを活性化し、次の高速符号が来ることを知っている丁度そのときに光源のスナップショットを撮ることができる。
【００９８】
更なる実施形態では、電力消費量を節約するために、カメラが潜在的な画像領域の小領域だけを捕捉するように構成され得る。ソフトウェアの制御下にあるカメラは、「関心領域」（ＲＯＩ:region of interest）や空間窓と呼ばれることがある全視野内の画素のサブセットだけサンプリングするようにプログラムされ得る。本開示の実施形態では、電力を更に節約するためにこの技法が使用されても良く、つまり小さい窓をサンプリングする電力使用量は通常、全フレームをサンプリングすることに比べて比例的に少ない。但し、節電のためにＲＯＩを使用することは、関心のある符号化光源が視野内のどこにある可能性が高いのかについて、スマートフォンが幾らかの見当を有することを必要とする。
【００９９】
例えば、光源の位置は画像認識アルゴリズムによって検出され、又は利用者によって手動で指定され得る。更に、電話の移動を追跡するために加速度計及び／又はジャイロスコープが使用されても良い。その場合、符号化光源のあり得る位置を覆うように窓が配置されその大きさが決定されても良く、符号化光源のあり得る位置は、かかる光源の視野内での以前の位置及びそれまでの間の電話の測定済みの移動に基づいて突き止められる。加速度計／ジャイロスコープがずれる最悪の場合に対処するために、周囲の画素フレームが窓に追加され得る。符号を捕捉するためにより小さな窓が使用されることを可能にすることにより、開示される符号化方式は、知られている符号化に比べ、この技法の節電の可能性を高める。
【０１００】
この技法への更なる追加は、次のように機能し得る。まず、カメラが単一のフレームを非常に低い分解能で捕捉するように設定され、かかる捕捉は最大分解能のフレームを捕捉するよりも少ない電力を使用して行われ得る。高輝度の位置、つまり符号化光を含む可能性があるあり得る光源を見つけるためにこのフレームが解析される。次いで、（十分な）符号化光源が見つかり復号されるまで、それらの位置が小さいＲＯＩ（窓）を用いてより高い分解能で再びサンプリングされる。この場合もやはり、より小さい窓が使用されることを可能にすることにより、開示される符号化方式は、知られている符号化に比べ、この技法の節電の可能性を高めることを指摘しておく。
【０１０１】
また更なる実施形態では、符号が複数のライン走査速度について最適化され得る。典型的な６４０×４８０の分解能のＣＭＯＳカメラは、３０ｆｐｓまでのフレームレートを作り出すことができる。つまり、１秒当たり最大で３０＊４８０＝１４，４００ライン出力される。それらのカメラは、ラインが出力されないフレーム間の期間である「垂直帰線消去期間」を伴って機能するので、実際のライン走査速度は実際には１秒当たり１４，４００ラインを僅かに上回る。試験されたそのような或るカメラでは、１秒当たり１６２７４ライン、つまり１６２７４Ｈｚのラインサンプリングレートだった。従って、一実施形態によれば、１６２７４Ｈｚを僅かに下回るスパイクシンボル符号化クロックが最適である。シンボル当たり１ビット符号化する場合、それは約１６Ｋｂｉｔ／ｓの物理層ビットレートを意味する。
【０１０２】
現代の電話（又はタブレット）はカメラを両面に１台備える傾向があり、典型的には一方は主にテレビ会議用の６４０×４８０の分解能のカメラであり、第２のカメラは写真を撮るための高分解能カメラである。例えばこの第２のカメラは、３０ｆｐｓで１９２０×１０８０の動画を捕捉する能力があるものとする。この条件は約３５ｋＨｚのラインサンプリングレートに対応する。このカメラでは、３５Ｋｂｉｔ／ｓのビットレートを意味するより高い３５ｋＨｚのシンボルクロックが実施形態において最適である。
【０１０３】
従って一実施形態では、符号化光の放射源が、１６ｋＨｚ及び３５ｋＨｚ等の異なるシンボルクロックレートで符号化光メッセージをインタリーブ式に放つことができ、各メッセージ及びクロックレートは予測可能な時間に（例えば一定の時間間隔で）生じ、そのため適当な時点においてのみ適切なカメラがオンにされ、エネルギが節約され得る。
【０１０４】
別の実施形態では、両方の種類のカメラによって読まれ得る符号が使用される。例えば、シンボル符号化クロックレートの１０分の１のスパイク幅と共に、１６×２＝３２ｋＨｚのシンボル符号化クロックが使用され得る。この条件は１９２０×１０８０のカメラが全シンボルの１０分の９をクリーンに捕捉することを可能にする。しかし、走査ラインの時間間隔の両側との重複がない場合、６４０×４８０のカメラは単一の走査ライン内に２つのシンボルａ及びｂを認め、そのため光量値ａ＋ｂ、全てのシンボルの対ａ及びｂの１０分の８についてのみ読み取る。シンボルが二値だと仮定し、６４０×４８０のカメラは、ａ＝ｂ＝０、ａ＋ｂ＝１、及びａ＝ｂ＝１という３つの信号レベルを認める。欠落情報を補償するために、６４０×４８０のカメラが十分な３レベル信号をサンプリングした後で全メッセージを復号することを可能にする誤り訂正符号が使用され得る。１９２０×１０８０のカメラによって読み取られる場合のオーバーヘッドと、６４０×４８０のカメラによって読み取られる場合のオーバーヘッドとの間の異なるトレードオフをもたらす、異なる符号設計も可能である。
【０１０５】
先に述べたように、実施形態では、より多くの受信装置によって検出される確率を高めるために、符号器は同じメッセージを複数回送信し、メッセージ間で位相を変えることができる。より広くは、この技法は位相をメッセージ間でだけ変える必要はない。むしろ一部の実施形態では、位相を頻繁に変えて（単一のビーコンメッセージの送信中にさえ位相を変えて）メッセージ内のシンボル脱落数を低い割合に制限し、誤り訂正符号が機能できるようにすることが有益であり得る。その場合、位相は少なくとも２つのシンボルを一定の位相で送信した後に少なくとも１回変えられ得る。更に、実施形態では一連のカメラの省力化をより適切に支援するために、ビーコンメッセージ間でシンボルレートを変えることも有利であり得るが、この場合もやはり、より広くはこの技法はシンボルレートをメッセージ間でだけ変えることに制限される必要はなく、シンボルレートは単一のメッセージの送信中にも変えられ得る。
【０１０６】
更なる検討事項として、本明細書で論じられた様々なシンボル波形は、シンボルごとに異なる光レベルをもたらす。このことは、或るシンボルシーケンスが伝送される場合、照明にも使用される符号化光源が目に見える「ちらつき」を示し得る可能性を作り出す。例えば１０ｋＨｚのシンボルクロック及び図１５に示されているシンボルでは、千個の「０」シンボルとその後に続く千個の「１」シンボルを繰り返し伝送する場合、このことは放たれる光の中で目に見える５Ｈｚのちらつきを引き起こし得る。従って実施形態では、ちらつき低減特性若しくはちらつき防止特性を有するメッセージ符号化方式、及び／又はシーケンス内で或るシンボルが他のシンボルよりも平均して大いに頻繁に生じる、長いシンボルのシーケンスを回避する方式を使用することが望ましい場合がある。１つのあり得る方式は、作り出される符号シーケンスが常に等しい数の「１」シンボル及び「０」シンボルを含む特性を有する誤り訂正符号を用いてメッセージを符号化することである。概して、ちらつきの低減又は防止は「ＤＣフリー」符号又は「ＤＣ平衡」符号をもたらす符号構築方式を使用することによって解決されても良く、かかる方式の多くが知られている。
【０１０７】
上記の実施形態は専ら実施例として説明されていることが理解されよう。
【０１０８】
例えば、開示された技法はスマートフォンだけに適用可能というわけではない。他の実施形態では、開示された符号化及び復号方式は、カメラと復号器とが同じユニットに組み込まれる、その外部にある、又は互いに離れてさえいる携帯式若しくは固定式の任意の受信側機器と共に使用され得る。同様に、部屋等の環境を照らす主要機能を有する照明器具であろうと専用の符号化光源であろうと、光源が自らの符号器、ドライバ、及び発光素子を１つのユニット、外部の２つ以上のユニット、更には互いに離して組み込もうと、開示された符号化及び復号方式は伝送側における任意の光源と共に使用され得る。
【０１０９】
更に、開示された技法は、ローリングシャッターカメラを用いた検出だけに適用できるわけではない。代わりに、開示された符号化及び復号方式は、検出器として使用される他の形態のセンサ、例えば低速Ａ／Ｄ変換器に接続されるフォトダイオードや十分速いフレームレートを有するグローバルシャッターカメラと組み合わせても有用であり得る。その場合、上記の「ライン」への言及はより広く「サンプル」になり、ラインレートｆｌｉｎｅへの言及はより広くサンプルレートｆｓａｍｐになり、ライン期間Ｔｌｉｎｅへの言及はより広くサンプル期間Ｔｓａｍｐになる。
【０１１０】
更に、本開示の範囲は場所を突き止める用途だけに、又は光源の識別情報を符号化することだけに限定されず、概して開示された符号化及び復号方式は任意の種類のデータを伝達するために使用され得る。更に、好ましい実施形態では全符号が単一フレーム内で捕捉されるが、このことはあり得る全ての実施形態において必須ではないことに留意されたい。復号に十分だと見なされるために符号が２つ以上のフレームを必要とする場合、様々なフレーム内で受信される符号の部分を組み合わせるために「つなぎ合わせ」プロセスが使用され得る。
【０１１１】
図面、本開示、及び添付の特許請求の範囲を検討することにより、特許請求の範囲に記載の本発明を実施する際、開示された実施形態に対する他の改変形態が当業者によって理解され実践され得る。特許請求の範囲では、「含む」という用語は他の要素又はステップを排除せず、不定冠詞「a」又は「an」は複数形を排除しない。特許請求の範囲に挙げられる幾つかのアイテムの機能を単一のプロセッサ又は他のユニットが果たし得る。或る手段が互いに異なる従属項の中で引用されるという単なる事実は、それらの手段の組合せを有利に使用できないことを示すものではない。コンピュータプログラムは、他のハードウェアと一緒に又は他のハードウェアの一部として供給される光記憶媒体や固体媒体等の適切な媒体上に記憶／分散され得るが、インターネットや他の有線又は無線通信システムを介して等、他の形で分散されても良い。特許請求の範囲の中の如何なる参照記号も範囲を限定するものとして解釈されるべきではない。
【図１】
2017525258.tif 000006
【図２】
2017525258.tif 000007
【図３】
2017525258.tif 000008
【図４】
2017525258.tif 000009
【図５】
2017525258.tif 000010
【図６】
2017525258.tif 000011
【図７】
2017525258.tif 000012
【図８】
2017525258.tif 000013
【図９】
2017525258.tif 000014
【図１０】
2017525258.tif 000015
【図１１】
2017525258.tif 000016
【図１２】
2017525258.tif 000017
【図１３】
2017525258.tif 000018
【図１４】
2017525258.tif 000019
【図１５】
2017525258.tif 000020
【図１６】
2017525258.tif 000021
【国際調査報告】
2017525258.tif 000022
2017525258.tif 000023
2017525258.tif 000024