(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023180547
(43)【公開日】2023-12-21
(54)【発明の名称】撮像装置およびその制御方法
(51)【国際特許分類】
G03B 5/00 20210101AFI20231214BHJP
H04N 23/695 20230101ALI20231214BHJP
H04N 23/73 20230101ALI20231214BHJP
G03B 15/00 20210101ALI20231214BHJP
G03B 17/56 20210101ALI20231214BHJP
G03B 7/093 20210101ALI20231214BHJP
【FI】
G03B5/00 J
H04N5/232 990
H04N5/235 300
G03B15/00 P
G03B17/56 A
G03B7/093
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2022093932
(22)【出願日】2022-06-09
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100114775
【弁理士】
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【弁理士】
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100208580
【弁理士】
【氏名又は名称】三好 玲奈
(72)【発明者】
【氏名】上野 諒平
【テーマコード(参考)】
2H002
2H105
2K005
5C122
【Fターム(参考)】
2H002CC01
2H002GA42
2H002GA45
2H105AA13
2H105AA55
2K005BA25
2K005BA27
2K005BA52
2K005BA54
2K005CA04
2K005CA13
2K005CA14
2K005CA15
2K005CA22
5C122EA06
5C122EA41
5C122EA65
5C122EA66
5C122EA69
5C122FD01
5C122FE02
5C122FF01
5C122FF11
5C122FH11
5C122FH13
5C122FH14
5C122FJ01
5C122GD04
5C122GD06
5C122HA81
5C122HA82
5C122HA88
5C122HA90
5C122HB01
5C122HB02
5C122HB05
5C122HB06
5C122HB09
5C122HB10
(57)【要約】
【課題】被写体の追従制御を行い、像ブレが抑制された画像を取得可能とする撮像装置を提供する。
【解決手段】撮像装置101は、装置揺れ検出部208、装置移動検出部209と、複数の回転ユニット104,105と、鏡筒回転駆動部112を備える。撮像装置101は被写体情報を検出し、検出された被写体情報に基づいて回転ユニット104,105の駆動制御を行って撮像部205の撮像方向を変更し、被写体の追従制御および像ブレ補正の制御を行う。制御部212は、被写体に対する追従度を算出し、追従度から取得されるブレ情報、鏡筒回転駆動部112における駆動情報、撮像装置101の揺れ量の少なくともいずれかに基づいて、追従の敏感度と撮像部205の露出条件のうちの1つ以上を変更する制御を行う。
【選択図】
図2
【特許請求の範囲】
【請求項1】
被写体を撮像する撮像手段と、
被写体情報を検出する第1の検出手段と、
撮像装置の揺れ量を検出する第2の検出手段と、
前記撮像手段の撮像方向を変更する駆動手段と、
前記被写体情報および前記揺れ量の検出情報を用いて、前記駆動手段により前記被写体に対して前記撮像方向を追従させる追従制御および像ブレ補正の制御と、前記撮像手段の露出条件を変更する制御を行う制御手段と、を備え、
前記制御手段は、前記駆動手段の制御量および駆動情報と前記追従制御の追従度および敏感度を算出し、前記追従度から取得されるブレ情報、前記駆動情報、前記揺れ量との少なくともいずれかにより決定される、前記撮像手段の露光期間での前記敏感度と前記露出条件との少なくともいずれかに変更する制御を行う
ことを特徴とする撮像装置。
【請求項2】
前記第1の検出手段は、前記撮像手段により取得される画像から被写体を検出することにより、前記被写体情報として、前記被写体の速度と位置、被写体周りの動きベクトル、前記被写体と撮像装置との距離、前記被写体の向き、前記被写体の進行方向のうちの1つ以上の情報を取得する
ことを特徴とする請求項1に記載の撮像装置。
【請求項3】
前記駆動手段の駆動速度、駆動位置、可動域のうちの1つ以上を有する前記駆動情報を検出する第3の検出手段を備え、
前記制御手段は、前記駆動情報を用いて前記追従制御を行う
ことを特徴とする請求項1または請求項2に記載の撮像装置。
【請求項4】
前記駆動手段は、複数の回転部のうちの第1の回転部の駆動を行うことで前記撮像方向を第1の回転軸を中心として変更する第1の駆動手段と、前記複数の回転部のうちの第2の回転部の駆動を行うことで前記撮像方向を第2の回転軸を中心として変更する第2の駆動手段を備え、
前記第3の検出手段は、前記第1および第2の駆動手段の駆動情報をそれぞれ検出する
ことを特徴とする請求項3に記載の撮像装置。
【請求項5】
前記制御手段は、前記制御量および敏感度から前記駆動手段の駆動量を算出し、前記駆動量に対応する前記回転部の位置を決定する
ことを特徴とする請求項4に記載の撮像装置。
【請求項6】
前記制御手段は、前記被写体情報および前記駆動情報に基づく前記追従度を算出する
ことを特徴とする請求項1に記載の撮像装置。
【請求項7】
前記制御手段は、前記ブレ情報として画像のブレ量、ブレ方向、前記被写体と撮像装置との距離、前記被写体の向き、前記被写体の進行方向のうちの1つ以上の情報を取得する
ことを特徴とする請求項1に記載の撮像装置。
【請求項8】
前記制御手段は、前記被写体の速度および前記駆動手段の駆動速度から前記追従度を算出し、前記追従度および前記撮像手段の露光時間から前記ブレ情報を算出する
ことを特徴とする請求項1に記載の撮像装置。
【請求項9】
前記制御手段は、前記ブレ情報と前記駆動情報と前記揺れ量のうちの1つ以上に基づく判定により、前記被写体の撮影を実行するか否かを決定する
ことを特徴とする請求項1に記載の撮像装置。
【請求項10】
前記制御手段は、撮影前の前記追従度と前記撮像手段の露光時間から前記ブレ情報を算出して前記露光期間における前記追従制御を行い、前記被写体を撮影した画像を生成する制御を行う
ことを特徴とする請求項1に記載の撮像装置。
【請求項11】
前記撮像手段により取得される前記被写体の画像データを記録媒体に記録する記録手段を備え、
前記制御手段は、撮影前の前記追従度および撮影後の前記追従度から算出される、前記露光期間における追従度と、前記撮像手段の露光時間とから、前記露光期間での画像のブレ量を算出して閾値と比較し、前記ブレ量が前記閾値未満である場合、前記記録手段により前記画像データを前記記録媒体に記録する制御を行い、前記ブレ量が前記閾値以上である場合、前記画像データを前記記録媒体に記録しないか、または前記記録媒体から前記画像データを削除する制御を行う
ことを特徴とする請求項1に記載の撮像装置。
【請求項12】
前記制御手段は、複数のフレーム間での前記ブレ量が閾値以上であって、かつブレ方向の反転する回数が閾値より大きい場合、前記被写体は不規則に動く被写体であると判断し、前記露光期間での前記敏感度を撮影前の前記敏感度よりも下げて前記追従制御を行う
ことを特徴とする請求項11に記載の撮像装置。
【請求項13】
前記制御手段は、複数のフレーム間での前記ブレ量が一定量で増加し、かつブレ方向が一定である場合、前記被写体は規則的に動く被写体のうち、加速成分をもって動く被写体であると判断し、前記露光期間での前記敏感度を撮影前の前記敏感度よりも上げて前記追従制御を行う
ことを特徴とする請求項11に記載の撮像装置。
【請求項14】
前記制御手段は、前記被写体が不規則に動く被写体であるか、または規則的に動く被写体のうち、加速成分をもって動く被写体であると判断した場合、前記露光時間をより短くする方向へ前記露出条件を変更する制御を行う
ことを特徴とする請求項12または請求項13に記載の撮像装置。
【請求項15】
被写体を撮像する撮像手段と、前記撮像手段の撮像方向を変更する駆動手段と、前記駆動手段を制御する制御手段と、を備える撮像装置にて実行される制御方法であって、
被写体情報および前記撮像装置の揺れ量の検出を行う検出工程と、
前記被写体情報および前記揺れ量の検出情報を用いて、前記駆動手段により前記被写体に対して前記撮像方向を追従させる追従制御および像ブレ補正の制御と、前記撮像手段の露出条件を変更する制御を前記制御手段が行う制御工程と、を有し、
前記制御工程にて前記制御手段は、前記駆動手段の制御量および駆動情報と前記追従制御の追従度および敏感度を算出する処理と、前記追従度から取得されるブレ情報、前記駆動情報、前記揺れ量との少なくともいずれかにより決定される、前記撮像手段の露光期間での前記敏感度と露出条件との少なくともいずれかに変更する制御を行う
ことを特徴とする撮像装置の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体に対する自動追従および像ブレ補正の技術に関する。
【背景技術】
【0002】
動体(以下、「移動被写体」ともいう)の撮影時に被写体画像の像ブレを抑制する方法には、シャッタ速度を上げる第1の方法と、露光中に移動被写体の動きに合わせるように撮影者がカメラを動かす第2の方法がある。第2の方法では、露光中に被写体情報を検出できないので、露光前の被写体情報から露光中の被写体の動きを予測して像ブレ補正が行われる。しかし、露光中に移動被写体の速度や進行方向が変化することへの対応が必要となる。例えば不規則に動く移動被写体に対して、適正に像ブレ補正が行われない場合、像ブレの大きい画像が取得される可能性がある。特許文献1には、露光前の被写体情報から露光中の被写体の動きを予測し、被写体の動きが安定してから撮影を行う方法が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来技術では、不規則に動く被写体のように動きを予測することが難しい移動被写体の撮影において移動被写体の動きが安定するまでに時間がかかった場合、いつまで経っても撮影を行えない場合や撮影の機会を失う可能性がある。
本発明は、被写体の追従制御を行い、像ブレが抑制された画像を取得可能とする撮像装置の提供を目的とする。
【課題を解決するための手段】
【0005】
本発明の実施形態の撮像装置は、被写体を撮像する撮像手段と、被写体情報を検出する第1の検出手段と、撮像装置の揺れ量を検出する第2の検出手段と、前記撮像手段の撮像方向を変更する駆動手段と、前記被写体情報および前記揺れ量の検出情報を用いて、前記駆動手段により前記被写体に対して前記撮像方向を追従させる追従制御および像ブレ補正の制御と、前記撮像手段の露出条件を変更する制御を行う制御手段と、を備える。前記制御手段は、前記駆動手段の制御量および駆動情報と前記追従制御の追従度および敏感度を算出し、前記追従度から取得されるブレ情報、前記駆動情報、前記揺れ量の少なくともいずれかにより決定される、前記撮像手段の露光期間での前記敏感度と前記露出条件との少なくともいずれかに変更する制御を行う。
【発明の効果】
【0006】
本発明によれば、被写体の追従制御を行い、像ブレが抑制された画像を取得可能とする撮像装置を提供することができる。
【図面の簡単な説明】
【0007】
【
図3】回転ユニットと鏡筒回転駆動部の構成図である。
【
図5】振動子の駆動周波数と回転部の駆動速度との関係(FV特性)を示す図である。
【
図6】撮像装置の動作制御を説明するフローチャートである。
【
図7】絶対角度算出および像ブレ補正量算出部の機能ブロック図である。
【
図9】撮像装置の空間座標における角度領域ごとの領域分割の説明図である。
【
図10】初期化時の撮影画像内の領域分割を説明するための図である。
【
図11】パンニング動作時の撮影画像内の領域分割を説明するための図である。
【
図12】撮影画像内の領域ごとの人物検出を説明するための図である。
【
図13】撮影画像内の領域ごとの物体検出を説明するための図である。
【
図14】撮影画像内の領域ごとのシーン検出を説明するための図である。
【
図15】音声情報に基づく演算を説明するためのフローチャートである。
【
図16】撮影画像内の動き検出を説明するための図である。
【
図17】領域ごとの撮影枚数の管理に関する説明図である。
【
図18】個人認証された登録被写体ごとの撮影枚数の管理に関する説明図である。
【
図19】物体認識された登録被写体ごとの撮影枚数の管理を関する説明図である。
【
図20】シーンごとの撮影枚数の管理に関する説明図である。
【
図21】探索経過時間に基づく演算を説明するフローチャートである。
【
図22】シーンごとの探索目標角度演算を説明するための図である。
【
図23】撮像装置の自動追従制御を説明するフローチャートである。
【
図24】自動追従時の目標位置演算を説明するための図である。
【
図26】追従の敏感度と露出条件の算出に関する説明図である。
【
図27】露光期間ブレ量の算出に関する説明図である。
【発明を実施するための形態】
【0008】
以下に、本発明の好ましい実施形態を、添付図面に基づいて詳細に説明する。実施形態では、パンニング機構およびチルティング機構を有する撮像装置(以下、「カメラ」ともいう)の例を示す。撮像装置は、被写体の探索機能および追従機能と、揺れ等を起因とする像ブレ(以下、単に「ブレ」ともいう)の補正機能を有する。なお、簡略化のためにパンニングを「パン」と表記し、チルティングを「チルト」と表記することがある。
【0009】
図1(A)は、実施形態に係る撮像装置を模式的に示す図である。カメラ101は、電源スイッチやカメラ操作用部材と、鏡筒102および固定部103を備える。鏡筒102は撮像光学系を構成するレンズ群や絞り、撮像素子等を含む。カメラ101は、鏡筒102を固定部103に対して回転駆動可能な機構部を有する。
図1(B)は、固定部103に設定される3次元直交座標系における軸定義の説明図である。X軸を回転中心軸とするピッチ方向と、Y軸を回転中心軸とするヨー方向と、Z軸を回転中心軸とするロール方向を示す。
【0010】
カメラ101は、パンニング機構を構成する第1のユニット(パン回転ユニット)およびチルティング機構を構成する第2のユニット(チルト回転ユニット)を備える。パン回転ユニット105は、鏡筒102を、
図1(B)に示すヨー方向に回転可能なモータ駆動機構部を有する。チルト回転ユニット104は、鏡筒102を、
図1(B)に示すピッチ方向に回転可能なモータ駆動機構部を有する。角速度計106と加速度計107はともに固定部103に実装される。角速度計106はカメラ101の振れの角速度を検出し、加速度計107はカメラ101の振れの加速度を検出する。
【0011】
図2を参照して、自動被写体探索機能を有する撮像装置の構成について説明する。
図2はカメラ101の構成例を示すブロック図である。鏡筒102はズームユニット201、フォーカスユニット203、撮像部205を備える。ズームユニット201は、変倍を行うズームレンズを有する。フォーカスユニット203は焦点調節用レンズを有する。撮像部205は撮像素子を有する。
【0012】
ズーム駆動制御部202は、ズームユニット201の駆動制御、および現在のズームレンズの位置検出を行う。フォーカス駆動制御部204は、フォーカスユニット203の駆動制御、および現在のフォーカスレンズの位置検出を行う。ズーム駆動制御部202、フォーカス駆動制御部204は、後述の制御部212からの制御指令にしたがってそれぞれ駆動制御を行う。
【0013】
撮像部205は、撮像素子が撮像光学系を通して入射する被写体からの光を受光し、その光量に応じた電荷の情報をアナログ画像データとして画像処理部206に出力する。画像処理部206は撮像部205からのアナログ画像データに対してA/D変換を行い、デジタル画像データを生成する。画像処理部206は、歪曲補正やホワイトバランス調整、色補間処理等の画像処理を適用した後のデジタル画像データを出力する。画像記録部207は、画像処理部206から出力されるデジタル画像データに対し、JPEG(Joint Photographic Experts Group)形式等の記録用フォーマットに変換する。画像記録部207は、変換後のデータを不揮発性メモリ等の記録媒体に記録する。
【0014】
鏡筒回転駆動部112は、チルト回転ユニット104、パン回転ユニット105を駆動する。つまり、鏡筒102をチルティング方向とパンニング方向に駆動させることができる。装置揺れ検出部208は角速度計106と加速度計107を備える。角速度計106は、撮像装置の3軸回り方向の角速度を検出するジャイロセンサである。加速度計107は、撮像装置の3軸方向の加速度を検出する加速度センサである。装置揺れ検出部208は角速度と加速度の各検出信号を後述の制御部212に出力する。当該検出信号に基づいて、撮像装置の回転角度やシフト量等の演算を行うことができる。
【0015】
装置移動検出部209は、GPS(Global Positioning System)の位置情報や加速度センサ等の移動検出手段を用いて撮像装置の移動を検出する。例えばGPS部はカメラ101に設けられており、カメラ101は外部GPS検出装置が検出した位置情報を通信によって取得する。なお、装置揺れ検出部208は、加速度計107により撮像装置のシフト量(移動量)を検出可能であるが、加速度計107の特性上大きな移動量を検出することは難しい。そのため、移動量が比較的小さい範囲での移動を装置揺れ検出部208が検出し、移動量が比較的大きな移動については装置移動検出部209が検出する。装置移動検出部209は検出信号を後述の制御部212に出力する。
【0016】
音声入力部210は、撮像装置が備えるマイクロフォンから音声信号を取得して、後述の制御部212に出力する。操作部211はユーザの操作部材である電源ボタンやカメラの設定変更用ボタン等を備える。電源ボタンが操作されると、撮像システム全体にて用途に応じて電源が供給され、カメラ101が起動される。操作部211はユーザの操作指示を受け付け、操作信号を後述の制御部212に出力する。
【0017】
制御部212は、撮像システム全体を制御する。制御部212は、例えばCPU(中央演算処理装置)を備え、制御プログラムを実行することにより各種処理を行う。電子シャッタ制御部213は、制御部212からの制御指令にしたがい、露出条件に基づいて、撮像部205に対する電子シャッタの制御およびISO感度値の設定等を行う。
【0018】
図3は、パン回転ユニット105と鏡筒回転駆動部112の構成例を示すブロック図である。パン回転ユニット105とは駆動軸が相違するチルト回転ユニット104についても同様の構成を有するので、以下ではパン回転ユニット105のみ説明する。パン回転ユニット105は、回転部1051、振動子1052、温度センサ1053、駆動回路1054、位置センサ1055を備える。
【0019】
回転部1051は、鏡筒102をパンニング方向に回転させるパン回転部(チルティング方向の場合にはチルト回転部)である。振動子1052は回転部1051をパンニング方向に回転させるためのアクチュエータである。
図4を参照して説明する。
【0020】
図4は振動子1052の模式的な断面図である。
図4にてx軸は回転部1051の移動方向(送り方向)を表し、y軸は当該移動方向と直交する方向(突き上げ方向)を表す。電極401aおよび401bと、圧電素子402aおよび402bと、ステータ403を図示する。回転部1051を駆動する際、電極401aおよび401bには駆動回路1054から供給される位相の異なる2相の周期電圧波形がそれぞれ印加される。電極401aおよび401bに当該周期電圧波形が印加されると、圧電素子402aおよび402bは逆圧電効果により伸縮し、ステータ403には2種類の定在波が発生する。2種類の定在波の合成により、ステータ403と回転部1051との接触部分には略楕円状の運動が発生する。軌跡404は電極401a,401bに所定の位相差をもつ2相の正弦波状の電圧波形を印加した際にステータ403の点Pに発生する楕円振動の軌跡を示す。軌跡405は軌跡404における電圧波形に対して2相の周期電圧波形の位相差を大きくした際に発生する楕円振動の軌跡を示す。軌跡405に示す楕円振動は、軌跡404に示す楕円振動に比べて、x軸方向の成分が大きくなる。このように2相の周期電圧波形の位相差を変更して、送り方向の成分と突き上げ方向の成分との比率を変えることで回転部の駆動速度を変更することができる。
【0021】
図4に示す軌跡406は、軌跡405に対して2相の周期電圧波形の周波数(駆動周波数)を低くした(振動子の共振周波数に近づけた)際に発生する楕円振動の軌跡を示す。軌跡406に示す楕円振動は、軌跡405に示す楕円振動に比べて、送り方向の成分および突き上げ方向の成分がいずれも大きくなる。周波数の変更によっても回転部の駆動速度を変更することができる。
【0022】
その他の方法として、周期電圧波形の電圧振幅を変更することで楕円振動の大きさを変更する方法がある。回転部の駆動速度を制御する際には、位相差もしくは周波数、または両方を変更することで駆動速度が所定の値となるように制御を行うことが可能である。
【0023】
本実施形態では、振動波モータとしての超音波モータを使用し、共振周波数よりも高い超音波領域の振動周波数を用いて制御が行われる。速度制御を行う場合、位相差を固定して振動周波数を変更する第1の方法と、振動周波数を固定して位相差を変更する第2の方法と、振動周波数と位相差の双方を変更する第3の方法がある。第1の方法を適用した制御モードは周波数制御モードであり、第2の方法を適用した制御モードは位相差制御モードである。周波数制御モードでは出力が大きいので、回転部の高速な駆動と、低温環境下や可動部の耐久性の低下等による振動子への負荷が増大した場合等の駆動に適している。一方、位相差制御モードでは、低出力であるが高精度な位置決めが可能であり、高い停止位置精度が必要な場合の駆動や微少駆動等に適している。
【0024】
温度センサ1053は振動子1052の温度を検出する。温度検出結果に基づき、振動子1052に印加する電圧波形の周波数の温度補正を行うことが可能である。位置センサ1055は回転部1051の回転位置を検出する。位置センサ1055は、例えば光学式スケール部と発光部と受光部を有する。回転部1051に取り付けられた光学式スケール部に対して、発光部は光学式スケール部に刻まれたパターンへの光照射を行う。受光部は光学式スケール部からの反射光を検出して電気信号(検出信号)を出力する。
【0025】
鏡筒回転駆動部112はアナログ-デジタルコンバータ(以下、ADCと記す)1121を有する。ADC1121は、位置センサ1055の検出信号に対してアナログ-デジタル変換を行う。位置演算部1122は、ADC1121がデジタル化したセンサ情報を取得して回転部1051の回転位置を求める演算を行う。目標位置設定部1123は、操作部211からの回転指示に基づいてパンニング動作制御の目標位置(回転位置)を設定する。
【0026】
PID演算部1124は、位置演算部1122および目標位置設定部1123の出力に基づいてPID(比例・積分・微分)演算を行う。PID演算部1124は、目標位置設定部1123により設定された回転部1051の目標位置と、位置演算部1122が求めた回転部1051の位置との偏差に基づいてPID演算を行う。PID演算結果である制御量は後述の変換部1127に出力される。追従敏感度設定部1126は、撮像装置が探索した被写体に対して自動追従を行う際、追従の敏感度を設定する。設定情報は後述の変換部1127に出力される。追従の敏感度については後述する。
【0027】
変換部1127は、PID演算部1124が算出した制御量を、電圧波形の位相差、振幅、周波数に変換する。また自動追従の際に変換部1127は、PID演算部1124が算出した制御量と追従敏感度設定部1126が設定した敏感度に基づいて、新たな制御量を算出し、当該制御量を電圧波形の位相差、振幅、周波数に変換する。つまり当該制御量に応じて、2相の駆動電圧波形の位相差、振幅、周波数が決定される。制限部1125は変換部1127に対し、2相の駆動電圧波形の位相差、振幅、周波数の変化量を制限する。
【0028】
駆動信号発生回路1128は、変換部1127の出力に応じて、振動子1052に印加する駆動信号を発生させて、パン回転ユニット105の駆動回路1054に出力する。駆動回路1054は駆動信号発生回路1128で生成される電圧波形に対して、振動子1052を駆動可能な所定の電圧波形への信号変換および増幅を行う。駆動回路1054の出力にしたがって振動子1052が駆動される。
【0029】
図5を参照して、振動子1052の駆動周波数(F)と回転部1051の駆動速度(V)との関係を示すFV特性について説明する。
図5は、横軸が振動子1052の駆動周波数を表し、縦軸が回転部1051の駆動速度を表す。曲線501,502,503は、FV特性の温度変化を示している。曲線501は基準温度(tsdと記す)でのFV曲線である。曲線502は基準温度tsdから温度がΔα変化したときのFV曲線である。曲線503は基準温度tsdから温度がΔβ変化したときのFV曲線である。領域504は、振動子1052に印加する電圧波形の周波数に関する使用禁止周波数領域(以下、禁止領域という)である。曲線501,502にて、いずれも2相の駆動電圧波形の位相差は90°である。Vsdは振動子1052の温度補正を行う際の基準速度である。
【0030】
位相差制御時の駆動周波数(Fpと記す)は温度によって異なり、式(1)で表される。
Fp=Fini-k×(tx-tsd)・・・(1)
式(1)中、txは温度センサ1053による検出温度を表す。Finiは温度が基準温度tsdのときの起動周波数を表す。kは起動周波数の温度補正係数を表す。tx=tsdのときのFp(=Fini)は、基準温度tsdにて位相差が90°である2相の駆動電圧波形を振動子1052に印加した場合に駆動速度がVsdとなる周波数である。また、Fαは温度が基準温度tsdからΔα変化したときの駆動周波数であり、Fβは温度が基準温度tsdからΔβ変化したときの駆動周波数である。
【0031】
禁止領域504は、振動子に起因する機械的振動や駆動回路から発生する電気的ノイズの影響によりカメラの映像や動作に好ましくない影響を及ぼす可能性がある周波数領域である。例えば、温度が基準温度tsdからΔα変化した場合、駆動周波数Fαは禁止領域内となる。また、温度補正によって駆動周波数が禁止領域内となる場合には、禁止領域外にてFαに最も近い周波数であるFβが駆動周波数として設定される。ただし、温度が基準温度tsdからΔβ変化したときの駆動周波数Fβの場合、2相の駆動電圧波形の位相差が90°のときの速度は、基準速度Vsdよりも大きい速度Vabとなる。この状態で回転部1051の位置制御を行った際、回転部の駆動電圧波形の位相差の変化に対する回転部の変化量が想定以上に大きくなった場合、適切に制御できない可能性や制御不能(発振)状態となる可能性がある。
【0032】
例えば、曲線502に示すように温度補正された駆動周波数が禁止領域内となった場合を想定する。この場合、制御部212は、2相の駆動電圧波形の電圧振幅を変更することで位相差が90°であるときの駆動速度がVsdとなるように調整する制御を行う。振動子の温度が基準温度tsdであるときの駆動電圧波形の電圧振幅をAsdと表記する。曲線503における駆動電圧波形の電圧振幅をAβと表記すると、Aβは式(2)となる。
Aβ=(Vsd÷Vab)×Asd・・・(2)
【0033】
このように温度補正によって駆動周波数が禁止領域内の周波数になった場合には、回転部1051の制御性能を駆動周波数前の性能と合わせるために駆動周波数および電圧を同時に変更する必要がある。駆動電圧波形の電圧と位相差を同時に、かつ不連続に変化させた場合には、FV特性の切り替わりを起因とする不要振動が振動子1052に発生し、回転部に回転ムラや異音が発生する可能性がある。例えば、映像記録中に回転ムラが発生した場合、回転ムラの影響で回転方向に像ブレを有する映像データが取得される可能性がある。駆動周波数の温度補正を行わないのであれば、このような問題は発生しないが、回転部1051の位置制御を行うときに回転部の駆動電圧波形の位相差の変化に対する回転部の変化量が不適切となる。その結果、回転部1051の回転位置変化による負荷変動を抑制できずに回転ムラが発生した場合、像ブレを有する映像のデータが取得される可能性がある。
【0034】
図6は、本実施形態における撮像装置の動作例を説明するフローチャートである。以下の処理はカメラ101の主電源のオンで開始され、制御部212のCPUが制御プログラムにしたがって自動被写体探索、自動追従、自動撮影の処理を実行する。
【0035】
操作部211にて電源ボタンが操作されて主電源がオンになると、S601の処理に進む。S601にて制御部212は、各種初期設定(撮像/自動探索等)を行う。自動探索の初期化では、後に説明する被写体重要度レベルの初期化等の処理が行われる。初期設定が終了して、撮像素子からの画像情報が取得可能になると、S602の処理に進む。
【0036】
S602では動画撮影が開始される。画像処理部206は、撮像部205により取得された撮像信号の画像処理を行い、所定の画像データを生成する。所定の画像データとは被写体検出用の画像データであり、画像に基づいて人物や物体等の被写体検出が行われる。例えば人物の検出において、被写体人物の顔検出処理や人体検出処理が行われる。顔検出処理では、人物の顔を判断するためのパターンが予め定められており、撮像された画像内に含まれる該パターンに一致する箇所を人物の顔画像として検出することができる。また、被写体の顔としての確からしさを示す顔信頼度が同時に算出される。顔信頼度は、例えば画像内における顔領域の大きさや、顔領域と顔パターンとの一致度等から算出することができる。物体認識についても同様に行うことが可能であり、予め登録されたパターンに一致する物体を認識することができる。
【0037】
また、撮像された画像内の色相や彩度等のヒストグラムを使用して特徴被写体を抽出する方法がある。撮影画角内に捉えられている被写体の画像に関し、その色相や彩度等のヒストグラムから導出される分布を複数の区間に分け、区間ごとに撮像された画像を分類する処理が実行される。例えば、撮像された画像について複数の色成分のヒストグラムが作成される。ヒストグラムデータを山型の分布範囲で区分けし、同一の区間の組み合わせに属する領域にて撮像された画像を分類することにより、被写体の画像領域が認識される。認識された被写体の画像領域ごとに評価値を算出することで、当該評価値が最も高い被写体の画像領域を主被写体領域として判定することができる。以上の方法によって、画像情報から各被写体情報を得ることができる。
【0038】
S603で被写体検出情報等の撮像情報が取り込まれた後、S604の処理に進む。S604で装置揺れ検出部208は、角速度計106により角速度情報を取得する。次のS605で装置揺れ検出部208は、加速度計107により加速度情報を取得する。次のS606で制御部212は、取得された角速度情報と加速度情報からカメラ絶対角度の算出処理を行い、S607の処理に進む。S607で制御部212は、画像の像ブレを抑制するための像ブレ補正量の算出処理を行う。例えば手持ち状態のカメラや、人体に装着された状態のウェアラブル装置において生じる手振れや人体の揺れ等を起因とする画像ブレを抑えるための像ブレ補正量が算出される。S606およびS607の処理については、
図7および
図8を用いて後述する。S607の次にS608の処理に進む。
【0039】
S608ではカメラの移動検出処理が行われる。装置移動検出部209は、GPS位置情報や加速度情報を用いて、カメラ101の移動の有無や移動量を検出する。例えばGPS位置情報を取得できる外部デバイスと、カメラ101とが相互に通信可能な構成にて、GPS位置情報の変化があった場合に外部デバイスはカメラ101へ移動情報を通知する。カメラ101は取得した移動情報に基づいて自機の移動検出を行うことができる。S608の次にS609の処理に進む。
【0040】
S609で制御部212はカメラ状態判定を行う。角速度情報、加速度情報、GPS位置情報等に基づくカメラの角度や移動量等により、現時点のカメラがどのような振動状態または動き状態であるかを判定することが可能である。例えば、車両とともに移動するカメラで撮影を行う場合を想定する。この場合、車両の移動にしたがって周囲環境(風景等)の被写体情報が変化する。制御部212はカメラが車両とともに移動している「乗り物検出状態」であるか否かを判定する。判定結果は、後に説明する自動被写体探索に使用することができる。また制御部212はカメラの角度変化量を閾値と比較し、角度変化量が閾値以下である場合、カメラは揺れがほとんどない「置き撮り状態」であると判定する。「置き撮り状態」と判定された場合、カメラ自体の角度変化はほとんどないので、置き撮り用の被写体探索を行うことができる。また、カメラの角度変化量が閾値より大きい場合、制御部212はカメラが「手持ち状態」であると判定する。この場合、手持ち撮影用の被写体探索を行うことができる。なお、各状態での被写体探索方法については後述する。S609の次にS610の処理に進む。
【0041】
S610で制御部212は、S606で取得されるカメラ絶対角度が正確に算出されているか否かを判定する。カメラ絶対角度の検出が難しい状態であるか、または検出可能でない場合(検出不可)、S611の処理に進む。カメラ絶対角度が検出可能でない状態とは、例えば、カメラへの衝撃が非常に大きく、加速度計107の出力に基づくカメラ角度算出に支障をきたす状態である。あるいは、カメラの角速度が非常に大きいために角速度計106の検出可能範囲を超過してしまう状態である。S610にてカメラ絶対角度が検出可能な状態であると判定された場合、S612の処理に進む。
【0042】
S611では、自動被写体探索の初期化処理が行われ、後に説明する被写体重要度レベルの初期化等の処理が行われる。次にS612に進み、制御部212は領域分割処理を実行する。S601での初期設定時や、S611での自動被写体探索の初期化時におけるカメラ101の絶対角度を基準とした領域分割処理が行われる。現時点でカメラ101が取得している画像は領域分割により、分割領域に対応する複数のブロックに区分けされる。領域分割処理については、
図9を用いて後述する。S612の次にS613の処理に進む。
【0043】
S613で制御部212は、被写体重要度レベルの算出処理を行う。取得された画像内の被写体情報等に基づいて領域別に被写体重要度レベルが算出される。算出処理の詳細については後述する。次にS614で制御部212は、領域ごとの被写体重要度レベルに基づき、パンニング方向およびチルティング方向における探索の目標角度を算出する処理を実行する。次にS615で制御部212は、S607で算出した像ブレ補正量と、S614で算出した目標角度から、パンニング駆動量とチルティング駆動量を算出する処理を実行する。S614およびS615の処理の詳細については後述する。S615の次にS616の処理に進む。
【0044】
S616で制御部212は、鏡筒回転駆動部112によって、チルト回転ユニット104、パン回転ユニット105をそれぞれ駆動制御する。チルティング駆動量に基づく駆動角度に応じてチルト回転ユニット104が駆動され、パンニング駆動量に基づく駆動角度に応じてパン回転ユニット105が駆動される。次にS617で制御部212は、自動追従処理を実行する。探索された被写体の情報に基づいて自動追従処理が行われた後、S603へ移行する。自動追従処理については後述する。
【0045】
次に、
図6に示すS606のカメラ絶対角度の算出、およびS607の像ブレ補正量の算出について説明する。
図1(A)に示すように、角速度計106および加速度計107はカメラ101の固定部103に実装される。角速度や加速度については固定部103上での位置における情報が出力されるので、その情報に基づいてカメラ絶対角度が算出される。つまり、固定部103上での位置におけるカメラ絶対角度が算出されることになる。また、鏡筒102の回転ブレ(撮像素子のブレ)を補正するために、固定部103上の位置での角速度情報に基づいて補正角度の演算が行われて、像ブレ補正量が算出される。像ブレ補正量に基づき、チルト回転ユニット104とパン回転ユニット105が駆動される。その結果、鏡筒102の回転によって像ブレ補正が行われる。
【0046】
図7は、カメラ絶対角度の算出処理と像ブレ補正量の算出処理を説明する機能ブロック図である。算出処理は制御部212のCPUが実行するプログラムにしたがって行われる。まず、カメラ絶対角度算出方法について説明する。ピッチ絶対角度算出部701、ヨー絶対角度算出部702、ロール絶対角度算出部703にはそれぞれ、角速度計106の出力と加速度計107の出力が入力される。角速度計106はピッチ方向、ヨー方向、ロール方向の各検出信号を出力する。加速度計107はX軸方向、Y軸方向、Z軸方向の各検出信号を出力する。ピッチ絶対角度算出部701、ヨー絶対角度算出部702、ロール絶対角度算出部703はそれぞれ、ピッチ方向、ヨー方向、ロール方向の絶対角度を算出する。これにより、角速度計106と加速度計107の位置での絶対角度、即ち固定部103上での絶対角度を算出することができる。
【0047】
加速度計107の3軸の各出力の関係から、ピッチ方向、ヨー方向、ロール方向のカメラ絶対角度をそれぞれ算出することができる。加速度演算での、ピッチ絶対角度とヨー絶対角度とロール絶対角度がそれぞれ算出される。カメラが静止している状態で外部からの加速度の影響を受けない場合、即ち加速度計107が検出する加速度に関して重力加速度が支配的である場合でしか精度よく絶対角度を算出することができない。カメラが移動している状態で撮影が行われる場合、重力加速度以外の加速度(振動加速度等)の影響が大きいと正確な絶対角度の演算を行うことは困難である。これは、例えば、撮影者がカメラを手持ちで歩行しながら行う撮影や、人体の一部にカメラを固定装着して行う撮影や、自動車や二輪車等の乗り物にカメラを取り付けて行う撮影等が相当する。また、角速度計106のみでカメラ角度を推定する場合を想定する。この場合、角速度出力の積分演算により姿勢角度を推定することは可能であるが、積分による誤差の累積によって正確な絶対角度演算を行うことが困難となる可能性がある。
【0048】
そこで、角速度計106と加速度計107がそれぞれに不得手とするノイズ領域での不要信号成分の除去(または低減)処理を行い、センサフュージョンにより各検出信号を合成して絶対角度演算が行われる。より詳しくは、カルマンフィルタや相補フィルタ等を用いて演算が行われる。角速度計106の積分誤差に最も影響する低周波ノイズを除去したあとの信号と、加速度計107の外乱による演算誤差に最も影響する高周波ノイズを除去したあとの信号とが合成される。センサフュージョンによれば、ノイズを除去(または低減)した正確な絶対角度演算が可能である。
【0049】
ピッチ絶対角度算出部701,ヨー絶対角度算出部702,ロール絶対角度算出部703は各方向における角速度計106からの角速度と加速度演算での絶対角度とのセンサフュージョンによる絶対角度算出を行い、各方向の絶対角度を取得する。また、加速度計107からのカメラ絶対角度の算出が不可能な軸では、角速度計106のみの出力で絶対角度演算が行われる。例えば、
図1(B)のY軸方向が重力方向と一致している場合を想定する。Y軸を回転中心軸とするヨー回転軸に関して、角速度計106のみの出力に基づいて絶対角度が演算される。カメラの角度変化により、絶対角度の算出が可能であると判定された最後の絶対角度の取得時点を起点として、絶対角度の算出が不可能な期間には、角速度の積分による絶対角度演算が行われる。
【0050】
次に
図7および
図8を参照して、像ブレ補正量の算出方法について説明する。カメラ絶対角度の算出方法により取得されるカメラ絶対角度の信号に基づいて、チルト回転ユニット104、パン回転ユニット105を回転駆動すれば、像ブレ補正が可能である。しかし、カメラ絶対角度に基づいて像ブレ補正制御を行う場合、いつまでも同じ姿勢を維持し続ける制御が行われることになる。その結果、撮影者が移動しつつ撮影を行う場合、構図が変更されないこと等の影響や、それぞれの回転ユニットの駆動角度が限界値である可動端を超える場合に像ブレ補正の制御が不可能になる等の問題が生じる。このような問題への対策として、本実施形態では振れの低周波成分に対する像ブレ補正は行わず、振れの高周波成分に対する像ブレ補正制御を行う。つまり、像ブレ補正量の算出処理にて、低周波成分に係る像ブレ補正制御のための算出処理は行われずに、高周波成分に係る像ブレ補正制御のために角速度計106の出力のみを用いて像ブレ補正量が算出される。
【0051】
角速度計106の出力は、高域通過特性を有するハイパスフィルタ(以下、HPFと記す)によりDC(直流)成分をカットされる。HPFの出力は積分されて角度信号(以下、防振角度ともいう)に変換される。角速度計106は、固定部103に実装されている。パン回転ユニット105の回転軸に対する角速度計106のヨー方向の回転軸は一致している。
図7のパン防振角度算出部705は、角速度計106が出力するヨー方向の角速度をHPF処理して積分することで角度に変換する。これにより、パンニング方向(ヨー方向)の防振角度を算出することができる。算出されたパンニング方向の防振角度に基づいてパン回転ユニット105を回転駆動することで、パンニング方向の像ブレ補正が行われる。
【0052】
チルティング方向については、角速度計106が固定部103に実装されているので、パン回転ユニット105の回転角度によって、チルティング方向の像ブレ補正を行うための制御が変化する。
図7のピッチ防振角度算出部706は、角速度計106の出力を取得してピッチ方向の防振角度(ピッチ防振角度)を算出する。またロール防振角度算出部707は、角速度計106の出力を取得してロール方向の防振角度(ロール防振角度)を算出する。
図8を参照して具体的に説明する。
【0053】
図8はカメラ101の撮像方向を説明する図である。
図8(A)は、パンニング方向の回転におけるカメラ101の正位置の状態、つまりX軸が撮像光学系の光軸に対して常に垂直方向に位置する状態を示す。
図8(B)は、パンニング回転角度(θapと記す)が90度となり、紙面と直交するZ軸(不図示)が撮像光学系の光軸に対して常に垂直方向に位置する状態を示す。
【0054】
図8(A)の状態では、ピッチ防振角度算出部706が算出したピッチ防振角度(θpiと記す)をそのままチルティング方向の防振角度(チルト防振角度)として算出することができる。また、
図8(B)の状態では、ロール防振角度算出部707が算出したロール防振角度(θriと記す)をそのままチルト防振角度として算出することができる。
図7のチルト防振角度算出部704が算出する防振角度(チルト防振角度)をθtlと表記する。チルト防振角度θtlは式(3)により算出できる。
θtl=θpi×cos(θap)+θri×sin(θap)・・・(3)
式(3)中、cos()は余弦関数を表し、sin()は正弦関数を表す。θtlはθpi,θri,θapの関数であり、パンニング回転角度に基づいてピッチ防振角度とロール防振角度から算出することができる。
図8(A)ではθap=0の状態であり、θtl=θpiの関係が成り立つ。
図8(B)ではθap=90°の状態であり、θtl=θriの関係が成り立つ。チルト防振角度算出部704は式(3)によりチルト防振角度を算出する。
【0055】
式(3)では、パンニング回転角度に応じて、ピッチ防振角度とロール防振角度に基づく変換によってチルト防振角度が算出される。その他の方法として、角速度計106からピッチ角速度およびロール角速度を取得し、パンニング回転角度に応じてチルト角速度を算出する方法がある。チルト角速度に対するHPF処理と積分処理によって角度変換を行い、チルト防振角度を算出することが可能である。
【0056】
以上の方法によれば、パン防振角度算出部705によりパン防振角度を取得し、チルト防振角度算出部704によりチルト防振角度を取得することができる。それぞれの防振角度に基づく像ブレ補正量に応じて、チルト回転ユニット104、パン回転ユニット105の回転駆動を行うことにより、チルティング方向とパンニング方向の像ブレ補正が可能である。
【0057】
また、算出されたカメラ絶対角度と、チルト回転ユニット104およびパン回転ユニット105の回転位置から鏡筒102の絶対角度を算出することができる。具体的には、ヨー絶対角度算出部702が出力するヨー絶対角度から、パン回転ユニット105の回転角度を減算することで、ヨー方向の光軸基準のカメラ角度(鏡筒102のヨー絶対角度)を算出できる。
【0058】
固定部103の位置に変換した、ピッチ方向の鏡筒回転角度とロール方向の鏡筒回転角度は、パン回転ユニット105の回転位置とチルト回転ユニット104の回転位置から算出できる。ピッチ方向の光軸基準のカメラ角度(鏡筒102のピッチ絶対角度)は、ピッチ絶対角度算出部701が出力するピッチ絶対角度から、ピッチ方向の鏡筒回転角度を減算することで算出できる。ロール方向の光軸基準のカメラ角度(鏡筒102のロール絶対角度)は、ロール絶対角度算出部703が出力するロール絶対角度から、ロール方向の鏡筒回転角度を減算することで算出できる。
【0059】
以上のように、光軸基準のカメラ角度を求めることができる。したがって、例えばカメラ起動時の角度を基準として、現在の鏡筒(カメラ光軸)がどの角度方向を向いているかを判定可能である。カメラ絶対角度と像ブレ補正量が算出された後、
図6のS608からS611の処理が実行され、S612で領域分割処理が行われる。
図9を参照して、領域分割処理について説明する。
【0060】
図9は、撮像装置の空間座標における角度領域ごとの領域分割を説明するための図である。空間座標の原点Oの位置をカメラ位置とする。
図9(A)は原点Oを中心として、全周囲で領域分割を行う例を示す。
図9(A)の例ではチルティング方向とパンニング方向にそれぞれ22.5度で等角の分割が行われる。このような分割では、チルティング方向の角度が0度から離れるにつれて、パンニング方向の円周長が小さくなり、分割領域の面積が小さくなる。
図9(B)は、チルティング方向の角度が45度以上である場合、パンニング方向において22.5度よりも大きい角度を設定して領域分割をした例を示す。
【0061】
図9(C)は、撮影画角内での領域分割の例を示す。軸901は初期化時のカメラ101の方向(撮像光学系の光軸方向)を表し、当該方向の角度を基準として領域分割が行われる。画角範囲902は、撮影画像の範囲に相当する。そのときの画像例を
図9(D)に示す。
図9(D)は画角に対応する画像内での領域分割によって、撮影画像が複数の画像領域903~918に分割された例を示している。
【0062】
図10を参照し、カメラ101の方向が、初期化時の方向(
図9:901参照)であるときの、撮影画角内における領域分割の例を説明する。
図10(A)にてパンニング方向の角度を横軸方向に示し、チルティング方向の角度を縦軸方向に示す。
図10(A)は、自動被写体探索の初期化時におけるカメラ101の絶対角度を基準とした領域を模式的に示している。
図10(B)は、チルティング方向の角度が0度である場合の、撮影画角1001と画角中心1002に対応する撮影画像例を示す。
図10(C)は、チルティング方向の度が55度である場合の、撮影画角1003と画角中心1004に対応する撮影画像例を示す。
【0063】
図10(B)の場合(チルティング方向の角度が0度)、横(水平)方向の角度範囲がそれほど大きく変わらないので、分割領域の面積の差は比較的小さい。一方、
図10(C)の場合(チルティング方向の角度が55度)、横方向の角度範囲が垂直方向(高さ方向)における角度によって大きく変わってしまう。そこで、チルティング方向の角度が45度以上である場合、横(水平)方向の角度範囲が22.5度よりも大きく設定される。これにより、チルティング方向の角度が大きくなるにつれて分割領域の面積が小さくなりすぎることを抑制可能である。
【0064】
図11を参照して、カメラ101を初期位置からパンニング方向に11.25度回転させたときの領域分割の例を説明する。
図11(A)は、チルティング方向の角度が0度である場合の、撮影画角1101と画角中心1102を示す。横(水平)方向にて11.25度を中心として、領域分割の角度範囲が設定される。
図11(B)は、撮影画角1101と画角中心1102に対応する撮影画像例を示す。
【0065】
撮影画角内での領域分割は、式(4)、(5)を用いて行うことができる。カメラ101の初期位置を0度の基準とする。
θay=θy+θy*・・・(4)
θax=θx*×cos(θay)・・・(5)
上式中の諸量の定義を以下に示す。
θx:パンニング方向の角度(初期位置を基準)。
θy:チルティング方向の角度(初期位置を基準)。
θx*:パンニング方向の角度位置(画像水平中心)から分割角度までの角度。
θy*:チルティング方向の角度位置(画像垂直中心)か分割角度までの角度。
θax:画像内での水平中心から水平方向の分割角度までの、水平方向における角度値。
θay:画像内での垂直中心から垂直方向の分割角度までの、垂直方向における角度値。
【0066】
制御部212は画角内に存在する分割領域をすべて求める。撮影画角に対応する画像は、
図10(B)および(C)、
図11(B)に示すように、画像内で複数の領域に分割される。例えば、水平方向での分割角度は基本的に、22.5度に設定されるが、垂直方向における45度~67.5度の範囲については45度に設定される。また垂直方向における67.5度~90度の範囲については水平方向の分割は行われないので、1つの領域として設定される。
【0067】
領域分割(
図6のS612)の後、制御部212は被写体重要度レベルの算出(
図6のS613)を行う。例えば、
図9(D)に示す画像が取得されて、画像内の被写体情報等に基づいて、領域別に被写体重要度レベルが算出される。ただし、撮影画角に対して分割画像の占める割合が閾値より小さい場合、被写体重要度レベルの判定や更新は行われない。具体的には、撮影画角に対応する画像の大きさを100%としたときに、画面に写っている領域(分割領域)の画像の大きさが50%以下である場合、制御部212は被写体重要度レベルの判定や更新を行わない。
【0068】
被写体重要度レベル(以下、単に「重要度レベル」ともいう)は、設定した領域(分割領域)ごとに、さまざまな条件にしたがって設定される。制御部212は下記に示す設定に基づいて重要度レベルをそれぞれ算出する。
(A)人物情報に応じた重要度レベル設定。
(B)物体認識情報に応じた重要度レベル設定。
(C)シーンに応じた重要度レベル設定。
(D)音声情報に応じた重要度レベル設定。
(E)画像の動き情報に応じた重要度レベル設定。
(F)過去の撮影情報に応じた重要度レベル設定。
(G)未探索時間による重要度レベル設定。
(H)カメラ振動状態による重要度レベル設定。
【0069】
まず、(A)について説明する。制御部212は撮影画角での各領域内の位置における人物情報に応じた重要度レベルの設定を行う。その際、公知の顔検出技術を用いることができる。例えば被写体の顔に関する知識(肌色情報、目・鼻・口等のパーツ)を利用する方法がある。またニューラルネットワークに代表される学習アルゴリズムにより、顔検出のための識別器を構成する方法がある。また、検出精度を向上させるために、複数の顔検出方法を組み合わせて顔検出を行うことが一般的である。顔検出結果に基づき、顔の大きさや向き、顔としての確からしさを示す信頼度等が算出される。また、顔の各器官の検出情報から顔の表情を検出する技術がある。目の開き度合を検出したり、笑顔度を検出したりすることができる。具体的には、顔を構成する器官(目、鼻、および口等)の輪郭、並びに目頭、目尻、小鼻、口角および唇の位置等から表情検出に必要な特徴量が取得される。特徴量の取得方法として各顔構成部のテンプレートを用いたテンプレートマッチングによる方法や、顔構成部の多数のサンプル画像を用いた学習アルゴリズムによる方法等がある。取得された特徴量に基づいて、笑顔度や目つむり、ウインクや表情(喜び、驚き、怒り、悲しみ、真顔等)の表情検出情報を取得可能である。
【0070】
また、予め個人別の顔データを登録しておき、検出された顔から特定の個人であるか否かを検出する個人顔認証を行うことができる。制御部212は顔データと予めデータベースに登録されている対象データとが一致するか否か、またはその一致度を判定する。検出被写体の画像データから、その被写体領域と被認証対象として識別するための特徴情報を抽出する処理が行われる。制御部212は、抽出された特徴情報と予めデータベースに登録されている被写体画像の特徴情報とを比較する。比較による類似度を示す認証評価値に基づき、被認証対象がどの登録対象であるか、または該当する登録対象があるかないかの認証を行うことが可能である。例えば、認証評価値に対して閾値が設定され、制御部212は、認証評価値が閾値以上である場合、被認証対象がデータベースに登録されている該当対象であると判定することができる。
具体的には、下記Kr、Ka、Ksが使用される。
・Kr:顔信頼性によってレベル付された値。
・Ka:個人顔認証情報によってレベル付された値。
・Ks:顔の表情によってレベル付けされた値。
【0071】
例えばKrは、顔信頼性が大きくなるにつれて、大きくなる値である。顔の大きさや向き、顔の確からしさ等によって信頼性が判定される。またKaは、予め登録された個人の顔ごとの重要度や、後述する過去の撮影情報に基づいて、顔ごとに設定される。またKsは、予め設定された表情に応じたレベル付けに基づいて、顔ごとに設定される。例えば、笑顔、喜び、驚き等の表情に対してKsは高いレベルに設定され、怒り、悲しみ、真顔、目つむり等の表情に対してKsは低いレベルに設定される。制御部212は、各表情の度合い、例えば笑顔であれば笑顔度合いに応じて、Ksの可変設定を行うことができる。
【0072】
人物の表情に応じたレベルをFlvlと表記する。Kr,Ka,Ksを用いて、Flvlを式(6)から算出することができる。
Flvl=Kr×Ka×Ks・・・(6)
【0073】
図12を参照して、人物情報に応じたレベル設定例を説明する。
図12は、領域分割された複数の領域1201~1208、および3人の人物にそれぞれ対応する被写体領域1209~1211の例を示す。領域1201,1204,1205,1208は画面に写っている範囲が相対的に小さい領域を示している。このような領域は被写体の探索対象として判定されることはない。被写体領域1209に対応する第1の人物は個人顔認証登録がなされていない被写体であり、表情に笑顔がない被写体とする。被写体領域1210に対応する第2の人物は個人顔認証登録がなされていない被写体であり、表情に笑顔がある被写体とする。被写体領域1211に対応する第3の人物は個人顔認証登録がなされている被写体であり、表情に笑顔がある被写体とする。
【0074】
領域1202,1206には第1の人物(被写体領域1209)が写っているので、両方の領域にて第1の人物の人物情報に応じたレベル設定が行われる。第1の人物に関する個人認証の登録情報が参照されて、個人認証登録がなされていないことが判明する。この場合、例えばKaの値は1であり、その表情に笑顔はないのでKsの値は1である。Flvl=Krとなり、顔信頼性によって被写体領域1209の重要度レベルが決定される。
【0075】
領域1203,1207には第2および第3の人物(被写体領域1210と1211)が写っているので、両方の領域にて第2および第3の人物の人物情報に応じたレベル設定が行われる。第2の人物に関する個人認証の登録情報が参照されて、個人顔認証登録がなされていないことが判明する。この場合、例えばKaの値は1であり、その表情に笑顔があるので、Ksは1以上の値に設定される。また第3の人物に関する個人認証の登録情報が参照されて、個人顔認証登録がなされていることが判明する。この場合、例えばKaの値は1以上であり、その表情に笑顔があるので、Ksは1以上の値に設定される。よって、顔信頼性の度合いが被写体領域1209と1210と1211とで同じである場合、各被写体の重量度レベルの大きさは、「被写体領域1211の重要度レベル>被写体領域1210の重要度レベル>被写体領域1209の重要度レベル」の関係となる。
【0076】
また制御部212は、画面に顔が写っている割合によってレベル分けを行う。画像内の顔画像の割合が閾値より大きい領域では、求めた重要度レベルがそのまま設定され、また画像内の顔画像の割合が閾値より小さい領域では、顔画像の割合によって重要度レベルが変更される。例えば
図12において領域1203と領域1207とで人物の顔が写っている割合を「8:2」とする。この場合、領域1203と領域1207の重要度レベルの比は「10:2.5」に設定される。
以上のように、(A)では人物の顔情報に基づいて、領域ごとに重要度レベルを設定することができる。
【0077】
次に(B)について説明する。制御部212は、物体認識情報に基づいて重要度レベルの設定を行う。例えば、犬や猫等の一般的な物体カテゴリー認識や、検出された被写体の画像と事前に登録された被写体の画像との一致度に基づく被写体認識の結果に応じて重要度レベルが設定される。物体認識については、ニューラルネットワークに代表される学習アルゴリズムにより、犬や猫等の識別器を構成する方法等がある。
【0078】
図13を参照して、予め登録されている物体認識情報に応じた重要度レベルの設定について説明する。
図13は、領域分割された領域1301~1308と、3つの被写体領域1309,1311,1313の例を示す。被写体領域1309は物体認識により犬と判定される領域であり、被写体領域1313は物体認識により猫と判定される領域である。被写体領域1311は人物と判定される領域である。人物については上記(A)で判定されるので、物体認識情報に応じた重要度レベルの設定対象からは除外される。また被写体が、犬であると認識される場合と、猫であると認識される場合の、それぞれの重要度レベルは予め登録されているものとする。例えば、犬が重要被写体とされ、猫が重要被写体でないと設定されている場合を想定する。この場合、犬が検出される領域1307の重要度レベルの方が、猫が検出される領域1306の重要度レベルよりも高く設定される。また、制御部212は物体認識の信頼度を算出し、信頼度に応じて重要度レベルを変更することができる。(B)でも、画面に被写体が写っている割合によってレベル分けを行うことができる。画像内の被写体画像の割合が最も大きい領域では、求めた重要度レベルがそのまま設定され、また画像内の被写体画像の割合が小さい領域では、その割合に応じて重要度レベルが変更される。
【0079】
続いて(C)について説明する。制御部212は、画像データの解析を行い、シーンに基づいて重要度レベルの設定を行う。例えば、画像データを解析することで、、「自然の緑シーン」、「青空シーン」、「夕景シーン」等の判定処理が実行される。「自然の緑シーン」は、例えば自然界での樹林地域のシーンのように、緑色域の割合が大きいシーンである。空にかかわるシーンの判定については、カメラの絶対角度情報を使用可能である。絶対角度情報からカメラの傾き情報が分かるので、重力方向に垂直な方向よりも上方向の範囲を撮影するカメラ姿勢であるか否かを判定できる。上方向の範囲を撮影するカメラ姿勢であると判定された場合に「青空シーン」や「夕景シーン」等の判定が行われる。
【0080】
制御部212は、撮像された画像の、1フレームの12ビットRAWデータを、n×m個(n,mは自然数を表す変数である)の領域にブロック分割する処理を行う。制御部212は、ブロック分割された各領域内のR(赤),G(緑),B(青)の各色の画素の平均値を算出する。画像処理部206は各領域のR,G,Bの平均値に対して、ホワイトバランス補正処理、ガンマ補正処理、色変換マトリックス処理による仮現像処理を行う。
【0081】
「青空シーン」の判定処理では、画面内の上方向の領域にて青色域のブロック(以下、青空ブロックという)の占める割合が算出される。青空ブロックかどうかの判定処理において、UV色空間上で青空判定領域が定義されており、その領域内にある青空ブロックの数をカウントし、閾値と比較する処理が実行される。また、「夕景シーン」の判定処理では、画面内の上方向の領域にて赤色域のブロック(以下、夕景ブロックという)の占める割合が算出される。夕景ブロックかどうかの判定処理において、UV色空間上で夕景判定領域が定義されており、その領域内にある夕景ブロックの数をカウントし、閾値と比較する処理が実行される。また、「自然の緑シーン」の判定処理では、画面内の全ブロックに占める緑色域のブロックの割合が算出される。緑色域のブロックかどうかの判定処理において、UV色空間上で緑判定領域が定義されており、その領域内にある緑色域のブロックの数をカウントし、閾値と比較する処理が実行される。いずれの判定処理でも計数値が閾値以上である場合に該当するシーンであると判定することが可能である。
【0082】
図14を参照して、(C)における具体例を説明する。
図14は領域分割された領域1401~1408の例を示す。画面にて右上の範囲に青空が写っており、左側の範囲に建物が写っており、右下の範囲に自然物(緑色物体)が写っているシーンを想定する。シーン判定より、「青空シーン」と「自然の緑シーン」が検出される。制御部212は領域1403に対し、青空領域認識に応じた重要度レベルを設定し、領域1407に対し、緑領域認識に応じた重要度レベルを設定する。例えば領域1402は、当該領域に対する青空領域の割合が40%であるとする。領域1402には青空領域認識に応じた重要度レベルとして40%が設定される。領域1406は、当該領域に対する緑領域割合が30%であるとする。領域1406には緑領域認識に応じた重要度レベルとして30%が設定される。
【0083】
色空間情報によるシーン判定方法を説明したが、輝度値に基づくシーン判定方法がある。「夜景シーン」の判定例を説明する。画面全体での輝度分布ヒストグラムに基づき、輝度が閾値以上に高いレベルと輝度が閾値未満の低いレベルのみで構成される輝度分布をもつシーンを、「夜景シーン」と判定することができる。また、画像の輝度信号の高周波成分に基づいて算出されるコントラスト評価値を用いる方法がある。コントラスト評価値により点光源(灯体や天体等)を判定し、輝度分布と点光源の判定結果を用いて「夜景シーン」であるかどうかを判定することができる。
【0084】
シーン判定結果(「青空シーン」、「夕景シーン」、「自然の緑シーン」、「夜景シーン」等)に対応する重要度レベルのデータは記憶部(不図示)に予め登録されている。制御部212は、シーン判定結果に対応する重要度レベルに基づいて、画像内の領域ごとに重要度レベルを設定することができる。
【0085】
続いて(D)について説明する。制御部212は音声情報を解析して判定を行い、判定結果に基づいて重要度レベルの設定を行う。例えば制御部212は音声入力部210からの音声信号に基づいて音声方向、音レベル、音声認識等の判定を行う。
図15を参照して、取得された音声情報に応じた重要度レベルの設定について説明する。
【0086】
図15は、(D)における処理例を示すフローチャートである。以下の処理は制御部212のCPUが実行する制御プログラムにしたがって行われる。S1501で制御部212は、音声入力部210により、外部の発声による音声信号を取得したか否かを判定する。音声信号が取得された場合、S1502の処理に進み、音声信号が取得されなかった場合にはS1501の処理が繰り返し実行される。
【0087】
制御部212は、音声方向の検知機能、音レベルの検出機能、音声認識機能を有する。各機能は制御プログラムの実行により実現される。S1502で制御部212は、音声方向の検知機能により、音声信号の発生方向を検知する。次のS1503で制御部212は、音レベルの検出機能により、音声信号の音レベルを検出する。次のS1504で制御部212は、音声認識機能により、音声信号に基づいて音声を認識する。次にS1505の処理に進む。
【0088】
S1505で制御部212は、音声認識用の所定の音声コマンド(音声認識コマンド)であるか否かを判定する。音声認識コマンドであると判定された場合、S1506の処理に進み、音声認識コマンドでないと判定された場合、S1507の処理に進む。S1506で制御部212は、音声認識コマンドのレベル(Scと記す)をAc1に設定する。またS1507で制御部212はScをゼロに設定する。S1506またはS1507の次にS1508の処理に進む。
【0089】
S1508で制御部212は、S1503で検出された音レベルが所定値(閾値)以上であるか否かを判定する。検出された音レベルが閾値以上であると判定された場合、S1509の処理に進み、音レベルが閾値未満であると判定された場合、S1510の処理に進む。S1509で制御部212は、音声レベル(Ssと記す)をAc2に設定する。S1510で制御部212はSsをゼロに設定する。S1509またはS1510の次に、S1511の処理に進む。
【0090】
S1511で制御部212は、S1502で検知された音声方向(音声信号の発生方向)に基づき、音声方向領域を算出する。音声方向領域は音声方向に対応する領域である。例えば制御部212は音声方向の認識誤差を考慮し、検知された音声方向の角度を基準として、±45度の範囲すべてに対応する領域を音声方向領域とする。次にS1512で制御部212は、音声認識コマンドのレベルScと音声レベルSsとを加算することにより、トータル音レベル(Slと記す)を算出する。次にS1513の処理に進む。
【0091】
S1513で制御部212は、トータル音レベルSlに関する条件判定を行う。S1513での条件は、今回のSlが前回のサンプリング時のSlに対して、大きくなる方へ変化したことである。この条件を満たす場合、S1514の処理に進み、条件を満たさない場合、S1516の処理に進む。
【0092】
S1514で制御部212は、所定時間パラメータ(Taと記す)に、時間カウント値であるXtを設定し、S1515の処理に進む。S1515で制御部212は、S1511で算出した音声方向領域にトータル音レベルSlを設定してからS1501へ移行する。
【0093】
S1516で制御部212は、所定時間パラメータTaのデクリメントを行い、S1517の処理に進む。S1517で制御部212は、所定時間パラメータTaの値がゼロ以下であるか否かを判定する。Ta値がゼロ以下である場合、つまりSlが大きくなる方へ変化した時点からTa値に相当する時間が経過した場合、S1518の処理に進む。またTa値がゼロより大きい場合、S1515の処理に進む。S1515で制御部212は音声方向領域に対し、これまでに演算されたトータル音レベルSlを、音声情報に応じた重要度レベルとして設定する。S1518で制御部212は、トータル音レベルSlをゼロに設定する。S1511での音声方向領域に対し、Sl値(=0)が設定される。そしてS1501へ移行する。
【0094】
続いて、(E)について説明する。制御部212は、領域分割された各領域(
図9参照)において動き被写体(移動体)が存在するか否かを判定し、画像の動き情報に応じた重要度レベルの設定を行う。制御部212は分割領域ごとに、フレーム間の差分検出やフレーム間の動きベクトル検出等を行う。動きベクトルの検出方法としては、画面を複数の領域に分割し、時系列で連続する2つの画像内の領域同士を比較することで、画像の相対的なズレ情報から画像動き量を算出する方法がある。例えば2つの画像は、予め記憶されている1フレーム前の画像と、現在の画像である。カメラ絶対角度と、チルト回転ユニット104およびパン回転ユニット105の回転位置との差分により、鏡筒102の撮像面光軸方向の角度が求めることができる。よって、フレーム間での鏡筒102の角度の差分より、カメラ角度変化の影響による像ブレの動きベクトル値を検出することができる。
【0095】
図16は撮影画像内の動き検出の説明図である。
図16(A)は、領域分割された領域内でさらに分割されることで細分化された複数の領域1601を模式的に示す。制御部212は、分割された領域1601にてフレーム間の移動ピクセルを検出する。制御部212は検出された移動ピクセルからカメラ角度変化の影響による動きベクトル値を減算した後のベクトル信号に基づいて度数分布算出処理を行う。なお、低コントラストの画像等の場合、動きベクトル検出が難しいので、検出不可ブロックのベクトル情報は度数分布算出処理に反映されない。
図16(B)および(C)に度数分布例を示す。横軸は動きベクトル値に対応する移動量(単位:ピクセル)を表し、縦軸は移動量に対応する度数を表す。
【0096】
図16(B)は、ある領域に動き被写体が存在しない場合の、あるフレームでの度数分布例を示す。横軸における閾値範囲1602は移動量が小さく、被写体にほとんど動きがない範囲である。そのため、閾値範囲1602内の動きベクトル情報は使用されない。度数閾値1603は、縦軸の度数に対する閾値である。制御部212は、閾値範囲1602以外の範囲における移動量に対応する度数が度数閾値1603を超えている場合、領域内に動き被写体が存在すると判定する。
図16(B)の例にて、閾値範囲1602以外の範囲では移動量に対応する度数が度数閾値1603を超えていないので、動き被写体は存在しないと判定される。
【0097】
図16(C)は、ある領域内に動き被写体が存在する場合の、あるフレームでの度数分布例を示す。閾値範囲1602以外の範囲にて、移動量に対応する度数が度数閾値1603を超えているので、制御部212は領域内に動き被写体が存在すると判定する。制御部212は、過去における所定数のフレームの期間に動き被写体が連続して存在することを判定した場合、「動き被写体あり」に対応する重要度レベルの設定を行う。
【0098】
続いて、(F)について説明する。制御部212は過去に取得された撮影情報(以下、過去撮影情報という)に基づいて重要度レベルの設定を行う。カメラ101は後述の方法で、パンチルト駆動(以下、PT駆動と記す)を行って被写体の自動探索を行う。カメラ101は自動探索中の画像情報に基づいて自動撮影トリガーを検出することで、自動撮影を開始する。自動撮影トリガーは、例えば、人物の笑顔等の表情が検出されることや、後述するように最終的な被写体重要度レベルに基づいている。また、撮影者がカメラ101に設けられたレリーズSW(スイッチ)等を操作することにより、手動で撮影の開始を指示する場合には、操作指示信号にしたがって撮影動作が開始される。カメラ101が撮影動作を開始すると、制御部212は過去撮影情報をメモリに記憶して管理する。
【0099】
まず、領域分割された領域ごとの過去撮影情報に応じた重要度レベルに設定について説明する。制御部212は、
図9のように領域分割された各領域での撮影枚数の記憶および管理を行う。
図17を参照して、過去撮影情報の管理方法を説明する。
【0100】
図17は、複数の領域(AreaN:N=1,2,・・・)、および複数の時間帯に対応する撮影枚数の例を示す。制御部212は領域ごとに、各時間帯における撮影枚数を管理する。
図17では時間帯として「今~T1時間」、「T1時間~T2時間」、「T2時間~T3時間」、「T3時間~T4時間」の区分のみ示している。制御部212は領域ごとの過去撮影情報に基づいて重要度レベルを領域ごとに設定する。「今~T1時間」は現在から過去のT1時間前までの第1の期間を表す。第1の期間での撮影枚数に対する重み係数の値を、例えば1とする。「T1時間~T2時間」は過去のT1時間前から過去のT2時間前までの第2の期間を表す。第2の期間での撮影枚数に対する重み係数の値を、例えば0.8とする。「T2時間~T3時間」は過去のT2時間前から過去のT3時間前までの第3の期間を表す。第3の期間での撮影枚数に対する重み係数の値を、例えば0.5とする。「T3時間~T4時間」は過去のT3時間前から過去のT4時間前までの第4の期間を表す。第4の期間での撮影枚数に対する重み係数の値を、例えば0.2とする。この場合、制御部212は、それぞれの重み係数と撮影枚数を乗算し、各時間帯での計算結果を加算する。つまり、重み付けされたトータル撮影枚数が領域ごとに算出される。
【0101】
具体的には、Area1については、第1から第4の期間での撮影枚数がそれぞれ0、0、0、2である。第1から第4の期間での重み係数の値はそれぞれ1、0.8、0.5、0.2である。よって、Area1のトータル撮影枚数は、0×1+0×0.8+0×0.5+2×0.2=0.4(枚)である。同様にして、Area3のトータル撮影枚数は、3×1+4×0.8+2×0.5+0×0.2=7.2(枚)である。制御部212は、各領域のトータル撮影枚数にレベル係数を乗算して、領域ごとの過去撮影情報に応じた重要度レベル設定を行う。レベル係数の値はマイナスの値であり、撮影枚数が多くなるにつれて重要度レベルが下がっていくものとする。
【0102】
また、過去撮影情報は上記(A)から(C)等の設定にもフィードバックされ、それぞれの重要度レベルの設定にも影響する。
図18を参照して、具体的に説明する。
図18は、上記(A)にフィードバックするための過去撮影情報の例を示す。
【0103】
図18に示すように制御部212は、個人登録されている被写体(Asan、Bsan,Csan、Dsan・・・)ごとの、過去の撮影枚数を複数の時間帯にわたってそれぞれ記憶および管理している。
図17で説明した方法と同様に、各時間帯での重み係数が設定されており、登録被写体ごとにそれぞれのトータル撮影枚数が算出される。トータル撮影枚数にレベル設定のためのレベル係数を乗算した結果をKaに加算することで、上記(A)において過去撮影情報がフィードバックされる。なお、レベル係数の値はマイナスの値であり、撮影枚数が多くなるにつれてレベルが下がっていくが、Kaの値はゼロ以下にならないように設定される。
【0104】
図19は、上記(B)にフィードバックするための過去撮影情報の例を示す。制御部212は、登録されている被写体(犬、猫・・・)ごとの、過去の撮影枚数を複数の時間帯にわたってそれぞれ記憶および管理している。
図17で説明した方法と同様に、各時間帯での重み係数が設定されており、登録被写体ごとにそれぞれトータル撮影枚数が算出される。トータル撮影枚数にレベル設定のためのレベル係数を乗算した結果を、各被写体に応じた重要度レベルに加算することで、上記(B)において過去撮影情報がフィードバックされる。
【0105】
図20は、上記(C)にフィードバックするための過去撮影情報の例を示す。制御部212はシーンごとの過去の撮影枚数を複数の時間帯にわたってそれぞれ記憶および管理している。
図17で説明した方法と同様に、各時間帯での重み係数が設定されており、シーンごとにそれぞれトータル撮影枚数が算出される。トータル撮影枚数にレベル設定のためのレベル係数を乗算した結果を、各シーンに応じた重要度レベルに加算することで、上記(C)において過去撮影情報がフィードバックされる。
【0106】
上記(B)、(C)におけるレベル係数の値はマイナスの値であり、撮影枚数が多くなるにつれてレベルが下がっていくが、被写体(物体)やシーンに応じた重要度レベルはゼロ以下にならないように設定される。
【0107】
続いて、(G)について説明する。制御部212は、未探索時間による重要度レベル設定を行う。未探索時間は、領域分割された領域内で最後に被写体探索が行われた時点からの経過時間に相当する。
図21を参照して処理の流れを説明する。
【0108】
図21は上記(G)での処理例を示すフローチャートである。以下の処理は制御部212のCPUが実行する制御プログラムにしたがって行われる。S2101で制御部212は現在のカメラ101の位置および姿勢の検出情報であるパン・チルト位置を取得し、S2102の処理に進む。S2102では、前述した方法で算出されたカメラ絶対角度が取得される。次にS2103で制御部212は、S2101で取得したパン・チルト位置とS2102で取得したカメラ絶対角度に基づいて、鏡筒102の絶対角度を算出し、S2104の処理に進む。
【0109】
S2104で制御部212は、ループ演算のための変数(Areaと記す)に1を代入してから、S2105に進む。S2105で制御部212は、鏡筒102の絶対角度を微分処理して絶対角速度を算出する。制御部212は、算出した絶対角速度が所定角速度以内であるか否かを判定する(第1の条件判定)。所定角速度は予め定められた閾値であり、鏡筒102の絶対角速度が被写体検出可能な程度の角速度に相当する。例えば、撮像の遅れ、検出時間の遅れを加味して、画像から被写体検出が行われるまでの遅れ時間が所定値以内となる閾値が設定される。第1の条件に関して、鏡筒102の絶対角速度が所定角速度以内である場合、肯定的判定結果が得られ、鏡筒102の絶対角速度が所定角速度以内でない場合、否定的判定結果が得られる。また、領域分割された領域(
図9参照)ごとにそれぞれ領域番号が定義されている。制御部212は、変数Areaの値が画面に写っている領域の領域番号であるかどうかを判定する(第2の条件判定)。第2の条件に関して、変数Areaの値が画面に写っている領域の領域番号である場合、肯定的判定結果が得られ、変数Areaの値が画面に写っている領域の領域番号でない場合、否定的判定結果が得られる。S2105にて第1および第2の条件を満たす場合(ともに肯定的判定結果の場合)、S2106の処理に進む。第1または第2の条件を満たさない場合(少なくとも一方が否定的判定結果の場合)、S2107の処理に進む。
【0110】
S2106で制御部212は、現在の変数Areaに関する未探索時間に応じた重要度レベル(時間レベル)をゼロに設定する。またS2107で制御部212は、現在の変数Areaに関する時間レベルのインクリメントを行う。S2106またはS2107の次に、S2108の処理に進む。S2108では変数Areaのインクリメントが行われる。その後、S2109に進み、制御部212は変数Areaの値がトータル領域数より大きいか否かを判定する。変数Areaの値がトータル領域数より大きい場合、処理を終了する。変数Areaの値がトータル領域数以下である場合、S2105に移行し、S2105~2109の処理が繰り返し実行される。
【0111】
以上の方法により、制御部212は分割された領域ごとに、未探索時間に応じた重要度レベルを設定する。対象領域について最後に被写体探索が行われた時点からの経過時間(未探索時間)が長くなると、各領域の時間レベルが大きくなる。長時間にわたって被写体探索が行われていない領域は、その重要度レベルが上がるので、PT駆動により当該領域での被写体探索が行われることになる。
【0112】
続いて、(H)について説明する。制御部212はカメラ振動状態に応じて重要度レベルの設定を行う。
図6のS609で算出されたカメラ状態判定によって、カメラ振動状態として、「置き撮り状態」、「乗り物検出状態」、「手持ち状態」等の判定結果が取得される。
【0113】
カメラ振動状態が「置き撮り状態」であると判定された場合、カメラ絶対角度の誤演算の可能性は低く、各領域に係る重要度レベルの演算の信頼性は高い。よって、制御部212は既に演算した領域ごとの重要度レベルをそのまま使用して、以後の被写体探索制御を行う。
【0114】
カメラ振動状態が「乗り物検出状態」であると判定された場合、移動速度の大きい乗り物内の被写体である搭乗者の変化はほとんどないが、風景等の外部の被写体は時々刻々と変化する。よって、制御部212は上記(A)による人物情報に応じた重要度レベルをそのまま使用するが、上記(E)による画像の動き情報に応じた重要度レベルは使用しない。また、上記(B)による物体認識情報に応じた重要度レベルと、上記(C)によるシーンに応じた重要度レベルはすぐに変化する可能性が高い。よって制御部212はこれらの重要度レベルを相対的に下げる。ただし、自動撮影においてはカメラ振動状態の検出後、すぐに撮影動作が開始されるように制御が行われる。また制御部212は、上記(D)による音声情報に応じた重要度レベルと、上記(F)による過去撮影情報に応じた重要度レベルを、そのまま使用する。また、カメラ101の進行方向が検出され、高速移動中の進行方向における加速度が加速度計107により検出される。制御部212は当該進行方向に対応する領域に係る重要度レベルを上げる演算を行う。
【0115】
カメラ振動状態が「手持ち状態」であると判定された場合、撮影者がカメラの方向(撮像方向)の変更操作を行う可能性が高く、手振れ等の振動が大きい状態となる可能性がある。そこで制御部212は、チルティング方向およびパンニング方向の角度がいずれも0度であるカメラ正位置から、±45度の範囲をもつ第1の領域に係る重要度レベルを相対的に大きく設定する。また制御部212は、±45度~±90度の範囲をもつ第2の領域に係る重要度レベルを相対的に小さく設定する。そして制御部212は、±90度よりも離れた範囲をもつ第3の領域では第2の領域よりも重要度レベルがさらに小さくなるように設定する。制御部212は領域ごとに重要度レベルを加算するか、または、領域ごとに算出された重要度レベルに対し、それぞれの角度範囲に応じた重み係数を乗算する。例えば、第1の領域に対する第1の重み係数の値は1であり、第2の領域に対する第2の重み係数の値は1未満である。第3の領域に対する第3の重み係数の値は、第2の重み係数の値よりも更に小さい。
【0116】
以上の方法により、制御部212はカメラ振動状態に応じて重要度レベルの演算を変更し、検出されたカメラ振動状態に適合する被写体探索が行われるように制御する。
制御部212は上記(A)から(H)によって求めた各領域における重要度レベルに基づいて、各重要度レベルの加算(単純加算または加重加算)を行って被写体重要度レベルを算出する。
【0117】
次に、PT駆動による被写体探索の目標角度算出(
図6のS614)について説明する。まず制御部212は、領域分割された、隣接する領域の被写体重要度レベルに基づき、被写体探索用の重要度レベル(探索用最終レベル)を算出する。
図22を参照して、具体的に説明する。
【0118】
図22は、シーンごとの探索目標角度の演算を説明するための図である。
図22(A)において、領域2201は前述の方法によって分割された複数の領域のうちのひとつであり、演算の対象領域である。
図22(B)は領域2201と、当該領域に隣接する周辺領域2202~2209を示す。領域2201における探索用最終レベルは、領域2201およびその周辺領域2202~2209の情報を用いて演算される。例えば、領域2201に対する重み係数の値を1とし、周辺領域2202~2209に対する重み係数の値を1以下(例えば0.5)とする。制御部212は領域ごとの被写体重要度レベルにそれぞれの重み係数を乗算し、すべての領域で求めた計算値を加算することで探索用最終レベルを算出する。演算はすべての領域で行われ、各領域での探索用最終レベルが算出される。
【0119】
次に制御部212は、探索用最終レベルが最も大きい領域を探索目標領域として設定する。探索目標領域が
図22の領域2201である場合を想定する。領域2201および周辺領域2202~2209の探索用最終レベルおよび中心角度から、PT駆動による被写体探索の目標角度(yと記す)が式(7)により算出される。
【数1】
式(7)中のnは領域の個数を表し、
図22では領域2201~2209の個数(9)を表す。iは各領域を識別するために定義された変数であり、
図22では領域2201~2209に1~9がそれぞれ割り当てられる。bは各領域の中心角度を表す。b
iはi番目の領域の中心角度を表している。aは各領域の探索用最終レベルを表す。a
iはi番目の領域の探索用最終レベルを表している。Σは変数iの範囲(1からn)に基づく総和演算の記号である。
【0120】
制御部212は、領域2201~2209の探索用最終レベルに基づいて、加重加算を行い、目標角度yを算出する。目標角度yについては、チルティング方向とパンニング方向とでそれぞれ演算される。この演算は、各領域の探索用最終レベルと、各領域の探索用最終レベルの合計値との比を重み係数に用いて、各領域の中心角度から、角度の重心位置を求める演算に相当する。
【0121】
各領域の探索用最終レベルの合計値が所定の閾値以下である場合、制御部212は探索してもその時点での重要な被写体がないと判定する。この場合、カメラ101のPT駆動は行われない。また制御部212は、上記(F)を除外した条件で算出した被写体重要度レベルに基づいて目標角度yを演算する。目標角度yに基づくPT駆動が行われた後、各領域の探索用最終レベルのいずれかが所定の閾値より大きくなる時点までの間、カメラ101は目標角度yに相当する角度位置に保持される。
【0122】
次に、PT駆動量の算出(
図6のS615)について説明する。制御部212はS607で求めた像ブレ補正量と、S614までに求めた被写体探索の目標角度から、PT駆動量を算出する。像ブレ補正量と被写体探索の目標角度とに基づいた、制御サンプリングでの駆動角度を加算することで、PT駆動量が算出される。PT駆動量に基づいてパンニング駆動角度とチルティング駆動角度がそれぞれ算出される。S616で鏡筒回転駆動部112は、それぞれの駆動角度に応じてチルト回転ユニット104、パン回転ユニット105を駆動する。S617で制御部212は自動追従処理を実行する。
【0123】
図23は、自動追従の動作例を説明するフローチャートである。S2351で制御部212は、画像処理部206、ズーム駆動制御部202およびフォーカス駆動制御部204の検出結果に基づき、被写体情報を取り込む処理を実行する。被写体情報は、被写体の速度と位置、被写体周りの動きベクトル、被写体と撮像装置との距離(被写体距離)、被写体の向き、被写体の進行方向のうち、少なくとも1つ以上により構成される情報である。
【0124】
被写体情報を構成する各要素の算出方法について説明する。画像処理部206は画像処理を行い、被写体検出用の画像を生成する。主被写体の画像領域である主被写体領域が検出される。主被写体領域の重心に基づいて、主被写体の像面上の位置(以下、被写体位置という)が算出される。この被写体位置と、現在から1フレーム前の画像において算出された被写体位置との差分により、1フレーム間の像面上の被写体移動量が算出される。算出された1フレーム間の像面上の被写体移動量と、1フレームにかかる時間とを用いて、主被写体の像面上の速度(以下、被写体速度という)を算出することが可能である。
【0125】
次に、1フレーム前の画像から検出された主被写体領域をテンプレートとし、当該テンプレートと現在の主被写体領域とのテンプレートマッチング処理が実行される。これにより被写体周りの動きベクトルを検出し、この動きベクトルから被写体の進行方向を算出することが可能である。また、予め設定されている被写体の向きのテンプレートを使用して、当該テンプレートと現在の主被写体領域とのテンプレートマッチング処理が実行される。これにより被写体の向きを検出することが可能である。例えば、被写体の横顔のテンプレートを用いて、主被写体が横を向いているか否かを判別可能である。その次に、ズーム駆動制御部202より検出される、現在のズームレンズの位置(焦点距離fに対応する)、および、フォーカス駆動制御部204より検出されるフォーカスレンズの位置が取得される。これらの位置の情報から、焦点が合う被写体と撮像装置との距離を算出することが可能である。
【0126】
S2351で被写体情報が取得されると、S2352の処理に進む。なお、被写体のフェードアウトや、主被写体以外の物体が主被写体の前を横切る等の理由で被写体情報を取得できなかた場合には
図6のS602に戻り、自動被写体探索、自動追従、自動撮影処理が繰り返し実行される。
【0127】
S2352ではPT駆動量の算出処理が行われる。目標位置設定部1123により、S2351で検出された被写体位置に基づいて目標位置が設定される。次に、PID演算部1124が算出した制御量と、追従敏感度設定部1126による追従の敏感度に基づいて、PT駆動量が算出される。制御量と追従の敏感度に基づくPT駆動量の算出の具体例については後述する。S2352の次にS2353の処理に進む。
【0128】
S2353ではPT駆動が行われる。S2352で算出されたPT駆動量に基づいて、チルト回転ユニット104、パン回転ユニット105がそれぞれ駆動される。制御部212は、現在のPT駆動情報を算出する。例えばPT駆動情報は、PT駆動速度、PT駆動位置、PT駆動の可動域のうち、1つ以上により構成される情報である。
【0129】
PT駆動情報を構成する各要素の算出方法について説明する。まず、位置演算部1122は、パン回転ユニット105およびチルト回転ユニット104の回転位置(PT駆動位置)を算出する。現在のPT駆動位置と、1フレーム前に検出されたPT駆動位置とから、パン回転ユニット105およびチルト回転ユニット104の回転量が算出される。この回転量と1フレームにかかる時間とを用いて、PT駆動速度を算出することが可能である。次に、チルト回転ユニット104、パン回転ユニット105それぞれの可動端の位置と現在のPT駆動位置との差分が算出される。この差分はPT駆動の可動域に相当する。PT駆動情報の算出後にS2354の処理に進む。ただし、PT駆動の可動域に基づき、パン回転ユニット105またはチルト回転ユニット104が駆動端に到達したと判定された場合、
図6のS602に戻り、自動被写体探索、自動追従、自動撮影処理が繰り返し実行される。
【0130】
S2354で制御部212は、撮影前の追従度を算出する。電子シャッタ制御部213に設定されている露光時間tにおける追従度fが算出される。追従度fは、被写体に対してどれくらいの精度で追従が行われているかを示す値である。追従度fは、被写体速度とPT駆動速度との速度差から求めることが可能である。つまり、被写体速度とPT駆動速度との速度差が小さくなると、追従度の大きさは大きくなる。反対に、被写体速度とPT駆動速度との速度差が大きくなると、追従度の大きさは小さくなる。また、被写体を基準としているので、被写体速度がPT駆動速度よりも大きい場合、追従度fは正の値であり、被写体速度がPT駆動速度よりも小さい場合、追従度fは負の値である。追従度fxの算出方法については後述する。S2354の次にS2355の処理に進む。
【0131】
S2355で制御部212は、S2354で算出されたパンニング方向およびチルティング方向の追従度と、電子シャッタ制御部213に設定されている露光時間tとから各方向のブレ量を算出する。ブレ量算出方法については後述する。次にS2356で制御部212は撮影を実行するかどうかを判断する。撮影を実行することが判断された場合、S2358の処理に進む。撮影を実行しないことが判断された場合、S2357の処理に進む。S2357で制御部212はブレに応じた露出条件パラメータの変更処理を行う。制御部212は追従敏感度設定部1126により追従の敏感度を変換部1127に設定し、電子シャッタ制御部213に対して露出条件の変更と設定を行う。S2357の次にS2351の処理に移行する。
【0132】
S2358では、露光期間でのPT駆動量を算出する処理が行われる。制御部212は、画像処理部206の検出結果に基づき、被写体位置を取得する。次に、位置演算部1122により、パン回転ユニット105およびチルト回転ユニット104のPT駆動位置が取得される。制御部212は、被写体位置とPT駆動位置を用いて、S2352と同様にPT駆動量を算出する。S2358の次にS2359の処理に進む。
【0133】
S2359で制御部212は、S2358で算出されたPT駆動量に応じて、鏡筒回転駆動部112によって、チルト回転ユニット104、パン回転ユニット105に対するそれぞれの駆動制御を行いつつ、撮影を行う。このときの露光時間には、電子シャッタ制御部213に設定されている露光時間tが用いられる。撮影終了後、S2360の処理に進む。
【0134】
露光期間の終了直後の期間は撮像素子からの信号読み出し期間であるので、被写体情報を取り込むことができない。S2360では、信号読み出しの終了後、S2351と同様に、被写体情報を取り込む処理が行われる。次に、S2354と同様にして、被写体情報とPT駆動情報とを用いて、パンニング方向およびチルティング方向の各追従度が算出される。S2360の次にS2361の処理に進む。
【0135】
S2361で制御部212は、S2354で算出した撮影前の追従度と、S2360で算出した撮影後の追従度を用いて、露光期間ブレ量(ebrxと記す)を算出する。露光期間ブレ量は、撮像された画像のデータを記録媒体に保存するか否かを決定するための判定用情報である。露光期間ブレ量の算出方法については後述する。S2361の次にS2362の処理に進む。
【0136】
S2362で制御部212は、S2361で算出した露光期間ブレ量が閾値未満であるか否かを判定する。露光期間ブレ量が閾値未満である場合、撮影画像はブレの少ない画像であると判断され、S2363の処理に進む。露光期間ブレ量が閾値以上である場合、撮影画像は像ブレ画像の可能性があると判断され、S2364の処理に進む。S2363で画像記録部207は、撮像された画像のデータを記録媒体に保存し、S2365の処理に進む。S2365で制御部212は、電子シャッタ制御部213で設定されているISO感度値に応じて露出条件を変更する。例えば、画質向上のため、ISO感度値を下げ、露光時間tを長くするように設定が変更される。次にS2351の処理に移行する。
【0137】
S2364で画像記録部207は、撮像された画像のデータを記録媒体に記録しないか、または記録媒体に記録された画像データを削除する。あるいは、画像記録部207は、記録媒体に記録された画像データに対してスコア付けを行い、所定値以下のスコアを有する複数の画像データを、後でまとめて削除する処理を行う。次に、S2366で制御部212は、露光期間ブレ量を下げるためにPT駆動量の補正を行う。制御部212は、あらかじめ定められた閾値と露光期間ブレ量との差分に基づいて補正量を算出し、算出された補正量に基づいて次回の撮影で使用するPT駆動量(補正PT駆動量)を決定する。次にS2351の処理に移行する。
【0138】
次に、
図23のS2352におけるPT駆動量の算出方法を説明する。
図24を参照して、目標位置設定部1123により設定される目標位置の算出方法について説明する。
図24は撮像面2401とXY座標系を示す図である。横軸をX軸とし、縦軸をY軸と定義する。XY座標系の原点(0,0)を撮像面中心2402と定義する。XY座標系にて任意の点の座標を(X,Y)で表記し、XはX軸相対座標成分(%)を表し、YはY軸相対座標成分(%)を表す。
【0139】
撮像面2401において、
図23のS2351で取得された被写体位置を座標2403に示す。座標2403を(X1,Y1)と表記する。パンニング方向の目標角度は、撮像面中心2402と座標2403に基づいて求めたXY座標系での2点間の距離と、ズームユニット201の焦点距離fとにより、式(8)、式(9)を用いて算出することができる。
Xd=X1-Xo・・・(8)
θxd=atan(αx×Xd/f)・・・(9)
式(8)、式(9)中の諸量の定義は下記のとおりである。
Xd:撮像面中心2402から被写体位置までの距離(水平方向成分)
X1:撮像面上の被写体位置(水平方向成分)
Xo:撮像面中心2402の水平方向成分
αx:距離換算係数の水平方向成分
θxd:パンニング方向の目標角度。
式(9)中のatan()は、逆正接関数を表す。
チルティング方向の目標角度も同様にして算出することができる。パンニング方向およびチルティング方向の目標角度から目標位置が算出される。
【0140】
次にPID演算部1124は、算出された目標位置と、位置演算部1122が求めた現在のPT駆動位置との偏差に基づいて制御量(cと記す)を算出する。PT駆動量をDと表記し、追従の敏感度をsと表記する。PT駆動量Dは、算出された制御量cと追従の敏感度sに基づいて、式(10)により求められる。
D=c×s・・・(10)
【0141】
次に、
図25を参照して、追従度の算出方法を説明する。
図25は、電子シャッタ制御部213に設定されている露光時間tにおける、パンニング方向の追従度の算出方法について説明するための図である。横軸は時間軸であり、縦軸はパンニング方向の被写体速度とパン回転部の駆動速度との速度差を表す。例えばパンニング方向の追従度(fxと記す)は、露光前のパンニング方向の被写体速度とパン回転部の駆動速度との速度差から算出することが可能である。
【0142】
図25にて、時刻t0は露光直前の時刻であり、露光時間をtで示す。d0は、時刻t0におけるパンニング方向の被写体速度とパン回転部の駆動速度との速度差を示す。露光直前の時刻t0から露光時間tの経過後の速度差については、露光時間tで、露光直前の速度差d0が変化しないと仮定して速度差d0と算出することが可能である(速度差がd0のグラフ線参照)。その場合、露光時間tにおける、パンニング方向の追従度fxは速度差d0に決定される。または、露光時間tで、パンニング方向の被写体速度とパン回転部の駆動速度との速度差が一定に変化すると仮定して追従度fxを算出することができる(傾斜したグラフ線参照)。その場合、露光直前の時刻t0よりも過去の時刻をt0
*で示す。d0
*は、時刻t0
*におけるパンニング方向の被写体速度とパン回転部の駆動速度との速度差を示す。d2は、d0
*と露光直前の速度差d0について線形補間を行って求めた、時刻t0から露光時間tの経過後の速度差を示す。露光時間tにおけるパンニング方向の追従度fxは、速度差d0と速度差d2との平均演算により算出可能である。
【0143】
あるいは、露光時間tの期間でパンニング方向の被写体速度とパン回転部の駆動速度との速度差が加速的に変化すると仮定して追従度fxを算出することができる(実線のグラフ線参照)。その場合、d1は時刻t0から露光時間tの経過後の速度差を示し、時刻t0よりも過去の時刻t0*における速度差d0*と、露光直前の速度差d0との加速成分に基づいて算出される。露光時間tにおけるパンニング方向の追従度fxは、速度差d0と速度差d1に基づいて時間積分によって算出可能である。
【0144】
パンニング方向の追従度fxの算出方法について説明したが、チルティング方向の追従度(fyと記す)を同様の方法で算出することが可能である。また、被写体速度とパン回転部(またはチルト回転部)の駆動速度との速度差を、動きベクトルに置き換えて追従度を算出してもよい。その場合、露光直前に検出された動きベクトルと、露光直前よりも過去の時刻に検出された動きベクトルに基づいて、露光直前の時刻から露光時間tの経過後の動きベクトルが算出される。動きベクトルの算出結果に基づいて露光時間tにおけるパンニング方向(またはチルティング方向)の追従度fx(またはfy)が決定される。あるいは、被写体速度とPT駆動速度との速度差を像面の中心から被写体位置までの2点間の距離に置き換えて、追従度を算出してもよい。追従度fx,fyの算出後、
図23のS2355の処理に進む。S2355では、S2354で算出したパンニング方向の追従度と電子シャッタ制御部213に設定されている露光時間tとからパンニング方向のブレ量が算出される。
【0145】
図23のS2355におけるブレ量の算出方法について説明する。パンニング方向のブレ量をbrxと表記する。S2354で算出されたパンニング方向の追従度fxおよび露光時間tから、パンニング方向のブレ量brxは、式(11)により算出される。
brx=β×tan(t×|fx|)・・・(11)
式(11)中、βはブレ換算係数を表し、水平方向成分と垂直方向成分共に同一の値である。tan()は正接関数を表し、|fx|はfxの絶対値を表す。チルティング方向のブレ量(bryと記す)に関しても同様の算出方法が適用される。算出されたブレ量brx,bryは、撮影を実行するか否かを判定するための情報として用いられる。
【0146】
次に、ブレ方向について説明する。例えば、被写体ブレに関し、被写体を基準にして被写体速度よりもPT駆動速度の方が大きいことが原因で発生するブレと、被写体速度よりもPT駆動速度の方が小さいことが原因で発生する被写体ブレに大別される。ブレ方向については、被写体を基準とする場合、追従度fxが正値のときには速い方向と定義し、追従度fxが負値のときには遅い方向と定義できる。S2355にてブレ方向が決定された後、S2356の処理に進む。
【0147】
図23のS2356では、ブレ情報とPT駆動情報と装置揺れ検出部208により検出された撮像装置の揺れ量のうち、少なくとも1つ以上に基づいて、撮影を実行するか否かについての判断処理が実行される。ブレ情報は、ブレ量、ブレ方向、被写体情報のうちの被写体と撮像装置との距離、被写体の向き、被写体の進行方向の少なくとも1つ以上に基づいて構成される。例えば、S2355で算出されたブレ量と、予め設定されたブレ量の閾値との比較結果に基づいて判断処理が行われる。ブレ量が閾値よりも小さい場合、制御部212は撮影を実行すると判断し、ブレ量が閾値以上である場合には、撮影を実行しないと判断する。あるいは、被写体情報のうち、被写体と撮像装置との距離、被写体の向き、被写体の進行方向の少なくとも1つ以上に基づいて検出精度の判定処理が行われる。この場合、検出精度が閾値より低い場合、制御部212は撮影を実行しないと判断する。または、PT駆動速度、電子シャッタ制御部213に設定されている露光時間t、および、PT駆動の可動域に基づいて、露光中に回転部が駆動端に到達するか否かの判定処理が行われる。露光中に回転部が駆動端に到達すると判定された場合、制御部212は撮影を実行しないと判断する。または制御部212は、装置揺れ検出部208が検出した撮像装置の揺れ量と、予め設定された閾値との比較結果に基づいて、撮影を実行するか否かを判断する。制御部212は検出された揺れ量が閾値より小さい場合、撮影を実行すると判断し、検出された揺れ量が閾値以上である場合、撮影を実行しないと判断する。
【0148】
制御部212は撮影を実行しないと判断した場合(
図23のS2356でNO)、S2357の処理に進む。制御部212は、ブレ量とブレ方向とPT駆動情報と装置揺れ検出部208が検出した撮像装置の揺れ量のうちの少なくとも1つ以上に基づいて、追従の敏感度、露出条件のいずれか1つ以上を変更するか否かを判断する。判断処理では、ブレ量とブレ方向に基づいて、被写体の動きを予測する処理が行われる。例えば、複数のフレーム間でのブレ量が閾値以上であって、かつブレ方向が頻繁に反転する場合(ブレ方向の反転回数が閾値より大きい場合)、制御部212は検出被写体が不規則に動く被写体であると判断する。また、複数のフレーム間でのブレ量が一定量で増加し、かつブレ方向が一定である場合、制御部212は検出被写体が規則的に動く被写体のうち、加速成分をもって動く被写体であると判断する。
【0149】
図26を参照し、不規則に動く被写体であると判断される場合の、追従の敏感度と露出条件の変更方法について説明する。まず、追従の敏感度について
図26(A)を用いて説明する。
図26(A)は、不規則な動きをする被写体に関する、パンニング方向の被写体速度とパン回転部の駆動速度を示している。横軸は時間軸であり、縦軸は速度を表す。被写体速度2601の時間変化を点線のグラフで示す。追従の敏感度が高いパン回転部の駆動速度2602の時間変化を破線のグラフで示す。追従の敏感度が低いパン回転部の駆動速度2603の時間変化を実線のグラフで示す。追従の敏感度が高いと応答性は高くなるが、その代わりにハンチング現象が発生する可能性がある。これに対して、追従の敏感度が低いと応答性は低くなるが、ハンチング現象が発生する可能性は低い。
【0150】
図26(B)を参照して、追従の敏感度と露出条件の算出方法を説明する。
図26(B)は、ブレ量とブレ方向に基づいて、不規則に動く被写体であると判定された場合の、パンニング方向の被写体速度の時間変化と、パン回転部の駆動速度の時間変化を示す。横軸と縦軸の設定については
図26(A)と同じである。tは露光時間を表し、t0は露光直前の時刻を表す。時刻t0において、被写体速度2604と、追従の敏感度が高いパン回転部の駆動速度2605と、追従の敏感度が低いパン回転部の駆動速度2606をそれぞれ示す。露光時間tの期間において、ある時刻で速度変化が生じた場合の被写体速度2607に示す。vdは、被写体速度2607と追従の敏感度が低いパン回転部の駆動速度2606との速度差を表す。vd
*は、被写体速度2607と追従の敏感度が高いパン回転部の駆動速度2605との速度差を表す。
【0151】
図26(B)に示されるように、速度差vdよりも速度差vd
*の方が大きい(|vd
*|>|vd|)。また、露光時間tの期間(露光期間)において被写体情報を取得することができない。例えば露光期間におけるパンニング方向の駆動量が、露光直前の時刻t0における駆動量によって算出される場合、追従の敏感度が高すぎると誤った追従が行われる可能性がある。そこで本実施形態では、露光期間にて追従の敏感度を時刻t0での敏感度よりも下げる制御が行われ、誤った追従の可能性を低減することができる。ただし、誤った追従の可能性を低減することは可能であるが、それでもなお、被写体速度2607と追従の敏感度が低いパン回転部の駆動速度2606との速度差は存在し(vd≠0)、被写体ブレが発生する可能性がある。そこで制御部212は、検出被写体が不規則に動く被写体であると判断した場合、時刻t0での敏感度よりも露光期間での敏感度を下げた追従制御を行ったうえで、ブレ量に基づいて露光時間tを短くする方向へ露出条件を変更する制御を行う。
【0152】
次に、規則的に動く被写体の中でも加速成分をもって動く被写体であると判断した場合の、追従の敏感度と露出条件の変更方法について説明する。加速成分をもって被写体が動いているときには、ブレ量が増加している。そこで制御部212は、露光期間にて追従の敏感度を時刻t0での敏感度よりも上げた追従制御を行ったうえで、ブレ量に基づいて、露光時間tを短くする方向へ露出条件を変更する制御を行う。
【0153】
追従の敏感度の算出処理にて制御部212は、被写体速度に基づいて敏感度を算出する。例えば、現在の被写体速度および過去の被写体速度に基づいて算出される加速度により、予め加速度に対応付けした敏感度が用いられる。または、被写体速度を被写体位置に置き換えて、加速成分により敏感度を算出してもよいし、被写体速度を動きベクトルに置き換えて敏感度を算出してもよい。
【0154】
制御部212は露出条件の算出処理にて、ブレ量とその閾値を用いて露光時間tを算出し、算出結果に基づいて露出条件を決定する。例えば、制御部212はブレ量と閾値との差分に基づき、ブレ量を閾値内に抑えるように露光時間tを算出する。また制御部212は、撮像装置の揺れ量とその閾値に基づいて露光時間tを決定することができる。あるいは制御部212は追従を停止するように追従の敏感度を設定して、露出条件を算出することができる。この場合、被写体ブレを抑えるために露光時間が現在の露光時間tよりも短くなるように露出条件が設定される。または制御部212は、PT駆動情報に基づいて算出したパン回転部(またはチルト回転部)の現在位置から駆動端位置までの距離と、被写体速度とに基づいて、現在位置から駆動端位置へ到達する時点までの時間を算出する。算出された時間が現在の露光時間tよりも短い場合、制御部212は追従を停止するように追従の敏感度を設定し、被写体ブレを抑える方向に露出条件の算出処理を行う。
【0155】
追従の敏感度と露出条件の算出後、
図23のS2357ではブレに応じたパラメータの変更処理が実行される。制御部212はS2356での算出結果に基づいて、追従敏感度設定部1126により追従の敏感度を設定し、電子シャッタ制御部213に対して露出条件の変更および設定を行う。その後、S2351に移行して自動被写体追従、自動撮影処理が繰り返し実行される。
【0156】
図23のS2356で撮影を実行することが判断された場合、S2358、S2359の処理が行われる。S2359での露光時間は、電子シャッタ制御部213に設定されている露光時間tである。撮影終了後、S2360に進み、S2354と同様に、被写体情報とPT駆動情報とを用いて、パンニング方向およびチルティング方向の追従度が算出される。撮影後における、パンニング方向の追従度をfx
*と表記し、チルティング方向の追従度をfy
*と表記する。
【0157】
次に
図23のS2361(露光期間ブレ量算出)の処理について説明する。制御部212は、S2354で算出した撮影前のパンニング方向の追従度fxと、S2360で算出した撮影後のパンニング方向の追従度fx
*を用いて、パンニング方向の露光期間ブレ量ebrxを算出する。
図27を参照して、露光期間ブレ量の算出方法について説明する。
【0158】
図27は、撮影前後の追従度の時間変化を示している。横軸は時間軸であり、縦軸は追従度を表す。算出された撮影前後の追従度(fxとfx
*)から、露光時間tにおける追従度efxを予測してブレ量に換算する処理が行われる。時刻t0は、撮影直前の時刻を示す。露光時間tと信号読み出し時間t
*を示す。t
*は撮像素子からの信号の読み出し期間の長さに相当する。撮影直前の時刻t0から露光時間tが経過した時刻までの期間が露光期間に相当する。露光時間tが経過した時刻から信号読み出し時間t
*が経過した時刻をt1で示す。また露光直前の時刻t0よりも過去の時刻をt0
*で示す。縦軸に示す各追従度は以下のとおりである。
・fx
*:時刻t1における追従度。
・f5:露光時間tの経過直後の追従度。
・f4:線形補間により求めた露光時間tの経過直後の追従度。
・fx:時刻t0における追従度。
・fx0
*:時刻t0
*における追従度。
【0159】
パンニング方向の露光期間ブレ量ebrxは、撮影前後で追従度が一定に変化すると仮定して算出される。例えばf4は、撮影直前の時刻t0における追従度fxと、撮影後の時刻t1における追従度fx*に対して線形補間処理により算出される。露光期間ブレ量ebrxを算出するための追従度をefxと表記する。例えば追従度efxは、露光期間(露光時間t内)における、追従度fxとf4との平均演算によって算出される。あるいは、追従度efxは、撮影前後で追従度が加速成分をもって変化したと仮定して算出することができる。その場合、f5は、露光直前の時刻t0よりも過去の時刻t0*における追従度fx0*、およびfxとfx*との加速成分に基づいて算出される、露光時間tの経過直後の追従度を示す。さらには、fxとf5とに基づく時間積分演算により追従度efxを算出することができる。
【0160】
パンニング方向の露光期間ブレ量ebrxは、追従度efxおよび露光時間tから式(12)により算出される。
ebrx=β×tan(t×efx)・・・(12)
式(12)中のβはブレ換算係数であり、式(11)にて説明したとおりである。
以上、パンニング方向の露光期間ブレ量ebrxの算出方法を説明したが、チルティング方向の露光期間ブレ量ebryに関しても同様にして算出することができる。
【0161】
制御部212は、算出した露光期間ブレ量と予め設定されたブレ量の閾値とを比較し、撮影画像データを記録媒体に保存するか否かを判定する。露光期間ブレ量が閾値未満である場合、画像記録部207は撮影画像データを記録媒体に保存する(
図23のS2363)。設定されたISO感度値に応じて露出条件を変更する処理が行われる(
図23のS2365)。一方、制御部212は、算出した露光期間ブレ量が閾値以上であると判定した場合、撮影画像データを記録媒体に保存しないか、または削除する(
図23のS2364)。制御部212は補正量に基づいて次回の撮影で使用する補正PT駆動量を算出する(
図23のS2366)。
【0162】
従来の技術では、露光直前の情報を用いて露光期間における被写体の追従制御等が行われた場合、不規則に動く被写体等を撮影した画像に像ブレが発生する可能性がある。本実施形態では、追従制御の追従度から取得されるブレ情報、PT駆動情報、撮像装置の揺れ量との少なくともいずれかにより決定される、露光期間での追従の敏感度と露出条件との少なくともいずれかに変更する処理が行われる。不規則に動く被写体等を撮影する場合において、像ブレが抑制された画像を取得可能な機会を増やすことができる。
【0163】
以上、本発明の好ましい実施形態について説明したが、本発明は前記実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。前記実施形態ではパンニング方向とチルティング方向の各回転ユニットの駆動機構部を有する撮像装置を例示したが、本発明は、撮像方向を変更することが可能な駆動機構部を有する各種の撮像装置に適用可能である。また、像ブレ補正手段として、撮像光学系を構成する光学部材(シフトレンズ等)の駆動手段、または撮像素子の移動または回転を行う駆動手段等を、使用または併用することが可能である。
【0164】
本開示の実施形態は、以下の構成および方法を含む。
(構成1)
被写体を撮像する撮像手段と、
被写体情報を検出する第1の検出手段と、
撮像装置の揺れ量を検出する第2の検出手段と、
前記撮像手段の撮像方向を変更する駆動手段と、
前記被写体情報および前記揺れ量の検出情報を用いて、前記駆動手段により前記被写体に対して前記撮像方向を追従させる追従制御および像ブレ補正の制御と、前記撮像手段の露出条件を変更する制御を行う制御手段と、を備え、
前記制御手段は、前記駆動手段の制御量および駆動情報と前記追従制御の追従度および敏感度を算出し、前記追従度から取得されるブレ情報、前記駆動情報、前記揺れ量との少なくともいずれかにより決定される、前記撮像手段の露光期間での前記敏感度と前記露出条件との少なくともいずれかに変更する制御を行う
ことを特徴とする撮像装置。
(構成2)
前記第1の検出手段は、前記撮像手段により取得される画像から被写体を検出することにより、前記被写体情報として、前記被写体の速度と位置、被写体周りの動きベクトル、前記被写体と撮像装置との距離、前記被写体の向き、前記被写体の進行方向のうちの1つ以上の情報を取得する
ことを特徴とする構成1に記載の撮像装置。
(構成3)
前記駆動手段の駆動速度、駆動位置、可動域のうちの1つ以上を有する前記駆動情報を検出する第3の検出手段を備え、
前記制御手段は、前記駆動情報を用いて前記追従制御を行う
ことを特徴とする構成1または構成2に記載の撮像装置。
(構成4)
前記駆動手段は、複数の回転部のうちの第1の回転部の駆動を行うことで前記撮像方向を第1の回転軸を中心として変更する第1の駆動手段と、前記複数の回転部のうちの第2の回転部の駆動を行うことで前記撮像方向を第2の回転軸を中心として変更する第2の駆動手段を備え、
前記第3の検出手段は、前記第1および第2の駆動手段の駆動情報をそれぞれ検出する
ことを特徴とする構成3に記載の撮像装置。
(構成5)
前記制御手段は、前記制御量および敏感度から前記駆動手段の駆動量を算出し、前記駆動量に対応する前記回転部の位置を決定する
ことを特徴とする構成4に記載の撮像装置。
(構成6)
前記制御手段は、前記被写体情報および前記駆動情報に基づく前記追従度を算出する
ことを特徴とする構成1から5のいずれか1項に記載の撮像装置。
(構成7)
前記制御手段は、前記ブレ情報として画像のブレ量、ブレ方向、前記被写体と撮像装置との距離、前記被写体の向き、前記被写体の進行方向のうちの1つ以上の情報を取得する
ことを特徴とする構成1から6のいずれか1項に記載の撮像装置。
(構成8)
前記制御手段は、前記被写体の速度および前記駆動手段の駆動速度から前記追従度を算出し、前記追従度および前記撮像手段の露光時間から前記ブレ情報を算出する
ことを特徴とする構成1から7のいずれか1項に記載の撮像装置。
(構成9)
前記制御手段は、前記ブレ情報と前記駆動情報と前記揺れ量のうちの1つ以上に基づく判定により、前記被写体の撮影を実行するか否かを決定する
ことを特徴とする構成1から8のいずれか1項に記載の撮像装置。
(構成10)
前記制御手段は、撮影前の前記追従度と前記撮像手段の露光時間から前記ブレ情報を算出して前記露光期間における前記追従制御を行い、前記被写体を撮影した画像を生成する制御を行う
ことを特徴とする構成1から9のいずれか1項に記載の撮像装置。
(構成11)
前記撮像手段により取得される前記被写体の画像データを記録媒体に記録する記録手段を備え、
前記制御手段は、撮影前の前記追従度および撮影後の前記追従度から算出される、前記露光期間における追従度と、前記撮像手段の露光時間とから、前記露光期間での画像のブレ量を算出して閾値と比較し、前記ブレ量が前記閾値未満である場合、前記記録手段により前記画像データを前記記録媒体に記録する制御を行い、前記ブレ量が前記閾値以上である場合、前記画像データを前記記録媒体に記録しないか、または前記記録媒体から前記画像データを削除する制御を行う
ことを特徴とする構成1から10のいずれか1項に記載の撮像装置。
(構成12)
前記制御手段は、複数のフレーム間での前記ブレ量が閾値以上であって、かつブレ方向の反転する回数が閾値より大きい場合、前記被写体は不規則に動く被写体であると判断し、前記露光期間での前記敏感度を撮影前の前記敏感度よりも下げて前記追従制御を行う
ことを特徴とする構成11に記載の撮像装置。
(構成13)
前記制御手段は、複数のフレーム間での前記ブレ量が一定量で増加し、かつブレ方向が一定である場合、前記被写体は規則的に動く被写体のうち、加速成分をもって動く被写体であると判断し、前記露光期間での前記敏感度を撮影前の前記敏感度よりも上げて前記追従制御を行う
ことを特徴とする構成11に記載の撮像装置。
(構成14)
前記制御手段は、前記被写体が不規則に動く被写体であるか、または規則的に動く被写体のうち、加速成分をもって動く被写体であると判断した場合、前記露光時間をより短くする方向へ前記露出条件を変更する制御を行う
ことを特徴とする構成12または構成13に記載の撮像装置。
(方法)
被写体を撮像する撮像手段と、前記撮像手段の撮像方向を変更する駆動手段と、前記駆動手段を制御する制御手段と、を備える撮像装置にて実行される制御方法であって、
被写体情報および前記撮像装置の揺れ量の検出を行う検出工程と、
前記被写体情報および前記揺れ量の検出情報を用いて、前記駆動手段により前記被写体に対して前記撮像方向を追従させる追従制御および像ブレ補正の制御と、前記撮像手段の露出条件を変更する制御を前記制御手段が行う制御工程と、を有し、
前記制御工程にて前記制御手段は、前記駆動手段の制御量および駆動情報と前記追従制御の追従度および敏感度を算出する処理と、前記追従度から取得されるブレ情報、前記駆動情報、前記揺れ量との少なくともいずれかにより決定される、前記撮像手段の露光期間での前記敏感度と露出条件との少なくともいずれかに変更する処理を行う
ことを特徴とする撮像装置の制御方法。
【符号の説明】
【0165】
101 カメラ
102 鏡筒
103 固定部
104,105 回転ユニット