(57)【要約】【課題】二次元カラーコードを読み取る際のエラーを低減することができる二次元カラーコード表示装置を提供することである。【解決手段】本発明にかかる二次元カラーコード表示装置１０は、データ２１に応じた二次元カラーコード２２を生成する二次元カラーコード生成部１１と、二次元カラーコードの色を補正するために用いられる補正フレーム２３を出力する補正フレーム出力部１２と、二次元カラーコード２２と補正フレーム２３とを選択的に出力する表示フレーム選択部１３と、表示フレーム選択部から出力された二次元カラーコードまたは補正フレームを表示する表示部１５と、を備える。【選択図】図１
2014235676.tif 000002
【特許請求の範囲】
【請求項１】
二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータを記録する二次元カラーコードを表示する二次元カラーコード表示装置であって、
前記二次元カラーコード表示装置は、
前記データに応じた二次元カラーコードを生成する二次元カラーコード生成部と、
前記二次元カラーコードから前記データを読み取る際に前記二次元カラーコードの色を補正するために用いられる補正フレームを出力する補正フレーム出力部と、
前記二次元カラーコードと前記補正フレームとを選択的に出力する表示フレーム選択部と、
前記表示フレーム選択部から出力された前記二次元カラーコードまたは前記補正フレームを表示する表示部と、を備える、
二次元カラーコード表示装置。
【請求項２】
前記補正フレーム出力部は、前記補正フレームとして単一色の補正フレームを出力する、請求項１に記載の二次元カラーコード表示装置。
【請求項３】
前記補正フレーム出力部は、前記各々の基準色に対応した複数の単一色の補正フレームをそれぞれ出力する、請求項２に記載の二次元カラーコード表示装置。
【請求項４】
前記補正フレーム出力部は、前記単一色の補正フレームとして灰色の補正フレームを出力する、請求項２に記載の二次元カラーコード表示装置。
【請求項５】
前記補正フレーム出力部は、前記各々の基準色に対応した各々の色が前記表示部の第１の方向に延びるように配置され、且つ前記各々の基準色に対応した前記各々の色が前記第１の方向と交差する第２の方向に配列された補正フレームを出力する、請求項１に記載の二次元カラーコード表示装置。
【請求項６】
前記第１の方向は前記表示部の上下方向である、請求項５に記載の二次元カラーコード表示装置。
【請求項７】
前記表示部は、一連の前記二次元カラーコードを表示する前に前記補正フレームを表示する、請求項１乃至６のいずれか一項に記載の二次元カラーコード表示装置。
【請求項８】
前記表示部は、一連の前記二次元カラーコードが表示されている間に前記補正フレームを表示する、請求項１乃至６のいずれか一項に記載の二次元カラーコード表示装置。
【請求項９】
前記表示部は、前記補正フレームを所定の間隔毎に表示する、請求項８に記載の二次元カラーコード表示装置。
【請求項１０】
前記表示部は、一連の前記二次元カラーコードが表示された後に前記補正フレームを表示する、請求項１乃至６のいずれか一項に記載の二次元カラーコード表示装置。
【請求項１１】
二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータが記録された二次元カラーコードからデータを読み取る二次元カラーコード読み取り装置であって、
表示部に時間的に変化するように表示されている前記二次元カラーコードおよび当該二次元カラーコードの色を補正するために用いられる補正フレームから、前記各々のセルの位置に対応する色情報を取得する色情報取得部と、
前記表示部に表示されているフレームが前記二次元カラーコードおよび前記補正フレームのいずれであるかを判別する補正フレーム判別部と、
前記表示部に前記補正フレームが表示されている場合、前記二次元カラーコードの色を補正するための補正値を前記各々のセルの位置毎に前記補正フレームを用いて算出する補正値算出部と、
前記色情報取得部で取得した前記二次元カラーコードの色情報を前記補正値を用いて補正する色補正部と、
前記補正後の二次元カラーコードを用いてデータを生成するデータ生成部と、を備える、
二次元カラーコード読み取り装置。
【請求項１２】
前記補正値算出部は、前記補正フレームの本来の色に関する情報と、前記色情報取得部で取得した前記補正フレームの色情報とを用いて前記補正値を算出する、請求項１１に記載の二次元カラーコード読み取り装置。
【請求項１３】
前記補正フレームは単一色の補正フレームであり、
前記補正値算出部は、前記各々のセルの位置における輝度の補正値を算出する、
請求項１１または１２に記載の二次元カラーコード読み取り装置。
【請求項１４】
前記補正フレームは前記各々の基準色に対応した複数の単一色の補正フレームであり、
前記補正値算出部は、前記基準色毎に前記各々のセルの位置における補正値を算出する、
請求項１１または１２に記載の二次元カラーコード読み取り装置。
【請求項１５】
前記補正フレームは前記各々の基準色に対応した各々の色が前記表示部の第１の方向に延びるように配置され、且つ前記各々の基準色に対応した前記各々の色が前記第１の方向と交差する第２の方向に配列された補正フレームであり、
前記補正値算出部は、前記基準色毎に前記各々のセルの前記第１の方向における補正値を算出する、
請求項１１または１２に記載の二次元カラーコード読み取り装置。
【請求項１６】
前記第１の方向は前記表示部の上下方向である、請求項１５に記載の二次元カラーコード読み取り装置。
【請求項１７】
二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータを記録した二次元カラーコードの表示方法であって、
前記データに応じた二次元カラーコード生成し、
前記二次元カラーコードと、前記二次元カラーコードから前記データを読み取る際に前記二次元カラーコードの色を補正するために用いられる補正フレームとを選択的に表示する、
二次元カラーコードの表示方法。
【請求項１８】
二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータが記録された二次元カラーコードからデータを読み取る二次元カラーコード読み取り方法であって、
表示部に時間的に変化するように表示されている前記二次元カラーコードおよび当該二次元カラーコードの色を補正するために用いられる補正フレームから、前記各々のセルの位置に対応する色情報を取得し、
前記表示部に表示されているフレームが前記二次元カラーコードおよび前記補正フレームのいずれであるかを判別し、
前記表示部に前記補正フレームが表示されている場合、前記二次元カラーコードの色を補正するための補正値を前記各々のセルの位置毎に前記補正フレームを用いて算出し、
前記二次元カラーコードの色情報を前記補正値を用いて補正し、
前記補正後の二次元カラーコードを用いてデータを生成する、
二次元カラーコード読み取り方法。
【請求項１９】
二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータが記録された二次元カラーコードを用いて、二次元カラーコード表示装置から二次元カラーコード読み取り装置に前記データを転送するデータ転送システムであって、
前記二次元カラーコード表示装置は、
前記データに応じた二次元カラーコードを生成する二次元カラーコード生成部と、
前記二次元カラーコードから前記データを読み取る際に前記二次元カラーコードの色を補正するために用いられる補正フレームを出力する補正フレーム出力部と、
前記二次元カラーコードと前記補正フレームとを選択的に出力する表示フレーム選択部と、
前記表示フレーム選択部から出力された前記二次元カラーコードまたは前記補正フレームを表示する表示部と、を備え、
前記二次元カラーコード読み取り装置は、
表示部に表示されている前記二次元カラーコードおよび前記補正フレームから、前記各々のセルの位置に対応する色情報を取得する色情報取得部と、
前記表示部に表示されているフレームが前記二次元カラーコードおよび前記補正フレームのいずれであるかを判別する補正フレーム判別部と、
前記表示部に前記補正フレームが表示されている場合、前記二次元カラーコードの色を補正するための補正値を前記各々のセルの位置毎に前記補正フレームを用いて算出する補正値算出部と、
前記二次元カラーコードの色情報を前記補正値を用いて補正する色補正部と、
前記補正後の二次元カラーコードを用いてデータを生成するデータ生成部と、を備える、
データ転送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は二次元カラーコード表示装置、及びその表示方法、並びに二次元カラーコード読み取り装置、及びその読み取り方法に関する。
【背景技術】
【０００２】
二次元カラーコードは、カラー表現を用いて各々のセルに情報を記録するため、従来の白色および黒色を用いた二次元コードよりも高密度に情報を記録することができる。このような二次元カラーコードでは、読み取り時における光源の違いによる見た目の色変化や、経時変化による退色の影響を低減するために、基準色を所定の領域に記録する手法が提案されている。
【０００３】
特許文献１には、カラー表現される二次元コードにおいて、セルに表示される各色の基準となる参照領域を設けることができ、且つコード領域と背景とを高精度に分離できる技術が開示されている。また、特許文献２には、カラーコード内の各セル内に本来の色とは異なる色が含まれていた場合にも、確実にセルの本来の色を認識させることを可能にする技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−６１２１７号公報
【特許文献２】特開２０１１−１３４０９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
二次元カラーコードでは、二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータを記録している。そして二次元カラーコードの各セルに付された色情報を取得すことで、記録されたデータを読み取ることができる。従来では、二次元カラーコードは商品コードやＩＣカードに使用される場合が多く、例えば紙等に印刷して用いられる場合が多かった。
【０００６】
しかしながら、二次元カラーコードを表示装置に表示した場合は、表示装置をみる角度や二次元カラーコードを表示する位置によって、表示装置に表示される二次元カラーコードの色が本来の色から変化する場合がある。このため表示装置に表示された二次元カラーコードを読み取る際にエラーが発生するという問題があった。
【０００７】
上記課題に鑑み本発明の目的は、二次元カラーコードを読み取る際のエラーを低減することができる二次元カラーコード表示装置、及びその表示方法、並びに二次元カラーコード読み取り装置、及びその読み取り方法を提供することである。
【課題を解決するための手段】
【０００８】
本発明にかかる二次元カラーコード表示装置は、二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータを記録する二次元カラーコードを表示する二次元カラーコード表示装置であって、前記データに応じた二次元カラーコードを生成する二次元カラーコード生成部と、前記二次元カラーコードから前記データを読み取る際に前記二次元カラーコードの色を補正するために用いられる補正フレームを出力する補正フレーム出力部と、前記二次元カラーコードと前記補正フレームとを選択的に出力する表示フレーム選択部と、前記表示フレーム選択部から出力された前記二次元カラーコードまたは前記補正フレームを表示する表示部と、を備える。
【０００９】
本発明にかかる二次元カラーコードの表示方法は、二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータを記録した二次元カラーコードの表示方法であって、前記データに応じた二次元カラーコード生成し、前記二次元カラーコードと、前記二次元カラーコードから前記データを読み取る際に前記二次元カラーコードの色を補正するために用いられる補正フレームとを選択的に表示する。
【００１０】
本発明にかかる二次元カラーコード読み取り装置は、二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータが記録された二次元カラーコードからデータを読み取る二次元カラーコード読み取り装置であって、表示部に時間的に変化するように表示されている前記二次元カラーコードおよび当該二次元カラーコードの色を補正するために用いられる補正フレームから、前記各々のセルの位置に対応する色情報を取得する色情報取得部と、前記表示部に表示されているフレームが前記二次元カラーコードおよび前記補正フレームのいずれであるかを判別する補正フレーム判別部と、前記表示部に前記補正フレームが表示されている場合、前記二次元カラーコードの色を補正するための補正値を前記各々のセルの位置毎に前記補正フレームを用いて算出する補正値算出部と、前記色情報取得部で取得した前記二次元カラーコードの色情報を前記補正値を用いて補正する色補正部と、前記補正後の二次元カラーコードを用いてデータを生成するデータ生成部と、を備える。
【００１１】
本発明にかかる二次元カラーコード読み取り方法は、二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータが記録された二次元カラーコードからデータを読み取る二次元カラーコード読み取り方法であって、表示部に時間的に変化するように表示されている前記二次元カラーコードおよび当該二次元カラーコードの色を補正するために用いられる補正フレームから、前記各々のセルの位置に対応する色情報を取得し、前記表示部に表示されているフレームが前記二次元カラーコードおよび前記補正フレームのいずれであるかを判別し、前記表示部に前記補正フレームが表示されている場合、前記二次元カラーコードの色を補正するための補正値を前記各々のセルの位置毎に前記補正フレームを用いて算出し、前記二次元カラーコードの色情報を前記補正値を用いて補正し、前記補正後の二次元カラーコードを用いてデータを生成する。
【００１２】
本発明にかかるデータ転送システムは、二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータが記録された二次元カラーコードを用いて、二次元カラーコード表示装置から二次元カラーコード読み取り装置に前記データを転送するデータ転送システムであって、前記二次元カラーコード表示装置は、前記データに応じた二次元カラーコードを生成する二次元カラーコード生成部と、前記二次元カラーコードから前記データを読み取る際に前記二次元カラーコードの色を補正するために用いられる補正フレームを出力する補正フレーム出力部と、前記二次元カラーコードと前記補正フレームとを選択的に出力する表示フレーム選択部と、前記表示フレーム選択部から出力された前記二次元カラーコードまたは前記補正フレームを表示する表示部と、を備え、前記二次元カラーコード読み取り装置は、表示部に表示されている前記二次元カラーコードおよび前記補正フレームから、前記各々のセルの位置に対応する色情報を取得する色情報取得部と、前記表示部に表示されているフレームが前記二次元カラーコードおよび前記補正フレームのいずれであるかを判別する補正フレーム判別部と、前記表示部に前記補正フレームが表示されている場合、前記二次元カラーコードの色を補正するための補正値を前記各々のセルの位置毎に前記補正フレームを用いて算出する補正値算出部と、前記二次元カラーコードの色情報を前記補正値を用いて補正する色補正部と、前記補正後の二次元カラーコードを用いてデータを生成するデータ生成部と、を備える。
【発明の効果】
【００１３】
本発明により、二次元カラーコードを読み取る際のエラーを低減することができる二次元カラーコード表示装置、及びその表示方法、並びに二次元カラーコード読み取り装置、及びその読み取り方法を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態１にかかる二次元カラーコード表示装置を示すブロック図である。
【図２】二次元カラーコードの一例を示す図である。
【図３】補正フレームの一例を示す図である。
【図４】表示部に表示された補正フレームの一例を示す図である。
【図５Ａ】補正フレームを表示するタイミングの一例を示す図である。
【図５Ｂ】補正フレームを表示するタイミングの一例を示す図である。
【図５Ｃ】補正フレームを表示するタイミングの一例を示す図である。
【図６】補正フレームの一例を示す図である。
【図７】実施の形態１にかかる二次元カラーコード読み取り装置を示すブロック図である。
【図８Ａ】補正フレームの本来の色に関する情報の一例を示す図である。
【図８Ｂ】色情報取得部で取得した補正フレームの色情報の一例を示す図である。
【図９】色補正前の二次元カラーコードと色補正後の二次元カラーコードを示す図である。
【図１０】実施の形態１にかかる二次元カラーコード読み取り装置の動作を示すフローチャートである。
【図１１】実施の形態２にかかる二次元カラーコード表示装置が表示する補正フレームの一例を示す図である。
【図１２】表示部に表示された補正フレームの一例を示す図である。
【図１３】二次元カラーコードの一例を示す図である。
【発明を実施するための形態】
【００１５】
＜実施の形態１＞
以下、図面を参照して本発明の実施の形態について説明する。図１は実施の形態１にかかる二次元カラーコード表示装置を示すブロック図である。図１に示すように本実施の形態にかかる二次元カラーコード表示装置１０は、二次元カラーコード生成部１１、補正フレーム出力部１２、表示フレーム選択部１３、制御部１４、および表示部１５を備える。
【００１６】
二次元カラーコード生成部１１は、データ２１に応じた二次元カラーコードを生成し、生成した二次元カラーコード２２を表示フレーム選択部１３に出力する。二次元カラーコードは、二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータを記録する。
【００１７】
図２は、二次元カラーコードの一例を示す図である。図２に示す例では、複数のセル（単位セルを符号２８で示す）が１６行１６列に配置されている二次元カラーコード２２を例として示している。しかし、セルの数や配置はこれに限定されることはなく、例えば、任意の数のセルをｐ行ｑ列（ｐ、ｑは整数である）に格子状に配置してもよい。また、セルの配置は格子状に限定されることはなく、例えば千鳥配置や円形状など、二次元的な配置であればどのような配置であってもよい。
【００１８】
二次元カラーコード２２を生成する際の基準色を例えば１６色とした場合は、一つのセルに４ビット（１６＝２４）のデータを記録することができる。基準色として用いる色としては、例えば、白、黒、赤、緑、青、マゼンタ、シアン、黄色に加えて、これらの色の中間色（例えば、灰色、橙色、茶色など）を用いることができる。
【００１９】
補正フレーム出力部１２は、二次元カラーコード２２からデータを読み取る際に二次元カラーコード２２の色を補正するために用いられる補正フレーム２３を、表示フレーム選択部１３に出力する。図３は、補正フレーム２３の一例を示す図である。図３に示すように補正フレーム２３は、領域２６に単一色が付されている。ここで領域２６は二次元カラーコードに対応する領域である。換言すると、二次元カラーコード２２の寸法と補正フレーム２３の寸法は略同一である。補正フレーム２３の色や構成（単一色であるか否かなど）については予め規定されている。
【００２０】
図４は、表示部１５に表示された補正フレーム２７の一例を示す図であり、表示部１５に表示される補正フレーム２７の色が本来の色から変化している場合を示している。例えば表示部１５の一例である液晶ディスプレイでは、液晶の偏光作用を利用しているため、ユーザがディスプレイを見る角度（つまり、ディスプレイ面に対するユーザの位置）によっては、ディスプレイに表示される色が変化する。つまり補正フレーム出力部１２から出力された本来の補正フレーム２３は単一色であるにもかかわらず（図３参照）、表示部１５に表示された補正フレーム２７は、図４に示すように上側２８の色と下側２９の色とが異なるように表示される。図４に示す場合は、補正フレーム２７の上側２８の色が下側２９の色よりも濃くなる場合を示している。
【００２１】
このような現象は、表示部１５に表示された二次元カラーコードにおいても同様に発生する。つまり、表示部１５に表示された二次元カラーコードの色は、表示部１５をみる角度や二次元カラーコードを表示する位置に応じて変化する。このように、二次元カラーコードの色が本来の色から変化すると、二次元カラーコードを読み取る際にエラーが発生する場合がある。
【００２２】
このような問題を解決するために本実施の形態では、二次元カラーコードの色を補正するための補正値を補正フレーム２３を用いて算出している。例えば補正フレーム２３を用いることで、補正フレーム２３の場所に応じた輝度変化を調べることができる。つまり図４に示す場合は、表示部１５に表示されている補正フレーム２７の上側２８で輝度が低くなり、下側２９で輝度が高くなることがわかる。よって表示部１５に表示されている補正フレーム２７の場所に応じた輝度変化を求めることで、二次元カラーコードの輝度を補正するための補正値を算出することができる。例えば単一色の補正フレーム２３として灰色の補正フレームを用いることができる。なお、補正値の算出方法の詳細については後述する。
【００２３】
図１に示す表示フレーム選択部１３は、表示部１５に表示するフレーム２５として、二次元カラーコード２２または補正フレーム２３を出力する。換言すると表示フレーム選択部１３は、二次元カラーコード２２と補正フレーム２３とを表示部１５に選択的に出力する。このとき表示フレーム選択部１３は、制御部１４から出力された制御信号２４に応じて二次元カラーコード２２または補正フレーム２３を出力する。
【００２４】
表示部１５は、表示フレーム選択部１３から出力された二次元カラーコードまたは補正フレームを表示する。例えば表示部１５は液晶ディスプレイや有機ＥＬディスプレイ等である。例えば表示部１５に表示されている二次元カラーコードは、時間的に変化するように表示される。このとき補正フレーム２３は、任意のタイミングで表示部１５に表示される。
【００２５】
図５Ａ〜図５Ｃは、補正フレーム２３を表示部１５に表示するタイミング、換言すると表示フレーム選択部１３が補正フレーム２３を出力するタイミングの一例を示す図である。例えば図５Ａに示すように、表示部１５は一連の二次元カラーコード２２（例えば新しいデータファイルに対応した二次元カラーコード）を表示する前に補正フレーム２３を表示してもよい。また、図５Ｂに示すように、表示部１５は一連の二次元カラーコード２２が表示されている間（途中）に補正フレーム２３を表示してもよい。このとき表示部１５は、補正フレーム２３を所定の間隔毎に表示するようにしてもよい。また、図５Ｃに示すように、表示部１５は一連の二次元カラーコード２２が表示された後に補正フレーム２３を表示するようにしてもよい。
【００２６】
また、補正フレーム２３は、二次元カラーコード表示装置１０の周囲の明るさが変化したタイミングや二次元カラーコードを読み取る撮像部の位置が変化したタイミングで表示するようにしてもよい。つまり、このような場合は、表示部に表示される二次元カラーコードの色も変化する可能性があるため、二次元カラーコードを補正するための補正値を更新することが好ましい。
【００２７】
なお、補正フレーム出力部１２は、各々の基準色に対応した複数の単一色の補正フレームをそれぞれ出力してもよい。すなわち図６に示すように、補正フレーム出力部１２は、補正フレーム２３’として、各々の基準色に対応した複数の単一色の補正フレーム２３’_１〜２３’_ｎを出力してもよい。ここでｎは整数であり、補正フレーム２３’の数に対応している。例えば補正フレーム２３’の数は、二次元カラーコードを生成する際に用いられる基準色の数と同一とすることができる。また、基準色の数よりも補正フレーム２３’の数を少なくしてもよい。
【００２８】
補正フレーム２３’_１〜２３’_ｎを表示部１５に表示するタイミングについては、上記で説明した場合（図５Ａ〜図５Ｃ）と同様とすることができる。また、複数の二次元カラーコード２２と複数の補正フレーム２３’_１〜２３’_ｎとが互いに混ざり合うように表示してもよい。例えば、複数の二次元カラーコード２２と複数の補正フレーム２３’_１〜２３’_ｎとを交互に表示するようにしてもよい。
【００２９】
このように、各々の基準色に対応した複数の単一色の補正フレームを用いた場合は、各々の基準色毎の補正値が算出される。
【００３０】
次に、図７を用いて本実施の形態にかかる二次元カラーコード読み取り装置について説明する。図７に示すように、二次元カラーコード読み取り装置３０は、撮像部３１、枠検出部３２、中心位置計算部３３、色情報取得部３４、補正フレーム判別部３５、補正値算出部３６、色補正部３７、およびデータ生成部３８を備える。ここで二次元カラーコード読み取り装置３０は、図１に示した二次元カラーコード表示装置１０の表示部１５に表示された二次元カラーコードを読み取り、所定のデータを生成する装置である。
【００３１】
撮像部３１は、二次元カラーコード表示装置１０の表示部１５に表示されている二次元カラーコードまたは補正フレームの画像データを取得する。例えば撮像部３１はカメラを備える。撮像部３１で取得された二次元カラーコードまたは補正フレームの画像データ４１は、枠検出部３２および色情報取得部３４に出力される（以下では、二次元カラーコードの画像データ４１を符号４１_１で示し、補正フレームの画像データ４１を符号４１_２で示す）。つまり撮像部３１からは、二次元カラーコードの画像データ４１_１または補正フレームの画像データ４１_２のいずれかが出力される。なお、以下では、撮像部３１で取得された二次元カラーコードの画像データ４１_１を単に二次元カラーコード４１_１と記載し、撮像部３１で取得された補正フレームの画像データ４１_２を単に補正フレーム４１_２と記載する場合もある。
【００３２】
枠検出部３２は、撮像部３１で取得された二次元カラーコード４１_１または補正フレーム４１_２から二次元カラーコード４１_１または補正フレーム４１_２の外枠（つまり、二次元カラーコード４１_１または補正フレーム４１_２の外周部分）を検出する。枠検出部３２で検出された枠情報４２は中心位置計算部３３に出力される。
【００３３】
中心位置計算部３３は、枠検出部３２から出力された枠情報４２を用いて各々のセルの中心位置の座標を計算する。例えば中心位置計算部３３は、二次元カラーコードの行数および列数の情報（図２に示す場合は１６行×１６列）を用いて、各々のセルの中心位置の座標を計算する。具体的には、枠検出部３２で検出された四角形をセルの行数および列数に分割して各セルの領域を求める。そして求めた各セルの領域から、各々のセルの中心位置の座標を計算する。算出された中心位置の座標情報４３は色情報取得部３４に出力される。補正フレームの各々のセルの中心位置の座標を計算する場合についても同様である。
【００３４】
このように各セルの中心位置の座標を予め計算しておくことで、各セルの正確な色情報を取得することができる。つまり、各セルの色情報を取得する場合は、セル同士の境界付近よりもセルの中心位置で色情報を取得したほうが正確な色情報を取得することができる。また補正フレームの色情報を取得する際も、各セルに対応した位置の正確な色情報を取得することができる。
【００３５】
色情報取得部３４は、撮像部３１で取得された二次元カラーコード４１_１または補正フレーム４１_２の画像データ４１から、各々のセルの位置に対応する色情報を取得する。換言すると色情報取得部３４は、二次元カラーコード表示装置１０の表示部１５に時間的に変化するように表示されている二次元カラーコードおよび補正フレームから、各々のセルの位置に対応する色情報を取得する。
【００３６】
このとき、色情報取得部３４は、中心位置計算部３３で算出された中心位置の座標情報４３を用いて各々のセルの色情報を取得する。色情報取得部３４は、取得した色情報４４（つまり、二次元カラーコード４１_１の色情報または補正フレーム４１_２の色情報）を、補正フレーム判別部３５、補正値算出部３６、および色補正部３７に出力する。以下では、二次元カラーコード４１_１の色情報４４を符号４４_１で示し、補正フレーム４１_２の色情報４４を符号４４_２で示す。
【００３７】
補正フレーム判別部３５は、取得した色情報４４が補正フレーム４１_２の色情報４４_２であるかを判別する。換言すると補正フレーム判別部３５は、表示部１５に表示されているフレームが二次元カラーコードおよび補正フレームのいずれであるかを判別する。補正フレーム判別部３５は、色情報４４が補正フレーム４１_２の色情報４４_２であるか否かの判別結果４５を補正値算出部３６に出力する。
【００３８】
二次元カラーコード表示装置１０の表示部１５に表示されている補正フレームが単一色の補正フレームである場合、補正フレーム判別部３５は次の様にして補正フレームであるか否かを判別することができる。つまり補正フレーム判別部３５は、各セルの色情報が互いに近似している場合、色情報４４が補正フレーム４１_２の色情報４４_２であると判別することができる。一方、補正フレーム判別部３５は、各セルの色情報が互いに近似していない場合、色情報４４が補正フレーム４１_２の色情報４４_２ではないと判別することができる。例えば、二次元カラーコード表示装置１０の表示部１５に表示されている補正フレームが灰色の単一色の補正フレームである場合、補正フレーム判別部３５は、各セルの色情報が灰色に近い場合に、色情報４４が補正フレーム４１_２の色情報４４_２であると判別することができる。
【００３９】
また、表示される補正フレームに、補正フレームであることを示す所定のコードが予め組み込まれている場合、補正フレーム判別部３５は、この所定のコードを用いて補正フレーム４１_２の色情報４４_２であるか否かを判別することができる。
【００４０】
補正値算出部３６は、判別結果４５が補正フレーム４１_２の色情報４４_２であることを示す場合、補正フレーム４１_２の色情報４４_２を用いて補正値を算出する。ここで補正値は、二次元カラーコード４１_１の色情報４４_１を補正するための値であり、各々のセルの位置毎に算出される値である。以下で補正値の算出方法について詳細に説明する。
【００４１】
補正値算出部３６は、補正フレームの本来の色に関する情報と、色情報取得部３４で取得した補正フレーム４１_２の色情報４４_２とを用いて、補正値を算出する。ここで補正フレームの本来の色に関する情報とは、二次元カラーコード表示装置１０の補正フレーム出力部１２から出力される補正フレーム２３（図３参照）の色に関する情報である。補正値算出部３６は、補正フレーム２３の本来の色に関する情報を予め取得している。
【００４２】
図８Ａは補正フレームの本来の色に関する情報の一例を示す図である。図８Ｂは色情報取得部で取得した補正フレームの色情報の一例を示す図である。図８Ａに示す本来の補正フレーム２３（補正フレーム出力部１２から出力される補正フレーム２３に対応する）では、補正フレーム２３全体が単一色となっている。一方、表示部に表示された補正フレームはディスプレイを見る角度に応じて変化するため、本来の補正フレーム２３が単一色であるにもかかわらず、色情報取得部３４で取得した補正フレーム４１_２の色情報４４_２は、例えば図８Ｂに示すように、上側５１の色と下側５２の色とが異なるように表示される。図８Ｂに示す場合は、補正フレーム４１_２の上側５１の色が下側５２の色よりも濃くなる場合を示している。
【００４３】
補正値算出部３６は、図８Ａに示す本来の補正フレーム２３の各々のセルの色情報と図８Ｂに示す補正フレーム４１_２の各々のセルの色情報とを比較し、各々のセル毎に補正値を算出する。具体的には、補正値算出部３６は、図８Ａに示す補正フレーム２３の所定のセルの色情報と、図８Ｂに示す補正フレーム４１_２の所定のセル（補正フレーム２３の所定のセルと対応する位置のセル）の色情報との差分を用いて、当該所定のセルの補正値を算出する。ここで補正値は、図８Ｂに示す補正フレーム４１_２の所定のセルの色情報が、図８Ａに示す補正フレーム２３の所定のセルの色情報となるように補正するための値である。このような処理を他のセルについても同様に行い、全てのセルの補正値をそれぞれ算出する。
【００４４】
例えば補正値は、二次元カラーコードの色や輝度を補正するための補正値である。具体的には、補正値は、撮像部３１で取得された二次元カラーコード（表示部１５に表示された二次元カラーコード）の各セルの色が、「本来よりも暗くなる」、「本来よりも赤色に寄る」、「本来よりも緑色に寄る」、等の情報である。例えばカラー表示方式がＲＧＢ方式である場合、補正値はＲ成分を補正する係数、Ｇ成分を補正する係数、Ｂ成分を補正する係数である。また、ｘｙＹ表色系を用いた場合、補正値はｘｙＹ表色系での座標のずれなどの情報である。
【００４５】
例えば図８Ａに示す本来の補正フレーム２３が灰色の単一色の補正フレームである場合は、図８Ｂに示す補正フレーム４１_２は補正フレーム２３からの輝度の変化を示している。この場合は、補正フレーム４１_２の各々のセルの輝度と補正フレーム２３の各々のセルの輝度の差分を求めることで、輝度の補正値を算出することができる。
【００４６】
補正値算出部３６で算出された補正値４６は色補正部３７に出力される。補正値算出部３６は、補正値を一時的にメモリ等に保存してもよい。
【００４７】
色補正部３７は、色情報取得部３４で取得した二次元カラーコード４１_１の色情報４４_１を、補正値４６を用いて補正し、補正後の色情報４７をデータ生成部３８に出力する。つまり図９に示すように、色補正部３７は、補正値４６を用いて二次元カラーコード４１_１の色情報４４_１を補正することで、本来の二次元カラーコードに対応した色情報４７（つまり、二次元カラーコード生成部１１で生成された二次元カラーコード２２に対応）に補正することができる。このとき色補正部３７は、二次元カラーコード４１_１の各々のセルの色を、各々のセルに対応した補正値４６を用いて補正する。
【００４８】
例えば色補正部３７は、補正値４６の逆数を二次元カラーコード４１_１の色情報４４_１にかけることで、二次元カラーコード４１_１の色情報４４_１を補正することができる。例えば、赤（Ｒ成分）が本来の８０％の輝度しか得られていない場合は、二次元カラーコード４１_１の特定のセルの色情報を１．２５倍する（つまり、Ｒ成分を１．２５倍する）ことで、本来の赤（Ｒ成分）の輝度に補正することができる。また、ｘｙＹ表色系での座標のずれが生じている場合には、そのずれを正しい位置に戻すような演算処理を行うことで、二次元カラーコード４１_１の色情報４４_１を補正することができる。
【００４９】
データ生成部３８は、二次元カラーコード４１_１の補正後の色情報４７を用いてデータ４８を生成する。
【００５０】
次に、本実施の形態にかかる二次元カラーコード読み取り装置の動作、つまり二次元カラーコードの読み取り動作について、図１０に示すフローチャートを用いて説明する。以下では、一例として二次元カラーコード表示装置１０の表示部１５に補正フレームが表示された後に、一連の二次元カラーコード（例えば新しいデータファイルに対応した二次元カラーコード）が表示される場合（図５Ａ参照）の動作について説明する。
【００５１】
まず、撮像部３１は、二次元カラーコード表示装置１０の表示部１５に表示されている補正フレームの画像データ４１_２を取得する（ステップＳ１１）。例えば撮像部３１は、表示部１５に表示されている補正フレームの画像データ４１_２を撮影して画像データを取得する。
【００５２】
次に、枠検出部３２は、撮像部３１で取得された補正フレーム４１_２から補正フレーム４１_２の外枠（つまり、補正フレーム４１_２の外周部分）を検出する（ステップＳ１２）。その後、中心位置計算部３３は、枠検出部３２から出力された枠情報４２を用いて各々のセルの中心位置の座標を計算する（ステップＳ１３）。このとき、中心位置計算部３３は、二次元カラーコードの行数および列数の情報を用いて、各々のセルの中心位置の座標を計算してもよい。
【００５３】
色情報取得部３４は、撮像部３１で取得された補正フレーム４１_２から、各々のセルの位置に対応する色情報を取得する（ステップＳ１４）。このとき、色情報取得部３４は、中心位置計算部３３で算出された中心位置の座標情報４３を用いて各々のセルの色情報を取得する。
【００５４】
補正フレーム判別部３５は、取得した色情報４４が補正フレーム４１_２の色情報４４_２であるかを判別する。今回取得した色情報は補正フレーム４１_２の色情報４４_２であるので、補正フレーム判別部３５は、色情報が補正フレーム４１_２の色情報４４_２であるという判別結果４５を補正値算出部３６に出力する（ステップＳ１５：Ｙｅｓ）。
【００５５】
補正値算出部３６は、補正フレーム４１_２の色情報４４_２を用いて補正値を算出する（ステップＳ１６）。算出された補正値はメモリ等に保存される。
【００５６】
その後、二次元カラーコード表示装置１０の表示部１５には、二次元カラーコードが表示される。撮像部３１は、表示部１５に表示されている二次元カラーコードの画像データ４１_１を取得する（ステップＳ１１）。
【００５７】
次に、枠検出部３２は、撮像部３１で取得された二次元カラーコード４１_１から二次元カラーコード４１_１の外枠（つまり、二次元カラーコード４１_１の外周部分）を検出する（ステップＳ１２）。その後、中心位置計算部３３は、枠検出部３２から出力された枠情報４２を用いて各々のセルの中心位置の座標を計算する（ステップＳ１３）。このとき、中心位置計算部３３は、二次元カラーコードの行数および列数の情報を用いて、各々のセルの中心位置の座標を計算してもよい。
【００５８】
色情報取得部３４は、撮像部３１で取得された二次元カラーコード４１_１から、各々のセルの色情報を取得する（ステップＳ１４）。このとき、色情報取得部３４は、中心位置計算部３３で算出された中心位置の座標情報４３を用いて各々のセルの色情報を取得する。
【００５９】
補正フレーム判別部３５は、取得した色情報４４が補正フレーム４１_２の色情報４４_２であるかを判別する。今回取得した色情報は二次元カラーコード４１_２の色情報４４_１であるので、補正フレーム判別部３５は、色情報が補正フレーム４１_２の色情報４４_２でないという判別結果４５を補正値算出部３６に出力する（ステップＳ１５：Ｎｏ）。この場合、補正値算出部３６は補正値を算出する処理を行わない。
【００６０】
次に色補正部３７は、色情報取得部３４で取得した二次元カラーコード４１_１の色情報４４_１を補正値４６を用いて補正し、補正後の色情報４７をデータ生成部３８に出力する（ステップＳ１７）。ここで補正値４６は、ステップＳ１６の処理において既に算出されており、この補正値は補正値算出部３６のメモリに保存されている。データ生成部３８は、二次元カラーコード４１_１の補正後の色情報４７を用いてデータ４８を生成する（ステップＳ１８）。
【００６１】
その後、二次元カラーコード表示装置１０の表示部１５には、一連の二次元カラーコードが表示される。二次元カラーコード読み取り装置３０は、一連の二次元カラーコードについてステップＳ１１〜Ｓ１８（ステップＳ１６を除く）の処理を繰り返す。この場合も色補正部３７は、補正値４６として、ステップＳ１６の処理において既に算出された補正値を使用する。
【００６２】
以上で説明した処理により、二次元カラーコード読み取り装置３０は、一連の二次元カラーコードからデータを読み取ることができる。
【００６３】
上記では、一例として二次元カラーコード表示装置１０の表示部１５に補正フレームが表示された後に、一連の二次元カラーコードが表示される場合（図５Ａ参照）について説明した。しかし、上記処理は、一連の二次元カラーコードが表示されている間に補正フレームが表示される場合（図５Ｂ参照）や、一連の二次元カラーコードが表示された後に補正フレームが表示される場合（図５Ｃ参照）にも同様に適用することができる。
【００６４】
例えば、一連の二次元カラーコードが表示されている間に補正フレームが表示される場合（図５Ｂ参照）は、補正フレームが表示されるまでに表示された二次元カラーコードの情報をメモリに保存しておく。そして補正フレームが表示されて補正値算出部３６が補正値を算出した後、メモリに保存されていた二次元カラーコード及びその後に表示される二次元カラーコードの色を補正値で補正し、補正後の二次元カラーコードを用いてデータを生成してもよい。
【００６５】
また、一連の二次元カラーコードが表示された後に補正フレームが表示される場合（図５Ｃ参照）は、一連の二次元カラーコードの情報をメモリに保存しておく。そして補正フレームが表示されて補正値算出部３６が補正値を算出した後、メモリに保存されていた一連の二次元カラーコードの色を補正値で補正し、補正後の二次元カラーコードを用いてデータを生成してもよい。
【００６６】
また、補正フレームが表示された後に一連の二次元カラーコードが表示される場合（図５Ａ参照）についても、補正値算出部３６が算出した補正値および一連の二次元カラーコードの情報をメモリに保存し、最後にまとめて一連の二次元カラーコードの色を補正値で補正し、補正後の二次元カラーコードを用いてデータを生成してもよい。
【００６７】
背景技術で説明したように、二次元カラーコードでは、二次元的に配置された複数のセルに、各々異なる複数の基準色の中から選択された所定の色を付すことでデータを記録している。そして二次元カラーコードの各セルに付された色情報を取得することで、記録されたデータを読み取ることができる。
【００６８】
例えば、従来の二次元カラーコードでは、４色から８色程度の色を用いているものが多い。この理由は、色数が多くなると読み取りが困難になるからである。また、プリンタの色再現の問題もあり、使用する色数を増加するには困難が伴った。一方で、二次元カラーコードのデータ量を増加させるには色数を増加させる必要がある。例えば、１６色（４ビット）のコードを使用すれば、４色（２ビット）の場合にくらべ２倍の情報量とすることができる。６４色のコードを用いればさらに情報量を増やすことができる。
【００６９】
このように色数を増やした場合は、それぞれの色を正確に分離する必要がある。例えば、４色の場合には、ＲＧＢの各成分における強度を比較し、最も明るい色を判別するだけで色の分離が可能であった。８色の場合にも、ＲＧＢの各成分における明るさが所定値よりも強いか弱いかを判断することで８つの色を判別することができる。光源の色や輝度、周囲の環境が多少変化した場合であっても、色の判別が出来ないと言うことは少なく、どちらかと言えば二次元カラーコードの汚れや退色による色変化の影響が大きかった。
【００７０】
一方、１６色以上の色を用いる場合は、ＲＧＢ以外の中間的な色を使用する。具体的には、灰色や橙色、茶色のような色を使用する。これらの中間色はＲＧＢの各成分における強度を判別するだけでは区別するのは困難であり、ＲＧＢの比率などを用いて色を判別する必要がある。このため、１６色以上の色を使用する場合は、二次元カラーコードで使用する基準色を二次元カラーコードに予め記録しておき、この基準色と各々のセルの色とを比較することで、光源の輝度や色が変化した場合にも二次元カラーコードを正確に読み取ることができる。
【００７１】
また従来では、二次元カラーコードは商品コードやＩＣカードに使用される場合が多く、例えば紙等に印刷して用いられる場合が多かった。一方で、二次元カラーコードはディスプレイに表示することでその応用分野が広がる。例えば、二次元カラーコードをディスプレイに表示することでデジタルサイネージに応用することができる。また、二次元カラーコードをディスプレイに表示し、当該二次元カラーコードを時間的に変化させることでデータ転送を行うことも可能である。
【００７２】
しかしながら、二次元カラーコードを表示装置に表示した場合は、表示装置をみる角度や二次元カラーコードを表示する位置によって、表示装置に表示される二次元カラーコードの色が本来の色から変化する場合がある。例えば表示装置の一つである液晶ディスプレイでは、液晶の偏光作用を利用しているため、ユーザがディスプレイを見る角度（つまり、ディスプレイ面に対するユーザの位置）によってはディスプレイに表示される色が変化する（図２参照）。よって、二次元カラーコードを表示装置に表示した場合は、表示装置をみる角度や二次元カラーコードを表示する位置によって表示装置に表示される二次元カラーコードの色が本来の色から変化し、二次元カラーコードを読み取る際にエラーが発生するという問題があった。
【００７３】
そこで本実施の形態では、二次元カラーコード表示装置の表示部に、二次元カラーコードの色を補正するための補正フレームを表示している。そして、二次元カラーコード読み取り装置において、この補正フレームを用いて、二次元カラーコードの色を補正するための補正値を算出し、当該補正値を用いて、表示部に表示されている二次元カラーコードの色を補正している。よって、表示部に表示された二次元カラーコードの色を、本来の二次元カラーコードの色に補正することができるので、二次元カラーコードを読み取る際のエラーを低減することができる。
【００７４】
以上で説明した本実施の形態にかかる発明により、二次元カラーコードを読み取る際のエラーを低減することができる二次元カラーコード表示装置、及びその表示方法、並びに二次元カラーコード読み取り装置、及びその読み取り方法を提供することができる。また、本実施の形態にかかる二次元カラーコード表示装置と二次元カラーコード読み取り装置とを用いることで、データ転送システムを構成することができる。
【００７５】
＜実施の形態２＞
次に、本発明の実施の形態２について説明する。実施の形態２では、補正フレームとして図１１に示す補正フレーム６０を用いている点が、実施の形態１で説明した二次元カラーコード表示装置および二次元カラーコード読み取り装置と異なる。これ以外は実施の形態１で説明した場合と同様であるので重複した説明は省略する。
【００７６】
図１１に示す補正フレーム６０は、二次元カラーコードを生成する際に用いられる各々の基準色Ａ〜Ｐに対応した各々の色Ａ〜Ｐが、表示部（ディスプレイ）の第１の方向（典型的には上下方向）に延びるように配置されている。更に、各々の基準色Ａ〜Ｐに対応した各々の色Ａ〜Ｐが、第１の方向と交差する第２の方向（典型的には左右方向）に配列されている。
【００７７】
図１２は、図１１に示す補正フレーム６０が二次元カラーコード表示装置の表示部に表示された状態の一例を示す図である。図１２に示すように、表示部に表示された補正フレーム６５は、本来の補正フレーム６０の色から変化している。例えば表示部の一例である液晶ディスプレイでは、液晶の偏光作用を利用しているため、ユーザがディスプレイを見る角度（つまり、ディスプレイ面に対するユーザの位置）によってはディスプレイに表示される色が変化する。特に液晶ディスプレイ等では、表示部の上下方向における色の変化は左右方向における色の変化と比べると大きい。
【００７８】
そこで本実施の形態では、液晶ディスプレイ等のこのような性質を考慮し、図１１に示す補正フレーム６０のように、各々の基準色Ａ〜Ｐに対応した各々の色Ａ〜Ｐ（各々の色Ａ〜Ｐはそれぞれ単一色とする）を表示部の上下方向に延びるように配置している。更に、各々の基準色Ａ〜Ｐに対応した各々の色Ａ〜Ｐを、左右方向に配列している。このような補正フレーム６０を用いることで、補正フレームが表示部に表示された際の各々の色Ａ〜Ｐの上下方向における変化を調べることができる。また、一つの補正フレーム６０に基準色Ａ〜Ｐ（この場合は１６色）を含めることができるので、補正フレームの数を少なくすることができる。
【００７９】
図１１に示す補正フレーム６０を用いた場合、二次元カラーコード読み取り装置の補正値算出部３６で算出される補正値は、二次元カラーコードの上下方向における補正値となる。このとき補正値算出部３６は、基準色Ａ〜Ｐのそれぞれについて補正値を算出する。つまり本実施の形態では、各々の基準色Ａ〜Ｐの縦方向における補正値が算出される。例えば、基準色Ａの補正値を、最上位のセルから順にＡ１、Ａ２、・・・、Ａ１６と表すことができる。この場合、横方向に並んでいるセルの補正値は同一となる。他の基準色についても同様である。
【００８０】
色補正部３７は、二次元カラーコード４１_１の色情報４４_１を、各々の基準色Ａ〜Ｐの縦方向における補正値を用いて補正する。例えば、図１３に示した二次元カラーコード７０のセル７１の色が基準色Ｂである場合、色補正部３７は二次元カラーコード７０のセル７１の色を、基準色Ｂの上から８番目の補正値Ｂ８を用いて補正することができる。また、例えば、二次元カラーコード７０のセル７２の色が基準色Ｂである場合も、色補正部３７は二次元カラーコード７０のセル７２の色を、基準色Ｂの上から８番目の補正値Ｂ８を用いて補正することができる。更に、例えば二次元カラーコード７０のセル７３の色が基準色Ｇである場合、色補正部３７は二次元カラーコード７０のセル７３の色を、基準色Ｇの上から４番目の補正値Ｇ４を用いて補正することができる。
【００８１】
このように本実施の形態では、一つの補正フレーム６０に複数の基準色Ａ〜Ｐを含めることができるので、使用する補正フレームの数を少なくすることができる。
【００８２】
なお、図１１に示した補正フレーム６０では、１つの補正フレームに全ての基準色Ａ〜Ｐを含めた。しかし１つの補正フレームに含める基準色の数は任意に決定することができる。例えば１つの補正フレームに８つの基準色を含めるようにしてもよい。この場合は、２つの補正フレームが必要となるが、補正フレームにおける各々の基準色の領域を広くすることができるので、補正値をより正確に算出することができる。
【００８３】
以上、本発明を上記実施形態に即して説明したが、本発明は上記実施の形態の構成にのみ限定されるものではなく、本願特許請求の範囲の請求項の発明の範囲内で当業者であればなし得る各種変形、修正、組み合わせを含むことは勿論である。
【符号の説明】
【００８４】
１０  二次元カラーコード表示装置
１１  二次元カラーコード生成部
１２  補正フレーム出力部
１３  表示フレーム選択部
１４  制御部
１５  表示部
２２  二次元カラーコード
２３  補正フレーム
３０  二次元カラーコード読み取り装置
３１  撮像部
３２  枠検出部
３３  中心位置計算部
３４  色情報取得部
３５  補正フレーム判別部
３６  補正値算出部
３７  色補正部
３８  データ生成部
【図１】
2014235676.tif 000003
【図７】
2014235676.tif 000004
【図１０】
2014235676.tif 000005
【図２】
2014235676.tif 000006
【図３】
2014235676.tif 000007
【図４】
2014235676.tif 000008
【図５Ａ】
2014235676.tif 000009
【図５Ｂ】
2014235676.tif 000010
【図５Ｃ】
2014235676.tif 000011
【図６】
2014235676.tif 000012
【図８Ａ】
2014235676.tif 000013
【図８Ｂ】
2014235676.tif 000014
【図９】
2014235676.tif 000015
【図１１】
2014235676.tif 000016
【図１２】
2014235676.tif 000017
【図１３】
2014235676.tif 000018