(57)【特許請求の範囲】
【請求項１】
２次元画像検出手段と、
その２次元画像検出手段から出力される走査線信号を増幅する増幅手段と、
を備え、その増幅手段にて増幅された走査線信号に基づき、２次元画像内に含まれている２次元コードを読み取る２次元コード読取装置であって、
前記増幅手段にて増幅された走査線信号に基づき、前記２次元画像内における前記２次元コードの存在領域を特定する存在領域特定手段と、
前記増幅手段にて増幅された走査線信号の内、前記存在領域特定手段によって特定された前記２次元コードの存在領域に対応する走査線信号の信号レベルが所定の調整範囲外にある場合に、その２次元コード存在領域対応の信号レベルが前記調整範囲内となるよう、前記増幅手段の増幅率を変更設定する増幅率変更設定手段と、
備え、
前記増幅手段は、出力された増幅信号の平均値と基準値との差に基づいて自動的にゲインが制御される自動利得制御（ＡＧＣ）機能付きの増幅手段として構成されており、
前記増幅率変更設定手段は、前記基準値を変更することによって前記増幅手段の増幅率を変更設定するよう構成されている
ことを特徴とする２次元コード読取装置。
【請求項２】
２次元画像検出手段と、
その２次元画像検出手段から出力される走査線信号を増幅する増幅手段と、
を備え、その増幅手段にて増幅された走査線信号に基づき、２次元画像内に含まれている２次元コードを読み取る２次元コード読取装置であって、
前記増幅手段にて増幅された走査線信号に基づき、前記２次元画像内における前記２次元コードの存在領域を特定する存在領域特定手段と、
前記増幅手段にて増幅された走査線信号の内、前記存在領域特定手段によって特定された前記２次元コードの存在領域に対応する走査線信号の信号レベルが所定の調整範囲外にある場合に、その２次元コード存在領域対応の信号レベルが前記調整範囲内となるよう、前記増幅手段の増幅率を変更設定する増幅率変更設定手段と、
備え、
前記増幅手段は、出力された増幅信号の平均値と基準値との差に制御値を加算した値に基づいて自動的にゲインが制御される自動利得制御（ＡＧＣ）機能付きの増幅手段として構成されており、
前記増幅率変更設定手段は、前記加算する制御値を変更することによって前記増幅手段の増幅率を変更設定するよう構成されていることを特徴とする光学情報読取装置。
【請求項３】
前記増幅率変更設定手段は、
前記２次元画面内における前記２次元コードの存在領域の割合と、前記２次元画面内における信号レベルの平均値とに基づき、前記基準値又は前記加算する制御値を変更することによって記増幅手段の増幅率を変更設定するよう構成されていることを特徴とする請求項１又は２記載の２次元コード読取装置。
【請求項４】
前記増幅率変更設定手段は、
前記増幅手段の増幅率を、前記２次元コードの存在領域に対応する走査線信号の信号レベルに基づいて一意的に決まる増幅率に変更設定した後、前記２次元コードの存在領域に対応する走査線信号の信号レベルが所定の調整範囲内にあるかどうかを判断する判断手段と、
当該判断手段によって前記信号レベルが所定の調整範囲外にあると判断された場合には、前記変更設定する増幅手段の増幅率を補正していく補正手段と、
を備えることを特徴とする請求項１〜３のいずれか記載の２次元コード読取装置。
【請求項５】
前記増幅率変更設定手段は、
前記２次元コードの存在領域に対応する走査線信号の振幅が所定の調整範囲外にある場合に、その２次元コード存在領域対応の振幅が前記調整範囲内となるよう、前記増幅手段の増幅率を変更設定するよう構成されていることを特徴とする請求項１〜４のいずれか記載の２次元コード読取装置。
【請求項６】
前記増幅率変更設定手段は、
前記２次元コードの存在領域に対応する走査線信号の内、前記２次元コードを構成する相対的に白いパターン部分に対応する信号レベルが所定の調整範囲外にある場合に、その２次元コード存在領域対応の白パターン信号レベルが前記調整範囲内となるよう、前記増幅手段の増幅率を変更設定するよう構成されていることを特徴とする請求項１〜４のいずれか記載の２次元コード読取装置。
【請求項７】
前記存在領域特定手段は、
前記増幅手段にて増幅された走査線信号の信号レベルを検出する信号レベル検出手段を備えており、その信号レベル検出手段にて検出された信号レベルに基づき、前記２次元画像内における前記２次元コードの存在領域を特定するよう構成されていることを特徴とする請求項１〜６のいずれか記載の２次元コード読取装置。
【請求項８】
前記２次元コードは、２進コードで表されるデータをセル化して２次元のマトリックス上にパターンとして配置し、マトリックス内の所定位置に特定周波数成分比が得られるパターンからなる位置決め用シンボルを配置したものであり、
前記存在領域特定手段は、
前記増幅手段にて増幅された走査線信号中での、前記特定周波数成分比の信号の存在を検出する周波数成分比検出手段を備えており、その周波数成分比検出手段にて検出された特定周波数成分比の走査線信号の前記２次元画像内における位置に基づき、前記２次元画像内における前記２次元コードの存在領域を特定するよう構成されていることを特徴とする請求項１〜６のいずれか記載の２次元コード読取装置。
【請求項９】
前記位置決め用シンボルは、前記マトリックス内の、少なくとも２個所の所定位置に、各々中心をあらゆる角度で横切る走査線において同じ特定周波数成分比が得られるパターンにて構成されていることを特徴とする請求項８記載の２次元コード読取装置。
【請求項１０】
発光手段から照射した照射光が読み取り対象に反射した反射光を前記２次元画像検出手段が検出する構成であり、
前記増幅率変更設定手段による前記増幅手段の増幅率の変更設定に伴い、前記発光手段に対する光量制御を実行する光量制御手段を備えることを特徴とする請求項１〜９のいずれか記載の２次元コード読取装置。
【請求項１１】
前記増幅率変更設定手段による前記増幅手段の増幅率の変更設定に伴い、前記２次元画像検出手段における露光時間制御を実行する露光時間制御手段を備えることを特徴とする請求項１〜９のいずれか記載の２次元コード読取装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、２次元画像検出手段から出力された走査線信号を増幅手段によって増幅し、その増幅された走査線信号に基づいて２次元画像内に含まれている２次元コードを読み取る２次元コード読取装置に関する。
【０００２】
【従来の技術】
一般的に２次元コードの読み取りは、ＣＣＤカメラ等の２次元画像検出手段から２次元画像を取り込み、その２次元画像中より読み取り対象の２次元コードのみを切り出し、その切り出された２次元コードからコードの大きさを求め、さらにデータセルの座標を求め、データセルの「０」，「１」（黒，白）判別をしキャラクター情報に変換するという具合いに行っている。このような２次元コードは、バーコードとは異なり狭小な面積で比較的多くの情報を持つことができる。
【０００３】
そして、このように２次元画像を取り込む装置においては、一般的にＡＧＣアンプによるゲインコントロールを行っている。これは、２次元画像検出手段から出力される走査線信号を増幅するＡＧＣアンプの出力をローパスフィルタで積分して一定ゲインを掛け、ＡＧＣアンプに負帰還をかけることにより増幅率を自動的に調整するものである。具体的には、負帰還アンプに、ＡＧＣアンプの出力をローパスフィルタで積分して得た出力平均電圧と所定の基準電圧を入力させ、両者の差に一定ゲインを掛けたものを出力してＡＧＣアンプへの制御電圧としていた。これにより、ＡＧＣアンプの出力をローパスフィルタで積分して得た出力平均電圧が相対的に大きい場合には画面全体が相対的に明るい場合であるため、ＡＧＣアンプでの増幅率を小さくし、逆に出力平均電圧が相対的に小さい場合には画面全体が相対的に暗い場合であるため、ＡＧＣアンプでの増幅率を大きくすることができる。その結果、周囲照度がばらつくような状況においても、その周囲照度に対応する増幅率を得ることができるというものである。
【０００４】
【発明が解決しようとする課題】
しかしながら、２次元コードは、２次元画像検出手段において検出した２次元画像の内の一部に含まれているものであり、このように画面全体の明るさに基づいて増幅率を制御していては、２次元コードの読み取りという点において不都合な場合も生じる。例えば、図４（ａ）は白地に比較的小さな２次元コードがある場合（コード１）、図４（ｂ）は白地に比較的大きな２次元コードがある場合（コード２）、図４（ｃ）は黒地に比較的大きな２次元コードがある場合（コード３）、図４（ｄ）は黒地に比較的小さな２次元コードがある場合（コード４）、をそれぞれ示している。ここで、図４（ｂ）のコード２を基準として前記負帰還アンプの基準電圧を設定すると、図４（ａ）のコード１の場合には、コード２の場合よりも画面全体が明るいのでＡＧＣアンプの増幅率は小さくなり、ＡＧＣアンプの出力波形の振幅は小さくなってしまう。そのため、その出力波形に基づく２値化が適切に出来なくなる可能性がある。逆に、図４（ｃ）のコード３の場合には、コード２の場合よりも画面全体が暗いのでＡＧＣアンプの増幅率は大きくなり、ＡＧＣアンプの出力波形の振幅は大きくなる。さらに、図４（ｄ）のコード４の場合には、コード３の場合よりも画面全体がさらに暗いのでＡＧＣアンプの出力波形が飽和してしまう可能性もある。この場合もまた、出力波形に基づく２値化が適切に出来なくなる可能性がある。
【０００５】
このように、２次元画面中に含まれる２次元コードの大きさや２次元コード以外の部分の色（地色）などによって画面全体の明るさは左右されてしまうため、上述したような画面全体の明るさに基づくＡＧＣ機能では、読み取り対象の２次元コードを読み取るために適切な増幅率にすることができない場合が発生する。
【０００６】
そこで本発明は、２次元画像の走査信号中に含まれている２次元コードを読み取る場合に、走査信号の増幅率を２次元コード読取の観点で適切なものにすることのできる２次元コード読取装置を提供することを目的としている。
【０００７】
【課題を解決するための手段及び発明の効果】
上記目的を達成するためになされた請求項１記載の２次元コード読取装置は、２次元画像検出手段と、その２次元画像検出手段から出力される走査線信号を増幅する増幅手段とを備え、その増幅手段にて増幅された走査線信号に基づき、２次元画像内に含まれている２次元コードを読み取る２次元コード読取装置であって、前記増幅手段にて増幅された走査線信号に基づき、前記２次元画像内における前記２次元コードの存在領域を特定する存在領域特定手段と、前記増幅手段にて増幅された走査線信号の内、前記存在領域特定手段によって特定された前記２次元コードの存在領域に対応する走査線信号の信号レベルが所定の調整範囲外にある場合に、その２次元コード存在領域対応の信号レベルが前記調整範囲内となるよう、前記増幅手段の増幅率を変更設定する増幅率変更設定手段とを備え、前記増幅手段は、出力された増幅信号の平均値と基準値との差に基づいて自動的にゲインが制御される自動利得制御（ＡＧＣ）機能付きの増幅手段として構成されており、前記増幅率変更設定手段は、前記基準値を変更することによって前記増幅手段の増幅率を変更設定するよう構成されていることを特徴とする。
【０００８】
本発明の２次元コード読み取り装置は、２次元画像検出手段から出力される走査線信号を増幅手段によって増幅し、その増幅された走査線信号に基づき、２次元画像内に含まれている２次元コードを読み取るものである。その際、次のように増幅手段における増幅率を制御する。まず、存在領域特定手段が、増幅手段にて増幅された走査線信号に基づいて２次元画像内における２次元コードの存在領域を特定する。そして、増幅率変更設定手段が、増幅手段にて増幅された走査線信号の内、存在領域特定手段によって特定された２次元コードの存在領域に対応する走査線信号の信号レベルが所定の調整範囲外にある場合に、その２次元コード存在領域対応の信号レベルが前記調整範囲内となるよう、増幅手段の増幅率を変更設定する。
【０００９】
２次元画像検出手段にて検出された２次元画像内には、２次元コードも含まれているが２次元コード以外の部分もある。そのため、例えば２次元コード自体は同じであっても、２次元コード以外の部分の明るさに違いが生じる場合がある。例えば図４にて説明したように、２次元コード以外の部分が白か黒かで画面全体の明るさは大きく違ってくる。この場合、ビデオカメラなどのように、２次元画像検出手段にて検出された２次元画像の全てがターゲットとなる場合には、画面全体の明るさに応じて増幅率を調整することが好ましいが、２次元コード読取装置の場合には、２次元画像中の２次元コードの部分だけがターゲットである。２次元コードだけに注目すれば、周囲の色などに関係なく、その２次元コードを適切に読み取るための増幅率が決まるはずであるが、画面全体の明るさに基づいてしまうと、２次元コードの読み取りという点では必ずしも適切な増幅率にならない場合がある。
【００１０】
そこで本発明では、２次元画像内における２次元コードの存在領域を特定し、その特定された２次元コードの存在領域に対応する走査線信号の信号レベルに基づいて、２次元コードを適切に読み取るための増幅率を決定する。つまり、２次元コードの存在領域に対応する走査線信号の信号レベルが所定の調整範囲内となるよう、増幅手段の増幅率を変更設定するのである。これによって、２次元画像の走査信号中に含まれている２次元コードを読み取る場合に、走査信号の増幅率を２次元コード読取の観点で適切なものにすることができる。
【００１１】
そして、増幅手段が、出力された増幅信号の平均値と基準値との差に基づいて自動的にゲインが制御される自動利得制御（ＡＧＣ）機能付きの増幅手段として構成されており、その基準値を変更することによって増幅手段の増幅率を変更設定する。
【００１２】
例えば、図４（ａ）のコード１の場合と図４（ｄ）のコード４とでは、画面全体の明るさが異なり、増幅手段から出力された増幅信号の平均値もコード４の場合の方が小さくなる。したがって、基準値が固定であると、図４（ａ）のコード１の場合に比べて図４（ｄ）のコード４の場合の増幅率が極端に大きくなってしまい、例えば出力波形が飽和して読取不可能といった状態となる可能性がある。しかし、基準値自体を変更すれば、図４（ａ）のコード１の場合と図４（ｄ）のコード４とで同じ様な増幅率とすることも可能であり、それぞれの場合の２次元コードを読み取るのに適切な増幅率を得ることができる。
また、請求項２に係る２次元コード読取装置の場合は、増幅手段が、出力された増幅信号の平均値と基準値との差に制御値を加算した値に基づいて自動的にゲインが制御される自動利得制御（ＡＧＣ）機能付きの増幅手段として構成されており、加算する制御値を変更することによって増幅手段の増幅率を変更設定するようにしてもよい。この場合にも、加算値自体を変更すれば、図４（ａ）のコード１の場合と図４（ｄ）のコード４とで同じ様な増幅率とすることも可能であり、それぞれの場合の２次元コードを読み取るのに適切な増幅率を得ることができる。
また、請求項１または２のように基準値又は加算する制御値を変更することによって増幅手段の増幅率を変更設定する場合には、請求項３に示すように、２次元画面内における２次元コードの存在領域の割合と、２次元画面内における信号レベルの平均値とに基づいて変更設定することが好ましい。
【００１３】
これは、自動利得制御（ＡＧＣ）機能付きの増幅手段とした場合、基本的な構成としては出力された増幅信号の平均値に基づくこととなる。したがって、２次元画面内における２次元コードの存在領域の割合と、２次元画面内における信号レベルの平均値とに基づけば、２次元コードを読み取るのに適切な増幅率を得るための基準値又は加算する制御値を、２次元画面全体の明るさを考慮した上で設定することができるからである。
なお、増幅率変更設定手段によって増幅率を変更設定する点に関しては次のような工夫が考えられる。
（１）２次元コードの存在領域に対応する走査線信号の信号レベルに基づいて一意的に決まる増幅率に変更設定してもよいが、フィードバック制御してもよい。つまり、増幅手段の増幅率を、２次元コードの存在領域に対応する走査線信号の信号レベルに基づいて一意的に決まる増幅率に変更設定した後、２次元コードの存在領域に対応する走査線信号の信号レベルが所定の調整範囲内にあるかどうかを判断し、信号レベルが所定の調整範囲外にあると判断された場合には、変更設定する増幅手段の増幅率を補正していくのである。このようにすれば、より実状に合致した増幅率とすることができる。
（２）例えば２次元コードの存在領域に対応する走査線信号の「振幅」が所定の調整範囲内となるよう増幅率を変更設定してもよいし、２次元コードを構成する相対的に「白いパターン部分に対応する信号レベル」が所定の調整範囲内となるよう増幅率を変更設定してもよい。
【００１４】
一方、２次元画像内における２次元コードの存在領域の特定に関しては次の（イ）、（ロ）のような工夫が考えられる。
（イ）増幅手段にて増幅された走査線信号の信号レベルを検出する信号レベル検出手段（例えばＡ／Ｄ変換器など）を備え、その信号レベル検出手段にて検出された信号レベルに基づいて２次元コードの存在領域を特定する。この場合には、検出された信号レベルを基にして、２次元コードに特有な信号レベルパターンが存在する領域を特定していく。
（ロ）２次元コードが、２進コードで表されるデータをセル化して２次元のマトリックス上にパターンとして配置し、マトリックス内の所定位置に特定周波数成分比が得られるパターンからなる位置決め用シンボルを配置したものである場合には、増幅手段にて増幅された走査線信号中での特定周波数成分比の信号の存在を検出する周波数成分比検出手段を備えるようにし、その周波数成分比検出手段にて検出された特定周波数成分比の走査線信号の２次元画像内における位置に基づいて２次元コードの存在領域を特定する。
【００１５】
この場合には、２次元画像の走査線信号の信号レベルを画面全体にわたって探索しなくても、単に周波数成分比検出手段が走査線信号中から、位置決め用シンボルを表す周波数成分比の信号を検出すれば、それに基づいて２次元コードの存在領域を特定することができる。したがって、存在領域特定の処理が極めて迅速化される。
【００１６】
なお、位置決め用シンボルは、マトリックス内の、少なくとも２個所の所定位置に、各々中心をあらゆる角度で横切る走査線において同じ特定周波数成分比が得られるパターンにて構成することが考えられる。このようにすれば、２次元画像内に２次元コードが一定しないあらゆる角度の回転状態で含まれていても対応でき、全方向で高速読み取りができる。
【００１７】
ところで、本発明は、２次元コードが存在する領域における走査線信号の振幅や白パターンの信号レベルを所望の状態にすることによって適切なコード読取を実現するため、増幅手段における増幅率を調整することを基本としている。しかし、走査線信号の振幅や白パターンの信号レベルに影響を与えるのは、これだけでなく、発光手段から照射した照射光が読み取り対象に反射した反射光を２次元画像検出手段が検出する構成であれば、その発光手段の光量も関係してくる。あるいは、２次元画像検出手段における露光時間もやはり関係してくる。
【００１８】
したがって、これら発光手段の光量や露光時間を調整可能な構成を前提とした場合には、増幅率変更設定手段による増幅手段の増幅率の変更設定に伴い、発光手段に対する光量制御を実行したり、２次元画像検出手段における露光時間制御を実行することもできる。この光量制御や露光時間制御は、走査線信号の振幅や白パターンの信号レベルを所望の状態にする上で補助的に作用し、増幅率の変更設定だけでは対応し切れない場合に有効である。
【００１９】
【発明の実施の形態】
以下に、本発明の好適な実施例を図面に基づいて説明する。尚、本発明の実施の形態は、下記の実施例に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
［第１実施例］
図１は第１実施例としての２次元コード読取装置１のブロック図を示す。本実施例の２次元コード読取装置１は、カメラ部制御装置１０とシステム制御装置３０の２つの制御装置を備えており、それぞれで分担して制御を行っている。
【００２０】
まず、カメラ部制御装置１０側に関連する構成としては、ＣＣＤエリアセンサ１１と、ＡＧＣアンプ１２と、ローパスフィルタ（ＬＰＦ）１３と、基準電圧生成部１４と、負帰還アンプ１５と、補助アンプ１６と、２値化回路１７と、周波数分析器１８と、Ａ／Ｄ変換器１９と、画像メモリ２０と、画像メモリコントローラ２１と、メモリ２２と、照明発光ダイオード（照明ＬＥＤ）３０などが挙げられる。
【００２１】
ＣＣＤエリアセンサ１１は、２次元的に配列された複数の受光素子であるＣＣＤを有しており、外界を撮像してその２次元画像を水平方向の走査線信号として出力する。この走査線信号はＡＧＣアンプ１２によって増幅されて補助アンプ１６及びＡ／Ｄ変換器１９に出力される。
【００２２】
ＡＧＣアンプ１２は、外部から入力したゲインコントロール電圧に対応する増幅率で、ＣＣＤエリアセンサ１１から出力された走査線信号を増幅するのであるが、このゲインコントロール電圧は負帰還アンプ１５から出力される。この負帰還アンプ１５には、ＡＧＣアンプ１２から出力される走査線信号をローパスフィルタ１３で積分して得た出力平均電圧Ｖavと、基準電圧生成部１４からの基準電圧Ｖstとが入力されており、これらの電圧差△Ｖに所定ゲインを掛けたものがゲインコントロール電圧として出力される。
【００２３】
補助アンプ１６は、ＡＧＣアンプ１２によって増幅された走査線信号を増幅して２値化回路１７に出力する。この２値化回路１７は、上記走査線信号を、閾値に基づいて２値化して周波数分析器１８に出力する。周波数分析器１８は、２値化された走査線信号の内から所定の周波数成分比を検出し、その検出結果は画像メモリコントローラ２１に出力される。
【００２４】
一方、Ａ／Ｄ変換器１９は、ＡＧＣアンプ１２によって増幅されたアナログの走査線信号をディジタル信号に変換して、画像メモリコントローラ２１に出力する。
画像メモリコントローラ２１は、アドレスバス及びデータバスによって画像メモリ２０と接続されていると共に、やはりアドレスバス及びデータバスによってカメラ部制御装置１０及びメモリ２２と接続されている。
【００２５】
カメラ部制御装置１０は、ここでは３２ｂｉｔのＲＩＳＣＣＰＵを用いて構成されており、基準電圧生成部１４、Ａ／Ｄ変換器１９及び照明ＬＥＤ２５を制御することができるようにされている。基準電圧生成部１４に対する制御とは、基準電圧を変更設定するなどの制御である。また、照明ＬＥＤ２５は、読取対象の２次元コードに対して照明用の赤色光を照射するものである。
【００２６】
また、カメラ部制御装置１０は、システム制御装置３０との間でデータのやり取りができるようにされている。
一方、システム制御装置３０側に関連する構成としては、認識用ＬＥＤ３１と、ブザー３２と、液晶ディスプレイ（ＬＣＤ）３３と、キーパット３４と、読み取り用スイッチ３５と、シリアルＩ／Ｆ回路３６と、ＩｒＤＡＩ／Ｆ回路３７と、ＦＬＡＳＨメモリ３８と、ＤＲＡＭ３９と、リアルタイムクロック４０と、メモリバックアップ用電池４１などを備えている。
【００２７】
認識用ＬＥＤ３１は、読み取り対象の画像情報が適切にデコードされた場合に点灯され、所定時間後に消灯される。また、ブザー３２も、読み取り対象の画像情報が適切にデコードされた場合に鳴動される。
液晶ディスプレイ３３は、読み込んだ２次元コードなどを表示するためなどに用いられる。本実施例では２階調表示のＬＣＤとして構成されている。キーパット３４は、例えばテンキーや各種ファンクションキーを備えており、情報入力のために用いられる。読み取り用スイッチ３５は、利用者が読取処理の開始を指示するためのスイッチである。
【００２８】
ＩｒＤＡＩ／Ｆ回路３７は、ＩｒＤＡ（Infrared Data Association ）規格に準じた方法により図示しない外部装置との間で通信を行うものであり、図示しない通信用発光素子を介してデータを外部装置に送信したり、図示しない通信用受光素子を介して外部装置からの信号（例えばシステムを動かすためのプログラムや送信を待機する命令等）を受信する。
【００２９】
システム制御装置３０、ＦＬＡＳＨメモリ３８、ＤＲＡＭ３９、リアルタイムクロック４０は、アドレスバス及びデータバスによって相互に接続されている。画像メモリ２０と接続されていると共に、やはりアドレスバス及びデータバスによってカメラ部制御装置１０及びメモリ２２と接続されている。
【００３０】
カメラ部制御装置１０は、ここでは１６ｂｉｔのＣＰＵを用いて構成されており、上述したキーパット３４や読み取り用スイッチ３５の入力を受け付けたり、認識用ＬＥＤ３１やブザー３２への出力を制御したり、シリアルＩ／Ｆ回路３６やＩｒＤＡＩ／Ｆ回路３７を介した通信制御を行なう。そして、カメラ部制御装置１０を介して入力した２次元コードの画像を液晶ディスプレイ３３に表示させることもできる。
【００３１】
このような構成を備えた本実施例の２次元コード読取装置１は、ＣＣＤエリアセンサ１１から出力される走査線信号をＡＧＣアンプ１２によって増幅し、その増幅された走査線信号をＡ／Ｄ変換器１９によってディジタルデータに変換したものを取り込み、そのデータに基づいて、２次元画像内に含まれている２次元コードを読み取る。
【００３２】
ＣＣＤエリアセンサ１１から出力された走査線信号は２次元画像に対応するものであるが、その２次元画像内には、２次元コードも含まれているが２次元コード以外の部分もある。そのため、例えば２次元コード自体は同じであっても、２次元コード以外の部分の明るさに違いが生じる場合がある。例えば図４にて説明したように、２次元コード以外の部分が白か黒かで画面全体の明るさは大きく違ってくる。この場合、ビデオカメラなどのように、２次元画像検出手段にて検出された２次元画像の全てがターゲットとなる場合には、画面全体の明るさに応じて増幅率を調整することが好ましい。したがって、その場合には基準電圧生成部１４にて生成される基準電圧Ｖstは一定でもよい。その場合には、ＡＧＣアンプ１２から出力される走査線信号がローパスフィルタ１３で積分されて得られた出力平均電圧Ｖavと、基準電圧生成部１４からの基準電圧Ｖstとの電圧差△Ｖに所定ゲインを掛けたゲインコントロール電圧をＡＧＣアンプ１２に出力する構成でもよい。
【００３３】
しかしながら、本実施例の場合には２次元コード読取装置１であり、ＣＣＤエリアセンサ１１にて検出した２次元画像中の（一部である）２次元コードの部分だけがターゲットである。２次元コードだけに注目すれば、周囲の色などに関係なく、その２次元コードを適切に読み取るための増幅率が決まるはずであるが、画面全体の明るさに基づいてしまうと、２次元コードの読み取りという点では必ずしも適切な増幅率にならない場合がある。
【００３４】
そのような不都合を生じさせないために、本実施例の２次元コード読取装置１では、２次元画像内における２次元コードの存在領域を特定し、その特定された２次元コードの存在領域に対応する走査線信号の信号レベルに基づいて、２次元コードを適切に読み取るための増幅率となるように制御する。
【００３５】
（Ａ）まず、２次元画像内における２次元コードの存在領域を特定する際の処理について説明する。
本実施例では、図２に示すような２次元コード５２を読み取ることを前提としている。この２次元コード５２は、白色の台紙５３の上に印刷されており、３個の位置決め用シンボル５４、データ領域５６、原点セルＣstから構成されている。これら全体はセル数が縦横同数（２１セル×２１セル）の正方形状に配置されている。各セルは、光学的に異なった２種類のセルから選ばれており、図および説明上では白（明）・黒（暗）で区別して表す。なお、図２では便宜上、データ領域５６のデータセルのパターンは省略している。
【００３６】
位置決め用シンボル５４は、２次元コード５２の４つの頂点の内、３つに配置されている。そのセルの明暗配置は、黒部からなる枠状正方形５４ａ内の中心に白部からなる縮小した枠状正方形５４ｂが形成され、その内の中心に黒部からなる更に縮小した正方形５４ｃが形成されているパターンである。
【００３７】
この位置決め用シンボル５４を走査した場合の明暗検出を図３に示す。図３（Ａ）に示すように、位置決め用シンボル５４の中心を代表的な角度で横切る走査線（ａ），（ｂ），（ｃ）での明暗検出パターンは、図３（Ｂ）に示すごとく、すべて同じ周波数成分比を持つ構造になっている。即ち、位置決め用シンボル５４の中心を横切るそれぞれの走査線（ａ），（ｂ），（ｃ）の周波数成分比は暗：明：暗：明：暗＝１：１：３：１：１となっている。勿論、走査線（ａ），（ｂ），（ｃ）の中間の角度の走査線においても比率は１：１：３：１：１である。また、図３（Ａ）の図形が、ＣＣＤエリアセンサ１１側から斜めの面に配置されていたとしても、上記走査線（ａ），（ｂ），（ｃ）の周波数成分比は暗：明：暗：明：暗＝１：１：３：１：１となる。
【００３８】
なお、図３（Ｂ）は、２値化回路１７からの２値化された走査線信号に該当する。
したがって、周波数分析器１８によって、このような特定周波数成分比となる位置決め用シンボル５４を３つ検出し、１画面中におけるそれらの位置が判れば、正方形である２次元コード５２が存在する領域を特定することができる。なお、この２次元コード５２の存在領域を特定する際の処理については、例えば特開平８−１８０１２５号公報に詳しく開示されているので、必要であればそれを参照されたい。
【００３９】
（Ｂ）次に、特定された２次元コードの存在領域に対応する走査線信号の信号レベルに基づいて、２次元コードを適切に読み取るための増幅率となるように制御する場合の処理について説明する。
本実施例では、カメラ部制御装置１０が基準電圧生成部１４において生成される基準電圧Ｖstを変更することによって、ＡＧＣアンプ１２における増幅率を変更設定させることによって実行する。具体的には、カメラ部制御装置１０が基準電圧生成部１４に基準電圧Ｖstの補正量αを指示する。
【００４０】
このように基準電圧生成部１４において生成される基準電圧Ｖstを変更するのは次の理由からである。例えば、図４（ａ）のコード１の場合と図４（ｄ）のコード４とでは、画面全体の明るさが異なり、ＡＧＣアンプ１２から出力された増幅信号をローパスフィルタ１３にて積分して得た出力平均電圧Ｖavもコード４の場合の方が小さくなる。したがって、基準電圧Ｖstが固定であると、図４（ａ）のコード１の場合に比べて図４（ｄ）のコード４の場合の増幅率が極端に大きくなってしまい、例えば出力波形が飽和して読取不可能といった状態となる可能性がある。しかし、基準電圧Ｖst自体を変更すれば、図４（ａ）のコード１の場合と図４（ｄ）のコード４とで同じ様な増幅率とすることも可能であり、それぞれの場合の２次元コードを読み取るのに適切な増幅率を得ることができる。
【００４１】
そして、このような基準電圧Ｖstの補正値αは、２次元画面内における２次元コードの存在領域の割合と、取り込んだ２次元画面内における信号レベルの平均値とに基づいて変更設定する。ＣＣＤエリアセンサ１１にて取り込む２次元画面の大きさは予め判っているので、上記（Ａ）の処理で特定した２次元コードの存在領域の大きさを求め、それらから２次元画面内における２次元コードの存在領域割合を算出すればよい。また、取り込んだ２次元画面内における信号レベルの平均値は、Ａ／Ｄ変換器１９によってディジタルデータに変換された１画面分のデータを画像メモリ２０に一時記憶させ、そのデータに基づいて求める。
【００４２】
このようにすれば、基本的には、ＡＧＣアンプ１２の出力平均電圧Ｖavに基づいてゲインコントロール電圧を決める構成であっても、２次元画面内における２次元コードの存在領域の割合と、２次元画面内における信号レベルの平均値とに基づいているため、２次元コードを読み取るのに適切な増幅率を得るための基準電圧を、２次元画面全体の明るさを考慮した上で設定することができる。
【００４３】
なお、この基準電圧Ｖstの補正値αは、例えば演算により求めてもよいし、あるいは補正値αを予め記憶した補正値テーブルのようなものを準備しておき、そこから読み出してもよい。そして、この補正値αを基準電圧Ｖstに加算させて制御を終了してもよいが、フィードバック制御してもよい。つまり、ＡＧＣアンプ１２の増幅率を変更設定した後、２次元コードの存在領域に対応する走査線信号の信号レベルが所定の調整範囲内にあるかどうかを判断し、信号レベルが所定の調整範囲外であれば、補正値αを加算した基準電圧Ｖst（＝Ｖst＋α）に対してさらに補正値βを加算し、より実状に合致した増幅率とするのである。
【００４４】
なお、２次元コードの存在領域に対応する走査線信号の信号レベルが所定の調整範囲内にあるかどうかは、存在領域に対応する走査線信号の「振幅」に基づいて判断してもよいし、あるいは、２次元コードを構成する相対的に「白いパターン部分に対応する信号レベル」に基づいて判断してもよい。
【００４５】
以上説明したように、本実施例の２次元コード読取装置１によれば、ＣＣＤエリアセンサ１１にて検出した２次元画像の走査信号中に含まれている２次元コードを読み取る場合に、ＡＧＣアンプ１２にて走査信号を増幅する場合の増幅率を２次元コード読取の観点で適切なものにすることができる。したがって、図４（ａ）〜（ｄ）に示す各状態のコード１〜４についても、それぞれＡＧＣアンプ１２にて適切な増幅率にて走査線信号を増幅させることできる。
【００４６】
また、本実施例の２次元コード読取装置１は、図１のブロック図からも判るように、カメラ部制御装置１０とシステム制御装置３０の２つの制御装置により、それぞれ分担して制御を行っている。そして、カメラ部制御装置１０は３２ｂｉｔのＲＩＳＣＣＰＵという動作の速いＣＰＵを用いており、一方、カメラ部制御装置１０は１６ｂｉｔのＣＰＵという相対的にパフォーマンスが低いＣＰＵを用いている。つまり、パフォーマンスの高さを必要とする２次元コードの読み取りに係る処理については動作の速いカメラ部制御装置１０にて実行し、それ以外のキー入力やデータ通信などのシステム処理についてはシステム制御装置３０にて実行している。これは、１つのＣＰＵにて２次元コードの読み取り、キー入力、データ通信などの全ての処理を実行すると、２次元コードの読み取りに合わせてパフォーマンスが高いＣＰＵを用いる必要があり、全体として消費電流が増大する。したがって、このように分担して処理させることによって、装置全体の消費電流を抑えることができ、小型化にも寄与する。
【００４７】
なお、本実施例においては、ＣＣＤエリアセンサ１１が２次元画像検出手段に相当し、ＡＧＣアンプ１２に加えてローパスフィルタ１３と基準電圧生成部１４と負帰還アンプ１５とからなる帰還回路部分が増幅手段に該当する。また、カメラ部制御装置１０が、増幅率変更設定手段、判断手段及び補正手段に該当し、２値化回路１７、周波数分析器１８及びカメラ部制御装置１０が、存在領域特定手段に該当する。
［第２実施例］
図５は第２実施例としての２次元コード読取装置１のブロック図（但し一部分のみ）を示す。図５は、カメラ部制御装置１０側に関連する構成だけを示しており、図１で示されていたシステム制御装置３０側に関連する構成は全く同じであるので、図示及び説明を省略する。また、図５にて示したカメラ部制御装置１０側に関連する構成においても、第１実施例と同じ構成については同じ符号を付し、詳しい説明は省略する。
【００４８】
上述した第１実施例では、負帰還アンプ１５からの出力をそのままゲインコントロール電圧としてＡＧＣアンプ１２に入力させていたが、本第２実施例では、この負帰還アンプ１５の後段に加算器２４を設け、負帰還アンプ１５からの出力に加算器２４にて加算したものをゲインコントロール電圧として、ＡＧＣアンプ１２に入力させる構成である。そして、第１実施例では、負帰還アンプ１５への一方の入力である基準電圧Ｖstをカメラ部制御装置１０にて制御する構成であったが、第２実施例では、基準電圧Ｖstは固定値であり、加算器２４における加算値をカメラ部制御装置１０にて制御する構成にしてある。
【００４９】
この場合にも、上述した第１実施例と同様に、２次元画面内における２次元コードの存在領域の割合と、２次元画面内における信号レベルの平均値とに基づいて、この加算値自体を変更すれば、図４（ａ）〜（ｄ）に示す各状態のコード１〜４についても、それぞれＡＧＣアンプ１２にて適切な増幅率にて走査線信号を増幅させることできる。
［その他］
（１）上述した各実施例では、２次元画像内における２次元コードの存在領域を特定する際に、周波数分析器１８によって特定周波数成分比となる位置決め用シンボル５４（図２，３参照）を検出し、１画面中におけるそれらの位置に基づいて存在領域を特定するようにしたが、別の特定方法も考えられる。つまり、ＡＧＣアンプ１２によって増幅された走査線信号をＡ／Ｄ変換器１９によってディジタルデータに変換したものを取り込み、そのデータに基づいて、２次元画像内に含まれている２次元コードの存在領域を特定するのである。具体的には、１画面分のデータを画像メモリ２０に記憶させ、カメラ部制御装置１０がその１画面分のデータを所定方向に走査していき、ソフト的に特定周波数成分比が得られる位置を検出し、その位置に基づいて存在領域を特定するのである。
【００５０】
このようにソフト的に処理する場合には、上記各実施例で示した補助アンプ１６、２値化回路１７、周波数分析器１８は無くてもよい。この場合には、Ａ／Ｄ変換器１９及びカメラ部制御装置１０が存在領域特定手段に該当する。
（２）上記各実施例では、２次元コードが存在する領域における走査線信号の振幅や白パターンの信号レベルを所望の状態にすることによって適切なコード読取を実現するため、増幅手段における増幅率を調整することを基本としている。しかし、走査線信号の振幅や白パターンの信号レベルに影響を与えるのは、これだけでない。例えば、照明ＬＥＤ２５から照射した照射光が２次元コードに反射した反射光をＣＣＤエリアセンサ１１が検出する構成であるため、その照明ＬＥＤ２５の光量も関係してくる。あるいは、ＣＣＤエリアセンサ１１における露光時間もやはり関係してくる。
【００５１】
したがって、これら照明ＬＥＤ２５の光量やＣＣＤエリアセンサ１１における露光時間も調整するようにしてもよい。つまり、上述したＡＧＣアンプ１２の増幅率の変更設定に伴い、照明ＬＥＤ２５の光量制御やＣＣＤエリアセンサ１１における露光時間制御を実行する。この光量制御や露光時間制御は、走査線信号の振幅や白パターンの信号レベルを所望の状態にする上で補助的に作用し、ＡＧＣアンプ１２の増増幅率の変更設定だけでは対応し切れない場合に有効である。
【００５２】
この場合には、照明ＬＥＤ２５が発光手段に該当し、カメラ部制御装置１０が光量制御手段及び露光時間制御手段に該当する。
（３）上記実施例では、位置決め用シンボル５４を二重の正方形で、中心を横切る周波数成分比が黒：白：黒：白：黒＝１：１：３：１：１の図形で示したが、円形や正六角形、あるいは他の正多角形でも良い。即ち、同心状に相似形の図形が重なり合う形に形成したものであればよい。さらに、中心を横切る周波数成分比があらゆる角度で同じならば、上記図形を何重にしても良い。さらに、上記各実施例では、２次元コード５２の外形を正方形で示したが、長方形でも良い。
【００５３】
また、上記各実施例では位置決め用シンボル５４は３つであったが、２次元コード５２内での配置は任意である。また４つ以上の位置決め用シンボル５４を設けても良い。
（４）上記実施例において、液晶ディスプレイ３３は、読み込んだ２次元コードなどを表示するためなどに用いられ、２階調表示のＬＣＤとして構成されている旨を説明した。２次元コードだけを表示するのであれば２階調表示で問題ないため、安価なＬＣＤを用いることができる。しかし、例えば２次元コードと２次元画像がセットになった情報を読み取る場合には、２次元画像自体の読み取り及び液晶ディスプレイ３３への表示もできることが好ましい。例えば、２５６階調程度の画像を取り込んで液晶ディスプレイ３３へ表示させる場合を考えると、２階調表示のＬＣＤでは画像として表されている物体を捉えきれない。
【００５４】
そこで、このような物体のイメージを２階調のＬＣＤを用いて表現するため、４セル（４画素）を１データとして考え、各画素の明暗の組み合わせてより、図６に示すように５階調を表現する。つまり、図６（ａ）に示す場合には４画素が（明明明明）であり、図６（ｂ）に示す場合には４画素が（明明明暗）であり、図６（ｃ）に示す場合には４画素が（明暗明暗）であり、図６（ｄ）に示す場合には４画素が（明暗暗暗）であり、図６（ｅ）に示す場合には４画素が（暗暗暗暗）である。
【００５５】
なお、４画素を１データとして考えた場合には、各画素の明暗の組み合わせによって５階調を表現することができるが、同様にして、２画素を１データとして考えた場合には、各画素の明暗の組み合わせによって３階調を表現することができる。
【図面の簡単な説明】
【図１】  第１実施例としての２次元コード読取装置のブロック図である。
【図２】  ２次元コードの構成説明図である。
【図３】  位置決めシンボルを走査した場合の明暗検出の説明図である。
【図４】  ２次元画像内における２次元コードの大きさ及び地色の違いなどを示す説明図である。
【図５】  第２実施例としての２次元コード読取装置のブロック図である。
【図６】  ２階調表示のＬＣＤにおいて、４画素を１データとして各画素の明暗の組み合わせによって５階調を表現する場合の説明図である。
【符号の説明】
１…２次元コード読取装置        １０…カメラ部制御装置
１１…ＣＣＤエリアセンサ          １２…ＡＧＣアンプ
１３…ローパスフィルタ            １４…基準電圧生成部
１５…負帰還アンプ                １６…補助アンプ
１７…２値化回路                  １８…周波数分析器
１９…Ａ／Ｄ変換器                ２０…画像メモリ
２１…画像メモリコントローラ      ２２…メモリ
２４…加算器                      ２５…照明ＬＥＤ
３０…システム制御装置            ３１…認識用ＬＥＤ
３２…ブザー                      ３３…液晶ディスプレイ
３４…キーパット                  ３５…読み取り用スイッチ
３６…シリアルＩ／Ｆ回路          ３７…ＩｒＤＡＩ／Ｆ回路
５２…２次元コード                ５３…台紙
５４…位置決め用シンボル          ５６…データ領域
【図１】
0003814988.tif 000002
【図２】
0003814988.tif 000003
【図３】
0003814988.tif 000004
【図４】
0003814988.tif 000005
【図５】
0003814988.tif 000006
【図６】
0003814988.tif 000007