(57)【要約】【課題】レンズが装着される度に電子コンパスのキャリブレーションを行う必要がなく、レンズ装着後におけるキャリブレーション動作回数を低減できる技術を実現する。【解決手段】交換式のレンズユニットが着脱可能な撮像装置であって、撮像装置の向いている方位を示す方位情報を算出する電子コンパスと、前記電子コンパスのキャリブレーションを制御する制御手段と、を有し、前記制御手段は、前記キャリブレーションを実行する際に、前記レンズユニットの光学要素を駆動させることで前記電子コンパスにより算出される方位情報を補正するための補正値を決定する。【選択図】図９
2015121498.tif 000002
【特許請求の範囲】
【請求項１】
交換式のレンズユニットが着脱可能な撮像装置であって、
撮像装置の向いている方位を示す方位情報を算出する電子コンパスと、
前記電子コンパスのキャリブレーションを制御する制御手段と、を有し、
前記制御手段は、前記キャリブレーションを実行する際に、前記レンズユニットの光学要素を駆動させることで前記電子コンパスにより算出される方位情報を補正するための補正値を決定することを特徴とする撮像装置。
【請求項２】
前記制御手段は、前記キャリブレーションを実行する際に、前記レンズユニットの光学要素を駆動させることで、前記電子コンパスにより算出される方位情報を補正するための複数の補正値を決定することを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記レンズユニットの光学要素を駆動させずに前記電子コンパスによって地磁気を検出することで、前記電子コンパスにより算出される方位情報を補正するための１つの補正値を決定した後、前記レンズユニットの光学要素を駆動させながら前記電子コンパスによって地磁気を検出することで、前記電子コンパスにより算出される方位情報を補正するための他の補正値を決定することを特徴とする請求項１または２に記載の撮像装置。
【請求項４】
前記レンズユニットから識別情報を取得する取得手段を更に有し、
前記制御手段は、前記取得手段により取得された前記レンズユニットの識別情報を、前記レンズユニットのキャリブレーションを実行する際に決定された補正値と共に記録媒体に記録することを特徴とする請求項１に記載の撮像装置。
【請求項５】
前記レンズユニットが装着されたことを検出する検出手段を更に有し、
前記制御手段は、前記レンズユニットが装着されたことが検出されたことに応じて、前記キャリブレーションの実行をユーザに促すことを特徴とする請求項１乃至４のいずれか１項に記載の撮像装置。
【請求項６】
前記電子コンパスは、地磁気の向きを検出する地磁気センサと、前記撮像装置の重力加速度の向きを検出する加速度センサとを含み、
前記レンズユニットは、前記光学要素としてフォーカスレンズ、ズームレンズ、および絞りの少なくともいずれかを含み、
前記制御手段は、前記撮像装置が３次元の方向に振られた状態で前記地磁気センサから取得した複数のセンサ出力値と、前記レンズユニットから取得した前記フォーカスレンズを駆動させたときのレンズ位置、前記ズームレンズを駆動させたときのレンズ位置および前記絞りを駆動させたときの絞り値の少なくともいずれかの情報とに基づいて前記補正値を決定することを特徴とする請求項１乃至５のいずれか１項に記載の撮像装置。
【請求項７】
前記制御手段は、前記フォーカスレンズ、前記ズームレンズ、および前記絞りを所定の範囲でステップ駆動させたときの各レンズ位置および各絞り値の少なくともいずれかの情報に基づいて前記補正値を決定することを特徴とする請求項６に記載の撮像装置。
【請求項８】
前記制御手段は、前記レンズユニットごとに前記補正値を決定し、前記レンズユニットの識別情報と関連付けて記録することを特徴とすることを特徴とする請求項１乃至７のいずれか１項に記載の撮像装置。
【請求項９】
前記制御手段は、前記レンズユニットのレンズまたは絞りを所定の位置に固定した状態で前記撮像装置が３次元の方向に振られたときの前記地磁気センサから取得した複数のセンサ出力値から前記電子コンパスの基本オフセット値を求める第１の工程と、
前記撮像装置を静止させた状態で前記地磁気センサから取得した複数のセンサ出力値と、前記レンズユニットから取得した前記フォーカスレンズを駆動させたときのレンズ位置、前記ズームレンズを駆動させたときのレンズ位置および前記絞りを駆動させたときの絞り値の少なくともいずれかの情報から決定した前記補正値と前記基本オフセット値との差分値を求める第２の工程と、を実行することを特徴とする請求項６または７に記載の撮像装置。
【請求項１０】
前記制御手段は、前記レンズユニットから取得した識別情報と、前記第１の工程で得られる前記基本オフセット値と、前記第２の工程で得られるレンズおよび絞りの少なくともいずれかに関するオフセット差分値とを記録することを特徴とする請求項９に記載の撮像装置。
【請求項１１】
前記電子コンパスは、前記基本オフセット値と前記オフセット差分値とを加算した磁気オフセット成分を、前記地磁気センサの出力値から減算することで、前記撮像装置の撮影方位を検出することを特徴とする請求項１０に記載の撮像装置。
【請求項１２】
前記制御手段は、前記撮像装置に装着されたレンズユニットの磁気オフセット値を記録している場合には、それを前記電子コンパスのキャリブレーションに使用し、記録されていない場合にはキャリブレーションを行うか否かを通知することを特徴とする請求項１１に記載の撮像装置。
【請求項１３】
前記制御手段は更に、前記地磁気センサの環境磁場の変化に応じて自動的にキャリブレーションを実行し、
前記制御手段は、前記環境磁場の変化が検出された場合は、前記基本オフセット値のみを前記環境磁場の変化に応じて変化させるように制御し、
既に記録されている基本オフセット値を、新たな基本オフセット値に更新することを特徴とする請求項９乃至１２のいずれか１項に記載の撮像装置。
【請求項１４】
前記制御手段は、前記レンズユニットからレンズ位置または絞り値の情報が取得できない場合に、電子コンパスが使えないことを通知することを特徴とする請求項６乃至１３のいずれか１項に記載の撮像装置。
【請求項１５】
前記制御手段は、前記レンズユニットからレンズ位置または絞り値の情報が取得できない場合に、予め設定された磁気オフセット値を用いてキャリブレーションを行うことを特徴とする請求項６乃至１３のいずれか１項に記載の撮像装置。
【請求項１６】
前記制御手段は、前記レンズユニットからレンズ位置または絞り値の情報が取得できない場合に、電子コンパス機能をオフとするか、前記キャリブレーションを実行しないことを特徴とする請求項６乃至１３のいずれか１項に記載の撮像装置。
【請求項１７】
電子コンパス機能を備え、交換式のレンズユニットが着脱可能な撮像装置の制御方法であって、
前記撮像装置の向いている方位を示す方位情報を算出する算出工程と、
前記電子コンパスのキャリブレーションを制御する制御工程と、を有し、
前記制御工程では、前記キャリブレーションを実行する際に、前記レンズユニットの光学要素を駆動させることで前記電子コンパスにより算出される方位情報を補正するための補正値を決定することを特徴とする撮像装置の制御方法。
【請求項１８】
コンピュータを、請求項１乃至１６のいずれか１項に記載された撮像装置の各手段として機能させるための、コンピュータが読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置に内蔵された電子コンパスのキャリブレーション技術に関する。
【背景技術】
【０００２】
近年、電子（デジタル）コンパスを内蔵したデジタルカメラが知られている。例えば、特許文献１では、電子コンパスを用いて、撮影した画像に撮影方向を付加することができるカメラが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−０８８６０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記電子コンパスは、地磁気の向きを検出することで撮影方位を算出するため、デジタルカメラのレンズの装着や駆動による磁場の変化の影響を受ける。このような磁場変化に対しては、キャリブレーションにより電子コンパスのオフセットを補正することが一般的に行われている。ここで注意すべきなのは、デジタルカメラで方位情報を利用する場合、撮影時点での方位情報が重要となる点である。デジタルカメラで撮影を行う際にはレンズを駆動させる必要があり、撮影の度にレンズを駆動することによる磁界の変化の影響を受けるため、電子コンパスを補正するためのオフセット値が変化してしまう。これを撮影の度にキャリブレーションを行うことで解決するのは現実的ではない。
【０００５】
本願発明は、上記課題に鑑みてなされ、その目的は、レンズが装着される度に電子コンパスのキャリブレーションを行う必要がなく、レンズ装着後におけるキャリブレーション動作回数を低減できる技術を実現することである。
【課題を解決するための手段】
【０００６】
上記課題を解決し、目的を達成するために、本発明の撮像装置は、交換式のレンズユニットが着脱可能な撮像装置であって、撮像装置の向いている方位を示す方位情報を算出する電子コンパスと、前記電子コンパスのキャリブレーションを制御する制御手段と、を有し、前記制御手段は、前記キャリブレーションを実行する際に、前記レンズユニットの光学要素を駆動させることで前記電子コンパスにより算出される方位情報を補正するための補正値を決定する。
【発明の効果】
【０００７】
本発明によれば、レンズが装着される度に電子コンパスのキャリブレーションを行う必要がなく、レンズ装着後におけるキャリブレーション動作回数を低減することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明に係る実施形態のレンズユニットおよび撮像装置の各構成を示すブロック図。
【図２】地磁気と重力加速度の向きから撮影方位を算出する方法の説明図。
【図３】レンズユニットが装着されるまでの磁気オフセット値の変化の様子を示す図。
【図４】本実施形態の電子コンパスのキャリブレーション実行画面を例示する図。
【図５】従来のキャリブレーションを行った電子コンパスを用いて算出される撮影方位の変化の様子を示す図
【図６】レンズユニットの動作状態によって磁気オフセットベクトルが変化する様子を示す図。
【図７】本発明に係る電子コンパスのキャリブレーション方法の説明図。
【図８】本実施形態のキャリブレーションを行った電子コンパスを用いて算出される撮影方位の変化の様子を示す図。
【図９】実施形態１のキャリブレーション実行時のカメラ側の動作を示すフローチャート。
【図１０】実施形態１のキャリブレーション実行時のレンズユニット側の動作を示すフローチャート。
【図１１】実施形態２のキャリブレーション方法の説明図。
【図１２】実施形態２の電子コンパスのキャリブレーション実行画面（ａ）、（ｂ）およびキャリブレーション工程（ｃ）を示す図。
【図１３】実施形態２のキャリブレーション実行時のカメラ側の動作を示すフローチャート。
【図１４】磁気オフセット値を記録するときの記録フォーマットを例示する図。
【図１５】自動キャリブレーションによる磁気オフセット値の変化の様子を示す図。
【図１６】電子コンパス機能が使えないことを通知する画面を例示する図。
【発明を実施するための形態】
【０００９】
以下に、本発明を実施するための形態について詳細に説明する。尚、以下に説明する実施の形態は、本発明を実現するための一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。また、後述する各実施形態の一部を適宜組み合わせて構成しても良い。
【００１０】
以下、本発明の撮像装置を、例えば、一眼レフデジタルカメラに適用した実施形態について説明する。
【００１１】
＜装置構成＞図１を参照して、本発明に係る実施形態の撮像装置の構成及び機能の概略について説明する。
【００１２】
図１において、レンズユニット１００は、撮像装置（以下、カメラ）２００に対して着脱可能な交換式のレンズユニットであり、レンズマイコン１０１、フォーカスレンズ１０２、ズームレンズ１０３、絞り１０４を備える。
【００１３】
レンズユニット１００は、カメラ２００から駆動指示を受信したり、カメラ２００へレンズユニット１００の固有情報や制御情報を送信する。
【００１４】
レンズマイコン１０１は、ＣＰＵ、メモリ（ＲＡＭやＲＯＭ）、入出力回路、タイマー回路等を有し、ＣＰＵがＲＯＭに格納されたプログラムをＲＡＭの作業エリアに展開し、実行することにより、レンズユニット全体の動作を制御する。また、レンズユニット１００は、カメラマイコン２０１からのＡＦ（オートフォーカス）駆動指示に応じてフォーカスレンズ１０２を合焦位置に駆動する。また、レンズユニット１００は、カメラマイコン２０１からのズーム駆動指示に応じてズームレンズ１０３を指定されたズーム倍率に駆動する。さらに、レンズユニット１００は、カメラマイコン２０１からのＡＥ（自動露出）駆動指示に応じて絞り１０３の開度を設定する。
【００１５】
カメラ２００は、レンズユニット１００が装着されると、レンズユニット１００と電気的に接続されて通信可能となる。
【００１６】
カメラマイコン２０１は、ＣＰＵ、メモリ（ＲＡＭやＲＯＭ）、入出力回路、タイマー回路等を有し、ＣＰＵがＲＯＭに格納されたプログラムをＲＡＭの作業エリアに展開し、実行することにより、装置全体の動作を制御する。また、カメラマイコン２０１は、シャッタースイッチ２０８やタッチパネル等の操作部からの操作入力、通信部２１１により受信した各種情報に応じた処理を行う。
【００１７】
撮像部２０５は、レンズユニット１００により結像された被写体像をＣＭＯＳ等の光電変換素子により電気信号に変換し、生成されたアナログ画像信号をデジタル信号に変換してデジタル画像データを生成する。
【００１８】
シャッター２０６は、カメラマイコン２０１の指示に応じて撮像部２０５の露光時間を制御する。撮像部２０５は被写体の光学像を電気信号に変換するＣＣＤやＣＭＯＳ等の撮像素子で構成されたイメージセンサである。
【００１９】
ミラー２０７は、カメラマイコン２０１の指示に応じて、不図示のアクチュエータによってアップ位置（露光位置）またはダウン位置（ライブビュー位置）に駆動される。
【００２０】
シャッタースイッチ２０８は、撮影指示を行うための操作部であり、半押し（撮影準備指示）でオンとなり信号ＳＷ１を発生する。カメラマイコン２０１は、信号ＳＷ１により、ＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＡＷＢ（オートホワイトバランス）処理等の動作を開始する。また、シャッタースイッチ２０８は、全押し（撮影指示）でオンとなり、信号ＳＷ２を発生する。カメラマイコン２０１は、信号ＳＷ２により、撮像部２０５からの信号読み出しからメモリ２１３に画像データを書き込むまでの一連の撮影処理の動作を開始する。
【００２１】
電源制御部２０９は、電池検出回路、ＤＣ−ＤＣコンバータ、通電するブロックを切り替えるスイッチ回路等により構成され、電池の装着の有無、電池の種類、電池残量の検出を行う。また、電源制御部２０９は、その検出結果及びカメラマイコン２０１の指示に基づいてＤＣ−ＤＣコンバータを制御し、必要な電圧を必要な期間、記録部２１２を含む各部へ供給する。
【００２２】
電源部２１０は、アルカリ電池やリチウム電池等の一次電池やＮｉＣｄ電池やＮｉＭＨ電池、リチウムイオン電池等の二次電池、ＡＣアダプタ等からなる。
【００２３】
通信部２１１は、ＰＣ等の外部機器と有線通信または無線通信を行い、各種情報を受信する。通信部２１１は、例えばＴＣＰ／ＩＰなどの通信プロトコルを用いて、外部機器と情報の授受を行うことができればよく、インターネット、ＬＡＮ、ＷＡＮその他のネットワークを適用できる。
【００２４】
記録部２１２は、カメラ２００のスロットに対して着脱可能なフラッシュメモリやＵＳＢメモリ等のメモリカードであり、画像データの書き込みや読み出しに用いられる。
【００２５】
メモリ２１３は、撮像部２０５によって得られた画像データや、表示部２１４に表示するための画像データを格納する。また、メモリ２１３は画像表示用のメモリ（ビデオメモリ）を兼ねている。
【００２６】
表示部２１４は、装置の設定に関するメニューの表示や、撮像された画像の表示（ライブビュー）、装置が向いている方向や姿勢等の撮影補助情報の表示を行う。
【００２７】
加速度センサ２１５は、３軸（Ｘ軸、Ｙ軸、Ｚ軸）方向の加速度を検出し、装置に加わる重力加速度の向きを検出する。
【００２８】
地磁気センサ２１６は、３軸（Ｘ軸、Ｙ軸、Ｚ軸）方向の地磁気の向きと大きさ（地磁気ベクトル）を検出する電子（デジタル）コンパスであり、センサ出力値は撮影時に装置が向いている方位情報として撮影方位角を算出するために用いられる。
【００２９】
ストロボ２１７は、被写体を照明するために閃光する格納式のフラッシュ装置を備え、ユーザ操作に応じて或いは自動で格納状態から露出状態へ変位する。
【００３０】
カメラマイコン２０１は、画像処理機能を備えており、撮像部２０５からのデータ、または、メモリ２１３からのデータに対して所定の画素補間、縮小といったリサイズ処理や色変換処理を行う。また、カメラマイコン２０１は、撮像した画像データを用いて所定の演算処理を行い、演算結果に基づいてＡＦ処理、ＡＥ処理、ＡＷＢ処理等を行う。
【００３１】
上記構成において、シャッタースイッチ２０８が半押しされると、カメラマイコン２０１は、ＡＦ処理やＡＥ処理、ＡＷＢ処理等の撮影準備動作を行うようにレンズユニット１００に駆動指示を送出する。さらに、シャッタースイッチ２０８が全押しされると、カメラマイコン２０１は、ミラー２０７をアップ位置に駆動し、撮像部２０５の光電変換素子を蓄積状態にし、シャッター２０６を開閉駆動することで被写体像を露光する。シャッター２０６が閉状態に戻り、撮像部２０５の光電変換素子の電荷蓄積が終了した後、カメラマイコン２０１は、蓄積された電荷を信号として読み出す。
【００３２】
なお、上記構成以外に、ＧＰＳアンテナにより複数のＧＰＳ衛星からの電波を受信して測位することにより現在位置の緯度、経度、高度などのＧＰＳ情報を取得するＧＰＳ受信装置を設けても良い。
【００３３】
＜撮影方位の算出方法＞図２を参照して、加速度センサ２１５および地磁気センサ２１６の出力値を用いた撮影方位の算出方法について説明する。
【００３４】
本実施形態において、地磁気センサ２１６は、地球の磁場を検出するための装置として用いられる。しかしながら、カメラ２００が使用される環境によっては、カメラ２００の周囲の物体が持つ磁性体による磁場や、カメラ２００の周囲の物体が持つ電気回路による磁場などの、環境磁場の影響を受ける。その結果、地磁気センサ２１６の出力値は、これらの環境磁場成分を含んだ値となる。
【００３５】
そこで、カメラマイコン２０１は、地磁気センサ２１６の出力値から、環境磁場成分を磁気オフセット値を減算することで真の地磁気ベクトルを算出する。なお、この環境磁場成分は、カメラ２００の姿勢が異なる、地磁気センサ２１６の３つの出力値から算出することができる。
【００３６】
なお、地磁気センサ２１６の出力値には、環境磁場成分のほかに、地磁気センサ自体が持つゲインばらつきや、カメラ内部の地磁気センサ周辺の磁性部材の軟鉄効果（ソフト・アイロン・エフェクト）によるゲインばらつきも含まれることがある。そのため、必要に応じてこれらを補正する。これらの影響は、カメラに固有、および地磁気センサに固有の影響が現れるため、補正方法としては、地磁気センサの出力値に対して地磁気センサやカメラ固有の補正ゲインを乗算することで、簡単に補正することができる。
【００３７】
また、カメラマイコン２０１は、加速度センサ２１５の出力値から重力加速度の向きを算出することで、カメラのレンズ光軸の向き（ベクトル）を求める。
【００３８】
そして、これら地磁気ベクトルとレンズ光軸の向きを地面と水平な面上に投影することで磁北と撮影方位の各ベクトルが得られるので、これら２つのベクトルのなす角θを求めることで撮影方位角が算出できる。なお、ＧＰＳ情報等から撮影位置が得られる場合には、この撮影位置情報を用いて磁北と真北を変換することにより撮影方位角を求めても良い。
【００３９】
本実施形態では撮影方位角を求めたが、カメラのレンズ光軸が極端に上向きや下向きとなっている場合等は、レンズ光軸の向きを求めるのではなく、撮影画面中央から上へ向かう方向等、他の注目方向に関して方位を求めても構わない。
【００４０】
上述したように、地磁気センサを用いた電子コンパスを用いて正しく方位を検出するためには、センサ出力値から、センサ自体や周辺環境に起因する磁気オフセット値を減算して、地磁気成分のみを割り出す必要がある。センサ自体の影響は固定的なものであるため、簡単に補正可能であると述べた。一方、周辺環境に起因する環境磁場成分は、カメラを使用する場所によって変化する。そのため、一般的にはこの磁気オフセット値を求めるために、いわゆるキャリブレーション操作を行う必要がある。ただし、この操作によって求められた磁気オフセット値は、周辺環境が変わらなければ、一度算出すればしばらくの間利用できる半固定的なものである。
【００４１】
しかしながら、カメラに地磁気センサを内蔵する場合、上記の影響に加えて、カメラの使用に応じて変化する影響が生じる。具体的には、図３のように、カメラボディにレンズユニット１００を装着するときに、レンズ内部の金属や磁石等の影響を受ける。すなわち、図３（ａ）のレンズユニットの装着前と図３（ｂ）の装着後とでは、地磁気センサに対するレンズユニットの位置関係が変化するため、地磁気センサに対する影響の度合いが変化する。これによって、レンズユニットの装着前後で地磁気の向きを正確に補正できていても、レンズユニット装着後で正しく補正できないことが起こりうる。なお、レンズユニットを取り付けることによる、地磁気センサの影響としては、主に磁気オフセット成分として現れる。このほか、レンズユニット内部の磁性部材の軟鉄効果（ソフト・アイロン・エフェクト）による、ゲイン成分の変化も考えられるが、通常はオフセット成分に比べて軽微な影響である。
【００４２】
図３（ｃ）は、レンズユニット装着前、装着中、装着後における磁気オフセット値の変化の様子を示している。レンズユニット装着後は、レンズを動作させなければ、影響は一定の磁気オフセット値として現れる。図３（ｄ）は図３（ｃ）の変化を３次元のベクトルで模式的に示している。レンズユニット装着前は、磁気オフセットが無い状態であり、地磁気センサ出力が、そのまま地磁気のベクトルを表している。これに対し、レンズユニットを取り付けることによって磁気オフセットベクトルが加算される。このため、レンズユニット装着後の地磁気センサ出力としては、地磁気のベクトルと磁気オフセットベクトルの和となる。したがって、地磁気センサ出力から、磁気オフセットベクトルを減算することができれば、地磁気のベクトルだけを抽出することができ、正確な地磁気の向きを求めることが可能となる。
【００４３】
カメラマイコン２０１は、レンズユニット１００がカメラボディに取り付けられたことを検出すると、電子コンパスのキャリブレーションを行い、レンズユニット装着後に変化した磁気オフセット値を新たに算出する。図４は、レンズユニット装着時に表示される電子コンパスのキャリブレーション実行画面を例示している。
【００４４】
カメラマイコン２０１は、レンズユニット１００が取り付けられたことを検出すると、表示部２１４に図４（ａ）のような画面を表示し、ユーザに電子コンパスのキャリブレーションを行うように促す。ユーザが「実行」ボタンを押すと、地磁気センサの出力を定期的にサンプリングする動作を開始すると共に、図４（ｂ）の画面に切り替わる。図４（ｂ）の画面表示のように、ユーザがカメラを３次元的にすべての方向にまんべんなく向くように振ると、カメラ内部の地磁気センサからの複数の出力値から、磁気オフセット値のみを推定する。そして、推定精度が所定以上得られたと判定されると、電子コンパスのキャリブレーションが完了する。なお、このときにユーザがキャンセルボタンを押すか、撮影動作に移行した場合はキャリブレーションは中止され、この場合は、磁気オフセット値が得られないため、正しい撮影方位が求められない可能性がある。
【００４５】
しかしながら、レンズユニット１００は、フォーカスレンズ１０２、ズームレンズ１０３、絞り１０４等の光学要素を内蔵しており、これらを固定したままキャリブレーションを行っただけでは不十分である。その理由を以下に説明する。
【００４６】
ここで、図５を参照して、従来のキャリブレーションを行った電子コンパスを用いて算出される撮影方位の変化の様子について説明する。
【００４７】
図５において、まず、レンズを駆動する前は、ユーザがカメラを被写体に向けて構えることによって、地磁気センサ２１６の出力値を用いて正しい撮影方位を算出することが可能である。以後、ユーザがカメラを構える向きを固定している場合、当然ながら、電子コンパスが算出する方位は変化しないことが期待される。ところが、被写体にピントを合わせるためにＡＦ動作を行うと、レンズユニット１００のレンズを電気的に駆動することで磁気ノイズが発生し、レンズユニット内部の金属／磁石等の磁性部材が物理的に動くことで地磁気センサの出力値にオフセットが発生する。この地磁気センサの磁気オフセットの影響によって、算出される撮影方位に大きなずれが発生してしまう。
さらに、被写体にピントが合って（合焦状態）、フォーカス駆動が停止されたとしても、レンズユニット内部の金属／磁石等の磁性部材が物理的に動いたことによる影響が地磁気センサに残留しているため、フォーカス駆動後もずれた撮影方位が算出されてしまう。
【００４８】
上述した現象について、図６を用いてさらに詳細に説明する。
【００４９】
図６（ａ）において、レンズユニットを取り付けたときに、フォーカス位置が至近にあるとする。この状態でキャリブレーションを行うことで、フォーカス位置が至近のときの、磁気オフセットベクトルは正確に算出できている状態となる。しかしながら、フォーカス駆動を行うことによって、合焦後はフォーカス位置が至近から無限遠までのどこかで固定される。これによって、正しい方位を算出するために必要な磁気オフセットベクトルも、最初に算出した至近での磁気オフセットベクトルではなくなってしまう。
【００５０】
レンズユニット内部では、フォーカスレンズ位置以外にも、ズームレンズ位置や絞り値も変化する。このことも、フォーカスレンズ位置の変化と同様、地磁気センサに影響を及ぼす。図６（ｂ）は、ズーム位置がワイド端からテレ端まで変化した場合、図６（ｃ）は絞り値が開放から最小まで変化した場合の磁気オフセットベクトルの変化の様子を示している。図示のように、レンズユニット１００の内部のフォーカスレンズ位置、ズームレンズ位置、絞り値が変化することによって、磁気オフセットベクトルが変化し、正しい撮影方位が算出できなくなる可能性がある。
【００５１】
そこで、本実施形態では、電子コンパスのキャリブレーションを行う際に、レンズユニット内部の光学要素の動作の影響を考慮する。以下、本実施形態のキャリブレーションについて説明する。
【００５２】
図７は、本実施形態に係る電子コンパスのキャリブレーション方法を説明するための概念的な図であり、フォーカス駆動時のレンズ位置に対する磁気オフセットベクトルの変化を示している。キャリブレーション開始時は、フォーカスレンズを至近端まで駆動した状態で、カメラを３次元的に振ることで、至近端での磁気オフセットベクトルを求める。その後、フォーカスレンズを至近端から無限遠に向けて所定のステップで駆動し、各レンズ位置での磁気オフセットベクトルを求める。すなわち、フォーカス位置が至近端から１ｍの地点まで駆動させた後に、その状態でキャリブレーションを行い、そのレンズ位置に対応する磁気オフセットベクトルを求める。次に、２ｍの地点まで駆動させ、その状態でキャリブレーションを行い、そのレンズ位置に対応する磁気オフセットベクトルを求める。この動作を無限遠まで行い、各レンズ位置に対応する磁気オフセットベクトルを求める。なお、ユーザが実際に行う操作としては、図４で説明したように、カメラの姿勢を変化させる操作を行い続け、その間に、レンズを自動的に駆動させてキャリブレーションを行う。すなわち、ユーザ自身は従来のキャリブレーションと同じ操作感で、本実施形態のキャリブレーションを行うことができる。
【００５３】
このとき、カメラマイコン２０１は、レンズマイコン１０１と通信することにより、レンズユニットの識別情報と、各レンズ位置情報を得る。このようにして算出された複数の磁気オフセットベクトルをレンズユニットの識別情報と各レンズ位置とに関連付けて、磁気オフセット情報としてカメラ内部の記録媒体などに記録する。レンズユニットを交換した場合には、同様の動作を交換後のレンズユニットに対して行う。磁気オフセット情報はレンズユニットごとに記録される。
【００５４】
実際の撮影時においては、上述したように算出し記憶した電子コンパスの磁気オフセット情報をレンズユニットの種類や動作状態に合わせて使用する。
【００５５】
図８は、本実施形態のキャリブレーションを行った電子コンパスを用いて算出される撮影方位の変化の様子を示している。図５と同様に、ユーザがカメラを構え、被写体のある方角にカメラを向ける。撮影に先立って、カメラマイコン２０１は、レンズマイコン１０１と通信し、現在のレンズの識別情報およびレンズ位置を取得し、現在のレンズに対応する磁気オフセット情報を読み出す。ここで、対応する磁気オフセット情報が記録されていない場合は、図４（ａ）に示すキャリブレーションを促す画面を表示し、対応する磁気オフセット情報を算出する。図示のように、フォーカス駆動前では、正しい撮影方位が算出される。
【００５６】
次に、シャッタースイッチ２０８が半押しされてＡＦ動作を行うと、レンズマイコン１０１はフォーカスレンズ位置をリアルタイムに検出し、カメラマイコン２０１にレンズ位置の情報をリアルタイムに送信する。カメラマイコン２０１は、現在のフォーカスレンズ位置に対応した磁気オフセットベクトルを常に参照し、地磁気センサ出力から、現在の磁気オフセットベクトルを減算することによってオフセットがキャンセルされた正しい地磁気センサ出力を得る。これによって、フォーカス駆動中およびフォーカス駆動停止状態（合焦状態）において、真の撮影方位を算出することができる。
【００５７】
なお、電子コンパスのキャリブレーションにおいて、フォーカスレンズを所定の範囲でステップ駆動するため、実際の撮影ではステップの間の位置で停止することがある。この場合は、前後のフォーカスレンズ位置の磁気オフセットベクトルから補間して算出する。最終的に、シャッタースイッチ２０８が全押し（レリーズ）されたときには、正しい撮影方位が算出できているので、撮影画像に撮影方位を関連付けて記録される。
【００５８】
以上、フォーカスレンズを動作させたときの電子コンパスのキャリブレーション方法を説明したが、ズームレンズ１０３および絞り１０４を駆動したときも、フォーカスレンズ（位置）をズームレンズ（位置）または絞り（値）に読み替えれば同様の動きとなる。
【００５９】
次に、本実施形態の電子コンパスのキャリブレーション方法を実現するためのカメラおよびレンズユニットの各動作について説明する。
【００６０】
＜カメラの動作＞まず、図９を参照して、カメラ２００の動作について説明する。
【００６１】
なお、図９の動作は、カメラ２００にレンズユニット１００が装着されたことが検出されると開始され、カメラマイコン２０１がキャリブレーション用のプログラムを実行することにより実現される。
【００６２】
まず、ステップＳ９０１では、カメラマイコン２０１は、レンズユニット１００が装着されたことを検出する。
【００６３】
ステップＳ９０２では、カメラマイコン２０１は、図４（ａ）に示す電子コンパスのキャリブレーションを促す画面を表示する。
【００６４】
ステップＳ９０３において、ユーザが“実行”を選択した場合には、ステップＳ９０４に進み、“キャンセル”を選択した場合には、本処理を終了する。
【００６５】
ステップＳ９０４およびＳ９０５では、カメラマイコン２０１は、レンズユニット１００と通信を行い、レンズ識別情報を取得し記録する。
【００６６】
ステップＳ９０６およびＳ９０７では、カメラマイコン２０１は、レンズユニット１００に対して、フォーカスレンズ１０２を至近端に移動するように駆動指示を送信する。レンズの駆動が終了すると、レンズユニット１００からフォーカス位置情報を通信によって取得する。
【００６７】
ステップＳ９０８では、カメラマイコン２０１は、フォーカスレンズ位置を判定する。今回は、レンズ位置は至近端であるため、ステップＳ９０９に進む。
【００６８】
ステップＳ９０９では、カメラマイコン２０１は、図４（ｂ）に示すキャリブレーション方法を説明する画面を表示する。
【００６９】
ステップＳ９１０では、カメラマイコン２０１は、ユーザが図４（ｂ）に示す画面にしたがってカメラを振っているときに、地磁気センサ２１６を一定の間隔で駆動し、出力をサンプリングすることによって磁気オフセット値を求め、電子コンパスのキャリブレーションを実行する。
【００７０】
ステップＳ９１１では、カメラマイコン２０１は、ステップＳ９１０で得られた磁気オフセット値を、フォーカスレンズ位置情報と共に記録する。
【００７１】
ステップＳ９１２では、カメラマイコン２０１は、レンズユニット１００に対して、フォーカスレンズ１０２を１ステップ駆動するように駆動指示を送信する。ここでの１ステップの幅は、細かくても粗くても構わない。
【００７２】
その後、カメラマイコン２０１はフォーカスレンズ位置が無限大になるまでステップＳ９０７からＳ９１２までの処理を繰り返し実行することにより、すべてのステップ駆動に関して得られた磁気オフセット値をフォーカスレンズ位置と共に記録する。
【００７３】
ステップＳ９０８でフォーカスレンズ位置が無限大と判定されると、ステップＳ９１３に進み、カメラマイコン２０１は、すべてのキャリブレーションが完了したことをユーザに通知し、処理を終了する。
【００７４】
＜レンズユニットの動作＞次に、図１０を参照して、図９のカメラ２００の動作に対応する、レンズユニット１００の動作について説明する。
【００７５】
なお、図１０の動作は、レンズユニット１００がカメラ２００に装着され、カメラ２００との通信が可能となると開始され、レンズマイコン１０１がキャリブレーション用のプログラムを実行することにより実現される。
【００７６】
ステップＳ１００１およびＳ１００２では、レンズユニット１００がカメラ２００に電気的に接続され、カメラ２００から電源が供給されると、レンズマイコン１０１が起動する。
【００７７】
ステップＳ１００３では、レンズマイコン１０１は、カメラ２００からの駆動指示を待ち、カメラ２００からのフォーカスレンズ１０２の駆動指示を受信すると、ステップＳ１００４に進む。
【００７８】
ステップＳ１００４およびＳ１００５では、レンズマイコン１０１は、カメラ２００から受信したレンズ位置までフォーカスレンズ１０２を駆動し、駆動が終了すると、カメラ２００に対してレンズ位置情報を送信する。
【００７９】
その後、ステップＳ１００３に戻り、カメラ２００からのレンズの駆動指示に従って、繰り返しレンズの駆動を行う。
【００８０】
以上のように、本実施形態によれば、電子コンパスのキャリブレーションにおいて、フォーカスレンズ、ズームレンズおよび絞りの少なくともいずれかを駆動して磁気オフセット値を算出し、レンズユニットの種類と共に記録しておく。このようにすれば、撮影時には、電子コンパスのキャリブレーションを行わずに、予め記録しておいた磁気オフセット値の中からレンズユニットの種類に応じて決定された補正値を参照して、電子コンパスの磁気オフセットを修正できる。すなわち、レンズが装着される度に電子コンパスのキャリブレーションを行う必要がなく、レンズ装着後におけるキャリブレーション動作回数を低減することができる。
【００８１】
［実施形態２］次に、図１１から図１３を参照して、実施形態２の電子コンパスのキャリブレーション方法について説明する。
【００８２】
本実施形態では、任意のフォーカスレンズ位置、ズームレンズ位置、絞り値に対応した、磁気オフセット値を、基本オフセット値とオフセット差分値に分けて考える。
【００８３】
図１１は、本実施形態の基本オフセット値とオフセット差分値の考え方を模式的に示している。
【００８４】
フォーカス位置デフォルト（１ｍ）での磁気オフセットベクトルを基本オフセット値とし、フォーカス位置無限遠（∞）とフォーカス位置デフォルト（１ｍ）との差分ベクトルを、オフセット差分値とすると、フォーカス位置無限遠（∞）での磁気オフセットベクトルは、基本オフセット値とオフセット差分値との和となる。これは、フォーカスレンズ位置、ズームレンズ位置、絞り値が変化することによる磁場への影響は、ほぼ、ゲイン成分ではなく、オフセット成分として現れるからである。つまり、基本オフセット値と、任意のフォーカス位置におけるオフセット差分値を持っておけば、任意のフォーカス位置における、磁気オフセットベクトルが演算可能である。
【００８５】
ユーザがレンズユニット１００を装着し、カメラ２００がそのレンズユニットに対応する磁気オフセットデータを記録していない場合には、ユーザにキャリブレーションを促す画面を表示する。本実施形態における電子コンパスのキャリブレーションでは、工程を２段階に分けて行う。
【００８６】
図１２（ａ）は第１の工程におけるキャリブレーション方法を説明する画面を例示している。
【００８７】
カメラマイコン２０１は、レンズユニット１００が装着されると、図１２（ａ）の画面を表示すると共に、カメラ内部では地磁気センサの出力を定期的にサンプリングする動作を開始する。このとき、レンズユニット１００は、フォーカスレンズ１０２、ズームレンズ１０３、絞り１０４をいずれも、所定のデフォルト位置に固定し静止させた状態にする。図１２（ａ）の画面表示のように、ユーザがカメラを３次元的にすべての方向にまんべんなく向くように振ると、カメラ内部の地磁気センサからの複数の出力値から、磁気オフセット値のみを推定する。そして、推定精度が所定以上得られたと判定されると、デフォルト位置での磁気オフセット値を基本オフセット値として、レンズの識別情報に関連付けてカメラ内部に記録する。
【００８８】
上記第１の工程が完了すると、カメラマイコン２０１は、図１２（ｂ）の画面に切り替えるとともに、第２の工程に移行する。第２の工程では、ユーザはカメラを平らな場所に置くなどして、カメラを固定し静止させた状態にする。カメラマイコン２０１は、加速度センサ出力等から、カメラが固定されたことを検出すると、順次、レンズユニットのフォーカス、ズーム（パワーズーム機能がある場合）、絞りの駆動を行う。例えば、フォーカス駆動であれば、至近端をデフォルト位置とし、そこから無限遠まで所定のステップでフォーカス駆動して、再度至近端まで移動させる。このとき、ズーム、絞りはデフォルト位置に固定しておき、カメラ内部では、フォーカスの所定ステップごとに地磁気センサを動作させ、デフォルト位置における地磁気センサの出力との差分値を算出し、フォーカスレンズ位置と共に記録する。これを至近端から無限遠まで繰り返し、フォーカス駆動時のオフセット差分値として、レンズユニットの識別情報と関連付けて記録する。
【００８９】
このように、キャリブレーションを２段階に分けることで、ユーザがカメラを振る時間が、従来のキャリブレーションと同じ時間だけで済む。
【００９０】
次に、本実施形態の電子コンパスのキャリブレーション方法を実現するためのカメラおよびレンズユニットの各動作について説明する。
【００９１】
＜カメラの動作＞次に、図１３を参照して、カメラ２００の動作について説明する。
【００９２】
なお、図１３の動作は、カメラ２００にレンズユニット１００が装着されたことが検出されると開始され、カメラマイコン２０１がキャリブレーション用のプログラムを実行することにより実現される。
【００９３】
図１３において、ステップＳ１３０１〜Ｓ１３０９の処理は、図９のステップＳ９０１〜Ｓ９０７、Ｓ９０９〜Ｓ９１１と同様であるので、相違する処理を中心に説明する。
【００９４】
まず、ステップＳ１３０１〜Ｓ１３０９において第１の工程を行い、得られた磁気オフセット値をフォーカスレンズ位置情報と共に記録する。
【００９５】
次に、ステップＳ１３１０では、カメラマイコン２０１は、図１２（ｂ）に示す第２の工程を促す画面を表示する。このようにして、カメラの周辺の環境磁場が変化しないような準備を行い、このような環境の中で、レンズを駆動することによる影響だけを抽出する。
【００９６】
ステップＳ１３１１では、カメラマイコン２０１は、レンズユニット１００に対して、フォーカスレンズ１０２を１ステップ駆動するように駆動指示を送信する。ここでの１ステップの幅は、細かくても粗くても構わない。
【００９７】
ステップＳ１３１２では、カメラマイコン２０１は、フォーカスレンズ１０２が至近端にあったときとの磁気オフセットの差分値を検出する（キャリブレーション動作）。
【００９８】
ステップＳ１３１３では、カメラマイコン２０１は、得られた磁気オフセット差分値をフォーカスレンズ位置情報と共に記録する。
【００９９】
その後、ステップＳ１３１４では、カメラマイコン２０１は、レンズユニット１００からフォーカス位置情報を通信によって取得する。
【０１００】
その後、カメラマイコン２０１はフォーカスレンズ位置が無限大になるまでステップＳ１３１１からＳ１３１４までの処理を繰り返し実行することにより、すべてのステップ駆動に関して得られた磁気オフセット値をフォーカスレンズ位置と共に記録する。
【０１０１】
ステップＳ１３１５でフォーカスレンズ位置が無限大と判定されると、カメラマイコン２０１は、すべてのフォーカスレンズ位置におけるキャリブレーションおよび磁気オフセット差分値の記録が完了したとみなし、ステップＳ１３１６に進む。
【０１０２】
ステップＳ１３１６では、カメラマイコン２０１は、すべてのフォーカスレンズ位置におけるキャリブレーションおよび磁気オフセット差分値の記録が完了したことをユーザに通知し、処理を終了する。
【０１０３】
なお、図１３のカメラ２００のキャリブレーション動作に対応する、レンズユニット１００の動作については、図１０と同様であるので、説明は省略する。
【０１０４】
本実施形態では、フォーカス駆動時における磁気オフセット差分値の算出方法について説明したが、ズーム駆動時や絞り駆動時においても同様にキャリブレーション動作を行い、ズーム駆動時および絞り駆動時の磁気オフセット差分値を算出し、レンズユニット１００の識別情報と関連付けて記録する。
【０１０５】
＜磁気オフセット値の記録フォーマット＞次に、図１４を参照して、磁気オフセット値を記録するときの記録フォーマットについて説明する。
【０１０６】
まず、レンズユニットの識別情報として、レンズの種類を示すレンズＩＤと、シリアルＮｏ．とが記録される。次に、フォーカスレンズ１０２、ズームレンズ１０３、絞り１０４のデフォルト位置での基本オフセット値が記録される。次に、フォーカスレンズ１０２、ズームレンズ１０３、絞り１０４の各位置でのオフセット差分値が記録される。オフセット差分値は、フォーカスレンズ１０２、ズームレンズ１０３、絞り１０４の各位置について必要なステップ数分だけ記録される。図示の例では、フォーカス位置に対する必要ステップ数として、デフォルト位置を含めて４ステップ分、絞り位置に対する必要ステップ数としては、デフォルト位置を含めて３ステップ分の値が記録されている。また、フォーカス位置に対してはデフォルト位置以外の３つ、絞り位置に対してはデフォルト位置以外の２つの値が記録されている。
【０１０７】
このように、レンズユニットごとに基本オフセット値とオフセット差分値のセットをカメラ内部に記録する。
【０１０８】
カメラマイコン２０１は、レンズユニット１００がカメラボディに取り付けられたことを検出すると、レンズユニット１００から識別情報を取得し、対応するレンズユニット１００の基本オフセット値とオフセット差分値を読み出す。その後、カメラマイコン２０１は、キャリブレーションを行い、レンズユニット１００からリアルタイムにフォーカスレンズ位置、ズームレンズ位置、絞り値の少なくともいずれかに応じた基本オフセット値とオフセット差分値を算出する。そして、これら基本オフセット値とオフセット差分値を加算した合計を現状の電子コンパスの磁気オフセット値とする。
【０１０９】
カメラマイコン２０１は、地磁気センサ出力から、上記磁気オフセット値を減算することで、現在の地磁気の向きを正確に算出することが可能となる。
【０１１０】
＜自動キャリブレーション＞地磁気センサの磁気オフセット成分は、レンズユニットを交換しない場合であっても、場所や時間の変化によって変動する場合がある。このような環境磁場の変化については、地磁気センサを使用しながら磁気オフセット成分を求めることによって、自動的にキャリブレーションを行って追従するように制御する。この場合、本実施形態では、オフセット差分値については、レンズユニットの動作状態のみに依存する成分として記録されているので、基本オフセット値のみを環境磁場の変化に追従して変化させるように制御する。
【０１１１】
ここで、図１５を参照して、自動キャリブレーションによる磁気オフセット値の変化について説明する。
【０１１２】
図１５に示すフォーカス駆動時のオフセット差分値は、レンズユニット内部の磁場変化のみに起因するため、環境磁場の変化には影響されない。そのため、図１５において、フォーカスレンズ位置を変化させても、フォーカスレンズ位置ごとの相対的な位置関係は変化しない。それに対し、基本オフセット値は、フォーカス位置デフォルトの磁気オフセット値と、環境磁場分との両方を含むため、環境磁場変化によってベクトルの向きと大きさが変化する。
【０１１３】
すなわち、環境磁場が変化したときに、フォーカスレンズ１０２や絞り１０４がデフォルト位置とは異なる位置にある場合には、環境磁場が変化した時点から、その位置でのオフセット差分値を減算し、デフォルト位置での環境磁場変化に換算することによって、基本オフセット値の変化分として算出することができる。これによって、オフセット差分値は環境磁場変化に追従して変化することなく、基本オフセット値のみ追従して変化するように制御することが可能となる。環境磁場変化によって、カメラ内部に記録している基本オフセット値と、現在の基本オフセット値が変化した場合には、カメラ内部に記録している基本オフセット値を、現在の基本オフセット値に更新する。
【０１１４】
また、長期間使用していないレンズユニットに交換された場合には、環境磁場変化によって、以前のキャリブレーションによる、基本オフセット値がずれている可能性がある。このような場合には、ユーザに再度キャリブレーションを促すが、第２の工程のキャリブレーションにおいて算出されるオフセット差分値は変化しないと考えられるため、第１の工程のキャリブレーションのみ行うように制御しても良い。
【０１１５】
以上のように、本実施形態によれば、電子コンパスのキャリブレーションにおいて、フォーカスレンズ、ズームレンズおよび絞りの少なくともいずれかを駆動して磁気オフセット値を算出し、レンズユニットの種類と共に記録しておく。このようにすれば、撮影時には、電子コンパスのキャリブレーションを行わずに、予め記録しておいた磁気オフセット値の中からレンズユニットの種類に応じた値を参照して、電子コンパスの磁気オフセットを修正できる。すなわち、レンズが装着される度に電子コンパスのキャリブレーションを行う必要がなく、レンズ装着後におけるキャリブレーション動作回数を低減することができる。
【０１１６】
また、上述した各実施形態では、レンズユニットからリアルタイムにフォーカスレンズ位置、ズームレンズ位置、絞り値の情報を取得して磁気オフセット値を求めていたが、場合によっては、これらの情報が取得できないことも考えられる。例えば、カメラがマニュアルフォーカスに設定されている場合やカメラマイコン２０１がレンズマイコン１０１と通信できない場合には、レンズマイコン１０１がフォーカスレンズ位置を検出できない場合がある。このような場合には、カメラマイコン２０１は、図１６に示す電子コンパス機能が使えないことを通知する画面を表示し、ユーザに注意を促すように制御しても良い。さらにまた、電子コンパス機能をオフとしたり、キャリブレーションを実行しないようにしても良い。
【０１１７】
なお、ユーザがマニュアルでフォーカスレンズ位置を移動させたときには正しい撮影方位が得られない可能性がある。しかしながら、ユーザがどうしても電子コンパス機能を使用したい場合には、予め設定されたデフォルトの磁気オフセット値を使用してキャリブレーションを行うようにしても良い。
【０１１８】
［他の実施形態］本発明は、以下の処理を実行することによっても実現される。即ち本実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵなど）がプログラムを読み出して実行する処理である。
【図１】
2015121498.tif 000003
【図２】
2015121498.tif 000004
【図３】
2015121498.tif 000005
【図４】
2015121498.tif 000006
【図５】
2015121498.tif 000007
【図６】
2015121498.tif 000008
【図７】
2015121498.tif 000009
【図８】
2015121498.tif 000010
【図９】
2015121498.tif 000011
【図１０】
2015121498.tif 000012
【図１１】
2015121498.tif 000013
【図１２】
2015121498.tif 000014
【図１３】
2015121498.tif 000015
【図１４】
2015121498.tif 000016
【図１５】
2015121498.tif 000017
【図１６】
2015121498.tif 000018