説明

シンボル読取装置、及びプログラム

【課題】ユーザがシンボル読取装置の表示画面内にシンボルを入れて撮影するだけでシンボルのIDを高速に抽出可能なシンボル読取装置、及びプログラムを提供する。
【解決手段】シンボルを撮影して画像を生成させ、生成された撮影画像から前記シンボルの大きさを検出し、検出されたシンボルの大きさと予め設定された値とを比較して大小を判定し、判定の結果、前記シンボルの大きさが、予め設定された値よりも小さい場合は撮像手段の焦点位置を遠方側の所定位置へと移動させ、予め設定された値よりも大きい場合は撮像手段の焦点位置を近接側の所定位置へと移動させて撮影された撮影画像から前記シンボルに対応するシンボルデータを解析する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、シンボル読取装置、及びプログラムに関する。
【背景技術】
【0002】
シンボルはさまざまな情報を識別するために広く使用されている。バーコードは数値情報を規定に従った一次元の図形表現により表したシンボルであり、最近では、縦横両方向に情報を持たせる二次元コードと呼ばれるシンボルも普及しはじめている。
ハンディーターミナル(業務用携帯端末)などのシンボル読取装置は、カメラ等の撮像装置でシンボルを含む被写体を撮像し、当該撮像した撮像画像をデコードエンジンにより解析することで、シンボルの内容を読み取る。
【0003】
バーコードや二次元コードのシンボルをデジタルカメラ等の撮像装置を備えたシンボル読取装置で撮像してIDを抽出する際、シンボルをどのような構図や距離にて撮影するのが好適であるかがわかりにくい。
従来、シームレスなフォーカス調整機能を有するデジタルカメラにおいて、バーコード等の被写体の撮影に最適なフォーカス位置を選択するための手段として、以下のような方法が存在する。例えば、PSD(Position Sensitive Detector)を利用した測距センサや2組のリニアイメージセンサを利用した位相差差分方式をとることで直接対象物までの距離を計測し、或いはレーザー照射を利用した測距方法をとることで距離を計測し、その値に沿ったフォーカス位置へとレンズを直接移動するという方法が存在する。
【0004】
上記した方法は、ベストフォーカスを決定するのがほぼ一瞬で済むため、ユーザに良好なレスポンスを提供でき、かつ精度も高いというメリットがある。反面、カメラモジュールとは別に測距用の装置(センサ)が必要なため、コストの増大やサイズの肥大といったデメリットがある。そのため、コストやサイズに比較的余裕のある一眼レフカメラでよく使われている。
【0005】
また、上記した方法とは別に、コンパクトデジタルカメラ等でよく用いられる方法として、コントラスト法がある。
コントラスト法とは、フォーカス位置を最遠方端から最近接端まで移動しながら逐次画像をキャプチャーし、キャプチャーされた画像のコントラストが最も高いと判定されるフォーカス位置を探索するというものである。ただし、この方法にはフォーカス位置を移動しながら逐次画像をキャプチャーするという動作が伴うため、時間が掛かるという欠点がある。
【0006】
また、特許文献1には、バーコードを撮像してIDを抽出する際、IDを好適に抽出可能な技術が開示されている。具体的には、バーコードを被写体として撮像する際、バーコードをはめ込むための照準枠を表示処理部にオンスクリーン表示させ、撮像部を介して取得されたバーコード画像を画像バッファ処理部に保存させ、保存されたバーコード画像からIDを抽出し、ID格納部に格納する。通常撮影時とバーコード撮影時のそれぞれに対応して撮像条件を設定する撮像条件設定部を設け、バーコード撮影時、照準枠にバーコード画像をはめ込んだ状態で、好適な撮像条件をバーコード撮影用の撮像条件として設定する。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2006−25055号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1に記載の技術は、バーコードをはめ込むための照準枠をオンスクリーン表示させ、照準枠にバーコードをはめ込んだ構図で撮影することでバーコード画像を撮像し、当該撮像されたバーコード画像からIDを抽出するようにしている。従って、ユーザは、液晶表示画面に表示される照準枠の位置及び大きさに合わせてバーコードを撮影する必要があり、不便であった。
【0009】
本発明は、ユーザがシンボル読取装置の表示画面内にシンボルを入れて撮影するだけでシンボルのIDを高速に抽出可能なシンボル読取装置、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
以上の課題を解決するために、請求項1に記載の発明のシンボル読取装置は、シンボルを撮影して画像を生成する撮像手段と、前記撮像手段により生成された撮影画像から前記シンボルの大きさを検出する検出手段と、前記検出手段により検出されたシンボルの大きさと予め設定された値とを比較して大小を判定する判定手段と、前記判定手段による判定の結果、前記シンボルの大きさが、予め設定された値よりも小さい場合は前記撮像手段の焦点位置を遠方側の所定位置へと移動させ、予め設定された値よりも大きい場合は前記撮像手段の焦点位置を近接側の所定位置へと移動させる焦点移動制御手段と、前記撮像手段により生成された撮影画像から前記シンボルに対応するシンボルデータを解析する解析手段と、を備える。
【0011】
請求項2に記載の発明は、請求項1に記載のシンボル読取装置において、前記予め設定された値には、少なくとも2つの異なる値があり、前記焦点移動制御手段は、前記判定手段による判定の結果、前記バーコードの大きさが、前記2つの異なる値のうち小さい方の値よりも小さい場合は前記撮像手段の焦点位置を遠方側の所定位置へと移動させ、前記2つの異なる値のうち大きい方の値よりも大きい場合は前記撮像手段の焦点位置を近接側の所定位置へと移動させる。
【0012】
請求項3に記載の発明は、請求項1又は2に記載のシンボル読取装置において、前記シンボルは、1次元バーコード又は2次元コードである。
【0013】
請求項4に記載の発明は、請求項1乃至3のいずれか一項に記載のシンボル読取装置において、前記検出手段は、前記撮影画像に含まれる座標位置を示す部分に基づいて前記シンボルの大きさを検出する。
【0014】
請求項5に記載の発明のプログラムは、シンボル読取装置のコンピュータを、シンボルを撮影して画像を生成する撮像手段、前記撮像機能により生成された撮影画像から前記シンボルの大きさを検出する検出手段、前記検出機能により検出されたシンボルの大きさと予め設定された値とを比較して大小を判定する判定手段、前記判定機能による判定の結果、前記シンボルの大きさが、予め設定された値よりも小さい場合は前記撮像機能の焦点位置を遠方側の所定位置へと移動させ、予め設定された値よりも大きい場合は前記撮像機能の焦点位置を近接側の所定位置へと移動させる焦点移動制御手段、前記撮像機能により生成された撮影画像から前記シンボルに対応するシンボルデータを解析する解析手段、として機能させる。
【発明の効果】
【0015】
本発明によれば、ユーザがシンボル読取装置の表示画面内にシンボルを入れて撮影するだけでシンボルのIDを高速に抽出可能なシンボル読取装置、及びプログラムを提供することができる。
【図面の簡単な説明】
【0016】
【図1】本実施形態に係るシンボル読取装置1の概略構成を示すブロック図である。
【図2】二次元コードを撮影しようとしたときのピント調整の様子について示した図である。
【図3】シンボル読取装置1の撮像部10から被写体である二次元コードまでの距離とフォーカスレンズ11bのレンズ位置との関係について示した図である。
【図4】本実施形態に係るシンボル読取装置1内で行われる二次元コード読取処理の一例について示したフローチャートである。
【図5】シンボル領域算出処理の一例について示したフローチャートである。
【図6】シンボル領域算出処理中の各場面について示した図である。
【図7】本実施形態に係るシンボル読取装置1内で行われる二次元コード読取処理の一例(二次元コード読取処理2)について示したフローチャートである。
【図8】本実施形態に係るシンボル読取装置1内で行われる二次元コード読取処理の一例(二次元コード読取処理2)について示したフローチャートである。
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態を図面に基づいて説明する。
【0018】
図1は、本実施形態に係るシンボル読取装置1の概略構成を示すブロック図である。
図1に示すように、シンボル読取装置1は、撮像部10と、データ処理部20と、ユーザインタフェース部30と、加速度センサ40と、を備えて構成される。
【0019】
撮像部10は、撮像レンズ部11と、レンズ駆動部12と、イメージセンサ13と、を備えて構成され、被写体を撮影する機能を有する。
撮像レンズ部11は、例えば、被写体を撮影するために光を集光する複数のレンズで構成され、倍率を調整するためのズームレンズ11aやピントを調整するためのフォーカスレンズ11b等を備える。
レンズ駆動部12は、被写体の撮像の際に、ズームレンズ11aを光軸方向に移動させるズームレンズ駆動部12a、フォーカスレンズ11bを光軸方向に移動させるフォーカスレンズ駆動部12b等を備える。なお、ズームレンズ駆動部12a及びフォーカスレンズ駆動部12bはそれぞれエンコーダを備え、各モータの回転量を検出することができる。
イメージセンサ13は、例えば、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等の固体撮像素子により構成され、撮像レンズ部11が光を集光することによって結像した画像を、デジタル化した画像データとして取り込む。取り込まれた画像データは、データ処理部20のメモリ21に一時的に記憶される。
【0020】
データ処理部20は、メモリ21と、画像処理部22と、画像出力部23と、制御部24と、プログラムメモリ25と、を備えて構成される。
メモリ21は、撮影処理を行う度にイメージセンサ13が取り込んだ画像データ(例えばバーコード画像等)を一時的に記憶する。また、メモリ21は、画像処理に必要な画像データ、各種フラグの値、閾値等も記憶する。さらに、メモリ21は、画像表示を行うための表示画像データの記憶と読み出しを行うための表示メモリ領域を含んでいる。
画像処理部22は、メモリ21に一時記憶されている画像データに対して、画像表示を行うための所定の画像処理を施す。当該画像処理を施された画像データは、表示画像データとしてメモリ21の表示メモリ領域に格納される。
画像出力部23は、メモリ21の表示メモリ領域に格納された表示画像データを読み出し、当該読み出された表示画像データに基づいてRGB信号を生成し、当該生成されたRGB信号をユーザインタフェース部30の液晶表示部31に出力する。また、RGB信号を、ユーザインタフェース部30の外部インタフェース33を介して外部出力させることにより、テレビやPC、プロジェクタ等の外部機器に画像表示させることも可能である。
【0021】
制御部24は、図示しないCPUやRAM、及びズームレンズ駆動制御部24a、フォーカスレンズ駆動制御部24b、ぶれ補正処理部24c、を含んで構成され、プログラムメモリ25に記憶されたシンボル読取装置1用のプログラムに従って各種制御動作を行う。
ズームレンズ駆動制御部24aは、DCモータによるズームレンズ11aの駆動に必要なパルス数(駆動量)を予め算出して保持しており、当該駆動量に基づいてズームレンズ11aの駆動を制御する。
フォーカスレンズ駆動制御部24bは、撮像レンズ部11により結像された画像のフォーカス精度の評価値、例えば、コントラスト値や、エッジ量に応じて、フォーカスレンズ11bの位置を制御する。また、フォーカスレンズ駆動制御部24bは、算出された駆動量に基づいてフォーカス追従位置を算出し、当該フォーカス追従位置へとフォーカスレンズ11bを駆動させる。
ぶれ補正処理部24cは、後述する加速度センサ40から入力されたシンボル読取装置1のぶれ量に応じて、撮像レンズ部11の図示しないぶれ補正レンズを光軸と直交する方向に駆動し、イメージセンサ13に結像する画像のぶれを補正するよう制御する。
【0022】
また、制御部24は、撮像部10により生成された撮影画像から二次元コードの大きさを検出し、検出された二次元コードの大きさと予め設定された値とを比較して大小を判定する。判定の結果、二次元コードの大きさが、予め設定された値よりも小さい場合はフォーカスレンズ11bの焦点位置を遠方側の所定位置へと移動させ、予め設定された値よりも大きい場合はフォーカスレンズ11bの焦点位置を近接側の所定位置へと移動させる。そして、生成された撮影画像から二次元コードに対応するシンボルデータを解析する。
【0023】
プログラムメモリ25は、例えば、ROM(Read Only Memory)やフラッシュメモリなどの記憶装置から構成され、制御部24の動作に必要な各種プログラムやデータを記憶する。具体的には、二次元コードを解析して情報を取得するための二次元コード読取プログラム等を記憶している。
【0024】
ユーザインタフェース部30は、液晶表示部31と、操作部32と、外部インタフェース33と、外部メモリ34と、を備えて構成される。
液晶表示部31は、画像出力部23から出力されたRGB信号に基づいて被写体画像を表示する。具体的には、撮像部10により生成された複数の画像データに基づいたライブビュー画像や、録画中に外部メモリ34に記録される動画像を表示したり、外部メモリ34に記録された動画像を再生表示したりする。なお、液晶表示部31に、画像出力部23から適宜出力される表示画像データを一時的に記憶する画像メモリ(図示せず)を備えるようにしてもよい。
操作部32は、ユーザがシンボル読取装置1における所定の操作を行うための機能であり、ユーザの操作に応じた操作信号を制御部24に出力する。操作部32は、例えば、シャッタボタン、選択決定用ボタン、再生ボタン、撮影ボタン、モード切替ボタン等を備えている。モード切替ボタンは、動画を撮影するための動画撮影モードと静止画を撮影するための静止画撮影モードとを切り替える際に用いられるボタンである。
外部インタフェース33は、テレビやPC、プロジェクタ等の外部機器との接続用端子であり、所定の通信ケーブルを介してデータの送受信を行う。
外部メモリ34は、例えば、カード型の不揮発性メモリ(フラッシュメモリ)やハードディスク等により構成され、撮像部10により撮影され、画像処理部22により圧縮・符号化された被写体画像の画像データを、複数記憶する。
【0025】
加速度センサ40は、シンボル読取装置1の動きを物理的、直接的に検出し、角速度を示す測定値を制御部24に入力する。
【0026】
ID管理部50は、ID抽出部51と、ID格納部52と、を備える。
ID抽出部51は、制御部24からの指令に基づいて、メモリ21に格納されているバーコード画像からIDを抽出する。抽出されたIDは、ID格納部52に格納される。
以下、図2〜図8を用いて、デジタルカメラ1の動作を説明する。
【0027】
図2は、二次元コードを撮影しようとしたときのピント調整の様子について示した図である。二次元コードとは、例えばQRコードのように水平方向と垂直方向に情報を持つ表示方式のコードのことである。以後、撮影された二次元コードの画像をシンボル画像と呼ぶ。なお、シンボル画像撮影時、フォーカスレンズ11bはデフォルト位置(F0)にあるものとする。
【0028】
図2(a)は、シンボル画像を遠方から撮影しようとした際のライブビュー画像を示している。本実施形態では、「遠方」を、シンボル読取装置1の撮像部10から15cmの距離と定義する。「遠方」から撮影が行われると、図2(a)に示すように、小さめのシンボル画像が、ピントがずれた状態で液晶表示部31に画面表示される。このピントのずれを解消するために、フォーカスレンズ11bを遠方側(F+)へと移動させた様子が、図2(b)に示されている。
【0029】
図2(c)は、シンボル画像をピントが合った状態で撮影しようとした際のライブビュー画像を示している。本実施形態では、フォーカスレンズ11bがデフォルト位置(F0)にある場合に、自然とピントが合う距離(=「焦点位置」)をシンボル読取装置1の撮像部10から10cmとする。ピントが合った状態で撮影が行われると、図2(d)に示すように、ピントが合ったシンボル画像が液晶表示部31に画面表示される。
【0030】
図2(e)は、シンボル画像を近接から撮影しようとした際のライブビュー画像を示している。本実施形態では、「近接」を、シンボル読取装置1の撮像部10から5cmの距離と定義する。「近接」から撮影が行われると、図2(e)に示すように、大きめのシンボル画像が、ピントがずれた状態で液晶表示部31に画面表示される。このピントのずれを解消するために、フォーカスレンズ11bを近接側(F−)へと移動させた様子が、図2(f)に示されている。
【0031】
このように、本実施形態に係るシンボル読取装置1は、シンボル画像のおおよその大きさを判定することでピントの状態を判定し、フォーカスレンズ11bの位置を前後に移動させる。
【0032】
図3は、シンボル読取装置1の撮像部10から被写体である二次元コードまでの距離とフォーカスレンズ11bのレンズ位置との関係について示した図である。
例えば、シンボル読取装置1の撮像部10から二次元コードまでの距離が近い場合は、シンボル画像がより大きく撮像される領域でピントが合う。つまり、フォーカスレンズ11bが近接側(F−)にあるときに読み取りが成功する。
また、シンボル読取装置1の撮像部10から二次元コードまでの距離がピント位置付近にある場合は、フォーカスレンズ11bをデフォルト位置(F0)から動かさずにピントを合わせることが可能である。本実施形態では、画像解析処理を行うことにより、少々のピンボケは許容できる。そのため、比較的広い範囲でデコードを成功させることができる。
また、シンボル読取装置1の撮像部10から二次元コードまでの距離が遠い場合は、シンボル画像がより小さく撮像される領域でピントが合う。つまり、フォーカスレンズ11bが遠方側(F+)にあるときに読み取りが成功する。
【0033】
(第1実施形態)
図4は、本実施形態に係るシンボル読取装置1内で行われる二次元コード読取処理の一例について示したフローチャートである。この二次元コード読取処理は、制御部24がプログラムメモリ25に格納されている二次元コード読取プログラムを実行することにより実現される。
【0034】
図4に示すように、ステップS101では、フォーカスレンズ11bの位置をデフォルト位置(F0)に移動させる。
ステップS102では、撮像部10により撮像されているシンボル画像を液晶表示部31にスルー表示させる。
ステップS103では、ユーザにより操作部32の撮影ボタンが押下されたか否かを判定する。撮影ボタンが押下された場合は、次のステップS104へと移行し、撮影ボタンが押下されていなかった場合は、ステップS102へと移行する。
ステップS104では、シンボル領域算出処理を行う。このシンボル領域算出処理について、図5、図6を用いて具体的に説明する。
【0035】
図5は、シンボル領域算出処理の一例について示したフローチャートである。また、図6は、シンボル領域算出処理中の各場面について示した図である。
図5に示すように、ステップS201では、図4のステップS102でスルー表示された元画像(図6(a)参照)を2値化する(図6(b)参照)。
ステップS202では、ステップS201で2値化された元画像をブロック分割する(図6(c)参照)。例えば、QVGA(320×240)画像を8ピクセル単位で40×30個のブロックに分割する。なお、適切なピクセル単位は、予め評価実験により設定されるものとする。
ステップS203では、ステップS202で分割された各ブロックを黒ブロックと白ブロックに分割する。黒ブロックと判定するための設定値は、予め評価実験により算出されている。ただし、実際の環境に合わせて、後から変更することも可能である。
ステップS204では、元画像の中心付近の黒ブロックの塊を探索する。具体的には、元画像にラベリング処理を施すことにより塊ブロックを抽出する。
ステップS205では、黒ブロックの塊が占める総ブロック数をカウントする。
【0036】
次に、図4のステップS105では、サイズが設定値1より小さいか否かを判定する。設定値1とは、図3に示したbの値、すなわちデフォルト位置(F0)で撮像可能な範囲と遠方側(F+)で撮像可能な範囲との境界点のことである。サイズが設定値1より小さかった場合は、次のステップS106へと移行し、サイズが設定値1以上であった場合は、ステップS107へと移行する。
ステップS106では、フォーカスレンズ11bを遠方側(F+)へと移動させる。
ステップS107では、サイズが設定値2より大きいか否かを判定する。設定値2とは、図3に示したaの値、すなわちデフォルト位置(F0)で撮像可能な範囲と近接側(F−)で撮像可能な範囲との境界点のことである。サイズが設定値2より大きかった場合は、次のステップS108へと移行し、サイズが設定値2以下であった場合は、ステップS109へと移行する。
ステップS108では、フォーカスレンズ11bを近接側(F−)へと移動させる。
【0037】
ステップS109では、高解像度VGAで静止画像を撮像部10にキャプチャーさせる。
ステップS110では、ステップS109でキャプチャーされた静止画像を解析し、デコード処理を行う。
ステップS111では、静止画像のデコードが成功したか否かを判定する。デコードが成功した場合は、当該二次元コード読取処理を終了し、デコードが成功しなかった場合は、次のステップS112へと移行する。
ステップS112では、デコード処理の再試行回数を超過したか否かを判定する。当該再試行回数は、ユーザが任意に設定可能である。再試行回数を超過した場合は、次のステップS113へと移行し、再試行回数を超過しなかった場合は、ステップS109へと移行する。
ステップS113では、デコード失敗を液晶表示部31にメッセージ表示させる。当該メッセージが表示されると、当該二次元コード読取処理を終了する。
【0038】
このように、第1実施形態では、撮影画像から二次元コードのおおよその大きさ(撮影画像内に占める面積)を判定し、その大きさが予め設定されている値のうち小さいほうの値より小さければフォーカスレンズ11bの位置を遠方側の所定位置に、予め設定されている値のうち大きい方の値より大きければフォーカスレンズ11bの位置を近接側の所定位置に移動させる。また、それらに当てはまらない場合にはフォーカスレンズ11bの位置をそのままの状態で再度撮影動作を実行し、その画像を解析してデコード処理を行う。
【0039】
すなわち、より望ましいフォーカス位置へと移動するのに、フォーカス調整機構を1ステップずつ移動させながら逐一画像を判定する(『画像キャプチャー→画像判定→フォーカス移動』というサイクルを複数回繰り返す)のではなく、予め設定された所定位置へと一気に移動するため、その間の余計なキャプチャー時間や画像判定時間が不要となる。また、そのために必要な電力消費も不要となる。従って、良好なレスポンスと消費電力の低減の両方を実現することができる。
特に、液体レンズのように、1画面のキャプチャー時間よりもフォーカス移動の方が圧倒的に速いカメラモジュールでは高い効果を発揮する。
【0040】
(第2実施形態)
図7、図8は、本実施形態に係るシンボル読取装置1内で行われる二次元コード読取処理の一例(二次元コード読取処理2)について示したフローチャートである。
図7に示すように、ステップS301では、フォーカスレンズ11bの位置をデフォルト位置(F0)に移動させる。
ステップS302では、撮像部10により撮像されているシンボル画像を液晶表示部31にスルー表示させる。
ステップS303では、ユーザにより操作部32の撮影ボタンが押下されたか否かを判定する。撮影ボタンが押下された場合は、次のステップS304へと移行し、撮影ボタンが押下されていなかった場合は、ステップS302へと移行する。
【0041】
ステップS304では、高解像度VGAで静止画像を撮像部10にキャプチャーさせる。
ステップS305では、ステップS304でキャプチャーされた静止画像を解析し、デコード処理を行う。
ステップS306では、静止画像のデコードが成功したか否かを判定する。デコードが成功した場合は、当該二次元コード読取処理を終了し、デコードが成功しなかった場合は、次のステップS307へと移行する。
ステップS307では、デコード処理の再試行回数を超過したか否かを判定する。当該再試行回数は、ユーザが任意に設定可能である。再試行回数を超過した場合は、次のステップS308へと移行し、再試行回数を超過しなかった場合は、ステップS309へと移行する。
ステップS308では、デコード失敗を液晶表示部31にメッセージ表示させる。当該メッセージが表示されると、当該二次元コード読取処理を終了する。
【0042】
ステップS309では、シンボルサイズの推定ができているか否かを判定する。シンボルサイズとは、シンボル画像の大きさのことであり、当該シンボルサイズの推定は、撮影画像に含まれる座標位置を示す部分(二次元コードの目玉部分)に基づいて行われる。シンボルサイズの推定ができていた場合は、図8のステップS315へと移行し、シンボルサイズの推定ができていなかった場合は、次のステップS310へと移行する。
ステップS310では、シンボル領域算出処理を行う。このシンボル領域算出処理については、図5、図6を用いて具体的に説明したので、ここでは説明を省略する。
ステップS311では、サイズが設定値1より小さいか否かを判定する。設定値1とは、図3に示したbの値、すなわちデフォルト位置(F0)で撮像可能な範囲と遠方側(F+)で撮像可能な範囲との境界点のことである。サイズが設定値1より小さかった場合は、次のステップS312へと移行し、サイズが設定値1以上であった場合は、ステップS313へと移行する。
ステップS312では、フォーカスレンズ11bを遠方側(F+)へと移動させる。
ステップS313では、サイズが設定値2より大きいか否かを判定する。設定値2とは、図3に示したaの値、すなわちデフォルト位置(F0)で撮像可能な範囲と近接側(F−)で撮像可能な範囲との境界点のことである。サイズが設定値2より大きかった場合は、次のステップS314へと移行し、サイズが設定値2以下であった場合は、ステップS304へと移行する。
ステップS314では、フォーカスレンズ11bを近接側(F−)へと移動させる。
【0043】
次に、図6のステップS315では、推定サイズ(座標位置を示す部分間の距離から算出)が設定値3より小さいか否かを判定する。設定値3とは、図3に示したbの値、すなわちデフォルト位置(F0)で撮像可能な範囲と遠方側(F+)で撮像可能な範囲との境界点のことである。推定サイズが設定値3より小さかった場合は、次のステップS316へと移行し、推定サイズが設定値3以上であった場合は、ステップS317へと移行する。
ステップS316では、フォーカスレンズ11bを遠方側(F+)へと移動させる。
ステップS317では、推定サイズが設定値4より大きいか否かを判定する。設定値4とは、図3に示したaの値、すなわちデフォルト位置(F0)で撮像可能な範囲と近接側(F−)で撮像可能な範囲との境界点のことである。推定サイズが設定値4より大きかった場合は、次のステップS318へと移行し、推定サイズが設定値4以下であった場合は、ステップS304へと移行する。
【0044】
このように、第2実施形態では、二次元コードの目玉部分(座標位置を示す部分)に基づいてシンボルサイズの推定ができているか否かを判定し、シンボルサイズの推定ができていた場合に、当該シンボルサイズに基づいてフォーカスレンズ11bの位置を調整し、その画像を解析してデコード処理を行う。
これにより、二次元コードのデコードに失敗したときにも、シンボルサイズの推定ができてさえいれば、改めて二次元コードの撮影を行わなくても画像を解析してデコード処理を行うことができるため、無駄な撮影動作を省くことが可能となる。
【0045】
以上、本発明に係る実施形態に基づいて具体的に説明したが、本発明は上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で変更可能である。
【0046】
例えば、上記実施形態では、シンボルとして二次元コードを撮像したときの処理について説明しているが、一次元のバーコードを撮像したときも同様の処理で対応することが可能である。
【0047】
また、上記実施形態では、「遠方」を撮像部10から15cmの距離、「焦点位置」を撮像部10から10cmの距離、「近接」を撮像部10から5cmの距離と定義しているが、この限りではなく、撮像部10の仕様によりいかようにも設定可能である。
【0048】
また、上記実施形態では、シンボルのおおよその大きさを判定する際に用いられる設定値に異なる2つの値を用いているが、当該設定値は1つでもよい。設定値が1つの場合、シンボルの大きさが、設定値よりも小さい場合はフォーカスレンズ11bの焦点位置を遠方側の所定位置へと移動させ、設定値よりも大きい場合はフォーカスレンズ11bの焦点位置を近接側の所定位置へと移動させることとなる。
【0049】
その他、シンボル読取装置1を構成する各装置の細部構成及び細部動作に関しても、本発明の趣旨を逸脱することのない範囲で適宜変更可能である。
【符号の説明】
【0050】
1 シンボル読取装置
10 撮像部
11 撮像レンズ部
11a ズームレンズ
11b フォーカスレンズ
12 レンズ駆動部
12a ズームレンズ駆動部
12b フォーカスレンズ駆動部
13 イメージセンサ
20 データ処理部
21 メモリ
22 画像処理部
23 画像出力部
24 制御部
24a ズームレンズ駆動制御部
24b フォーカスレンズ駆動制御部
24c ぶれ補正処理部
25 プログラムメモリ
30 ユーザインタフェース部
31 液晶表示部
32 操作部
33 外部インタフェース
34 外部メモリ
40 加速度センサ
50 ID判別部
51 ID抽出部
52 ID格納部

