(57)【特許請求の範囲】
【請求項１】
焦点距離を調節可能な撮像部と、
自装置の動きが所定範囲内であるか否かを判定する静止判定部と、
自装置の動きが所定範囲内である場合に接写撮影方向に前記焦点距離を調節する第１の焦点距離調節処理を行う焦点距離調節処理部と、
前記第１の焦点距離調節処理の実行中に、前記撮像部が撮像した画像からコードを認識するコード認識部と
を備えたことを特徴とする撮像装置。
【請求項２】
前記コード認識部によって認識されたコードに対応する情報を表示手段に表示させる表示処理部を備える
ことを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記焦点距離調節処理部は、遠景撮影方向と接写撮影方向に焦点距離を交互に調節して撮影に適した焦点距離を探索する第２の焦点距離調節処理を実行し、前記自装置の動きが所定範囲内である場合に前記第２の焦点距離調節処理を停止して前記第１の焦点距離調節処理を実行する
ことを特徴とする請求項１に記載の撮像装置。
【請求項４】
焦点距離を調節可能な撮像部と、
前記撮像部が取得した画像からコードを認識するコード認識部と、
前記撮像部の撮像方向を判定する判定部と、
前記判定部によって判定された方向に基づいて前記焦点距離を調節する焦点距離調節処理部と
を備えたことを特徴とする撮像装置。
【請求項５】
前記撮像部が取得した画像の一部を部分画像として切り出す切り出し処理部を備え、
前記コード認識部は、前記切り出し処理部が切り出した部分画像からコードを認識すること
を特徴とする請求項１乃至４のいずれか一つに記載の撮像装置。
【請求項６】
前記切り出し処理部が切り出した部分画像を調整する調整処理部をさらに備え、
前記コード認識部は前記調整処理部によって調整された画像からコードを認識する
ことを特徴とする請求項５に記載の撮像装置。
【請求項７】
焦点距離を調節可能な撮像部を備える撮像装置によって実行される撮像方法であって、
自装置の動きが所定範囲内であるか否かを判定する静止判定ステップと、
自装置の動きが所定範囲内である場合に接写撮影方向に前記焦点距離を調節する第１の焦点距離調節処理を行う焦点距離調節処理ステップと、
前記第１の焦点距離調節処理の実行中に、前記撮像部が撮像した画像からコードを認識するコード認識ステップと
を含んだことを特徴とする撮像方法。
【請求項８】
焦点距離を調節可能な撮像部を備える撮像装置によって実行される撮像方法であって、
前記撮像部が取得した画像からコードを認識するコード認識処理ステップと、
前記撮像部の撮像方向を判定する判定ステップと、
前記判定ステップによって判定された方向に基づいて前記焦点距離を調節する焦点距離調節処理ステップと
を含んだことを特徴とする撮像方法。
【請求項９】
焦点距離を調節可能な撮像部を備える撮像装置によって実行される撮像プログラムであって、
自装置の動きが所定範囲内であるか否かを判定する静止判定手順と、
自装置の動きが所定範囲内である場合に接写撮影方向に前記焦点距離を調節する第１の焦点距離調節処理を行う焦点距離調節処理手順と、
前記第１の焦点距離調節処理の実行中に、前記撮像部が撮像した画像からコードを認識するコード認識手順と
を撮像装置に実行させることを特徴とする撮像プログラム。
【請求項１０】
焦点距離を調節可能な撮像部を備える撮像装置によって実行される撮像プログラムであって、
前記撮像部が取得した画像からコードを認識するコード認識処理手順と、
前記撮像部の撮像方向を判定する判定手順と、
前記判定手順によって判定された方向に基づいて前記焦点距離を調節する焦点距離調節処理手順と
を撮像装置に実行させることを特徴とする撮像プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置、撮像方法および撮像プログラムに関する。
【背景技術】
【０００２】
近年、写真や動画を撮影する撮像装置にバーコード読み取り機能を付加した装置が提案され、商品化されている。このようなバーコード読み取り機能付きの撮像装置は、撮像部から取得した画像を写真や動画として保持・記録することができるとともに、同じ撮像部から取得した画像からコード認識を行うことができる。
【０００３】
一例として、写真として撮影する被写体の一部にバーコードを貼り付け、撮影した画像データのバーコード部分を読み出して画像データの管理を行う技術が知られている。
【０００４】
また、写真撮影とバーコード読み取りとを個別の機能として搭載し、ユーザが写真撮影とバーコード読み取りといずれかを選択して起動する撮像装置も知られている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−３２８６２６号公報
【特許文献２】特開２００９−２３０６９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来の技術では、写真撮影とバーコード読み取りとを個別の機能とした場合にユーザが写真撮影とバーコード読み取りとのいずれかを選択して起動するのでは操作が煩雑となるという問題点があった。
【０００７】
また、写真撮影では、１ｍ程度から無限遠の距離の被写体が撮影されることが多いのに対し、バーコード読み取りの場合には、１０ｃｍ程度の距離で撮影されることが多い。１０ｃｍ程度の撮影は接写撮影、いわゆるマクロ撮影という。
【０００８】
このように写真撮影とバーコード読み取りとでは、被写体までの距離が異なる。このため、通常のカメラに対して、単純にバーコード読み取り動作を追加するだけでは、ピントが合わないという問題が発生する。なお、ピントが合うとは、レンズ系の焦点距離を被写体までの距離に適合した値に調節することをいう。
【０００９】
写真撮影とバーコード読み取りとの被写体距離の差に基づくピント合わせの問題を解決するため、従来の技術では、バーコード読み取りを行う際にはユーザー操作によってマクロ撮影モードに切り替えるといった操作が求められていた。このようにバーコード読み取りの時に固有の操作が必要となるのであれば、仮にカメラとバーコード読み取りを一体化したとしても、メリットは小さくなってしまう。
【００１０】
開示の技術は、上記に鑑みてなされたものであって、簡易な操作で写真撮影とバーコード読み取りとを行うことができる撮像装置、撮像方法および撮像プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本願の開示する撮像装置、撮像方法および撮像プログラムは、焦点距離を調節可能な撮像部を備えた撮像装置の動きが所定範囲内であるか否かを判定し、所定範囲内である場合に接写撮影方向に焦点距離を調節しつつ撮像した画像からコード認識する。
【００１２】
また、本願の開示する撮像装置、撮像方法および撮像プログラムは、焦点距離を調節可能な撮像部が取得した画像からコードを認識し、撮像部の撮像方向を判定して判定された方向に基づいて焦点距離を調節する。
【発明の効果】
【００１３】
本願の開示する撮像装置、撮像方法および撮像プログラムによれば、簡易な操作で写真撮影とバーコード読み取りとを行うことができる撮像装置、撮像方法および撮像プログラムを得ることができるという効果を奏する。
【図面の簡単な説明】
【００１４】
【図１】図１は、実施例１に係る撮像装置であるカメラ１１の構成図である。
【図２】図２は、コード認識処理部３２が認識するコードの説明図である。
【図３】図３は、コード認識処理を行わない比較構成の構成図である。
【図４】図４は、図３の構成にコード認識処理部３２を追加した比較構成の構成図である。
【図５】図５は、ユーザの入力に基づく機能の選択と起動の説明図である。
【図６】図６は、ユーザ操作によりマクロ撮影モードに切り換える比較例の処理動作を説明するフローチャートである。
【図７】図７は、実施例１にかかるカメラ１１の処理動作を説明するフローチャートである。
【図８】図８は、ステップＳ２０２で開始するピント合わせ処理を説明するフローチャートである。
【図９】図９は、ステップＳ３０１に示した静止判定処理のフローチャートである。
【図１０】図１０は、ステップＳ３０３に示した動き判定処理のフローチャートである。
【図１１】図１１は、第２の焦点距離調節処理について説明するフローチャートである。
【図１２】図１２は、第２の焦点距離調節処理を併用する場合のカメラ１１のピント合わせ処理を説明するフローチャートである。
【図１３】図１３は、本実施例にかかる撮像装置を携帯電話装置に適用した場合の構成図である。
【図１４】図１４は、実施例２に係る撮像装置であるカメラ１２の構成図である。
【図１５】図１５は、実施例２にかかるカメラ１２の処理動作を説明するフローチャートである。
【図１６】図１６は、実施例３に係る撮像装置であるカメラ１３の構成図である。
【図１７】図１７は、切り出し処理部３８による切り出しの具体例についての説明図である。
【図１８】図１８は、部分画像を拡大してコード認識するカメラ１４の構成図である。
【図１９】図１９は、部分画像の拡大についての説明図である。
【発明を実施するための形態】
【００１５】
以下に、本願の開示する撮像装置、撮像方法および撮像プログラムを図面に基づいて詳細に説明する。なお、以下の具体的な実施例に本発明を限定するものではない。
【実施例１】
【００１６】
［装置の構成］
図１は、実施例１に係る撮像装置であるカメラ１１の構成図である。図１に示したカメラ１１は、レンズ２１、レンズ位置設定機構２２、ＣＰＵ（Central Processing Unit）２３、イメージセンサ２４、画像処理回路２５、加速度センサ２６、入力ユニット２７、記録媒体２８、表示ユニット２９を有する。
【００１７】
レンズ２１、レンズ位置設定機構２２、イメージセンサ２４および画像処理回路２５は、焦点距離を調節可能な撮像部として機能する。すなわち、レンズ位置設定機構２２がレンズ２１の焦点距離を調整し、レンズ２１を介して得られた被写体の像をイメージセンサ２４が取得する。そして、画像処理回路２５がイメージセンサ２４の出力を処理し、画像データをとしてＣＰＵ２３に出力する。
【００１８】
加速度センサ２６は、カメラ１１に加わる加速度をＸＹＺの３軸それぞれについて測定するセンサであり、３軸についての測定結果をＣＰＵ２３に出力する。入力ユニット２７は、ユーザの操作入力を受け付けるユニットであり、ボタン、キー、スイッチ、タッチパネルなどを用いることができる。
【００１９】
記録媒体２８は、カメラ１１が撮影した画像や動画を保持する媒体として使用する。この記録媒体２８は、静的、動的、揮発、不揮発を問わず、また、磁気、電気的、光学的を問わず任意の記録方式を用いることができる。また、記録媒体２８をカメラ１１から取り外すことができる可搬型記録媒体としてもよい。表示ユニット２９は、撮影した画像やコードの認識結果等を表示出力するユニットであり、一例として液晶ディスプレイを用いればよい。
【００２０】
ＣＰＵ２３は、カメラ１１において、表示処理部３１、コード認識処理部３２、記録処理部３３、ピント合わせ処理部３４、静止判定部３５として機能する。表示処理部３１は、表示ユニット２９に表示する内容を制御する処理部である。具体的には、表示処理部３１は、画像処理回路２５が出力した画像やコード認識処理部３２による認識処理の結果などを表示ユニット２９に出力することができる。
【００２１】
コード認識処理部３２は、画像処理回路２５が出力した画像からコードを認識し、認識できた場合には認識結果を表示処理部３１に出力する。このように、画像処理回路２５が出力した画像は、そのまま表示処理部３１に通常撮影用として入力されるとともに、コード認識処理部３２にも入力される。
【００２２】
記録処理部３３は、入力ユニット２７からの指示を受け、画像処理回路２５が出力し、表示処理部３１が取得した画像を記録する。この記録は、ＣＰＵ２３が動作に使用する図示しないメモリ上に一時的に保持するものであってもよいし、記録媒体２８に書き出してもよい。
【００２３】
静止判定部３５は、加速度センサ２６の出力に基づいて、自装置であるカメラ１１の動きが所定範囲内であるか否かを判定する。ピント合わせ処理部３４は、レンズ位置設定機構２２を制御することで、ピント合わせを行う。
【００２４】
ピント合わせ処理部３４は、入力ユニット２７からユーザの操作入力があった場合には操作入力に応じてピント合わせを行う。また、ピント合わせ処理部３４は、静止判定部３５によって自装置の動きが所定範囲内であると判定された場合に、接写撮影方向、すなわちマクロ撮影側に焦点距離を調節する第１の焦点距離調節処理を行う。この第１の焦点距離調節処理については後述する。
【００２５】
図２は、コード認識処理部３２が認識するコードの説明図である。図２に示したコードＣ１は、ＪＡＮ（Japan Article Number）コード、いわゆるバーコードであり、コードＣ２は、マトリックス型二次元コード、いわゆる二次元バーコードである。コード認識処理部３２は、これらのコードを読み取って認識を試み、認識できた場合には、認識結果を表示処理部３１に出力する。
【００２６】
［比較構成の説明］
図３は、コード認識処理を行わない比較構成の構成図である。図３に示したカメラ１０ａは、図１に示したカメラ１１と比べると、コード認識処理部３２、静止判定部３５、加速度センサ２６を持たず、写真撮影のみを行う。このため、カメラ１０ａのピント合わせ処理部３６は、入力ユニット２７の入力に応じてピント合わせを行う。
【００２７】
図４は、図３の構成にコード認識処理部３２を追加した比較構成の構成図である。図４に示したカメラ１０ｂは、画像処理回路２５の出力を表示処理部３１とコード認識処理部３２の双方で受け、写真や動画の撮影とコード認識の双方を行うことができる。
【００２８】
このように、写真撮影とコードの読み取りを行うカメラ１０ｂは、例えば、ユーザが写真撮影の機能とコードの読み取り機能のいずれかを選択して起動する。図５は、ユーザの入力に基づく機能の選択と起動の説明図である。
【００２９】
図５に示したキーボードＢ１は、カメラ１０ｂが有する入力ユニット２７の一例である。ユーザは、キーボードＢ１に設けたキーｋ１を押下することで、写真撮影の機能を起動することができる。
【００３０】
また、表示例Ｄ１に示したようにメニュー画面を表示し、メニュー画面Ｄ１に表示された機能から選択することもできる。図５に示した表示例Ｄ１では、バーコードリーダｍ１、赤外線通信ｍ２、カメラｍ３、ワンセグｍ４、ガイドｍ５の５つのメニューを表示し、ユーザがカメラｍ３を選択した状態を示している。
【００３１】
同様に、表示例Ｄ２に示したように、メニュー画面からバーコードリーダＤ１を選択することで、ユーザはコード認識の機能を起動することができる。
【００３２】
図５に示した例では、コード認識の機能に比して写真撮影の機能の方が使用頻度が高いと想定し、写真撮影に対して専用のキーｋ１を設けている。このため、ユーザは、写真撮影の機能を少ない操作で素早く起動することができる。一方、コード認識の起動はメニュー操作を要し、起動までの手間が写真撮影に比して多くなっている。
【００３３】
画像処理回路２５を写真撮影用に表示出力するとともに、並行してコード認識を行うこととすれば、写真撮影とコード認識の機能の起動を統合することができ、ユーザは機能を選択して起動する必要がなくなる。しかし、このように写真撮影とコード認識の機能の起動を統合した場合、ピント合わせが問題となる。
【００３４】
写真撮影は１ｍから無限遠の距離の被写体が撮影されることが多い。例えばレンズ付きフィルムが対象としているのがこの範囲である。一方、コード認識は１０ｃｍ前後で読み取り操作が行われることが多い。
【００３５】
このため、通常の写真撮影に対して、単純にコード読み取り動作を追加するだけでは、ピントが合わないという問題が発生する。このためコード読み取りを行う際には、ユーザ操作によりマクロ撮影モードに切り替えるといった操作が求められる場合があった。
【００３６】
図６は、ユーザ操作によりマクロ撮影モードに切り換える比較例の処理動作を説明するフローチャートである。カメラ１０ｂが起動されると、まず、カメラ１０ｂは、レンズ位置を通常の写真撮影に適した位置に設定（ステップＳ１０１）し、コード認識を開始する（ステップＳ１０２）。
【００３７】
ユーザからバーコード認識指示の入力を受けた場合（ステップＳ１０３，Ｙｅｓ）、カメラ１０ｂは、レンズ位置をマクロ撮影に適した位置に変更する（ステップＳ１０４）。
【００３８】
バーコード認識指示の入力が無い場合（ステップＳ１０３，Ｎｏ）、もしくはレンズ位置をマクロ位置に変更した（ステップＳ１０４）後、カメラ１０ｂは、取得した画像を表示出力しつつコード認識を行う（ステップＳ１０５）。
【００３９】
コード認識の結果、コードを認識した場合（ステップＳ１０５，Ｙｅｓ）、カメラ１０ｂは、認識結果を表示出力して（ステップＳ１０８）、処理を終了する。一方、コード認識の結果、コードを認識しなかった場合（ステップＳ１０５，Ｎｏ）、カメラ１０ｂは、撮影を指示するユーザ入力を受けたか判定する（ステップＳ１０６）。
【００４０】
撮影を指示するユーザ入力を受けていなければ（ステップＳ１０６，Ｎｏ）、カメラ１０ｂは、コード認識に戻る（ステップＳ１０５）。そして、撮影を指示するユーザ入力を受けたならば（ステップＳ１０６，Ｙｅｓ）、カメラ１０ｂは撮影結果を出力（ステップＳ１０７）し、処理を終了する。
【００４１】
このように、比較例の構成では、写真撮影の機能の起動とコード認識の機能の起動とを統合したとしても、コードの認識を行う際にはマクロ切り替えのユーザ操作が必要となる。かかる比較例に対し、実施例１にかかるカメラ１１は、写真撮影用の表示出力とコード認識処理を並行して動作させるとともに、カメラ１１の静止状態に合せてピント合わせ機構を同時に動作させる。このため、通常のカメラとしての使い勝手を損なうことなく、コード認識を行うことができ、利便性の高い機能が提供できる。
【００４２】
［処理動作］
図７は、実施例１にかかるカメラ１１の処理動作を説明するフローチャートである。カメラ１１が起動されると、まず、カメラ１１のピント合わせ処理部３４は、レンズ位置を通常の写真撮影に適した位置に設定する（ステップＳ２０１）し、ピント合わせ処理を開始する（ステップＳ２０２）。また、コード認識処理部３２は、コード認識を開始する（ステップＳ２０３）。
【００４３】
コード認識処理部３２がコードを認識した場合（ステップＳ２０４，Ｙｅｓ）、表示処理部３１は、認識結果を表示出力して（ステップＳ２０７）、処理を終了する。例えば、認識されたコードや、当該コードに対応する文字列等を表示出力する。当該文字列がＵＲＬだった場合には、当該ＵＲＬに対応するウェブページをインターネット上のサーバからダウンロードし、このウェブページを表示出力することも考えられる。一方、コード認識の結果、コードを認識しなかった場合（ステップＳ２０４，Ｎｏ）、カメラ１１の記録処理部３３は、撮影を指示するユーザ入力を受けたか判定する（ステップＳ２０５）。
【００４４】
撮影を指示するユーザ入力を受けていなければ（ステップＳ２０５，Ｎｏ）、カメラ１１は、コード認識に戻る（ステップＳ２０４）。そして、撮影を指示するユーザ入力を受けたならば（ステップＳ２０５，Ｙｅｓ）、カメラ１１は画像を記録して撮影結果を出力（ステップＳ２０６）し、処理を終了する。
【００４５】
図８は、ステップＳ２０２で開始するピント合わせ処理を説明するフローチャートである。図８に示したように、まず静止判定部３５が加速度センサ２６の出力を用いて静止判定処理を行う（ステップＳ３０１）。この静止判定処理の結果、カメラ１１が静止状態と判定された場合に、ピント合わせ処理部３４は、マクロ撮影側にピントを合わせる第１の焦点距離調節処理を行う（ステップＳ３０２）。
【００４６】
第１の焦点距離調節処理（ステップＳ３０２）の後、静止判定部３５は、加速度センサ２６の出力を用いて動き判定処理を行う（ステップＳ３０３）。動き判定処理の結果、カメラ１１が動いたと判定された場合、静止判定部３５は、再び静止判定処理（ステップＳ３０１）に移行する。
【００４７】
図９は、ステップＳ３０１に示した静止判定処理のフローチャートである。図９に示したように、静止判定部３５は、静止判定処理を開始すると、所定時間待機した（ステップＳ４０１）後、加速度センサ２６から加速度を取得する（ステップＳ４０２）。
【００４８】
静止判定部３５は、ｘ軸、ｙ軸、ｚ軸の３軸のうちいずれかの加速度が閾値Ｔｈ２より大きければ（ステップＳ４０３，Ｎｏ）、連続回数をリセットし（ステップＳ４０８）、ステップＳ４０１に戻る。
【００４９】
一方、３軸の加速度が全て閾値Ｔｈ２以下である場合（ステップＳ４０３，Ｙｅｓ）は、静止判定部３５は、連続回数をインクリメントし（ステップＳ４０４）、連続回数が第１の規定回数を超えたかを判定する（ステップＳ４０５）。
【００５０】
連続回数が第１の規定回数以下であれば（ステップＳ４０５，Ｎｏ）、静止判定部３５は、ステップＳ４０１に戻る。そして、連続回数が第１の規定回数を超えた場合（ステップＳ４０５，Ｙｅｓ）、静止判定部３５は、カメラ１１が静止状態であると判定し（ステップＳ４０６）、連続回数をリセットして（ステップＳ４０７）、静止判定処理を終了する。
【００５１】
図１０は、ステップＳ３０３に示した動き判定処理のフローチャートである。図１０に示したように、静止判定部３５は、動き判定処理を開始すると、所定時間待機した（ステップＳ５０１）後、加速度センサ２６から加速度を取得する（ステップＳ５０２）。
【００５２】
静止判定部３５は、ｘ軸、ｙ軸、ｚ軸の３軸のうちいずれかの加速度が閾値Ｔｈ１より小さければ（ステップＳ５０３，Ｎｏ）、連続回数をリセットし（ステップＳ５０８）、ステップＳ５０１に戻る。
【００５３】
一方、３軸の加速度が全て閾値Ｔｈ１以上である場合（ステップＳ５０３，Ｙｅｓ）、静止判定部３５は、連続回数をインクリメントし（ステップＳ５０４）、連続回数が第２の規定回数を超えたかを判定する（ステップＳ５０５）。
【００５４】
連続回数が第２の規定回数以下であれば（ステップＳ５０５，Ｎｏ）、静止判定部３５は、ステップＳ５０１に戻る。そして、連続回数が第２の規定回数を超えた場合（ステップＳ５０５，Ｙｅｓ）、静止判定部３５は、カメラ１１が動いたと判定し（ステップＳ５０６）、連続回数をリセットして（ステップＳ５０７）、動き判定処理を終了する。
【００５５】
なお、ここでは、３軸の加速度が全て閾値Ｔｈ１以上である場合に連続回数をインクリメントする処理を例示したが、３軸のいずれかの加速度が閾値Ｔｈ１以上である場合にステップＳ５０４に移行し、３軸の加速度が全て閾値Ｔｈ１未満である場合にステップＳ５０８に移行する処理としてもよい。
【００５６】
このように、カメラ１１は、静止した状態、すなわちユーザによる構図合せが完了し、カメラ１１が安定した状態でマクロ撮影の方向に焦点距離を調節する。このため、カメラ１１は、被写体がコードであり、被写体までの距離が短い場合であってもユーザに入力を求めることなく速やかにピントを合わせてコード認識を行うことができる。したがって、通常のカメラとしての使い勝手を損なうことがなく、コードの認識に際してもコードに対してかざすだけで認識できるという、利便性の高い機能が提供できる。
【００５７】
また、カメラ１１が静止してピント合わせを行った後、カメラ１１が動いたならば、再び静止した場合に再度ピント合わせを行うので、ユーザの構図合せに追随して適宜ピントを合わせることができる。
【００５８】
また、接写撮影方向に前記焦点距離を調節する第１の焦点距離調節処理に加え、遠景撮影方向とマクロ撮影方向に焦点距離を交互に調節して撮影に適した焦点距離を探索する第２の焦点距離調節処理を併用してもよい。
【００５９】
図１１は、第２の焦点距離調節処理について説明するフローチャートである。図２に示した第２の焦点距離調節処理では、ピント合わせ処理部３４は、まず、レンズの現在位置を記憶し（ステップＳ６０１）、レンズを∞方向、すなわち遠景撮影方向に一定距離移動させる（ステップＳ６０２）。
【００６０】
ピント合わせ処理部３４は、この状態で第１のコントラスト評価を行い（ステップＳ６０３）、レンズを記憶した位置に移動させ（ステップＳ６０４）、レンズをマクロ撮影方向に一定距離移動させて（ステップＳ６０５）、第２のコントラスト評価を行う（ステップＳ６０６）。
【００６１】
ピント合わせ処理部３４は、第１のコントラスト評価値と第２のコントラスト評価値とを比較し（ステップＳ６０７）、第１のコントラスト評価値が第２のコントラスト評価値以下であれば（ステップＳ６０７，Ｎｏ）、ステップＳ６０１に戻る。そして、第１のコントラスト評価値が第２のコントラスト評価値より大きければ（ステップＳ６０７，Ｙｅｓ）、ピント合わせ処理部３４は、レンズを記憶した位置に移動し（ステップＳ６０８）、さらにレンズを∞方向に一定距離移動して（ステップＳ６０９）、ステップＳ６０１に戻る。
【００６２】
図１２は、第２の焦点距離調節処理を併用する場合のカメラ１１のピント合わせ処理を説明するフローチャートである。カメラ１１は、図８に示したフローチャートに代えて図１２に示したフローチャートを実行する。
【００６３】
図１２に示したピント合わせ処理では、ピント合わせ処理部３４は、まず、第２の焦点距離調節処理を開始する（ステップＳ７０１）。また、静止判定部３５が加速度センサ２６の出力を用いて静止判定処理を行う（ステップＳ７０２）。この静止判定処理の結果、カメラ１１が静止状態と判定された場合に、ピント合わせ処理部３４は、第２の焦点距離調節処理を停止し（ステップＳ７０３）、第１の焦点距離調節処理を行う（ステップＳ７０４）。
【００６４】
第１の焦点距離調節処理（ステップＳ７０４）の後、ピント合わせ処理部３４は、第２の焦点距離調節処理を開始し（ステップＳ７０５）、静止判定部３５は、加速度センサ２６の出力を用いて動き判定処理を行う（ステップＳ７０６）。動き判定処理の結果、カメラ１１が動いたと判定された場合、静止判定部３５は、再び静止判定処理（ステップＳ７０２）に移行する。
【００６５】
第２の焦点距離調節処理では、レンズを遠景撮影方向と接写撮影方向に、すなわち前後に移動させながらピント位置を見つける。このため、通常の写真撮影には有効だが、∞位置からマクロ位置への移動には長い時間を要する。つまり、通常の撮影に好適なレンズ初期位置（約１ｍ〜∞）から、バーコードの撮影に適するレンズ位置（１０ｃｍ）への移動には、時間がかかる場合がある。
【００６６】
そこで、図１２に示したように、静止判定および第１の焦点距離調節処理と第２の焦点距離調節処理とを組み合わせて使用することで、カメラ１１が静止した場合には第１の焦点距離調節処理によって速やかにマクロ側にピントを合わせ、コードを認識することが出来る。
【００６７】
図１３は、本実施例にかかる撮像装置を携帯電話装置に適用した場合の構成図である。携帯電話装置４０は、レンズ２１、レンズ位置設定機構２２、ＣＰＵ（Central Processing Unit）２３、イメージセンサ２４、画像処理回路２５、加速度センサ２６、入力ユニット２７、記録媒体２８、表示ユニット２９を有する。加えて、携帯電話装置４０は、ＤＲＡＭ（Dynamic Random Access Memory）４１、モデム４２、アンテナ４３を有する。
【００６８】
ＣＰＵ２３は、ＤＲＡＭ４１を主記憶装置として使用し、各種プログラムを実行する。したがって、ＣＰＵ２３に撮像プログラムを実行させることで、表示処理部３１、コード認識処理部３２、記録処理部３３、ピント合わせ処理部３４、静止判定部３５として機能させることができる。また、ＣＰＵ２３は、通信用のプログラムを実行することで、モデム４２およびアンテナ４３を介して携帯通信網に無線接続し、通話や通信を行なうことが出来る。
【００６９】
上述してきたように、本実施例にかかる撮像装置、撮像方法および撮像プログラムは、写真や動画の撮影機能とコード認識の機能を平行して動作させるとともに、加速度から装置の動きを判定し、自装置が静止した場合にマクロ方向にピント合わせを行なう。このため、本実施例にかかる撮像装置、撮像方法および撮像プログラムは、簡易な操作で写真撮影とバーコード読み取りとを行うことができる。
【００７０】
なお、本実施例１では、カメラ１１および携帯電話装置４０を例に説明をおこなったが、焦点距離を調節可能な撮像部と加速度センサなど自装置の動きを検出可能な手段とを有する任意の装置に開示の技術を適用可能である。
【実施例２】
【００７１】
［装置の構成］
図１４は、実施例２に係る撮像装置であるカメラ１２の構成図である。図１４に示したカメラ１２は、レンズ２１、レンズ位置設定機構２２、ＣＰＵ２３、イメージセンサ２４、画像処理回路２５、加速度センサ２６、入力ユニット２７、記録媒体２８、表示ユニット２９を有する。
【００７２】
レンズ２１、レンズ位置設定機構２２、イメージセンサ２４、画像処理回路２５、加速度センサ２６、入力ユニット２７、記録媒体２８、表示ユニット２９については、実施例１と同様であるので、説明を省略する。
【００７３】
ＣＰＵ２３は、カメラ１２において、表示処理部３１、コード認識処理部３２、記録処理部３３、ピント合わせ処理部３４、光軸方向判定部３７として機能する。表示処理部３１、コード認識処理部３２、記録処理部３３の動作は、実施例１と同様であるので説明を省略する。
【００７４】
光軸方向判定部３７は、加速度センサ２６の出力に基づいて、レンズ２１の光軸方向を判定する判定部である。ピント合わせ処理部３４は、光軸方向判定部３７による判定の結果を用い、光軸方向に基づいてレンズ２１の初期位置を設定する。
【００７５】
［処理の説明］
図１５は、実施例２にかかるカメラ１２の処理動作を説明するフローチャートである。カメラ１２が起動されると、まず、光軸方向判定部３７が加速度センサ２６が加速度の値を取得し（ステップＳ８０１）、レンズ２１の光軸方向を判定する（ステップＳ８０２）。
【００７６】
光軸方向が下向きである場合（ステップＳ８０２，Ｙｅｓ）、ピント合わせ処理部３４は、レンズ２１をマクロ撮影に適した初期位置に移動させる（ステップＳ８０４）。一方、光軸方向が下向きでない場合（ステップＳ８０２，Ｎｏ）、ピント合わせ処理部３４は、レンズ２１を通常の写真撮影や動画撮影に適した初期位置に移動させる（ステップＳ８０３）。
【００７７】
ここで、光軸方向が下向きであるか否かは、一例として、重力方向の加速度が他の方向の加速度に比して所定値以上大きい、もしくは重力方向の加速度が他の方向の加速度に比して所定の比率以上であることを条件に判定すればよい。
【００７８】
雑誌やカードに印刷されたバーコードの読み取りを行う際、机上に雑誌やカードを置き、カメラを上からかざしてコード認識が行われることが多いと想定される。従って、加速度センサを備え、これによりカメラ１２の姿勢、すなわちレンズの光軸方向を判定するようにして、カメラ起動時のレンズ初期位置を決めている。具体的にはレンズの光軸が下（重力）方向のとき、レンズの初期位置をマクロ位置することで、バーコード認識を行う際に最初からバーコードにピントが合っている状態を実現でき、速やかにコード認識ができる。
【００７９】
このように光軸方向に基づいてレンズ２１の初期位置を設定した後は、任意の技術を用いてピント合わせを行うことができる。一例として、実施例２に開示したレンズ２１の初期位置の設定を行った後、実施例１に開示したピント合わせを行えばよい。
【００８０】
上述してきたように、本実施例にかかるカメラ１２は、写真や動画の撮影機能とコード認識の機能を平行して動作させるとともに、加速度から装置の姿勢を判定し、レンズ２１の初期位置を設定する。このため、本実施例にかかるカメラ１２は、簡易な操作で写真撮影とバーコード読み取りとを行うことができる。
【００８１】
なお、本実施例１と同様、携帯電話装置など、焦点距離を調節可能な撮像部と加速度センサなど自装置の姿勢を検出可能な手段とを有する任意の装置に開示の技術を適用可能である。また、撮像方法、撮像プログラムとして実施可能である点についても実施例１と同様である。
【実施例３】
【００８２】
［装置の構成］
図１６は、実施例３に係る撮像装置であるカメラ１３の構成図である。図１６に示したカメラ１２は、レンズ２１、レンズ位置設定機構２２、ＣＰＵ２３、イメージセンサ２４、画像処理回路２５、入力ユニット２７、記録媒体２８、表示ユニット２９を有する。
【００８３】
レンズ２１、レンズ位置設定機構２２、イメージセンサ２４、画像処理回路２５、入力ユニット２７、記録媒体２８、表示ユニット２９については、実施例１と同様であるので、説明を省略する。
【００８４】
ＣＰＵ２３は、カメラ１３において、表示処理部３１、コード認識処理部３２、記録処理部３３、ピント合わせ処理部３４、切り出し処理部３８として機能する。表示処理部３１、コード認識処理部３２、記録処理部３３の動作は、実施例１と同様であるので説明を省略する。
【００８５】
切り出し処理部３８は、画像処理回路２５が出力した画像の一部を部分画像として切り出し、コード認識処理部３２に出力する。したがって、コード認識処理部３２は、切り出し処理部３８が切り出した部分画像からコードを認識することとなる。一方で、画像処理回路２５の出力は、切り出し処理部３８を経由することなく表示処理部３１に入力される。このため、表示処理部３１は、画像処理回路２５が出力した画像の全体を表示ユニット２９に出力し、また、画像処理回路２５が出力した画像の全体を撮影することができる。
【００８６】
図１７は、切り出し処理部３８による切り出しの具体例についての説明図である。コード認識処理部３２に入力する画像の切り出しは、カメラ１３の画角およびコード認識エンジンの性能を考慮して決定する。
【００８７】
具体例として、
(1)カメラの垂直画角：６０度
(2)カメラの撮影距離：１０ｃｍ
(3)撮影される二次元コードの１セル＝１ｍｍ
(4)コード認識エンジンの性能：８０セル×８０セルまでの二次元コードを認識する。
(5)コード認識エンジンの性能：二次元コードのセルが２ドットに撮影されることが必要
以上の条件で撮影した場合を考えると、(1)(2)により、図１７に示したように、カメラ１３は垂直方向に１１．５ｃｍの範囲を撮影することとなる。
【００８８】
(3)により１１．５ｃｍの間に二次元コードは１１５セル分入ることになるが、(4)の制限により８０セルまでしか認識できない。従って、カメラの垂直方向の画角の約７０％（８０／１１５）をコード認識エンジンの入力とするのが適切である。なお、この条件の場合、１セルは４．２ドットに撮影されるので、(5)の条件は満たされる。
【００８９】
図１７の例では、カメラ１３が撮影する全体画像Ｐ１は、６４０ドット×４８０ドットの画像である。二次元コードが正方形である場合、カメラ１３は最大で４８０ドット×４８０ドットの二次元コード画像Ｐ２を得ることができる。
【００９０】
この４８０ドット×４８０ドットが１１５セル×１１５セルに対応するが、８０セルまでしか認識できないコード認識エンジンの制限に基づき、４８０ドット×４８０ドットの７０％分、すなわち３３６ドット×３３６ドットの画像を部分画像Ｐ３として切り出して、コード認識処理部３２に出力する。
【００９１】
この様に、コード認識に用いる範囲を写真撮影に用いる範囲よりも狭くすることによって、コード認識エンジンの性能をフルに発揮しながら次の効果が得られる。一つの効果として、コード認識エンジンに用いる範囲を小さくすることにより、探索範囲が狭まるため、コード認識を高速に行うことが出来、ユーザが体感するレスポンスを改善することが出来る。また、一つの効果として、低速なクロックのＣＰＵを採用することが出来るようになり、コストダウンが可能となる。また、一つの効果として、ＣＰＵの動作クロックを下げることができ、装置の消費電力低減が可能となる。
【００９２】
また、切り出した部分画像を拡大してコード認識に使用してもよい。図１８は、部分画像を拡大してコード認識するカメラ１４の構成図である。図１８に示したカメラ１４は、カメラ１３の切り出し処理部３８とコード認識処理部３２との間に拡大処理部３９を設けている。従って、コード認識処理部３２は、拡大された部分画像からコードを認識することとなる。その他の構成については、図１６に示したカメラ１３と同様であるので、説明を省略する。
【００９３】
図１９は、部分画像の拡大についての説明図である。図１９に示したように、切り出し処理部３８は、６４０ドット×４８０ドットの全体画像Ｐ１から、３３６ドット×３３６ドットの部分画像Ｐ３を切り出す。拡大処理部３９は、３３６ドット×３３６ドットの部分画像Ｐ３を４８０ドット×４８０ドットに拡大して拡大部分画像Ｐ３ａを作成し、コード認識処理部３２に入力する。
【００９４】
具体例として、
(1)カメラの垂直画角：６０度
(2)カメラの撮影距離：１０ｃｍ
(3)撮影される二次元コードの１セル＝１ｍｍ
(4)コード認識エンジンの性能：８０セル×８０セルまでの二次元コードを認識する。
(5)コード認識エンジンの性能：二次元コードのセルが６ドットに撮影されることが必要
以上の条件で撮影した場合を考える。ここで、条件（５）が上述の条件と変更されており、他の条件(1)〜(4)は変更していない。
【００９５】
この場合、拡大処理を行わないと二次元コードの１セルが４．２ドットに撮影されるため、コード認識処理部３２は、認識ができない。そこで、３３６×３３６ドットの部分画像Ｐ３を４８０ドット×４８０ドットの拡大部分画像Ｐ３ａに拡大することで、１セルが６ドット相当に拡大され、コード認識処理部３２は、コードを認識することができる。
【００９６】
この様に、コード認識に用いる範囲を写真撮影に用いる範囲よりも狭くした上で、拡大処理を行うことにより、従来は認識出来なかったコードが認識できるようになる効果が得られる。
【００９７】
上述してきたように、本実施例にかかるカメラ１３，１４は、写真や動画の撮影機能と平行し、取得した画像の一部を切り出してコード認識を行う。このため、本実施例にかかるカメラ１３，１４は、簡易な操作で写真撮影と高精度なバーコード読み取りとを行うことができる。また、切り出した画像を拡大することによって、従来は認識出来なかったコードが認識できるようになる。
【００９８】
切り出す画像のサイズや拡大の要否、また拡大率については、コード認識エンジンの性能、使用可能なＣＰＵの処理能力、消費電力の制限、被写体までの距離に基づいて適宜設定、変更が可能である。例えば、ピント合わせの結果を被写体までの距離として用いて、切り出す画像のサイズや拡大の要否、拡大率を変更することができる。また、バッテリーの残量やＣＰＵの使用率に基づいて切り出す画像のサイズや拡大の要否、また拡大率を変更することができる。
【００９９】
なお、本実施例に開示したカメラ１３，１４は、携帯電話装置など、焦点距離を調節可能な撮像部を有する任意の装置に開示の技術を適用可能である。また、撮像方法、撮像プログラムとして実施可能である。加えて、実施例１，２に開示した技術と組み合わせ使用することができる。
【符号の説明】
【０１００】
１０ａ，１０ｂ，１１〜１４    カメラ
２１    レンズ
２２    レンズ位置設定機構
２３    ＣＰＵ
２４    イメージセンサ
２５    画像処理回路
２６    加速度センサ
２７    入力ユニット
２８    記録媒体
２９    表示ユニット
３１    表示処理部
３２    コード認識処理部
３３    記録処理部
３４，３６    ピント合わせ処理部
３５    静止判定部
３７    光軸方向判定部
３８    切り出し処理部
３９    拡大処理部
４０    携帯電話装置
４２    モデム
４３    アンテナ
【図１】
0005482327.tif 000002
【図２】
0005482327.tif 000003
【図３】
0005482327.tif 000004
【図４】
0005482327.tif 000005
【図５】
0005482327.tif 000006
【図６】
0005482327.tif 000007
【図７】
0005482327.tif 000008
【図８】
0005482327.tif 000009
【図９】
0005482327.tif 000010
【図１０】
0005482327.tif 000011
【図１１】
0005482327.tif 000012
【図１２】
0005482327.tif 000013
【図１３】
0005482327.tif 000014
【図１４】
0005482327.tif 000015
【図１５】
0005482327.tif 000016
【図１６】
0005482327.tif 000017
【図１７】
0005482327.tif 000018
【図１８】
0005482327.tif 000019
【図１９】
0005482327.tif 000020