IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

<>
  • 特許-画像処理装置、撮像装置および制御方法 図1
  • 特許-画像処理装置、撮像装置および制御方法 図2
  • 特許-画像処理装置、撮像装置および制御方法 図3
  • 特許-画像処理装置、撮像装置および制御方法 図4
  • 特許-画像処理装置、撮像装置および制御方法 図5
  • 特許-画像処理装置、撮像装置および制御方法 図6
  • 特許-画像処理装置、撮像装置および制御方法 図7
  • 特許-画像処理装置、撮像装置および制御方法 図8
  • 特許-画像処理装置、撮像装置および制御方法 図9
  • 特許-画像処理装置、撮像装置および制御方法 図10
  • 特許-画像処理装置、撮像装置および制御方法 図11
  • 特許-画像処理装置、撮像装置および制御方法 図12
  • 特許-画像処理装置、撮像装置および制御方法 図13
  • 特許-画像処理装置、撮像装置および制御方法 図14
  • 特許-画像処理装置、撮像装置および制御方法 図15
  • 特許-画像処理装置、撮像装置および制御方法 図16
  • 特許-画像処理装置、撮像装置および制御方法 図17
  • 特許-画像処理装置、撮像装置および制御方法 図18
  • 特許-画像処理装置、撮像装置および制御方法 図19
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-26
(45)【発行日】2024-03-05
(54)【発明の名称】画像処理装置、撮像装置および制御方法
(51)【国際特許分類】
   G03B 5/00 20210101AFI20240227BHJP
   G03B 15/00 20210101ALI20240227BHJP
   G02B 7/28 20210101ALI20240227BHJP
   G02B 7/34 20210101ALI20240227BHJP
   G02B 7/36 20210101ALI20240227BHJP
   G03B 13/36 20210101ALI20240227BHJP
   H04N 23/68 20230101ALI20240227BHJP
   H04N 23/60 20230101ALI20240227BHJP
