JP2019008564A - 多重化コード、多重化コード読取装置、多重化コード読取方法、およびプログラム - Google Patents

多重化コード、多重化コード読取装置、多重化コード読取方法、およびプログラム Download PDF

Info

Publication number
JP2019008564A
JP2019008564A JP2017123872A JP2017123872A JP2019008564A JP 2019008564 A JP2019008564 A JP 2019008564A JP 2017123872 A JP2017123872 A JP 2017123872A JP 2017123872 A JP2017123872 A JP 2017123872A JP 2019008564 A JP2019008564 A JP 2019008564A
Authority
JP
Japan
Prior art keywords
code
information
cell
codes
cells
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017123872A
Other languages
English (en)
Inventor
潔 上野
Kiyoshi Ueno
潔 上野
加藤 昌宏
Masahiro Kato
昌宏 加藤
天野 敏之
Toshiyuki Amano
敏之 天野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wom System Design Co
Original Assignee
Wom System Design Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wom System Design Co filed Critical Wom System Design Co
Priority to JP2017123872A priority Critical patent/JP2019008564A/ja
Publication of JP2019008564A publication Critical patent/JP2019008564A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)

Abstract

【課題】情報量を増加させることが可能なコードを提供する。
【解決手段】色の情報を取得可能な複数の領域であるセルを有する複数のコードが多重化された多重化コードであって、複数のコードが有するセルのサイズが、コード間で異なっており、複数のコードがそれぞれ有するセルのうちの1以上のセルは、異なるコードの1以上のセルと重なっており、複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、各コードに対応する情報を表す多重化コードである。
【選択図】図2

Description

本発明は、コードおよびコードを読み取る装置等に関するものである。
従来の技術として、複数のセルが配列され、前記複数のセルに色の異なる複数種類のセルが含まれるように各セルに色を付すことで該色または色の組合せに応じた1以上の情報それぞれをコード化した構成の二次元コードが知られていた(例えば、特許文献1参照)。
特開2012−33034号公報(第1頁、第1図等)
しかしながら、従来のコードにおいては、一のコード内に配置されるセル数等に限界があり、一のコードに対応付けられる情報量を増加させることができない、という課題があった。
本発明は、上記のような課題を解消するためになされたものであり、情報量を増加させることができるコードおよびコードを読み取る装置等を提供することを目的とする。
本発明の多重化コードは、色の情報を取得可能な複数の領域であるセルを有する複数のコードが多重化された多重化コードであって、複数のコードが有するセルのサイズが、コード間で異なっており、複数のコードがそれぞれ有するセルのうちの1以上のセルは、異なるコードの1以上のセルと重なっており、複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、各コードに対応する情報を表す多重化コードである。
かかる構成により、一の多重化コードから複数のコードを読み取ることができ、情報量を増加させたコードを提供することができる。また、コードのセル同士が重なっているため、例えば、コードのサイズの増加を抑えることができる。
また、本発明の多重化コードは、前記多重化コードにおいて、多重化された複数のコードのうちのセルのサイズが大きい1以上のコードが有する各セル内には、セルよりも小さいセルを有する1以上のコードの複数のセルが配置されている多重化コードである。
かかる構成により、一の多重化コードから複数のコードを読み取ることができ、情報量を増加させたコードを提供することができる。
また、本発明の多重化コードは、前記多重化コードにおいて、セルのサイズが異なる2以上のコードには、階層化された情報が対応付けられており、セルのサイズが異なる2以上のコードのうちの、セルのサイズが大きいコードには、セルのサイズが小さいコードよりも上位の階層の情報が対応付けられている多重化コードである。
かかる構成により、一の多重化コードにより、階層化された情報を提供することができる。また、上位の階層の情報と対応付けられたコードのセルが、下位の階層の情報と対応付けられたコードのセルよりも大きいため、例えば、コードを読み取る際の距離が遠い場合には、上位の階層のコードだけ読み取れるようにして、上位の階層の情報だけを提供できるとともに、コードを読み取る際の距離が近い場合には、いずれのコードも読み取れるようにして、上位の階層の情報と下位の階層の情報との両方を提供することができる。
また、本発明の多重化コードは、前記多重化コードにおいて、複数のコードの内の1以上のコードの各セルから取得される色の情報は、セル内に配置されるセルよりもセルのサイズが小さい他のコードが有する複数のセルから取得される色の情報を用いて取得され、当該1以上のコードは、当該取得される色の情報の配列が、コードに対応する情報を表している多重化コードである。
かかる構成により、一のセルの色の情報を、このセル内に配置されている複数の小さいセルの色の情報の配置パターンで表すことができる。
また、本発明の多重化コードは、前記多重化コードにおいて、複数のコードのうちの2以上のコード毎に取得される各コードが有する複数のセルの色の情報は、コード毎に異なる色の成分の情報であり、当該2以上のコードは、当該コード毎に取得される色の成分の情報の配列が、コードに対応する情報を表している多重化コードである。
かかる構成により、一の多重化コードから複数のコードを読み取ることができ、情報量を増加させたコードを提供することができる。また、セルのサイズが異なるコードが多重化されており、それぞれのコード毎に、セルの色の成分の情報を取得するため、、例えば、読み取れるコードを、撮影した画像内の含まれる多重化コードのサイズによって変化させることができ、コードを読み取る際の距離等に応じて、読み取れる情報を変化させることができる。
また、本発明の多重化コードは、前記多重化コードにおいて、複数のコードは、複数のセルから取得される明度と、複数のセルの配列との組合せにより情報を表す1以上のコードと、複数のセルから取得される色相、彩度、または色相と彩度との組合せと、複数のセルの配列との組合せにより情報を表す1以上のコードとを有する多重化コードである。
かかる構成により、一の多重化コードから複数のコードを読み取ることができ、情報量を増加させたコードを提供することができる。また、セルのサイズが異なるコードが多重化されており、それぞれのコード毎に、セルの色の成分の情報を取得するため、例えば、読み取れるコードを、撮影した画像内の含まれる多重化コードのサイズによって変化させることができ、コードを読み取る際の距離等に応じて、読み取れる情報を変化させることができる。
また、本発明の多重化コード読取装置は、色の情報を取得可能な複数の領域であるセルを有する複数のコードが多重化された多重化コードであって、前記複数のコードが有するセルのサイズが、コード間で異なっており、前記複数のコードがそれぞれ有するセルのうちの1以上のセルは、異なるコードの1以上のセルと重なっており、前記複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、各コードに対応する情報を表す多重化コードを撮影した画像を取得する画像取得部と、画像取得部が取得した多重化コードの画像から、多重化コードに含まれる複数のコードのそれぞれが有する複数のセルの色の情報を、各コード毎に取得するセル情報取得部と、セル情報取得部が複数のコード毎に取得したセルの色の情報を用いて、各コードに対応付けられた情報を読み取るコード読取部と、コード読取部が取得した情報を出力する出力部を備えた多重化コード読取装置である。
かかる構成により、多重化コードから、多重化されているコード毎の情報を読み取ることができる。
本発明による多重化コードによれば、情報量を増加させたコードを提供することができる。
また、本発明による多重化コード読取装置等によれば、多重化コードを読み取ることができる。
本発明の実施の形態における多重化コードを読み取るための多重化コード読取装置のブロック図 同多重化コードの一例を示す図(図2(a))、および同多重化コードに多重化された複数のコードのセルの配置を示す模式図(図2(b)〜(c)) 同多重化コードを読み取る多重化コード読取装置の動作について説明するフローチャート 同多重化コードを説明するための、同多重化コードの第一のコードを示す模式図(図4(a))、および同多重化コードの第二のコードを示す模式図(図4(b)) 同多重化コードから読み取った情報の表示例を示す図 同多重化コードから第二のコードが読み取れなかった場合の表示例を示す図 同多重化コードの一例を示す図(図7(a))、および同多重化コードの第一のコードおよび第二のコードを示す模式図(図7(b)、図7(c)) 同多重化コードの一例を示す図(図8(a))、同多重化コードの第一のコードを示す模式図(図8(b)) 同多重化コードの読み取りに用いられるマッチング用のパターンを示す図(図9(a)〜図9(j)) 同多重化コードの一例を示す図(図10(a))、および同多重化コードに多重化された複数のコードのセルの配置を示す模式図(図10(b)〜(d)) 同多重化コードの第一のコード、第二のコード、および第三のコードを示す模式図(図11(a)〜図11(c)) 同多重化コードの読み取りに用いられるマッチング用のパターンの一部を示す図(図12(a)〜図12(i)) 同多重化コードの一例を示す図(図13(a))、同多重化コードの第一のコードおよび第二のコードを示す模式図(図13(b)、図13(c)) 同多重化コードの一例を示す図(図14(a))、同多重化コードに多重化された第一のコードおよび第二のコードのセルの配置を示す図(図14(b)、図14(c))、および同多重化コードの第一のコードおよび第二のコードを示す模式図(図14(d)、図14(e)) 同実施の形態におけるコンピュータシステムの外観の一例を示す図 同実施の形態におけるコンピュータシステムの構成の一例を示す図
以下、多重化コード等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態における多重化コードから情報を読み取る多重化コード読取装置1のブロック図である。
図2は、本実施の形態における多重化コードの一例を示す図(図2(a))、およびこの多重化コードに多重化された複数のコードのセルの配置を示す模式図(図2(b)〜(c))である。
多重化コード100は、複数のコードが多重化されたコードである。多重化コード100や、多重化コードに多重化されたコード等のコードとは、例えば、色の情報を取得可能な複数の領域を有しており、複数の領域から取得される色の情報の配列によって、情報を読み取り可能なものである。ここでは、コードが有する色の情報を読み取り可能な領域をセルと呼ぶ。セルは、例えば、色の情報を読み取り可能な最小単位の領域である。セルとは、例えば、コードを構成する色の情報が配置される領域の最小単位と考えてもよい。コードを構成するセルの形状は問わない。ここでのコードは、文字列等で情報を表すものでなく、複数のセルによって情報を表すものであることから、例えば、イメージコードと考えてもよい。色の情報とは、色を表す名称(例えば、赤、オレンジ、緑、青、黄等)であっても良く、色を、RGB値や、CMYK値や、HSB値、Lab値等のカラーモデルの値で示す情報であってもよく、色の1以上の成分の値であってもよい。色の1以上の成分の値とは、例えば、カラーモデルの一の成分の値または二以上の成分の値の組合せである。例えば、色の情報は、色の1以上の特定の成分(例えば、H(色相)、S(彩度)、B(明度)、R値、G値、C値、K値等)の値であっても良く、2以上の特定の成分の値の組合せ(例えば、HとSとの組み合わせ、HとBとの組み合わせ、R値とB値との組合わせ、C値とM値とY値との組合わせ等)であっても良い。ここでの色とは、白黒等の二値や、グレースケール等も含む概念である。ここでの色は、例えば、一ビットで表される色であってもよく、8ビットで表される色であっても良く、24ビットで表される色であっても良く、これら以外のビット数で表される色の情報であっても良い。
多重化コード100に多重化されたコード(以下、多重化されたコードと称す)が有する複数のセルの形状は問わない。セルは、通常、正方形等の矩形であるが、円形や、アーチ型等の矩形以外の形状であっても良い。また、一の多重化されたコードが有するセルの形状や、サイズは、同じであっても異なるものであっても良い。なお、形状が異なるセルは、サイズも異なるセルと考えてよい。かかることは、以下においても同様である。
多重化されている一のコードが有するセルの数や、セルの配列形式等は問わない。例えば、複数のセルは、矩形等の所望の形状の複数のセルが、m行n列(mは1以上の整数、nは、2以上の整数)、またはn行m列のマトリクス状に配列されていても良く、アーチ形状等の所望の形状の複数のセルが、円環状に配列されていても良い。また、四角形以外の多角形のセルが、セルの一の辺同士が平行、あるいは重なるように配列されていても良い。コードが有するセルのサイズは、問わない。多重化されている一のコードが有する複数のセルのサイズが異なっていても良い。通常、一のコードの複数のセルが、一の方向にのみ配列されている場合、このコードは、一次元コードと呼ばれる。また、一のコードの複数のセルが、二以上の方向に配列されている場合、このコードは、二次元コードと呼ばれる。例えば、一の方向に配列された複数のセルを、二列以上有しているコードも、二次元コードと呼ばれる。
多重化されている複数のコードは、いずれも二次元コードであることが好ましい。多重化コード100に多重化されている複数のコードは、例えば、QRコード(登録商標)等の二次元コードや、カラーコード等である。カラーコードとは、例えば、複数の色を有するセルの配列が、所望の情報と対応づけられたコードである。カラーコードは、例えば、カラーバーコードやカメレオンコード等とも呼ばれる場合がある。また、コードは、ArUcoと呼ばれるARライブラリ等を用いて認識可能なARコード(2次元マーカー)等であってもよい。ただし、多重化コードに多重化されている複数のコードの一部が、いわゆる縞模様状に、太さの異なる線が配列されたバーコード等の一次元コードであってもよい。
多重化されているコードの周りには、コードが配置されている領域を示す枠等が設けられていても良い。ここでの枠は、例えば、所望の色の情報を取得可能な予め決められた太さの線である。また、コードが配置されている領域を示すマーカーとなる予め決められた図形等が、コードの周囲(例えば、矩形のコードの四隅等)に配置されていても良い。
多重化コード100は、色の情報を取得可能な複数のセルを有する複数のコードが多重化されたコードである。一のコードに、複数のコードが多重化されているということは、例えば、複数のコードが、分離して個別に読み取り可能となるよう一のコードに埋め込まれていることである。複数のコードが重ねられたコードとは、例えば、複数のコードのイメージ(例えば、画像)が、重ねられたコードであってもよい。2以上のコードが重ねられたコードとは、例えば、2以上のコードのイメージ(例えば、画像)が、重ねられて合成されたコードである。
多重化コード100に多重化されている複数のコードが有するセルのサイズは、コード間で異なっている。コード間でセルのサイズが異なるということは、例えば、コード毎にセルのサイズが異なっていることと考えてもよい。コード間でセルのサイズが異なるということは、例えば、コードが異なれば、セルのサイズも異なることである。コード毎に異なっていることと考えてもよい。また、多重化コード100に多重化されている複数のコードが有するセルの形状が、コード間で異なっていてもよい。コード間でセルの形状が異なることは、例えば、コード毎にセルの形状が異なることと考えてもよい。例えば、一のコード内のセルのサイズは異なっていても良く、同じであっても良く、サイズが異なるセルと、サイズが同じセルが混在していても良い。かかることは、一のコード内のセルの形状についても同様である。
多重化コード100に多重化されている複数のコードがそれぞれ有するセルのうちの1以上のセルは、同じ多重化コードに多重化されている異なる1以上のコードの1以上のセルと重なっている。重なっているということは、例えば、2以上のセルのそれぞれの少なくとも一部が共通する領域上に配置されていることである。重なりあっている異なるコードが有する2つのセルは、いずれも重ならない部分を有していても良く、セルの一方だけが重ならない部分を有していても良い。例えば、一のコードのサイズの小さいセルが、他のコードのサイズの大きいセル内に包含されるよう配置されていてもよい。また、一のコードのセルに、他のコードの2以上のセルが重なっていても良い。例えば、一のコードのセル内に、このセルよりもサイズが小さい他のコードの2以上のセルが配置されていても良い。
多重化コード100に多重化されているセルの大きさが異なる2以上のコードのうちの、セルの大きさが大きいコードが有する各セル内には、このセルよりも小さいセルを有するコードの複数のセルが配置されているようにすることが好ましい。例えば、一のコードが有する正方形のセル内に、このセルよりも小さい正方形のセルを有するコードのセルを、k行k列(kは、2以上の整数)となるよう配置してもよい。このようにすることで、例えば、各コードが有する情報量を異なるものとすることができるとともに、一のコードのサイズの小さいセルを、他のコードのサイズの大きいセルに重ねて配置することができ、多重化コード100のサイズを小型化することができる。
多重化コード100に多重化されているセルの大きさが異なる2以上のコードには、階層化された情報が対応付けられているようにし、セルの大きさが異なる2以上のコードのうちの、セルの大きさが大きいコードには、セルの大きさが小さいコードよりも上位の階層の情報が対応付けられているようにしてもよい。コードに対応付けられた情報とは、例えば、コードが表す情報であってもよく、コードから読み取られる情報であってもよい。階層化された情報とは、木構造を有する情報と考えてもよい。上位の階層の情報とは、例えば、分類が大きい情報や、包括化された情報である。回の階層の情報とは、情報が細分化された情報である。
多重化コード100は、多重化されている複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、それぞれコードに対応する情報を表しているコードである。コードに対応する情報は、コードに対応付けられた情報と考えてもよい。複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、それぞれコードに対応する情報を表す、ということは、例えば、各コードが有する複数のセルから取得される色の情報の配列から、それぞれに対応する情報を読み取ることができることと考えてもよい。例えば、一のコードのセルについて取得される色の情報が、二値の値である、あるいは閾値等で二値に変換されることが予め決まっているものであるある場合、このコードの色の情報の配置は、ARコードや、QRコード、バーコード等のような、通常の二値のセルで表されるコードと同様に読み取ることができる。また、例えば、一のコードのセルについて取得される色の情報が、三値以上の多値の値である、あるいは閾値等で三値以上の所定の値に変換できるものであれば、このコードの色の情報の配置を、カラーコード等の、通常の三値以上の多値のセルで表されるコードと同様に読み取ることができる。
多重化されている複数のコードのうちの2以上のコードは、例えば、コード毎に取得される複数のセルの色の情報が、コード毎に異なる色の成分の情報である。色の成分とは、例えば、上述したような色の1以上の成分の値である。例えば、色の成分は、例えば、カラーモデルの一の成分の値または二以上の成分の値の組合せであり、例えば、色相(H)、彩度(S)、明度(B)の値や、これらの2以上の値の組合せ(例えば、色相と彩度との組み合わせ、色相と明度との組み合わせ、R値とB値との組合わせ等)であっても良い。色の成分が異なるということは、例えば、色の成分の種類が異なることと考えてもよい。この2以上のコードは、例えば、コード毎に異なる色の成分の情報の配列が、各コードに対応する情報を表しているコードである。例えば、多重化コード100が、第一のコードと第二のコードとが多重化されたものであるとすると、この多重化コード100は、第一のコードが有する複数のセルからそれぞれ取得された、第一のコードに対応する色の成分の情報である色相の値の配列が、第一の情報を表し、第二のコードが有する複数のセルからそれぞれ取得された、第二のコードに対応する色の成分の情報である明度の値の配列が、第二の情報を表すものであっても良い。
なお、第一のコードに対応する色の成分の情報を、色相の値の代りに、彩度の値としてもよく、色相と彩度との組合せとしてもよい。また、第一のコードのセルから取得する色の成分の情報を、明度とし、第二のコードに対応する色の成分の情報を、色相、彩度、または色相および彩度の組合せとしてもよい。
セルの色の成分は、例えば、通常の画像処理により分離可能である。異なるコードのセルが重なっていても、それぞれのコードのセルから取得する色の情報が、コード毎に異なる色の成分の情報であれば、コード毎に容易に分離して取得することが可能である。例えば、第一のコードの一のセル(図示せず)内に、色のHSB値、すなわち色相(°)、彩度(%)、および明度(%)が(40、20,10)である単色の第二のコードの第一のセルと、HSB値が(70、50、10)である単色の第二のコードの第二のセルとが存在している場合、この第一のセルおよび第二のセルの明度の値が10%であるため、第一のコードの一のセルの明度の値として、10%を取得することができる。また、第二のコード第一のセルの色相の値としては、40%を、また、第二のセルの色相の値としては、70%を取得することができる。このようにして、セルが重なっていても、色の異なる成分の情報を分離して取得することが可能となる。
多重化されているコードのうちの、一のコードが有するセルについて取得される色の成分の情報が、二値の値(例えば、二値で表される明度や、彩度等)である場合、あるいは、閾値等で二値化することが予め決められている場合、このコードの色の情報の配置を、ARコードや、QRコード、バーコード等のような、通常の二値のセルで表されるコードと同様に読み取ることができる。また、例えば、一のコードのセルについて取得される色の成分の情報(例えば、色相や、色相と彩度との組合せ等)が、三値以上の多値の値である、あるいは閾値等で三値以上の所定の値に変換することが予め決められている場合、このコードの色の情報の配置を、カラーコード等の、通常の三値以上の多値のセルで表されるコードと同様に読み取ることができる。
セルの大きさが異なる2以上のコードのうちの、セルの大きさが大きい1以上のコードが有する各セル内に、このセルよりも小さいセルを有する1以上のコードの複数のセルが配置されている場合、セルの大きさが小さい1以上のコードの各セルの色の情報を、各セルから取得される色の情報とし、セルの大きさが大きい1以上のコードが有する各セルの色の情報は、例えば、各セル内に配置される各セルよりもセルの大きさが小さいコードが有する複数のセルから取得される色の情報を用いて取得される情報としてもよい。そして、取得したセルの色の情報の配列が、上記のセルの大きさが大きい1以上のコードに対応する情報を表すようにしてもよい。ここでの色の情報は、色の特定の成分の値であっても良く、RGB値や色の値であっても良い。セルから取得される色の情報は、セルから抽出される色の情報と考えても良い。セルから取得される色の情報は、例えば、セルを撮影した画像等から取得されるセルの色の情報である。
一のコードのセルの色の情報を、このセル内に配置されたこの一のコードよりもセルのサイズが小さい他のコードが有する複数のセルから取得される色の情報を用いて取得する処理は、例えば、一のコードのセル内に配置されている複数の小さいセルのそれぞれから取得された小さいセルの色の情報の配置パターンに対してパターンマッチングを行なうことで実現できる。例えば、複数の小さなセルが配置されている一のセルの色の情報として、この複数の小さなセルの色の情報の配列に対してマッチングする配置パターンに予め対応づけられた色の情報を取得するようにすればよい。このように、パターンマッチングによりセルの色の情報を取得することを、ここではハーフトーニングと呼ぶ。
なお、一のコードのセルの色の情報を、このセル内に配置されたこの一のコードよりもセルのサイズが小さい他のコードが有する複数のセルから取得される色の情報を用いて取得する場合、この一のコードのセルの色の情報は、上述したハーフトーニング以外の処理で取得するようにしてもよい。例えば、一のコードのセルの色の情報は、このセル内に配置された複数の小さいセルの色の情報の代表値や、この代表値を閾値等を用いて変換した色の情報であっても良い。ここでの代表値は、例えば、平均値、最頻値、中間値等である。かかることは以下においても同様である。
また、一のコードのセルの色の情報は、このセル内の画像の解像度を低解像度に変換した場合に得られる各画素の色の情報の代表値であってもよく、このセル内の画像の解像度を低解像度に変換して、セル内の画素が一つとなった場合の、この画素の色の情報であってもよい。
多重化コードに3以上のコードが多重化されている場合、各コードのセルの色の情報は、セルから取得したコード毎に異なる色の成分の情報と、ハーフトーニングにより取得される色の情報とが混在していても良い。
なお、多重化された複数のコード毎の複数のセルの配置を示す情報は、予め多重化コード読取装置1等に設定しておくことが好ましい。セルの配置を示す情報は、例えば、多重化されている各コード内に、複数のセルが図2(b)、(c)に示されているように配置されていることを示す情報である。セルの配置を示す情報は、例えば、各コードに含まれるセルの配列パターンを示す情報や、各コードに含まれるセルの形状を示す情報と各コードに含まれるセルの配列パターンを示す情報との組合わせや、各コード内の複数のセルの輪郭を示す座標群の情報や、複数のセルを配置した画像を示す各コードの画像データ等である。セルの形状を示す情報は、例えばセルの輪郭を示す座標等の情報や、セルの形状を示す画像データである。セルの配列パターンを示す情報は、例えば、複数のセルがコード内にどのように配置されているかを示す情報であり、例えば、マトリクス上に配置されているセルの行数と列数とを指定する情報であっても良い。また、セルの配列パターンを示す情報は、コード内におけるセルの配置されている位置を示す座標等の情報であってもよい。セルを配置した画像は、例えば、セルを検出する際のマスクデータや、アルファチャンネルデータ等として利用可能である。
また、セルの配置を示す情報とは、多重化コード100の全体の領域の輪郭に対する、各コード毎の各セルが配置されている領域の輪郭を示すテンプレート情報であってもよい。輪郭を示す情報は、例えば、輪郭を示す座標の情報や、輪郭の形状を示すベクトル画像の情報等である。セルの配置を示す情報の形式等は問わない。例えば、セルの配置を示す情報は、例えば、多重化コードに、一行二列の第一のコードと、二行四列の第二のコードとが多重化されていることを示す情報であってもよい。なお、セルの配置を示す情報は、セルの配置を検出可能な情報であればどのような情報であっても良い。コード毎のセルの配置を示す情報は、例えば、多重化されたコードの識別子等と対応付けて、多重化コード読取装置1の図示しない格納部等に格納される。
なお、多重化コード100に多重化され、複数のコード毎に取得される複数のセルの色の情報の配列から、各コードにそれぞれ対応する情報を取得する処理等は、コードの読取技術等として公知であるため、ここでは説明は省略する。
なお、多重化コードに多重化されている複数のコードの1以上は、一のコード内に複数のコード(例えば、QRコード等)を配列したコードであってもよい。
多重化コードは、例えば、シート、シール、箱、商品等の物体の表面等に印刷されている。多重化コードは、例えば、印刷物と考えてもよい。ただし、多重化コードは、モニタやプロジェクタ等の表示手段等により、表示されるものであってもよい。また、ここでの多重化コードは、多重化コードを出力(例えば、表示や印刷等)するために用いられる多重化コードのデータと考えてもよい。
次に多重化コード読取装置1について説明する。多重化コード読取装置1は、画像取得部11と、セル情報取得部12と、コード読取部13とを有している。
多重化コード読取装置1は、例えば、パーソナルコンピュータや、タブレット型端末、携帯電話、いわゆるスマートフォンと呼ばれる多機能携帯電話、携帯情報端末、スキャナ、カメラ、専用端末等により実現可能である。
画像取得部11は、CCDやCMOS等の撮像素子等を用いて、多重化コード100を撮影した画像を取得する。画像取得部11が取得する画像は、例えば、カラー画像である。ただし、多重化された各コードのセルから取得される色の情報が、グレースケール画像から取得可能な情報である場合(例えば、二値の色情報である場合)等においては、画像取得部11が取得する画像は、グレースケール画像であっても良い。なお、以下においては、画像取得部11が取得する画像がカラー画像である場合を例に挙げて説明する。取得する画像は、通常は、静止画像であるが動画像であっても良い。例えば、画像取得部11は、撮像素子を用いて取得した動画像から、一の静止画像を取得しても良い。画像の形式等は問わない。画像取得部11が取得する画像の解像度は問わないが、多重化コード100の全体をできるだけ画像内にフィットするよう撮影した場合に、多重化コード100の最も小さいセル同士を識別可能となるような解像度とすることが好ましい。画像取得部11は、複数の多重化コード100を同時に撮影した画像を取得しても良い。画像取得部11は、撮像素子を備えていても良く、備えていなくてもよい。画像取得部11は、例えば、静止画像を撮影するデジタルスチルカメラや、動画像を撮影するデジタルカムコーダ等の、撮像素子を有するカメラにより実現可能である。本実施の形態においては、画像取得部11が撮像素子等を有しているカメラである場合を例に挙げて説明する。なお、画像取得部11が撮像素子を備えていない場合、画像取得部11による画像の取得は、撮像素子を有するカメラ等の外部の撮像手段が取得して出力する画像の受け付け等と考えてもよく、画像取得部11は、外部の撮影手段が取得した画像を受け付けて取得するものと考えてもよい。
セル情報取得部12は、画像取得部11が取得した多重化コード100の画像から、この多重化コード100に含まれる複数のコードのそれぞれが有する複数のセルの色の情報を、各コード毎に取得する。例えば、セル情報取得部12は、多重化コード100の画像から、多重化コード100の部分を切り出し、切り出した画像から、多重化コード100に含まれる複数のコードのそれぞれが有する複数のセルの色の情報を取得する。切り出した画像を、以下、多重化コード100の部分画像と称す。多重化コード100の部分を切り出す際には、例えば、多重化コード100の枠や、多重化コードの外周を示すマーカー等を利用して切り出しても良く、画像の外周側に存在する背景色等を利用して切り出しても良い。画像からコードの部分を切り出す処理は公知技術であるため、ここでは詳細な説明は省略する。また、セル情報取得部12は、画像取得部11が取得した多重化コード100の画像や、上記のように多重化コード100の部分を切り出した画像に対して、明度や、コントラスト、色調等の画像を補正するための画像処理や、多重化コード100の形状を補正するための画像処理等の、通常のコード読み取りにおいて行なわれる画像処理等を行なっても良い。なお、このような画像の補正や形状の補正は、コードの画像からコードを読み取る技術として公知であるため、ここでは詳細な説明は、省略する。
セル情報取得部12は、上記のように切り出した多重化コード100の部分画像について、多重化されている各コード毎に、セルの色の情報を取得する。セル情報取得部12は、例えば、コードに対応する複数のセルから取得したコードの色の情報と、各セルの配置を示す情報と、の組合せを、多重化コード100に多重化された複数のコードについてそれぞれ取得する。セル情報取得部12は、さらに、色の情報を取得したコードを示す情報(例えば、コードの識別子等)を取得しても良い。セルの配置を示す情報は、例えば、セルの領域の輪郭の座標を示す情報であっても良く、セルの配列されている位置や順番等を示す情報(例えば、セルを行と列とで指定する情報)等であっても良い。なお、セル情報取得部12は、各コード毎に取得したセルの色の情報と、各セルの配置を示す情報とを用いて、多重化されている各コードの画像を生成するようにしても良い。
例えば、セル情報取得部12は、図示していない格納部等に予め格納されている各コードが有するセルの配置を示す情報を有しており、このセルの配置を示す情報を用いて、切り出した多重化コード100の部分画像から、各コード毎にセルの位置を認識し、認識したセルの色の情報を取得する。セルの色の情報とは、例えば、多重化コード100の部分画像の、セルに対応する領域の色の情報である。例えば、セルの配置を示す情報が、各コードのセルが、多重化コード内に配列されている行数と列数とを示す情報である場合、上記のように切り出した多重化コード100の部分を、コード毎に示された行数と列数との組合せで分割することで、各セルの位置を特定することができる。なお、一部のコードのセルが、行および列を区切る区切り線等で区切られている場合、このコードのセルは、この区切り線等で認識してもよい。また、このように区切られたセル内に含まれる他のコードの複数のセルは、予め用意されたこの区切られたセル内に含まれるセルの行数と列数との情報を用いて、認識してもよい。
また、セルの配置を示す情報として、例えば、上述したようなテンプレート情報でを用いた場合、セル情報取得部12は、テンプレート情報が示す多重化コード100の全体の領域の輪郭が、上記のように切り出した画像の輪郭にフィットするように、テンプレート情報、または、切り出した画像を変形したあと、切り出した画像の、テンプレート情報の各セルの領域と重なる領域の色の情報を、各セルの色の情報として取得するようにしても良い。
なお、上記において、多重化コード100の部分画像を切り出す代りに、多重化コード100の部分画像を認識、例えば、多重化コード100の部分画像の輪郭等を認識するようにして、この認識した領域だけを、コード読み取り処理の対象の領域に特定できるようにしても良い。この場合、上記のような多重化コード100の部分の形状の補正は、例えば、多重化コード100の部分画像の輪郭が予め決められた形状となるように行なわれる多重化コード100を撮影した画像全体に対する補正であっても良い。
セル情報取得部12は、例えば、多重化されたコード毎に指定された色の情報を、多重化コード100の、多重化された各コードが有するセルから取得する。この色の情報は、例えば、図示しない格納部等に、予め格納されている。また、各コードのセルからの、色の情報を取得するための処理等を指定する情報も、更に、図示しない格納部に格納されていてもよく、セル譲歩宇取得部12は、この情報に従って、1以上のコードのセルの色の情報を取得しても良い。
セル情報取得部12は、例えば、多重化コード100を撮影した画像の、複数のコードがそれぞれ有する各セルの領域に含まれる1の画素の色の情報、または、2以上の画素の色の代表値を取得することにより、多重化コード100に含まれる複数のコードのそれぞれが有する複数のセルの色の情報を、各コード毎に取得する。ここでの色の情報とは、色全体の情報であってもよく、色の成分の情報であってもよい。色全体の情報とは、例えば、単独で色を表すことができる情報である。色全体の情報は、例えば、色の、RGB値や、CMYK値や、HSB値等である。色の平均値等の代表値の算出方法等については、画像処理ソフトウェア等において公知の技術であるため、ここでは詳細な説明は省略する。ここでの、多重化コード100を撮影した画像は、枠等を用いて切り出した多重化コード100の部分画像も含むと考えてもよい。
セル情報取得部12は、例えば、複数のコードがそれぞれ有する各セルから、コード毎に異なる色の成分の情報を取得することにより、多重化コード100に含まれる複数のコードのそれぞれが有する複数のセルの色の情報を、各コード毎に分離して取得する。セルの色の成分は、セルの色の成分の一部と考えてもよい。取得する色の成分は、例えば、コード毎に予め設定しておくようにする。例えば、多重化コード100がセルの大きさが異なる第一のコードと第二のコードとが多重化されたコードであるとすると、セル情報取得部12は、多重化コード100に含まれる第一のコードが有する複数のセルからは、色相、彩度、または色相と彩度との両方の情報を取得し、第二のコードが有する複数のセルからは、明度の情報を取得するようにしてもよく、この逆であってもよい。なお、各セル内の成分の情報としては、例えば、セル内に含まれる画素の色の成分の情報の代表値を取得すればよい。また、上記のように、各セル内の色全体の情報を取得した後、この色の情報の一部の所望の成分の情報を取得しても良い。なお、画像から、色の成分の情報を取得する処理は、通常の画像処理においては公知技術であるため、ここでは詳細な説明は省略する。例えば、色相、彩度、および明度等の色の成分の情報は、例えば、画像を構成する画素のRGB値等から算出することも可能である。
また、セルの大きさが異なる2以上のコードのうちの、セルの大きさが大きいコードが有する各セル内に、このセルよりも小さいセルを有するコードの複数のセルが配置されている場合、セル情報取得部12は、セルの大きさが大きいコードの各セルから取得される色の情報を、このセル内に配置される当該セルよりもセルの大きさが小さいコードが有する複数のセルから取得される色の情報を用いて取得するようにしてもよい。例えば、セル情報取得部12は、まず、セルの大きさが小さいセルからそれぞれ色の情報を取得して、この小さいセルを有するコードが有する複数のセルの色の情報を取得する。ここで取得するセルの色の情報は、セルの色の一部の成分の情報であっても良く、セルの色全体を示す色の情報であってもよい。更に、セル情報取得部12は、この小さいセルが複数配置された大きいセルの色の情報は、この小さいセルについて取得した色の情報を用いて取得する。具体的には、一の大きなセルの色の情報を、このセル内に配置されている複数の小さいセルから取得される色の情報と、この小さいセルの色の配置とを用いて取得する。
例えば、予め、図示しない格納部等に、大きなセル内に配置される複数の小さいセルの色の情報の複数の異なる配置パターンと、大きいセルの色の情報と、を対応付けた情報を用意しておくようにし、この配置パターンの中から、多重化コード100の部分画像の、大きなセルのそれぞれの内部に配置されている複数の小さいセルから取得した色の情報の配置パターンと一致する配置パターンを、パターンマッチングにより検出し、検出した配置パターンに対応付けられた色の情報を、それぞれの大きなセルの色の情報として取得することにより、この大きなセルを有するコードの各セルの色の情報を取得しても良い。
また、セル情報取得部12は、一のセル内の色の情報を取得する場合、このセル内の画像の解像度を低解像度に変換して、セル内の低解像度に変換した画素を用いて、セルの色の情報を取得してもよい。
また、一の大きなセル内に配置されている小さいセルの色の情報の数に応じて、大きなセルの色の情報を取得しても良い。例えば、大きなセル内に含まれる複数の小さいセルの色の情報のうちの、最も数が多い色の情報を、大きなセルの色の情報として取得しても良い。
なお、セル情報取得部12は、例えば、各セルから取得した色の情報を、閾値等を用いて、取得した色に近い予め決められた二以上の色の情報のいずれかに置き換えても良い。このような色の情報の置き換えを、多値化と呼ぶ。二以上の色の情報に多値化することを、ここでは、二値化と呼ぶ。この置き換えは変換と考えてもよい。例えば、セル情報取得部12は、値が60%未満の明度を、値が50%の明度に置き換え、値が50%以上の明度を、値が100%の明度に置き換えることで、色の明度を二値化してもよい。また、各セルから取得した色相の情報が含まれる色相の範囲を、複数の色相の範囲の中から、色相の範囲を示す閾値等を用いて検出し、検出した色相の範囲に対応付けられた色の情報を、このセルの色の情報、あるいは色相の情報として取得しても良い。例えば、複数の色相の範囲が三以上用意されている場合、この色の情報の置き換えは、三値以上の多値化である。例えば、多重化されたコードが、8色のセルを有しうる場合、このコードを読み取るために、セルの色の情報を、八値化するようにしてもよい。なお、このような多値化は、色の情報の配列からコードを読み取る処理に含まれていても良い。
コード読取部13は、セル情報取得部12が多重化コード100に多重化されている複数のコード毎に取得したセルの色の情報を用いて、各コードに対応付けられた情報を取得する。ここでの各コードに対応付けられた情報の取得は、各コードに対応付けられた情報の読み取りと考えてもよい。以下、各コードから、コードに対応付けられた情報を取得する処理を、コードから情報を読み取る処理として説明を行なう。
コード読取部13は、例えば、上述したような多重化コード100に多重化された複数のコードについてセル情報取得部12がそれぞれ取得した、各コードに対応する複数のセルから取得したコードの色の情報と、各セルの配置を示す情報との複数の組合せを用いて、多重化コード100に多重化されている複数のコードをそれぞれ読み取る。一のコード内の複数のセルの配列と、各セルから取得された色の情報との組合わせから、コードを読み取る処理については、コードを読み取る技術として公知技術であるため、ここでは詳細な説明は省略する。
コード読取部13は、セル情報取得部12が多重化されたコードについて取得したセルの色の情報に対して、上述したような多値化を行ない、多値化されたセルの情報を用いて、多重化された各コードの読み取りを行なっても良い。多値化を行なう際の値の数は、色の情報に応じて決定しても良く、コードを読み取る処理等に応じて決定しても良い。また、この値の数は、各コード毎に指定されていてもよい。なお、コード読取部13が多値化を行なう場合、セル情報取得部12による多値化は行なわなくてよい。
コード読取部13は、例えば、多重化コード100に多重化されている各コード毎に予め決められた読み取りかたによって、各コードを読み取る。例えば、二値のコードとして読み取ることが予め決められたコードについては、このコードのセルから取得された色の情報を二値の情報として扱って、このコードを読み取る。例えば、コード読取部13は、明度を二値で読み取ることが指定されているコードについては、このコードのセルから取得される色の明度の値を閾値等を用いて二値の情報に変換し、この変換した情報をセルの情報として用いて、コードを読み取っても良い。また、3以上のカラーのコードとして読み取ることが予め決められたコードについては、このコードのセルから取得された色の情報を三値以上の色の情報として扱って、このコードを読み取ってもよい。例えば、コード読取部13は、色相と彩度との3組以上の組合せで読み取ることが指定されているコードについては、このコードのセルから取得される色の色相と彩度との組合せを、閾値等を用いて三値以上の色の値のいずれかに変換し、この変換された色の値を、各セルの色の情報として用いて、コードを読み取っても良い。
なお、セルから取得した色の成分の情報を用いてコードを読み取る処理は、セルの色の情報として、色の全ての成分を利用するか、色の一部の成分だけを用いるかの違いであることから、従来のカラーコード等を認識する処理と同様の処理により実現することができる。例えば、セルの色相と彩度との値を用いてコードを読み取る処理は、セルのRGB値を用いてコードを読み取る処理において、セルのRGB値を用いる代りにセルの色相と彩度の値を用いるようにすることで容易に実現可能である。
なお、セル情報取得部12が、各コード毎に取得したセルの色の情報と、各セルの配置を示す情報とを用いて、多重化されていた各コードの画像を生成するようにした場合、コード読取部13は、この各コード毎の画像を用いて、各コードを読み取るようにしても良い。コードの画像からコードを読み取る処理は公知技術であるため、ここでは詳細な説明は省略する。
コード読取部13は、多重化コード100に多重化された各コードから各コードに対応付けられた情報を取得する。コード読取部13が取得した情報は、例えば、多重化コード100に多重化された各コードを読み取った情報である。セル情報取得部12が各コードから取得した情報、即ち各コードから読み取った情報は、例えば、各コードに対応付けられた文字列等の情報である。ここでの文字は、数字も含む概念である。この文字列は、各コードに対応付けられた識別子であっても良い。また、セル情報取得部12が取得する情報は、コードから読み出された情報(例えば、識別子等)に予め対応付けられて図示しない格納部等に格納されていた情報であっても良い。
なお、セル情報取得部12は、読み取れなかったコードについては、読み取れなかったことを示す情報や、エラーであることを示す情報や、読み取れなかったコードの識別子を取得しても良く、取得しなくても良い。
出力部14は、コード読取部13が取得した情報を出力する。コード読取部13が取得した情報は、コード読取部13が、多重化コード100に多重化された各コードを読み取った情報である。なお、出力部14は、読み取れないコードと、読み取れたコードとがあった場合、読み取れなかったコードがあったことを示す情報を出力しても良い。読み取れなかったコードがあったことを示す情報は、例えば、読み取れなかったことを警告する情報である。読み取れなかったコードがあったことを示す情報は、例えば、読み取れなかったコードの識別子等を含む情報であっても良い。
ここでの出力は、例えば、モニタへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。出力部14は、モニタやプリンタ等の出力デバイスを含むと考えても含まないと考えても良い。出力部は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
次に、本実施の形態の多重化コード読取装置1の動作の一例について、図3に示すフローチャートを用いて説明する。
(ステップS101)画像取得部11は、多重化コード100を撮影した画像を取得したか否かを判断する。例えば、画像取得部11は、図示しない撮像素子を用いて、多重化コード100を撮影して、多重化コードを撮影した画像を取得したか否かを判断する。取得した場合、ステップS102に進み、取得していない場合、ステップS101に戻る。
(ステップS102)セル情報取得部12は、ステップS101で取得した画像から、多重化コード100の部分画像を切り出す。
(ステップS103)セル情報取得部12は、カウンターkの値として1を代入する。
(ステップS104)セル情報取得部12は、多重化コード100にk番目のコードが多重化されているか否かを判断する。多重化されている場合、ステップS105に進み、多重化されていない場合、ステップS110に進む。
(ステップS105)セル情報取得部12は、ステップS102で取得した部分画像の、多重化コード100に多重化されているk番目のコードが有する複数のセルから、k番目のコードに対応した色の情報を取得する。
(ステップS106)コード読取部13は、ステップS105で取得したk番目のコードの複数のセルについて取得した色の情報を用いて、k番目のコードに対応付けられた情報を取得する処理、すなわちk番目のコードの読み取り処理を行なう。
(ステップS107)コード読取部13は、ステップS106において、k番目のコードが読み取れたか否かを判断し、読み取れた場合、読取りによって取得した情報を図示しない格納部等に蓄積して、ステップS109に進み、読み取れなかった場合、ステップS108に進む。
(ステップS108)コード読取部13は、k番目のコードが読み取れなかったことを示す情報を、図示しない格納部等に蓄積する。そして、ステップS109に進む。
(ステップS109)カウンターkの値を1インクリメントする。そして、ステップS104に戻る。
(ステップS110)出力部14は、ステップS106で読み取れたコードがあったか否かを判断する。例えば、出力部14は、ステップS107でコードから取得した情報、すなわちコードから読み取った情報であって、図示しない格納部に蓄積した情報があるか否かを判断し、あった場合、読み取れたコードがあったと判断してステップS111に進む。また、なかった場合、読み取れたコードがなかったと判断してステップS101に戻る。
(ステップS111)出力部14は、ステップS106で読み取れなかったコードがあったか否かを判断する。例えば、出力部14は、ステップS108で図示しない格納部に蓄積された情報、すなわちコードから情報が読み取れなかったことを示す情報があるか否かを判断し、あった場合、読み取れなかったコードがあったと判断してステップS112に進む。また、なかった場合、読み取れたコードがなかったと判断してステップS113に進む。
(ステップS112)出力部14は、ステップS106でコードから読み取った情報、すなわち、コードから取得した情報と、読み取れなかったコードがあることを警告する情報とを出力する。そして、ステップS101に戻る。
(ステップS113)出力部14は、ステップS106でコードから読み取った情報、すなわち、コードから取得した情報を出力する。そして、ステップS101に戻る。
なお、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
(具体例1)
以下、本実施の形態における具体例1について、図2(a)に示した多重化コード100の例を用いて説明する。なお、以下の具体例1等においては、タブレット型の携帯端末で実現される多重化コード読取装置1を用いて、多重化コードの読み取りを行なう場合を例に挙げて説明する。
図2(a)の多重化コード100は、図2(b)に示すような2行3列の正方形のセルC1〜C6を有する第一のコード101と、図2(c)に示すような6行9列の正方形のセルを有する第二のコード102とが、多重化されたコードであるとする。多重化コード100の外側には黒色の枠109が設けられている。
第一のコード101と第二のコード102とは、同じサイズを有している。第一のコード101の各セルC1〜C6の一辺は、第二のコード102の各セルの一辺の3倍の長さを有している。第一のコード101の一のセル内には、3行3列に配列された第二のコード102のセルが配置されるよう、第一のコード101と第二のコード102とが多重化されている。
この多重化コード100は、第一のコード101のセル毎に含まれる第二のコード102の複数のセルが、予め決められた三通りの色相および彩度の組合せのうちの共通する一つの組合せを有するものとし、第二のコード102の各セルが、予め決められた二通りの明度のうちの一つを有するものとしたものである。
具体的には、多重化コード100の第一のコード101のセルC1およびC5内には、複数の第二のコード102のセルとして、色相(H)、彩度(S)、明度(B)の組合せ(以下、H,S,Bと称す)が、(H,S,B)=(60,100,100)である明るい黄色のセルCy1と、(H,S,B)=(60,100,60)である暗い黄色のセルCy2とが配置されている。なお、色相(H)の単位は度(°)、彩度(S)の単位は%、明度(B)の単位は%であるとする。かかることは以下においても同様である。
また、多重化コード100の第一のコード101のセルC2、C4およびC6内には、複数の第二のコード102のセルとして、(H,S,B)=(210,100,100)である明るい青色のセルCb1と、(H,S,B)=(210,100,60)である暗い青色のセルCb2とが配置されているものとする。
また、多重化コード100の第一のコード101のセルC3内には、複数の第二のコード102のセルとして、(H,S,B)=(0,100,100)である明るい赤色のセルCr1と、(H,S,B)=(0,100,60)である暗い赤色のセルCr2とが配置されているものとする。
ここでは、多重化コード100に多重化されている第一のコード101は、第二のコード102よりも上位階層のコードであるとする。また、第一のコード101に対応付けられている第一のコード101から読み取られる情報と、第二のコード102に対応付けられている第二のコード102から読み取られる情報とも階層化されており、第一のコード101から読み取られる情報は、第二のコード102から読み取られる情報よりも上位の階層の情報であるとする。ここでは、例えば、多重化コード100は商品に貼付された商品の保管先を示す情報であり、第一のコード101から読み取られる情報は、商品が保管される倉庫を示す情報であり、第二のコード102から読み取られる情報は、商品が保管される倉庫内のエリアを示す情報であるとする。
例えば、商品を保管するために、商品に貼付された図1(a)に示した多重化コードを画像取得部11により撮影すると、画像取得部11は、図1(a)に示した多重化コード100の画像を含むカラーの画像を取得する。
セル情報取得部12が、画像取得部11が撮影した画像から、多重化コード100の部分画像を切り出す。例えば、セル情報取得部12は、多重化コード100の枠109を画像処理で認識することで、多重化コード100の輪郭を検出して、多重化コード100の部分画像を切り出す。また、セル情報取得部12は、切り出した部分画像において、枠109内の形状が、予め指定されている多重化コード100の枠109内の縦横比となるよう、部分画像の形状を補正する。
次に、第一のコード101の読み取りを行なうために、セル情報取得部12は、補正した多重化コード100の部分画像の、枠109内において、第一のコード101のセルC1〜C6を検出する。例えば、予め図示しない格納部等に格納されている第一のコード101が図2(b)にしめすような2行3列の6つのセルで構成されていることを示す情報を読み出して、多重化コード100の部分画像の枠109内を、2行3列の正方形のセルに分割する。そして、分割したセル毎に、第一のコード101に対して予め指定されている色の一部の成分である色相および彩度の値を取得する。
上述したように、第一のコード101のセルC1およびC5内には、(H,S,B)=(60,100,100)である明るい黄色のセルCy1と、(H,S,B)=(60,100,60)である暗い黄色のセルCy2とだけが配置されているため、この多重化コード100の部分画像の、セルC1およびC5の領域内の複数の画素からは、色相および彩度の値(以下、H,Sと称す)として、(H,S)=(60,100)に近い値が取得される。なお、この各画素の値は、例えば、撮影時の状況(例えば照明の具合)等によってバラツキが生じるため、撮影対象のオリジナルの色の情報とは異なることがある。かかることは、以下においても同様である。そして、ここでは、セル情報取得部12は、セルC1およびC5の領域内の複数の画素から取得した色相および彩度の値の平均値を、セルC1およびC5についてそれぞれ算出して、セルC1については、(H,S)=(61,98)を取得し、セルC5については、(H,S)=(64,96)を取得したとする。
また、上述したように、多重化コード100の第一のコード101のセルC2、C4およびC6内には、(H,S,B)=(210,100,100)である明るい青色のセルCb1と、(H,S,B)=(210,100,60)である暗い青色のセルCb2とが配置されているため、この多重化コード100の部分画像の、セルC2、C4およびC6の領域内の複数の画素からは、(H,S)=(210,100)に近い値が取得される。そして、ここでは、セル情報取得部12は、セルC2、C4およびC6の領域内の複数の画素から取得した色相および彩度の値の平均値を、セルC2、C4およびC6についてそれぞれ算出して、セルC2については、(H,S)=(219,98)を取得し、セルC4については、(H,S)=(217,98)を取得し、セルC6については、(H,S)=(215,96)を取得したとする。
同様に、多重化コード100の第一のコード101のセルC3内には、(H,S,B)=(0,100,100)である明るい赤色のセルCr1と、(H,S,B)=(0,100,60)である暗い赤色のセルCr2とが配置されているため、この多重化コード100の部分画像の、セルC3の領域内の複数の画素からは、それぞれ(H,S)=(0,100)に近い値が取得される。そして、ここでは、セル情報取得部12は、セルC3の領域内の複数の画素から取得した色相および彩度の値の平均値を、セルC3についてそれぞれ算出して、セルC3については、(H,S)=(1,97)を取得したとする。
図4は、コード読取部13が行なう処理を説明するための、三値化された第一のコード101の色の情報の配置を示す模式図(図4(a))、および二値化された第二のコード102の色の情報の配置を示す模式図(図4(b))である。
コード読取部13は、上記で取得した第一のコード101の各セルC1〜C6の色相の平均値および彩度の平均値と、予め図示しない格納部に格納されている第一のコード101の各セルC1〜C6の配列を示す情報とを用いて、第一のコード101を読み取る。例えば、まず、コード読取部13は、予め図示しない格納部等に用意された第一のコード101のセルに設定される3つの色の値である「赤」、「青」、および「黄」と、
それぞれ対応する色相と彩度の値の範囲を指定する情報との組合せを用いて、上記で取得した第一のコード101の各セルC1〜C6の色相の平均値および彩度の平均値とを、三値化、即ち、上述した「赤」、「青」、および「黄」の三値のいずれかの値に変換する。例えば、一のセルについて取得した(H,S)の値が、「赤」に対応付けられた色相(H)の値の範囲と、彩度(S)の値の範囲との両方を満たす場合、このセルの色の情報を「赤」に変換する。両方を満たさない場合、他の色の範囲について順次、同様の判断を行なって、3色のいずれかの色の情報に変換する。いずれの色の情報にも変換できない場合、例えば、エラーとなる。ここでは、各セルC1〜C6について、いずれかの色の情報に変換できたとする。
三値に変換された値で表された第一のコード101の模式図は、図4(a)のようになる。各セルC1〜C6内の文字「赤」、「青」、および「黄」は、三値化された値を示す。ただし、この図は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
そして、変換されて三値の値で表されたセルC1〜C6の配列を読み取って、第一のコード101に予め対応付けられた情報を取得する。なお、色の情報が3以上の多値の値で表される複数のセルの色の情報の配列を読み取って、この配列に対応する情報を取得する処理は、カラーコードの読み取り技術等として公知であるため、ここでは詳細な説明は省略する。例えば、コード読取部13は、第一のコード101から、商品が保管される倉庫を示す情報として、「第一倉庫」という情報を取得したとする。取得した情報は、図示しない格納部等に蓄積する。
なお、ここでは、各セルの色の情報である色相および彩度の情報の組合せを三値化した場合を例に挙げて説明したが、各セルの値は、三値以上の予め決められた多値の値、例えば、八値等に変換して、この多値化された値を有するセルの配列パターンから、コードを読み取るようにしても良い。かかることは以下においても同様である。この多値化の値の数は、各セルに割り当てられる色の情報(例えば、色の成分の情報)の数等に応じて適宜変更しても良い。
次に、第二のコード102の読み取りを行なうために、セル情報取得部12は、補正した多重化コード100の部分画像の、枠109内において、第二のコード102の複数のセルとして、図2(c)に示すような6行9列の正方形のセルを検出する。例えば、予め図示しない格納部等に格納されている第二のコード102が6行9列の複数のセルで構成されていることを示す情報を読み出して、多重化コード100の部分画像の枠109内を、6行9列のセルに分割する。そして、分割したセル毎に、第二のコード102に対して予め指定されている色の一部の成分である明度を取得する。この色の成分は、第一のコード101のセルからの取得対象として指定されている成分とは異なる成分であるとする。
例えば、上述した第二のコード102のセルの内の、セルCr1、Cb1、およびCy1内に位置する1以上の画素からは、明度の値として、「100」%に近い値が取得され、これらの各セルCr1、Cb1、およびCy1の明度の値としては、上記で取得された画素の明度の平均値が取得される。同様に、上述した第二のコード102のセルの内の、セルCr2、Cb2、およびCy2内に位置する1以上の画素からは、明度の値として、「60」%に近い値が取得され、これらの各セルCr2、Cb2、およびCy2の明度の値としては、上記で取得された画素の明度の平均値が取得される。
コード読取部13は、上記で取得した第二のコード102の各セルの明度の平均値と、各セルの配列を示す情報とを用いて、第二のコード102を読み取る。例えば、コード読取部13は、まず、予め図示しない格納部等に用意された閾値(例えば、「80」%等の値)を用いて、上記で取得した第二のコード102の各セルの明度の平均値を二値化する。
二値化された第二のコード102の模式図は、図4(b)のようになる。図中、ハッチングで表されたセルとハッチングを有さないセルとが異なる値のセルであるとする。ただし、この図は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
そして、二値化した複数のセルの配列を読み取って、第二のコード102に予め対応付けられた情報を取得する。ここでの二値で表された複数のセルの配列の読み取りは、例えば、パターンマッチング等により行なわれる。なお、二値で表される複数のセルの色の情報の配列を読み取って、この配列に対応する情報を取得する処理は、二次元コードの読み取り技術等として公知であるため、ここでは詳細な説明は省略する。例えば、コード読取部13は、第二のコード102から、商品が保管される場所を示す情報として、「第三保管室」という情報を取得したとする。取得した情報は、図示しない格納部等に蓄積する。
なお、ここでは、各セルの明度の値を二値化した場合を例に挙げて説明したが、各セルの値は、二値以上の予め決められた多値の値、例えば、八値等に変換して、この多値化された値を有するセルの配列パターンから、コードを読み取るようにしても良い。かかることは、後述する他の具体例においても同様である。
そして、出力部14は、コード読取部13が、多重化コード100を構成する第一のコード101と第二のコード102の両方を読み取ることができているため、読み取った情報である「第一倉庫」および「第三保管室」を、図示しないモニタ等に表示する。
図5は、多重化コード100から読み取った情報のモニタ4aへの表示例を示す図である。
ここで、仮に、コード読取部13が、多重化コード100を構成する第一のコード101を読み取ることができたが、第二のコード102が読み取れなかったとする。例えば、画像取得部11が取得した画像内における多重化コード100の画像が小さい場合等においては、小さいセルを有するコードが読み取れない場合がある。このような場合、コード読取部13は、読み取れなかったことを示す情報を、読み取れなかった第二のコード102の識別子と対応付けて図示しない格納部に蓄積する。なお、読み取れなかったコードの識別子の蓄積を、読み取れなかったことを示す情報の、読み取れなかったコードの識別子と対応付けた蓄積と考えてもよい。
そして、多重化コード100を構成する全てのコードを読み取る処理が終了した時点で、出力部14は、多重化コード100を構成するコードのうちの、第一のコード101から読み取った情報は、図示しない格納部に格納されており、第二のコード102を読み取ることができなかったことを示す情報が、図示しない格納部に格納されていることから、第一のコード101は読み取れ、第二のコード102は読み取れなかったと判断する。そして、出力部14は、第一のコード101から読み取った情報である「第一倉庫」と、第二のコード102が読み取れなかったことを示す警告とを出力する。出力する警告は、ここでは、一例として、予め図示しない格納部に格納されているテンプレートに、読み取れなかったコード102の識別子を配置して作成されるものとする。ただし、デフォルトの文字列や画像等を出力しても良い。
図6は、第二のコード102が読み取れなかった場合の警告等のモニタ4aへの表示例を示す図である。
なお、第一のコード101と第二のコード102の両方が読み取れなかった場合は、多重化コード100全体が読み取り可能な状態でないと考えられることから、ここでは、警告は出力しない
このような具体例においては、一の多重化コード100内に、異なるサイズのセルを有する第一のコード101と、第二のコード102とを、セル同士が重なるように、多重化するとともに、第一のコード101を、複数のセルの色の一部の成分である色相と彩度の配列で情報を表すコードとし、第二のコード102を、セル内の色の一部の成分である明度の配列で情報を表すコードとすることによって、一のコードに対応付けることができる情報量を増加させることができる。
また、この具体例においては、第一のコード101のセル内に、第二のコード102の複数のセルが配置されているため、読み取りのために撮影された画像における多重化コードのサイズが小さい場合等において、セルのサイズが小さい第二のコード102が読み取れなくても、セルのサイズが大きい第一のコード101を読み取れることが可能となる。これにより、例えば、多重化コード100から離れた位置で多重化コード100を読み取った場合においても、最小限の情報を読み取れるようにすることができる。また、例えば、多重化コード100から離れた位置で読み取る場合の情報量よりも、多重化コード100に近づいた状態で読み取る場合の情報量を増やすことができる。また、例えば、第一のコード101から読み取れる情報と、第二のコード102から読み取れる情報とが階層化されており、第一のコード101から読み取れる情報が、第二のコード102から読み取れる情報よりも、上位の階層の情報とした場合、第一のコード101が読み取れた場合には、少なくとも上位の階層の情報を取得することが可能となる。また、第一のコード101と第二のコード102との両方が読み取れた場合には、上位の階層の情報と下位の階層の情報との両方を取得することが可能となる。
また、第一のコード101が読み取れて、第二のコード102が読み取れない場合は、第二のコード102が読み取れない旨の警告等を出力することで、多重化コードの100の一部のコードが読めている状態であって、多重化コード100全体が認識できていない状態ではないこと等を、ユーザに知らせることができる。ただし、警告は出力しないようにしても良い。この場合においても、例えば、第一のコード101から読み取れた情報だけを出力することで、多重化コード100自体は読み取り可能な状態にあることをユーザに知らせることができる。
なお、上記においては、コード読取部13は、セルの色の1以上の成分の情報を、多値化して、コードを読み取るようにしたが、コード読取部13は、セルの色の1以上の成分の情報をどのように用いて、多重化コード100を構成する1以上のコードを読み取るようにしてもよい。例えば、上記の第一のコード101については、色相および彩度の平均値を取得した各セルC1〜C6の明度の値を、予め決められた任意の値、例えば100%等に設定して、上記の各セルC1〜C6の色の情報をHSB値で表すようにして、第一のコード101を、通常のカラーコードの読み取りに用いられる処理と同様の処理により読み取れるようにしても良い。また、例えば、上記の第二のコード102については、明度の平均値を取得した各セルの色相および彩度の値を、予め決められた任意の値、例えば、(H,S)=(90,100)等に設定して、上記の各セルの色の情報をHSBで表すようにして、第二のコード102を、通常のカラーコードの読み取りに用いられる処理と同様の処理により読み取れるようにしても良い。
また、上記においては、セル情報取得部12は、補正した多重化コード100の部分画像の、枠109内において、多重化された各コード毎に、複数のセルの領域を検出して、各セルの色の成分の情報を取得するようにしたが、セル情報取得部12は、部分画像、あるいは、部分画像の枠109内から、各コードに対応した色の一部の成分の情報で表された画像を取得し、取得した画像において、各コードに対応する複数のセルの領域を検出して、各セルに対応する領域内の画像の色の情報である色の一部の成分の情報を取得するようにしても良い。かかることは、以下においても同様である。なお、色の一部の成分で表された画像を取得する処理は、画像処理ソフトウェアとにおいて公知の技術であるため、ここでは詳細な説明は省略する。
なお、この具体例においては、多重化コード100を2行3列の正方形のセルの第一のコード101と、6行9列の正方形のセルを有する第二のコード102とを多重化したものとした場合について説明したが、第一のコードおよび第二のコードのセルが同じサイズにならなければ、多重化コードを構成する第一のコードおよび第二のコードの行数および列数や配列は問わない。かかることは、後述する他の具体例においても同様である。
(具体例2)
図7は、本実施の形態の具体例2を説明するための、多重化コードの一例を示す図(図7(a))、および二値化された第一のコードのセルの色の情報の配置を示す模式図(図7(b))、および三値化された第二のコードのセルの色の情報の配置を示す模式図(図7(c))である。
この具体例2は、上記具体例1の多重化コード100に多重化されている第一のコード101のセル毎に含まれる第二のコード102の複数のセルが、予め決められた二通りの明度のうちの共通する一の明度を有するものとし、第二のコード102の各セルが予め決められた三通りの色相および彩度の組合せのうちの一つを有するものとしたものである。
セル情報取得部12は、上記具体例1の場合と同様の処理を行なって、この多重化コード100の部分画像の、第一のコード101の各セルC1〜C6について、色の明度の情報を取得する。そして、コード読取部13が、この各セルC1〜C6の明度の情報を二値化する。第一のコード101の各セルについて取得された色の情報は、図7(a)に示すような配列になる。図中、各セル内の「0」、および「1」は、各セルの明度を示す二値の値であるとする。ただし、この図は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
そして、コード読取部13は、上記の具体例1の第二のコード102を読み取った処理と同様に、変換されて二値の値で表されたセルC1〜C6の配列を読み取って、第一のコード101に予め対応付けられた情報を取得する。
また、セル情報取得部12は、上記具体例1の場合と同様の処理を行なって、この多重化コード100の部分画像の、第二のコード102の各セルについて、色の色相と彩度との情報を取得する。そして、コード読取部13が、この各セルの色相と彩度との組合せを、三値化することにより、第二のコード102の各セルについて取得された色の情報は、図7(b)に示すような配列となる。図中、異なるハッチングで示されたセルは、色相と彩度の値の組合せが異なるセルであるとする。ただし、この図は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
コード読取部13は、上記の具体例1の第一のコード101を読み取った処理と同様に、変換されて三値の値で表されたセルの配列を読み取って、第二のコード102に予め対応付けられた情報を取得する。
そして、出力部14が、第一のコード101および第二のコード102から読み取った情報を出力する。
(具体例3)
図8は、本実施の形態の具体例2を説明するための、多重化コードの一例を示す図(図8(a))、および多重化されている第一のコードのセルの色の配置を示す模式図(図8(b))である。
この具体例3は、上記具体例1の多重化コード100に多重化されている第二のコード102の複数のセルのそれぞれが予め決められた異なる二色のうちの一方の色の情報を有しており、第一のコード101の各セルの色の情報を、第一のコード101の各セルに含まれる第二のコード102の複数のセルからそれぞれ取得される色の情報の配列をパターンマッチングすることにより、取得されるようにしたものである。ここでのパターンマッチングを利用したセルの色を決定する処理は、上述したハーフトーニングと呼ばれる処理に対応する処理である。ここでは、2色の色を、第一の色および第二の色と呼ぶ。この2色の色の情報は、明度等の色の一部の成分の情報であっても良い。2色の色は、例えば、白色と黒色であってもよく、グレースケール中の2色であってもよい。
セル情報取得部12は、上記具体例1の場合と同様の処理を行なって、この多重化コード100の部分画像の、第二のコード102の各セルについて、色の情報を取得する。なお、図8(a)において、第二のコード102の各セルのうちの、ハッチングで示されたセルが第一の色のセルCB1、ハッチングがないセルが第二の色のセルCW1であるとする。
次に、セル情報取得部12は、第二のコード102の各セルC1〜C6内に含まれる第二のコード102の複数のセルの色の情報を用いて、パターンマッチングを行なう。
図9は、パターンマッチングに用いられるマッチング用のパターンを示す図(図9(a)〜図9(j))である。各パターンは、第二のコード102内の一のセルに含まれる第二のコード102の3行3列の9つのセルに対応するセルを有しており、各パターンの各セルは、第二のコード102の各セルが有する色に対応する色をそれぞれ有している。図9において、ハッチングで示されているセルCB2は、図8(a)のハッチングで示されたセルCB1の第一の色に対応する色、例えば、同じ色、または二値化した場合に同じ色となる色のセルであるとし、図9において、ハッチングのないセルCW2は、図8(a)のハッチングのないセルCW1の第二の色に対応する色、例えば、同じ色、または二値化した場合に同じ色となる色のセルであるとする。このパターンの情報は、図示しない格納部等に予め格納されているものとする。また、上記のパターンのうちの図9(a)〜図9(e)に示すパターンは、第二の色に対応する色のセルCW2の数が第一の色に対応するセルCB2よりも多いため、第二の色の情報に対応付けられており、その他のパターンは、第二の色に対応する色のセルCw2の数が、第一の色に対応するセルCB2よりも少ないため、第一の色の情報に対応付けられているものとする。ただし、パターンとどのような色の情報とを対応付けるようにしても良い。
セル情報取得部12は、第二のコード102の各セルに含まれる第二のコード102の複数のセルに対して、図9に示したパターンを用いてパターンマッチングを行なって、一致するパターンを検出する。なお、パターンマッチングは、例えば、セル情報取得部12が取得した第二のコード102の各セルC1〜C6内に含まれる第二のコード102の複数のセルの色の情報を二値化した情報を用いて行なってもよい。そして、一致するパターンに対応付けられた第一の色の情報または第二の色の情報を、パターンマッチングを行なった第二のコード102のセルの色の情報として取得する。これにより、図8(b)に示すような色の配置を得ることができる。図中、各セル内の「A」は、セルが第一の色であることを示し、各セル内の「B」は、セルが第二の色であることを示している。ただし、この図は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
そして、コード読取部13は、図8(b)に示すような第二のコード102の複数のセルの色の情報の配列を読み取って、第二のコード102に予め対応付けられた情報を取得する。
また、コード読取部13は、上記で取得した第二のコード102の複数のセルから取得した色の情報の配列を読み取って、第二のコード102に予め対応付けられた情報を取得する。読み取りの際には、各セルの色の情報を、二値化しても良い。
そして、出力部14が、第二のコード102および第二のコード102から読み取った情報を出力する。
なお、上記においては、第二のコード102の複数のセルの色が2色である場合について説明したが、複数のセルの色は、3色以上であってもよい。この場合、パターンマッチングに用いられるパターンも、第二のコード102の複数のセルに用いられる色数と同じ色数のセルで構成されるパターンとする必要がある。また、ここでは、各パターンに対応付けられた色が2色である場合について説明したが、対応付けられた色は、3色以上であっても良い。この場合、第二のコード102のセルの色として、3色以上の色を取得することが可能となる。
また、上記においては、パターンマッチングに10種類のパターンを用いた場合について説明したが、パターンの種類数は、問わない。例えば、10種類よりも少ないパターンを用いても良く、10種類よりも多いパターンを用いても良い。ただし、パターンは重複しないようにすることが好ましい。
(具体例4)
図10は、本実施の形態の具体例4を説明するための、多重化コードの一例を示す図(図10(a))、およびこの多重化コードに多重化された複数のコードのセルの配置を示す模式図(図10(b)〜(d))である。
図11は、本実施の形態の具体例4を説明するための、多重化コードに多層化された第一のコードのセルの色の情報の配列を示す模式図(図11(a))、多重化コードに多層化された第二のコードのセルの色の情報の配列を示す模式図(図11(b))、および多重化コードに多層化された第三のコードのセルの色の情報の配列を示す模式図(図11(b))である。
この具体例4においては、多重化コード100を、図10(b)に示すような1行2列の正方形のセルB1、B2を有する第一のコード131と、図10(c)に示すような2行4列の正方形のセルBs1〜Bs8を有する第二のコード132と、図10(d)に示すような6行12列の正方形のセルを有する第三のコード133とが、多重化されたコードとしたものである。多重化コード100の外側には黒色の枠109が設けられている。
第一のコード131、第二のコード132および第三のコード133は、同じサイズを有している。第一のコード131のセルB1、B2の一辺は、第二のコード132のセルBs1〜Bs8の一辺の2倍の長さを有しており、第二のコード132のセルBs1〜Bs8の一辺は、第三のコード133のセルの一辺の三倍の長さを有している。多重化コード100においては、第一のコード131の一のセル内に、第二のコード132の2行2列の4つのセルが配置され、第二のコード132の一のセル内には、第3のコード133の3行3列の9つのセル133aが配置されるよう、第一のコード131、第二のコード132、および第三のコード133が多重化されている。
この多重化コード100は、第一のコード131のセル毎に含まれる第三のコード133の複数のセル133aが、予め決められた2つの明度の値のうちの共通する一の明度を有するものとし、第三のコード133の各セル133aが予め決められた三通りの色相および彩度の組合せのうちの一つを有するものとし、第二のコード132の各セルの色の情報は、この各セルに含まれる第三のコード133の複数のセル133aからそれぞれ取得される色の情報の配列をパターンマッチングすることにより、取得されるようにしたものである。ここでは、上記の2つの明度は、一例として「100%」および「60%」とし、上記の三通りの色相および彩度の組合せは、第一の組合せである(H,S)=(0,100)と、第二の組合せである(H,S)=(60,100)と、第三の組合せである(H,S)=(210,100)とであるとする
セル情報取得部12は、予め格納されている第一のコード131が図10(b)に示すような1行2列の正方形のセルで構成されていることを示す情報を読み出し、この情報を用いて、上記具体例1の場合と同様の処理を行なって、多重化コード100の部分画像において第一のコード131の各セルB1およびB2を検出し、それぞれのセルB1およびB2内の画素の情報を用いて、各セルB1およびB2の色の明度の情報を取得する。そして、コード読取部13が、この各セルB1およびB2の明度の情報を二値化することにより、第一のコード101の各セルB1およびB2について取得された色の情報は、図11(a)に示すような配列になる。図中、各セル内の「0」、および「1」は、各セルの明度を示す二値の値であるとする。ただし、この図は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
そして、コード読取部13は、変換されて二値の明度の値で表されたセルB1およびB2の配列を読み取って、第一のコード101に予め対応付けられた情報を取得する。
また、セル情報取得部12は、予め格納されている第3のコード133が図10(d)に示すような6行12列の正方形のセルで構成されていることを示す情報を読み出し、この情報を用いて、上記具体例1の場合と同様の処理を行なって、多重化コード100の部分画像において第三のコード133の各セルを検出して、それぞれのセル内の画素の情報を用いて、各セルについて、第三のコードに対応付けられた色の情報を取得する。ここでは、第三のコードに対応付けられた色の情報として、色の色相と彩度の情報を取得する。
次に、セル情報取得部12は、図10(c)に示すような第二のコード132のセルの配列を示す情報を用いて、第二のコード132のセルBs1〜Bs8を検出し、第二のコード132の各セルBs1〜Bs8内に含まれる第三のコード133の複数のセルの色の情報を用いて、パターンマッチングを行なう。
図12は、第二のコード132の各セルの色の情報を取得するためのパターンマッチングに用いられるマッチング用のパターンの一部を示す図(図12(a)〜図12(i))である。各パターンは、第三のコード133の各セル133aが有しうる上記の三通りの色相および彩度の組合せのいずれか一つに対応する色の情報を有する3行3列の複数のセルが配列されたパターンであるとする。例えば、セルCαは、第一の組合せを有するセルであり、セルCβは、第二の組合せを有するセルであり、Cγは、第三の組合せを有するセルであるとする。また、各パターンには、上記の三通りの色相および彩度の組合せの色の情報を有するセルのうちの、最も多い色相および彩度の組合せを有するセルの、色相および彩度の組合せが予め対応付けられているものとする。つまり、各パターンには、上記の色相および彩度の、第一の組合せから第三の組合せまでの3つの組合せのいずれか一つが対応付けられているものとする。ただし、どのパターンにどのような色の譲歩宇を対応付けるようにしても良い。
セル情報取得部12は、第二のコード132セル毎に含まれる第二のコード102の複数のセルに対して、図12等に示したパターンを用いてパターンマッチングを行なって、一致するパターンを検出する。なお、パターンマッチングは、例えば、セル情報取得部12が取得した第二のコード132の各セルBs1〜Bs8内に含まれる第三のコード133の複数のセルの色の色相と彩度の情報を、上述した色相および彩度の三通りの組合せのいずれかにそれぞれ対応するよう三値化した情報を用いて行なってもよい。そして、一致するパターンと対応付けられた上述した第一の組合せから第三の組合せのうちの一の色相および彩度の組合せを、パターンマッチングを行なった第二のコード102のセルの色の情報として取得する。これにより、図11(b)に示すような色の配置を得ることができる。図中、各セル内の「α」は、セルが第一の組合せの色相と彩度とを有していることを示し、各セル内の「β」は、セルが第二の組合せの色相と彩度とを有していることを示し、各セル内の「γ」は、セルが第三の組合せの色相と彩度とを有していることを示している。ただし、この図は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
そして、コード読取部13は、図11(b)に示すような第二のコード132の複数のセルの色の情報の配列を読み取って、第二のコード132に予め対応付けられた情報を取得する。
また、コード読取部13は、上記で取得した第三のコード133の複数のセルから取得した色の情報の配列を読み取って、第二のコード102に予め対応付けられた情報を取得する。例えば、コード読取部13は、上記で取得した第三のコード133の複数のセルから取得した色相と彩度の情報を、上述した色相と彩度の第一から第三の組合せに対応した情報となるよう三値化して、図11(c)に示すような第三のコード133の複数のセルの色の情報の配列を取得し、このような三値化した各セルの色の情報の配列を読み取って、第二のコード102に予め対応付けられた情報を取得する。なお、図11(c)においては、同じハッチングを有するセルは、色相と彩度との組合せが同じであるセルに対応している。ただし、この図は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
そして、出力部14は、コード読取部13が、第一のコード131、第二のコード132、および第三のコード133から読み取った情報を出力する。
(具体例5)
上記具体例1の多重化コード100に多重化されている第二のコード102として、二値のセルの配列によって表されるいわゆるQRコードや、ARコード等の二次元コードでを用いるようにしてもよい。
図13は、本実施の形態の具体例5を説明するための、多重化コードの一例を示す図(図13(a))、この多重化コードから取得された第一のコードのセルの色の情報の配列を示す模式図(図13(b))、およびこの多重化コードから取得された第二のコードのセルの色の情報の配列を示す模式図(図13(c))である。なお、ここでは、枠109の代りに、多重化コードに多重化されている第一のコード101の各セルC1〜C6の周囲を区切る黒色の枠149が設けられているものとする。この枠149には、第二のコード102のセルが重なっていないものとする。
この具体例5は、上記具体例1において、多重化コード100に多重化されている第一のコード101として、上記具体例1と同様の、複数のセルC1〜C6の色相と彩度の組合せの情報の配列によって情報を表すコードを用いるとともに、多重化コード100に多重化されている第二のコード102が、第一のコード101の各セル内にそれぞれ個別に配置された複数のセルの二値の明度の値の配列によって情報を表す複数のQRコード144で構成されているようにしたものである。複数のQRコード144は、異なる情報を表していても良く、同じ情報を表していても良い。
この具体例5においては、上記具体例1と同様に、セル情報取得部12が、第一のコード101のセルC1〜C6の色相と彩度との組合せの情報を取得して、コード読取部13が、これらを三値化することで、図13(b)に示すような第一のコード101のセルの三値の色の情報の配列を示す情報を取得することができる。また、上記具体例1と同様に、セル情報取得部12が、第二のコード102のセルの明度の情報を取得して、コード読取部13が、これらを二値化することで、図13(c)に示すような第二のコード102のセルの二値の色の情報の配列を示す情報を取得することができる。ただし、図13(b)、および図13(c)は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
そして、コード読取部13は、図13(b)に示すような第一のコード101の三値の色の情報の配列を読み取って、第一のコード101に対応した情報を取得する。
また、コード読取部13は、図13(c)に示すような第二のコード102内において、二値のセルの配列から、複数のQRコード144をそれぞれ検出して、複数のQRコード144をそれぞれ読み取ることによって、複数のQRコード144にそれぞれ対応付けられた情報を、第二のコード102が示す情報として取得する。なお、更に、複数のQRコードの配列パターンに対応付けられた情報を、第二のコード102が示す情報としてパターンマッチング等により取得できるようにしてもよい。
そして、出力部14は、コード読取部13が、第一のコード101、および第二のコード102から読み取った情報を出力する。
なお、この具体例において、一のQRコード144は、第一のコード131の複数のセルと重なるように配置されていても良い。また、第一のコード131の複数のセル内に、複数のQRコードが配置されていても良い。また、複数のQRコード144のそれぞれを、第一のコード131に対して多重化されている異なるコードと考えてもよい。
(具体例6)
上記具体例1等においては、多重化コードの第一のコードのセル内に、このセルよりもサイズが小さい二値の色の情報(例えば、二値の明度の情報等)が取得可能な第二のコードの複数のセルが配置されている場合について説明したが、第二のコードの各セルは、第一のコードの一のセルと一部が重なっていれば良く、第一のコードの一のセル内に全体が収まっていなくても良い。
図14は、本実施の形態の具体例5を説明するための、第一のコードと第二のコードとが多重化された多重化コードの一例を示す図(図14(a))、この多重化コードに多重化されている第一のコードおよび第二のコードのセルの配置を示す図(図14(b)および図14(c))、この多重化コードから取得された第一のコードおよび第二のコードのセルの色の情報の配列を示す模式図(図14(d)および図14(e))である。
この具体例においては、多重化コード100を、2重の円を扇状に分割した第一のコード151と、このコード151と同じ大きさの、3重の円を第一のコード151とは異なる中心角で扇状に分割した第二のコード152とを多重化したコードとしたものである。第一のコード151の各セルと、第二のコード152の各セルは、サイズが異なっているとともに、第一のコード151の各セルは、第二のコードの1以上のセルと重なっている。
多重化コード100の、第一のコード151の各セル内の色は、色相および彩度が、予め決められた色相および彩度の複数の組合せのうちの一の組合せである色であるとする。また、第二のコード152の各セル内の色は、明度が、予め決められた複数の明度のうちの一の明度である色であるとする。これにより、第一のコード151の一のセルのうちの、第二のコード152の明度が異なる2つのセルと個別に重なる領域は、色相および彩度が同じで、明度が異なる色を有する領域となっている。
この具体例6においては、上記具体例1と同様に、セル情報取得部12が、第一のコード151の各セルの色相と彩度との組合せの情報を取得して、コード読取部13が、これらを多値化することで、図14(d)に示すような第一のコード101のセルの多値の色の情報の配列を示す情報を取得することができる。ここでの多値は、3以上の多値であることが好ましい。また、上記具体例1と同様に、セル情報取得部12が、第二のコード152の各セルの明度の情報を取得して、コード読取部13が、これらを二値化することで、図14(e)に示すような第二のコード152のセルの二値の色の情報の配列を示す情報を取得することができる。ただし、図14(d)、および図14(e)は、説明のためのものであり、コード読取部13がこのような画像等を作成する必要はない。
そして、コード読取部13は、図14(d)に示すような第一のコード151の色の情報の配列を読み取って、第一のコード151に対応した情報を取得する。
また、コード読取部13は、図14(e)に示すような第二のコード152の色の情報の配列を読み取って、第二のコード152に対応した情報を取得する。
そして、出力部14は、コード読取部13が、第一のコード151、および第二のコード152から読み取った情報を出力する。
なお、上記具体例3および具体例4等において、一のコードのセルの色の情報を、このセル内に配置される他のコードの複数のセルの色の情報の配列を用いてパターンマッチングにより取得する場合について説明したが、パターンマッチングを行なわずに、一のコードのセルの色の情報として、このセル内に配置される他のコードの複数のセルの色の情報の代表値を取得するようにしても良い。
また、本実施の形態においては、上述した各具体例の多重化コードに多重化されているコード以外のコードを多重化するようにしてもよい。また、多重化する複数のコードの組合せは、、上記の具体例の組合せに限定されるものではなく、コードの色の情報がコード毎に取得でき、コードを個別に読み取ることができれば、どのような組合せであっても良い。
また、上記の具体例においては、2または3のコードが多重化された多重化コードの例について説明したが、多重化コードは、2以上のコードが多重化されたものであればよく、例えば、4以上のコードが多重化されたものであっても良い。
また、上記具体例においては、多重化コードに多重化されているコードのうちの一つから、色相と彩度との組合せを取得する場合を例に挙げて説明したが、多重化コードに多重化されているコードのうちの色相が共通であるセルで構成される一のコードから色相を取得するようにし、多重化コードに多重化されているコードのうちの彩度が共通であるセルで構成される一のコードから彩度を取得するようにし、多重化コードに多重化されているコードのうちの色相および彩度が共通であるセルで構成される一のコードから色相または彩度を取得するようにしてもよい。
また、上記具体例1〜2等において、一方のコードのセルから、色の情報として色相と彩度の情報を取得し、他方のコードのセルから、色の情報として明度の情報を取得する場合について説明したが、これらのコードの少なくとも一方のセルから、セル内の色全体の情報(例えば、HSB値やRGB値等)を取得するようにしても良い。また、セルから取得する色の情報は、明度と、色相および彩度の組合せに限定されるものではなく、これら以外の色の情報を取得しても良い。例えば、色の情報として、色相と明度との組合せ等を取得しても良い。
また、上記各具体例においては、多重化された一のコードの例として、色相と彩度との値の三つの組合せをセルに割り当てたコードを用いた場合について示しているが、多重化されたコードのセルに、色相と彩度との組合わせを割り当てる場合、その組合わせの数は、三つに限定されるものではなく、二以上であれば、その組合わせの数は問わない。
なお、上記具体例においては、多重化コードが枠を有する場合について説明したが、多重化コードが配置されている領域が、多重化コードを撮影した画像から認識可能であれば、多重化コードは、枠を有していなくてもよい。
また、上記具体例においては、複数のコードのセルを重ねて配置することで、複数のコードを多重化した場合について説明したが、一のコードの枠(図示せず)に対して、他の1以上のコードの複数のセルを配置することで、複数のコードを多重化しても良い。例えば、枠を有している一のコードの枠に対して、他のコードの、枠の幅よりも辺の長さが小さい複数のセルを配置しても良い。例えば、これらのセルが、色の情報として二値の明度を有するようにすることで、枠が配置されている領域内のセルから取得した色の情報の配列によって、情報を表すことが可能となる。なお、一のコードが配置されている領域を検出する際には、例えば、枠の外側や内側の輪郭を検出するようにすることで、枠としての本来の機能を保持することも可能である。
また、上記具体例1〜5においては、多重化されているコードのセルの形状が正方形である場合を例に挙げて示したが、各コードのセルの形状はどのような形状であってもよい。また、セルの配列パターン等は問わない。
以上、本実施の形態においては、セルのサイズがコード毎に異なっている複数のコードを、1以上のセルが、異なるコードの1以上のセルと重なるよう多重化し、複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、それぞれ情報を表すようにしたことにより、異なるコードを重ねて配置することが可能となり、コードの大きさを増加させることなく、コードの情報量を増加させることができる。
また、本実施の形態においては、一のコードのセル内に、このセルよりも小さいサイズのセルを有する他のコードの複数のセルを配置することにより、複数のコードが階層化されるよう多重化することができる。これにより、例えば、多重化コードから読み取れる情報の階層を、コードを読み取る際の距離に応じて変化させることができる。例えば、セルのサイズをコードの階層が下位になる毎に小さくなるようにすることにより、コードを読み取る際のコードとの距離が近づくにつれて、多重化されている複数のコードのうちの、セルのサイズがより小さい階層が下位のコードを順次読み取れるようにすることが可能となる。
なお、上記実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記実施の形態では、多重化コード読取装置がスタンドアロンである場合について説明したが、多重化コード読取装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
なお、上記各実施の形態における多重化コード読取装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、色の情報を取得可能な複数の領域であるセルを有する複数のコードが多重化された多重化コードであって、複数のコードが有するセルのサイズが、コード毎に異なっており、複数のコードがそれぞれ有するセルのうちの1以上のセルは、異なるコードの1以上のセルと重なっており、複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、各コードに対応する情報を表す多重化コードを撮影した画像を取得する画像取得部と、画像取得部が取得した多重化コードの画像から、多重化コードに含まれる複数のコードのそれぞれが有する複数のセルの色の情報を、各コード毎に取得するセル情報取得部と、セル情報取得部が複数のコード毎に取得したセルの色の情報を用いて、各コードに対応付けられた情報を取得するコード読取部と、コード読取部が取得した情報を出力する出力部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図15は、上記プログラムを実行して、上記実施の形態による多重化コード読取装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図15において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図16は、コンピュータシステム900の内部構成を示す図である。図16において、コンピュータ901は、CD−ROMドライブ905に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による多重化コード読取装置等の機能を実行させるプログラムは、CD−ROM921に記憶されて、CD−ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による多重化コード読取装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
以上のように、本発明にかかる多重化コード等は、情報を読み取り可能なコード等として適しており、特に、色の情報を取得可能な複数のセルを有するコード等として有用である。
1 多重化コード読取装置
11 画像取得部
12 セル情報取得部
13 コード読取部
14 出力部
100 多重化コード
101、131、151 第一のコード
102、132、152 第二のコード
109、149 枠
112、133 第三のコード
133a セル
144 QRコード

