(57)【要約】【課題】手振れなどの振動による光軸のずれを光学的に補正する方式において、その補正精度を高める。【解決手段】振動成分信号生成部３０は、撮像装置５００の振動を検出する振動検出素子６０の出力信号に応じて撮像装置５００の移動量を示す振動成分信号を生成する。駆動信号生成部４０は、駆動されるレンズ７０の位置を検出する位置検出素子８０の出力信号および振動成分信号に基づいて、レンズ７０の位置を補正すべく駆動素子９０を制御するための駆動信号を生成する。リミット回路３８は、振動成分信号にレンズ７０の楕円状の可動範囲に対応するリミットを設定する。【選択図】図１
2012194506.tif 000002
【特許請求の範囲】
【請求項１】
振動に応じて撮像装置の光軸を補正する振動補正制御回路であって、
前記撮像装置の振動を検出する振動検出素子の出力信号に応じて前記撮像装置の移動量を示す振動成分信号を生成する振動成分信号生成部と、
駆動されるレンズの位置を検出する位置検出素子の出力信号および前記振動成分信号に基づいて、前記レンズの位置を補正すべく駆動素子を制御するための駆動信号を生成する駆動信号生成部と、を備え、
前記振動成分信号生成部は、前記振動成分信号に前記レンズの楕円状の可動範囲に対応するリミットを設定するリミット回路を含むことを特徴とする振動補正制御回路。
【請求項２】
前記リミット回路は、前記振動成分信号が前記レンズの楕円状の可動範囲を超えたとき、その振動成分を示す一次方程式と、前記レンズの楕円状の可動範囲を示す楕円方程式の連立方程式を解くことにより、前記振動成分信号にリミットを設定することを特徴とする請求項１に記載の振動補正制御回路。
【請求項３】
前記リミット回路は、前記連立方程式を解くための除算回路および平方根回路を含み、  前記除算回路および前記平方根回路は、それぞれ筆算アルゴリズムにより除算および平方根演算を実行する回路であることを特徴とする請求項２に記載の振動補正制御回路。
【請求項４】
前記振動成分信号のｘ軸成分およびｙ軸成分の値が、単位期間ごとに（ｘ（ｎ），ｙ（ｎ））、（ｘ（ｎ＋１），ｙ（ｎ＋１））、・・・と遷移するとき、
前記リミット回路は、ｘ（ｎ＋１）のリミット値を（ｘ（ｎ），ｙ（ｎ））から算出し、ｙ（ｎ＋１）のリミット値を（ｘ（ｎ＋１），ｙ（ｎ））から算出することを特徴とする請求項３に記載の振動補正制御回路。
【請求項５】
振動に応じて撮像装置の光軸を補正する振動補正制御回路であって、
前記撮像装置の振動を検出する振動検出素子の出力信号に応じて前記撮像装置の移動量を示す振動成分信号を生成する振動成分信号生成部と、
駆動される撮像素子の位置を検出する位置検出素子の出力信号および前記振動成分信号に基づいて、前記撮像素子の位置を補正すべく駆動素子を制御するための駆動信号を生成する駆動信号生成部と、を備え、
前記振動成分信号生成部は、前記振動成分信号に前記撮像素子の楕円状の可動範囲に対応するリミットを設定するリミット回路を含むことを特徴とする振動補正制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手振れなどの振動による光軸のずれを補正する振動補正制御回路に関する。
【背景技術】
【０００２】
デジタルスチルカメラやデジタルムービーカメラ（以下、総称して単にデジタルカメラと表記する）が一般のユーザにも広く普及している。カメラの取り扱いに不慣れなユーザは、撮影時に手振れをしやすい。また、デジタルカメラは、携帯電話機、スマートフォン、ＰＤＡ（Personal Digital Assistant）などの携帯機器に広く組み込まれている。このような携帯機器に組み込まれたカメラは片手で撮影されるタイプのものが多い。片手で撮影される場合、両手で撮影される場合より手振れが生じやすい。
【０００３】
手振れを補正するための手法に光学式手振れ補正がある。光学式手振れ補正はカメラの振動を検出する振動検出素子と、その振動によるブレを打ち消す方向にレンズの位置を動かす駆動素子によって、光軸を補正する手法である。一般的に、補正枠内にバネでレンズを取り付け、そのレンズの位置をＸ軸アクチュエータおよびＹ軸アクチュエータでブレを打ち消す方向に動かす機構が用いられる（たとえば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１９２８４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した機構を用いた光学式手振れ補正では、補正枠を超えてレンズを動かすことはできない。そこで、振動検出素子から出力される信号にリミッターを設定する必要がある。本発明者はこのリミッターを改良することにより、従来の光学式手振れ補正と比較し、補正精度を高める手法を見出した。
【０００６】
本発明はこうした状況に鑑みなされたものであり、その目的は、手振れなどの振動による光軸のずれを光学的に補正する方式において、その補正精度を高める技術を提供することにある。
【課題を解決するための手段】
【０００７】
本発明のある態様の振動補正制御回路は、振動に応じて撮像装置の光軸を補正する振動補正制御回路であって、撮像装置の振動を検出する振動検出素子の出力信号に応じて撮像装置の移動量を示す振動成分信号を生成する振動成分信号生成部と、駆動されるレンズの位置を検出する位置検出素子の出力信号および振動成分信号に基づいて、レンズの位置を補正すべく駆動素子を制御するための駆動信号を生成する駆動信号生成部と、を備える。振動成分信号生成部は、振動成分信号にレンズの楕円状の可動範囲に対応するリミットを設定するリミット回路を含む。
【０００８】
本発明の別の態様もまた、振動補正制御回路である。この振動補正制御回路は、振動に応じて撮像装置の光軸を補正する振動補正制御回路であって、撮像装置の振動を検出する振動検出素子の出力信号に応じて撮像装置の移動量を示す振動成分信号を生成する振動成分信号生成部と、駆動される撮像素子の位置を検出する位置検出素子の出力信号および振動成分信号に基づいて、撮像素子の位置を補正すべく駆動素子を制御するための駆動信号を生成する駆動信号生成部と、を備える。振動成分信号生成部は、振動成分信号に撮像素子の楕円状の可動範囲に対応するリミットを設定するリミット回路を含む。
【発明の効果】
【０００９】
本発明によれば、手振れなどの振動による光軸のずれを光学的に補正する方式において、その補正精度を高めることができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態に係る振動補正制御回路を搭載した撮像装置の構成を示すブロック図である。
【図２】図２（ａ）、（ｂ）は、リミット回路によるリミット値の設定方法を説明するための図である。
【図３】四角リミッターを採用する場合のリミット回路の構成を示す図である。
【図４】楕円リミッターを採用する場合の基本アルゴリズムを説明するための図である。
【図５】図４をより一般化した図である。
【図６】上記計算例をまとめた表を示す図である。
【図７】上記（式３）および（式４）を解くための具体的な回路構成を示す図である。
【発明を実施するための形態】
【００１１】
図１は、本発明の実施の形態に係る振動補正制御回路１００を搭載した撮像装置５００の構成を示すブロック図である。撮像装置５００は、レンズ７０、駆動素子９０、位置検出素子８０、振動検出素子６０、振動補正制御回路１００、撮像素子２００および画像処理部３００を備える。
【００１２】
振動補正制御回路１００は、ＡＤＣ (Analog to Digital Converter)２０、振動成分信号生成部３０、駆動信号生成部４０およびＤＡＣ(Digital to Analog Converter)５０を有する。振動成分信号生成部３０は、ＨＰＦ(High Pass Filter)３２、積分回路３４、センタリング処理回路３６およびリミット回路３８を含む。駆動信号生成部４０は、加算回路４２およびサーボ回路４４を含む。
【００１３】
撮像素子２００は、光学部品であるレンズ７０を透過した光信号を電気信号に変換する。撮像素子２００にはＣＣＤ(Charge Coupled Device)センサまたはＣＭＯＳ(Complementary Metal Oxide Semiconductor）イメージセンサを採用することができる。画像処理部３００は、撮像素子２００により撮像された画像信号に対し、各種加工を施したり、圧縮符号化したりする。
【００１４】
駆動素子９０はレンズ７０を駆動する。位置検出素子８０はレンズ７０の位置を検出する。振動検出素子６０は撮像装置５００に加わる振動を検出する。振動成分信号生成部３０は、振動検出素子６０の出力信号に応じて撮像装置５００の移動量を求め、その移動量を補正するための振動成分信号を生成する。撮像装置５００の移動量は、振動検出素子６０の出力信号を積分して求めることができる。
【００１５】
駆動信号生成部４０は、位置検出素子８０の出力信号および振動成分信号生成部３０により生成された信号に基づいて、レンズ７０の位置を補正すべく駆動素子９０を制御するための駆動信号を生成する。駆動素子９０は、この駆動信号に基づき、レンズ７０の光軸と撮像素子２００の中心とが一致するようレンズ７０の位置を制御する。
【００１６】
以下、振動補正制御回路１００の構成および動作をより具体的に説明する。以下、振動検出素子６０にジャイロセンサ６０ａ、位置検出素子８０にホール素子８０ａ、駆動素子９０にボイスコイルモータ９０ａを採用する例で説明する。ジャイロセンサ６０ａは撮像装置５００を持つユーザの手振れによる振動を角速度として検出するセンサである。
【００１７】
ジャイロセンサ６０ａは、撮像装置５００のＸＹの２軸方向の角速度を検出する。ジャイロセンサによって得られたアナログ形式の角速度信号は、図示しない増幅回路により増幅された後、ＡＤＣ２０に出力される。ＡＤＣ２０は、当該増幅回路により増幅されたアナログ形式の角速度信号をデジタル形式の角速度信号に変換する。ＡＤＣ２０から出力された角速度信号は、振動成分信号生成部３０に出力される。
【００１８】
当該角速度信号はＨＰＦ３２に入力される。ＨＰＦ３２は、ジャイロセンサ６０ａから出力された角速度信号のうち、手振れによる周波数成分より低い周波数成分を除去する。一般的に、手振れによる周波数成分は、１〜２０Ｈｚであるため、たとえば、角速度信号から０．７Ｈｚ以下の周波数成分が除去される。
【００１９】
積分回路３４は、ＨＰＦ３２から出力される角速度信号を積分して、撮像装置５００の移動量を示す振動成分信号を生成する。たとえば、積分回路３４は、図示しないデジタルフィルタを含んで構成することが好適であり、図示しないレジスタに設定されたフィルタ係数に応じたフィルタ処理を行うことによって振動成分信号、つまり撮像装置５００の移動量を求める。
【００２０】
センタリング処理回路３６は、積分回路３４から出力される振動成分信号を原点方向にセンタリングする。センタリング処理回路３６は、ハイパスフィルタで構成することが好適である。なお、センタリング処理回路３６は静止画の撮影時にはオフされる。リミット回路３８は、センタリング処理回路３６から出力された振動成分信号に、レンズ７０の楕円状の可動範囲に対応するリミットを設定する。リミット回路３８の詳細な構成および動作は後述する。リミット回路３８から出力される振動成分信号は、駆動信号生成部４０（より厳密には加算回路４２）に出力される。
【００２１】
ホール素子８０ａは、ホール効果を利用した磁気センサであり、レンズ７０のＸ軸およびＹ軸方向の位置検出素子として機能する。ホール素子８０ａによって得られたレンズ７０の位置情報を含むアナログ形式の位置信号は、図示しない増幅回路により増幅された後、ＡＤＣ２０に出力される。ＡＤＣ２０は、当該増幅回路により増幅されたアナログ形式の位置信号をデジタル形式の位置信号に変換する。ＡＤＣ２０は上記アナログ形式の角速度信号および上記アナログ形式の位置信号を時分割でデジタルの信号に変換する。なお、ＡＤＣ２０は振動補正制御回路１００内に搭載されるのではなく、モジュール化されたジャイロセンサ６０ａおよびホール素子８０ａにそれぞれ搭載されていてもよい。
【００２２】
ＡＤＣ２０から出力された位置信号は駆動信号生成部４０に出力される。駆動信号生成部４０の加算回路４２には、当該位置信号および振動成分信号生成部３０から出力された振動成分信号が入力される。加算回路４２は、入力された位置信号と振動成分信号とを加算し、サーボ回路４４に出力する。サーボ回路４４は、加算回路４２からの出力信号に応じて、ボイスコイルモータ９０ａの駆動を制御するための駆動信号を生成する。なお、サーボ回路４４において、サーボ制御用のデジタルフィルタを用いたフィルタ処理が行われてもよい。
【００２３】
ＤＡＣ５０は、サーボ回路４４から出力されたデジタル形式の駆動信号をアナログ形式の駆動信号に変換する。当該駆動信号は、図示しない増幅回路により増幅された後、ボイスコイルモータ９０ａに出力される。ボイスコイルモータ９０ａは、当該駆動信号に基づいてレンズ７０のＸ軸およびＹ軸方向の位置を移動させる。
【００２４】
以下、本実施の形態に係る撮像装置５００の動作を手振れがない場合と手振れがある場合に分けて説明する。
【００２５】
（手振れがない場合の動作）
手振れがない場合、撮像装置５００に角速度が生じないため、振動成分信号生成部３０が出力する信号は“０”となる。ボイスコイルモータ９０ａによって駆動されるレンズ７０の位置は、その光軸と撮像装置５００に備えられる撮像素子２００の中心とが一致する。この状態では、ホール素子８０ａから出力される位置信号は“０”であり、サーボ回路４４は、現在のレンズ７０の位置を維持するための駆動信号をボイスコイルモータ９０ａに出力する。
【００２６】
また、レンズ７０の光軸と撮像素子２００の中心とが一致しない場合、ホール素子８０ａから出力される位置信号は“０”と異なる値となり、サーボ回路４４は、その値に応じて、位置信号の値を“０”にするための駆動信号をボイスコイルモータ９０ａに出力する。この動作を繰り返すことによって、レンズ７０の光軸と撮像素子２００の中心とが一致するように、レンズ７０の位置が制御される。
【００２７】
（手振れがある場合の動作）
上述したように、ボイスコイルモータ９０ａによって駆動されるレンズ７０の位置は、その光軸と撮像素子２００の中心とが一致するよう制御される。両者が一致している状態では、ホール素子８０ａから出力される位置信号は“０”である。
【００２８】
一方、手振れによって撮像装置５００が移動するため、振動成分信号生成部３０は、ジャイロセンサ６０ａにより検出された角速度信号に基づいて、撮像装置５００の移動量を示す振動成分信号を駆動信号生成部４０に出力する。
【００２９】
加算回路４２は、ホール素子８０ａが出力する“０”の位置信号と、振動成分信号生成部３０が出力する“０”以外の振動成分信号とを加算する。サーボ回路４４は、この信号に応じて、ボイスコイルモータ９０ａの駆動信号を生成する。この駆動信号はレンズ７０を移動させる補正信号となる。ボイスコイルモータ９０ａは、サーボ回路４４が出力する補正信号に基づいてレンズ７０を移動させる。これにより、撮像素子２００は手振れによる被写体のぶれを抑制した信号を得ることができる。この制御を繰り返すことによって、手振れ補正制御が実現される。
【００３０】
図２（ａ）、（ｂ）は、リミット回路３８によるリミット値の設定方法を説明するための図である。上述したように、リミット回路３８はレンズ７０の可動範囲（すなわち、アクチュエータの駆動範囲）に収まるようにセンタリング処理回路３６から出力される振動成分信号にリミット値を設定する。リミット値を固定値にする場合、レンズ７０の駆動範囲はＸ、Ｙ平面上において四角になる。
【００３１】
図２（ａ）は、四角リミッターＬｓを採用した場合のレンズ７０の可動範囲を示す図である。四角リミッターＬｓはＸ軸の正負のリミット値、Ｙ軸の正負のリミット値の四つの固定値でリミット値を設定できる。ただし、レンズ７０の形状は楕円（円を含む）状であり、このような四角リミッターＬｓは可動範囲に制限ができ非効率である。
【００３２】
図２（ｂ）は、楕円リミッターＬｅを採用した場合のレンズ７０の可動範囲を示す図である。楕円（図２（ｂ）では真円の例を描いている）リミッターＬｅを採用すると四角リミッターＬｓを採用する場合と比較し、レンズ７０の可動範囲が広くなることが分かる。
【００３３】
図３は、四角リミッターを採用する場合のリミット回路３８の構成を示す図である。当該リミット回路３８は、第１レジスタＲ１、比較器Ｃ１および第３レジスタＲ３を含む。第１レジスタＲ１には値（±Ｘｎ）が入力され、第１レジスタＲ１は所定のタイミングで保持している値（±Ｘｎ）を比較器Ｃ１に出力する。比較器Ｃ１は第１レジスタＲ１から入力される値（±Ｘｎ）と、リミット値（Ｌｍｔｘ）とを比較し、前者が後者以上のとき、値（±Ｌｍｔｘ）を第２レジスタＲ２に出力し、前者が後者未満のとき、値（±Ｘｎ）を第２レジスタＲ２に出力する。
【００３４】
図４は、楕円リミッターを採用する場合の基本アルゴリズムを説明するための図である。楕円リミッターを採用する場合において、センタリング処理回路３６から出力される振動成分信号がレンズ７０の楕円状の可動範囲を超えたとき、リミット回路３８は、その振動成分を示す一次方程式と、レンズ７０の楕円状の可動範囲を示す楕円方程式の連立方程式を解くことにより、上記振動成分信号にリミット値を設定する。
【００３５】
図４に示すようにＡ（ｘＡ，ｙＡ）点をＢ（ｘＢ，ｙＢ）点に移動させるための楕円リミッターを考える。すなわち、楕円リミッターから外れた点を原点方向に収束させ、楕円リミッターまで移動させる。なお、楕円リミッターを設定する際、アクチュエータの物理的駆動範囲が考慮される。
【００３６】
交点Ｂの値は下記（式１）および（式２）から導かれる。
ｘ２／ａ２＋ｙ２／ｂ２＝１  …（式１）
ｙ＝ｙＡ／ｘＡ・ｘ        …（式２）
【００３７】
上記（式１）および（式２）を解くと、下記（式３）および（式４）が導かれる。
ｘ２＝ａ２ｂ２ｘＡ２／（ｂ２ｘＡ２＋ａ２ｙＡ２）
∴ｘ＝±√（ａ２ｂ２ｘＡ２／（ｂ２ｘＡ２＋ａ２ｙＡ２））  …（式３）
ｙ２＝ａ２ｂ２ｙＡ２／（ｂ２ｘＡ２＋ａ２ｙＡ２）
∴ｙ＝±√（ａ２ｂ２ｙＡ２／（ｂ２ｘＡ２＋ａ２ｙＡ２））  …（式４）
【００３８】
図５は、図４をより一般化した図である。上記（式３）および（式４）を演算するにあたって、楕円半径のａ２やｂ２が多用されており、演算量削減のため、ａ２、ｂ２を固定値として設定する。上記（式３）および（式４）の解として、図５に示すＢ点、Ｂ２点、Ｂ３点、Ｂ４点の四つが存在するが、第２象限〜第４象限は第１象限の鏡像であるため、リミッターの設定値としては第１象限の解のみを扱う。求めた解を、リミット回路３８のリミット値として毎回書き換えを行い、楕円リミッター動作を行う。なお、Ａ２点のように楕円リミッター内の値に対しては、リミット回路３８の出力値はＡ２点の値となる。
【００３９】
以下、上述した演算処理を実行する際の工夫について説明する。センタリング処理回路３６から出力される振動成分信号のｘ軸成分およびｙ軸成分の値が、単位期間ごとに（ｘ（ｎ），ｙ（ｎ））、（ｘ（ｎ＋１），ｙ（ｎ＋１））、・・・と遷移するとき、リミット回路３８は、ｘ（ｎ＋１）のリミット値を（ｘ（ｎ），ｙ（ｎ））から算出し、ｙ（ｎ＋１）のリミット値を（ｘ（ｎ＋１），ｙ（ｎ））から算出する。なお、ｎは整数である。
【００４０】
以下、より具体的に説明する。振動成分信号のｘ軸成分およびｙ軸成分の動きが、（ｘ０，ｙ０）、（ｘ１，ｙ１）、（ｘ２，ｙ２）と遷移するとき、原則的に、ｙ１のリミット値は（ｘ１，ｙ１）から、ｘ２のリミット値は（ｘ２，ｙ１）から演算されるべきである。しかしながら、上記（式３）および（式４）から分かるように、リミット値の演算は、除算と平方根の演算が必要であり、リアルタイム処理（１クロック処理）では回路規模が増大する。また、筆算アルゴリズムによる処理（数１０クロック処理）では、所定の時間内に処理が完了しない。当該クロックは振動補正制御回路１００で使用されているシステムクロックを指す。なお、筆算アルゴリズムとは加算、減算、ビットシフト、比較といった基本演算を繰り返すことにより、乗算、除算、平方根といった高度な演算を実現するものである。
【００４１】
そこで、本実施の形態に係るリミッターの演算処理では、ｘ軸成分およびｙ軸成分の動きが連続していることを利用して、前置を用いてリミット値を計算する。より具体的には、ｙ１のリミット値は（ｘ１，ｙ０）から演算し、ｘ２のリミット値は（ｘ１，ｙ１）から演算する。これにより、ｙ１のリミット値はｘ１の確定後、ｙ１が確定するまでに演算が終了すればよく、ｘ２のリミット値はｙ１の確定後、ｘ２が確定するまでに演算が終了すればよい。このように、前置を用いることにより演算処理の時間を確保できる。したがって、除算や平方根の演算を筆算アルゴリズムにより実現でき、回路規模の増大を抑制しつつ、精度が低下しない楕円リミッターを提供できる。
【００４２】
以下、リミット値の具体的な計算例を挙げる。ａ２、ｂ２、Ａ０点、Ａ１点、Ａ２点、Ａ３点に関する以下の前提をもとに、Ｂ１点、Ｂ２点、Ｂ３点のリミット値を計算する。
【００４３】
ａ２＝０．８２＝０．６４
ｂ２＝０．５２＝０．２５
Ａ０（−０．１、０．９）
Ａ１（  ０．０、１．０）
Ａ２（  ０．２、０．８）
Ａ３（  ０．３、０．７）
【００４４】
ＸＬｍｔ１＝√（ａ２ｂ２ｘＡ０２／（ｂ２ｘＡ０２＋ａ２ｙＡ０２））＝√（０．６４＊０．２５＊（−０．１）２／（０．２５＊（−０．１）２＋０．６４＊（０．９）２））＝√（０．００１６／０．５２０９）＝０．０５５４
ＹＬｍｔ１＝√（ａ２ｂ２ｙＡ０２／（ｂ２ｘＡ１２＋ａ２ｙＡ０２））＝√（０．６４＊０．２５＊（０．９）２／（０．２５＊（０．０）２＋０．６４＊（０．９）２））＝√（０．１２９６／０．５１８４）＝０．５０
【００４５】
ＸＬｍｔ２＝√（ａ２ｂ２ｘＡ１２／（ｂ２ｘＡ１２＋ａ２ｙＡ１２））＝√（０．６４＊０．２５＊（０．０）２／（０．２５＊（０．０）２＋０．６４＊（１．０）２））＝√（０．０／０．６４）＝０．０
ＹＬｍｔ２＝√（ａ２ｂ２ｙＡ１２／（ｂ２ｘＡ２２＋ａ２ｙＡ１２））＝√（０．６４＊０．２５＊（１．０）２／（０．２５＊（０．２）２＋０．６４＊（１．０）２））＝√（０．１６／０．６５）＝０．４９６
【００４６】
ＸＬｍｔ３＝√（ａ２ｂ２ｘＡ２２／（ｂ２ｘＡ２２＋ａ２ｙＡ２２））＝√（０．６４＊０．２５＊（０．２）２／（０．２５＊（０．２）２＋０．６４＊（０．８）２））＝√（０．００６４／０．４１９６）＝０．１２４
ＹＬｍｔ３＝√（ａ２ｂ２ｙＡ２２／（ｂ２ｘＡ３２＋ａ２ｙＡ２２））＝√（０．６４＊０．２５＊（０．８）２／（０．２５＊（０．３）２＋０．６４＊（０．８）２））＝√（０．１０２４／０．４３２１）＝０．４８７
【００４７】
図６は、上記計算例をまとめた表を示す図である。
【００４８】
図７は、上記（式３）および（式４）を解くための具体的な回路構成を示す図である。当該回路はリミット回路３８に搭載される。当該回路は、フィルタ回路、除算回路Ｄ１および平方根回路Ｓ１を備える。当該フィルタ回路は、第３レジスタＲ３、第１乗算器Ｍ１、第４レジスタＲ４、第２乗算器Ｍ２、第５レジスタＲ５、第５乗算器Ｍ５、第９レジスタＲ９、第６レジスタＲ６、第３乗算器Ｍ３、第７レジスタＲ７、第４乗算器Ｍ４、第８レジスタＲ８、加算器ＡＤ１および第１０レジスタＲ１０を含む。
【００４９】
なお、以下の説明ではｘＡ＝ｘ０、ｙＡ＝ｙ０とする。第３レジスタＲ３にｘ０、ｙ０が入力され、第３レジスタＲ３は所定のタイミングで保持しているｘ０、ｙ０を第１乗算器Ｍ１に出力する。第１乗算器Ｍ１はｘ０、ｙ０を二乗し、ｘ０２、ｙ０２を第４レジスタＲ４に出力する。第４レジスタＲ４はｘ０２、ｙ０２を一時保持し、所定のタイミングで第２乗算器Ｍ２に出力する。第２乗算器Ｍ２は、ｘ０２、ｙ０２にｂ２、ａ２をそれぞれ乗算し、第５レジスタＲ５に出力する。第５レジスタＲ５は、ｂ２ｘ０２、ａ２ｙ０２を一時保持し、所定のタイミングで第５乗算器Ｍ５および加算器ＡＤ１にそれぞれ出力する。
【００５０】
第５乗算器Ｍ５は、ｂ２ｘ０２、ａ２ｙ０２にａ２、ｂ２をそれぞれ乗算し、第９レジスタＲ９に出力する。第９レジスタＲ９は、ａ２ｂ２ｘ０２、ｂ２ａ２ｙ０２を一時保持し、所定のタイミングで除算回路Ｄ１に出力する。上記（式３）および（式４）に示したようにａ２ｂ２ｘ０２、ｂ２ａ２ｙ０２は、除算する際の被除数（分子）となる。
【００５１】
第６レジスタＲ６にｙ０、ｘ０が入力され、第６レジスタＲ６は所定のタイミングで保持しているｙ０、ｘ０を第３乗算器Ｍ３に出力する。第３乗算器Ｍ３はｙ０、ｘ０を二乗し、ｙ０２、ｘ０２を第７レジスタＲ７に出力する。第７レジスタＲ７はｙ０２、ｘ０２を一時保持し、所定のタイミングで第４乗算器Ｍ４に出力する。第４乗算器Ｍ４は、ｙ０２、ｘ０２にａ２、ｂ２をそれぞれ乗算し、第８レジスタＲ８に出力する。第８レジスタＲ８は、ａ２ｙ０２、ｂ２ｘ０２を一時保持し、所定のタイミングで加算器ＡＤ１に出力する。
【００５２】
加算器ＡＤ１はｂ２ｘ０２、ａ２ｙ０２とａ２ｙ０２、ｂ２ｘ０２とをそれぞれ加算し、第１０レジスタＲ１０に出力する。第１０レジスタＲ１０は、ｂ２ｘ０２＋ａ２ｙ０２、ｂ２ｘ０２＋ａ２ｙ０２を一時保持し、所定のタイミングで除算回路Ｄ１に出力する。上記（式３）および（式４）に示したようにｂ２ｘ０２＋ａ２ｙ０２、ｂ２ｘ０２＋ａ２ｙ０２は、除算する際の除数（分母）となる。
【００５３】
除算回路Ｄ１は、ａ２ｂ２ｘ０２、ｂ２ａ２ｙ０２を（ｂ２ｘ０２＋ａ２ｙ０２）、（ｂ２ｘ０２＋ａ２ｙ０２）で除算する。除算回路Ｄ１は除算結果を平方根回路Ｓ１に出力する。平方根回路Ｓ１は、当該除算結果の平方根を演算し、リミット値として出力する。なお、除算回路Ｄ１および平方根回路Ｓ１は筆算アルゴリズムを実現するための筆算回路で構成される。
【００５４】
以上説明したように本実施の形態によれば、リミッターを楕円に設定することにより、手振れなどの振動による光軸のずれを光学的に補正する方式において、その補正精度を高めることができる。すなわち、リミッターを四角に設定する場合と比較し、レンズ７０の可動範囲を広めることができる。
【００５５】
以上、本発明をいくつかの実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００５６】
なお、上述した実施の形態では、振動検出素子６０、位置検出素子８０および駆動素子９０をそれぞれジャイロセンサ６０ａ、ホール素子８０ａおよびボイスコイルモータ９０ａとする例を説明した。本発明はそれに限られるものではない。たとえば、振動検出素子６０は直線方向の加速度を検出するセンサを用いて、加速度信号に基づいて撮像装置５００の振動を検出する構成にすることができる。また、駆動素子９０はピエゾ素子やステッピングモータなどを用いることができる。位置検出素子８０はＭＲ素子またはフォトスクリーンダイオードなどを用いることができる。
【００５７】
また、以上の実施の形態では、レンズを駆動させて手振れ補正処理を行うレンズシフト式としたが、本発明はこれに限られるものではない。たとえば、本発明は撮像装置５００のブレに応じて撮像素子２００をシフトさせる撮像素子シフト方式にも適用できる。このとき、位置検出素子８０は撮像素子２００の位置を検出し、駆動素子９０は撮像素子２００を駆動する。
【符号の説明】
【００５８】
１００  振動補正制御回路、  ３０  振動成分信号生成部、  ３８  リミット回路、  ４０  駆動信号生成部、  ６０  振動検出素子、  ７０  レンズ、  ８０  位置検出素子、  ９０  駆動素子、  ２００  撮像素子、  ５００  撮像装置、  Ｄ１  除算回路、  Ｓ１  平方根回路。
【図１】
2012194506.tif 000003
【図３】
2012194506.tif 000004
【図４】
2012194506.tif 000005
【図５】
2012194506.tif 000006
【図６】
2012194506.tif 000007
【図７】
2012194506.tif 000008
【図２】
2012194506.tif 000009