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)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-27
(45)【発行日】2024-09-04
(54)【発明の名称】撮像装置及びその制御方法、プログラム
(51)【国際特許分類】
   H04N 23/695 20230101AFI20240828BHJP
   H04N 23/61 20230101ALI20240828BHJP
   G03B 15/00 20210101ALI20240828BHJP
   G03B 17/56 20210101ALI20240828BHJP
【FI】
H04N23/695
H04N23/61
G03B15/00 U
G03B17/56 B
【請求項の数】 10
(21)【出願番号】P 2023023631
(22)【出願日】2023-02-17
(62)【分割の表示】P 2017254402の分割
【原出願日】2017-12-28
(65)【公開番号】P2023057157
(43)【公開日】2023-04-20
【審査請求日】2023-03-13
(31)【優先権主張番号】P 2017242228
(32)【優先日】2017-12-18
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】大内 謙治
【審査官】瀬戸 息吹
(56)【参考文献】
【文献】特開2007-259423(JP,A)
【文献】特開2011-061857(JP,A)
【文献】特開2005-215750(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/222 - 5/257
H04N 23/00
H04N 23/40 - 23/76
H04N 23/90 - 23/959
G03B 15/00 - 15/035
G03B 15/06 - 15/16
G03B 17/56 - 17/58
(57)【特許請求の範囲】
【請求項1】
撮像装置であって、
画像を撮像する撮像手段と、
前記撮像手段により撮像された画像データから被写体を検出する被写体検出手段と、
前記撮像装置の移動の状態を示す状態情報を検出する状態検出手段と、
前記撮像手段をパン方向とチルト方向の少なくともいずれかに回転させて前記画像を撮像し、撮像された画像データから被写体を検出することで被写体探索処理を行う探索手段と、
前記状態検出手段により検出された前記撮像装置の状態情報に基づいて、前記撮像手段をパン方向とチルト方向の少なくともいずれかに回転させる被写体探索処理のための回転駆動と次の被写体探索処理のための前記回転駆動との間の時間間隔を変更する制御手段と、
を備えることを特徴とする撮像装置。
【請求項2】
前記状態検出手段は、前記撮像装置の移動の状態を示す状態情報として、前記撮像装置の移動速度に関する情報を検出し、
前記制御手段は、前記移動速度に関する情報に基づいて前記被写体探索処理のための回転駆動と次の被写体探索処理のための前記回転駆動との間の時間間隔を変更することを特徴とする請求項1に記載の撮像装置。
【請求項3】
前記制御手段は、前記状態検出手段により前記撮像装置が第1の速度で移動していることが検出された場合は、前記状態検出手段により前記撮像装置が前記第1の速度よりも遅い第2の速度で移動していることが検出された場合よりも、前記被写体探索処理のための回転駆動と次の被写体探索処理のための前記回転駆動との間の時間間隔を短く変更することを特徴とする請求項1または2に記載の撮像装置。
【請求項4】
前記状態検出手段は、前記撮像装置の角速度情報、加速度情報、GPS位置情報、撮影画像から座標ごとに算出した動きベクトルのうちの少なくとも1つに基づいて、前記状態情報を検出することを特徴とする請求項1乃至のいずれか1項に記載の撮像装置。
【請求項5】
前記状態検出手段は、一定の期間の計測結果に基づいて、前記撮像装置の進行方向および移動速度を検出することを特徴とする請求項に記載の撮像装置。
【請求項6】
前記状態検出手段は、前記撮像装置の移動の状態を示す状態情報として、前記撮像装置の移動速度に関する情報を検出し、
前記制御手段は、前記移動速度に関する情報に基づいて、前記撮像手段の回転駆動の範囲を変更することを特徴とする請求項1乃至のいずれか1項に記載の撮像装置。
【請求項7】
前記制御手段は、前記状態検出手段によって検出される前記撮像装置の移動速度が第3の速度の場合、前記移動速度が前記第3の速度よりも遅い第4の速度の場合よりも、前記回転駆動の範囲を狭めることを特徴とする請求項に記載の撮像装置。
【請求項8】
前記状態検出手段は、前記撮像装置の移動の状態を示す状態情報として、前記撮像装置の進行方向に関する情報を検出し、
前記制御手段は、前記進行方向に関する情報に基づいて前記撮像手段の回転駆動の範囲を変更することを特徴とする請求項1に記載の撮像装置。
【請求項9】
画像を撮像する撮像手段を備える撮像装置を制御する方法であって、
前記撮像手段により撮像された画像データから被写体を検出する被写体検出工程と、
前記撮像装置の移動の状態を示す状態情報を検出する状態検出工程と、
前記撮像手段をパン方向とチルト方向の少なくともいずれかに回転させて前記画像を撮像し、撮像された画像データから被写体を検出することで被写体探索処理を行う探索工程と、
前記状態検出工程において検出された前記撮像装置の状態情報に基づいて、前記撮像手段をパン方向とチルト方向の少なくともいずれかに回転させる被写体探索処理のための回転駆動と次の被写体探索処理のための前記回転駆動との間の時間間隔を変更する制御工程と、
を有することを特徴とする撮像装置の制御方法。
【請求項10】
請求項に記載の制御方法の各工程をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮像装置における自動撮影技術に関するものである。
【背景技術】
【0002】
ユーザが撮影指示を与えることなく定期的および継続的に撮影を行うライフログカメラが知られている(特許文献1)。ライフログカメラは、ストラップ等でユーザの身体に装着された状態で用いられ、ユーザが日常生活で目にする光景を一定時間間隔で映像として記録するものである。ライフログカメラによる撮影は、ユーザがシャッターを切るなどの意図したタイミングで撮影するのではなく、一定の時間間隔で自動的に撮影を行うため、普段撮影しないような不意な瞬間を映像として残すことができる。
【0003】
また、特許文献2には、撮像方向を変更可能なように構成された撮像装置において、自動的に被写体を探索し、撮影する技術が開示されている。自動撮影においても、検出した被写体に基づいて撮影する構図を決めることによって、ユーザにとって好ましい画像を記録できる可能性を向上させることができる。
【先行技術文献】
【特許文献】
【0004】
【文献】特表2016-536868号公報
【文献】特許第05453953号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ライフログを目的とした撮影では、ユーザにとっては面白みに欠ける画像が記録される可能性も高い。そこで、自動でカメラがパン・チルト回転し、周辺の被写体を探索し、検出した被写体を含む画角で撮影することにより、ユーザにとって好ましい画像を記録できる可能性を向上させることができる。
【0006】
しかしながら、撮像装置をユーザが身に着けた状態で被写体探索をする場合、撮像装置自体が移動しているため、探索動作後、撮影のために検出した被写体に再び撮像装置を向けても、既に被写体が見えなくなっている場合がある。また、被写体が遠ざかって小さくなり過ぎてしまい、被写体探索がムダになってしまう場合がある。このような状況が起こると、ユーザにとって好ましい画像を得られないばかりか、被写体探索をやり直すために電池が消費され、撮影可能時間が減少してしまうという問題が発生する。
【0007】
本発明は上述した課題に鑑みてなされたものであり、その目的は、被写体探索のムダを無くし、ユーザの好みの映像を取得できる確率を向上させることである。
【課題を解決するための手段】
【0008】
本発明に係わる撮像装置は、撮像装置であって、画像を撮像する撮像手段と、前記撮像手段により撮像された画像データから被写体を検出する被写体検出手段と、前記撮像装置の移動の状態を示す状態情報を検出する状態検出手段と、前記撮像手段をパン方向とチルト方向の少なくともいずれかに回転させて前記画像を撮像し、撮像された画像データから被写体を検出することで被写体探索処理を行う探索手段と、前記状態検出手段により検出された前記撮像装置の状態情報に基づいて、前記撮像手段をパン方向とチルト方向の少なくともいずれかに回転させる被写体探索処理のための回転駆動と次の被写体探索処理のための前記回転駆動との間の時間間隔を変更する制御手段と、を備えることを特徴とする。
【発明の効果】
【0009】
本発明によれば、被写体探索のムダを無くし、ユーザの好みの映像を取得できる確率を向上させることが可能となる。
【図面の簡単な説明】
【0010】
図1】本発明の撮像装置の第1の実施形態であるカメラの外観を模式的に示す図。
図2】第1の実施形態のカメラの全体構成を示すブロック図。
図3】カメラと外部装置との無線通信システムの構成例を示す図。
図4】外部装置の構成を示す図。
図5】カメラと外部装置の構成を示す図。
図6】外部装置の構成を示す図。
図7】第1制御部の動作を説明するフローチャート。
図8】第2制御部の動作を説明するフローチャート。
図9】撮影モード処理の動作を説明するフローチャート。
図10】撮影画像内のエリア分割を説明するための図。
図11】ニューラルネットワークを説明する図。
図12】外部装置で画像を閲覧している様子を示す図。
図13】学習モード判定を説明するフローチャート。
図14】学習処理を説明するフローチャート。
図15】アタッチメントの装着例を示す図。
図16】手持ち用アタッチメント装着時の被写体探索範囲を説明するための図。
図17】机上設置用アタッチメント装着時の被写体探索範囲を説明するための図。
図18】アタッチメントの種類毎の制御を説明するための図。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。
【0012】
(第1の実施形態)
<カメラの構成>
図1は、本発明の撮像装置の第1の実施形態であるカメラの外観を模式的に示す図である。図1(a)に示すカメラ101には、電源スイッチ、カメラ操作を行うことができる操作部材などが設けられている。被写体像の撮像を行う撮像光学系としての撮影レンズ群や撮像素子を一体的に含む鏡筒102は、カメラ101の固定部103に対して移動可能に取り付けられている。具体的には、鏡筒102は、固定部103に対して回転駆動できる機構であるチルト回転ユニット104とパン回転ユニット105とを介して固定部103に取り付けられている。
【0013】
チルト回転ユニット104は、鏡筒102を図1(b)に示すピッチ方向に回転駆動することができるモーター駆動機構を備え、パン回転ユニット105は、鏡筒102を図1(b)に示すヨー方向に回転駆動することができるモーター駆動機構を備える。すなわちカメラ101は、鏡筒102を2軸方向に回転駆動する機構を有する。図1(b)に示す各軸は、固定部103の位置に対してそれぞれ定義されている。角速度計106及び加速度計107は、カメラ101の固定部103に配置されている。そして、角速度計106や加速度計107の出力信号に基づいて、カメラ101の振動を検出し、チルト回転ユニット104とパン回転ユニット105を回転駆動することにより、鏡筒102の振れを補正したり、傾きを補正したりすることができる。また、角速度計106や加速度計107は、一定の期間の計測結果に基づいて、カメラの移動検出も行う。
【0014】
図2は本実施形態のカメラ101の全体構成を示すブロック図である。図2において、第1制御部223は、例えばCPU(MPU)、メモリ(DRAM、SRAM)などを備える。そして、不揮発性メモリ(EEPROM)216に記憶されたプログラムに従って、各種処理を実行してカメラ101の各ブロックを制御したり、各ブロック間でのデータ転送を制御したりする。不揮発性メモリ216は、電気的に消去・記録可能なメモリであり、上記のように第1制御部223の動作用の定数、プログラム等が記憶される。
【0015】
図2において、ズームユニット201は、変倍(結像された被写体像の拡大・縮小)を行うズームレンズを含む。ズーム駆動制御部202は、ズームユニット201を駆動制御するとともに、そのときの焦点距離を検出する。フォーカスユニット203は、ピント調整(焦点調節)を行うフォーカスレンズを含む。フォーカス駆動制御部204は、フォーカスユニット203を駆動制御する。撮像部206は撮像素子を備え、各レンズ群を通して入射する光を受け、その光量に応じた電荷の情報をアナログ画像信号として画像処理部207に出力する。なお、ズームユニット201、フォーカスユニット203、撮像部206は、鏡筒102内に配置されている。
【0016】
画像処理部207はアナログ画像信号をA/D変換して得られたデジタル画像データに対して、歪曲補正、ホワイトバランス調整、色補間処理等の画像処理を適用し、適用後のデジタル画像データを出力する。画像処理部207から出力されたデジタル画像データは、画像記録部208でJPEG形式等の記録用フォーマットに変換され、メモリ215に記憶されたり後述する映像出力部217に送信される。
【0017】
鏡筒回転駆動部205は、チルト回転ユニット104、パン回転ユニット105を駆動し、鏡筒102をチルト方向とパン方向に回動させる。装置揺れ検出部209は、カメラ101の3軸方向の角速度を検出する角速度計(ジャイロセンサ)106や、カメラ101の3軸方向の加速度を検出する加速度計(加速度センサ)107を備える。そして、それらのセンサにより検出された信号に基づいて、装置の回転角度や装置のシフト量などが算出される。
【0018】
音声入力部213は、カメラ101に設けられたマイクによりカメラ101の周辺の音声信号を取得し、デジタル音声信号に変換して音声処理部214に送信する。音声処理部214は、入力されたデジタル音声信号の適正化処理等の音声に関する処理を行う。そして、音声処理部214で処理された音声信号は、第1制御部223によりメモリ215に送信される。メモリ215は、画像処理部207、音声処理部214により得られた画像信号及び音声信号を一時的に記憶する。
【0019】
画像処理部207及び音声処理部214は、メモリ215に一時的に記憶された画像信号や音声信号を読み出して画像信号の符号化、音声信号の符号化などを行い、圧縮画像信号、圧縮音声信号を生成する。第1制御部223は、これらの圧縮画像信号、圧縮音声信号を、記録再生部220に送信する。
【0020】
記録再生部220は、記録媒体221に対して画像処理部207及び音声処理部214で生成された圧縮画像信号、圧縮音声信号、その他撮影に関する制御データ等を記録する。また、音声信号を圧縮符号化しない場合には、第1制御部223は、音声処理部214により生成された音声信号と画像処理部207により生成された圧縮画像信号とを、記録再生部220に送信し記録媒体221に記録させる。
【0021】
記録媒体221は、カメラ101に内蔵された記録媒体でも、取外し可能な記録媒体でもよく、カメラ101で生成した圧縮画像信号、圧縮音声信号、音声信号などの各種データを記録することができる。一般的には、記録媒体221には不揮発性メモリ216よりも大容量な媒体が使用される。例えば、記録媒体221は、ハードディスク、光ディスク、光磁気ディスク、CD-R、DVD-R、磁気テープ、不揮発性の半導体メモリ、フラッシュメモリ、などのあらゆる方式の記録媒体を含む。
【0022】
記録再生部220は、記録媒体221に記録された圧縮画像信号、圧縮音声信号、音声信号、各種データ、プログラムを読み出す(再生する)。そして、第1制御部223は、読み出された圧縮画像信号、圧縮音声信号を、画像処理部207及び音声処理部214に送信する。画像処理部207及び音声処理部214は、圧縮画像信号、圧縮音声信号を一時的にメモリ215に記憶させ、所定の手順で復号し、復号した信号を映像出力部217に送信する。
【0023】
音声入力部213には複数のマイクが配置されており、音声処理部214は複数のマイクが設置された平面に対する音の方向を検出することができ、後述する被写体の探索や自動撮影に用いられる。さらに、音声処理部214では、特定の音声コマンドを検出する。音声コマンドは事前に登録されたいくつかのコマンドの他、ユーザが特定音声をカメラに登録できる構成にしてもよい。また、音シーン認識も行う。音シーン認識では、予め大量の音声データに基づいて機械学習により学習させたネットワークにより音シーンの判定を行う。例えば、「歓声が上がっている」、「拍手している」、「声を発している」などの特定シーンを検出するためのネットワークが音声処理部214に設定されており、特定音シーンや特定音声コマンドを検出する。音声処理部214が特定音シーンや特定音声コマンドを検出すると、第1制御部223や第2制御部211に、検出トリガー信号を出力する。
【0024】
カメラ101のメインシステム全体を制御する第1制御部223とは別に、この第1制御部223の供給電源を制御する第2制御部211が設けられている。第1電源部210と第2電源部212は、第1制御部223と第2制御部211を動作させるための電力をそれぞれ供給する。カメラ101に設けられた電源ボタンの押下により、まず第1制御部223と第2制御部211の両方に電源が供給されるが、後述するように、第1制御部223は、第1電源部210へ自らの電源供給をOFFする制御も行う。第1制御部223が動作していない間も、第2制御部211は動作しており、装置揺れ検出部209や音声処理部214からの情報が入力される。第2制御部211は、各種入力情報に基づいて、第1制御部223を起動するか否かの判定を行い、起動することが判定されると、第1電源部210に第1制御部223へ電力を供給するように指示する。
【0025】
音声出力部218は、例えば撮影時などにカメラ101に内蔵されたスピーカーから予め設定された音声パターンを出力する。LED制御部224は、例えば撮影時などに、カメラ101に設けられたLEDを、予め設定された点灯パターンや点滅パターンに基づいて点灯させる。映像出力部217は、例えば映像出力端子からなり、接続された外部ディスプレイ等に映像を表示させるために画像信号を出力する。また、音声出力部218、映像出力部217は、結合された1つの端子、例えばHDMI(登録商標:High-Definition Multimedia Interface)端子のような端子であってもよい。
【0026】
通信部222は、カメラ101と外部装置との間で通信を行う部分であり、例えば、音声信号、画像信号、圧縮音声信号、圧縮画像信号などのデータを送信したり受信したりする。また、撮影開始や終了のコマンド、パン・チルト、ズーム駆動等の撮影にかかわる制御信号を受信して、外部装置の指示に基づいてカメラ101を駆動する。また、カメラ101と外部装置との間で、後述する学習処理部219で処理される学習にかかわる各種パラメータなどの情報を送信したり受信したりする。通信部222は、例えば、赤外線通信モジュール、Bluetooth(登録商標)通信モジュール、無線LAN通信モジュール、WirelessUSB(登録商標)、GPS受信機等の無線通信モジュールを備える。
【0027】
環境センサ226は、所定の周期でカメラ101の周辺の環境の状態を検出する。環境センサ226は、カメラ101周辺の温度を検出する温度センサ、カメラ101周辺の気圧の変化を検出する気圧センサ、カメラ101周辺の明るさを検出する照度センサを有する。さらに、カメラ101周辺の湿度を検出する湿度センサ、カメラ101周辺の紫外線量を検出するUVセンサ等も有する。検出した温度情報や気圧情報や明るさ情報や湿度情報やUV情報に加え、検出した各種情報から所定時間間隔での変化率を算出した温度変化量や気圧変化量や明るさ変化量や湿度変化量や紫外線変化量などを後述する自動撮影などの判定に使用する。
【0028】
<外部装置との通信>
図3は、カメラ101と外部装置301との無線通信システムの構成例を示す図である。カメラ101は撮影機能を有するデジタルカメラであり、外部装置301はBluetooth通信モジュール、無線LAN通信モジュールを含むスマートデバイスである。
【0029】
カメラ101と外部装置301は、例えばIEEE802.11規格シリーズに準拠した無線LANによる第1の通信302と、例えばBluetooth Low Energy(以下、「BLE」と呼ぶ)などの、制御局と従属局などの主従関係を有する第2の通信303とによって通信可能である。なお、無線LAN及びBLEは通信手法の一例であり、各通信装置は、2つ以上の通信機能を有し、例えば制御局と従属局との関係の中で通信を行う一方の通信機能によって、他方の通信機能の制御を行うことが可能であれば、他の通信手法が用いられてもよい。ただし、無線LANなどの第1の通信302は、BLEなどの第2の通信303より高速な通信が可能であり、また、第2の通信303は、第1の通信302よりも消費電力が少ないか通信可能距離が短いかの少なくともいずれかであるものとする。
【0030】
外部装置301の構成を図4を用いて説明する。外部装置301は、例えば、無線LAN用の無線LAN制御部401、及び、BLE用のBLE制御部402に加え、公衆無線通信用の公衆無線制御部406を有する。また、外部装置301は、パケット送受信部403をさらに有する。無線LAN制御部401は、無線LANのRF制御、通信処理、IEEE802.11規格シリーズに準拠した無線LANによる通信の各種制御を行うドライバ処理や無線LANによる通信に関するプロトコル処理を行う。BLE制御部402は、BLEのRF制御、通信処理、BLEによる通信の各種制御を行うドライバ処理やBLEによる通信に関するプロトコル処理を行う。公衆無線制御部406は、公衆無線通信のRF制御、通信処理、公衆無線通信の各種制御を行うドライバ処理や公衆無線通信関連のプロトコル処理を行う。公衆無線通信は例えばIMT(International Multimedia Telecommunications)規格やLTE(Long Term Evolution)規格などに準拠したものである。パケット送受信部403は、無線LAN並びにBLEによる通信及び公衆無線通信に関するパケットの送信と受信との少なくともいずれかを実行するための処理を行う。なお、本実施形態では、外部装置301は、通信においてパケットの送信と受信との少なくともいずれかを行うものとして説明するが、パケット交換以外に、例えば回線交換など、他の通信形式が用いられてもよい。
【0031】
外部装置301は、例えば、制御部411、記憶部404、GPS受信部405、表示部407、操作部408、音声入力音声処理部409、電源部410をさらに有する。制御部411は、例えば、記憶部404に記憶された制御プログラムを実行することにより、外部装置301全体を制御する。記憶部404は、例えば制御部411が実行する制御プログラムと、通信に必要なパラメータ等の各種情報とを記憶する。後述する各種動作は、記憶部404に記憶された制御プログラムを制御部411が実行することにより、実現される。
【0032】
電源部410は、外部装置301に電力を供給する。表示部407は、例えば、LCDやLEDのように視覚で認知可能な情報の出力、又はスピーカー等の音出力が可能な機能を有し、各種情報の表示を行う。操作部408は、例えばユーザによる外部装置301の操作を受け付けるボタン等を含む。なお、表示部407及び操作部408は、例えばタッチパネルなどの共通する部材によって構成されていてもよい。
【0033】
音声入力音声処理部409は、例えば外部装置301に内蔵された汎用的なマイクにより、ユーザが発した音声を取得し、音声認識処理により、ユーザの操作命令を識別する構成にしてもよい。また、外部装置301内の専用のアプリケーションを用いて、ユーザの発音により音声コマンドを取得し、無線LANによる第1の通信302を介して、カメラ101の音声処理部214に認識させるための特定音声コマンドとして登録することもできる。
【0034】
GPS(Global positioning system)受信部405は、衛星から通知されるGPS信号を受信し、GPS信号を解析し、外部装置301の現在位置(経度・緯度情報)を推定する。もしくは、WPS(Wi-Fi Positioning System)等を利用して、周囲に存在する無線ネットワークの情報に基づいて、外部装置301の現在位置を推定するようにしてもよい。取得した現在のGPS位置情報が予め事前に設定されている位置範囲(検出位置を中心といて所定半径の範囲以内)に位置している場合や、GPS位置情報に所定以上の位置変化があった場合に、BLE制御部402を介してカメラ101へ移動情報を通知する。そして、後述する自動撮影や自動編集のためのパラメータとして使用する。
【0035】
上記のようにカメラ101と外部装置301は、無線LAN制御部401、及び、BLE制御部402を用いた通信により、データのやりとりを行う。例えば、音声信号、画像信号、圧縮音声信号、圧縮画像信号などのデータを送信したり受信したりする。また、外部装置301からカメラ101への撮影指示などの送信、音声コマンド登録データの送信、GPS位置情報に基づいた所定位置検出通知の送信、場所移動通知の送信等を行う。また、外部装置301内の専用のアプリケーションを用いての学習用データの送受信も行う。
【0036】
<アクセサリ類の構成>
図5は、カメラ101と通信可能である外部装置501の構成例を示す図である。カメラ101は撮影機能を有するデジタルカメラであり、外部装置501は、例えばBluetooth通信モジュールなどによりカメラ101と通信可能である各種センシング部を含むウエアラブルデバイスである。
【0037】
外部装置501は、例えばユーザの腕などに装着できるように構成されており、所定の周期でユーザの脈拍、心拍、血流等の生体情報を検出するセンサやユーザの運動状態を検出できる加速度センサ等が搭載されている。
【0038】
生体情報検出部602は、例えば、脈拍を検出する脈拍センサ、心拍を検出する心拍センサ、血流を検出する血流センサ、導電性高分子を用いた皮膚の接触によって電位の変化を検出するセンサを含む。本実施形態では、生体情報検出部602として心拍センサを用いて説明する。心拍センサは、例えばLED等を用いて皮膚に赤外光を照射し、体組織を透過した赤外光を受光センサで検出して信号処理することによりユーザの心拍を検出する。生体情報検出部602は、検出した生体情報を信号として制御部607(図6参照)へ出力する。
【0039】
ユーザの運動状態を検出する揺れ検出部603は、例えば、加速度センサやジャイロセンサを備えており、加速度の情報に基づきユーザが移動しているか、腕を振り回してアクションをしているかなどのモーションを検出することができる。また、ユーザによる外部装置501の操作を受け付ける操作部605や、LCDやLEDのように視覚で認知可能な情報を出力するモニタなどの表示部604が搭載されている。
【0040】
図6は、外部装置501の構成を示す図である。上述したように、外部装置501は、例えば、制御部607、通信部601、生体情報検出部602、揺れ検出部603、表示部604、操作部605、電源部606、記憶部608を有する。
【0041】
制御部607は、例えば、記憶部608に記憶された制御プログラムを実行することにより、外部装置501全体を制御する。記憶部608は、例えば制御部607が実行する制御プログラムと、通信に必要なパラメータ等の各種情報とを記憶している。後述する各種動作は、例えば記憶部608に記憶された制御プログラムを制御部607が実行することにより、実現される。
【0042】
電源部606は、外部装置501に電力を供給する。表示部604は、例えば、LCDやLEDのように視覚で認知可能な情報の出力部、又はスピーカー等の音出力が可能な出力部を有し、各種情報の表示を行う。操作部605は、例えばユーザによる外部装置501の操作を受け付けるボタン等を備える。なお、表示部604及び操作部605は、例えばタッチパネルなどの共通する部材によって構成されていてもよい。また、操作部605は、例えば外部装置501に内蔵された汎用的なマイクによりユーザが発した音声を取得し、音声認識処理により、ユーザの操作命令を識別するように構成されていてもよい。
【0043】
生体情報検出部602や揺れ検出部603により取得され制御部607で処理された各種検出情報は、通信部601により、カメラ101へ送信される。例えば、ユーザの心拍の変化を検出したタイミングで検出情報をカメラ101に送信したり、歩行移動/走行移動/立ち止まりなどの移動状態(状態情報)の変化のタイミングで検出情報を送信したりすることができる。また、予め設定された腕ふりのモーションを検出したタイミングで検出情報を送信したり、予め設定された距離の移動を検出したタイミングで検出情報を送信したりすることもできる。
【0044】
<カメラの動作シーケンス>
図7は、本実施形態におけるカメラ101の第1制御部223が受け持つ動作の例を説明するフローチャートである。
【0045】
ユーザがカメラ101に設けられた電源ボタンを操作すると、第1電源部210から第1制御部223及びカメラ101の各ブロックに電力が供給される。また、同様に、第2電源部212から第2制御部211に電力が供給される。第2制御部211の動作の詳細については、図8のフローチャートを用いて後述する。
【0046】
電力が供給されると、図7の処理がスタートする。ステップS701では、起動条件の読み込みが行われる。本実施形態においては、電源が起動される条件には以下の3つの場合がある。
(1)電源ボタンが手動で押下されて電源が起動される
(2)外部装置(例えば外部装置301)から外部通信(例えばBLE通信)により起動指示が送られ、電源が起動される
(3)第2制御部211の指示により、電源が起動される
ここで、(3)の第2制御部211の指示により電源が起動される場合は、第2制御部211内で演算された起動条件が読み込まれることになるが、詳細は図8を用いて後述する。また、ここで読み込まれた起動条件は、被写体探索や自動撮影時の1つのパラメータ要素として用いられるが、それについても後述する。起動条件読み込みが終了するとステップS702に進む。
【0047】
ステップS702では、各種センサの検出信号の読み込みが行われる。ここで読み込まれるセンサの信号は、1つは、装置揺れ検出部209におけるジャイロセンサや加速度センサなどの振動を検出するセンサの信号である。また、チルト回転ユニット104やパン回転ユニット105の回転位置の信号である。さらには、音声処理部214で検出される音声信号、特定音声認識の検出トリガー信号、音方向検出信号、環境センサ226で検出される環境情報の検出信号などである。ステップS702で各種センサの検出信号の読み込みが行われると、ステップS703に進む。
【0048】
ステップS703では、外部装置から通信指示が送信されているかを検出し、通信指示があった場合、外部装置との通信を行う。例えば、外部装置301からの、無線LANやBLEを介したリモート操作、音声信号、画像信号、圧縮音声信号、圧縮画像信号などの送受信、外部装置301からの撮影などの操作指示、音声コマンド登録データの送信、GPS位置情報に基づいた所定位置検出通知、場所移動通知、学習用データの送受信等の読み込みを行う。また、外部装置501から、ユーザの運動情報、腕のアクション情報、心拍などの生体情報の更新がある場合、BLEを介した情報の読み込みを行う。なお、上述した環境センサ226は、カメラ101に搭載されていてもよいが、外部装置301或いは外部装置501に搭載されていてもよい。その場合、ステップS703では、BLEを介した環境情報の読み込みも行う。ステップS703で外部装置からの通信読み込みが行われると、ステップS704に進む。
【0049】
ステップS704では、モード設定判定が行われ、ステップS705に進む。ステップS705ではステップS704で動作モードが低消費電力モードに設定されているか否かを判定する。後述する「自動撮影モード」、「自動編集モード」、「画像自動転送モード」、「学習モード」、「ファイル自動削除モード」、の何れのモードでもない場合は、低消費電力モードになるように判定される。ステップS705で、低消費電力モードであると判定されると、ステップS706に進む。
【0050】
ステップS706では、第2制御部211(SubCPU)へ、第2制御部211内で判定する起動要因に係る各種パラメータ(揺れ検出判定用パラメータ、音検出用パラメータ、時間経過検出パラメータ)を通知する。各種パラメータは後述する学習処理で学習されることによって値が変化する。ステップS706の処理を終了すると、ステップS707に進み、第1制御部223(MainCPU)の電源をOFFして、処理を終了する。
【0051】
ステップS705で、低消費電力モードでないと判定されると、ステップS704におけるモード設定が自動撮影モードか否かを判定する。ここで、ステップS704でのモード設定判定の処理について説明する。判定されるモードは、以下の中から選択される。
(1)自動撮影モード
<モード判定条件>
学習設定された各検出情報(画像、音、時間、振動、場所、身体の変化、環境変化)、自動撮影モードに移行してからの経過時間、過去の撮影情報・撮影枚数などの情報から、自動撮影を行うべきと判定されると、自動撮影モードに設定される。
【0052】
<モード内処理>
自動撮影モード処理(ステップS710)では、各検出情報(画像、音、時間、振動、場所、体の変化、環境変化)に基づいて、パン・チルトやズームを駆動して被写体を自動探索する。そして、撮影者の好みの撮影が行えるタイミングであると判定されると自動で撮影が行われる。
(2)自動編集モード
<モード判定条件>
前回自動編集を行ってからの経過時間、過去の撮影画像情報から、自動編集を行うべきと判定されると、自動編集モードに設定される。
【0053】
<モード内処理>
自動編集モード処理(ステップS712)では、学習に基づいた静止画像や動画像の選抜処理を行い、学習に基づいて、画像効果や編集後動画の時間などにより、一つの動画にまとめたハイライト動画を作成する自動編集処理が行われる。
(3)画像転送モード
<モード判定条件>
外部装置301内の専用のアプリケーションを用いた指示により、画像自動転送モードに設定されている場合、前回画像転送を行ってからの経過時間と過去の撮影画像情報から、自動転送を行うべきと判定されると、自動画像転送モードに設定される。
【0054】
<モード内処理>
画像自動転送モード処理(ステップS714)では、カメラ101は、ユーザの好みに合うであろう画像を自動で抽出し、外部装置301にユーザの好みと思われる画像を自動で転送する。ユーザの好みの画像抽出は、後述する各画像に付加されたユーザの好みを判定したスコアにより行われる。
(4)学習モード
<モード判定条件>
前回学習処理を行ってからの経過時間と、学習に使用することのできる画像に一体となった情報や学習データの数などから、自動学習を行うべきと判定されると、自動学習送モードに設定される。または、外部装置301からの通信を介して学習モードが設定されるように指示があった場合もこのモードに設定される。
【0055】
<モード内処理>
学習モード処理(ステップS716)では、外部装置301での各操作情報(カメラからの画像取得情報、専用アプリケーションを介して手動編集した情報、カメラ内の画像に対してユーザが入力した判定値情報)、外部装置301からの学習情報の通知などに基づいて、ニューラルネットワークを用いて、ユーザの好みに合わせた学習を行う。また、個人認証の登録、音声登録、音シーン登録、一般物体認識登録などの、検出に関する学習や、上述した低消費電力モードの条件などの学習も同時に行われる。
(5)ファイル自動削除モード
<モード判定条件>
前回ファイル自動削除を行ってからの経過時間と、画像を記録している不揮発性メモリ216の残容量とに基づいて、ファイル自動削除を行うべきと判定されると、ファイル自動削除モードに設定される。
【0056】
<モード内処理>
ファイル自動削除モード処理(ステップS718)では、不揮発性メモリ216内の画像の中から、各画像のタグ情報と撮影された日時などから自動削除されるべきファイルを指定し削除する。
【0057】
以上の各モードにおける処理の詳細については、後述する。
【0058】
図7の説明に戻り、ステップS705で低消費電力モードでないと判定されると、ステップS709に進み、モード設定が自動撮影モードであるか否かを判定する。判定の結果、自動撮影モードであればステップS710に進み、自動撮影モード処理が行われる。処理が終了すると、ステップS702に戻り、処理を繰り返す。ステップS709で、自動撮影モードでないと判定されると、ステップS711に進む。
【0059】
ステップS711では、モード設定が自動編集モードであるか否かを判定し、自動編集モードであればステップS712に進み、自動編集モード処理が行われる。処理が終了すると、ステップS702に戻り、処理を繰り返す。ステップS711で、自動編集モードでないと判定されると、ステップS713に進む。なお、自動編集モードは、本発明の主旨に直接関係しないため、詳細な説明は省略する。
【0060】
ステップS713では、モード設定が画像自動転送モードであるか否かを判定し、画像自動転送モードであればステップS714に進み、画像自動転送モード処理が行われる。処理が終了すると、ステップS702に戻り、処理を繰り返す。ステップS713で、画像自動転送モードでないと判定されると、ステップS715に進む。なお、画像自動転送モードは、本発明の主旨に直接関係しないため、詳細な説明は省略する。
【0061】
ステップS715では、モード設定が学習モードであるか否かを判定し、学習モードであればステップS716に進み、学習モード処理が行われる。処理が終了すると、ステップS702に戻り、処理を繰り返す。ステップS715で、学習モードでないと判定されると、ステップS717に進む。
【0062】
ステップS717では、モード設定がファイル自動削除モードであるか否かを判定し、ファイル自動削除モードであればステップS718に進み、ファイル自動削除モード処理が行われる。処理が終了すると、ステップS702に戻り、処理を繰り返す。ステップS717で、ファイル自動削除モードでないと判定されると、ステップS702に戻り、処理を繰り返す。なお、ファイル自動削除モードは、本発明の主旨に直接関係しないため、詳細な説明は省略する。
【0063】
図8は、本実施形態におけるカメラ101の第2制御部211が受け持つ動作の例を説明するフローチャートである。
【0064】
ユーザがカメラ101に設けられた電源ボタンを操作すると、第1電源部210から第1制御部223及びカメラ101の各ブロックに電力が供給される。また、同様に、第2電源部212から第2制御部211に電力が供給される。
【0065】
電力が供給されると、第2制御部(SubCPU)211が起動され、図8の処理がスタートする。ステップS801では、所定サンプリング周期が経過したか否かを判定する。所定サンプリング周期は、例えば10msecに設定され、10msec周期で、ステップS802に進む。所定サンプリング周期が経過していないと判定されると、第2制御部211はそのまま待機する。
【0066】
ステップS802では、学習情報の読み込みが行われる。学習情報は、図7のステップS706での第2制御部211へ情報を通信する際に転送された情報であり、例えば以下の情報が含まれる。
(1)特定揺れ検出の判定(後述するステップS804で用いる)
(2)特定音検出の判定(後述するステップS805で用いる)
(3)時間経過の判定(後述するステップS807で用いる)
ステップS802で学習情報が読み込まれると、ステップS803に進み、揺れ検出値が取得される。揺れ検出値は、装置揺れ検出部209におけるジャイロセンサや加速度センサなどの出力値である。
【0067】
ステップS803で揺れ検出値が取得されると、ステップS804に進み、予め設定された特定の揺れ状態の検出処理を行う。ここでは、ステップS802で読み込まれた学習情報によって、判定処理を変更する。いくつかの例について説明する。
【0068】
<タップ検出>
ユーザがカメラ101を例えば指先などで叩いた状態(タップ状態)を、カメラ101に取り付けられた加速度センサ107の出力値から検出することが可能である。3軸の加速度センサ107の出力を、所定サンプリング周期で、特定の周波数領域に設定したバンドパスフィルタ(BPF)に通すことで、タップによる加速度変化の信号領域を抽出することができる。BPFに通した後の加速度信号が、所定時間TimeAの間に、所定閾値ThreshAを超えた回数が、所定回数CountAであるか否かにより、タップ検出を行う。ダブルタップの場合は、CountAは2に設定され、トリプルタップの場合は、CountAは3に設定される。また、TimeAやThreshAについても、学習情報によって変化させることができる。
【0069】
<揺れ状態の検出>
カメラ101の揺れ状態を、カメラ101に取り付けられたジャイロセンサ106や加速度センサ107の出力値から検出することが可能である。ジャイロセンサ106や加速度センサ107の出力の高周波成分をハイパスフィルタ(HPF)でカットし、低周波成分をローパスフィルタ(LPF)でカットした後、絶対値変換を行う。算出した絶対値が、所定時間TimeBの間に、所定閾値ThreshBを超えた回数が、所定回数CountB以上であるか否かにより、振動検出を行う。これにより、例えばカメラ101を机などに置いたような揺れが小さい状態か、カメラ101をウエアラブルカメラとして体に装着して歩いているような揺れが大きい状態かを判定することが可能である。また、判定閾値や判定のカウント数の条件を複数設けることにより、揺れレベルに応じた細かい揺れ状態を検出することも可能である。TimeBやThreshBやCountBについても、学習情報によって変化させることができる。
【0070】
上記では、揺れ検出センサの検出値を判定することにより、特定の揺れ状態を検出する方法について説明した。しかし、所定時間内でサンプリングされた揺れ検出センサのデータから、ニューラルネットワークを用いた揺れ状態判定器に入力することで、学習させたニューラルネットワークにより、事前に登録しておいた特定の揺れ状態を検出することも可能である。その場合、ステップS802での学習情報読み込みはニューラルネットワークの重みパラメータとなる。
【0071】
ステップS804で特定の揺れ状態の検出処理が行われると、ステップS805に進み、予め設定された特定の音の検出処理を行う。ここでは、ステップS802で読み込まれた学習情報によって、検出判定処理を変更する。いくつかの例について説明する。
【0072】
<特定音声コマンド検出>
特定の音声コマンドを検出する。音声コマンドは事前に登録されたいくつかのコマンドの他、ユーザが特定音声をカメラに登録できる。
【0073】
<特定音シーン認識>
予め大量の音声データに基づいて、機械学習により学習させたネットワークにより音シーンの判定を行う。例えば、「歓声が上がっている」、「拍手している」、「声を発している」などの特定シーンを検出する。検出するシーンは学習によって変化する。
【0074】
<音レベル判定>
音声レベルの大きさが所定時間の間、所定の大きさを超えているかを判定することよって、音レベルの検出を行う。所定時間や所定の大きさなどが学習によって変化する。
【0075】
<音方向判定>
平面上に配置された複数のマイクにより、所定の大きさの音について、音の方向を検出する。
【0076】
音声処理部214内で上記の判定処理が行われ、事前に学習された各設定により、特定の音の検出がされたかをステップS805で判定する。
【0077】
ステップS805で特定の音の検出処理が行われると、ステップS806に進み、第1制御部223の電源がOFF状態であるか否かを判定する。第1制御部223(MainCPU)がOFF状態であれば、ステップS807に進み、予め設定された時間の経過検出処理を行う。ここでは、ステップS802で読み込まれた学習情報によって、検出判定処理を変更する。学習情報は、図7で説明したステップS706での第2制御部211へ情報を通信する際に転送された情報である。第1制御部223がONからOFFへ遷移したときからの経過時間が計測され、経過時間が所定の時間TimeC以上であれば、時間が経過したと判定し、TimeCより短かければ、時間が経過していないと判定される。TimeCは、学習情報によって変化するパラメータである。
【0078】
ステップS807で時間経過検出処理が行われると、ステップS808に進み、低消費電力モードを解除する条件が成立したか否かを判定する。低消費電力モード解除は以下の条件によって判定される。
(1)特定の揺れが検出されたこと
(2)特定の音が検出されたこと
(3)所定の時間が経過したこと
(1)については、ステップS804での特定揺れ状態検出処理により、特定の揺れが検出されたか否かが判定されている。(2)については、ステップS805での特定音検出処理により、特定の音が検出されたか否かが判定されている。(3)については、ステップS807での時間経過検出処理により、所定の時間が経過したか否かが判定されている。(1)~(3)の少なくとも1つが成立すれば、低消費電力モード解除を行うように判定される。
【0079】
ステップS808で低消費電力モードの解除が判定されると、ステップS809に進み第1制御部223の電源をONし、ステップS810で、低消費電力モードの解除が判定された条件(揺れ、音、時間のいずれか)を第1制御部223に通知する。そして、ステップS801に戻り処理をループする。ステップS808で何れの解除条件にも当てはまらず、低消費電力モード解除の条件ではないと判定されると、ステップS801に戻り処理をループする。
【0080】
一方、ステップS806で、第1制御部223がON状態であると判定された場合、ステップS811に進み、ステップS803~S805までで取得した情報を第1制御部223に通知し、ステップS801に戻り処理をループする。
【0081】
本実施形態においては、第1制御部223がON状態である場合でも、揺れ検出や特定音の検出を第2制御部211で行い、検出結果を第1制御部223に通知する構成にしている。しかし、第1制御部223がONの場合は、ステップS803~S805の処理を行わず、第1制御部223内の処理(図7のステップS702)で揺れ検出や特定音の検出を行う構成にしてもよい。
【0082】
上述したように、図7のステップS704~S707や、図8の処理を行うことにより、低消費電力モードに移行する条件や低消費電力モードを解除する条件が、ユーザの操作に基づいて学習される。そして、カメラ101を所有するユーザの使い勝手に合わせたカメラ動作を行うことが可能となる。学習の方法については後述する。
【0083】
なお、上記において、揺れ検出や音検出や時間経過により低消費電力モードを解除する方法について詳しく説明したが、環境情報により低消費電力モードの解除を行ってもよい。環境情報は、温度、気圧、明るさ、湿度、紫外線量の絶対量や変化量が所定閾値を超えたか否かにより判定することができ、後述する学習により閾値を変化させることもできる。
【0084】
また、揺れ検出や音検出や時間経過の検出情報や、各環境情報の絶対値や変化量をニューラルネットワークに基づいて判断し、低消費電力モードを解除する判定をしてもよい。この判定処理は、後述する学習によって、判定条件を変更することができる。
【0085】
<自動撮影モード処理>
図9を用いて、自動撮影モード処理について説明する。まず、ステップS901において、撮像部206により取り込まれた信号に対して、画像処理部207で画像処理を行い、被写体検出用の画像を生成する。生成された画像に対して、人物や物体などを検出する被写体検出処理が行われる。
【0086】
人物を検出する場合、被写体の顔や人体を検出する。顔検出処理では、人物の顔を判断するためのパターンが予め定められており、撮像された画像内においてそのパターンに一致する箇所を、人物の顔領域として検出することができる。また、被写体の顔としての確からしさを示す信頼度も同時に算出する。信頼度は、例えば画像内における顔領域の大きさや、顔パターンとの一致程度等から算出される。物体認識についても同様に、予め登録されたパターンに一致する物体を認識することができる。
【0087】
また、撮像された画像内の色相や彩度等のヒストグラムを用いて特徴被写体を抽出する方法などもある。撮影画角内に捉えられている被写体の画像に関し、その色相や彩度等のヒストグラムから導出される分布を複数の区間に分け、区間ごとに撮像された画像を分類する処理が実行される。例えば、撮像された画像について複数の色成分のヒストグラムが作成され、その山型の分布範囲で区分けされ、同一の区間の組み合わせに属する領域において撮像された画像が分類され、被写体の画像領域が認識される。認識された被写体の画像領域ごとに評価値を算出することで、その評価値が最も高い被写体の画像領域を主被写体領域として判定することができる。以上の方法で、撮像情報から各被写体情報を得ることができる。
【0088】
ステップS902では、像ブレ補正量の算出を行う。具体的には、まず、装置揺れ検出部209において取得した角速度および加速度情報に基づいてカメラの揺れの絶対角度を算出する。そして、その絶対角度を打ち消す角度方向にチルト回転ユニット104およびパン回転ユニット105を動かして像ブレを補正する角度を求め、像ブレ補正量とする。なお、ここでの像ブレ補正量算出処理は、後述する学習処理によって、算出方法を変更することが出来る。
【0089】
ステップS903では、カメラの(保持)状態判定を行う。角速度情報や加速度情報やGPS位置情報などで検出したカメラ角度やカメラ移動量などにより、現在カメラがどのような振動/動き状態なのかを判定する。例えば、車にカメラ101を装着して撮影する場合、移動された距離によって大きく周りの風景などの被写体情報が変化する。そのため、車などに装着して速い速度で移動している「乗り物移動状態」か否かを判定し、後に説明する自動被写体探索に使用する。また、カメラの角度の変化が大きいか否かを判定し、カメラ101の揺れがほとんどない「置き撮り状態」であるのかを判定する。「置き撮り状態」である場合は、カメラ101自体の位置変化はないと考えてよいので、置き撮り用の被写体探索を行うことができる。また、比較的カメラの角度変化が大きい場合は、「手持ち状態」と判定され、手持ち用の被写体探索を行うことができる。
【0090】
ステップS904では、被写体探索処理を行う。被写体探索は、以下の処理によって構成される。
(1)エリア分割
(2)エリア毎の重要度レベルの算出
(3)探索対象エリアの決定
以下、各処理について順次説明する。
【0091】
(1)エリア分割
図10を用いて、エリア分割について説明する。図10(a)のようにカメラ(原点Oがカメラ位置とする)位置を中心として、全周囲でエリア分割を行う。図10(a)の例においては、チルト方向、パン方向をそれぞれ22.5度ごとに分割している。図10(a)のように分割すると、チルト方向の角度が0度から離れるにつれて、水平方向の円周が小さくなり、エリア領域が小さくなる。よって、図10(b)のように、チルト角度が45度以上の場合、水平方向のエリア範囲を22.5度よりも大きく設定している。
【0092】
図10(c)、10(d)に撮影画角内でのエリア分割された領域の例を示す。軸1301は初期化時のカメラ101の向きであり、この方向を基準位置としてエリア分割が行われる。1302は、撮像されている画像の画角エリアを示しており、そのときの画像例を図10(d)に示す。撮像されている画角の画像内では、エリア分割に基づいて、図10(d)で符号1303~1318で示されるように画像が分割される。
【0093】
(2)エリア毎の重要度レベルの算出
上記のように分割した各エリアについて、エリア内に存在する被写体の状況やシーンの状況に応じて、探索を行う優先順位を示す重要度レベルを算出する。被写体の状況に基づいた重要度レベルは、例えば、エリア内に存在する人物の数、人物の顔の大きさ、顔の向き、顔検出の確からしさ、人物の表情、人物の個人認証結果等に基づいて算出される。また、シーンの状況に応じた重要度レベルは、例えば、一般物体認識結果、シーン判別結果(青空、逆光、夕景など)、エリアの方向からする音のレベルや音声認識結果、エリア内の動き検知情報等に基づいて算出される。
【0094】
また、図9のカメラ状態判定(ステップS903)で、カメラの振動が検出されている場合、振動状態に応じても重要度レベルが変化するようにすることもできる。例えば、「置き撮り状態」と判定された場合、顔認証で登録されている中で優先度の高い被写体(例えばカメラの所有者)を中心に被写体探索が行われるように判定される。また、後述する自動撮影も例えばカメラの所有者の顔を優先して行われる。これにより、カメラの所有者がカメラを身に着けて持ち歩き撮影を行っている時間が多くても、カメラを取り外して机の上などに置くことで、所有者が写った画像も多く残すことができる。このときパン・チルトにより顔の探索が可能であることから、カメラの置き角度などを考えなくても、適当に設置するだけで所有者が写った画像やたくさんの顔が写った集合写真などを残すことができる。
【0095】
なお、上記の条件だけでは、各エリアに変化がない限りは、最も重要度レベルが高いエリアが同じとなり、その結果探索されるエリアがずっと変わらないことになってしまう。そこで、過去の撮影情報に応じて重要度レベルを変化させる。具体的には、所定時間継続して探索エリアに指定され続けたエリアは重要度レベルを下げたり、後述するステップS910において撮影を行ったエリアでは、所定時間の間重要度レベルを下げてもよい。
【0096】
さらに、カメラの所有者がカメラを身に着ける場合や、車などに装着した場合など、カメラが移動しているときには、パン・チルトして周辺の被写体探索をしても、撮影するときには既に被写体が見えなくなっている場合がある。あるいは、遠ざかって小さくなり過ぎてしまい、被写体探索がムダになってしまうことがある。そのため、ステップS903で検出したカメラの角速度情報、加速度情報、GPS位置情報、さらには撮影画像中から座標ごとに算出した動きベクトルなどから、カメラの移動方向や移動速度を算出する。そして、それらに基づいて、進行方向から遠いエリアは最初から被写体は無いものとしてもよいし、逆に重要被写体を撮り逃さないために、高速移動中は被写体探索時間間隔を短くするなど、探索時間間隔を移動速度に応じて変化させてもよい。
【0097】
具体的に、カメラを首から下げた状態について図10(e)を用いて説明する。図10(e)は上空から人を見降ろした状態を示す模式図である。1320は人(カメラの所有者)、1321はカメラを示し、1322および1323はそれぞれ被写体探索範囲を示している。被写体探索範囲は、例えばカメラの進行方向1324に対してほぼ左右均等な角度範囲に設定される。被写体探索範囲1322は、人が完全に停止している状態での被写体探索範囲を示している。360度探索しないのは、カメラの所有者の体や服が一定領域以上を占める画角にならないように制限して、カメラの所有者の体の写り込みを防ぐためである。
【0098】
被写体探索範囲1323は、人が図の上方(進行方向1324)へ移動しているときの探索範囲を示している。このように、被写体探索範囲は、移動速度が早ければ狭く、遅ければ広くするなど、移動速度に応じて変更することで、適応的にムダの無い被写体探索が可能となる。図10(e)は水平方向の被写体探索範囲の変化しか表していないが、垂直方向も同様に行うものとする。また、ここで言う進行方向は、角速度計106や加速度計107の一定の期間の計測結果に基づいて算出している。これにより、不安定な動きであっても頻繁に探索範囲が変化することを防ぐことができる。
さらに進行方向の急激な変化により、被写体探索範囲が不定になることを防止するために、過去の進行方向を考慮して敏感度を下げてもよい。図10(e)は、カメラを首から下げた状態を示しているが、机上に設置したことが判定できれば、移動速度で被写体探索範囲を変える処理は省くことができる。そのため、手持ち状態、首下げ状態、ウエアラブル状態、机上に設置状態、動体に設置した状態などのカメラの状態の変化に応じて、被写体探索処理を変えるようにしてもよい。移動情報に応じて、被写体探索範囲を変えることで、被写体探索のムダを無くし、電池の消費を減らすことにも役立つ。
【0099】
(3)探索対象エリアの決定
上記のように各エリアの重要度レベルが算出されたら、重要度レベルが高いエリアを探索対象エリアとして決定する。そして、探索対象エリアを画角に捉えるために必要なパン・チルト探索目標角度を算出する。
【0100】
図9の説明に戻って、ステップS905では、パン・チルト駆動を行う。具体的には、制御サンプリング周波数での、像ブレ補正量と、パン・チルト探索目標角度に基づいた駆動角度とを加算することにより、パン・チルト駆動量を算出する。そして、鏡筒回転駆動部205によって、チルト回転ユニット104、パン回転ユニット105をそれぞれ駆動制御する。
【0101】
ステップS906ではズームユニット201を制御し、ズーム駆動を行う。具体的には、ステップS904で決定した探索対象被写体の状態に応じてズームを駆動させる。例えば、探索対象被写体が人物の顔である場合、画像上の顔が小さすぎると検出可能な最小サイズを下回ることで検出が出来ず、見失ってしまう恐れがある。そのような場合は、望遠側にズームすることで画像上の顔のサイズが大きくなるように制御する。一方で、画像上の顔が大きすぎる場合、被写体やカメラ自体の動きによって被写体が画角から外れやすくなってしまう。そのような場合は、広角側にズームすることで、画面上の顔のサイズが小さくなるように制御する。このようにズーム制御を行うことで、被写体を追跡するのに適した状態を保つことが出来る。
【0102】
ステップS907では、手動による撮影指示があったか否かを判定し、手動撮影指示があった場合、ステップS910に進む。この時、手動による撮影指示は、シャッターボタン押下によるもの、カメラ筺体を指等で軽く叩くこと(タップ)によるもの、音声コマンド入力によるもの、外部装置からの指示によるものなどのいずれでもよい。タップ操作をトリガーとする撮影指示は、ユーザがカメラ筺体をタップした際、装置揺れ検出部209によって短期間に連続した高周波の加速度を検知することにより判定される。音声コマンド入力は、ユーザが所定の撮影を指示する合言葉(例えば「写真とって」等)を発声した場合、音声処理部214で音声を認識し、撮影のトリガーとする撮影指示方法である。外部装置からの指示は、例えばカメラとBlueTooth接続したスマートフォン等から、専用のアプリケーションを用いて送信されたシャッター指示信号をトリガーとする撮影指示方法である。
【0103】
ステップS907で手動による撮影指示がなかった場合には、ステップS908に進み、自動撮影判定を行う。自動撮影判定では、自動撮影を行うか否かの判定と、撮影方法の判定(静止画撮影、動画撮影、連写、パノラマ撮影などの内どれを実行するかの判定)を行う。
【0104】
<自動撮影を行うか否かの判定>
自動撮影を行うか否かの判定は以下のように行われる。具体的には、以下の2つの場合に、自動撮影を実行すると判定する。1つは、ステップS904において得られたエリア別の重要度レベルに基づき、重要度レベルが所定値を超えている場合、自動撮影を実施すると判定する。2つめは、ニューラルネットワークに基づく判定である。
【0105】
ニューラルネットワークの一例として、多層パーセプトロンによるネットワークの例を図11に示す。ニューラルネットワークは、入力値から出力値を予測することに使用されるものであり、予め入力値と、その入力に対して模範となる出力値とを学習しておくことで、新たな入力値に対して、学習した模範に倣った出力値を推定することができる。なお、学習の方法は後述する。図11の1201およびその縦に並ぶ丸は入力層のニューロンを示し、1203およびその縦に並ぶ丸は中間層のニューロンを示し、1204は出力層のニューロンを示す。1202で示すような矢印は各ニューロンを繋ぐ結合を示している。ニューラルネットワークに基づく判定では、入力層のニューロンに対して、現在の画角中に写る被写体や、シーンやカメラの状態に基づいた特徴量を入力として与え、多層パーセプトロンの順伝播則に基づく演算を経て出力層から出力された値を得る。そして、出力の値が閾値以上であれば、自動撮影を実施する判定を下す。なお、被写体の特徴としては、現在のズーム倍率、現在の画角における一般物体認識結果、顔検出結果、現在画角に写る顔の数、顔の笑顔度、目瞑り度、顔角度、顔認証ID番号、被写体人物の視線角度、シーン判別結果、前回撮影時からの経過時間、現在時刻、GPS位置情報および前回撮影位置からの変化量、現在の音声レベル、声を発している人物、拍手、歓声が上がっているか否か、振動情報(加速度情報、カメラ状態)、環境情報(温度、気圧、照度、湿度、紫外線量)等を使用する。更に、外部装置501からの情報通知がある場合、通知情報(ユーザの運動情報、腕のアクション情報、心拍などの生体情報など)も特徴として使用する。この特徴を所定の範囲の数値に変換し、特徴量として入力層の各ニューロンに与える。そのため、入力層の各ニューロンは上記使用する特徴量の数だけ必要となる。
【0106】
なお、このニューラルネットワークに基づく判断は、後述する学習処理で各ニューロン間の結合重みを変化させることによって、出力値を変化させることができ、判断の結果を学習結果に適応させることが出来る。
【0107】
また、図7のステップS702で読み込んだ第1制御部223の起動条件によって、自動撮影の判定も変化する。例えば、タップ検出による起動や特定音声コマンドによる起動の場合は、ユーザが現在撮影してほしいための操作である可能性が非常に高い。そこで、撮影頻度が多くなるように設定される。
【0108】
<撮影方法の判定>
撮影方法の判定では、ステップS901~S904において検出した、カメラの状態や周辺の被写体の状態に基づいて、静止画撮影、動画撮影、連写撮影、パノラマ撮影などの内どれを実行するかを判定する。例えば、被写体(人物)が静止している場合は静止画撮影を実行し、被写体が動いている場合は動画撮影または連写撮影を実行する。また、被写体がカメラを取り囲むように複数存在している場合や、前述したGPS情報に基づいて景勝地であるということが判断出来ている場合には、パン・チルトを操作させながら順次撮影した画像を合成してパノラマ画像を生成するパノラマ撮影処理を実行してもよい。なお、<自動撮影を行うか否かの判定>での判定方法と同様に、撮影前に検出した各種情報をニューラルネットワークに基づいて判断し、撮影方法を決定することもできる。また、この判定処理では、後述する学習処理によって、判定条件を変更することも出来る。
【0109】
図9の説明に戻って、ステップS909では、ステップS908の自動撮影判定により自動撮影する判定が下された場合、ステップS910に進み、自動撮影する判定が下されなかった場合、自動撮影モード処理を終了する。
【0110】
ステップS910では、自動撮影を開始する。この時、ステップS908において判定された撮影方法による撮影を開始する。その際、フォーカス駆動制御部204によるオートフォーカス制御を行う。また、不図示の絞り制御部およびセンサゲイン制御部、シャッター制御部を用いて、被写体が適切な明るさになるような露出制御を行う。さらに、撮影後には画像処理部207において、オートホワイトバランス処理、ノイズリダクション処理、ガンマ補正処理等、種々の公知の画像処理が行われ、画像が生成される。
【0111】
なお、この撮影の際に、所定の条件を満たした場合、カメラが撮影対象となる人物に対し撮影を行う旨を報知した上で撮影するようにしてもよい。報知の方法として、例えば、音声出力部218からの発音やLED制御部224によるLED点灯等を使用してもよい。所定の条件は、例えば、画角内における顔の数、顔の笑顔度、目瞑り度、被写体人物の視線角度や顔角度、顔認証ID番号、個人認証登録されている人物の数、撮影時の一般物体認識結果、シーン判別結果、前回撮影時からの経過時間、撮影時刻、GPS情報に基づく現在位置が景勝地であるか否か、撮影時の音声レベル、声を発している人物の有無、拍手、歓声が上がっているか否か、振動情報(加速度情報、カメラ状態)、環境情報(温度、気圧、照度、湿度、紫外線量)等である。これらの条件に基づいて報知撮影を行うことによって、重要性が高いシーンにおいて好ましいカメラ目線の画像を残すことが出来る。
【0112】
このような撮影前の報知についても、撮影画像の情報、或いは撮影前に検出した各種情報をニューラルネットワークに基づいて判断し、報知の方法やタイミングを決定することもできる。また、この判定処理では、後述する学習処理によって、判定条件を変更することも出来る。
【0113】
ステップS911では、ステップS910において生成した画像を加工したり、動画に追加したりといった編集処理を行う。画像加工については、具体的には、人物の顔や合焦位置に基づいたトリミング処理、画像の回転処理、HDR(ハイダイナミックレンジ)効果処理、ボケ効果処理、色変換フィルタ効果処理などである。画像加工では、ステップS910において生成した画像に基づいて、上記の処理の組み合わせによって複数の加工画像を生成し、ステップS910において生成した画像とは別に保存するようにしてもよい。また、動画処理については、撮影した動画または静止画を、生成済みの編集動画にスライド、ズーム、フェードの特殊効果処理をつけながら追加するといった処理をしてもよい。ステップS911での編集についても、撮影画像の情報、或いは撮影前に検出した各種情報をニューラルネットワークに基づいて判断し、画像加工の方法を決定することもできる。また、この判定処理では、後述する学習処理によって、判定条件を変更することも出来る。
【0114】
ステップS912では、撮影画像の学習情報生成処理を行う。ここでは、後述する学習処理に使用する情報を生成し、記録する。具体的には、今回の撮影画像における、撮影時のズーム倍率、撮影時の一般物体認識結果、顔検出結果、撮影画像に写る顔の数、顔の笑顔度、目瞑り度、顔角度、顔認証ID番号、被写体人物の視線角度、シーン判別結果、前回撮影時からの経過時間、撮影時刻、GPS位置情報および前回撮影位置からの変化量、撮影時の音声レベル、声を発している人物、拍手、歓声が上がっているか否か、振動情報(加速度情報、カメラ状態)、環境情報(温度、気圧、照度、湿度、紫外線量)、動画撮影時間、手動撮影指示によるものか否か、等である。更にユーザの画像の好みを数値化したニューラルネットワークの出力であるスコアも演算する。これらの情報を生成し、撮影画像ファイルへタグ情報として記録する。あるいは、不揮発性メモリ216へ書き込むか、記録媒体221内に、所謂カタログデータとして各々の撮影画像の情報をリスト化した形式で保存するようにしてもよい。
【0115】
ステップS913では過去の撮影情報の更新を行う。具体的には、ステップS908で説明したエリア毎の撮影枚数、個人認証登録された人物毎の撮影枚数、一般物体認識で認識された被写体毎の撮影枚数、シーン判別のシーン毎の撮影枚数について、今回撮影された画像が該当する枚数のカウントを1つ増やす。
【0116】
<学習処理>
次に、本実施形態におけるユーザの好みに合わせた学習について説明する。本実施形態では、図11に示すようなニューラルネットワークを用い、機械学習アルゴリズムを使用して、学習処理部219においてユーザの好みに合わせた学習を行う。ニューラルネットワークは、入力値から出力値を予測することに使用されるものであり、予め入力値の実績値と出力値の実績値を学習しておくことで、新たな入力値に対して、出力値を推定することができる。ニューラルネットワークを用いることにより、前述の自動撮影や自動編集、被写体探索に対して、ユーザの好みに合わせた学習を行う。また、ニューラルネットワークに入力する特徴データともなる被写体情報(顔認証や一般物体認識などの結果)の登録や、撮影報知制御や低消費電力モード制御やファイル自動削除を学習により変更する動作も行う。
【0117】
本実施形態において、学習処理が適用される動作は、以下の動作である。
(1)自動撮影
(2)自動編集
(3)被写体探索
(4)被写体登録
(5)撮影報知制御
(6)低消費電力モード制御
(7)ファイル自動削除
(8)像ブレ補正
(9)画像自動転送
なお、上記の学習処理が適用される動作のうち、自動編集、ファイル自動削除、画像自動転送については、本発明の主旨と直接関係しないので、説明を省略する。
【0118】
<自動撮影>
自動撮影に対する学習について説明する。自動撮影では、ユーザの好みに合った画像の撮影を自動で行うための学習を行う。図9のフローチャートを用いて説明したように、撮影後(ステップS910の後)に学習用情報生成処理(ステップS912)が行われている。後述する方法により学習させる画像を選択させ、画像に含まれる学習情報に基づいて、ニューラルネットワークの重みを変化させることにより学習を行わせる。
【0119】
学習は、自動撮影タイミングの判定を行うニューラルネットワークの変更と、撮影方法(静止画撮影、動画撮影、連写、パノラマ撮影など)の判定を行うニューラルネットワークの変更により行われる。
【0120】
<被写体探索>
被写体探索に対する学習について説明する。被写体探索では、ユーザの好みに合った被写体の探索を自動的に行うための学習を行う。図9のフローチャートを用いて説明したように、被写体探索処理(ステップS904)において、各エリアの重要度レベルを算出し、パン・チルト、ズームを駆動し、被写体探索を行う。学習は撮影画像や探索中の検出情報に基づいて行われ、ニューラルネットワークの重みを変化させることで学習結果として反映される。探索動作中の各種検出情報をニューラルネットワークに入力し、重要度レベルの判定を行うことにより、学習を反映した被写体探索を行う。また、重要度レベルの算出以外にも、例えば、パン・チルト探索方法(速度、動かす頻度)の制御や、カメラの移動速度に応じた被写体探索領域の制御も行う。さらに、前述のカメラの状態毎に異なるニューラルネットワークを持ち、現在のカメラの状態に適したニューラルネットワークを適用することで最適な被写体探索を行う。
【0121】
<被写体登録>
被写体登録に対する学習について説明する。被写体登録では、ユーザの好みに合った被写体の登録やランク付けを自動的に行うための学習を行う。学習として、例えば、顔認証登録や一般物体認識の登録、ジェスチャーや音声認識、音によるシーン認識の登録を行う。人と物体に対する認証登録を行い、画像の取得される回数や頻度、手動撮影される回数や頻度、探索中の被写体の現れる頻度からランク付けの設定を行う。登録された情報は、各ニューラルネットワークを用いた判定のための入力として登録されることになる。
【0122】
<撮影報知制御>
撮影報知に対する学習について説明する。図9のステップS910で説明したように、撮影直前に、所定の条件を満たしたとき、カメラが撮影対象となる人物に対して撮影を行う旨を報知した上で撮影することを行う。例えば、パン・チルトを駆動することにより視覚的に被写体の視線を誘導したり、音声出力部218から発するスピーカー音や、LED制御部224によるLED点灯光を使用して被写体の注意を誘導したりする。上記の報知の直後に、被写体の検出情報(例えば、笑顔度、目線検出、ジェスチャー)が得られたか否かに基づいて、検出情報を学習に使用するかを判定し、ニューラルネットワークの重みを変化させることで学習する。
【0123】
撮影直前の各検出情報をニューラルネットワークに入力し、報知を行うか否かの判定や、各動作(音(音レベル/音の種類/タイミング)、光(点灯時間、スピード)、カメラの向き(パン・チルトモーション))の判定を行う。
【0124】
<低消費電力モード制御>
図7図8を用いて、説明したようにMainCPU(第1制御部223)への電源供給をON/OFFする制御を行うが、低消費電力モードからの復帰条件や、低消費電力状態への遷移条件の学習も行う。低消費電力モードを解除する条件の学習について説明する。
【0125】
<タップ検出>
上述したとおり、所定時間TimeAや所定閾値ThreshAを学習により変化させる。上記のタップ検出の閾値を下げた状態での仮タップ検出も行っており、タップ検出前に仮タップ検出が判定されていたか否かにより、TimeAやThreshAのパラメータを検出し易いように設定する。また、タップ検出後のカメラ検出情報から、起動要因ではなかったと判定された場合、TimeAやThreshAのパラメータをタップ検出し難いように設定する。
【0126】
<揺れ状態検出>
上述したとおり、所定時間TimeB、所定閾値ThreshB、所定回数CountBなどを学習により変化させる。揺れ状態の判定結果が起動条件に入った場合、起動を行うが、起動後所定時間の間のカメラ検出情報から、起動要因ではなかったと判定されると、揺れ状態判定により起動し難いように学習する。また、揺れが大きい状態での撮影頻度が高いと判定されると、揺れ状態判定により起動し難いように設定する。
【0127】
<音検出>
ユーザが特定音声や検出したい特定音シーンや特定音レベルを、例えば外部装置301の専用アプリケーションを用いた通信により、手動で設定することで学習することができる。また、複数の検出方法を音声処理部に予め設定しておき、後述する方法により学習させる画像を選択させ、画像に含まれる前後音情報を学習し、起動要因とする音判定(特定音コマンドや、「歓声」、「拍手」などの音シーン)を設定することで学習することもできる。
【0128】
<環境情報検出>
ユーザが起動条件としたい環境情報変化を、例えば外部装置301の専用アプリケーションを用いた通信により、手動で設定することで学習することができる。例えば、温度、気圧、明るさ、湿度、紫外線量の絶対量や変化量等の特定条件によって起動させることができる。各環境情報に基づく判定閾値を学習することもできる。環境情報による起動後のカメラ検出情報から、起動要因ではなかったと判定されると、各判定閾値のパラメータを環境変化を検出し難いように設定する。
【0129】
また、上記の各パラメータは、電池の残容量によっても変化する。例えば、電池残量が少ないときは各種判定に入り難くなり、電池残量が多いときは各種判定に入り易くなる。具体的には、ユーザが必ずカメラを起動してほしい要因ではない揺れ状態検出結果や、音シーン検出結果でも、電池残量が多い場合には、カメラを起動すると判定されてしまう場合もある。
【0130】
また、低消費電力モード解除条件の判定は、揺れ検出、音検出、時間経過検出の情報、各環境情報、電池残量等からニューラルネットワークに基づいて行うこともできる。その場合、後述する方法により学習させる画像を選択させ、画像に含まれる学習情報に基づいて、ニューラルネットワークの重みを変化させることにより学習する。
【0131】
次に、低消費電力状態への遷移条件の学習について説明する。図7に示したとおり、ステップS704のモード設定判定において、「自動撮影モード」「自動編集モード」「画像自動転送モード」「学習モード」「ファイル自動削除モード」の何れでもないと判定されると、低消費電力モードに入る。各モードの判定条件については、上述したとおりであるが、各モードが判定される条件についても学習によって変化する。
【0132】
<自動撮影モード>
上述したとおり、エリア毎の重要度レベルを判定し、パン・チルトで被写体探索をしながら自動撮影を行うが、撮影される被写体が存在しないと判定されると、自動撮影モードが解除される。例えば、すべのエリアの重要度レベルや、各エリアの重要度レベルを加算した値が、所定閾値以下になったとき、自動撮影モードを解除する。このとき、自動撮影モードに遷移してからの経過時間によって所定閾値を下げていくことも行われる。自動撮影モードに遷移してからの経過時間が長くなるにつれて低消費電力モードへ移行し易くしている。
【0133】
また、電池の残容量によって所定閾値を変化させることにより、電池もちを考慮した低消費電力モード制御を行うことができる。例えば、電池残量が少ないときは閾値を大きくして低消費電力モードに移行しやすくし、電池残量が多いときは閾値を小さくして低消費電力モードに移行し難くする。ここで、前回自動撮影モードに遷移してからの経過時間と撮影枚数によって、第2制御部211(SubCPU)に対して、次回の低消費電力モード解除条件のパラメータ(経過時間閾値TimeC)を設定する。上記の各閾値は学習によって変化する。学習は、例えば外部装置301の専用アプリケーションを用いた通信により、手動で撮影頻度や起動頻度などを設定することで行われる。
【0134】
また、カメラ101の電源ボタンをONしてから、電源ボタンをOFFするまでの経過時間の平均値や時間帯ごとの分布データを蓄積し、各パラメータを学習する構成にしてもよい。その場合、電源ONからOFFまでの時間が短いユーザに対しては低消費電力モードからの復帰や、低消費電力状態への遷移の時間間隔が短くなり、電源ONからOFFまでの時間が長いユーザに対しては間隔が長くなるように学習される。
【0135】
また、探索中の検出情報によっても学習される。学習によって設定された重要となる被写体が多いと判断されている間は、低消費電力モードからの復帰や、低消費電力状態への遷移の時間間隔が短くなり、重要となる被写体が少ない間は、間隔が長くなるように学習される。
【0136】
<像ブレ補正>
像ブレ補正に対する学習について説明する。像ブレ補正は、図9のステップS902で補正量を算出し、補正量に基づいてステップS905でパン・チルトを駆動することにより行われる。像ブレ補正では、ユーザの揺れの特徴に合わせた補正を行うための学習を行う。撮影画像に対して、例えば、PSF(Point Spread Function)を用いることにより、ブレの方向及び大きさを推定することが可能である。図9のステップS912の学習用情報生成では、推定したブレの方向と大きさが、情報として画像に付加される。
【0137】
図7のステップS716での学習モード処理内で、推定したブレの方向と大きさを出力として、撮影時の各検出情報(撮影前所定時間における画像の動きベクトル情報、検出した被写体(人や物体)の動き情報、振動情報(ジャイロ出力、加速度出力、カメラ状態)を入力として、像ブレ補正用のニューラルネットワークの重みを学習させる。他にも、環境情報(温度、気圧、照度、湿度)、音情報(音シーン判定、特定音声検出、音レベル変化)、時間情報(起動からの経過時間、前回撮影時からの経過時間)、場所情報(GPS位置情報、位置移動変化量)なども入力に加えて判定してもよい。
【0138】
ステップS902での像ブレ補正量の算出時において、上記各検出情報をニューラルネットワークに入力することにより、その瞬間撮影したときのブレの大きさを推定することができる。そして、推定したブレの大きさが大きいときは、シャッター速度を速くするなどの制御が可能となる。また、推定したブレの大きさが大きいときはブレ画像になってしまうので撮影を禁止するなどの方法もとることができる。
【0139】
また、パン・チルト駆動角度には制限があるため、駆動端に到達してしまうとそれ以上補正を行うことができないが、撮影時のブレの大きさと方向を推定することにより、露光中の像ブレを補正するためのパン・チルト駆動に必要な範囲を推定することができる。露光中の可動範囲の余裕がない場合は、像ブレ補正量を算出するフィルタのカットオフ周波数を大きくして、可動範囲を超えないように設定することにより、大きなブレを抑制することもできる。また、可動範囲を超えそうな場合は、露光直前にパン・チルトの角度を可動範囲を超えそうな方向とは逆の方向に回転してから露光開始することにより、可動範囲を確保してブレのない撮影を行うこともできる。これにより、ユーザの撮影時の特徴や使い方に合わせて像ブレ補正を学習することができるので、撮影画像がブレてしまうことを防止できる。
【0140】
また、上述した<撮影方法の判定>において、動いている被写体はブレがなく、動いていない背景が流れる撮影を行う、流し撮り撮影を行うか否かを判定してもよい。その場合、撮影前までの検出情報から、被写体をブレなく撮影するためのパン・チルト駆動速度を推定して、被写体ブレ補正を行ってもよい。この時、上記各検出情報を既に学習させているニューラルネットワークに入力することにより、駆動速度を推定することができる。学習は、画像を各ブロックに分割して、各ブロックのPSFを推定することにより、主被写体が位置するブロックでのブレの方向及び大きさを推定し、その情報に基づいて行われる。
【0141】
また、ユーザが選択した画像の情報から、背景流し量を学習することもできる。その場合、主被写体が位置しないブロックでのブレの大きさを推定し、その情報に基づいてユーザの好みを学習することができる。学習した好みの背景流し量に基づいて、撮影時のシャッター速度を設定することにより、ユーザの好みにあった流し撮り効果が得られる撮影を自動で行うことができる。
【0142】
次に、学習方法について説明する。学習方法としては、「カメラ内の学習」と「通信機器との連携による学習」がある。
【0143】
カメラ内学習の方法について、以下説明する。本実施形態におけるカメラ内学習には、以下の方法がある。
(1)手動撮影時の検出情報による学習
(2)被写体探索時の検出情報による学習
<手動撮影時の検出情報による学習>
図9のステップS907~ステップS913で説明したとおり、本実施形態においては、カメラ101は、手動撮影と自動撮影の2つの撮影を行うことができる。ステップS907で手動撮影指示があった場合には、ステップS912において、撮影画像は手動で撮影された画像であるとの情報が付加される。また、ステップS909において自動撮影ONと判定されて撮影された場合においては、ステップS912において、撮影画像は自動で撮影された画像であると情報が付加される。
【0144】
ここで、手動撮影される場合、ユーザの好みの被写体、好みのシーン、好みの場所や時間間隔に基づいて撮影された可能性が非常に高い。よって、手動撮影時に得られた各特徴データや撮影画像の学習情報を基にした学習が行われるようにする。また、手動撮影時の検出情報から、撮影画像における特徴量の抽出や個人認証の登録、個人ごとの表情の登録、人の組み合わせの登録に関して学習を行う。また、被写体探索時の検出情報からは、例えば、個人登録された被写体の表情から、近くの人や物体の重要度を変更するような学習を行う。また、上述したカメラの状態毎に異なる教師データとニューラルネットワークを持ち、撮影された時のカメラの状態に一致した教師データに追加するようにしてもよい。
【0145】
<被写体探索時の検出情報による学習>
被写体探索動作中において、個人認証登録されている被写体が、どんな人物、物体、シーンと同時に写っているかを判定し、同時に画角内に写っている時間比率を算出しておく。例えば、個人認証登録被写体の人物Aが、個人認証登録被写体の人物Bと同時に写っている時間比率を計算する。そして、人物Aと人物Bが画角内に入る場合は、自動撮影判定の点数が高くなるように、各種検出情報を学習データとして保存して、学習モード処理(ステップS716)で学習する。
【0146】
他の例では、個人認証登録被写体の人物Aが、一般物体認識により判定された被写体「猫」と同時に写っている時間比率を計算する。そして、人物Aと「猫」が画角内に入る場合は、自動撮影判定の点数が高くなるように、各種検出情報を学習データとして保存して、学習モード処理(ステップS716)で学習する。
【0147】
また、個人認証登録被写体の人物Aの高い笑顔度を検出した場合や、「喜び」「驚き」などの表情が検出された場合に、同時に写っている被写体は重要であると学習される。あるいは、「怒り」「真顔」などの表情が検出された場合に、同時に写っている被写体は重要である可能性が低いので学習することはしないなどの処理が行われる。
【0148】
次に、本実施形態における外部装置との連携による学習について説明する。本実施形態における外部装置との連携による学習には、以下の方法がある。
(1)外部装置で画像を取得したことによる学習
(2)外部装置を介して画像に判定値を入力することによる学習
(3)外部装置内の保存されている画像を解析することによる学習
(4)外部装置でSNSのサーバにアップロードされた情報からの学習
(5)外部装置でカメラパラメータを変更することによる学習
(6)外部装置で画像が手動編集された情報からの学習
<外部装置で画像を取得したことによる学習>
図3で説明したとおり、カメラ101と外部装置301は、第1及び第2の通信302,303を行う通信手段を有している。そして、主に第1の通信302によって画像の送受信が行われ、外部装置301内の専用のアプリケーションを介して、カメラ101内の画像を外部装置301に送信することができる。また、カメラ101内の保存されている画像データのサムネイル画像を外部装置301内の専用のアプリケーションを用いて、閲覧可能である。ユーザは、このサムネイル画像の中から、自分が気に入った画像を選んで、画像確認し、画像取得指示を操作することで外部装置301に画像を送信させることができる。
【0149】
このとき、ユーザが画像を選んで取得しているので、取得された画像はユーザの好みの画像である可能性が非常に高い。よって取得された画像は、学習すべき画像であると判定し、取得された画像の学習情報に基づいて学習することにより、ユーザの好みの各種学習を行うことができる。
【0150】
ここで、操作例について説明する。外部装置301の専用のアプリケーションを用いて、カメラ101内の画像を閲覧している例を図12に示す。表示部407にカメラ内に保存されている画像データのサムネイル画像(1604~1609)が表示されており、ユーザは自分が気に入った画像を選択し取得することができる。このとき、表示方法を変更する表示方法変更部を構成するボタン1601,1602,1603が設けられている。
【0151】
ボタン1601を押下すると日時優先表示モードに変更され、カメラ101内の画像の撮影日時の順番で表示部407に画像が表示される。例えば、1604で示される位置には日時が新しい画像が表示され、1609で示される位置には日時が古い画像が表示される。
【0152】
ボタン1602を押下すると、おすすめ画像優先表示モードに変更される。図9のステップS912で演算した各画像に対するユーザの好みを判定したスコアに基づいて、カメラ101内の画像が、スコアの高い順番で表示部407に表示される。例えば、1604で示される位置にはスコアが高い画像が表示され、1609で示される位置にはスコアが低い画像が表示される。
【0153】
ボタン1603を押下すると、人物や物体被写体を指定でき、続いて特定の人物や物体被写体を指定すると特定の被写体のみを表示することもできる。ボタン1601~1603は同時に設定をONすることもできる。例えばすべての設定がONされている場合、指定された被写体のみを表示し、且つ、撮影日時が新しい画像が優先され、且つ、スコアの高い画像が優先され、表示されることになる。このように、撮影画像に対してもユーザの好みを学習しているため、撮影された大量の画像の中から簡単な確認作業でユーザの好みの画像のみを抽出することが可能である。
【0154】
<外部装置を介して画像に判定値を入力することによる学習>
上記で説明したとおり、カメラ101と外部装置301は、通信手段を有しており、カメラ101内に保存されている画像を外部装置301内の専用のアプリケーションを用いて、閲覧可能である。ここで、ユーザは、各画像に対して点数付けを行う構成にしてもよい。ユーザが好みと思った画像に対して高い点数(例えば5点)を付けたり、好みでないと思った画像に対して低い点数(例えば1点)を付けることができ、ユーザの操作によって、カメラが学習していくような構成にする。各画像の点数は、カメラ内で学習情報と共に再学習に使用される。指定した画像情報からの特徴データを入力にした、ニューラルネットワークの出力がユーザが指定した点数に近づくように学習される。
【0155】
本実施形態では、外部装置301を介して、撮影済み画像にユーザが判定値を入力する構成にしたが、カメラ101を操作して、直接、画像に判定値を入力する構成にしてもよい。その場合、例えば、カメラ101にタッチパネルディスプレイを設け、タッチパネルディスプレイの画面表示部に表示されたGUIボタンをユーザが押下して、撮影済み画像を表示するモードに設定する。そして、ユーザは撮影済み画像を確認しながら、各画像に判定値を入力するなどの方法により、同様の学習を行うことができる。
【0156】
<外部装置内の保存されている画像を解析することによる学習>
外部装置301は、記憶部404を有し、記憶部404にはカメラ101で撮影された画像以外の画像も記録される構成とする。このとき、外部装置301内に保存されている画像は、ユーザが閲覧し易く、公衆無線制御部406を介して、共有サーバに画像をアップロードすることも容易なため、ユーザの好みの画像が多く含まれる可能性が非常に高い。
【0157】
外部装置301の制御部411は、専用のアプリケーションを用いて、記憶部404に保存されている画像を、カメラ101内の学習処理部219と同等の能力で処理可能に構成される。そして、処理された学習用データをカメラ101に通信することにより、学習を行う。あるいは、カメラ101に学習させたい画像やデータを送信して、カメラ101内で学習するような構成にしてもよい。また、専用のアプリケーションを用いて、記録部404に保存されている画像の中から、学習させたい画像をユーザが選択して学習する構成にすることもできる。
【0158】
<外部装置でSNSのサーバにアップロードされた情報からの学習>
次に、人と人の繋がりに主眼をおいた社会的なネットワークを構築できるサービスやウェブサイトであるソーシャル・ネットワーキング・サービス(SNS)における情報を学習に使用する方法について説明する。画像をSNSにアップロードする際に、外部装置301から画像に関するタグを入力した上で、画像と共に送信する技術がある。また、他のユーザがアップロードした画像に対して好き嫌いを入力する技術もあり、他のユーザがアップロードした画像が、外部装置301を所有するユーザの好みの写真であるかも判定できる。
【0159】
外部装置301内にダウンロードされた専用のSNSアプリケーションで、上記のようにユーザが自らアップロードした画像と画像についての情報を取得することができる。また、ユーザが他のユーザがアップロードした画像に対して好きか否かを入力することにより、ユーザの好みの画像やタグ情報を取得することもできる。それらの画像やタグ情報を解析し、カメラ101内で学習できるようにする。
【0160】
外部装置301の制御部411は、上記のようにユーザがアップロードした画像や、ユーザが好きと判定した画像を取得し、カメラ101内の学習処理部219と同等の能力で処理可能に構成される。そして、処理された学習用データをカメラ101に通信することで、学習を行う。あるいは、カメラ101に学習させたい画像を送信して、カメラ101内で学習するような構成にしてもよい。
【0161】
また、タグ情報に設定された被写体情報(例えば、犬、猫などの被写体物体情報、ビーチなどのシーン情報、スマイルなどの表情情報など)から、ユーザが好みであろう被写体情報を推定する。そして、ニューラルネットワークに入力する検出すべき被写体として登録することによる学習を行う。
【0162】
また、上記SNSでのタグ情報(画像フィルタ情報や被写体情報)の統計値から、世の中で今現在流行っている画像情報を推定し、カメラ101内で学習できる構成にすることもできる。
【0163】
<外部装置でカメラパラメータを変更することによる学習>
上記で説明したとおり、カメラ101と外部装置301は、通信手段を有している。そして、カメラ101内に現在設定されている学習パラメータ(ニューラルネットワークの重みや、ニューラルネットワークに入力する被写体の選択など)を外部装置301に通信し、外部装置301の記憶部404に保存することができる。また、外部装置301内の専用のアプリケーションを用いて、専用のサーバにセットされた学習パラメータを公衆無線制御部406を介して取得し、カメラ101内の学習パラメータに設定することもできる。これにより、ある時点でのパラメータを外部装置301に保存しておいて、カメラ101に設定することで、学習パラメータを戻すこともできる。また、他のユーザが持つ学習パラメータを、専用のサーバを介して取得し、自身のカメラ101に設定することもできる。
【0164】
また、外部装置301の専用のアプリケーションを用いて、ユーザが登録した音声コマンドや認証登録、ジェスチャーを登録できるようにしてもよいし、重要な場所を登録してもよい。これらの情報は、自動撮影モード処理(図9)で説明した撮影トリガーや自動撮影判定の入力データとして扱われる。また、撮影頻度や起動間隔、静止画と動画の割合や好みの画像などを設定することができる構成とし、<低消費電力モード制御>で説明した起動間隔などの設定を行ってもよい。
【0165】
<外部装置で画像が手動編集された情報からの学習>
外部装置301の専用のアプリケーションにユーザの操作により手動で編集できる機能を持たせ、編集作業の内容を学習にフィードバックすることもできる。例えば、画像効果付与(トリミング処理、回転処理、スライド、ズーム、フェード、色変換フィルタ効果、時間、静止画動画比率、BGM)の編集が可能である。そして、画像の学習情報に対して、手動で編集した画像効果付与が判定されるように、自動編集のニューラルネットワークを学習させる。
【0166】
次に、学習処理シーケンスについて説明する。図7のステップS704のモード設定判定において、学習処理を行うべきか否かを判定し、学習処理を行うべきと判定された場合、ステップS716の学習モード処理を行う。
【0167】
学習モードの判定条件について説明する。学習モードに移行するか否かは、前回学習処理を行ってからの経過時間と、学習に使用できる情報の数、通信機器を介して学習処理指示があったかなどから判定される。ステップS704のモード設定判定処理内で判定される、学習モードに移行すべきか否かの判定処理フローを図13に示す。
【0168】
ステップS704のモード設定判定処理内で学習モード判定が開始指示されると、図13の処理がスタートする。ステップS1401では、外部装置301からの登録指示があるか否かを判定する。ここでの登録は、上記で説明した<外部装置で画像を取得したことによる学習>や、<外部装置を介して画像に判定値を入力することによる学習>や、<外部装置内の保存されている画像を解析することによる学習>などの、学習するための登録指示があったか否かの判定である。
【0169】
ステップS1401で、外部装置301からの登録指示があった場合、ステップS1408に進み、学習モード判定をTRUEにして、ステップS716の処理を行うように設定し、学習モード判定処理を終了する。ステップS1401で外部装置からの登録指示がない場合、ステップS1402に進む。
【0170】
ステップS1402では外部装置からの学習指示があるか否かを判定する。ここでの学習指示は<外部装置でカメラパラメータを変更することによる学習>のように、学習パラメータをセットする指示があったか否かの判定である。ステップS1402で、外部装置からの学習指示があった場合、ステップS1408に進み、学習モード判定をTRUEにして、ステップS716の処理を行うように設定し、学習モード判定処理を終了する。ステップS1402で外部装置からの学習指示がない場合、ステップS1403に進む。
【0171】
ステップS1403では、前回の学習処理(ニューラルネットワークの重みの再計算)が行われてからの経過時間TimeNを取得し、ステップS1404に進む。ステップS1404では、学習する新規のデータ数DN(前回の学習処理が行われてからの経過時間TimeNの間で、学習するように指定された画像の数)を取得し、ステップS1405に進む。ステップS1405では、経過時間TimeNから学習モードに入るか否かを判定する閾値DTを演算する。閾値DTの値が小さいほど学習モードに入りやすく設定されている。例えば、TimeNが所定値よりも小さい場合の閾値DTの値であるDTaが、TimeNが所定値よりも大きい場合の閾値DTの値であるDTbよりも大きく設定されており、時間の経過とともに、閾値が小さくなるように設定されている。これにより、学習データが少ない場合においても、時間経過が大きいと学習モードに入りやすくして、再度学習することで、使用時間に応じてカメラが学習変化し易いようにされている。
【0172】
ステップS1405で閾値DTを演算すると、ステップS1406に進み、学習するデータ数DNが、閾値DTよりも大きいか否かを判定する。データ数DNが、閾値DTよりも大きい場合、ステップS1407に進み、DNを0に設定する。その後、ステップS1408に進み、学習モード判定をTRUEにして、ステップS716(図7)の処理を行うように設定し、学習モード判定処理を終了する。
【0173】
ステップS1406でDNが閾値DT以下の場合、ステップS1409に進む。外部装置からの登録指示も、外部装置からの学習指示もなく、且つ学習データ数も所定値以下であるので、学習モード判定をFALSEにし、ステップS716の処理は行わないように設定し、学習モード判定処理を終了する。
【0174】
次に、学習モード処理(ステップS716)内の処理について説明する。学習モード処理の動作を示す詳細なフローチャートを図14に示す。
【0175】
図7のステップS715で学習モードと判定され、ステップS716に進むと、図14の処理がスタートする。ステップS1501では、外部装置301からの登録指示があるか否かを判定する。ステップS1501で、外部装置301からの登録指示があった場合、ステップS1502に進む。ステップS1502では、各種登録処理を行う。
【0176】
各種登録は、ニューラルネットワークに入力する特徴の登録であり、例えば顔認証の登録や、一般物体認識の登録や、音情報の登録や、場所情報の登録などである。登録処理を終了すると、ステップS1503に進み、ステップS1502で登録された情報から、ニューラルネットワークへ入力する要素を変更する。ステップS1503の処理を終了すると、ステップS1507に進む。
【0177】
ステップS1501で外部装置301からの登録指示がない場合、ステップS1504に進み、外部装置301からの学習指示があるか否かを判定する。外部装置301からの学習指示があった場合、ステップS1505に進み、外部装置301から通信された学習パラメータを各判定器(ニューラルネットワークの重みなど)に設定し、ステップS1507に進む。
【0178】
ステップS1504で外部装置301からの学習指示がない場合、ステップS1506で学習(ニューラルネットワークの重みの再計算)を行う。ステップS1506の処理に入るのは、図13を用いて説明したように、学習するデータ数DNが閾値DTを超えて、各判定器の再学習を行う場合である。誤差逆伝搬法或いは、勾配降下法などの方法を使って再学習させ、ニューラルネットワークの重みを再計算して、各判定器のパラメータを変更する。学習パラメータが設定されると、ステップS1507に進む。
【0179】
ステップS1507では、ファイル内の画像を再スコア付けする。本実施形態においては、学習結果に基づいてファイル(記録媒体221)内に保存されている全ての撮影画像にスコアを付けておき、付けられたスコアに応じて、自動編集や自動ファイル削除を行う構成となっている。よって、再学習や外部装置からの学習パラメータのセットが行われた場合には、撮影済み画像のスコアも更新を行う必要がある。よって、ステップS1507では、ファイル内に保存されている撮影画像に対して新たなスコアを付ける再計算が行われ、処理が終了すると学習モード処理を終了する。
【0180】
本実施形態においては、カメラ101内で学習する構成について説明した。しかし、外部装置301側に学習機能を持ち、学習に必要なデータを外部装置301に通信し、外部装置側でのみ学習を実行する構成でも同様の学習効果を実現可能である。その場合、上記の<外部装置でカメラパラメータを変更することによる学習>で説明したように、外部装置側で学習したニューラルネットワークの重みなどのパラメータをカメラ101に通信により設定することで学習を行う構成にしてもよい。
【0181】
また、カメラ101内と、外部装置301内の両方に、それぞれ学習機能を持つ構成にし、例えばカメラ101内で学習モード処理(ステップS716)が行われるタイミングで外部装置301が持つ学習情報をカメラ101に通信し、学習パラメータをマージすることで学習を行う構成にしてもよい。
【0182】
(第2の実施形態)
第2の実施形態のカメラの構成は第1の実施形態と同様であり、以下では、第1の実施形態と異なる部分のみについて説明し、同様の構成及び処理の説明は省略する。
【0183】
本実施形態では、アタッチメント検出部(不図示)によりカメラ101に装着されるアタッチメントの種類を検出することができる。例えば、図15に示すアタッチメント1501~1504から、非接触通信手段などを用いて、カメラ101に、装着されているアタッチメントの種類の情報を送信するなどの方法が用いられる。その他にも、カメラ101とアタッチメント1501~1504にそれぞれ設けられたコネクタにより、情報の送受信を行って検出することもできる。しかし、カメラ101に電池が内包されている場合、アタッチメントに電池用のコネクタを設ける必要が無い場合もある。その場合、あえてコネクタを設けると、接続部分での防滴機能を付加する部品などが必要になり、装置の大型化やコストの増大につながる。そのため、非接触通信手段などを用いることが望ましい。非接触通信手段としては、Bluetooth Low Energy(BLE)を用いてもよいし、NEAR FIELD COMMUNICATION(NFC)BLEを用いてもよいし、他の方法であってもよい。
【0184】
また、アタッチメント1501~1504における電波発生源は、電源の容量が小さく小型のものでよく、例えばボタン電池や不図示の操作部材を押す力で微量な電力を発生させる手段などを用いてもよい。
【0185】
アタッチメントの種類を検出することにより、アタッチメントの種類に応じてカメラの状態(手持ち状態、首下げ状態、ウエアラブル状態、机上に設置した状態、動体に設置した状態など:状態情報)を限定的に判定することができる。アタッチメント装着の検出は、電圧の変化の検出やIDの検出などのような既存の方法を用いて行うことができる。
【0186】
図15は、アタッチメント装着時の使用例を示した図である。図15(a)は手持ち状態、図15(b)は首下げ状態、図15(c)はウエアラブル状態、図15(d)は固定設置状態をそれぞれ示し、カメラ101にそれぞれのアタッチメントが取り付けられている。1501は手持ち用アタッチメント、1502は首下げ用アタッチメント、1503はウエアラブル用アタッチメント、1504は固定設置用アタッチメントの例をそれぞれ示す。ウエアラブル用アタッチメント1503には、ヘッドマウント以外にも肩やベルトに装着できるものなどが考えられる。
【0187】
このようにアタッチメントを装着すると、カメラの状態が限定される場合があり、カメラの状態判定の精度が上がり、自動撮影のタイミング、被写体探索範囲、低消費電力モードのオンオフのタイミングなどの制御をより適切に行うことができる。
【0188】
さらに、アタッチメントの種類によるカメラの状態判定と、被写体情報、カメラの移動情報、振動状態などの組み合わせにより、カメラの状態をより限定してもよい。例えば、手持ち用アタッチメントが検出された場合、手持ち状態で動いているのか静止しているのかによって被写体探索範囲制御、自動撮影制御、低消費電力モード制御を変更する。同様に、固定設置用アタッチメントが検出された場合、机上で静止している状態か、車やドローンに設置されて動いている状態かを、移動情報や振動状態から判定してそれぞれの制御を変更する。
【0189】
具体的に、アタッチメントの種類毎の被写体探索範囲、自動撮影制御、低消費電力モード制御の例をまとめたものが図18である。
【0190】
まず、図15(a)に示すような手持ち用アタッチメント1501が装着された場合、図16(a)のようにユーザが任意の被写体にカメラを向けている可能性が高いと考えられる。そのため、被写体探索範囲1601を狭い範囲に設定しても被写体1602を見つけることが可能である。手持ち用アタッチメント1501を装着したカメラ101を単体で見た図が図16(b)である。撮影可能範囲1603に対して、被写体探索範囲を被写体探索範囲1604のように狭い領域に設定することができる。このときの自動撮影制御では、ユーザが意図的にカメラを被写体に向けているため、撮影頻度を多くし(撮影頻度決定)、撮影方向をカメラを向けている方向に限定してもよい。また、被写体にカメラが向けられている間は撮影をしたいので、低消費電力モードにする必要はない。この例は、カメラを向けている方向に被写体が存在する場合の例であり、該当しない場合は被写体探索範囲を狭めたり、撮影頻度を多くしたりする必要はない。
【0191】
次に、図15(b)に示すような首下げ用アタッチメント1502が装着された場合、被写体探索範囲は図10の1322に示すようにユーザの体がなるべく写らない範囲に限定してよい。首下げ時はライフログカメラとしての用途で使う場合が考えられるため、撮影頻度は一定間隔で、撮影方向は正面優先にしてよい。しかし、イベントが起こったときに多く記録できるように、ユーザの動きや音声により周辺環境の変化などを検出し、撮影頻度を増やし、撮影方向の制限を無くすようにしてもよい。また、同一シーンで所定枚数撮影したら、類似した写真ばかり撮影しないように、ユーザが大きく動くなどトリガーがあるまで低消費電力モードに移行させてもよい。
【0192】
図15(c)に示すようなウエアラブル用アタッチメント1503が装着された場合、使用用途に応じて制御を大きく変更してもよい。図15(c)に示すようなヘッドマウント型のアタッチメントでは、ハイキングや登山で用いる場合、首下げ用アタッチメントの装着時と同様の制御にしてもよい。あるいは、技術者の作業記録などで用いる場合、できるだけ作業者の手元が写るように被写体探索を行い、撮影頻度を多くして記録するように制御してもよい。
【0193】
図15(d)に示すような固定設置用アタッチメント1504が装着された場合について、図17を用いて説明する。図17(a)は、カメラ101を固定設置用アタッチメント1504を用いて机上に設置した状態を真横から見た様子を示している。撮影可能範囲1701に対して、机(地面、床)ばかりが写らないように被写体探索範囲は1702で示すように少し狭めてもよい。同様に図17(b)はカメラを上方から見下ろした様子を示した図である。この状態では、周囲に特に遮るものも無く、被写体探索範囲1703は全方位となっている。このとき、カメラは動かないため、自動撮影制御では、類似した写真を避けるために撮影する度に撮影頻度を少なくし、新しい人や環境変化などを検出したら頻度が多くなるように制御してもよい。撮影方向も類似写真を避けるために、全方向万遍なく撮影するようにする。また、所定枚数撮影したら、低消費電力モードに移行しやすくしてもよい。
【0194】
さらに、固定設置用アタッチメントを用いて動体に装着された場合、基本的に撮影した被写体に向かって動いていると想定し、被写体探索は正面を優先的に行い、撮影方向も正面を優先するようにしてもよい。その場合、撮影頻度は動体の動きにより変えるようにする。例えば、頻繁に進行方向が変化するのであれば撮影頻度を多くする。また、進行方向に変化がなく、速度も大きく変化しなければ、一定間隔で低消費電力モードに移行するように制御してもよい。
【0195】
このように、アタッチメント情報を用いることにより、カメラの状態判定を限定でき、より正確な状態判定が可能になる。そのため、探索範囲制御、自動撮影制御、低消費電力モード制御をより正確に行えるので、よりユーザの期待に沿った撮影を行える可能性が高くなる。
【0196】
(他の実施形態)
また本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現できる。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現できる。
【符号の説明】
【0197】
101:カメラ、301:スマートデバイス、501:ウエアラブルデバイス、104:チルト回転ユニット、105:パン回転ユニット
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18