Claims (9)

  1. 色の情報を取得可能な複数の領域であるセルを有する複数のコードが多重化された多重化コードであって、
    前記複数のコードが有するセルのサイズが、コード間で異なっており、
    前記複数のコードがそれぞれ有するセルのうちの1以上のセルは、異なるコードの1以上のセルと重なっており、
    前記複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、各コードに対応する情報を表す多重化コード。
  2. 前記多重化された複数のコードのうちのセルのサイズが大きい1以上のコードが有する各セル内には、当該セルよりも小さいセルを有する1以上のコードの複数のセルが配置されている請求項1記載の多重化コード。
  3. 前記セルのサイズが異なる2以上のコードには、階層化された情報が対応付けられており、
    前記セルのサイズが異なる2以上のコードのうちの、セルのサイズが大きいコードには、セルのサイズが小さいコードよりも上位の階層の情報が対応付けられている請求項1または請求項2記載の多重化コード。
  4. 前記複数のコードの内の1以上のコードの各セルから取得される色の情報は、当該セル内に配置される当該セルよりもセルのサイズが小さい他のコードが有する複数のセルから取得される色の情報を用いて取得され、当該1以上のコードは、当該取得される色の情報の配列が、コードに対応する情報を表している請求項1から請求項3いずれか一項記載の多重化コード。
  5. 前記複数のコードのうちの2以上のコード毎に取得される各コードが有する複数のセルの色の情報は、コード毎に異なる色の成分の情報であり、当該2以上のコードは、当該コード毎に取得される色の成分の情報の配列が、コードに対応する情報を表している請求項1から請求項4いずれか一項記載の多重化コード。
  6. 前記複数のコードは、
    複数のセルから取得される明度と、当該複数のセルの配列との組合せにより情報を表す1以上のコードと、
    複数のセルから取得される色相、彩度、または色相と彩度との組合せと、当該複数のセルの配列との組合せにより情報を表す1以上のコードとを有する請求項1から請求項5いずれか一項記載の多重化コード。
  7. 色の情報を取得可能な複数の領域であるセルを有する複数のコードが多重化された多重化コードであって、前記複数のコードが有するセルのサイズが、コード間で異なっており、前記複数のコードがそれぞれ有するセルのうちの1以上のセルは、異なるコードの1以上のセルと重なっており、前記複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、各コードに対応する情報を表す多重化コードを撮影した画像を取得する画像取得部と、
    前記画像取得部が取得した多重化コードの画像から、当該多重化コードに含まれる前記複数のコードのそれぞれが有する複数のセルの色の情報を、各コード毎に取得するセル情報取得部と、
    前記セル情報取得部が複数のコード毎に取得したセルの色の情報を用いて、各コードに対応付けられた情報を取得するコード読取部と、
    前記コード読取部が取得した情報を出力する出力部を備えた多重化コード読取装置。
  8. 画像取得部と、セル情報取得部と、コード読取部と、出力部とを用いて行なわれる多重化コード読取方法であって、
    前記画像取得部が、色の情報を取得可能な複数の領域であるセルを有する複数のコードが多重化された多重化コードであって、前記複数のコードが有するセルのサイズが、コード間で異なっており、前記複数のコードがそれぞれ有するセルのうちの1以上のセルは、異なるコードの1以上のセルと重なっており、前記複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、各コードに対応する情報を表す多重化コードを撮影した画像を取得する画像取得ステップと、
    前記セル情報取得部が、前記画像取得ステップで取得した多重化コードの画像から、当該多重化コードに含まれる前記複数のコードのそれぞれが有する複数のセルの色の情報を、各コード毎に取得するセル情報取得ステップと、
    前記コード読取部が、前記セル情報取得ステップで複数のコード毎に取得したセルの色の情報を用いて、各コードに対応付けられた情報を取得するコード読取ステップと、
    前記出力部が、前記コード読取ステップで取得した情報を出力する出力ステップとを備えた多重化コード読取方法。
  9. コンピュータを、
    色の情報を取得可能な複数の領域であるセルを有する複数のコードが多重化された多重化コードであって、前記複数のコードが有するセルのサイズが、コード間で異なっており、前記複数のコードがそれぞれ有するセルのうちの1以上のセルは、異なるコードの1以上のセルと重なっており、前記複数のコード毎に取得される各コードが有する複数のセルの色の情報の配列が、各コードに対応する情報を表す多重化コードを撮影した画像を取得する画像取得部と、
    前記画像取得部が取得した多重化コードの画像から、当該多重化コードに含まれる前記複数のコードのそれぞれが有する複数のセルの色の情報を、各コード毎に取得するセル情報取得部と、
    前記セル情報取得部が複数のコード毎に取得したセルの色の情報を用いて、各コードに対応付けられた情報を取得するコード読取部と、
    前記コード読取部が取得した情報を出力する出力部として機能させるためのプログラム。
