以下、本実施形態について、図を用いて説明する。撮像装置1は、デジタルカメラであるとして説明する。なお、方向を説明するために、撮像装置1において撮影レンズ67の光軸LLと直交する方向を第1方向x、第1方向x及び光軸LLと直交する方向を第2方向y、光軸LLと平行な方向を第3方向zとして説明する。
第1方向x、第2方向y、及び第3方向zと、重力方向との関係は、撮像装置1の保持姿勢によって変動する。例えば、撮像装置1が、正立横位置姿勢状態にある場合、すなわち、撮像装置1が、水平保持状態で、且つ撮像装置1の上面部が上を向いた状態(図2参照)にある場合は、第1方向xと第3方向zは重力方向と垂直で、第2方向yは重力方向に平行である。撮像装置1が、倒立横位置姿勢状態にある場合、すなわち、撮像装置1が、水平保持状態で、且つ撮像装置1の底面部が上を向いた状態(図3参照)にある場合は、第1方向xと第3方向zは重力方向と垂直で、第2方向yは重力方向に平行である。第1縦位置姿勢状態にある場合、すなわち、撮像装置1が、縦保持状態で、且つ撮像装置1の側面の一方が上を向いた状態(図4参照)にある場合は、第1方向xが重力方向に平行で、第2方向yと第3方向zが重力方向に垂直である。撮像装置1が、第2縦位置姿勢状態にある場合、すなわち、撮像装置1が、縦保持状態で、且つ撮像装置1の側面の他方が上を向いた状態(図5参照)にある場合は、第1方向xが重力方向に平行で、第2方向yと第3方向zが重力方向に垂直である。撮像装置1の正面部(撮影レンズ67がある側)が重力方向を向いた状態にある場合は、第1方向xと第2方向yが重力方向に垂直で、第3方向zが重力方向に平行である。
撮像装置1の正面部(撮影レンズ67がある側)が反重力方向(上)を向いた状態(図6参照)にある場合は、第1方向xと第2方向yは重力方向と垂直で、第3方向zは重力方向に平行で且つ逆方向である。撮像装置1の正面部(撮影レンズ67がある側)が重力方向(下)を向いた状態(図7参照)にある場合は、第1方向xと第2方向yは重力方向と垂直で、第3方向zは重力方向に平行で且つ同じ方向である。
撮像装置1の撮像に関する部分は、主電源のオンオフ切り替えを行うPonボタン11、レリーズボタン13、傾き補正オンオフボタン14、表示部17、DSP19、CPU21、AE部23、AF部24、傾き補正部30の撮像部39a、及び撮影レンズ67から構成される(図1、図2、図8参照)。Ponボタン11の押下に対応してPonスイッチ11aのオンオフ状態が切り替えられ、これにより撮像装置1の主電源のオンオフ状態が切り替えられる。被写体像は、撮像部39aによって撮影レンズ67を介した光学像として撮像され、表示部17によって撮像された画像が表示される(スルー画像表示)。また被写体像は光学ファインダ18によって光学的に観察することも可能である。
レリーズボタン13は、全押しすることによりレリーズスイッチ13aがオン状態にされ撮像部39a(撮像手段)による撮像(撮像動作)が行われ、撮影像がメモリされる。レリーズスイッチ13aのオン/オフ情報は、1ビットのデジタル信号としてCPU21のポートP13に入力される。
表示部17は、ポートP6で信号の入出力が行われ、スルー画像や、撮像により得られた静止画像を表示する。また、カメラ傾き角度Kθの絶対値やあおり角度φが大きい場合(|Kθ|>θ2、φ>φ1、NG表示パラメータDIS=1)には、傾き補正処理が行えない旨を示すNG表示を行う。それ以外の場合(NG表示パラメータDIS=0)には、NG表示が行われない。NG表示は、スルー画像上に表示する形態であってもよいし、別の表示装置に表示する形態であってもよい。
撮影レンズ67は、撮像装置1の交換レンズであり、CPU21のポートP8と接続され、撮影レンズ67に内蔵されたレンズROMなどに記録されたレンズ情報を、撮像装置1の電源がオン状態にされた時などにCPU21に出力する。DSP19は、CPU21のポートP9、及び撮像部39aと接続され、CPU21の指示に基づいて、撮像部39aにおける撮像により得られた画像信号について、画像処理などの演算処理を行う。
CPU21は、撮像に関する各部の制御、特に、傾き補正を行う際に、可動部30aの移動制御を行う制御手段である。
AE部23は、被写体の測光動作を実行して露光値を演算し、この露光値に基づき撮影に必要となる絞り値及び露光時間を演算する。AF部24は、測距を行い、この測距結果に基づき撮影レンズ67を光軸方向に変位させ焦点調節を行う。AE部23、AF部24は、それぞれポートP4、P5で信号の入出力が行われる。
撮像装置1の傾き補正装置すなわち傾き補正処理に関する部分は傾き補正オンオフボタン14、表示部17、CPU21、傾き検出部25、駆動用ドライバ回路29、傾き補正部30、及び磁界変化検出素子の信号処理回路としてのホール素子信号処理回路45を有する。
傾き補正オンオフボタン14は、押下することにより傾き補正スイッチ14aがオン状態にされる。この場合、測光など他の動作と独立して、一定時間ごとに、傾き検出部25、及び傾き補正部30が駆動されて傾き補正処理が行われる。傾き補正スイッチ14aがオン状態にされた傾き補正モードの場合に傾き補正パラメータCPが1に設定され、傾き補正スイッチ14aがオフ状態にされた傾き補正モードでない場合に傾き補正パラメータCPが0に設定される。本実施形態ではこの一定時間を1msであるとして説明する。傾き補正スイッチ14aのオン/オフ情報は、1ビットのデジタル信号としてCPU21のポートP14に入力される。
次に、傾き検出部25、駆動用ドライバ回路29、傾き補正部30、ホール素子信号処理回路45についての詳細、及びCPU21との入出力関係について説明する。
傾き検出部25は、加速度センサ26、及び第1〜第3アンプ28a〜28cを有する。加速度センサ26は、重力加速度の第1方向x成分(横方向成分)である第1重力加速度成分と、重力加速度の第2方向y成分(縦方向成分)である第2重力加速度成分と、重力加速度の第3方向z成分(光軸方向成分)である第3重力加速度成分を検出するセンサである。第1アンプ28aは、加速度センサ26から出力された第1重力加速度成分に関する信号を増幅し、第1加速度ahとしてアナログ信号をCPU21のA/D0に出力する。第2アンプ28bは、加速度センサ26から出力された第2重力加速度成分に関する信号を増幅し、第2加速度avとしてアナログ信号をCPU21のA/D1に出力する。第3アンプ28cは、加速度センサ26から出力された第3重力加速度成分に関する信号を増幅し、第3加速度azとしてアナログ信号をCPU21のA/D2に出力する。
傾き補正部30は、傾き補正処理を行う場合(CP=1)に、撮像装置1の重力方向と垂直な水平面に対する光軸LL周りの傾きを考慮して、撮像部39aを含む可動部30aを回転させて、傾きを補正する(傾きを少なくする)傾き補正処理を行う。すなわち、かかる場合、CPU21は、傾き補正処理のための可動部30aの移動制御を行う。具体的には、撮像素子39a1の撮像面の外形を構成する長方形(または正方形)の2組の対辺のうち、一方の対辺(上下の対辺)が重力方向と垂直になり、且つ他方の対辺(左右の対辺)が重力方向に平行になるように可動部30aが移動制御される。これにより、水準器などを用いることなく、撮像素子39a1の水平状態を自動的に維持することが可能になる。すなわち、水平線や地平線などを撮像する場合に、撮像素子39a1の撮像面の外形を構成する長方形(または正方形)の2組の対辺のうち、一方の対辺(上下の対辺)が水平線や地平線などと平行な状態で撮像することが可能になる。具体的には、傾き補正部30は、傾き検出部25からの情報に基づいて、CPU21が演算した移動すべき位置Sに撮像部39aを、移動させることによって、傾き補正を行う装置であり、撮像部39aを含みxy平面上に移動可能領域をもつ可動部30aと、固定部30bとを備える。
CPU21、及び傾き検出部25の各部への電力供給は、Ponスイッチ11aがオン状態にされた(主電源がオン状態にされた)後に開始される。
CPU21は、A/D0、A/D1、A/D2に入力された第1、第2、第3加速度ah、av、azをA/D変換し(第1、第2、第3デジタル加速度信号Dah、Dav、Daz)、ノイズ除去のために高周波成分をカットし(デジタルローパスフィルタ処理、第1、第2、第3デジタル加速度Aah、Aav、Aaz)、撮像装置1の重力方向と垂直な水平面に対する光軸LL周りの傾き角度(カメラ傾き角度Kθ)を求める(図9の(1)参照)。傾き角度(カメラ傾き角度Kθ)は、保持姿勢などにより変動する撮像装置1の傾き角度(水平に保持された状態と比較した光軸LL周りの傾き度合い)である。言い換えると、撮像装置1の傾きは、重力方向と垂直な水平面と第1方向xとのなす角度または水平面と第2方向yとのなす角度で表される。第1方向xと第2方向yの一方と水平面とのなす角度が0度で且つ第1方向xと第2方向yの他方と水平面とのなす角度が90度である場合に、撮像装置1が傾いていない状態である。従って、傾き検出部25とCPU21は、撮像装置1の傾き角度を演算する機能を有する。
第1、第2、第3重力加速度成分に相当する第1、第2デジタル加速度Aah、Aav、Aazは、それぞれ、撮像装置1の保持姿勢によって変動し、−1から+1までの値を示す。例えば、撮像装置1が、正立横位置姿勢状態にある場合、すなわち、撮像装置1が、水平保持状態で、且つ撮像装置1の上面部が上を向いた状態(図2参照)にある場合は、第1デジタル加速度Aahは0で、第2デジタル加速度Aavは+1、第3デジタル加速度Aazは0である。撮像装置1が、倒立横位置姿勢状態にある場合、すなわち、撮像装置1が、水平保持状態で、且つ撮像装置1の底面部が上を向いた状態(図3参照)にある場合は、第1デジタル加速度Aahは0で、第2デジタル加速度Aavは−1、第3デジタル加速度Aazは0である。撮像装置1が、第1縦位置姿勢状態にある場合、すなわち、撮像装置1が、縦保持状態で、且つ撮像装置1の側面の一方が上を向いた状態(図4参照)にある場合は、第1デジタル加速度Aahは−1で、第2デジタル加速度Aavは0、第3デジタル加速度Aazは0である。撮像装置1が、第2縦位置姿勢状態にある場合、すなわち、撮像装置1が、縦保持状態で、且つ撮像装置1の側面の他方が上を向いた状態(図5参照)にある場合は、第1デジタル加速度Aahは+1で、第2デジタル加速度Aavは0、第3デジタル加速度Aazは0である。
撮像装置1の正面部(撮影レンズ67がある側)が反重力方向(上)を向いた状態(図6参照)にある場合は、第1、第2デジタル加速度Aah、Aavはいずれも0であり、第3デジタル加速度Aazは、―1である。撮像装置1の正面部(撮影レンズ67がある側)が重力方向(下)を向いた状態(図7参照)にある場合は、第1、第2デジタル加速度Aah、Aavはいずれも0であり、第3デジタル加速度Aazは、+1である。
撮像装置1が、正立横位置姿勢状態から、正面からみて反時計回りにKθだけ回転した(傾いた)場合(図10参照)は、第1デジタル加速度Aahは−sin(Kθ)で、第2デジタル加速度Aavは+cos(Kθ)である。従って、傾き角度(カメラ傾き角度Kθ)を求めるには、第1デジタル加速度Aahについてアークサイン変換を施し且つ負符号を付すこと、または第2デジタル加速度Aavについてアークコサイン変換を施すことによって求めることが出来る。但し、傾き角度(Kθ)の絶対値が微少である(0に近い)場合は、余弦関数の変化量よりも、正弦関数の変化量の方が大きいため、アークサイン変換を施す計算の方が、アークコサイン変換を施す計算に比べて、高精度に傾き角度を算出することが可能になる(Kθ=−Sin−1(Aah)、図21のステップS82参照)。
撮像装置1が、第1縦位置姿勢状態から、正面からみて反時計回りにKθだけ回転した(傾いた)場合(図11参照)は、第1デジタル加速度Aahは−cos(Kθ)で、第2デジタル加速度Aavは−sin(Kθ)である。従って、傾き角度(カメラ傾き角度Kθ)を求めるには、第1デジタル加速度Aahについてアークコサイン変換を施し且つ負符号を付すこと、または第2デジタル加速度Aavについてアークサイン変換を施し且つ負符号を付すことによって求めることが出来る。但し、傾き角度(Kθ)の絶対値が微少である(0に近い)場合は、余弦関数の変化量よりも、正弦関数の変化量の方が大きいため、アークサイン変換を施す計算の方が、アークコサイン変換を施す計算に比べて、高精度に傾き角度を算出することが可能になる(Kθ=−Sin−1(Aav)、図21のステップS78参照)。
撮像装置1が、倒立横位置姿勢状態から、正面からみて反時計回りにKθだけ回転した(傾いた)場合(図12参照)は、第1デジタル加速度Aahは+sin(Kθ)で、第2デジタル加速度Aavは−cos(Kθ)である。従って、傾き角度(カメラ傾き角度Kθ)を求めるには、第1デジタル加速度Aahについてアークサイン変換を施すこと、または第2デジタル加速度Aavについてアークコサイン変換を施し且つ負符号を付すことによって求めることが出来る。但し、傾き角度(Kθ)の絶対値が微少である(0に近い)場合は、余弦関数の変化量よりも、正弦関数の変化量の方が大きいため、アークサイン変換を施す計算の方が、アークコサイン変換を施す計算に比べて、高精度に傾き角度を算出することが可能になる(Kθ=+Sin−1(Aah)、図21のステップS81参照)。
撮像装置1が、第2縦位置姿勢状態から、正面からみて反時計回りにKθだけ回転した(傾いた)場合(図13参照)は、第1デジタル加速度Aahは+cos(Kθ)で、第2デジタル加速度Aavは+sin(Kθ)である。従って、傾き角度(カメラ傾き角度Kθ)を求めるには、第1デジタル加速度Aahについてアークコサイン変換を施すこと、または第2デジタル加速度Aavについてアークサイン変換を施すことによって求めることが出来る。但し、傾き角度(Kθ)の絶対値が微少である(0に近い)場合は、余弦関数の変化量よりも、正弦関数の変化量の方が大きいため、アークサイン変換を施す計算の方が、アークコサイン変換を施す計算に比べて、高精度に傾き角度を算出することが可能になる(Kθ=+Sin−1(Aav)、図21のステップS79参照)。
傾き角度すなわちカメラ傾き角度Kθは、第1デジタル加速度Aahと第2デジタル加速度Aavとで絶対値の小さい方の値について、アークサイン変換を行い、プラスまたはマイナスの符号を付すことにより求められる(Kθ=+Sin−1(Aah)、−Sin−1(Aah)、+Sin−1(Aav)、及び−Sin−1(Aav)のうちいずれか1つ)。付される符号の正負は、第1デジタル加速度Aahと第2デジタル加速度Aavとで絶対値の大きい方の値の符号(0よりも小さいか否か)に基づいて決定される。具体的には、図21のフローチャートを用いて後述する。
光軸LLが重力方向と垂直な場合、すなわち撮像装置1の正面部が水平方向を向いた状態にある場合は、上述のように第1、第2デジタル加速度Aah、Aavのいずれかに基づいて、カメラ傾き角度Kθを算出することが出来る。
しかしながら、光軸LLが重力方向と垂直でない場合、すなわち撮像装置1の正面部が水平方向を向いていない場合は、光軸LLと水平面とのなす角度(あおり角度φ(≠0))だけ、第1、第2デジタル加速度Aah、Aavが少なくなるため、補正する必要がある。具体的には、第1、第2デジタル加速度Aah、Aavのいずれか一方に、あおり角度φに対応する補完係数ZZ(=1/|cosφ|)を乗算したものに基づいて、カメラ傾き角度Kθを算出する(Kθ=+Sin−1(Aah×ZZ)、−Sin−1(Aah×ZZ)、+Sin−1(Aav×ZZ)、及び−Sin−1(Aav×ZZ)のうちいずれか1つ、図14参照)。あおり角度φは、第3デジタル加速度Aazに基づいて算出される(φ=|Sin−1(Aaz)|)。
ただし、あおり角度φが大きい場合(本実施形態ではあおり角度φが角度閾値φ1(=30度)より大きい場合)には、誤差が大きく、補完係数を使って補正しても、正確に傾き補正処理を行うことが出来ないため、かかる旨(NG表示)をスルー画像上に表示する。また、この場合は、カメラ傾き角度Kθを0に設定して、傾き補正処理のための移動制御を停止する。
本実施形態では、割り込み処理における加速度検出処理は、傾き検出部25における処理、及び傾き検出部25からCPU21への第1、第2、第3加速度ah、av、azの入力処理を言うものとする。カメラ傾き角度Kθは、傾き補正処理における可動部30aの回転量αの算出に使用される(α=−Kθ)。
ただし、回転量αは、一定条件下で補正される。すなわち、回転量αの絶対値が、第1角度θ1以下である場合(第1傾き状態ST1)には、回転量αの補正は行わず、回転量αの絶対値が、第1角度θ1より大きく、第2角度θ2(>θ1)以下である場合(第2傾き状態ST2)には、回転量αをθ1または−θ1に補正し、回転量αの絶対値が、第2角度θ2より大きい場合(第3傾き状態ST3)には、回転量αを0に補正する(図15、図16参照)。
第1角度θ1は、可動部30aが、初期状態(可動部30aが移動可能範囲の中心で且つ撮像素子39a1の撮像面の外形を構成する4辺が第1方向xまたは第2方向yに平行な状態)から移動可能範囲の中で回転出来る最大回転角度であり、可動部30aと可動部30aの移動可能範囲の寸法などから予め求められる定数である(例えば、2度)。第2角度θ2は、最大回転角度を少し上回る回転角度であり、これらの値は、実験などにより最適な値が設定されるのが望ましい(例えば、第2角度θ2が5度)。
第1傾き状態ST1では、回転量αがカメラ傾き角度Kθを相殺するように、カメラ傾き角度Kθに負符号を付したものに設定された回転量αが、傾き補正処理に使用され、可動部30aの重力方向と垂直な水平面に対する光軸LL周りの傾き角度(可動部傾き角度LVL=Kθ+α)が0になる。このため、傾き補正処理によって、可動部30aの水平状態が維持される。
カメラ傾き角度Kθの絶対値が、第1角度θ1より大きい場合(第2傾き状態ST2、第3傾き状態ST3)は、可動部30aを移動可能範囲の中で回転させても、可動部傾き角度LVLを0にならず、可動部30aの水平状態を維持することは出来ない。このため、かかる場合、CPU21は、傾き補正処理のための可動部30aの移動制御を停止する。すなわち、本実施形態では、撮像装置1の保持状態が変化して、カメラ傾き角度Kθの絶対値が、第1角度θ1よりも大きくなる場合には、傾き補正処理による効果の急激な変化を抑制するように、CPU21は回転量αを変化させる。具体的には、第2傾き状態ST2では、回転量αは一定角度(+θ1または−θ1)に補正される。第3傾き状態ST3では、回転量αは0に補正される。
第2傾き状態ST2において回転量αが一定角度に維持されるため、第1傾き状態STと第2傾き状態ST2とが切り替わる間における構図の変化度合いが小さい。構図の変化度合いが小さいと、かかる切り替え期間に撮像された画像に基づくスルー画像で表示される画像の変化度合いも小さくなり、使用者がスルー画像を見た時に不快感を与える可能性が小さくなる。また、可動部30aの回転量の変化度合いも小さくなるため、移動制御のレスポンスの悪化を抑制出来る。
CPU21は、回転量αに対応して移動すべき可動部30aの位置S(可動部30aの駆動点の移動位置(Sx、Syl、Syr))を算出し(図9の(2)参照、図20のステップS57参照)、算出後、かかる位置Sに移動させる。
傾き補正処理を行わない場合(CP=0)、CPU21は、可動部30aが初期状態で固定されるように、可動部30aの移動すべき位置S(Sx、Syl、Syr)を設定し(図9の(6)参照、図20のステップS55参照)、かかる位置に移動させる。すなわち、かかる場合、CPU21は、傾き補正処理のための可動部30aの移動制御を停止する。
可動部30aの第1方向xへ移動させるための駆動点を横方向駆動点DPxとし、第2方向yへの移動及び回転させるための駆動点を第1縦方向駆動点DPyl、DPyrとする(図17、図18参照)。横方向駆動点DPxは、可動部30aの第1方向xへの駆動に使用されるコイル(横方向コイル31a)によって力が加えられる点で、横方向ホール素子hh10と近い位置に設定される。第1縦方向駆動点DPylは、可動部30aの第2方向yへの駆動に使用されるコイル(第1縦方向コイル32a1)によって力が加えられる点で、第1縦方向ホール素子hv1と近い位置に設定される。第2縦方向駆動点DPyrは、可動部30aの第2方向yへの駆動に使用されるコイル(第2縦方向コイル32a2)によって力が加えられる点で、第2縦方向ホール素子hv2と近い位置に設定される。
横方向駆動点DPxの移動位置(傾き補正処理を開始する時点、すなわち初期状態における横方向駆動点DPxの位置に対する第1方向xの移動量)Sxは、回転量αに基づいて算出される(Sx=Lx×cos(θx+α)−Lx×cos(θx))。Lxは、撮像素子39a1の撮像面の回転中心Oから横方向駆動点DPxまでの距離、θxは、初期状態における横方向駆動点DPxと回転中心Oとを結ぶ線と第1方向xとのなす角度であり、設計により予め求められる定数である(図18参照)。
第1縦方向駆動点DPylの移動位置(初期状態における第1縦方向駆動点DPylの位置に対する第2方向yの移動量)Sylは、回転量αに基づいて算出される(Syl=Lyl×cos(θyl−α)−Lyl×cos(θyl))。Lylは、回転中心Oから第1縦方向駆動点DPylまでの距離、θylは、初期状態における第1縦方向駆動点DPylと回転中心Oとを結ぶ線と第2方向yとのなす角度であり、設計により予め求められる定数である。
第2縦方向駆動点DPyrの移動位置(初期状態における第2縦方向駆動点DPyrの位置に対する第2方向yの移動量)Syrは、回転量αに基づいて算出される(Syr=Lyr×cos(θyr+α)−Lyr×cos(θyr))。Lyrは、回転中心Oから第2縦方向駆動点DPyrまでの距離、θyrは、初期状態における第2縦方向駆動点DPyrと回転中心Oとを結ぶ線と第2方向yとのなす角度であり、設計により予め求められる定数である。
撮像部39aを含む可動部30aの移動は、後述する電磁力によって行われる。可動部30aを位置Sまで移動させるために駆動用ドライバ回路29を介して横方向コイル31aを駆動する駆動力Dの横方向成分を横方向駆動力Dx(横方向PWMデューティdx)、第1縦方向コイル32a1を駆動する縦方向成分を第1縦方向駆動力Dyl(第1縦方向PWMデューティdyl)、第2縦方向コイル32a2を駆動する縦方向成分を第2縦方向駆動力Dyr(第2縦方向PWMデューティdyr)とする。
傾き補正部30の可動部30aの駆動(初期状態での固定を含む)は、CPU21のPWM0から横方向PWMデューティdx、PWM1から第1縦方向PWMデューティdyl、及びPWM2から第2縦方向PWMデューティdyrの出力を受けた駆動用ドライバ回路29を介して、駆動手段に含まれるコイル部、駆動用磁石部による電磁力によって行われる(図9の(3)参照)。可動部30aの移動前または移動後の位置Pはホール素子部44a、ホール素子信号処理回路45によって検出される。検出された位置Pの情報は、横方向検出位置信号pxが横方向成分として、2つの第1、第2縦方向検出位置信号pyl、pyrが縦方向成分としてそれぞれCPU21のA/D3、A/D4、A/D5に入力される(図9の(4)参照)。横方向検出位置信号px、第1、第2縦方向検出位置信号py1、py2はA/D3、A/D4、A/D5を介してA/D変換される。
横方向検出位置信号pxに対してA/D変換後の位置Pの横方向成分を横方向成分pdxとする。第1、第2縦方向検出位置信号pyl、plrに対してA/D変換後の位置Pの縦方向成分を第1、第2縦方向成分pdyl、pdyrとする。検出された位置P(pdx、pdyl、pdyr)のデータと移動すべき位置S(Sx、Syl、Syr)のデータによりPID制御(横方向駆動力Dx、第1縦方向駆動力Dyl、第2縦方向駆動力Dyrの算出)が行われる(図9の(5)参照)。
傾き補正処理すなわちPID制御による移動すべき位置Sへの可動部30aの駆動は、傾き補正スイッチ14aがオン状態にされた傾き補正モード(CP=1)の時に行われる。傾き補正パラメータCPが0の時には、可動部30aは、傾き補正処理に対応せず初期状態で固定するためのPID制御が行われ、撮像素子39a1の撮像面の外形を構成する長方形(または正方形)の4辺のそれぞれが、第1方向x、第2方向yのいずれかに平行な状態で且つ移動中心位置に移動せしめられる(図9の(6)参照)。
傾き補正モード(CP=1)であっても、カメラ傾き角度Kθの絶対値が第2角度θ2より大きい場合(|Kθ|>θ2)は、回転量αを0に補正し、あおり角度φが角度閾値φ1より大きい場合(φ>φ1)は、カメラ傾き角度Kθを0に設定するので、傾き補正モードでない場合(CP=0)と同様に、可動部30aは、傾き補正処理に対応せず初期状態で固定するためのPID制御が行われ、撮像素子39a1の撮像面の外形を構成する長方形(または正方形)の4辺のそれぞれが、第1方向x、第2方向yのいずれかに平行な状態で且つ移動中心位置に移動せしめられる。
可動部30aは駆動用コイル部として横方向コイル31a、第1、第2縦方向コイル32a1、32a2、撮像素子39a1を有する撮像部39a、及び磁界変化検出素子部としてのホール素子部44aを有する(図8、図17参照)。本実施形態では、撮像素子39a1がCCDであるとして説明するが、CMOSなど他の撮像素子であってもよい。
固定部30bは、位置検出及び駆動用磁石部として、横方向磁石411b、第1、第2縦方向磁石412b1、412b2、横方向ヨーク431b、及び第1、第2縦方向ヨーク432b1、432b2を有する。
固定部30bは、ボールなどを使って可動部30aを挟み、可動部30aをxy平面上での矩形領域(移動可能領域)内で回転を含む移動が可能な状態を維持する。
撮像素子39a1の撮像範囲を最大限活用して傾き補正処理を行うために、撮影レンズ67の光軸LLが撮像素子39a1の中心(回転中心O)近傍を通る位置関係にある時に、第1方向x、第2方向yともに可動部30aが移動可能範囲の中心に位置する(移動中心位置にある)ように可動部30aと固定部30bの位置関係を設定する。Ponボタン11の押下に対応してPonスイッチ11aがオン状態されて、傾き補正処理を開始する時点、すなわち初期状態においては、可動部30aが移動可能範囲の中心に位置し、さらに、撮像素子39a1の撮像面の外形を構成する長方形(または正方形)の4辺のそれぞれは、第1方向x、第2方向yのいずれかに平行な状態にあるように可動部30aと固定部30bの位置関係を設定され、その後、傾き補正処理が開始される(図19のステップS15参照)。撮像素子39a1の中心とは、撮像素子39a1の撮像面を形成する矩形が有する2つの対角線の交点をいう。
可動部30aには、シート状でかつ渦巻き状のコイルパターンが形成された横方向コイル31a、第1、第2縦方向コイル32a1、32a2、及びホール素子部44aが取り付けられている。横方向コイル31aのコイルパターンは、横方向コイル31aの電流の方向と横方向磁石411bの磁界の向きから生じる電磁力により横方向コイル31aを含む可動部30aにおける横方向駆動点DPxを第1方向xに移動させるべく、第2方向yと平行な線分を有する。第1縦方向コイル32a1のコイルパターンは、第1縦方向コイル32a1の電流の方向と第1縦方向磁石412b1の磁界の向きから生じる電磁力により第1縦方向コイル32a1を含む可動部30aにおける第1縦方向駆動点DPylを第2方向yに移動させるべく、第1方向xと平行な線分を有する。第2縦方向コイル32a2のコイルパターンは、第2縦方向コイル32a2の電流の方向と第2縦方向磁石412b2の磁界の向きから生じる電磁力により第2縦方向コイル32a2を含む可動部30aにおける第2縦方向駆動点DPyrを第2方向yに移動させるべく、第1方向xと平行な線分を有する。ホール素子部44aについては後述する。
横方向コイル31a、第1、第2縦方向コイル32a1、32a2は、フレキシブル基板(不図示)を介してこれらを駆動する駆動用ドライバ回路29と接続される。駆動用ドライバ回路29は、CPU21のPWM0、PWM1、PWM2から横方向PWMデューティdx、第1、第2縦方向PWMデューティdyl、dyrのそれぞれが入力される。駆動用ドライバ回路29は、入力された横方向PWMデューティdxの値に応じて横方向コイル31aに電力を供給し、可動部30aにおける横方向駆動点DPxを第1方向xに移動させる。駆動用ドライバ回路29は、入力された第1、第2縦方向PWMデューティdyl、dyrの値に応じて第1、第2縦方向コイル32a1、32a2に電力を供給し、可動部30aにおける第1、第2縦方向駆動点DPyl、DPyrを第2方向yに移動させる。
第1縦方向コイル32a1と第2縦方向コイル32a2とは、初期状態において、第1方向xに並べられて配置される。撮像素子39a1の中心と第1縦方向コイル32a1の中心近傍との第2方向yの距離と、撮像素子39a1の中心(回転中心O)と第2縦方向コイル32a2の中心近傍との第2方向yの距離は初期状態において等しい位置関係になるように、第1、第2縦方向コイル32a1、32a2は配置される。
横方向磁石411bは、横方向コイル31a及び横方向ホール素子hh10と対向するように固定部30bの可動部30a側に取り付けられる。
第1縦方向磁石412b1は、第1縦方向コイル32a1及び第1縦方向ホール素子hv1と対向するように固定部30bの可動部30a側に取り付けられる。第2縦方向磁石412b2は、第2縦方向コイル32a2及び第2縦方向ホール素子hv2と対向するように固定部30bの可動部30a側に取り付けられる。
横方向磁石411bは、第3方向zにおいて固定部30b上で且つ可動部30a側に取り付けられた横方向ヨーク431bの上であって、第1方向xにN極とS極が並べて取り付けられる(不図示)。第1、第2縦方向磁石412b1、412b2は、第3方向zにおいて固定部30b上で且つ可動部30a側に取り付けられた第1、第2縦方向ヨーク432b1、432b2の上であって、第2方向yにN極とS極が並べて取り付けられる(不図示)。
横方向ヨーク431bは、軟磁性体材料で構成され、固定部30b上に取り付けられる。横方向ヨーク431bは、横方向磁石411bの磁界が周囲に漏れないようにする役目、及び横方向磁石411bと横方向コイル31a、及び横方向磁石411bと横方向ホール素子hh10との間の磁束密度を高める役目を果たす。
第1、第2縦方向ヨーク432b1、432b2は、軟磁性体材料で構成され、固定部30b上に取り付けられる。第1縦方向ヨーク432b1は、第1縦方向磁石412b1の磁界が周囲に漏れないようにする役目、及び第1縦方向磁石412b1と第1縦方向コイル32a1、及び第1縦方向磁石412b1と第1縦方向ホール素子hv1との間の磁束密度を高める役目を果たす。第2縦方向ヨーク432b2は、第2縦方向磁石412b2の磁界が周囲に漏れないようにする役目、及び第2縦方向磁石412b2と第2縦方向コイル32a2、及び第2縦方向磁石412b2と第2縦方向ホール素子hv2との間の磁束密度を高める役目を果たす。
なお、横方向ヨーク431b、第1、第2縦方向ヨーク432b1、432b2は、別体構成でも一体構成であってもよい。
ホール素子部44aは、ホール効果を利用した磁電変換素子であるホール素子を3つ有し、可動部30aの第1方向x、第2方向yの現在位置P(横方向検出位置信号px、第1、第2縦方向検出位置信号pyl、pyr)を検出する1軸ホール素子である。3つのホール素子のうち第1方向xの位置検出用のホール素子を横方向ホール素子hh10、第2方向yの位置検出用のホール素子を第1、第2縦方向ホール素子hv1、hv2とする。
横方向ホール素子hh10は、第3方向zから見て可動部30a上であって、固定部30bの横方向磁石411bと対向し、且つ横方向駆動点DPxに近い位置に取り付けられる。
横方向ホール素子hh10は、横方向コイル31aと、第2方向yに並べて配置されてもよいが、横方向コイル31aの巻線内に配置され、特に巻線内の第1方向xの中心近傍に配置されるのが望ましい(図17参照)。横方向ホール素子hh10は、横方向コイル31aと第3方向zに積層される。巻線内配置、及び積層により、位置検出のための磁界発生領域と、可動部30aの駆動のための磁界発生領域を共用できるので、横方向磁石411b、横方向ヨーク431bの第2方向yの長さを短くすることができる。
また、横方向コイル31aによって可動部30aを第1方向xに移動させる力を加える位置(横方向駆動点DPx)と、横方向ホール素子hh10による位置検出ポイントとが近接するため、精度の高い駆動制御を行うことが可能になる。
第1縦方向ホール素子hv1は、第3方向zから見て可動部30a上であって、固定部30bの第1縦方向磁石412b1と対向し、且つ第1縦方向駆動点DPylに近い位置に取り付けられる。第2縦方向ホール素子hv2は、第3方向zから見て可動部30a上であって、固定部30bの第2縦方向磁石412b2と対向し、且つ第2縦方向駆動点DPyrに近い位置に取り付けられる。
第1縦方向ホール素子hv1は、第1縦方向コイル32a1と、第1方向xに並べて配置されてもよいが、第1縦方向コイル32a1の巻線内に配置され特に巻線内の第2方向yの中心近傍に配置されるのが望ましい。第1縦方向ホール素子hv1は、第1縦方向コイル32a1と第3方向zに積層される。巻線内配置、及び積層により、位置検出のための磁界発生領域と、可動部30aの駆動のための磁界発生領域を共用できるので、第1縦方向磁石412b1、第1縦方向ヨーク432b1の第1方向xの長さを短くすることができる。
第2縦方向ホール素子hv2は、第2縦方向コイル32a2と、第1方向xに並べて配置されてもよいが、第2縦方向コイル32a2の巻線内に配置され特に巻線内の第2方向yの中心近傍に配置されるのが望ましい。第2縦方向ホール素子hv2は、第2縦方向コイル31a2と第3方向zに積層される。巻線内配置、及び積層により、位置検出のための磁界発生領域と、可動部30aの駆動のための磁界発生領域を共用できるので、第2縦方向磁石412b2、第2縦方向ヨーク432b2の第1方向xの長さを短くすることができる。
また、第1縦方向コイル32a1によって可動部30aを第2方向yに移動させる力を加える位置(第1縦方向駆動点DPyl)と、第1縦方向ホール素子hv1による位置検出ポイントとが近接し、第2縦方向コイル32a2によって可動部30aを第2方向yに移動させる力を加える位置(第2縦方向駆動点DPyr)と、第2縦方向ホール素子hv2による位置検出ポイントとが近接するため、精度の高い駆動制御を行うことが可能になる。
直線的な変化量を使って精度の高い位置検出が行える範囲を最大限活用して位置検出を行うため、横方向ホール素子hh10の第1方向xの位置は、初期状態において、撮像素子39a1の中心(回転中心O)近傍が光軸LLを通る位置関係にある時に、横方向磁石411bのN極、S極と等距離近傍にあるのが望ましい。同様に、第1縦方向ホール素子hv1の第2方向yの位置は、初期状態において、撮像素子39a1の中心(回転中心O)近傍が光軸LLを通る位置関係にある時に、第1縦方向磁石412b1のN極、S極と等距離近傍にあるのが望ましい。第2縦方向ホール素子hv2の第2方向yの位置は、初期状態において、撮像素子39a1の中心(回転中心O)近傍が光軸LLを通る位置関係にある時に、第2縦方向磁石412b2のN極、S極と等距離近傍にあるのが望ましい。
ホール素子信号処理回路45は、第1、第2、第3ホール素子信号処理回路450、460、470を有する。
第1ホール素子信号処理回路450は、横方向ホール素子hh10の出力信号から横方向ホール素子hh10における出力端子間の電位差を検出し、これから可動部30aの横方向ホール素子hh10がある部分の第1方向xの位置を特定する横方向検出位置信号pxをCPU21のA/D3に出力する。第1ホール素子信号処理回路450は、フレキシブル基板(不図示)を介して、横方向ホール素子hh10と接続される。
第2ホール素子信号処理回路460は、第1縦方向ホール素子hv1の出力信号から第1縦方向ホール素子hv1における出力端子間の電位差を検出し、これから可動部30aの第1縦方向ホール素子hv1がある部分の第2方向yの位置を特定する第1縦方向検出位置信号pylをCPU21のA/D4に出力する。第2ホール素子信号処理回路460は、フレキシブル基板(不図示)を介して、第1縦方向ホール素子hv1と接続される。
第3ホール素子信号処理回路470は、第2縦方向ホール素子hv2の出力信号から第2縦方向ホール素子hv2における出力端子間の電位差を検出し、これから可動部30aの第2縦方向ホール素子hv2がある部分の第2方向yの位置を特定する第2縦方向検出位置信号pyrをCPU21のA/D5に出力する。第3ホール素子信号処理回路470は、フレキシブル基板(不図示)を介して、第2縦方向ホール素子hv2と接続される。
本実施形態では、回転角度を含めた可動部30aの位置を特定するために、3つのホール素子を使う。3つのホール素子のうち、2つのホール素子を使って、可動部30a上の2つの点(第1縦方向駆動点DPyl、第2縦方向駆動点DPyrに近い点)における第2方向yの位置を、残る1つのホール素子を使って、可動部30a上の1つの点(横方向駆動点DPxに近い点)における第1方向xの位置を特定する。これら2つの点における第2方向yの位置情報、1つの点における第1方向xの位置情報に基づいて、可動部30aの回転角度(傾き)を含む位置を特定することが可能である。
次に、撮像装置1のメイン動作について図19のフローチャートで説明する。Ponスイッチ11aがオン状態にされ撮像装置1の電源がオンにされると、ステップS11で、傾き検出部25に電力が供給され、電源オン状態にされる。ステップS12で、CPU21は、回転量αを初期化する。具体的には、CPU21は、回転量αを0に設定する。また、傾き補正処理が出来ない旨を示すNG表示はオフ状態にされる。
ステップS13で、一定時間(1ms)間隔で割り込み処理が開始される。割り込み処理の詳細については、図20、図21、図22のフローチャートを使って後述する。ステップS14で、CPU21は、傾き補正パラメータCPの値を0に設定する。ステップS15で、CPU21は、300msだけ時間が経過するのを待機する。その後ステップS16に進められる。この間に行われる割り込み処理により、初期状態として、可動部30aが移動可能範囲の中心に位置し、且つ撮像素子39a1の撮像面の外形を構成する長方形(または正方形)の4辺のそれぞれが、第1方向x、第2方向yのいずれかに平行な状態にあるように、可動部30aが移動せしめられる。また、CPU21と撮影レンズ67との間で通信が行われ、撮影レンズ67からレンズ情報が、CPU21に出力される。
ステップS16で、CPU21は、傾き補正スイッチ14aがオン状態にされたか否かを判断する。傾き補正スイッチ14aがオン状態にされていない場合は、ステップS17で、CPU21は、傾き補正パラメータCPの値を0に設定する。傾き補正スイッチ14aがオン状態にされている場合は、ステップS18で、CPU21は、傾き補正パラメータCPの値を1に設定する。
ステップS19で、CCDの電荷蓄積すなわち露光が行われる。露光時間終了後、ステップS20で、CCD入力、すなわち露光時間内の間CCDに蓄積された電荷が移動せしめられる。ステップS21で、CPU21とDSP19との間で通信が行われ、移動された電荷に基づいて画像処理が行われ、画像処理された画像が表示部17によって表示される(スルー画像表示)。
ステップS22で、AE部23により測光が行われ、絞り値や露光時間が演算される。ステップS23で、AF部24により測距が行われ、AF部24のレンズ制御回路駆動により合焦動作が行われる。
ステップS24で、CPU21は、レリーズスイッチ13aがオン状態にされたか否かを判断する。レリーズスイッチ13aがオン状態にされていない場合には、ステップS16に戻される(ステップS16〜23を繰り返す)。レリーズスイッチ13aがオン状態にされている場合は、ステップS25に進められる。
ステップS25で、CCDの電荷蓄積すなわち露光が行われる。露光時間終了後、ステップS26で、CCD入力、すなわち露光時間内の間CCDに蓄積された電荷が移動せしめられる。ステップS27で、CPU21とDSP19との間で通信が行われ、移動された電荷に基づいて画像処理が行われ、画像処理された画像が撮像装置1内の映像メモリに記憶される。ステップS28で、記憶された画像信号は、表示部17によって表示される。その後、ステップS16に戻される(次の撮像動作が可能な状態にされる)。
次に、図19のステップS13で開始され、一定時間(1ms)間隔で行われる割り込み処理について図20のフローチャートを用いて説明する。割り込み処理が開始されると、ステップS50で、CPU21は、NG表示パラメータDISを0に設定する。ステップS51で、傾き検出部25から出力された第1、第2、第3加速度ah、av、azが、CPU21のA/D0、A/D1、A/D2を介しA/D変換され入力される(第1、第2、第3デジタル加速度信号Dah、Dav、Daz、加速度検出処理)。第1、第2、第3デジタル加速度信号Dah、Dav、Dazは、ノイズ除去のために高周波成分がカットされる(第1、第2、第3デジタル加速度Aah、Aav、Aaz、デジタルローパスフィルタ処理)。
ステップS52で、ホール素子部44aで位置検出され、ホール素子信号処理回路45で演算された横方向検出位置信号px、第1、第2縦方向検出位置信号pyl、pyrがCPU21のA/D3、A/D4、A/D5を介しA/D変換され入力され、現在位置P(pdx、pdyl、pdyr)が求められる(図9の(4)参照)。
ステップS53で、CPU21は、第1、第2、第3デジタル加速度Aah、Aav、Aazに基づいて、カメラ傾き角度Kθを算出する(図9の(1)参照)。カメラ傾き角度Kθを求める演算の詳細については、図21のフローチャートを使って後述する。ステップS54で、CPU21は、傾き補正パラメータCPの値が0か否かを判断する。CP=0すなわち傾き補正モードでない場合は、ステップS55に進められ、CP=1すなわち傾き補正モードの場合は、ステップS56に進められる。
ステップS55で、CPU21は、可動部30aの移動すべき位置S(Sx、Syl、Syr)を、可動部30aの移動中心位置で且つ撮像素子39a1の撮像面の外形を構成する4辺が第1方向xまたは第2方向yに平行な状態になるように設定する(図9の(6)参照)。
ステップS56で、CPU21は、カメラ傾き角度Kθに基づいて、回転量αの値を決定する(α=−Kθ)。ステップS57で、CPU21は、回転量αに基づいて、可動部30aの移動すべき位置Sの横方向成分Sx、第1縦方向成分Syl、第2縦方向成分Syrを算出する(図9の(2)参照)。可動部30aの移動すべき位置S(横方向成分Sx、第1縦方向成分Syl、第2縦方向成分Syr)の算出の詳細については、図22のフローチャートを使って後述する。
ステップS58で、ステップS55、S57のいずれかで設定した位置S(Sx、Syl、Syr)と現在位置P(pdx、pdyl、pdyr)に基づいて、CPU21は、可動部30aの移動に必要な駆動力D、すなわち横方向コイル31aを駆動するのに必要な横方向駆動力Dx(横方向PWMデューティdx)と、第1縦方向コイル32a1を駆動するのに必要な第1縦方向駆動力Dyl(第1縦方向PWMデューティdyl)と、第2縦方向コイル32a2を駆動するのに必要な第2縦方向駆動力Dyr(第2縦方向PWMデューティdyr)を算出する(図9の(5)参照)。
ステップS59で横方向PWMデューティdxにより駆動用ドライバ回路29を介し横方向コイル31aが駆動され、第1縦方向PWMデューティdylにより駆動用ドライバ回路29を介し第1縦方向コイル32a1が駆動され、第2縦方向PWMデューティdyrにより駆動用ドライバ回路29を介し第2縦方向コイル32a2が駆動され、可動部30aが移動せしめられる(図9の(3)参照)。ステップS58、S59の動作は、一般的な比例、積分、微分演算を行うPID自動制御で用いられる自動制御演算である。
ステップS60で、CPU21は、NG表示パラメータDISが0に設定されているか否かを判断する。0にされている場合は、ステップS61で、傾き補正処理が出来ない旨を示すNG表示はオフ状態にされる。0にされていない場合は、ステップS62で、NG表示がオン状態にされる(すなわちスルー画像上にNG表示が行われる)。
次に、図20のステップS53で行われるカメラ傾き角度Kθの演算処理について図21のフローチャートを用いて説明する。演算処理が開始されると、ステップS71で、CPU21は、第3デジタル加速度Aazに基づいて、あおり角度φを算出する(φ=|Sin−1(Aaz)|)。ステップS72で、CPU21は、あおり角度φに基づいて、補完係数ZZを算出する(ZZ=1/|cosφ|)。ステップS73で、CPU21は、あおり角度φが角度閾値φ1よりも大きいか否かを判断する。大きい場合は、ステップS74に進められ、大きくない場合は、ステップS76に進められる。
ステップS74で、CPU21は、カメラ傾き角度Kθを0に設定する。ステップS75で、CPU21は、NG表示パラメータDISを1に設定する。すなわち、あおり角度φが正確な傾き補正処理が出来ないほど大きいため、傾き補正処理を行わずに警告表示を行う。
ステップS76で、CPU21は、第2デジタル加速度Aavの絶対値が、第1デジタル加速度Aahの絶対値以上に大きいか否かを判断する。大きくない場合には、ステップS77に進められ、大きい場合には、ステップS80に進められる。
ステップS77で、CPU21は、第1デジタル加速度Aahが0以上であるか否かを判断する。0以上でない場合には、撮像装置1が第1縦位置姿勢状態に近い状態で保持されているとして、ステップS78で、CPU21は、カメラ傾き角度Kθを、第2デジタル加速度Aavと補完係数ZZとの積についてアークサイン変換したものに、負符号を付した値に設定する。0以上である場合には、撮像装置1が第2縦位置姿勢状態に近い状態で保持されているとして、ステップS79で、CPU21は、カメラ傾き角度Kθを、第2デジタル加速度Aavと補完係数ZZとの積についてアークサイン変換した値に設定する。
ステップS80で、CPU21は、第2デジタル加速度Aavが0以上であるか否かを判断する。0以上でない場合には、撮像装置1が倒立横位置姿勢状態に近い状態で保持されているとして、ステップS81で、CPU21は、カメラ傾き角度Kθを、第1デジタル加速度Aahと補完係数ZZとの積についてアークサイン変換した値に設定する。0以上である場合には、撮像装置1が正立横位置姿勢状態に近い状態で保持されているとして、ステップS82で、CPU21は、カメラ傾き角度Kθを、第1デジタル加速度Aahと補完係数ZZとの積についてアークサイン変換したものに、負符号を付した値に設定する。
次に、図20のステップS57で行われる可動部30aの移動すべき位置S(横方向成分Sx、第1縦方向成分Syl、第2縦方向成分Syr)の演算処理について、図22のフローチャートを用いて説明する。位置Sの演算が開始されると、ステップS91で、CPU21は、回転量αが、第1角度θ1に負符号を付したものよりも小さいか否かを判断する。小さい場合はステップS92に進められ、小さくない場合はステップS96に進められる。
ステップS92で、CPU21は、回転量αが、第2角度θ2に負符号を付したものよりも小さいか否かを判断する。小さい場合はステップS93に進められ、小さくない場合はステップS95に進められる。
ステップS93で、CPU21は、回転量αを0に補正する。ステップS94で、CPU21は、NG表示パラメータDISを1に設定する。ステップS95で、CPU21は、回転量αを、第1角度θ1に負符号を付したものに補正する。
ステップS96で、CPU21は、回転量αが、第1角度θ1よりも大きいか否かを判断する。大きい場合はステップS97に進められ、大きくない場合はステップS101に進められる。
ステップS97で、CPU21は、回転量αが、第2角度θ2よりも大きいか否かを判断する。大きい場合はステップS98に進められ、大きくない場合はステップS100に進められる。
ステップS98で、CPU21は、回転量αを0に補正する。ステップS99で、CPU21は、NG表示パラメータDISを1に設定する。ステップS100で、CPU21は、回転量αを、第1角度θ1に補正する。
ステップS101で、CPU21は、回転量αに基づいて、位置Sの横方向成分(横方向駆動点DPxの移動位置)Sx、第1縦方向成分(第1縦方向駆動点DPylの移動位置)Syl、及び第2縦方向成分(第2縦方向駆動点DPyrの移動位置)Syrを算出する。
本実施形態では、あおり角度φを考慮して算出したカメラ傾き角度Kθに基づいて、傾き補正処理を行うため、該あおり角度φを考慮しない形態に比べて、高精度に傾き補正処理を行うことが可能になる。また、カメラ傾き角度Kθの絶対値、またはあおり角度φの少なくとも一方が大きく、正確に傾き補正処理を行えないと判断した場合には、傾き補正処理を行わずに、かかる旨の警告表示(NG表示)を行って使用者に知らせる。このため、傾き補正処理が行えるか否かを客観的に知ることが可能になる。なお、NG表示に代えて、傾き補正処理が正確に行えない旨の警告音の出力によって使用者に知らせる形態であってもよい。
なお、撮像装置1は、磁界変化検出素子としてホール素子を利用したホール素子部44aによる位置検出を説明したが、磁界変化検出素子として別の検出素子を利用してもよい。具体的には、磁界の変化を検出することにより可動部の位置検出情報を求めることが可能なMIセンサ(高周波キャリア型磁界センサ)、または磁気共鳴型磁界検出素子、MR素子(磁気抵抗効果素子)であり、ホール素子を利用した本実施形態と同様の効果が得られる。