JP6810940B2 - 二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法 - Google Patents

二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法 Download PDF

Info

Publication number
JP6810940B2
JP6810940B2 JP2019074974A JP2019074974A JP6810940B2 JP 6810940 B2 JP6810940 B2 JP 6810940B2 JP 2019074974 A JP2019074974 A JP 2019074974A JP 2019074974 A JP2019074974 A JP 2019074974A JP 6810940 B2 JP6810940 B2 JP 6810940B2
Authority
JP
Japan
Prior art keywords
data
dimensional code
data matrix
color
matrix
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.)
Active
Application number
JP2019074974A
Other languages
English (en)
Other versions
JP2020173601A (ja
Inventor
邦雄 請園
邦雄 請園
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.)
SONO ELECTRONICS CO. LTD.
Original Assignee
SONO ELECTRONICS CO. LTD.
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 SONO ELECTRONICS CO. LTD. filed Critical SONO ELECTRONICS CO. LTD.
Priority to JP2019074974A priority Critical patent/JP6810940B2/ja
Priority to JP2020157407A priority patent/JP6894600B2/ja
Publication of JP2020173601A publication Critical patent/JP2020173601A/ja
Application granted granted Critical
Publication of JP6810940B2 publication Critical patent/JP6810940B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Telephone Function (AREA)

Description

