(57)【特許請求の範囲】
【請求項１】
行の位置を示す任意数のラインマークが印刷されると共に、複数のセルがマトリクス状に配置された二次元コードが少なくとも１つ以上前記ラインマークに対応させて印刷または貼付された帳票のレイアウトを示すフォーマット情報として、前記帳票の辺に対する前記ラインマークの位置、及び前記ラインマークに対して前記二次元コードが存在するエリアの位置を登録したフォーマット情報登録手段と、
前記ラインマークが印刷されると共に前記二次元コードが印刷または貼付された前記帳票のイメージを入力し、前記二次元コードが存在するエリアのイメージが前記二次元コードの認識が可能な分解能を持つように前記分解能を調整して、前記帳票のイメージを所定の大きさの画像に取込む画像入力手段と、
前記画像に取込まれた帳票のイメージから、前記分解能が変化する分解能変化点を検出してこの分解能変化点を用いて前記フォーマット情報を補正し、前記補正されたフォーマット情報を用いて前記ラインマークの位置を検出する帳票・ラインマーク検出手段と、
前記検出されたラインマークの位置に基づき、前記補正されたフォーマット情報を用いて前記二次元コードが存在するエリアのイメージを検出する二次元コードエリア検出手段と、
前記検出されたエリアのイメージを解析して前記二次元コードが示す情報を認識する二次元コード認識手段と、
を備えたことを特徴とする画像読取装置。
【請求項２】
請求項１記載の画像読取装置において、
前記画像入力手段によって前記帳票の最初の前記イメージが取込まれた前記画像から、前記補正されたフォーマット情報を用いて前記エリアのイメージを検出し、前記検出されたエリアを解析して前記二次元コードが示す情報を認識する第１の二次元コード認識処理を行い、
前記第１の認識処理で前記二次元コードが示す情報が認識できない場合には、前記画像入力手段によって前記帳票の上下を反転させた２度目のイメージを前記画像に取込み、前記上下逆転されたイメージを含む画像から、前記補正されたフォーマット情報を用いて前記エリアのイメージを検出し、前記検出されたエリアのイメージを解析して前記二次元コードが示す情報を認識する第２の二次元コード認識処理を行う構成にしたことを特徴とする画像読取装置。
【請求項３】
請求項２記載の画像読取装置において、
前記第１の認識処理で前記二次元コードが示す情報が認識できない場合であって、前記画像入力手段によって前記帳票の上下を反転させた２度目のイメージを前記画像に取込むときには、前記２度目のイメージが前記最初のイメージにおける分解能とは異なる分解能を持つように調整する構成にしたことを特徴とする画像読取装置。
【請求項４】
請求項２または３記載の画像読取装置において、
前記第２の二次元コード認識処理では、前記二次元コードを構成する複数のセルから得られたデータ列を前記上下が逆転していることを考慮して並べ変え、前記並べ変えたデータ列に基づき前記二次元コードが示す情報を認識する構成にしたことを特徴とする画像読取装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、画像読取装置に関するものである。
【０００２】
【従来の技術】
図２は、従来のマークシートを示す図である。
試験答案用紙やくじの投票券として用いられるマークシート１には、行を示すラインマーク１ａが一辺に印刷されると共に、該ラインマーク１ａの横には、複数のマーク枠１ｂが印刷されている。マーク枠１ｂを選択的に筆記具で塗りつぶすことにより、情報をマークシート１に載せるようになっている。
【０００３】
図３は、図２のマークシートの読取りを行う従来のマークシート読取システムを示す構成図である。
マークリーダ２は、マークシート１上の情報を読取る画像読取装置として普及している。一般的には、このマークリーダ２と上位装置のコンピュータ３とを接続してマークシート読取システムを構成している。マークシート読取システムの例としては、解答用紙を読取って採点を行う採点システムや、くじ等の予想をマークした申請書をマークリーダ２で読取り、くじ投票券を発券する発券システムなどがある。例えば、採点システムでは、マークリーダ２の読取り結果をコンピュータ３で処理し、正解との突き合わせて採点を行う。発券システムでは、マークリーダ２の読取り結果をコンピュータ３で処理し、該コンピュータ３に接続されたプリンタからくじ投票券の発券を行う。
コンピュータ３は、図示しないキーボード等の入力手段と、ディスプレイ或いはプリンタ等の表示手段とを備えている。さらに、コンピュータ３には、システムの目的に応じた機器を接続したり、ＬＡＮ（ローカルエリアネットワーク）等の通信網にも接続可能になっている。これに対し、マークリーダ２は、読取るべきマークを認識して認識結果をコンピュータ３へ与える構成になっている。
【０００４】
図４は、図３中のマークリーダ２を示す構成図である。
このマークリーダ２には、当該マークリーダ２全体を制御する機能とコンピュータ３に通信する機能とを持つを行うマークリーダ制御部２ａと、該マークリーダ制御部２ａにバスＢで接続されたメカ制御部２ｂと、該メカ制御部２ｂによって制御される搬送系２ｃと、マークシート１に光を照射する光源２ｄと、該マークシート１からの反射光を集光するレンズ２ｅと、光学フィルタ２ｆとを備えている。光学フィルタ２ｆの出力側にイメージセンサ２ｇが接続され、該イメージセンサ２ｇの出力側に、アナログ／デジタル変換器（以下、Ａ／Ｄ変換器という）２ｈが接続されている。Ａ／Ｄ変換器２ｈの出力側にはイメージメモリ２ｉが接続され、該イメージメモリ２ｉの出力側がバスＢに接続されている。
バスＢには、さらに、フォーマットデータメモリ２ｊと、帳票検出部２ｋと、ラインマーク検出部２ｍと、マークエリア検出部２ｎと、マーク認識部２ｐとが接続されている。
【０００５】
搬送系２ｃは、ローラ、ベルト、モータ及び駆動回路等を持ち、マークシート１を所定位置に搬送するものである。光学フィルタ２ｆは、所定周波数帯の色をドロップアウトする機能を有し、ドロップアウト色のマーク枠１ｂは撮像させないようにしている。イメージセンサ２ｇは、マークシート１を撮像し、光電変換により、アナログ信号を出力するものである。Ａ／Ｄ変換器２ｈは、イメージセンサ２ｇが出力するアナログ信号を量子化してデジタルのイメージデータを生成するものである。イメージメモリは２ｉは、イメージデータを取込んで蓄積するものであり、格納領域で設定される所定の大きさの画像にマークシート１のイメージを取込み格納することになる。
【０００６】
フォーマットデータメモリ２ｊは、マークシート１内の読取るべきマークごとの上端、下端、左端、右端の位置をマークシート１上の座標で直接或いは間接的に示したフォーマット情報を予め登録したものである。帳票検出部２ｋ及びラインマーク検出部２ｍは、イメージメモリ２ｉの格納する画像から、マークシート１の行ごとに印刷されたラインマーク１ａの位置を検出するものであり、マークシート１の搬送によって生じる行ずれを補正するように機能する。マークエリア検出部２ｎは、イメージメモリ２ｉの格納する画像から、各マーク枠１ｂに該当するマークエリアを求めるものである。マーク認識部２ｐは、各マークエリア内のマークの有無を認識し、その結果をマークリーダ制御部２ａに出力するものである。
【０００７】
図５は、図４のマークリーダで行う従来の画像読取り方法を示すフローチャートである。図６は、フォーマット情報の定義例を示す図である。図７は、イメージ取込み例を示す図である。図８（ａ）〜（ｆ）は、ヒストグラムを用いた位置検出の概要を示す図である。これらの図５〜図７及び図８（ａ）〜（ｆ）を参照しつつ、図３のマークシート読取システムの動作を説明する。
フォーマット情報は、図６のように、例えばラインマーク１ａを持つ辺を左にしたときを基準状態とし、その上辺から各ラインマーク１ａまでの距離、つまり行の位置（以下、単に行位置という）１ｃ、各行の複数のマーク枠１ｂが存在するフィールド１ｄの左辺からの距離１ｅ、フィールド１ｄの長さ１ｆ、フィールド１ｄの高さ１ｇ、フィールド１ｄ内でのマーク枠１ｂのピッチ１ｈ及びマーク枠数１ｉ等で定義され、フォーマットデータメモリ２ｊに予め格納されている。
【０００８】
対象のマークシート１を読取る場合に、図４のマークリーダ２は、図５のステップＳ１〜Ｓ８を行う。
まず、ステップＳ１の画像取込み処理において、メカ制御部２ｂが搬送系２ｃを制御し、図示しない帳票挿入口から挿入されたマークシート１を所定位置に搬送する。搬送されたマークシート１に光源２ｄから光が照射され、反射光がレンズ２ｅ及び光学フィルタ２ｆを透過し、マークシート１のイメージがイメージセンサ２ｇに結像される。イメージセンサ２ｇは光電変換を行い、マークシート１に対応するアナログ信号を出力する。Ａ／Ｄ変換器２ｈは、与えられたアナログ信号をデジタル信号のイメージデータに変換し、イメージメモリ２ｉに書込む。この結果、図７のように、イメージメモリ２ｉの格納領域の画像１０にマークシート１に対応するイメージ１１が取込まれて格納される。
【０００９】
ステップＳ２の帳票辺検出処理において、帳票検出部２ｋが画像１０の上方におけるイメージ１１の左辺の座標１１ａ及び右辺の座標１１ｂと、イメージ１１の上辺の左側の座標１１ｃおよび右側の座標１１ｄをそれぞれ求める。具体的には、図８（ａ）のように、画像１０の上方左側に対して水平方向座標ごとに垂直方向の黒点数を集計してヒストグラムを求め、該ヒストグラムからイメージ１１の左辺の座標１１ａを求め、図８（ｂ）のように、画像１０の上方右側に対して水平方向座標ごとに垂直方向の黒点数を集計してヒストグラムを求め、該ヒストグラムからイメージ１１の右辺の座標１１ｂを求める。また、図８（ｃ）のように、画像１０の上方左側に対して垂直方向座標ごとに水平方向の黒点数を集計してヒストグラムを求め、該ヒストグラムからイメージ１１の上辺の左側の座標１１ｃを求め、図８（ｄ）のように、画像１０の上方右側に対して垂直方向座標ごとに水平方向の黒点数を集計してヒストグラムを求め、該ヒストグラムからイメージ１１の上辺の右側の座標１１ｄを求める。
【００１０】
ステップＳ３の帳票角検出処理において、帳票検出部２ｋは、ステップ２で求めた左辺の座標１１ａ、右辺の座標１１ｂ、上辺の左側の座標１１ｃ及び上辺の右側の座標１１ｄから、イメージ１１の左上角１１ｅ及び右上角１１ｆの座標を求める。
ステップＳ４の行辺検出処理において、帳票検出部２ｋは、フォーマットデータメモリ２ｊから読取り対象行の行位置１ｃのフォーマット情報を読出し、該行位置１ｃを参照し、図８（ｅ）のように、画像１０における該行位置１ｃに対応する領域近傍の黒点数のヒストグラムを水平方向に求め、該ヒストグラムの変化点から、その領域におけるイメージ１１の左辺の位置の座標１１ｇを求める。
ステップＳ５のラインマーク検出処理において、ラインマーク検出部２ｍは、左辺の位置の座標１１ｇを求めた領域に対し、図８（ｆ）のように黒点数のヒストグラムを垂直方向に求め、該ヒストグラムの変化点と変化点の中心を、領域１０におけるラインマーク１ａの位置の座標１１ｈとしてを求める。
【００１１】
ステップＳ６のマーク領域決定処理において、マークエリア検出部２ｎは、フォーマットデータメモリ２ｊに格納されたフィールド１ｄの左辺からの距離１ｅ、ピッチ１ｈ及びマーク数１ｉのフォーマット情報と、ステップＳ５で求めた領域１０のラインマーク１ａの位置の座標１１ｈと、座標１１ｇとから、画像１０におけるフィールド１ｄ内の複数のマークエリア１１ｉの座標をそれぞれ求める。
ステップＳ７のマーク認識処理において、マーク認識部２ｐは、各マークエリア１１ｉにおける黒点数を計数し、所定値以上であれば“マークあり”とし、それ以外であれば“マーク無し”として認識する。
【００１２】
ステップＳ７の次のステップＳ８において、マークリーダ制御部２ａは、全行のマークについて認識が終了したか否かを判定し、未処理のマークがあれば（未完）、処理を再びステップＳ４に戻して同様のステップＳ４〜Ｓ８を行わせる。すべてのマークに対して認識が行われている（完了）と判定した場合には、認識結果群をコンピュータ３へ送信する。
以上がマークシート１を読取るマークリーダ２の基本的動作である。
【００１３】
【発明が解決しようとする課題】
しかしながら、従来のマークリーダ２及びこれを用いたマーク読取りシステム等では、次のような課題があった。
マークシート１の大きさは、財布に入る程度の大きさ（紙幣サイズ）が一般的であり、１枚のマークシート１に載せる情報量が少なかった。そのため、大量の情報をコンピュータ３に与えるときには、複数枚のマークシート１が必要であった。
【００１４】
【課題を解決するための手段】
本発明のうちの請求項１に係る発明の画像読取装置は、フォーマット情報登録手段と、画像入力手段と、帳票・ラインマーク検出手段と、二次元コードエリア検出手段と、二次元コード認識手段とを備えている。
前記フォーマット情報登録手段は、行の位置を示す任意数のラインマークが印刷されると共に、複数のセルがマトリクス状に配置された二次元コードが少なくとも１つ以上前記ラインマークに対応させて印刷または貼付された帳票のレイアウトを示すフォーマット情報として、前記帳票の辺に対する前記ラインマークの位置、及び前記ラインマークに対して前記二次元コードが存在するエリアの位置を登録したものである。前記画像入力手段は、前記ラインマークが印刷されると共に前記二次元コードが印刷または貼付された前記帳票のイメージを入力し、前記二次元コードが存在するエリアのイメージが前記二次元コードの認識が可能な分解能を持つように前記分解能を調整して、前記帳票のイメージを所定の大きさの画像に取込むものである。
前記帳票・ラインマーク検出手段は、前記画像に取込まれた帳票のイメージから、前記分解能が変化する分解能変化点を検出してこの分解能変化点を用いて前記フォーマット情報を補正し、前記補正されたフォーマット情報を用いて前記ラインマークの位置を検出するものである。前記二次元コードエリア検出手段は、前記検出されたラインマークの位置に基づき、前記補正されたフォーマット情報を用いて前記二次元コードが存在するエリアのイメージを検出するものである。さらに、前記二次元コード認識手段は、前記検出されたエリアのイメージを解析して前記二次元コードが示す情報を認識するものである。
【００１５】
請求項２に係る発明の画像読取装置は、請求項１記載の画像読取装置において、前記画像入力手段によって前記帳票の最初の前記イメージが取込まれた前記画像から、前記補正されたフォーマット情報を用いて前記エリアのイメージを検出し、前記検出されたエリアを解析して前記二次元コードが示す情報を認識する第１の二次元コード認識処理を行い、前記第１の認識処理で前記二次元コードが示す情報が認識できない場合には、前記画像入力手段によって前記帳票の上下を反転させた２度目のイメージを前記画像に取込み、前記上下逆転されたイメージを含む画像から、前記補正されたフォーマット情報を用いて前記エリアのイメージを検出し、前記検出されたエリアのイメージを解析して前記二次元コードが示す情報を認識する第２の二次元コード認識処理を行う構成にしている。
【００１６】
請求項３に係る発明の画像読取装置は、請求項２記載の画像読取装置において、前記第１の認識処理で前記二次元コードが示す情報が認識できない場合であって、前記画像入力手段によって前記帳票の上下を反転させた２度目のイメージを前記画像に取込むときには、前記２度目のイメージが前記最初のイメージにおける分解能とは異なる分解能を持つように調整する構成にしている。
【００１７】
請求項４に係る発明の画像読取装置は、請求項２または３記載の画像読取装置において、前記第２の二次元コード認識処理では、前記二次元コードを構成する複数のセルから得られたデータ列を前記上下が逆転していることを考慮して並べ変え、前記並べ変えたデータ列に基づき前記二次元コードが示す情報を認識する構成にしている。
【００２０】
【発明の実施の形態】
第１の実施形態
図９は、本発明の第１の実施形態のマーク読取システムの構成図であり、図１は、図９における本発明の第１の実施形態を示すマークリーダ３０の構成図である。
このマーク読取システムは、後述する図１０に示すような二次元コードが添付されたマークシート２０を読取り対象の帳票とするシステムであり、従来を示す図３と同様のコンピュータ３と、該コンピュータ３に接続された従来とは異なるマークリーダ３０とで構成されている。二次元コードの例としては、日本電子工業振興協会によってＪＥＩＤＡ−５５等で規格化され、コードシンボルをマトリクス形式に二次元展開したものがある。
【００２１】
コンピュータ３は、図示しないキーボード等の入力手段とディスプレイ或いはプリンタ等の表示手段とを備えている。また、システムの目的に応じた機器を接続したり、ＬＡＮ等の通信網にも接続可能になっている。これに対し、マークリーダ３０は、画像読取装置を構成し、読取るべきマークを認識すると共に、読取るべき二次元コードを認識し、各認識結果をコンピュータ３へ与える機能を持っている。
マークリーダ３０には、当該マークリーダ３０全体を制御すると共にコンピュータ３との通信を行うマークリーダ制御部３１と、該マークリーダ制御３１にバスＢで接続されたメカ制御部３２と、該メカ制御部３２によって制御される搬送系３３と、マークシート２０に十分な光を照射する光源３４と、該マークシート２０からの反射光を集光するレンズ３５と、光学フィルタ３６とを備えている。光学フィルタ３６の出力側にイメージセンサ３７が接続され、該イメージセンサ３７の出力側に、Ａ／Ｄ変換器３８が接続されている。Ａ／Ｄ変換器３８の出力側にイメージメモリ３９が接続されている。イメージセンサ３７、Ａ／Ｄ変換器３８、及びイメージメモリ３９により、画像入力手段が構成されている。イメージメモリ３９の出力側が、バスＢに接続されている。
【００２２】
バスＢには、さらに、従来とは格納内容が異なるフォーマット情報登録手段であるフォーマットデータメモリ４０と、帳票・ラインマーク検出手段である帳票検出部４１及びラインマーク検出部４２と、マークエリア検出部４３と、マーク認識部４４と、二次元コードエリア検出である二次元コードエリア検出部４５と、二次元コード認識手段である二次元コード認識部４６とが接続されている。帳票検出部４１、ラインマーク検出部４２、マークエリア検出部４３及びマーク認識部４４は、従来の帳票検出部２ｋ、ラインマーク検出部２ｍ、マークエリア検出部２ｎ及びマーク認識部２ｇと同様のものであり、マークを読取るマーク読取り手段を構成している。二次元コードエリア検出部４５及び二次元コード認識部４６は、新たに設けられたものである。
【００２３】
図１０は、マークシート２０の一例を示す図であり、従来の図２中の要素と共通の要素には共通の符号が付されている。
このマークシート２０には、行を示す複数のラインマーク１ａが左辺に印刷され、その横に一列の複数マーク枠１ｂがそれぞれ印刷されている。ラインマーク１ａの下方にはさらに、従来のマークシート１に新たに追加されたラインマーク２１が印刷され、このラインマーク２１の横方向に二次元コード２２が例えば貼付されている。二次元コード２２は、マークでは入り切らない情報を示すものであり、プリンタ等で印刷され、切り取られてシート２０に貼付されたものである。
【００２４】
搬送系３３は、ローラ、ベルト、モータ及び駆動回路等を持ち、マークシート２０を所定位置に搬送するものである。光学フィルタ３６は、所定周波数帯の色をドロップアウトする機能を有し、ドロップアウト色のマーク枠１ｂは撮像させないようにしている。イメージセンサ３７は、マークシート２０を撮像し、光電変換により、アナログ信号を出力するものである。Ａ／Ｄ変換器３８は、イメージセンサ３７が出力するアナログ信号を量子化してデジタルのイメージデータを生成するものである。イメージメモリ３９は、イメージデータを蓄積してマークシート２０のイメージを格納領域全体で構成される画像に取込むものである。
フォーマットデータメモリ４０は、マークシート２０内の読取るべきマークごとの上端、下端、左端、右端の座標位置を直接或いは間接的に示したフォーマット情報と、読取るべき二次元コードの上端、下端、左端、右端の座標位置を直接或いは間接的に示したフォーマット情報との両方を予め格納するものである。また、フォーマットデータメモリ４０には、各ラインマーク１ａ，２１に対応する行に対してマーク認識を行うか、二次元コードの認識を行うかの情報もフォーマット情報として格納されている。
【００２５】
帳票検出部４１は、イメージメモリ３９の格納した画像から、マークシート２０の位置を検出するものであり、マークシート２０の搬送によって生じる行ずれや位置ずれを補正する機能を有している。ラインマーク検出部４２は、イメージメモリ３９の格納した画像から、ラインマーク１ａ，２１の位置を検出するものである。マークエリア検出部４３は、イメージメモリ３９の格納する画像から、各マーク枠１ｂに該当するマークエリアを求めるものである。マーク認識部４３は、マークエリア内のマークの有無を認識し、その結果をマークリーダ制御部３１に出力するものである。
二次元コード検出部４５は、イメージメモリ３９の格納する画像から、二次元コード２２の位置を求めるものであり、二次元コード認識部４６は、二次元コード２２の認識を行うものである。
【００２６】
図１１は、図１のマークリーダ３０が行う画像読取り方法を示すフローチャートである。図１２は、マークシート２０のフォーマット情報の定義例を示す図であり、従来の図６中の要素と共通の要素には共通の符号が付されている。図１３は、図１中のマークリーダ３０の画像取込み例を示す図であり、図７中の要素と共通の要素には共通の符号が付されている。これらの図１１〜図１３及び従来の図８（ａ）〜（ｆ）を参照しつつ、図１のマークシート読取りシステムの動作を説明する。
【００２７】
マークシート２０における各マーク枠１ｂに関するフォーマット情報は、図１２のように、例えばラインマーク１ａを持つ辺を左辺にしたときを基準状態とし、該上辺から各ラインマーク１ａまでの距離を表す行位置１ｃ、各行のマーク枠１ｂが存在するフィールド１ｄの最も左端をマークシート２０の左辺からの距離１ｅ、フィールド１ｄの長さ１ｆ、フィールド１ｄの高さ１ｇ、フィールド１ｄ内でのマークエリアのピッチ１ｈ及びマーク枠数等で定義されている。
二次元コードに関するフォーマット情報は、マークシート２０の上辺からラインマーク２１までの距離を示す行位置２３、二次元コード２２の存在する二次元コードエリア２４の左端を該マークシート２０の左辺からの距離で示すフィールド位置２５、二次元コードエリア２４の長さ２６、該エリア２４の高さ２７等で定義されてフォーマットデータメモリ４０に格納されている。
【００２８】
対象のマークシート２０を読取る場合に、図１のマークリーダ３０は、図１１の処理ステップＳ１１〜Ｓ２１を行う。
まず、ステップＳ１１の画像取込み処理において、メカ制御部３２が搬送系３３を制御し、図示しない帳票挿入口から挿入されたマークシート２０を所定位置に搬送する。搬送されたマークシート２０に光源３４から光が照射され、反射光がレンズ３５及び光学フィルタ３６を透過し、マークシート２０のイメージがイメージセンサ３７に結像される。イメージセンサ３７は光電変換を行い、マークシート２０に対応するアナログ信号を出力する。Ａ／Ｄ変換器３８は、与えられたアナログ信号をデジタル信号のイメージデータに変換し、イメージメモリ３９に書込む。この結果、図１３のように、イメージメモリ３９の格納領域の画像３９ａにマークシート２０に対応するイメージ２０ａが取込まれて格納される。
【００２９】
ステップＳ１２の帳票辺検出処理において、帳票検出部４１が画像３９ａの上方におけるイメージ２０ａの左辺の座標１１ａ及び右辺の座標１１ｂと、イメージ２０ａの上辺の左側の座標１１ｃ及び右側の座標１１ｄをそれぞれ求める。具体的には、図８（ａ）と同様に、画像３９ａの上方左側に対して水平方向座標ごとに垂直方向の黒点数を集計してヒストグラムを求め、該ヒストグラムからイメージ２０ａの左辺の座標１１ａを求め、図８（ｂ）と同様にして、画像３９ａの上方右側に対して水平方向座標ごとに垂直方向の黒点数を集計してヒストグラムを求め、該ヒストグラムからイメージ２０ａの右辺の座標１１ｂを求める。また、図８（ｃ）と同様に、画像３９ａの上方左側に対して垂直方向座標ごとに水平方向の黒点数を集計してヒストグラムを求め、該ヒストグラムからイメージ２０ａの上辺の左側の座標１１ｃを求め、図８（ｄ）のように、画像３９ａの上方右側に対して垂直方向座標ごとに水平方向の黒点数を集計してヒストグラムを求め、該ヒストグラムからイメージ２０ａの上辺の右側の座標１１ｄを求める。
【００３０】
ステップＳ１３の帳票角検出処理において、帳票検出部４１は、ステップ１２で求めた左辺の座標１１ａ、右辺の座標１１ｂ、上辺の左側の座標１１ｃ及び上辺の右側の座標１１ｄから、イメージ２０ａの左上角１１ｅ及び右上角１１ｆの座標を求める。
ステップＳ１４の行辺検出処理において、帳票検出部４１は、フォーマットデータメモリ４０からフォーマット情報である読取り対象行の行位置１ｃ及び２３を読出し、該行位置１ｃ，２３を参照し、図８（ｅ）と同様に、画像３９ａの該行位置１ｃ，２３に対応する領域近傍の黒点数のヒストグラムを水平方向に求め、該ヒストグラムの変化点から、その領域におけるイメージ２０ａの左辺の位置の座標１１ｇ及び２１ｇを求める。
ステップＳ１５のラインマーク検出処理において、ラインマーク検出部４２は、左辺の位置の座標１１ｇ，２１ｇを求めた領域に対し、図８（ｆ）のように黒点数のヒストグラムを垂直方向に求め、該ヒストグラムの変化点と変化点の中心を、領域３９ａにおけるラインマーク１ａ，２１の位置の座標１１ｈ，２１ｈとして求める。
【００３１】
次に、ステップＳ１６のマーク／二次元コード判定処理では、読取り対象の行でマークを認識するか、二次元コードを認識するかを判定する。予めラインマーク１ａ、２１ごとに、その行に対してマークを認識するか二次元コードを認識するかがフォーマットデータメモリ４０に格納してあり、この情報に基づきマークを認識するか、二次元コードを認識するかを判定し、マークを認識するときにはステップＳ１７及びその次のステップＳ１８に処理を進め、二次元コードを認識するときにはステップＳ１９及びその次のステップＳ２０に処理を進める。
ステップＳ１７のマーク領域決定処理において、マークエリア検出部４３は、フォーマットデータメモリ４０に格納されたフォーマット情報のフィールド位置１ｅ、ピッチ１ｈ及びマーク数と、ステップＳ１５で求めた画像３９ａのラインマークの位置の座標１１ｈと左辺の座標１１ｇとから、フィールド１ｄ内の複数のマークエリアの座標を求める。ステップＳ１８のマーク認識処理において、マーク認識部４４は、各マークエリアにおける黒点数を計数し、所定値以上であれば“マークあり”と認識し、それ以外であれば“マーク無し”として認識する。
【００３２】
一方、ステップＳ１９の二次元コード領域決定処理では、二次元コードエリア検出部４５は、フォーマットデータメモリ４０に格納されたフォーマット情報のフィールド位置２５、二次元コードエリア２４の長さ２６及び二次元コードエリア２４の高さ２７と、ステップＳ１５で求めた座標２１ｇ，２１ｈとから、二次元コード２２の位置座標を求める。ステップＳ２０の二次元コード認識処理では、二次元コード認識部４６が以下のようにして、イメージ２０ａの二次元コードエリア２４を解析して二次元コード２２の情報を認識する。
【００３３】
図１４は、二次元コード２２の概略を示す図である。
二次元コード２２では、小さな４角形のセル２２ａがマトリクス状に配置されている。各セル２２ａは白または黒で２値を表現している。セル２２ａの大きさは、均一であり、二次元コード２２のコーナー２２ｂの座標から各セル２２ａの位置座標を計算で求めることができる。二次元コード認識部４６は、各セル２２ａの座標における白または黒を認識し、“１”または“０”のビットにそれぞれ変換し、これらを所定のルールで連結してビットストリームを形成する。このビットストリームをデコードし、文字列情報に変換して認識結果とする。
ステップＳ１８及びステップＳ２０の後のステップＳ２１において、全行の処理が終了したかが、マークリーダ制御部３１により判定され、未処理のマークがあれば（未完）、処理を再びステップＳ１４に戻す。すべてのマークに対して認識が行われている（完了）と判定した場合には、認識結果群をコンピュータ３へ送信する。
【００３４】
以上のように、この第１の実施形態は、二次元コードエリア検出部４５、二次元コード認識部４６をマークリーダ３０に設けたので、次のような利点が得られる。
（１）  マークと二次元コード２２の両方を読取って認識できるので、マークシート２０に二次元コード２２を印刷或いは貼り付けるだけて情報量を増すことが可能になる。
（２）  二次元コード２２は、一般に普及しているパーソナルコンピュータ及びプリンタとで作成可能であり、マークシート２０に直接印字してもよく、また印刷した二次元コード２２を用紙から切り取って貼付してもよい。従来であれば、大量のデータをマークシート２０に載せたい場合には、複数枚のマークシート２０を用意する必要があると共に、それにマーキングする作業が必要であったが、パーソナルコンピュータ及びプリンタを用いる事で、この複数枚のマークシート２０を用意したり、それらにマーキングをする必要がなくなる。特に、メールアドレス、個人識別番号等の使用頻度の高い情報を予め二次元コード化しておくと、大変に有効になる。
【００３５】
第２の実施形態
図１５は、本発明の第２の実施形態のマーク読取システムを示す構成図である。図１６は、図１５における本発明の第２の実施形態を示すマークリーダ６０の構成図であり、第１の実施形態を示す図１中の要素と共通する要素には共通の符号が付されている。
このマーク読取システムは、後述する図１７に示すような二次元コードがラインマークで示された領域に貼付されたマークシート５０を読取り対象の帳票とするシステムであり、第１の実施形態を示す図９と同様のコンピュータ３と、該コンピュータ３に接続された第１の実施形態とは異なるマークリーダ６０とで構成されている。
【００３６】
マークリーダ６０は、読取るべきマークを認識すると共に、読取るべき二次元コードを認識し、各認識結果をコンピュータ３へ与える機能を持ち、第１の実施形態と同様のマークリーダ制御部３１、該マークリーダ制御３１にバスＢで接続されたメカ制御部３２、該メカ制御部３２によって制御される搬送系３３、マークシート５０に十分な光を照射する光源３４と、該マークシート５０からの反射光を集光するレンズ３５と、及び光学フィルタ３６とを備えている。光学フィルタ３６の出力側にイメージセンサ３７が接続され、該イメージセンサ３７の出力側に、Ａ／Ｄ変換器３８が接続されている。Ａ／Ｄ変換器３８の出力側にイメージメモリ３９が接続されている。イメージメモリ３９の出力側が、バスＢに接続されている。
バスＢには、さらに、第１の実施形態とは格納内容が異なるフォーマットデータメモリ６１と、第１の実施形態と同様の帳票検出部４１、ラインマーク検出部４２、マークエリア検出部４３、マーク認識部４４及び二次元コード認識部４６と、第１の実施形態とは異なる二次元コードエリア検出部６２と、新たに設けられた二次元コード抽出部６３とが、接続されている。
【００３７】
図１７は、マークシート５０の一例を示す図であり、第１の実施形態の図１０中の要素と共通の要素には共通の符号が付されている。
このマークシート５０には、行を示す複数のラインマーク１ａが左辺に印刷され、その横に一列の複数マーク枠１ｂがそれぞれ印刷されている。さらにこのマークシート５０には、１つの二次元コード５１が貼付されているが、この二次元コード５１の貼付されるべき領域を行の範囲で示すラインマーク５２，５３が該マークシート５０の端部に印刷されている。
【００３８】
図１８は、マークシート５０の定義例を示す図である。
フォーマットデータメモリ６１には、マーク枠１ｂに関するフォーマット情報が第１の実施形態と同様に格納されているが、二次元コード５１に関するフォーマット情報は、第１の実施形態とは異なった形で定義されて格納されている。つまり、二次元コード５１に関しては、図１８のように、二次元コード５１が含まれる二次元コードエリア５４の開始行を示すラインマーク５２をマークシート５０の左上角からの距離で示す行位置５５と、エリア５４の終了行を示すラインマーク５３のマークシート５０の上辺からの距離で示す行位置５６と、エリア５４の左端をマークシート５０の左辺からの距離で示すフィールド位置５７と、該エリア５４の長さ５８とで、定義されている。
二次元コードエリア検出部６２は、フォーマット情報に基づき、イメージメモリ３９の画像３９ａにおける二次元コードエリア５４の位置を検出する機能を持っている。二次元コード抽出部６３は、二次元コードエリア５４から二次元コード５１の位置を求める機能を持ち、二次元コード認識部４６に伝える構成になっている。
【００３９】
図１９は、図１６のマークリーダ６０が行う画像読取り方法を示すフローチャートである。図２０は、図１６のマークリーダ６０の画像取込み例を示す図であり、第１の実施形態の図１３中の要素と共通の要素には共通の符号が付されている。これらの図１９及び図２０を参照しつつ、図１５のマーク読取りシステムの動作を説明する。
このマークリーダ６０は、図１９の処理ステップＳ３１〜Ｓ４３を行い、マークシート５０のマークの認識と二次元コードの認識を行う。
ステップＳ３１の画像取込み処理は、第１の実施形態と同様の処理であり、メカ制御部３２が搬送系３３を制御し、マークシート５０を所定位置に搬送する。搬送されたマークシート５０に光源３４から光が照射され、マークシート５０のイメージがイメージセンサ３７に結像される。イメージセンサ３７はマークシート５０に対応するアナログ信号を出力し、これをＡ／Ｄ変換器３８がデジタル信号のイメージデータに変換してイメージメモリ３９に書込む。この結果、図２０のように、イメージメモリ３９の格納領域の画像３９ａにマークシート５０に対応するイメージ５０ａが取込まれる。
【００４０】
ステップＳ３２の帳票辺検出処理及びステップＳ３３の帳票角検出処理は、第１の実施形態と同様の処理であり、これらのステップＳ３２，Ｓ３３の処理の結果、イメージ５０ａの左上角及び右上角の画像３９ａにおける座標１１ｅ，１１ｆが求められる。
ステップＳ３４の行辺検出処理において、帳票検出部４１は、フォーマットデータメモリ６１にフォーマット情報として定義された読取り対象行の行位置１ｃ，５５または５６を読出す。
【００４１】
マーク読取りを行うときには行位置１ｃを読出し、図８（ｅ）と同様に、画像３９ａの該行位置１ｃに対応する領域近傍に対し、黒点数のヒストグラムを水平方向に求め、該ヒストグラムの変化点から、その領域におけるイメージ５０ａの左辺の位置の座標１１ｇを求める。二次元コード５１の認識を行うときには、行位置５５，５６を参照し、図８（ｅ）と同様に、画像３９ａの該行位置５５，５６に対応する領域近傍に対し、黒点数のヒストグラムを水平方向に求め、該ヒストグラムの変化点から、ラインマーク５２，５３の存在する部分のイメージ５０ａの左辺の位置座標５５ａ，５６ａを求める。
ステップＳ３５のラインマーク検出処理において、ラインマーク検出部４２は、左辺の位置座標１１ｇ，５５ａ，５６ａを求めた領域に対し、図８（ｆ）のように黒点数のヒストグラムを垂直方向に求め、該ヒストグラムの変化点と変化点の中心を、領域におけるラインマーク１ａ，５２，５３の位置座標１１ｈ，５５ｈ，５６ｈとして求める。
【００４２】
次に、ステップＳ３６のマーク／二次元コード判定処理では、読取り対象の行でマークを認識するか、二次元コードを認識するかを判定する。予めラインマーク１ａ、５２，５３ごとに、その行に対してマークを認識するか二次元コードを認識するかがフォーマットデータメモリ６１に格納してあり、この情報に基づきマークを認識するか、二次元コードを認識するかを判定し、マークの認識をするときにはステップＳ３７及びその次のステップＳ３８に処理を進め、二次元コードを認識するときにはステップＳ３９〜Ｓ４２に処理を進める。
ステップＳ３７のマーク領域決定処理とそれに続くステップＳ３８のマーク認識処理は、第１の実施形態と同様であり、これらのステップＳ３７，Ｓ３８の処理により、マーク枠１ｂごとに“マークあり”或いは“マーク無し”が認識結果として得られる。
一方、ステップＳ３９の二次元コード領域決定処理では、二次元コードエリア検出部６２が、マークシート５０の二次元コードエリア５４の画像３９ａにおける座標を求める。ここで、その詳細を次の図２１を用いて説明する。
【００４３】
図２１は、図１９中のステップＳ３９の詳細を示すフローチャートである。
二次元コードエリア検出部６２は、図２１のステップＳ３９−１において、フォーマット情報を参照し、直前に検出したラインマークが、以下の３つの条件のいずれに該当するかを判断する。
条件１；二次元コードエリア５４の上端を示すラインマーク５２
条件２；二次元コードエリア５４の下端を示すラインマーク５３
条件３；条件１、条件２のいずれでもない。
【００４４】
条件１に該当するときには、二次元コードエリア検出部６２はステップＳ３９−２に処理を進め、フォーマットデータメモリ６１に格納されたフォーマット情報のフィールド位置５７及びエリア５４の長さ５８と、左辺の位置座標５５ａ及びラインマークの位置座標５５ｈとから、二次元コードエリア５４の上端の位置を決定する。条件２に該当するときには、二次元コードエリア検出部６２はステップＳ３９−３に処理を進め、フォーマットデータメモリ６１に格納されたフォーマット情報のフィールド位置５７及びエリア５４の長さ５８と、左辺の位置座標５６ａ及びラインマークの位置座標５６ｈとから、二次元コードエリア５４の下端の位置を決定する。条件３に該当するときには、なにもせずに処理を終了する。ステップＳ３９の二次元コード領域決定処理の後に、処理がステップＳ４０に進む。
ステップＳ４０の領域完結判定処理において、マークリーダ制御部３１は、ステップＳ３９の処理で矩形の二次元コードエリア５４の位置が確定したか否かを判定し、確定している場合（完結）には処理をステップＳ４１に進め、確定していない場合（未決）には処理をステップＳ４３に進める。
【００４５】
図２２は、ステップＳ４１の二次元コード抽出処理の概念を示す図である。
ステップＳ４１の二次元コード抽出処理において、二次元コード抽出部６３は図２２のように、画像３９ａ中の二次元コードエリア５４の投影を行い、二次元コード５１の位置を抽出する。
ステップＳ４２の二次元コード認識処理において、二次元コード認識部４６は、第１の実施形態と同様にして、二次元コード５１に対する認識を行い、認識結果をマークリーダ制御部３１に与える。
ステップＳ３８，Ｓ４２の処理が終了すると、処理はステップＳ４３に進む。
ステップＳ４３では、全行の処理が終了したかが、マークリーダ制御部３１によって判定され、未処理の行があれば（未完）、処理を再びステップＳ３４に戻す。すべての行に対して認識が行われている（完了）と判定した場合には、マークリーダ制御部３１が認識結果群をコンピュータ３へ送信する。
【００４６】
以上のように、この第２の実施形態では、二次元コードエリア検出部６２、二次元コード抽出部６３及び二次元コード認識部４６をマークリーダ６０に設けたので、第１の実施形態と同様の利点（１），（２）の他に次のような利点が得られる。
（３）  ２つのラインマーク５２，５３に挟まれたある程度広い二次元コードエリア５４のどこに二次元コード５１を配置しても読取りが可能であり、読取りの自由度が拡張する。さらに、使用者がラインマーク５２，５３を貼付の目安にすることもでき、マークシート５０の使用方法が楽になる。
（４）  二次元コード５１の位置を抽出し、二次元コード５１周辺の不要画像を除去し、二次元コード５１の部分だけにステップＳ４２の二次元コード認識処理を行うことができる。そのため、二次元コード認識部４６の処理可能な視野面積に限界がある場合でも対応が可能になる。例えば、二次元コード認識部４６をゲートアレイやＬＳＩで構成するときには、パッケージングの都合により、十分な視野面積が得られないことがあったが、これに対応できる。
【００４７】
第３の実施形態
図２３は、本発明の第３の実施形態を示すマーク読取システムの構成図である。図２４は、図２３における本発明の第３の実施形態を示すマークリーダ７０の構成図であり、第２の実施形態を示す図１６中の要素と共通の要素には共通の符号が付されている。
このマーク読取システムは、後述する図２６のような複数の二次元コードがラインマークで示された領域に貼付されたマークシート５０Ｂを読取り対象の帳票とするシステムであり、第２の実施形態を示す図１５と同様のコンピュータ３と、該コンピュータ３に接続された第２の実施形態とは異なるマークリーダ７０とで構成されている。
【００４８】
マークリーダ７０は、読取るべきマークを認識すると共に、読取るべき二次元コードを認識し、各認識結果をコンピュータ３へ与える機能を持ち、第１及び第２の実施形態と同様のマークリーダ制御部３１と、該マークリーダ制御３１にバスＢで接続されたメカ制御部３２と、該メカ制御部３２によって制御される搬送系３３と、マークシート５０Ｂに十分な光を照射する光源３４と、該マークシート５０Ｂからの反射光を集光するレンズ３５と、及び光学フィルタ３６とを備えている。光学フィルタ３６の出力側にイメージセンサ３７が接続され、該イメージセンサ３７の出力側に、Ａ／Ｄ変換器３８が接続されている。Ａ／Ｄ変換器３８の出力側にイメージメモリ３９が接続されている。イメージメモリ３９の出力側が、バスＢに接続されている。
バスＢには、さらに、第２の実施形態とは格納内容が異なるフォーマットデータメモリ７１と、第２の実施形態と同様の帳票検出部４１、ラインマーク検出部４２、マークエリア検出部４３、マーク認識部４４、二次元コードエリア検出部６２及び二次元コード認識部４６と、第２の実施形態とは異なる二次元コード抽出部７２とが、接続されている。
【００４９】
図２５は、マークシート５０Ｂの一例を示す図であり、第２の実施形態の図１７中の要素と共通の要素には共通の符号が付されている。
このマークシート５０Ｂは、行を示す複数のラインマーク１ａが左辺に印刷され、その横に一列の複数マーク枠１ｂがそれぞれ印刷されている。さらにこのマークシート５０Ｂは、第２の実施形態とは異なり、２つの二次元コード５１が貼付されているが、この二次元コード５１の貼付されるべき二次元コードエリアを行の範囲で示すラインマーク５２，５３が第２の実施形態と同様、該マークシート５０Ｂの端部に印刷されている。
【００５０】
図２６は、マークシート５０Ｂの定義例を示す図であり、図１８中の要素と共通の要素に共通の符号が付されている。
フォーマットデータメモリ７１には、マーク枠１ｂに関するフォーマット情報が第１の実施形態と同様に格納されているが、２個の二次元コード５１に関するフォーマット情報は、第１の実施形態とは異なった形で定義されて格納されている。つまり、二次元コード５１に関しては、図２６のように、これらの二次元コード５１が含まれる二次元コードエリア５４Ｂの開始行を示すラインマーク５２をマークシート５０Ｂの上辺からの距離で示す行位置５５Ｂと、二次元コードエリア５４Ｂの終了行を示すラインマーク５３のマークシート５０Ｂの上辺からの距離で示す行位置５６Ｂと、二次元コードエリア５４Ｂの左端をマークシート５０Ｂの左辺からの距離で示すフィールド位置５７Ｂと、該二次元コードエリア５４Ｂの長さ５８Ｂとで、定義されている。
【００５１】
図２７は、図２４のマークリーダ７０が行う画像読取り方法を示すフローチャートである。図２８は、図２４のマークリーダ７０の画像取込み例を示す図であり、第２の実施形態の図２０中の要素と共通の要素には共通の符号が付されている。これらの図２７及び図２８を参照しつつ、図２３のマーク読取システムの動作を説明する。
このマークリーダ７０は、図２７の処理ステップＳ５１〜Ｓ６４を行い、マークシート５０Ｂのマークの認識と二次元コードの認識を行う。
ステップＳ５１〜Ｓ６４のうちのステップＳ５１の画像取込み処理からステップＳ５６のマーク／二次元コード判定処理に至るまでのマークリーダ７０の動作は、第２の実施形態と同様である。ステップＳ５１により、図２８のように、イメージメモリ３９の格納する画像３９ａにマークシート５０Ｂのイメージが取り込まれ、ステップＳ５２〜Ｓ５５の処理により、ラインマーク１ａの位置の左辺の座標１１ｇ、ラインマーク５５，５６の位置の左辺の座標５５ａ，５６ａ、及び各ラインマーク１ａ，５５，５６の位置１１ｈ，５５ｈ，５６ｈが求められる。
【００５２】
ステップＳ５６のマーク／二次元コード判定処理により、読取り対象行でマークを認識すると判定した場合には、ステップＳ５７及びその次のステップＳ５８に処理を進め、二次元コードを認識すると判定したときにはステップＳ５９〜Ｓ６３に処理を進める。
ステップＳ５７のマーク領域決定処理とそれに続くステップＳ５８のマーク認識処理は、第１及び第２の実施形態と同様であり、これらのステップＳ５７，Ｓ５８の処理により、マーク枠１ｂごとに“マークあり”或いは“マーク無し”が認識結果として得られる。
【００５３】
一方、ステップＳ５９の二次元コード領域決定処理では、第２の実施形態と同様にして、二次元コードエリア検出部６２が、マークシート５０Ｂに設定した二次元コードエリア５４Ｂの上端または下端の座標を求める。ステップＳ５９の二次元コード領域決定処理の後に、処理がステップＳ６０に進む。
ステップＳ６０の領域完結判定処理において、マークリーダ制御部３１は、ステップＳ５９の処理で矩形の二次元コードエリア５４Ｂの位置が確定したか否かを判定し、確定している場合（完結）には処理をステップＳ６１に進め、確定していない場合（未決）には処理をステップＳ６４に進める。
【００５４】
図２９は、マークリーダ７０の二次元コード抽出処理の概念を示す図である。
ステップＳ６１の二次元コード抽出処理において、二次元コード抽出部７２は図２９のように、画像３９ａ中の二次元コードエリア５４Ｂの投影を行う。最初に、横軸に対する投影を行うと、該投影結果が２つのブロックに別れるので、二次元コード抽出部７２は二次元コードエリア５４Ｂを分割し、分割したエリア内での投影を行うことにより、２組の二次元コード５１の位置座標を抽出する。二次元コード抽出部７２は、抽出した２組の二次元コード５１の位置座標を二次元コード認識部４６に与える。
ステップＳ６２の二次元コード認識処理において、二次元コード認識部４６は、１組の二次元コード５１の位置座標を選択し、該位置座標が示す場所に対して第１の実施形態と同様の処理を行い、１つの二次元コード５１の認識を行う。この認識結果はマークリーダ制御部３１に与えられる。
【００５５】
ステップＳ６３において、二次元コード認識部４６は、未処理の二次元コード５１が存在（未）するか否（完）かを判定し、存在するときに、再びステップＳ６２の二次元コード認識処理を行う。
ステップＳ６３で未処理の二次元コード５１がないと判定した場合と、ステップＳ５８の処理が終了した場合に、処理はステップＳ６４に進む。ステップＳ６４では、全行の処理が終了したかが、マークリーダ制御部３１によって判定され、未処理の行があれば（未完）、処理を再びステップＳ５４に戻す。すべての行に対して認識が行われている（完了）と判定した場合には、マークリーダ制御部３１が認識結果群をコンピュータ３へ送信する。
【００５６】
以上のように、この第３の実施形態では、二次元コードエリア検出部６２、二次元コード抽出部７２及び二次元コード認識部４６をマークリーダ７０に設けたので、第１の実施形態の利点（１），（２）と第２の実施形態の利点（３），（４）とを持つと共に、次のような利点が得られる。
（５）  二次元コードエリア５４Ｂにおいて、少なくとも１個以上の二次元コード５１を読取ることができるので、使用者は複数の二次元コード５１を１枚のマークシート５０Ｂに並べることができ、該マークシート５０Ｂに載せる情報量が第２の実施形態よりも増加できる。また、二次元コード５１には、連結と呼ぶ機能があり、１つの面積の大きな二次元コードで表す情報を複数の小さな二次元コードで表すことができる。この第３の実施形態のマークリーダ７０は、この連結機能を適用できる。
【００５７】
第４の実施形態
図３０は、本発明の第４の実施形態を示すマーク読取システムの構成図である。図３１は、図３０における本発明の第４の実施形態を示すマークリーダ８０の構成図であり、第３の実施形態を示す図２４中の要素と共通の要素には共通の符号が付されている。
このマーク読取システムは、後述する図３２に示すような複数の二次元コードがラインマークで示された領域に貼付されたマークシート５０Ｃを読取り対象の帳票とするシステムであり、第３の実施形態を示す図２３と同様のコンピュータ３と、該コンピュータ３に接続された第３の実施形態とは異なるマークリーダ８０とで構成されている。
【００５８】
マークリーダ８０は、読取るべきマークを認識すると共に、読取るべき二次元コードを認識し、各認識結果をコンピュータ３へ与える機能を持つ第３の実施形態と同様のマークリーダ制御部３１と、該マークリーダ制御部３１にバスＢで接続された第１〜第３の実施形態とは異なるメカ制御部８１と、該メカ制御部８１によって制御される第３の実施形態と同様の搬送系３３、マークシート５０Ｃに十分な光を照射する光源３４、該マークシート５０Ｃからの反射光を集光するレンズ３５及び光学フィルタ３６とを、備えている。
【００５９】
光学フィルタ３６の出力側にイメージセンサ３７が接続され、該イメージセンサ３７の出力側に、Ａ／Ｄ変換器３８が接続されている。Ａ／Ｄ変換器３８の出力側にイメージメモリ８２が接続されている。光学フィルタ３６、イメージセンサ３７及びＡ／Ｄ変換器３８は、第１から第３の実施形態と同様であるが、イメージメモリ８２は、第１から第３の実施形態とは異なり、メカ制御部８１と相俟って解像度調整を実現する構成になっている。
バスＢには、さらに、第３の実施形態とは格納内容が異なるフォーマットデータメモリ８３と、第３の実施形態と同様の帳票検出部４１、ラインマーク検出部４２、マークエリア検出部４３、マーク認識部４４、二次元コードエリア検出部６２、二次元コード抽出部７２及び二次元コード認識部４６とが、接続されている。
【００６０】
図３２は、マークシート５０Ｃの一例を示す図であり、第３の実施形態の図２５中の要素と共通の要素には共通の符号が付されている。
このマークシート５０Ｃは、３つの二次元コード５１が貼付されているだけで、第３の実施形態のマークシート５０Ｂとほぼ同じ構成になっている。行を示す複数のラインマーク１ａが左辺に印刷され、その横に一列の複数マーク枠１ｂがそれぞれ印刷されている。二次元コード５１の貼付されるべき二次元コードエリア５４Ｃを行の範囲で示すラインマーク５２，５３が、第３の実施形態と同様に該マークシート５０Ｃの端部に印刷されている。
【００６１】
図３３は、マークシート５０Ｃの定義例を示す図であり、図２６中の要素と共通の要素に共通の符号が付されている。
フォーマットデータメモリ８３には、マーク枠１ｂに関するフォーマット情報が第１の実施形態と同様に格納され、３個の二次元コード５１に関するフォーマット情報は、該二次元コード５１が含まれる二次元コードエリア５４Ｃの開始行を示すラインマーク５２をマークシート５０Ｃの上辺の左側からの距離の例えばｆＷａ［ｍｍ］で示す行位置５５Ｃと、該エリア５４Ｃの終了行を示すラインマーク５３のマークシート５０Ｃの上辺の左側からの距離のｆＷｂ［ｍｍ］で示す行位置５６Ｃと、エリア５４Ｃの左端をマークシート５０Ｃの左辺からの距離で示すフィールド位置５７Ｃと、該エリア５４Ｃの長さ５８Ｃとで、定義されている。また、解像度調整により、マークシート５０Ｃのイメージの分解能を後述するように分解能変化点で変化させるが、フォーマットデータメモリ８３には、マークシート５０Ｃの上辺からその変化点までの分解能Ｄｍ［ｍｍ／ピクセル］と、分解能変化点以降の分解能Ｄｑ［ｍｍ／ピクセル］とが定義されている。
【００６２】
図３４は、図３１のマークリーダ８０が行う画像読取り方法を示すフローチャートである。図３５は、図３１のマークリーダ８０の画像取込み例を示す図であり、第３の実施形態の図２８中の要素と共通の要素には共通の符号が付されている。これらの図３４及び図３５を参照しつつ、図３０のマーク読取システムの動作を説明する。
対象のマークシート５０Ｃを読取る場合に、図３１のマークリーダ８０は、図３４の処理ステップＳ７１〜Ｓ８５を行う。
【００６３】
まず、ステップＳ７１の画像取込み処理において、メカ制御部８１が搬送系３３を制御し、マークシート５０Ｃをマーク認識に適した速度で搬送する。搬送されたマークシート５０Ｃに光源３４から光が照射され、反射光がレンズ３５及び光学フィルタ３６を透過し、マークシート５０Ｃのイメージがイメージセンサ３７に結像される。イメージセンサ３７は光電変換を行い、マークシート５０Ｃに対応するアナログ信号を出力する。Ａ／Ｄ変換器３８は、与えられたアナログ信号をデジタル信号のイメージデータに変換し、マーク認識が可能なレベルに間引きしてイメージメモリ８２に書込む。この結果、イメージメモリ８２の格納領域の画像８２ａにマークシート５０Ｃのイメージ５０ｃが上側から取込まれて格納される。
ステップＳ７２の帳票辺検出処理において、第１から第３の実施形態と同様に、帳票検出部４１は、図３５に示す画像８２ａの上方におけるイメージ５０ｃの左辺の座標１１ａ及び上辺座標１１ｂと、イメージ５０ｃの上辺の左側の座標１１ｃ及び右側の座標１１ｄをそれぞれ求める。ステップＳ７３の帳票角検出処理において、第１から第３の実施形態と同様に、帳票検出部４１は、ステップＳ７２で求めた左辺の座標１１ａ、右辺の座標１１ｂ、上辺の左側の座標１１ｃ及び上辺の右側の座標１１ｄから、イメージ５０ｃの左上角１１ｅ及び右上角１１ｆの座標を求める。
【００６４】
ステップＳ７４の解像度調整処理において、メカ制御部８１は、搬送系３３を制御し、マークシート５０Ｃの搬送速度を二次元コード５１の認識に適した速度に変更すると共に、イメージメモリ８２に格納するイメージデータの間引き割合を変更して分解能を調整する。この調整を行うタイミングは、これまでの搬送量とかそれまでに検出したラインマーク１ａの個数等を観測することによって決定することができる。分解能の調整により、図３５のように、マーク認識を行う部分と、二次元コード認識を行う部分とで、画像８２ａに取込まれるイメージの大きさが異なり、図３５のような分解能変化点７４が生じる。例えばマークリーダ制御部３１は、帳票検出部４１を使用し、マークシート５０Ｃの上辺の左側及び右側の位置１１ｃ，１１ｄを求めたのと同様の手法で分解能変化点７４の位置７５を求める。
ステップＳ７５の行辺検出処理において、帳票検出部４１は、フォーマットデータメモリ８３にフォーマット情報として定義された読取り対象行の行位置１ｃ，５５Ｃまたは５６Ｃを読出す。
【００６５】
マーク読取りを行うときにはフォーマット情報の行位置１ｃを読出し、図８（ｅ）と同様に、画像８２ａの該行位置１ｃに対応する領域近傍に対し、黒点数のヒストグラムを水平方向に求め、該ヒストグラムの変化点から、その領域におけるイメージ５０ｃの左辺の位置の座標１１ｇを求める。二次元コード５１の認識を行うときには、フォーマット情報の行位置５５Ｃ，５６Ｃを以下のように補正し、画像８２ａにおける行位置５５Ｃ，５６Ｃの補正値に対応する領域に対し、黒点数のヒストグラムを水平方向に求め、該ヒストグラムの変化点から、ラインマーク５２，５３の存在する部分におけるイメージ５０ｃの左辺の位置座標５５ａ，５６ａを求める。
【００６６】
図３６は、位置補正の説明図である。
位置座標５５ａ，５６ａを求める際に、フォーマット情報の行位置５５Ｃ，５６Ｃを補正するのは、分解能変化点７４で分解能が変化するので行位置５５Ｃ，５６Ｃがそのまま使用できないためである。イメージ５０ｃの上辺から分解能変化点７４までのピクセル数をｉＷｍ、分解能変化点７４からイメージ５０ｃのラインマーク５２までのピクセル数をｉＷｑとすると、フォーマット情報で定義されたｆＷａは、分解能Ｄｍ，Ｄｑを用いると、次の（１）式で表すことができる。
ｉＷｍ×Ｄｍ＋ｉＷｑ×Ｄｑ＝ｆＷａ      ・・・（１）
これを変形すると、次の（２）式になる。
ｉＷｑ＝（ｆＷａ−ｉＷｍ×Ｄｍ）／Ｄｑ  ・・・（２）
ここで、ｉＷｍは、分解能変化点７４の位置７５からイメージ５０ｃの上辺の左側の位置１１ｃの差であるから、ｉＷｑは計算で求められる。よって、分解能変化点７４の位置７５にｉＷｑの値を加算した値が行位置５５Ｃの補正値となる。同様に、分解能変化点７４からイメージ５０ｃのラインマーク５３までのピクセル数を計算し、分解能変化点７４の位置７５に加算すると、行位置５６Ｃの補正値となる。
【００６７】
ステップＳ７６のラインマーク検出処理において、ラインマーク検出部４２は、左辺の位置座標１１ｇ，５５ａ，５６ａを求めた領域に対し、図８（ｆ）のように黒点数のヒストグラムを垂直方向に求め、該ヒストグラムの変化点と変化点の中心を、領域におけるラインマーク１ａ，５２，５３の位置座標１１ｈ，５５ｈ，５６ｈとして求める。
ステップＳ８０の二次元コード領域決定処理からステップＳ８４の判定処理も第３の実施形態と同様であり、ステップＳ８０〜Ｓ８４により、各二次元コード５１の認識が行われ、その認識結果はマークリーダ制御部３１に与えられる。
ステップＳ８４で未処理の二次元コード５１がないと判定した場合と、ステップＳ７９の処理が終了した場合に、処理はステップＳ８５に進む。ステップＳ８５では、全行の処理が終了したかが、マークリーダ制御部３１によって判定され、未処理の行があれば（未完）、処理を再びステップＳ７４に戻す。すべての行に対して認識が行われている（完了）と判定した場合には、マークリーダ制御部３１が認識結果群をコンピュータ３へ送信する。
【００６８】
以上のように、この第４の実施形態では、二次元コードエリア検出部６２、二次元コード抽出部７２及び二次元コード認識部４６をマークリーダ８０に設けると共に、メカ制御部８１とイメージメモリ８２とでイメージ５０ｃの分解能を変化させる構成にしたので、第１の実施形態の利点（１），（２）と第２の実施形態の利点（３），（４）と、第３の実施形態の利点（５）を持つばかりでなく、次のような利点が得られる。
（６）  二次元コード５１は、正方形のセルをマトリクス状に配置されて構成されている。二次元コード印刷時に、セルのドット数を調整することで、同じデータ量を持つ二次元コードでも、印字面積を小さくしたり大きくしたりすることが可能である。印字面積を小さくした細密な二次元コードを読取る時には、読取り側の分解能を高める必要が発生する。これに対し、このマークリーダ８０は、二次元コードエリア５４Ｃのみの分解能を高く設定できるので、マークシート５０Ｃの全面の分解能を高く設定する場合よりも、処理時間を短縮できる。
【００６９】
第５の実施形態
図３７は、本発明の第５の実施形態を示すマーク読取システムの構成図である。図３８は、図３７における本発明の第５の実施形態を示すマークリーダ９０の構成図であり、第４の実施形態を示す図３１中の要素と共通の要素には共通の符号が付されている。
このマーク読取システムは、複数の二次元コードがラインマークで示された領域に貼付された例えば第４の実施形態で用いたマークシート５０Ｃを読取り対象の帳票とするシステムであり、第４の実施形態を示す図３０と同様のコンピュータ３と、該コンピュータ３に接続された第４の実施形態とは異なるマークリーダ９０とで構成されている。
【００７０】
マークリーダ９０は、読取るべきマーク及び二次元コードを認識し、各認識結果をコンピュータ３へ与える機能を持つ第１から第４の実施形態と同様のマークリーダ制御部３１と、マークリーダ制御３１にバスＢで接続された第１〜第４の実施形態とは異なるメカ制御部９１と、該メカ制御部９１によって制御される搬送系９２と、マークシート５０Ｃに十分な光を照射する光源３４と、該マークシート５０Ｃからの反射光を集光するレンズ３５及び光学フィルタ３６とを、備えている。メカ制御部９１は、搬送系９２を制御して分解能を調整する機能を持つばかりでなく、該搬送系９２を制御してマークシート５０Ｃの搬送方向を逆方向に変える機能を持っている。
光学フィルタ３６の出力側にイメージセンサ３７が接続され、該イメージセンサ３７の出力側に、Ａ／Ｄ変換器３８が接続されている。Ａ／Ｄ変換器３８の出力側に、第４の実施形態とは異なるイメージメモリ９３が接続されている。光学フィルタ３６、イメージセンサ３７及びＡ／Ｄ変換器３８は、第１から第４の実施形態と同様であるが、イメージメモリ９３は、第４の実施形態と同様にメカ制御部９１と相俟って解像度調整を行う機能を持つばかりでなく、マークシート５０Ｃの搬送方向を変えた時に取込まれたイメージも格納する機能を持っている。
【００７１】
バスＢには、さらに、第４の実施形態とは格納内容が異なるフォーマットデータメモリ９４と、第４の実施形態と同様の帳票検出部４１、ラインマーク検出部４２、マークエリア検出部４３及びマーク認識部４４と、第４の実施形態とは異なる機能を持つ二次元コードエリア検出部９５、二次元コード抽出部９６及び二次元コード認識部９７とが、接続されている。
フォーマットデータメモリ９４は、第４の実施形態と同様のフォーマット情報の他に、二次元コードが不読のときにマークシート５０Ｃをバックさせて再度イメージを取込む際の分解能等を記憶している。二次元コードエリア検出部９５は、第４の実施形態と同様の機能のほかに、マークシート５０Ｃをバックさせてイメージ５０ｃを画像に取込んだときに、その画像から二次元コードエリアを検出する機能を持っている。二次元コード抽出部９６は、第４の実施形態と同様の機能のほかに、マークシート５０Ｃをバックさせてイメージ５０ｃを画像に取込んだときに、その画像から二次元コードの位置を抽出する機能を持っている。二次元コード認識部９７は、第４の実施形態と同様の機能のほかに、マークシート５０Ｃをバックさせてイメージ５０ｃを画像に取込んだときに、その画像中で上下反転している二次元コードに対する認識を行う機能を持っている。
【００７２】
図３９は、図３８のマークリーダ９０が行う画像読取り方法を示すフローチャートである。この図３９を参照しつつ、図３７のマーク読取システムの動作を説明する。
図３８に示したマークリーダ９０は、図３９の処理ステップＳ９１〜Ｓ１０３を行い、マーク認識と二次元コード認識の両方を行い、認識結果をコンピュータ３に送信する。
最初のステップＳ９１の順方向読取り処理では、第４の実施形態を示す図３４中のステップＳ７１からステップＳ８５を行い、次のステップＳ９２では、複数の二次元コード５１に不読があったか無かったかを判定する。不読が無かった場合には一連の処理を終了する。不読があった場合には処理をステップＳ９３に進める。
ステップＳ９３の逆方向画像取込み処理において、メカ制御部９１が搬送系９２を制御し、一度イメージが取得されたマークシート５０Ｃを二次元コード５１の読取りに適した速度で逆方向に搬送し、後端側から再度イメージの取得を行わせる。
【００７３】
図４０（ａ），（ｂ）は、搬送方向を示す図である。
図４０（ｂ）のように、逆方向に搬送されたマークシート５０Ｃに光源３４から光が照射され、反射光がレンズ３５及び光学フィルタ３６を透過し、マークシート５０Ｃのイメージがイメージセンサ３７に結像される。イメージセンサ３７は光電変換を行い、マークシート５０Ｃに対応するアナログ信号を出力する。Ａ／Ｄ変換器３８は、与えられたアナログ信号をデジタル信号のイメージデータに変換し、二次元コード５１の認識に適した分解能でイメージメモリ９３に書込む。この結果、イメージメモリ９３の格納領域の画像９３ａにマークシート５０Ｃのイメージ５０ｃが下側から取込まれて格納される。
【００７４】
図４１は、マークリーダ９０の画像取込み例を示す図である。
ステップＳ９４の帳票辺検出処理において、第１から第４の実施形態と同様に黒点のヒストグラムから、帳票検出部４１は図４１に示す画像９３ａの上方におけるイメージ５０ｃ／の左辺の座標１１ａ／及び右辺の座標１１ｂ／と、イメージ５０ｃの上辺の左側の座標１１ｃ／及び上辺の右側の座標１１ｄ／をそれぞれ求める。ただし、この場合のイメージ５０ｃ／の上辺は、マークシート５０Ｃの下辺になる。
ステップＳ９５の帳票角検出処理において、第１から第４の実施形態と同様に、帳票検出部４１はステップＳ９４で求めた左辺の座標１１ａ／、右辺の座標１１ｂ／、上辺の左側の座標１１ｃ／及び上辺の右側の座標１１ｄ／から、イメージ５０ｃ／の左上角１１ｅ／及び右上角１１ｆ／の座標を求める。
【００７５】
ステップＳ９６の行辺検出処理において、帳票検出部４１は、フォーマットデータメモリ９４にフォーマット情報として定義された読取り対象行の行位置５５Ｃまたは５６Ｃを読出す。フォーマット情報の行位置５５Ｃ，５６Ｃを第４の実施形態と同様に分解能を用いて補正し、これを画像９３ａに適用し、対応する領域の黒点数のヒストグラムを水平方向に求め、該ヒストグラムの変化点から、ラインマーク５２，５３の存在する部分におけるイメージ５０ｃ／の左辺の位置座標５５ａ／，５６ａ／を求める。
ステップＳ９７のラインマーク検出処理において、ラインマーク検出部４２は、左辺の位置座標５５ａ／，５６ａ／を求めた領域に対し、図８（ｆ）のように黒点数のヒストグラムを垂直方向に求め、該ヒストグラムの変化点と変化点の中心を、領域におけるラインマーク５２，５３の位置座標５５ｈ／，５６ｈ／として求める。
【００７６】
ステップＳ９８の二次元コード領域決定処理では、二次元コードエリア検出部９５が、マークシート５０Ｃの二次元コードエリア５４Ｃの画像９３ａにおける座標を、第２から第４の実施形態と同様に図２１の処理フローで求める。
ステップＳ９９の領域完結判定処理において、マークリーダ制御部３１は、ステップＳ９８の処理で矩形の二次元コードエリア５４Ｃの位置が確定したか否かを判定し、確定している場合（完結）には処理をステップＳ１００に進め、確定していない場合（未決）には処理をステップＳ１０３に進める。
ステップＳ１００の二次元コード抽出処理において、二次元コード抽出部９６は、図２９のように、画像９３ａ中の二次元コードエリア５４Ｃの投影を行い、二次元コード５１の位置を抽出する。
ステップＳ１０１の二次元コード認識処理において、二次元コード認識部９７は、一つの二次元コード５１の位置座標を選択し、該位置座標が示す場所に対して第１の実施形態と同様の処理を行い、二次元コード５１の認識を行う。
【００７７】
この二次元コード５１の認識では、二次元コード５１のイメージが上下逆転しいることを考慮する。つまり、二次元コード５１の各セルの座標において、白と黒を認識し、１または０のビットに変換し、この１または０のビットを所定のルールで連結してビットストリームを形成する。この所定のルールを上下反転を考慮したものとしてビットストリームを形成する。そして、二次元コード認識部９７は、ビットストリームをデコードし、認識結果となる文字列等の情報に変換する。この認識結果はマークリーダ制御部３１に与えられる。
ステップＳ１０２において、二次元コード認識部９７は、未処理の二次元コード５１が存在（未）するか否（完）かを判定し、存在するときに、再びステップＳ１０１の二次元コード認識処理を行う。
ステップＳ１０３では、全行の処理が終了したかが、マークリーダ制御部３１によって判定され、未処理の行があれば（未完）、処理を再びステップＳ９６に戻す。すべての行に対して認識が行われている（完了）と判定した場合には、マークリーダ制御部３１が認識結果群をコンピュータ３へ送信する。
【００７８】
以上のように、この第５の実施形態では、二次元コードエリア検出部９５、二次元コード抽出部９６及び二次元コード認識部９７をマークリーダ９０に設け、メカ制御部９１とイメージメモリ９３とでイメージ５０Ｃの分解能を変化させる構成にすると共に、該メカ制御部９１と搬送系９２とでマークシート５０Ｃの搬送方向を逆転させてイメージ５０ｃの取り込み方向を逆にするようにしている。そのため、第１〜第４の実施形態で示した（１）〜（６）の利点が得られるばかりでなく、さらに、次のような利点も得られる。
（７）  マークシート５０Ｃの各二次元コード５１に対する認識回数が増加し、二次元コード５１の認識率が向上できる。
（８）  マークシート５０Ｃを順方向に搬送した場合と逆方向に搬送した場合とでは、画像９３ａでの二次元コード５１のイメージが逆転するが、二次元コード認識部９７は、該イメージを回転するのではなく、セルの認識後にビット列の並びを変えてデコードするので、画像回転を行う場合よりも処理時間を短縮できる。
【００７９】
なお、本発明は、上記実施形態に限定されず種々の変形が可能である。その変形例としては、例えば次のようなものがある。
（ｉ）  図４２（ａ），（ｂ）は、マークシートの変形例を示す図である。
第１〜第５の実施形態では、読取り対象の帳票をマークシート２０，５０，５０Ｂ，５０Ｃとしているが、これに限定されず、例えば、図４２（ａ）のように、マークを併設せず、ラインマーク１０１に対応して二次元コード１０２が貼付された帳票でもよい。また、文字の位置を帳票のイメージが取込まれた画像から検出し、該文字に対する認識を行う文字読取り手段を持つようにすれば、図４２（ｂ）のように、ラインマーク１０１に対応して文字列１０３が記載されると共に二次元コード１０２が貼付された文字認識用の帳票に適用でき、文字認識と二次元コードの認識の両方が可能になる。
【００８０】
（ii）  第５の実施形態では、分解能の調整が可能なマークリーダ９０において、搬送方向を変化させる例を示したが、分解能の調整を行わないマークリーダでも、搬送方向を変化させるようにすれば、二次元コード５１の認識率を向上できる。
（iii)  第５の実施形態では、二次元コードエリア５４Ｃについて分解能を変更して解像度を向上させているが、順方向の搬送でイメージ５０ｃを取込む場合と逆方向の搬送でイメージ５０ｃを取込む場合とで分解能を変化させてもよい。例えば、順方向の場合には、低い分解能を適用し、逆方向の場合に高い分解能を適用すると、例えば順方向の搬送した結果で二次元コード５１が認識できる場合には、逆方向の搬送を行わなくてもよくなり、通常サイズの二次元コード５１に対する処理時間を短縮できる。
【００８１】
【発明の効果】
以上詳細に説明したように、本発明によれば、画像読取装置に、フォーマット情報登録手段、画像入力手段、帳票・ラインマーク検出手段、二次元コードエリア検出手段及び二次元コード認識手段を設け、帳票に貼付または印刷された二次元コードの認識ができるようにしている。二次元コードは、同じ面積に載る情報量がマークシート方式や手書き文字等よりも遥かに多い、そのため、例えばマークシートや文字認識用の帳票等で大きさに制限があっても、密度の高い情報を上位装置等に提供することができ、多数の帳票を用意する必要がなくなる。また、二次元コードは、パーソナルコンピュータ等が簡単に作成できるので、頻繁に使用する情報を事前に用意しておくと、帳票に簡単に貼付あるいは印刷でき、その都度情報を帳票に載せる必要がない。
【図面の簡単な説明】
【図１】本発明の第１の実施形態を示すマークリーダ３０の構成図である。
【図２】従来のマークシートを示す図である。
【図３】従来のマークシート読取システムを示す構成図である。
【図４】図３中のマークリーダ２を示す構成図である。
【図５】図４のマークリーダで行う従来の画像読取り方法を示すフローチャートである。
【図６】フォーマット情報の定義例を示す図である。
【図７】イメージ取込み例を示す図である。
【図８】ヒストグラムを用いた位置検出の概要を示す図である。
【図９】本発明の第１の実施形態のマーク読取システムの構成図である。
【図１０】マークシート２０の一例を示す図である。
【図１１】図１のマークリーダ３０が行う画像読取り方法を示すフローチャートである。
【図１２】マークシート２０の定義例を示す図である。
【図１３】図１中のマークリーダ３０の画像取込み例を示す図である。
【図１４】二次元コード２２の概略を示す図である。
【図１５】本発明の第２の実施形態のマーク読取システムを示す構成図である。
【図１６】図１５における本発明の第２の実施形態を示すマークリーダ６０の構成図である。
【図１７】マークシート５０の一例を示す図である。
【図１８】マークシート５０の定義例を示す図である。
【図１９】図１６のマークリーダ６０が行う画像読取り方法を示すフローチャートである。
【図２０】図１６のマークリーダ６０の画像取込み例を示す図である。
【図２１】図１９中のステップＳ３９の詳細を示すフローチャートである。
【図２２】ステップＳ４１の二次元コード抽出処理の概念を示す図である。
【図２３】本発明の第３の実施形態を示すマーク読取システムの構成図である。
【図２４】図２３における本発明の第３の実施形態を示すマークリーダ７０の構成図である。
【図２５】マークシート５０Ｂの一例を示す図である。
【図２６】マークシート５０Ｂの定義例を示す図である。
【図２７】図２４のマークリーダ７０が行う画像読取り方法を示すフローチャートである。
【図２８】図２４のマークリーダ７０の画像取込み例を示す図である。
【図２９】マークリーダ７０の二次元コード抽出処理の概念を示す図である。
【図３０】本発明の第４の実施形態を示すマーク読取システムの構成図である。
【図３１】図３０における本発明の第４の実施形態を示すマークリーダ８０の構成図である。
【図３２】マークシート５０Ｃの一例を示す図である。
【図３３】マークシート５０Ｃの定義例を示す図である。
【図３４】図３１のマークリーダ８０が行う画像読取り方法を示すフローチャートである。
【図３５】図３１のマークリーダ８０の画像取込み例を示す図である。
【図３６】位置補正の説明図である。
【図３７】本発明の第５の実施形態を示すマーク読取システムの構成図である。
【図３８】図３７における本発明の第５の実施形態を示すマークリーダ９０の構成図である。
【図３９】図３８のマークリーダ９０が行う画像読取り方法を示すフローチャートである。
【図４０】搬送方向を示す図である。
【図４１】マークリーダ９０の画像取込み例を示す図である。
【図４２】マークシートの変形例を示す図である。
【符号の説明】
１ａ，２１，５２，５３    ラインマーク
１ｂ    マーク枠
２０，５０，５０Ｂ，５０Ｃ    マークシート
２２，５１    二次元コード
２４，５４，５４Ｂ，５４Ｃ    二次元コードエリア
３０，６０，７０，８０，９０    マークリーダ
３９，８２，９３    イメージメモリ
３９ａ，８２ａ，９３ａ    画像
４５，６２，９５    二次元コードエリア検出部
４６，９７    二次元コード認識部
【図１】
0004158286.tif 000002
【図２】
0004158286.tif 000003
【図３】
0004158286.tif 000004
【図４】
0004158286.tif 000005
【図５】
0004158286.tif 000006
【図６】
0004158286.tif 000007
【図７】
0004158286.tif 000008
【図８】
0004158286.tif 000009
【図９】
0004158286.tif 000010
【図１０】
0004158286.tif 000011
【図１１】
0004158286.tif 000012
【図１２】
0004158286.tif 000013
【図１３】
0004158286.tif 000014
【図１４】
0004158286.tif 000015
【図１５】
0004158286.tif 000016
【図１６】
0004158286.tif 000017
【図１７】
0004158286.tif 000018
【図１８】
0004158286.tif 000019
【図１９】
0004158286.tif 000020
【図２０】
0004158286.tif 000021
【図２１】
0004158286.tif 000022
【図２２】
0004158286.tif 000023
【図２３】
0004158286.tif 000024
【図２４】
0004158286.tif 000025
【図２５】
0004158286.tif 000026
【図２６】
0004158286.tif 000027
【図２７】
0004158286.tif 000028
【図２８】
0004158286.tif 000029
【図２９】
0004158286.tif 000030
【図３０】
0004158286.tif 000031
【図３１】
0004158286.tif 000032
【図３２】
0004158286.tif 000033
【図３３】
0004158286.tif 000034
【図３４】
0004158286.tif 000035
【図３５】
0004158286.tif 000036
【図３６】
0004158286.tif 000037
【図３７】
0004158286.tif 000038
【図３８】
0004158286.tif 000039
【図３９】
0004158286.tif 000040
【図４０】
0004158286.tif 000041
【図４１】
0004158286.tif 000042
【図４２】
0004158286.tif 000043