(57)【特許請求の範囲】
【請求項１】
２進コードで表されるデータをセル化して、２次元のマトリックス上にパターンとして配置した２次元コードそれぞれを、連続して読み取り可能な２次元コード読取装置であって、
繰り返し２次元画像を検出する２次元画像検出手段と、
前記２次元画像検出手段にて検出された２次元画像をフレーム毎に記憶する複数の画像記憶手段と、
前記複数の画像記憶手段の内から１つの画像記憶手段を順次選択して、該選択された画像記憶手段に、前記２次元画像検出手段から繰り返し検出される２次元画像を記憶する画像記憶制御手段と、
前記２次元画像検出手段にて検出された２次元画像から所定の位置決めシンボルのパターンの存在を検出する位置決めシンボルパターン検出手段と、
前記シンボルパターン検出手段にて検出された位置決めシンボルのパターンの位置をフレーム毎に記憶する複数のシンボルパターン記憶手段と、
前記シンボルパターン記憶手段に記憶されている位置決めシンボルのパターンの位置に基づいて、記憶された順番に、前記複数の画像記憶手段から２次元画像データを読み出して該２次元画像データが表しているコードを解読する解読手段と、を備えるとともに、
前記解読手段は、前記位置決めシンボルパターン記憶手段に記憶されている位置決めシンボルパターンの位置のうち、前記画像記憶手段から読み出した２次元画像データについての位置決めシンボルパターンの位置が、あらかじめ定められた適切な位置であるか否かを判定するとともに、該判定で適切な位置であると最初に判定した場合であれば、前記画像記憶手段から読み出した２次元画像データが表しているコードを解読するのに対し、前記判定で適切な位置であると連続して判定した場合であれば、前記画像記憶手段から読み出した２次元画像データが表しているコードの解読を行わない、ように構成されている
ことを特徴とする２次元コード読取装置。
【請求項２】
前記画像記憶制御手段は、前記２次元画像検出手段から繰り返し検出される２次元画像を、閾値を用いて２値化する２値化処理手段と、
前記複数の画像記憶手段の内から１つの画像記憶手段を順次選択して、該選択された画
像記憶手段に、前記２値化処理手段にて２値化された２次元画像を記憶する記憶処理手段と、を備えた
ことを特徴とする請求項１記載の２次元コード読取装置。
【請求項３】
前記２値化処理手段は、前記２次元画像検出手段から繰り返し検出される２次元画像を、１フレーム毎に変化する閾値を用いて２値化する
ことを特徴とする請求項２記載の２次元コード読取装置。
【請求項４】
前記２値化処理手段は、前記２次元画像検出手段から繰り返し検出される２次元画像を、記憶される前記画像記憶手段に応じて設定された異なる閾値を用いて２値化する
ことを特徴とする請求項２記載の２次元コード読取装置。
【請求項５】
前記２値化処理手段は、前記２次元画像検出手段から繰り返し検出される２次元画像を、該２次元画像の信号をなまし処理することにより得た閾値を用いて２値化する
ことを特徴とする請求項２記載の２次元コード読取装置。
【請求項６】
前記なまし処理による前記２次元画像の信号に対する追従の速さを、１フレーム毎に変化させる
ことを特徴とする請求項５記載の２次元コード読取装置。
【請求項７】
前記なまし処理による前記２次元画像の信号に対する追従の速さを、記憶される前記画像記憶手段に応じて変化させる
ことを特徴とする請求項５記載の２次元コード読取装置。
【請求項８】
２進コードで表されるデータをセル化して、２次元のマトリックス上にパターンとして配置した２次元コードを読み取るための２次元コード読取装置であって、
２次元画像を検出する２次元画像検出手段と、
前記２次元画像検出手段にて検出された２次元画像をフレーム毎に記憶する複数の画像記憶手段と、
前記２次元画像検出手段から繰り返し検出される２次元画像の同一フレームを、前記画像記憶手段の数の種類の閾値を用いてそれぞれ２値化して、複数の２次元画像データを得る２値化処理手段と、
前記２値化手段にて２値化して得られた複数の２次元画像データを前記複数の画像記憶手段にそれぞれ記憶する記憶処理手段と、
前記複数の画像記憶手段から順番に２次元画像データを読み出して該２次元画像データが表しているコードを解読する解読手段と、
前記解読手段による全ての画像記憶手段に記憶されている２次元画像データの解読が終了した場合に、前記２次元画像検出手段に次の画像を検出させる画像検出制御手段と、
前記２次元画像検出手段にて検出された２次元画像から所定の位置決めシンボルのパターンの存在を検出する位置決めシンボルパターン検出手段と、
前記シンボルパターン検出手段にて検出された位置決めシンボルのパターンの位置をフレーム毎に記憶する複数のシンボルパターン記憶手段と、を備えるとともに、
前記解読手段は、前記位置決めシンボルパターン記憶手段に記憶されている位置決めシンボルパターンの位置のうち、前記画像記憶手段から読み出した２次元画像データについての位置決めシンボルパターンの位置が、あらかじめ定められた適切な位置であるか否かを判定するとともに、該判定で適切な位置であると最初に判定した場合であれば、前記画像記憶手段から読み出した２次元画像データが表しているコードを解読するのに対し、前記判定で適切な位置であると連続して判定した場合であれば、前記画像記憶手段から読み出した２次元画像データが表しているコードの解読を行わない、ように構成されている
ことを特徴とする２次元コード読取装置。
【請求項９】
２進コードで表されるデータをセル化して、２次元のマトリックス上にパターンとして配置した２次元コードを読み取るための２次元コード読取装置であって、
２次元画像を検出する２次元画像検出手段と、
前記２次元画像検出手段にて検出された２次元画像をフレーム毎に記憶する複数の画像記憶手段と、
前記２次元画像の信号に対する追従の速さを、記憶される前記画像記憶手段に応じて変化させたなまし処理を、前記２次元画像の信号に実施することにより得た閾値を用いて、前記２次元画像検出手段から繰り返し検出される２次元画像の同一フレームを、それぞれ２値化して、複数の２次元画像データを得る２値化処理手段と、
前記２値化手段にて２値化して得られた複数の２次元画像データを前記複数の画像記憶手段にそれぞれ記憶する記憶処理手段と、
前記複数の画像記憶手段から順番に２次元画像データを読み出して該２次元画像データが表しているコードを解読する解読手段と、
前記解読手段による全ての画像記憶手段に記憶されている２次元画像データの解読が終了した場合に、前記２次元画像検出手段に次の画像を検出させる画像検出制御手段と、
前記２次元画像検出手段にて検出された２次元画像から所定の位置決めシンボルのパターンの存在を検出する位置決めシンボルパターン検出手段と、
前記シンボルパターン検出手段にて検出された位置決めシンボルのパターンの位置をフレーム毎に記憶する複数のシンボルパターン記憶手段と、を備えるとともに、
前記解読手段は、前記位置決めシンボルパターン記憶手段に記憶されている位置決めシンボルパターンの位置のうち、前記画像記憶手段から読み出した２次元画像データについての位置決めシンボルパターンの位置が、あらかじめ定められた適切な位置であるか否かを判定するとともに、該判定で適切な位置であると最初に判定した場合であれば、前記画像記憶手段から読み出した２次元画像データが表しているコードを解読するのに対し、前記判定で適切な位置であると連続して判定した場合であれば、前記画像記憶手段から読み出した２次元画像データが表しているコードの解読を行わない、ように構成されている
ことを特徴とする２次元コード読取装置。
【請求項１０】
前記解読手段は、解読が成功した場合には、解読が成功したときと同じ閾値または解読が成功したときと同じなまし処理の追従の速さを用いて得られた２次元画像を、次回の複数の２次元画像の解読において最初に処理する対象とする
ことを特徴とする請求項２〜９のいずれかに記載の２次元コード読取装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、２進コードで表されるデータをセル化して、２次元のマトリックス上にパターンとして配置した２次元コードを読み取るための２次元コード読取装置に関する。
【０００２】
【従来の技術】
２次元コードは、バーコードに比べ、大量の情報を記録でき、情報が２次元的な広がりを持っているため、画像データの読み取りに、より大きな時間を必要とする。このような２次元コードの読取装置の例としては、特開平８−１８０１２５号公報に記載されているようなものが存在する。
【０００３】
この２次元コードの読取装置は図９のような構成であり、図１０（ａ）のような手順で２次元コードの読み取りを実行する。
すなわち、２次元コードの画像を検出したＣＣＤセンサ５０２からの画像信号を受けて、２値化回路５０４にて所定の基準レベルで２値化を行い、これを画像データとして一旦画像メモリー５０６に記憶した後、制御回路５０８が画像メモリー５０６に記憶された画像データに基づいて２次元コードの解読を実行する。なお、画像メモリー５０６には、クロック回路５１０およびアドレス設定回路５１２により、画像の２次元位置に応じたアドレスに、それぞれ２値化されたデータが記憶されている。
【０００４】
なお、２次元コードの解読を実行するためには、２次元コードの位置を確定させる必要があり、前記従来技術では、その一つの手法として、最初に特徴的な形状を持つ位置決めシンボルの存在を検査している。この位置決めシンボルの中心付近の画像データは、画像メモリー５０６に送られる時に、変化点検出回路５１４および特定寸法比率を検出する比検出回路５１６により検出され、その都度、位置決めシンボルが記憶される画像メモリー５０６のアドレスがアドレス記憶メモリー５１８に記憶されている。したがって、制御回路５０８は、その位置決めシンボルのアドレス付近の画像データを優先的に検査する。
【０００５】
位置決めシンボルが存在することが判ったら、制御回路５０８は、その個数が所定個数、例えば３個であるかどうか調べる。
位置決めシンボルの数が３個である場合は、制御回路５０８は、それぞれの位置決めシンボルの中心を求めることで２次元コードの位置を確定した後、データが記録されている領域の解読を実行する。
【０００６】
位置決めシンボルの数が３個でない場合は、２次元コードの画像の明るさに対して、画像データを２値化する基準となる閾値の設定が適切でないなどの理由により、メモリー上の画像データが２次元コードの画像を正しく表現していないと判断されるので、制御回路５０８は、データ処理を中止して、再びＣＣＤセンサからの画像データの検出を実行することになる。
【０００７】
１回目、２回目は画像データの読み取りに失敗し、３回目の画像データの検出で正しく２次元コードの読み取りが行われた場合の例を図１０（ｂ）に示す。
【０００８】
【発明が解決しようとする課題】
しかし、バーコードなどに比較して、２次元コードは、画像データ量が大きいので、画像データの読み取りに失敗した場合、時間のロスが大きい。
実際に種々の原因により、２次元コードの読み取りが１回では成功せず、２回、３回と読み取りをやり直すことがかなりの頻度で発生する。
【０００９】
このため、搬送中の荷物に付着されている２次元コードを読み取り、その情報により搬送制御を行うような場合、２次元コードの読み取りに失敗しても再度読み取りを行う時間的な余裕を持った速度で搬送することが必要となるが、２次元コードは画像データの読み取りに要する時間が長いということが不利に作用して、搬送速度を低く抑えなければならないなどの不都合が生じていた。
【００１０】
本発明は、画像データの読み取りのやり直しが発生した時に発生する時間のロスを最小限に抑え、高速読み取りが可能な２次元コード読取装置を提供することを目的とする。
【００１１】
【課題を解決するための手段及び発明の効果】
ここには、１つまたはそれ以上の発明が記載され、それぞれ以下に述べるような構成および効果を有する。
本発明の２次元コード読取装置は、
２進コードで表されるデータをセル化して、２次元のマトリックス上にパターンとして配置した２次元コードを読み取るための２次元コード読取装置であって、
繰り返し２次元画像を検出する２次元画像検出手段と、
前記２次元画像検出手段にて検出された２次元画像をフレーム毎に記憶する複数の画像記憶手段と、
前記複数の画像記憶手段の内から１つの画像記憶手段を順次選択して、該選択された画像記憶手段に、前記２次元画像検出手段から繰り返し検出される２次元画像を記憶する画像記憶制御手段と、
記憶された順番に、前記複数の画像記憶手段から２次元画像データを読み出して該２次元画像データが表しているコードを解読する解読手段と、
を備えたことを特徴とする。
【００１２】
前記２次元画像検出手段は、繰り返し２次元画像を検出するとともに、画像記憶制御手段は、繰り返し得られる２次元画像を複数の画像記憶手段に記憶している。この記憶に際しては、複数の画像記憶手段の内から１つの画像記憶手段を順次選択して、その選択された画像記憶手段に２次元画像を記憶している。すなわち、連続するフレームを同一の前記画像記憶手段に記憶しないようにしている。
【００１３】
このことにより、２次元画像検出手段が繰り返し画像を検出しても、画像記憶制御手段が他の画像記憶手段に記憶させている間に、解読手段は、既に２次元画像データが記憶されている画像記憶手段について、解読処理を行うことができる。
【００１４】
したがって、２次元画像検出手段は、解読手段の解読を待つことなく、次の２次元画像を検出して、その時に解読の対象となっていない画像記憶手段に記憶することができる。このため、何等かの原因、例えば、外乱光やノイズ等により２次元コードの読み取りに失敗しても、失敗したことが解読手段の解読により判明するまで待つことなく、次の２次元画像データは他の画像記憶手段に記憶されるので、解読手段は、大きなロス時間を間に置くことなく、迅速に次のフレームの２次元画像の解読処理に移ることができる。
【００１５】
このため、２次元コードが付着された荷物が高速に移動している場合でも、繰り返し取得した画像に基づいて高速に読み取り処理を繰り返すことができ、解読の失敗による２次元画像データ読み取りのやり直しが発生した時にも、発生する時間のロスを最小限に抑えることができ、２次元コードの高速な読み取りが可能となる。
【００１６】
この結果、荷物の搬送速度を高速にすることが可能となる。
更に、
前記２次元画像検出手段にて検出された２次元画像から所定の位置決めシンボルのパターンの存在を検出する位置決めシンボルパターン検出手段と、
前記シンボルパターン検出手段にて検出された位置決めシンボルのパターンの位置をフレーム毎に記憶する複数のシンボルパターン記憶手段と、
を備えるとともに、
前記解読手段は、前記シンボルパターン記憶手段に記憶されている位置決めシンボルのパターンの位置に基づいて、記憶された順番に、前記複数の画像記憶手段から２次元画像データを読み出して該２次元画像データが表しているコードを解読する構成とすることが、解読自体の高速な処理上好ましい。
【００１７】
なお、前記画像記憶制御手段としては、前記２次元画像検出手段から繰り返し検出される２次元画像を、閾値を用いて２値化する２値化処理手段と、前記複数の画像記憶手段の内から１つの画像記憶手段を順次選択して、該選択された画像記憶手段に、前記２値化処理手段にて２値化された２次元画像を記憶する記憶処理手段とを備えた構成とすることができる。
【００１８】
そして、この２値化処理手段としては、２次元画像検出手段から繰り返し検出される２次元画像を、１フレーム毎に変化する閾値を用いて２値化するように構成することができる。
このように構成することにより、例えば、２次元コードへの照明光が変化して、２次元画像を２値化するための閾値が不適切となることによる読み取りの失敗が生じたとしても、繰り返し検出される２次元画像を閾値を変化させつつ、２値化しているため、いずれかの閾値にて２値化が適切に行われる。しかも、上述のごとくの作用により、発生する時間のロスを最小限に抑えることができるので、その結果、２次元コードの高速な読み取りが可能となる。
【００１９】
なお、前記２値化処理手段は、２次元画像検出手段から繰り返し検出される２次元画像を、記憶される前記画像記憶手段に応じて設定された異なる閾値を用いて２値化するように構成しても良い。前述した１フレーム毎に変化する閾値を用いて２値化する場合と同様な効果を生じる。
【００２０】
また、前記２値化処理手段は、固定した閾値を用いる以外に、例えば、２次元画像検出手段から繰り返し検出される２次元画像を、該２次元画像の信号をなまし処理することにより得た閾値を用いて２値化することとしても良い。
この場合、なまし処理による２次元画像の信号に対する追従の速さを、１フレーム毎に変化させても良い。このように閾値の追従性の速さを変更しても、前述したごとく、２次元コードへの照明光が変化した場合の効果として、類似の効果が得られる。
【００２１】
また、なまし処理による２次元画像の信号に対する追従の速さを、記憶される画像記憶手段に応じて変化させる構成としても、同様である。
また、２次元コード読取装置は、
２次元画像を検出する２次元画像検出手段と、
前記２次元画像検出手段にて検出された２次元画像をフレーム毎に記憶する複数の画像記憶手段と、
前記２次元画像検出手段から繰り返し検出される２次元画像の同一フレームを、前記画像記憶手段の数の種類の閾値を用いてそれぞれ２値化して、複数の２次元画像データを得る２値化処理手段と、
前記２値化手段にて２値化して得られた複数の２次元画像データを前記複数の画像記憶手段にそれぞれ記憶する記憶処理手段と、
前記複数の画像記憶手段から順番に２次元画像データを読み出して該２次元画像データが表しているコードを解読する解読手段と、
前記解読手段による全ての画像記憶手段に記憶されている２次元画像データの解読が終了した場合に、前記２次元画像検出手段に次の画像を検出させる画像検出制御手段と、
を備えたものとして構成しても良い。
【００２２】
すなわち、この２次元コード読取装置では、一つの２次元画像データを複数の画像記憶手段に、異なる閾値にて２値化して格納している。
したがって、解読手段は、複数の画像記憶手段に一度に２次元画像データが記憶されるので、これらの２次元画像データを連続的に処理することが可能となる。しかも、それぞれ２値化の閾値が異なるため、一つの閾値により２値化された２次元画像データの読み取りに失敗しても、他の閾値による解読が成功する確率が非常に高い。このため、２次元コードの読み取りを高速に行うことが可能となる。
【００２３】
この場合も、前述した位置決めシンボルパターン検出手段および複数のシンボルパターン記憶手段を備えて、解読手段に位置決めシンボルのパターンの位置に基づいて２次元画像データが表しているコードを解読させる構成としても良く、同様な効果が得られる。
【００２４】
前記２値化処理手段としては、２次元画像の信号に対する追従の速さを、記憶される画像記憶手段に応じて変化させたなまし処理を、２次元画像の信号に実施することにより得た閾値を用いて、２次元画像検出手段から繰り返し検出される２次元画像の同一フレームを、それぞれ２値化して、複数の２次元画像データを得るものとしても良く、前述したごとく、２次元コードへの照明光が変化した場合の効果として、類似の効果が得られる。
【００２５】
なお、解読手段は、一つの画像記憶手段に記憶されている２次元画像データの解読が終了した場合に、次の２次元画像を前記２次元画像検出手段が検出していない場合には、その検出を待つように構成しても良い。
また、解読手段による全ての画像記憶手段に記憶されている２次元画像データの解読が終了した場合に、前記２次元画像検出手段に次の画像を検出させるように指示する画像検出制御手段を設けても良い。
【００２６】
この場合も、前述した位置決めシンボルパターン検出手段および複数のシンボルパターン記憶手段を備えて、解読手段に位置決めシンボルのパターンの位置に基づいて２次元画像データが表しているコードを解読させる構成としても良く、同様な効果が得られる。
【００２７】
なお、解読手段は、解読が成功した場合には、解読が成功したときと同じ閾値または解読が成功したときと同じなまし処理の追従の速さを用いて得られた２次元画像を、次回の複数の２次元画像の解読において最初に処理する対象とするように学習制御しても良く、このような学習制御を行うことにより、読み取りがより迅速にできるようになる。
【００２８】
なお、このような２次元コード読取装置の各手段をコンピュータシステムにて実現する機能は、例えば、コンピュータシステム側で起動するプログラムとして備えられる。このようなプログラムの場合、例えば、フロッピーディスク（登録商標）、光磁気ディスク、ＣＤ−ＲＯＭ等の記憶媒体に記憶し、必要に応じてコンピュータシステムにロードして起動することにより用いることができる。この他、ＲＯＭやバックアップＲＡＭ（不揮発性ＲＡＭも含む）を記憶媒体として前記プログラムを記憶しておき、このＲＯＭあるいはバックアップＲＡＭをコンピュータシステムに組み込んで用いても良い。
【００２９】
【発明の実施の形態】
［実施の形態１］
図１のブロック図に、上述した発明のいくつかが適用された２次元コード読取装置２の概略構成を示す。
【００３０】
２次元コード読取装置２は、ＣＣＤ４、２値化回路６、画像メモリ８，１０，１２、クロック信号出力回路１４、アドレス発生回路１６、変化点検出回路１８、比検出回路２０、アドレス記憶メモリ２２，２４，２６および制御回路２８から構成されている。
【００３１】
制御回路２８は、ＣＰＵ、ＲＯＭ、ＲＡＭ、Ｉ／Ｏ等を備えたコンピュータシステムとして構成され、ＲＯＭに記憶されているプログラムに従って、２次元コード読取装置２の各構成を制御している。なお、ＲＯＭの代りに不揮発性ＲＡＭにプログラムを記憶しておいても良い。
【００３２】
ここで、２次元コード読取装置２にて検出される２次元コードの一例を図２に示す。この２次元コード５２は、白色の台紙５３の上に印刷されており、３個の位置決め用シンボル５４、データ領域５６、原点セルＣstから構成されている。これら全体はセル数が縦横同数（２１セル×２１セル）の正方形状に配置されている。各セルは、光学的に異なった２種類のセルから選ばれており、図および説明上では白（明）・黒（暗）で区別して表す。なお、図２では便宜上、データ領域５６のデータセルのパターンは省略している。
【００３３】
位置決め用シンボル５４は、２次元コード５２の４つの頂点の内、３つに配置されている。そのセルの明暗配置は、黒部からなる枠状正方形５４ａ内の中心に白部からなる縮小した枠状正方形５４ｂが形成され、その内の中心に黒部からなる更に縮小した正方形５４ｃが形成されているパターンである。
【００３４】
制御回路２８は、以下に述べるごとくの読み取り制御を行う。
まず制御回路２８からの指示により、ＣＣＤ４が２次元コード５２が通過する位置の２次元画像を検出する。ＣＣＤ４は、２次元画像を検出すると、図４（ａ）に示すごとくの多段階のレベルからなる信号にて２次元画像データを出力する。この２次元画像データを、２値化回路６が制御回路２８から指示された閾値にて２値化して、図４（ｂ）に示すごとくの１（ハイ）／０（ロー）の２つのレベルからなる信号に変換する。
【００３５】
一方、ＣＣＤ４から出力される同期パルスに応じて、クロック信号出力回路１４がＣＣＤ４が出力する２次元画像データの画素より細かいクロックパルスを出力する。アドレス発生回路１６はこのクロックパルスをカウントして、画像メモリ８，１０，１２に対するアドレスを発生させる。２値化回路６からの２値化された２次元画像データは、制御回路２８がアドレスのオフセット値をアドレス発生回路１６に与えることにより、画像メモリ８，１０，１２の内の１番目の画像メモリ８のアドレスをアドレス発生回路１６に発生させることにより、２次元画像データを８ビット単位で１番目の画像メモリ８に書き込ませる。
【００３６】
一方、２値化回路６からの信号の「１」から「０」への変化あるいは「０」から「１」への変化時に、変化点検出回路１８は、比検出回路２０にパルス信号を出力する。比検出回路２０は、変化点検出回路１８からのパルス信号入力から次のパルス信号入力までに、クロック信号出力回路１４から出力されたクロックパルスをカウントすることにより、２次元画像の中の明（１）の連続する長さおよび暗（０）の連続する長さを求める。この長さの比から、２次元コード５２の位置決め用シンボル５４に該当するパターンを検出する。
【００３７】
図３（Ａ）に示すように、位置決め用シンボル５４のほぼ中心を代表的な角度で横切るＣＣＤ４の走査線（ａ），（ｂ），（ｃ）での明暗パターンは、図３（Ｂ）に示すごとく、すべて同じ明暗成分比を持つ構造になっている。すなわち、位置決め用シンボル５４の中心を横切るそれぞれの走査線（ａ），（ｂ），（ｃ）の明暗成分比は暗：明：暗：明：暗＝１：１：３：１：１となっている。勿論、走査線（ａ），（ｂ），（ｃ）の中間の角度の走査線においても比率は１：１：３：１：１である。また、図３（Ａ）の図形が、ＣＣＤ４側から斜めの面に配置されていたとしても、前記走査線（ａ），（ｂ），（ｃ）の明暗成分比は暗：明：暗：明：暗＝１：１：３：１：１となる。なお、図３（Ｂ）は、２値化回路６からの２値化された信号に該当する。
【００３８】
したがって、比検出回路２０は、この「１：１：３：１：１」なる明暗成分比を検出し、検出した場合は、そのタイミングにアドレス発生回路１６にて指示されている１番目の画像メモリ８のアドレスを１番目のアドレス記憶メモリ２２に記憶する。
【００３９】
したがって、ＣＣＤ４が１フレーム分の２次元画像データを検出すると、１番目の画像メモリ８に２値化された２次元画像データが記憶され、１番目のアドレス記憶メモリ２２には、位置決め用シンボル５４が検出されれば、その時にアドレス発生回路１６が出力している１番目の画像メモリ８のアドレスが記憶されている。
【００４０】
なお、最初の２次元画像の１フレーム分がＣＣＤ４により検出されて２値化回路６へ出力されたことが、ＣＣＤ４からの信号により制御回路２８が判断すると、制御回路２８は、続けて、ＣＣＤ４に次の１フレームの２次元画像の検出を指示する。したがって、ＣＣＤ４からは、繰り返して２次元画像が２値化回路６に出力され、上述したごとくの記憶処理が行われる。
【００４１】
ただし、制御回路２８は、ＣＣＤ４に２次元画像の検出を指示する毎に、アドレス発生回路１６へのオフセット値を切り替えて、１フレーム毎に順次、１番目の画像メモリ８、２番目の画像メモリ１０、３番目の画像メモリ１２へと、２次元画像を記憶する画像メモリを切り替える。３番目の画像メモリ１２への２次元画像の記憶が終了すれば、１番目の画像メモリ８に戻り、この順序で切り替えを繰り返す。同様にして、アドレス記憶メモリ２２〜２６についても切り替える。なお、制御回路２８は、アドレス発生回路１６へのオフセット値を切り替える毎に、２値化回路６に対しても、２値化に使用される閾値を切り替えている。すなわち、異なる値の３つの閾値を準備して、記憶対象となる画像メモリ８〜１２に応じて３つの閾値から選択して切り替えている。このことにより、画像メモリ８〜１２毎に異なる２値化レベルで２値化された２次元画像データが記憶される。
【００４２】
制御回路２８は、最初に、１番目の画像メモリ８に２次元画像データが記憶され、１番目のアドレス記憶メモリ２２に位置決め用シンボル５４のアドレスが記憶された後、ＣＣＤ４に対して次の２次元画像の検出を指示し、続いて１番目の画像メモリ８および１番目のアドレス記憶メモリ２２に対する判定・解読処理を開始する。
【００４３】
すなわち、図５（ａ）のタイミングチャートに示すごとく、ハード的に行われる１番目の画像メモリ８および１番目のアドレス記憶メモリ２２への記憶処理Ｍ１が終了すると、制御回路２８の指示により直ちに２番目の画像メモリ１０および２番目のアドレス記憶メモリ２４への記憶処理Ｍ２が開始されるが、この記憶処理Ｍ２と並行して、制御回路２８は、１番目の画像メモリ８および１番目のアドレス記憶メモリ２２に対してアクセスし、その記憶内容から位置決め用シンボル５４が適切な位置に、３つ存在しているか否かの判定処理Ｓ１を行う。
【００４４】
２次元画像データ内に、適切に３つの位置決め用シンボル５４が存在していれば、引き続いて、制御回路２８は、位置決め用シンボル５４の位置に基づいて、１番目の画像メモリ８の２次元画像データ内の各セル位置を決定し、その位置から１／０を判断し、２次元コード５２が表しているコード内容を読み取る解読処理Ｄ１を行う。
【００４５】
この解読処理Ｄ１の間に、次の２番目の画像メモリ１０および２番目のアドレス記憶メモリ２４への記憶処理Ｍ２が終了しているが、この２番目の画像メモリ１０および２番目のアドレス記憶メモリ２４に対する判定処理Ｓ２は、図示するごとく解読処理Ｄ１の終了後に行われる。また、３番目の画像メモリ１２および３番目のアドレス記憶メモリ２６への記憶処理Ｍ３のための、ＣＣＤ４への指示は、解読処理Ｄ１の間に、割り込み処理にて行われるが、指示処理は短い処理であり、解読処理Ｄ１の処理速度にほとんど影響しない。
【００４６】
図５（ａ）にて示す例は、最初の解読処理Ｄ１にて読み取りに成功した例を示しており、記憶処理Ｍ２，Ｍ３，Ｍ１１にて記憶された２次元画像データに対しては、判定処理Ｓ２，Ｓ３，Ｓ１１のみで終了する。この判定処理Ｓ２，Ｓ３，Ｓ１１を実行するのは、荷物に付着されてＣＣＤ４の前を通過してゆく２次元コード５２の２次元画像は、１フレームで終わるのではなく、複数フレーム分が連続して、ＣＣＤ４にて検出されるためである。
【００４７】
すなわち、解読処理Ｄ１の成功の後、判定処理Ｓ２，Ｓ３，Ｓ１１にて連続して位置決め用シンボル５４が検出されていることで、同一の２次元コード５２を捉え続けていることが判断できるので、判定処理Ｓ２，Ｓ３，Ｓ１１のみ行い、解読処理Ｄ２，Ｄ３，Ｄ１１は行わないのである。
【００４８】
この後に、記憶処理にて得られた２次元画像データに基づいて、解読処理まで行われるのは、判定処理にて、ある数のフレーム分、しばらく、位置決め用シンボル５４が検出されなかった後である。しばらく、位置決め用シンボル５４が検出されないと、２次元コード５２が付着された荷物がＣＣＤ４の前を通過して検出されなくなったことが判り、その後、位置決め用シンボル５４が検出され始めると、別の荷物がＣＣＤ４の前に来て、その２次元コード５２がＣＣＤ４にて検出されていると判断できるからである。
【００４９】
なお、破線は記憶処理の流れ、一点鎖線は制御回路２８による判定・解読処理の流れを示している。
図５（ｂ）は、判定処理Ｓ１，Ｓ２にては、適切な３つの位置決め用シンボル５４の検出ができず、３番目の画像メモリ１２と３番目のアドレス記憶メモリ２６とに対して行われる３番目の判定処理Ｓ３にて、適切な３つの位置決め用シンボル５４が検出され、解読処理Ｄ３にて解読に成功した例を示している。従来技術として示した図１０（ｂ）も同じく３番目の解読処理Ｄ３にて解読に成功した例であるが、従来例に比較して図５（ｂ）の場合は、判定処理Ｓ１，Ｓ２分の処理時間が短くなっていることが判る。
【００５０】
図５（ｃ）は、２次元コード５２を付着した荷物がＣＣＤ４の前を通過せず、連続して適切な３つの位置決め用シンボル５４の検出ができない例を示している。
本実施の形態１は、このように、ＣＣＤ４は制御回路２８の指示により、繰り返し２次元画像を検出するとともに、順次、サイクリックに、画像メモリ８〜１２およびアドレス記憶メモリ２２〜２６が選択されて、その選択された画像メモリ８〜１２に２次元画像を記憶し、アドレス記憶メモリ２２〜２６に位置決めシンボルのアドレスを記憶している。すなわち、繰り返し取得されるフレームを同一の画像メモリ８〜１２およびアドレス記憶メモリ２２〜２６に記憶しないようしている。
【００５１】
このことにより、ＣＣＤ４が繰り返し画像を検出しても、アドレス発生回路１６により、他の画像メモリ８〜１２およびアドレス記憶メモリ２２〜２６に記憶させている間に、制御回路２８は、既に２次元画像データが記憶されている画像メモリ８〜１２およびアドレス記憶メモリ２２〜２６について、判定・解読処理を行うことができる。
【００５２】
したがって、ＣＣＤ４は、制御回路２８による判定・解読を待つことなく、次の２次元画像を検出して、その時に解読の対象となっていない画像メモリ８〜１２およびアドレス記憶メモリ２２〜２６に記憶することができる。このため、何等かの原因、例えば、外乱光やノイズ等により２次元コード５２の読み取りに失敗しても、失敗したことが制御回路２８の判定・解読処理により判明するまで待つことなく、次の２次元画像データは他の画像メモリ８〜１２およびアドレス記憶メモリ２２〜２６に取り込まれるので、制御回路２８は、大きなロス時間を間に置くことなく、迅速に次のフレームの２次元画像の判定・解読処理に移ることができる。
【００５３】
このため、２次元コード５２が付着された荷物が高速に移動している場合でも、繰り返し取得した画像に基づいて、制御回路２８は高速に判定・解読処理を繰り返すことができ、読み取りの失敗による２次元画像データ検出のやり直しが発生した時にも、発生する時間のロスを最小限に抑えることができ、２次元コード５２の高速な読み取りが可能となる。この結果、荷物の搬送速度を高速にすることが可能となる。
【００５４】
また、本実施の形態１の２次元コード読取装置２は、ＣＣＤ４から繰り返し検出される２次元画像を、画像メモリ８〜１２に応じて、異なる閾値を用いて２値化するように２値化回路６に指示している。このように構成することにより、例えば、２次元コード５２への照明光が変化して、２次元画像を２値化するための閾値が不適切となることによる解読の失敗が生じたとしても、繰り返し検出される２次元画像を閾値を変化させつつ、２値化しているため、いずれかの閾値にて２値化が適切に行われる。しかも、このように解読処理を繰り返しても、上述のごとく、記憶処理している際に判定・解読処理を行うことができるので、発生する時間のロスを最小限に抑えることができる。
【００５５】
なお、閾値は、画像メモリ８〜１２に対応させなくても、ＣＣＤ４から得られる２次元画像の１フレーム毎に閾値を切り替えて２値化するように構成することもでき、同様な効果を生じる。
ここで、ＣＣＤ４とこのＣＣＤ４に検出を指示する制御回路２８が２次元画像検出手段に該当し、画像メモリ８〜１２が複数の画像記憶手段に該当し、２値化回路６が２値化処理手段に該当し、アドレス発生回路１６とこのアドレス発生回路１６にオフセット値を与える制御回路２８が記憶処理手段に該当し、制御回路２８が解読手段に該当し、変化点検出回路１８および比検出回路２０が位置決めシンボルパターン検出手段に該当し、アドレス記憶メモリ２２〜２６が複数のシンボルパターン記憶手段に該当する。
【００５６】
［実施の形態２］
図６のブロック図に、実施の形態２として上述した発明のいくつかが適用された２次元コード読取装置１０２の概略構成を表す。
２次元コード読取装置１０２は、ＣＣＤ１０４、２値化回路１０６ａ，１０６ｂ，１０６ｃ、画像メモリ１０８，１１０，１１２、クロック信号出力回路１１４、アドレス発生回路１１６ａ，１１６ｂ，１１６ｃ、変化点検出回路１１８ａ，１１８ｂ，１１８ｃ、比検出回路１２０ａ，１２０ｂ，１２０ｃ、アドレス記憶メモリ１２２，１２４，１２６および制御回路１２８から構成されている。
【００５７】
この各構成のハード的な部分については、実施の形態１における２次元コード読取装置２の、ＣＣＤ４、２値化回路６、画像メモリ８，１０，１２、クロック信号出力回路１４、アドレス発生回路１６、変化点検出回路１８、比検出回路２０、アドレス記憶メモリ２２，２４，２６および制御回路２８と同じであるので、その詳細な説明は省略する。
【００５８】
実施の形態１の２次元コード読取装置２と異なるのは、ハード的には、２値化回路１０６ａ〜１０６ｃ、アドレス発生回路１１６ａ〜１１６ｃ、変化点検出回路１１８ａ〜１１８ｃおよび比検出回路１２０ａ〜１２０ｃが、それぞれ３つ設けられ、画像メモリ１０８，１１０，１１２およびアドレス記憶メモリ１２２，１２４，１２６と合わせて、それぞれ１つずつが組となっている点である。
【００５９】
ソフト的には、図７のタイミングチャートに示すような処理が実行される。
すなわち、制御回路１２８は、図７（ａ）に示すごとく、３つの画像メモリ１０８〜１１２および３つのアドレス記憶メモリ１２２〜１２６への記憶処理Ｍ１，Ｍ２，Ｍ３が同時並行的に行われ、この記憶処理Ｍ１，Ｍ２，Ｍ３が終了すると、直ちに、制御回路１２８は、１番目の画像メモリ１０８および１番目のアドレス記憶メモリ１２２に対してアクセスして、その記憶内容から位置決め用シンボル５４が、適切な位置に３つ存在しているか否かの判定処理Ｓ１を行う。
【００６０】
２次元画像データ内に、適切に３つの位置決め用シンボル５４が存在していれば、制御回路１２８は、次に、位置決め用シンボル５４の位置に基づいて、１番目の画像メモリ１０８の２次元画像データ内の２次元コード５２の各セル位置を決定し、その位置から１／０を判定して、２次元コード５２が表しているコード内容を読み取る解読処理Ｄ１を行う。
【００６１】
図７（ａ）にて示す例は、最初の解読処理Ｄ１にて解読に成功した例を示しており、記憶処理Ｍ２，Ｍ３にて記憶された２次元画像データに対しては、何等の処理も行わない。
そして、再度、３つの画像メモリ１０８〜１１２および３つのアドレス記憶メモリ１２２〜１２６への記憶処理Ｍ１１，Ｍ１２，Ｍ１３が同時並行的に行われる。この記憶処理Ｍ１１，Ｍ１２，Ｍ１３の直後には、１番目の画像メモリ１０８および１番目のアドレス記憶メモリ１２２について位置決め用シンボル５４が適切な位置に３つ存在しているか否かの判定処理Ｓ１１が行われる。存在していると判定されれば、同一の２次元コード５２を検出し続けていることを判断できるので、更に、３つの画像メモリ１０８〜１１２および３つのアドレス記憶メモリ１２２〜１２６への記憶処理Ｍ２１，Ｍ２２，Ｍ２３が同時並行的に行われる。図７（ａ）はこの状態を表している。
【００６２】
もし、判定処理Ｓ１１にて、１番目の画像メモリ１０８および１番目のアドレス記憶メモリ１２２について位置決め用シンボル５４が適切な位置に３つ存在していないと判定された場合には、２番目の画像メモリ１１０および２番目のアドレス記憶メモリ１２４について位置決め用シンボル５４が適切な位置に３つ存在しているか否かが判定される。ここで、存在していると判定されれば、やはり、同一の２次元コード５２を検出し続けていることを判断できるので、３つの画像メモリ１０８〜１１２および３つのアドレス記憶メモリ１２２〜１２６への記憶処理Ｍ２１，Ｍ２２，Ｍ２３が同時並行的に行われる。
【００６３】
もし、２番目の画像メモリ１１０および２番目のアドレス記憶メモリ１２４について位置決め用シンボル５４が適切な位置に３つ存在していないと判定された場合には、３番目の画像メモリ１１２および３番目のアドレス記憶メモリ１２６について位置決め用シンボル５４が適切な位置に３つ存在しているか否かが判定される。ここで、存在していると判定されれば、やはり、同一の２次元コード５２を検出し続けていることを判断できるので、３つの画像メモリ１０８〜１１２および３つのアドレス記憶メモリ１２２〜１２６への記憶処理Ｍ２１，Ｍ２２，Ｍ２３が同時並行的に行われる。
【００６４】
なお、図７（ｂ）は、判定処理Ｓ１，Ｓ２にては、適切な３つの位置決め用シンボル５４の検出ができず、３番目の画像メモリ１１２と３番目のアドレス記憶メモリ１２６とに対して行われる３番目の判定処理Ｓ３にて、適切な３つの位置決め用シンボル５４が検出され、解読処理Ｄ３にて解読に成功した例を示している。図１０（ａ）の従来例と比較すると、２つの記憶処理Ｍ２，Ｍ３分の時間が短くなっている。
図５（ｃ）は、２次元コード５２を付着した荷物がＣＣＤ４の前を通過せず、連続して適切な３つの位置決め用シンボル５４の検出ができない例を示している。このため、常に３つの判定処理Ｓ１〜Ｓ３，Ｓ１１〜Ｓ１３が連続して行われている。
【００６５】
本実施の形態２は、このように、ＣＣＤ１０４は制御回路１２８の指示により、繰り返し２次元画像を検出するとともに、１フレームの２次元画像を、同時並行的に、２値化回路１０６ａ〜１０６ｃにてそれぞれ異なる閾値にて２値化して、各画像メモリ１０８〜１１２に記憶し、更に、各アドレス記憶メモリ１２２〜１２６に対しても位置決め用シンボル５４のアドレスを記憶している。
【００６６】
このことにより、一度にＣＣＤ１０４にて検出した画像を異なる閾値にて２値化した２次元画像について、順次処理できるので、閾値を変更する度にＣＣＤ１０４から検出しなくても良く、高速に読み取り処理を行うことができる。
このため、何等かの原因、例えば、外乱光やノイズ等により、一つの２次元画像データについて２次元コード５２の読み取りに失敗しても、直ちに異なる閾値の２次元画像の処理に移ることができ、制御回路１２８は、大きなロス時間を間に置くことなく、迅速に２次元画像の判定・解読処理を行うことができる。
【００６７】
このため、２次元コード５２が付着された荷物が高速に移動している場合でも、繰り返し取得した画像に基づいて、制御回路１２８は高速に判定・解読処理を繰り返すことができ、読み取りの失敗による２次元画像データ検出のやり直しが発生した時にも、発生する時間のロスを最小限に抑えることができ、２次元コード５２の高速な読み取りが可能となる。この結果、荷物の搬送速度を高速にすることが可能となる。
【００６８】
ここで、ＣＣＤ１０４とこのＣＣＤ１０４に検出を指示する制御回路１２８が２次元画像検出手段に該当し、画像メモリ１０８〜１１２が複数の画像記憶手段に該当し、２値化回路１０６ａ〜１０６ｃが２値化処理手段に該当し、アドレス発生回路１１６ａ〜１１６ｃとこのアドレス発生回路１１６ａ〜１１６ｃにオフセット値を与える制御回路１２８が記憶処理手段に該当し、制御回路１２８が解読手段に該当し、変化点検出回路１１８ａ〜１１８ｃおよび比検出回路１２０ａ〜１２０ｃが位置決めシンボルパターン検出手段に該当し、アドレス記憶メモリ１２２〜１２６が複数のシンボルパターン記憶手段に該当する。
【００６９】
［その他］
前記実施の形態１における２値化回路６としては、図８（ａ）に示すごとくの比較器２０２により、ＣＣＤ４からの入力信号と、制御回路２８からの閾値を表す指示信号をＤ／Ａ変換器２０４にてアナログ電圧信号に変換した信号とを比較することにより２値化することができる。制御回路２８は、その時にデータが記憶される画像メモリ８〜１２およびアドレス記憶メモリ２２〜２６に応じて、指示信号にて閾値を切り替えれば良い。なお、画像メモリ８〜１２およびアドレス記憶メモリ２２〜２６に応じて閾値を切り替えるのではなく、ＣＣＤ４が検出するフレーム毎に閾値を切り替えても良い。
【００７０】
前記実施の形態１では、ＣＣＤ４の２次元画像検出の開始は、制御回路２８からの指示により行っていたが、記憶処理Ｍ１，Ｍ２，Ｍ３，Ｍ１１，……は、連続して行えば良いので、制御回路２８からの指示が無くても、ＣＣＤ４自身あるいは特別に設けたハード構成により、ＣＣＤ４が繰り返し２次元画像を検出するようにしても良い。
【００７１】
また、前記実施の形態２における２値化回路１０６ａ〜１０６ｃとしては、図８（ａ）に示すものでも良いが、制御回路１２８からの指示によらない固定値の閾値でも良いので、例えば、図８（ｃ）に示すごとく、２つの抵抗２２４，２２６にて電源電圧を分圧した電圧出力と、ＣＣＤ１０４からの入力信号とを比較器２２２にて比較する構成でも良い。この場合は、２値化回路１０６ａ〜１０６ｃの数だけ、分圧電圧が異なるように、２つの抵抗２２４，２２６の抵抗値の比を違えたものを用いれば良い。
【００７２】
また、実施の形態１，２における２値化回路６，１０６ａ〜１０６ｃは、所定値に設定された閾値とＣＣＤ４，１０４からの入力信号との比較であったが、このような閾値の代りに、図８（ｂ）に示すごとく、ＣＣＤ４，１０４からの入力信号を、抵抗２１４とコンデンサ２１６とにより、なまし処理、すなわち時間平均処理することにより得られる閾値と、ＣＣＤ４，１０４からの入力信号とを比較器２１２にて比較するようにして２値化しても良い。抵抗２１４とコンデンサ２１６とのインピーダンスを調整して、異なる追従の速さにしたものを複数設けて、制御回路２８，１２８にて、画像メモリ８〜１２，１０８〜１１２およびアドレス記憶メモリ２２〜２６，１２２〜１２６に応じて切り替えて、あるいは１フレーム毎に切り替えて使用すれば良い。
【００７３】
まお、画像メモリ８〜１２，１０８〜１１２およびアドレス記憶メモリ２２〜２６，１２２〜１２６に応じて、あるいは１フレーム毎に、閾値や追従の速さを切り替えるのではなく、読み取り（判定処理および解読処理）が成功した場合には、読み取りが成功したときと同じ閾値または解読が成功したときと同じなまし処理の追従の速さを用いて得られた２次元画像が、次回の複数の２次元画像の判定・解読において最初に処理する対象となるように学習制御しても良い。例えば、実施の形態１では、３つの記憶処理Ｍ１，Ｍ２，Ｍ３の最初に行う記憶処理Ｍ１において、学習した閾値あるいは追従の速さを用いることにより実現できる。また実施の形態２では、記憶処理Ｍ１，Ｍ２，Ｍ３の内、判定処理と解読処理とを最初に行うものに、学習した閾値あるいは追従の速さにて２値化処理したものを選択することにより実現できる。このような学習制御を行うことにより、読み取りがより迅速にできるようになる。
【００７４】
なお、実施の形態１，２では、それぞれ３つの画像メモリ８〜１２，１０８〜１１２およびアドレス記憶メモリ２２〜２６，１２２〜１２６を用いたが、判定処理および解読処理の速度が速ければ、各２つの画像メモリおよびアドレス記憶メモリであっても良い。また、判定処理および解読処理の速度が遅ければ、各４つ以上の画像メモリおよびアドレス記憶メモリを用いれば良い。
【図面の簡単な説明】
【図１】  実施の形態１としての２次元コード読取装置の概略構成を表すブロック図である。
【図２】  ２次元コードの構成説明図である。
【図３】  位置決め用シンボルを走査した場合の明暗検出の説明図である。
【図４】  ＣＣＤと２値化回路との出力信号の説明図である。
【図５】  実施の形態１における２次元コード読取装置の処理手順を表すタイミングチャートである。
【図６】  実施の形態２としての２次元コード読取装置の概略構成を表すブロック図である。
【図７】  実施の形態２における２次元コード読取装置の処理手順を表すタイミングチャートである。
【図８】  ２値化回路の構成説明図である。
【図９】  従来の２次元コード読取装置の概略構成を表すブロック図である。
【図１０】  従来の２次元コード読取装置の処理手順を表すタイミングチャートである。
【符号の説明】
２…２次元コード読取装置      ４…ＣＣＤ      ６…２値化回路
８，１０，１２…画像メモリ    １４…クロック信号出力回路
１６…アドレス発生回路    １８…変化点検出回路    ２０…比検出回路
２２，２４，２６…アドレス記憶メモリ    ２８…制御回路
５２…２次元コード    ５４…位置決め用シンボル
１０２…２次元コード読取装置    １０４…ＣＣＤ
１０６ａ，１０６ｂ，１０６ｃ…２値化回路
１０８，１１０，１１２…画像メモリ    １１４…クロック信号出力回路
１１６ａ，１１６ｂ，１１６ｃ…アドレス発生回路
１１８ａ，１１８ｂ，１１８ｃ…変化点検出回路
１２０ａ，１２０ｂ，１２０ｃ…比検出回路
１２２，１２４，１２６…アドレス記憶メモリ    １２８…制御回路
２０２…比較器    ２０４…Ｄ／Ａ変換器    ２１２…比較器
２１４…抵抗    ２１６…コンデンサ    ２２２…比較器
２２４，２２６…抵抗
【図１】
0003804140.tif 000002
【図２】
0003804140.tif 000003
【図３】
0003804140.tif 000004
【図４】
0003804140.tif 000005
【図５】
0003804140.tif 000006
【図６】
0003804140.tif 000007
【図７】
0003804140.tif 000008
【図８】
0003804140.tif 000009
【図９】
0003804140.tif 000010
【図１０】
0003804140.tif 000011