本願は、二次元コード、及び二次元コードを認識し、認識した二次元コードに基づいて処理を行う技術に関するものである。
特許文献1には、マーカーと、マーカーに対して所定の位置に配置され、マトリクス状に配置された2進データセルからなるデータマトリクスとを備えた二次元コードが記載されている。
かかる従来の二次元コードでは、コード全体をコンパクトにして、Webカメラで良好な認識ができるように、データマトリクスとして4×4の2進データセルからなるものを採用している。データマトリクスはさらに、タイミングセル領域とデータセル領域とにより構成されているので、2進データが実質的に割り当てられるセルはデータセル領域内の8個のセルである。したがって、かかる従来の二次元コードでは、最大8ビットの2進データを扱うことができる。
特開2013−84031号公報
ところで上記従来の二次元コードでは、データセル領域内の8個のセルは上下左右に隣接し、各セルは白データセル又は黒データセルのいずれも任意に割り当てられるので、黒データセルが上下左右に隣接して配置される場合がある。
このような二次元コードを、さらなるコンパクト化を図るために縮小したとすると、白データセルが黒データセルに比べて特に少ない場合には、Webカメラで撮影して得られた撮像画像において、白データセルが潰れてしまい、二次元コードを正しく認識できない虞がある。
また、よく知られた二次元コードとして、QRコード(登録商標)があるが、QRコードは、白データセルが黒データセルに比べて非常に少ないので、現在のサイズ以上に縮小化した場合、上記従来の二次元コードと同様の理由により、QRコードを正しく認識できない虞がある。
そこで本願は、認識性を保持しつつ、可及的に縮小化することが可能となる二次元コード、及び二次元コードに関連する技術を提供することを目的とする。
上記目的を達成するため、請求項1に係る二次元コードは、第1色及び前記第1色と異なる第2色のいずれか一方で塗りつぶされたデータセルをマトリクス状に配置したデータマトリクスを含み、前記データマトリクスの各行をそれぞれ構成する複数のデータセルは、前記各行のすべてについて行毎に、多くとも1つのデータセルのみが前記第1色で塗りつぶされ、他のデータセルはすべて前記第2色で塗りつぶされ、前記データマトリクスに配置される前記データセルにより、N進数の数値が表現され、前記N進数の数値の各桁は、前記データマトリクスの各行に対応付けられ、前記N進数の数値を構成する各桁の数値は、前記データマトリクスの各行にそれぞれ配置されたデータセルにより規定される、二次元コードであって、前記データマトリクスを構成する各行及び各列のいずれか一方に含まれるいずれか1行又は1列を構成する前記複数のデータセルは、多くとも2つのデータセルのみが前記第1色で塗りつぶされ、他のデータセルはすべて前記第2色で塗りつぶされ、前記多くとも2つのデータセルが配置された位置により、前記1行又は1列を除く、前記データマトリクスを1つのまとまりとして使用すること又は2つ以上に分割して使用すること及び当該二次元コードの種類が規定される、ことを特徴とする。
また、上記目的を達成するため、請求項2に係る二次元コードは、第1色及び前記第1色と異なる第2色のいずれか一方で塗りつぶされたデータセルをマトリクス状に配置したデータマトリクスを含み、前記データマトリクスの各列をそれぞれ構成する複数のデータセルは、前記各列のすべてについて列毎に、多くとも1つのデータセルのみが前記第1色で塗りつぶされ、他のデータセルはすべて前記第2色で塗りつぶされ、前記データマトリクスに配置される前記データセルにより、N進数の数値が表現され、前記N進数の数値の各桁は、前記データマトリクスの各列に対応付けられ、前記N進数の数値を構成する各桁の数値は、前記データマトリクスの各列にそれぞれ配置されたデータセルにより規定される、二次元コードであって、前記データマトリクスを構成する各行及び各列のいずれか一方に含まれるいずれか1行又は1列を構成する前記複数のデータセルは、多くとも2つのデータセルのみが前記第1色で塗りつぶされ、他のデータセルはすべて前記第2色で塗りつぶされ、前記多くとも2つのデータセルが配置された位置により、前記1行又は1列を除く、前記データマトリクスを1つのまとまりとして使用すること又は2つ以上に分割して使用すること及び当該二次元コードの種類が規定される、ことを特徴とする。
請求項に係る二次元コードは、請求項1又は2の二次元コードにおいて、第1色は、撮像画像に含まれる二次元コードを2値化した場合に黒色になる色であり、第2色は、撮像画像に含まれる二次元コードを2値化した場合に白色になる色である、ことを特徴とする。
上記目的を達成するため、請求項に係る認識処理プログラムは、請求項1乃至のいずれか1項に記載の二次元コードを含む撮像画像から二次元コードを検出する検出処理と、検出処理により検出された二次元コードからデータマトリクスを切り出す切出し処理と、切出し処理により切り出されたデータマトリクスからデータマトリクス上に表現されたN進数の数値を認識する認識処理と、をコンピュータに実行させることを特徴とする。
請求項に係る認識処理プログラムは、請求項の認識処理プログラムにおいて、コンピュータにさらに、認識処理により認識されたN進数の数値を10進数の数値に変換する変換処理と、変換処理により変換された10進数の数値を含む送信データを生成する生成処理と、生成処理により生成された送信データを管理サーバに送信する送信処理と、を実行させることを特徴とする。
上記目的を達成するため、請求項に係るプログラムは、請求項に記載の認識処理プログラムの送信処理により送信された送信データを受信する受信処理と、受信処理により受信された送信データに含まれる10進数の数値に対応する情報を管理サーバのデータベースから取得する取得処理と、取得処理により取得された情報を含む送信データを生成する生成処理と、生成処理により生成された送信データを端末装置に送信する送信処理と、を管理サーバに実行させることを特徴とする。
請求項に係るプログラムは、請求項のプログラムにおいて、10進数の数値に対応する情報は、Webサーバのインターネット上の位置を示す情報と、Webサーバに格納された所定データが存在するディレクトリを特定する情報と、所定データを表示するファイルを特定する情報とを含む、ことを特徴とする。
上記目的を達成するため、請求項に係る認識処理装置は、請求項1乃至のいずれか1項に記載の二次元コードが形成された物理媒体を撮影する撮影部と、制御部と、を備え、制御部は、撮影部により撮影された二次元コードを含む撮像画像から二次元コードを検出し、検出された二次元コードからデータマトリクスを切り出し、切り出されたデータマトリクスからデータマトリクス上に表現されたN進数の数値を認識する、ことを特徴とする。
上記目的を達成するため、請求項に係る認識処理方法は、請求項1乃至のいずれか1項に記載の二次元コードを含む撮像画像から二次元コードを検出し、検出された二次元コードからデータマトリクスを切り出し、切り出されたデータマトリクスからデータマトリクス上に表現されたN進数の数値を認識する、ことを特徴とする。
請求項1又は2に係る二次元コードによれば、認識性を保持しつつ、可及的に縮小化することが可能となる。
さらに、請求項1又は2に係る二次元コードによれば、膨大な数の異なる数値をデータマトリクスに割り当てる、つまりコード化することができる。
請求項1又は2に係る二次元コードによれば、同形同サイズのデータマトリクスでも、別のデータマトリクスとして使用することができ、用途の幅を拡大させることができる。
本願の一実施の形態に係る認識処理装置を適用したスマートフォンの概略構成を示すブロック図である。 二次元コードの構成の一例を示す図である。 図2(a)の二次元コードに含まれるデータマトリクス特有の構成を説明するための図である。 図3の領域R1を複数の領域に分割する構成の一例を示す図である。 コード化の方法の一例を示す図である。 図1のスマートフォン、特にCPUが実行する制御処理の手順を示すフローチャートである。 図6の制御処理に含まれるコード検出・デコード処理の詳細な手順を示すフローチャートである。 管理サーバ、特にCPUが実行する制御処理の手順を示すフローチャートである。
以下、本願の実施の形態を図面に基づいて詳細に説明する。
図1は、本願の一実施の形態に係る認証処理装置を適用したスマートフォン100の概略構成を示すブロック図である。
同図に示すように、本実施形態のスマートフォン100は、当該スマートフォン100全体の制御を司るCPU(Central Processing Unit)101を備えている。CPU101には、タッチパネル102、操作子103、各種センサ104,メモリ105、タイマ106、音声入力インタフェース(I/F)107、通信インタフェース(I/F)110、サウンドシステム108及びカメラ109が接続されている。
タッチパネル102は、一般的なスマートフォンが備えているものと変わらず、表示デバイスとしての機能と、入力デバイスとしての機能を兼ね備えたものである。
操作子103は、タッチパネル102上に表示されるアイコンやボタン(ソフトウェアにより生成されて表示されるもの)ではなく、ハードウェアスイッチ(ハードウェアにより形成されるもの)である。その典型例としては、電源スイッチやリセットスイッチ(ともに図示せず)などを挙げることができる。
各種センサ104には、地磁気センサ、GPS(Global Positioning System)、加速度センサ、超音波センサ、赤外線または可視光を検出する光センサなどが含まれる。
メモリ105には、CPU101によって実行される制御プログラムや各種アプリケーションプログラム、各プログラムによって画面表示に利用される画像データや発音に利用される音声データを含む各種データ等を記憶するROM(Read Only Memory)と、上記画像データや音声データを含む各種データ、各種入力情報および演算結果等を一時的に記憶するRAM(Random Access Memory)が含まれている。上記制御プログラムや各種アプリケーションプログラム、各種データ等は、本実施形態では適宜、追加、削除あるいはアップデートできるようにするために、ROMとして、書き換え可能な不揮発性のもの、具体的にはフラッシュメモリを採用している。
タイマ106は、タイマ割込み処理における割込み時間や各種時間を計時する。
音声入力I/F107は、マイクロフォン(以下「マイク」と略す)111を接続し、マイク111を介して入力された周囲のアナログ音声信号(典型的には、ユーザが発音した音声)をデジタル音声信号(音声データ)に変換し、バッファ(図示せず)に記憶する。
通信I/F110は、スマートフォン100を、例えばインターネットなどの通信ネットワーク200に接続させ、通信ネットワーク200に接続された他の機器、本実施形態では、管理サーバ310及び多数のWebサーバ320n(n=1,2,・・)との間で各種データの送受信を行う。上記プログラム等の追加、削除あるいはアップデートは、管理サーバ310を介して行うようにしてもよい。この場合、通信I/F110は、管理サーバ310から各種プログラムや各種データをダウンロードするために用いられる。クライアントとなるスマートフォン100は、通信I/F110および通信ネットワーク200を介して管理サーバ310へとプログラムやデータのダウンロードを要求するコマンドを送信する。管理サーバ310は、このコマンドを受け、要求されたプログラムやデータを、通信ネットワーク200を介してスマートフォン100へと配信し、スマートフォン100が通信I/F110を介して、これらプログラムやデータを受信してメモリ105(のフラッシュメモリ)に蓄積することにより、ダウンロードが完了する。
サウンドシステム108は、例えば、DAC(Digital-to-Analog Converter)やアンプ、スピーカ等によって構成される。サウンドシステム108は、電話の相手方が発音して、通信ネットワーク200及び通信I/F110を介して入力された音声信号を音響に変換する。この場合、相手方のスマートフォンあるいは電話機が通信ネットワーク200に接続されていることは言うまでもない。また、サウンドシステム108は、CPU101が上記制御プログラムや各種アプリケーションプログラムを実行しているときに生成した楽音信号も音響に変換する。楽音信号は、本実施形態では、CPU101が音源プログラムを実行することによって生成する、いわゆるソフトウェア音源によって生成する。もちろん、ソフトウェア音源を用いて楽音信号を生成する態様に限らず、ハードウェア音源を用いてもよいし、一部をハードウェアで構成し、残りをソフトウェアで構成した音源を用いてもよい。
なお本実施形態では、認証処理装置としてスマートフォン100を採用したが、これに限らず、タブレット端末や携帯型のノートPC(パーソナルコンピュータ)、PDA(personal digital assistant)などを採用してもよい。但し本実施形態では、二次元コードの形成された物理媒体をカメラ109で撮影して、撮像画像を取得し、その撮像画像から二次元コードを認識するようにしているので、どの装置を採用したとしても、カメラを備えている必要がある。もちろん、内蔵する必要はなく、外付けできる構成であってもよい。
図2は、本実施形態で用いる二次元コードの一例を示し、図2には、3種類の二次元コード1,5及び1′が例示されている。図2(a)の二次元コード1は、10行×10列の100個のデータセル12cからなるデータマトリクス12を含むコードである。図2(b)の二次元コード5は、4行×4列の16個のデータセル52cからなるデータマトリクス52を含むコードである。図2(c)の二次元コード1′は、8行×8列の64個のデータセル12cからなるデータマトリクス12′を含むコードである。
二次元コード1は、図2(a)に示すように矩形(本実施形態では、正方形)平面10上に形成されている。そして矩形平面10の4隅(コーナー)にはそれぞれ、コーナーセル10a〜10d(以下、左上隅から時計回りに「第1コーナーセル10a」、「第2コーナーセル10b」、「第3コーナーセル10c」及び「第4コーナーセル10d」という)が設けられている。第1〜第4コーナーセル10a〜10dには、特有の役割を持たせている。
具体的には、第1コーナーセル10aは、黒色で三角形状に塗りつぶされ、二次元コード1の型(タイプ)を示す役割を果たしている。つまり、第1コーナーセル10aの黒三角形は、二次元コード1が10×10のデータセル12cからなるデータマトリクス12を有するタイプ(以下「10×10ドットタイプ」という)であることを示している。
一方、第2〜第4コーナーセル10b〜10dはいずれも、黒色で矩形(本実施形態では、正方形)状に塗りつぶされ、二次元コード1の存在位置、ひいてはデータマトリクス12の存在位置を示す役割を果たしている。
データマトリクス12は、矩形平面10内に、矩形(本実施形態では、正方形)状に形成され、各行12rは、10個のデータセル12cを有し、各列12lも、10個のデータセル12cを有している。各データセル12cも、矩形(本実施形態では、正方形)状に形成され、黒色又は白色のいずれか1色で塗りつぶされる。以下、黒色で塗りつぶされたデータセルを「黒データセル」といい、白色で塗りつぶされたデータセルを「白データセル」という。
本発明の特徴の1つは、各行12r又は各列12lのいずれか一方に、黒データセルは多くて1つのみが割り当てられる点である。この特徴により、二次元コード1の認識性を保持しながら、コード全体のサイズを極めて小さくすることができる。つまり、データマトリクス12内に黒データセルの密度が高い状態で、全体のサイズを縮小した二次元コードを撮影すると、その撮像画像には、黒データセル間に配置された白データセルが潰れた状態になることがある。この場合、撮影画像内の二次元コードからデコードした結果は、正しいものではないので、撮影位置を変えながら何度も撮影したり、ズームアップして撮影したり等しなければならず、ユーザにとって煩わしい。しかし、黒データセルの密度が極めて低いという、本発明のこの特徴によれば、白データセルが潰れた状態で撮影されることは極めて少ないので、黒データセルの位置は正しく正しく認識される。もちろん、縮小化の程度に限界はあるが、黒データセルの密度が高いものに比べて、極めて高い縮小化率を達成することができる。
なお、黒データセル及び白データセルにおける黒色及び白色は、二次元コード1の撮像画像に対して2値化を行った後の色を意味する。したがって、各データセル12cやコーナーセル10a〜10dの実際の色は、2値化後に黒色及び白色になるような色であれば、黒色及び白色に限られない。この事情は、二次元コード5についても同様である。
二次元コード5も、図2(b)に示すように矩形平面50上に形成されている。二次元コード5は、二次元コード1に対して、データマトリクス52を構成するデータセル52cの個数と、第1コーナーセル50aの塗りつぶし方とが異なっている。つまり、第1コーナーセル50aの三角形は、黒色の三角形の内部を白色の三角形で打ち抜いたような形状となっている。この打抜き三角形が、二次元コード5が4×4のデータセル52cからなるデータマトリクス52を有するタイプ(以下「4×4ドットタイプ」という)であることを示している。
図2(c)に示す二次元コード1′は、二次元コード1に対して、データマトリクス12′を構成するデータセル12cの個数と、第1コーナーセル10aが無いこととが異なっている。
このように二次元コード1′には、第1コーナーセル10aが存在しない。しかし、第2〜第4コーナーセル10b〜10dのそれぞれの形状及び大きさと、データセル12cの形状及び大きさとが同一であるので、データマトリクス12′のドットタイプは、第2コーナーセル10bと第3コーナーセル10cとの間隔、及び第3コーナーセル10cと第4コーナーセル10dとの間隔から算出することができる。つまり、二次元コード1′は、本実施形態の二次元コードにおいて、第1コーナーセル10aが必須の構成でないことを示している。さらに二次元コード1′は、データマトリクスを構成するデータセルの個数も任意に設定できることも示している。
なお本実施形態では、二次元コード1でも二次元コード5でも、第2〜第4コーナーセル10b〜10d,50b〜50dのそれぞれの形状及び大きさと、データセル12c,52cの形状及び大きさとは同一である。したがって、二次元コード1でも二次元コード5でも、第1コーナーセル10a,50aを無くすことは可能である。しかし、第1コーナーセル10a,50aを無くすと、データマトリクス12,52のドットタイプを第2〜第4コーナーセル10b〜10d,50b〜50dから算出しなければならず、その算出処理がCPU101に負担をかけることになる。このため、第1コーナーセル10a,50aを設け、CPU101にとって負担となる算出処理を省略して、CPU101には、その形状により、データマトリクス12,52のドットタイプを判断させるようにしている。
図3は、二次元コード1に含まれるデータマトリクス12特有の構成を説明するための図である。データマトリクス12特有の構成とは、データマトリクス12中の第1列、つまり図3における領域R1には、第1列を除いたデータマトリクス12の分割態様と、当該データマトリクス12に割り当てられるコードの種類とを規定する役割を持たせていることである。
具体的には、図3(a)に示すように、第1列、つまり領域R1に含まれるデータセルのうち、第1行目のデータセル(1,1)が黒データセルである場合は、領域R1を除いたデータマトリクス12は領域R11〜R13の3分割にして使用すること、及び二次元コード1がWebサーバ320nに格納されているデータの位置を特定する種類のコードであることを示す。
領域R11は、10×4のデータセル12cを含み、領域R12は、5×5のデータセル12cを含み、領域R13は、5×5のデータセル12cを含んでいる。そして、領域R11に割り当てられるコードは、Webサーバ320nのURL(Uniform Resource Locator)を示し、領域R12に割り当てられるコードは、当該Webサーバ320nに格納されたデータが存在するディレクトリ名を示し、領域R13に割り当てられるコードは、当該データの表示ファイル名を示している。但し、R11〜R13に割り当てられるコードが、直接的に上記各情報を示すのではなく、間接的に上記各情報を示している。つまり、R11〜R13に割り当てられるコードは、後述のようにN進数の数値であるのに対して、上記URL、ディレクトリ名及び表示ファイル名は、N進数の数値ではないからである。しかし、R11〜R13に割り当てられるコード(厳密には、N進数の数値を10進数に変換した後の数値)は、上記URL、ディレクトリ名及び表示ファイル名と1対1に対応付けられているので、前者のコードは、後者の情報を間接的に示すことになる。この事情は、図3(b)及び図3(c)に示す二次元コード1についても同様に適用することができる。
なお、データマトリクス12内の各データセル12cの位置を示す表記法として、以下(r,l)(但し、r,lは整数値)という表記法を用いる。カッコ内の最初の“r”は、第r行を示し、次の“l”は、第l列を示している。
また図3(b)に示すように、データセル(2,1)が黒データセルである場合は、領域R1を除いたデータマトリクス12は、分割されずにそのまま1領域の領域R21として使用すること、及び二次元コード1がWebサーバ320nのインターネット上の位置を特定する種類のコードであることを示す。
領域R21は、10×9のデータセル12cを含んでいる。そして、領域R21に割り当てられるコードは、Webサーバ320nのURLを示している。
また、データセル(3,1)が黒データセルである場合(図示せず)は、データセル(2,1)が黒データセルである場合と同様に、領域R1を除いたデータマトリクス12は、分割されずにそのまま1領域の領域R21として使用すること、及び二次元コード1が部品番号を特定する種類のコードであることを示す。
さらに図3(c)に示すように、データセル(4,1)が黒データセルである場合、領域R1を除いたデータマトリクス12は、領域R31,R32の2分割にして使用すること、及び二次元コード1がWebサーバ320nに格納されているデータの位置を特定する種類のコードであることを示す。
領域R31は、10×6のデータセル12cを含み、領域R32は、10×3のデータセル12cを含んでいる。そして、領域R31に割り当てられるコードは、Webサーバ320nのURLを示し、領域R32に割り当てられるコードは、当該Webサーバ320nに格納されたデータが存在するディレクトリ名を示している。
同様にして、データセル(5,1)〜(10,1)が黒データセルである場合毎に、領域R1を除いたデータマトリクス12の分割態様と、当該データマトリクス12に割り当てられるコードの種類とを規定することができる。このように規定された二次元コード1を、データセル(1,1)が黒データセルである場合から順に、A〜Kタイプの二次元コード1という。
なお、図3(a)に示す二次元コード1は、この1つのコードのみで、スマートフォン100は、Webサーバ320nに格納された目的のデータに到達することができる。これに対し、図3(c)に示す二次元コード1は、この1つのコードのみでは、スマートフォン100は、Webサーバ320nに格納された目的のデータに到達することができない。このため、二次元コード1が形成された物理媒体に、二次元コード5を追加して形成し、不足している情報を二次元コード5から取得するようにする。具体的には、図3(c)に示す二次元コード1には、Webサーバ320nに格納された目的のデータのファイル名の情報が不足しているので、二次元コード5に、このファイル名の情報を割り当てておく。そして、二次元コード1のデコード結果に、二次元コード5のデコード結果を加えることで、スマートフォン100は、撮像画像から、Webサーバ320nに格納された目的のデータに到達することができる。
図4は、図3の領域R1を複数の領域に分割する構成の一例を示している。
上述のように、本発明の特徴の1つは、各行12r又は各列12lのいずれか一方に、黒データセルは多くて1つのみが割り当てられる点である。しかし、二次元コード1は、各行12rも各列12lも、10個のデータセル12cからなるので、いずれか1行又は1列に、黒データセルが2個割り当てられたとしても、白データセルに対する黒データセルの密度が高くなったとは言えない。このため、いずれか1行又は1列に、黒データセルが2個程度割り当てられることは、許容される。
領域R1に黒データセルを1つのみ割り当てた場合、領域R1を除いたデータマトリクス12の使用態様及びコードの種類は、10種類に限定される。これに対して、2つの領域R2,R3にそれぞれ黒データセルを1つずつ割り当てた場合には、領域R1を除いたデータマトリクス12の使用態様及びコードの種類は、25種類に増加する。1行又は1列における黒データセルの密度の増加より、使用態様の増加の方が効果が大きいため、いずれか1行又は1列に、黒データセルが2個程度割り当てられることは、十分許容される。
次に、データマトリクスへのコードの割り当て方法について説明する。説明を簡単化するため、4×4のデータセル52cからなるデータマトリクス52へのコードの割り当てを例に挙げて、その割り当て方法を説明する。
図5(a)は、データマトリクス52に4進数を割り当てる方法を説明するための図である。図示例は、黒データセルを各行に多くとも1つ割り当てる例を示している。
図5(a)において、コード3a:1、コード3b:2、コード3c:3、コード3d:10、コード3e:11、コード3f:12、コード3g:13、コード3h:20、コード3i:21、コード3j:22、コード3k:23、コード3l:30、コード3m:33、コード3n:100、である。但し、“:”の右側の数値は、4進数を示している。つまりデータマトリクス52において、第1行が4進数の第1桁を示し、第2行が4進数の第2桁を示し、第3行が4進数の第3桁を示し、第4行が4進数の第4桁を示している。
図5(b)は、データマトリクス52に5進数を割り当てる方法を説明するための図である。
図5(b)において、コード4a:1、コード4b:2、コード4c:3、コード4d:4、コード4e:10、コード4f:11、コード4g:12、コード4h:20、コード4i:21、コード4j:44、コード4k:30、コード4l:31、コード4m:444、コード4n:1000、である。但し、“:”の右側の数値は、5進数を示している。つまりデータマトリクス52、第1行が5進数の第1桁を示し、第2行が5進数の第2桁を示し、第3行が5進数の第3桁を示し、第4行が5進数の第4桁を示している。
このように1行のデータセルが同数(図示例では、4つ)であっても、割り当て方法を変更すれば、異なった進数を割り当てることができる。
以上のように構成されたスマートフォン100が実行する制御処理を、図6及び図7を参照して詳細に説明する。以下、各処理の手順の説明において、ステップを「S」と表記する。
図6は、スマートフォン100、特にCPU101が実行する制御処理の手順を示している。
図6において、まずCPU101は、撮像画像の画像処理を実行する(S10)。撮像画像とは、二次元コード1を含む物理媒体を、例えば上記カメラ109により撮影して生成した画像である。物理媒体は、例えば印刷物であるが、二次元コード1が形成されるものであれば、印刷物に限らない。なお以下の説明では、二次元コード1を中心に説明する。二次元コード1の方が二次元コード5より複雑であるので、二次元コード5の認識処理は、二次元コード1の認識処理を簡単に類推適用できるからである。
画像処理には、撮像画像のノイズを除去するノイズ除去処理、ノイズ除去後の撮像画像を2値化する2値化処理、及び2値化後の撮像画像から二次元コード1を切り出す切出し処理などが含まれる。
切出し処理では、CPU101は、第2〜第4コーナーセル10b〜10dに基づいて二次元コード1の矩形平面10を特定し、特定した矩形平面10を撮像画像から切り出す。このとき、撮像画像内に、第2〜第4コーナーセル10b〜10dと同様の3つのコーナーセルがある場合がある。上述のように被撮影媒体に、二次元コード1と二次元コード5とが形成される場合があるからである。この場合には、CPU101は、撮像画像において2つの矩形平面10及び矩形平面50を特定し、当該撮像画像から特定した矩形平面10及び矩形平面50を切り出す。
次にCPU101は、コード検出・デコード処理を実行する(S12)。
図7は、コード検出・デコード処理の詳細な手順を示している。図7において、まずCPU101は、ドットタイプを特定する(S40)。ドットタイプは、第1コーナーセルの三角形に基づいて特定されるので、CPU101は、第1コーナーセルの三角形が黒色で塗りつぶされているか否かを判断する。この判断で、第1コーナーセルの三角形が黒色で塗りつぶされていると判断される場合、CPU101は、切り出された二次元コードを10×10ドットタイプの二次元コード1と特定する。一方、第1コーナーセルの三角形が上記打抜き三角形であると判断される場合、CPU101は、切り出された二次元コードを4×4ドットタイプの二次元コード5と特定する。
次にCPU101は、データマトリクスを切り出す(S42)。データマトリクス12,52は、矩形平面10,50の内部に形成されているので、CPU101は、第2〜第4コーナーセル10b〜10d,50b〜50dに基づいて、データマトリクス12,52を特定し、特定したデータマトリクス12,52を矩形平面10,50から切り出す。
次にCPU101は、二次元コードのタイプを特定する(S44)。本実施形態では上述のように、二次元コード1を説明の中心にしているので、S42で切り出されるデータマトリクスは、二次元コード1に含まれるデータマトリクス12である。したがって、データマトリクス12には領域R1が含まれるため、S44の処理は意味を持つ。しかし、S42で切り出されるデータマトリクスが二次元コード5に含まれるデータマトリクス52である場合には、データマトリクス52には領域R1が含まれないため、S44の処理は意味を持たない。この場合、CPU101は、S44の処理をスキップする。
S44では、CPU101は、二次元コード1が上記A〜Kタイプのいずれであるかを、領域R1における黒データセルの位置に基づいて特定する。
次にCPU101は、デコードする(S46)。具体的には、デコード対象がAタイプの二次元コード1である場合、つまり上記図3(a)の二次元コード1である場合、CPU101は、領域R11〜R13毎にデコードする。例えば、領域R11には、4進数の数値が割り当てられ、領域R12及び領域R13にはそれぞれ、5進数の数値が割り当てられているとすると、CPU101は、領域R11のコードから4進数の数値をデコードし、領域R12及び領域R13の各コードからそれぞれ、5進数の数値をデコードする。なお、各領域R11〜R13にそれぞれ割り当てられる数値の進数が何進数であるかは、二次元コード1のタイプと対応付けるようにしておけばよい。
一方、デコード対象がDタイプの二次元コード1である場合、つまり上記図3(c)の二次元コード1である場合、CPU101は、領域R31,R32毎にデコードする。上述のように、Dタイプの二次元コード1は、Aタイプの二次元コード1と同様に、Webサーバ320nに格納されているデータを取得する種類のものであるが、Aタイプの二次元コード1と異なり、Dタイプの二次元コード1だけでは、取得対象のデータに到達できない。このため、不足している情報を二次元コード5から取得する必要がある。この場合、上述したように既にCPU101が、S42の処理によって二次元コード5のデータマトリクス52を切り出しているのであれば、切り出したデータマトリクス52をデコードすればよい。しかし媒体上、二次元コード5が二次元コード1と離れて形成されているなどの事情により、撮像画像内に二次元コード1のみが含まれ、二次元コード5が含まれていない場合には、CPU101は、二次元コード1のデコード後、「情報が不足しているので、別の二次元コードも撮影してください」という警告メッセージをタッチパネル102に表示する。これに応じてユーザが別の二次元コード5を撮影すると、CPU101は、上記S10,S40,S42,S46の各処理を行って、二次元コード5に含まれるデータマトリクス52をデコードし、情報不足を解消させる。
次にCPU101は、送信データを生成する(S48)。なお、処理がS48に進んだ時点では、上記情報不足は解消されているものとする。ここで送信データとは、上記管理サーバ310に送信するデータである。本実施形態では、CPU101は、デコード結果をそのまま送信するのではなく、10進数以外の進数の数値にデコードされたものを10進数に変換した後、変換された10進数の数値を含む送信データを生成して、管理サーバ310に送信する。S48の処理は、10進数への変換と、変換後の10進数の数値を含む送信データの生成とを含んでいる。
具体的には、上述のようにAタイプの二次元コード1がデコードされ、デコード結果として、4進数の数値と、2つの5進数の数値とが取得された場合、CPU101は、これら3つの数値をそれぞれ10進数の数値に変換する。この変換方法は、公知の方法を用いればよいので、その説明は省略する。そしてCPU101は、変換後の3つの数値を含む送信データを生成する。
送信データには通常、ヘッダが付加される。ヘッダには、送信データの送信先や送信データのデータ構造など、受信側の管理サーバ310が必要な情報が記載される。デコード結果には、この具体例のような3つの数値や、1つだけの数値、2つの数値、さらに4つ以上の数値など、数値の個数はバラバラであるので、送信データ内に何個の数値が含まれるかをヘッダに記載しておく必要がある。さらにヘッダには、A〜Kタイプのいずれの二次元コード1がデコードされたかを示す情報も記載しておく必要がある。これにより、管理サーバ310は、スマートフォン100からの送信データに応答してどのようなデータを送信するかを知ることができるからである。
CPU101は、S48の処理を実行後、コード検出・デコード処理を終了(リターン)する。
図6に戻り、CPU101は、S48で生成した送信データを通信I/F110から管理サーバ310へ送信する(S14)。
図8は、管理サーバ310、特にCPU(図示せず)が実行する制御処理の手順を示している。
図8において、まずCPUは、スマートフォン100からの送信データを受信するまで待機し(S100:NO)、スマートフォン100からの送信データを受信すると(S100:YES)、処理をS110に進める。
S110では、CPUは、受信データ、つまりスマートフォン100からの送信データを解析する。具体的には、CPUは、受信データのヘッダを解析し、受信データの種類を取得する。つまり本実施形態では、受信データの種類は、URL+ディレクトリ名+表示ファイル名である(以下「第1種類の受信データ」という)か、部品番号である(以下「第2種類の受信データ」という)かのいずれかである。管理サーバ310は、例えば、第1種類の受信データに対して、応答データとして部品名を示す送信データを生成して、スマートフォン100に送信することがないように、ヘッダから受信データの種類を取得するようにしている。
そしてCPUは、受信データが第1種類の受信データであれば、3つの数値のそれぞれと対応付けられた情報を、管理サーバ310内のデータベース(図示せず)から取得する。つまりCPUは、Webサーバ320nのURLと、当該Webサーバ320nに格納された目的のデータが存在するディレクトリ名と、当該データの表示ファイル名とをデータベースから取得する。
一方、受信データが第2種類の受信データであれば、CPUは、1つの数値と対応付けられた情報を、管理サーバ310内の上記データベースとは異なるデータベース(図示せず)から取得する。つまりCPUは、部品番号に対応する部品名や部品画像等の情報をデータベースから取得する。
次にCPUは、解析結果に応じてデータを生成する(S120)。具体的には、CPUは、データベースから取得した情報を含むデータを生成する。さらにCPUは、生成したヘッダにも、データの種類を示す情報を記載しておく。このデータを受信したスマートフォン100がどの種類のデータか分かるようにするためである。
次にCPUは、生成したデータをスマートフォン100に送信した(S130)後、処理を上記S100に戻す。
図6に戻り、CPU101は、管理サーバ310からの送信データを受信するまで待機し(S16:NO)、管理サーバ310からの送信データを受信すると(S16:YES)、処理をS18に進める。
S18では、CPU101は、受信データ、つまり管理サーバ310からの送信データを解析する。具体的には、CPU101は、受信データのヘッダを解析し、受信データの種類を取得する。
受信データが第1種類の受信データである場合は、受信データには、URL+ディレクトリ名+表示ファイル名が含まれている。但し、この場合の第1種類の受信データは、上記S110で説明した第1種類の受信データと、種類は同じでも、データ内容は異なっている。つまり、前者の第1種類の受信データは、管理サーバ310のデータベースから取得した情報を含むものであるのに対して、後者の第1種類の受信データは、データベースから取得する前の数値情報を含むものであるからである。
一方、受信データが第2種類の受信データである場合は、部品名や部品画像等である。但し、この場合の第2種類の受信データも、上記S110で説明した第2種類の受信データと、種類は同じでも、データ内容は異なっている。
次にCPU101は、受信データがWebサーバ320nにデータ送信する種のデータであるか否かを判断する(S20)。この判断において、受信データがWebサーバ320nにデータ送信する種のデータであると判断される場合(S20:YES)、CPU101は、受信データに基づいて送信データを生成し、生成した送信データを通信I/F110からWebサーバ320nに送信する(S22)。
次にCPU101は、Webサーバ320nからの送信データを受信するまで待機し(S24:NO)、Webサーバ320nからの送信データを受信すると(S24:YES)、処理をS26に進める。
S26では、CPU101は、受信データに基づいて表示画面を生成し、生成した表示画面をタッチパネル102上に表示させた(S26)後、制御処理を終了する。S26の処理によれば、Webサーバ320n内に格納された表示データがタッチパネル102上に表示される。表示データが、例えば、Webサーバ320n内に格納された複数の電子カタログのうち、特定のカタログの特定のページのデータであるとすると、そのカタログのそのページがタッチパネル102上に表示される。
一方、上記S20の判断において、受信データがWebサーバ320nにデータ送信する種のデータでないと判断される場合(S20:NO)、CPU101は、処理をS20から上記S26に進める。S26の処理は、上述したので、その説明は省略するが、処理がS20からS26に進む場合と、処理がS24からS26に進む場合では、表示対象の受信データは異なっている。つまり、前者の受信データは、管理サーバ310が送信したものであるのに対して、後者の受信データは、Webサーバ320nが送信したものだからである。
以上説明したように、本実施形態の二次元コード1は、黒色又は白色のいずれか一方で塗りつぶされたデータセル12cをマトリクス状に配置したデータマトリクス12を含み、データマトリクス12を構成する各行12r又は各列12lのいずれか一方に含まれるデータセル12cのうち、多くとも1つのデータセル12cのみが黒色で塗りつぶされ、他のデータセル12cはすべて白色で塗りつぶされる。
このように、本実施形態の二次元コード1では、認識性を保持しつつ、可及的に縮小化することが可能となる。
ちなみに、本実施形態において、黒色は、「第1色」の一例である。白色は、「第2色」の一例である。
また、データマトリクス12に配置されるデータセル12cにより、N進数の数値が表現される。
これにより、膨大な数の異なる数値をデータマトリクス12に割り当てる、つまりコード化することができる。具体的には、図3(a)の二次元コード1では、領域R11に1,048,576個の数値を割り当てることができ、領域R12と領域R13にそれぞれ、3,125個の数値を割り当てることができる。また図3(b)の二次元コード1では、領域R21に3,486,784,401個の数値を割り当てることができる。さらに図3(c)の二次元コード1では、領域R31に60,466,176個の数値を割り当てることができ、領域R32に59,049個の数値を割り当てることができる。
また、黒色は、二次元コード1を含む撮像画像を2値化した場合に黒色になる色であり、白色は、二次元コード1を含む撮像画像を2値化した場合に白色になる色である。
また、二次元コード1は、矩形平面10を備え、矩形平面10の各隅に第1〜第4コーナーセル10a〜10dを設け、少なくとも第1コーナーセル10aは、三角形状をなして、データマトリクス12の種類を規定する役割を果たし、データマトリクス12は、矩形平面10上、第1〜第4コーナーセル10a〜10dの内側に形成される。
これにより、第1コーナーセル10aの形状によってデータマトリクス12の種類が分かるので、データマトリクス12に割り当てられたコードをデコードするのに有用である。
ちなみに、三角形は、「所定形状」の一例である。
また、第1コーナーセル10aは、三角形状をなし、第2〜第4コーナーセル10b〜10dは、三角形状とは異なる矩形状をなして、データマトリクス12及び矩形平面10の存在位置を規定する。
これにより、撮像画像から矩形平面10を切り出す際、及び矩形平面10からデータマトリクス12を切り出す際に、第2〜第4コーナーセル10b〜10dを基準にして行えばよいので、当該切出しを容易化することが可能となる。
ちなみに、三角形は、「第1形状」の一例である。矩形は、「第2形状」の一例である。
また、データマトリクス12を構成する各行12r又は各列12lのいずれか一方に含まれるいずれか1行12r又は1列12lは、1行12r又は1列12lを除く、データマトリクス12の使用態様を決定する役割を果たす。
これにより、同形同サイズのデータマトリクス12でも、別の使用態様で使用することができ、用途の幅を拡大させることができる。
使用態様は、1行12r又は1列12lを除く、データマトリクス12を1又は2以上に分割して使用することである。
さらに、本実施形態のスマートフォン100は、二次元コード1が形成された印刷物を撮影するカメラ109と、CPU101と、を備え、CPU101は、カメラ109により撮影された二次元コード1を含む撮像画像から二次元コード1を検出し(S10)、検出された二次元コード1からデータマトリクス12を切り出し(S42)、切り出されたデータマトリクス12からデータマトリクス12上に表現されたN進数の数値を認識する(S46)。
このように、本実施形態のスマートフォン100では、認識性を保持しつつ、可及的に縮小化することが可能となる二次元コードからN進数の数値を認識することが可能となる。
ちなみに、本実施形態において、スマートフォン100は、「認識処理装置」の一例である。印刷物は、「物理媒体」の一例である。カメラ109は、「撮影部」の一例である。CPU101は、「制御部」の一例である。
なお、本発明は上記実施形態に限定されるものでなく、その趣旨を逸脱しない範囲で様々な変更が可能である。
(1)上記実施形態では、被写体である物理媒体上に、二次元コード1と二次元コード5とが形成される例は挙げたが、同じ種類の二次元コード1や二次元コード5が複数形成されるようにしてもよい。
(2)上記実施形態では、二次元コードの種類として、二次元コード1と二次元コード5の2種類を挙げたが、これに限らず、3種類以上設けるようにしてもよい。この場合、各種類の二次元コードにおいて、データマトリクスのドットタイプを異ならせることが考えられるが、この他に、データマトリクスのドットタイプは同じでも、データマトリクスに割り当てるコードの種類を異ならせるようにしてもよい。
(3)上記実施形態では、データマトリクス12,52の形状も、データセル12c,52cの形状も、ともに矩形状、特に正方形状としたが、これに限らず、楕円形状等、認識可能な形状であればよい。但し、認識を容易化するため、矩形状に近い形状であることが望ましい。
(4)上記実施形態では、第1コーナーセル10a,50a、つまり二次元コード1,5のドットタイプを示す役割を果たす三角形状のセルは、矩形平面10,50の左上隅としたが、位置は、これに限らず、右上隅、右下隅、及び左下隅のいずれであってもよい。また形状も、三角形状に限らない。
(5)上記実施形態では、図3における領域R1に、領域R1を除いたデータマトリクス12の分割態様と、当該データマトリクス12に割り当てられるコードの種類との両方を規定する役割を持たせるようにしたが、いずれか一方の役割だけ持たせるようにしてもよい。また領域R1として、データマトリクス12の第1列を採用したが、これに限らず、第1行であってもよい。さらに領域R1として、第2列以降又は第2行以降の1列又は1行であってもよい。
(6)上記実施形態では、データマトリクス12,12′,52にN進数の数値をそのままコード化して割り当てるようにしたが、これに限らず、割り当てたいN進数の数値を暗号化し、暗号化後の数値をコード化して割り当てるようにしてもよい。この場合、N進数の数値を暗号化するのではなく、その基になる10進数の数値を暗号化し、暗号化後の10進数の数値をN進数に変換し、変換後の数値をそのままコード化してデータマトリクス12,12′,52に割り当てるようにしてもよい。
1,1′,5 二次元コード
10,50 矩形平面
10a,50a 第1コーナーセル
10b,50b 第2コーナーセル
10c,50c 第3コーナーセル
10d,50d 第4コーナーセル
12,12′,52 データマトリクス
12c,52c データセル
100 スマートフォン
101 CPU
102 タッチパネル
110 通信I/F
200 通信ネットワーク
310 管理サーバ
320n Webサーバ

