(57)【要約】【課題】従来の可視光通信よりも高速なデータ通信を可能にする。【解決手段】  発光制御ＣＰＵ１４は、発光制御情報記憶部１２に記憶された発光パターンテーブルを参照し、分割ビット列に対応するＲ，Ｇ，Ｂの発光レベルの組み合わせ（発光パターン）をＬＥＤドライバ１９に設定する（Ｓ２）。ＬＥＤドライバ１９は、Ｒ，Ｇ，Ｂの発光レベル設定に応じたタイミングでＬＥＤ群１７を設定された発光レベルで発光させる（Ｓ３）。受側カメラ３００のメインＣＰＵ２０は、各発光レベルで発光されたＲ，Ｇ，Ｂの可視光を受光すると、Ｒ，Ｇ，Ｂの各受光量Ｉｒ，Ｉｇ，Ｉｂをバッファメモリ１３５に記憶する。メインＣＰＵ２０は、受光量Ｉｒ，Ｉｇ，Ｉｂに従って分割ビット列を特定する（Ｓ５）。【選択図】  図１０
2007019870.tif 000002
【特許請求の範囲】
【請求項１】
可視光を発光するＬＥＤ、前記ＬＥＤの発光量を設定する発光制御部、前記発光制御部の設定した発光量に従って前記ＬＥＤの発光を制御するＬＥＤドライバを備える可視光信号発信装置であって、通信データに対応する前記ＬＥＤの発光量を規定したテーブルを記憶する発光パターン記憶部を備え、前記発光制御部は通信データに対応する発光量を前記発光パターン記憶部のテーブルを参照して前記ＬＥＤドライバに設定することで前記ＬＥＤから可視光信号を発信する可視光信号発信装置と、
前記可視光信号を受光して撮像信号に変換し、前記撮像信号を出力する撮像素子、前記撮像素子から出力される撮像信号を画像データに変換するＡ／Ｄ変換部、前記画像データに基づいて前記可視光信号の受光量を検出する受光量検出部を備える可視光信号受信装置であって、前記可視光信号の受光量に対応する通信データを規定したテーブルを記憶する受光パターン記憶部、前記受光パターン記憶部のテーブルを参照して前記可視光信号の受光量に対応する通信データを特定するデータ特定部を備える可視光信号受信装置と、
を有する可視光通信システム。
【請求項２】
前記可視光信号受信装置は、
段階的な複数の受光レベル閾値を設定する閾値設定部、
前記閾値設定部が段階的に設定した複数の受光レベル閾値と前記可視光信号の受光量とを比較することによって可視光信号の受光レベルを判別する受光レベル判別部、
をさらに備え、
前記受光パターン記憶部は前記可視光信号の受光レベルに対応する通信データを規定したテーブルを記憶し、
前記データ特定部は前記受光パターン記憶部のテーブルを参照して前記受光レベル判別部の判別した可視光信号の受光レベルに対応する通信データを特定する請求項１に記載の可視光通信システム。
【請求項３】
前記発光制御部は前記ＬＥＤの最大発光量を設定することで前記ＬＥＤからテスト用の可視光信号を発信し、
前記閾値設定部は前記テスト用の可視光信号の受光量を所定の分解能で分割した値を前記段階的な複数の受光レベル閾値として設定する請求項２に記載の可視光通信システム。
【請求項４】
前記発光パターン記憶部は前記所定の分解能と同数又はそれ以下の種類の通信データに対応する発光レベルを規定したテーブルを記憶する請求項３に記載の可視光通信システム。
【請求項５】
前記発光制御部は段階的な発光量を順次設定することで前記ＬＥＤから複数のテスト用の可視光信号を発信し、
前記閾値設定部は前記複数のテスト用の可視光信号の受光量に基づいて前記段階的な複数の受光レベル閾値を設定する請求項２に記載の可視光通信システム。
【請求項６】
前記発光制御部は発光量同士の差が第１の閾値以上となる第１の発光量をｎ段階（ｎは２以上の整数）順次設定することで前記ＬＥＤから複数のテスト用の可視光信号を発信する請求項５に記載の可視光通信システム。
【請求項７】
前記閾値設定部は前記複数のテスト用の可視光信号の受光量同士が近接しているか否かを判断し、
前記発光制御部は前記複数のテスト用の可視光信号の受光量同士が近接していると判断したことに応じて発光量同士の差が前記第１の閾値を超える第２の閾値以上となる第２の発光量を順次設定することで前記ＬＥＤから複数のテスト用の可視光信号を発信する請求項６に記載の可視光通信システム。
【請求項８】
前記発光制御部が順次設定する第２の発光量はｎ段階未満である請求項７に記載の可視光通信システム。
【請求項９】
前記閾値設定部は前記複数のテスト用の可視光信号の受光量同士が離隔しているか否かを判断し、
前記発光制御部は前記複数のテスト用の可視光信号の受光量同士が離隔していると判断したことに応じて発光量同士の差が前記第１の閾値未満の第３の閾値以下となる第３の発光量を順次設定することで前記ＬＥＤから複数のテスト用の可視光信号を発信する請求項６に記載の可視光通信システム。
【請求項１０】
前記発光制御部が順次設定する第３の発光量はｎ段階を超える請求項９に記載の可視光通信システム。
【請求項１１】
前記ＬＥＤはＲ，Ｇ，Ｂの可視光を発光し、
前記発光パターン記憶部は通信データに対応する前記ＬＥＤのＲ，Ｇ，Ｂの発光レベルを規定したテーブルを記憶する請求項２〜１０のいずれかに記載の可視光通信システム。
【請求項１２】
可視光を発光するＬＥＤ、前記ＬＥＤの発光量を設定する発光制御部、前記発光制御部の設定した発光量に従って前記ＬＥＤの発光を制御するＬＥＤドライバを備える可視光信号発信装置であって、
通信データに対応する前記ＬＥＤの発光量を規定したテーブルを記憶する発光パターン記憶部を備え、前記発光制御部は通信データに対応する発光量を前記発光パターン記憶部のテーブルを参照して前記ＬＥＤドライバに設定することで前記ＬＥＤから可視光信号を発信する可視光信号発信装置。
【請求項１３】
可視光を発光するＬＥＤから発信される可視光信号を受光して撮像信号に変換し、前記撮像信号を出力する撮像素子、前記撮像素子から出力される撮像信号を画像データに変換するＡ／Ｄ変換部、前記画像データに基づいて前記可視光信号の受光量を検出する受光量検出部を備える可視光信号受信装置であって、
前記可視光信号の受光量に対応する通信データを規定したテーブルを記憶する受光パターン記憶部、前記受光パターン記憶部のテーブルを参照して前記可視光信号の受光量に対応する通信データを特定するデータ特定部を備える可視光信号受信装置。
【請求項１４】
可視光を発光するＬＥＤから発信される可視光信号を受光して撮像信号に変換し、前記撮像信号を出力する撮像素子、前記撮像素子から出力される撮像信号を画像データに変換するＡ／Ｄ変換部、前記画像データに基づいて前記可視光信号の受光量を検出する受光量検出部を備える撮像装置であって、
前記可視光信号の受光量に対応する通信データを規定したテーブルを記憶する受光パターン記憶部、前記受光パターン記憶部のテーブルを参照して前記可視光信号の受光量に対応する通信データを特定するデータ特定部を備える撮像装置。
【請求項１５】
Ｒ，Ｇ，Ｂの可視光を発光するＬＥＤを用いた可視光通信方法であって、
通信データに対応する前記ＬＥＤの発光量を規定したテーブルを記憶するステップと、
通信データに対応する発光量を前記テーブルを参照してＬＥＤドライバに設定することで前記ＬＥＤから可視光信号を発信するステップと、
前記ＬＥＤの発信した可視光信号を受光してＲ，Ｇ，Ｂの撮像信号に変換して出力するステップと、
前記Ｒ，Ｇ，Ｂの撮像信号をＲ，Ｇ，Ｂの画像データに変換するステップと、
前記Ｒ，Ｇ，Ｂの画像データに基づいて前記Ｒ，Ｇ，Ｂの可視光信号の色ごとの受光量を検出するステップと、
可視光信号の受光量に対応する通信データを規定したテーブルを記憶するステップと、
前記テーブルを参照して前記可視光信号の受光量に対応する通信データを特定するステップと、
を含む可視光通信方法。
【請求項１６】
Ｒ，Ｇ，Ｂの可視光を発光するＬＥＤを用いた可視光発信方法であって、
通信データに対応する前記ＬＥＤの発光量を規定したテーブルを記憶するステップと、
通信データに対応する発光量を前記テーブルを参照してＬＥＤドライバに設定することで前記ＬＥＤから可視光信号を発信するステップと、
を含む可視光発信方法。
【請求項１７】
可視光を発光するＬＥＤの発信した可視光信号を受光してＲ，Ｇ，Ｂの撮像信号に変換して出力するステップと、
前記Ｒ，Ｇ，Ｂの撮像信号をＲ，Ｇ，Ｂの画像データに変換するステップと、
前記Ｒ，Ｇ，Ｂの画像データに基づいて前記Ｒ，Ｇ，Ｂの可視光信号の色ごとの受光量を検出するステップと、
前記可視光信号の受光量に対応する通信データを規定したテーブルを記憶するステップと、
前記テーブルを参照して前記可視光信号の受光量に対応する通信データを特定するステップと、
を含む可視光受信方法。
【請求項１８】
可視光を発光するＬＥＤ、前記ＬＥＤの発光量を設定する発光制御部、前記発光制御部の設定した発光量に従って前記ＬＥＤの発光を制御するＬＥＤドライバ、通信データに対応する前記ＬＥＤの発光量を規定したテーブルを記憶する発光パターン記憶部を備える可視光信号発信装置において実行される可視光信号発信プログラムであって、
通信データに対応する発光量を前記発光パターン記憶部のテーブルを参照して前記ＬＥＤドライバに設定することで前記ＬＥＤから可視光信号を発信するステップを前記発光制御部に実行させる可視光信号発信プログラム。
【請求項１９】
可視光を発光するＬＥＤから発信される可視光信号を受光して撮像信号に変換し、前記撮像信号を出力する撮像素子、前記撮像素子から出力される撮像信号を画像データに変換するＡ／Ｄ変換部、前記画像データに基づいて前記可視光信号の受光量を検出する受光量検出部、前記可視光信号の受光量に対応する通信データを規定したテーブルを記憶する受光パターン記憶部、演算装置を備える可視光信号受信装置において実行される可視光信号受信プログラムであって、
前記受光パターン記憶部のテーブルを参照して前記可視光信号の受光量に対応する通信データを特定するステップを前記演算装置に実行させる可視光信号受信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は可視光通信に係り、特に撮像装置に適用可能な可視光通信に関する。
【背景技術】
【０００２】
従来、発光手段と受光素子を利用した可視光通信が様々開発されている。例えば特許文献１にはオンオフキーイング（ＯＯＫ）が開示されている。これは、通信データのビットが［１］のとき、パルスを生成し、通信データのビットが［０］のときパルスを生成しないというパルス生成規則に基づいて、データ系列に基づいて出力する光強度を制御して通信データに対応するパルス列を送受信する方式である。例えば通信データのビット列が１１０１であれば、設定パルスをハイ，ハイ、ロー，ハイ等のように、ビット列に従って設定する。本文献には、可視光の出力手段として、照明装置やディスプレイを有するビデオカメラレコーダが例示される。
【特許文献１】特開２００４−７２３６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来のオンオフキーイングでデータを送信する場合、１回の発光で１ビットのデータしか送信できず、高速通信が期待できない。本発明はこのような問題点に鑑みてなされたもので、従来の可視光通信よりも高速なデータ通信を可能にする技術を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記課題を解決するため、本発明に係る可視光通信システムは、可視光を発光するＬＥＤ、ＬＥＤの発光量を設定する発光制御部、発光制御部の設定した発光量に従ってＬＥＤの発光を制御するＬＥＤドライバを備える可視光信号発信装置であって、通信データに対応するＬＥＤの発光量を規定したテーブルを記憶する発光パターン記憶部を備え、発光制御部は通信データに対応する発光量を発光パターン記憶部のテーブルを参照してＬＥＤドライバに設定することでＬＥＤから可視光信号を発信する可視光信号発信装置と、可視光信号を受光して撮像信号に変換し、撮像信号を出力する撮像素子、撮像素子から出力される撮像信号を画像データに変換するＡ／Ｄ変換部、画像データに基づいて可視光信号の受光量を検出する受光量検出部を備える可視光信号受信装置であって、可視光信号の受光量に対応する通信データを規定したテーブルを記憶する受光パターン記憶部、受光パターン記憶部のテーブルを参照して可視光信号の受光量に対応する通信データを特定するデータ特定部を備える可視光信号受信装置と、を有する。
【０００５】
この発明によると、可視光信号発信装置は通信データに対応する発光量をＬＥＤドライバに設定し、ＬＥＤドライバは設定した発光量に従ってＬＥＤの発光を制御して可視光信号を発振する。可視光信号受信装置は撮像素子を備え、可視光信号の映像信号から得られた受光量に対応する通信データを特定する。即ち、一回の発光における発光量を変化させることで複数のパターンを表現でき、従来のオンオフキーイングよりも通信を高速化できる。
【０００６】
具体的には、可視光信号受信装置は、段階的な複数の受光レベル閾値を設定する閾値設定部、閾値設定部が段階的に設定した複数の受光レベル閾値と可視光信号の受光量とを比較することによって可視光信号の受光レベルを判別する受光レベル判別部、をさらに備え、受光パターン記憶部は可視光信号の受光レベルに対応する通信データを規定したテーブルを記憶し、データ特定部は受光パターン記憶部のテーブルを参照して受光レベル判別部の判別した可視光信号の受光レベルに対応する通信データを特定する。
【０００７】
発光制御部はＬＥＤの最大発光量を設定することでＬＥＤからテスト用の可視光信号を発信し、閾値設定部はテスト用の可視光信号の受光量を所定の分解能で分割した値を段階的な複数の受光レベル閾値として設定するようにしてもよい。
【０００８】
これに合わせ、発光パターン記憶部は所定の分解能と同数又はそれ以下の種類の通信データに対応する発光レベルを規定したテーブルを記憶するとよい。
【０００９】
こうすれば、所定の分解能と同数又はそれ以下のパターンの通信データを一回の発光で発信できる。
【００１０】
あるいは、発光制御部は段階的な発光量を順次設定することでＬＥＤから複数のテスト用の可視光信号を発信し、閾値設定部は複数のテスト用の可視光信号の受光量に基づいて段階的な複数の受光レベル閾値を設定するようにしてもよい。
【００１１】
ここで、発光制御部は発光量同士の差が第１の閾値以上となる第１の発光量をｎ段階（ｎは２以上の整数）順次設定することでＬＥＤから複数のテスト用の可視光信号を発信する。
【００１２】
そうすると、１回の発光で最大ｎパターンを表現できるため、１回の発光当たり、最大ｚ＝［ｌｏｇ２ｎ］ビット発信できる（ただし、［  ］はガウス記号である）。
【００１３】
閾値設定部は複数のテスト用の可視光信号の受光量同士が近接しているか否かを判断し、発光制御部は複数のテスト用の可視光信号の受光量同士が近接していると判断したことに応じて発光量同士の差が第１の閾値を超える第２の閾値以上となる第２の発光量を順次設定することでＬＥＤから複数のテスト用の可視光信号を発信してもよい。
【００１４】
この場合、発光制御部が順次設定する第２の発光量をｎ段階未満とすると、段階的な発光量同士の段差が広がり、可視光信号の受光レベルの判別精度が向上する。
【００１５】
あるいは、閾値設定部は複数のテスト用の可視光信号の受光量同士が離隔しているか否かを判断し、発光制御部は複数のテスト用の可視光信号の受光量同士が離隔していると判断したことに応じて発光量同士の差が第１の閾値未満の第３の閾値以下となる第３の発光量を順次設定することでＬＥＤから複数のテスト用の可視光信号を発信する。
【００１６】
この場合、発光制御部が順次設定する第３の発光量がｎ段階を超えるようにすると発光量同士の差が狭まり、１回の発光でより多くのパターンを表現できる。
【００１７】
好ましくは、ＬＥＤはＲ，Ｇ，Ｂの可視光を発光し、発光パターン記憶部は通信データに対応するＬＥＤのＲ，Ｇ，Ｂの発光レベルを規定したテーブルを記憶する。
【００１８】
この場合、Ｒ，Ｇ，ＢのＬＥＤ１回の発光でそれぞれ最大ｎパターンを表現できるため、１回の発光当たり、最大ｚ＝３［ｌｏｇ２ｎ］ビット発信できる。
【００１９】
本発明に係る可視光信号発信装置は、可視光を発光するＬＥＤ、ＬＥＤの発光量を設定する発光制御部、発光制御部の設定した発光量に従ってＬＥＤの発光を制御するＬＥＤドライバを備える可視光信号発信装置であって、通信データに対応するＬＥＤの発光量を規定したテーブルを記憶する発光パターン記憶部を備え、発光制御部は通信データに対応する発光量を発光パターン記憶部のテーブルを参照してＬＥＤドライバに設定することでＬＥＤから可視光信号を発信する。
【００２０】
本発明に係る可視光信号受信装置は、可視光を発光するＬＥＤから発信される可視光信号を受光して撮像信号に変換し、撮像信号を出力する撮像素子、撮像素子から出力される撮像信号を画像データに変換するＡ／Ｄ変換部、画像データに基づいて可視光信号の受光量を検出する受光量検出部を備える可視光信号受信装置であって、可視光信号の受光量に対応する通信データを規定したテーブルを記憶する受光パターン記憶部、受光パターン記憶部のテーブルを参照して可視光信号の受光量に対応する通信データを特定するデータ特定部を備える。
【００２１】
本発明に係る可視光信号受信装置は、可視光を発光するＬＥＤから発信される可視光信号を受光して撮像信号に変換し、撮像信号を出力する撮像素子、撮像素子から出力される撮像信号を画像データに変換するＡ／Ｄ変換部、画像データに基づいて可視光信号の受光量を検出する受光量検出部を備える撮像装置であって、可視光信号の受光量に対応する通信データを規定したテーブルを記憶する受光パターン記憶部、受光パターン記憶部のテーブルを参照して可視光信号の受光量に対応する通信データを特定するデータ特定部を備える。
【００２２】
即ち、本発明に係る撮像装置の構成は、本発明に係る可視光信号受信装置の構成と一部共通する。よって、撮像装置での可視光信号の受信に必要な追加の部品点数やコストは少なくて済む。
【００２３】
本発明に係る可視光通信方法は、Ｒ，Ｇ，Ｂの可視光を発光するＬＥＤを用いた可視光通信方法であって、通信データに対応するＬＥＤの発光量を規定したテーブルを記憶するステップと、通信データに対応する発光量をテーブルを参照してＬＥＤドライバに設定することでＬＥＤから可視光信号を発信するステップと、ＬＥＤの発信した可視光信号を受光してＲ，Ｇ，Ｂの撮像信号に変換して出力するステップと、Ｒ，Ｇ，Ｂの撮像信号をＲ，Ｇ，Ｂの画像データに変換するステップと、Ｒ，Ｇ，Ｂの画像データに基づいてＲ，Ｇ，Ｂの可視光信号の色ごとの受光量を検出するステップと、可視光信号の受光量に対応する通信データを規定したテーブルを記憶するステップと、テーブルを参照して可視光信号の受光量に対応する通信データを特定するステップと、を含む。
【００２４】
本発明に係る可視光発信方法は、Ｒ，Ｇ，Ｂの可視光を発光するＬＥＤを用いた可視光発信方法であって、通信データに対応するＬＥＤの発光量を規定したテーブルを記憶するステップと、通信データに対応する発光量をテーブルを参照してＬＥＤドライバに設定することでＬＥＤから可視光信号を発信するステップと、を含む。
【００２５】
本発明に係る可視光受信方法は、可視光を発光するＬＥＤの発信した可視光信号を受光してＲ，Ｇ，Ｂの撮像信号に変換して出力するステップと、Ｒ，Ｇ，Ｂの撮像信号をＲ，Ｇ，Ｂの画像データに変換するステップと、Ｒ，Ｇ，Ｂの画像データに基づいてＲ，Ｇ，Ｂの可視光信号の色ごとの受光量を検出するステップと、可視光信号の受光量に対応する通信データを規定したテーブルを記憶するステップと、テーブルを参照して可視光信号の受光量に対応する通信データを特定するステップと、を含む。
【００２６】
本発明に係る可視光信号受信プログラムは、可視光を発光するＬＥＤ、ＬＥＤの発光量を設定する発光制御部、発光制御部の設定した発光量に従ってＬＥＤの発光を制御するＬＥＤドライバ、通信データに対応するＬＥＤの発光量を規定したテーブルを記憶する発光パターン記憶部を備える可視光信号発信装置において実行される可視光信号発信プログラムであって、通信データに対応する発光量を発光パターン記憶部のテーブルを参照してＬＥＤドライバに設定することでＬＥＤから可視光信号を発信するステップを発光制御部に実行させる。
【００２７】
本発明に係る可視光信号受信プログラムは、可視光を発光するＬＥＤから発信される可視光信号を受光して撮像信号に変換し、撮像信号を出力する撮像素子、撮像素子から出力される撮像信号を画像データに変換するＡ／Ｄ変換部、画像データに基づいて可視光信号の受光量を検出する受光量検出部、可視光信号の受光量に対応する通信データを規定したテーブルを記憶する受光パターン記憶部、演算装置を備える可視光信号受信装置において実行される可視光信号受信プログラムであって、受光パターン記憶部のテーブルを参照して可視光信号の受光量に対応する通信データを特定するステップを演算装置に実行させる。
【発明の効果】
【００２８】
この発明によると、可視光信号発信装置は通信データに対応する発光量をＬＥＤドライバに設定し、ＬＥＤドライバは設定した発光量に従ってＬＥＤの発光を制御して可視光信号を発振する。可視光信号受信装置は撮像素子を備え、可視光信号の映像信号から得られた受光量に対応する通信データを特定する。即ち、一回の発光における発光量を変化させることで複数のパターンを表現でき、従来のオンオフキーイングよりも通信を高速化できる。
【発明を実施するための最良の形態】
【００２９】
以下、添付した図面を参照し本発明の好ましい実施の形態を説明する。
【００３０】
＜第１実施形態＞
図１は本発明に係る可視光信号発信装置の好ましい一実施形態である発信側デジタルカメラ１００（以下発側カメラ１００と略す）のブロック図である。発側カメラ１００にはユーザがこの発側カメラ１００を使用するときに種々の操作を行なうための操作部１２０が設けられている。この操作部１２０には、発側カメラ１００を作動させるための電源投入用の電源スイッチ１２１、撮影と再生とを自在に切り替える切替レバー１２２、オート撮影やマニュアル撮影等を選択するための撮影モードダイヤル１２３、各種のメニューの設定や選択あるいはズームを行なうための十字キー１２４、閃光発光用スイッチ１２５、および十字キー１２４で選択されたメニューの実行やキャンセル等を行なうための情報位置指定キー１２６が備えられている。
【００３１】
また、発側カメラ１００には、撮影画像や再生画像等を表示するための画像表示ＬＣＤ１０２と、操作の手助けを行なうための操作ＬＣＤ表示１０３が備えられている。
【００３２】
この発側カメラ１００にはレリーズスイッチ１０４が配備されている。このレリーズスイッチ１０４によって撮影の開始指示がメインＣＰＵ２０へと伝えられる。この発側カメラ１００では撮影・再生切替レバー１２２によって撮影と再生との切り替えが自在になっていて、撮影を行なうときにはユーザによって撮影・再生切替レバー１２２が撮影側に切り替えられ、再生を行なうときには撮影・再生切替レバー１２２が再生側に切り替えられる。また、発側カメラ１００には、閃光を発光する閃光発光管１０５ａを有する閃光発光装置が配備されている。
【００３３】
また、発側カメラ１００には、撮影レンズ１０１と、絞り１３１と、それら撮影レンズ１０１および絞り１３１を経由して結像された被写体像をアナログの画像信号に変換する撮像素子であるＣＣＤセンサ１３２とが備えられている。ＣＣＤセンサ１３２は、詳細には、そのＣＣＤセンサ１３２に照射された被写体光により発生した電荷を可変の電荷蓄積時間（露光期間）の間蓄積することにより画像信号を生成するものである。ＣＣＤ１３２からは、ＣＧ部１３６から出力される垂直同期信号ＶＤに同期したタイミングでフレーム毎の画像信号が順次出力される。
【００３４】
図２に示すように、ＣＣＤ１３２の受光面にはＲ，Ｇ，Ｂの微小なカラーフィルタがマトリクス状に配列されており、Ｒ，Ｇ，Ｂの各色成分を含む撮像信号は、白バランス・γ処理部１３３で適当なレベルに増幅された後、Ａ／Ｄ部１３４によってＲ，Ｇ，Ｂの各画像データとされる。なお、ＣＣＤ１３２の画素配置はベイヤ型を例に図示したが、ハニカム型等各種の配列方式を採用でき、図示されたものに限定されない。
【００３５】
撮像素子にＣＣＤセンサ１３２を用いた場合には、色偽信号やモアレ縞等の発生を防止するために、入射光内の不要な高周波成分を除去する光学的ローパスフィルタ１３２ａが配設されている。また、入射光内の赤外線を吸収若しくは反射して、長波長域で感度が高いＣＣＤセンサ１３２固有の感度特性を補正する赤外カットフィルタ１３２ｂが配設されている。光学的ローパスフィルタ１３２ａ及び赤外カットフィルタ１３２ｂの具体的な配設の態様は様々であり、例えば本出願人による特許公開２０００−１１４５０２号公報０００３〜０００４段落に記載のようにすることができる。ただし、後述のように赤外光通信を行うため、赤外カットフィルタ１３２ｂはＣＣＤセンサ１３２の無効画素領域（画像の生成に用いられない領域）は覆わないように配置し、赤外光を無効画素領域で受光できるようにしておくことが好ましい。
【００３６】
また、発側カメラ１００には、ＣＣＤセンサ１３２からのアナログ画像信号が表わす被写体像のホワイトバランスを合わせるとともにその被写体像の階調特性における直線の傾き（γ）を調整し、さらにアナログ画像信号を増幅する増幅率可変の増幅器を含む白バランス・γ処理部１３３が備えられている。
【００３７】
さらに、発側カメラ１００には、白バランス・γ処理部１３３からのアナログ信号をディジタルのＲ，Ｇ，Ｂ画像データにＡ／Ｄ変換するＡ／Ｄ部１３４と、そのＡ／Ｄ部１３４からのＲ，Ｇ，Ｂ画像データを格納するバッファメモリ１３５が備えられている。
【００３８】
本実施形態では、Ａ／Ｄ部１３４は、８ビットの量子化分解能を有し、白バランス・γ処理部１３３から出力されるアナログＲ，Ｇ，Ｂ撮像信号を、ＣＣＤセンサ１３２の受光量に応じ、レベル０〜２５５のＲ，Ｇ，Ｂデジタル画像データに変換して出力する。以下、ＣＣＤ１３２のＲ，Ｇ，Ｂの受光量に応じたＲ，Ｇ，Ｂデジタル画像データのレベルも受光量と呼ぶ。ただし、この量子化分解能はあくまで一例であって本発明に必須の値ではない。
【００３９】
また、発側カメラ１００には、ＣＧ（クロックジェネレータ）部１３６と、測光・測距用ＣＰＵ１３７と、充電・発光制御部１３８と、通信制御部１３９と、ＹＣ処理部１４０と、電源電池６８とが備えられている。
【００４０】
ＣＧ部１３６は、ＣＣＤセンサ１３２を駆動するための垂直同期信号ＶＤ，高速掃き出しパルスＰを含む駆動信号、白バランス・γ処理部１３３，Ａ／Ｄ部１３４を制御する制御信号、および通信制御部１３９を制御する制御信号を出力する。また、このＣＧ部１３６には、測光・測距用ＣＰＵ１３７からの制御信号が入力される。
【００４１】
測光・測距用ＣＰＵ１３７は、撮影レンズ１０１，絞り１３１を図示しない駆動手段（モータドライバ等）で駆動することにより測距を行ない、ＣＧ部１３６および充電・発光制御部１３８を制御する。測光・測距用ＣＰＵ１３７は、レリーズスイッチ１０４が半押しされると、ＣＣＤ１３２によって周期的（１／30秒から１／60秒ごと）に得られる画像データに基づいて被写体の明るさの測光（ＥＶ値の算出）を行う。そして、得られたＥＶ値に基づいて絞り１３１の絞り値（Ｆ値）及びＣＣＤ１３２の電子シャッタ（シャッタスピード）を含む露出値を所定のプログラム線図にしたがって決定する。
【００４２】
レリーズスイッチ１０４が全押しされると、測光・測距用ＣＰＵ１３７は、その決定した絞り値に基づいて絞り１３１を駆動し、絞り１３１の開口径を制御するとともに、決定したシャッタスピードに基づき、ＣＧ１３６を介してＣＣＤ１３２での電荷蓄積時間を制御する（自動露出機構）。
【００４３】
自動露出機構（ＡＥ機構）は、絞り優先ＡＥ，シャッタ速度優先ＡＥ，プログラムＡＥなどがあるが、いずれにおいても、被写体輝度を測定し、この被写体輝度の測光値に基づいて決められた露出値、すなわち絞り値とシャッタスピードとの組み合わせで撮影を行うことにより、適正な露光量で撮像されるように制御しており、面倒な露出決定の手間を省くことができる。
【００４４】
なお、測光・測距用ＣＰＵ１３７は、メインＣＰＵ２０との間でデータ通信を行なう。
【００４５】
充電・発光制御部１３８は，閃光発光管１０５ａを発光させるために電源電池６８からの電力の供給を受けて図示しない閃光発光用のコンデンサを充電したり、その閃光発光管１０５ａの発光を制御する。
【００４６】
通信制御部１３９には、通信ポート１０７が備えられており、この通信制御部１３９は、発側カメラ１００により撮影された被写体の画像信号をＵＳＢ端子が備えられたパーソナルコンピュータ等の外部装置に出力し、およびこのような外部装置から発側カメラ１００に画像信号を入力することにより、その外部装置との間のデータ通信を担うものである。また、この発側カメラ１００は、ロール状の写真フイルムに写真撮影を行なう通常のカメラが有するＩＳＯ感度１００，２００，４００，１６００等に切り替える機能を模擬した機能を有し、ＩＳＯ感度４００以上に切り替えられた場合、白バランス・γ処理部１３３の増幅器の増幅率が所定の増幅率を越えた高増幅率に設定された高感度モードとなる。
【００４７】
また、発側カメラ１００には、圧縮・伸長＆ＩＤ抽出部１４３と、Ｉ／Ｆ部１４４が備えられている。圧縮・伸長＆ＩＤ抽出部１４３は、バッファメモリ１３５に格納された画像データを、バスライン１４２を介して読み出して圧縮し、Ｉ／Ｆ部１４４を経由してメモリカード２００に格納する。また、圧縮・伸長＆ＩＤ抽出部１４３は、メモリカード２００に格納された画像データの読み出しにあたり、メモリカード２００固有の識別番号（ＩＤ）を抽出し、そのメモリカード２００に格納された画像データを読み出して伸長し、バッファメモリ１３５に格納する。
【００４８】
また、発側カメラ１００には、メインＣＰＵ２０と、ＥＥＰＲＯＭ１４６と、ＹＣ／ＲＧＢ変換部１４７と、表示用のドライバ１４８とが備えられている。メインＣＰＵ２０は、この発側カメラ１００全体の制御を行なう。ＥＥＰＲＯＭ１４６には、この発側カメラ１００固有の固体データやプログラム等が格納されている。ＹＣ／ＲＧＢ変換部１４７は、ＹＣ処理部１４０で生成されたカラー映像信号ＹＣを３色のＲＧＢ信号に変換して表示用のドライバ１４８を経由して画像表示ＬＣＤ１０２に出力する。
【００４９】
また、発側カメラ１００は、ＡＣ電源から電力を得るためのＡＣアダプタ４８と電源電池６８とが着脱可能な構成となっている。電源電池６８は充電可能な二次電池、例えばニカド電池、ニッケル水素電池、リチウムイオン電池で構成される。電源電池６８は使い切り型の一次電池、例えばリチウム電池、アルカリ電池で構成してもよい。電源電池６８は図示しない電池収納室に装填することにより、発側カメラ１００の各回路と電気的に接続される。
【００５０】
ＡＣアダプタ４８が発側カメラ１００に装填されＡＣ電源からＡＣアダプタ４８を介して発側カメラ１００に電力が供給される場合には、電源電池６８が電池収納室に装填されている場合であっても、優先的に当該ＡＣアダプタ４８から出力された電力が発側カメラ１００の各部に駆動用の電力として供給される。また、ＡＣアダプタ４８が装填されておらず、かつ電源電池６８が電池収納室に装填されている場合には、当該電源電池６８から出力された電力が発側カメラ１００の各部に駆動用の電力として供給される。
【００５１】
なお、図示しないが、発側カメラ１００には、電池収納室内に収納される電源電池６８とは別にバックアップ電池が設けられている。内蔵バックアップ電池には例えば専用の二次電池が用いられ、電源電池６８によって充電される。バックアップ電池は、電源電池６８の交換や取り外し等、電源電池６８が電池収納室に装填されていない場合、発側カメラ１００の基本機能に給電する。
【００５２】
即ち、電源電池６８又はＡＣアダプタ４８からの電源供給が停止すると、バックアップ電池がスイッチング回路（図示せず）によってＲＴＣ１５等に接続され、これらの回路に給電する。これにより、バックアップ電池２９が寿命に達しない限り、ＲＴＣ１５等の基本機能には、電源供給が間断なく継続する。
【００５３】
ＲＴＣ（Real Time Clock）１５は計時専用のチップであり、電源電池６８やＡＣアダプタ４８からの給電がオフされていてもバックアップ電池から電源供給を受けて継続的に動作する。
【００５４】
図３は通信用発光装置１６のブロック図である。この通信用発光部１６には、発光制御情報記憶部１２、発光制御ＣＰＵ１４、ＬＥＤ群１７（Ｒ、Ｇ、ＢのＬＥＤ１７Ｒ、１７Ｇ、１７Ｂ）、調光センサ１８、ＬＥＤドライバ１９が設けられている。
【００５５】
ＬＥＤドライバ１９は、発光制御ＣＰＵ１４から、発光パターン、発光タイミング、発光時間、発光量などを示す発光制御信号を取り込んでいる。
【００５６】
発光制御ＣＰＵ１４がＬＥＤドライバ１９に設定する発光タイミングは、ＣＧ１３６から出力されるクロック信号である発信駆動信号に同期している。
【００５７】
ＬＥＤドライバ１９は発光制御ＣＰＵ１４からの制御信号に従ってＬＥＤ群１７を制御し、Ｒ、Ｇ、ＢのＬＥＤ１７Ｒ、１７Ｇ、１７Ｂの発光パターン、発光タイミング、発光時間、発光量を制御する。Ｒ、Ｇ、ＢのＬＥＤ１７Ｒ、１７Ｇ、１７Ｂの電気エネルギーは電源電池６８又はＡＣアダプタ４８から供給される。
【００５８】
ＬＥＤドライバ１９は、ＬＥＤ群１７の発光量を、電源電池６８からＬＥＤ群１７に入力する電流値あるいは単位時間当たりの点灯時間（デューティー比）の長短を制御することによって、段階的に制御する。
【００５９】
例えば、図４に示すように、ＬＥＤドライバ１９は、順次減少する１６段階の電流値Ｉ１〜Ｉ１６（Ｉ１＞Ｉ２＞・・＞Ｉ１５＞Ｉ０）を入力するよう制御でき、各電流値Ｉ０〜Ｉ１５によって１６段階Ｌ０〜Ｌ１５の発光量を制御する。
【００６０】
ここで、発光量同士の差は所定の第１閾値ΔＬ１であるものとする。即ち、ｋ＝１〜１４とすると、Ｌｋ−Ｌｋ＋１＝ΔＬ１である。ただし、完全に両者が等しいことを要求するのでなく、所定の誤差範囲内であれば許容しうる。また、Ｉ０＝０，Ｌ０＝０（無発光）とする。この段階的な発光量を発光レベルと呼ぶこともある。ここでは一例として、発光レベルの段階は１６段階としているが、この数値に限定する必然性はなく、その他の値（例えば８段階や３２段階）にしてもよい。
【００６１】
ＬＥＤ群１７の発光量の大小で定まる発光パターンは不揮発性メモリなどの各種記憶媒体で構成される発光制御情報記憶部１２に予め記憶された発光パターンテーブルによって規定される。
【００６２】
図５は発光パターンテーブルの一例である通常発光テーブルを示す。通常発光テーブルは、４０９６種類のパターンをとる１２ビットのデータ列とＲ、Ｇ、ＢのＬＥＤ１７Ｒ、１７Ｇ、１７Ｂの発光レベルの組み合わせ（即ち発光パターン）とを対応づける。より詳細には、１２ビット列の先頭４ビット列がＬＥＤ１７Ｒの２４＝１６段階の発光量、１２ビット列の中間４ビット列がＬＥＤ１７Ｇの１６段階の発光量、１２ビット列の後方４ビット列がＬＥＤ１７Ｂの１６段階の発光量にそれぞれ対応する。後述するが、１２ビット列は、発側カメラ１００から発信すべき通信データの全部又は一部である。発光制御情報にデータ列と発光パターンとの対応関係は図示したものに限定されず、要するに各ビット列に対応するＬＥＤ１７Ｒ、１７Ｇ、１７Ｂの発光レベルがすべて網羅されていればよい。
【００６３】
ＬＥＤ群１７が発光すると、発光制御ＣＰＵ１４は、調光センサ１８を介して発光量を検知する。そして、この検知した発光量が発光量調整用の基準値と一致すると、発光を停止させるために発光停止信号をＬＥＤドライバ１９に出力する。ＬＥＤドライバ１９は、発光制御ＣＰＵ１４から発光停止信号を入力すると、ＬＥＤ群１７の発光を停止させるよう制御する。これにより、電源電池６８からＬＥＤ群１７に流れる電流が遮断され、ＬＥＤ群１７の発光が停止する。
【００６４】
なお、図示しないが、通信用発光部１６の構成は、閃光発光装置の構成、あるいは従来のタリーランプ及びその発光制御装置の構成の全部又は一部と共通させてもよい。例えば、発光制御ＣＰＵ１４と測光・測距用ＣＰＵ１３７を同一のＣＰＵとしてもよい。あるいは、ＬＥＤ１７Ｒ、１７Ｇ、１７Ｂの全部又は一部をタリーランプと共通の構成としてもよい。こうすると、従来のデジタルカメラに特別の機器を設けることなく、本発明に係る可視光発信装置を実現できる。
【００６５】
図６は本発明に係る可視光信号受信装置の好ましい一実施形態である受信側デジタルカメラ３００（以下受側カメラ３００と略す）のブロック構成図である。この図において、発側カメラ１００と同一のブロックに関しては同一の符号を付し、その構成及び機能は上記と基本的に同一であるものとして説明は省略する。
【００６６】
受側カメラ３００のＣＣＤ１３２は、発側カメラ１００の通信用発光装置１６から発光されるＲ，Ｇ，Ｂの可視光を受光する。ＣＣＤ１３２の受光した可視光はＲ，Ｇ，Ｂの画像信号に変換されて白バランス・γ処理部１３３に出力され、所定の処理が施された後、Ａ／Ｄ変換部１３４でＲ，Ｇ，Ｂの画像データに変換されるのは前述の通りである。
【００６７】
Ａ／Ｄ部１３４によって得られたＲ，Ｇ，Ｂ画像データは、積算回路１５０にも入力される。積分回路１５０は、Ｒ，Ｇ，Ｂ画像データを１画面の所定の分割エリア毎にかつ同じ色成分毎に積算平均し、さらにフレームごとに、全エリアのＲ，Ｇ，Ｂ画像データの積算平均値Ｉｒ，Ｉｇ，Ｉｂを算出する。この積算平均値Ｉｒ，Ｉｇ，ＩｂをＲ，Ｇ，Ｂの可視光の受光量とする。
【００６８】
ただし、Ｒ，Ｇ，Ｂの可視光の受光量Ｉｒ，Ｉｇ，Ｉｂ（まとめて受光量Ｒで表すこともある）は、Ｒ、Ｇ、Ｂの可視光にそれぞれ感度を有するＣＣＤ１３２以外の受光センサ（図示せず）によって検出することも可能である。
【００６９】
受側カメラ３００は、赤外線信号発信部３０を備えている。この赤外線信号発信部３０は、発側カメラ１００に赤外線信号を赤外光によって発信するものであり、その構成は、例えば、閃光発光装置の構成、従来のタリーランプ及びその発光制御装置の構成の全部又は一部と共通させてもよい。あるいは、赤外線通信専用の発信装置で構成してもよい。
【００７０】
受側カメラ３００のＥＥＰＲＯＭ１４６には、発側カメラ１００の発光レベルに段階的に対応した発光レベル判別閾値が記憶されている。本実施形態ではＬ１〜Ｌ１５に対応した発光レベル判別閾値Ｘ１〜Ｘ１５が記憶されているとするが、発光レベルの段階数が変わればこれに合わせて発光レベル判別閾値の段階数も変わる。発光レベル判別閾値は、受光量から発光レベルを判別する基準となる。以下、発光レベル判別閾値を単に閾値で表すこともある。
【００７１】
なお、Ｌ１〜Ｌ１５の受光量が飽和しないようにするため、Ｌ１５の発光に対応する受光量がなるべく０に近い値となるよう、シャッタスピードや絞り値等を制御することが好ましい。
【００７２】
また、予め所定の段階的なデフォルト閾値をＥＥＰＲＯＭ１４６に記憶しておき、この閾値に対してキャリブレーションを施すことで閾値Ｘ１〜Ｘ１５設定してもよい。例えば、ＥＥＰＲＯＭ１４６に所定の段階的なデフォルト閾値Ｗ１〜Ｗ１５を記憶しておく。次に、最大の発光レベルＬ１に対応する受光量をＲmax、最小の発光レベルＬ１５に対応する受光量をＲminとすると、Ｗ１〜Ｗ１５のそれぞれにＲmax/Ｒminに乗じた値を閾値Ｘ１〜Ｘ１５とする。
【００７３】
図７は閾値Ｘ１〜Ｘ１５の一例を示す。この図に示すように、閾値Ｘ１〜Ｘ１５は、発光レベルＬ１〜Ｌ１５に対応して、受光量Ｒの取りうる範囲を、レベル１（Ｘ１≦Ｒ），レベル２（Ｘ２≦Ｒ＜Ｘ１），・・，レベル１５（Ｘ１５≦Ｒ＜Ｘ１４），レベル０（Ｒ＜Ｘ１５）の１６段階の受光レベルに区分する。受光レベルの数は１６に限らず発光レベルの数に対応していればよい。閾値同士の段差は、ここでは均一な値ΔＶ１＝１０となっている。ただし、受側カメラ３００が各受光レベルを正確に区別できれば必ずしも均一にしなくてもよく、所定値以上の段差となるようにしてもよい。
【００７４】
後述するが、メインＣＰＵ２０は、受光量Ｉｒ，Ｉｇ，Ｉｂの属する受光レベルＪｒ，Ｊｇ，Ｊｂを特定する。
【００７５】
受側カメラ３００のＥＥＰＲＯＭ１４６には、３色の受光レベルＪｒ，Ｊｇ，Ｊｂの組み合わせ（受光パターン）とビット列との対応を規定する受光パターンテーブルが記憶されている。
【００７６】
図８は受光パターンテーブルの一例を示す。この図に示すように、各々０〜１５の１６段階をとる３色の受光レベルＪｒ，Ｊｇ，Ｊｂの組み合わせ１６３＝４０９６パターンの各々に、２１２＝４０９６パターンの１２ビットデータ列の配列パターンが対応している。受光パターンテーブルと発光パターンテーブルは実質的に整合しており、発光パターンテーブル（図５参照）の各色の発光レベル（Ｌ０〜Ｌ１５）を各色の受光レベル（Ｊｒ，Ｊｇ，Ｊｂ）に置換することで受光パターンテーブルが得られる。
【００７７】
図９に示すように、本発明に係る通信システム５００は、発側カメラ１００と受側カメラ３００を備える。通信システム５００の通信動作は次のように行われる。
【００７８】
図１０を参照すると、まず、発側カメラ１００において、メインＣＰＵ２０からバスライン１４２を介して所望のビット列からなる通信データを受け取ると、発光制御ＣＰＵ１４は、受け取った通信データのビット列を開始ビットから１２ビットごとに分割する（Ｓ１）。この１２ビット列を分割ビット列と呼ぶ。分割ビット列は１２桁の２進数であり、２１２＝１６３＝４０９６パターンを表す３桁の１６進数と等価である。なお、通信データの末尾から１２ビットに満たないビット列が生じた場合、欠損したビットに「０」を付加して強制的に１２ビットの分割ビット列にする。
【００７９】
次に、発光制御ＣＰＵ１４は、発光制御情報記憶部１２に記憶された発光パターンテーブルを参照し、分割ビット列に対応するＲ，Ｇ，Ｂの発光レベルの組み合わせ（発光パターン）をＬＥＤドライバ１９に設定する（Ｓ２）。
【００８０】
ここで、発光制御ＣＰＵ１４の発光レベル設定周期、即ちＣＧ部１３６による発信駆動信号の発生周期は、受側カメラ３００のＣＣＤ１３２の電荷蓄積期間（露光期間）と同期させることが好ましい。
【００８１】
ＬＥＤドライバ１９は、Ｒ，Ｇ，Ｂの発光レベル設定に応じたタイミングでＬＥＤ群１７を設定された発光レベルで発光させる（Ｓ３）。
【００８２】
例えば、通信データの分割ビット列が１２ビット「１００００１００１１１１」とする。発光制御ＣＰＵ１４は、発光制御情報記憶部１２の発光制御情報に従い、ＬＥＤ１７Ｒの発光レベルをＬ１，ＬＥＤ１７Ｇの発光レベルをＬ２、ＬＥＤ１７Ｂの発光レベルをＬ１５に設定する。以下、ＬＥＤ群１７の発光により光学的に発信される通信データを可視光信号と呼ぶ。
【００８３】
再び図１０を参照すると、受側カメラ３００は、通信用発光装置１６から発信された可視光信号をＣＣＤ１３２によって受光する（Ｓ４）。
【００８４】
受側カメラ３００のメインＣＰＵ２０は、各発光レベルで発光されたＲ，Ｇ，Ｂの可視光を受光すると、Ｒ，Ｇ，Ｂの各受光量Ｉｒ，Ｉｇ，Ｉｂをバッファメモリ１３５に記憶する。メインＣＰＵ２０は、受光量Ｉｒ，Ｉｇ，Ｉｂに従って分割ビット列を特定する（Ｓ５）。
【００８５】
受光量に応じた分割ビット列の特定は次のようにして行う。まず、メインＣＰＵ２０は、各受光量Ｉｒ，Ｉｇ，Ｉｂにつき、Ｘｎ≦受光量＜Ｘｎ＋１となる係数ｎを特定し、その係数ｎを各色の受光量Ｉｒ，Ｉｇ，Ｉｂの属する受光レベルＪｒ，Ｊｇ，Ｊｂとする。ただし、Ｘ１＜受光量の場合、受光レベルｎ＝１と特定し、受光量＜Ｘ１６の場合、受光レベルｎ＝０と特定する。次に、ＥＥＰＲＯＭ１４６に記憶されている受光パターンテーブルを参照し、Ｊｒ，Ｊｇ，Ｊｂの組み合わせ（受光パターン）に対応する分割ビット列を特定する。例えば、Ｊｒ＝１，Ｊｇ＝０，Ｊｂ＝０であれば、分割ビット列は「１０００００００００００」と特定される。
【００８６】
この処理はＲＧＢの可視光の発光周期に同期して繰り返されるが、この繰り返しの周期は、ＲＧＢの発光周期がＣＣＤ１３２の電荷蓄積期間と同期していれば、１フレームの画像信号が読み出される周期と同じになり通信速度化の一助となる。
【００８７】
そして、発光周期に従って順次受光する可視光信号の各々から特定した分割ビット列を受光順に再配列して通信データを復元する（Ｓ６）。
【００８８】
以上説明したとおり、本発明に係る通信システムでは、ＬＥＤ群１７の１回の発光によって１２ビットの２進数データ（３桁の１６進数と等価）を表現でき、従来のオンオフキーイングによる光通信に比して１回の発光当たり１２倍のデータを送信できる。
【００８９】
なお、上述の通信動作のＳ１〜Ｓ２の動作を発光制御ＣＰＵ１４に実行させるプログラムは発光制御情報記憶部１２その他のコンピュータ読み取り可能な記憶媒体に記憶されている。また、上述の通信動作のＳ５〜Ｓ６の動作をメインＣＰＵ２０に実行させるプログラムはＥＥＰＲＯＭ１４６その他のコンピュータ読み取り可能な記憶媒体に記憶されている。
【００９０】
＜第２実施形態＞
第１実施形態では、発光レベル及び受光レベルは固定であったが、受側カメラ３００の受光精度に応じて適切な発光レベル及び受光レベルに切り替えることもできる。
【００９１】
前提として、予め複数の発光パターンテーブルを発光制御情報記憶部１２に記憶しておく。図１１はその一例として、高速発光テーブル及び低速発光テーブルを示す。高速発光テーブルは、２１５＝３２３＝３２７６８パターンの１５ビットのデータ列とＬＥＤ１７Ｒ，１７Ｇ，１７Ｂの発光量とを対応づける。低速発光テーブルは、２９＝８３＝５１２パターンの９ビットのデータ列とＬＥＤ１７Ｒ，１７Ｇ，１７Ｂの発光量とを対応づける。
【００９２】
高速発光テーブルは、ＬＥＤ１７Ｒ，１７Ｇ，１７Ｂの３２段階の発光レベルＭ０〜Ｍ３１の組み合わせを１５ビットのデータ列に対応づける。Ｍ０〜Ｍ３１は段階的な発光量であり、Ｍ１＞Ｍ２＞・・＞Ｍ３１＞Ｍ０＝０である。かつ、発光レベル同士の差は所定の第１閾値ΔＬ１未満の第２の閾値ΔＬ２以下である。即ち、Ｍｋ−Ｍｋ＋１≦ΔＬ２＜ΔＬ１（ただしｋ＝１〜３０）である。これは、通常発光テーブルで用いられる発光レベル同士の差よりも、高速発光テーブルで用いられる発光レベル同士の差が狭まっており、通常発光テーブルよりも多くの発光パターンを網羅していることを意味する。
【００９３】
一方、低速発光テーブルは、ＬＥＤ１７Ｒ，１７Ｇ，１７Ｂの８段階の発光レベルＮ０〜Ｎ７の組み合わせを９ビットのデータ列に対応づける。Ｎ０〜Ｎ７は段階的な発光量即ち発光レベルであり、Ｎ１＞Ｎ２＞・・＞Ｎ７＞Ｎ０＝０である。かつ、発光レベル同士の差は所定の第１閾値ΔＬ１を超える第３の閾値ΔＬ３以上である。即ち、ΔＬ１＜ΔＬ２≦Ｍｋ−Ｍｋ＋１（ただしｋ＝１〜６）である。これは、通常発光テーブルで用いられる発光レベル同士の差よりも、低速発光テーブルで用いられる発光レベル同士の差が広がっており、通常発光テーブルよりも少ない発光パターンを網羅していることを意味する。
【００９４】
高速発光テーブル、低速発光テーブルにおけるビット列と発光パターンの対応づけの具体的内容は省略するが、要するに通常発光テーブルと同様、各ビット列のパターンに対応するＬＥＤ１７Ｒ、１７Ｇ、１７Ｂの段階的発光量がすべて網羅されていればよい。高速発光テーブル及び低速発光テーブルは通常パターンテーブルとともに発光制御情報記憶部１２に記憶される。
【００９５】
ＬＥＤドライバ１９は、ＬＥＤ群１７の発光量を段階的に制御するが、その段階は、高速発光テーブル、通常発光テーブル、低速発光テーブルに合わせ、Ｍ０〜Ｍ３１の３２段階、Ｌ０〜Ｌ１５の１６段階、Ｎ０〜Ｎ７の８段階のいずれにも可変であるとする。
【００９６】
一方、受側カメラ３００のＥＥＰＲＯＭ１４６には、高速発光テーブル、通常発光テーブル、低速発光テーブルと整合した３種類の受光パターンテーブルを記憶しておく。以下これらを高速受光テーブル、通常受光テーブル、低速受光テーブルと呼ぶ。
【００９７】
図１２は第２実施形態に係る通信動作の流れを示すフローチャートである。
【００９８】
Ｓ１０１では、発側カメラ１００は、ＬＥＤ１７Ｒ、ＬＥＤ１７Ｇ、ＬＥＤ１７Ｂの各々を、所定タイミングごとに、発光レベルＬ０〜Ｌ１５で段階的にテスト発光させる。
【００９９】
ここで、所定タイミングとは、例えばＣＧ１３６の垂直同期信号ＶＤの出力タイミングに同期したタイミングである。ここでは説明の簡略のため、発光制御ＣＰＵ１４は、受側カメラ３００のＣＣＤ１３２の電荷蓄積期間（露光期間）と同期させ、通常発光テーブルで規定される発光レベルＬ１〜Ｌ１５でＬＥＤ１７Ｒを順次発光させ、次に、発光レベルＬ１〜Ｌ１５でＬＥＤ１７Ｇを順次発光させ、最後に、発光レベルＬ１〜Ｌ１５でＬＥＤ１７Ｂを順次発光させる。この発光を１サイクルのテスト発光とするが、テスト発光を複数サイクル繰り返してもよい。
【０１００】
Ｓ１０２では、受側カメラ３００は、テスト発光を受光すると、積分回路１５０によって色ごとに順次受光量Ｙ１〜Ｙ１５を算出する。算出された受光量Ｙ１〜Ｙ１５はバッファメモリ１３５に記憶される。
【０１０１】
ただし、テスト発光が複数サイクルであれば、各サイクルで得られる受光レベルのうち所定の平均値を算出し、これを受光量として記憶してもよい。例えば、２回発光を行った場合、同一の発光レベルＬｋに対応する２つの受光量Ｙｋ（１）、Ｙｋ（２）の平均値Ｅ（Ｙｋ）＝（Ｙｋ（１）＋Ｙｋ（２））／２を受光量として記憶する。こうすることで受光量のばらつきによる影響を小さくできる。
【０１０２】
メインＣＰＵ２０は、順次算出した受光量同士の差分Δｒｊ＝Ｙｊ−Ｙｊ＋１（ｊ＝１〜１４）を算出する。そして、メインＣＰＵ２０は、全ての差分Δｒｊが、所定の第１閾値ΔＶ１以上であるか否かを判断する。全ての差分Δｒｊが所定の第１閾値ΔＶ１以上である場合はＳ１０４に移行し、全ての差分Δｒｊが所定の第１閾値ΔＶ１以上でない場合はＳ１０５に移行する。
【０１０３】
なお、例えば受側カメラ３００のＡＥ機能として約５／２５５単位での受光量の段階的調整が可能であれば、これに関連して、Δｒｊの値は最小でも１０／２５５必要である。
【０１０４】
Ｓ１０４では、受側カメラ３００のメインＣＰＵ２０は、参照すべき受光パターンテーブルを高速受光テーブルに切り替え設定する。そして、発光レベルを高速発光レベルに切り替える指令を赤外線発信部３０から発側カメラ１００に発信する。なお、デフォルトの受光パターンテーブルは通常受光テーブルに設定されているものとする。
【０１０５】
Ｓ１０５では、差分Δｒｊが所定の第２閾値ΔＶ２（ただしΔＶ２＜ΔＶ１）未満であるかを判断する。全ての差分Δｒｊが第２閾値ΔＶ２未満である場合はＳ１０４に移行し、全ての差分ｒｊが第２閾値ΔＶ２未満でない場合はＳ１０５に移行する。
【０１０６】
Ｓ１０６では、受側カメラ３００のメインＣＰＵ２０は、参照すべき受光パターンテーブルを低速受光テーブルに切り替え設定する。そして、発光レベルを低速発光レベルに切り替える指令を赤外線信号発信部３０から発側カメラ１００に発信する。
【０１０７】
Ｓ１０７では、発側カメラ１００の発光制御ＣＰＵ１４は、指令を受信した場合、その指令に応じて参照すべき発光パターンテーブルを切り替え設定する。指令を受信しなければデフォルト設定されている通常発光テーブルの設定を維持する。そして、設定された発光パターンテーブルで規定される発光レベルで再び段階的なテスト発光を行う。
【０１０８】
Ｓ１０８では、受側カメラ３００は、テスト発光を受光すると、積分回路１５０によって色ごとに順次受光量を算出する。高速発光テーブルではＹ１〜Ｙ３１、通常発光テーブルではＹ１〜Ｙ１５、低速発光テーブルではＹ１〜Ｙ７が算出されることになる。メインＣＰＵ２０は、算出された受光量Ｙｋに基づいて発光レベル判別閾値Ｚｋ（ｋ＝１，２，・・）を設定し、これをＥＥＰＲＯＭ１４６に記憶する。例えば、Ｚｋ＝Ｙｋとする。テスト発光を複数サイクル行い、各サイクルで得られた受光量Ｙｋのうち所定の誤差範囲内に含まれるものを閾値Ｚｋとしてもよい。
【０１０９】
また、閾値は必ずしも固定値である必然性はなく、所定のばらつきを許容するよう、受光量のとりうる範囲としてもよい。例えば、テスト発光を複数サイクル行い、同一の発光レベルＬｋに対応する複数の受光量の平均値Ｅ（Ｙｋ）と標準偏差σを算出する。そして、平均値Ｅ（Ｙｋ）から３σ〜４σ（標準偏差の３倍から４倍）の幅を閾値範囲とし、受光量のばらつきを許容するようにする。
【０１１０】
Ｓ１０９では、発側カメラ１００は、設定された発光パターンテーブルに従い、通信データを発信する。具体的には、発光制御ＣＰＵ１４は、高速発光テーブルが設定されていれば通信データのビット列を開始ビットから１５ビットごと、通常発光テーブルが設定されていれば１２ビットごと、低速発光テーブルが設定されていれば９ビットごとに分割する。発光制御ＣＰＵ１４は、発光パターンテーブルを参照して分割ビット列に対応するＲ，Ｇ，Ｂの発光パターンを特定し、これをＬＥＤドライバ１９に設定する。発光パターンテーブルが高速発光テーブルならば１５ビット、通常発光テーブルならば１２ビット、低速発光テーブルならば９ビットのデータを１回の発光で発信できる。
【０１１１】
Ｓ１１０では、受側カメラ３００による通信データの受信が行われる。具体的には、受側カメラ３００のメインＣＰＵ２０は、各発光レベルで発光されたＲ，Ｇ，Ｂの可視光を受光すると、Ｒ，Ｇ，Ｂの各受光量Ｉｒ，Ｉｇ，Ｉｂをバッファメモリ１３５に記憶する。メインＣＰＵ２０は、受光量Ｉｒ，Ｉｇ，Ｉｂに従って分割ビット列を特定する。
【０１１２】
受光量に応じた分割ビット列の特定は次のようにして行う。まず、メインＣＰＵ２０は、各受光量Ｉｒ，Ｉｇ，Ｉｂにつき、閾値Ｚｋとの誤差が所定の値Δ（例えばΔ＝１）以下、即ちＺｋ−Δ≦受光量≦Ｚｋ＋Δとなる係数ｋを特定し、その値を各色の受光量Ｉｒ，Ｉｇ，Ｉｂの受光レベルＪｒ，Ｊｇ，Ｊｂとする。次に、受光パターンテーブルに基づき、Ｊｒ，Ｊｇ，Ｊｂの受光パターンに対応する分割ビット列を特定する。
【０１１３】
本実施形態においては、受光量の差分Δｒｊが所定の第２閾値ΔＶ２未満で近接しており、段階的な受光レベルの正確な区別が困難であれば、段差の間隔が広がった低速発光テーブルの発光パターンで可視光信号を発信でき、通信を確実にできる。
【０１１４】
一方、受光量の差分Δｒｊが所定の第１閾値ΔＶ１を超えて離隔しており、段階的な受光レベルの正確な区別が可能であれば、段差の間隔が狭まった高速発光テーブルの発光パターンで可視光信号を発信でき、通信を高速にできる。
【０１１５】
＜第３実施形態＞
第２実施形態と異なり、発側カメラ１００から段階的な発光をさせることなく、受側カメラ３００の段階的な閾値を設定することもできる。
【０１１６】
図１３を参照すると、まず、発側カメラ１００は、最高の発光レベルＬ１でＬＥＤ１７Ｒ、ＬＥＤ１７Ｇ、ＬＥＤ１７Ｂをそれぞれ発光させる（Ｓ２０１）。
【０１１７】
受側カメラ３００は、受光に応じてＲ、Ｇ、Ｂの受光量を算出する（Ｓ２０２）。この受光量をそれぞれＲfl、Ｇfl、Ｂflとする。次に、Ｒfl、Ｇfl、Ｂflの値を、所定の分解能ｎで分割した値を算出する。この値をΔＲ，ΔＧ，ΔＢとする。ｎは自然数であり、その具体的数値は任意である。
【０１１８】
即ち、ΔＲ＝Ｒfl／ｎ，ΔＧ＝Ｇfl／ｎ，ΔＢ＝Ｂfl／ｎである。
【０１１９】
受側カメラ３００は、Ｒ，Ｇ，Ｂごとのｎ個の閾値Ｘr１〜Ｘrｎ，Ｘｇ１〜Ｘｇｎ，Ｘｂ１〜Ｘｂｎ，を次のように設定する（Ｓ２０３）。
【０１２０】
Ｘrｋ＝Ｒfl−（ｋ−１）ΔＲ
Ｘｇｋ＝Ｇfl−（ｋ−１）ΔＧ
Ｘｂｋ＝Ｇfl−（ｋ−１）ΔＢ
ここで、ｋ＝１〜ｎであり、受光レベルを表す。
【０１２１】
閾値の設定後、第２実施形態と同様、発側カメラ１００から通信データの発信を行う。発側カメラ１００の発光制御ＣＰＵ１４は、ＬＥＤ群１７の発光量をｎ段階制御できるものとする。そうすると、１回のＲ，Ｇ，Ｂの発光の組み合わせで最大ｎ３パターンを表現できるため、１回の発光当たり、最大ｚ＝３［ｌｏｇ２ｎ］ビット発信できる（ただし、［  ］はガウス記号である）。
【０１２２】
これに合わせ、発光パターンテーブルは、ｚ桁の任意のビット列に対応した２ｚパターンのＬＥＤ群１７発光パターンを網羅的に規定している。どのビット列にどの発光パターンを対応させるかは任意であるため発光パターンテーブルの内容は省略する。
【０１２３】
発側カメラ１００は、任意のビット列通信データをｚ桁の分割ビット列に分割し、各分割ビット列に対応する発光パターンでＬＥＤ群１７を発光させる（Ｓ２０４）。
【０１２４】
受側カメラ３００による、受光量に応じた分割ビット列の特定は第２実施形態のＳ１１１と同様に行えばよい（Ｓ２０５）。こうすることで、１回の発光でｚビットのデータを送受信できる。
【図面の簡単な説明】
【０１２５】
【図１】発信側デジタルカメラのブロック構成図
【図２】ＣＣＤ受光面のＲ，Ｇ，Ｂの微小なカラーフィルタの配置図
【図３】通信用発光装置のブロック図
【図４】電流量と発光レベルとの関係を示す図
【図５】発光パターンテーブルの概念説明図
【図６】受信側デジタルカメラのブロック構成図
【図７】受光レベルの概念説明図
【図８】受光パターンテーブルの概念説明図
【図９】可視光通信システムの構成図
【図１０】第１実施形態に係る通信動作の流れを示すフローチャート
【図１１】高速発光テーブル及び低速発光テーブルの概念説明図
【図１２】第２実施形態に係る通信動作の流れを示すフローチャート
【図１３】第３実施形態に係る通信動作の流れを示すフローチャート
【符号の説明】
【０１２６】
１４：発光制御ＣＰＵ、１７：ＬＥＤ群、１９：ＬＥＤドライバ、１６：通信用発光装置、２０：メインＣＰＵ、３０：同期信号発信部、６３：赤外線受光回路、１３１：絞り、１３２：ＣＣＤ、１３４：Ａ／Ｄ変換部、１５０：積算回路
【図１】
2007019870.tif 000003
【図２】
2007019870.tif 000004
【図３】
2007019870.tif 000005
【図４】
2007019870.tif 000006
【図５】
2007019870.tif 000007
【図６】
2007019870.tif 000008
【図７】
2007019870.tif 000009
【図８】
2007019870.tif 000010
【図９】
2007019870.tif 000011
【図１０】
2007019870.tif 000012
【図１１】
2007019870.tif 000013
【図１２】
2007019870.tif 000014
【図１３】
2007019870.tif 000015