(57)【要約】【課題】外部装置の処理負担を軽減し得るコード画像出力装置を提供する。【解決手段】スキャナ装置では、エリアセンサにより情報コードを含んだ画像を撮像しその画像データを出力し、メモリによりエリアセンサから出力された画像データを記憶する（Ｓ１０）。そして、制御回路により、メモリに記憶された画像データに基づいて情報コードのコード画像の全体が占めるコード画像領域の位置および範囲を算出する（Ｓ３０）とともにこの位置および範囲に関する付加データを生成し（Ｓ６０）、制御回路および通信インタフェースによって、コード画像領域の位置および範囲に基づいてメモリに記憶された画像データからコード画像データを特定しこの特定されたコード画像データを含んだ出力画像データとこの特定されたコード画像データに関する付加データとをホストコンピュータに出力する（Ｓ６０）。【選択図】図１
2007226411.tif 000002
【特許請求の範囲】
【請求項１】
情報コードを含んだ画像を撮像しその画像データを出力可能な撮像手段と、
前記撮像手段から出力された前記画像データを記憶可能な記憶手段と、
前記記憶手段に記憶された前記画像データに基づいて前記情報コードのコード画像の全体が占めるコード画像領域の位置および範囲を算出可能であるとともにこの位置および範囲に関する付加データを生成可能な演算手段と、
前記コード画像領域の位置および範囲に基づいて、前記記憶手段に記憶された前記画像データから前記コード画像データを特定しこの特定されたコード画像データを含んだ出力画像データとこの特定されたコード画像データに関する前記付加データとを外部装置に出力可能な出力手段と、
を備えることを特徴とするコード画像出力装置。
【請求項２】
前記付加データは、前記出力画像データにおいて前記コード画像領域を内包可能な矩形状領域を特定可能な座標情報であることを特徴とする請求項１記載のコード画像出力装置。
【請求項３】
前記情報コードが位置決めマークを含んで構成されている場合において、
前記付加データは、前記出力画像データにおいて前記位置決めマークの存在位置を特定可能な座標情報であることを特徴とする請求項１記載のコード画像出力装置。
【請求項４】
前記演算手段は、前記出力画像データにおける前記コード画像領域の傾き角度を算出し、前記付加データは、前記傾き角度の角度情報であることを特徴とする請求項２または３記載のコード画像出力装置。
【請求項５】
前記記憶手段に記憶された前記画像データが前記撮像手段により撮像可能な最小単位である画素ごとに２ビット以上の明暗情報を有する場合において、
前記演算手段は、
所定区画内に存在する前記画素ごとの明暗情報が所定の閾値を挟んで変化する回数に基づいて、前記コード画像データとその周囲の周囲画像データとの境界を判別することで前記コード画像領域の位置または範囲を特定することを特徴とする請求項１〜４のいずれか一項に記載のコード画像出力装置。
【請求項６】
前記演算手段は、
隣接した複数の前記所定区画でまとめて得られる前記回数に基づいて、前記コード画像データとその周囲の周囲画像データとの境界を判別することで前記コード画像領域の位置または範囲を特定することを特徴とする請求項５記載のコード画像出力装置。
【請求項７】
前記情報コードが二次元コードであり、当該情報コードの存在範囲を特定可能な四隅のうちの少なくとも３箇所に位置決めマークが存在するものを前記出力手段が前記コード画像データとして出力する場合において、
前記演算手段は、
少なくとも１箇所に存在する前記位置決めマークの座標情報に基づいて、前記出力画像データにおける前記情報コードの存在位置を特定し、
少なくとも３箇所に存在する前記位置決めマークの座標情報に基づいて、前記出力画像データにおける前記情報コードの存在範囲を特定することを特徴とする請求項１記載のコード画像出力装置。
【請求項８】
前記出力手段は、前記情報コードの周囲を囲む所定幅の余白枠を含んだものを前記コード画像データとして出力することを特徴とする請求項７記載のコード画像出力装置。
【請求項９】
請求項１〜８のいずれか一項に記載のコード画像出力装置を用いた光学情報読取装置であって、
前記撮像手段から出力される前記画像データに含まれる当該情報コードを解読可能な解読手段と、
前記解読手段による前記情報コードの解読が成功した場合には前記解読手段から出力される解読データを出力し、前記情報コードの解読が失敗した場合には前記出力手段から出力される前記出力画像データと前記付加データとを出力するように前記出力手段を制御する出力制御手段と、
を備えることを特徴とする光学情報読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＯＳシステム（Point Of Sales system）の上位装置やホストコンピュータ等の外部装置にコード画像を出力するコード画像出力装置および光学情報読取装置に関するものである。
【背景技術】
【０００２】
従来より、外部装置にコード画像を出力するコード画像出力装置や光学情報読取装置として、例えば、下記特許文献１に開示される「光学的シンボル情報読取装置およびＰＯＳシステム」がある。
【０００３】
この開示技術によるバーコード読取装置では、媒体に表示されたバーコード等のシンボル情報の劣化が判るように所定の階調で二次元画像を媒体から採取して、復号手段で元の情報をデコードできないようなものであるときに読み取った画像そのものを外部に出力し得るように構成している。これにより、印刷物等の媒体から読み取ったシンボル情報の画像が読取りエラーとなるような状態のときには、その状態を保持した画像をそのまま外部に配置されるＰＯＳ装置あるいはホストコンピュータなど（外部装置）に送ることができ、その画像をそのままこれらの装置に保存することが可能となるとしている（特許文献１；段落番号０００５）。
【特許文献１】特開２００５−２０２４７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１に開示される「光学的シンボル情報読取装置およびＰＯＳシステム」等によると、以下に挙げるような技術的な課題が存在する。
【０００５】
(1) 画像メモリに記憶されるデータは、読取対象となるバーコード等の二次元画像１画面分に相当することから、上記バーコード読取装置では、当該画像データに圧縮処理を施した後に所定の電文フォーマットに組み立てて外部装置に送出している（特許文献１；段落番号０００９、００１０）。これにより、このような圧縮を施した分、送信時のデータ量はある程度、削減できるものの、それを受信する外部装置側においては、受信されたデータの情報処理に際し、圧縮された画像データを一旦、元の画像データに伸張する処理が必要となる。このため、外部装置の処理負担の増大を招くという問題がある。
【０００６】
(2) また、外部装置が受信する画像データは、デジタルカメラ等で撮像した画像情報のすべてを含んだものであることから（特許文献１；段落番号０００７〜０００９）、バーコード等のデコードあるいは解析には本来必要としない画像情報（例えばバーコードを取り囲む周囲の画像情報）をも含んでいることが多い。そのため、このような使用目的のない画像情報の送信は、外部装置が情報処理する画像データの増大につながるばかりか、これによっても情報処理の負担を増大するという問題がある。
【０００７】
(3) さらに、外部装置において、受信した画像データに含まれるバーコード等のデコードや解析をする場合には、一般的には、当該バーコード等の位置や範囲を求める演算処理を必要とするが、このような演算処理をその都度、外部装置で行っていたのでは、これによっても外部装置の処理負担が増大するという問題がある。また、当該画面中において斜めに傾いて位置するバーコード等については、所定演算処理によりその傾きを修正して真っ直ぐなものに置き換える必要があるが、これには、当該バーコード等が傾いた角度を必要とするため、このような角度の算出処理も外部装置の処理負担の増大につながる。
【０００８】
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、外部装置の処理負担を軽減し得るコード画像出力装置および光学情報読取装置を提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、特許請求の範囲に記載の請求項１のコード画像出力装置では、情報コードを含んだ画像を撮像しその画像データを出力可能な撮像手段と、前記撮像手段から出力された前記画像データを記憶可能な記憶手段と、前記記憶手段に記憶された前記画像データに基づいて前記情報コードのコード画像の全体が占めるコード画像領域の位置および範囲を算出可能であるとともにこの位置および範囲に関する付加データを生成可能な演算手段と、前記コード画像領域の位置および範囲に基づいて、前記記憶手段に記憶された前記画像データから前記コード画像データを特定しこの特定されたコード画像データを含んだ出力画像データとこの特定されたコード画像データに関する前記付加データとを外部装置に出力可能な出力手段と、を備えることを技術的特徴とする。
【００１０】
なお、「情報コード」とは、一次元コード（ＥＡＮ／ＵＰＣ、インターリーブド２オブ５、コーダバー、コード３９／１２８、スタンダード２オブ５、ＲＳＳ等）や二次元コード（ＱＲコード、ＰＤＦ４１７、データマトリックス、マキシコード、ＲＳＳコンポジット等）等の各種のコードシンボルを含む概念である。
【００１１】
特許請求の範囲に記載の請求項２のコード画像出力装置では、請求項１記載のコード画像出力装置において、前記付加データは、前記出力画像データにおいて前記コード画像領域を内包可能な矩形状領域を特定可能な座標情報であることを技術的特徴とする。
【００１２】
特許請求の範囲に記載の請求項３のコード画像出力装置では、請求項１記載のコード画像出力装置において、前記情報コードが位置決めマークを含んで構成されている場合において、前記付加データは、前記出力画像データにおいて前記位置決めマークの存在位置を特定可能な座標情報であることを技術的特徴とする。
【００１３】
特許請求の範囲に記載の請求項４のコード画像出力装置では、請求項２または３記載のコード画像出力装置において、前記演算手段は、前記出力画像データにおける前記コード画像領域の傾き角度を算出し、前記付加データは、前記傾き角度の角度情報であることを技術的特徴とする。
【００１４】
特許請求の範囲に記載の請求項５のコード画像出力装置では、請求項１〜４のいずれか一項に記載のコード画像出力装置において、前記記憶手段に記憶された前記画像データが前記撮像手段により撮像可能な最小単位である画素ごとに２ビット以上の明暗情報を有する場合において、前記演算手段は、所定区画内に存在する前記画素ごとの明暗情報が所定の閾値を挟んで変化する回数に基づいて、前記コード画像データとその周囲の周囲画像データとの境界を判別することで前記コード画像領域の位置または範囲を特定することを技術的特徴とする。
【００１５】
特許請求の範囲に記載の請求項６のコード画像出力装置では、請求項５記載のコード画像出力装置において、前記演算手段は、隣接した複数の前記所定区画でまとめて得られる前記回数に基づいて、前記コード画像データとその周囲の周囲画像データとの境界を判別することで前記コード画像領域の位置または範囲を特定することを技術的特徴とする。
【００１６】
特許請求の範囲に記載の請求項７のコード画像出力装置では、請求項１記載のコード画像出力装置において、前記情報コードが二次元コードであり、当該情報コードの存在範囲を特定可能な四隅のうちの少なくとも３箇所に位置決めマークが存在するものを前記出力手段が前記コード画像データとして出力する場合において、前記演算手段は、少なくとも１箇所に存在する前記位置決めマークの座標情報に基づいて、前記出力画像データにおける前記情報コードの存在位置を特定し、少なくとも３箇所に存在する前記位置決めマークの座標情報に基づいて、前記出力画像データにおける前記情報コードの存在範囲を特定することを技術的特徴とする。
【００１７】
特許請求の範囲に記載の請求項８のコード画像出力装置では、請求項７記載のコード画像出力装置において、前記出力手段は、前記情報コードの周囲を囲む所定幅の余白枠を含んだものを前記コード画像データとして出力することを技術的特徴とする。
【００１８】
特許請求の範囲に記載の請求項９の光学情報読取装置では、請求項１〜８のいずれか一項に記載のコード画像出力装置を用いた光学情報読取装置であって、前記撮像手段から出力される前記画像データに含まれる当該情報コードを解読可能な解読手段と、前記解読手段による前記情報コードの解読が成功した場合には前記解読手段から出力される解読データを出力し、前記情報コードの解読が失敗した場合には前記出力手段から出力される前記出力画像データと前記付加データとを出力するように前記出力手段を制御する出力制御手段と、を備えることを技術的特徴とする。
【発明の効果】
【００１９】
請求項１に係るコード画像出力装置の発明では、撮像手段により情報コードを含んだ画像を撮像しその画像データを出力し、記憶手段により撮像手段から出力された画像データを記憶する。そして、演算手段により、記憶手段に記憶された画像データに基づいて情報コードのコード画像の全体が占めるコード画像領域の位置および範囲を算出するとともにこの位置および範囲に関する付加データを生成し、出力手段によって、コード画像領域の位置および範囲に基づいて、記憶手段に記憶された画像データからコード画像データを特定しこの特定されたコード画像データを含んだ出力画像データとこの特定されたコード画像データに関する付加データとを外部装置に出力する。これにより、これを受けた外部装置では、コード画像データを含んだ出力画像データとともに当該コード画像データに関する付加データ（コード画像領域の位置および範囲に関するもの）が得られるので、当該コード画像データの情報処理に際し、当該コード画像領域の位置および範囲に関する付加データをあらためて算出する必要がない。したがって、外部装置において、このような付加データの算出処理が省ける分、当該外部装置の処理負担を軽減することができる。
【００２０】
請求項２に係るコード画像出力装置の発明では、付加データは、出力画像データにおいてコード画像領域を内包可能な矩形状領域を特定可能な座標情報である。これにより、これを受けた外部装置では、このような座標情報の算出処理が省けるばかりか、当該座標情報に基づいてコード画像領域を矩形状領域に限定して特定できるので、当該コード画像データの情報処理を容易にすることができる。したがって、当該外部装置の処理負担をより軽減することができる。
【００２１】
請求項３に係るコード画像出力装置の発明では、付加データは、出力画像データにおいて位置決めマークの存在位置を特定可能な座標情報である。これにより、情報コードが位置決めマークを含んで構成されている場合において、これを受けた外部装置では、このような座標情報の算出処理が省けるばかりか、当該座標情報に基づいてコード画像領域を特定できるので、当該コード画像データの情報処理を容易にすることができる。したがって、当該外部装置の処理負担をより軽減することができる。
【００２２】
請求項４に係るコード画像出力装置の発明では、付加データは、演算手段により算出されたコード画像領域の傾き角度の角度情報である。これにより、このような演算手段を備えている場合において、これを受けた外部装置では、このようなコード画像領域の傾き角度の角度情報の算出処理が省けるばかりか、当該角度情報に基づいてコード画像領域の傾き角度が得られるので、当該コード画像データの情報処理を容易にすることができる。したがって、当該外部装置の処理負担をより軽減することができる。
【００２３】
請求項５に係るコード画像出力装置の発明では、演算手段は、所定区画内に存在する画素ごとの明暗情報が所定の閾値を挟んで変化する回数に基づいて、コード画像データとその周囲の周囲画像データとの境界を判別することでコード画像領域の位置または範囲を特定する。これにより、記憶手段に記憶された画像データが撮像手段により撮像可能な最小単位である画素ごとに２ビット以上の明暗情報を有する場合において、比較的容易に当該明暗情報の内容を判定することができる。
【００２４】
請求項６に係るコード画像出力装置の発明では、演算手段は、隣接した複数の所定区画でまとめて得られる回数に基づいて、コード画像データとその周囲の周囲画像データとの境界を判別することでコード画像領域の位置または範囲を特定する。これにより、このようにまとめない場合に比べて、明暗情報の判定回数を削減できるので、情報処理速度を速めることができる。
【００２５】
請求項７に係るコード画像出力装置の発明では、演算手段は、少なくとも１箇所に存在する位置決めマークの座標情報に基づいて、出力画像データにおける情報コードの存在位置を特定し、少なくとも３箇所に存在する位置決めマークの座標情報に基づいて、出力画像データにおける情報コードの存在範囲を特定する。これにより、情報コードが二次元コードであり、当該情報コードの存在範囲を特定可能な四隅のうちの少なくとも３箇所に位置決めマークが存在するものを出力手段がコード画像データとして出力する場合において、当該３箇所の座標情報に基づいて二次元コードに位置および範囲を容易に特定することができる。
【００２６】
請求項８に係るコード画像出力装置の発明では、出力手段は、情報コードの周囲を囲む所定幅の余白枠を含んだものをコード画像データとして出力する。これにより、二次元コードの周囲に位置する当該余白枠も併せて外部装置に出力できるので、例えば、ＱＲコードのように所定の規格でこのような余白枠（クワイエットゾーン）を出力することが定められているものに対応することができる。
【００２７】
請求項９に係る光学情報読取装置の発明では、解読手段により、撮像手段から出力される画像データに含まれる当該情報コードを解読し、情報コードの解読が成功した場合には解読手段から出力される解読データを出力し、情報コードの解読が失敗した場合には出力手段から出力される出力画像データと付加データとを出力するように出力手段を出力制御手段により制御する。これにより、情報コードの解読が失敗しても、コード画像データを含んだ出力画像データとこのコード画像データに関する付加データとを外部装置に出力するので、これを受けた外部装置では、前述した請求項１〜８の発明が奏する作用・効果を得ることができる。したがって、外部装置の処理負担を軽減し得る光学情報読取装置を提供することができる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明のコード画像出力装置を二次元コードスキャナ装置（以下「スキャナ装置」という）に適用した実施形態（本発明の光学情報読取装置の実施形態に相当する）を各図に基づいて説明する。
【００２９】
本実施形態に係るスキャナ装置１０は、二次元コード（情報コード）の読み取りを可能にする光学情報読取装置で、以下説明する実施形態では二次元コードのうちのＱＲコードを読み取る場合について説明する。
【００３０】
まず、スキャナ装置１０の機械的構成および光学的構成を図１を参照して説明する。スキャナ装置１０は、機械的構成として、図略のほぼ矩形状の箱体からなる筐体１１を備えており、この筐体１１内に光学的構成および電気的構成が収容されている。即ち、筐体１１は、照明部２１、エリアセンサ２３、結像光学部２５等からなる光学的構成や、メモリ３５、制御回路４０等からなる電気的構成を、それぞれ収容している。
【００３１】
図１に示すように、この筐体１１の表面には、矩形状の読取窓１２が形成されており、この読取窓１２には筐体１１の内側から当該読取窓１２を閉塞可能な透明板１５が設けられている。この読取窓１２は、表示媒体１００に印刷（表示）された情報コードＱを読み取るための開口部として機能するもので、当該情報コードＱを十分に読み取り可能な大きさに設定されている。また、筐体１１には、当該スキャナ装置１０の使用者が後述する液晶表示部４６の表示画面を目視可能に液晶表示部４６が取り付けられている。
【００３２】
スキャナ装置１０の光学的構成は、主に、照明部２１、エリアセンサ２３、結像光学部２５からなる。照明部２１は、当該スキャナ装置１０の読取対象となる情報コードＱに照明光Ｌｆを照射可能に構成される照明光源で、例えば、赤色光を発光可能な複数の発光ダイオードを矩形状や円環状等に配置して構成されるＬＥＤ照明である。この照明部２１から出射された照明光Ｌｆは、前述した読取窓１２の外側に位置する表示媒体１００の情報コードＱに照射されると、それに反射した反射光Ｌｒが後述する筐体１１内の結像光学部２５に入射することによりエリアセンサ２３の受光を可能にしている。
【００３３】
エリアセンサ２３は、情報コードＱに照射されて反射した反射光Ｌｒを受光可能に構成される受光センサで、例えば、Ｃ−ＭＯＳやＣＣＤ等の固体撮像素子である受光素子を二次元に配置したものである。このエリアセンサ２３は、結像光学部２５による結像が当該エリアセンサ２３の受光面２３ａで可能な位置に取り付けられており、後述する増幅回路３１に電気的に接続されている。これにより、受光面２３ａで結像されたコード画像等を画像信号に変換した後、当該画像情報を増幅回路３１に出力可能にしている。
【００３４】
結像光学部２５は、読取対象となる情報コードＱに照射された照明光Ｌｆの反射光Ｌｒを受光して、エリアセンサ２３の受光面２３ａにコード画像等を結像可能にする光学部材で、結像レンズ２７等を備えている。
【００３５】
次に、このような機械的構成および光学的構成を持つスキャナ装置１０の電気的構成を引き続き図１を参照して説明する。
図１に示すように、スキャナ装置１０の電気的構成は、増幅回路３１、Ａ／Ｄ変換回路３３、メモリ３５、アドレス発生回路３６、同期信号発生回路３８、制御回路４０、電源スイッチ４２、ブザー４４、液晶表示部４６、通信インタフェース４８等からなる。
【００３６】
これらは、制御回路４０およびメモリ３５を中心に構成されるマイクロコンピュータ（以下「マイコン」という）（情報処理装置）として機能し得るもので、エリアセンサ２３、結像光学部２５、結像レンズ２７等からなる光学的構成によって撮像された情報コードＱの画像信号をハードウェア的およびソフトウェア的に信号処理し得るものである。また制御回路４０は、当該スキャナ装置１０の全体システムに関する制御も行っている。
【００３７】
結像光学部２５によりエリアセンサ２３の受光面２３ａに結像されたコード画像等は、当該エリアセンサ２３によって画像信号（アナログ信号）に変換された後、増幅回路３１に入力されることで所定ゲインで増幅され、さらにＡ／Ｄ変換回路３３に入力される。これにより、アナログ信号からディジタル信号に変換されるため、ディジタル化された画像信号、つまり画像データは、メモリ３５に入力されると、画像データ蓄積領域に蓄積される。なお、同期信号発生回路３８は、エリアセンサ２３およびアドレス発生回路３６に対する同期信号を発生可能に構成されており、またアドレス発生回路３６は、この同期信号発生回路３８から供給される同期信号に基づいて、メモリ３５に格納される画像データの格納アドレスを発生可能に構成されている。
【００３８】
メモリ３５は、半導体メモリ装置で、例えばＲＡＭ（ＤＲＡＭ、ＳＲＡＭ等）やＲＯＭ（ＥＰＲＯＭ、ＥＥＰＲＯＭ等）がこれに相当する。このメモリ３５のうちのＲＡＭには、前述した画像データ蓄積領域のほかに、制御回路４０が算術演算や論理演算等の各処理時に利用する作業領域や後述する画像データ転送処理で用いる出力データ領域等も確保可能に構成されている。またＲＯＭには、後述する情報コード読取処理や画像データ転送処理等を実行可能な所定プログラムやその他、照明部２１、エリアセンサ２３等の各ハードウェアを制御可能なシステムプログラム等が予め格納されている。
【００３９】
制御回路４０は、スキャナ装置１０全体を制御可能なマイコンで、ＣＰＵ、システムバス、入出力インタフェース等からなり、メモリ３５とともに情報処理装置を構成し情報処理機能を有するものである。この制御回路４０には、内蔵された入出力インタフェースを介して種々の入出力装置と接続可能に構成されており、本実施形態の場合、電源スイッチ４２、ブザー４４、液晶表示部４６、通信インタフェース４８等を接続している。
【００４０】
これにより、例えば、電源スイッチ４２の監視や管理、また所定のビープ音やアラーム音を発生可能なブザー４４の鳴動のオンオフ、さらには情報コードＱの読み取りの可否等を画面表示可能な液晶表示部４６の画面制御や、外部装置とのシリアル通信を可能にする通信インタフェース４８の通信制御等を可能にしている。なお、通信インタフェース４８に接続される外部装置（外部）としては、例えば、当該スキャナ装置１０が読み取った情報コードＱのデコードデータＤＤや出力画像データＰＤを情報処理可能なホストコンピュータＨＳＴがこれに相当する。
【００４１】
このようにハードウェア（機械的構成、光学的構成、電気的構成）が構成されるスキャナ装置１０では、図２〜図４に示す情報コード読取処理を行う。この処理は、スキャナ装置１０の使用者が自ら手にしている表示媒体１００の情報コードＱを読取窓１２に向けて読取窓１２にかざしたり透明板１５上に置いたりした場合に、表示媒体１００の情報コードＱまたはそれ相当の画像情報を検出した所定の検出プログラムが起動する。
【００４２】
なお、図２には情報コード読取処理の流れを示すフローチャート、図３には情報コード読取処理のサブルーチンである画像データ転送処理の流れを示すフローチャート、がそれぞれ図示されている。また図４には、情報コード読取処理により当該スキャナ装置１０から出力される出力データのデータフォーマットが図示されている。
【００４３】
図２に示すように、情報コード読取処理では、メモリ３５に確保される作業領域のクリアやパラメータの設定等といった所定の初期化処理の後、まずステップＳ１０により画像情報取得処理が行われる。この画像情報取得処理は、前述したエリアセンサ２３から出力された画像信号に基づく画像データをメモリ３５の画像データ蓄積領域から取得するものである。
【００４４】
次のステップＳ２０では、位置検出処理が行われる。この処理は、ステップＳ１０により取得された画像データに含まれるコード画像の位置を検出するもので、例えば、情報コードＱがＱＲコードの場合には、当該ＱＲコードを構成する位置検出パターンを検出することによって当該ＱＲコードの位置および範囲を検出する。
【００４５】
ここで、ＱＲコードの位置検出パターン等について図５〜図７を参照して説明する。図５(A) には、ＱＲコードの位置検出パターンを構成するＱＲコードの位置検出要素パターンＦＰが図示されており、また図５(B) には、クワイエットゾーンＱＺを含めたＱＲコード（コード画像Ｑ’）Ｑの全体が図示されている。図６(A) には、コード画像の検出方法を概念的に示す説明図、また図６(B) は各行ごとに複数セルのまとまりで数値化した例を示す説明図で、さらに図６(C) は図６(B) に示す４行分をまとめて数値化した例を示す説明図、がそれぞれ図示されている。図７は、撮像画像Ｗの範囲内におけるコード画像Ｑ’とその周囲を囲む切出し枠Ｆとの位置関係等を示す説明図で、図７(A) にはクワイエットゾーンＱＺなしのＱＲコードの場合のもの、図７(B) にはクワイエットゾーンＱＺ付きのＱＲコードの場合のものが、それぞれ図示されている。
【００４６】
図５(A) に示すように、ＱＲコードの位置検出要素パターンＦＰは、ＱＲコードの基本仕様（日本工業規格；ＪＩＳ Ｘ ０５１０：２００４、以下これを単に「ＪＩＳ規格」という。）により、正方形状からなる、暗（黒色等）の７×７のモジュールＦＰａ、明（白色等）の５×５のモジュールＦＰｂおよび暗の３×３のモジュールＦＰｃの３個が同心正方形状に重なって構成されている。ここにいう「モジュール」とは、ＱＲコードを構成する最小構成要素のことで、データ１ビットに相当しその幅であるピッチｐは、これらのセル最小幅をなすものである。
【００４７】
例えば、モジュールＦＰａは７モジュール分の幅αで暗モジュール集まりを、またモジュールＦＰｂは５モジュール分の幅βで明モジュール集まりを、さらにモジュールＦＰｃは３モジュール分の幅γで暗モジュール集まりを、それぞれ形成している。このため、位置検出要素パターンＦＰを横断または縦断するように明暗情報を走査すると、暗、明、暗、明、暗の順番で同色モジュールの連続比率が１：１：３：１：１となることを利用して当該画像範囲が当該位置検出要素パターンＦＰであることや当該位置検出要素パターンＦＰの中心位置ＦＣを検出している。
【００４８】
なお、ＱＲコードでは、位置検出要素パターンＦＰ以外において、同色モジュールの連続比率がこのような１：１：３：１：１となる可能性を抑制するため、マスク処理と称される明暗のバランスを調整する処理をエンコード処理において行っている。マスク処理の詳細は前記のＪＩＳ規格を参照されたい。
【００４９】
また、ＱＲコードでは、図５(B) に示すように、このような位置検出要素パターンＦＰを、一般に、その左上、左下および右上の３箇所の隅に配置して位置検出パターンを構成することによって、当該情報コードＱがＱＲコードであるか否か、またＱＲコードであればそのコード画像の領域Ｒを検出可能にしている。
【００５０】
例えば、図７(A) に示すように、ＱＲコードの一部に汚れＰＬが存在するため、事実上、クワイエットゾーンＱＺが確保されていないに等しいＱＲコードの場合には、そのコード画像Ｑ’のコード画像領域Ｒとして当該コード画像Ｑ’の周囲近傍を囲み、また図７(B) に示すように、ＱＲコードの周囲に汚れ等がなくＪＩＳ規格に従ったクワイエットゾーンＱＺが確保されている場合には、そのコード画像Ｑ’のコード画像領域Ｒ’として当該クワイエットゾーンＱＺの周囲近傍を囲むように、本ステップＳ２０によりコード画像Ｑ’の範囲が検出される。なおこのようなコード画像Ｑ’の範囲の検出は、公知のアルゴリズムによって行われてコード画像領域Ｒが生成される。
【００５１】
なお、図５(B) に示す符号ＡＰは、暗の１モジュール、明の３×３モジュールおよび暗の５×５モジュールを同心正方形状に重ねて構成される、位置合わせパターン（アライメントパターン）と称されるもので、ＱＲコードの歪みの補正を可能にしている。また、同図に示す符号ＱＺは、ＱＲコードの周囲をＪＩＳ規格に従い明の４モジュールで枠状に取り囲むクワイエットゾーンと称されるもので、さらに符号ＢＴは、当該ＱＲコードを構成するデータおよび誤り訂正コードを収容するデータ領域を示すものである。さらに図５(A) および図５(B) において符号ＦＣにより示される○印は、位置検出要素パターンＦＰの中心位置を示す仮想的なもので、実際のＱＲコードに明示されるものではない。
【００５２】
このような各モジュールの「明」および「暗」は、例えば、図６に示すように、コード画像Ｑ’に基づく画像波形Ｋが所定の閾値Ｔｈを横切る回数（白黒変化数）を、所定ブロックごとにカウントしてその回数が所定数以上であるか否かによって判断されることで、コード画像Ｑ’の位置や範囲が検出される。
【００５３】
例えば、図６(A) に示すように、上から５番目の水平ライン＃５の一部を構成する６０画素分を、１ブロックを１０画素で構成した６ブロック（BLK1〜BLK6）に対応させて、所定の閾値Ｔｈを横切る回数（白黒変化数）をカウントする。この例の場合、所定の閾値Ｔｈを横切る（同図中に示す●箇所）回数が、紙面左側のブロックから順番に、ブロックBLK1は０回、ブロックBLK2は４回、ブロック、BLK3は２回、ブロックBLK4は０回、ブロックBLK5は０回、ブロックBLK6は０回となるため、この回数が３回（所定数）以上のブロックを「暗モジュール」と判定し、２回以下のブロックを「明モジュール」と判定する。
【００５４】
これにより、図６(B) に示すように、水平ライン＃５は、ブロックBLK1は「明」、ブロックBLK2は「暗」、ブロック、BLK3〜BLK6は「明」となる。同様に、水平ライン＃６は、ブロックBLK1，BLK2は「明」、ブロック、BLK3は「暗」、ブロックBLK4〜BLK6は「明」となり、また水平ライン＃７は、ブロックBLK1は「明」、ブロックBLK2は「暗」、ブロック、BLK3〜BLK6は「明」、水平ライン＃８はブロックBLK1〜BLK6がすべて「明」となる。
【００５５】
なお、図６(C) に示すように、このように得られる所定の閾値Ｔｈを横切る回数（白黒変化数）を、複数の水平ラインを集約してから、所定数と比較して「明」・「暗」を判定しても良い。例えば、図６(C) の例では、水平ライン＃５〜＃８の４行分を集約することにより、ブロックBLK1は０回（＝０＋０＋０＋０）、ブロックBLK2は１０回（＝４＋２＋３＋１）、ブロックBLK3は１０回（＝２＋４＋２＋２）、ブロックBLK4は０回（＝０＋０＋０＋０）、ブロックBLK5は０回（＝０＋０＋０＋０）、ブロックBLK6は０回（＝０＋０＋０＋０）となるので、これら回数が９回（所定数）以上のブロックを「暗モジュール」と判定し、８回以下のブロックを「明モジュール」と判定する。
【００５６】
これにより、図６(B) のように全て水平ラインに対するブロックごとに「明」・「暗」を判定する場合に比べて、判定精度は低下するものの、判定回数を集約数分の１（この場合は１／４）に削減できるので、演算の処理速度を高めることが可能となる。したがって、判定精度よりも演算速度を重視する場合にメリットがある。ここで再び図２に戻る。
【００５７】
図２に示すように、ステップＳ３０ではデコード処理が行われる。この処理は、ステップＳ２０により検出されたコード画像Ｑ’のデータ範囲に基づいて、所定のアルゴリズムに従ってＱＲコードを解読するもので、例えば、特許第２９３８３３８号公報等に公知の解読アルゴリズムに従って行われる。これにより、ステップＳ３０では、当該ＱＲコードを正常にデコードできた場合には、そのデコード結果をメモリ３５の所定領域に格納し、また正常にデコードできた旨をデコード可否フラグに設定する。一方、当該ＱＲコードを正常にデコードできなかった場合には、正常にデコードできなかった旨をデコード可否フラグに設定する。なお、このステップＳ３０は、特許請求の範囲に記載の「解読手段」に相当し得るものである。
【００５８】
ステップＳ４０では、ステップＳ３０により設定されたデコード可否フラグに基づいて、当該ＱＲコードのデコードは成功したか（正常に読み取れたか）否かを判断する処理が行われる。即ち、デコード可否フラグに正常にデコードできた旨が設定されている場合には、当該スキャナ装置１０の使用者がスキャナ装置１０にかざしたＱＲコードは、問題なく読み取れたことになるので、デコードに成功したと判断した後（Ｓ４０；Ｙｅｓ）、続くステップＳ５０に処理を移行してデータ出力処理を行う。これに対し、デコード可否フラグに正常にデコードできなかった旨が設定されている場合には、当該スキャナ装置１０では正常に読み取ることができないので、デコードに失敗したと判断した後（Ｓ４０；Ｎｏ）、続くステップＳ６０に処理を移行する。
【００５９】
続くステップＳ５０では、データ出力処理が行われる。即ち、ステップＳ３０により正常に行われたデコードの結果、つまりデコードデータＤＤを所定のデータフォーマットに従って出力データを構成した後、通信インタフェース４８を介して外部のホストコンピュータＨＳＴに出力して一連の本情報コード読取処理を終了する。
【００６０】
例えば、図４(A) に示すようなデータフォーマットに従った出力データを構成する。このフォーマット例で、「データＩＤ」は１バイトで構成されるデータで当該スキャナ装置１０の識別と出力データ個々の識別とを可能にするものである。また、「データ種別」は、１バイトで構成されるデータで、当該データ種別の後に続くデータがデコードに成功したときに出力される「デコードデータＤＤ」であるか、デコードに失敗したときに出力される「エラーコードＥＣ」もしくは「出力画像データＰＤ」であるかを明示する。図４(A) に示すデータフォーマットはデコードに成功したときのものであるため、データ種別の後には「デコードデータＤＤ」が続き、最後にデータの終端を示すＥＯＤが付加される。
【００６１】
なお、図４(B) や図４(C) には、データが読み取り（デコード）に失敗したときに出力されるデータフォーマット例が示されているが、これらについては、次に説明する画像データ転送処理において詳述する。ここで図３を参照してＱＲコードのデコードに失敗したときに実行される画像データ転送処理を説明する。なお、このステップＳ６０は、特許請求の範囲に記載の「出力制御手段」に相当し得るものである。
【００６２】
図３に示すように、画像データ転送処理では、まずステップＳ１０１により設定モード取得処理が行われる。この処理は、当該スキャナ装置１０において予め設定されている出力モードとして、ＱＲコードのデコードに失敗した場合にコード画像Ｑ’を出力する「画像出力モード」か、デコードに失敗した場合でもコード画像Ｑ’を出力しない「画像非出力モード」かのいずれかに設定されているモード情報を取得するものである。なおこの出力モードの設定は、図略の設定処理により任意に外部から入力可能に構成されている。
【００６３】
ステップＳ１０３では、画像出力モードであるか否かを判断する処理が行われる。即ち、ステップＳ１０１により取得した出力モードのモード情報が画像出力モードであるか否か、つまりＱＲコードのデコードに失敗した場合にコード画像Ｑ’を出力するか否かが判断される。そして、画像出力モードである場合には（Ｓ１０３；Ｙｅｓ）、続くステップＳ１０７に移行する。これに対し、ステップＳ１０１により取得した出力モードが画像出力モードでない（画像非出力モードである）場合には（Ｓ１０３；Ｎｏ）、ステップＳ１０５に移行してエラーコード出力処理が行われる。
【００６４】
ステップＳ１０５によるエラーコード出力処理では、例えば、図４(B) に示すようなデータフォーマットに従って所定のエラーコードとして、ＱＲコードのデコードに失敗した旨を示すエラー情報を含んだ出力データを構成した後、通信インタフェース４８を介して外部のホストコンピュータＨＳＴに出力する。なお、図４(B) に示す「データ種別」は、当該データ種別の後に続くデータがデコードに失敗かつ非画像出力モードに設定されているときに出力される「エラーコードＥＣ」である旨を示すもので、また「データＩＤ」は図４(A) に示すものと同様である。本ステップによりエラーコードが出力されると図２に示すメインルーチンに戻って一連の本情報コード読取処理を終了する。
【００６５】
続くステップＳ１０７では、ＱＲコードの位置検出要素パターンＦＰの中心位置ＦＣを検出できたか否かを判断する処理が行われる。この処理は、前述したステップＳ２０によってコード画像Ｑ’の位置を検出した際に、位置検出要素パターンＦＰの中心位置ＦＣが検出されたか否かを判断するもので、当該中心位置ＦＣが検出されている場合には（Ｓ１０７；Ｙｅｓ）、当該コード画像Ｑ’はＱＲコードのものであるので、ステップＳ１０９に処理を移行し、当該中心位置ＦＣが検出されていない場合には（Ｓ１０７；Ｎｏ）、当該コード画像Ｑ’はＱＲコードのものではなく他のコード（例えばバーコード、データマトリクス等）のコード画像である可能性が高いのでステップＳ１２５に処理を移行する。
【００６６】
そして、コード画像Ｑ’がＱＲコードのものである場合にはステップＳ１０９により、当該ＱＲコードのコード画像Ｑ’の周囲にクワイエットゾーンＱＺが確保されているか否かを判断する処理行われる。即ち、コード画像Ｑ’がＱＲコードのものであっても、ＱＲコードの汚れＰＬ等によって、その周囲に所定幅の余白枠（クワイエットゾーンＱＺ）が確保されていない場合には、ＪＩＳ規格に従ったものではない反面、そのような余白枠でない周囲の画像（例えば汚れＰＬ部分）を転送する必要もないので、このような判断処理を行い後続する処理により適正な切出し枠Ｆの設定を行う。
【００６７】
ステップＳ１０９によりクワイエットゾーンＱＺが確保されていないと判断された場合には（Ｓ１０９；Ｎｏ）、ステップＳ１２１によりＱＲコードのＦＰ座標算出処理が行われる。例えば、図７(A) に示す例では、エリアセンサ２３により撮像された撮像画像の範囲Ｗ（５００画素×６００画素）において、ＱＲコードのコード画像Ｑ’の一部に及ぶほどの汚れＰＬの画像が存在する。このため、コード画像Ｑ’の周囲にはクワイエットゾーンＱＺが確保されていないことから、このような場合には、コード画像Ｑ’の三隅に位置する位置検出要素パターンＦＰの中心位置ＦＣを、当該撮像画像の範囲Ｗの二次元座標空間（Ｘ＝１〜６００，Ｙ＝１〜５００）における座標FC1(X1,Y1)、FC2(X2,Y2)、FC3(X3,Y3)として本ステップＳ１２１によってそれぞれ特定する。
【００６８】
これに対し、ステップＳ１０９によりクワイエットゾーンＱＺが確保されていると判断された場合には（Ｓ１０９；Ｙｅｓ）、ステップＳ１２３によりＱＲコードの四隅座標算出処理が行われる。例えば、図７(B) に示す例では、撮像画像の範囲Ｗにおいて、ＱＲコードのコード画像Ｑ’の周囲には特に汚れが存在することなくクワイエットゾーンＱＺが確保されている。このような場合には、当該クワイエットゾーンＱＺの四隅の位置ＦＫを、先と同様の座標空間において本ステップＳ１２３により特定する。この場合、特定される座標は、FK1(X1,Y1)、FK2(X2,Y2)、FK3(X3,Y3)、FK4(X4,Y4)となる。
【００６９】
一方、ステップＳ１０７により中心位置ＦＣが検出されていない場合には（Ｓ１０７；Ｎｏ）、ステップＳ１２５により他コードの四隅座標算出処理が行われる。例えば、図８(A) に示すようなバーコードＢＣのコード画像ＢＣ’がエリアセンサ２３により撮像されていた場合には、撮像画像の範囲Ｗにおいて、前述したステップＳ２０によりコード画像ＢＣ’のコード画像領域Ｒ”が生成されている。このような場合には、当該コード画像領域Ｒ”の四隅の位置ＦＫを、ステップＳ１２３とほぼ同様に本ステップＳ１２５により特定する。この場合、特定される座標も、ステップＳ１２３の場合と同様に、FK1(X1,Y1)、FK2(X2,Y2)、FK3(X3,Y3)、FK4(X4,Y4)となる。
【００７０】
ステップＳ１２１．Ｓ１２３，Ｓ１２５のいずれかによって、このような撮像画像の範囲Ｗにおける座標情報を算出すると、続くステップＳ１３１により傾き角算出処理が行われる。この処理は、当該座標空間におけるコード画像Ｑ’の傾きを所定演算により算出するものである。
【００７１】
例えば、図７(A) に示すクワイエットゾーンＱＺなしのコード画像Ｑ’の例では、隣接する位置検出要素パターンＦＰの中心位置ＦＣを通る仮想線Ｋと、このうちの一方の中心位置ＦＣを通るＸ軸に平行な仮想線Ｌと、他方の中心位置ＦＣを通るＹ軸に平行な仮想線Ｍとにより囲まれる三角形に着目し、当該三角形の斜辺外の二辺ｘ12，ｙ12の長さに基づいてtan−１(ｙ12／ｘ12）を演算する。これにより、Ｘ軸に対する当該コード画像Ｑ’の傾きθ12が算出される（θ12＝tan−１(ｙ12／ｘ12））。Ｙ軸に対する当該コード画像Ｑ’の傾きθ12’は、分母、分子のｙ12とｘ12を入れ替えることにより同様に算出される（θ12’＝tan−１(ｘ12／ｙ12））。なお、ｘ12＝｜x1−x2｜（x1−x2の絶対値），ｙ12＝｜y1−y2｜（y1−y2の絶対値）である。
【００７２】
また、図７(B) に示すクワイエットゾーンＱＺ付きのコード画像Ｑ’の例では、コード画像領域Ｒ’の任意の一辺に平行な仮想線Ｋ’と、Ｘ軸に平行な仮想線Ｌ’と、Ｙ軸に平行な仮想線Ｍ’とにより囲まれる三角形に着目し、当該三角形の斜辺外の二辺ｘ34，ｙ34の長さに基づいてtan−１(ｙ34／ｘ34）を演算する。これにより、Ｘ軸に対する当該コード画像Ｑ’の傾きθ34が算出される（θ34＝tan−１(ｙ34／ｘ34））。Ｙ軸に対する当該コード画像Ｑ’の傾きθ34’は、分母、分子のｙ34とｘ34を入れ替えることにより同様に算出される（θ34’＝tan−１(ｘ34／ｙ34））。なお、ｘ34＝｜x3−x4｜（x3−x4の絶対値），ｙ34＝｜y3−y4｜（y3−y4の絶対値）である。
【００７３】
さらに、図７(C) に示すバーコードＢＣのコード画像ＢＣ’の例では、コード画像領域Ｒ”の長辺に平行な仮想線Ｋ”と、Ｘ軸に平行な仮想線Ｌ”と、Ｙ軸に平行な仮想線Ｍ”とにより囲まれる三角形に着目し、当該三角形の斜辺外の二辺ｘ34，ｙ34の長さに基づいてtan−１(ｙ34／ｘ34）を演算することにより、前述と同様に、Ｘ軸に対する当該コード画像ＢＣ’の傾きθ34が算出される（θ34＝tan−１(ｙ34／ｘ34））。ここで、ｘ34＝｜x3−x4｜（x3−x4の絶対値），ｙ34＝｜y3−y4｜（y3−y4の絶対値）であるが、コード画像領域Ｒ”の「長辺」に対して仮想線Ｋ”を平行に設定しているので、コード画像領域Ｒ”の「短辺」に対して平行に設定した場合に比べて着目する三角形の各辺が長くなる分、算出される傾きθ34の演算精度を向上することが可能となる。またＹ軸に対する当該コード画像ＢＣ’の傾きθ34’も、tan−１(ｘ34／ｙ34）により算出可能である。
【００７４】
次のステップＳ１３３では、切出し枠設定処理が行われる。この処理は、前述したステップＳ２０により検出されたコード画像Ｑ’の位置またはコード画像領域Ｒに基づいて、当該コード画像Ｑ’の周囲を暫定的に取り囲む矩形状の切出し枠Ｆ（画像データ上の仮想的な矩形枠）を設定するものである。例えば、図７(A) に示すように、情報コードＱがＱＲコードで事実上のクワイエットゾーンＱＺが存在しない場合には、コード画像Ｑ’の３箇所に位置する各位置検出要素パターンＦＰのそれぞれ中心位置ＦＣの座標に基づいて、当該コード画像Ｑ’三隅の座標を求める。そして、そのうちのＸ軸方向の最大値とＹ軸方向の最大値とから点ｑの座標(Xq,Yq)を求め、Ｘ軸方向の最小値とＹ軸方向の最小値とから点ｓの座標(Xs,Ys)を求める。また、Ｘ軸方向の最小値とＹ軸方向の最大値とから点ｐの座標(Xp,Yp)を求め、Ｘ軸方向の最大値とＹ軸方向の最小値とから点ｒの座標(Xr,Yr)を求める。これにより、当該ＱＲコードの周囲のコード画像領域Ｒを囲み得る切出し枠Ｆが設定される。
【００７５】
また、図７(B) に示すように、情報コードＱがＱＲコードでクワイエットゾーンＱＺが存在する場合には、コード画像領域Ｒ’の四隅の座標に基づいてそれらのＸＹの各軸の最大値、最小値を求めて、図７(A) の場合と同様に、当該ＱＲコードの周囲のクワイエットゾーンＱＺｑお含んだコード画像領域Ｒを囲み得る切出し枠Ｆ’を設定する。さらに図８(A) に示すように、情報コードＱがＱＲコード以外、例えばバーコードＢＣである場合にも、同様に、当該バーコードＢＣの周囲を囲み得る切出し枠Ｆ”を設定する。
【００７６】
次のステップＳ１３５では、切出し幅算出処理が行われる。この処理は、ステップＳ１３３により設定された切出し枠Ｆ（Ｆ’，Ｆ”）のＸ軸方向の幅とＹ軸方向の幅を算出するものである。例えば、図８(B) に示すように、切出し枠ＦのＸ軸方向の幅は、ｑのXqからｐのXpを減算したもの（Xq−Yp)、またはｒのXrからｓのXs減算したもの（Xr−Ys)に相当し、また切出し枠ＦのＹ軸方向の幅は、ｐのXpからｓのXsを減算したもの（Xp−Ys)、またはｑのXqからｒのXr減算したもの（Xq−Yr)に相当する。このため、これらの演算を行うことにより、当該切出し枠Ｆの各幅（Ｘ方向、Ｙ方向）が算出される。
【００７７】
ステップＳ１３７では、切出し枠補正処理が行われる。この処理は、ステップＳ１３５により算出された切出し枠Ｆの各幅（Ｘ方向、Ｙ方向）が送信データの単位、例えばバイト（８ビット）単位でない場合に、当該単位の整数倍（１，２，３…ｎ）となるようにデータ量を調整する処理である。例えば、図８(B) に示す例では、Ｘ軸方向にＸadやＸad’を加えた幅に補正することで、当該幅をバイト単位の整数倍に設定する。Ｙ軸方向についても同様に、ＹadやＹad’を加えた幅に補正する。なお、Ｘad、Ｘad’、ＹadやＹad’は、少なくとも１つを選択しても良いし、またこれらの組み合わせても良い。
【００７８】
これにより、ステップＳ１３３により暫定的に設定された切出し枠Ｆ（Ｆ’，Ｆ”）は、例えば、図８(B) に示すように、拡張された切出し枠Ｆｓに変更される。例えば、図７(A) に示す例では、当初各座標がｐ(Xp,Yp)，ｑ(Xq,Yq)，ｒ(Xr,Yr)，ｓ(Xs,Ys)であった切出し枠Ｆが、ステップＳ１３５による補正処理によって、ｐ’(Xp',Yp')，ｑ’(Xq',Yq')，ｒ’(Xr',Yr')，ｓ’(Xs',Ys')にそれぞれ設定変更されている。なお、ステップＳ１３３により設定された切出し枠Ｆの各座標が、当初からバイト単位の整数倍であった場合には、当該切出し枠Ｆの幅は設定を変更されることなく変動しない（例えば図７(B) に示す切出し枠Ｆ’（＝Ｆｓ’）。
【００７９】
ステップＳ１３９では、枠内データ等転送処理が行われる。この処理は、ステップＳ１３３、Ｓ１３７で設定された切出し枠Ｆ等の枠内に存在する画像データ、つまり出力画像データＰＤを所定のデータフォーマットに従って出力データを構成した後、通信インタフェース４８を介して外部のホストコンピュータＨＳＴに出力（転送）するものである。
【００８０】
例えば、図４(C) に示すようなデータフォーマットに従った出力データを構成する。このフォーマット例で、「データ長」には、これに続く付加データＡＤと出力画像データＰＤを加算したデータ長が設定され、また「座標データ」には出力画像データＰＤ中におけるコード画像領域Ｒ（Ｒ’，Ｒ”）の四隅の座標が設定されている。さらに「角度データ」には、出力画像データＰＤ中におけるコード画像領域Ｒ（Ｒ’，Ｒ”）の傾き角度が設定されている。なお、コード画像領域Ｒ（Ｒ’，Ｒ”）の四隅の座標は、ステップＳ１３３により算出され、また傾き角度はステップＳ１３１により算出されたものである。
【００８１】
なお、出力画像データＰＤのデータサイズが、１つの送信フレームでは収まりきれないサイズの場合には、図４(C) に示すように、複数の送信フレームに分割されてホストコンピュータＨＳＴに転送される。この場合、途中の送信フレームの最後には、転送データが途中である旨を示すＥＯＢが付加される。「データＩＤ］や「データ種別」その他については、図４(A) を参照して説明したものと同様である。
【００８２】
このようにステップＳ１３９により切出し枠内の画像データがホストコンピュータＨＳＴに転送されると、図２に示すメインルーチンに戻って一連の本情報コード読取処理を終了する。
【００８３】
以上説明したように、本実施形態に係るスキャナ装置１０では、エリアセンサ２３により情報コードＱ（ＱＲコード）を含んだ画像を撮像しその画像データを出力し、メモリ３５によりエリアセンサ２３から出力された画像データを記憶する。そして、制御回路４０により、メモリ３５に記憶された画像データに基づいて情報コードＱのコード画像Ｑ’の全体が占めるコード画像領域Ｒの位置および範囲を算出するとともにこの位置および範囲に関する付加データＡＤを生成し、制御回路４０および通信インタフェース４８によって、コード画像領域Ｒの位置および範囲に基づいて、メモリ３５に記憶された画像データからコード画像データＱ’を特定しこの特定されたコード画像データＱ’を含んだ出力画像データＤＤとこの特定されたコード画像データＱ’に関する付加データＡＤとをホストコンピュータＨＳＴに出力する。これにより、これを受けたホストコンピュータＨＳＴでは、コード画像データＱ’を含んだ出力画像データＤＤとともに当該コード画像データＱ’に関する付加データＡＤ（コード画像領域Ｑ’の位置および範囲に関するもの）が得られるので、当該コード画像データＱ’の情報処理に際し、当該コード画像領域Ｑ’の位置および範囲に関する付加データＡＤをあらためて算出する必要がない。したがって、ホストコンピュータＨＳＴにおいて、このような付加データＡＤの算出処理が省ける分、当該ホストコンピュータＨＳＴの処理負担を軽減することができる。
【００８４】
また、本実施形態に係るスキャナ装置１０では、付加データＡＤとしてコード画像領域Ｒの傾き角度の角度データθ（θ12、θ12’）も付加するので、ホストコンピュータＨＳＴにおいて、このようなコード画像領域Ｒの傾き角度θの算出処理が省ける分、当該ホストコンピュータＨＳＴの処理負担を軽減することができる。
【００８５】
なお、上述した実施形態では、情報コードの例としてＱＲコードを例示して説明したが、本発明はこれに限られることはなく、情報コードであれば、例えば、ＱＲコード以外の二次元コード（ＰＤＦ４１７、データマトリックス、マキシコード、ＲＳＳコンポジット等）や、一次元コード（ＥＡＮ／ＵＰＣ、インターリーブド２オブ５、コーダバー、コード３９／１２８、スタンダード２オブ５、ＲＳＳ等）等についても、前述と同様の作用および効果を得ることができる。
【図面の簡単な説明】
【００８６】
【図１】本発明の一実施形態に係るスキャナ装置の電気的、光学的構成例を示すブロック図である。
【図２】本スキャナ装置による情報コードの読取処理の主な流れを示すフローチャートである。
【図３】図２に示す画像データ転送処理の流れを示すフローチャートである。
【図４】本スキャナ装置から出力されるデータフォーマットの例を示す説明図で、図４(A) はデコードに成功した場合に出力される出力データの例で、図４(B) はデコードに失敗した場合に出力される出力データ（エラーコード）の例、図４(C) はデコードに失敗した場合に出力される出力データ（出力画像データ）の例である。
【図５】図５(A) はＱＲコードの位置検出要素パターンの構成を示す説明図、図５(B) はＱＲコードの構成例を示す説明図である。
【図６】図６(A) はコード画像の検出方法を概念的に示す説明図で、図６(B) は各行ごとに複数セルのまとまりで数値化した例を示す説明図で、図６(C) は図６(B) に示す４行分をまとめて数値化した例を示す説明図である。
【図７】撮像画像の範囲内におけるコード画像とその周囲を囲む切出し枠との位置関係等を示す説明図で、図７(A) はクワイエットゾーンなしのＱＲコードの場合、図７(B) はクワイエットゾーン付きのＱＲコードの場合、をそれぞれ示すものである。
【図８】図８(A) は、撮像画像の範囲内におけるバーコードのコード画像とその周囲を囲む切出し枠との位置関係等を示す説明図で、図８(B) は、図３に示すステップＳ１３５，Ｓ１３７の説明を補足する説明図である。
【符号の説明】
【００８７】
１０…スキャナ装置（コード画像出力装置、光学情報読取装置）
２１…照明部
２３…エリアセンサ（撮像手段）
２５…結像光学部
２７…結像レンズ
３１…増幅回路
３３…Ａ／Ｄ変換回路
３５…メモリ（記憶手段、解読手段、出力制御手段）
３６…アドレス発生回路
３８…同期信号発生回路
４０…制御回路（演算手段、出力手段、解読手段、出力制御手段）
４６…液晶表示部
４８…通信インタフェース（出力手段）
１００…表示媒体
ＡＤ…付加データ
ＢＣ…バーコード
ＤＤ…デコードデータ（解読データ）
ＰＤ…出力画像データ
Ｆ、Ｆ’、Ｆ”…切出し枠（矩形状領域）
ＦＰ…位置検出要素パターン
ＦＣ…中心位置
ＨＳＴ…ホストコンピュータ（外部装置）
Ｑ…ＱＲコード（情報コード）
Ｑ’…コード画像
ＱＺ…クワイエットゾーン（所定幅の余白枠）
Ｒ、Ｒ’、Ｒ”…コード画像領域
Ｔｈ…所定の閾値
Ｗ…撮像画像の範囲
θ、θ12、θ12’、θ34、θ34’…傾き角度
【図１】
2007226411.tif 000003
【図２】
2007226411.tif 000004
【図３】
2007226411.tif 000005
【図４】
2007226411.tif 000006
【図５】
2007226411.tif 000007
【図６】
2007226411.tif 000008
【図７】
2007226411.tif 000009
【図８】
2007226411.tif 000010