Claims (9)

  1. 第1色及び前記第1色と異なる第2色のいずれか一方で塗りつぶされたデータセルをマトリクス状に配置したデータマトリクスを含み、
    前記データマトリクスの各行をそれぞれ構成する複数のデータセルは、前記各行のすべてについて行毎に、多くとも1つのデータセルのみが前記第1色で塗りつぶされ、他のデータセルはすべて前記第2色で塗りつぶされ、
    前記データマトリクスに配置される前記データセルにより、N進数の数値が表現され、
    前記N進数の数値の各桁は、前記データマトリクスの各行に対応付けられ、
    前記N進数の数値を構成する各桁の数値は、前記データマトリクスの各行にそれぞれ配置されたデータセルにより規定される、
    二次元コードであって、
    前記データマトリクスを構成する各行及び各列のいずれか一方に含まれるいずれか1行又は1列を構成する前記複数のデータセルは、多くとも2つのデータセルのみが前記第1色で塗りつぶされ、他のデータセルはすべて前記第2色で塗りつぶされ、前記多くとも2つのデータセルが配置された位置により、前記1行又は1列を除く、前記データマトリクスを1つのまとまりとして使用すること又は2つ以上に分割して使用すること及び当該二次元コードの種類が規定される、
    ことを特徴とする二次元コード。
  2. 第1色及び前記第1色と異なる第2色のいずれか一方で塗りつぶされたデータセルをマトリクス状に配置したデータマトリクスを含み、
    前記データマトリクスの各列をそれぞれ構成する複数のデータセルは、前記各列のすべてについて列毎に、多くとも1つのデータセルのみが前記第1色で塗りつぶされ、他のデータセルはすべて前記第2色で塗りつぶされ、
    前記データマトリクスに配置される前記データセルにより、N進数の数値が表現され、
    前記N進数の数値の各桁は、前記データマトリクスの各列に対応付けられ、
    前記N進数の数値を構成する各桁の数値は、前記データマトリクスの各列にそれぞれ配置されたデータセルにより規定される、
    二次元コードであって、
    前記データマトリクスを構成する各行及び各列のいずれか一方に含まれるいずれか1行又は1列を構成する前記複数のデータセルは、多くとも2つのデータセルのみが前記第1色で塗りつぶされ、他のデータセルはすべて前記第2色で塗りつぶされ、前記多くとも2つのデータセルが配置された位置により、前記1行又は1列を除く、前記データマトリクスを1つのまとまりとして使用すること又は2つ以上に分割して使用すること及び当該二次元コードの種類が規定される、
    ことを特徴とする二次元コード。
  3. 前記第1色は、撮像画像に含まれる前記二次元コードを2値化した場合に黒色になる色であり、
    前記第2色は、前記撮像画像に含まれる前記二次元コードを2値化した場合に白色になる色である、
    ことを特徴とする請求項1又は2に記載の二次元コード。
  4. 請求項1乃至のいずれか1項に記載の二次元コードを含む撮像画像から前記二次元コードを検出する検出処理と、
    前記検出処理により検出された前記二次元コードから前記データマトリクスを切り出す切出し処理と、
    前記切出し処理により切り出された前記データマトリクスから前記データマトリクス上に表現されたN進数の数値を認識する認識処理と、
    をコンピュータに実行させる認識処理プログラム。
  5. 前記コンピュータにさらに、
    前記認識処理により認識された前記N進数の数値を10進数の数値に変換する変換処理と、
    前記変換処理により変換された前記10進数の数値を含む送信データを生成する生成処理と、
    前記生成処理により生成された前記送信データを管理サーバに送信する送信処理と、
    を実行させる
    ことを特徴とする請求項に記載の認識処理プログラム。
  6. 請求項に記載の認識処理プログラムの前記送信処理により送信された前記送信データを受信する受信処理と、
    前記受信処理により受信された前記送信データに含まれる前記10進数の数値に対応する情報を前記管理サーバのデータベースから取得する取得処理と、
    前記取得処理により取得された情報を含む送信データを生成する生成処理と、
    前記生成処理により生成された前記送信データを端末装置に送信する送信処理と、
    を前記管理サーバに実行させるプログラム。
  7. 前記10進数の数値に対応する情報は、Webサーバのインターネット上の位置を示す情報と、前記Webサーバに格納された所定データが存在するディレクトリを特定する情報と、前記所定データを表示するファイルを特定する情報とを含む、
    ことを特徴とする請求項に記載のプログラム。
  8. 請求項1乃至のいずれか1項に記載の二次元コードが形成された物理媒体を撮影する撮影部と、
    制御部と、
    を備え、
    前記制御部は、
    前記撮影部により撮影された前記二次元コードを含む撮像画像から前記二次元コードを検出し、
    前記検出された前記二次元コードから前記データマトリクスを切り出し、
    前記切り出された前記データマトリクスから前記データマトリクス上に表現されたN進数の数値を認識する、
    ことを特徴とする認識処理装置。
  9. 請求項1乃至のいずれか1項に記載の二次元コードを含む撮像画像から前記二次元コードを検出し、
    前記検出された前記二次元コードから前記データマトリクスを切り出し、
    前記切り出された前記データマトリクスから前記データマトリクス上に表現されたN進数の数値を認識する、
    ことを特徴とする認識処理方法。