【特許請求の範囲】
【請求項1】
シンボルを撮影して画像を生成する撮像手段と、
前記撮像手段により生成された撮影画像から前記シンボルの大きさを検出する検出手段と、
前記検出手段により検出されたシンボルの大きさと予め設定された値とを比較して大小を判定する判定手段と、
前記判定手段による判定の結果、前記シンボルの大きさが、予め設定された値よりも小さい場合は前記撮像手段の焦点位置を遠方側の所定位置へと移動させ、予め設定された値よりも大きい場合は前記撮像手段の焦点位置を近接側の所定位置へと移動させる焦点移動制御手段と、
前記撮像手段により生成された撮影画像から前記シンボルに対応するシンボルデータを解析する解析手段と、
を備えたことを特徴とするシンボル読取装置。
【請求項2】
前記予め設定された値には、少なくとも2つの異なる値があり、
前記焦点移動制御手段は、前記判定手段による判定の結果、前記バーコードの大きさが、前記2つの異なる値のうち小さい方の値よりも小さい場合は前記撮像手段の焦点位置を遠方側の所定位置へと移動させ、前記2つの異なる値のうち大きい方の値よりも大きい場合は前記撮像手段の焦点位置を近接側の所定位置へと移動させることを特徴とする請求項1に記載のシンボル読取装置。
【請求項3】
前記シンボルは、1次元バーコード又は2次元コードであることを特徴とする請求項1又は2に記載のシンボル読取装置。
【請求項4】
前記検出手段は、前記撮影画像に含まれる座標位置を示す部分に基づいて前記シンボルの大きさを検出することを特徴とする請求項1乃至3のいずれか一項に記載のシンボル読取装置。
【請求項5】
シンボル読取装置のコンピュータを、
シンボルを撮影して画像を生成する撮像手段、
前記撮像機能により生成された撮影画像から前記シンボルの大きさを検出する検出手段、
前記検出機能により検出されたシンボルの大きさと予め設定された値とを比較して大小を判定する判定手段、
前記判定機能による判定の結果、前記シンボルの大きさが、予め設定された値よりも小さい場合は前記撮像機能の焦点位置を遠方側の所定位置へと移動させ、予め設定された値よりも大きい場合は前記撮像機能の焦点位置を近接側の所定位置へと移動させる焦点移動制御手段、
前記撮像機能により生成された撮影画像から前記シンボルに対応するシンボルデータを解析する解析手段、
として機能させるためのプログラム。

【図1】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図7】
image rotate

【図8】
image rotate

【図2】
image rotate

【図6】
image rotate


【公開番号】特開2010−204792(P2010−204792A)
【公開日】平成22年9月16日(2010.9.16)
【国際特許分類】
【出願番号】特願2009−47709(P2009−47709)
【出願日】平成21年3月2日(2009.3.2)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】