説明

撮影装置、撮影装置の制御方法、及びコンピュータプログラム

【課題】連続撮影された各画像に付与される撮影装置の位置情報を正確に算出する。
【解決手段】連続撮影の開始前と終了後に、CPU102は、GPSユニット103で取得された「カメラユニット101の測位情報」を入力し、メモリ制御部115は、カメラユニット101の測位情報を取得して、位置情報メモリ118に格納する。位置情報算出部108は、加速度センサ106で検知された加速度と、撮影間隔検出部107で検出された撮影間隔と、に基づいて、各撮影間隔におけるカメラユニット101の移動量を算出し、直前の撮影におけるカメラユニット101の位置と、当該撮影間隔におけるカメラユニット101の移動量とのベクトル和を計算して、当該撮影におけるカメラユニット101の位置を算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮影装置、撮影装置の制御方法、及びコンピュータプログラムに関し、特に、連続撮影した複数の画像に、それぞれの画像を撮影したときの撮影装置の位置情報を付与するために用いて好適なものである。
【背景技術】
【0002】
近年、Global Positioning System(以下、GPSと略す)等の位置情報取得手段を使い、撮影した際のカメラの位置情報を、取得した画像データに付与する事ができるデジタルカメラが知られている(特許文献1を参照)。また、連続撮影の開始時と終了時のカメラの位置を示す測位情報を得て、それらの測位情報を用いて、連続撮影の途中の画像データに付与するカメラの位置情報を算出する技術がある(特許文献2を参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平7−64169号公報
【特許文献2】特開2001−128049号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、前述したように、特許文献2に記載された技術では、連続撮影の開始時の測位情報と、連続撮影の終了時の測位情報とを用いて、途中に撮影された画像データに付与するカメラの位置情報を算出する。したがって、例えば、連続撮影の開始から終了までのカメラの位置の移動が、等速直線運動以外であった場合や、連続撮影の撮影間隔が一定以外であった場合には、カメラの位置情報の算出精度が低くなるといった問題点があった。
本発明は、このような問題点に鑑みてなされたものであり、連続撮影された各画像に付与される撮影装置の位置情報を正確に算出することを目的とする。
【課題を解決するための手段】
【0005】
本発明の撮影装置は、連続撮影が開始される前の撮影装置の測位情報を取得する取得手段と、前記連続撮影における撮影間隔と、前記連続撮影が行われているときの前記撮影装置の加速度または速度とに基づいて、前記連続撮影において各撮影画像が得られたときの各撮影間隔における前記撮影装置の移動量を導出する移動量導出手段と、前記連続撮影が開始される前の撮影装置の測位情報と、前記各撮影間隔における前記撮影装置の移動量とに基づいて、前記連続撮影において各撮影画像が得られたときの前記撮影装置の位置を導出する位置導出手段と、前記撮影画像と、当該撮影画像が得られたときの撮影装置の位置とを相互に関連付けて記憶する記憶手段と、を有することを特徴とする。
【発明の効果】
【0006】
本発明によれば、連続撮影中の移動を考慮して、連続撮影された各撮影画像に付与される撮影装置の位置情報を正確に算出することができる。
【図面の簡単な説明】
【0007】
【図1】カメラユニットの構成を示す図である。
【図2】カメラユニットの処理を説明するフローチャートである。
【図3】カメラユニットの移動量を示す図である。
【図4】カメラユニットの撮影間隔を示す図である。
【図5】本実施形態におけるカメラユニットの撮影位置の算出結果を示す図である。
【図6】比較例におけるカメラユニットの撮影位置の算出結果を示す図である。
【発明を実施するための形態】
【0008】
以下に、図面を参照しながら、本発明の一実施形態を説明する。
図1は、カメラユニットの構成の一例を示す図である。
図1において、撮影装置の一例であるカメラユニット101は、画像情報を撮影して取得するためのものである。CPU102は、カメラユニット101を統括制御するものである。GPSユニット103は、カメラユニット101の位置を示す測位情報を取得するものである。GPSユニット103は、衛星からのデータから、カメラユニット101の位置情報を測位(測定)する測位部104と、測位部104から得られた情報を処理する信号処理部105とを備える。
【0009】
加速度センサ106は、カメラユニット101が移動する際の加速度を、少なくとも連続撮影の期間の間検知する。撮影間隔検出部107は、撮影間隔設定部114で設定された内容から、連続撮影における各撮影画像の撮影間隔を検出する。
位置情報算出部108は、GPSユニット103(位置情報メモリ118)と、加速度センサ106と、撮影間隔検出部107と、からの情報を元に、カメラユニット101の位置情報を算出する。尚、位置情報算出部108の有する機能がCPU102に備わっていてもよい。
【0010】
位置情報算出部108は、ある撮影間隔で撮影が行われ、当該撮影間隔におけるカメラユニット101の加速度が得られると、例えば、次のようにして、カメラユニット101の移動量を算出する。まず、位置情報算出部108は、当該撮影間隔を積分期間として、当該加速度を時間積分することにより、当該撮影間隔におけるカメラユニット101の移動量を得ることができる。そして、位置情報算出部108は、当該撮影の直前の撮影が行われたときのカメラユニット101の位置と、当該撮影間隔におけるカメラユニット101の移動量とに基づいて、当該撮影が行われたときのカメラユニット101の位置を算出する。算出されたカメラユニット101の位置は、CPU102及びメモリ制御部115を介して位置情報メモリ118に記憶される。
撮像部109は、取り込んだ被写体像をデジタルデータに変換する。
【0011】
操作部110は、カメラユニット101の操作部である。操作部110は、モードダイヤル111と、表示部112と、レリーズスイッチ113と、撮影間隔設定部114とを有する。モードダイヤル111は、静止画記録モード、動画記録モード、再生モード等のモードをユーザが選択するための操作部である。表示部112は、撮影する画像を表示させる電子ビューファインダーの機能を持つ。レリーズスイッチ113は、撮影を行う際にユーザが操作する操作部である。撮影間隔設定部114は、撮影間隔をユーザが設定するための操作部である。本実施形態では、撮影間隔設定部114は、連続撮影の際の撮影間隔を同じにする設定(すなわち等間隔する設定)と、異ならせる設定との双方を行うことができる。
メモリ制御部115は、画像データや、カメラユニット101の位置情報の記録を制御する。メモリ部116は、各種のプログラム及びデータを記憶する。メモリ部116には、画像データ用の画像メモリ117と、位置情報用の位置情報メモリ118とが含まれている。
【0012】
次に、図2のフローチャートを用いて、本実施形態のカメラユニット101の処理の一例を説明する。
ステップS201において、CPU102は、モードダイヤル111で選択された撮影モードが、連続撮影モードであるか否かを判定する。この判定の結果、撮影モードが連続撮影モードでない場合には、ステップS214に進み、他の撮影モードにおける処理が行われた後に図2のフローチャートによる処理を終了する。
【0013】
一方、撮影モードが連続撮影モードであった場合には、ステップS202に進む。ステップS202に進むと、GPSユニット103は、カメラユニット101の測位を行って(位置を測定して)、カメラユニット101の測位情報を取得する。カメラユニット101の測位情報は、所定の位置を原点とする3次元直交座標のそれぞれの成分について得られる。
次に、ステップS203において、CPU102は、GPSユニット103で取得された「カメラユニット101の測位情報」を入力する。メモリ制御部115は、CPU102から、カメラユニット101の測位情報を取得して、位置情報メモリ118に格納する。本実施形態では、このカメラユニット101の測位情報が、連続撮影を開始する直前のカメラユニット101の位置を示す情報となる。尚、ステップS202の後ではなく、後述するステップS208において連続撮影を開始すると判定された後にステップS203、S204の処理を行って、連続撮影を開始する直前のカメラユニット101の位置を示す情報を得てもよい。
【0014】
次に、ステップS204において、加速度センサ106は、連続撮影(連写撮影)に伴いカメラユニット101が移動する際の(カメラユニット101の)加速度の検知を開始する。
次に、ステップS205において、撮像部109は、撮影画像を取り込む。CPU102は、撮像部109により取り込まれた撮影画像の指示を表示部112に行う。この指示に基づいて表示部112は、撮影画像を表示部112にスルー表示させる。
【0015】
次に、ステップS206において、CPU102は、連続撮影を開始するか否かを判定する。この判定は、例えば、レリーズスイッチ113がユーザによって押されたか否かによって行うことができる。この判定の結果、連続撮影を開始しない場合には、ステップS205に戻る。一方、連続撮影を開始する場合には、ステップS207に進む。
ステップS207に進むと、CPU102は、撮影画像の記録をメモリ制御部115に指示する。この指示に基づいてメモリ制御部115は、撮影画像を画像メモリ117に記録する。
【0016】
次に、ステップS208において、撮影間隔検出部107は、次の撮影を行うまでの撮影間隔を検出する。
本実施形態は、撮影間隔設定部114を、例えば、ユーザが撮影間隔を選択できるようなスイッチとしている。よって、撮影間隔設定部114は、ユーザが設定した時間間隔を、カメラユニット101の撮影間隔として検出する。
【0017】
次に、ステップS209において、CPU102は、連続撮影を終了するか否かを判定する。この判定は、例えば、ユーザの手がレリーズスイッチ113から離れたか否かによって行うことができる。この判定の結果、連続撮影を終了しない場合には、ステップS207に戻る。ステップS207に戻ると、CPU102は、ステップS208で検出した撮影間隔が到達したときに、撮影画像の記録をメモリ制御部115に指示する。これにより、ステップS208で検出した撮影間隔で撮影された撮影画像が画像メモリ117に記録される。
【0018】
一方、ステップS209において、連写撮影を終了する場合には、ステップS210に進む。
ステップS210に進むと、GPSユニット103は、カメラユニット101の測位を行って、カメラユニット101の測位情報を取得する。カメラユニット101の測位情報は、3次元直交座標のそれぞれの成分について得られる。
【0019】
次に、ステップS211において、CPU102は、GPSユニット103で取得された「カメラユニット101の測位情報」を入力する。メモリ制御部115は、CPU102から、カメラユニット101の測位情報を取得して、位置情報メモリ118に格納する。本実施形態では、このカメラユニット101の測位情報が、連続撮影が終了したときのカメラユニット101の位置を示す情報となる。
【0020】
次に、ステップS212において、位置情報算出部108は、連続撮影で各撮影画像が撮影されたときのカメラユニット101の位置をそれぞれ算出する。
図3は、連続撮影が行われているときのカメラユニット101の位置と時間との関係の一例を、カメラユニット101の移動量の一例と共に示す図である。図3の破線301内に示される情報が、加速度センサ106により検知された「カメラユニット101の加速度」に基づいて得られる「カメラユニット101の移動量」の情報に対応する。例えば、破線301内のバー302の長さは、点4から点5の間のカメラユニット101の移動量を示す。
また、図4は、連続撮影が行われているときのカメラユニット101の位置と時間との関係の一例を、カメラユニット101の撮影間隔の一例と共に示す図である。図4の破線401内に示される情報が、撮影間隔検出部107により検出される「カメラユニット101の撮影間隔」の情報に対応する。例えば、破線401内のバー402の長さは、点4における撮影と点5における撮影の間隔を示す。
【0021】
位置情報算出部108は、加速度センサ106で検知された加速度と、撮影間隔検出部107で検出された撮影間隔と、に基づいて、各撮影間隔におけるカメラユニット101の移動量を算出する。このカメラユニット101の移動量は、前記3次元直交座標のそれぞれの成分について得られる。そして、位置情報算出部108は、直前の撮影におけるカメラユニット101の位置情報(又は測位情報)を位置情報メモリ118から読み出す。カメラユニット101の位置情報も、前記3次元直交座標のそれぞれの成分について得られている。
【0022】
そして、位置情報算出部108は、例えば、直前の撮影におけるカメラユニット101の位置と、当該撮影間隔におけるカメラユニット101の移動量とのベクトル和を計算して、当該撮影におけるカメラユニット101の位置を算出する。位置情報算出部108は、このようなカメラユニット101の位置の算出を繰り返し行う。このように、本実施形態では、位置情報算出部108は、移動量導出と位置導出の機能を有する。
【0023】
本実施形態では、連続撮影を開始するときのカメラユニット101の位置は、ステップS203で格納した「カメラユニット101の位置情報」で示される位置となる。また、連続撮影が終了したときのカメラユニット101の位置は、ステップS211で格納した「カメラユニット101の位置情報」で示される位置となる。よって、本実施形態では、連続撮影における最初から2番目の撮影から、最後から2番目(連続撮影が終了する1つ前)の撮影までの間において、各撮影画像が得られたときのカメラユニット101の位置をステップS212の処理で算出する(後述する図5を参照)。
【0024】
以上のように本実施形態では、ステップS212の処理で、連続撮影により各撮影画像が得られたときのカメラユニット101の位置を、連続撮影を開始するときのカメラユニット101の位置と、カメラユニット101の移動量及び撮影間隔とに基づき算出する。
最後に、ステップS213において、CPU102は、各撮影画像が得られたときのカメラユニット101の位置の情報を、各撮影画像に付与することをメモリ制御部115に指示する。この指示に基づいてメモリ制御部115は、画像メモリ117に記録したどの撮影画像に対応する情報であるかを識別することができるように、各撮影画像が得られたときのカメラユニット101の位置の情報を、位置情報メモリ118に記憶する。これにより、画像メモリ117内の撮影画像と、位置情報メモリ118内のカメラユニット101の位置の情報とが相互に関連付けられる。
【0025】
図5は、連続撮影が行われているときのカメラユニット101の位置(実際の撮影位置と算出された位置)と時間との関係の一例を示す図である。図6は、連続撮影が行われているときのカメラユニット101の位置(実際の撮影位置と算出された位置)と時間との関係の比較例を示す図である。図6では、連続撮影を開始するときのカメラユニット101の位置と連続撮影が終了したときのカメラユニット101の位置との間をカメラユニット101が等速直線運動するものとして、連続撮影が行われているときのカメラユニット101の位置を算出している。
【0026】
図5及び図6に示す曲線501、601は、連続撮影時に、カメラユニット101が等速直線運動以外の運動を行っており、且つ、撮影間隔が一定でないことを示している。図5に示すように、本実施形態では、連続撮影時に、カメラユニット101が等速直線運動以外の運動を行ったり、撮影間隔が一定でなかったりする場合でも、それらを加味して連続撮影時のカメラユニット101の位置を高精度に算出できることが分かる。更に、連続撮影前と、連続撮影後に、カメラユニット101の測位を行うことで、撮影動作と測位動作とがタイミングとして重複することがなく、連続撮影時のカメラユニット101の処理の負荷が軽減される。
【0027】
前記において、連続撮影とは、静止画像の連続撮影はもとより、動画像の撮影も含む概念である。動画像の撮影を行う場合の撮影間隔は、動画像におけるフレームレート等となる。
本実施形態では、カメラユニット101の位置を検知するGPSユニット103をカメラユニット101が内蔵する構成とした。しかしながら、GPSユニット103をカメラユニット101とは別体とし、GPSユニット103とカメラユニット101とが通信を行うことにより、カメラユニット101が、カメラユニット101の位置を取得してもよい。このとき、GPSユニット103とカメラユニット101とは、有線で通信を行っても、無線で通信を行ってもよい。
【0028】
また、本実施形態のように、連続撮影が終了したときのカメラユニット101の位置をGPSユニット103で測定すれば、当該位置としてより高精度の位置を得ることができる。しかしながら、連続撮影が終了したときのカメラユニット101の位置も、ステップS212で算出してもよい。
また、カメラユニット101の加速度の代わりに速度を測定してもよい。
なお、連続撮影モードであっても、連続撮影中にさほど移動していないと判断した場合は、上述の位置の算出を行わないようにしてもよい。例えば、図2のステップS202で取得した測位情報とステップS210で取得した測位情報の差が閾値よりも小さいと判断した場合は、上述の位置の算出を行わない。この場合は、連続撮影開始時、つまりステップS202で取得した測位情報、または連続撮影終了時、つまりステップS210で取得した測位情報を、連続撮影された画像に付加する。もしくは、等速直線運動しているものと仮定して位置を算出してもよい。
【0029】
尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【0030】
(その他の実施例)
本発明は、以下の処理を実行することによっても実現される。即ち、まず、以上の実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)が当該コンピュータプログラムを読み出して実行する。