JP2017123872A 2017-06-26 2017-06-26 多重化コード、多重化コード読取装置、多重化コード読取方法、およびプログラム Pending JP2019008564A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017123872A JP2019008564A (ja) 2017-06-26 2017-06-26 多重化コード、多重化コード読取装置、多重化コード読取方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017123872A JP2019008564A (ja) 2017-06-26 2017-06-26 多重化コード、多重化コード読取装置、多重化コード読取方法、およびプログラム

Publications (1)

Publication Number Publication Date
JP2019008564A true JP2019008564A (ja) 2019-01-17

Family

ID=65025959

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017123872A Pending JP2019008564A (ja) 2017-06-26 2017-06-26 多重化コード、多重化コード読取装置、多重化コード読取方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP2019008564A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021096517A (ja) * 2019-12-13 2021-06-24 株式会社東芝 コード描画物、コード読取装置、およびコード読取方法
US11537831B2 (en) 2020-09-17 2022-12-27 International Business Machines Corporation Generating measurement data using image data
US12093763B2 (en) 2020-06-19 2024-09-17 Apple Inc. Visual marker

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021096517A (ja) * 2019-12-13 2021-06-24 株式会社東芝 コード描画物、コード読取装置、およびコード読取方法
US12093763B2 (en) 2020-06-19 2024-09-17 Apple Inc. Visual marker
US11537831B2 (en) 2020-09-17 2022-12-27 International Business Machines Corporation Generating measurement data using image data

