(57)【要約】【課題】部品点数を増加させることなく一次元コードおよび二次元コードの双方を読取可能であって一次元コードの読取時間を短縮し得る光学的情報読取装置を提供する。【解決手段】制御部２１にて実施される読取処理により、エリアセンサ３３にて生成された画像データが、画素データ群を１または２以上含むように構成される分割データに分割されて、メモリ２２のＲＡＭにＤＭＡ転送される。そして、分割データがメモリ２２のＲＡＭにＤＭＡ転送されるごとに、当該分割データに含まれる１つの画素データ群について、一次元コードを読み取るためのデコード処理が実施される。【選択図】図３
2014059712.tif 000002
【特許請求の範囲】
【請求項１】
一次元コードや二次元コードを含めた情報コードを光学的に読み取る光学的情報読取装置であって、
撮像された前記情報コードを含めるように水平方向および垂直方向に配列された複数の画素データからなる画像データを生成する撮像手段と、
前記画像データを記憶するための記憶手段と、
前記撮像手段にて生成された前記画像データを、当該画像データのうち同じ水平方向上に位置する複数の画素データからなる画素データ群を１または２以上含むように構成される分割データに分割して、前記記憶手段にＤＭＡ転送するデータ転送手段と、
前記記憶手段に記憶される前記画像データの少なくとも一部に基づいて前記情報コードを読み取るためのデコード処理を実施可能なデコード手段と、を備え、
前記デコード手段は、前記分割データが前記記憶手段にＤＭＡ転送されるごとに、当該分割データに含まれる１つの前記画素データ群について、前記一次元コードを読み取るためのデコード処理を実施することを特徴とする光学的情報読取装置。
【請求項２】
前記データ転送手段は、ＤＭＡ転送中に前記デコード手段により前記一次元コードのデコードが成功すると、当該ＤＭＡ転送を中止することを特徴とする請求項１に記載の光学的情報読取装置。
【請求項３】
前記デコード手段は、前記データ転送手段によるＤＭＡ転送が全ての前記画素データ群について完了することで前記画像データが前記記憶手段に記憶されると、当該画像データについて前記二次元コードを読み取るためのデコード処理を実施し、このデコード処理が失敗した場合に当該画像データについて前記一次元コードを読み取るためのデコード処理を実施することを特徴とする請求項１または２に記載の光学的情報読取装置。
【請求項４】
前記分割データがＤＭＡ転送されるごとに、当該分割データを複数の画像領域に分けてそれぞれの画像領域内での明色領域と暗色領域とが混在する個数に応じて明暗変化率を画像領域ごとに設定して前記記憶手段に記憶する明暗変化率設定手段と、
前記データ転送手段によるＤＭＡ転送が全ての前記画素データ群について完了することで前記画像データが前記記憶手段に記憶されると、当該画像データのうち前記情報コードの撮像が推定される程度に前記明暗変化率が大きな画像領域を含むようにコード推定領域を設定するコード推定領域設定手段と、を備え、
前記デコード手段は、前記コード推定領域設定手段により前記コード推定領域が設定されると、当該コード推定領域について前記二次元コードを読み取るためのデコード処理を実施し、このデコード処理が失敗した場合に当該コード推定領域について前記一次元コードを読み取るためのデコード処理を実施することを特徴とする請求項１または２に記載の光学的情報読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一次元コードや二次元コード等の情報コードを光学的に読み取る光学的情報読取装置に関するものである。
【背景技術】
【０００２】
従来、光学的情報読取装置は、一次元コードおよび二次元コードの双方が読取可能に構成されており、一次元コードを読み取るためのデコード処理と二次元コードを読み取るためのデコード処理とで処理が異なっている。このため、撮像した情報コードが一次元コードおよび二次元コードのいずれであるか明確でなく不明である場合には、一次元コードおよび二次元コードのいずれか一方を読み取るためのデコード処理を実施した後に他方を読み取るためのデコード処理を実施することとなり、読取時間が長くなるという問題があった。
【０００３】
そこで、一次元コードおよび二次元コードの双方が読取対象となる場合でもその読取時間を短縮可能な光学的情報読取装置として、下記特許文献１に開示されるバーコード読取装置が知られている。このバーコード読取装置では、筐体背面に形成される読取口に、一次元コードを光学的に読み取るためのレーザスキャナと、二次元コードを光学的に読み取るためのエリアセンサとが配置されている。また、バーコード読取装置では、その筐体前面に、エリアセンサによる読取動作の開始を指示するための第２の読取開始キーが設けられ、筐体両側面に、レーザスキャナによる読取動作の開始を指示するための第１の読取開始キーがそれぞれ設けられている。
【０００４】
そして、一次元コードが読取対象である場合には、この一次元コードに読取口を向けた状態で第１の読取開始キーが押下操作されることで、当該一次元コードがレーザスキャナ（ラインセンサ）によりレーザ走査されて、その１走査分のデジタル信号に基づいてデコード処理がなされる。また、二次元コードが読取対象である場合には、この二次元コードに読取口を向けた状態で第２の読取開始キーが押下操作されることで、当該二次元コードがエリアセンサにより撮像されて、その画像データに基づいてデコード処理がなされる。このように、一次元コードを読み取る場合と二次元コードを読み取る場合とで異なるセンサを用いてその情報コードに適した読取処理を実施することで、読取対象が一次元コードおよび二次元コードのいずれであるか明確でない場合の読取処理と比較して、読取動作を高速化している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−２９２９９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、上述のように一次元コード用のセンサおよび読取開始キーや二次元コード用のセンサおよび読取開始キーを備えるように光学的情報読取装置を構成すると、部品点数増加による大型化を招くだけでなく構造が複雑になることから高コスト化をも招いてしまうという問題がある。
【０００７】
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、部品点数を増加させることなく一次元コードおよび二次元コードの双方を読取可能であって一次元コードの読取時間を短縮し得る光学的情報読取装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、請求項１に記載の発明は、一次元コード（Ｃ１）や二次元コード（Ｃ２）を含めた情報コード（Ｃ）を光学的に読み取る光学的情報読取装置（１０）であって、撮像された前記情報コードを含めるように水平方向および垂直方向に配列された複数の画素データからなる画像データ（Ｇ）を生成する撮像手段（３３）と、前記画像データを記憶するための記憶手段（２２）と、前記撮像手段にて生成された前記画像データを、当該画像データのうち同じ水平方向上に位置する複数の画素データからなる画素データ群を１または２以上含むように構成される分割データに分割して、前記記憶手段にＤＭＡ転送するデータ転送手段（４０）と、前記記憶手段に記憶される前記画像データの少なくとも一部に基づいて前記情報コードを読み取るためのデコード処理を実施可能なデコード手段（２１）と、を備え、前記デコード手段は、前記分割データが前記記憶手段にＤＭＡ転送されるごとに、当該分割データに含まれる１つの前記画素データ群について、前記一次元コードを読み取るためのデコード処理を実施することを特徴とする。
なお、上記各括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係を示すものである。
【発明の効果】
【０００９】
請求項１の発明では、データ転送手段により、撮像手段にて生成された画像データが、画素データ群を１または２以上含むように構成される分割データに分割されて、記憶手段にＤＭＡ転送される。そして、分割データが記憶手段にＤＭＡ転送されるごとに、当該分割データに含まれる１つの画素データ群について、一次元コードを読み取るためのデコード処理がデコード手段により実施される。
【００１０】
これにより、一次元コードが撮像された場合には、全ての画素データ群がＤＭＡ転送されて記憶手段に記憶される前に、撮像された一次元コードの一部を構成する画素データ群に対するデコード処理により当該一次元コードがデコードされる。このため、全ての画素データ群がＤＭＡ転送されて記憶手段に記憶された後の画像データについてデコード処理を実施する場合と比較して、一次元コードを読み取るための読取時間を短縮することができる。
したがって、一次元コード専用の部品や二次元コード専用の部品を採用する必要もないので、部品点数を増加させることなく一次元コードおよび二次元コードの双方を読取可能であって一次元コードの読取時間を短縮することができる。
【００１１】
請求項２の発明では、ＤＭＡ転送中にデコード手段により一次元コードのデコードが成功すると、データ転送手段によるＤＭＡ転送が中止される。デコードが成功すると、ＤＭＡ転送されていない画素データはデコード処理が不要なデータであるので、デコード成功以降のＤＭＡ転送を中止することで、不要なデータ転送をなくすことができる。
【００１２】
請求項３の発明では、データ転送手段によるＤＭＡ転送が全ての画素データ群について完了することで画像データが記憶手段に記憶されると、デコード手段により、当該画像データについて二次元コードを読み取るためのデコード処理が実施され、このデコード処理が失敗した場合に当該画像データについて一次元コードを読み取るためのデコード処理が実施される。
【００１３】
撮像した情報コードが一次元コードおよび二次元コードのいずれであるか不明である場合には、通常、ＤＭＡ転送完了後の画像データについて、一次元コードを読み取るためのデコード処理が実施され、このデコード処理が失敗した場合に当該画像データについて二次元コードを読み取るためのデコード処理が実施される。一次元コードを読み取るためのデコード処理の方が、二次元コードを読み取るためのデコード処理よりも短時間で完了するからである。
【００１４】
本発明では、ＤＭＡ転送が完了した画像データは、一次元コードが撮像されている可能性が低く逆に二次元コードが撮像されている可能性が高いため、二次元コードを読み取るためのデコード処理を一次元コードを読み取るためのデコード処理よりも先に実施することで、二次元コードの読取時間を短縮することができる。
【００１５】
請求項４の発明では、分割データがＤＭＡ転送されるごとに、明暗変化率設定手段により、当該分割データを複数の領域に分けた画像領域ごとに明暗変化率が設定されて記憶手段に記憶される。そして、画像データが記憶手段に記憶されると、コード推定領域設定手段により当該画像データのうち情報コードの撮像が推定される程度に明暗変化率が大きな画像領域を含むようにコード推定領域が設定される。そして、コード推定領域設定手段によりコード推定領域が設定されると、デコード手段により、当該コード推定領域について二次元コードを読み取るためのデコード処理が実施され、このデコード処理が失敗した場合に当該当該コード推定領域について一次元コードを読み取るためのデコード処理が実施される。
【００１６】
一次元コードや二次元コードの情報コードは、そのコード周辺等の領域と比較して明暗変化率が大きくなるため、情報コードが撮像されている画像領域の明暗変化率は、他の画像領域と比較して大きくなる。そこで、画像データのうち情報コードの撮像が推定される程度に明暗変化率が大きな画像領域を含むようにコード推定領域を設定し、このコード推定領域について情報コードを読み取るためのデコード処理を実施することで、画像データの全ての領域についてデコード処理を実施する場合と比較して、情報コードの読取時間をさらに短縮することができる。特に、画像領域ごとの明暗変化率は、ＤＭＡ転送中に設定されているので、コード推定領域を設定するための処理時間を短縮することができる。
【図面の簡単な説明】
【００１７】
【図１】第１実施形態に係る光学的情報読取装置の電気的構成を示すブロック図である。
【図２】エリアセンサによる情報コードの撮像からデコード結果の出力までの流れを説明する説明図である。
【図３】各分割データがＤＭＡ転送される流れを説明する説明図である。
【図４】第１実施形態において制御部にて実行される読取処理の流れを例示するフローチャートである。
【図５】一次元コードを撮像した画像データと分割データとの関係を説明する説明図である。
【図６】第２実施形態において制御部にて実行される読取処理の流れを例示するフローチャートである。
【図７】画像データを区分けした画像領域ごとの明暗変化率の変化を説明する説明図である。
【発明を実施するための形態】
【００１８】
［第１実施形態］
以下、本発明に係る光学的情報読取装置を具現化した第１実施形態について、図面を参照して説明する。図１（Ａ）は、第１実施形態に係る光学的情報読取装置１０の電気的構成を示すブロック図であり、図１（Ｂ）は、図１（Ａ）の情報コード読取部３０の電気的構成を例示するブロック図である。
本実施形態に係る光学的情報読取装置１０は、物品に付されたバーコードなどの一次元コードや二次元コード等、複数の白色パターン（明色パターン）および黒色パターン（暗色パターン）が配列されてなる情報コードを光学的に読み取る装置として構成されている。
【００１９】
図１（Ａ）に示すように、光学的情報読取装置１０の筐体内には、光学的情報読取装置１０全体を制御する制御部２１が設けられている。この制御部２１は、マイコンを主体として構成されるものであり、ＣＰＵ、システムバス、入出力インタフェース等を有し、メモリ２２とともに情報処理装置を構成している。メモリ２２は、半導体メモリ装置で、例えばＲＡＭ（ＤＲＡＭ、ＳＲＡＭ等）やＲＯＭ（ＥＰＲＯＭ、ＥＥＰＲＯＭ等）がこれに相当する。このメモリ２２のうちのＲＡＭには、制御部２１が算術演算や論理演算等の各処理時に利用する作業領域や後述するデータ転送領域等も確保可能に構成されている。またＲＯＭには、後述する読取処理や解析処理等を実行可能な所定プログラムや各ハードウェアを制御可能なシステムプログラム等が予め格納されている。なお、メモリ２２は、特許請求の範囲に記載の「記憶手段」の一例に相当し得る。
【００２０】
また、制御部２１には、ＬＥＤ２３、表示部２４、キー操作部２５、スピーカ２６および外部インタフェース２７などが電気的に接続されている。キー操作部２５は、制御部２１に対して操作信号を与える構成をなしており、制御部２１は、この操作信号を受けて操作信号の内容に応じた動作を行う。また、ＬＥＤ２３、表示部２４およびスピーカ２６は、制御部２１によって制御される構成をなしており、それぞれ、制御部２１からの指令を受けて動作する。外部インタフェース２７は、ホスト等の外部装置との間でのデータ通信を行うためのインタフェースとして構成されており、制御部２１と協働して通信処理を行う構成をなしている。また、筐体内には、電源となるバッテリ２８や電源部２９が設けられており、これらによって制御部２１や各種電気部品に電力が供給されている。
【００２１】
また、制御部２１には、情報コード読取部３０およびＦＩＦＯ回路４０が電気的に接続されている。情報コード読取部３０は、図１（Ｂ）に示すように、エリアセンサ３３、結像レンズ３７、複数個のＬＥＤやレンズ等から構成される照明部３１などを備えた構成をなしており、制御部２１と協働して読取対象に付された情報コードを光学的に読み取るように機能する。エリアセンサ３３は、Ｃ−ＭＯＳやＣＣＤ等の固体撮像素子である受光素子を２次元に配列されて構成されており、特許請求の範囲に記載の「撮像手段」の一例に相当し得る。なお、図１（Ｂ）では、情報コードＣが付された読取対象Ｒに向けて照明光Ｌｆを照射する例を概念的に示している。
【００２２】
この情報コード読取部３０によって読み取りを行う場合、まず、制御部２１によって指令を受けた照明部３１から照明光Ｌｆが出射され、この照明光Ｌｆが図略の読取口を通って読取対象に照射される。そして、照明光Ｌｆが情報コードにて反射した反射光Ｌｒは読取口を通って装置内に取り込まれ、結像レンズ３７を通ってエリアセンサ３３により撮像される。読取口とエリアセンサ３３との間に配される結像レンズ３７は、情報コードの像をエリアセンサ３３上に結像させる構成をなしており、エリアセンサ３３はこの情報コードの像に応じた画像データをデジタルデータとして生成して出力する。エリアセンサ３３から出力される画像データは、後述するように制御部２１により制御されることでＤＭＡ（Ｄｉｒｅｃｔ Ｍｅｍｏｒｙ Ａｃｃｅｓｓ）転送されて、メモリ２２のＲＡＭに記憶され、情報コードに含まれる情報を取得するためのデコード処理に用いられるようになっている。
【００２３】
ＦＩＦＯ回路４０は、制御部２１により制御されて、エリアセンサ３３にて生成された画像データをメモリ２２のＲＡＭにＤＭＡ転送する際にバッファとして機能する回路である。なお、ＦＩＦＯ回路４０は、特許請求の範囲に記載の「データ転送手段」の一例に相当し得る。
【００２４】
ここで、エリアセンサ３３にて生成された画像データをＦＩＦＯ回路４０を用いてメモリ２２のＲＡＭにＤＭＡ転送する流れについて、図２および図３を参照して説明する。図２は、エリアセンサ３３による情報コードの撮像からデコード結果の出力までの流れを説明する説明図である。図３は、各分割データがＤＭＡ転送される流れを説明する説明図である。
【００２５】
図２に示すように、制御部２１によるエリアセンサ３３のセンサ設定が完了すると、エリアセンサ３３により情報コードが撮像される。これにより、水平方向および垂直方向に配列された複数の画素データから構成される画像データが生成される。このように生成された画像データは、制御部２１からＤＭＡ転送指示されることで、画像データが分割されてＦＩＦＯ回路４０に順次バッファされ、バッファされたデータが順次メモリ２２のＲＡＭにＤＭＡ転送される。そして、ＤＭＡ転送が完了して画像データがメモリ２２のＲＡＭに記憶されると、この記憶された画像データに対して公知のデコード処理が施されることで、情報コードとして符号化された文字データ等がデコードされる。
【００２６】
次に、ＤＭＡ転送について、図３を用いて詳細に説明する。
画像データがメモリ２２のＲＡＭにＤＭＡ転送される場合には、画像データのうち同じ水平方向（画面左右方向）上に位置する複数の画素データからなる画素データ群を１または２以上含むように当該画像データを分割した分割データが、断続的に転送される。そのため、１度の転送でメモリ２２のＲＡＭに記憶される分割データには、少なくとも１つの画素データ群が含まれることとなる。例えば、画像データが６４０画素×４８０画素（ＶＧＡ）であれば、１度のＲＡＭへの転送では、縦４８０本のうち３０〜５０本分程度が転送される。
【００２７】
具体的には、１度のＲＡＭへの転送では、図３に例示するように、制御部２１からのＤＭＡ転送指示に応じて、分割データＡをさらに分割したデータ（Ａ１〜Ａ３２）がエリアセンサ３３からＦＩＦＯ回路４０に順次送信されてバッファされる。このバッファが所定回数（例えば３２回）繰り返されることで上記分割データＡのバッファが完了すると、当該分割データＡのＦＩＦＯ回路４０からメモリ２２のＲＡＭへの転送が開始される。そして、この分割データＡのＲＡＭへの転送が開始されると、制御部２１から別途送信されるＤＭＡ転送指示に応じて、次の分割データＢをさらに分割したデータ（Ｂ１〜Ｂ３２）がエリアセンサ３３からＦＩＦＯ回路４０に順次送信されるようにバッファが開始される。このように、前の分割データのＲＡＭへの転送開始後に制御部２１から別途送信されるＤＭＡ転送指示に応じて、次の分割データをさらに分割したデータがエリアセンサ３３からＦＩＦＯ回路４０に順次送信され、このようなバッファが、画像データのＲＡＭへの転送が完了するまで繰り返される。
【００２８】
そうすると、制御部２１は、図３に例示するように、前の分割データ（Ａ）のＤＭＡ転送指示をしてから次の分割データ（Ｂ）のＤＭＡ転送指示をするまでの時間（以下、指示待ち時間という）では、待ち状態となる。なお、上記指示待ち時間は、例えば、１．２μｓ程度であり、ＦＩＦＯ回路４０からＲＡＭへ分割データを転送する転送時間は、例えば、０．４μｓ程度である。
【００２９】
そこで、本実施形態では、制御部２１により実施される読取処理にて、一次元コードの読取時間を短縮するため、上記指示待ち時間を利用して、直前にＲＡＭに転送された分割データについて、一次元コードを読み取るためのデコード処理を実施する。一次元コードを読み取るためのデコード処理は、水平方向の１走査線上における各画素データの明暗配列に基づいて実施されるため、水平方向の複数の走査線上における各画素データの明暗配列に基づいて実施される二次元コードを読み取るためのデコード処理と比較して、処理に要する時間が短時間で済み、上記指示待ち時間内に完了できるからである。
【００３０】
以下、本実施形態に係る読取処理について、図４および図５を参照して詳細に説明する。図４は、第１実施形態において制御部２１にて実行される読取処理の流れを例示するフローチャートである。図５は、一次元コードＣ１を撮像した画像データＧと分割データ（Ｇ１，Ｇ２）との関係を説明する説明図である。
制御部２１により読取処理が開始されることで、情報コード読取部３０による情報コードの撮像が可能な状態となり、情報コードが読取口にかざされて照明部３１から照明光Ｌｆが情報コード照射されている状態で、ステップＳ１０１に示す撮像処理がなされる。これにより、かざされた情報コード等が情報コード読取部３０により撮像されて、水平方向および垂直方向に配列された複数の画素データから構成される画像データが読取対象の情報コードを含むように生成される。
【００３１】
次に、ステップＳ１０３に示すＤＭＡ指示処理がなされる。この処理では、上述のように生成された画像データを複数の分割データに分割したデータのうち１番目の分割データをメモリ２２のＲＡＭに転送するためのＤＭＡ転送指示がなされる。これにより、１番目の分割データをさらに分割したデータがエリアセンサ３３からＦＩＦＯ回路４０に順次送信されてバッファされる（図３参照）。そして、このバッファが所定回数繰り返されることで上記１番目の分割データのバッファが完了すると、当該１番目の分割データのＦＩＦＯ回路４０からメモリ２２のＲＡＭへの転送が開始される。
【００３２】
そして、１番目の分割データのＲＡＭへの転送が完了すると、ステップＳ１０５に示す判定処理にてＹｅｓと判定されて、ステップＳ１０７に示す画素データ群抽出処理がなされる。この処理では、転送が完了した分割データから１つの画素データ群が抽出される。続いて、ステップＳ１０９に示す第１デコード処理がなされる。この処理では、抽出された画素データ群について、一次元コードを読み取るためのデコード処理がなされる。なお、ステップＳ１０９に示す第１デコード処理を実施する制御部２１は、特許請求の範囲に記載の「デコード手段」の一例に相当し得る。
【００３３】
続いて、ステップＳ１１１に示す判定処理がなされ、第１デコード処理が成功したか否かについて判定される。ここで、例えば、図５に示すように、画像データＧのうち情報コードが含まれていない領域Ｇ１に相当する分割データが転送完了しており、この領域Ｇ１から画素データ群が抽出されている場合には、一次元コードに相当する各画素データの明暗配列が検出できないために、デコードが失敗してステップＳ１１１にてＮｏと判定される。
【００３４】
上述のように第１デコードが失敗し、全ての分割データの転送が完了していない場合には（Ｓ１１３でＮｏ）、上記ステップＳ１０３に示す処理がなされ、次の分割データ（前回が１番目の分割データが転送されている場合には２番目の分割データ）をメモリ２２のＲＡＭに転送するためのＤＭＡ転送指示がなされる。このように、第１デコード処理が成功するか、全ての分割データの転送が完了するまで、上記ステップＳ１０３からの処理が繰り返される。
【００３５】
そして、例えば、図５に示すように、画像データＧのうち一次元コードＣ１の一部が含まれている領域Ｇ２に相当する分割データが転送完了しており、この領域Ｇ２から画素データ群が抽出されている場合には、一次元コードに相当する各画素データの明暗配列が検出されるためにデコードが成功して、ステップＳ１１１にてＹｅｓと判定される。続いて、ステップＳ１２３に示す出力処理がなされ、上記デコード処理により取得した文字データ等のデコード結果が外部インタフェース２７を介してホスト等の外部装置に出力され、この第１デコード処理の成功以降のＤＭＡ転送が中止されて、本読取処理が終了する。
【００３６】
一方、画像データに一次元コードが含まれていないことから、分割データの転送完了ごとに行われる第１デコード処理が全て失敗し（Ｓ１１１でＮｏ）、全ての分割データの転送が完了すると（Ｓ１１３でＹｅｓ）、ステップＳ１１５に示す第２デコード処理がなされる。この処理では、転送が完了した画像データについて、まず、二次元コードを読み取るためのデコード処理がなされる。一次元コードが撮像されている場合には、上記ステップＳ１０９に示す第１デコード処理によりデコードが成功して本読取処理が終了している可能性が高いからである。この第２デコード処理が成功すると（Ｓ１１７でＹｅｓ）、上記ステップＳ１２３に示す出力処理がなされ、上記デコード処理により取得した文字データ等のデコード結果が外部インタフェース２７を介してホスト等の外部装置に出力され、本読取処理が終了する。
【００３７】
また、上記第２デコード処理が失敗すると（Ｓ１１７でＮｏ）、上述した各画素データ群についての第１デコード処理でのデコード漏れを防止するため、ステップＳ１１９に示す第１デコード処理がなされ、転送が完了した画像データについて、一次元コードを読み取るためのデコード処理がなされる。この第１デコード処理が成功すると（Ｓ１２１でＹｅｓ）、上記ステップＳ１２３に示す出力処理がなされ、上記デコード処理により取得した文字データ等のデコード結果が外部インタフェース２７を介してホスト等の外部装置に出力され、本読取処理が終了する。一方、上記ステップＳ１１９に示す第１デコード処理が失敗すると（Ｓ１２１でＮｏ）、画像データには一次元コードおよび二次元コードのいずれも撮像されていないとして、上記ステップＳ１０１からの処理がなされる。なお、ステップＳ１１５に示す第２デコード処理およびステップＳ１１９に示す第１デコード処理を実施する制御部２１は、特許請求の範囲に記載の「デコード手段」の一例に相当し得る。
【００３８】
以上説明したように、本実施形態に係る光学的情報読取装置１０では、制御部２１にて実施される読取処理により、エリアセンサ３３にて生成された画像データが、画素データ群を１または２以上含むように構成される分割データに分割されて、メモリ２２のＲＡＭにＤＭＡ転送される。そして、分割データがメモリ２２のＲＡＭにＤＭＡ転送されるごとに、当該分割データに含まれる１つの画素データ群について、一次元コードを読み取るためのデコード処理が実施される。
【００３９】
これにより、一次元コードが撮像された場合には、全ての画素データ群がＤＭＡ転送されてメモリ２２のＲＡＭに記憶される前に、撮像された一次元コードの一部を構成する画素データ群に対するデコード処理により当該一次元コードがデコードされる。このため、全ての画素データ群がＤＭＡ転送されてメモリ２２のＲＡＭに記憶された後の画像データについてデコード処理を実施する場合と比較して、一次元コードを読み取るための読取時間を短縮することができる。
したがって、一次元コード専用の部品や二次元コード専用の部品を採用する必要もないので、部品点数を増加させることなく一次元コードおよび二次元コードの双方を読取可能であって一次元コードの読取時間を短縮することができる。
【００４０】
また、制御部２１にて実施される読取処理では、ＤＭＡ転送中に一次元コードの第１デコード処理が成功すると、ＤＭＡ転送が中止される。第１デコード処理が成功すると、ＤＭＡ転送されていない画素データはデコード処理が不要なデータであるので、デコード成功以降のＤＭＡ転送を中止することで、不要なデータ転送をなくすことができる。
【００４１】
特に、制御部２１にて実施される読取処理では、ＤＭＡ転送が全ての画素データ群について完了することで画像データがメモリ２２のＲＡＭに記憶されると、当該画像データに基づいて二次元コードを読み取るためのデコード処理が実施され（Ｓ１１５）、このデコード処理が失敗した場合（Ｓ１１７でＮｏ）に当該画像データに基づいて一次元コードを読み取るためのデコード処理が実施される。
【００４２】
撮像した情報コードが一次元コードおよび二次元コードのいずれであるか不明である場合には、通常、ＤＭＡ転送完了後の画像データについて、一次元コードを読み取るためのデコード処理が実施され、このデコード処理が失敗した場合に当該画像データに基づいて二次元コードを読み取るためのデコード処理が実施される。一次元コードを読み取るためのデコード処理の方が、二次元コードを読み取るためのデコード処理よりも短時間で完了するからである。
【００４３】
本実施形態では、ＤＭＡ転送が完了した画像データは、一次元コードが撮像されている可能性が低く逆に二次元コードが撮像されている可能性が高いため、二次元コードを読み取るためのデコード処理を一次元コードを読み取るためのデコード処理よりも先に実施することで、二次元コードの読取時間を短縮することができる。
【００４４】
［第２実施形態］
次に、本第２実施形態に係る光学的情報読取装置について、図６および図７を参照して説明する。図６は、第２実施形態において制御部２１にて実行される読取処理の流れを例示するフローチャートである。図７は、画像データＧを区分けした画像領域ごとの明暗変化率の変化を説明する説明図であり、図７（Ａ）は、一次元コードＣ１および二次元コードＣ２が撮像された画像データＧを示し、図７（Ｂ）は、図７（Ａ）に示す画像データＧの画像領域ごとの明暗変化率を示す。なお、図７（Ｂ）では、明暗変化率を３段階で例示しており、明暗変化率が低い第１段階の画像領域にはハッチング等を付さず、明暗変化率が比較的高い第２段階の画像領域にはハッチングを付して図示し、第２段階の画像領域よりもさらに明暗変化率が高い第３段階の画像領域にはクロスハッチングを付して図示している。
【００４５】
本第２実施形態では、読取時間をさらに短縮するため、上述した読取処理について図４に示すフローチャートに代えて図６に示すフローチャートに基づいて演算処理する点が、上記第１実施形態に係る光学的情報読取装置と主に異なる。したがって、第１実施形態の光学的情報読取装置と実質的に同一の構成部分には、同一符号を付し、その説明を省略する。
【００４６】
一次元コードや二次元コードの情報コードは、複数の白色パターンおよび黒色パターンが配列されて構成されることから、情報コードが撮像された画像データでは、情報コードに相当するコード画像領域の明暗変化率がその周辺の画像領域の明暗変化率と比較して大きくなる。ここで、明暗変化率は、画像データを等分割した所定の画像領域内での明色領域と暗色領域とが混在する個数が多くなるほど大きくなるものである。
【００４７】
例えば、図７（Ａ）に例示するように、一次元コードＣ１および二次元コードＣ２が撮像された画像データＧでは、当該画像データＧを複数の画像領域（例えば、３２画素単位）に区分けして画像領域ごとに明暗変化率を求めると、図７（Ｂ）に例示するようになる。すなわち、一次元コードＣ１の一部が撮像された画像領域や二次元コードＣ２の一部が撮像された画像領域では、単なる背景等が撮像された他の画像領域と比較して、明暗変化率が大きくなる。
【００４８】
そこで、本実施形態における読取処理では、上記指示待ち時間を利用して、分割データがメモリ２２のＲＡＭに記憶されるごとにその分割データについて明暗変化率を求めて記憶し、転送が完了した画像データのうち情報コードの撮像が推定される程度に明暗変化率が大きくなる画像領域群についてデコード処理を実施する。明暗変化率が大きな画像領域群に情報コードが撮像されている可能性が高いため、当該画像領域群についてデコード処理を実施することで、画像データの全ての領域についてデコード処理を実施する場合と比較して、情報コードの読取時間をさらに短縮できるからである。
【００４９】
以下、本実施形態において制御部２１にて実行される読取処理について、図６に示すフローチャートを参照して詳細に説明する。
１つの分割データについてメモリ２２のＲＡＭへの転送が完了したことから図６のステップＳ１０５にてＹｅｓと判定されると、ステップＳ２０１に示す明暗変化率算出処理がなされる。この処理では、ＲＡＭへの転送が完了した分割データを複数の画像領域に分けてそれぞれの画像領域について明暗変化率が算出される。続いて、ステップＳ２０３に示す明暗変化率記憶処理がなされる。この処理では、上述のように算出された画像領域ごとの明暗変化率がメモリ２２に記憶される。そして、ステップＳ１０９に示す第１デコード処理が失敗する場合には（Ｓ１１１でＮｏ）、全分割データの転送が完了するまで、転送が完了した分割データについて画像領域ごとの明暗変化率が算出されてメモリ２２に記憶される。なお、上記明暗変化率算出処理および明暗変化率記憶処理を実施する制御部２１は、特許請求の範囲に記載の「明暗変化率設定手段」の一例に相当し得る。
【００５０】
そして、ステップＳ１０９に示す第１デコード処理が成功することなく全分割データの転送が完了すると（Ｓ１１３でＹｅｓ）、ステップＳ２０５に示すコード推定領域設定処理がなされる。この処理では、メモリ２２に記憶されている各分割データの画像領域ごとの明暗変化率に基づいて、転送が完了した画像データのうち情報コードの撮像が推定される程度に明暗変化率が大きくなる画像領域群を含めるようにコード推定領域Ｇｃが設定される（図７（Ｂ）参照）。なお、転送が完了した画像データのうち情報コードの撮像が推定される程度に明暗変化率が大きくなる画像領域が一定数以上ない場合には、画像データＧの全てをコード推定領域Ｇｃとしてもよいし、逆にデコード失敗としてステップＳ１０１からの処理を実施してもよい。また、上記コード推定領域設定処理を実施する制御部２１は、特許請求の範囲に記載の「コード推定領域設定手段」の一例に相当し得る。
【００５１】
続いて、ステップＳ１１５ａに示す第２デコード処理がなされ、上述のように設定されたコード推定領域Ｇｃについて二次元コードを読み取るためのデコード処理が実施される。また、この第２デコード処理が失敗した場合には（Ｓ１１７でＮｏ）、ステップＳ１１９ａに示す第１デコード処理がなされ、上述のように設定されたコード推定領域Ｇｃについて一次元コードを読み取るためのデコード処理が実施される。
【００５２】
以上説明したように、本実施形態に係る光学的情報読取装置１０では、分割データがＤＭＡ転送されるごとに、当該分割データを複数の領域に分けた画像領域ごとに明暗変化率が設定されてメモリ２２に記憶される。そして、画像データがメモリ２２に記憶されると、当該画像データのうち情報コードの撮像が推定される程度に明暗変化率が大きな画像領域を含むようにコード推定領域Ｇｃが設定される。そして、このようにコード推定領域Ｇｃが設定されると、当該コード推定領域Ｇｃについて二次元コードを読み取るためのデコード処理が実施され、このデコード処理が失敗した場合に当該当該コード推定領域Ｇｃについて一次元コードを読み取るためのデコード処理が実施される。
【００５３】
このように、画像データのうち情報コードの撮像が推定される程度に明暗変化率が大きな画像領域を含むようにコード推定領域Ｇｃを設定し、このコード推定領域Ｇｃについて情報コードを読み取るためのデコード処理を実施することで、画像データの全ての領域についてデコード処理を実施する場合と比較して、情報コードの読取時間をさらに短縮することができる。特に、画像領域ごとの明暗変化率は、ＤＭＡ転送中に設定されているので、コード推定領域Ｇｃを設定するための処理時間を短縮することができる。
【００５４】
なお、本発明は上記各実施形態に限定されるものではなく、例えば、以下のように具体化してもよい。
（１）読取処理では、分割データがメモリ２２のＲＡＭにＤＭＡ転送されるごとに、当該分割データに含まれる１つの画素データ群について、一次元コードを読み取るためのデコード処理が実施されることに限らず、分割データがＲＡＭにＤＭＡ転送される回数が所定回数以上になるごとに、所定回数以上となるまでに転送完了した画素データ群の１つについて、一次元コードを読み取るためのデコード処理が実施されてもよい。
【００５５】
（２）上記第２実施形態の変形例として、読取処理のステップＳ１０７に示す画素データ群抽出処理では、明暗変化率が大きな画像領域を含むように１つの画素データ群を抽出してもよい。この場合、明暗変化率が大きな画像領域を一定数以上含むように画素データ群を抽出できない場合には、この分割データには一次元コードの一部が撮像されている可能性が低いとして、処理負荷を軽減するために、ステップＳ１０９に示す第１デコード処理を実施することなくステップＳ１１３以降の処理を実施してもよい。
【符号の説明】
【００５６】
１０…光学的情報読取装置
２１…制御部（デコード手段，明暗変化率設定手段，コード推定領域設定手段）
２２…メモリ（記憶手段）
３０…情報コード読取部
３３…エリアセンサ（撮像手段）
４０…ＦＩＦＯ回路（データ転送手段）
Ｃ，Ｃ１，Ｃ２…情報コード
Ｇ…画像データ
Ｇｃ…コード推定領域
【図１】
2014059712.tif 000003
【図２】
2014059712.tif 000004
【図３】
2014059712.tif 000005
【図４】
2014059712.tif 000006
【図５】
2014059712.tif 000007
【図６】
2014059712.tif 000008
【図７】
2014059712.tif 000009