【特許請求の範囲】
【請求項1】
連続撮影が開始される前の撮影装置の測位情報を取得する取得手段と、
前記連続撮影における撮影間隔と、前記連続撮影が行われているときの前記撮影装置の加速度または速度とに基づいて、前記連続撮影において各撮影画像が得られたときの各撮影間隔における前記撮影装置の移動量を導出する移動量導出手段と、
前記連続撮影が開始される前の撮影装置の測位情報と、前記各撮影間隔における前記撮影装置の移動量とに基づいて、前記連続撮影において各撮影画像が得られたときの前記撮影装置の位置を導出する位置導出手段と、
前記撮影画像と、当該撮影画像が得られたときの撮影装置の位置とを相互に関連付けて記憶する記憶手段と、を有することを特徴とする撮影装置。
【請求項2】
前記取得手段は、前記連続撮影が終了した後の撮影装置の測位情報を更に取得し、
前記位置導出手段は、前記連続撮影が開始される前の撮影装置の測位情報と、前記各撮影間隔における前記撮影装置の移動量とに基づいて、前記連続撮影における最初から2番目の撮影から、前記連続撮影における最後から2番目の撮影までの間において、各撮影画像が得られたときの前記撮影装置の位置を導出することを特徴とする請求項1に記載の撮影装置。
【請求項3】
前記取得手段は、前記撮影装置の位置を測定する手段を有することを特徴とする請求項1又は2に記載の撮影装置。
【請求項4】
連続撮影が開始される前の撮影装置の測位情報を取得する取得工程と、
前記連続撮影における撮影間隔と、前記連続撮影が行われているときの前記撮影装置の加速度または速度とに基づいて、前記連続撮影において各撮影画像が得られたときの各撮影間隔における前記撮影装置の移動量を導出する移動量導出工程と、
前記連続撮影が開始される前の撮影装置の測位情報と、前記各撮影間隔における前記撮影装置の移動量とに基づいて、前記連続撮影において各撮影画像が得られたときの前記撮影装置の位置を導出する位置導出工程と、
前記撮影画像と、当該撮影画像が得られたときの撮影装置の位置とを相互に関連付けて記憶媒体に記憶する記憶工程と、を有することを特徴とする撮影装置の制御方法。
【請求項5】
前記取得工程は、前記連続撮影が終了した後の撮影装置の測位情報を更に取得し、
前記位置導出工程は、前記連続撮影が開始される前の撮影装置の測位情報と、前記各撮影間隔における前記撮影装置の移動量とに基づいて、前記連続撮影における最初から2番目の撮影から、前記連続撮影における最後から2番目の撮影までの間において、各撮影画像が得られたときの前記撮影装置の位置を導出することを特徴とする請求項4に記載の撮影装置の制御方法。
【請求項6】
前記取得工程は、前記撮影装置の位置を測定することを特徴とする請求項4又は5に記載の撮影装置の制御方法。
【請求項7】
連続撮影における撮影間隔と、前記連続撮影が行われているときの撮影装置の加速度または速度とに基づいて、前記連続撮影において各撮影画像が得られたときの各撮影間隔における前記撮影装置の移動量を導出する移動量導出工程と、
前記連続撮影が開始される前の撮影装置の測位情報と、前記各撮影間隔における前記撮影装置の移動量とに基づいて、前記連続撮影において各撮影画像が得られたときの前記撮影装置の位置を導出する位置導出工程と、
前記撮影画像と、当該撮影画像が得られたときの撮影装置の位置とを相互に関連付けて記憶媒体に記憶する記憶工程と、をコンピュータに実行させることを特徴とするコンピュータプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−26711(P2013−26711A)
【公開日】平成25年2月4日(2013.2.4)
【国際特許分類】
【出願番号】特願2011−157835(P2011−157835)
【出願日】平成23年7月19日(2011.7.19)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】