(57)【要約】【課題】  読取対象物が光学的情報読取装置の読取深度内にあるか否かを、ユーザが容易に把握できるようにする。【解決手段】  読取対象物４０の画像を撮像センサ１１より撮像して解析することにより読取対象物４０上のコード記号４１を読み取るコード記号読取装置１００において、撮像センサ１１の撮像分解能を示すガイドマークを読取対象物４０に照射する照射手段として、レーザ光源１４及び照射光学系１５を設けた。上記照射手段は、放射状に拡散する複数の光ビームを読取対象物４０上に等間隔のガイドマークが形成されるように照射するものとするとよい。【選択図】        図１
2014127105.tif 000002
【特許請求の範囲】
【請求項１】
読取対象物の画像を撮像手段より撮像して解析することにより読取対象物上の光学的情報を読み取る光学的情報読取装置であって、
前記撮像手段の撮像分解能を示すガイドマークを前記読取対象物に照射する照射手段を備えることを特徴とする光学的情報読取装置。
【請求項２】
請求項１に記載の光学的情報読取装置であって、
前記照射手段は、放射状に拡散する複数の光ビームを前記読取対象物上に等間隔のガイドマークが形成されるように照射する手段であることを特徴とする光学的情報読取装置。
【請求項３】
請求項２に記載の光学的情報読取装置であって、
１０≦ｋ≦３０なるｋについて、
前記複数のガイドマークのうち隣接するガイドマークの間の間隔が、前記撮像手段の画素ｋ個分の分解能に当たる間隔であることを特徴とする光学的情報読取装置。
【請求項４】
請求項２に記載の光学的情報読取装置であって、
ｒを１以上の数として、
前記複数のガイドマークのうち隣接するガイドマークの間の間隔は、該隣接するガイドマーク間に位置する前記光学的情報の特定種類のエレメントが平均ｒ個以下であれば該光学的情報を読み取り可能であると判断できるような間隔であることを特徴とする光学的情報読取装置。
【請求項５】
請求項４に記載の光学的情報読取装置であって、
ｒ≦８であることを特徴とする光学的情報読取装置。
【請求項６】
請求項１乃至５のいずれか一項に記載の光学的情報読取装置であって、
前記照射手段は、前記撮像手段による撮像タイミングには前記ガイドマークの照射を停止することを特徴とする光学的情報読取装置。
【請求項７】
請求項１乃至６のいずれか一項に記載の光学的情報読取装置であって、
前記複数のガイドマークは、複数の線状のガイドマーク、複数の点状のガイドマーク、あるいは、線状のガイドマークと点状のガイドマークとの組み合わせで構成されることを特徴とする光学的情報読取装置。
【請求項８】
請求項４又は５に記載の光学的情報読取装置であって、
前記照射手段により前記読取対象物上に形成されたガイドマークの画像を前記撮像手段により撮像し、予め定められた読取対象の光学的情報の種類と、前記撮像で得られた画像中で隣接するガイドマーク間に位置する前記光学的情報の特定種類のエレメントの数とに基づき、前記光学的情報の読み取り可否を判定する判定手段を備えることを特徴とする光学的情報読取装置。
【請求項９】
請求項１乃至８のいずれか一項に記載の光学的情報読取装置であって、
前記照射手段は、前記ガイドマークに加え、位置検出用マークを前記読取対象物に照射する手段であり、
前記照射手段により前記読取対象物上に形成された前記位置検出用マークの画像を前記撮像手段により撮像し、該撮像で得られた画像中での前記位置検出用マークの位置に基づき、前記撮像手段から前記読取対象物までの距離を測定する距離測定手段を備えることを特徴とする光学的情報読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、読取対象物の画像を撮像手段より撮像して解析することにより読取対象物上の光学的情報を読み取る光学的情報読取装置に関する。
【背景技術】
【０００２】
従来から、読取対象物の画像を撮像手段より撮像して解析することにより読取対象物上の光学的情報を読み取る光学的情報読取装置として、例えばバーコードや２次元コードのようなコード記号を読み取る読取装置が知られている。
そして、このような読取装置において、ユーザによるエイミングを容易とするため、撮像手段が撮像する位置を示すマークを読取対象物に照射することが行われている。
【０００３】
例えば、図１８に示すように、読取装置２００が、撮像手段による撮像範囲を示すマーク２０１や、撮像範囲の幅を示すマーク２０２や、撮像範囲の中心を示すマーク２０３を、光ビームの照射により形成することが行われている。読取装置２００が照射する各種形状の光ビームを読取対象物に当てることにより、読取対象物上にその形状のマークを形成することができる。そして、ユーザはそのマークを読み取りたいコード記号の位置に合わせることにより、コード記号を容易に撮像手段の撮像範囲に収め、読取装置にそのコード記号を読み取らせることができる。
【０００４】
このようなマークの形成を行う読み取り装置については、例えば特許文献１乃至５に記載されている。
なお、特許文献５には、マーカ光が読取対象物に描くパターンがぼけているか否かに基づき、読取装置から読取対象までの距離が読取を良好に行える範囲内にあるかどうかを自動判別することが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−６７４３２号公報
【特許文献２】特開２００６−８５６６４号公報
【特許文献３】特開２００６−３３０９８７号公報
【特許文献４】特開２００６−６５４６３号公報
【特許文献５】特開２００６−２０９２０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、光学式の読取装置においては、コード記号の読み取りに適した距離がある。読取装置とコード記号との距離が離れすぎると、撮像した画像中でコード記号の画像が小さくなってしまい、記号を判別できなくなってしまう。また、近すぎると、コード記号が撮像可能範囲に収まらなくなってしまう。これらを考慮した読み取り可能な読取装置とコード記号との距離の範囲は、読取深度と呼ばれる。
【０００７】
そして、コード記号がこの読取深度の範囲外にある場合、例えコード記号が撮像範囲に収まっていたとしても、読み取りができないことになる。
この点につき、読取深度の下限（近い方の閾値）については、光学系の設計によりかなり小さい値とすることが比較的容易であるため、ユーザの目分量で読み取り装置をコード記号に近づけすぎないようにすることも期待できる。
【０００８】
しかし、読取深度の上限（遠い方の閾値）については、感覚的な調整が難しい。さらに、読取対象物が遠くにある場合撮像範囲の面積は大きくなるため、読取深度の上限を超える距離であってもコード記号を撮像範囲に収めることは容易であるが、これを正しく読み取ることができず、何度も読み取りを繰り返して時間を浪費することにつながる。
【０００９】
特許文献１乃至４に記載の読取装置におけるマークでは、ユーザはマークを参照してコード記号を撮像範囲に収めることができるが、コード記号が読取深度内にあるかどうかは把握することができない。
また、特許文献５に記載のマークを用いても、コード記号が読取深度内にあるか否かの判断は、マークがぼけているか否かという定性的な基準で行わなければならない。ぼけの有無の判定を自動で行うにしても、通常読み取り装置に用いられる程度の解像度の画像では、判定を精度よく行うことは難しく、精度に難があるという問題があった。
【００１０】
この発明は、このような背景に鑑みてなされたものであり、読取対象物が光学的情報読取装置の読取深度内にあるか否かを、ユーザが容易に把握できるようにすることを目的とする。特に、読取深度より遠い位置にあるか否かを容易に把握できるようにすることを目的とする。
【課題を解決するための手段】
【００１１】
この発明は、上記の目的を達成するため、読取対象物の画像を撮像手段より撮像して解析することにより読取対象物上の光学的情報を読み取る光学的情報読取装置において、上記撮像手段の撮像分解能を示すガイドマークを上記読取対象物に照射する照射手段を設けたものである。
【００１２】
このような光学的情報読取装置において、上記照射手段を、放射状に拡散する複数の光ビームを上記読取対象物上に等間隔のガイドマークが形成されるように照射する手段とするとよい。
さらに、１０≦ｋ≦３０なるｋについて、上記複数のガイドマークのうち隣接するガイドマークの間の間隔を、上記撮像手段の画素ｋ個分の分解能に当たる間隔であるようにするとよい。
【００１３】
あるいは、ｒを１以上の数として、上記複数のガイドマークのうち隣接するガイドマークの間の間隔を、その隣接するガイドマーク間に位置する上記光学的情報の特定種類のエレメントが平均ｒ個以下であればその光学的情報を読み取り可能であると判断できるような間隔とするとよい。この場合に、さらにｒ≦８とするとよい。なお、上記の１０≦ｋ≦３０は、ガイドマークの間隔そのものに注目した条件であり、ｒ≦８は、隣接するガイドマーク間に位置するエレメントの数に注目した条件である。ｋとｒの関係はコード記号の規格やサイズによって異なる。
【００１４】
また、上記の各光学的情報読取装置において、上記照射手段が、上記撮像手段による撮像タイミングには上記ガイドマークの照射を停止するようにするとい。
さらに、上記複数のガイドマークを、複数の線状のガイドマーク、複数の点状のガイドマーク、あるいは、線状のガイドマークと点状のガイドマークとの組み合わせで構成されるものとするとよい。
【００１５】
さらに、上記照射手段により上記読取対象物上に形成されたガイドマークの画像を上記撮像手段により撮像し、予め定められた読取対象の光学的情報の種類と、上記撮像で得られた画像中で隣接するガイドマーク間に位置する上記光学的情報の特定種類のエレメントの数とに基づき、上記光学的情報の読み取り可否を判定する判定手段を設けるとよい。
【００１６】
さらに、上記照射手段が、上記ガイドマークに加え、位置検出用マークを上記読取対象物に照射するようにするとともに、上記読取対象物上の上記位置検出用マークの画像を上記撮像手段により撮像し、その撮像で得られた画像中での上記位置検出用マークの位置に基づき、上記撮像手段から上記読取対象物までの距離を測定する距離測定手段を設けるとよい。
【発明の効果】
【００１７】
この発明による光学的情報読取装置によれば、読取対象物が光学的情報読取装置の読取深度内にあるか否かを、ユーザが容易に把握できるようにすることができる。特に、読取深度より遠い位置にあるか否かを容易に把握できるようにすることができる。
【図面の簡単な説明】
【００１８】
【図１】この発明の光学的情報読取装置の一実施形態であるコード記号読取装置のハードウェア構成を示すブロック図である。
【図２】図１に示した撮像センサによる撮像可能範囲及び撮像分解能について説明するための図である。
【図３】コード記号読み取り装置により読み取るコード記号の一例を示す図である。
【図４Ａ】ガイドマークの例を示す図である。
【図４Ｂ】その別の例を示す図である。
【図５】ガイドマークを放射状に照射する光ビームにより形成した場合の、形成されるマークの間隔について説明するための図である。
【図６】図１に示した光学的情報読取装置が備える、ガイドマークを形成するための光学系の配置を模式的に示す図である。
【図７】ガイドマークのサイズについて説明するための図である。
【図８】ガイドマークを形成するための光学系の構成の第１例を示す図である。
【図９】同じく第２例を示す図である。
【図１０】同じく第３例を示す図である。
【図１１】同じく第４例を示す図である。
【図１２】同じく第５例を示す図である。
【図１３】図１に示したコード記号読取装置各部の動作タイミング例を示す図である。
【図１４】図１に示したコード記号読取装置が実行する処理の例を示すフローチャートである。
【図１５】その別の例を示すフローチャートである。
【図１６】特徴点を含むガイドマークの例を示す図である。
【図１７】読取対象物までの距離の算出に必要なパラメータの説明図である。
【図１８】従来のエイミング用マークについて説明するための図である。
【発明を実施するための形態】
【００１９】
以下、この発明を実施するための形態を図面に基づいて具体的に説明する。
まず、この発明の光学的情報読取装置の一実施形態であるコード記号読取装置について説明する。
図１は、そのコード記号読取装置のハードウェア構成を示すブロック図である。
【００２０】
図１に示すように、コード記号読取装置１００は、ユーザが（少なくとも光学部１０を）手に持って操作し、読取対象物４０上で光反射率が周囲と異なる記号により示される情報であるコード記号４１を読み取るための装置である。
このコード記号読取装置１００は、光学部１０、デコーダ２０、操作部３１及び通知部３２を備える。
【００２１】
このうち光学部１０は、撮像センサ１１、レンズ１２、パルスＬＥＤ（発光ダイオード）１３、レーザ光源１４、照射光学系１５を備える。
撮像センサ１１は、読取対象物４０の画像を撮像するための撮像手段であり、例えばＣＭＯＳ（相補性金属酸化膜半導体）イメージセンサにより構成することができる。また、撮像センサ１１は、撮像によりイメージセンサの各画素に蓄積した電荷に基づき、各画素の階調値を示す画像データを生成し、デコーダ２０へ出力することができる。
【００２２】
レンズ１２は、撮像センサ１１上にコード記号４１を含む読取対象物４０からの反射光を結像させるための光学系である。レンズ１２は、１枚のレンズで構成しても、複数のレンズで構成してもよい。また、焦点距離を調整可能なレンズを用いてもよい。
パルスＬＥＤ１３は、撮像対象である読取対象物４０へ照明光を照射するための照明手段である。
【００２３】
レーザ光源１４及び照射光学系１５は、撮像対象である読取対象物４０へ、撮像センサ１１の撮像分解能を示すガイドマークを形成するための光ビームを照射する照射手段である。コヒーレント光源であるレーザ光源１４が出力するレーザビームを照射光学系１５にて拡散することにより、読取対象物４０上にガイドマークが略等間隔に複数形成されるように光ビームを照射する。これらの具体的な構成については後述する。
【００２４】
なお、ガイドマークをユーザに見せる場合には光ビームは可視光のものを用いるが、後述する自動解析のみ行うのであれば、不可視光のものを用いてもよい。これらを使い分けてもよい。また、光源についてはレーザ光源に限られず、光ビームが出力できれば他の光源も利用可能である。
【００２５】
次に、デコーダ２０は、ＣＰＵ２１と、ＣＰＵ２１が実行するプログラムや各種テーブル等のデータを記憶したＲＯＭ２２と、ＣＰＵ２１が各種の処理を実行する際の作業領域として使用するＲＡＭ２３と、外部装置と通信を行うための通信Ｉ／Ｆ２４とを備えている。
上記ＣＰＵ２１，ＲＯＭ２２，ＲＡＭ２３としては、例えば、ＡＳＩＣ（Application Specific
Integrated Circuit），フラッシュロム（ＦＲＯＭ），ＳＤＲＡＭ（Synchronous Dynamic Random Access
Memory）等を用いることができる。
【００２６】
ＣＰＵ２１は、ＲＡＭ２３を作業領域としてＲＯＭ２２に記憶されたプログラムを実行することにより、光学部１０、操作部３１及び通知部３２を含むコード記号読取装置１００全体の動作を制御する。また、撮像センサ１１が撮像した画像の画像データに基づくコード記号４１のデコード、そのデコード結果の外部への出力あるいは蓄積、パルスＬＥＤ１３による照明光量（又は時間）の調整などの処理も行う。
【００２７】
通信Ｉ／Ｆ２４は、デコーダ２０によるデコード結果を処理するＰＣ（パーソナルコンピュータ）等のデータ処理装置と通信するためのインタフェースであり、有線無線を問わず任意の規格を採用可能である。また、通信Ｉ／Ｆ２４から読み込んだデータに基づきデコーダ２０に制御用パラメータの設定を行うことができるようにしてもよい。
【００２８】
操作部３１は、ユーザの操作を受け付けるためのボタンやトリガ等の操作手段である。ここでは、コード記号の読み取り開始を指示するためのトリガを備えるとする。
通知部３２は、ユーザへの各種通知を行うための通知手段である。具体的な通知の方法としては、ディスプレイによるメッセージやデータの表示、ランプの点灯や点滅、スピーカによる音の出力等が考えられるが、これに限られることはない。ここでは、通知部３２としてスピーカ及びランプを備えるとする。
【００２９】
以上のコード記号読取装置１００は、撮像センサ１１によりコード記号４１を撮像して得た画像データをデコーダ２０がデコードすることにより、コード記号４１を読み取ることができる。
そして、このコード記号読取装置１００において特徴的な点の１つは、撮像センサ１１の撮像分解能を示すガイドマークを読取対象物４０へ照射する点である。以下、この点について説明する。
【００３０】
まず、図２を用いて、撮像センサ１１による撮像可能範囲及び撮像分解能について説明する。
撮像センサ１１は、受光光量に応じた電荷を蓄積する画素を縦横の２次元に配列した撮像面を有する。そして、図２に示すように、撮像面のサイズとレンズ１２の特性によって定まる半画角θの範囲の画像を撮像することができる。
【００３１】
ここで、レンズ１２から読取対象物４０までの距離をｚとすると、撮像した画像に収めることができる視野範囲Ｓ＝２ｚtanθとなる。ここで、撮像センサ１１の横方向の画素数をＮとすると、この視野範囲の画像をＮ個の画素で撮像するので、撮像分解能を１画素当たりｇｗの幅であるとすると、ｇｗ＝２ｚtanθ／Ｎとなる。従って、距離ｚが遠くなるほど、幅の大きなものしか画像に捉えることができなくなる、すなわち撮像分解能が低下することがわかる。そして、コード記号を構成するエレメントがこのｇｗより小さいサイズである場合、そのエレメントは撮像した画像に適切に表れないことになる。
なお、「横方向」とは、２次元の配列における２つの配列方向の一方を指すために便宜的に用いる用語であり、コード記号読み取り装置１００の使用状態における水平方向や鉛直方向の向きとは無関係である。
【００３２】
ここで、図３にコード記号の一例としてバーコードを示す。
このバーコード記号は、太さの異なる白バーと黒バーのエレメントにより構成される。そして、このうち最も細いエレメント（最小エレメント）の幅ｗがｗ＜ｇｗとなると、当該エレメントは撮像センサ１１が撮像した画像に表れない（実際には階調値の差として検出可能な場合もあるが）。そして、この状態ではバーコード記号をデコードすることができない。逆にｗ≧ｇｗであればデコード可能である。
【００３３】
閾値はｗ＝ｇｗ＝２ｚtanθ／Ｎとなる場合であり、これをｚについて解くと、
ｚ＝Ｎｗ／２tanθ・・・（式１）
となる。なお、この閾値は理論値であり、照明やシャッタ速度、外乱光等の撮像条件によっては、これより近くてもデコードが成功しづらい場合もある。逆に、これより遠く、エレメントを完全に解像できない場合でも、エレメントの存在を階調値の差により捉えてデコードが可能な場合もある。
【００３４】
本発明は、撮像分解能を示すガイドマークを読取対象物４０へ照射することにより、ユーザが、そのガイドマークをコード記号と対比して、コード記号読取装置１００がデコード可能なコード記号４１の画像を撮像できる位置にあるか否かを把握することができるようにするものである。
【００３５】
図４Ａ及び図４Ｂに、このガイドマークの例を示す。
図４Ａ及び図４Ｂに示すように、ガイドマーク４２としては、略等間隔に並ぶ複数のマークで構成されるものを用いることができる。ここでは各マークは線状としたが、点状であったり、その他の形状であったりしてもよい。また、各マークの間隔は、図４Ａと図４Ｂとを比べるとわかるように、種々のものが考えられる。
例えば、マークの間隔は、上述の１画素当たりの分解能ｇｗとしてもよい。しかしながら、一般に、ｇｗでは間隔が狭すぎてマーク同士を分離して形成することが難しい。また、コード記号のエレメントとの対比を肉眼で正確に行うことも難しい。そこで、ｇｗよりも広い間隔とすることが望ましい。
【００３６】
以下、マークの好ましい間隔について説明する。
図５に、ガイドマークを放射状に照射する光ビームにより形成した場合の、形成されるマークの間隔について説明するための図である。
図５に示すように、ガイドマークを照射光学系１５から読取対象物４０へ、放射状に拡散する複数の光ビームを投射することにより形成するとする。
【００３７】
ここで、投射範囲の半画角（視野角の半分）をψ、照射光学系１５から読取対象物４０までの距離を、レンズ１２から読取対象物４０までの距離と同じｚとすると、ガイドマークが形成される範囲である形成範囲Ｔ＝２ｚtanψとなる。そして、この範囲にマークをＭ＋１個形成するとすれば、隣接するマークの間の間隔ｌｗは、ｌｗ＝２ｚtanψ／Ｍとなる。
【００３８】
ここで、ｌｗ＝ｇｗのとき、隣接するマークの間の間隔が１画素分の撮像分解能を示すことになる。
このとき、
２ｚtanψ／Ｍ＝２ｚtanθ／Ｎ・・・（式２）
であるから、Ｍについて解くと、
Ｍ＝Ｎ・tanθ／tanψ・・・（式３）
となる。すなわち、Ｎ，θ，ψに従って適当なＭの値を定めれば、距離ｚの値によらず、撮像センサ１１の撮像分解能を示すガイドマークを読取対象物４０上に形成することができる。
【００３９】
また、式２をψについて解くと、
ψ＝tan-1（Ｍtanθ／Ｎ）・・・（式４）
となる。すなわち、Ｍが先に決まっている場合、Ｍ，Ｎ，θに従って適当なψの値を定めることによっても、撮像センサ１１の撮像分解能を示すガイドマークを読取対象物４０上に形成することができる。
【００４０】
いずれにせよ、ガイドマークを構成する各マークの間隔が、読み取ろうとしているコード記号の最小エレメントの幅より小さければ、コード記号読取装置１００はそのコード記号を読み取り可能な位置にあることがわかる。より正確には、コード記号読取装置１００がコード記号から遠すぎないことがわかる。
また、ψ＝θとすれば、横方向の撮像可能範囲の全域にガイドマークを形成することができ、ガイドマークを、撮像可能範囲の幅を示すマークとしても用いることができる。
しかし、上述のように、現実的にはｌｗ＝ｇｗではマーク間隔とエレメントの幅との比較が難しいことが多いと考えられる。
【００４１】
実際に日頃から読取装置を扱っている作業者に対し調査を行ったところ、ｌｗ≒（１０〜３０）ｇｗ（最小エレメント（＝モジュール）の幅で１０〜３０本分、最も細い黒線又は白線の数に換算すると各５〜１５本分）が望ましいとの結果が出た。実際にはコード記号には細線と太線が混在しているが、ある程度の幅で見るとエレメント数も平均化されるので、作業者は数本のガイドマークの幅の中に存在するコード記号の黒線（又は白線）が規定の本数以下であることを確認すればよい
【００４２】
ところで、上述の式１からわかるように、
ｚ＞Ｎｗ／２tanθ・・・（式５）
である場合には、コード記号の最小エレメントの幅が撮像センサ１１の１画素分の撮像範囲より狭くなり、コード記号がデコードできないと考えられる。
【００４３】
これを、ｌｗ＝２ｚtanψ／Ｍに代入すると、
ｌｗ＝２ｚtanψ／Ｍ＞２（Ｎｗ／２tanθ）tanψ／Ｍ
すなわち、
【数１】
2014127105.tif 000003
となる。
【００４４】
これは、
ｋ＝（Ｎtanψ）／（Ｍtanθ）・・・（式７）
とすると、ｌｗ＞ｋｗの場合にコード記号がデコード不可であることを意味する。すなわち、式７を満たすｋについて、ガイドマーク４２を構成する各マークの間隔が、最小エレメントｋ個分以上である場合にはデコード不可であることになる。また、このときの各マークの間隔は、撮像センサ１１の画素ｋ個分の分解能に当たる間隔である。
【００４５】
ここで、式７において、Ｎとθは撮像センサ１１及びレンズ１２の特性によって決まるが、Ｍ及びψは、これらとは独立に設定可能である。従って、ｋの値をユーザによる確認の便宜を考慮して先に決めてしまってから、そのｋと、撮像センサ１１及びレンズ１２の特性によって決まるＮ及びθに基づき、式７を満たすＭ及びψを決めることもできる。なお、ｋの値は自然数には限られない。
【００４６】
また、Ｍとψのうちいずれか一方の値を決めれば他方の値も決まる。どちらを先に決めてもよいが、ここではまずＭを先に決め、次にψを決めることを考える。この場合にψを求める式は、式７をψについて解いて得られ、
ψ＝tan-1（ｋＭtanθ／Ｎ）・・・（式８）
である。
【００４７】
以下、これらのｋ及びＭを定める際に考慮することが望ましい事項について、具体例を交えて説明する。
まず、ｋの最小値について、上述のｌｗ＝ｇｗのときｋ＝１であるが、この値であると、ガイドマーク４２が細かくなりすぎる。このため、ガイドマーク４２を構成する各マークにもある程度の幅があることを考慮すれば、その各マークの間隔を把握することも難しくなる。このことを考慮すると、コード記号との対比が容易なガイドマーク４２を形成するためには、ｋ＞３とすることが望ましい。また、上述のｌｗ≒（１０〜３０）ｇｗの条件は、１０≦ｋ≦３０に相当する。
【００４８】
次に、上述のようにｋは、ガイドマーク４２を構成する各マークの間隔が、最小エレメントｋ個分、という基準を示す値である。しかし、実際にユーザがガイドマーク４２とコード記号を対比して把握できるのは、黒エレメントや白エレメントなど、特定種類のエレメントがマークの間にいくつ入っているか、という情報になる。エレメントのサイズに差がある場合でも、ユーザは色毎にまとめて把握し、黒バーが何本、白バーが何本、というように数えると考えられる。特に、これらのうち背景と異なる色のエレメントの個数を数えることが、ユーザにとって最も容易であると考えられる。
【００４９】
これらを考慮し、例えば、ガイドマーク４２を構成する各マークの間に、黒エレメントがｒ個ある、という基準のｒを、ｋに換算することを考える。
すると、最小エレメント１個の幅に平均して黒エレメントがいくつあるかを示す定数をｔとして、
ｋ＝ｒ／ｔ・・・（式９）
と換算することができる。このｔは、「バー比率」と呼ぶことにするが、エレメントの形状がバーに限られないことはもちろんである。
【００５０】
例えばＱＲコード（登録商標）では、エレメントのサイズは特殊なガイドエレメントを除いて全て同じであり、かつ、黒エレメントと白エレメントの比率は１：１である。従って、平均して最小エレメント２個の幅に黒エレメントが１個あると考えられるため、ｔ＝１／２である。
【００５１】
また、バーコードの場合、コード記号の規格によって異なるが、主な規格については表１に示す通りである。
【表１】
2014127105.tif 000004
【００５２】
例えば、industrial2of5コードの場合、太い黒エレメント（太黒）、細い黒エレメント（細黒）及び細い白エレメント（細白）が２：３：５の割合で存在し、太い白エレメント（細白）は存在しない。また、色を問わず、太いエレメントは細いエレメント（最小エレメント＝１モジュール）の２．５倍の幅がある（細太比＝２．５）。従って、２．５×２＋１×３＋１×５＝１３モジュールの幅に、太いものと細いもので計５本の黒バーがあることになるので、ｔ＝５／１３となる。他の規格についても同様に算出可能である。
また、エレメントの幅が３種類以上ある多値コードの場合も同様に算出可能である。表１においてcode11コードから下は、エレメントの幅が３種類以上であるため、各幅のエレメントの内訳は記載していない。しかし、例えばＪＡＮコードの場合、１キャラクタが７モジュール分の幅であり、その中に黒バーが２本あるため、ｔ＝２／７である。
【００５３】
以上のｔを用いることにより、ガイドマーク４２を構成する各マークの間に黒エレメントがｒ個以下か否かを基準にコード記号のデコード可否を判断できるようにするためのｋの値を、ｒに基づき容易に定めることができる。ただし、ｔは上述のように平均値を用いているので、ガイドマーク４２のうち１箇所のみを見た場合にはｒ個以下という基準が妥当しない場合もある。従って、複数箇所の間隔について平均いくつくらい黒エレメントがあるかを確認することが望ましい。
【００５４】
なお、白エレメントの数を数える場合でも、同様にｔに当たる定数を定めることができることは言うまでもない。
また、ｒの値は任意に定めることができるが、実験から、ユーザが瞬時に見分けることのできるエレメントの数は８個程度が限界であることがわかった。従って、ｒは８以下とすることが望ましい。
【００５５】
次に、ここまでの説明では、最小エレメントの幅ｗが１画素分の撮像領域ｇｗと一致する点が、読取可否の閾値であるとして説明してきた。しかし、この閾値は、コード記号の種類によって変化するものである。例えば、エレメントを複数画素で撮像できないとデコードが困難なコード記号もある。従って、ｋの値を定める際には、この点も考慮することが望ましい。
【００５６】
ここで、あるコード記号について、最小エレメントをｑ個の画素で撮像可能であればデコードできるとする。この場合、式７及び式９に従ったｋの値を前提とすると、ガイドマーク４２を構成する各マークの間隔が、最小エレメントｋ個分ではなく、ｋ／ｑ個分の時が、デコード可否の閾値となる。
【００５７】
従って、ｑを考慮して同じく最小エレメントｋ個分を閾値とする場合には、式７及び式９のｋの値をｑ倍する必要がある（式７及び式９はｑ＝１の場合の式である）。すなわち、ｑを考慮した場合のｋの値は、
ｋ＝ｑｒ／ｔ・・・（式１０）
により求めることができる。もちろん、ｑの値は整数でなくて構わない。
【００５８】
なお、このｑの値は、コード記号の種類だけでなく、レンズ１２の特性や、コード記号読取装置１００の周囲の状況の特性によっても変化する。そこで、コード記号の種類に応じた標準的な値をレンズ１２の特性を加味して修正した値を、予め実験により算出することが望ましい。
ただし、周囲の状況に応じたｑの変動については、その変動に応じてＭやψを変動させる機能がない場合、ガイドマーク４２に反映させることはできない。従って、ｑを安全率を加味した大きめな値として、周囲の環境が変動したとしても、読取不能を誤って読取可能と判断しないようにするとよい。ただし、このようにすれば、読取可能を誤って読取不能と判断するケースが出てくる。従って、どちらの誤判断がより許容可能かに基づいてｑの値を設定すればよい。また、ｑの値の調整をユーザが手動で行うことができるようにしてもよい。
【００５９】
次に、Ｍの値については、主な読取対象として想定しているコード記号に含まれるエレメント数と、上述のｒとに基づいて定めることが考えられる。そして、デコード可能距離範囲内においてはガイドマーク４２がそのコード記号全体をカバーするような値とすることが望ましい。ユーザがガイドマーク４２を構成する各マークとコード記号のエレメントとを対比する場合、どこに注視して読み取るかは人によって異なるため、コード記号の全範囲で対比可能であることが望ましいためである。
【００６０】
例えば、ＵＲＬ（Uniform Resource Locator）を示すＱＲコードの場合、水平方向に並ぶエレメントの数ｅはｅ＞２５である。そして、黒エレメントと白エレメントの比率は１：１であるので、ｒ＝４とすると、デコード可能な最大距離において、マークは４／（１／２）＝８エレメントおきに形成されることになる。従って、Ｍの値は、
Ｍ＞ｅ／８＞２５／８≒３・・・（式１１）
とすればよいことがわかる。
社名、部署、氏名、電子メールアドレス等の情報を持つ名刺のＱＲコードの場合、水平方向に４０〜７０個のエレメントが並ぶので、ｅ＝４０〜７０として同様に算出すればよい。
【００６１】
また、ＪＡＮコードのように、コード記号中の水平方向の黒エレメントの本数ｅ′が決まっている場合、
Ｍ＞ｅ′／ｒ・・・（式１２）
とすればよい。ＪＡＮコードの場合ｅ′＝３０なので、ｒ＝４の場合、Ｍ＞３０／４≒７である。
【００６２】
なお、読取装置とコード記号との距離が近づくにつれてマークの間隔は狭くなる。従って、デコード可能と想定される最低限の距離においてもガイドマーク４２がそのコード記号全体をカバーできるようにするためには、Ｍの値を、上記の最大距離を基準として求めた値の何倍かの値にすればよい。
また、形成するマークの数であるＭ＋１が奇数となる方が、ガイドマーク４２の中心位置にマークが表示されて位置を把握し易いため、Ｍの値は偶数とすることが好ましい。しかしこれは必須ではない。
これらのＭの値も、コード記号の規格に応じて概ね定まるので、ｔ及びｑと同様に、規格の種類と対応付けて予めコード記号読取装置１００に記憶させておくとよい。
【００６３】
また、これらの考え方と別に、ψとＭのうちψを先に決めることもできる。撮像センサ１１の撮像範囲等に基づきψの値を先に決定し、それに基づいてＭの値を決める等である。読取可能範囲全体や、そのうち８０％といったように、読取可能範囲のうちどの程度の部分にガイドマークを表示させるかを定めたい場合には、ψの値を先に決定するとよい。
【００６４】
ここで、ｋ及びＭの値の設定の具体例について説明する。
いずれの例についても撮像センサ１１の水平方向の画素数Ｎ＝７５２、水平方向の視野角２θ＝４０(deg)とする。
まず、ＵＲＬを示すＱＲコードであって水平方向のエレメント数ｅ＝２５のものを読み取る場合を考える。上記の撮像センサ１１においてＱＲコードのｑの値は２．５であるとする。また、ＱＲコードについてはｔ＝０．５である。
【００６５】
そして、ガイドマークと黒モジュールとを対比する際の視認性を考慮してｒ＝４に設定したとすると、ｋの値は、式１０から、ｋ＝２．５×４／０．５＝２０である。
また、Ｍの値は式１１と同じく、Ｍ＞３である。従って、これを満たす偶数として、Ｍ＝４を選択できる。
以上のＭ，Ｎ，ｋ，θを式８に代入すると、
ψ＝tan-1（２０×４×tan２０°／７５２）≒２．２１
となる。従って、Ｍ＝４、ψ＝２．２１(deg)となるようにレーザ光源１４及び照射光学系１５を設計すればよいことがわかる。
【００６６】
次に、ＪＡＮコードを読み取る場合を考える。上記の撮像センサ１１においてＪＡＮコードのｑの値は１．２５であるとする。また、ＪＡＮコードについては表１に示す通りｔ＝２／７である。
そして、上記の例と同様ｒ＝４に設定したとすると、ｋの値は、ｋ＝１．２５×４／（２／７）＝１７．５である。また、Ｍの値は式１２により、Ｍ＞３０／４≒７である。従って、これを満たす偶数として、Ｍ＝８を選択できる。
【００６７】
以上のＭ，Ｎ，ｋ，θを式８に代入すると、
ψ＝tan-1（１７．５×８×tan２０°／７５２）≒３．８８
となる。従って、Ｍ＝８、ψ＝３．８８(deg)となるようにレーザ光源１４及び照射光学系１５を設計すればよいことがわかる。
【００６８】
同条件で短縮ＪＡＮコードの場合、水平方向の黒エレメントの本数ｅ′＝２２である。従って、Ｍ＞２２／４≒５であるので、これを満たす偶数として、Ｍ＝６を選択できる。短縮ＪＡＮコードについても表１に示す通りｔ＝２／７であり、ｑも１．２５で変わらないとすると、ｋの値は上述のＪＡＮコードの場合と同じく１７．５である。
従って、
ψ＝tan-1（１７．５×８×tan２０°／７５２）≒２．９１
となる。従って、Ｍ＝６、ψ＝２．９１(deg)となるようにレーザ光源１４及び照射光学系１５を設計すればよいことがわかる。
【００６９】
ところで、ここまでの説明では、読取対象のコード記号の規格が１つであることを前提にｋ及びＭの値の定め方について説明した。しかし、複数種類の規格のコードを読み取ることを前提にｋ（及びＭ）の値を定めることもできる。次に、この点について説明する。
まず、ある規格のコード記号について、適当な手法でｋの値を定めたとする。このｋを変えない場合、別の特定の規格のコードについて、デコード限界の距離においてガイドマーク４２を構成する各マークの間に黒エレメントが存在する個数をｒ′個とすると、式１０から、
ｒ′＝ｋ×ｔ／ｑ・・・（式１３）
となる。
【００７０】
例えば、上述のＪＡＮコードを読み取る場合と同じくｋ＝１７．５とし、別のある規格のコード記号についてｑ＝０．９７、ｔ＝３／９であるとすると、そのコード記号についてはｒ′＝１７．５×（３／９）／０．９７＝６．０１となる。従って、各マークの間に黒エレメントが約６個以上存在するか否かに基づき、デコード可否を判定することになる。
しかし、上述のように、ユーザが瞬時に５より多い黒エレメントを数えることは難しい。このため、ｋの値は読み取りが想定される全ての種類の規格のコード記号についてｒ′が５以下（所定の閾値以下）となるように設定することが望ましい。
【００７１】
一方、式１３において、ｔ／ｑはコード記号の種類及びレンズ１２の特性に応じて決まる定数である。従って、読み取りが想定される全ての種類の規格についてｔとｑの値を求め、ｔ／ｑが最小の規格についてｒ′が５（所定の閾値）となるようにｋの値を定めればよい。
表２に、各種コード記号についてｑ／ｔの値を求めた例を示す。表２の中ではｃｏｄｅ３９規格でｑ／ｔが最小の２．３２である。この条件でｒ＝５としてｋの値を求めると、式１０からｋ＝２．３２×５＝１１．６である。
【００７２】
【表２】
2014127105.tif 000005
【００７３】
表２のｒ′の欄には、このｋ＝１１．６に基づき求めた、各規格のコード記号に関するｒ′の値を記載している。これに従えば、どの規格であっても、デコード可否を判定するためにカウントする必要のある、ガイドマーク４２を構成する各マークの間の黒エレメントの数は、５個以下であることがわかる。
このようにすれば、読み取り対象として想定されるコード記号の規格が複数ある場合でもデコード可否を容易に判定可能なように、ガイドマーク４２を形成することができる。
【００７４】
次に、以上説明してきたガイドマークを形成するための光学系の構成について説明する。
図６に、その光学系の配置を模式的に示す。
図６に示すように、ガイドマークを形成するための光学系であるレーザ光源１４及び照射光学系１５は、レンズ１２の光軸と概ね平行な光軸を中心に放射状に拡散する複数の光ビームを照射することにより、読取対象物４０上にガイドマーク４２を形成する。
【００７５】
図７に、形成されるガイドマークのサイズを示す。
図７において、ｘ軸は撮像センサ１１における画素の配列の横方向、ｙ軸は同じく縦方向である。ｚ軸は、レンズ１２の光軸方向である（ミラー等で光軸を通る光の向きを変える場合、光軸を通る光の光路に沿う方向とする）。
【００７６】
ガイドマークを形成するビームは、図６に示すように放射状に拡散するため、ｚ軸方向の位置により形成されるマークのサイズは異なる。しかし、マークは、照射光学系１５からのｚ軸方向の距離に比例したサイズとなる。
そして、レーザ光源１４及び照射光学系１５は、出力する光ビームにより、読取対象物４０までのｚ軸方向の距離ｚに応じて、隣接するマークの間隔がΔＸ（ｚ）であり、ｙ軸方向のサイズがＹ（ｚ）を読取対象物４０上に形成する。
【００７７】
図８乃至図１２に、レーザ光源１４及び照射光学系１５として採用し得る光学系の異なる例をそれぞれ示す。これらの各図には、レーザ光源１４から出力されるレーザビームの光軸の位置における断面を模式的に示し、（ａ）では図７のｘｚ平面と平行な平面による断面を、（ｂ）では図７のｙｚ平面と平行な平面による断面を示す。すなわち、各図の（ａ）にはガイドマークのｘ軸方向の広がりが、（ｂ）にはガイドマークのｙ軸方向の広がりが表れる。
【００７８】
まず、図８に示す第１例においては、レーザ光源１４が、レーザ素子１４ａとコリメートレンズ１４ｂを備える。照射光学系１５は回折光学素子１５ａを備える。
そして、レーザ素子１４ａが出力するレーザビームはコリメートレンズ１４ｂと図示しないアパーチャにより、平行光の細いレーザビームとしてレーザ光源１４から出力され、回折光学素子１５ａに入射する。
【００７９】
また、回折光学素子１５ａは、ｘ軸方向には距離ΔＸ（ｚ）だけ離れた点像列を形成し、ｙ軸方向には肉眼では分離して見えない点像列をＹ（ｚ）の長さに亘って形成する回折特性を有する。
従って、レーザ光源１４から出力されるレーザビームに回折光学素子１５ａを通過させることにより、図７に示したようなガイドマーク４２を形成することができる。
【００８０】
次に、図９に示す第２例においては、レーザ光源１４の構成は第１例の場合と基本的に同じであるが、アパーチャの開口径が第１例の場合より太く、出力するレーザビームの径も第１例の場合より太いものとする。
そして、照射光学系１５は屈折光学素子１５ｂを備える。この屈折光学素子１５ｂは、図９（ａ）に示す断面では、不連続な角度の入射面を備える。このため、レーザ光源１４から出力されるレーザビームは、入射位置に応じて異なる方向へ屈折され、分割されたレーザビームとして出射する。そして、分割後のレーザビームにより間隔ΔＸ（ｚ）でスポットが形成されるように、各入射面の角度を設定する。
【００８１】
一方、図９（ｙ）に示す断面では、滑らかな凹面を有する凹面レンズとし、幅Ｙ（ｚ）を持つように発散角を与える。
上記の不連続な角度の入射面と、滑らかな凹面は、それぞれ屈折光学素子１５ｂの異なる面に形成するとよい。この構成によっても、図７に示したようなガイドマーク４２を形成することができる。
【００８２】
次に、図１０に示す第３例においては、レーザ光源１４の構成は第２例の場合と同じである。照射光学系１５は、凹面鏡１５ｃと、鏡群１５ｄとを備える。
そして、凹面鏡１５ｃにより、レーザ光源１４から出力されるレーザビームにｙ軸方向の発散角を与える。鏡群１５ｄは、それぞれ異なる角度を向いた複数の鏡を備え、凹面鏡１５ｃにより反射されたレーザビームを、それぞれ異なる方向へ反射させる。また、その各鏡の角度を、反射されたレーザビームにより間隔ΔＸ（ｚ）でスポットが形成されるように設定する。
以上の光学系によっても、図７に示したようなガイドマーク４２を形成することができる。
【００８３】
次に、図１１に示す第４例においては、レーザ光源１４は、レーザ素子１４ａとレンズ１４ｃを備える。レーザ素子１４ａは第１乃至第３例と同じものであるが、レンズ１４ｃは、レーザ素子１４ａから出力されるレーザビームに一定の発散角を持たせて出射するものである。
【００８４】
また、照射光学系１５は複数のスリットを備える遮光板１５ｅを備える。スリットは、ｘ軸方向が短辺、ｙ軸方向が長辺の長方形状である。そして、レンズ１４ｃから出射されるレーザビームは、発散角を持つため、遮光板１５ｅのスリットを追加する際、その通過位置に応じて異なる方向へ進む。また、スリットの形状に合った、ｙ軸方向に長い長方形状のスポットとなる。
このスポットの間隔がΔＸ（ｚ）で、長辺がｙ（ｚ）となるようにスリットを切ることにより、以上の光学系によっても、図７に示したようなガイドマーク４２を形成することができる。
【００８５】
次に、図１２に示す第５例においては、レーザ光源１４の構成は第１例の場合と同じである。照射光学系１５は、ｘ軸方向及びｙ軸方向にそれぞれ揺動する走査ミラー１５ｆを備える。なお、走査ミラー１５ｆは、図では１枚で示しているが、その機能を複数のミラーにより実現してもよい。
【００８６】
そして、走査ミラー１５ｆにより、レーザ光源１４が出力するレーザビームを偏向し、ガイドマーク４２を形成する領域を走査させる。同時に、レーザビームの照射位置がガイドマーク４２の各バーを形成する位置Ｐに到達するタイミングでレーザ光源１４を点灯させ、その他のタイミングではレーザ光源１４を消灯させるよう、レーザ光源１４を制御する。
【００８７】
また、走査ミラー１５ｆによる走査は、レーザビームがｘ軸方向に１ライン走査する間にｙ軸方向の位置が１ドット分進むように、ｘ軸方向は速く、ｙ軸方向は遅く行う。走査の速度は、ｙ軸方向に連続するドットにより棒状のマークが認識できる程度であれば、任意でよい。
以上の光学系によれば、図１２（ｃ）に示すように、一定間隔に並ぶ棒状のガイドマークを形成することができる。すなわち、図７に示したようなガイドマーク４２を形成することができる。
【００８８】
次に、以上説明してきたガイドマークの照射タイミングについて説明する。
図１３に、コード記号読取装置各部の動作タイミング例を示す。
コード記号読取装置１００は、コード記号の読み取り指示があると、図１３に示すようにまずパルスＬＥＤ１３を点灯して照明光を投光しつつ、撮像センサ１１を露光させて画像を撮像する。このタイミングでは、ガイドマークを照射するとマークが画像に写り込んでしまい、デコードの支障になることが考えられる。従って、ガイドマークの照射は行わない。
【００８９】
その後、撮像センサ１１による撮像が完了すると、撮像センサ１１は撮像結果を画像データとしてデコーダ２０へ転送する。これには一定の時間を有する。またその間、撮像を行わないことからパルスＬＥＤ１３を点灯させても無駄であるので、これは消灯する。
一方、この転送中であればガイドマークを照射しても撮像の邪魔にならないため、コード記号読取装置１００は、レーザ光源１４を点灯させてガイドマークの照射を行う。そして、画像データの転送完了後、次の撮像を開始する前に照射を停止する。
【００９０】
そして、次の撮像中にもガイドマークの照射を停止しておき、撮像終了後に再度照射を開始する。以後デコード成功までこれを繰り返す。
また、デコーダ２０は、画像データの転送が完了するとその画像データを解析してコード記号のデコードを行う。このデコードのタイミングは、ガイドマークの照射有無とは特に関係ない。
【００９１】
以上のように、撮像センサ１１による撮像中はガイドマークの照射を停止することにより、デコードへの悪影響を防止することができる。なお、画像データの転送には一定の時間を要するため、この期間だけガイドマークを照射したとしても、ユーザは十分にガイドマークを視認することができる。
【００９２】
次に、コード記号の読み取りを行う場合にコード記号読取装置１００のＣＰＵ２１が実行する処理について説明する。
図１４にその処理のフローチャートを示す。
ＣＰＵ２１は、操作部３１の操作等によりコード記号の読取を開始する指示がなされたことを検出すると、図１４のフローチャートに示す処理を開始する。
【００９３】
そしてまず、パルスＬＥＤ１３を点灯させて照明光を投光すると共に、撮像センサ１１を制御して露光を実行させる（Ｓ１１）。照明光の投光及び露光を行う時間は、予め定めておく。周囲の光量や読取対象物４０までの距離に基づき、予め記憶されているテーブルを参照して自動で設定するようにしてもよい。
【００９４】
次に、ＣＰＵ２１は、撮像センサ１１を制御して、撮像結果を画像データとしてデコーダ２０へ転送する動作を開始させる（Ｓ１２）。その後、レーザ光源１４を点灯させてガイドマークの照射を開始させる（Ｓ１３）。
ＣＰＵ２１は次に、撮像センサ１１から転送されてきた画像データを解析し、露出が適切か否か判断する（Ｓ１４）。すなわち、全体の明るさレベルが高すぎたり低すぎたりしないか判断する。
【００９５】
そして、適切であれば、その画像データをデコードの対象として、コード記号のデコードを実行する（Ｓ１５）。このデコードが成功すれば（Ｓ１６のＹＥＳ）、デコード結果を外部装置へ出力するか又はＲＡＭ２３に記憶すると共に、コード記号の読み取り完了をユーザに通知し（Ｓ１９）、処理を終了する。
デコード結果をどうするかは、予め設定しておく。また、読取完了の通知は、通知部３２により、例えばブザーを鳴動させたり、ランプを点灯させたりして行うことができる。
【００９６】
一方、ステップＳ１４でＮＯの場合、検出した明るさレベルに応じてパルスＬＥＤ１３の投光時間を調整する（Ｓ１７）。その後、レーザ光源１４を消灯させてガイドマークの照射を停止させ（Ｓ１８）、ステップＳ１１に戻って再度撮像を行う。このときのパルスＬＥＤ１３の点灯時間は、ステップＳ１７での調整後の値である。
また、ステップＳ１６でＮＯの場合には、露出は適正であるため投光時間の調整はせずにステップＳ１８へ進み、以降の処理を行う。
【００９７】
以上の処理により、ＣＰＵ２１は光学部１０を制御して、図１３を用いて説明したタイミングでの撮像及びガイドマークの照射を実行させると共に、コード記号のデコードを行うことができる。
この図１４の処理を採用する場合、ユーザは読取対象物４０に照射されたガイドマークを参照し、ガイドマークの間隔とコード記号中のエレメントのサイズとを目視で比較する。そして、ガイドマークの間隔が広すぎる（予め定めた（例えば黒の）エレメントが隣接するガイドマークの間に所定数以上入る）場合に、撮像センサ１１の撮像分解能が十分でないと判断できる。すなわち、コード記号読取装置１００が読取対象物４０から遠すぎて、コード記号４１についてデコード可能な程度に鮮明な画像が撮像できない状態であると認識できる。そして、コード記号読取装置１００を読取対象物４０に近づけることにより、デコード可能な状態とすることができる。
【００９８】
ところで、以上のようなコード記号読取装置１００と読取対象物４０との距離の認識を、自動で行うようにすることもできる。
図１５に、この場合にＣＰＵ２１が実行する処理の例を示す。
この図１５の処理は、図１４の処理にステップＳ２１乃至Ｓ２６を追加したものである。ステップＳ１１乃至Ｓ１９については図１４と同じであるので説明を省略する。
【００９９】
図１５の処理においては、ステップＳ１６でＮＯの場合、ステップＳ１８へ進む代わりに、ステップＳ２１へ進む。
そして、ステップＳ１１及びＳ１２と同様に、パルスＬＥＤ１３の投光及び撮像センサ１１の露光を実行し、撮像結果をデコーダ２０へ転送させる（Ｓ２１）。ここでの撮像は、ガイドマークを照射したまま行う。その他の条件はステップＳ１１と同じでよい。
【０１００】
ＣＰＵ２１は次に、転送された画像データを解析し、ガイドマーク中の隣接マーク間の間隔ｋを取得する（Ｓ２２）。間隔は画素数により計測すればよい。また、いくつかの位置で間隔を計測し、その平均値を取得するとよい。
さらに、転送された画像データを解析し、画像データ中に含まれるコード記号の種類と、そのコード記号中で間隔ｋ内にある黒エレメントの数ｒ′を取得する（Ｓ２３）。表１の説明で述べたように、サイズの異なるエレメントがある場合でも、個数のみカウントすればよい。また、ｋの何倍かの領域についてエレメント数をカウントしてその倍数で割り、ｒ′の平均値を求めるとよい。
【０１０１】
ステップＳ１６でＮＯになっているので、ユーザがコード記号読取装置１００を動かしていなければ、再度撮像してもやはりデコードは不能であると考えられる。しかし、この状態では、コード記号の特徴箇所による種類の判別や、エレメント数のカウント程度であれば可能な場合もある。これらの判別やカウントが不能の場合、ステップＳ２３の結果は「不明」とすればよい。
【０１０２】
ＣＰＵ２１は次に、ステップＳ２３で取得したコード記号の種類と黒エレメントの数ｒ′、およびステップＳ２２で取得した間隔ｋに基づき、撮像センサ１１に現在の距離でコード記号をデコードできる分解能があるか否か判定する（Ｓ２４）。
この判定は、コード記号の種類と対応して予め記憶させておく定数ｔと、デコード性能を示す定数ｑとを用いてｑ＞ｋ／ｒ′×ｔの場合に十分な分解能があるとして行うことができる。
【０１０３】
ｔ及びｑの意味については、式９及び式１０を用いて上述した通りである。それぞれ表１及び表２に示したようなコード記号の種類に応じた値を予めＲＯＭ２２に記憶させておき、この値をステップＳ２４で用いるとよい。ｑの値については、周囲の環境に応じた変動もあり得ることから、調整をユーザが手動で行うことができるようにしてもよい。
【０１０４】
いずれにせよ、ステップＳ２４の判定の結果十分な分解能がないと判断した場合（Ｓ２５のＮＯ）、ＣＰＵ２１は、通知部３２により、現在の距離ではコード記号の読み取りが困難であることをユーザに通知し（Ｓ２６）、その後ステップＳ１８以下の処理に進む。この通知は、例えばブザーを鳴動させたり、ランプを点灯させたりして行うことができる。しかし、もちろんステップＳ１９の通知と区別できるように行う。
【０１０５】
なお、ステップＳ２４での判定に必要なデータが揃わなかった場合、十分な分解能がないと判断するようにするとよい。解像度が著しく不足しているために、コード記号の種類の判別やエレメント数のカウントができなかったと判断できるためである。
また、ステップＳ２４で十分な分解能があると判断した場合、ＣＰＵ２１はそのままステップＳ１８以下の処理に進む。
【０１０６】
以上の図１５の処理において、ステップＳ２４でＣＰＵ２１は判定手段として機能する。
以上の処理を実行することにより、ユーザは、コード記号読取装置１００と読取対象物４０との距離が遠すぎて読み取りができない場合、これをステップＳ２６の通知により容易に把握することができる。そして、これに応じてコード記号読取装置１００の位置を調整することにより、コード記号をデコード可能な状態とすることができる。
【０１０７】
ステップＳ２５でＹＥＳの場合は、分解能は足りているものの、コード記号と画素の重なり方が悪くエレメントが適切に認識できていないことが考えられる。この場合、同じ条件で撮像を繰り返せば、手の揺れによりコード記号と画素の位置関係が変わるため、いずれデコード可能な画像が得られると考えられる。
【０１０８】
なお、図１５の処理についてはコード記号の種類も自動判別するようにしたが、予め読み取り対象のコード記号が決まっている場合、コード記号がその種類であることを前提にステップＳ２３及びＳ２４の処理を行うようにしてもよい。もちろん、読み取り対象のコード記号の種類は、ユーザが選択可能とすることもできる。
【０１０９】
また、図１５の処理では黒エレメントの数を数えるようにしたが、白エレメントの数を数えるようにしてもよい。それら以外のエレメントがあれば、他のエレメントの数を数えるようにしてもよい。これらの場合、ステップＳ２４における定数ｔとしては、数を数えた種類のエレメントが最小エレメント１個の幅当たり平均していくつあるかを示す定数を用いる。
【０１１０】
以上で実施形態の説明を終了するが、装置の構成や、読取対象のコード記号の種類、ガイドマークの形状、具体的な処理の内容等が上述の実施形態で説明したものに限られないことはもちろんである。
例えば、ガイドマーク中に特徴点を設け、ガイドマークを撮像して得た画像中における特徴点の位置に基づき、コード記号読取装置１００と読取対象物４０との距離を計測できるようにすることが考えられる。
【０１１１】
図１６に、この場合のガイドマークの例を示す。（ａ）と（ｂ）にそれぞれ異なる例を示すが、いずれの例でも４３が特徴点を示すマークである。等間隔で並ぶガイドマークを構成する複数のマークの一部を除去してこれに加えてマーク４３を形成したり、単にマーク４３を追加したりすることができる。
【０１１２】
（ａ）のように点状のマークを用いても、（ｂ）のように線状のマークを用いてもよい。線状の場合、実際の特徴点の位置は、その中央としたり、端部としたりすることが考えられる。いずれの場合も予め定めてコード記号読取装置１００に設定しておけばよい。
そして、読取対象物４０上に形成されたこのガイドマークの画像を撮像することにより、その画像中の特徴点の位置から、視差法によりコード記号読取装置１００（より正確にはレンズ１２）と読取対象物４０との距離を計測することができる。
【０１１３】
図１７は、読取対象物までの距離の算出に必要なパラメータの説明図である。
読取対象物４０までの距離ｚについては、同図中の次のパラメータと下記式１４とに基づいて算出することができる。
ｚ：レンズ１２の主点から読取対象物までの距離
ａ：撮像センサ１１のイメージエリアに平行な向きに測った場合のレンズ１２の主点からレーザ光源１４における特徴点を示すマークの出射位置（の中心）までの距離（設計値）
θ：撮像センサ１１の半画角（設計値）
Ｎ：半画角と対応する範囲の撮像センサ１１の画素数（例えばｘ軸方向の総画素数の１／２、設計値）
ｎ：撮像センサ１１のイメージエリアの中心から特徴点が映り込んだ画素までの距離（ｘ軸方向の画素数）
φ：特徴点を示すマークを構成するレーザ光の光軸と、レンズ１２の光軸方向とがなす角（図で下向きが正、設計値）
【０１１４】
【数２】
2014127105.tif 000006
【０１１５】
以上のように読取対象物４０までの距離を計測することにより、その距離に応じてパルスＬＥＤ１３の点灯時間や撮像センサ１１の露光時間を設定し、露出不良による撮像のやり直しを低減して、デコード成功までの時間を短縮することができる。
また、上記の他、ガイドマークを形成するための光学系は、図８乃至図１２に示したものには限られない。また、ガイドマークを形成する手段も、放射状に拡散する光ビームには限られない。
【０１１６】
ガイドマークを形成する範囲については、撮像センサ１１による撮像可能範囲、すなわちコード記号の読取可能範囲に概ね一致する範囲に広がるように形成してもよい。このようにすれば、ガイドマークを、読取可能範囲を示すマークと兼用することができる。しかし、これに限られず、中央付近に数ピッチ（数本）だけを表示してもよい。この場合、別途読取可能範囲を示すマークを表示するようにするとよい。Ｍの値は、コード記号中のエレメント数ではなく、このような用途に合わせて定めてもよい。
【０１１７】
また、例えば図１２に示した光学系を用いてガイドマーク４２を形成する場合、Ｍ及びψを、動的に変更することが可能である。この場合、読み取り対象のコード記号の規格の指定を受け付け、その規格と対応するｔ、ｑ及びＭの値を用いてｋ及びψを再計算し、指定された規格にあったガイドマーク４２を表示できるようにすることが考えられる。
さらに、上述の通りｑの値は周囲の環境に応じて変動するが、センサによってその環境を示す値を検出し、検出結果に応じて求まるｑの値に基づいて随時ｋ及びψを再計算することも考えられる。このようにすれば、環境の変化によらず、常に適切に撮像センサ１１の撮像分解能を示すガイドマーク４２を形成することができる。
【０１１８】
また、この発明の光学的情報読取装置は、据え置き型の装置としても、手持ち型の装置としても、構成することができる。読み取る対象はコード記号に限らず、文字や、コード記号以外の記号であってもよい。
また、以上述べてきた構成及び変形例は、矛盾しない範囲で個別に適用したり適宜組み合わせて適用したりすることも可能である。
【産業上の利用可能性】
【０１１９】
以上説明してきた光学的情報読取装置によれば、読取対象物が光学的情報読取装置の読取深度内にあるか否かを、ユーザが容易に把握できるようにすることができる。特に、読取深度より遠い位置にあるか否かを容易に把握できるようにすることができる。
【符号の説明】
【０１２０】
１０…光学部、１１…撮像センサ、１２…レンズ、１３…パルスＬＥＤ、１４…レーザ光源、１４ａ…レーザ素子、１４ｂ…コリメートレンズ、１４ｃ…レンズ、１５…照射光学系、１５ａ…回折光学素子、１５ｂ…屈折光学素子、１５ｃ…凹面鏡、１５ｄ…鏡群、１５ｅ…遮光板、１５ｆ…走査ミラー、２０…デコーダ、２１…ＣＰＵ、２２…ＲＯＭ、２３…ＲＡＭ、２４…通信Ｉ／Ｆ、３１…操作部、３２…通知部、４０…読取対象物、４１…コード記号、４２…ガイドマーク、４３…特徴点、１００…コード記号読取装置、２００…読取装置、２０１〜２０３…マーク
【図１】
2014127105.tif 000007
【図２】
2014127105.tif 000008
【図３】
2014127105.tif 000009
【図４Ａ】
2014127105.tif 000010
【図４Ｂ】
2014127105.tif 000011
【図５】
2014127105.tif 000012
【図６】
2014127105.tif 000013
【図７】
2014127105.tif 000014
【図８】
2014127105.tif 000015
【図９】
2014127105.tif 000016
【図１０】
2014127105.tif 000017
【図１１】
2014127105.tif 000018
【図１２】
2014127105.tif 000019
【図１３】
2014127105.tif 000020
【図１４】
2014127105.tif 000021
【図１５】
2014127105.tif 000022
【図１６】
2014127105.tif 000023
【図１７】
2014127105.tif 000024
【図１８】
2014127105.tif 000025