以下、本発明を実施するための最良の形態(以下、単に実施の形態という。)について、図面を参照して詳細に説明する。
[第1の実施の形態]
図1は、本発明の第1の実施の形態に係る通信システムの全体構成を表すものである。この通信システムは、所定の図形や文字などの動画像を表示する機能を有する表示装置1と、所定の情報の入出力機能を有する入出力端末2とから構成される。ただし、これら表示装置1および入出力端末2は、これらの機能を備えていれば、他の種類(例えばCD(Compact Disc;登録商標)プレーヤ、パーソナルコンピュータ等)の装置から構成されていてもよい。
表示装置1は、複数の各画素が全面に渡ってマトリクス状に配置された、例えば有機または無機のEL(ElectroLuminescence)ディスプレイやLCD(Liquid Crystal Display)などから構成される受発光部11を備える。また、この受発光部11における各画素は、1つの受発光素子を含む受発光セルから構成され、各画素が発光動作機能と受光動作機能を併有するようになっている。このように各画素における発光動作および受光動作を利用し、後述する動画2次元コードの表示および読み取りを行うことにより、この受発光部11を用いて情報を送受信することが可能となる。
図2は、図1の表示装置1の受発光部11における受発光セルの配置構成の一例を断面図で模式的に表したものである。なお、図2の例では、受発光セルに含まれる受発光素子が有機EL素子であり、1対の透明基板の間に有機EL層が設けられている場合を示している。この図おいて、位置を表す符号であるi,jはある自然数を表す。
この受発光部11は、1対の透明基板111A,111Bと、これらの透明基板111A,111Bの間に配置され、隔壁112によって互いに分離された構造の複数の受発光セルCWR(CWRij)とを有する。また、この例では上記のように受発光セルCWRは受発光素子として有機EL素子を含む。なお、一般的な有機ELディスプレイにおけるその他の層については図示せず、省略している。
なお、本実施の形態に係る受発光部11における受発光セルCWRの配置構成例の断面図はこれに限られるものではなく、他の配置構成でもよい。また、図2に示した断面図の例においては、受発光素子ELが有機EL素子から構成されている例で説明したが、この受発光素子は発光機能および受光機能を備える素子ならば他のものでもよく、また発光素子と受光素子を別個に備えるように構成してもよい。
図3は、図2における受発光セルCWRの回路構成を表すものである。
この受発光セルCWRには、発光駆動対象として受発光素子ELを選択するための発光用ゲート線Gと、受発光素子ELへ表示用のデータを供給するためのデータ供給線DWと、受発光素子ELに対する発光駆動と受光駆動とを切り換える切換線Sと、受発光素子ELから受光信号を読み取るためのデータ読取線DRとが、それぞれ1本ずつ接続された構成となっている。つまり、通常の発光素子を備える1画素分のセルと比べて、受光用の分だけゲート線およびデータ線が1本ずつ増加した構成となっている。また、受発光セルCWRは、1つの受発光素子ELと、キャパシタCと、抵抗Rと、発光用ゲート線Gから供給される選択信号に応じてデータ供給線DWとこのキャパシタCの一端との間を選択的に導通させる第1のスイッチSW1と、切換線Sから供給される切換信号に応じてこのキャパシタの他端と受発光素子ELの一端との間を選択的に導通させる第2のスイッチSW2と、同様に切換線Sから供給される切換信号に応じて受発光素子ELの一端とデータ読取線DRとの間を選択的に導通させる第3のスイッチSW3とを有し、受発光素子ELの他端は接地されている。抵抗Rの一端はデータ読取線DRに接続されており、抵抗Rの他端は接地、または負バイアス点(図示せず)に接続されている。
ここで、具体的に発光動作時および受光動作時における受発光セルについて簡単に説明しておく。発光動作および受光動作は、以下のような受発光素子ELの性質を利用して行う。つまり、この図の例において受発光素子として構成されている有機EL素子あるいはLED素子などは、順方向バイアス電圧を印可すると発光動作をするが、逆方向バイアス電圧を印加すると、受光して電流を発生する性質を有する。よってこの受発光素子ELは、発光動作および受光動作を同時に行うことはできず、両方の動作を行うには時分割で動作させる必要がある。
発光動作時には、上記のように発光用ゲート線Gから供給される選択信号および切換線Sから供給される切換信号に応じて第1のスイッチSW1および第2のスイッチSW2がオン状態かつ第3のスイッチSW3がオフ状態となると共に、受発光素子ELには順方向バイアス電圧が印加される。ここで、表示信号に応じた輝度の発光となるよう、データ供給線DWからI1の経路にてキャパシタCが充電され、それに基づいてI2の経路にて受発光素子ELに電流が流れ、発光動作を行うようになっている。
一方、受光動作時には、上記のように切換線Sから供給される切換信号に応じて第2のスイッチがオフ状態、第3のスイッチSW2がオン状態となると共にこの受発光素子ELに逆方向バイアス電圧が印加され、受発光素子ELにおいて受光した光量に応じた電流がI3の経路にてデータ読取線DRへ供給され、受光動作を行うようになっている。なお、発光動作および受光動作のいずれの動作も行っていない時には、第1のスイッチSW1、第2のスイッチSW2および第3のスイッチSW3のいずれのスイッチもオフ状態となっており、データ供給線DWおよびデータ読取線DRはそれぞれ、受発光素子ELとは切断されるようになっている。なお、データ読取線DRに接続されている抵抗Rは、上記のようにI3の経路でデータ読取線DRに供給された電流に基づいて抵抗Rの両端に電位差を生じさせ、これを受光信号として出力する機能を有する。
以上のように制御することで、受発光部11における各画素が発光動作および受光動作を行うことが可能となる。
再び、図1に戻って説明する。
表示装置1は例えば、画面上に同時に複数のウィンドウ12A,12B,12Cを表示し、このウィンドウ内に所定の図形や文字などを表示するようになっている(この場合、ウィンドウ12Aには所定の図形を、ウィンドウ12B,12Cには所定の文字を表示している。)。
また、受発光部11に表示されている各ウィンドウ12A〜12C内には、それぞれウィンドウの右下の隅にシンボル13A〜13Cが表示されている。これらのシンボル13A〜13Cは、例えば所定の領域内に複数の白または黒の表示エレメントが配置され、受発光部11による1フレームごとにその白黒のパターンが切り換えられるようになっており、後述するように時間軸に沿って変化する2次元コードである動画2次元コードを構成する。なお、通常各表示エレメントは、複数の受発光セルによって構成されている。また、これらのシンボル13A〜13Cは、入出力端末2への送信対象の情報である種々のコンテンツデータ、例えばそれぞれそのウィンドウ12A〜12Cに表示されている図形や文字などに関する情報を表現したものであり、これらのシンボルが構成する動画2次元コードを用いて送受信することにより、これらのコンテンツデータを入出力端末2と共有できるようになっている。
なお、図1においては、各シンボル13A〜13Cはそれぞれ、各ウィンドウ12A〜12Cの右下の隅に表示されているが、これに限られるものではなく、受発光部11内の任意の位置に表示することが可能である。以下の図および実施の形態においても同様である。
入出力端末2は、表示装置1と同様に例えば有機または無機のELディスプレイやLCDなどから構成される受発光部21を備え、上記のようにこの受発光部21を利用して動画2次元コードを表示あるいは読み取ることにより、表示装置1との間でコンテンツデータを送受信できるようになっている。
ここで、表示装置1および入出力端末2は、本発明における「第1の表示装置」および「第2の表示装置」の一具体例に対応するものである。
図4は、図1の通信システムにおける動画2次元コードを用いた通信状況の一例を斜視図で表すものである。
図の様に、ユーザは例えば、表示装置1が備える受発光部11に表示されているシンボル13Aの領域付近に入出力端末2が備える受発光部21を接近させることで、矢印Xで示したように、シンボル13Aを介してコンテンツデータを直感的に送受信することができるようになっている。これにより、表示装置1と入出力端末2との間で種々のコンテンツデータを容易に共有することが可能となる。具体的には、例えば、シンボル13Aを介して表示装置1から入出力端末2へコンテンツデータを送信することにより、そのシンボル13Aが位置するウィンドウ12A内に表示されているコンテンツデータを、入出力端末2の受発光部21上で表示することが可能となる。
図5は、図1の表示装置1における機能構成の一例を表すものである。この表示装置1は、動画2次元コードを用いたコンテンツデータの送信機能を有する送信機能部14と、動画2次元コードを用いたコンテンツデータの受信機能を有する受信機能部15とを備える。また、これら送信機能部14および受信機能部15に対する制御は、図示しない制御部が行う。
送信機能部14は、画像信号生成部141、シンボル生成部142、表示信号生成部143、受発光制御部110および受発光部11を有する。一方、受信機能部15は、受発光制御部110、受発光部11、記憶部151、画像処理部152、デコード部153および情報取得部154を有する。つまり、図5に示したように、受発光制御部110および受発光部11は、送信機能部14および受信機能部15について共通部分となっている。
まず、送信機能部の各構成要素について説明する。
画像信号生成部141は、例えば図示しないTVチューナやネットワーク接続部などから供給される種々のコンテンツデータDに基づいて、例えば1画面ごと(1フレームの表示ごと)に表示するための画像信号を生成する。このようにして生成した1画面ごとの画像信号は、シンボル生成部142および表示信号生成部143へ出力される。
シンボル生成部142は、画像信号生成部141から出力される1画面ごとの画像信号に基づいて、例えば、動画2次元コードを構成する1画面ごとのシンボルを生成する。具体的には、例えば、画像信号をシンボルごとのデータに分割し、これに動画2次元コードに含まれるヘッダ情報(後述する、フォーマットAおよびフォーマットBのスタートシンボルおよびヘッダシンボル、あるいはフォーマットCのヘッダシンボルに含まれる情報)やCRC(Cyclic Redundancy Check)の算出値なども付加し、1画面ごとのシンボルを生成する。そして生成された1画面ごとのシンボルは、表示信号生成部143へ出力される。
なお、このようにして生成するシンボルは、1フレームごとに異なるシンボルのパターンであるとは限らず、数フレームに対して1つのシンボルのパターンであってもよい。この場合、数フレーム間は同じパターンのシンボルが表示されることになる。以下、1秒当たりのシンボルのパターン数を、「シンボル/秒」という単位で表すものとする。
表示信号生成部143は、画像信号生成部141から出力される1画面ごとの画像信号と、シンボル生成部142から出力される1画面ごとのシンボルとを合成し、受発光部11において表示する1画面ごとの表示信号を生成する。このようにして生成された1画面ごとの表示信号は、受発光制御部110へ出力される。
受発光制御部110は、表示信号生成部143から出力される表示信号に基づいて、受発光部11において表示信号に応じたコンテンツデータや動画2次元コードの各シンボルを表示するための駆動動作を行う。具体的には、例えば、一般的に用いられている線順次駆動動作の場合、この受発光制御部110はゲートドライバおよびデータドライバなどから構成される。そして、図3において説明したように、ゲートドライバから受発光部11へ1水平ライン分の各画素を選択する選択信号が発光用ゲート線Gを介して供給されると共に、データドライバから受発光部11の1水平ライン分の各画素へデータ供給線DWを介して表示信号が供給される。このような線順次駆動動作を受発光部11の全水平ラインに渡って行うことにより、受発光部11において表示信号に応じたコンテンツデータや動画2次元コードの各シンボルを表示することが可能となる。
受発光部11は、上記のように例えば線順次駆動動作により表示信号に応じたコンテンツデータや動画2次元コードの各シンボルを表示する。このように、受発光部11が種々のコンテンツデータ自体と共に、このコンテンツデータに基づいて生成された動画2次元コードの各シンボルを表示することにより、発光光線LWを介してコンテンツデータを入出力端末2へ送信することが可能となる。
次に、受信機能部の各構成要素について説明する。
受発光部11はまた、前述のように表示信号に応じたコンテンツデータや動画2次元コードの各シンボルを表示すると共に、光を受光する機能も有する。つまり、入出力端末2における受発光部21に表示された動画2次元コードの各シンボルを受光光線LRとして読み取ることにより、コンテンツデータを受信することが可能となる。
この場合、受発光制御部110は、受発光部11に対して表示のための駆動動作を行うと共に、受光するための駆動動作をも行うことになる。具体的には例えば、上記の線順次駆動動作の場合、図3において説明したように、以下の通りとなる。つまり、ゲートドライバから受発光部11へ1水平ライン分の各画素を受光駆動対象として切り換える切換信号が切換線Sを介して供給されると共に、受発光部11の1水平ライン分の各画素からの受光信号がデータ読取線DRを介して取得される。このような線順次駆動動作を受発光部11の全水平ラインに渡って行うことにより、受発光部11において動画2次元コード各シンボルを受光光線LRとして読み取り、受光信号を取得することが可能となる。このようにして取得された受光信号は、受信機能部15内の記憶部151へ出力される。
記憶部151は、受発光部11から出力される受光信号を1画面ごとの受光信号に再構成し、例えばSRAM(Static Random Access Memory)などから構成されるフレームメモリに格納して保持する。記憶部151において格納された1画面分の受光信号は、画像処理部152へ出力される。なお、この記憶部151はメモリ以外の記憶素子から構成されていてもよく、例えば受光信号のデータをアナログデータとして保持しておくことも可能である。
画像処理部152は、記憶部151から出力される1画面分の受光信号を画像処理する。具体的には、この1画面分の受光信号のデータから動画2次元コードの各シンボルを抽出する。シンボルの抽出方法としては、後述するように各シンボルの含まれるロゴマークや認識用エリアを検出することにより行う。このようにして画像処理し、抽出された動画2次元コードの各シンボルのデータは、デコード部153へ出力される。
デコード部153は、画像処理部152から出力される動画2次元コードの各シンボルのデータをデコードする。具体的にはまず、各シンボルのデータに基づいてCRCを実行する。シンボル内のデータにおいてエラー訂正の必要が生じた場合には、後述する所定の処理により、シンボル内のデータのエラー訂正あるいはシンボル自体のデータのエラー訂正を行う。そしてこれらのデータをデコードしていくが、この際、もし同一のシンボルが重複して取得されていた場合には、この重複したデータを取得しないようにするか、あるいは削除する。このようにして各シンボルのデータをデコードし、デコードされたデータは、情報取得部154へ出力される。
情報取得部154は、デコード部から出力されるデコードデータを蓄積していき、その蓄積されたデコードデータに基づいて各シンボルに含まれるヘッダ情報やコンテンツデータを復元し、取得する。このようにして各シンボルから復元されたヘッダ情報やコンテンツデータは、制御部(図示せず)へ出力され、これらの情報に応じた処理が実行されるようになっている。具体的には、例えば前述のように、このコンテンツデータを送信した装置が表示しているコンテンツデータを、受信した装置上で表示するといった処理を実行することが可能となる。
なお、入出力端末2における機能構成は、以上のような表示装置1における機能構成と同様であるので、説明を省略する。また、本実施の形態における表示装置1および入出力端末2が備える受発光部11および受発光部21は、前述のようにコンテンツデータおよび動画2次元コードの各シンボルを表示すると共に、動画2次元コードの各シンボルを読み取る機能をも有するように構成されているが、本実施の形態における表示装置1および入出力端末2の構成はこれに限られるものではなく、例えば、コンテンツデータおよび動画2次元コードの各シンボルを表示する機能を有する発光部と、動画2次元コードの各シンボルを読み取る機能を有する受光部とを別個に備えるように構成してもよい。
本実施の形態における動画2次元コードは複数種類のフォーマットが用意されており、対応可能なフォーマットは、各装置に固有のものとなっている。また、これら複数種類のフォーマットは、例えば、フォーマットA(ver.1.00)、フォーマットB(ver.1.01)、フォーマットC(ver.2.00)が含まれるように構成される。
フォーマットAは、これら複数種類のフォーマットの内、最下位のフォーマットであり、各装置が対応可能な最低限のフォーマットである。また、フォーマットBは、フォーマットAにおいて、後述する初期ネゴシエーション処理用のデータを追加したものであり、動画2次元コードを用いた送受信処理における基本フォーマットである。フォーマットBもまた、フォーマットAからこの初期ネゴシエーション処理用のデータを追加したのみのフォーマットなので、各装置が対応可能である。なお、このフォーマットBは、後述する初期ネゴシエーション処理において使用されるフォーマットである。
フォーマットCは、フォーマットAおよびフォーマットBからさらに、利用可能なデータ容量の増加および送受信するデータの信頼性を向上させた、フォーマットA〜Cにおける最上位のフォーマットである。また、このフォーマットCは、後述するエラー訂正ハンドシェーク処理において使用されるフォーマットである。
なお、本実施の形態における動画2次元コードのフォーマットは、これらのフォーマットに限られるものではなく、これらのフォーマットに代えて(またはこれらに加えて)、他のフォーマットを含むように構成してもよい。
以下、これら複数種類のフォーマットA〜Cにおける構成の詳細を説明する。
図6は、動画2次元コードのフォーマットAおよびフォーマットBにおけるシンボルの形状の一例を表すものである。この図において、(A)は、このシンボルの外見の形状を表し、(B)は、このシンボルにおける各ドットの構成および機能を表したものである。
図6(A)に示したように、このフォーマットAおよびフォーマットBのシンボルの形状4は、7×7=合計49ドットの白あるいは黒の表示エレメントが配置されたコード部41と、長方形形状の表示エレメントでありコード部41の下部に配置されたロゴマーク部42とから構成される。コード部41内の各ドットは、下記の認識用エリアを除いてシンボルごとに任意の白黒パターンが配置され、この1ドットがデータの1ビットを表すようになっている。一方、ロゴマーク部42は、この動画2次元コードの所定のロゴマークを表示したもので、この動画2次元コードを用いてコンテンツデータを受信する側の装置がシンボルを認識するための領域であり、常に固定のパターンが配置される。
図6(B)に示したように、このコード部41における四隅の各4ドット分の領域は、それぞれ認識用エリア411A〜411Dとなっており、四隅の1ドットの黒パターンおよびそれに隣接した3ドットの白パターンが固定され配置される。この認識用エリア411A〜411Dもまた、この動画2次元コードを用いてコンテンツデータを受信する側の装置がシンボルを認識するための領域である。よって、上記のように合計49ドットから構成されるコード部41の内、49−4×4=33ドットが、任意の白黒パターンとして利用できるようになっている。
また、この認識用エリア411A〜411Dを除いた33ドットの内、9ドット分はCRC用ビット412として、シンボル内のデータのエラー訂正に利用される。このCRC用ビット412は、コード部41内の所定の位置に、満遍なく配置されるようになっている。よって、最終的に任意のデータビット413として利用できるのは、33−9=24ドット分となる。なお、この24ドット分のデータビット413は、半分の12ドット分の正転データビット413Aと、残り半分の12ドット分の反転データビット413Bとから構成され、反転データビット413Bのドットは、データが反転(「0」のデータが「1」に、「1」のデータが「0」になる。つまり、白黒パターンが反転して表示される。)して表示されるようになっている。
図7は、図6のフォーマットAのシンボルにおけるデータ構成の一例を表すものである。この図において、(A)は、上記のようにコード部41内において任意の白黒パターンとして利用可能な33ビット分のデータ領域のデータ構成の内訳を表したものであり、(B)は、その33ビット分のデータにおいて、シンボルIDの値とデータ領域の内容との関係を表したものである。
図7(A)に示したように、この33ビット分の任意データ領域のデータ構成43は、前述の9ビット分のCRC用ビット412と、4ビット分のシンボルID432と、20ビット分のデータ領域433とから構成される。
また、図7(B)に示したように、この4ビット分のシンボルID432の値に応じて、データ領域433の内容は以下のように構成される。
まず、シンボルID432の値が「1000b」の場合、このシンボルは、動画2次元コードにおけるスタートシンボル435として機能し、データ領域433の内容は、この動画2次元コードを構成する全シンボル数を定義するようになっている。
また、シンボルID432の値が「1001b」〜「1111b」の場合、このシンボルは、動画2次元コードにおけるヘッダシンボル436として機能し、データ領域433の内容は、シンボルID432の値が「1001b」〜「1110b」の場合、この動画2次元コードにおけるファイル名を定義するようになっている。なお、このフォーマットAにおいては、シンボルID432の値が「1111b」の場合は未定義となっており、この場合におけるデータ領域433は、使用されない。後述するように、この場合におけるデータ領域433の内容は、フォーマットBにおいて初期ネゴシエーション用データとして使用される。
また、シンボルID432の値が「0000b」〜「0111b」の場合、このシンボルは、動画2次元コードにおけるデータシンボル437として機能し、データ領域433の内容は、この動画2次元コードにおけるデータ情報(コンテンツデータ)を表す。なお、このデータシンボル437におけるシンボルID432の値は、「0000b」〜「0111b」が周期的に変化していくようになっており、8シンボル分までは各シンボルを区別することが可能である。
なお、このフォーマットAにおいて利用可能な最大シンボル数は、前述のようにスタートシンボル435における20ビット分のデータ領域423で定義するので、2の20乗=1Mシンボルである。よって、利用可能な最大データ容量は、前述のようにシンボルごとに20ビットのデータ領域が確保されているので、1Mシンボル×20ビット=20Mビット=2.5Mバイトとなり、従来のバーコードや2次元コード(最大で数Kバイト程度)と比べて、格段に大容量のデータを利用することが可能となる。
また、利用可能な最大ファイル名は、前述のようにシンボルID432の値が「1001b」〜「1110b」の6シンボルのデータ領域423が確保されているので、6シンボル×20ビット=120ビット=15バイトとなる。なお、最大データ転送速度は、例えば、1フレームに対して1つのシンボルパターンとし、1秒当たりのシンボルのパターン数を、NTSC(National TV Standards Committee)方式を参照して60(シンボル/秒)とした場合、60(シンボル/秒)×20(ビット/シンボル)=1200bps(ビット/秒)となる。
図8は、図6のフォーマットBのシンボルにおけるデータ構成の一例を表すものである。このフォーマットは前述のように、フォーマットAにおいて初期ネゴシエーション処理用のデータを追加したものである。基本的にはフォーマットAと同様であるので、図7に示した構成要素と同一の構成要素には同一の符号を付し、説明を適宜省略する。
この図において、(A)は、図7(A)と同様、コード部41内において任意の白黒パターンとして利用可能な33ビット分のデータ領域のデータ構成の内訳を表したものであり、(B)も、図7(B)と同様、その33ビット分のデータにおいて、シンボルIDの値とデータ領域の内容との関係を表したものである。また、(C)は、初期ネゴシエーション用データの内訳を表したものであり、(D)は、その初期ネゴシエーション処理において送受信される、後述する処理性能情報を表すプロトコルの一例を表したものである。
図8(A)に示したように、この33ビット分の任意データ領域のデータ構成43は、前述の9ビット分のCRC用ビット412と、4ビット分のシンボルID432と、20ビット分のデータ領域433とから構成される。
また、図8(B)に示したように、シンボルID432の値が「1000b」の場合、このシンボルは、動画2次元コードにおけるスタートシンボル435として機能する。また、シンボルID432の値が「1001b」〜「1111b」の場合、このシンボルは、動画2次元コードにおけるヘッダシンボル436として機能し、データ領域433の内容は、シンボルID432の値が「1001b」〜「1110b」の場合、この動画2次元コードにおけるファイル名を定義するようになっている。また、シンボルID432の値が「0000b」〜「0111b」の場合、このシンボルは、動画2次元コードにおけるデータシンボル437として機能する。
このフォーマットBにおける特徴である、シンボルID432の値が「1111b」の場合、データ領域433の内容は初期ネゴシエーション用データとして利用される。具体的にはこの場合、データ領域433の20ビットは、予約ID438として利用される。そして図8(C)に示したように、この予約ID438とそのデータシンボル437の内容との関係は、以下のようになる。
まず、予約ID438の値が「00000h」の場合、データシンボル437におけるデータ情報の内容は、通常のデータ情報(コンテンツデータ)であり、現在通常のデータ転送が行われていることを表すようになっている。また、予約ID438の値が「00003h」〜「FFFFFh」の場合は未定義となっており、この場合におけるデータシンボル437は、将来のバージョンにて定義されるまで、ユーザが定義することは禁止されている。
そして、予約ID438の値が「00001h」および「00002h」の場合は、データシンボル437におけるデータ情報の内容は、初期ネゴシエーション処理用のデータであることを表す。具体的には、予約ID438の値が「00001h」の場合、後述する装置の処理性能情報を送信することを表し、予約ID438の値が「00002h」の場合、処理性能情報に基づいて決定されたフォーマットおよび通信条件の決定内容通知を送信することを表す。
なお、これらの場合における処理性能情報、あるいは決定されたフォーマットおよび通信条件は、データシンボル437において、図8(D)に示した、アスキーコードを用いた初期ネゴシエーション処理用プロトコル44の形式で送受信されるようになっている。この初期ネゴシエーション処理用プロトコル44は、動画2次元コードを用いたデータ通信の最大送信速度を表す領域441と、動画2次元コードについて対応可能な最上位フォーマットを表す領域442と、動画2次元コードを用いたデータ通信の送受信時における同期の可否を表す領域443と、画面サイズを表す領域444と、受光解像度を表す領域445とを含む。
具体的には、例えば、ある装置の処理性能情報、あるいは決定されたフォーマットおよび通信条件が、最大送信速度が120シンボル/秒(sps)、対応可能な最上位フォーマットがフォーマットC(ver.2.01)、同期可能、短辺方向の画面サイズが200mm、受光解像度が80ppi(pixel per inch)である場合、(D)のように、処理性能情報、あるいは決定されたフォーマットおよび通信条件は、「SPS=120_VER=201_ASYNC_WIDTH=200_PPI=80」という形式で送受信される。
図9は、動画2次元コードのフォーマットCにおけるシンボルの形状の一例を表すものである。このフォーマットCのシンボル5は、4種類のシンボルの形状から構成されている。この図において、(A)は、同期シンボル51の形状、(B)は、ヘッダシンボル52の形状、(C)は、アンカーシンボル53の形状、(D)は、データシンボル54の形状を表している。
ここで、これらの4種類のシンボルはそれぞれ、以下の用途で使用される。つまり、同期シンボル51は、動画2次元コードにおける先頭のシンボルであることの認識用、ヘッダシンボル52は、後述する全アンカーシンボル数やエラー訂正ハンドシェーク処理用データなどのヘッダ情報を含み、これらヘッダ情報の認識用、アンカーシンボル53はシンボルの受光位置の補正用、データシンボル54はデータ情報用である。
同期シンボル51の形状4は、図6(A)に示したフォーマットAおよびフォーマットBのシンボルの形状と同様、7×7=合計49ドットの白あるいは黒の表示エレメントが配置されたコード部511と、長方形形状の表示エレメントでありコード部511の下部に配置されたロゴマーク部512とから構成される。また、四隅の各4ドット分の領域は、図6(B)に示したフォーマットAおよびフォーマットBのシンボルと同様、それぞれ認識用エリアとなっている。よって、合計49ドットから構成されるコード部511から認識用エリアを除くと、49−4×4=33ドットとなる。
ただし、フォーマットAおよびフォーマットBのコード部41は、認識用エリア411を除いてシンボルごとに任意の白黒パターンが配置されているのに対して、このフォーマットCの同期シンボル51は、その用途が動画2次元コードにおける先頭のシンボルであることを認識するためのみであるので、シンボル全体として常に予め設定された固定パターンが配置されるようになっている。なお、この同期シンボル51の形状は、(A)に示した形状に限られず、先頭のシンボルであることが認識できれば、他の任意の形状にしてもよい。
ヘッダシンボル52の形状は、図6(A)に示したフォーマットAおよびフォーマットBのシンボルの形状とは異なり、7×9=合計63ドットの白あるいは黒の表示エレメントが配置されたコード部521のみから構成される。よって、フォーマットAおよびフォーマットBのシンボルの形状と比べて、データ容量が増加している。また、後述するようにこのコード部521には認識用エリアが存在しないので、フォーマットAおよびフォーマットBのシンボルで使用されていたその分のドット(4×4=16ドット)も任意のパターンとして使用することが可能であり、さらにデータ容量が増加するようになっている。
アンカーシンボル53の形状は、図6(A)に示したフォーマットAおよびフォーマットBのシンボルの形状と同様、7×7=合計49ドットの白あるいは黒の表示エレメントが配置されたコード部531と、長方形形状の表示エレメントでありコード部531の下部に配置されたロゴマーク部532とから構成される。また、図6(A)に示したフォーマットAおよびフォーマットBのシンボルと同様、コード部41内の各ドットは、下記の認識用エリアを除いてシンボルごとに任意の白黒パターンが配置され、ロゴマーク部42は、常に固定のパターンが配置されるようになっている。
データシンボル54の形状は、(B)のヘッダシンボル52の形状と同様、7×9=合計63ドットの白あるいは黒の表示エレメントが配置されたコード部541のみから構成される。また、(B)のヘッダシンボル52の形状と同様、このコード部541には認識用エリアが存在せず、フォーマットAおよびフォーマットBのシンボルの形状と比べて、データ容量が増加している。
図10は、図9のフォーマットCのシンボルにおける各ドットの構成および機能を表すものである。この図において、(A)はアンカーシンボル53、(B)はヘッダシンボル52およびデータシンボル54における各ドットの構成および機能を表したものである。
アンカーシンボル53のコード部531における四隅の各4ドット分の領域は、図6(B)に示したフォーマットAおよびフォーマットBのシンボルと同様、それぞれ認識用エリア533A〜533Dとなっている。よって、合計49ドットから構成されるコード部531の内、49−4×4=33ドットが、任意の白黒パターンとして利用できるようになっている。
また、フォーマットAおよびフォーマットBのシンボルと同様、この認識用エリア533A〜533Dを除いた33ドットの内、9ドット分はCRC用ビット534として、シンボル内のデータのエラー訂正に利用される。よって、最終的に任意のデータビット535として利用できるのは、33−9=24ドット分となる。なお、この24ドット分のデータビット535は、半分の12ドット分の正転データビット535Aと、残り半分の12ドット分の反転データビット535Bとから構成される。
一方、ヘッダシンボル52のコード部521およびデータシンボル54のコード部541は、合計63ドットの内、15ドット分はCRC用ビット522および542として、シンボル内のデータのエラー訂正に利用される。よって、任意のデータビット523および543として利用できるのは、63−15=48ドット分となる。なお、この48ドット分のデータビットは、半分の24ドット分の正転データビット523Aおよび543Aと、残り半分の24ドット分の反転データビット523Bおよび543Bとから構成される。
図11は、図9のフォーマットCのシンボルにおけるデータ構成の一例を表すものである。この図において、(A)〜(D)は、それぞれ、(A)同期シンボル51、(B)ヘッダシンボル52、(C)アンカーシンボル53、(D)データシンボル54のコード部511,521,531,541内において認識用エリアを除いた領域のデータ構成の内訳を表したものである。なお、(A)〜(D)の認識用エリアを除いた領域は、前述のようにそれぞれ、33ビット、63ビット、33ビット、63ビットとなっている。
また、後述するように、動画2次元コードにおいて、(A)〜(D)はそれぞれ、2シンボル、4〜8シンボル、1シンボル、1〜16シンボルがひとまとまりの単位となっており、送受信におけるシンボル欠落(後述するシンボルエラー)防止のために、同期シンボル51およびヘッダシンボル52は常に同一のシンボルが2シンボルずつとなるように構成されている。
なお、アンカーシンボル53の欠落に関しては、このシンボルの用途は各シンボルの受光位置の再確認のみなので、欠落しても問題はない。また、データシンボル54の欠落に関しては、後述するシンボルエラー訂正用データを用いて訂正するようになっており、それでも訂正ができなかった場合には、やはり後述するエラー訂正ハンドシェーク処理により、送信装置側に該当するシンボルを再送信させるようになっている。
図11(A)に示したように、認識用エリアを除いた33ビット分の同期シンボルのデータ構成55は、このシンボルの用途が動画2次元コードにおける先頭のシンボルであることを認識するためのみであるので、データ情報はなしとなっている。
また、図11(B)に示したように、ヘッダシンボル52においては認識用エリアが存在しないので、そのまま63ビット分のデータが利用可能である。よって、ヘッダシンボルのデータ構成56は以下のようになっている。つまり、4〜8シンボルについて共通に、63ビットの内、4ビット分はサブシンボルID561として、15ビット分は前述のようにCRC用ビット522として構成され、残りの44ビット分が任意のデータ領域として構成される。
また、この任意のデータ領域はさらに、最初の2シンボル内においては、20ビット分の全アンカーシンボル数と、24ビット分の予約ID562とから構成され、その後の4シンボル内においては、44ビット分のエラー訂正ハンドシェーク用データ563から構成される。
サブシンボルID561は、このヘッダシンボル52内におけるシンボルの順番(4ビット分あるので、最大で1〜8まで。)を示す識別子であり、これによりヘッダシンボル内の各シンボルを識別することが可能となる。また、CRC用ビット522は、CRCによるシンボル内のエラー訂正に利用されるものである。また、全アンカーシンボル数は、動画2次元コードに含まれるアンカーシンボル53の数を示すものであり、20ビット分あるので、1Mシンボルまで定義することが可能である。
予約ID562およびエラー訂正ハンドシェーク処理用データ563は、後述するエラー訂正ハンドシェーク処理の際に使用される。具体的には、予約ID562はその値に応じて、エラー訂正ハンドシェーク処理用データ563の内容も構成されるようになっている。
ここで、図12は、エラー訂正ハンドシェーク処理用データの詳細を表すものであり、予約ID562とエラー訂正ハンドシェーク処理用データ563の内容との関係を示している。
まず、予約ID562の値が「000000h」の場合は、動画2次元コードにおいて、現在通常のデータ転送が行われていることを表す。また、予約ID562の値が「000003h」〜「FFFFFFh」の場合は、未定義となっている。よって、これらの場合におけるエラー訂正ハンドシェーク処理用データ563は、使用されない。
そして、予約ID562の値が「000001h」および「000002h」の場合は、エラー訂正ハンドシェーク処理用データ563は、エラー訂正ハンドシェーク処理用として使用される。具体的には、予約ID562の値が「000002h」の場合、受信装置側がシンボル内のエラー訂正が不可能であるためデータ転送を不許可とするということを表す。またこの場合、エラー訂正ハンドシェーク処理用データ563の内容は、そのエラー訂正が不可能であるシンボルの位置(どのシンボルからどのシンボルまでがエラー訂正不可能なのか)を表すようになっている。
つまり、図11(C)および(D)において後述するように、アンカーシンボル53に含まれる20ビット分のアンカーシンボルIDと、データシンボル54に含まれる4ビット分のサブシンボルIDとにより(合計24ビット)、動画2次元コードにおける各データシンボルを識別可能なので、これによりエラー訂正が不可能であるシンボルの位置を特定し、送信装置側へ通知するようになっている。このように送信装置側へ通知することにより、送信装置側にエラー訂正が不可能であるシンボル部分のデータを再送信させることが可能となる。
なお、予約ID562の値が「000001h」の場合は、送信装置側がエラー訂正が不可能であるシンボル部分のデータを再送信し、その後受信装置側が該当する部分のデータを受信完了したときに、受信装置側がデータ転送を許可するということを表す。
ここで図11(B)において、ヘッダシンボル52における矢印564で示した最初から3〜4番目のシンボル内のエラー訂正ハンドシェーク処理用データ563は、エラー訂正が不可能である最初のシンボルの位置を表すようになっている。また、矢印565で示した最初から5〜6番目のシンボル内のエラー訂正ハンドシェーク処理用データ563は、エラー訂正が不可能である最後のシンボルの位置を表すようになっている。つまり、エラー訂正ハンドシェーク処理用データ563の44ビットの内、それぞれ上記のように24ビット分がエラー訂正ハンドシェーク処理用として実際に使用されることになる。
次に、図11(C)に示したように、認識用エリアを除いた33ビット分のアンカーシンボルのデータ構成57は、20ビット分はアンカーシンボルID571として、4ビット分はデータシンボルのサブシンボル数572として、残りの9ビット分が前述のようにCRC用ビット534として構成される。
アンカーシンボルID571は、前述の全アンカーシンボル数によって定義された全アンカーシンボルの内の何番目かを示す識別子である。このアンカーシンボルID571と、データシンボル54に含まれる4ビット分のサブシンボルID581とにより、動画2次元コードにおける各データシンボルを識別可能となる。また、CRC用ビット534は、前述のようにCRCによるシンボル内のエラー訂正に利用されるものである。
データシンボルのサブシンボル数572は、1組の単位におけるデータシンボル(前述のように1〜16シンボル)に含まれるサブシンボル数である。これにより、データシンボルに含まれるサブシンボル数を定義することができる。以下、この1組のデータシンボルの単位を、1セクタと称する。
ここで、図13は、図9のフォーマットCにおける動画2次元コードのシンボルの順序構成を表すものである。この図は、時間軸に沿ってシンボルの順序構成を模式的に表したものであり、同期シンボル51をSと、ヘッダシンボル52をHと、アンカーシンボル53をAと、データシンボル54をDとして示している。このフォーマットCにおける動画2次元コードのシンボルは、前述のように時間軸に沿って動画2次元コードの最初から、2シンボルの同期シンボル、4〜8シンボルのヘッダシンボル、(1シンボルのアンカーシンボル、1セクタのデータシンボル)、(1シンボルのアンカーシンボル、1セクタのデータシンボル)、…という順序構成になっている。つまり、1シンボルのアンカーシンボルと1セクタのデータシンボルとが組みになって繰り返し構成されるようになっている。
このようなシンボルの順序構成となっているので、各アンカーシンボル53に含まれるデータシンボルのサブシンボル数572により、各セクタ単位のデータシンボル54のサブシンボル数を別個に設定することが可能となる。
次に、図11(D)に示したように、データシンボル54においては、(B)のヘッダシンボル52と同様、認識用エリアが存在しないので、そのまま63ビット分のデータが利用可能である。よって、データシンボルのデータ構成58は以下のようになっている。つまり、1〜16シンボルについて共通に、63ビットの内、4ビット分はサブシンボルID581として、44ビット分が任意のデータ情報として構成され、残りの15ビット分は前述のようにCRC用ビット542として構成される。
なお、図中の矢印583で示した2シンボルのように、4ビット分のサブシンボルIDを除いた59ビット分の領域は、シンボルエラー訂正用データ582として使用される場合もある。このシンボルエラー訂正用データ582は、動画2次元コードを用いたコンテンツデータの送受信時にデータシンボル自体が欠落してしまったときに、このシンボルエラーを訂正する役割を担うデータである。よって、送受信時にデータシンボル自体の欠落が生じなかったときは、上記のようにデータシンボル54のデータ構成58は、全てのシンボルについて、サブシンボルID581、任意のデータ情報およびCRC用ビット542から構成される。
なお、このフォーマットCにおいて利用可能な最大シンボル数は、前述のようにヘッダシンボル52に含まれる20ビットの全アンカーシンボル数および各セクタのアンカーシンボル53に含まれるデータシンボルのサブシンボル数572から算出され、(2の20乗)×(2の4乗)=16Mシンボルである。また、利用可能な最大データ容量は、前述のように各データシンボル54には44ビット分の任意のデータ情報が確保されているので、上記のシンボルエラー訂正用データ582がないものとすると、16Mシンボル×44ビット=約738Mビット=約92Mバイトとなり、従来のバーコードや2次元コード(最大で約数Kバイト程度)、さらには前述のフォーマットA(2.5Mバイト)と比べても、格段に大容量のデータを利用することが可能となる。
また、最大データ転送速度は、フォーマットAのときと同様に例えば、1フレームに対して1つのシンボルパターンとし、1秒当たりのシンボルのパターン数を60(シンボル/秒)とした場合、60(シンボル/秒)×44(ビット/シンボル)×(16/17)=約2485bps(ビット/秒)となり、1200bpsであるフォーマットAと比べても、約2倍のデータ転送速度を実現することが可能である。なお、計算式中の(16/17)は、1セクタあたり最大で、17シンボルの内16シンボルのデータシンボル54が含まれている(残りの1シンボルは、アンカーシンボル53)ことを表すものである。
なお、本実施の形態における動画2次元コードのフォーマットに係るシンボルの形状およびデータ構成は、以上のような形態に限られるものではなく、他の形態から構成されていてもよい。
次に、以上のような構成の通信システムにおいて、動画2次元コードを用いたコンテンツデータの送信および受信動作を説明する。
図14は、図1の通信システムにおいて表示装置1が動画2次元コードを用いてコンテンツデータを送信する処理を表すものである。なお、入力端末2が送信する処理は表示装置1の場合と同様であるので、説明を省略する。
まず、図示しないTVチューナやネットワーク接続部から供給された種々のコンテンツデータDに基づいて、画像信号生成部141が1画面分の画像信号を生成し、シンボル生成部142へ出力する。つまり、シンボル生成部142は、動画2次元コードにおける各シンボルを生成するためのコンテンツデータを取得する(ステップS101)。
次に、シンボル生成部142は、動画2次元コードに含むデータシンボル数を算出し、取得したコンテンツデータのデータを算出したデータシンボル数に応じて分割する(ステップS102)。データシンボル数の算出は、例えば、コンテンツデータのデータ容量と、その動画2次元コードのフォーマットに応じて算出される。具体的には、例えば前述のフォーマットAおよびフォーマットBにおける各データシンボルのデータ容量は24ビット、またフォーマットCにおける各データシンボルのデータ容量は44ビットであり、これらのデータ容量に基づいてデータシンボル数が算出される。
シンボル生成部142は、コンテンツデータに基づいて動画2次元コードに含まれるヘッダ情報(フォーマットAおよびフォーマットBのスタートシンボルおよびヘッダシンボル、あるいはフォーマットCのヘッダシンボルに含まれる情報)を生成する(ステップS103)。また、シンボル生成部142はCRC用のデータなども算出し、これらヘッダ情報やCRC用のデータをコンテンツデータに付加し、1画面ごとのシンボルを生成する(ステップS104)。なお、このようにして生成するシンボルは、1フレームごとに異なるシンボルのパターンであるとは限らず、数フレームに対して1つのシンボルのパターンであってもよい。
次に、表示信号生成部143は、画像信号生成部141から出力される1画面ごとの画像信号と、シンボル生成部142から出力される1画面ごとのシンボルとを合成し、受発光部11において表示する1画面ごとの表示信号を生成する(ステップS105)。
そして受発光制御部110および受発光部11は、表示信号生成部143から出力される表示信号に基づいて、表示信号に応じた、1フレーム分の図形や文字などの画像およびシンボル生成部142において生成された動画2次元コードの各シンボルを表示し、コンテンツデータを送信する(ステップS106)。このようにして、順次動画2次元コードのシンボルを表示していく。この動画2次元コードに含まれる全シンボルが表示完了するまではステップS104〜S106までの処理が繰り返され、表示完了した場合は、動画2次元コードを用いてコンテンツデータを送信する処理が終了となる(ステップS107)。
次に図15は、図1の通信システムにおいて表示装置1がフォーマットAおよびフォーマットBの動画2次元コードを用いてコンテンツデータを受信する処理を表すものである。なお、入力端末2が受信する処理は表示装置1の場合と同様であるので、説明を省略する。
まず、記憶部151は、受発光部11が受光した受光信号を1画面ごと(1フレームごと)の受光信号に再構成し、フレームメモリに格納して保持する。つまり、まずこのようにして受光信号を取得する(ステップS201)。
次に、画像処理部152は、記憶部151から出力される1画面分の受光信号を画像処理して動画2次元コードの各シンボルを抽出する(ステップS202)。シンボルの抽出方法は、まず図6に示した、フォーマットAおよびフォーマットBのシンボル4における長方形形状のロゴマーク部42を、その長方形形状および縦横の長さ比などから検出し、次にコード部41に含まれる認識用エリア411A〜411Dの形状から検出することにより行う。
デコード部153は、画像処理部152から出力されるシンボルのデータをデコードし(ステップS203)、デコードデータに基づいてCRCを実行し、シンボル内のデータのエラー訂正を行う(ステップS204)。次に、デコード部153はシンボル数の確認を行い(ステップS205)、また、スタートシンボル435およびヘッダシンボル436に含まれるヘッダ情報を取得済みであるかどうか判断する(ステップS206)。
ここで、ヘッダ情報をまだ取得していない場合には、デコード部153は、ステップS201〜S204で読み取った現在のシンボルが、スタートシンボル435あるいはヘッダシンボル436であるかどうかを判断する(ステップS211)。
ヘッダシンボル436である場合、デコード部153はデコードしたデータを情報取得部154に出力して蓄積させ、情報取得部154はそれを復元してヘッダシンボル436に含まれるヘッダ情報(スタートシンボル435に含まれる全シンボル数、ならびにヘッダシンボル436に含まれるファイル名および予約ID438など。)を取得する(ステップS212)。その後は、ステップS201に戻って次のフレームの受光信号を読み取る。また、該当するシンボルでない場合にも、これらのシンボルを読み取るまでステップS201〜S206およびステップS211の処理を繰り返す。
そして制御部(図示せず)がこのヘッダ情報を情報取得部154から取得することにより、例えば初期ネゴシエーション処理用のデータ(フォーマットBにおける予約ID438)などから、現在のデータ転送の状況(通常のデータ転送時なのか、あるいは初期ネゴシエーション処理時であるのかといった情報)を把握することが可能となる。
ステップS206においてヘッダ情報を取得済みである場合には、デコード部153は、読み取ったシンボルが重複していないかどうかを判断する(ステップS207)。もし同一のシンボルを重複して読み取っていた場合には、重複したデータを読み取らず、ステップS201に戻って次のフレームの受光信号を読み取る。なお、シンボルが重複しているかどうかは、例えば、シンボルID432により判断される。
ステップS207において読み取ったシンボルが重複していないと判断した場合、情報取得部154は、デコード部153から出力されるデコードデータを蓄積していく(ステップS208)。次に情報取得部154は、全シンボルを読み取り完了したかどうかを判断する(ステップS209)。読み取り完了していない場合には、ステップS201に戻って次のフレームの受光信号を取得する。読み取り完了した場合には、情報取得部154がその蓄積されたデコードデータに基づいてコンテンツデータを復元して取得し(ステップS210)、フォーマットAおよびフォーマットBの動画2次元コードを用いてコンテンツデータを受信する処理が終了となる。
次に図16は、図1の通信システムにおいて表示装置1がフォーマットCの動画2次元コードを用いてコンテンツデータを受信する処理を表すものである。なお、入力端末2が受信する処理は表示装置1の場合と同様であるので、説明を省略する。
まず記憶部151は、受発光部11が受光した受光信号を1画面ごとの受光信号に再構成し、フォーマットAおよびフォーマットBの場合(図15のステップS201)と同様にして受光信号を取得する。そして画像処理部152が画像処理して動画2次元コードの各シンボルを抽出し、そのシンボルの形状などから、読み取ったシンボルが同期シンボル51かどうかを判断する(ステップS221)。同期シンボル51でなかった場合には、同期シンボルを読み取るまでこの処理を繰り返す。
読み取ったシンボルが同期シンボル51であった場合、画像処理部152はその抽出した同期シンボルの形状などから、シンボルを送信装置側の受発光部のどの位置から読み取ればよいのかといった、シンボルの受光位置を確定させる処理を行う(ステップS222)。これにより受信装置側は、正確にシンボルを読み取ることが可能となる。
次に、記憶部151および画像処理部152は、ステップS221と同様にして次のシンボルを読み取り、その抽出したシンボルをデコード部153へ出力する。そしてデコード部153は、このシンボルをフォーマットAおよびフォーマットBの場合(ステップS203〜S204)と同様にデコード処理およびCRCの実行を行い、読み取ったシンボルがヘッダシンボル52であるかを判断する(ステップS223)。ヘッダシンボル52でなかった場合には、ヘッダシンボル52を読み取るまでこの処理を繰り返す。
読み取ったシンボルがヘッダシンボル52であった場合、ヘッダシンボル52に含まれるヘッダ情報(全アンカーシンボル数、予約ID562およびエラー訂正ハンドシェーク処理用データ563など)を取得する(ステップS224)。そして情報取得部154がこのヘッダ情報を取得することにより、例えば予約ID562およびエラー訂正ハンドシェーク処理用データ563などから、現在のデータ転送の状況(通常のデータ転送時なのか、あるいはエラー訂正ハンドシェーク処理時であるのかといった情報)を把握することが可能となる。
次に、記憶部151および画像処理部152およびデコード部153は、ステップS223と同様にして次のシンボルを読み取り、このシンボルがアンカーシンボル53であるかを判断する(ステップS225)。
アンカーシンボル53であった場合には、アンカーシンボルを用いてシンボルの受光位置の再確認による補正を行い(ステップS226)、次のデータシンボル54の読み取りを行う(ステップS227)。一方、アンカーシンボル53ではなかった場合(前述のように、アンカーシンボル53は1セクタに対して1シンボルのみなので、読み取り時にシンボルを欠落してしまう場合が考えられる。)、あるいはデコード部153がアンカーシンボルであると認識できなかった場合には、シンボル位置の再確認を行わずにそのまま次のデータシンボル54の読み取りを行う。アンカーシンボル53の用途は各シンボルの受光位置の再確認による補正のみであり、この位置補正はセクタごとに行うので、たとえ1回くらいできなくても問題ないからである。
ここで、このアンカーシンボル53による位置補正は、フォーマットAおよびフォーマットBの場合(ステップS202)と同様に、アンカーシンボル53の形状における長方形形状のロゴマーク部532を、その長方形形状および縦横の長さ比などから検出し、次にコード部531に含まれる認識用エリア533A〜533Dから検出することにより行う。これにより受信装置側は、各セクタ単位の頻度でシンボルの位置ずれなどを防止し、より正確にシンボルを読み取ることが可能となる。
ステップS227においてデータシンボル54を読み取った後は、フォーマットAおよびフォーマットBの場合(ステップS203〜S204)と同様に、デコード部153がデコード処理およびCRCの実行を行う。そしてシンボル数の確認を行い、もし同一のシンボルを重複して読み取っていた場合には、重複したデータを削除する(ステップS228)。シンボルが重複しているかどうかは、例えば、アンカーシンボルID571やサブシンボルID581により判断される。
次に、1セクタのデータシンボル54の読み取りが終了したかどうかを判断する(ステップS229)。読み取りが終了していない場合には、ステップS227へ戻って次のデータシンボルを読み取る。読み取りが終了した場合において、次にシンボルエラー(読み取り時におけるデータシンボル54自体の欠落)が生じていたときには、このシンボルエラーの訂正を行う(ステップS230)。データシンボル54のシンボルエラーの訂正方法に関しては、まずはシンボルエラー訂正用データ583を用いて訂正し、それでも訂正ができなかった場合には、後述するエラー訂正ハンドシェーク処理により、送信装置側に該当するデータシンボルを再送信させる。
なお、1セクタのデータシンボル54の読み取りが終了したかどうかは、サブシンボルID581およびセクタごとの各アンカーシンボルに含まれる、データシンボルのサブシンボル数572により判断される。
次にフォーマットAおよびフォーマットBの場合(ステップS208〜S209)と同様、情報取得部154がデコードデータを蓄積していき(ステップS231)、情報取得部154が全シンボルを読み取り完了したかどうかを判断する(ステップS232)。読み取り完了していない場合にはステップS225に戻り、次のセクタのアンカーシンボル53の受光信号を取得する。読み取り完了した場合には、情報取得部154がコンテンツデータを復元して取得し(ステップS233)、フォーマットCの動画2次元コードを用いてコンテンツデータを受信する処理が終了となる。
次に、以上のような動画2次元コードを用いてコンテンツデータを送受信する動作に基づいて、本実施の形態の通信システムにおける初期ネゴシエーション処理およびエラー訂正ハンドシェーク処理について説明する。
ここで、初期ネゴシエーション処理とは、送信装置および受信装置との間で実際にコンテンツデータのデータ通信を行う前にお互いに装置の処理性能情報を送受信し、この処理性能情報に基づいて最適なフォーマットおよび通信条件を決定し、この決定された条件に基づいて実際にデータ通信を行うようにする処理のことである。
また、エラー訂正ハンドシェーク処理とは、データ通信時において受信装置側が、CRC用ビットのデータではシンボル内のエラー訂正が不可能となった場合に、送信装置側にこのエラー訂正が不可能であるシンボルを再送信させて正常なコンテンツデータのデータの受信を可能とする処理のことである。
図17は、上記のように初期ネゴシエーション処理において使用される、図1の表示装置1および入出力端末2の処理性能情報の一例を表すものである。この処理性能情報6は、例えば、対応可能な最上位フォーマット61と、最大送信速度62と、画面サイズ63と、受光解像度64と、同期の可否65とを含む。また、これらの処理性能情報は、例えば図6(C)に示した初期ネゴシエーション処理用プロトコルの形式で、装置間を送受信される。
対応可能な最上位フォーマット61は、文字通りその装置が対応可能な動画2次元コードの最上位のフォーマットを表し、各表示装置に固有のものである。この対応可能な最上位フォーマット61は、例えば、フォーマットC(ver.2.01)などが挙げられる。なお、図17において表示装置1における対応可能な最上位フォーマット61がフォーマットD(ver.2.03)となっており、前述のフォーマットA〜Cとは異なるフォーマットを挙げているが、便宜的にフォーマットA〜Cよりも上位の仮想フォーマットであるものとする。
最大送信速度62は、その装置が動画2次元コードを用いてコンテンツデータを送信可能な最大速度を表し、図17に示したように例えば、120(シンボル/秒)などとなる。また、画面サイズ63は、その装置が備える受発光部が表示および受光することが可能な画面サイズ(画面の短辺方向の実寸サイズ)を表し、例えば200mmなどとなる。受光解像度64は、その装置が備える受発光部が受光することが可能な解像度を表し、例えば72ppi(pixel per inch)などとなる。
また、同期の可否65は、その装置が、他の装置における動画2次元コードを用いたコンテンツデータの送受信動作に対して、同期することが可能かどうかということを表す。この場合、図17に示したように表示装置1および入出力端末2はいずれも非同期となっているが、同期可能な装置の場合、後述するようにより効率的にデータ転送を行うことが可能となる。
なお、本実施の形態における表示装置1および入出力端末2の処理性能情報は、これらの情報に限られるものではなく、これらの情報に代えて(またはこれらに加えて)、他の情報を含んでいてもよい。
図18は、図1の通信システムにおける表示装置1および入出力端末2の間の初期ネゴシエーション処理を表すものである。ここで、表示装置1が動画2次元コードを用いたコンテンツデータの送信装置側、入出力端末2が動画2次元コードを用いたコンテンツデータの受信装置側であり、また、表示装置1および入出力端末2処理性能情報は、図17に示した情報であるものとする。
まず、送信装置側である表示装置1は、動画2次元コードを用いて、図15に示したような自装置の処理性能情報を受信装置側である入出力端末2へ送信する(ステップS301)。このときの動画2次元コードのフォーマットは、初期ネゴシエーション処理用であり、各装置が対応可能であるフォーマットB(ver.1.01)に設定する。また、この処理性能情報の送信速度は、お互いの装置同士が同期可能かどうかはこの時点では不明なので、サンプリング定理およびNTSC方式の60(フレーム/秒)に基づいて、30(シンボル/秒)に設定し、60(シンボル/秒)以上の最大送信速度62を有する装置であればこの処理性能情報を受信可能となるようにする。図17によれば、入出力端末2の最大送信速度62は、80(シンボル/秒)であるので、入出力端末2はこの処理性能情報を受信可能であり、この処理性能情報を受信する(ステップS302)。
この際、送信装置側である表示装置1は、自装置の処理性能情報を受信装置側である入出力端末2に対して送信する代わりに、入出力端末2に対して処理性能情報の送信要求をするようにしてもよい。つまりこの処理性能情報の送信要求は、上記のように自装置の処理性能情報を送信することにより相手側の処理性能情報を受信する場合を含むものである。以下の場合も同様である。
次に、入出力端末2も同様にして、動画2次元コードを用いて自装置の処理性能情報を表示装置1へ送信する(ステップS303)。このときの動画2次元コードのフォーマットも同様に、初期ネゴシエーション処理用のフォーマットB(ver.1.01)に設定する。また、この処理性能情報の送信速度については、入出力端末2は、表示装置1の最大送信速度62が120(シンボル/秒)であることを認識し、自装置の最大送信速度62は、80(シンボル/秒)であることから、サンプリング定理に基づいて自装置が受信可能な最大送信速度である40(シンボル/秒)に設定する。
表示装置1の最大送信速度62は120(シンボル/秒)であるので、この処理性能情報を受信可能であり、処理性能情報を受信する(ステップS304)。次に表示装置1は、これら自装置および入出力端末2の処理性能情報に基づいて、以後の動画2次元コードを用いた最適なフォーマットおよび通信条件を決定する(ステップS305)。
具体的には例えば、図17を参照すると、対応可能な最上位フォーマット61に関しては、表示装置1がフォーマットD(ver.2.03)、入出力端末2がフォーマットC(ver.2.01)なので、下位のフォーマットに合わせてフォーマットC(ver.2.01)と設定する。最大送信速度62に関しては、この場合、同期の可否65により表示装置1および入出力端末2のいずれも非同期なので、受信装置側である入出力端末2の80(シンボル/秒)に基づいて、サンプリング定理より40(シンボル/秒)と設定する。また、画面サイズ63および受光解像度64に関しては、受信装置側である入出力端末2および送信装置側である表示装置1のこれらの情報に基づいて、表示するシンボルのサイズを設定する。このようにして、最適なフォーマットおよび通信条件が決定される。
そして表示装置1は、このフォーマットおよび通信条件の決定内容通知を、入出力端末2へ送信する(ステップS306)。なお、このときはまだ入出力端末2はこの決定内容通知を受信する前であり、どのようなフォーマットおよび通信条件に基づいて受信すればよいか不明であるので、引き続きフォーマットB(ver.1.01)および40(シンボル/秒)の設定で送信する。
入出力端末2は、このフォーマットおよび通信条件の決定内容通知を受信し(ステップS307)、どのようなフォーマットおよび通信条件に基づいて受信すればよいかを認識する。そして表示装置1は、この決定したフォーマットおよび通信条件で、動画2次元コードを用いたデータ転送を開始する(ステップS308)。この場合、決定したフォーマットおよび通信条件は上記のように、フォーマットはフォーマットC(ver.2.01)、送信速度は40(シンボル/秒)である。そして入出力端末2はこの動画2次元コードを用いたデータを受信し、初期ネゴシエーション処理が終了となる。以後、この決定されたフォーマットおよび通信条件でデータ転送が行われる。
次に図19は、図1の通信システムにおける表示装置1および入出力端末2の間のエラー訂正ハンドシェーク処理を表すものである。図18に示した初期ネゴシエーション処理において決定されたフォーマットおよび通信条件でデータ転送を行っていたときに、受信装置側である入出力端末2において、CRC用ビットのデータではシンボル内のエラー訂正が不可能となった場合で説明するものとする。
まず、図18のステップS308〜S309と同様に、表示装置1が、初期ネゴシエーション処理において決定されたフォーマットおよび通信条件(フォーマットはフォーマットC(ver.2.01)、送信速度は40(シンボル/秒))で動画2次元コードを用いたデータ転送を行い(ステップS311)、入出力端末2はそのデータを受信する(ステップS312)。そして入出力端末2は、CRC用ビットのデータではエラー訂正不能であるデータシンボル内のエラーを認識する(ステップS313)。
このとき、入出力端末2は、図12に示した予約ID562を「000002h(データ転送不許可)」に設定し、同時に図11(B)で示したヘッダシンボル52におけるエラー訂正ハンドシェーク用データ563に、そのエラー訂正が不可能であるシンボルの位置(どのシンボルからどのシンボルまでがエラー訂正不可能なのか)を設定する。つまり、前述のようにヘッダシンボル52における矢印564で示した最初から3〜4番目のシンボル内のエラー訂正ハンドシェーク処理用データ563において、エラー訂正が不可能である最初のシンボルの位置を設定し、矢印565で示した最初から5〜6番目のシンボル内のエラー訂正ハンドシェーク処理用データ563において、エラー訂正が不可能である最後のシンボルの位置を設定する。
このようにして入出力端末2は、エラー訂正ハンドシェーク処理用データを設定した動画2次元コードを用いてデータ転送不許可通知を表示装置1へ送信する(ステップS314)。なお、フォーマットはエラー訂正ハンドシェーク処理用のフォーマットであるフォーマットC(ver.2.01)、送信速度は引き続き40(シンボル/秒)で送信する。
次に表示装置1は、このデータ転送不許可通知を受信し(ステップS315)、これにより、入出力端末2においてエラー訂正が不可能であるシンボルが存在すること、およびこれらのシンボルの位置を特定して認識する。そして表示装置1は、これらのエラー訂正が不可能であるデータシンボルのデータを、入出力端末2へ再転送する(ステップS316)。なおこのとき、元のフォーマットおよび通信条件を引き続き、フォーマットはフォーマットC(ver.2.01)、送信速度は40(シンボル/秒)で送信する。
入出力端末2は、これらのエラー訂正が不可能であるデータシンボルのデータを受信する(ステップS317)。そして該当する全てのデータを受信したことを認識すると(ステップS318)、表示装置1へデータ転送許可通知を送信する(ステップS319)。具体的には、図12に示した予約ID562を「000001h(データ転送許可)」に設定した動画2次元コードを用いて送信する。この場合も、フォーマットはエラー訂正ハンドシェーク処理用のフォーマットであるフォーマットC(ver.2.01)、送信速度は引き続き40(シンボル/秒)で送信する。
表示装置1はこのデータ転送許可通知を受信し(ステップS320)、入出力端末2においてエラー訂正が不可能であるシンボルが存在しなくなったことを認識する。そして表示装置1は、元のフォーマットおよび通信条件(フォーマットはフォーマットC(ver.2.01)、送信速度は40(シンボル/秒))で、通常のデータ転送を再開する(ステップS321)。入出力端末2はこの再開されたデータを受信していき(ステップS322)、エラー訂正ハンドシェーク処理が終了となる。
以上のように、本実施の形態の表示装置、通信システムおよび通信方法によれば、表示装置1および入出力端末2が動画像の表示と光の受光とが可能な受発光部11,21を備え、送信装置側である表示装置1において動画2次元コードに関する複数種類のフォーマットの中から通信に用いる最適なフォーマットを決定し、このフォーマットに基づいてコンテンツデータを含む動画2次元コードを生成し、受発光部11および受発光部21を利用して動画2次元コードの表示および読み取りを行うことにより、表示装置1と入出力端末2との間でデータ通信を行うようにしたので、データ通信の方式に関しての互換性が確保されることにより使用可能なハードウェアやソフトウェアがあまり固定化されず、汎用性を確保しつつ大容量のデータ通信を行うことが可能となる。
また、本実施の形態の表示装置、通信システムおよび通信方法によれば、表示装置1と入出力端末2との間で実際にコンテンツデータのデータ通信を行う前に、表示装置1が入出力端末2から処理性能情報を示す動画2次元コードを受信し、この処理性能情報に基づいて実際の通信に用いるフォーマットを決定するようにしたので、事前に入出力端末2の処理性能を考慮してフォーマットを決定することができ、相手装置に応じて確実にかつ効率的にデータ通信を行うことが可能となる。
また、本実施の形態の表示装置、通信システムおよび通信方法によれば、この処理性能情報に通信条件として、最大送信速度を示す情報、同期の可否を示す情報、画面サイズを示す情報、受光解像度を示す情報などを含み、表示装置1においてこれらの通信条件をも考慮してデータ通信を行うようにしたので、これらの情報に基づいてさらに確実にかつ効率的にデータ通信を行うことが可能となる。
また、本実施の形態の表示装置、通信システムおよび通信方法によれば、実際にコンテンツデータのデータ通信を行う前の処理性能情報の送受信を、互いに対応可能な最下位のフォーマットおよび通信条件により行うようにしたので、確実に処理性能情報の送受信を行うことができ、確実に最適なフォーマットおよび通信条件を決定することが可能となる。
さらに、本実施の形態の表示装置、通信システムおよび通信方法によれば、データ通信時において受信装置側である入出力端末2がシンボル内のエラー訂正が不可能となった場合に、エラー訂正が不可能であるシンボルが存在することおよびこれらのシンボルの位置を、動画2次元コードを用いて送信装置側である表示装置1へ送信し、表示装置1がこのエラー訂正が不可能であるシンボルを入出力端末2へ再送信するようにしたので、データ通信における信頼性を向上させることが可能となる。
なお、本実施の形態においては、送信対象の情報が受発光部に表示されている図形や文字などの情報である例で説明したが、受発光部に表示されている内容と、送信対象の情報とが別物であってもよい。例えば、表示されている内容の解説文などの文字情報や、表示されている内容に関する秘密情報(受発光部には表示したくない情報)などを送信対象情報としてもよい。このようにした場合、例えば、表示装置1の受発光部11に表示されている図形画像を視聴しながら、その図形画像の解説文を入出力端末2の受発光部21上で視聴したり、その図形画像に関する秘密情報を入出力端末2上で取得するといったことが可能となる。
[第2の実施の形態]
次に、本発明の第2の実施の形態について説明する。
上記第1の実施の形態においては、送信装置側である表示装置1および受信装置側である入出力端末2がいずれも非同期の装置である場合の通信システムについて説明したが、本実施の形態では、送信装置側である表示装置が同期可能な装置である場合の通信システムについて説明する。なお、本実施の形態に係る通信システムの全体構成、ならびに受発光セルの配置構成および回路構成は、第1の実施の形態における図1〜図3を援用する。
図20は、本実施の形態に係る表示装置1および入出力端末2における処理性能情報の一例を表すものである。この図は、第1の実施の形態における図17に対応するものであり、重複する部分については適宜説明を省略する。この処理性能情報6は、例えば、対応可能な最上位フォーマット61と、最大送信速度62と、画面サイズ63と、受光解像度64と、同期の可否65とを含む。第1の実施の形態における図17との違いは、表示装置1が同期可能な装置になっている点である。
なお、本実施の形態における表示装置1および入出力端末2の処理性能情報も、第1の実施の形態と同様、これらの情報に限られるものではなく、これらの情報に代えて(またはこれらに加えて)、他の情報を含んでいてもよい。
図21は、本実施の形態に係る表示装置1および入出力端末2の間の初期ネゴシエーション処理を表すものである。この図は、第1の実施の形態における図18に対応するものであり、重複する部分については適宜説明を省略する。ここで、第1の実施の形態と同様、表示装置1が動画2次元コードを用いたコンテンツデータの送信装置側、入出力端末2が動画2次元コードを用いたコンテンツデータの受信装置側であり、また、表示装置1および入出力端末2処理性能情報は、図20に示した情報であるものとする。
まず、送信装置側である表示装置1は、図20に示したような自装置の処理性能情報を受信装置側である入出力端末2へ送信し(ステップS401)、入出力端末2はこの処理性能情報を受信する(ステップS402)。次に、入出力端末2も同様にして、自装置の処理性能情報を表示装置1へ送信し(ステップS403)、表示装置1はこの処理性能情報を受信する(ステップS404)。表示装置1は、これら自装置および入出力端末2の処理性能情報に基づいて、動画2次元コードを用いた最適なフォーマットおよび通信条件を決定する(ステップS405)。
具体的には例えば、図20を参照すると、第1の実施の形態の場合と同様に、フォーマットに関しては、フォーマットC(ver.2.01)と設定する。画面サイズ63および受光解像度64に関しては、受信装置側である入出力端末2および送信装置側である表示装置1のこれらの情報に基づいて、表示するシンボルのサイズを設定する。
送信速度に関しては、本実施の形態の場合、同期の可否65により表示装置1が同期可能なので、値が小さい方の80(シンボル/秒)に同期することが可能となり、80(シンボル/秒)と設定する。なお、この表示装置1が入出力端末2における受信動作に対して同期をかける方法としては、例えば入出力端末2の処理性能情報に含まれる最大送信速度62の情報に基づいて、PLL(Phase Locked Loop)回路などを用いてフレームレートを変化させ、同期をかける方法などが挙げられる。このようにして、第1の実施の形態の場合(40(シンボル/秒))と比べて動画2次元コードの送信速度を向上することが可能となり、より効率的にデータ転送を行うことが可能となる。
次に表示装置1は、このフォーマットおよび通信条件の決定内容通知を、入出力端末2へ送信する(ステップS406)。入出力端末2は、このフォーマットおよび通信条件の決定内容通知を受信し(ステップS407)、どのようなフォーマットおよび通信条件に基づいて受信すればよいかを認識する。そして表示装置1は、この決定したフォーマットおよび通信条件で、動画2次元コードを用いたデータ転送を開始する(ステップS408)。この場合、決定したフォーマットおよび通信条件は上記のように、フォーマットはフォーマットC(ver.2.01)、送信速度は80(シンボル/秒)である。そして入出力端末2はこのデータを受信し、初期ネゴシエーション処理が終了となる。以後、この決定されたフォーマットおよび通信条件でデータ転送が行われる。
なお、本実施の形態におけるエラー訂正ハンドシェーク処理は、図19に示した第1の実施の形態におけるエラー訂正ハンドシェーク処理と同様であるので、説明を省略する。第1の実施の形態の場合と異なるのは、上記のように初期ネゴシエーション処理において決定されたフォーマットおよび通信条件が、送信速度に関して80(シンボル/秒)であるので、エラー訂正ハンドシェーク処理もこの送信速度で行われる点である。
以上のように、本実施の形態の表示装置、通信システムおよび通信方法によれば、送信装置側であり同期可能な装置である表示装置1が、動画2次元コードを用いてデータ通信を行う際に、同期をかけて受信装置側の入出力端末2へデータ転送するようにしたので、第1の実施の形態の効果に加え、データの送信速度を向上させることができるので、より効率的にデータ通信を行うことが可能となる。
なお、本実施の形態においては、送信装置側である表示装置1が同期可能な装置の場合の例で説明したが、逆に、受信装置側である入出力端末2が同期可能な装置の場合においても、同期をかけてデータの送信速度を向上させることが可能である。この場合、同期をかけることができるのは、送信装置側あるいは受信装置側であるかを問わず、最大送信速度62の値が大きい方の装置である。よって、図17および図20に示した第1および第2の実施の形態の場合とは逆に、送信装置側である表示装置1の最大送信速度が80(シンボル/秒)、受信装置側である入出力端末2の最大送信速度が120(シンボル/秒)である場合の例で説明する。
この場合、図21を参照にして説明すると、受信装置側である入出力端末2は、表示装置1の処理性能情報を受信し(ステップS402)、表示装置1の最大送信速度が80(シンボル/秒)であり、自装置の最大送信速度の値の方が大きいことを認識する。よって、この時点で同期をかけることが可能なので、自装置の処理性能情報を、80(シンボル/秒)で表示装置へ送信する(ステップS403)。このようにして、これ以後、送信速度に関してはこの速度でデータ通信が行われるようになる。
[第3の実施の形態]
次に、本発明の第3の実施の形態について説明する。
上記第1および第2の実施の形態においては、受信装置側が動画2次元コードを用いたコンテンツデータの送受信が可能な入出力端末2である場合の通信システムについて説明したが、本実施の形態では、受信装置側が動画2次元コードを用いたコンテンツデータの受信のみが可能な入力端末8である場合の通信システムについて説明する。
図22は、本発明の第3の実施の形態に係る通信システムの全体構成を表すものである。
この図において、第1の実施の形態における図1に示した構成要素と同一の構成要素には同一の符号を付し、重複する部分については適宜説明を省略する。この通信システムは、所定の図形や文字などの動画像を表示する機能を有する表示装置1と、所定の情報の入力機能のみを有する入力端末8とから構成される。ただし、これら表示装置1および入力端末8は、第1および第2の実施の形態の場合と同様、これらの機能を備えていれば、他の種類(例えばCDプレーヤ、パーソナルコンピュータ等)の装置から構成されていてもよい。
入力端末8は、入出力端末2と同様、例えば有機または無機のELディスプレイやLCDなどから構成される表示部81と、動画2次元コードのシンボルを読み取ることが可能な受光部82と、これら入力端末本体と受光部82とを繋ぐコード83とを備える。第1および第2の実施の形態における入出力端末2の受発光部21と異なるのは、この表示部81は所定の図形や文字などの動画像を表示する機能のみを有し、上記のように動画2次元コードのシンボルを受光する機能を有するのは受光部82であり、さらに動画2次元コードを用いたコンテンツデータの受信のみが可能である点である。
ここで、表示装置1および入力端末8は、本発明における「第1の表示装置」および「第2の表示装置」の一具体例に対応するものである。
図23は、図22の通信システムにおける動画2次元コードを用いた通信状況の一例を斜視図で表すものである。第1の実施の形態における図4に示した構成要素と同一の構成要素には同一の符号を付し、重複する部分については適宜説明を省略する。
図のように、ユーザは例えば、表示装置1が備える受発光部11に表示されているシンボル13Aの領域付近に、入力端末8が備える受光部82を接近させることで、矢印Yで示したように、シンボル13Aを介してコンテンツデータを直感的に受信することができるようになっている。これにより、表示装置1と入力端末8との間で、動画2次元コードに含まれる種々のコンテンツデータを容易に共有することが可能となる。第1および第2の実施の形態の場合と異なるのは、受光部82が、動画2次元コードのシンボルの受光のみが可能である点である。
図24は、図22の入力端末8における機能構成の一例を表すものである。本実施の形態における入力端末8の機能構成は、図3に示した第1の実施の形態における表示装置1の機能構成と基本的に同様であるので、重複する部分については適宜説明を省略する。この入力端末8は、所定の図形や文字などの動画像を表示する機能のみを有する表示機能部84と、動画2次元コードを用いたコンテンツデータの受信機能を有する受信機能部85と、これら表示機能部84および受信機能部85に対する制御機能を有する制御部(図示せず)とを備える。
また、表示機能部84は、画像信号生成部841、表示制御部844および表示部81を有する。一方、受信機能部85は、受光部82、受光制御部855、記憶部851、画像処理部852、デコード部853および情報取得部854を有する。
画像信号生成部841は、例えば図示しないTVチューナやネットワーク接続部などから供給されるコンテンツデータに基づいて、例えば1画面ごとに表示するための画像信号を生成する。このようにして生成した1画面ごとの画像信号は、表示信号生成部843へ出力される。
表示制御部844は、画像信号生成部841から出力される画像信号に基づいて、表示部81において画像信号に応じた図形や文字などの動画像を表示するための駆動動作を行う。なお、この表示制御部844は、受信機能部85における受光制御部855との間においても、例えば制御信号などのやり取りを行う場合もある。
表示部81は、前述のように例えば、複数の画素が全面に渡ってマトリクス状に配置された、有機または無機のELディスプレイやLCDなどからなり、例えば線順次駆動動作により所定の図形や文字などの動画像を表示する。第1および第2の実施の形態における入出力端末2の受発光部21と異なるのは、この表示部81は所定の図形や文字などの動画像を表示する機能のみを有する点である。
受光制御部855は、受光部82において動画2次元コードを受光するための駆動動作を行う。
受光部82は、動画2次元コードを受光する機能を有する。この受光部82は、具体的には例えば、表示装置1の受発光部11において表示された動画2次元コードのシンボルを受光するためのレンズや受光素子などから構成される。このようにして受光した受光信号は、記憶部851へ出力される。
記憶部851は、受光部82から出力される受光信号を1画面ごとの受光信号に再構成し、フレームメモリに格納して保持する。記憶部851において格納された1画面分の受光信号は、画像処理部852へ出力される。
画像処理部852は、記憶部851から出力される1画面分の受光信号を画像処理する機能を有する。画像処理し、抽出された動画2次元コードの各シンボルのデータは、デコード部853へ出力される。
デコード部853は、画像処理部852から出力される動画2次元コードの各シンボルのデータをデコードする機能を有する。各シンボルのデータをデコードし、デコードされたデータは、情報取得部854へ出力される。
情報取得部854は、デコード部から出力されるデコードデータを蓄積していき、その蓄積されたデコードデータに基づいて各シンボルに含まれるコンテンツデータを復元し、取得する機能を有する。復元された動画2次元コードの各シンボルに含まれるコンテンツデータは、制御部(図示せず)へ出力され、このコンテンツデータに応じた処理が実行されるようになっている。
なお、本実施の形態における入力端末8が備える表示部81は、前述のように所定の図形や文字などの動画像を表示する機能のみを有するように構成されているが、本実施の形態における入力端末8の構成はこれに限られるものではなく、例えば、受光部82の代わりに(あるいはこれに加えて)、表示部81が光を受光する機能をも有するように構成してもよい。
ここで、本実施の形態における動画2次元コードのフォーマットの構成および動画2次元コードを用いたコンテンツデータの送受信処理については、第1の実施の形態における図6〜図16と同様であるので、同一の構成要素には同一の符号を付し、説明を省略する。また、本実施の形態における表示装置1および入力端末8の処理性能情報の一例は、第1の実施の形態における図17あるいは第2の実施の形態における図20と同様であるので、同一の構成要素には同一の符号を付し、説明を省略する。
なお、本実施の形態における表示装置1および入力端末8の処理性能情報も、第1および第2の実施の形態と同様、これらの情報に限られるものではなく、これらの情報に代えて(またはこれらに加えて)、他の情報を含んでいてもよい
図25は、図22の通信システムにおける表示装置1および入力端末8の間の初期ネゴシエーション処理を表すものである。この図は、第1の実施の形態における図18および第2の実施の形態における図21に対応するものであり、重複する部分については適宜説明を省略する。ここで、第1および第2の実施の形態の場合と同様、表示装置1が動画2次元コードを用いたコンテンツデータの送信装置側、入力端末8が動画2次元コードを用いたコンテンツデータの受信装置側であり、また、表示装置1および入力端末8の処理性能情報は、図17あるいは図20に示した情報であるものとする。
まず、送信装置側である表示装置1は、図17あるいは図20に示したような自装置の処理性能情報を受信装置側である入力端末8へ送信し(ステップS501)、入力端末8はこの処理性能情報を受信する(ステップS502)。ここで、第1および第2の実施の形態と異なるのは、受信装置側である入力端末8が、動画2次元コードを用いてコンテンツデータを送信する機能を有しないので、入力端末8は処理性能情報を表示装置1へ送信できない点である。
よって表示装置1は、受信装置側である入力端末8から処理性能情報を取得できないことになる。ここで例えば、表示装置1は予めこの返答待ちの時間を設定(例えば1秒など)しておき、本実施の形態の場合、いつまでも受信はできないので、返答待ちのタイムアウトになったことを認識する(ステップS503)。
表示装置1は、フォーマットおよび通信条件を各装置が対応可能な最下位の条件に決定する(ステップS504)。具体的には例えば、フォーマットに関しては、各装置が対応可能なフォーマットA(ver.1.00)と設定する。画面サイズおよび受光解像度に関しても、表示装置1は入力端末8の画面サイズ63および受光解像度64の情報を認識できないので、予め設定されている各装置が対応可能な最低限の画面サイズおよび受光解像度に設定する。送信速度に関しても、表示装置1は入力端末8の最大送信速度62の情報を認識できないので、前述のようにサンプリング定理およびNTSC方式の60(フレーム/秒)に基づいて30(シンボル/秒)と設定する。
次に表示装置1は、このフォーマットおよび通信条件の決定内容通知を、入力端末8へ送信する(ステップS505)。入力端末8は、このフォーマットおよび通信条件の決定内容通知を受信し(ステップS506)、どのようなフォーマットおよび通信条件に基づいて受信すればよいかを認識する。そして表示装置1は、この決定したフォーマットおよび通信条件で、動画2次元コードを用いたデータ転送を開始する(ステップS507)。この場合、決定したフォーマットおよび通信条件は上記のように、フォーマットはフォーマットA(ver.1.00)、送信速度は30(シンボル/秒)である。そして入力端末8はこの動画2次元コードのデータを受信し、初期ネゴシエーション処理が終了となる。以後、この決定されたフォーマットおよび通信条件でデータ転送が行われる。
なお、本実施の形態におけるエラー訂正ハンドシェーク処理は、上記のように受信装置側である入力端末8が動画2次元コードを用いてコンテンツデータを送信する機能を有しないので、入力端末8は処理性能情報を表示装置1へ送信できず、エラー訂正ハンドシェーク処理も実行できないことになる。
以上のように、本実施の形態の表示装置、通信システムおよび通信方法によれば、表示装置1が動画像の表示と光の受光とが可能な受発光部11を備えるとともに入力端末8が光の受光のみが可能な受光部82を備え、送信装置側である表示装置1が、受信装置側である入力端末8からの処理性能情報の返答待ちの時間を予め設定しておき、返答待ちのタイムアウトになったことを認識した場合、動画2次元コードのフォーマットおよび通信条件を互いに対応可能な最下位のフォーマットおよび通信条件を採用することを決定し、これに基づいてデータ通信を行うようにしたので、第1の実施の形態の効果に加え、処理性能情報を互いに送受信することができなかった場合においても、確実にデータ通信を行うことが可能となる。
なお、本実施の形態においては、受信装置側である入力端末2が、動画2次元コードを用いたコンテンツデータの受信のみが可能な入力端末8であるため送信装置側である表示装置1において入力端末8の処理性能情報を取得できない場合の例で説明したが、受信装置側が動画2次元コードを用いたコンテンツデータの送受信が可能な装置の場合においても、例えば受信装置側において正常にコンテンツデータの送信ができなかった場合や、送信装置側の表示装置1において正常にコンテンツデータを受信できなかった場合など、表示装置1がコンテンツデータの取得ができなかった場合には、同様の方法により確実にデータ通信を行うことが可能となる。
以上、第1〜第3の実施の形態を挙げて本発明を説明したが、本発明はこれらに限定されず、種々の変形が可能である。例えば、これらの実施の形態では、表示装置1が動画2次元コードを用いたコンテンツデータの送信装置側(本発明における「第1の表示装置」)で、入出力端末2および入力端末8が動画2次元コードを用いたコンテンツデータの受信装置側(本発明における「第2の表示装置」)である例で説明してきたが、動画2次元コードを用いたコンテンツデータの送受信機能を備えているのであれば、逆に入出力端末2を送信装置側、表示装置1を受信装置側として構成することも可能である。
1…表示装置、11…受発光部、111…透明基板、112…隔壁、12…ウィンドウ、13…シンボル、110…受発光制御部、14…送信機能部、141…画像信号生成部、142…シンボル生成部、143…表示信号生成部、15…受信機能部、151…記憶部、152…画像処理部、153…デコード部、154…情報取得部、2…入出力端末、21…受発光部、4…フォーマットAおよびフォーマットBのシンボル、41…コード部、411…認識用エリア、412…CRC用ビット、413…データビット、42…ロゴマーク部、43…任意データ領域のデータ構成、432…シンボルID、433…データ領域、435…スタートシンボル、436…ヘッダシンボル、437…データシンボル、438…予約ID、44…初期ネゴシエーション処理用プロトコル、5…フォーマットCのシンボル、51…同期シンボル、52…ヘッダシンボル、53…アンカーシンボル、54…データシンボル、511,521,531,541…コード部、512,532…ロゴマーク部、533…認識用エリア、522,534,542…CRC用ビット、523,535,543…データビット、55…同期シンボルのデータ構成、56…ヘッダシンボルのデータ構成、561…サブシンボルID、562…予約ID、563…エラー訂正ハンドシェーク処理用データ、57…アンカーシンボルのデータ構成、571…アンカーシンボルID、572…データシンボルのサブシンボル数、58…データシンボルのデータ構成、581…サブシンボルID、582…シンボルエラー訂正用データ、6…処理性能情報、61…対応可能な最上位フォーマット、62…最大送信速度、63…画面サイズ、64…受光解像度、65…同期の可否、8…入力端末、81…表示部、82…受光部、83…コード、84…表示機能部、841…画像信号生成部、844…表示制御部、85…受信機能部、851…記憶部、852…画像処理部、853…デコード部、854…情報取得部、855…受光制御部、CWR…受発光セル、G…発光用ゲート線、S…切換線、DW…データ供給線、DR…データ読取線、EL…受発光素子、C…キャパシタ、R…抵抗、SW1…第1のスイッチ、SW2…第2のスイッチ、SW3…第3のスイッチ、I1…表示信号電流路、I2…受光信号電流路、D…コンテンツデータ、LW…発光光線、LR…受光光線。