JP2019074974A 2019-04-10 2019-04-10 二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法 Active JP6810940B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019074974A JP6810940B2 (ja) 2019-04-10 2019-04-10 二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法
JP2020157407A JP6894600B2 (ja) 2019-04-10 2020-09-18 二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019074974A JP6810940B2 (ja) 2019-04-10 2019-04-10 二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020157407A Division JP6894600B2 (ja) 2019-04-10 2020-09-18 二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法

Publications (2)

Publication Number Publication Date
JP2020173601A JP2020173601A (ja) 2020-10-22
JP6810940B2 true JP6810940B2 (ja) 2021-01-13

Family

ID=72831477

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019074974A Active JP6810940B2 (ja) 2019-04-10 2019-04-10 二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法

Country Status (1)

Country Link
JP (1) JP6810940B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117560402B (zh) * 2024-01-12 2024-04-19 凌锐蓝信科技(北京)有限公司 一种基于sd-wan的工业安全隔离和数据交换的系统及方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4758703A (en) * 1987-05-06 1988-07-19 Estee Lauder Inc. System and method for encoding objects
JPS6412390A (en) * 1987-07-06 1989-01-17 Toshiba Ceramics Co Display body with code consisting of graphic code
JPH06150044A (ja) * 1992-11-13 1994-05-31 Yamatake Honeywell Co Ltd 枡目コードの読み取り方法
JPH06150043A (ja) * 1992-11-13 1994-05-31 Yamatake Honeywell Co Ltd 枡目コードの読み取り方法
JPH07134756A (ja) * 1993-11-09 1995-05-23 Toppan Printing Co Ltd 2次元コードを付した表示体及び2次元コードの付与方法
GB9408626D0 (en) * 1994-04-29 1994-06-22 Electronic Automation Ltd Machine readable binary code
RU2009100923A (ru) * 2006-06-14 2010-07-20 Веритек, Инк. (Us) Многомерные символики и связанные способы
JP5120156B2 (ja) * 2008-03-27 2013-01-16 株式会社デンソーウェーブ 二次元コード
JP6261118B2 (ja) * 2013-12-09 2018-01-17 眞理子 溝口 二次元コード読取方法及び該二次元コードの記録媒体
JP2017191420A (ja) * 2016-04-13 2017-10-19 溝口 さとし 二次元コード記録媒体および二次元コード読取方法

