以下、本発明の各実施形態について、添付図面を参照して詳細に説明する。まず、各実施形態に共通する事項について説明する。
図1は、本発明の一実施形態に係わる撮像システムの構成を示すブロック図である。撮像システムは、主に静止画像と動画像の撮影を行うためのレンズ交換式のデジタルカメラである。本発明の適用範囲はデジタルカメラに限定されず、本発明は各種の撮像システムに適用することができる。
図1の撮像システムは、レンズ装置およびカメラ本体部から構成され、レンズ装置はカメラ本体部に装着して使用される。レンズ装置は101から112までを構成し、カメラ本体は113から125までを構成する。レンズ装置のズームユニット101は、変倍を行うズームレンズを含む。ズーム駆動制御部102は、ズームユニット101を駆動制御する。絞りユニット103は、絞りの機能を有する。絞り駆動制御部104は、絞りユニット103を駆動制御する。像振れ補正ユニット105はシフトレンズ等の像振れ補正レンズ(以下、補正レンズともいう)を備える。像振れ補正ユニット105は第1の像振れ補正手段であり、光学式像振れ補正制御部106が駆動制御を行う。フォーカスユニット107は、焦点調節を行って被写体像を形成するフォーカスレンズを含む。フォーカス駆動制御部108は、フォーカスユニット107を駆動制御する。
レンズ操作部109は、ユーザがレンズ装置の操作に使用する操作部である。レンズ振れ検出部110はレンズ装置に加わる振れ量を検出し、検出信号をレンズ制御部111に出力する。レンズ装置全体を制御するレンズ制御部111はCPU(中央演算処理装置)を備え、レンズ装置の各駆動制御部や補正制御部を統括制御する。レンズ制御部111は、レンズ通信制御部112を介して、カメラ本体部の制御部と通信する。
次にカメラ本体部について説明する。カメラ本体部はシャッタユニット113を備える。シャッタ駆動制御部114は、シャッタユニット113を駆動制御する。撮像部115は撮像素子を備え、各レンズ群を通過して結像される光像を光電変換して電気信号(画像信号とも称する)を出力する。撮像信号処理部116は、撮像部115から出力された電気信号を映像信号に変換処理する。映像信号処理部117は、撮像信号処理部116から出力された映像信号を用途に応じて加工する。例えば、電子式像振れ補正制御部123の補正量に応じて映像信号の切り出し位置を変更する。電子式像振れ補正制御部123(防振制御手段の一例である)は、第2の像振れ補正手段であり、画像の切り出しによって像振れ補正の制御(防振制御の一例である)を行う。なお、第2の像振れ補正については電子式像振れ補正に限らず、例えば撮像素子の駆動制御による像振れ補正やカメラ本体部内の可動光学素子の駆動制御による像振れ補正がある。
表示部118は、映像信号処理部117から出力された信号に基づいて、必要に応じて画像表示を行う。記憶部119は、映像情報等の様々なデータを記憶する。電源部120は、システム全体に用途に応じて電源を供給する。カメラ操作部121は、ユーザがカメラシステムの操作に使用する操作部であり、操作信号をカメラ制御部124に出力する。カメラ振れ検出部122はカメラ本体部に加わった手振れ等のカメラ振れを動きベクトルによって検出し、該カメラ振れに応じたカメラ動き信号をカメラ制御部124に出力する。カメラ制御部124はCPUを備え、カメラシステム全体を統括制御する。カメラ制御部124は、カメラ通信制御部125を介してレンズ装置のレンズ通信制御部112と通信する。つまり、レンズ装置がカメラ本体部に装着され、電気的に接続された状態において、レンズ通信制御部112とカメラ通信制御部125により相互通信が行われる。
次に、上記構成を有する撮像システムの概略動作について説明する。
レンズ操作部109、カメラ操作部121は、像振れ補正のON/OFFを選択可能な像振れ補正スイッチを含む。ユーザが像振れ補正スイッチを操作して像振れ補正をONに選択すると、レンズ制御部111またはカメラ制御部124は、光学式像振れ補正制御部106または電子式像振れ補正制御部123に像振れ補正動作を指示する。像振れ補正のOFFの指示がなされるまでの間、各像振れ制御部は像振れ補正の制御を行う。
また、カメラ操作部121は、像振れ補正に関して、第1のモードと第2のモードを選択可能な像振れ補正モードスイッチを含む。第1のモードは、光学像振れ補正(第1の像振れ補正)のみで像振れ補正を行うモードである。第2のモードは、光学式像振れ補正と電子式像振れ補正(第2の像振れ補正)を併用して像振れ補正を行うモードである。第1のモードが選択された場合、撮像部115の読み出し位置は一定となり、その分読み出し範囲を広げることで、より広角な撮影に対応できる。また、第2のモードが選択された場合、映像信号処理部117により映像信号の切り出し範囲が狭まる代わりに、切り出し位置を像振れ補正量に応じて変更することで、より大きな像振れに対応できる。
カメラ操作部121は、押し込み量に応じて第1スイッチ(SW1)および第2スイッチ(SW2)が順にオンするように構成されたシャッタレリーズボタンを含む。ユーザがシャッタレリーズボタンを約半分押し込んだときに第1スイッチSW1がオンし、シャッタレリーズボタンを最後まで押し込んだときに第2スイッチSW2がオンする。SW1のオンにより、フォーカス駆動制御部108がフォーカスユニット107を駆動して焦点調節を行うとともに、絞り駆動制御部104が絞りユニット103を駆動して適正な露光量に設定する。SW2のオンにより、撮像部115に露光された光像から得られた画像データが記憶部119に記憶される。
またカメラ操作部121は動画記録スイッチを含む。カメラは動画記録スイッチの押下後に動画撮影を開始し、ユーザが記録中に再度動画記録スイッチを押すと記録を終了する。動画撮影中にユーザがシャッタレリーズボタンを操作してSW1およびSW2がオンすると、動画記録中の静止画を取得して記録する処理が実行される。また、カメラ操作部121は再生モードを選択可能な再生モード選択スイッチを含む。再生モード選択スイッチの操作により再生モードが選択された場合、カメラは防振(像振れ補正)動作を停止する。
図2および図14を参照して撮像システムにおける像振れ補正制御について説明する。図2は、撮像システム全体の中で像振れ補正制御に係わる部分をより詳細に説明したブロック図である。図14は、Pitch(ピッチ)方向、Yaw(ヨー)方向、Roll(ロール)方向を説明する図である。図2のレンズ振れ検出部110は、振れ検出センサとしてジャイロセンサを用いて角速度データを検出し、検出電圧を出力する。レンズ振れ検出部110はPitch方向振れ検出センサ、Yaw方向振れ検出センサを有する。また、カメラ振れ検出部122は動きベクトルによる振れ検出を行う。図14に示すように、撮像装置において撮像光学系の光軸をZ軸とし、正位置での鉛直方向をY軸とし、Y軸およびZ軸に直交する方向をX軸と定義する。したがって、Pitch方向はX軸回り方向(チルティング方向)であり、Yaw方向はY軸回り方向(パンニング方向)であり、Roll方向はZ軸回り方向(撮像面が光軸に垂直な面で回転する方向)である。つまり、Pitch方向は、撮像装置の垂直方向において水平面に対する傾動方向であり、Yaw方向は、撮像システムの水平方向において鉛直面に対する傾動方向であり、互いに直交する方向である。
Pitch方向振れ検出センサは、Pitch方向の振れに応じた振れ情報を検出する。Yaw方向振れ検出センサは、Yaw方向の振れに応じた振れ情報を検出する。各振れ情報は角速度データとして取得される。なお、図2において、Pitch方向およびYaw方向に関して同様の構成となるため、片軸のみ説明を行う。
レンズ振れ検出部110は、例えばジャイロセンサ等の角速度センサによる角速度データを検出電圧として出力する。角速度検出AD変換部201は、レンズ振れ検出部110が出力した検出信号をデジタルデータに変換する。ハイパスフィルタ202は、角速度データのオフセット成分や温度ドリフト成分を除去して積分部203に出力する。積分部203は、主にローパスフィルタによる疑似積分で角速度データを積分し、角度データに変換する。光学式像振れ補正の敏感度乗算部204は、積分部203から取得した角度データを像振れ補正レンズの駆動制御量(シフト量)に変換する。この駆動制御量を像振れ補正量とも称する。この敏感度は撮像光学系の焦点距離が変わるごとに値が変更される。また敏感度には、角速度センサの感度調整による補正量も反映され、感度バラツキが吸収される。
分割部205は、敏感度乗算部204の出力する像振れ補正量を二分割する。像振れ補正量は、光学式振れ補正に適用する光学式像振れ補正量と、電子式振れ補正に適用する電子式像振れ補正量に分割される。分割部205は、光学式像振れ補正量の算出を行うため、像振れ補正量に対して係数(Kと記す)を乗算する。係数Kは、各焦点距離における、光学式像振れ補正の可動範囲(Aと記す)と電子式像振れ補正の可動範囲(Bと記す)によって下記式(1)のように決定される。可動範囲は像振れ補正の制御が可能な範囲であり、光学式像振れ補正の場合には像振れ補正ユニット105の駆動制御可能な範囲に相当する。また電子式像振れ補正の場合には画像の切り出しによる補正処理が可能な範囲に相当する。
K=A/(A+B) …(1)
式(1)から、Kは1以下の値をとる。つまり係数Kの乗算により、像振れ補正量の全体量に対して光学式像振れ補正の補正量(第1の像振れ補正量)が算出される。
光学式像振れ補正量のリミッタ部206は、第1の像振れ補正量を像振れ補正ユニット105の可動範囲でクランプする。こうすることで光学式像振れ補正の可動範囲端(駆動制御範囲の限界位置)に補正レンズが到達したままの状態になる事態を防ぐことができる。リミッタ部206の出力は減算部DECに入力される。
PID制御部207は、減算部DECからの入力に応じて像振れ補正レンズの位置制御を行う。位置制御は、P(比例)制御、I(積分)制御、D(微分)制御の組み合わせにより行われる。ドライバ部208は、第1の像振れ補正量に相当するPID制御部207の制御信号にしたがって、像振れ補正ユニット105を駆動するための電流を供給する。像振れ補正ユニット105は電磁アクチュエータを備え、像振れ補正レンズを含む可動ユニットを駆動される。位置検出部209は、像振れ補正ユニット105の位置を検出し、検出電圧を出力する。AD変換部210は、位置検出部209の出力するアナログ検出電圧をデジタルデータに変換し、減算部DECに出力する。減算部DECはリミッタ部206とAD変換部210の各出力の差分(偏差)を算出してPID制御部207に出力する。これにより、フィードバック制御が行われる。
一方、分割部205は、電子式像振れ補正量を算出するため、敏感度乗算部204の出力する像振れ補正量に対して係数「1-K」を乗算する。光学式像振れ補正量については、係数Kが乗算されるのに対し、電子式像振れ補正量については係数「1-K」の乗算により、像振れ補正量が分割される。角度変換部211は、電子式像振れ補正量(第2の像振れ補正量)を角度データに変換する。この変換係数は焦点距離ごとに異なる値をもち、焦点距離が変わるごとに変更される。変換後のデータはレンズ通信制御部112、カメラ通信制御部125を介して、電子式像振れ補正制御部123に伝達される。電子式像振れ補正制御部123は、第2の像振れ補正量、およびカメラ振れ検出部122で得られた振れ量に基づく電子式像振れ補正量に応じて電子式像振れ補正制御を行う。図11を参照して、像振れ補正の可動範囲について具体的に説明する。
図11はカメラの焦点距離と像振れ補正の可動範囲との関係を示すグラフである。横軸は焦点距離fを表し、Wide(広角)端、Middle(中間)位置、Tele(望遠)端を示す。縦軸は可動範囲(単位:degree)を表す。(a)、(b)、(c)のグラフ線はそれぞれ、光学式像振れ補正の可動範囲A、電子式像振れ補正の可動範囲B、全体の像振れ補正可動範囲(A+B)を示している。即ち、(a)+(b)=(c)の関係にある。
光学式像振れ補正の可動範囲Aは撮影レンズの光学特性で決まり、電子式像振れ補正の可動範囲Bは撮像素子の余剰画素で決まる。なお、光学式像振れ補正の可動範囲A、電子式像振れ補正の可動範囲Bともにズーム状態によって補正角度が変わる。即ち、カメラに同じ振れが加わった場合でも、ズームポジション(光学ズーム倍率、焦点距離)によって、像振れを補正するための像振れ補正ユニット105の駆動量は異なる。同じ1degreeの振れがカメラに加わったとしても、この1degreeの振れによる像振れを補正するためにWide端で像振れ補正ユニット105のシフトレンズが移動する量の方が、Tele端でシフトレンズが移動する量よりも小さい。光学式像振れ補正の可動範囲Aおよび電子式像振れ補正の可動範囲Bはいずれも焦点距離fによって変化し、像振れ補正の制御上ではいずれも角度換算したデータとして管理される。
図12は焦点距離と係数Kの関係を示すグラフである。図11と同様に横軸は焦点距離fを表し、縦軸は像振れ補正量の分割用の係数Kを表す。係数Kは光学式像振れ補正の可動範囲Aと電子式像振れ補正の可動範囲Bによって決定される。また、光学式像振れ補正と電子式像振れ補正がそれぞれ動作するため、光学式像振れ補正と電子式像振れ補正の可動端の境界が存在しなくなる。その結果、光学式像振れ補正のオーバーシュートによる画像の乱れが抑えられる。
図12に示すWide端、Middle位置、Tele端について具体的に説明する。光学式像振れ補正では、像振れ補正レンズが可動範囲A内で移動し、電子式像振れ補正は可動範囲B内で画像処理が実行される。これらの補正を併せて、全体の像振れ補正可動範囲に対応する像振れを補正できる。一例として、光学式像振れ補正の可動範囲AをWide端、Middle位置、Tele端でそれぞれ、(2,0.75,0.3)とする。電子式像振れ補正の可動範囲BをWide端、Middle位置、Tele端でそれぞれ、(2.5,1.6,1.1)とする。可動範囲AおよびBの単位はdegreeである。この場合、係数Kの値はWide端、Middle位置、Tele端でそれぞれ、(0.444,0.319,0.214)となる。
光学式像振れ補正と電子式像振れ補正を行う第2のモードが設定された場合、K=A/(A+B)の乗算結果の像振れ補正量で補正レンズの駆動が行われ、係数「1-K」の乗算結果の像振れ補正量で撮像の切り出し位置が変更される。一方、光学式像振れ補正のみを行う第1のモードが設定された場合、分割部205は係数Kの値を1とする。つまり、像振れ補正量の全体量を光学式像振れ補正量として補正レンズの駆動制御が行われる。電子式像振れ補正は行わないため、電子式像振れ補正量に係る係数「1-K」の値はゼロである。
次に、第2のモードでの静止画撮影について説明する。カメラ操作部121のシャッタレリーズボタンの操作により第2スイッチSW2がオンになると、静止画露光動作が行われる。分割部205は係数Kの値を1とする。像振れ補正量の全体量が光学式像振れ補正量となる。電子式像振れ補正は静止画露光時に行わないため、電子式像振れ補正量に係る係数「1-K」の値はゼロである。静止画露光動作の終了時に分割部205は、光学式像振れ補正にて係数K=A/(A+B)を設定し、電子式像振れ補正にて係数「1-K」に設定する。なお、静止画露光動作の開始時と終了時には、光学式像振れ補正、および電子式像振れ補正の補正量の急な変動を避けるため、所定の出力時間を設けて徐々に補正出力を変更する処理が行われる。
図3は電子式像振れ補正制御部123の構成を詳細に示すブロック図である。
カメラ通信制御部125は、レンズ装置から通信を介して電子式像振れ補正量を受信する。Pitch方向とYaw方向の電子式像振れ補正量は、角度に換算された補正量として伝達される。Pixel変換部301は電子式像振れ補正量をPixel換算の補正量(画素数)に変換してリミッタ305に出力する。変換係数は焦点距離ごとに異なる値をもち、焦点距離が変わるごとに変更される。
カメラ振れ検出部122は動きベクトルによる振れ検出を行い、検出信号をリミッタ302に出力する。動きベクトルの出力は、撮像面に対する上下左右方向の移動量である。リミッタ302は、レンズ側で検出した振れ情報とカメラ側で検出した振れ情報を用いて電子式像振れ補正量を生成し、電子式像振れ補正の切り出し範囲でクランプする。リミッタ302はPixel変換部301、カメラ振れ検出部122の出力に対して処理を行う。すなわち、Pitch方向、Yaw方向ごとにリミッタの各レベルが設定されている。リミット処理後の補正量は電子式像振れ補正量設定部303に入力される。電子式像振れ補正量設定部303は、各補正軸方向の電子式像振れ補正量をそれぞれ設定する。
[第1実施形態]
以下に本発明の第1実施形態を説明する。
図4を参照して、レンズ側検出振れ情報(防振情報の一例である)の検出タイミングとID情報、またカメラ側検出振れ情報(防振情報の一例である)の検出タイミングとID情報について説明する。光学式像振れ補正と電子式像振れ補正を行うためには、カメラ本体部からレンズ装置に撮像部115の露光重心タイミング(406)を伝える必要がある。しかし、カメラ本体部とレンズ装置との間の通信は、像振れ補正以外にも、AF(自動焦点調節)やAE(自動露出)等のための多くの通信がある。他の通信との重なりにより通信タイミングがばらつき、正確な露光重心タイミングが通信できない場合、処理に支障を来たす可能性がある。そこで、本実施形態では通信タイミングずれを回避するために、基準時間と相対時間の2回に分けて通信処理を行うことで、カメラ本体部がレンズ装置に露光重心タイミングを伝える。
また、カメラ本体部とレンズ装置との間の通信で送受する情報の量が多いと、規定時間内に処理を完了させることが困難となる。さらに、様々な交換レンズに対応するためには、個々のレンズ仕様を意識することなく制御することが必要となる。そこで、本実施形態では、レンズ装置が主体となって制御を行い、像振れ補正のための角度換算データでの通信を行う。
図4に示すVDは垂直同期信号のタイミングを示し、V_BLKは垂直ブランキング期間のタイミングを示している。「CMOS駆動」は撮像素子の駆動状態を示している。「C⇔L通信」はカメラ本体部(C)とレンズ装置(L)との間の通信を示している。最下段の「Cブレ」、カメラ本体部の振れ検出を示す。第1の通信401の通信タイミング404と、露光時間が決まるタイミング405と、露光重心タイミング406、をそれぞれ示している。F[n]は第nフレームを表す指標であり、そのフレーム番号が通知されるタイミング408、を示している。
図4に示す各時間は以下の通りである。
BT:垂直ブランキング期間の長さ
IT:イメージ時間
AT:通信タイミング404からタイミング405までの時間
ET:露光時間
DT:露光期間の中心から露光重心タイミング406までの遅延時間。
タイミング405を基準とする露光重心タイミング406は、露光期間の中心に基づいて、「IT+BT-ET/2+DT」により計算される。
なお、各フレームにおいて平行四辺形の重心位置が露光重心タイミング406に対応しており、露光量が少ないほど平行四辺形の面積は小さくなる。露光開始時点(平行四辺形の左上頂点)から露光時間ETが経過した時点(平行四辺形の右上頂点)で撮像素子の信号読み出しが開始する。
撮像部115の垂直同期信号を起点として、カメラ本体部からレンズ装置へ第1の通信401が行われる。第1の通信401は、カメラ本体部からレンズ装置へ露光重心タイミング406を伝えるための基準となる。レンズ装置は第1の通信401による情報を受け取ったタイミングで、レンズ装置内のタイマー時間を取得し、その時間を露光重心タイミング算出のための基準時間とする。なお、第1の通信401の通信タイミング404については、垂直同期信号と同じタイミングで通信を行ってもよいし、垂直同期信号から任意の時間の前または後に通信してもよい。ただし、毎フレーム、垂直同期信号に対して一定の時間差で通信が行われるようにする。また、第1の通信401の通信タイミング404は、他の通信と重ならないタイミングとする。図4に示す例では、垂直同期信号よりも手前(過去)の時点に、第1の通信401の通信タイミング404が設定されている。
次に、カメラ本体部からレンズ装置へ第2の通信402が行われる。第2の通信402では、第1の通信401を基準とする、第1の通信401の通信タイミング404から露光重心タイミング406までの相対時間407の情報がレンズ装置に伝達される。また第2の通信402では、現在の焦点距離における電子式像振れ補正の可動範囲Bと、振れ情報を判別するためのID情報が伝達される。このID情報には、振れを検出するタイミングに対応する撮像フレーム番号を設定する。これにより、一意のID情報が設定される。第2の通信402の通信タイミングは、露光重心を伝える該当フレームの露光時間が決まるタイミング405の後である。これにより、各フレームで露光時間が変わる場合にも、正確な露光重心タイミング406をレンズ装置に伝えることができる。決定された露光時間と、撮像素子の信号読み出し時間に基づいて露光重心タイミング406が求められ、第1の通信401の通信タイミング404を基準とする差により相対時間407が求まる。つまり相対時間407は、「AT+IT+BT-ET/2+DT」により計算される。なお、各フレームの露光時間が決まるタイミング405は固定されているわけではない。また、第2の通信402の通信タイミングは、フレーム番号が通知されるタイミング408の前である。そのため、振れ情報を判別するためのID情報には、振れを検出するタイミングに対応する撮像フレーム番号として、それまでに通知を受けている撮像フレーム番号の次のフレーム番号を設定するようにする。
レンズ装置は、第1の通信401の受信タイミングを基準として、第2の通信402で相対時間407の情報を受け取る。これにより、レンズ装置内のタイマー設定により露光重心タイミング406を把握できる。また、レンズ装置は第2の通信402により、電子式像振れ補正の可動範囲Bを受け取ることで、レンズ装置自身の光学式像振れ補正の可動範囲Aをも含めて、分割部205で用いる係数Kを算出できる。レンズ装置では露光重心タイミング406にて、レンズ振れ検出部110が振れ情報を検出し、さらに分割部205は像振れ補正量の全体量を、レンズ装置での光学式像振れ補正量とカメラ本体部での電子式像振れ補正量に振り分ける。レンズ制御部111はカメラ制御部124からの通信要求があるまで、振り分けた電子式像振れ補正量と、第2の通信402で伝達された振れ情報を判別するためのID情報と共にメモリに保持する。
一方で、カメラ本体部でも、カメラ振れ検出部122により、カメラ本体部の振れ情報を取得する。本実施形態で検出するカメラ本体部の振れ情報は動きベクトルである。それに先立ち、カメラ本体部は振れ情報を判別するためのID情報を設定する。このID情報には、振れを検出するタイミングに対応する撮像フレーム番号を設定する。これにより、一意のID情報が設定される。ID情報を設定するタイミングは、フレーム番号が通知されるタイミング408の後のタイミングである409である。よって、振れ情報を判別するためのID情報には、フレーム番号が通知されるタイミング408で通知された撮像フレーム番号をそのまま設定するようにする。また、カメラ本体部の振れ情報を取得が可能になるのは、振れ検出をするフレームに対する動きベクトルの検出が完了するタイミングである410となる。ここで、カメラ本体部の振れ情報が取得できると共に、先に設定した振れ情報を判別するためのID情報を取得する。
次に、カメラ本体部からレンズ装置へ第3の通信403が行われる。第3の通信403では、カメラ制御部124からの通信要求を受けて、レンズ制御部111がカメラ制御部124に対し、振り分けた後のレンズ側検出振れ情報(本実施例では振り分けた電子式像振れ補正量)と、第2の通信402で伝達された振れ情報を判別するためのID情報を伝える。これにより、レンズ側で検出した振れ情報をID情報と共に取得する。第3の通信403の通信タイミングは、露光重心タイミング406の後である。元々カメラ制御部124は露光重心タイミング406を把握しているので、露光重心タイミング後の任意のタイミングで通信を行う。
カメラ本体部では、レンズ制御部111から受け取ったレンズ側検出振れ情報と、カメラ振れ検出部122で検出したカメラ側検出振れ情報のもつ、それぞれのID情報が一致するかを判定する。一致する場合に、2つの振れ情報から生成したカメラ電子式像振れ補正量を、電子式像振れ補正制御部123に渡し、最終的に電子式像振れ補正量設定部306が補正量を設定する。その際には、生成したカメラ電子式像振れ補正量と先のID情報と関連付けて設定する。
第1の通信、第2の通信及び第3の通信は毎フレームで行われ、カメラ制御部124は第1の通信401で基準時間をレンズ制御部111に通知する。カメラ制御部124は第2の通信402で、振れ情報を判別するID情報と基準時間からの相対時間と電子式像振れ補正の可動範囲を通知する。第3の通信403でカメラ制御部124はレンズ制御部111から、振れ情報を判別するID情報とレンズ側検出振れ情報を取得する。他方、レンズ制御部111は毎フレームにて、第1の通信401で基準時間を取得し、第2の通信で振れ情報を判別するID情報と基準時間からの相対時間407と電子式像振れ補正の可動範囲を取得し、露光重心タイミング406での電子式像振れ補正量を振り分ける。振り分けられた電子式像振れ補正量と振れ情報を判別するID情報は、レンズ制御部111が第3の通信403でカメラ制御部124に通知する。
図5および図6を参照して本実施形態の処理について説明する。図5は、カメラ制御部124が行う通信と制御内容に関するフローチャートである。図6はレンズ制御部111が行う通信と制御内容に関するフローチャートである。以下の処理は各制御部のCPUがメモリから読み出して実行する所定のプログラムにしたがって実現される。
図5に示す処理の主体はカメラ制御部124であり、カメラ通信制御部125、レンズ通信制御部112を介してレンズ制御部111との間で通信処理が実行される。
S101で、カメラ制御部124はレンズ制御部111に対し、第1の通信401を行う。第1の通信401の通信タイミング404が露光重心タイミング406に関する基準時間となる。
次にS102で第2の通信402が行われる。第1の通信401での基準時間からの相対時間407の送信により、露光重心タイミング406が伝達される。そして現在の焦点距離における電子式像振れ補正の可動範囲が送信される。さらに振れ情報を判別するための第1のID情報が送信される。このID情報には、振れを検出するタイミングに対応する撮像フレーム番号を設定する。前述のように、設定する撮像フレーム番号は、撮像フレーム番号の通知タイミングと、振れを検出するタイミングに合わせて補正して設定する。
S103で、カメラ制御部124は、カメラ振れ検出部122で検出するカメラ本体部の振れ情報を判別するための第2のID情報を設定する。このID情報にも、振れを検出するタイミングに対応する撮像フレーム番号を設定する。前述のように、設定する撮像フレーム番号は、撮像フレーム番号の通知タイミングと、振れを検出するタイミングに合わせて補正して設定する。
S104で、カメラ制御部124は露光重心タイミング406から一定時間(所定時間とも称する)が経過したか否かを判定する。一定時間とは露光重心タイミング406から予め設定されている時間である。露光重心タイミング406から一定時間が経過している場合、処理はS105に進み、経過していない場合にはS104に戻り、処理を繰り返す。S104で一定時間の経過を待つ理由は、レンズ制御部111が露光重心タイミング406での制御処理を完了した状態で、カメラ制御部124がレンズ制御部111へ通信要求を行うためである。
S105で、カメラ制御部124は、第3の通信を実行する。つまり、レンズ制御部111に対して通信要求を送信する。そして、この通信要求への応答として、露光重心タイミング406でレンズ制御部111が振り分けたレンズ側検出振れ情報と、先のS102で通知した振れ情報を判別するための第1のID情報とを、レンズ制御部111から受信する。
次のS106で、カメラ制御部124は、カメラ振れ検出部122で検出するカメラ本体部の振れ情報を検出したかを判定する。具体的には、動きベクトル検出の完了割り込みで判定する。カメラ本体部の振れ情報を検出した場合は、処理はS107に進み、検出していない場合にはS106に戻り、処理を繰り返す。
S107で、カメラ制御部124は、カメラ振れ検出部122で検出したカメラ本体部の振れ情報と、先のS103で設定した振れ情報を判別するための第2のID情報を取得する。
S108で、カメラ制御部124は、先のS105で取得したレンズ側検出振れ情報に対応づけられた第1のID情報と、先のS107で取得したカメラ側検出振れ情報に対応づけられた第2のID情報とが、一致するかを判定する。第1のID情報と第2のID情報とが一致する場合は、処理はS109に進み、振れ情報のID情報が一致しない場合にはS101に戻り、処理を繰り返す。なお、振れ情報のID情報が一致しなかった場合は、前回設定した電子式像振れ補正量を設定するようにしても良い。また、振れ情報のID情報の不一致が所定回数続いた場合には、通信異常等の何らかのエラーが生じていると判断して、リセット処理(電源OFFし再度電源ONすることに相当する処理を行うようにしても良い。
S109で、カメラ制御部124は先のS105で取得したレンズ側検出振れ情報と、先のS107で取得したカメラ側検出振れ情報を用いて、電子式像振れ補正量を生成する。より具体的には、カメラ側検出振れ情報からレンズ側検出振れ情報のフレーム間差分を減算し、それをレンズ側検出振れ情報に加算することで、電子式像振れ補正量を生成する。電子式像振れ補正量を生成された際には、生成した電子式像振れ補正量と振れ情報のID情報とを関連付けて設定する。
最後にS110で、カメラ制御部124は、電子式像振れ補正制御部123に指示し、S109で生成した電子式像振れ補正量に基づいて像振れ補正動作が行われる。
図6に示す処理の主体はレンズ制御部111であり、レンズ通信制御部112、カメラ通信制御部125を介してカメラ制御部124との間で通信処理が実行される。S201で、レンズ制御部111は第1の通信401を受け付ける。第1の通信401の通信タイミング404でレンズ装置内のタイマー時間を取得する処理が実行され、その時間が露光重心タイミングの算出のための基準時間となる。
次にS202で、レンズ制御部111は第2の通信402を受け付け、第1の通信401の通信タイミング404での基準時間からの相対時間407と、電子式像振れ補正の可動範囲と、振れ情報を判別するための第1のID情報を取得する。レンズ制御部111は第1の通信401の通信タイミング404で基準時間を取得しているため、第2の通信で相対時間407を受け取り、タイマー設定により露光重心タイミングを設定する。また、レンズ制御部111は電子式像振れ補正の可動範囲を取得する。この可動範囲とレンズ装置自身の光学式像振れ補正の可動範囲を含めて、分割部205が用いる係数Kが算出されて、光学式像振れ補正および電子式像振れ補正に係るそれぞれの補正量が設定される。
S203で、レンズ制御部111はS202でタイマー設定された露光重心タイミングが到来したか否かを判定する。露光重心タイミング406が到来した場合には、S204へ処理を進め、露光重心タイミング406が到来していない場合にはS203の判定処理を繰り返す。
S204で、レンズ制御部111は露光重心タイミング406にて、レンズ振れ検出部110から振れ情報を取得し、分割部205は係数Kの値にしたがって像振れ補正量の全体量を、光学式像振れ補正量と電子式像振れ補正量に振り分ける。レンズ制御部111は、カメラ制御部124がS105において送信する通信要求を取得するまで、振り分けた電子式像振れ補正量と、先のS202で取得した振れ情報を判別するための第1のID情報と共に一時記憶しておく。
S205で、レンズ制御部111は、カメラ制御部124からS105において送信される第3の通信403の通信要求を、受信したか否かを判定する。第3の通信の通信要求を受信した場合には処理をS206に進め、通信要求を受信していない場合にはS205の判定処理を繰り返す。S206で、レンズ制御部111はS105において送信される第3の通信403の通信要求の受信への応答として、S204で振り分けた後のレンズ側検出揺れ情報と、先のS202で取得した振れ情報を判別するため第1のID情報をカメラ制御部124に通知する。
<第1の実施形態による効果>
本実施形態では、1回の通信で露光期間のタイミング情報を伝えるわけではなく、カメラ本体部からレンズ装置へ、第1および第2の通信で基準時間と相対時間をそれぞれ通知する。これにより、他の通信の影響により第2の通信の通信タイミングがばらついたとしても、第1の通信による基準時間と、第2の通信による相対時間がレンズ装置に伝達されるので、レンズ装置に正確な露光重心タイミングを伝達できる。
また、仮に第1の通信が他の通信と重なり、通信が遅れたとしても、第1の通信の発行時の遅延時間を考慮して、第2の通信による相対時間を設定することができる。つまり、遅延時間に基づいて補正された相対時間の情報により露光重心タイミングを通知できる。よって、第1の通信の通信タイミングがばらついたとしても、より正確な露光重心タイミングをカメラ本体部からレンズ装置に伝達できる。
電子式像振れ補正の可動範囲や、電子式像振れ補正量は角度換算データで通知される。カメラ制御部124は電子式像振れ補正の可動範囲をレンズ制御部111へ送信し、電子式像振れ補正量をレンズ制御部111から取得する。
さらに、カメラ制御部124は、振れ情報を判別するためのID情報を、それぞれレンズ側振れ情報とカメラ側振れ情報に対して送信または設定を行うため、2つの振れ情報のID情報の一致を持って、振れ情報の同期を取ることができる。
本実施形態によれば、レンズ交換式の撮像システムにおいて個々のレンズおよびカメラ仕様を意識することなく、より少ない通信量で光学式像振れ補正と電子式像振れ補正の複数の補正手段と、レンズ側の角速度センサとカメラ側の動きベクトルの複数の振れ検出手段による補正を、協調かつ同期をとって制御することができる。これにより、像振れ補正範囲を拡大させる撮像システムを提供できる。
[第2実施形態]
次に本発明の第2実施形態を説明する。本実施形態にて第1実施形態の場合と同様の構成については既に使用した符号を用いることにより、それらの説明を省略して、主に相違点を説明する。このような説明の省略については後述の実施形態でも同じである。
第1実施形態では、カメラ制御部124がレンズ制御部111へ露光期間のタイミング情報を送信した後で、レンズ制御部111が露光重心タイミングで振り分けたレンズ側検出振れ情報を取得する。また、カメラ本体部に加わった手振れ等のカメラ振れを動きベクトルによって検出する構成であった。これに対し本実施形態では、カメラ振れ検出部122が不図示の角速度センサを有し、当該角速度センサを用いて振り分け対象以外の補正軸方向(Roll方向)の補正を行うことにより、像振れ補正効果を高めることができる。
図7のフローチャートを参照して、本実施形態の制御内容について説明する。図7では、カメラ本体部における通信処理と振れ検出処理を含めた制御例を示す。まず、S301でカメラ制御部124はカメラ通信制御部125を介してレンズ制御部111と第1の通信を行う。第1の通信タイミングの時間が露光重心タイミングの基準時間となる。次にS302で第2の通信402が行われる。第1の通信401での基準時間からの相対時間407の送信により、露光重心タイミング406が伝達される。そして現在の焦点距離における電子式像振れ補正の可動範囲が送信される。さらに振れ情報を判別するための第1のID情報が送信される。このID情報には、振れを検出するタイミングに対応する撮像フレーム番号を設定する。設定する撮像フレーム番号は、撮像フレーム番号の通知タイミングと、振れを検出するタイミングに合わせて補正して設定する。
S303で、カメラ制御部124は、カメラ振れ検出部122で検出するカメラ本体部の振れ情報を判別するための第2のID情報を設定する。このID情報にも、振れを検出するタイミングに対応する撮像フレーム番号を設定する。設定する撮像フレーム番号は、撮像フレーム番号の通知タイミングと、振れを検出するタイミングに合わせて補正して設定する。
S304で、カメラ制御部124はタイマー設定により、露光重心タイミングが到来したか否かを判定する。露光重心タイミングが到来したと判定された場合、S305に進み、到来していなければS304の判定処理を繰り返す。
S305にて、カメラ制御部124は露光重心タイミングで、カメラ振れ検出部122により検出された、カメラ本体部の振れ情報と先のS303で設定した振れ情報を判別するための第2のID情報を取得する。ここで検出される振れ情報は、後のS307でレンズ制御部111から取得する電子式像振れ補正量に関する補正軸とは異なる補正軸の振れ情報、つまり検出方向が異なるセンサの検出情報である。本実施例ではRoll方向の補正軸の振れ情報である。
S306で、カメラ制御部124は露光重心タイミングから一定時間が経過したか否かを判定する。露光重心タイミングから一定時間が経過したことが判定された場合、S307に進み、経過していなければ、S306の判定処理を繰り返す。S306にて一定時間の経過を待つ理由は、図5のS104で説明したとおりである。
S307で、カメラ制御部124はカメラ通信制御部125を介してレンズ制御部111と第3の通信を行う。つまり、カメラ制御部124はレンズ制御部111に対して通信要求を送信する。そして、この通信要求のレンズ制御部111による受信に応じて、レンズ制御部111が露光重心タイミング406でレンズ制御部111が振り分けたレンズ側検出振れ情報と、先のS302で通知した振れ情報を判別するための第1のID情報を取得する。ここで、レンズ側検出振れ情報は、S304で検出された振れ情報とは異なる補正軸の振れ情報であり、具体的にはPitch方向およびYaw方向の補正軸の振れ情報である。
S308で、カメラ制御部124は、先のS305で取得したカメラ側検出振れ情報と、先のS307で取得したレンズ側検出振れ情報のもつ、それぞれのID情報が一致するかを判定する。振れ情報のID情報が一致する場合は、処理はS309に進み、振れ情報のID情報が一致しない場合にはS301に戻り、処理を繰り返す。ここでもS108と同様に、振れ情報のID情報が一致しなかった場合は、前回設定した電子式像振れ補正量を設定するようにしても良い。また、振れ情報のID情報の不一致が所定回数続いた場合には、通信異常等の何らかのエラーが生じていると判断して、リセット処理(電源OFFし再度電源ONすることに相当する処理)を行うようにしても良い。
S309で、カメラ制御部124は先のS305で取得したカメラ側検出振れ情報と、先のS307で取得したレンズ側検出振れ情報を用いて、電子式像振れ補正量を生成する。その際には、生成した電子式像振れ補正量と振れ情報のID情報とを関連付けて設定する。
最後にS310で、カメラ制御部124は、電子式像振れ補正制御部123に指示し、S309で生成した電子式像振れ補正量に基づいて像振れ補正動作が行われる。
<第2の実施形態による効果>
本実施形態では、レンズ制御部111により振り分けられた電子式像振れ補正量と、カメラ本体部の角速度センサによって検出した振れ情報を取得して像振れ補正制御が行われる。電子式像振れ補正量は、Pitch方向およびYaw方向に関する補正量であり、カメラ本体部の振れ情報は、振り分け対象でない補正軸方向(Roll方向)の振れ検出情報である。
カメラ制御部124は、振れ情報を判別するためのID情報を、それぞれレンズ側振れ情報とカメラ側振れ情報に対して送信または設定を行う。このため、カメラ本体部の振れ情報(Roll方向)とレンズ側振れ情報(Pitch方向およびYaw方向)のID情報の一致を持って、3軸方向の振れ情報の同期を取ることができる。このようにタイミングの同期をとった振れ情報に基づいて3軸方向における電子式像振れ補正が行われるので、像振れ補正効果を高めることができる。
[第3実施形態]
次に本発明の第3の実施形態では、その他の電子式補正としてローリングシャッタ歪み(以下、RS歪みという)補正への適用について説明する。
撮像部115の露光方式には、グローバルシャッタ方式とローリングシャッタ方式とがある。CCD(電荷結合素子)イメージセンサに代表されるグローバルシャッタ方式の装置では、1つのフレーム画像において画素間の露光時間および露光開始時刻はほぼ同一である。CMOS(相補型金属酸化膜半導体)イメージセンサを備える装置では、露光方式がローリングシャッタ方式である。
画素ラインごとに露光タイミングが異なるローリングシャッタ方式では、ラインごとの露光タイミングおよび信号読み出し時間のずれに起因する画像歪み(RS歪み)が発生する。撮像装置の振れがラインごとの信号読み取りに影響を及ぼし、RS歪みが発生する。撮像装置が三脚等に据え付けられていたとしても、風等の外乱により装置に振動が加わると、RS歪みが発生する。RS歪みは、露光タイミングが画素ラインごとに異なることにより、撮影された画像に生じる歪みであるため、撮像装置の振れ信号に基づいて、各画素ラインの移動量を補正量として補正することができる。
図11の概念図を参照して、RS歪み補正について説明する。撮像装置が水平方向に動いた場合を想定し、RS歪みの発生前の画像1301(点線の矩形枠)と、RS歪みの発生後の画像1302(実線の平行四辺形枠)を例示する。右側の図は、露光期間中に発生する、撮像装置の水平方向の移動量(振れ量)を複数の点1303で例示する。横軸は画素位置を表し、縦軸は時間軸に対応する。図示の例では11点を例示している。
撮像装置では、露光期間中に発生する装置の水平方向の移動量(振れ量)が、複数の点において算出される。これらの点を補正点とも称する。複数の点の間を補間することで各ラインの移動量が補正量として取得され、水平方向の振れに対してラインごとに読み出し位置を変更することで補正処理が行われる。つまり、レンズ振れ検出部110(図2)は、RS歪みを発生させる振れを検出する。映像信号処理部117は電子的にRS歪み補正を行う。RS歪みを補正する補正量の算出については、電子式像振れ補正量と同様に分割部205が行い、像振れ補正量に対して係数「1-K」を乗算する。カメラ通信制御部125(図3)は、レンズ装置からRS歪み補正量を取得する。Pixel変換部301は、角度換算で伝達された電子式像振れ補正量をPixel換算値に変換する。このときに使用される変換係数は焦点距離ごとに異なる値をもち、焦点距離が変わるごとに変更される。さらに、リミッタ302はRS歪み補正の可動範囲でクランプを行う。各補正軸方向のリミット値が設定されている。電子式像振れ補正量設定部303は、各補正軸方向のRS歪み補正量の設定を行う。
次に図8を参照して、レンズ通信制御部112とカメラ通信制御部125との間で行われるRS歪み補正に関する通信とそのタイミングについて説明する。VD、V_BLK等については図4と同じである。
RS歪み補正を行うためには、カメラ本体部からレンズ装置に対し、撮像部115の露光重心タイミング(1009)を伝える必要がある。前述のように、RS歪み補正では複数の補正点(本実施例では、の露光重心タイミング1009に対応するフレームに対して、例えば1006から1010まで斜めに続く11点として例示する)があるため、基準時間に対する相対時間として、露光重心タイミング1009と、先頭の補正タイミング(複数の補正点のうち、補正タイミングが最初に到来する補正点に対応する補正タイミングである)と次の補正点との差分時間(後述のRS歪み補正先頭差分時間1008)が伝達される。本実施形態でも通信タイミングずれを回避するために、基準時間と相対時間の2回に分けて通信が行われる。
図8にて、第1の通信1001を通信タイミング1004で示す。第2の通信1002は、露光重心を伝える該当フレームの露光時間が決まるタイミング1005の後に実行される。第2の通信では、レンズ制御部111からカメラ制御部124に、RS歪み補正の露光重心タイミング1009とRS歪み補正先頭差分時間1008を伝達する処理が実行される。レンズ制御部111が主体となって制御を行い、RS歪み補正のための角度換算データで通信を行う。
撮像部115の垂直同期信号(VD参照)を起点として、カメラ制御部124はレンズ制御部111へ第1の通信1001を行う。第1の通信に対応する通信タイミング1004での時間は、カメラ制御部124からレンズ制御部111へRS歪み補正の先頭補正タイミング1006を伝えるための基準時間となる。レンズ制御部111は第1の通信1001を受け付けたタイミングで、内部のタイマー時間を取得し、当該時間をRS歪み補正の先頭補正タイミングを算出するための基準時間とする。なお、第1の通信1001の通信タイミング1004は、垂直同期信号と同じタイミングでもよいし、垂直同期信号から任意の時間の前または後でもよい。ただし、毎フレーム、垂直同期信号に対して一定の時間差で通信が行われるものとする。また、第1の通信タイミング1004は、他の通信と重ならないタイミングが望ましい。図10の例では、垂直同期信号よりも手前の時点に第1の通信1001の通信タイミング1004が設定されている。
次に、カメラ制御部124は第2の通信1002を行う。第2の通信1002では、第1の通信1001による時間を基準時間として、基準時間からの相対時間1007、及びRS歪み補正先頭差分時間1008がレンズ制御部111に伝達される。RS歪み補正先頭差分時間1008は、露光重心タイミングからRS歪み補正の先頭の補正タイミングとの差分時間である。カメラ制御部124はRS歪み補正の補正点算出のための差分時間1007、RS歪み補正先頭差分時間1008と、現在の焦点距離における電子式像振れ補正の可動範囲Bと、振れ情報を判別するためのID情報をレンズ制御部111に送信する。このID情報には、振れを検出するタイミングに対応する撮像フレーム番号を設定する。第2の通信1002は、RS歪み補正の先頭補正タイミング1006を伝える該当フレームの露光時間が決まるタイミング1005の後である。これにより、各フレームで露光時間が変わる場合にも、正確なRS歪み補正の先頭補正タイミング1006を伝達できる。決定された露光時間と、撮像素子の信号読み出し時間からRS歪み補正の先頭補正タイミング1006が求まり、第1の通信1001による基準時間との差により相対時間1007及びRS歪み補正先頭差分時間1008により求まる。
また、第2の通信1002の通信タイミングは、フレーム番号が通知されるタイミング1011の前である。そのため、振れ情報を判別するためのID情報には、振れを検出するタイミングに対応する撮像フレーム番号として、それまでに通知を受けている撮像フレーム番号の次のフレーム番号を設定するようにする。
レンズ制御部111は、第1の通信1001を受け付けたタイミングで基準時間を既に取得している。このため、レンズ制御部111は第2の通信1002により相対時間1007、RS歪み補正先頭差分時間1008を取得することで、内部のタイマー設定によりRS歪み補正の先頭補正タイミング1006を設定することができる。また、レンズ制御部111は電子式像振れ補正の可動範囲Bを取得することで、レンズ装置の光学式像振れ補正の可動範囲Aをも含めて、分割部205で用いる係数Kを算出することができる。レンズ制御部111はRS歪み補正の先頭補正タイミング1006で、レンズ振れ検出部110から振れ情報を取得する。分割部205は像振れ補正量に対して、係数「1-K」を乗算し、RS歪み補正量を算出する。レンズ制御部111はカメラ制御部124からの通信要求があるまで、RS歪み補正量を保持する。
さらに、レンズ制御部111は、あるRS歪み補正タイミングが経過した際に、内部のタイマー設定により次のRS歪み補正タイミングを設定する。次のRS歪み補正タイミングの設定においてレンズ制御部111は、現在のRS歪み補正の補正タイミングと、RS歪み補正の補正点間の差分時間を、RS歪み補正先頭差分時間1008と補正点数とを用いて算出する。タイマー設定は、RS歪み補正の全補正タイミングが終了するまで繰り返し行われる。図10では、RS歪み補正の補正点を11点としているので、先頭補正タイミング1006から6番目の補正点が露光重心に相当する。つまり、露光期間のタイミング情報は露光重心タイミング1009の情報を含んでいる。このように、RS歪み補正の複数の補正点のうち1点が、露光重心タイミング1009に対応するように、RS歪み補正の補正点が設定されている。露光重心タイミング1009においてもレンズ制御部111は、電子式像振れ補正量を取得しておく。これらの取得した情報は、第2の通信1002で伝達された振れ情報を判別するためのID情報と共にメモリに保持する。
一方で、カメラ本体部でも、カメラ振れ検出部122により、カメラ本体部の振れ情報を取得する。本実施形態で検出するカメラ本体部の振れ情報は動きベクトルである。それに先立ち、カメラ本体部は振れ情報を判別するためのID情報を設定する。このID情報には、振れを検出するタイミングに対応する撮像フレーム番号を設定する。これにより、一意のID情報が設定される。ID情報を設定するタイミングは、フレーム番号が通知されるタイミング1011の後のタイミングである1012である。よって、振れ情報を判別するためのID情報には、フレーム番号が通知されるタイミング1011で通知された撮像フレーム番号をそのまま設定するようにする。また、カメラ本体部の振れ情報を取得が可能になるのは、振れ検出をするフレームに対する動きベクトルの検出が完了するタイミングである1013となる。ここで、カメラ本体部の振れ情報が取得できると共に、先に設定した振れ情報を判別するためのID情報を取得する。
次に、カメラ制御部124はレンズ制御部111への第3の通信1003を行う。第3の通信1003において、レンズ制御部111はカメラ制御部124からの通信要求を受け付けて、保持しているRS歪み補正量と、第2の通信1002で伝達された振れ情報を判別するためのID情報を伝える。これにより、レンズ側で検出した振れ情報をID情報と共に取得する。第3の通信1003の通信タイミングは、RS歪み補正の最終補正タイミング1010の後である。最終補正タイミング1010は11番目の補正点に対応する。元々カメラ制御部124はRS歪み補正タイミングを把握しているので、RS歪み補正の最終補正タイミング1010後の任意のタイミングで通信を行う。カメラ制御部124は、レンズ制御部111から取得したRS歪み補正量を電子式像振れ補正制御部123に渡し、最終的に電子式像振れ補正量設定部306が補正量を設定する。
第1の通信、第2の通信及び第3の通信は毎フレーム行われる。カメラ制御部124は第1の通信1001で基準時間の通知を行い、第2の通信1002で基準時間からの相対時間と電子式像振れ補正の可動範囲を通知し、第3の通信1003でRS歪み補正量を受け取る。レンズ制御部111は、第1の通信1001で基準時間を取得し、第2の通信1002で基準時間からの相対時間によるRS歪み補正の先頭補正タイミングと電子式像振れ補正の可動範囲を取得する。レンズ制御部111は各RS歪み補正タイミングで補正量を算出し、第3の通信1003で補正量と振れ情報を判別するID情報をカメラ制御部124に通知する。
図9のフローチャートを参照して、カメラ制御部124が行うRS歪み補正を含めた通信および制御内容について説明する。
まず、S401でカメラ制御部124はカメラ通信制御部125を介してレンズ制御部111へ第1の通信を行う。第1の通信による時間がRS歪み補正の先頭補正タイミング1006の基準時間となる。
次にS402で、カメラ制御部124はカメラ通信制御部125を介してレンズ制御部111へ第2の通信を行う。第1の通信による時間を基準時間として、基準時間からの相対時間1007、RS歪み補正先頭差分時間1008が送信され、RS歪み補正の先頭補正タイミング1006がレンズ制御部111に伝達される。カメラ制御部124は現在の焦点距離における電子式像振れ補正の可動範囲と、振れ情報を判別するための第1のID情報をレンズ制御部111に送信する。このID情報には、振れを検出するタイミングに対応する撮像フレーム番号を設定する。設定する撮像フレーム番号は、撮像フレーム番号の通知タイミングと、振れを検出するタイミングに合わせて補正して設定する。
S403で、カメラ制御部124は、カメラ振れ検出部122で検出するカメラ本体部の振れ情報を判別するための第2のID情報を設定する。このID情報にも、振れを検出するタイミングに対応する撮像フレーム番号を設定する。設定する撮像フレーム番号は、撮像フレーム番号の通知タイミングと、振れを検出するタイミングに合わせて補正して設定する。
S404で、カメラ制御部124はRS歪み補正の最終補正タイミング1010から一定時間が経過したかどうかを判定する。当該一定時間は予め設定された時間である。RS歪み補正は最終補正タイミング1010から一定時間が経過している場合、S405に進み、一定時間が経過していない場合にはS404の判定処理を繰り返す。S404で一定時間の経過を待つ理由は、レンズ制御部111がRS歪み補正の最終補正点の処理が完了した状態で、カメラ制御部124がレンズ制御部111へ通信要求を行うためである。
S405で、カメラ制御部124は、カメラ通信制御部125を介してレンズ制御部111へ第3の通信を行う。具体的には、カメラ制御部124はレンズ制御部111に通信要求を送信する。そして、当該通信要求への応答として、露光重心タイミング1009でレンズ制御部111が振り分けた電子式像振れ補正量と、RS歪み補正の複数の補正点それぞれにおけるRS歪み補正量と、先のS402で通知した振れ情報を判別するための第1のID情報とを、レンズ制御部111から取得する。
次のS406で、カメラ制御部124は、カメラ振れ検出部122で検出するカメラ本体部の振れ情報を検出したかを判定する。具体的には、動きベクトル検出の完了割り込みで判定する。カメラ本体部の振れ情報を検出した場合は、処理はS407に進み、検出していない場合にはS406に戻り、処理を繰り返す。S407で、カメラ制御部124は、カメラ振れ検出部122で検出したカメラ本体部の振れ情報と、先のS403で設定した振れ情報を判別するための第2のID情報を取得する。
S408で、カメラ制御部124は、先のS405で取得したレンズ側検出振れ情報と、先のS407で取得したカメラ側検出振れ情報のもつ、それぞれのID情報が一致するかを判定する。振れ情報のID情報が一致する場合は、処理はS409に進み、振れ情報のID情報が一致しない場合にはS401に戻り、処理を繰り返す。ここでもS108と同様に、振れ情報のID情報が一致しなかった場合は、前回設定した電子式像振れ補正量を設定するようにしても良い。また、振れ情報のID情報の不一致が所定回数続いた場合には、通信異常等の何らかのエラーが生じていると判断して、リセット処理(電源OFFし再度電源ONすることに相当する処理)を行うようにしても良い。
S409で、カメラ制御部124は先のS405で取得したレンズ側検出振れ情報と、先のS407で取得したカメラ側検出振れ情報を用いて、電子式像振れ補正量を生成する。その際には、生成した電子式像振れ補正量と振れ情報のID情報とを関連付けて設定する。
最後にS410で、カメラ制御部124は、電子式像振れ補正制御部123に指示し、S409で生成した電子式像振れ補正量とRS歪み補正量に基づいて画像補正を行う。
図10のフローチャートを参照して、レンズ制御部111が行うRS歪み補正を含めた通信と制御内容について説明する。
まず、S501で、レンズ制御部111はレンズ通信制御部112を介してカメラ制御部124からの第1の通信を受け付ける。レンズ制御部111は第1の通信タイミングで内部のタイマー時間を取得し、その時間をRS歪み補正の先頭補正タイミング算出の基準時間とする。
次にS502で、レンズ制御部111はレンズ通信制御部112を介してカメラ制御部124からの第2の通信を受け付ける。第2の通信で、レンズ制御部111は第1の通信による基準時間からの相対時間と、RS歪み補正の先頭差分時間、および電子式像振れ補正の可動範囲と、振れ情報を判別するための第1のID情報を取得する。レンズ制御部111は、第1の通信タイミング1004の時間を基準時間として取得しているため、第2の通信1002で相対時間1007及びRS歪み補正先頭差分時間1008を受け取る。そして、内部のタイマー設定によりRS歪み補正の先頭補正タイミングを設定する。また、レンズ制御部111は電子式像振れ補正の可動範囲を受け取ることで、レンズ装置の光学式像振れ補正の可動範囲をも含めて分割部205で用いる係数Kを算出して設定する。
S503で、レンズ制御部111はRS歪み補正の補正タイミングが到来したか否かを判定する。RS歪み補正の補正タイミングが到来したと判定された場合、S504に進み、補正タイミングが到来していない場合には、S503の判定処理を繰り返す。
S504で、レンズ制御部111はRS歪み補正の補正タイミングで、レンズ振れ検出部110から振れ情報を取得する。さらに分割部205は、レンズ装置の光学式像振れ補正量と、RS歪み補正の補正量を算出する。レンズ制御部111は、カメラ制御部124からの通信要求があるまで、RS歪み補正量と、先のS502で取得した振れ情報を判別するための第1のID情報と共に一時記憶しておく。なお、本実施形態の例ではRS歪み補正の補正点を11点としており、先頭から6番目の補正点が露光重心に相当する。レンズ制御部111は、露光重心タイミング1009でも電子式像振れ補正量を取得しておく。
S505で、レンズ制御部111はRS歪み補正の全補正タイミングが終了したか否かを判定する。RS歪み補正の補正タイミングが全て到来した場合、S507に進み、全て到来していない場合にはS506に進む。
S506で、レンズ制御部111は内部のタイマー設定により次のRS歪み補正の補正タイミングを設定する。次の補正タイミングの設定にてレンズ制御部111は、現在のRS歪み補正の補正タイミングと、RS歪み補正の補正点間の差分時間をS502で取得したRS歪み補正先頭差分時間1008と補正点数とを用いて算出する。タイマー設定後、S503の処理に戻る。
S507で、レンズ制御部111はレンズ通信制御部112を介してカメラ制御部124からの第3の通信の通信要求があるか否かを判定する。第3の通信の通信要求があった場合、S508に進み、当該通信要求がない場合にはS507の判定処理を繰り返す。
S508で、レンズ制御部111はレンズ通信制御部112を介してカメラ制御部124から受信した通信要求への応答としての第3の通信を実行する。レンズ制御部111は露光重心タイミングで振り分けられた電子式像振れ補正量と、RS歪み補正の複数の補正点それぞれにおけるRS歪み補正量と、先のS502で取得した振れ情報を判別するため第1のID情報をカメラ制御部124に通知する。
<第3の実施形態の効果>
本実施形態では、カメラ制御部からレンズ制御部へ、露光重心タイミングおよびRS歪み補正先頭差分時間が送信される。また、カメラ補正点数レンズ制御部111はRS歪み補正の各補正点のタイミングを把握し、RS歪み補正の補正点間の差分時間を算出することにより、RS歪み補正量を取得することができる。RS歪み補正量がカメラ制御部に通知されて、RS歪み補正が行われる。
また、カメラ制御部124は、振れを検出するタイミングに合わせて、振れ情報を判別するためのID情報を、それぞれレンズ側振れ情報とカメラ側振れ情報に対して送信または設定を行う。このため、2つの振れ情報のID情報の一致を持って、振れ情報の同期を取ることができる。
本実施形態によれば、レンズ交換式の撮像システムにおいて、より少ない通信量で光学式像振れ補正とRS歪み補正を含めた電子式像振れ補正の複数の補正手段と、レンズ側の角速度センサとカメラ側の動きベクトルの複数の振れ検出手段による補正とを、協調かつ同期をとって制御することができる。これにより、像振れ補正範囲を拡大させる撮像システムを提供できる。
本実施形態では、レンズ制御部から取得したRS歪み補正量を用いてカメラ制御が補正を行う場合を説明した。またカメラ制御部が、取得した軸以外の補正軸方向(Roll方向)でのRS歪み補正を行うことにより、像振れ補正効果をさらに高めることができる。また、本実施形態では、RS歪み補正点として、11点を例示した。RS歪み補正点の数を所定数に固定する必要はなく、例えばレンズ装置が対応可能な通信速度に応じて補正点の数を変更してもよい。この場合、レンズ装置との通信により対応が可能な通信速度をカメラ制御部が取得し、第2の通信時にRS歪み補正の補正点数をレンズ制御部に通知する。それに応じてレンズ制御部が取得するRS歪み補正点数が決定される。
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。