Similar Documents

Publication Publication Date Title
JP4016342B2 (ja) コード認識のための装置及びその方法
JP5986060B2 (ja) 極めて小さいデータセルを有する印刷されたカラーバーコードの確実な復号化
US10373030B2 (en) Image processing apparatus that executes halftone process on target image data including edge pixel
JP6779688B2 (ja) 画像処理装置、画像処理方法、コンピュータプログラム
US20190005601A1 (en) Information processing apparatus, information processing method, and non-transitory computer-readable storage medium storing program
US9129208B2 (en) Method and system for determining an object type from raster data in an image forming apparatus
JP2019008564A (ja) 多重化コード、多重化コード読取装置、多重化コード読取方法、およびプログラム
US20230062438A1 (en) Information processing apparatus, information processing system, information processing method, and storage medium
US8498496B2 (en) Method and apparatus for filtering red and/or golden eye artifacts
US20120069195A1 (en) Pattern of Color Codes
JP2004021765A (ja) 画像認識方法
US8509529B2 (en) Color-image representative color decision apparatus and method of controlling operation thereof
US20190356819A1 (en) Information processing apparatus and non-transitory computer readable medium storing program
JP4404224B2 (ja) 光学式認識コード認識装置及び方法及びプログラム
JP2007179134A (ja) 二次元コード、二次元コードの読取方法及び二次元コードの読取装置
JP2019140538A (ja) 画像処理装置、画像形成装置、画像処理方法、及びプログラム
US11508034B2 (en) White background protection in SRGAN based super resolution
JP2007257360A (ja) 2次元コード、2次元コード読み取り装置、及び、2次元コード読み取り用プログラム
US8295630B2 (en) Image processing system and method
JP2017054464A (ja) マーカ生成方法、マーカ復号方法、マーカ復号装置およびマーカ読取装置
US9411543B2 (en) Image processing apparatus
US20220343092A1 (en) Apparatus and methods for preprocessing images having elements of interest
JP7438736B2 (ja) 画像処理装置、画像処理方法、及びプログラム
US20230162465A1 (en) Color adjustments of highlighted areas
US20100296734A1 (en) Identifying and clustering blobs in a raster image

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210216

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211005