Also Published As

Publication number Publication date
JP2020173601A (ja) 2020-10-22

Similar Documents

Publication Publication Date Title
US11301661B2 (en) Encoded information reading terminal configured to pre-process images
JP3953501B1 (ja) プログラム、情報記憶媒体、2次元コード生成システム、画像生成システム及び2次元コード
JP6190041B2 (ja) 安否確認システム及び秘匿化データの類似検索方法
US10013434B2 (en) Geographic coordinate encoding device, method, and storage medium, geographic coordinate decoding device, method, and storage medium, and terminal unit using geographic coordinate encoding device
US8600158B2 (en) Method and system operative to process color image data
JP2009295134A (ja) 二次元コード、そのデコード装置及び方法
EP3502969B1 (en) Object provided with two-dimensional code, method for generating two-dimensional code, and recognition method and apparatus
CN102722881A (zh) 可操作地处理单色图像数据的方法和系统
JP6300792B2 (ja) キャプチャされたデータの強化
JP2007034625A (ja) 情報表示装置
JP2007241328A (ja) プログラム、情報記憶媒体、2次元コード生成システム、画像生成システム及び印刷物
CN114004905B (zh) 人物风格形象图的生成方法、装置、设备及存储介质
JP6810940B2 (ja) 二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法
CN109710894A (zh) 文件内容提取方法、设备、装置及计算机可读存储介质
JP6894600B2 (ja) 二次元コード、認識処理プログラム、認識処理装置、及び認識処理方法
JP2015114758A (ja) 情報コード生成方法、情報コード、情報コード読取装置、及び情報コード利用システム
JP2007122351A (ja) 画像読取システム
JP2019148929A (ja) 二次元コード、二次元コード出力システム、二次元コード出力方法、二次元コード読取システム、二次元コード読取方法及びプログラム
JP5453399B2 (ja) 特有数値でデータを符号化および復号するための方法および装置
US20070124065A1 (en) Map transmission system and method thereof
WO2010070870A1 (ja) 情報取得装置、情報取得方法およびプログラム
JP2020194544A (ja) マトリックスバーコードを生成及び検証するシステム、マトリックスバーコードを生成する方法並びにマトリックスバーコードを検証する方法
JP2007241329A (ja) プログラム、情報記憶媒体、2次元コード生成システム、画像生成システム及び印刷物
JP7539845B2 (ja) コード作成方法及びプログラム
CN113628292B (zh) 一种在目标终端中预览图片的方法及设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190410

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190530

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190625

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190822

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200721

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200918

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201204

R150 Certificate of patent or registration of utility model

Ref document number: 6810940

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250