JP2006236135A - 二次元コード認識装置とそのプログラム - Google Patents

二次元コード認識装置とそのプログラム Download PDF

Info

Publication number
JP2006236135A
JP2006236135A JP2005051784A JP2005051784A JP2006236135A JP 2006236135 A JP2006236135 A JP 2006236135A JP 2005051784 A JP2005051784 A JP 2005051784A JP 2005051784 A JP2005051784 A JP 2005051784A JP 2006236135 A JP2006236135 A JP 2006236135A
Authority
JP
Japan
Prior art keywords
code
code data
dimensional code
data description
position detection
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.)
Granted
Application number
JP2005051784A
Other languages
English (en)
Other versions
JP4247190B2 (ja
Inventor
Hiroshi Inoue
洋思 井上
Yuriko Tanaka
百合子 田中
Kazuhiro Togashi
和広 富樫
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2005051784A priority Critical patent/JP4247190B2/ja
Publication of JP2006236135A publication Critical patent/JP2006236135A/ja
Application granted granted Critical
Publication of JP4247190B2 publication Critical patent/JP4247190B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】表示媒体の向きが変化しても複雑な画像処理アルゴリズムを用いることなく安定したコード認識処理を行えるようにする。
【解決手段】探索対象の画像データ中から二次元コードを認識する復号する際に、先ず探索対象の画像データ中からスケール用スクウェア画像SSを認識してその一辺の長さを計算する。次に、この計算された一辺の長さをスケール基準値としてシンボルテンプレートのサイズを調整し、このサイズ調整されたシンボルテンプレートをもとに上記探索対象の画像データ中から切り出し用シンボル部SS,SEを認識する。そして、上記認識された切り出し用シンボル部SS,SEをもとにデータ記述部DTの存在範囲を推定し、この推定された存在範囲に含まれるデータ記述部の候補画像に対しチェックパターンCPによる正当性の判定を行ったのち、当該データ記述部DT記述されたコードデータを復号する。
【選択図】 図6

Description

この発明は、例えば意見集約法を採用した会議やワークショップを支援するシステムにおいて、意見が記載されたカードに表示される二次元コードを認識するための二次元コード識別装置とそのプログラムに関する。
会議やワークショップの場において利用される意見集約法の1つとして、KJ法が知られている。KJ法は、ブレーンストーミング等で出されたアイディアや意見、又は各種調査の現場から収集された雑多な情報を1つずつ小さなカード(紙切れ)に書き込み、それらのカードの中から内容の近いもの同士を集めてグループ化してゆく作業の中で、テーマの解決に役立つヒントやひらめきを生み出していこうとするものである。
KJ法の基本的な手順を以下に示す。はじめに、参加者は発想したアイディアや収集した情報などのデータを1つずつ1枚の小さなカードに書き込んでいく。次に、作成したカード群を机などに並べて、カードに書かれたデータが同類の内容であるカード同士を集めグループを作成する。また、作成した各グループには、その内容を要約した表札をつける。カードのグループ編成は、まず、小グループを作り、次に小グループを同士で中グループを、さらに中グループ同士で大グループを作成していく。このようにKJ法を使用すると、カードのグループ編成を繰り返しながら様々な意見を集約して、テーマ解決に役立つヒントを導き出すことが可能である。
ところで、最近上記KJ法を使用した会議やワークショップにおいて、意見集約のプロセスを記録し、この記録された情報を後にバーチャル会議等に再利用する試みがなされている。プロセスの記録手法としては、例えばビデオカメラを使用してカードのグループ化作業の過程を撮像し、この撮像された画像データから各カードの移動履歴を検出し記録するものが使用される。その際、各カードにはカードを識別するためのコードを印刷しておき、撮像された画像データに対し画像処理を行って上記コードを認識することにより各カードの移動履歴を検出するようにしている。なお、コードとしては、汎用の1次元バーコードや、水平及び垂直方向に情報を持つQRコード等の2次元コードが使用される(例えば、非特許文献1を参照。)。
http://www.keyence.co.jp/barcode/2jigenbasic/chishiki4.html
ところが、上記KJ法を使用した会議やワークショップにおいて、机又は壁に配置される各カードの向きは区々であり、しかもこの向きはカードが移動されるごとに変化する。このため、既存のバーコードを使用した従来のシステムでは、カードの向きによってはバーコードを正しく認識できなくなるおそれがある。また、正確に認識するために、例えばカードの向きに応じて画像データに対し傾き補正を行った上でバーコードの認識処理を行うことも考えられるが、このようにするとバーコードの認識処理に複雑なアルゴリズムと多くの処理時間を必要とするという別の問題を生じる。
この発明は、上記事情に着目してなされたもので、その目的とするところは、表示媒体の向きが変化しても複雑な画像処理アルゴリズムを用いることなく安定したコード認識処理を行えるようにし、特に意見集約プロセスの記録過程に使用する場合に好適な二次元コード認識装置とそのプログラムを提供することにある。
上記目的を達成するためにこの発明に係わる二次元コード認識装置とそのプログラムは、複数のセルを二次元配列したコードデータ記述部と当該コードデータ記述部の位置を示す位置検出用パターン部とを備える二次元コードと、当該二次元コードのスケール基準を定義するスケール情報がそれぞれ表示された媒体を撮像して得られる媒体画像データに対し、画像処理を行って上記二次元コードを認識する際に、
先ず上記媒体画像データ中から上記スケール情報を検出して、この検出されたスケール情報をもとに上記二次元コードのスケール基準値を算出する。そして、この算出されたスケール基準値をもとにサイズが調整されたテンプレート情報を生成し、この生成されたテンプレート情報をもとに、上記媒体画像データ中から上記位置検出用パターン部を検出する。次に、上記媒体画像データ中における上記位置検出用パターン部の検出位置をもとに上記コードデータ記述部の存在範囲を推定し、上記媒体画像データ中における上記推定された存在範囲から上記コードデータ記述部を検出して、この検出されたコードデータ記述部に記述されたコードデータを復号するようにしたものである。
したがってこの発明によれば、コードデータ記述部の位置を示す位置検出用パターン部が先ず検出され、この検出された位置検出用パターン部を利用してコードデータ記述部が認識される。このため、二次元コードを含む画像データから画像処理により二次元コードを認識する際に、二次元コードの向きが任意の方向に回転していても、画像データに対し傾き補正等を行うことなくコードデータ記述部を高い確率で検出し、そのコードデータを復号することが可能となる。このため、複雑な画像処理アルゴリズムを用いることなく、簡単かつ短時間に効率良く二次元コードを認識できる。
しかも、上記位置検出用パターン部の検出に先立ち、媒体画像データ中からスケール情報が検出され、これをもとに二次元コードのスケール基準値が算出される。そして、この算出されたスケール基準値をもとにサイズが調整されたテンプレート情報が生成され、この生成されたテンプレート情報をもとに上記位置検出用パターン部の検出が行われる。このため、位置検出用パターン部を迅速かつ確実に検出することが可能となる。
またこの発明は、上記位置検出用パターン部がコードデータ記述部の存在方向を形状により表す方向指示パターンを有する場合に、コードデータ記述部の存在範囲を推定する際に、上記位置検出用パターン部の検出位置及び上記方向指示パターンの形状をもとにコードデータ記述部の存在範囲を推定することを特徴とする。
したがって、位置検出用パターン部が検出されると、その方向指示パターンの形状をもとにコードデータ記述部の存在範囲が推定される。このため、例えばQRコードのように位置検出用のパターンを備えていても方向指示機能を持たないものに比べ、コードデータ記述部の存在位置を簡単かつ迅速に推定することが可能となる。
さらにこの発明は、位置検出パターンが固有の色に設定されている場合に、位置検出用パターン部を検出する際に、媒体画像データ中から上記固有の色に基づいて位置検出用パターン部を検出することを特徴とする。
このようにすると、媒体画像データ中に位置検出パターンと類似する形状の画像パターンが含まれている場合でも、色を考慮することで位置検出パターンをより一層正確に検出することが可能となる。
さらにこの発明は、コードデータ記述部が二次元コードの正当性を表すチェックパターンを含む場合に、コードデータを復号する際に、先ず上記チェックパターンをもとに二次元コードの正当性を判定する。そして、この正当性の判定の結果、二次元コードの正当性が確認された場合に、コードデータ記述部に記述されたコードデータを復号するようにすることを特徴とする。
このようにすると、例えば画像雑音等の影響により媒体画像データ中にコードデータ記述部と類似する画像パターンが存在した場合に、これを即時コードデータ記述部として誤認識しないようにすることができる。
さらにこの発明は、コードデータ記述部が二次元配列された複数のセルを第1及び第2の色のいずれかに設定することによりコードデータを表現している場合に、コードデータを復号する際に、コードデータ記述部の各セルの色を判定することによりコードデータを復号することも特徴とする。
このようにすると、一次元バーコードのようにコード幅を高精度に識別する必要がなく、比較的簡単な画像認識処理によりコードを正確に認識することができる。
以上述べたようにこの発明によれば、二次元コードを見つけ出して復号する際に、先ず位置検出用パターン部を検出し、この検出された位置検出用パターン部をもとにコードデータ記述部の存在範囲を推定して、この推定された範囲からコードデータ記述部を検出して復号処理するようにしたことによって、表示媒体の向きが変化しても複雑な画像処理アルゴリズムを用いることなく安定したコード認識処理を行うことができ、特に意見集約プロセスの記録過程に使用する場合に好適な二次元コード認識装置とそのプログラムを提供することができる。
以下、図面を参照してこの発明の実施形態を説明する。
図1は、この発明に係わる二次元コードの用途の一つである会議支援システムの概略構成図である。このシステムは、サーバ装置SVにボード撮像装置VI及びカード撮像装置CAを信号ケーブルを介して接続すると共に、上記サーバ装置SVに対しユーザ端末PC1〜PCkを通信ネットワークNWを介して接続可能としたものである。通信ネットワークNWは、例えばインターネットやLAN(Local Area Network)により構成される。
サーバ装置SVは、会議情報管理装置としての機能を備えたもので、上記ボード撮像装置VIにより撮像された映像データをケーブルを介して取り込む機能と、上記カード撮像装置CAにより撮像された画像データをケーブルを介して取り込む機能とを備える。
ユーザ端末PC1〜PCkはパーソナル・コンピュータにより構成され、表示装置とキーボードやマウスなどの入力装置を備えている。これらのユーザ端末PC1〜PCkは、通信ネットワークNWを介して上記サーバ装置SVと通信を行い、会議の閲覧者たるユーザが配信された会議情報をバーチャルな環境で閲覧するために使用する。
図2は、図1に示すシステムにおける会議情報の記録の様子を示す図である。同図において、ボード1は机上または壁等に備えられ、このボード1上においてKJ法等による意見集約のプロセスが実行される。このプロセスは、例えば意見を記入したカード21〜2iをボード1上に配置し、これらのカード21〜2iを参加者がボード1上で手操作により移動させることで、記入された意見の近いもの同士のグループを構成することにより行われる。ボード1は、市販のホワイトボードや模造紙等でも良いし、会場の壁や机をそのまま利用しても構わない。
カード21〜2iには、意見記入エリアとカード識別エリアとが設けられる。意見記入エリアは、会議参加者がペン等を用いて意見を記載する領域である。カード識別エリアには二次元コードが表示される。二次元コードは、カードごとに固有の個別識別情報(以下、カードIDと呼称する)を含み、カードに予め印刷される。なお、カード21〜2iは、ペンなどの筆記具を用いて意見が記入できるものであれば形状及び材質には制限はなく、例えば市販されている粘着剤付きの付箋紙などが利用できる。
ボード撮像装置VIは例えば動画の撮像が可能なビデオカメラからなり、意見集約が行われるボード1全体を時間経過にしたがって撮像する。そして、この撮像により得られるボード映像データとディジタル音声データを、例えばDVケーブル等を介してサーバ装置SVへ送る。
図3は、ボード映像データの一例を示すもので、このボード画像データにはボード1上に配置された複数のカード21〜2iの画像データと、後述するスケール用スクウェア画像SSが含まれる。各カード21〜2iの画像データには当該カード画像を識別するための二次元コードが含まれており、上記スケール用スクウェア画像SSはこの二次元コードを認識するために使用される。上記ボード画像データにおいて使用されるスケール用スクウェア画像は、二次元コードの長辺方向の長さを一辺とする正方形画像により構成される。
カード撮像装置CAは例えばディジタルスチルカメラにより構成され、カード21〜2iを一枚ずつ撮像する。そして、この撮像により得られたカード画像データを、例えばUSBケーブルなどを介してサーバ装置SVへ送る。カード画像データには、1枚のカードに記載された意見などを表す画像と、カードを識別するための二次元コードと、この二次元コードの認識に使用するスケール用スクウェア画像が含まれる。このカード映像データにおいて使用されるスケール用スクウェア画像は、上記二次元コードの短辺方向の長さを一辺とする正方形画像により構成される。
サーバ装置SVは、二次元コード認識装置としての機能も備える。すなわち、サーバ装置SVは、上記ボード撮像装置VIから送られたボード映像データ、およびカード撮像装置CAから送られたカード画像データをそれぞれ記憶する。そして、この記憶されたカード画像データを読み出し、カード識別エリアに表示された二次元コードを画像認識処理により認識してカードIDを解読する。
次にサーバ装置SVは、ボード映像データとカード画像データに含まれるカードIDを比較し、一致する場合にボード映像データ上のカードの位置を検出する。そして、検出されたカードの位置情報を移動履歴情報としてサーバ装置SVが備えるメモリに記憶する。このように記憶されたカードの移動履歴情報とカード画像データから会議情報データを再構成し、ユーザ端末PC1〜PCkに対して配信する。
ところで、上記カード21〜2iのカード識別エリアに表示される二次元コードは、次のように構成される。図4はその構成を示すものである。
すなわち、二次元コードは、複数のセルを二次元配列したデータ記述部DTと、その両端部に配置される切り出し用シンボル部SS,SEとから構成される。データ記述部DTは正方形をなす複数のセルを二次元配列したもので、チェックパターン領域と、データ領域とに分けられる。チェックパターン領域には、図5に示すように予め定められたチェックパターンCPが挿入される。チェックパターンCPは、二次元コードを認識する際にその正当性を判定するために使用される。データ領域にはカードIDが挿入される。例えば、各セルはそれぞれカードIDを構成するコードデータの各ビットに割り当てられ、ビット値に応じて白又は黒に設定される。
切り出し用シンボル部SS,SEは、二次元コードを認識する際にカード21〜2i上における上記データ記述部DTの位置を見つけるためのもので、データ記述部DTの存在方向を指し示す方向指示パターンを形成する。この方向指示パターンは、例えば図4に示すようにパターン形状が「逆コ型」と「コ型」を組み合わせたものからなる。なお、切り出し用シンボル部SS,SEの方向指示パターンのパターン形状は「逆コ型」及び「コ型」に限定されるものではなく、「<型」と「>型」とを組み合わせたものや、「→」と「←」とを組み合わせたもの等、データ記述部DTの存在方向を指し示すものであれば任意の形状の組み合わせを使用できる。なお、上記方向指示パターンを固有の色で着色するようにしてもよい。この固有の色には、会議支援システムにおいてカードで使用されない色が選ばれる。
さて、上記二次元コードを認識するための装置は次のように構成される。図5は、二次元コード認識機能を備えるサーバ装置SVの機能構成を示すブロック図である。
すなわち、サーバ装置SVは、マイクロプロセッサなどの中央処理ユニット(CPU:Central Processing Unit)11を備える。このCPU11には、バス12を介してデータメモリ13およびプログラムメモリ14及びデータメモリ14が接続され、さらにカメラ入力インタフェース(カメラ入力I/F)15、ビデオ入力I/F16、作成装置入力I/F17及び出力インタフェース(出力I/F)18が接続されている。
カメラ入力I/F15は、CPU11の制御の下で、カード撮像装置CAからケーブルを介して送られるカード画像データを取り込む。ビデオ入力I/F16は、CPU11の制御の下で、ボード撮像装置VIからケーブルを介して送られるボード画像データを取り込む。なお、上記カード画像データ及びボード画像データは、磁気ディスクや光ディスク、メモリカード等の外部記憶媒体から読み込むことも可能である。
作成装置入力I/F17にはケーブルを介してコード作成装置ASが接続される。コード作成装置ASは、各カードカード21〜2iに表示するための二次元コードを作成するもので、作成された二次元コードに対応するシンボルテンプレート情報及びコード属性データを出力する。作成装置入力I/F17は、上記コード作成装置ASから出力されるシンボルテンプレート情報及びコード属性データを取り込む。出力I/F18にはディスプレイ19が接続される。出力I/F18は、CPU11の制御の下、二次元コードの復号結果等をディスプレイ19に表示させる。
データメモリ14は、ハードディスクやフラッシュメモリからなり、探索画像記憶エリア14aと、シンボルテンプレート情報記憶エリア14bと、コード属性データ記憶エリア14cとを備えている。探索画像記憶エリア14aには、上記カメラ入力I/F15を介して取り込まれたカード画像データと、ビデオ入力I/F16を介して取り込まれたボード画像データが記憶される。
シンボルテンプレート情報記憶エリア14bには、上記作成装置入力I/F17を介して取り込まれたシンボルテンプレート情報が記憶される。コード属性データ記憶エリア14cには、同じく上記作成装置入力I/F17を介して取り込まれたコード属性データが記憶される。
プログラムメモリ13には、この発明を実現するためのアプリケーション・プログラムとして、探索画像入力制御プログラム13aと、スケール用スクウェア認識プログラム13bと、テンプレートサイズ制御プログラム13cと、切り出しシンボル探索プログラム13dと、データ記述範囲特定プログラム13eと、チェックビット解析プログラム13fと、コードデータ復号プログラム13gが格納される。
探索画像入力制御プログラム13aは、カード撮像装置CAから送られるカード画像データ及びボード撮像装置VIから送られるボード画像データをそれぞれカメラ入力I/F15及びビデオ入力I/F16を介して取り込み、この取り込まれた各画像データを上記探索画像記憶エリア14aに記憶させる。
スケール用スクウェア認識プログラム13bは、探索対象画像である上記ボード画像データ及びカード画像データ中からスケール用スクウェアの画像データSSを認識する。このときスケール用スクウェアとしては、二次元コードの長辺方向の長さを一辺とする第1の正方形画像と、二次元コードの短辺方向の長さを一辺とする第2の正方形画像とが用意されており、上記ボード画像データ中からは上記第1の正方形画像を、一方上記カード画像データ中からは上記第2の正方形画像をそれぞれ認識する。スケール用スクウェアの認識手法としては、画像処理技術の一つである特徴抽出(ブロブ解析)が用いられ、正方形の特徴が抽出される。またスケール用スクウェア認識プログラム13bは、上記抽出された第1及び第2の正方形の一辺の長さをそれぞれ計算する。この正方形の一辺の長さは、正方形の頂点の座標から三平方の定理を用いて算出される。
テンプレートサイズ制御プログラム13cは、上記シンボルテンプレート情報記憶エリア14bからシンボルテンプレート情報を読み出し、上記スケール用スクウェア認識プログラム13bにより算出された正方形の一辺の長さをスケール基準として、上記シンボルテンプレート情報のサイズを調整する。
切り出しシンボル探索プログラム13dは、上記探索画像記憶エリア14aに記憶されたボード画像データ又はカード画像データから二次元コードの切り出しシンボル部SS,SEを探索するもので、上記サイズ調整されたシンボルテンプレートを利用したパターンマッチングにより上記切り出しシンボル部SS,SEを検出する。
データ記述範囲特定プログラム13eは、上記切り出しシンボル探索プログラム13dにより検出された切り出しシンボル部SS,SEの位置座標と、方向指示パターンのパターン形状とをもとに、二次元コードのデータ記述部DTが存在する範囲を推定する。そして、この推定された範囲からデータ記述部DTの候補を抽出する。
チェックビット解析プログラム13fは、上記データ記述範囲特定プログラム13eにより抽出されたデータ記述部DTの候補についてそれぞれチェックパターンCPをもとに正当性を判定する。この二次元コードの正当性の判定は、画像雑音等の影響による二次元コードの誤認識を未然に回避するために行われる。
コードデータ復号プログラム13gは、上記チェックビット解析プログラム13fにより正当性が確認された二次元コードのデータ記述部DTに対し、各セルに記載された白と黒のパターンを2進数のコードデータに復号し、さらにこの2進数のコードデータを10進数のカードIDに変換する。
次に、以上のように構成されたサーバ装置SVにおける二次元コードの認識処理動作を説明する。図7はその制御手順と制御内容を示すフローチャートである。
カード画像データ及びボード画像データの取り込みが終了すると、サーバ装置SVはCPU11により二次元コードの探索対象となる画像データを探索画像記憶エリア14aから読み出す。そして、この状態で先ずステップ7aによりスケール用スクウェア認識プログラム13bを実行し、例えばブロブ解析を用いることにより、上記読み出された画像データ中から正方形からなるスケール用スクウェア画像SSの認識を行う。
例えば、上記ボード画像データからは二次元コードの長辺方向の長さを一辺とする第1の正方形画像を認識し、一方上記カード画像データからは二次元コードの短辺方向の長さを一辺とする第2の正方形画像を認識する。そして、この認識したスケール用スクウェア画像SSの一辺の長さを、正方形の頂点の座標から三平方の定理を用いて算出する。
次に、サーバ装置SVのCPU11は、ステップ7bによりテンプレートサイズ制御プログラム13cを実行し、予めコード作成装置ASから取り込んでおいたシンボルテンプレート情報をシンボルテンプレート情報記憶エリア14bから読み出す。そして、ステップ7cにおいて、上記読み出されたシンボルテンプレート情報に含まれるシンボル間距離(図9に示すa)と、上記ステップ7aで算出されたスケール用スクウェア画像SSの一辺の長さとをもとに、シンボルテンプレートのサイズを調整する。このサイズ調整は、上記シンボルテンプレート情報に含まれるシンボル形状及びシンボル間距離に対し、b/aを乗ずることにより行われる。図9及び図10にその処理の様子を示す。このサイズ調整により、シンボルテンプレートは、探索画像データ中に存在する二次元コードの切り出しシンボル部SS,SEと同一サイズに設定される。
次にCPU11は、ステップ7dにより切り出しシンボル探索プログラム13dを実行し、上記サイズ調整されたシンボルテンプレートを用いて、探索対象の画像データ中から切り出しシンボル部SS,SEの探索を行う。この探索処理は、上記シンボルテンプレートと探索対象の画像データとの間でパターンマッチングを行うことによりなされる。
さて、そうして切り出しシンボル部SS,SEが見つかると、続いてCPU11はステップ7eによりデータ記述範囲特定プログラム13eを実行し、切り出しシンボル部SS,SEの位置座標と方向指示パターンの形状をもとに、データ記述部DTの存在範囲を推定する。例えば、図11(a)に示すように、切り出しシンボル部SS,SE間に挟まれる領域で、かつ切り出しシンボル部SS,SEにそれぞれ接する1セル分のマージンを除いた範囲をデータ記述部DTの存在範囲として推定する。この存在範囲はデータ記述部DTとして認識される。そして、コード属性データ記憶エリア14cに記憶されている1セルのサイズにb/aを乗じたサイズをもとに、上記推定された範囲を図11(b)に示すように分割する。この分割された小範囲が二次元コードのセルとして認識される。
次にCPU11は、ステップ7fによりチェックビット解析プログラム13fを実行し、チェックパターンCPを検出してデータ記述部DTの候補の正当性を判定する。例えば、図11(c)に示すようにデータ記述部DTの左端にある2×2の4セルをチェックパターンCPとして抽出し、この4セルの白黒のパターンを判定する。そして、図11(c)に示すように4セルのうち左上のセルのみが黒でその他の3セルが白であれば、当該チェックパターンCPは正しいと判定され、これにより探索されたデータ記述部DTの候補の正当性は保証される。したがって、画像雑音等の影響による二次元コードの認識誤りを未然に回避できる。
上記チェックパターンCPの判定において二次元コードの正当性が確認されると、CPU11はステップ7gからステップ7hに移行する。そして、このステップ7hにおいてコードデータ復号プログラム13gを実行する。図8はその処理手順及び処理内容を示すフローチャートである。
すなわち、CPU11は先ずステップ8aにより、上記抽出されたデータ記述部DTから上記チェックパターンCPを除外してデータ記述範囲を特定する。次に、ステップ8bにより、上記特定されたデータ記述範囲内における分割された複数のセルのうち、最右下のセルをコードデータの最下位桁に対応するセルとして選択し、この選択した初期位置のセルについてステップ8cによりその輝度値から白か黒かを判定する。
続いてステップ8dにより、上記選択されたセルの左隣のセルを選択し、この選択したセルについて上記ステップ8cにより白か黒かを判定する。以後同様に、ステップ8dによりセルの選択位置を右から左方向へ、さらには下側の行から上側の行へ順次移動させながら、ステップ8cにおいてセルごとに白か黒かを判定する。
そうしてすべてのセルについての白/黒の判定が終了すると、CPU11はステップ8eからステップ8fに移行し、ここで上記各セルの判定結果をもとに2進数コードを生成する。例えば、白を“0”に、黒を“1”にそれぞれ変換する。そして、この生成された2進数コードをステップ8gにより10進数コードに変換し、この変換された10進数コードをステップ8hによりカードIDとしてデータメモリ14に保存する。最後にCPU11は、ステップ7iにおいて、上記保存されたカードIDを出力I/F18を介してディスプレイ19へ出力し表示させる。
以上述べたようにこの実施形態では、探索対象の画像データ中から二次元コードを認識する復号する際に、先ず探索対象の画像データ中からスケール用スクウェア画像SSを認識してその一辺の長さを計算する。次に、この計算された一辺の長さをスケール基準値としてシンボルテンプレートのサイズを調整し、このサイズ調整されたシンボルテンプレートをもとに上記探索対象の画像データ中から切り出し用シンボル部SS,SEを認識する。そして、上記認識された切り出し用シンボル部SS,SEをもとにデータ記述部DTの存在範囲を推定し、この推定された存在範囲に含まれるデータ記述部の候補画像に対しチェックパターンCPによる正当性の判定を行ったのち、当該データ記述部DT記述されたコードデータを復号するようにしている。
したがって、データ記述部DTの位置を示す切り出し用シンボル部SS,SEが先ず検出され、この検出された切り出し用シンボル部SS,SEを利用してデータ記述部DTが認識される。このため、二次元コードを含む画像データから画像処理により二次元コードを認識する際に、二次元コードの向きが任意の方向に回転していても、画像データに対し傾き補正等を行うことなくコードデータ記述部を高い確率で検出し、そのコードデータを復号することが可能となる。このため、複雑な画像処理アルゴリズムを用いることなく、簡単かつ短時間に効率良く二次元コードを認識できる。
しかも、上記切り出し用シンボル部SS,SEの検出に先立ち、探索対象の画像データ中からスケール用スクウェア画像SSが検出され、この画像SSをもとに二次元コードのスケール基準値が算出される。そして、この算出されたスケール基準値をもとにサイズ調整されたシンボルテンプレートが生成され、この生成されたシンボルテンプレートをもとに上記切り出し用シンボル部SS,SEの検出が行われる。このため、切り出し用シンボル部SS,SEを迅速かつ確実に検出することが可能となる。
また、上記スケール用スクウェア画像SSとして、二次元コードの長辺方向の長さを一辺とする第1の正方形画像と、二次元コードの短辺方向の長さを一辺とする第2の正方形画像とを用意し、ボード画像データ中から二次元コードを認識する場合には上記第1の正方形画像を使用し、一方カード画像データ中から二次元コードを認識する場合には上記第2の正方形画像を使用するようにしている。このため、多数の二次元コードが小さいサイズで含まれているボード画像データ中からでも、また比較的大きいサイズの二次元コードが1個だけ含まれているカード画像データ中からでも、二次元コードを効率良くかつ正確に認識することが可能となる。
さらにこの実施形態では、切り出し用シンボル部SS,SEにデータ記述部DTの存在方向を形状により表す方向指示パターンを備え、この方向指示パターンの形状をもとにコードデータ記述部の存在範囲を推定するようにしている。したがって、例えばQRコードのように位置検出用のパターンを備えていても方向指示機能を持たないものに比べ、コードデータ記述部の存在位置を簡単かつ迅速に推定することが可能となる。
さらに、切り出し用シンボル部SS,SEを固有の色に設定しておくと、切り出し用シンボル部SS,SEを検出する際に、上記固有の色に基づいて切り出し用シンボル部SS,SEを認識することも可能となる。このため、探索対象の画像データ中に切り出し用シンボル部SS,SEと類似する形状の画像パターンが含まれている場合でも、上記色を判定条件の一つとして使用することで切り出し用シンボル部SS,SEをより一層正確にかつ迅速に検出することが可能となる。
さらにこの実施形態では、データ記述部DTに二次元コードの正当性を表すチェックパターンCPを含め、コードデータを復号する際に先ず上記チェックパターンCPをもとに二次元コードの正当性を判定し、二次元コードの正当性が確認された場合にデータ記述部DTに記述されたコードデータを復号するようにしている。このため、例えば画像雑音等の影響により媒体画像データ中にデータ記述部DTと類似する画像パターンが存在した場合に、これをデータ記述部として誤認識しないようにすることができ、認識率を向上させることができる。
なお、この発明は上記実施形態に限定されるものではない。例えば、前記実施形態ではデータ記述部DTの左右に切り出し用シンボル部SS,SEを配置する場合を例にとって説明したが、データ記述部DTの上下に切り出し用シンボル部SS,SEを配置するようにしてもよい。また、切り出し用シンボル部における方向指示パターンの形状と固有色についても、任意に設定できる。さらに、データ記述部の各セルの色についても白と黒に限定されるものではなく、白と青や白と赤など、その他の色の組み合わせを使用できる。
その他、データ記述部を構成するセルの数やサイズ、二次元配列の構成、第1及び第2の位置検出用パターンのサイズや形状、データ記述部に対する配置位置、二次元コードの認識手順とその内容、スケール用スクウェア及びシンボルテンプレートの構成とその認識方法などについても、この発明の要旨を逸脱しない範囲で種々変形して実施できる。
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
この発明に係わる二次元コードの用途の一つである会議支援システムの一実施形態を示す概略構成図。 図1に示すシステムにおける会議情報の記録の様子を示す図。 図1に示すシステムで使用されるカードの構成を示す図。 この発明の一実施形態に係わる二次元コードの構成を示す図。 図4に示した二次元コードに設定されるチェックパターンの一例を示す図。 この発明に係わる二次元コード認識装置の一実施形態であるサーバ装置の構成を示す機能ブロック図。 図6に示したサーバ装置による二次元コード認識手順と内容を示すフローチャート。 図7に示したフローチャート中におけるデータ復号処理の手順と内容を示すフローチャート。 コード作成装置において作成されるスケール用スクウェアの一例を示す図。 カードの撮像画像データから検出されるスケール用スクウェアの一例を示す図。 コードデータの復号手順を説明するための図。
符号の説明
SV…サーバ装置、VI…ボード撮像装置、CA…カード撮像装置、通信ネットワーク…NW、PC1〜PCk…ユーザ端末、1…ボード、21〜2i…カード、21A…意見記入エリア、21B…2次元コード記入エリア、AS…二次元コード作成装置、DT…データ記述部、SS,SE…切り出し用シンボル部、SS…スケール用スクウェア、11…CPU、12…バス、13…プログラムメモリ、13a…探索画像入力制御プログラム、13b…スケール用スクウェア認識プログラム、13c…テンプレートサイズ制御プログラム、13d…切り出しシンボル探索プログラム、13e…データ記述範囲特定プログラム、13f…チェックビット解析プログラム、13g…コードデータ復号プログラム、14…データメモリ、14a…探索画像記憶エリア、14b…シンボルテンプレート情報記憶エリア、14c…コード属性データ記憶エリア、15…カメラ入力I/F、16…ビデオ入力I/F、17…作成装置入力I/F、18…出力I/F、19…ディスプレイ。

Claims (10)

  1. 複数のセルを二次元配列したコードデータ記述部と当該コードデータ記述部の位置を示す位置検出用パターン部とを備える二次元コードと、当該二次元コードのスケール基準を定義するスケール情報がそれぞれ表示された媒体を撮像して得られる媒体画像データに対し、画像処理を行って前記二次元コードを認識する二次元コード認識装置であって、
    前記媒体画像データ中から前記スケール情報を検出する手段と、
    前記検出されたスケール情報をもとに、前記二次元コードのスケール基準値を算出する手段と、
    前記算出されたスケール基準値をもとにサイズが調整されたテンプレート情報を生成する手段と、
    前記生成されたテンプレート情報をもとに、前記媒体画像データ中から前記位置検出用パターン部を検出する手段と、
    前記媒体画像データ中における前記位置検出用パターン部の検出位置をもとに、前記コードデータ記述部の存在範囲を推定する手段と、
    前記媒体画像データ中における前記推定された存在範囲から前記コードデータ記述部を検出する手段と、
    前記検出されたコードデータ記述部に記述されたコードデータを復号する手段と
    を具備することを特徴とする二次元コード認識装置。
  2. 前記位置検出用パターン部が、前記コードデータ記述部の存在方向を形状により表す方向指示パターンを有する場合に、
    前記コードデータ記述部の存在範囲を推定する手段は、前記位置検出用パターン部の検出位置及び前記方向指示パターンの形状をもとに、前記コードデータ記述部の存在範囲を推定することを特徴とする請求項1記載の二次元コード認識装置。
  3. 前記位置検出パターンが固有の色に設定されている場合に、
    前記位置検出用パターン部を検出する手段は、前記サイズが調整されたテンプレート情報と、前記固有の色とに基づいて、前記媒体画像データ中から前記位置検出用パターン部を検出することを特徴とする請求項1記載の二次元コード認識装置。
  4. 前記コードデータ記述部が、二次元コードの正当性を表すチェックパターンを含む場合に、
    前記コードデータを復号する手段は、
    前記検出されたコードデータ記述部に含まれるチェックパターンをもとに二次元コードの正当性を判定する手段と、
    前記正当性の判定の結果、二次元コードの正当性が確認された場合に、前記検出されたコードデータ記述部に記述されたコードデータを復号する手段と
    を備えることを特徴とする請求項1記載の二次元コード認識装置。
  5. 前記コードデータ記述部が、二次元配列された複数のセルを第1及び第2の色のいずれかに設定することによりコードデータを表現している場合に、
    前記コードデータを復号する手段は、前記検出されたコードデータ記述部の各セルの色を判定することによりコードデータを復号することを特徴とする請求項1記載の二次元コード認識装置。
  6. 複数のセルを二次元配列したコードデータ記述部と当該コードデータ記述部の位置を示す位置検出用パターン部とを備える二次元コードと、当該二次元コードのスケール基準を定義するスケール情報がそれぞれ表示された媒体を撮像して得られる媒体画像データに対し、プロセッサにより画像処理を行って前記二次元コードを認識する二次元コード認識装置で使用されるプログラムであって、
    前記媒体画像データ中から前記スケール情報を検出する処理と、
    前記検出されたスケール情報をもとに、前記二次元コードのスケール基準値を算出する処理と、
    前記位置検出用パターン部のテンプレート情報を取り込む処理と、
    前記算出されたスケール基準値をもとに、前記テンプレート情報のサイズを調整する処理と、
    前記サイズが調整されたテンプレート情報をもとに、前記媒体画像データ中から前記位置検出用パターン部を検出する処理と、
    前記媒体画像データ中における前記位置検出用パターン部の検出位置をもとに、前記コードデータ記述部の存在範囲を推定する処理と、
    前記媒体画像データ中における前記推定された存在範囲から前記コードデータ記述部を検出する処理と、
    前記検出されたコードデータ記述部に記述されたコードデータを復号する処理と
    を、前記プロセッサに実行させることを特徴とするプログラム。
  7. 前記位置検出用パターン部が、前記コードデータ記述部の存在方向を形状により表す方向指示パターンを有する場合に、
    前記コードデータ記述部の存在範囲を推定する処理は、前記位置検出用パターン部の検出位置及び前記方向指示パターンの形状をもとに、前記コードデータ記述部の存在範囲を推定することを特徴とする請求項6記載のプログラム。
  8. 前記位置検出パターンが固有の色に設定されている場合に、
    前記位置検出用パターン部を検出する処理は、前記サイズが調整されたテンプレート情報と、前記固有の色とに基づいて、前記媒体画像データ中から前記位置検出用パターン部を検出することを特徴とする請求項6記載のプログラム。
  9. 前記コードデータ記述部が、二次元コードの正当性を表すチェックパターンを含む場合に、
    前記コードデータを復号する処理は、
    前記検出されたコードデータ記述部に含まれるチェックパターンをもとに二次元コードの正当性を判定する処理と、
    前記正当性の判定の結果、二次元コードの正当性が確認された場合に、前記検出されたコードデータ記述部に記述されたコードデータを復号する処理と
    を、前記プロセッサに実行させることを特徴とする請求項1記載のプログラム。
  10. 前記コードデータ記述部が、二次元配列された複数のセルを第1及び第2の色のいずれかに設定することによりコードデータを表現している場合に、
    前記コードデータを復号する処理は、前記検出されたコードデータ記述部の各セルの色を判定することによりコードデータを復号することを特徴とする請求項1記載のプログラム。
JP2005051784A 2005-02-25 2005-02-25 二次元コード認識装置とそのプログラム Expired - Fee Related JP4247190B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005051784A JP4247190B2 (ja) 2005-02-25 2005-02-25 二次元コード認識装置とそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005051784A JP4247190B2 (ja) 2005-02-25 2005-02-25 二次元コード認識装置とそのプログラム

Publications (2)

Publication Number Publication Date
JP2006236135A true JP2006236135A (ja) 2006-09-07
JP4247190B2 JP4247190B2 (ja) 2009-04-02

Family

ID=37043693

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005051784A Expired - Fee Related JP4247190B2 (ja) 2005-02-25 2005-02-25 二次元コード認識装置とそのプログラム

Country Status (1)

Country Link
JP (1) JP4247190B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4724800B1 (ja) * 2010-07-30 2011-07-13 株式会社シフト 物品検出装置およびプログラム
WO2012014265A1 (ja) * 2010-07-30 2012-02-02 株式会社シフト 二次元コードリーダおよびプログラム
JP2013242713A (ja) * 2012-05-21 2013-12-05 Elecom Co Ltd 撮像対象用具を撮像した画像データを保存するための画像処理プログラム、装置および方法
WO2024045589A1 (zh) * 2022-08-30 2024-03-07 江苏时代新能源科技有限公司 刻码质量检测方法、装置、计算机设备和存储介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4724800B1 (ja) * 2010-07-30 2011-07-13 株式会社シフト 物品検出装置およびプログラム
WO2012014265A1 (ja) * 2010-07-30 2012-02-02 株式会社シフト 二次元コードリーダおよびプログラム
WO2012014263A1 (ja) * 2010-07-30 2012-02-02 株式会社シフト 物品検出装置およびプログラム
JP2012033033A (ja) * 2010-07-30 2012-02-16 Shift:Kk 物品検出装置およびプログラム
US8584950B2 (en) 2010-07-30 2013-11-19 Shift Co., Ltd. Two-dimensional code reader and program
JP2013242713A (ja) * 2012-05-21 2013-12-05 Elecom Co Ltd 撮像対象用具を撮像した画像データを保存するための画像処理プログラム、装置および方法
WO2024045589A1 (zh) * 2022-08-30 2024-03-07 江苏时代新能源科技有限公司 刻码质量检测方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
JP4247190B2 (ja) 2009-04-02

Similar Documents

Publication Publication Date Title
CN108073913B (zh) 笔迹数据化的数据采集方法
TWI321294B (en) Method and device for determining at least one recognition candidate for a handwritten pattern
RU2360303C2 (ru) Анализ изображения позиционно кодированного документа и нанесение метки
US8424751B2 (en) Embedded media barcode links and systems and methods for generating and using them
US11189022B2 (en) Automatic detection, counting, and measurement of logs using a handheld device
JP6323437B2 (ja) 10指指紋カード入力装置、10指指紋カード入力方法、及び記憶媒体
JP4753842B2 (ja) アイデア抽出支援システム及び方法
CN109886223B (zh) 人脸识别方法、底库录入方法、装置及电子设备
TW201317904A (zh) 標籤檢測系統、裝置及其檢測標籤的方法
CN115620014B (zh) 一种基于深度学习的管道仪表流程图信息抽取方法及设备
CN114005126A (zh) 表格重构方法、装置、计算机设备及可读存储介质
JP4247190B2 (ja) 二次元コード認識装置とそのプログラム
CN109086336A (zh) 试卷数据存储方法、装置及电子设备
KR102440198B1 (ko) 시각 검색 방법, 장치, 컴퓨터 기기 및 저장 매체 (video search method and apparatus, computer device, and storage medium)
JP2007058304A (ja) 文字認識装置及び文字認識方法
CN109858363B (zh) 一种狗鼻纹特征点的检测方法、装置、***及存储介质
JP2011070477A (ja) 二次元コード読取方法及び該二次元コード読取方法で読み取るための二次元コード並びに該二次元コード読取方法を記録した記録媒体
CN116563876A (zh) 一种***识别方法
JP7505635B2 (ja) 連続する動的スキャンのセグメンテーション
CN108596127A (zh) 一种指纹识别方法、身份验证方法及装置和身份核验机
JP2014078168A (ja) 文字認識装置及びプログラム
JP4206078B2 (ja) 二次元コード作成装置とそのプログラム
JP5901680B2 (ja) 携帯端末装置および表示装置
TW202207122A (zh) 電子***證明聯辨識之方法及其***辨識系統
WO2023073795A1 (ja) クラス境界検出装置、制御方法、及び非一時的なコンピュータ可読媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081002

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081014

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081121

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: 20090106

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090109

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120116

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130116

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees