(57)【要約】【課題】光学的なブレ補正動作を行うか否かにかかわらず、常に画像回復を行うことができるようにしても、膨大なデータを保持する必要がなく、また、全ての撮影条件に最適な画像回復を行うことができるブレ補正カメラシステム、ブレ補正カメラ、画像回復装置、及び、ブレ補正プログラムを提供する。【解決手段】ＶＲＳＷ１３０が光学的なブレ補正を行う側に切り替わっているときには、基準値を保存し、ＶＲＳＷ１３０が光学的なブレ補正を行わない側に切り替わっているときには振動検出信号を保存し、これら基準値又は振動検出信号に基づいて、点像関数の演算を行う。また、ＶＲＳＷ１３０の状態に応じて画像回復の処理内容を変更する。【選択図】図４
2005252760.tif 000002
【特許請求の範囲】
【請求項１】
振動を検出して振動検出信号を出力する振動検出部と、
前記振動検出信号の基準値を演算する基準値演算部と、
前記振動検出信号及び前記基準値に基づいて駆動され、像ブレを補正するブレ補正光学系と、
前記ブレ補正光学系を含む撮影光学系により形成された像を撮像する撮像部と、
前記基準値、又は、前記振動検出信号を用いて点像分布関数を演算する点像分布関数演算部と、
前記撮像部により撮像された画像に対して前記点像分布関数で画像処理することにより画像回復を行い像ブレを補正する画像回復演算部と、
前記点像分布関数演算部による点像分布関数の演算を前記基準値を用いて行うか、前記振動検出信号を用いて行うかを切り替える振動情報切り替え部と、
前記点像分布関数演算部が演算に使用する前記基準値又は前記振動検出信号を保存する振動情報保存部と、
を備え、
前記振動情報保存部は、前記振動情報切り替え部が前記基準値を用いる側に切り替わっているときには前記基準値を保存し、振動情報切り替え部が前記振動検出信号を用いる側に切り替わっているときには前記振動検出信号を保存すること、
を特徴とするブレ補正カメラシステム。
【請求項２】
振動を検出して振動検出信号を出力する振動検出部と、
前記振動検出信号の基準値を演算する基準値演算部と、
前記振動検出信号及び前記基準値に基づいて駆動され、像ブレを補正するブレ補正光学系と、
前記ブレ補正光学系を含む撮影光学系により形成された像を撮像する撮像部と、
前記基準値、又は、前記振動検出信号を用いて点像分布関数を演算する点像分布関数演算部と、
前記撮像部により撮像された画像に対して前記点像分布関数を使用した空間周波数フィルタにより画像回復を行い像ブレを補正する画像回復演算部と、
前記点像分布関数演算部による点像分布関数の演算を前記基準値を用いて行うか、前記振動検出信号を用いて行うかを切り替える振動情報切り替え部と、
を備え、
前記画像回復演算部は、前記振動情報切り替え部が前記基準値を用いる側に切り替わっているか、前記振動検出信号を用いる側に切り替わっているかにより前記空間周波数フィルタを変更すること、
を特徴とするブレ補正カメラシステム。
【請求項３】
請求項２に記載のブレ補正カメラシステムにおいて、
前記画像回復演算部は、前記空間周波数フィルタとしてウィナーフィルタを用い、前記振動情報切り替え部が前記基準値を用いる側に切り替わっているか、前記振動検出信号を用いる側に切り替わっているかにより前記ウィナーフィルタの定数を変更すること、
を特徴とするブレ補正カメラシステム。
【請求項４】
請求項３に記載のブレ補正カメラシステムにおいて、
前記画像回復演算部は、前記振動情報切り替え部が前記基準値を用いる側に切り替わっているときに用いる前記ウィナーフィルタの定数よりも、前記振動情報切り替え部が前記振動検出信号を用いる側に切り替わっているときに用いる前記ウィナーフィルタの定数を大きくすること、
を特徴とするブレ補正カメラシステム。
【請求項５】
請求項４に記載のブレ補正カメラシステムにおいて、
前記画像回復演算部が前記振動情報切り替え部が前記基準値を用いる側に切り替わっているときに用いる前記ウィナーフィルタの定数と前記振動情報切り替え部が前記振動検出信号を用いる側に切り替わっているときに用いる前記ウィナーフィルタの定数との差は、前記ブレ補正光学系を駆動する場合のブレ補正効果が大きいほど差が大きいこと、
を特徴とするブレ補正カメラシステム。
【請求項６】
請求項３に記載のブレ補正カメラシステムにおいて、
前記画像回復演算部は、前記ウィナーフィルタの定数を任意に変更可能であること、
を特徴とするブレ補正カメラシステム。
【請求項７】
請求項６に記載のブレ補正カメラシステムにおいて、
前記画像回復演算部は、画像回復後の結果に応じて何回でも前記ウィナーフィルタの定数を任意に変更可能であること、
を特徴とするブレ補正カメラシステム。
【請求項８】
請求項１から請求項７までのいずれか１項に記載のブレ補正カメラシステムにおいて、
前記振動情報切り替え部は、前記ブレ補正光学系によるブレ補正動作を行うか否かを切り替えるブレ補正動作設定部の設定に応じて前記点像分布関数演算部による点像分布関数の演算方法を切り替え、前記ブレ補正光学系によるブレ補正動作を行うときには、前記前記基準値を用いる側に切り替わり、前記ブレ補正光学系によるブレ補正動作を行わないときには、前記振動検出信号を用いる側に切り替わること、
を特徴とするブレ補正カメラシステム。
【請求項９】
振動を検出して振動検出信号を出力する振動検出部と、
前記振動検出信号の基準値を演算する基準値演算部と、
前記振動検出信号及び前記基準値に基づいて駆動され、像ブレを補正するブレ補正光学系と、
前記ブレ補正光学系を含む撮影光学系により形成された像を撮像する撮像部と、
前記基準値又は前記振動検出信号を保存する振動情報保存部と、
前記振動情報保存部に前記基準値を保存するか前記振動検出信号を保存するかを切り替える振動情報切り替え部と、
を備えるブレ補正カメラ。
【請求項１０】
外部との通信及び／又は媒体を介して原画像データを受け取るデータ入力部と、
前記原画像データに対して点像分布関数を使用した空間周波数フィルタにより画像回復を行い像ブレを補正する画像回復演算部と、
を備えた画像回復装置であって、
前記画像回復演算部は、前記点像分布関数が基準値を用いて演算されたか、振動検出信号を用いて演算されたかにより前記空間周波数フィルタを変更すること、
を特徴とする画像回復装置。
【請求項１１】
請求項１０に記載の画像回復装置において、
前記画像回復演算部は、前記空間周波数フィルタとしてウィナーフィルタを用い、前記点像分布関数が前記基準値を用いて演算されたか、前記振動検出信号を用いて演算されたかにより前記ウィナーフィルタの定数を変更すること、
を特徴とする画像回復装置。
【請求項１２】
請求項１１に記載の画像回復装置において、
前記画像回復演算部は、前記点像分布関数が前記基準値を用いて演算されたときに用いる前記ウィナーフィルタの定数よりも、前記点像分布関数が前記振動検出信号を用いて演算されたときに用いる前記ウィナーフィルタの定数を大きくすること、
を特徴とする画像回復装置。
【請求項１３】
請求項１２に記載の画像回復装置において、
前記点像分布関数が前記基準値を用いて演算されたときに用いる前記ウィナーフィルタの定数と前記点像分布関数が前記振動検出信号を用いて演算されたときに用いる前記ウィナーフィルタの定数との差は、前記原画像を撮影したときに使用したブレ補正光学系を駆動する場合のブレ補正効果が大きいほど差が大きいこと、
を特徴とする画像回復装置。
【請求項１４】
請求項１１に記載の画像回復装置において、
前記画像回復演算部は、前記ウィナーフィルタの定数を任意に変更可能であること、
を特徴とする画像回復装置。
【請求項１５】
請求項１４に記載の画像回復装置において、
前記画像回復演算部は、画像回復後の結果に応じて何回でも前記ウィナーフィルタの定数を任意に変更可能であること、
を特徴とする画像回復装置。
【請求項１６】
コンピュータに、
外部との通信及び／又は媒体を介して原画像データを受け取るデータ入力機能と、
前記原画像データに対して点像分布関数を使用した空間周波数フィルタにより画像回復を行い像ブレを補正する画像回復演算機能と、
を実現させるためのブレ補正プログラムであって、
前記画像回復演算機能は、前記点像分布関数が基準値を用いて演算されたか、振動検出信号を用いて演算されたかにより前記空間周波数フィルタを変更すること、
を特徴とするブレ補正プログラム。
【請求項１７】
請求項１６に記載のブレ補正プログラムにおいて、
前記画像回復演算機能は、前記空間周波数フィルタとしてウィナーフィルタを用い、前記点像分布関数が前記基準値を用いて演算されたか前記振動検出信号を用いて演算されたかにより前記ウィナーフィルタの定数を変更すること、
を特徴とするブレ補正プログラム。
【請求項１８】
請求項１７に記載のブレ補正プログラムにおいて、
前記画像回復演算機能は、前記点像分布関数が前記基準値を用いて演算されたときに用いる前記ウィナーフィルタの定数よりも、前記点像分布関数が前記振動検出信号を用いて演算されたときに用いる前記ウィナーフィルタの定数を大きくすること、
を特徴とするブレ補正プログラム。
【請求項１９】
請求項１８に記載のブレ補正プログラムにおいて、
前記点像分布関数が前記基準値を用いて演算されたときに用いる前記ウィナーフィルタの定数と前記点像分布関数が前記振動検出信号を用いて演算されたときに用いる前記ウィナーフィルタの定数との差は、前記原画像を撮影したときに使用したブレ補正光学系を駆動する場合のブレ補正効果が大きいほど差が大きいこと、
を特徴とするブレ補正プログラム。
【請求項２０】
請求項１７に記載のブレ補正プログラムにおいて、
前記画像回復演算機能は、前記ウィナーフィルタの定数を任意に変更可能であること、
を特徴とするブレ補正プログラム。
【請求項２１】
請求項２０に記載のブレ補正プログラムにおいて、
前記画像回復演算機能は、画像回復後の結果に応じて何回でも前記ウィナーフィルタの定数を任意に変更可能であること、
を特徴とするブレ補正プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手振れ等による振動を検出し、像のブレを補正するブレ補正カメラに関し、特に、光学的なブレ補正の他に、画像回復に対応したブレ補正カメラシステム、ブレ補正カメラ、画像回復装置、及び、ブレ補正プログラムに関するものである。
【背景技術】
【０００２】
（従来の技術１：光学的なブレ補正装置）
図８は、振れ検出装置を含んだ光学的なブレ補正装置の基本的な構成を示すブロック図である。この図を用いて光学的なブレ補正装置のメカニズムを説明する。
まず、カメラに加えられた振れを角速度センサ１０により検出する。角速度センサ１０は、通常コリオリ力を検出する圧電振動式角速度センサを用いる。角速度センサ１０の出力は、基準値演算部５２へ送信される。
基準値演算部５２は、角速度センサ１０の出力より振れの基準値を演算する。
【０００３】
その後、角速度センサ１０からの振れ信号から基準値を減算し、積分部５４へ送信する。
積分部５４は、角速度の単位で表されている振れ信号を時間積分し、カメラの振れ角度に変換する。
目標駆動位置演算部５６は、積分部５４から送られてきた振れ角度情報にレンズの焦点距離などの情報を加味し、ブレ補正レンズ８０を駆動するための目標駆動位置情報を演算する。
【０００４】
この目標駆動位置情報に応じてブレ補正レンズ８０を動かすために、駆動信号演算部５８は、目標駆動位置情報とブレ補正レンズ８０の位置情報との差をとり、コイル７３へ駆動電流を流す。
【０００５】
ブレ補正レンズ８０を動かすためのアクチュエータは、ヨーク７１、マグネット７２、コイル７３から構成されている。
コイル７３は、ヨーク７１とマグネット７２により形成される磁気回路内に置かれており、コイル７３に電流を流すと、フレミングの左手の法則により、アクチュエータに力が発生する。また、コイル７３は、図８に示すように、ブレ補正レンズ８０を収めている鏡筒８２に取り付けられている。
ブレ補正レンズ８０、及び、鏡筒８２は、光軸Ｉに垂直な方向に動くことができるような構造となっているため、コイルに電流を流すことによりブレ補正レンズ８０を光軸Ｉに直交する方向に駆動させることが可能となる。
【０００６】
ブレ補正レンズ８０の動きは、赤外線発光ダイオード（以下、ＩＲＥＤ）７４、スリット板７５、スリット７６、ＰＳＤ（Ｐｏｓｉｔｉｏｎ  Ｓｅｎｓｉｔｉｖｅ  Ｄｅｖｉｃｅ）７７により構成される光学的位置検出装置によりモニタしている。
ＩＲＥＤ７４が発光した光は、まずスリット７６を通過することにより、光線の幅を絞られ、ＰＳＤ７７へ到達する。ＰＳＤ７７は、その受光面上の光の位置に応じた信号を出力する素子である。
【０００７】
図８に示すとおり、スリット板７５は、鏡筒８２に取り付けられているため、ブレ補正レンズ８０の動きがスリット７６の動きとなり、ＰＳＤ７７の受光面上の光の動きとなる。従って、ＰＳＤ７７の受光面上の光の位置がブレ補正レンズ８０の位置と等価となる。ＰＳＤ７７により検出された信号は、位置信号７８としてフィードバックされる。
このような光学的なブレ補正装置は、主にカメラなどの撮影装置や双眼鏡などの光学装置に内蔵され、これらの装置が手持ちで使用されているときの使用者の手振れによる像ブレを補正するのに有効である。
【０００８】
（従来の技術２：画像回復）
光学的なブレ補正装置の他に像ブレを補正する方法として、画像回復という方法がある。これは、ブレの情報を利用してブレを含む画像を修復して元の画像を得る手法である。以下、その原理について説明する。
今、（ｘ，ｙ）を画面上の位置座標とし、ブレのない時の画像（以下、元画像）をｏ（ｘ，ｙ）、ブレによって劣化した画像（以下、ブレ画像）をｚ（ｘ，ｙ）、ブレによって広がった点像の情報（以下、点像関数）をｐ（ｘ，ｙ）とすると、この３つは、次の関係を満たす。
【０００９】
【数１】
2005252760.tif 000003
【００１０】
ここで、＊は、コンボリューション（畳み込み積分）演算を表すもので、具体的には、以下の式で表される。
【００１１】
【数２】
2005252760.tif 000004
【００１２】
図９は、数１，２を模式的に表した図である。
これをフーリエ変換して空間周波数（ｕ，ｖ）領域にすると、数１，２は、以下の式のようになる。
【００１３】
【数３】
2005252760.tif 000005
【００１４】
ここで、Ｚ（ｕ，ｖ）、Ｏ（ｕ，ｖ）、Ｐ（ｕ，ｖ）は、それぞれｚ（ｘ，ｙ）、ｏ（ｘ，ｙ）、ｐ（ｘ，ｙ）のスペクトルである。また、数３において、Ｐ（ｕ，ｖ）は、特に空間周波数伝達関数と呼ばれている。
ここで、ブレ画像ｚ（ｘ，ｙ）に加えて、何らかの方法により点像関数ｐ（ｘ，ｙ）を知ることができれば、それぞれのスペクトルを算出し、数３を変形した以下の数４を利用することで、元画像のスペクトルＯ（ｕ，ｖ）を算出することができる。
【００１５】
【数４】
2005252760.tif 000006
【００１６】
数４において、１／Ｐ（ｕ，ｖ）は、特に逆フィルタと呼ばれている。数４により算出したスペクトルを逆フーリエ変換すれば、元画像ｏ（ｘ，ｙ）を求めることができる。
【００１７】
この原理を利用して、振れ検出センサの出力から点像関数ｐ（ｘ，ｙ）を求め、ブレ画像を回復させる技術がこれまでに公知となっている。例えば、特許文献１〜特許文献３には、磁気テープに格納したブレ情報から画像回復を行う方法が記載されている。また、特許文献４には、ブレ情報の他、シャッタの開閉に伴う開口の変化をも考慮した方法が記載されている。
【００１８】
しかし、上述した従来の光学的なブレ補正装置及び画像回復には、以下に示す問題があった。
（光学的なブレ補正装置の問題）
前述のように、光学的なブレ補正装置は、ブレ補正レンズをアクチュエータで駆動する方式となっている。従って、アクチュエータにも電源を供給しなければならない。近年、デジタルカメラが急速に普及してきている。デジタルカメラは、その場で画像を確認できるという大きなメリットがある一方で、従来の銀塩カメラよりも電力の消費量が大きいという問題がある。そのため、光学的なブレ補正装置にまで電力を供給するのはなかなか難しい。また、デジタルカメラは、小型化が進んでおり、十分な容量を持つ大きいバッテリーを搭載することも難しい。このように、光学的なブレ補正装置は、電力供給の観点からすると、特にデジタルカメラに搭載するには困難な点が多く、電力不足により光学的なブレ補正動作を行うことができない場合が多いという問題があった。
【００１９】
また、角速度センサで検出した角速度を角度に変換するには、積分演算をする必要があるが、積分の際には、定数が必要になる。この定数は、角速度センサ静止時の出力を使用することが一般的であり、かつ正確に角度に変換するには、この静止時の出力を正確に知る必要がある。
【００２０】
しかし、センサ静止時の出力値は、温度などの使用条件によって変わる（ドリフトする）ため、事前にその値を保持しておくことはできない。従って、実際にセンサが使用されるときに値を求めなければならないが、そのときには、使用者の手振れによって振動していることがほとんどである。よって、手振れの信号からセンサの静止時の出力値を求める必要が生じる。
【００２１】
一般に人間の手振れは、２〜７Ｈｚ程度の周波数成分が支配的である。一方、角速度センサのドリフトの周波数成分は、手振れのそれよりも低く、概ね１Ｈｚ未満の成分が支配的である。そのため、センサ出力の低周波成分を抽出してセンサの静止時の出力としている場合が多い（以下、低周波成分を抽出したものを基準値と呼ぶ）。低周波成分を抽出するには、通常は、移動平均やローパスフィルタを用いるが、その遮断周波数を最適な値に設定することは、以下に示すように困難であった。
【００２２】
図１０は、ドリフト成分を含まない場合の角速度センサ出力，基準値の出力，像面での振れ量を示す図である。
図１１は、ドリフト成分を含む場合の角速度センサ出力，基準値の出力，像面での振れ量を示す図である。
以下、図１０及び図１１を用いて、遮断周波数を設定するときの問題点について説明する。
図１０（ａ）は、手振れによって振動しているときの角速度センサ出力とローパスフィルタによって演算した基準値の出力をグラフにしたものである。ここでは、手振れを正弦波としてあり、角速度センサ１０の静止時の出力を０としてある。図１０（ａ）において、波形Ａ０は、正弦波で手ブレが生じている時の角速度センサの出力を表している。また、波形Ａ１、Ａ２は、いずれもローパスフィルタで演算された基準値であり、波形Ａ１の遮断周波数は、波形Ａ２よりも低く設定されている。いずれの基準値（波形Ａ１，Ａ２）も若干の振動が残っているが、遮断周波数の低い波形Ａ１の方が振幅は小さくなっている。
【００２３】
図１０（ｂ）は、それぞれの基準値を利用してブレ補正を行ったときの像面での振れ量をグラフにしたものである。図１０（ｂ）中の波形Ｂ０，Ｂ１，Ｂ２は、それぞれ図１０（ａ）中の波形Ａ０，Ａ１，Ａ２に対応し、波形Ｂ０は、ブレ補正を全く行わなかったときの像面のブレ量を表している。波形Ｂ１，Ｂ２を比較すると、遮断周波数の低い波形Ｂ１の方が波形Ｂ２よりも像面のブレ量は小さく、ブレ補正が良好に行われている。
以上の結果からすると、ブレ補正効果を高めるためには、ローパスフィルタの遮断周波数を下げた方がよいように見える。しかし、単に遮断周波数を下げればよいというものではない。
【００２４】
前述のように、角速度センサ１０の静止時の出力は、環境条件などにより変化する（ドリフトする）ことが多い。図１１（ａ）は、その様子を示したものである。撮影者の手振れは、図１０（ａ）と同等であると仮定しているが、角速度センサ１０がドリフトしているため時間の経過とともに振動の中心がずれていってしまっている。図中には、図１０（ａ）と同等のローパスフィルタで演算された基準値も示してある。図１１（ａ）において、波形Ｃ０は、正弦波で手ブレが生じている時のブレセンサの出力を表している。また、波形Ｃ１、Ｃ２は、いずれもローパスフィルタで演算された基準値であり、波形Ｃ１の遮断周波数は、波形Ｃ２よりも低く設定されている。この図を見る限りでは、一見すると基準値は、問題なく演算されているように見える。
【００２５】
図１１（ｂ）は、図１０（ｂ）のように角速度センサ出力がドリフトしているときにブレ補正をかけたときの像面のブレ量を表す図である。図１１（ｂ）中の波形Ｄ０，Ｄ１，Ｄ２は、それぞれ図１１（ａ）中の波形Ｃ０，Ｃ１，Ｃ２に対応し、波形Ｄ０は、ブレ補正を全く行わなかったときの像面のブレ量を表している。波形Ｄ１は、波形Ｄ２に比較して、低い遮断周波数の基準値Ｃ１を使用することにより、高い周波数成分はカットされているものの時間経過とともにブレ量が大きくなってしまっている。逆に波形Ｄ２は、波形Ｄ１よりも基準値の遮断周波数が高くなっているため、波形Ｄ１よりもドリフト量は小さくなっているが、手振れによる高周波成分を除くことができていない。これは、センサのドリフトの影響でセンサの静止時の出力と演算した基準値との間に所定のオフセットが加わってしまったためであり、遮断周波数の低い方が、ブレ量が大きい。従って、センサがドリフトすることを考えると、単に遮断周波数を下げればよいというものではない。
【００２６】
このように、ドリフトの影響を避けたければ基準値を演算するローパスフィルタの遮断周波数を上げなければならないが、そうするとブレ補正をかけた後の像面の動きに高い周波数成分が残ってしまう。逆にブレ補正をかけた後の像面の動き（特に高周波成分）を抑えようとして遮断周波数を下げてしまうと、ドリフトの影響を大きく受けてしまう。このように、フィルタを使用している以上、基準値は、手振れ波形の影響やドリフトの影響を受けてしまう。これが検出誤差となり、ブレ補正を動作させても完全に像ブレを除去することができず、ブレが残ってしまうという問題があった。
【００２７】
さらに、光学的なブレ補正装置では、ブレ補正動作のＯＮ／ＯＦＦを切り替えるスイッチが設けられている場合が多く、その場合、このスイッチをＯＮにし忘れて撮影時にブレ補正動作しなかったために、像ブレを含む画像が撮影されてしまうという問題もあった。
【００２８】
（画像回復の課題）
数４による説明においては、画像回復による手法は、一見うまくいくように見える。しかし、以下に述べるような問題があった。
図１２，図１３は、従来の画像回復を説明する図である。
ここでは、簡単のために、ブレは、図１２（ｂ）に示すように一軸（Ｘ軸）方向に一様に発生したものとする。
この点像分布関数の断面をとると、図１３（ａ）のようになる。これをフーリエ変換したものが図１３（ｂ）であり、これが図１２（ａ）に示すブレの空間周波数伝達関数である。この伝達関数で注目すべきところは、値が０となっているところが何カ所かある点である。これを逆フィルタにすると図１３（ｃ）に示すように、無限大となってしまうところが存在する。これを数４に適用すると、ある特定の空間周波数に関しては、以下に示す数５のようになってしまい、元画像のスペクトル値は不定となる。
【００２９】
【数５】
2005252760.tif 000007
【００３０】
伝達関数が０であるということは、ブレによって伝達されない（＝情報が失われる）周波数成分が存在するということであり、この式は、失われた周波数成分は、回復できないことを示している。これは、元画像を完全に回復させることができないことを意味している。
なお、実際には、逆フィルタが無限大とならないよう、以下の式で表されるウィナーフィルタを画像回復に使用する。
【００３１】
【数６】
2005252760.tif 000008
【００３２】
図１３（ｄ）は、ウィナーフィルタをグラフにしたものである。
ウィナーフィルタにすることにより、数５のようにＯ（ｕ，ｖ）が不定となるところはなくなる。
このウィナーフィルタを用いた場合であっても、失われた周波数成分を回復させることができないことに変わりはないが、このフィルタを用いて処理した画像は、像ブレを含む画像に比べると解像が向上するので画像回復の効果を認識することができる。
しかし、フィルタには、値が大きい部分がいくつか含まれているので、画像にノイズが含まれているとそのノイズ成分を増大させてしまう。そうすると、回復画像は、図１２（ｃ）に示すように縞模様が目立ってしまい、画質が低下してしまうという場合もあった。
【００３３】
ただし、上述の問題は、ブレ量が大きい場合に顕著に現れるが、ブレ量が小さければそれほど大きな問題にはならない。
図１４，図１５は、ブレ量が小さい場合について図１２，１３と同様に示した図である。
図１４は、図１２と同様、Ｘ軸方向に一様にブレが発生した場合を想定したものであるが、ブレ量は、図１２よりも小さい。この点像分布関数の断面をとると、図１３（ａ）Ａのようになる。これをフーリエ変換したものが図１５（ｂ）であり、これが図１４（ａ）に示すブレの空間周波数伝達関数である。図１３（ｂ）と図１５（ｂ）とを比較すると、図１５（ｂ）の方が伝達関数＝０となる点が少なくなっていることがわかる。つまり、ブレが少ないと数５のように値が不定となる状況が発生する箇所が少なくなる分、画像回復もしやすくなる。この状況で回復を行った結果の一例が図１４（ｃ）であるが、この場合は、画質の低下はそれほど顕著ではなくなる。
【００３４】
以上の問題をまとめると、
（１）光学的なブレ補正装置では、電力不足により光学的なブレ補正動作を行うことができない場合が多いという問題があった。
（２）また、光学的なブレ補正装置では、フィルタを使用している以上、基準値は、手振れ波形の影響やドリフトの影響を受けてしまう。これが検出誤差となり、ブレ補正を動作させても完全に像ブレを除去することができず、ブレが残ってしまうという問題があった。
（３）さらに、光学的なブレ補正装置では、ブレ補正動作のＯＮ／ＯＦＦを切り替えるスイッチが設けられている場合が多く、その場合、このスイッチをＯＮにし忘れて撮影時にブレ補正動作しなかったために、像ブレを含む画像が撮影されてしまうという問題もあった。
（４）画像回復では、ブレ量が大きいと、元画像を完全に回復させることができないという問題があった。
【００３５】
そこで、光学的なブレ補正と画像回復とを組み合わせて、光学的なブレ補正の動作を行うか否かにかかわらず、常に画像回復を行うことができるようにすると、上述の問題を解決することが以下のように可能となる。
（１）電力的な問題、又は、ブレ補正動作のＯＮ／ＯＦＦを切り替えるスイッチの入れ忘れにより、光学的なブレ補正動作を行うことができない場合には、画像回復を行うことによりブレを軽減した画像を得ることができる。
（２）光学的なブレ補正を行っても残ってしまう像ブレについては、さらに画像回復を行うことにより、像ブレをいっそう少なくすることができる。この場合、光学的なブレ補正によりブレ量が大幅に減っているので、上述のようにブレ量が小さい場合の画像回復に相当することが多く、より鮮明な画像回復結果を期待できる。
（３）画像回復では、ブレ量が大きいと、元画像を完全に回復させることができないという問題に対しては、電力的な問題、又は、ブレ補正動作のＯＮ／ＯＦＦを切り替えるスイッチの入れ忘れ等の特別な場合を除けば、光学的なブレ補正を行った後に、画像回復を行うので、上述のようにブレ量が小さい場合の画像回復に相当することが多く、より鮮明な画像回復結果を期待できる。
【００３６】
しかし、光学的なブレ補正動作を行うか否かにかかわらず、常に画像回復を行うことができるようにすると、画像回復の演算に使用する点像分布関数が、光学的なブレ補正動作を行うときの点像分布関数と、光学的なブレ補正動作を行わないときの点像分布関数とで異なる。具体的には、光学的なブレ補正動作を行うときには、基準値に基づいて点像分布関数を演算し、光学的なブレ補正動作を行わないときには、角速度センサ１０により検出された振れ（振動検出信号）に基づいて点像分布関数を演算する。したがって、それぞれを演算するために必要なデータを点像分布関数の演算を行うときまで保持するためには、膨大なデータを保持しなければならないという問題があった。
また、光学的なブレ補正動作を行うか否かにより、画像回復を行う対象となる画像に含まれるブレ量が大きく異なることから、同じ内容の画像回復処理を行っても、それぞれの画像に最適な画像回復処理とすることができないという問題があった。
【特許文献１】特開平０５−３２３４４４号公報
【特許文献２】特開平０６−１１８４６８号公報
【特許文献３】特開平０６−２７５１２号公報
【特許文献４】特開平０７−２２６９０５号公報
【発明の開示】
【発明が解決しようとする課題】
【００３７】
本発明の課題は、光学的なブレ補正動作を行うか否かにかかわらず、常に画像回復を行うことができるようにしても、膨大なデータを保持する必要がなく、また、全ての撮影条件に最適な画像回復を行うことができるブレ補正カメラシステム、ブレ補正カメラ、画像回復装置、及び、ブレ補正プログラムを提供することである。
【課題を解決するための手段】
【００３８】
本発明は、以下のような解決手段により、前記課題を解決する。なお、理解を容易にするために、本発明の実施例に対応する符号を付して説明するが、これに限定されるものではない。
請求項１の発明は、振動を検出して振動検出信号を出力する振動検出部（１０）と、前記振動検出信号の基準値を演算する基準値演算部（５２）と、前記振動検出信号及び前記基準値に基づいて駆動され、像ブレを補正するブレ補正光学系（８０）と、前記ブレ補正光学系を含む撮影光学系により形成された像を撮像する撮像部（１５０）と、前記基準値、又は、前記振動検出信号を用いて点像分布関数を演算する点像分布関数演算部（１４０）と、前記撮像部により撮像された画像に対して前記点像分布関数で画像処理することにより画像回復を行い像ブレを補正する画像回復演算部（１７０）と、前記点像分布関数演算部による点像分布関数の演算を前記基準値を用いて行うか、前記振動検出信号を用いて行うかを切り替える振動情報切り替え部（１３０）と、前記点像分布関数演算部が演算に使用する前記基準値又は前記振動検出信号を保存する振動情報保存部（１４５）と、を備え、前記振動情報保存部は、前記振動情報切り替え部が前記基準値を用いる側に切り替わっているときには前記基準値を保存し、振動情報切り替え部が前記振動検出信号を用いる側に切り替わっているときには前記振動検出信号を保存すること、を特徴とするブレ補正カメラシステムである。
【００３９】
請求項２の発明は、振動を検出して振動検出信号を出力する振動検出部（１０）と、前記振動検出信号の基準値を演算する基準値演算部（５２）と、前記振動検出信号及び前記基準値に基づいて駆動され、像ブレを補正するブレ補正光学系（８０）と、前記ブレ補正光学系を含む撮影光学系により形成された像を撮像する撮像部（１５０）と、前記基準値、又は、前記振動検出信号を用いて点像分布関数を演算する点像分布関数演算部（１４０）と、前記撮像部により撮像された画像に対して前記点像分布関数を使用した空間周波数フィルタにより画像回復を行い像ブレを補正する画像回復演算部（１７０）と、前記点像分布関数演算部による点像分布関数の演算を前記基準値を用いて行うか、前記振動検出信号を用いて行うかを切り替える振動情報切り替え部（１３０）と、を備え、前記画像回復演算部は、前記振動情報切り替え部が前記基準値を用いる側に切り替わっているか、前記振動検出信号を用いる側に切り替わっているかにより前記空間周波数フィルタを変更すること、を特徴とするブレ補正カメラシステムである。
【００４０】
請求項３の発明は、請求項２に記載のブレ補正カメラシステムにおいて、前記画像回復演算部は、前記空間周波数フィルタとしてウィナーフィルタを用い、前記振動情報切り替え部が前記基準値を用いる側に切り替わっているか、前記振動検出信号を用いる側に切り替わっているかにより前記ウィナーフィルタの定数（ｃ’，ｃ”）を変更すること、を特徴とするブレ補正カメラシステムである。
【００４１】
請求項４の発明は、請求項３に記載のブレ補正カメラシステムにおいて、前記画像回復演算部（１７０）は、前記振動情報切り替え部（１３０）が前記基準値を用いる側に切り替わっているときに用いる前記ウィナーフィルタの定数（ｃ”）よりも、前記振動情報切り替え部が前記振動検出信号を用いる側に切り替わっているときに用いる前記ウィナーフィルタの定数（ｃ’）を大きくすること、を特徴とするブレ補正カメラシステムである。
【００４２】
請求項５の発明は、請求項４に記載のブレ補正カメラシステムにおいて、前記画像回復演算部（１７０）が前記振動情報切り替え部（１３０）が前記基準値を用いる側に切り替わっているときに用いる前記ウィナーフィルタの定数（ｃ”）と前記振動情報切り替え部が前記振動検出信号を用いる側に切り替わっているときに用いる前記ウィナーフィルタの定数（ｃ’）との差は、前記ブレ補正光学系（８０）を駆動する場合のブレ補正効果が大きいほど差が大きいこと、を特徴とするブレ補正カメラシステムである。
【００４３】
請求項６の発明は、請求項３に記載のブレ補正カメラシステムにおいて、前記画像回復演算部（１７０）は、前記ウィナーフィルタの定数（ｃ’，ｃ”）を任意に変更可能であること、を特徴とするブレ補正カメラシステムである。
【００４４】
請求項７の発明は、請求項６に記載のブレ補正カメラシステムにおいて、前記画像回復演算部（１７０）は、画像回復後の結果に応じて何回でも前記ウィナーフィルタの定数（ｃ’，ｃ”）を任意に変更可能であること、を特徴とするブレ補正カメラシステムである。
【００４５】
請求項８の発明は、請求項１から請求項７までのいずれか１項に記載のブレ補正カメラシステムにおいて、前記振動情報切り替え部（１３０）は、前記ブレ補正光学系（８０）によるブレ補正動作を行うか否かを切り替えるブレ補正動作設定部（１３０）の設定に応じて前記点像分布関数演算部（１４０）による点像分布関数の演算方法を切り替え、前記ブレ補正光学系によるブレ補正動作を行うときには、前記前記基準値を用いる側に切り替わり、前記ブレ補正光学系によるブレ補正動作を行わないときには、前記振動検出信号を用いる側に切り替わること、を特徴とするブレ補正カメラシステムである。
【００４６】
請求項９の発明は、振動を検出して振動検出信号を出力する振動検出部（１０）と、前記振動検出信号の基準値を演算する基準値演算部（５２）と、前記振動検出信号及び前記基準値に基づいて駆動され、像ブレを補正するブレ補正光学系（８０）と、前記ブレ補正光学系を含む撮影光学系により形成された像を撮像する撮像部（１５０）と、前記基準値又は前記振動検出信号を保存する振動情報保存部（１４５）と、前記振動情報保存部に前記基準値を保存するか前記振動検出信号を保存するかを切り替える振動情報切り替え部（１３０）と、を備えるブレ補正カメラである。
【００４７】
請求項１０の発明は、外部との通信及び／又は媒体を介して原画像データを受け取るデータ入力部（２４０ａ）と、前記原画像データに対して点像分布関数を使用した空間周波数フィルタにより画像回復を行い像ブレを補正する画像回復演算部（１７０ｂ）と、を備えた画像回復装置であって、前記画像回復演算部は、前記点像分布関数が基準値を用いて演算されたか、振動検出信号を用いて演算されたかにより前記空間周波数フィルタを変更すること、を特徴とする画像回復装置（２３０）である。
【００４８】
請求項１１の発明は、請求項１０に記載の画像回復装置において、前記画像回復演算部（１７０ｂ）は、前記空間周波数フィルタとしてウィナーフィルタを用い、前記点像分布関数が前記基準値を用いて演算されたか、前記振動検出信号を用いて演算されたかにより前記ウィナーフィルタの定数（ｃ’，ｃ”）を変更すること、を特徴とする画像回復装置（２３０）である。
【００４９】
請求項１２の発明は、請求項１１に記載の画像回復装置において、前記画像回復演算部（１７０ｂ）は、前記点像分布関数が前記基準値を用いて演算されたときに用いる前記ウィナーフィルタの定数（ｃ”）よりも、前記点像分布関数が前記振動検出信号を用いて演算されたときに用いる前記ウィナーフィルタの定数（ｃ’）を大きくすること、を特徴とする画像回復装置（２３０）である。
【００５０】
請求項１３の発明は、請求項１２に記載の画像回復装置において、前記点像分布関数が前記基準値を用いて演算されたときに用いる前記ウィナーフィルタの定数（ｃ”）と前記点像分布関数が前記振動検出信号を用いて演算されたときに用いる前記ウィナーフィルタの定数（ｃ’）との差は、前記原画像を撮影したときに使用したブレ補正光学系（８０）を駆動する場合のブレ補正効果が大きいほど差が大きいこと、を特徴とする画像回復装置（２３０）である。
【００５１】
請求項１４の発明は、請求項１１に記載の画像回復装置において、前記画像回復演算部（１７０ｂ）は、前記ウィナーフィルタの定数（ｃ’，ｃ”）を任意に変更可能であること、を特徴とする画像回復装置（２３０）である。
【００５２】
請求項１５の発明は、請求項１４に記載の画像回復装置において、前記画像回復演算部（１７０ｂ）は、画像回復後の結果に応じて何回でも前記ウィナーフィルタの定数（ｃ’，ｃ”）を任意に変更可能であること、を特徴とする画像回復装置（２３０）である。
【００５３】
請求項１６の発明は、コンピュータ（２３０）に、外部との通信及び／又は媒体を介して原画像データを受け取るデータ入力機能（２４０ａ）と、前記原画像データに対して点像分布関数を使用した空間周波数フィルタにより画像回復を行い像ブレを補正する画像回復演算機能（１７０ｂ）と、を実現させるためのブレ補正プログラムであって、前記画像回復演算機能は、前記点像分布関数が基準値を用いて演算されたか、振動検出信号を用いて演算されたかにより前記空間周波数フィルタを変更すること、を特徴とするブレ補正プログラム（２４０）である。
【００５４】
請求項１７の発明は、請求項１６に記載のブレ補正プログラムにおいて、前記画像回復演算機能（１７０ｂ）は、前記空間周波数フィルタとしてウィナーフィルタを用い、前記点像分布関数が前記基準値を用いて演算されたか前記振動検出信号を用いて演算されたかにより前記ウィナーフィルタの定数（ｃ’，ｃ”）を変更すること、を特徴とするブレ補正プログラム（２４０）である。
【００５５】
請求項１８の発明は、請求項１７に記載のブレ補正プログラムにおいて、前記画像回復演算機能（１７０ｂ）は、前記点像分布関数が前記基準値を用いて演算されたときに用いる前記ウィナーフィルタの定数（ｃ”）よりも、前記点像分布関数が前記振動検出信号を用いて演算されたときに用いる前記ウィナーフィルタの定数（ｃ’）を大きくすること、を特徴とするブレ補正プログラム（２４０）である。
【００５６】
請求項１９の発明は、請求項１８に記載のブレ補正プログラムにおいて、前記点像分布関数が前記基準値を用いて演算されたときに用いる前記ウィナーフィルタの定数（ｃ”）と前記点像分布関数が前記振動検出信号を用いて演算されたときに用いる前記ウィナーフィルタの定数（ｃ’）との差は、前記原画像を撮影したときに使用したブレ補正光学系（８０）を駆動する場合のブレ補正効果が大きいほど差が大きいこと、を特徴とするブレ補正プログラム（２４０）である。
【００５７】
請求項２０の発明は、請求項１７に記載のブレ補正プログラムにおいて、前記画像回復演算機能（１７０ｂ）は、前記ウィナーフィルタの定数（ｃ’，ｃ”）を任意に変更可能であること、を特徴とするブレ補正プログラム（２４０）である。
【００５８】
請求項２１の発明は、請求項２０に記載のブレ補正プログラムにおいて、前記画像回復演算機能（１７０ｂ）は、画像回復後の結果に応じて何回でも前記ウィナーフィルタの定数（ｃ’，ｃ”）を任意に変更可能であること、を特徴とするブレ補正プログラム（２４０）である。
【発明の効果】
【００５９】
本発明によれば、以下の効果を奏することができる。
（１）振動情報保存部は、振動情報切り替え部が基準値を用いる側に切り替わっているときには基準値を保存し、振動情報切り替え部が振動検出信号を用いる側に切り替わっているときには振動検出信号を保存するので、膨大なデータを記憶することなく、常に画像回復を行うことができる。
【００６０】
（２）画像回復演算部は、振動情報切り替え部が基準値を用いる側に切り替わっているか、振動検出信号を用いる側に切り替わっているかにより空間周波数フィルタ、特にウィナーフィルタの定数を変更するので、全ての撮影条件に最適な画像回復を行うことができる。
【００６１】
（３）振動情報切り替え部が基準値を用いる側に切り替わっているときに用いるウィナーフィルタの定数よりも、振動情報切り替え部が振動検出信号を用いる側に切り替わっているときに用いるウィナーフィルタの定数を大きくし、特に、その差は、ブレ補正光学系を駆動する場合のブレ補正効果が大きいほど差が大きいこととするので、ブレ補正光学系による光学的なブレ補正動作を行うか否かによる像ブレ量の差に適したウィナーフィルタの定数とすることができ、よりよい画像回復結果を簡単に得ることができる。
【００６２】
（４）画像回復演算部は、画像回復後の結果に応じて何回でもウィナーフィルタの定数を任意に変更可能であるので、より精度の高い画像回復を行うことができる。
【００６３】
（５）振動情報切り替え部は、ブレ補正光学系によるブレ補正動作を行うか否かを切り替えるブレ補正動作設定部の設定に応じて点像分布関数演算部による点像分布関数の演算方法を切り替えるので、ブレ補正光学系による光学的なブレ補正動作を行うか否かにより異なる像ブレ量に適した点像分布関数の演算を行うことができる。
【発明を実施するための最良の形態】
【００６４】
光学的なブレ補正動作を行うか否かにかかわらず、常に画像回復を行うことができるようにしても、膨大なデータを保持する必要がなく、また、全ての撮影条件に最適な画像回復を行うことができるようにするという目的を、それぞれの撮影条件に適した動作を行うことにより、部品点数を増やすことなく実現した。
【実施例１】
【００６５】
以下、図面等を参照しながら、本発明の実施例について、更に詳しく説明する。
図１は、本発明における光学的なブレ補正装置、画像回復部を内蔵したカメラの実施例１を示す模式図である。
角速度センサ１０は、カメラに印加された振動を角速度値で検出するセンサであり、角速度センサ１０にかかるコリオリ力を利用して角速度を検出し、検出結果を電圧信号として出力する振動検出部である。角速度センサ１０ａは、図中Ｘ軸方向の角度ブレを検出するセンサであり、角速度センサ１０ｂは、図中Ｙ軸方向の角度ブレを検出するセンサである。このように、角速度センサ１０ａ，１０ｂを互いに異なる軸方向に配置することにより、カメラの振動を２次元で検出することが可能となる。
角速度センサ１０により出力された電圧信号は、増幅部２０に送信される。なお、角速度センサ１０は、後述の電源供給部１１０より電源が供給されている間のみ、角速度の検出が可能となる。
【００６６】
増幅部２０は、角速度センサ１０の出力を増幅する増幅部である。一般的に角速度センサ１０からの出力は、小さいため、そのままＡ／Ｄ変換器３０によってデジタル化してマイコン９０内で処理しようとしても、角速度値の分解能が低すぎ（１ビットあたりの角速度値が大きすぎ）て正確な振動検出をすることができず、ブレ補正の精度を上げることができない。そこで、Ａ／Ｄ変換器３０に入力する前に角速度信号を増幅しておく。そうすると、マイコン９０内での角速度値の分解能を上げる（１ビットあたりの角速度値を小さくする）ことができ、ブレ補正の精度を上げることができる。
【００６７】
増幅部２０は、角速度センサ１０ａ，１０ｂにそれぞれ対応して増幅部２０ａ，２０ｂの２つが設けられている。また、ここでは、信号の増幅をするだけではなく、センサ出力に含まれる高周波ノイズを低減させることを目的とした、ローパスフィルタを付加してもよい。
増幅部２０により増幅した角速度信号（以下、振れ検出信号）は、Ａ／Ｄ変換器３０へ送信される。
【００６８】
Ａ／Ｄ変換器３０，４０は、アナログ信号をデジタル信号に変換する変換器である。本実施形態では、Ａ／Ｄ変換器３０ａ，３０ｂと、Ａ／Ｄ変換器４０ａ，４０ｂとが設けられている。
Ａ／Ｄ変換器３０ａ，３０ｂは、増幅部２０から送られてきたアナログの振れ検出信号を、デジタル信号に変換する変換器である。振れ検出信号をデジタル信号に変換することで、マイコン９０内での演算処理が可能となる。ここで変換された振れ検出信号は、駆動信号演算部５０ａ，５０ｂに入力される。
Ａ／Ｄ変換器４０ａ，４０ｂは、駆動部７０から送られてきたブレ補正レンズ８０の位置情報（アナログ信号）をデジタル信号に変換する変換器である。変換されたブレ補正レンズ位置情報は、駆動信号演算部５０ａ，５０ｂに送信される。
【００６９】
なお、本実施例では、Ａ／Ｄ変換器３０，４０は、マイコン９０に内蔵されているものを使用することを前提にしているが、この例に限らず、マイコン９０とは別体のＡ／Ｄ変換器を用いてもよい。
また、本実施例では、増幅部２０ａ，２０ｂに対応するようにＡ／Ｄ変換器３０ａ，３０ｂの２つのＡ／Ｄ変換器を設けているが、Ａ／Ｄ変換器を１つにして変換動作を時間的に振り分けるようにしてもよい。例えば、増幅部２０ａの信号を変換した後、増幅部２０ｂの信号を変換し、その後増幅部２０ａ，増幅部２０ｂ，増幅部２０ａ・・・と変換を繰り返すようにしてもよい。これは、Ａ／Ｄ変換器４０ａ，４０ｂについても同様である。
【００７０】
駆動信号演算部５０は、Ａ／Ｄ変換器３０から送信されてきた振れ検出信号とＡ／Ｄ変換器４０から送信されてきたブレ補正レンズ位置情報とから、ブレ補正レンズ８０を駆動するための駆動信号を演算し、駆動信号を出力する演算部である。まず、振れ検出信号から基準値を演算し、その基準値を振れ検出信号値から減算する。それを積分することにより、角速度信号を角変位信号へと変換し、これに図示しない結像光学系全体の焦点距離などの諸条件を加味してブレ補正レンズ８０の目標駆動位置を演算する。
また、駆動信号演算部５０は、演算した目標駆動位置情報と駆動部７０からＡ／Ｄ変換器４０を介して送られてくるブレ補正レンズ８０の位置情報から駆動信号を演算する。
【００７１】
本実施例では、駆動信号演算部５０ａ，５０ｂの２つの駆動信号演算部が設けられている。しかし、これを１つにして駆動信号演算動作を時間的に振り分けるようにしてもよい。例えば、Ｘ軸方向の信号の駆動信号を演算した後、Ｙ軸方向の信号の駆動信号を演算し、その後Ｘ，Ｙ，Ｘ，Ｙ・・・と交互に駆動信号を演算するようにしてもよい。
【００７２】
Ｄ／Ａ変換器６０は、駆動信号演算部５０で演算された駆動信号（デジタル信号）をアナログ信号に変換するためのＤ／Ａ変換器である。変換されたアナログ信号は、駆動部７０に送信される。
なお、本実施例では、Ｄ／Ａ変換器６０は、マイコン９０に内蔵されているものを使用することを前提にしているが、これに限らず、マイコン９０とは別体のＤ／Ａ変換器を用いてもよい。
また、本実施例では、Ｄ／Ａ変換器６０ａ，６０ｂの２つのＤ／Ａ変換器が設けられているが、Ｄ／Ａ変換器を１つにして、変換動作を時間的に振り分けるようにしてもよい。例えば、Ｘ軸方向の信号を変換した後、Ｙ軸方向の信号を変換し、その後Ｘ，Ｙ，Ｘ，Ｙ・・・と変換するようにしてもよい。
【００７３】
駆動部７０は、Ｄ／Ａ変換器６０から送信されてきた駆動信号（アナログ信号）を基に、ブレ補正レンズ８０を駆動する駆動部である。駆動部７０は、ブレ補正レンズ８０を駆動するためのアクチュエータや、ブレ補正レンズ８０の位置を検出する位置検出センサ等を有している。位置検出センサの出力は、Ａ／Ｄ変換器４０を経由して駆動信号演算部５０に送信される。
ブレ補正レンズ８０を２次元方向で駆動する必要があるため、この駆動部７０は、駆動部７０ａ，７０ｂの２つ設ける必要がある。
【００７４】
ブレ補正レンズ８０は、撮影装置のレンズ鏡筒１９０に内蔵された図示しない結像光学系の一部であり、光軸Ｉと略直交する平面内を動くことができる単レンズ又は複数枚のレンズより構成されるブレ補正光学系である。ブレ補正レンズ８０は、駆動部７０によって光軸Ｉと略直交する方向に駆動され、結像光学系の光軸Ｉを偏向させる。
【００７５】
写真等の像のブレは、手振れ等のカメラに加えられる振動により、露光中に結像面の像が動いてしまうことにより発生する。しかし、図１に示すようなブレ補正カメラにおいては、角速度センサ１０などの振動検出センサが内蔵されており、その振動検出センサにより、カメラに加えられた振動を検出することができる。そして、カメラに加えられた振動が検出されれば、その振動による結像面の像の動きを知ることができるので、結像面上の像の動きが止まるようにブレ補正レンズ８０を動かすことによって、結像面上の像の動き、すなわち像ブレを補正することができる。
【００７６】
マイコン９０は、Ａ／Ｄ変換器３０，４０、駆動信号演算部５０、Ｄ／Ａ変換器６０等が組み込まれているマイコンである。ここで説明した動作のほかに、不図示のオートフォーカス駆動などの制御も、このマイコン９０が行うようにしてもよい。
【００７７】
半押しタイマ１００は、半押しスイッチＳＷ１がＯＮとなったと同時にＯＮとなり、半押しスイッチＳＷ１がＯＮの間は、ＯＮのままであり、また、半押しスイッチＳＷ１がＯＦＦとなってからも、一定時間は、ＯＮのままとなっているタイマである。この半押しタイマ１００は、ＯＮと同時にカウントを開始し、ＯＮの間は、カウントを継続する。
【００７８】
電源供給部１１０は、カメラの各部、ここでは、角速度センサ１０に電源を供給する部分であり、カメラの半押タイマ１００がＯＮの間、角速度センサ１０を始め、カメラシステム内で電源が必要とされるところに電源を供給し続ける。また、半押しタイマ１００がＯＦＦのとき、電源供給部１１０は、角速度センサ１０等への電源の供給を停止する。従って、カメラの半押しタイマ１００がＯＮの間に限り、角速度センサ１０によるカメラの振動検出が可能となる。
【００７９】
露光時間制御部１２０は、不図示のコマンドダイヤルなどで設定された露光時間の設定値から、イメージセンサへの露光時間を制御する部分である。露光時間情報や露光の開始及び終了のタイミング情報は、点像関数演算部１４０に送信される。
【００８０】
ブレ補正動作切り替えスイッチ（ＶＲＳＷ）１３０は、光学的なブレ補正動作のＯＮ／ＯＦＦを切り替えるブレ補正動作設定部であり、レンズ鏡筒１９０の外周部に設けられている。ＶＲＳＷ１３０がＯＮの場合は、ブレ補正レンズ８０を駆動させて光学的なブレ補正動作を行う。一方、ＶＲＳＷ１３０がＯＦＦの場合は、ブレ補正レンズ８０の駆動を停止し、光学的なブレ補正動作は行わない。
ＶＲＳＷ１３０の設定状態は、点像関数演算部１４０及び画像回復演算部１７０に送信される。これにより、後述する信号流れ制御部１４２が連携して働き、点像関数演算部１４０による点像分布関数の演算を基準値を用いて行うか、目標駆動位置の信号（振動検出信号）を用いて行うかを切り替えるので、ＶＲＳＷ１３０は、振動情報切り替え部としての機能も有している。
【００８１】
点像関数演算部１４０は、駆動信号演算部５０、露光時間制御部１２０から得た情報を基に露光中の点像関数（点像分布関数）を演算する点像分布関数演算部である。本実施例における点像関数演算部１４０は、ＶＲＳＷ１３０の設定状態に応じて演算方法を以下のように変更する。
【００８２】
（光学的なブレ補正動作ＯＮの場合）
光学的なブレ補正動作ＯＮの場合には、駆動信号演算部５０内で演算された基準値と露光時間制御部１２０から得た露光タイミング情報に基づいて点像関数を演算する。
光学的なブレ補正動作ＯＮの場合には、ブレ補正レンズ８０による補正が完全であれば点像関数は、一点となるが、実際のブレ補正動作は、完全でないため、点像関数は、一点にはならない。つまり、ブレ補正レンズ８０によって補正しきれないブレ（ブレ補正残差）が残る。光学的なブレ補正動作ＯＮの場合に点像関数演算部１４０により算出する点像関数は、ブレ補正レンズ８０で補正しきれずに像面に残ったブレ補正残差を画像処理によって補正するためのものである。
【００８３】
（光学的なブレ補正動作ＯＦＦの場合）
光学的なブレ補正動作ＯＦＦの場合には、駆動信号演算部５０内で演算された角変位信号、及び、露光時間制御部１２０から得た露光タイミング情報に基づいて点像関数を演算する。
光学的なブレ補正動作ＯＦＦの場合には、カメラに加えられた振動がそのまま像ブレとなる。本実施例では、角速度センサ１０の出力を利用して点像関数を演算することにより、ブレ補正レンズ８０を駆動しなかった場合でも画像回復によって像ブレを軽減することが可能となる。
光学的なブレ補正動作ＯＮ／ＯＦＦいずれの場合であっても、点像関数演算部１４０において演算された点像関数は、画像回復演算部１７０へ送信される。
なお、点像関数演算部１４０の具体的な動作については、後に説明する。
【００８４】
イメージセンサ１５０は、不図示の結像光学系によって結像された画像を光電変換して撮像する撮像部である。イメージセンサ１５０は、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅｓ）タイプでもＣ−ＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）タイプでもよい。
【００８５】
画像保存部１６０は、イメージセンサ１５０で得た画像を保存しておく画像記録部である。保存したデータは、必要に応じて画像回復演算部１７０に送信される。
また、画像保存部１６０は、メモリカード等の外部記憶媒体に画像等のデータを保存することもできる。
なお、本実施例における画像保存部１６０は、マイコン９０とは別に設けているが、マイコン９０内に組み込んでもよい。
【００８６】
画像回復演算部１７０は、画像保存部１６０から送られてきた画像データと点像関数演算部１４０から送られてきた点像関数情報、ＶＲＳＷ１３０から送られてきたＶＲＳＷ１３０の設定状態（光学的なブレ補正を行うか否か）とから画像に含まれるブレを取り除く画像回復演算を行う部分である。画像回復演算部１７０により行われる処理の内容については、後に詳しく説明する。
なお、本実施例における画像回復演算部１７０は、マイコン９０とは別に設けているが、マイコン９０内に組み込んでもよい。
【００８７】
モニタ１８０は、撮影者が撮影した画像、及び、画像回復した後の画像等を確認する表示部である。
カメラボディ２００は、撮影部を有し、レンズ鏡筒１９０を交換可能な一眼レフカメラのカメラ本体である。
【００８８】
半押しスイッチＳＷ１は、不図示のレリーズボタンの半押し動作に連動してＯＮとなるスイッチである。この半押しスイッチＳＷ１がＯＮとなることにより、不図示の測光部による測光演算、オートフォーカス駆動など一連の撮影準備動作を開始する。また、半押しタイマ１００がＯＦＦであった場合には、この半押しスイッチＳＷ１のＯＮに同期して半押しタイマ１００がＯＮとなる。
【００８９】
全押しスイッチＳＷ２は、前記レリーズボタンを更に押し込む全押し動作に連動してＯＮとなるスイッチである。このスイッチがＯＮとなることにより、図示しないシャッタ機構によるシャッタの開閉、イメージセンサによる画像の取り込みなど一連の撮影動作が行われる。
【００９０】
図２は、本実施例におけるカメラの動作の流れを示すフローチャートである。
以下、図２に示したフローチャートに従い、本実施例におけるカメラの動作の流れについて説明する。
なお、これ以降に説明する内容は、Ｘ方向Ｙ方向ともに共通の内容であるため、特に方向に関しては、明記せずに説明を行う。
ステップ（以下、Ｓとする）１０では、半押しスイッチＳＷ１がＯＮとなっているか否かを判定する。半押しスイッチＳＷ１がＯＮならばＳ２０へ進み、半押しスイッチＳＷ１がＯＦＦならばＳ１４０に進む。
【００９１】
Ｓ２０では、カウンタＴｓｗ１をリセットし、カウント値を０とする。カウンタＴｓｗ１は、半押しスイッチＳＷ１がＯＦＦになってからの経過時間を計測するためのカウンタであり、カウント値は整数である。このカウンタは、半押しスイッチＳＷ１がＯＮの間は０のままで、半押しスイッチＳＷ１がＯＦＦで、かつ半押しタイマ１００がＯＮの間のみ動作する。
【００９２】
Ｓ３０では、半押しタイマ１００がＯＦＦであるか否かを判定する。半押しタイマ１００がＯＦＦであればＳ４０へ進み、半押しタイマ１００がＯＮであればＳ１７０へ進む。
Ｓ４０では、カウンタｔをリセットし、カウント値を０とする。カウンタｔは、半押しタイマ１００がＯＮとなっている時間を計測するためのカウンタである。このカウンタは、整数値カウンタであり、半押しタイマ１００がＯＮとなったと同時にカウント動作を開始し、半押しタイマ１００がＯＮの間は、カウント動作を続ける。
【００９３】
Ｓ５０では、半押しタイマ１００をＯＮにする。
Ｓ６０では、角速度センサ１０をＯＮとし、振動の検出を開始する。この他、Ａ／Ｄ変換器３０による変換動作もここで開始される。
Ｓ７０では、角速度センサ１０からの出力に基づいて基準値の演算を開始する。
Ｓ８０では、ブレ補正レンズ８０を駆動するための駆動信号の演算を開始する。
Ｓ９０では、ＶＲＳＷ１３０がＯＮに設定されているか否かを判定する。ＶＲＳＷ１３０がＯＮに設定されている場合は、ブレ補正レンズ８０を駆動させるためにＳ１００に進む。一方、ＶＲＳＷ１３０がＯＦＦに設定されている場合は、Ｓ１３０へ進む。
【００９４】
Ｓ１００では、ブレ補正レンズ８０の駆動を開始する。
Ｓ１１０では、露光動作、画像回復動作を行う。この動作の詳細については、後に図４を用いて説明する。
Ｓ１２０では、半押しタイマ１００のカウンタｔを１つ進める。
Ｓ１３０では、ブレ補正レンズ８０の駆動を停止する。なお、このステップに進んだ時点でブレ補正レンズ８０の駆動が既に停止していた場合は、そのまま停止状態を継続する。
【００９５】
Ｓ１４０では、半押しタイマ１００がＯＮであるか否かを判定する。半押しタイマ１００がＯＮならばＳ１５０へ進み、半押しタイマ１００がＯＦＦならばＳ１０へ戻り、半押しスイッチＳＷ１の検出を続行する。
Ｓ１５０では、このステップに進んだ時点では、カメラは半押しスイッチＳＷ１がＯＦＦで半押しタイマ１００がＯＮの状態になっており、この状態が継続している時間を計測するため、カウンタＴｓｗ１を１つ進める。
【００９６】
Ｓ１６０では、カウンタＴｓｗ１の値がしきい値Ｔ＿ＳＷ１よりも小さいか否かを判定する。ここで、しきい値Ｔ＿ＳＷ１は、カウンタＴｓｗ１の上限を決めるための定数であり、半押しスイッチＳＷ１がＯＦＦとなってから半押しタイマ１００がＯＦＦとなるまでの時間を決めるものである。
カウンタＴｓｗ１がしきい値Ｔ＿ＳＷ１に満たない場合、すなわち肯定判定の場合は、半押しタイマ１００はＯＦＦとせず、Ｓ１７０に進む。一方、カウンタＴｓｗ１がこのしきい値Ｔ＿ＳＷ１と等しくなった場合、すなわちこのステップで否定判定となった場合は、Ｓ２２０に進み、半押しタイマ１００をＯＦＦにする処理、及び、半押しタイマ１００がＯＦＦになったときに伴う処理を行う。
【００９７】
Ｓ１７０では、角速度センサ１０がＯＮの状態を継続し、振れの検出を行う。また、Ａ／Ｄ変換器３０による変換動作も継続する。
Ｓ１８０では、基準値の演算を継続する。
Ｓ１９０では、角速度センサ１０の出力とＳ１８０で演算した基準値からブレ補正レンズ８０を駆動するための駆動信号の演算を継続する。
Ｓ２００では、ＶＲＳＷ１３０がＯＮに設定されているか否かを判定する。ＶＲＳＷ１３０がＯＮに設定されている場合は、ブレ補正レンズ８０の駆動を継続させるためにＳ２１０に進む。ＶＲＳＷ１３０がＯＦＦに設定されている場合は、Ｓ１３０へ進む。
【００９８】
Ｓ２１０では、ブレ補正レンズ８０の駆動を継続する。
Ｓ２２０では、ブレ補正レンズ８０の駆動を停止する。
Ｓ２３０では、基準値の演算を停止する。
Ｓ２４０では、角速度センサ１０への電源の供給をストップし、角速度センサ１０をＯＦＦとする。
Ｓ２５０では、半押しタイマ１００をＯＦＦにしてＳ１０に戻り、半押しスイッチＳＷ１の状態検出を行う。
【００９９】
図３は、図１の駆動信号演算部５０、及び、画像回復を行うための各演算部の構成を示す図である。
基準値演算部５２は、Ａ／Ｄ変換器３０より送信されてきたセンサ出力信号から、駆動信号演算のための基準値を演算する部分である。通常の振れでの基準値は、角速度センサ１０が完全に静止している状態での出力（以下、ゼロ出力）値とすればよい。しかし、このゼロ出力値は、ドリフトや温度などの環境条件で変動してしまうため、基準値を固定値とすることができない。従って、実際に使用されている状態、つまり撮影者の手振れの信号から基準値を演算し、ゼロ出力を求めなければならない。
基準値演算の一例を以下に示す。
【０１００】
【数７】
2005252760.tif 000009
【０１０１】
ここで、ωは、振れ検出信号であり、ω0 は、振れの基準値である。また、これらの変数に付いているサフィックスｔは、経過時間（サンプリング：整数値）を表す変数である。この数７は、振れ検出信号の移動平均を表すものである。
角速度センサ１０のゼロ出力信号の周波数は、人間の手振れのそれに比べるとずっと低い。よって、基準値は、振れ検出信号の低周波成分を抽出すればよい。そこで、振れ検出信号、すなわち手振れの移動平均を演算して手振れ検出信号の基準値を演算している。そして、なるべく低い周波数成分のみを抽出するため、移動平均に使用するデータの数を多くしている。
【０１０２】
振れの基準値は、角速度センサ１０のゼロ出力値に近い値であることが望ましく、ゼロ出力値と基準値とに相違がある場合は、それがブレ補正レンズ８０で補正しきれないブレとして画像に残ってしまう。
なお、基準値の演算は、数７のような移動平均に限らず、ＦＩＲフィルタやＩＩＲフィルタなどのローパスフィルタを用いてもよい。
【０１０３】
積分演算部５４は、振れ検出信号（角速度）を積分して振れ角度情報に変換し、さらにブレ補正レンズの目標駆動位置を演算する演算部である。積分演算部５４が行う演算の一例を以下に示す。
【０１０４】
【数８】
2005252760.tif 000010
【０１０５】
数８中の各記号は、θ（ｔ）：目標駆動位置，ω（ｔ）：振れ検出信号，ω0 （ｔ）：基準値，t：時間（整数値）であり、Ｃは、レンズの焦点距離等の条件によって決まる定数である。なお、この積分演算部５４により演算された目標駆動位置の信号は、駆動信号算出部５８及び信号流れ制御部１４２へ送信される。
【０１０６】
駆動信号算出部５８は、積分演算部５４で演算した目標駆動位置と駆動部７０からＡ／Ｄ変換器４０を経由して送信されてきたブレ補正レンズ８０の位置から、ブレ補正レンズ８０を駆動するための信号を算出する部分である。
駆動信号の演算は、目標駆動位置とブレ補正レンズ８０の位置との偏差を求め、偏差に比例する項、偏差の積分に比例する項、偏差の微分に比例する項を加算して駆動信号を演算するＰＩＤ制御が一般的である。なお、駆動信号の演算方法は、ＰＩＤ制御に限らず、他の方法でもよい。
【０１０７】
点像関数演算部１４０には、信号流れ制御部１４２と点像関数変換演算部１４４と振動情報保存部１４５とが設けられている。
信号流れ制御部１４２は、ＶＲＳＷ１３０の状態により、点像関数演算部１４０へ送信するデータを切り替える部分である。ＶＲＳＷ１３０がＯＮの状態では、基準値演算部５２により演算された基準値を点像関数演算部１４０へ送信する。一方、ＶＲＳＷ１３０がＯＦＦの状態では、積分演算部５４から出力された目標駆動位置信号を点像関数演算部１４０へ送信する。
【０１０８】
点像関数変換演算部１４４は、信号流れ制御部１４２から送信されてきた振れ検出信号、又は、基準値を露光中の点像関数に変換する演算を行う部分である。この点像関数変換演算部１４４が行う処理は、ＶＲＳＷ１３０の状態に応じて以下のように異なっている。
振動情報保存部１４５は、点像関数を演算するためのデータを蓄積する部分であり、ＶＲＳＷ１３０がＯＦＦの状態では、積分演算部５４の出力である目標駆動位置を蓄積し、ＶＲＳＷ１３０がＯＮの状態では、基準値演算部５２の出力を蓄積する。画像回復に利用する点像関数は、露光時間中のものである必要があるため、データの蓄積は、露光開始と同時に開始し、露光の終了と同時に終了する。ここで蓄積した振動情報を基にして点像関数変換演算部１４４は、点像関数の演算を行う。
【０１０９】
（光学的なブレ補正動作ＯＮの場合）
図１０及び図１１で説明したように、光学的なブレ補正動作を実行してもブレを補正しきれず、若干のブレが画像に残ってしまう（ブレ補正残差）場合がある。このようなブレ補正残差が発生する原因は、主に基準値によるところが大きい。そのため、この点像関数変換演算部１４４では基準値を基にしてブレ補正残差の点像関数に変換する。ここで変換した点像関数は、画像回復演算部１７０に送信される。画像回復演算部１７０は、その点像関数に基づいて画像回復演算を行い、光学的なブレ補正動作では補正しきれなかった像ブレの補正を行う。
【０１１０】
図１３及び図１５により説明したように、ブレが大きくなるほど伝達されない周波数成分が増えるため、画像の回復が難しくなる。従来の画像回復装置の例では、光学的なブレ補正装置を備えていないカメラに角速度センサを内蔵し、センサ出力から点像関数を求めて画像回復を行う例がほとんどであった。しかし、光学的なブレ補正装置を備えていないことから、画像のブレが大きくなってしまうので、前述の理由により画像回復をしても画質が改善されなかったりするという問題があった。
そこで、本発明では、画像回復を光学的なブレ補正装置と組み合わせ、まず光学的なブレ補正装置により画像のブレをある程度軽減する。そうすると、この場合の点像関数、空間周波数伝達関数、逆フィルタ、ウィナーフィルタは、例えば図１５（ａ）〜（ｄ）のようになる。これと図１３を比較すると、図１５（ｂ）の空間周波数伝達関数が０になっている点が図１３（ｂ）のそれよりも少なくなっていることがわかる。これは、伝達されない周波数成分を減らしていることになるので、画像回復を効果的に行うことができることを示している。
ここで、画像回復を行うための点像関数を基準値から求める演算の一例を示す。
まず、基準値の総平均値を求める。
【０１１１】
【数９】
2005252760.tif 000011
【０１１２】
ここで、Ｎは、平均の演算に使用した基準値の数（＝時間）であり、例えば基準値演算のサンプリング周波数が１ｋＨｚの時、１秒分の基準値の平均をとる場合は、Ｎ＝１０００となる。ここでは、全押しスイッチがＯＮとなった時間から１秒〜数秒程度前までのデータを使用する。
次にこの平均値を使用して、露光時間の間だけ基準値の積分を行う。
【０１１３】
【数１０】
2005252760.tif 000012
【０１１４】
これらの演算をそれぞれＸ方向、Ｙ方向について行い、それらをＸ−Ｙ平面に展開することにより、点像分布関数が得られる。
なお、以上の点像分布関数の演算手法は一例であり、演算には他の方法を利用しても良い。
【０１１５】
（光学的なブレ補正動作ＯＦＦの場合）
光学的なブレ補正動作がＯＦＦの場合は、ブレ補正レンズ８０を駆動しないので、カメラの振動によるブレは、全く軽減されることはない。しかし、図１に示すカメラは、角速度センサ１０を内蔵し、カメラに加えられる信号を検出しているので、それを利用することにより点像分布関数を演算する。ここで算出した点像分布関数は、画像回復演算部１７０に送信され、画像回復演算に用いられる。
そうすると、バッテリー不足やスイッチの入れ忘れなどでブレ補正レンズを駆動しなかった場合（光学的なブレ補正動作がＯＦＦの場合）であっても、画像回復処理によってブレのない画像を得ることができる。
【０１１６】
ここで、画像回復演算部１７０により行われる処理の内容について説明する。
画像回復演算部１７０では、点像関数演算部１４０で演算された点像分布関数を利用して画像保存部に保存された画像のブレを取り除く演算を行う。この演算は、ＶＲＳＷ１３０の設定により処理内容が変更される。
（光学的なブレ補正動作ＯＮの場合）
【０１１７】
【数１１】
2005252760.tif 000013
【０１１８】
（光学的なブレ補正動作ＯＦＦの場合）
【０１１９】
【数１２】
2005252760.tif 000014
【０１２０】
前述したように、ブレが大きくなると空間周波数伝達関数Ｐ（ｕ）＝０となる点が増えるため、ウィナーフィルタを使用して画像回復を行うと特定の周波数成分を強調してしまい、縞模様が発生するという問題があった。そこで、本実施例では、像のブレが大きくなるブレ補正ＯＦＦ時は、ウィナーフィルタの定数ｃ’を小さく（１／ｃ’を大きく）して特定の周波数成分の強調を抑えるようにしている。一方、像ブレが小さくなるブレ補正ＯＮ時は、ウィナーフィルタの定数ｃ”を大きく（１／ｃ”を小さく）して回復画像の再現性を高めている。
【０１２１】
ここで、ウィナーフィルタの定数ｃ’及びｃ”の決め方について説明する。
前述したように、光学的なブレ補正動作をＯＮとするかＯＦＦとするかにより、撮影される像に残るブレ量が大きく変わる。
図１３及び図１５で比較すると、ブレ量が大きい図１３では、ブレ量が少ない図１５に比べて、空間周波数伝達関数Ｐ（ｕ）がゼロとなるポイントの数が、ブレ量に比例して多くなっている。すなわち、図１３（ｂ）で見ると、ブレ量が大きくなるほど交差する数が増えることとなる。よって、ウィナーフィルタの定数ｃ’及びｃ”は、ブレ量の大きさに略比例した量だけ変えるとよい。
光学的なブレ補正動作を行うか否かにより変わるブレ量は、カメラの振れ量が同じであるならば、光学的なブレ補正の効果により変わることとなる。この光学的なブレ補正の効果は、製品ごとに異なるものであるが、例えば、光学的なブレ補正を行うか否かにより、シャッタースピードで３段（２3 ＝８倍）程度の効果が期待できる製品であるとすると、ｃ”≒８×ｃ’とするとよい。
【０１２２】
図４は、本発明におけるカメラの露光動作、画像回復動作の詳細を示すフローチャートである。
Ｓ５００では、全押しスイッチＳＷ２がＯＮか否かを判定する。全押しスイッチＳＷ２がＯＮの場合は、Ｓ５１０へ進み、全押しスイッチＳＷ２がＯＦＦの場合は、Ｓ５２０へ進む。
Ｓ５１０では、露光開始の処理が済んでいるか否かを判定する。露光開始処理が済んでいる場合は、Ｓ５２０へ進み、済んでいない場合は、Ｓ５３０へ進む。全押しスイッチＳＷ２は、露光動作のきっかけとなるスイッチである。このスイッチがＯＮとなったときに露光が開始されていなければここで露光を開始し、既に露光が開始されていれば露光の制御を行うようにする。
【０１２３】
Ｓ５２０では、露光中であるかどうかを判定する。露光中であればＳ５４０へ進み、そうでなければＳ５７０へ進む。
Ｓ５３０では、ミラーのアップ、シャッターを開ける等の露光開始のための処理を行う。
Ｓ５４０では、ＶＲＳＷ１３０がＯＮになっているか否かを判定する。ＶＲＳＷ１３０がＯＮとなっていればＳ５５０へ進み、ＶＲＳＷ１３０がＯＦＦであればＳ５６０へ進む。
Ｓ５５０では、基準値の積分を行う。これは、光学的なブレ補正装置によって補正しきれなかった像のブレを演算するものと等価である。積分した値はメモリ（振動情報保存部１４５）に蓄積しておき、露光後の点像分布関数の演算に利用する。その後、Ｓ５００へ戻る。
【０１２４】
Ｓ５６０では、目標駆動位置信号をカメラの振れに関する情報（振動検出信号）として読み込み、メモリ（振動情報保存部１４５）に蓄積しておく。これを利用して露光終了後に点像分布関数の演算を行う。なお、本実施例では、目標駆動位置信号を記憶することとしているが、角速度センサ１０から得られる信号を直接記憶するようにしてもよい。その後、Ｓ５００へ戻る。
このようにＳ５４０において、ＶＲＳＷ１３０の状態を判断し、その結果に応じて、メモリに記憶するものを基準値とするか目標駆動位置信号とするのかを切り替える（Ｓ５５０，Ｓ５６０）ことにより、その後の点像分布関数の演算のために記憶するデータ量を最小限とすることができる。
【０１２５】
Ｓ５７０では、露光を終了させるための処理が完了しているか否かを判定する。露光終了処理が完了している場合には、Ｓ５９０へ進み、露光終了処理が完了していない場合には、Ｓ５８０へ進む。
Ｓ５８０では、ミラーのダウン、シャッターを閉じる等の露光終了のための処理を行う。その後、Ｓ５００へ戻る。
Ｓ５９０では、点像分布関数の演算が終了しているか否かを判定する。点像分布関数の演算が終了していればＳ６１０へ進み、点像分布関数の演算が終了していなければＳ６００へ進む。
【０１２６】
Ｓ６００では、点像分布関数の演算を開始、又は、継続する。このステップに来た時点で点像分布関数の演算が開始されていなければ演算を開始し、既に演算が開始されていたらその演算を継続する。その後、Ｓ５００へ戻る。
Ｓ６１０では、画像回復に使用する演算式（ウィナーフィルタ）が設定されていないかどうかを判定する。演算式が未設定の場合は、Ｓ６２０へ進み、既に設定されている場合は、Ｓ６５０へ進む。
Ｓ６２０では、ＶＲＳＷ１３０がＯＮになっているか否かを判定する。ＶＲＳＷ１３０がＯＮとなっていればＳ６３０へ進み、ＶＲＳＷ１３０がＯＦＦであればＳ６４０へ進む。
Ｓ６３０では、数１１に示したウィナーフィルタを画像回復演算に使用するものとして設定する。
Ｓ６４０では、数１２に示したウィナーフィルタを画像回復演算に使用するものとして設定する。
Ｓ６５０では、  画像回復の演算が終了しているか否かを判定する。終了していればＳ１２０へ戻り、終了していなければＳ６６０へ進む。
Ｓ６６０では、画像回復の演算を開始、又は、継続する。このステップに来た時点で画像回復の演算が開始されていなければ演算を開始し、既に演算が開始されていたらその演算を継続する。その後、Ｓ５００へ戻る。
【０１２７】
図５は、本実施例において、光学的なブレ補正を行っていないときの画像回復の状態を示す図である。
図５と従来の画像回復の例である図１３とを比較する。図５（ｄ）は、光学的なブレ補正を行っていないときのウィナーフィルタを示しているが、本実施例では、数１２におけるｃ’を小さくしたことによりフィルタの値が抑えられていることが図５（ｄ）と図１３（ｄ）との比較により判る。こうすることにより、特定の周波数成分が著しく強調されることがなくなる。そうすると、従来問題になっていた回復画像の縞模様を低減することができる。
図６は、本実施例における画像回復の一例を示す図である。
図６は、図１２と同じ画像及び同じ点像分布関数として示しているが、回復結果の画像である図６（ｃ），図１２（ｃ）を比較すると、本実施例による画像回復結果のほうが、縞模様が目立たなくなっていることが確認できる。
【０１２８】
以上説明したように、本発明のカメラでは、光学的なブレ補正動作ＯＦＦの場合には、角速度センサの出力から点像関数を演算し、撮影後の画像回復処理によってブレを軽減することができる。
また、光学的なブレ補正動作ＯＮの場合には、基準値出力から点像関数を演算するようにし、ブレ補正レンズで補正しきれなかったブレを画像回復処理によって軽減することができる。
さらに、光学的なブレ補正動作のＯＮ時とＯＦＦ時のそれぞれに対して、ウィナーフィルタのパラメータ（ｃ’，ｃ”）を適切な値に設定することにより、それぞれの状況で回復画像の質を向上させることができる。
【０１２９】
さらにまた、ＶＲＳＷ１３０の状態を判断し、その結果に応じて、メモリに記憶するものを基準値とするか目標駆動位置信号とするのかを切り替えることにより、膨大なデータを保持することなく、光学的なブレ補正動作のＯＮ時とＯＦＦ時のそれぞれに対して最適な点像分布関数を演算することができる。
以上のことから、バッテリー不足、スイッチの入れ忘れなど、何らかの傷害によりブレ補正レンズが動作しない場合でも画像回復処理によってブレを軽減させることができる。また、補正レンズを動作させた（光学的なブレ補正動作を行う）場合は、画像回復処理をさらに行うことによって、よりブレ補正効果を高めることができる。
【実施例２】
【０１３０】
実施例１では、画像回復演算部は、カメラに内蔵されていた。しかし、現在のデジタル写真の用途から考えると、後からパソコン等により処理することが好ましい場合もある。実施例２は、実施例１における画像回復演算部１７０に相当する機能を、パソコン等に搭載されるアプリケーションソフト（ブレ補正プログラム）により実現させるようにした例である。
【０１３１】
図７は、実施例２における光学的なブレ補正装置を内蔵したカメラ、及び、画像回復システムの概要を示す図である。
実施例２の説明においては、図１と共通する部分の説明は、適宜省略する。
本実施例では、カメラ内で画像回復演算を行うのではなく、画像と点像関数をパソコン等に転送し、パソコン等により画像回復を行うようにしている。従って、画像回復演算部１７０ｂは、カメラに内蔵されず、また画像保存部１６０と点像関数演算部１４０は、接続コネクタ２１０と接続されている。
【０１３２】
接続コネクタ２１０は、画像保存部１６０に保存された画像と、点像関数演算部１４０で演算された点像関数とをカメラ外部に送信するためのコネクタである。接続コネクタ２１０には、接続ケーブル２２０が接続可能な構成になっており、接続ケーブル２２０を介してパソコンなどにデータを転送することができる。
【０１３３】
接続ケーブル２２０は、カメラボディ２００の接続コネクタ２１０とパソコン２３０の通信ポートとを接続するケーブルであり、このケーブルを介してカメラとパソコンとの間でデータの送受信を行う。
なお、接続コネクタ２１０及び接続ケーブル２２０からなる通信手段は、例えば、ＲＳ−２３２Ｃ、ＵＳＢ、パラレルポート、ＩＥＥＥ１３９４等どのような規格を用いてもよいが、パソコン２３０側の対応する規格に合わせて、複数種類を用意してもよい。
【０１３４】
パソコン２３０は、ディスプレイ、通信ポート等を備えた通常のコンピュータであり、別途供給される画像処理ソフト２４０を組み込む（インストール）することにより、本実施例における外部装置として利用可能となる。パソコン２３０は、接続ケーブル２２０によりカメラボディ２００と接続されており、接続ケーブル２２０を介してカメラボディ２００と通信を行うことにより、撮影した画像の表示や処理を行う。
【０１３５】
画像処理ソフト２４０は、接続ケーブル２２０を介してカメラボディ２００から画像データなどをパソコン２３０に転送して入力するデータ入力部（データ入力機能）２４０ａを含む他、パソコン２３０側からカメラの設定などを行うことができるプログラムである。画像処理ソフト２４０は、ＣＤ−ＲＯＭ等の媒体に格納されており、パソコン２３０にインストールして使用する。
また、画像処理ソフト２４０には、点像関数を読み込み、画像データと点像関数から画像回復演算を行う画像回復演算部１７０ｂ（画像回復演算機能）も含まれている。したがって、画像処理ソフト２４０をパソコン２３０上で実行することにより、パソコン２３０上で画像回復処理を行うことができるようになる。
【０１３６】
本実施例では、画像回復演算部１７０ｂでは、ウィナーフィルタの定数ｃ’又はｃ”を任意の値に変更することができる。本実施例では、とりあえず既定のウィナーフィルタの定数ｃ’又はｃ”により画像回復処理を実行してみて、その結果を確認した後に、ウィナーフィルタの定数ｃ’又はｃ”の変更をすることができ、この変更は、何度でも行うことができる。
このように、パソコン２３０上で画像回復処理を行うようにすれば、その効果を確認しながら処理を行うことができ、処理後の結果が気に入らない場合には、処理をキャンセルすることもできる。また、画像回復処理の効き具合を調整してブレ補正の効果を調整することもできる。
【０１３７】
本実施例によれば、画像回復演算部１７０ｂを外部装置であるパソコンなどに搭載することにより、カメラ内のマイコンよりも演算能力が勝るパソコンで演算させることができ、処理を高速に行うことができると共に、カメラの消費電力を抑えることができる。また、パソコンのディスプレイを使用することで、より効率よく、かつ詳細に画像回復の結果を確認することができる。
特に、光学的なブレ補正動作を行わない場合には、画像回復後にかえって画質の劣化を生じてしまう場合があるが、本実施例によれば、画像回復後の結果を十分に確認することができ、必要に応じてウィナーフィルタの定数の変更も行うことができるので、より確実に高画質な画像を得ることができる。
（変形例）
【０１３８】
以上説明した実施例に限定されることなく、種々の変形や変更が可能であって、それらも本発明の均等の範囲内である。
（１）各実施例において、画像回復には、数６に示したウィナーフィルタを使用する例を示したが、これに限らず他の手法を用いてもよい。
【０１３９】
（２）各実施例において、カメラは、一眼レフカメラである例を示したが、これに限らず、例えば、コンパクトカメラのような、レンズ非交換式でもよい。
【０１４０】
（３）実施例２において、接続ケーブル２２０を介して点像関数等をパソコン２３０へ伝える例を示したが、これに限らず、例えば、記憶媒体を介して伝えるようにしてもよいし、無線通信により伝えるようにしてもよい。
【０１４１】
（４）実施例２において、一般的なパソコンを利用して画像回復を行うようにした例を示したが、これに限らず、例えば、専用の画像処理装置等、他の外部装置であってもよい。
【０１４２】
（５）実施例２において、パソコンへは、画像及び点像関数を入力する例を示したが、これに限らず、例えば、パソコンへ画像及び点像関数を演算するために必要な基準値又は振れ検出信号を入力し、パソコン側で点像関数の演算を行ってもよい。
【図面の簡単な説明】
【０１４３】
【図１】本発明における光学的なブレ補正装置、画像回復部を内蔵したカメラの実施例１を示す模式図である。
【図２】実施例１におけるカメラの動作の流れを示すフローチャートである。
【図３】図１の駆動信号演算部５０、及び、画像回復を行うための各演算部の構成を示す図である。
【図４】本発明におけるカメラの露光動作、画像回復動作の詳細を示すフローチャートである。
【図５】実施例１において、光学的なブレ補正を行っていないときの画像回復の状態を示す図である。
【図６】実施例１における画像回復の一例を示す図である。
【図７】実施例２における光学的なブレ補正装置を内蔵したカメラ、及び、画像回復システムの概要を示す図である。
【図８】振れ検出装置を含んだ光学的なブレ補正装置の基本的な構成を示すブロック図である。
【図９】数１，２を模式的に表した図である。
【図１０】ドリフト成分を含まない場合の角速度センサ出力，基準値の出力，像面での振れ量を示す図である。
【図１１】ドリフト成分を含む場合の角速度センサ出力，基準値の出力，像面での振れ量を示す図である。
【図１２】従来の画像回復を説明する図である。
【図１３】従来の画像回復を説明する図である。
【図１４】ブレ量が小さい場合について図１２と同様に示した図である。
【図１５】ブレ量が小さい場合について図１３と同様に示した図である。
【符号の説明】
【０１４４】
１０  角速度センサ
２０  増幅部
３０，４０  Ａ／Ｄ変換器
５０  駆動信号演算部
５２  基準値演算部
５４  積分演算部
５８  駆動信号算出部
５９  信号流れ制御部
６０  Ｄ／Ａ変換器
７０  駆動部
８０  ブレ補正レンズ
９０  マイコン
１００  半押しタイマ
１１０  電源供給部
１２０  露光時間制御部
１３０  ブレ補正動作切り替えスイッチ（ＶＲＳＷ）
１４０  点像関数演算部
１４２  信号流れ制御部
１４４  点像関数変換演算部
１５０  イメージセンサ
１６０  画像保存部
１７０  画像回復演算部
１８０  モニタ
１９０  レンズ鏡筒
２００  カメラボディ
２１０  接続コネクタ
２２０  接続ケーブル
２３０  パソコン
２４０  画像処理ソフト
ＳＷ１  半押しスイッチ
ＳＷ２  全押しスイッチ
【図１】
2005252760.tif 000015
【図２】
2005252760.tif 000016
【図３】
2005252760.tif 000017
【図４】
2005252760.tif 000018
【図５】
2005252760.tif 000019
【図７】
2005252760.tif 000020
【図８】
2005252760.tif 000021
【図９】
2005252760.tif 000022
【図１０】
2005252760.tif 000023
【図１１】
2005252760.tif 000024
【図１２】
2005252760.tif 000025
【図１３】
2005252760.tif 000026
【図１４】
2005252760.tif 000027
【図１５】
2005252760.tif 000028
【図６】
2005252760.tif 000029