【FI】
G03B5/00 J
G03B15/00 H
G02B7/28 N
G02B7/34
G02B7/36
G03B13/36
H04N23/68
H04N23/60
【請求項の数】 16
(21)【出願番号】P 2019169625
(22)【出願日】2019-09-18
(65)【公開番号】P2021047291
(43)【公開日】2021-03-25
【審査請求日】2022-09-13
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100114775
【弁理士】
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【弁理士】
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100208580
【弁理士】
【氏名又は名称】三好 玲奈
(72)【発明者】
【氏名】谷口 浩之
【審査官】岡田 弘
(56)【参考文献】
【文献】特開2016-066007(JP,A)
【文献】特開平10-282404(JP,A)
【文献】特開2013-255168(JP,A)
【文献】特開2018-180323(JP,A)
【文献】特開2014-153517(JP,A)
【文献】特開平07-253605(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G03B 5/00-5/08
G02B 7/28-7/40
G03B 3/00-3/12
G03B 13/30-13/36
G03B 21/53
H04N 5/222-5/257
H04N 23/00
H04N 23/40-23/76
H04N 23/90-23/959
(57)【特許請求の範囲】
【請求項1】
撮像画像の像ブレを補正手段の駆動により補正する補正制御手段と、
前記撮像画像における流し撮り用の被写体を指定するための指定領域を決定する決定手段と、
被写体に焦点を合わせる焦点制御を実行する焦点制御手段と、
前記撮像画像に基づいて動きベクトルを取得する取得手段と、を有し、
前記補正制御手段は、流し撮り制御手段と、手振れ補正制御手段と、を含み、
流し撮りが行われる場合に、前記補正制御手段が、前記指定領域の動きに基づいて前記流し撮り制御手段を駆動して、前記指定領域に係る像ブレを補正する第1の補正制御を実行した後に、前記焦点制御手段が、前記焦点制御を実行する、と共に、
流し撮りを行わない場合には、前記補正制御手段が、前記手振れ補正制御手段により手振れ補正制御を行い、
前記補正制御手段は、前記焦点制御手段が前記焦点制御を実行した後に、前記取得手段により取得される動きベクトルに基づいて前記補正手段を駆動して、前記被写体に係る像ブレを補正する第2の補正制御を実行し、前記第2の補正制御による像ブレの補正余地がある場合に、前記第1の補正制御を実行する
ことを特徴とする画像処理装置。
【請求項2】
前記取得手段は、前記決定手段によって決定される前記指定領域に基づいて、前記第2の補正制御を実行するために用いる動きベクトルを取得する領域を決定する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
撮像画像の像ブレを補正手段の駆動により補正する補正制御手段と、
前記撮像画像における流し撮り用の被写体を指定するための指定領域を決定する決定手段と、
被写体に焦点を合わせる焦点制御を実行する焦点制御手段と、
前記撮像画像に基づいて動きベクトルを取得する取得手段と、を有し、
前記補正制御手段は、流し撮り制御手段と、手振れ補正制御手段と、を含み、
流し撮りが行われる場合に、前記補正制御手段が、前記指定領域の動きに基づいて前記流し撮り制御手段を駆動して、前記指定領域に係る像ブレを補正する第1の補正制御を実行した後に、前記焦点制御手段が、前記焦点制御を実行する、と共に、
流し撮りを行わない場合には、前記補正制御手段が、前記手振れ補正制御手段により手振れ補正制御を行い、
前記補正制御手段は、前記焦点制御手段が前記焦点制御を実行した後に、前記取得手段により取得される動きベクトルに基づいて前記補正手段を駆動して、前記被写体に係る像ブレを補正する第2の補正制御を実行し、
前記取得手段は、前記決定手段によって決定される前記指定領域に基づいて、前記第2の補正制御を実行するために用いる動きベクトルを取得する領域を決定する
ことを特徴とする画像処理装置。
【請求項4】
前記取得手段は、
前記撮像画像に含まれる被写体までの奥行き方向の距離を示す距離情報に基づいて、被写体候補の領域を決定し、
前記被写体候補の領域が前記指定領域より大きい場合に、前記指定領域を含む所定の領域を、前記第2の補正制御を実行するために用いる動きベクトルを取得する領域として決定する
ことを特徴とする請求項2または3に記載の画像処理装置。
【請求項5】
前記取得手段は、
前記被写体の候補の領域が複数である場合は、前記指定領域と位置が重なる前記被写体候補の領域を含む所定の領域を、前記第2の補正制御を実行するために用いる動きベクトルを取得する領域として決定する
ことを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記指定領域は、ユーザが注視する注視領域である
ことを特徴とする請求項1乃至5のいずれか1項に記載の画像処理装置。
【請求項7】
前記決定手段は、前記ユーザの視線情報に基づいて前記注視領域を決定する
ことを特徴とする請求項に記載の画像処理装置。
【請求項8】
前記補正制御手段は、流し撮りモードが設定されている場合に、前記補正手段を駆動して、前記第1の補正制御と前記第2の補正制御を実行する
ことを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
【請求項9】
撮像画像の像ブレを補正手段の駆動により補正する補正制御手段と、
前記撮像画像の指定領域を決定する決定手段と、
被写体に焦点を合わせる焦点制御を実行する焦点制御手段と、を有し、
流し撮りが行われる場合に、前記補正制御手段が、前記指定領域の動きに基づいて前記補正手段を駆動して、前記指定領域に係る像ブレを補正する第1の補正制御を実行した後に、前記焦点制御手段が、前記焦点制御を実行すると共に、
前記補正制御手段は、前記決定された指定領域が撮影画角の所定の位置にある場合に、前記第1の補正制御を実行する
ことを特徴とする画像処理装置。
【請求項10】
撮像画像の像ブレを補正手段の駆動により補正する補正制御手段と、
前記撮像画像の指定領域を決定する決定手段と、
被写体に焦点を合わせる焦点制御を実行する焦点制御手段と、を有し、
流し撮りが行われる場合に、前記補正制御手段が、前記指定領域の動きに基づいて前記補正手段を駆動して、前記指定領域に係る像ブレを補正する第1の補正制御を実行した後に、前記焦点制御手段が、前記焦点制御を実行すると共に、
流し撮り時のユーザの視線情報に基づいて機械学習により作成された学習モデルが記憶手段に記憶されており、
前記補正制御手段は、前記ユーザの視線情報を入力とする、前記学習モデルに基づく前記流し撮りが行われるか否かの判定結果に応じて、前記補正手段の駆動による前記第1の補正制御を実行する
ことを特徴とする画像処理装置。
【請求項11】
被写体光を光電変換して前記撮像画像に係る信号を出力する撮像素子と、請求項1乃至10のいずれか1項に記載の画像処理装置と、を有する
ことを特徴とする撮像装置。
【請求項12】
前記決定された指定領域が撮影画角の所定の位置にある場合に被写体の撮影を行う制御を実行する撮影制御手段を有する
ことを特徴とする請求項11に記載の撮像装置。
【請求項13】
撮像画像の像ブレを補正するための補正制御工程を有する画像処理装置の制御方法であって、
前記撮像画像における流し撮り用の被写体を指定するための指定領域を決定する決定工程と、
被写体に焦点を合わせる焦点制御を実行する焦点制御工程と、
前記撮像画像に基づいて動きベクトルを取得する取得工程と、を有し、
前記補正制御工程は、流し撮り制御工程と、手振れ補正制御工程と、を含み、
流し撮りが行われる場合に、前記指定領域の動きに基づく前記流し撮り制御工程により、前記指定領域に係る像ブレを補正する第1の補正制御を実行した後に、前記焦点制御工程において、前記焦点制御を実行する、と共に、
流し撮りを行わない場合には、前記補正制御工程において、前記手振れ補正制御工程により手振れ補正制御を行い、
前記補正制御工程は、前記焦点制御工程において前記焦点制御を実行した後に、前記取得工程において取得される動きベクトルに基づいて前記被写体に係る像ブレを補正する第2の補正制御を実行し、前記第2の補正制御による像ブレの補正余地がある場合に、前記第1の補正制御を実行する
ことを特徴とする制御方法。
【請求項14】
撮像画像の像ブレを補正するための補正制御工程を有する画像処理装置の制御方法であって、
前記撮像画像における流し撮り用の被写体を指定するための指定領域を決定する決定工程と、
被写体に焦点を合わせる焦点制御を実行する焦点制御工程と、
前記撮像画像に基づいて動きベクトルを取得する取得工程と、を有し、
前記補正制御工程は、流し撮り制御工程と、手振れ補正制御工程と、を含み、
流し撮りが行われる場合に、前記指定領域の動きに基づく前記流し撮り制御工程により、前記指定領域に係る像ブレを補正する第1の補正制御を実行した後に、前記焦点制御工程において、前記焦点制御を実行する、と共に、
流し撮りを行わない場合には、前記補正制御工程において、前記手振れ補正制御工程により手振れ補正制御を行い、
前記補正制御工程は、前記焦点制御工程において前記焦点制御を実行した後に、前記取得工程において取得される動きベクトルに基づいて前記被写体に係る像ブレを補正する第2の補正制御を実行し、
前記取得工程は、前記決定工程において決定される前記指定領域に基づいて、前記第2の補正制御を実行するために用いる動きベクトルを取得する領域を決定する
ことを特徴とする制御方法。
【請求項15】
撮像画像の像ブレを補正するための補正制御工程を有する画像処理装置の制御方法であって、
前記撮像画像の指定領域を決定する決定工程と、
被写体に焦点を合わせる焦点制御を実行する焦点制御工程と、を有し、
流し撮りが行われる場合に、前記補正制御工程において、前記指定領域の動きに基づいて前記指定領域に係る像ブレを補正する第1の補正制御を実行した後に、前記焦点制御工程において、前記焦点制御を実行すると共に、
前記補正制御工程は、前記決定された指定領域が撮影画角の所定の位置にある場合に、前記第1の補正制御を実行する
ことを特徴とする制御方法。
【請求項16】
撮像画像の像ブレを補正するための補正制御工程を有する画像処理装置の制御方法であって、
前記撮像画像の指定領域を決定する決定工程と、
被写体に焦点を合わせる焦点制御を実行する焦点制御工程と、を有し、
流し撮りが行われる場合に、前記補正制御工程において、前記指定領域の動きに基づいて前記指定領域に係る像ブレを補正する第1の補正制御を実行した後に、前記焦点制御工程において、前記焦点制御を実行すると共に、
流し撮り時のユーザの視線情報に基づいて機械学習により作成された学習モデルが記憶手段に記憶されており、
前記補正制御工程は、前記ユーザの視線情報を入力とする、前記学習モデルに基づく前記流し撮りが行われるか否かの判定結果に応じて、前記第1の補正制御を実行する
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、撮像装置および制御方法に関する。
【背景技術】
【0002】
デジタルカメラ等の撮像装置を用いた流し撮りが普及している。流し撮りは、被写体の躍動感を表現するため、撮像素子上で一定のブレ量(以下、背景流し量という)が得られるようにシャッタ速度を設定し、被写体の動きに合わせてカメラを追従させながら撮影する撮影方法である。
【0003】
流し撮りは、被写体の動きに対して撮影方向のズレが生じないようにカメラを追従させながら行うので、ユーザにとって容易ではないことがある。被写体の動きに対して撮影方向にズレ(被写体振れ)が生じると、被写体に係る像ブレが画像に生じる。また、レーシングカーなど高速で移動する被写体を流し撮りする場合には、被写体に焦点を合わせるまでの時間などを考慮すると、シャッタチャンスとなる時間が短く、流し撮りを成功させることは容易ではない。
【0004】
一方、カメラの焦点制御技術として、ユーザの視線情報を利用する技術が提案されている。例えば、特許文献1は、撮影者の視線方向を検出して、一定時間注視された被写体に自動で焦点を合わせるカメラを開示している。また、特許文献2は、画面内におけるユーザの注視位置における被写体像に対して焦点検出を行うカメラを開示している。
【先行技術文献】
【特許文献】
【0005】
【文献】特開平6-294925号公報
【文献】特許第2956543号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1および特許文献2に開示された従来技術では、流し撮りのようなシャッタチャンスの時間が短い場合の撮影に適応することが困難である。
また、従来、流し撮り時において、被写体とカメラの角速度がある程度一致し、焦点制御により被写体が認識され、被写体のブレ量が検知可能になるまで、振れ補正光学系を制御して像ブレを補正することができなかった。したがって、流し撮り時の像ブレ補正の開始タイミングが遅くなるという課題がある。本発明は、流し撮り時に、被写体に焦点が合う前に像ブレ補正制御を行って、流し撮りをアシストすることができる画像処理装置の提供を目的とする。
【課題を解決するための手段】
【0007】
本発明の一実施形態の画像処理装置は、
撮像画像の像ブレを補正手段の駆動により補正する補正制御手段と、
前記撮像画像における流し撮り用の被写体を指定するための指定領域を決定する決定手段と、
被写体に焦点を合わせる焦点制御を実行する焦点制御手段と、
前記撮像画像に基づいて動きベクトルを取得する取得手段と、を有し、
前記補正制御手段は、流し撮り制御手段と、手振れ補正制御手段と、を含み、
流し撮りが行われる場合に、前記補正制御手段が、前記指定領域の動きに基づいて前記流し撮り制御手段を駆動して、前記指定領域に係る像ブレを補正する第1の補正制御を実行した後に、前記焦点制御手段が、前記焦点制御を実行する、と共に、
流し撮りを行わない場合には、前記補正制御手段が、前記手振れ補正制御手段により手振れ補正制御を行い、
前記補正制御手段は、前記焦点制御手段が前記焦点制御を実行した後に、前記取得手段により取得される動きベクトルに基づいて前記補正手段を駆動して、前記被写体に係る像ブレを補正する第2の補正制御を実行し、前記第2の補正制御による像ブレの補正余地がある場合に、前記第1の補正制御を実行することを特徴とする。
【発明の効果】
【0008】
本発明の画像処理装置によれば、被写体に焦点が合う前に像ブレ補正制御を行って、流し撮りをアシストすることができる。
【図面の簡単な説明】
【0009】
図1】撮像装置の構成を示す図である。
図2】撮像装置の機能ブロック図の一例である。
図3】視線情報の検出方法を説明する図である。
図4】眼球像と、眼球用撮像素子の出力強度を説明する図である。
図5】視線情報の検出処理を説明するフローチャートである。
図6】手振れ補正制御と流し撮りアシスト用の制御に関する構成である。
図7】動体である被写体の撮影シーンの例を示す図である。
図8】動きベクトルに関するヒストグラムである。
図9】流し撮りアシスト用の制御を説明するフローチャートである。
図10】注視枠角速度、被写体角速度の算出処理を説明する図である。
図11】動体である被写体の撮影シーンの例を示す図である。
図12】流し撮りアシスト用の制御を説明するフローチャートである。
図13】注視枠角速度、被写体角速度の算出処理を説明する図である。
図14】動体である被写体の撮影シーンの例を示す図である。
図15】流し撮りアシスト用の制御を説明するフローチャートである。
図16】被写体候補の検出と動きベクトルの検出枠の設定を説明する図である。
図17】被写体候補の検出と動きベクトルの検出枠の設定を説明する図である。
図18】流し撮りアシスト用の制御を説明するフローチャートである。
図19】流し撮り時の被写体を示す図である。
【発明を実施するための形態】
【0010】
[第1実施形態]
図1は、本実施形態の画像処理装置の一例である撮像装置の構成を示す図である。
図1では、本実施形態の撮像装置として、デジタルカメラ100を例にとって説明する。本発明は、デジタルカメラ100に限らず、焦点制御の前に流し撮りアシスト用の制御を実行する任意の画像処理装置、光学機器等に適用できる。デジタルカメラ100は、照明光源13乃至照明光源駆動回路205を有する。撮像レンズユニット101は、フォーカスレンズや防振レンズを含む複数のレンズ群および絞りを備える。撮影の際、撮像レンズユニット101は、CPU等を有するシステム制御部118に制御されて、フォーカス調節、露出調節、像ブレ補正等を行う。CPUは、Central Processing Unitの略称である。
【0011】
撮像素子102は、撮像レンズユニット101を介して被写体光を受光し、電気信号(アナログ画像信号)に光電変換して、撮像画像に係る画像信号(アナログ画像信号)を出力する。撮像素子は、CCDやCMOSセンサ等を有する。CCDは、Charge Coupled Deviceの略称である。CMOSは、Complementary Metal Oxide Semiconductorの略称である。
【0012】
A/D変換部103は、撮像素子102からのアナログ画像信号をデジタル画像信号に変換する。変換後の画像信号に係る画像データは、画像処理部104に入力される。バス116は、システム制御部118から各ブロックの制御信号を伝送するためのシステムバスである。バス117は、主に画像データを転送するためのデータバスである。
【0013】
システム制御部118は、デジタルカメラ100全体を制御する。システム制御部118は、ROM109に記録された制御プログラムを実行することにより、本実施形態の各処理を実現する。ROMは、Read Only Memoryの略称である。システム制御部118は、バス116を介して、画像処理部104、データ転送部105、メモリ制御部106、不揮発性メモリ制御部108、記録メディア制御部110、表示制御部112、操作部115、撮像素子102を制御する。また、システム制御部118は、デジタルカメラ100が有する各処理部の制御処理の際に必要となる演算も行う。さらに、システム制御部118は、例えば、撮像レンズユニット101が有するレンズ、絞りの制御、焦点距離等の情報取得等の処理も実行する。
【0014】
データ転送部105は、データ転送を行う複数のDMACを有する。DMACは、Direct Memory Access Controllerの略称である。DRAM107は、データを記憶する記憶手段(メモリ)である。DRAMは、Dynamic
Random Access Memoryの略称である。DRAM107は、所定枚数の静止画像、所定時間の動画像、音声等のデータ、システム制御部118の動作用の定数、プログラム等を格納するのに十分な記憶容量を備える。メモリ制御部106は、システム制御部118或いはデータ転送部105からの指示に応じて、DRAM107へのデータ書き込み及びデータ読み出しを行う。
【0015】
不揮発性メモリ制御部108は、システム制御部118からの指示に応じて、ROM109にデータの書き込み及び読み出しを行う。ROM109は、電気的に消去・記録可能なメモリであり、EEPROM等が用いられる。ROM109には、システム制御部119の動作用の定数、プログラム等が記憶される。
【0016】
画像処理部104は、各種の画像処理を行う機能部と、バッファメモリ等を有する。画像処理部104は、画像データに対して、倍率色収差補正、現像処理、ノイズリダクション処理、幾何変形、拡縮といったリサイズなどの処理を行う。また、画像処理部104は、A/D変換器103により変換された画像データに対して、画素補正、黒レベル補正、シェーディング補正、傷補正などを行う。
【0017】
記録メディア111は、SDカード等の記録媒体である。記録メディア111は、記録メディア制御部110により制御され、画像データの記録や、記録データの読み出しを行う。表示部113は、液晶ディスプレイや電子ビューファインダーを有する。表示部113は、表示制御部112により制御され、画像処理部104から転送された各種の画像データやメニュー画面などを表示する。また、静止画撮影の撮影前や、動画撮影時には、表示部113は、A/D変換部103から入力された画像データをリアルタイムで処理して、表示する。操作部115は、ユーザにより操作される切り替えスイッチやボタン、タッチパネル等を含む。操作部115は、電源のON/OFF、シャッタのON/OFF等の操作に使用される。ユーザは、切り替えスイッチを操作して、流し撮りモードなどの各種モードを設定可能である。
【0018】
照明光源(以下、単に光源ともいう)13は、照明光を照射する光源である。照明光源駆動回路205は、照明光源13を駆動する。眼球用撮像素子17は、ユーザ(観察者)の眼球像を光電変換する撮像素子である。測光回路202は、適正露出を算出するために必要な、被写体の明るさを測定する。自動焦点検出回路203は、自動で被写体に焦点を合わせる焦点制御を実行する。
【0019】
図2は、本実施形態の撮像装置の機能ブロック図の一例である。
図1及び図2において、対応する構成要素は同じ番号で表記されている。本実施形態の撮像装置であるデジタルカメラ100は、カメラ本体1Bと、交換レンズ1Aとを有する。交換レンズ1Aは、カメラ本体1Bに着脱可能である。カメラ本体1Bを本実施形態の撮像装置としてもよい。また、本発明は、レンズ一体型のカメラにも適用可能である。
【0020】
交換レンズ1Aは、撮影レンズユニット101乃至マウント接点部2115を有する。また、カメラ本体1Bは、接眼レンズ12乃至角速度センサ2171を有する。まず、交換レンズ1Aに関して説明する。
【0021】
撮影レンズユニット101は、撮像光学系2102、ズームレンズ群2103、およびシフトレンズ群(以下、単にシフトレンズともいう)2104を有する。撮像光学系2102は、固定レンズ群やフォーカスレンズ等を備える。ズームレンズ群2103は、焦点距離を変更可能な光学部材である。シフトレンズ群2104は、デジタルカメラ100の振れにより撮像画像に生じる像ブレを補正するための振れ補正光学系である。シフトレンズ群2104は、レンズ制御部2112の制御によって、撮像光学系2102の光軸と垂直な方向に駆動することで、被写体からの光の結像位置を変更して、像ブレを補正する。なお、撮像素子102を振れ補正光学系として適用し、例えば、カメラ制御部2143が、撮像素子102を光軸と垂直な方向または回転方向に駆動することで、像ブレを補正するようにしてもよい。
【0022】
ズームエンコーダ2106は、ズームレンズ群2103の位置を検出する。位置センサ2105は、シフトレンズ群2104の位置を検出する。角速度センサ2111は、デジタルカメラ100の振れ(角速度)を検出する振れ検出手段の一例である。角速度センサ2111は、検出した振れを示す信号(振れ検出信号)を出力する。
【0023】
レンズ制御部2112は、交換レンズ1A全体を制御する。レンズ制御部2112は、ドライバ2113を介してシフトレンズ群2104の駆動制御を行う。アンプ2114は位置センサ2105の出力を増幅し、シフトレンズ群2104の位置検出信号をレンズ制御部2112に出力する。
【0024】
交換レンズ1Aが有するマウント接点部2115は、カメラ本体1Bが有するマウント接点部2144と接続される。これにより、交換レンズ1Aとカメラ本体1Bとの間での通信が可能となる。
【0025】
レンズ制御部2112は、手振れ補正制御部2121と流し撮り制御部2122とを備える。手振れ補正制御部2121は、手振れ補正制御を行う。手振れ補正制御は、手振れ等によるデジタルカメラ100の振れにより生じる撮像画像のブレ(像ブレ)をシフトレンズ群2104の駆動により補正する制御である。流し撮り制御部2122は、流し撮りアシスト用の制御を行う。流し撮りアシスト用の制御は、流し撮り時における被写体に係る像ブレをシフトレンズ群2104の駆動により補正する制御である。
【0026】
また、レンズ制御部2112は、フォーカスレンズの移動による焦点制御や、絞り制御等も行うが、その説明は省略する。また、手振れ補正制御部2121による手振れ補正制御では、例えば横方向と縦方向といった、直交する2軸に関して振れの検出および補正が行われるが、2軸のうちの一方に関しての処理は、他方に関しての処理と同様であるので、1軸分のみ説明する。
【0027】
次に、カメラ本体1Bに関して説明する。シャッタ2132は、露光時間を制御する。タイミングジェネレータ(TG)2136は、撮像素子102やアナログ信号処理回路2134の動作タイミングを設定する。アナログ信号処理回路(AFE)2134は、撮像素子102の出力信号を処理して、カメラ信号処理回路2135に供給する。カメラ信号処理回路2135は、CPU114と、画像処理部104と、動きベクトル検出部2151とを備える。CPU114は、カメラ信号処理回路2135全体を制御する。画像処理部104は、図1を参照して説明した画像処理を実行する。画像処理後の信号は、記録用の信号として記録メディア111に出力される。また、画像処理後の信号は、表示用の信号として表示部113に出力される。動きベクトル検出部2151は、撮像素子102の出力信号に基づいて、撮像時刻が異なる複数の撮像画像から動きベクトルを検出する。
【0028】
カメラ制御部2143は、カメラ本体1B全体を制御する。カメラ制御部2143は、シャッタ制御部2161、被写体角速度算出部2162、シャッタ速度算出部2163を備える。シャッタ制御部2161はドライバ2138を介してシャッタ駆動用モータ2139を制御し、シャッタ2132の動作を制御する。被写体角速度算出部2162は、被写体の角速度(被写体角速度)を算出する。被写体角速度算出部2162は、例えば、動きベクトル検出部2151によって検出された動きベクトルに基づいて、被写体の角速度を算出する。シャッタ速度算出部2163は、流し撮りモードが設定されたときのシャッタ速度を算出する。
【0029】
また、レンズ制御部2112とカメラ制御部2143とは、マウント接点部2115および2144を介して所定のタイミングでシリアル通信を行う。角速度センサ2171はカメラ本体1Bの振れを検出し、振れ検出信号をカメラ制御部2143に出力する。距離取得部2181は、被写体の距離情報(深度情報)を取得してカメラ信号処理回路2135に出力する。距離情報は、奥行き方向におけるデジタルカメラ100と被写体との距離関係を示す情報である。
【0030】
ユーザが、操作部115が有する電源スイッチを操作し、デジタルカメラ100の電源がONになると、電源がONになったことをカメラ制御部2143が検出する。カメラ制御部2143は、カメラ本体1Bの各回路への電源供給および初期設定を行う。また、交換レンズ1Aへの電源供給が行われ、レンズ制御部2112が、交換レンズ1A内の初期設定を行う。カメラ制御部2143とレンズ制御部2112とが通信可能な状態となった後、両者の間で所定のタイミングで通信が開始される。カメラ制御部2143からレンズ制御部2112への通信では、カメラ本体1Bの状態、撮影設定情報等が送信される。また、レンズ制御部2112からカメラ制御部2143への通信では、交換レンズ1Aの焦点距離情報、角速度情報等が送信される。
【0031】
光源13a,13bは、観察者であるユーザの眼球14を照明光で照明するための光源である。光源の角膜反射による像(角膜反射像)と瞳孔との関係から、ユーザの視線情報(視線方向)が検出される。光源13a,13bは、例えば赤外発光ダイオードを有し、接眼レンズ12の周りに配置されている。眼球像と角膜反射像は、接眼レンズ12を透過し、光分割器15で反射され、受光レンズ16によって、CCD等の光電素子列が2次元的に配置された眼球用撮像素子17上に結像される。受光レンズ16は、ユーザの眼球14の瞳孔と眼球用撮像素子17を共役な結像関係に位置付けている。カメラ信号処理回路2135は、カメラ制御2143の制御にしたがって、眼球用撮像素子17上に結像された眼球像と角膜反射像の位置関係から、後述する所定のアルゴリズムで視線情報を検出する。
【0032】
図3は、視線情報の検出方法を説明する図である。また、図4は、眼球像と、眼球用撮像素子の出力強度を説明する図である。図4(A)は、眼球用撮像素子17に投影される眼球像を示す図である。図4(B)は、眼球用撮像素子17におけるCCDの出力強度を示す。また、図5は、視線情報の検出処理の例を説明するフローチャートである。図3乃至図5を参照して説明する処理は、主に、カメラ信号処理回路2135が有するCPU114の制御にしたがって実行される。なお、図5中のSは、フローチャート中の各処理に対応するステップ番号を示す。
【0033】
図3には、視線情報の検出を行うための光学系が示される。光源13a,13bは、ユーザに対して不感の赤外光を放射する発光ダイオード等の光源である。各光源は受光レンズ16の光軸に対して略対称に配置され、ユーザの眼球14を照明光で照明している。眼球14で反射した照明光の一部は、受光レンズ16によって、眼球用撮像素子17に集光する。
【0034】
図5において、視線情報の検出ルーチンが開始する。S501において、光源13a,13bが、ユーザ(観察者)の眼球14に向けて赤外光を放射する。赤外光によって照明されたユーザの眼球像は、眼球用撮像素子17上に受光レンズ16を通して結像し、眼球用撮像素子17により光電変換される。これにより、眼球像は、電気信号として処理が可能となる。
【0035】
S502において、眼球用撮像素子17から得られた眼球画像信号がCPU114に送られる。S503において、CPU114が、S502において得られた眼球画像信号の情報に基づき、図3に示す光源13a,13bの角膜反射像Pd,Peと瞳孔中心cに対応する点の座標を求める。光源13a,13bより放射された赤外光は、ユーザの眼球14の角膜142を照明する。このとき、角膜142の表面で反射した赤外光の一部により形成される角膜反射像Pd,Peが、受光レンズ16により集光され、眼球用撮像素子17上に結像する(図示の点Pd',Pe' )。同様に、瞳孔141の端部a,bからの光束も、眼球用撮像素子17上に結像する。
【0036】
図4(A)は、眼球用撮像素子17から得られる反射像の画像の一例を示す。図4(B)は、図4(A)中の画像の領域αにおける、眼球用撮像素子17から得られる輝度情報の一例を示す。図4(B)において、水平方向をX軸、垂直方向をY軸とする。また、光源13a,13bの角膜反射像が結像した像Pd' ,Pe' のX軸方向(水平方向)の座標をXd,Xeとする。また、瞳孔14bの端部a,bからの光束の結像による像a’,b’のX軸方向の座標をXa,Xbとする。
【0037】
図4(B)に示すグラフにおける、光源13a,13bの角膜反射像の結像による像Pd' ,Pe' に相当する位置Xd,Xeでは、極端に強いレベルの輝度が得られている。瞳孔141の領域に相当する、座標XaからXbの間の領域は、Xd,Xeの位置を除き、極端に低いレベルの輝度が得られる。一方、瞳孔141の外側の光彩143の領域に相当する、Xaより低いX座標の値を持つ領域及びXbより高いX座標の値を持つ領域では、上記2種の輝度レベルの中間の値が得られる。上記X座標位置に対する輝度レベルの変動情報から、光源13a,13bの角膜反射像の結像による像Pd' ,Pe' のX座標であるXd,Xeと、瞳孔端の像a’,b’のX座標であるXa、Xbを得ることができる。
【0038】
また、受光レンズ16の光軸に対する眼球14の光軸の回転角θxが小さい場合、眼球用撮像素子17上に結像する瞳孔中心cに相当する箇所(c' )の座標Xcは、以下の式(1)で表すことができる。
Xc≒(Xa+Xb)/2・・・式(1)
上記より、眼球用撮像素子17上に結像する瞳孔中心に相当するc' のX座標、光源13a,13bの角膜反射像Pd' ,Pe' の座標を求めることができた。
【0039】
図5の説明に戻る。S504において、CPU114が、眼球像の結像倍率βを算出する。βは、受光レンズ16に対する眼球14の位置により決まる倍率であり、実質的には角膜反射像Pd' ,Pe' の間隔(Xd-Xe)の関数として求めることができる。
【0040】
次に、S505において、CPU114が、眼球14の回転角θx,θyを演算する。θxは、眼球14のZ-X平面内の回転角である。また、θyは、眼球14がX軸に垂直な平面内(Z-Y平面内)で回転する場合の回転角である。すなわち、θx,θyは、ユーザの視線方向に相当する。
【0041】
角膜反射像PdとPeとの中点のX座標と、角膜142の曲率中心OのX座標とは、ほぼ一致する。したがって、角膜142の曲率中心Oと、瞳孔141の中心cまでの標準的な距離をOcとすると、θxは、下記の式(2)によって求めることができる。
β× Oc× SINθX≒{(Xd+Xe)/2}-Xc・・・式(2)
θyの算出方法は、θxの算出方法と同様である。
【0042】
次に、S506において、CPU114が、S507での処理に必要な係数データをメモリ(DRAM107)から読み込む。読み込まれる係数データは、後述する係数m,Ax,Bx,Ay,Byである。
【0043】
次に、S507において、CPU114が、θx,θyと、S506で読み込んだ係数データとを用いて、表示部113上での注視点位置座標(Hx,Hy)を算出する。注視点位置座標は、表示部113上での、ユーザの視線によって指定されている位置、すなわちユーザが注視している点(注視点)の位置である。より具体的には、注視点位置座標(Hx,Hy)は、表示部113上での瞳孔141の中心cに対応する座標である。Hx,Hyは、以下の式(3),式(4)によって算出することができる。
Hx=m×(Ax×θx+Bx)・・・式(3)
Hy=m×(Ay×θy+By)・・・式(4)
係数mは、デジタルカメラ100のファインダ光学系の構成で定まる定数である。具体的には、係数mは、回転角θx、θyを表示部113上での瞳孔141の中心cに対応する位置座標に変換するために用いられる変換係数である。また、Ax,Bx,Ay,Byは、ユーザの視線の個人差を補正するために用いられる視線補正係数である。Ax,Bx,Ay,Byは、所定のキャリブレーション作業を行うことで取得され、予めメモリに記憶されている。
【0044】
次に、S508において、CPU114が、メモリに注視点位置座標を記憶する。また、CPU114が、ユーザの視線によって指定された位置が、ある領域に留まっていた時間を注視時間として計測し、メモリに記憶する。そして、視線検出ルーチンが終了する。S508の処理で記憶された注視点位置座標が、ユーザの視線情報に相当する。視線情報に、注視時間を含めてもよい。光源13a,13bの角膜反射像を利用した注視点位置座標の取得手法を例示したが、本発明は、眼球像から眼球回転角度を取得する任意の手法を適用可能である。
【0045】
図6は、デジタルカメラ100が有する、手振れ補正制御と流し撮りアシスト用の制御に関する構成例を示す図である。
図1及び図2と共通の構成要素については、既に使用した符号を付すことで、詳細な説明を省略する。
ユーザは、操作部115の切り替えスイッチを操作することにより、撮影モードを通常モードと流し撮りモードとに切り替え可能である。通常モードが選択された場合、交換レンズ1A内では、角速度センサ2111が、手振れ等によりデジタルカメラ100に加わる振れ(角速度)を検出する。手振れ補正制御部121は、角速度センサ2111による振れ検出信号に基づいて、シフトレンズ群2104の駆動制御を行う。これにより、手振れ補正制御が行われ、撮像画像に係る像ブレが低減される。
【0046】
手振れ補正制御部2121が有するオフセット除去部601は、角速度センサ2111による振れ検出信号に含まれるオフセットを除去する。オフセット除去部601は、例えば、不図示のハイパスフィルタ(HPF)等を有するフィルタ演算部によって、振れ検出信号に含まれている直流成分を除去する。利得位相算出部602は、オフセット除去部601の出力を取得し、増幅および位相補償を行う。利得位相算出部602は、オフセット成分が除去された角速度信号に対し、所定のゲインで増幅する増幅器、および位相補償フィルタを有する。積分器603は、利得位相算出部602の出力を積分する。積分器603は任意の周波数帯域で、その特性を変更し得る機能を有しており、シフトレンズ群2104の駆動量を算出する。
【0047】
また、手振れ補正制御部2121は、パンニング/チルティング動作がされているかを判定する。例えば、角速度センサ2111による振れ検出信号が示す角速度が、所定の閾値以上の大きさであって、所定時間が経過した場合、手振れ補正制御部2121は、デジタルカメラ100が、例えばパンニング動作中であると判定する。手振れ補正制御部2121が、さらに、前述した視線検出ルーチンで求まった視線情報に基づいて、ユーザが被写体を注視していると判定した場合に、デジタルカメラ100がパンニング動作中であると判定するようにしてもよい。手振れ補正制御部2121は、パンニング/チルティング動作がされているかを判定した場合、オフセット除去部601内のHPFのカットオフ周波数を高周波側に徐々に変更する。手振れ補正制御部2121は、カットオフ周波数を高周波側へ徐々に変更し、手振れ補正制御の目標信号を徐々に小さくすることで、シフトレンズ群2104を光学中心位置に戻す制御を行う。この制御を行わない場合には、パンニング動作と判定されるほどの大きな振れの角速度検出信号によって手振れ補正制御が行われる。その結果、シフトレンズ群2104が補正限界点(制御範囲の限界位置)に到達し、ユーザには、不自然な撮影画角の変化が画面上で見える可能性がある。HPFのカットオフ周波数を高周波側へ徐々に変更する処理を行うことで、このような現象の発生を防止できる。
【0048】
像ブレ補正制御判定部(以下、制御判定部という)604は、積分器603と積分器625の各出力を取得し、カメラ情報取得部626の出力に応じて、シフトレンズ群2104を駆動させるための信号を、以下のように切り替える。
(1)撮影モードが流し撮りモードに設定されている場合は、制御判定部604は、流し撮り制御部2122で算出された積分器225の出力を選択する。
(2)撮影モードが流し撮りモード以外に設定されている場合は、制御判定部604は、手振れ補正制御部2121で算出された積分器603の出力を選択する。
【0049】
位置センサ2105は、シフトレンズ群2104の位置を検出して、位置検出信号を出力する。アンプ2114は、位置検出信号を増幅する。A/D変換器606は、アンプ2114が増幅した位置検出信号をデジタル化して減算器605に出力する。減算器605は、制御判定部604の出力を正入力とし、A/D変換器606の出力を負入力として減算を行い、減算結果である偏差データを制御器607へ出力する。制御器607は、減算器605が出力する偏差データに対し、所定のゲインで増幅する増幅器、および位相補償フィルタを備える。偏差データは、制御器607において増幅器および位相補償フィルタによって処理された後、パルス幅変調部608に出力される。パルス幅変調部608は、制御器607の出力データを取得し、PWM波形に変調して、シフトレンズ駆動用のドライバ2113へ出力する。シフトレンズ群2104の駆動には、ボイスコイル型モータが使用され、ドライバ2113は、パルス幅変調部608の出力にしたがって、シフトレンズ群2104を光軸と垂直な方向に移動させる。これにより、手振れ補正制御が実現できる。
【0050】
次に、流し撮りモードが設定されている場合における、流し撮りアシスト用の制御について説明する。ユーザが図2の操作部115により、撮影モードを流し撮りモードに設定する操作を行うと、カメラ制御部2143は、像ブレ補正に関する制御を流し撮りアシスト用の制御に切り替える。像ブレ補正に関する制御が流し撮りアシスト用の制御に切り替わったことが、カメラ制御部2143からレンズ制御部2112へと送信されると、レンズ制御部2112においても、像ブレ補正に関する制御が流し撮りアシスト用の制御に切り替わる。
【0051】
流し撮り制御部2122が有するカメラ情報取得部626は、通信制御部611を介してカメラ制御部2143から送信される各種のカメラ情報を取得する。カメラ情報は、流し撮りアシストモードの設定情報やレリーズ情報等である。カメラ情報取得部626は、制御判定部604に対して、処理に必要な情報を出力する。角速度出力部622は、オフセット除去部601の出力、つまりオフセット成分が除去された角速度センサ2111による振れ検出信号を取得する。
【0052】
角速度出力部622は、通信制御部611とマウント接点部2115,2144を介して、カメラ制御部2143へ振れ検出信号を送信する。被写体角速度取得部623は、カメラ本体1B内の被写体角速度算出部2162で算出される被写体の角速度データを、マウント接点部2144,2115と通信制御部611を介して取得する。減算器624は、オフセット除去部601の出力を正入力とし、被写体角速度取得部623の出力を負入力として、減算を行う。これにより、被写体角速度取得部623による被写体の角速度と、オフセット成分が除去された振れ検出信号が示す角速度との偏差が算出される。減算器624は、算出された偏差を積分器625に出力する。積分器625は、偏差を積分し、積分演算の結果を制御判定部604に出力する。
【0053】
カメラ制御部2143が有する被写体角速度算出部2162が行う被写体の角速度の算出処理では、例えば、画像の動き量を動きベクトルとして検出し、検出した動きベクトルから被写体のベクトル(被写体ベクトル)が検出される。そして、被写体角速度算出部2162は、検出された被写体ベクトルに対応する被写体の角速度(被写体角速度)を算出する。
【0054】
以下に、図7および図8を参照して、被写体ベクトルを検出する処理について説明する。流し撮り時には、カメラ信号処理回路2135が有する動きベクトル検出部2151が、複数の撮像画像(映像情報)から、画像の動きベクトルを検出する。
【0055】
図7は、動体である被写体701の撮影シーンの例を示す図である。
撮影画面の水平方向をX方向とし、垂直方向をY方向と定義する。動きベクトル検出部2151により検出される2種類のベクトルは、被写体701の部分に対応するベクトルと、背景部分に対応するベクトルである。動きベクトルを検出するための検出枠702は、矩形枠で示す複数の検出ブロックを有する。また、図7中には、被写体に焦点を合わせるためのフォーカス枠(焦点検出枠)703を示す。
【0056】
図7に示す検出枠702の設定では、流し撮りにおいて被写体に係る像ブレのみを振れ補正光学系で補正するために、検出枠702をフォーカス枠703の近傍に配置する密集型の配置を行っている。つまり、密集型の配置に設定することで、検出枠702に対応する各検出ブロックの検出精度を高めることができる。
【0057】
次に、距離取得部2181が取得する距離情報と動きベクトル検出部2151による動きベクトルとの関係について説明する。前述したように、距離情報(深度情報)は、奥行き方向におけるデジタルカメラ100と被写体との距離関係を示す情報である。距離情報は、大別して、至近方向の距離と無限方向(無限遠の方向)の距離の2種類に分類することができる。至近方向の距離は、カメラ位置からカメラ側の被写体までの距離であり、フォーカス枠(図7の703)に対応する被写体部分の距離情報(近距離情報)である。無限方向の距離は、カメラ位置から背景側の被写体までの距離であり、フォーカス枠に対応していない背景部分の距離情報(遠距離情報)である。
【0058】
距離情報の取得方法として、下記の方法を適用できる。距離取得部2181は、位相差検出用のオートフォーカス用センサ(AFセンサ)を用いて距離情報を取得する。例えば、デジタルカメラ100が、AF専用の検出部を備え、像信号の位相差が検出されて、像ずれ量またはデフォーカス量等を距離情報として取得できる。距離取得部2181が、撮像素子133による画像信号からコントラスト検出によりAF用の評価値を取得し、当該評価値を用いて距離情報を取得するようにしてもよい。また、像面位相差検出機能を有する瞳分割型撮像素子を用いてもよい。瞳分割型撮像素子の適用により、撮影レンズを通過する入射光を2方向の光に分けることで一対の像信号が得られる。つまり撮像光学系の異なる瞳部分領域をそれぞれ通過する光を撮像素子の光電変換部が受光する。光電変換後の対をなす像信号の位相差から像ずれ量またはデフォーカス量等を、距離取得部2181が距離情報として取得する。
【0059】
カメラ信号処理回路2135は、距離取得部2181から取得した距離情報に基づいて、図7の検出枠702における各検出ブロックに対応する距離情報の重み付けを行う。例えば、背景部分に相当する検出ブロックの距離情報を30mとし、被写体の領域に対応する検出ブロックの距離情報を10mとする重み付け処理が行われる。距離情報を用いることで、被写体ベクトルと背景ベクトルのクラスタリング精度を上けることができる。
【0060】
図8は、動きベクトル検出部2151が検出した動きベクトルをヒストグラム(度数分布)演算した結果を示す図である。
図8に示すヒストグラムの横軸はブレ量(単位:pixel)を表し、動きベクトルに相当する。縦軸は動きベクトルの度数を表す。図8(A)は、ユーザが一定の角速度以上でデジタルカメラ100を振っている方向(例えば、図7の水平方向)のヒストグラムを示す。
【0061】
図7に示す撮影シーンの例では、動きベクトル検出部2151により検出されるベクトルは、大別して2種類のベクトルに分類される。被写体振れ(被写体とデジタルカメラ100の撮影方向とのズレ)に相当する画像の動きベクトルと、背景振れに相当する画像の動きベクトルである。
【0062】
動きベクトル検出部2151は、設定された検出ブロック位置での1フレーム前の画像と現行フレームの画像とを比較して、画像の動きを検出する。しかし、画像の動きの検出値だけでは画像の動きが被写体画像の動きであるか背景画像の動きであるかを判別できない場合がある。したがって、本実施形態では、距離情報と角速度センサの出力を使って、動きベクトル検出部2151の検出値から被写体ベクトルと背景ベクトルとを分離する。以下では、被写体ベクトルのみを検出する処理について説明する。
【0063】
図8(A)では、ブレ量がゼロの付近に位置する第1のベクトル群801と、ブレ量803付近に位置する第2のベクトル群802とが検出されている。ブレ量803は、撮像素子133上の動き量に換算した、角速度センサ2171の出力である角速度情報に対応する。第2のベクトル群802は、ブレ量803を中心に一定の範囲804内に存在するベクトル群である。一定の範囲804は背景判定用の閾値範囲であり、予め設定される。度数の閾値805は、有効なベクトルであるか否かを判定するための閾値である。カメラ制御部2143は、ブレ量803を中心とする一定の範囲804内であって、度数が閾値805以上であるベクトルを背景ベクトルの候補と判定する。図8(A)に示す例では、第2のベクトル群802のうち、閾値805以上の度数を持つベクトルが背景ベクトルの候補(背景ベクトル候補)と判定される。また、カメラ制御部2143は、範囲804外に存在するベクトルであって、度数が閾値805以上であるベクトルを被写体ベクトルの候補(被写体ベクトル候補)と判定する。図8(A)の例では、第1のベクトル群801のうち、閾値805以上の度数を持つベクトルが、被写体ベクトル候補と判定される。
【0064】
本実施形態にて背景判定用の閾値範囲804を設けている理由は、例えば角速度センサ2171の出力のバラつきや焦点距離のバラつき等に起因する、動きベクトル検出部2151の誤検出を防ぐためである。カメラ制御部2143は、最終的に、被写体ベクトル候補の距離情報を確認し、至近距離側の情報が取得できている場合、フォーカス枠703(図7)に最も近い検出ブロックで検出されたベクトルが被写体ベクトルとして選択される。なお、フォーカス枠703に最も近い検出ブロックを起点として、その周囲にある一定数の被写体ベクトルを積算する処理を行ってもよい。本実施形態では、被写体ベクトルの検出に、カメラ本体1B内の角速度センサ2171を使用するが、交換レンズ1A内の角速度センサ2111を使用してもよい。また、角速度センサ2111,2171を併用してもよい。
【0065】
図8(B)は、ユーザにより一定の角速度以下でカメラを振る動きの方向、または、カメラが移動されていない方向におけるヒストグラムを示す。例えば、図8(B)は、図7の垂直方向におけるヒストグラムを示す。図8(B)では、デジタルカメラ100の振れの角速度が非常に小さいので、動きベクトル検出部2151が検出した全ベクトルは、背景判定用の閾値範囲804内に含まれる。しかし、実際には、カメラのパンニング(またはチルティング)方向でなくても微小な被写体振れは発生し得る。微小な被写体振れを抽出するために、フォーカス枠703に最も近い検出ブロックの距離情報が取得できている場合には、フォーカス枠703に最も近い検出ブロックが選定される。なお、フォーカス枠703に最も近い検出ブロックを起点として、その周囲にある一定数の被写体ベクトルを積算する処理を行ってもよい。
【0066】
被写体ベクトルが決定された後、被写体角速度算出部2162が、被写体角速度を算出する。焦点距離、フレームレート、および撮像素子の画素ピッチを用いて、角速度[degree/sec]から像面移動量[pixel]へ換算する処理とは逆の処理によって、像面移動量[pixel]から角速度[degree/sec]を算出できる。カメラ制御部2143は、被写体角速度算出部2162が算出した被写体角速度に、交換レンズ1A内の角速度出力部622による角速度データを加算した値をレンズ制御部2112に対して送信する。マウント接点部2144,2115を介して、交換レンズ1A内のレンズ制御部2112が、カメラ制御部2143から送信された情報を受信する。
【0067】
図9は、第1実施形態における流し撮りアシスト用の制御を説明するフローチャートである。
以下の処理は、カメラ制御部2143、カメラ信号処理回路2135およびレンズ制御部2112が、所定の制御プログラムを解釈して実行することにより実現される。すなわち、本実施形態において、カメラ制御部2143、カメラ信号処理回路2135およびレンズ制御部2112は、シフトレンズ群2104を駆動して像ブレを補正する制御を実行する補正制御手段として機能する。なお、図9におけるSは、フローチャート中の各処理に対応するステップ番号を示す。
【0068】
(S901)流し撮りモードの判定処理
カメラ制御部2143は、流し撮りモードの設定が行われたか否かを判定する。流し撮りモードが設定された場合、処理がS902に進む。通常モードが設定された場合、流し撮りモードの制御は行われず、処理が終了する。
(S902)交換レンズ1Aの判別処理
カメラ制御部2143が、カメラ本体1Bに装着された交換レンズ1Aが、流し撮りモードに対応した交換レンズであるか否かを判定する。交換レンズ1Aが、流し撮りモードに対応した交換レンズであると判定された場合、処理がS903に進む。交換レンズ1Aが、流し撮りモードに対応していない交換レンズであると判定された場合は、処理が終了する。なお、交換レンズ1Aが流し撮りモードに対応しているか否かの判定処理は、レンズ制御部2112からカメラ制御部2143へ送信されるレンズ情報の信号に基づいて行われる。コンパクトデジタルカメラ等のようにレンズ通信の機能を有していない場合には、S902の判定処理は不要であり、処理がS903へ進む。
【0069】
(S903)注視点位置検出
カメラ信号処理回路2135が、図5を参照して説明した処理により、ユーザが注視する注視点位置を検出する。そして、カメラ信号処理回路2135は、検出した注視点位置を含む領域(注視領域)を示す注視枠を設定する。注視枠で囲まれた領域が注視領域である。そして、処理がS904に進む。
なお、注視領域は、ユーザにより指定された、または予め指定された指定領域の一例である。本発明の適用範囲は、ユーザの視線により指定される領域に限定されない。例えば、ユーザが所定の画面上においてタッチ操作等で指定した領域に注視枠を設定してもよい。
【0070】
図11は、動体である被写体1101の撮影シーンの例を示す図である。
注視枠1102は、現フレームにおける注視領域を示す。また、注視枠1103は、次フレームにおける注視領域を示す。図9の説明に戻る。
(S904)シフトレンズ群2104の位置取得1
カメラ制御部2143が、レンズ制御部2112から、位置センサ2105が検出したシフトレンズ群2104の位置情報を取得する。取得されるシフトレンズ群2104の位置情報は、動きベクトル検出部2151の検出期間と同期した位置センサ2105の出力の平均値である。そして、処理がS905へ進む。
【0071】
(S905)注視枠移動量取得
カメラ制御部2143が、連続するフレーム間での注視枠の動きを示す注視枠移動量を取得する。例えば、カメラ制御部2143は、図11中の注視枠1102から注視枠1103への移動量である注視枠移動量1104を取得する。そして、処理がS906に進む。
(S906)角速度取得1
カメラ制御部2143が、レンズ制御部2112から、角速度センサ2111が検出した振れ検出信号(角速度)を取得する。また、カメラ制御部2143が、カメラ本体1B内の角速度センサ2171が検出した振れ検出信号(角速度)を取得する。本ステップで取得される振れ検出信号の値は、S905における注視枠の移動量の取得期間と同期した、角速度センサ2111または角速度センサ2171の出力の平均値である。そして、処理がS915に進む。
【0072】
(S907)像面移動量算出1
カメラ制御部2143は、S906で取得した角速度を像面移動量へ換算する演算を行う。具体的には、カメラ制御部2143は、交換レンズ1A内の角速度センサ2111により検出される角速度と、撮像光学系の焦点距離と、フレームレートとに基づいて、像面上での移動量(像面移動量)を算出する。そして、処理がS908に進む。
(S908)注視枠角速度算出
被写体角速度算出部2162が、S905で取得された注視枠移動量1104に基づいて、注視枠の角速度(注視枠角速度)を算出する。注視枠角速度は、例えば、図11の注視枠1102から注視枠1103への移動に係る角速度である。注視枠角速度の算出処理の詳細については、図10を参照して後述する。そして、処理がS909に進む。
【0073】
(S909)振れ補正光学系の駆動1
レンズ制御部2112は、S908で算出された注視枠角速度をカメラ制御部2143から受信する。レンズ制御部2112の流し撮り制御部2122が、注視枠角速度に基づいて、シフトレンズ群2104を駆動させる制御量を決定する。ドライバ2113は、決定された制御量にしたがってシフトレンズ群2104を駆動する。これにより、デジタルカメラ100の振れに対する注視枠の領域内の画像のブレ(注視領域に係る像ブレ)が補正される。S909における、注視領域に係る像ブレを補正する制御(第1の補正制御)は、後述するS910の焦点制御の前に実行される。
【0074】
(S910)焦点位置制御
レンズ制御部2112が、被写体1101に焦点を合わせる焦点制御を実行する。像面位相差の検出結果に基づく自動焦点調節が行われる。交換レンズ1A内のズームレンズ群2103が駆動し、焦点位置が調節される。そして、処理がS911に進む。
(S911)距離情報取得
距離取得部2181が、撮像画像に関連する距離情報を取得する。また、動きベクトル検出部2151が、動きベクトルの検出枠702を設定する。そして、処理がS912に進む。
【0075】
(S912)シフトレンズ群2104の位置取得2
カメラ制御部2143が、レンズ制御部2112から、位置センサ2105が検出したシフトレンズ群2104の位置情報を取得する。取得されるシフトレンズ群2104の位置情報は、動きベクトル検出部2151による動きベクトルの検出期間と同期した、位置センサ2105の出力の平均値である。そして、処理がS913に進む。
(S913)動きベクトル取得
動きベクトル検出部2151が、検出枠702内の領域を対象として、画像から動きベクトルを検出する。そして、処理がS914に進む。
【0076】
(S914)角速度取得2
カメラ制御部2143が、レンズ制御部2112から、角速度センサ2111が検出した振れ検出信号(角速度)を取得する。また、カメラ制御部2143が、カメラ本体1B内の角速度センサ2171が検出した振れ検出信号(角速度)を取得する。本ステップで取得される振れ検出信号の値は、動きベクトル検出部2151による動きベクトルの検出期間と同期した、角速度センサ2111または角速度センサ2171の出力の平均値である。そして、処理がS915に進む。
(S915)像面移動量算出2
カメラ制御部2143が、S914で取得した角速度を像面移動量へ換算する演算を行う。具体的には、カメラ制御部2143は、交換レンズ1A内の角速度センサ2111により検出される角速度と、撮像光学系の焦点距離と、フレームレートを用いて、像面上での移動量(像面移動量)を算出する。そして処理がS916に進む。
【0077】
(S916)被写体角速度算出
被写体角速度算出部2162は、S913で取得された動きベクトルに基づいて、被写体角速度を算出する。被写体角速度の算出に関しては、図10を参照して後述する。
(S917)振れ補正光学系の駆動
レンズ制御部2112の流し撮り制御部2122が、S916で算出された被写体角速度をカメラ制御部2143から受信し、露光期間中にシフトレンズ群2104を駆動させる制御量を決定する。ドライバ2113は、決定された制御量にしたがってシフトレンズ群2104を駆動する。これにより、焦点制御(S910)後において、被写体に係る像ブレを補正する制御(第2の補正制御)が実行される。そして、処理が終了する。
【0078】
図10は、図9のS908における注視枠角速度の算出処理と、S917における被写体角速度の算出処理を説明するフローチャートである。図10中のSは、フローチャート中の各処理に対応するステップ番号を示す。
(S1001)レンズ位置加算
カメラ制御部2143が、図9のS904またはS912で取得されたシフトレンズ群2104の位置情報の値を、動きベクトル検出部2151の検出値に加算する処理を実行する。これにより、動きベクトルの検出中に手振れ補正制御によってシフトレンズ群2104が駆動されたとしても、被写体振れに係る像を求めることができる。そして、処理がS1002へ進む。
【0079】
(S1002)注視枠角速度の算出処理の判定
カメラ制御部2143が、S908の注視枠角速度の算出処理を行うかを判定する。S908の注視枠角速度の算出処理を行う場合は、処理がS1004に進む。S908の注視枠角速度の算出処理ではなく、S917の被写体角速度の算出処理を行う場合は、処理がS1011に進む。
(S1004)注視枠移動量の算出可否の判定
カメラ制御部2143が、S905で注視枠移動量1104を取得できているかを判定する。注視枠移動量1104を取得できている場合は、処理がS1005に進む。注視枠移動量1104を取得できていない場合は、処理がS1017に進む。
【0080】
(S1005)注視枠角速度算出
被写体角速度算出部2162が、注視枠角速度を算出する。具体的には、図9のS907またはS915で角速度から像面移動量を算出した方法とは逆の方法によって、注視枠の像面移動量(注視枠移動量1104)から注視枠角速度を算出する処理が行われる。そして、処理がS1016に進む。
(S1006)注視枠振れ補正量算出
カメラ制御部2143が、S1005で算出された注視枠角速度に対し、角速度出力部622(図6)からカメラ制御部2143へ送信される角速度の値を加算して、被写体角速度としてレンズ制御部2112に送信する。被写体角速度取得部623が、カメラ制御部2143から受信した被写体角速度を減算器624に出力する。減算器624は、交換レンズ1A内の角速度センサ2111が検出する角速度と、被写体角速度との差分を演算する。積分器625は算出された差分を積分し、積分値を像ブレ補正制御の目標制御値(注視枠振れ補正量)として、制御判定部604に出力する。注視枠振れ補正量は、注視領域に係る像ブレを補正するための振れ補正光学系の目標制御値である。そして、処理がリターン処理へ移行する。
【0081】
(S1011)距離情報重み付け
カメラ信号処理回路2135が、図9のS911で取得された距離情報に基づき、図11の検出枠702における各検出ブロックに対応する距離情報の重み付けを行う。そして、処理がS1012に進む。
(S1012)ヒストグラム生成
カメラ制御部2143が、図9のS913で取得された動きベクトルに基づいて、動きベクトルに関するヒストグラム演算を行う。ヒストグラムの生成後、処理がS1013に進む。
【0082】
(S1013)被写体ベクトル候補の検出可否の判定
カメラ制御部2143は、生成されたヒストグラムに基づき、被写体ベクトル候補が検出できているか否かを判定する。被写体ベクトル候補が検出できている場合は、処理がS1014に進む。被写体ベクトル候補が検出できていない場合は、処理がS1017に進む。
(S1014)被写体ベクトル算出
カメラ制御部2143は、被写体ベクトル候補の中から最終的に使用する被写体ベクトルを選択する。例えば、フォーカス枠703(図7)の位置に最も近い検出ブロックで被写体ベクトルが検出され、且つその距離情報が取得できている場合に、当該最も近い検出ブロックで検出されたベクトルが被写体ベクトルとして選択される。なお、上記最も近い検出ブロックを起点として、その周囲の被写体ベクトルを積算してもよい。被写体ベクトルの算出後に、処理がS1015に進む。
【0083】
(S1015)被写体角速度算出
被写体角速度算出部2162が、S1014で算出された被写体ベクトルに対応する被写体の像面移動量に基づき、被写体角速度を算出する。被写体角速度算出部2162は、図9のS907またはS915で角速度から像面移動量を算出した方法とは逆の方法によって、被写体角速度を算出する。そして、処理がS1016に進む。
(S1016)被写体振れ補正量算出
カメラ制御部2143は、S1015で算出された被写体角速度に対し、角速度出力部622からカメラ制御部2143へ送信される角速度の値を加算して、レンズ制御部2112へ送信する。被写体角速度取得部623は、カメラ制御部2143からレンズ制御部2112へ送信された被写体角速度を取得して減算器624に出力する。減算器624は、交換レンズ1A内の角速度センサ2111が検出した角速度と、被写体角速度との差分を演算する。積分器625は、算出された差分を積分し、積分値を被写体に係る像ブレを補正するための振れ補正光学系の目標制御値(被写体振れ補正量)として制御判定部604へ出力する。そして、処理がリターン処理へ移行する。
【0084】
(S1017)角速度取得
本ステップから、振れ補正光学系の制御が、手振れ補正制御部2121による手振れ補正制御に切り替わる。手振れ補正制御部2121が、交換レンズ1A内の角速度センサ2111が検出した振れ検出信号が示す角速度を取得する。そして、処理がS1018に進む。
(S1018)オフセット除去
手振れ補正制御部2121が、任意の周波数帯域でその特性を変更し得る機能を有するハイパスフィルタを用いて、S1017で取得された振れ検出信号に含まれる低周波数成分を遮断してから高周波数帯域の信号を出力する処理を実行する。これにより、振れ検出信号に重畳しているオフセット成分が除去される。そして、処理がS1019に進む。
【0085】
(S1019)利得・位相算出
手振れ補正制御部2121が、オフセット成分が除去された振れ検出信号に対して、所定のゲインで増幅し、位相補償を行う。そして、処理がS1020に進む。
(S1020)手振れ補正量算出
手振れ補正制御部2121が、積分器603によって、S1019で処理された信号に係る角速度を積分する。積分により得られた角度値は、手振れ補正制御の目標制御値(手振れ補正量)として、制御判定部604に出力される。そして、処理がリターン処理へ移行する。
【0086】
本実施形態の画像処理装置(デジタルカメラ100)によれば、流し撮りモード時において、注視領域の動きに基づいて、被写体に焦点が合う前のタイミングで振れ補正光学系の制御を行うことが可能となる。また、焦点制御時に被写体とカメラ動作の角速度ブレが低減されて、像面位相差検出完了までの時間を短縮できる。
【0087】
[第2実施形態]
図12は、第2実施形態における流し撮りアシスト用の制御を説明するフローチャートである。
第2実施形態におけるデジタルカメラ100の構成は、第1実施形態におけるデジタルカメラの構成と同様である。以下の処理は、カメラ制御部2143、カメラ信号処理回路2135およびレンズ制御部2112が、所定の制御プログラムを解釈して実行することにより実現される。図12中のSは、フローチャート中の各処理に対応するステップ番号を示す。以下に、第2実施形態について、第1実施形態との差異を中心に説明する。S1201乃至S1204は、図9のS901乃至S904と同様である。
【0088】
図14は、動体である被写体701の撮影シーンの例を示す図である。
S1203で検出されたユーザの注視点位置を含む領域が注視枠1403となる。図12の説明に戻る。
(S1205)動きベクトル取得1
動きベクトル検出部2151が、図14の注視枠1403と重なるように配置された検出枠704における動きを動きベクトルとして検出する。なお、検出枠704は、注視枠1403を含む所定の領域に配置されていればよく、検出枠704の大きさは、注視枠1403と一致する必要はない。また、S1205においては、さらに、距離取得部2181が、撮像画像に関連する距離情報を取得する。そして、処理がS1206へ進む。S1206、S1207は、図9のS906、S907と同様である。
【0089】
(S1208)注視枠角速度算出
被写体角速度算出部2162が、S1204乃至S1206で取得した情報に基づいて、注視枠1403の角速度(注視枠角速度)を算出する。注視枠角速度の算出処理の詳細については、図13を参照して後述する。そして、処理がS1209に進む。
(S1209)制御量の判定
レンズ制御部2112が、S1208で算出された注視枠角速度をカメラ制御部2143から受信する。レンズ制御部2112の流し撮り制御部2122が、注視枠角速度に基づいて、注視枠の領域内の画像のブレ(注視領域に係る像ブレ)を補正するためにシフトレンズ群2104を駆動させる制御量を決定する。流し撮り制御部2122は、決定した制御量に基づいて、振れ補正量のマージンがあるか、つまりS1218における、被写体に係る像ブレの補正余地があるかを判定する。被写体に係る像ブレの補正のために必要な所定の制御量が確保できない場合、流し撮り制御部2122は、被写体に係る像ブレの補正余地がないと判定して、処理がS1211に進む。被写体に係る像ブレの補正のために必要な所定の制御量が確保できる場合、流し撮り制御部2122は、被写体に係る像ブレの補正余地があると判定し、処理がS1210に進む。本ステップの判定処理によって、S1218での被写体振れ補正量のマージンが確保される。ただし、S1209の判定処理を省略してもよい。
【0090】
(S1210)振れ補正光学系の駆動1
ドライバ2113が、S1209で決定された制御量にしたがってシフトレンズ群2104を駆動する。これにより、注視領域に係る像ブレが補正される。そして、処理がS1211に進む。S1211乃至S1216は、図9のS910乃至S915と同様である。なお、本実施形態では、S1211の時点で焦点制御が実行されるが、S1204の処理などと同時に開始するようにしてもよい。また、S1212では、距離情報の取得の他、図14に示す動きベクトルの検出枠702が設定される。
【0091】
(S1217)被写体角速度算出
被写体角速度算出部2162が、S1212乃至S1215で取得された情報を用いて、被写体角速度を算出する。被写体角速度の算出処理の詳細については、図13を参照して後述する。
(S1218)振れ補正光学系の駆動2
レンズ制御部2112の流し撮り制御部2122が、S1217で算出された被写体角速度をカメラ制御部2143から受信し、露光期間中にシフトレンズ群2104を駆動させる制御量を決定する。ドライバ2113は、決定された制御量にしたがってシフトレンズ群2104を駆動する。これにより、焦点制御(S1211)後において、被写体に係る像ブレが補正される。そして、処理が終了する。
【0092】
図13は、図12のS1208における注視枠角速度の算出処理とS1217における被写体角速度の算出処理を説明するフローチャートである。図13中のSは、フローチャート中の各処理に対応するステップ番号を示す。なお、本フローチャートの説明において、S1208の処理については、「被写体」を「注視枠」と読み替えるものとする。
(S1301)レンズ位置加算
カメラ制御部2143は、図12のS1204またはS1213で取得されたシフトレンズ群2104の位置情報の値を、動きベクトル検出部2151の検出値に加算する処理を実行する。これにより、動きベクトルの検出中に手振れ補正制御によってシフトレンズ群2104が駆動されたとしても、被写体振れに係る像を求めることができる。そして、処理がS1302へ進む。
【0093】
(S1302)距離情報重み付け
カメラ信号処理回路2135が、図12のS1205またはS1212で取得された距離情報に基づき、図14の検出枠704または検出枠702における各検出ブロックに対応する距離情報の重み付けを行う。なお、画面内の距離情報が取得できていない場合は、本処理を省略する。そして、処理がS1012に進む。
(S1303)ヒストグラム生成
カメラ制御部2143が、図12のS1205またはS1214で取得された動きベクトルに基づいて、動きベクトルに関するヒストグラム演算を行う。ヒストグラムの生成後、処理がS1304に進む。
【0094】
(S1304)被写体ベクトル候補の検出可否の判定
カメラ制御部2143は、生成されたヒストグラムに基づき、被写体ベクトル候補が検出できているか否かを判定する。被写体ベクトル候補が検出できている場合は、処理がS1305に進む。被写体ベクトル候補が検出できていない場合は、処理がS1308に進む。
(S1305)被写体ベクトル算出
カメラ制御部2143は、被写体ベクトル候補の中から最終的に使用する被写体ベクトルを選択する。例えば、図14では図示を省略するフォーカス枠の位置に最も近い検出ブロックで被写体ベクトルが検出され、且つその距離情報が取得できている場合に、当該最も近い検出ブロックで検出されたベクトルが被写体ベクトルとして選択される。なお、上記最も近い検出ブロックを起点として、その周囲の被写体ベクトルを積算してもよい。被写体ベクトルの算出後に、処理がS1306に進む。
【0095】
(S1306)被写体角速度算出
被写体角速度算出部2162が、S1305で算出された被写体ベクトルに対応する被写体の像面移動量に基づき、被写体角速度を算出する。被写体角速度算出部2162は、図12のS1207またはS1216で角速度から像面移動量を算出した方法とは逆の方法によって、被写体角速度を算出する。そして、処理がS1307に進む。
(S1307)被写体振れ補正量算出
カメラ制御部2143は、算出された被写体角速度に対し、角速度出力部622からカメラ制御部2143へ送信される角速度の値を加算して、レンズ制御部2112へ送信する。被写体角速度取得部623は、カメラ制御部2143からレンズ制御部2112へ送信された被写体角速度を取得して減算器624に出力する。減算器624は、交換レンズ1A内の角速度センサ2111が検出した角速度と、被写体角速度との差分を演算する。積分器625は、算出された差分を積分し、積分値を像ブレを補正するための振れ補正光学系の目標制御値(被写体振れ補正量)として制御判定部604へ出力する。そして、処理がリターン処理へ移行する。S1308乃至S1311は、図10のS1017乃至S1020と同様である。第2実施形態の画像処理装置によれば、被写体に係る像ブレの補正余地を残して、注視領域に係る像ブレを補正することができる。
【0096】
[第3実施形態]
図15は、第3実施形態における流し撮りアシスト用の制御を説明するフローチャートである。
第3実施形態におけるデジタルカメラ100の構成は、第1実施形態または第2実施形態におけるデジタルカメラの構成と同様である。以下の処理は、カメラ制御部2143、カメラ信号処理回路2135およびレンズ制御部2112が、所定の制御プログラムを解釈して実行することにより実現される。図15中のSは、フローチャート中の各処理に対応するステップ番号を示す。以下に、第3実施形態について、第2実施形態との差異を中心に説明する。図15のS1501乃至S1512は、図12のS1201乃至S1212と同様であるので、説明を省略する。
【0097】
(S1513)被写体候補検出
カメラ信号処理回路2135が、S1512で取得された距離情報に基づいて、被写体候補を検出する。
図16および図17は、被写体候補の検出と動きベクトルの検出枠の設定を説明する図である。
例えば、図16(A)に示すように、カメラ信号処理回路2135は、距離情報に基づいて、被写体候補1601を決定し、その周辺領域を被写体候補の領域(被写体候補領域)1603として検出する。また、例えば、図17(A)に示すように、カメラ信号処理回路2135は、距離情報に基づいて、複数の被写体候補1701乃至1703を決定し、各々の被写体候補の周辺領域を被写体候補領域1711乃至1713として検出する。そして、処理がS1514に進む。
【0098】
(S1514)注視点位置検出2
カメラ信号処理回路2135が、図5を参照して説明した処理により、ユーザが注視する注視点位置を検出する。そして、カメラ信号処理回路2135は、検出した注視点位置を含む領域(注視領域)を示す注視枠を設定する。
(S1515)被写体領域選択
カメラ信号処理回路2135が、S1513で検出された被写体候補領域と、S1514で設定された注視枠とに基づいて、被写体領域を選択し、被写体領域に基づいて、動きベクトルの検出枠1722を配置する。
【0099】
図16(B)及び図17(B)は、注視点位置を含む注視枠と、S1517で動きベクトルを検出するための検出枠を示す。被写体候補領域のほうが注視枠内の領域(注視領域)より大きい場合を想定する。カメラ信号処理回路2135は、例えば、図16(B)に示すように、注視枠1604内の領域を被写体領域として検出する。そして、カメラ信号処理回路2135は、検出した被写体領域を含む所定の領域に動きベクトルの検出枠1605を配置する。被写体候補1601の右端部分と左端部分では、撮影画角内での移動速度が異なるため、注視枠1604内の領域を被写体領域として限定することで、的確に像ブレ補正の制御を行うことができる。なお、被写体候補領域のほうが注視枠内の領域より小さい場合は、カメラ信号処理回路2135は、被写体候補領域を含む所定の領域に動きベクトルの検出枠を配置してもよい。
【0100】
また、カメラ信号処理回路2135は、例えば、図17(B)に示すように、複数の被写体候補1711乃至被写体候補1713のうち、注視枠1722と位置が重なる被写体候補1702の領域を被写体領域として検出する。カメラ信号処理回路2135は、検出した被写体領域を含む所定の領域に動きベクトルの検出枠1730を配置する。S1516乃至S1521の処理は、図12のS1213乃至S1218の処理と同様であるので、説明は省略する。第3実施形態の画像処理装置によれば、被写体候補領域が大きく、被写体候補領域の場所によって移動速度差がある場合や、複数の被写体候補領域が検出された場合でも、注視枠を利用して、被写体領域に応じた動きベクトルを検出することができる。
【0101】
[第4実施形態]
図18は、第4実施形態における流し撮りアシスト用の制御を説明するフローチャートである。
第4実施形態におけるデジタルカメラ100の構成は、第1実施形態、第2実施形態または第3実施形態におけるデジタルカメラ100の構成と同様である。以下の処理は、カメラ制御部2143、カメラ信号処理回路2135およびレンズ制御部2112が、所定の制御プログラムを解釈して実行することにより実現される。図18中のSは、フローチャート中の各処理に対応するステップ番号を示す。以下に、第4実施形態について、第2実施形態との差異を中心に説明する。図18のS1801乃至S1803は、図12のS1201乃至S1203と同様である。
【0102】
(S1804)注視点位置の判定
カメラ信号処理回路2135が、S1803で設定された注視枠の位置が撮影画角の所定の位置であるかを判定する。この例では、カメラ信号処理回路2135は、注視枠の位置が画角の中央であるかを判定する。注視枠の位置が所定の位置(例えば、画角の中央)でない場合は、処理がS1804に戻る。注視枠の位置が所定の位置である場合は、処理がS1805に進む。なお、所定の位置は、被写体をどの位置で止めた構図を求めるかによって可変である。
【0103】
図19は、流し撮り時の被写体1901を示す図である。
図19に示す例では、注視枠1902が画面の中央に位置している。したがって、処理が図18のS1805に進む。S1805乃至S1818の処理は、図12のS1204乃至S1218の処理と同様であるので、説明は省略する。
【0104】
(S1819)注視点位置の判定
カメラ信号処理回路2135が、S1804と同様に、注視枠の位置が撮影画角の所定の位置であるかを判定する。この例では、カメラ信号処理回路2135は、注視枠の位置が画角の中央であるかを判定する。注視枠の位置が所定の位置(例えば、画角の中央)でない場合は、処理がS1819に戻る。注視枠の位置が所定の位置である場合は、処理がS1820に進む。なお、所定の位置は、被写体をどの位置で止めた構図を求めるかによって可変である。
【0105】
(S1820)撮影
カメラ制御部2143およびカメラ信号処理回路2135が、撮影制御手段として機能し、注視枠が所定の位置(例えば、画角の中央)にある画角で被写体の撮影を行う。
なお、S1801の判定処理では、カメラ制御部2143は、流し撮りモードが設定されたか否かを判定するが、この判定処理に代えて、以下の処理を行ってもよい。すなわち、カメラ制御部2143が、デジタルカメラ100の撮影方向を変更する動作(例えばパンニング)がされており、かつ、ユーザが被写体を注視している場合に、流し撮りが行われると判定する。そして、処理がS1802に進む。例えば、注視点位置と被写体候補領域とが重なっている場合に、カメラ制御部2143は、ユーザが被写体を注視していると判定する。カメラ制御部2143が、被写体候補領域と重なっている注視点位置に対応する注視時間が所定時間以上である場合に、ユーザが被写体を注視していると判定するようにしてもよい。
【0106】
また、S1801の判定処理に代えて、カメラ制御部2143が、機械学習によって、流し撮りが行われるか否か判定し、流し撮りが行われると判定した場合に、処理がS1802以降の処理に進むようにしてもよい。これにより、機械学習を用いた流し撮りの判定結果に応じて、S1811とS1818での振れ補正光学系の駆動が実行される。このために、例えば、記録メディア111が、流し撮り時のユーザの視線情報に基づいて機械学習により作成された学習モデルを記憶する。そして、カメラ制御部2143が、ユーザの視線情報を入力として、記録メディア111内の学習モデルを用いて、流し撮りが行われるか否かを判定する。上記の学習モデルを、デジタルカメラ100とネットワークを通じて通信可能なクラウド上のサーバが記憶しておいてもよい。カメラ制御部2143が、上記のサーバに対してユーザの視線情報を送信し、サーバが、当該視線情報を入力として、学習モデルにより、流し撮りが行われるか否かを判定する。そして、カメラ制御部2143が、サーバから受信する判定結果に基づいて、流し撮りが行われるか否かを判定するようにしてもよい。
【0107】
第4実施形態の画像処理装置によれば、ユーザが被写体をどの位置で止めたいかに応じて、像ブレ補正及び撮影の開始タイミングを自動で制御できる。したがって、短いシャッタチャンスの期間において撮影の成功率を高めることが可能となる。本発明は、以上説明した第1実施形態乃至第4実施形態に限定されない。また、各実施形態を適宜組み合わせることもできる。
【0108】
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0109】
100 デジタルカメラ
114 CPU
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19