JP7199808B2 - 撮像装置およびその制御方法 - Google Patents

撮像装置およびその制御方法 Download PDF

Info

Publication number
JP7199808B2
JP7199808B2 JP2017254232A JP2017254232A JP7199808B2 JP 7199808 B2 JP7199808 B2 JP 7199808B2 JP 2017254232 A JP2017254232 A JP 2017254232A JP 2017254232 A JP2017254232 A JP 2017254232A JP 7199808 B2 JP7199808 B2 JP 7199808B2
Authority
JP
Japan
Prior art keywords
learning
shooting
image
user
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017254232A
Other languages
English (en)
Other versions
JP2019121855A (ja
Inventor
浩平 古谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017254232A priority Critical patent/JP7199808B2/ja
Publication of JP2019121855A publication Critical patent/JP2019121855A/ja
Application granted granted Critical
Publication of JP7199808B2 publication Critical patent/JP7199808B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Studio Devices (AREA)

Description

本発明は、撮像装置およびその制御方法に関する。
カメラ等の撮像装置による静止画・動画撮影においては、ユーザがファインダー等を通して撮影対象を決定し、撮影状況を自ら確認して撮影画像のフレーミングを調整することによって、画像を撮影するのが通常である。このような撮像装置では、ユーザの操作ミスを検知してユーザに通知したり、外部環境の検知を行い、撮影に適していない場合にユーザに通知したりする機能が備えられている。また、撮影に適した状態になるようにカメラを制御する仕組みが従来から存在している。
このようなユーザの操作により撮影を実行する撮像装置に対し、ユーザが撮影指示を与えることなく定期的および継続的に撮影を行うライフログカメラが存在する(特許文献1)。ライフログカメラは、ストラップ等でユーザの身体に装着された状態で用いられ、ユーザが日常生活で目にする光景を一定時間間隔で映像として記録するものである。ライフログカメラによる撮影は、ユーザがシャッターを切るなどの意図したタイミングで撮影するのではなく、一定の時間間隔で撮影を行うため、普段撮影しないような不意な瞬間を映像として残すことができる。
特表2016-536868号公報
しかしながら、ライフログカメラをユーザが身に着けた状態において、定期的に自動撮影を行った場合、ユーザの好みでない映像が取得され、本当に得たい瞬間の映像を取得できない場合があった。
本発明は上述した課題に鑑みてなされたものであり、その目的は、ユーザが特別な操作を行うことなく、ユーザの好みの映像を取得することが可能な撮像装置を提供することである。
上記目的を達成するために、本発明の技術的特徴として、撮像装置の制御方法であって、装置の状態が、乗り物移動状態、置き撮り状態、手持ち状態、首にかけた状態の少なくとも何れかであることを検出する第1の検出工程と、被写体の距離に関連する状態を検出する第2の検出工程と、前記装置の状態の検出結果と前記被写体の距離に関連する状態の検出結果に基づいて、撮影処理を決定する決定工程と、前記装置の状態の検出結果、前記被写体の距離に関連する状態の検出結果、および前記決定された撮影処理の少なくとも何れかにおいて得られた複数のデータを解析して、規則性を抽出し、抽出結果に応じてユーザの好みを学習する学習工程を有し、前記学習工程による学習により、前記決定工程の前記撮影処理の決定が変更されることを特徴とする。
本発明によれば、ユーザが特別な操作を行うことなく、ユーザの好みの映像を取得することが可能な撮像装置を提供することが可能となる。
撮像装置を模式的に示す図である。 撮像装置の構成を示す図である。 撮像装置と外部機器との構成を示す図である。 外部機器の構成を示す図である。 撮像装置と外部機器との構成を示す図である。 外部機器の構成を示す図である。 第1制御部を説明するフローチャートである。 第2制御部を説明するフローチャートである。 撮影モード処理を説明するフローチャートである。 自動編集モード判定を説明するフローチャートである。 自動編集処理を説明するフローチャートである。 ニューラルネットワークを説明する図である。 撮影画像内のエリア分割を説明するための図である。 学習モード判定を説明するフローチャートである。 学習処理を説明するフローチャートである。 本実施形態に係る表示処理を説明する図である。 鏡筒回転駆動部の構成を示す図である。 画像上の被写体の目標位置と実位置を説明する図である。 撮影方向変更操作検出を説明するフローチャートである。 撮影方向変更操作検出を模式的に示す図である。 撮影方向変更操作検出を模式的に示す図である。 撮影方向変更操作検出処理を説明する図である。 撮影方向変更操作検出処理を説明する図である。 本実施形態に係る撮影方法の例を説明する図である。 本実施形態に係る撮影方法判定の例を説明する図である。 本実施形態に係る撮像装置の加速度変化の例を説明する図である。
本発明を実施するための最良の形態は、以下の実施例に示す通りである。
撮影方法においては、例えば、図24(a)のような通常撮影の他にも、図24(b)のような、横方向のパノラマ撮影や、図24(c)のような縦方向のパノラマ撮影といった手法も存在する。このような種々の撮影方法のうち、どの方法を採用するかという判定において、ユーザが毎回撮影方法を指定すると、ユーザに余計な手間をかけさせてしまううえ、撮影の機会を逃してしまう場合もある。また、そもそもそのような選択肢を知らないユーザの表現の幅を狭めてしまう可能性もある。それに対し、例えば常に全ての撮影方法で撮影するようにした場合、余分な画像が増えてしまうため、ユーザの選択の手間を増やしてしまう。
そこで、下記では、利用者が特別な操作を行うことなく、撮像装置を起動するだけで、映像ブレ・画角ズレなく、個人毎の好みを反映し、必要なときにのみ撮影動作を行うことで長時間使用でき、利用者の好みの映像を取得することができる撮像装置の例を示す。
〔第1の実施形態〕
<撮像装置の構成>
図1は、第1の実施形態の撮像装置を模式的に示す図である。
図1(a)に示す撮像装置101は、電源スイッチの操作を行うことができる操作部材(以後、電源ボタンというが、タッチパネルへのタップやフリック、スワイプなどの操作でもよい)などが設けられている。撮像を行う撮影レンズ群や撮像素子を含む筐体である鏡筒102は、撮像装置101に取り付けられ、鏡筒102を固定部103に対して回転駆動できる回転機構を設けている。チルト回転ユニット104は、鏡筒102を図1(b)に示すピッチ方向に回転できるモーター駆動機構であり、パン回転ユニット105は、鏡筒102をヨー方向に回転できるモーター駆動機構である。よって、鏡筒102は、1軸以上の方向に回転可能である。なお、図1(b)は、固定部103位置での軸定義である。角速度計106と加速度計107はともに、撮像装置101の固定部103に実装されている。そして、角速度計106や加速度計107に基づいて、撮像装置101の振動を検出し、チルト回転ユニットとパン回転ユニットを検出した揺れ角度に基づいて回転駆動する。これにより、可動部である鏡筒102の振れを補正したり、傾きを補正したりする構成となっている。
図2は、本実施形態の撮像装置の構成を示すブロック図である。
図2において、第1制御部223は、プロセッサ(例えば、CPU、GPU、マイクロプロセッサ、MPUなど)、メモリ(例えば、DRAM、SRAMなど)からなる。これらは、各種処理を実行して撮像装置101の各ブロックを制御したり、各ブロック間でのデータ転送を制御したりする。不揮発性メモリ(EEPROM)216は、電気的に消去・記録可能なメモリであり、第1制御部223の動作用の定数、プログラム等が記憶される。
図2において、ズームユニット201は、変倍を行うズームレンズを含む。ズーム駆動制御部202は、ズームユニット201を駆動制御する。フォーカスユニット203は、ピント調整を行うレンズを含む。フォーカス駆動制御部204は、フォーカスユニット203を駆動制御する。
撮像部206では、撮像素子が各レンズ群を通して入射する光を受け、その光量に応じた電荷の情報をアナログ画像データとして画像処理部207に出力する。画像処理部207はA/D変換により出力されたデジタル画像データに対して、歪曲補正やホワイトバランス調整や色補間処理等の画像処理を適用し、適用後のデジタル画像データを出力する。画像処理部207から出力されたデジタル画像データは、画像記録部208でJPEG形式等の記録用フォーマットに変換し、メモリ215や後述する映像出力部217に送信される。
鏡筒回転駆動部205は、チルト回転ユニット104、パン回転ユニット105を駆動して鏡筒102をチルト方向とパン方向に駆動させる。
装置揺れ検出部209は、例えば撮像装置101の3軸方向の角速度を検出する角速度計(ジャイロセンサ)106や、装置の3軸方向の加速度を検出する加速度計(加速度センサ)107が搭載される。装置揺れ検出部209は、検出された信号に基づいて、装置の回転角度や装置のシフト量などが演算される。
音声入力部213は、撮像装置101に設けられたマイクから撮像装置101周辺の音声信号を取得し、アナログデジタル変換をして音声処理部214に送信する。音声処理部214は、入力されたデジタル音声信号の適正化処理等の音声に関する処理を行う。そして、音声処理部214で処理された音声信号は、第1制御部223によりメモリ215に送信される。メモリ215は、画像処理部207、音声処理部214により得られた画像信号及び音声信号を一時的に記憶する。
画像処理部207及び音声処理部214は、メモリ215に一時的に記憶された画像信号や音声信号を読み出して画像信号の符号化、音声信号の符号化などを行い、圧縮画像信号、圧縮音声信号を生成する。第1制御部223は、これらの圧縮画像信号、圧縮音声信号を、記録再生部220に送信する。
記録再生部220は、記録媒体221に対して画像処理部207及び音声処理部214で生成された圧縮画像信号、圧縮音声信号、その他撮影に関する制御データ等を記録する。また、音声信号を圧縮符号化しない場合には、第1制御部223は、音声処理部214により生成された音声信号と画像処理部207により生成された圧縮画像信号とを、記録再生部220に送信し記録媒体221に記録させる。
記録媒体221は、撮像装置101に内蔵された記録媒体でも、取外し可能な記録媒体でもよい。記録媒体221は、撮像装置101で生成した圧縮画像信号、圧縮音声信号、音声信号などの各種データを記録することができ、不揮発性メモリ216よりも大容量な媒体が一般的に使用される。例えば、記録媒体221は、ハードディスク、光ディスク、光磁気ディスク、CD-R、DVD-R、磁気テープ、不揮発性の半導体メモリ、フラッシュメモリ、などのあらゆる方式の記録媒体を含む。
記録再生部220は、記録媒体221に記録された圧縮画像信号、圧縮音声信号、音声信号、各種データ、プログラムを読み出す(再生する)。そして読み出した圧縮画像信号、圧縮音声信号を、第1制御部223は画像処理部207及び音声処理部214に送信する。画像処理部207及び音声処理部214は、圧縮画像信号、圧縮音声信号を一時的にメモリ215に記憶させ、所定の手順で復号し、復号した信号を映像出力部217、音声出力部218に送信する。
音声入力部213は複数のマイクが撮像装置101に搭載されており、音声処理部214は複数のマイクが設置された平面上の音の方向を検出することができ、後述する探索や自動撮影に用いられる。さらに、音声処理部214では、特定の音声コマンドを検出する。音声コマンドは事前に登録されたいくつかのコマンドの他、ユーザが特定音声を撮像装置に登録できる構成にしてもよい。また、音シーン認識も行う。音シーン認識では、予め大量の音声データを基に、複数のデータを解析して、規則性を抽出し、抽出結果に応じて、機械学習により学習させたネットワークにより音シーン判定を行う。例えば、「歓声が上がっている」、「拍手している」、「声を発している」などの特定シーンを検出するためのネットワークが音声処理部214に設定されている。そして、特定音シーンや特定音声コマンドを検出すると、第1制御部223や第2制御部211に、検出トリガー信号を出力する構成になっている。
撮像装置101のメインシステム全体を制御する第1制御部223はとは別に設けられた、第2制御部211が第1制御部223の供給電源を制御する。
第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制御部は各種入力情報を基にして、第1制御部223を起動するか否かの判定処理を行い、起動判定されると第1電源部に電源供給指示をする構成になっている。
音声出力部218は、例えば撮影時などに撮像装置101に内蔵されたスピーカーから予め設定された音声パターンを出力する。
LED制御部224は、例えば撮影時などに撮像装置101に設けられたLEDを予め設定された点灯点滅パターンを制御する。
映像出力部217は、例えば映像出力端子からなり、接続された外部ディスプレイ等に映像を表示させるために画像信号を送信する。また、音声出力部218、映像出力部217は、結合された1つの端子、例えばHDMI(登録商標)(High-Definition Multimedia Interface)端子のような端子であってもよい。
通信部222は、撮像装置101と外部装置との間で通信を行うもので、例えば、音声信号、画像信号、圧縮音声信号、圧縮画像信号などのデータを送信したり受信したりする。また、撮影開始や終了コマンド、パン・チルトやズーム駆動等の、撮影にかかわる制御信号を受信して、撮像装置101と相互通信可能な外部機器の指示から撮像装置101を駆動する。また、撮像装置101と外部装置との間で、後述する学習処理部219で処理される学習にかかわる各種パラメータなどの情報を送信したり受信したりする。通信部222は、例えば、赤外線通信モジュール、Bluetooth(登録商標)通信モジュール、無線LAN通信モジュール、WirelessUSB、GPS受信機等の無線通信モジュールである。
<外部通信機器との構成>
図3は、撮像装置101と外部装置301との無線通信システムの構成例を示す図である。撮像装置101は撮影機能を有するデジタルカメラであり、外部装置301はBluetooth通信モジュール、無線LAN通信モジュールを含むスマートデバイスである。
撮像装置101とスマートデバイス301は、例えばIEEE802.11規格シリーズに準拠した無線LANによる通信302と、例えばBluetooth Low Energy(以下、「BLE」と呼ぶ。)BLEなどの、制御局と従属局などの主従関係を有する通信303とによって通信可能である。なお、無線LAN及びBLEは通信手法の一例であり、各通信装置は、2つ以上の通信機能を有し、例えば制御局と従属局との関係の中で通信を行う一方の通信機能によって、他方の通信機能の制御を行うことが可能であれば、他の通信手法が用いられてもよい。ただし、一般性を失うことなく、無線LANなどの第1の通信は、BLEなどの第2の通信より高速な通信が可能であり、また、第2の通信は、第1の通信よりも消費電力が少ないか通信可能距離が短いかの少なくともいずれかであるものとする。
スマートデバイス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は、通信においてパケットの送信と受信との少なくともいずれかを行うものとして説明するが、パケット交換以外に、例えば回線交換など、他の通信形式が用いられてもよい。
スマートデバイス301は、例えば、制御部411、記憶部404、GPS受信部405、表示部407、操作部408、音声入力音声処理部409、電源部410をさらに有する。制御部411は、例えば、記憶部404に記憶される制御プログラムを実行することにより、スマートデバイス301全体を制御する。記憶部404は、例えば制御部411が実行する制御プログラムと、通信に必要なパラメータ等の各種情報とを記憶する。後述する各種動作は、記憶部404に記憶された制御プログラムを制御部411が実行することにより、実現される。
電源部410はスマートデバイス301に電源を供給する。表示部407は、例えば、LCDやLEDのように視覚で認知可能な情報の出力、又はスピーカー等の音出力が可能な機能を有し、各種情報の表示を行う。操作部408は、例えばユーザによるスマートデバイス301の操作を受け付けるボタン等である。なお、表示部407及び操作部408は、例えばタッチパネルなどの共通する部材によって構成されてもよい。
音声入力音声処理部409は、例えばスマートデバイス301に内蔵された汎用的なマイクから、ユーザが発した音声を取得し、音声認識処理により、ユーザの操作命令を取得する構成にしてもよい。
また、スマートデバイス内の専用のアプリケーションを介して、ユーザの発音により音声コマンドを取得する。そして、無線LANによる通信302を介して、撮像装置101の音声処理部214に特定音声コマンド認識させるための特定音声コマンドとして登録することもできる。
GPS(Global positioning system)405は、衛星から通知されるGPS信号を受信し、GPS信号を解析し、スマートデバイス301の現在位置(経度・緯度情報)を推定する。もしくは、位置推定は、WPS(Wi-Fi Positioning System)等を利用して、周囲に存在する無線ネットワークの情報に基づいて、スマートデバイス301の現在位置を推定するようにしてもよい。取得した現在のGPS位置情報が予め事前に設定されている位置範囲(所定半径の範囲以内)に位置している場合に、BLE制御部402を介して撮像装置101へ移動情報を通知し、後述する自動撮影や自動編集のためのパラメータとして使用する。また、GPS位置情報に所定以上の位置変化があった場合に、BLE制御部402を介して撮像装置101へ移動情報を通知し、後述する自動撮影や自動編集のためのパラメータとして使用する。
上記のように撮像装置101とスマートデバイス301は、無線LAN制御部401、及び、BLE制御部402を用いた通信により、撮像装置101とデータのやりとりを行う。例えば、音声信号、画像信号、圧縮音声信号、圧縮画像信号などのデータを送信したり受信したりする。また、スマートデバイスから撮像装置101の撮影などの操作指示であったり、音声コマンド登録データ送信や、GPS位置情報に基づいた所定位置検出通知や場所移動通知を行う。また、スマートデバイス内の専用のアプリケーションを介しての学習用データの送受信も行う。
<アクセサリ類の構成>
図5は、撮像装置101と通信可能である外部装置501との構成例を示す図である。撮像装置101は撮影機能を有するデジタルカメラであり、外部装置501は、例えばBluetooth通信モジュールなどにより撮像装置101と通信可能である各種センシング部を含むウエアラブルデバイスである。
ウエアラブルデバイス501において、例えばユーザの腕などに装着できるような構成なっており、所定の周期でユーザの脈拍、心拍、血流等の生体情報を検出するセンサやユーザの運動状態を検出できる加速度センサ等が搭載されている。
生体情報検出部502は、例えば、脈拍を検出する脈拍センサ、心拍を検出する心拍センサ、血流を検出する血流センサ、導電性高分子による皮膚の接触によって電位の変化を検出したことを検知するセンサを含む。本実施形態では、生体情報検出部502として心拍センサを用いて説明する。心拍センサは、例えばLED等を用いて皮膚に赤外光を照射し、体組織を透過した赤外光を受光センサで検出して信号処理することによりユーザの心拍を検出する。生体情報検出部502は、検出した生体情報を信号として、後述する制御部607へ出力する。
ユーザの運動状態を検出する揺れ検出部503は、例えば、加速度センサやジャイロセンサが搭載しており、加速度の情報に基づきユーザが移動しているかどうかや、腕を振り回してアクションをしているかどうかなどのモーションを検出することができる。
また、ユーザによるウエアラブルデバイス501の操作を受け付ける操作部505や、LCDやLEDのように視覚で認知可能な情報を出力する表示部504が搭載される。
ウエアラブルデバイス501の構成を、図6を用いて説明する。
ウエアラブルデバイス501は、例えば、制御部607、通信部601、生体情報検出部502、揺れ検出部503、表示部504、操作部505、電源部606、記憶部608を有する。
制御部607は、例えば、記憶部608に記憶される制御プログラムを実行することにより、ウエアラブルデバイス501全体を制御する。記憶部608は、例えば制御部607が実行する制御プログラムと、通信に必要なパラメータ等の各種情報とを記憶する。後述する各種動作は、例えば記憶部608に記憶された制御プログラムを制御部607が実行することにより、実現される。
電源部606はウエアラブルデバイス501に電源を供給する。表示部504は、例えば、LCDやLEDのように視覚で認知可能な情報の出力、又はスピーカー等の音出力が可能な機能を有し、各種情報の表示を行う。操作部505は、例えばユーザによるウエアラブルデバイス501の操作を受け付けるボタン等である。なお、表示部504及び操作部505は、例えばタッチパネルなどの共通する部材によって構成されてもよい。
また、操作部は、例えばウエアラブルデバイス501に内蔵された汎用的なマイクから、ユーザが発した音声を取得し、音声処理によりユーザが発した音声を取得し、音声認識処理により、ユーザの操作命令を取得する構成にしてもよい。
生体情報検出部502や揺れ検出部503から制御部607で処理された各種検出情報は、通信部601により、撮像装置101へ検出情報を送信する。
例えば、ユーザの心拍の変化を検出したタイミングで検出情報を撮像装置101に送信したり、歩行移動/走行移動/立ち止まりなどの移動状態の変化のタイミングで検出情報を送信したりする。また、例えば、予め設定された腕ふりのモーションを検出したタイミングで検出情報を送信したり、予め設定された距離の移動を検出したタイミングで検出情報を送信したりする。
<撮像動作のシーケンス>
図7は、本実施形態における撮像装置101の第1制御部223が受け持つ動作の例を説明するフローチャートである。
ユーザが撮像装置101に設けられた電源ボタンを操作すると、第1電源部210により電源供給部から、第1制御部223及び撮像装置101の各ブロックに電源を供給させる。
また、同様に第2制御部211においても第2電源部212により電源供給部から、第2制御部に電源を供給されるが、第2制御部の動作の詳細については後述する図8のフローチャートを用いて説明する。
電源が供給されると、図7の処理がスタートする。ステップ701では、起動条件の読み込みが行われる。本実施形態においては、起動条件は以下である。
(1)電源ボタンが手動で押下されて電源起動
(2)外部機器(例えば301)から外部通信(例えばBLE通信)からの指示で電源起動
(3)Subプロセッサ(第2制御部211)から、電源起動
ここで、(3)のSubプロセッサから電源起動の場合は、Subプロセッサ内で演算された起動条件が読み込まれることになるが、詳細は後述する図8で説明する。
また、ここで読み込まれた起動条件は、被写体探索や自動撮影時の1つのパラメータ要素として用いられるが、後述して説明する。起動条件読み込みが終了するとステップ702に進む。
ステップ702では、各種センサの読み込みが行われる。ここで読み込まれるセンサは、装置揺れ検出部209からのジャイロセンサや加速度センサなどの振動検出するセンサであったりする。また、チルト回転ユニット104やパン回転ユニット105の回転位置であったりする。また、音声処理部214にて検出される音声レベルや特定音声認識の検出トリガーや音方向検出だったりする。
また、図1乃至図6には図示していないが、環境情報を検出するセンサでも情報を取得する。
例えば、所定の周期で撮像装置101の周辺の温度を検出する温度センサや、撮像装置101の周辺の気圧の変化を検出する気圧センサがある。また、撮像装置101の周辺の明るさを検出する照度センサや、撮像装置101の周辺の湿度を検出する湿度センサや、撮像装置101の周辺の紫外線量を検出するUVセンサ等を備えてもよい。検出した温度情報や気圧情報や明るさ情報や湿度情報やUV情報に加え、検出した各種情報から所定時間間隔での変化率を算出した温度変化量や気圧変化量や明るさ変化量や湿度変化量や紫外線変化量などを後述する自動撮影などの判定に使用する。
ステップ702で各種センサ読み込みが行われるとステップ703に進む。
ステップ703では、外部機器からの通信が指示されているかを検出し、通信指示があった場合、外部機器との通信を行う。
例えば、スマートデバイス301から、無線LANやBLEを介した、リモート操作であったり、音声信号、画像信号、圧縮音声信号、圧縮画像信号などのデータを送信したり受信したりする。また、スマートデバイス301からの撮像装置101の撮影などの操作指示や、音声コマンド登録データ送信や、GPS位置情報に基づいた所定位置検出通知や場所移動通知や学習用データの送受信の指示があるかどうかの読み込みを行う。
また、例えば、ウエアラブルデバイス501から、ユーザの運動情報、腕のアクション情報、心拍などの生体情報の更新がある場合、BLEを介した情報の読み込みを行う。また、上述した環境情報を検出する各種センサは、撮像装置101に搭載してもよいが、スマートデバイス301或いはウエアラブルデバイス501に搭載していてもよく、その場合、BLEを介した環境情報の読み込みも行う。ステップ703で外部機器からの通信読み込みが行われると、ステップS704に進む。
ステップ704では、モード設定判定が行われる。ステップ704で設定されるモードは、以下の内から判定され選ばれる。
(1)自動撮影モード
[モード判定条件]
後述する学習により設定された各検出情報(画像、音、時間、振動、場所、身体の変化、環境変化)や、自動撮影モードに移行してからの経過時間や、過去の撮影情報などから、自動撮影を行うべきと判定されると、自動撮影モードに設定される。
[モード内処理]
自動撮影モード処理(ステップ710)では、各検出情報(画像、音、時間、振動、場所、体の変化、環境変化)に基づいて、パン・チルトやズームを駆動して被写体を自動探索する。そして、ユーザの好みの撮影が行えるタイミングであると判定されると、静止画一枚撮影、静止画連続撮影、動画撮影、パノラマ撮影、タイムラプス撮影など様々な撮影方法の中から、撮影方法の判定処理が行われ、自動で撮影が行われる。
(2)自動編集モード
[モード判定条件]
前回自動編集を行ってからの経過時間と、過去の撮影画像情報から、自動編集を行うべきと判定されると、自動編集モードに設定される。
[モード内処理]
自動編集モード処理(ステップ712)では、学習に基づいた静止画像や動画像の選抜処理を行い、学習に基づいて画像効果や編集後動画の時間などにより、一つの動画にまとめたハイライト動画を作成する自動編集処理が行われる。
(3)画像転送モード
[モード判定条件]
スマートデバイス内の専用のアプリケーションを介した指示により画像自動転送モードに設定されている場合、前回画像転送を行ってからの経過時間と過去の撮影画像情報から画像自動を行うべきと判定されると、画像自動転送モードに設定される。
[モード内処理]
画像自動転送モード処理(ステップ714)では、撮像装置101は、ユーザの好みであろう画像を自動で抽出し、スマートデバイス301にユーザの好みの画像を自動で抽出し、画像転送が行われる。ユーザの好みの画像抽出は、後述する各画像に付加されたユーザの好みを判定したスコアにより行う。
(4)学習モード
[モード判定条件]
前回学習処理を行ってからの経過時間と、学習に使用することのできる画像に対応付けられた情報や学習データの数などから、自動学習を行うべきと判定されると、自動学習モードに設定される。または、スマートデバイス301からの通信を介して学習データが設定されるように指示があった場合も本モードに設定される。
[モード内処理]
自動学習モード処理(ステップ716)では、ユーザの好みに合わせた学習を行う。スマートデバイス301での各操作、スマートデバイス301からの学習情報通知などの情報を基に複数のデータをニューラルネットワークを用いて解析して、規則性を抽出し、抽出結果に応じて、ユーザの好みに合わせた学習が行われる。スマートデバイス301での各操作の情報としては、例えば、撮像装置からの画像取得情報、専用アプリケーションを介して手動による編集指示がされた情報、撮像装置内の画像に対してユーザが入力した判定値情報がある。
また、個人認証の登録や音声登録、音シーン登録、一般物体認識登録などの、検出に関する学習や、上述した低消費電力モードの条件などの学習も同時に行われる。
(5)ファイル自動削除モード
[モード判定条件]
前回ファイル自動削除を行ってからの経過時間と、画像を記録している不揮発性メモリ216の残容量とから、ファイル自動削除を行うべきと判定されると、ファイル自動削除モードに設定される。
[モード内処理]
ファイル自動削除モード処理(ステップ718)では、不揮発性メモリ216内の画像の中から、各画像のタグ情報と撮影された日時などから自動削除されるファイルを指定し(三択処理)削除する。
なお、自動撮影モード処理、自動編集モード処理、学習モード処理についての詳細は、後述する。
ステップ705ではステップ704でモード設定判定が低消費電力モードに設定されているかどうかを判定する。低消費電力モード判定は、後述する「自動撮影モード」、「自動編集モード」、「画像自動転送モード」、「学習モード」、「ファイル自動削除モード」、の何れのモードの判定位条件でもない場合は、低消費電力モードになるように判定される。判定処理が行われるとステップ705に進む。
ステップ705では、低消費電力モード条件であると判定されれば、ステップ706に進む。
ステップ706では、Subプロセッサ(第2制御部211)へ、Subプロセッサ内で判定する起動要因に係る各種パラメータを(揺れ検出判定用パラメータ、音検出用パラメータ、時間経過検出パラメータ)を通知する。各種パラメータは後述する学習処理にて、学習されることによって値が変化する。ステップ706の処理を終了すると、ステップ707に進み、Mainプロセッサ(第1制御部223)の電源をOFFして、処理を終了する。
一方、ステップ705で低消費電力モードでないと判定されると、ステップ709に進み、モード設定が自動撮影モードであるか否かを判定し、自動撮影モードであればステップ710に進み、自動撮影モード処理が行われる。処理が終了すると、ステップ702に戻り、処理を繰り返す。ステップ709で、自動撮影モードでないと判定されると、ステップ711に進む。
ステップ711では、モード設定が自動編集モードであるか否かを判定し、自動編集モードであればステップ712に進み、自動編集モード処理が行われる。処理が終了すると、ステップ702に戻り、処理を繰り返す。ステップ711で、自動編集モードでないと判定されると、ステップ713に進む。
ステップ713では、モード設定が画像自動転送モードであるか否かを判定し、画像自動転送モードであればステップ714に進み、画像自動転送モード処理が行われる。処理が終了すると、ステップ702に戻り、処理を繰り返す。ステップ713で、画像自動転送モードでないと判定されると、ステップ715に進む。
ステップ715では、モード設定が学習モードであるか否かを判定し、学習モードであればステップ716に進み、学習モード処理が行われる。処理が終了すると、ステップ702に戻り、処理を繰り返す。ステップ715で、学習モードでないと判定されると、ステップ717に進む。
ステップ717では、モード設定がファイル自動削除モードであるか否かを判定し、ファイル自動削除モードであればステップ718に進み、ファイル自動削除モード処理が行われる。処理が終了すると、ステップ702に戻り、処理を繰り返す。ステップ717で、学習モードでないと判定されると、ステップ702に戻り、処理を繰り返す。
図8は、本実施形態における撮像装置101の第2制御部211が受け持つ動作の例を説明するフローチャートである。
ユーザが撮像装置101に設けられた電源ボタンを操作すると、第1電源部210により電源供給部から第1制御部223へ電源が供給されるのと同様に第2制御部211においても第2電源部212により電源供給部から第2制御部211に電源が供給される。電源が供給されると、Subプロセッサ(第2制御部211)が起動され、図8の処理がスタートする。
ステップ801では、サンプリングの周期となる所定期間が経過したか否かを判定する。例えば10msecに設定された場合、10msec周期で、ステップ802に進む。所定期間が経過していないと判定されると、Subプロセッサは何も処理をせずにステップ801に戻って所定期間が経過するのをまつ。
ステップ802では、学習情報の読み込みが行われる。学習情報は、図7のステップ706でのSubプロセッサへ情報通信する際に、転送された情報であり、例えば以下の情報が読み込まれる。
(1)特定揺れ検出の判定条件
(2)特定音検出の判定条件
(3)時間経過判定の判定条件
ステップ802で学習情報が読み込まれると、ステップ803に進み、揺れ検出値が取得される。揺れ検出値は、装置揺れ検出部209からのジャイロセンサや加速度センサなどの振動検出するセンサからの出力値である。
ステップ803で揺れ検出値が取得されると、ステップ804に進み、予め設定された揺れ状態検出の処理を行う。ここでは、ステップ802で読み込まれた学習情報によって、判定処理を変更する。いくつかの例を説明する。
(1)タップ検出
ユーザが撮像装置101を例えば指先などで叩いた状態(タップ状態)を、撮像装置101に取り付けられた加速度センサの出力値より検出することが可能である。3軸の加速度センサの出力を所定サンプリングで特定の周波数領域に設定したバンドパスフィルタ(BPF)に通すことで、タップによる加速度変化の信号領域を抽出することができる。BPF後の加速度信号を所定時間TimeA間に、所定閾値ThreshAを超えた回数が、所定回数CountAであるか否かにより、タップ検出を行う。ダブルタップの場合は、CountAは2に設定され、トリプルタップの場合は、CountAは3に設定される。また、TimeAやThreshAについても、学習情報によって変化させることができる。
(2)揺れ状態の検出
撮像装置101の揺れ状態を、撮像装置101に取り付けられたジャイロセンサや加速度センサの出力値より検出することが可能である。ジャイロセンサや加速度センサの出力をHPFで高周波成分をカットし、LPFで低周波成分をカットした後、絶対値変換を行う。算出した絶対値が所定時間TimeB間に、所定閾値ThreshBを超えた回数が、所定回数CountB以上であるか否かにより、振動検出を行う。例えば撮像装置101を机などに置いたような揺れが小さい状態か、ウエアラブルで撮像装置101を装着し歩いているような揺れが大きい状態かを判定することが可能である。また、判定閾値や判定のカウント数の条件を複数もつことで、揺れレベルに応じた細かい揺れ状態を検出することも可能である。
TimeBやThreshBやCountBについても、学習情報によって変化させることができる。
上記は揺れ検出センサの条件判定による特定揺れ状態検出の方法を説明した。しかしながら、所定時間内でサンプリングされた揺れ検出センサのデータから、ニューラスネットワークを用いた揺れ状態判定器に入力することで、学習させたニューラルネットワークにより、事前に登録しておいた特定揺れ状態を検出することも可能である。その場合、ステップ802での学習情報読み込みはニューラルネットワークの重みパラメータとなる。
ステップ804で特定揺れ状態検出処理が行われると、ステップ805に進み、予め設定された特定音検出処理を行う。ここでは、ステップ802で読み込まれた学習情報によって、検出判定処理を変更する。いくつかの例を説明する。
(1)特定音声コマンド検出
特定の音声コマンドを検出する。音声コマンドは事前に登録されたいくつかのコマンドの他、ユーザが特定音声を撮像装置に登録できる。
(2)特定音シーン認識
予め大量の音声データを基に解析して、規則性を抽出し、抽出結果に応じて機械学習により学習させたネットワークにより音シーン判定を行う。例えば、「歓声が上がっている」、「拍手している」、「声を発している」などの特定シーンを検出する。検出するシーンは学習によって変化する。
(3)音レベル判定
所定時間の間で、音レベルの大きさがレベル所定値を超えている時間を加算するなどの方法によって、音レベル判定による検出を行う。所定時間やレベル所定値の大きさなどが学習によって変化する。
(4)音方向判定
複数のマイクが設置された平面上の音の方向を検出することができ、所定大きさの音レベルに対して、音の方向を検出する。
音声処理部214内で上記の判定処理が行われており、事前に学習された各設定により、特定音検出がされたかをステップ805で判定する。
ステップ805で特定音検出処理が行われると、ステップ806に進む。ステップ806では、Mainプロセッサ(第1制御部223)はOFF状態であるか否かを判定し、MainプロセッサがOFF状態であれば、ステップ807に進み、予め設定された時間経過検出処理を行う。ここでは、ステップ802で読み込まれた学習情報によって、検出判定処理を変更する。学習情報は、図7で説明したステップ706でのSubプロセッサ(第2制御部211)へ情報通信する際に、転送された情報である。MainプロセッサがONからOFFへ遷移したときからの経過時間が計測されており、経過時間がパラメータTimeC以上であれば、時間経過と判定され、TimeCより小さければ、時間経過とは判定されない。TimeCは、学習情報によって変化するパラメータである。
ステップ807で時間経過検出処理が行われると、ステップ808に進み、低消費電力モード解除判定がされたかを判定する。低消費電力モード解除条件は以下によって判定される。
(1)特定揺れ検出の判定条件
(2)特定音検出の判定条件
(3)時間経過判定の判定条件
それぞれ、ステップ804での特定揺れ状態検出処理により、特定揺れ検出の判定条件に入ったか否かを判定できる。また、ステップ805での特定音検出処理により、特定音検出の判定条件に入ったか否かを判定できる。また、ステップ807での時間経過検出処理により、時間経過検出の判定条件に入ったか否かを判定できる。したがって、何れか一つ以上の条件に入っていれば、低消費電力モード解除を行うような判定が行われる。
ステップ808で解除条件判定されると、ステップ809に進みMainプロセッサの電源をONし、ステップ810で、低消費電力モード解除と判定された条件(揺れ、音、時間)をMainプロセッサに通知し、ステップ801に戻り処理をループする。
ステップ808で何れの解除条件にも当てはまらなく、低消費電力モード解除判定でないと判定されると、ステップ801に戻り処理をループする。
ステップ806で、MainプロセッサがON状態であると判定されている場合、ステップ803乃至805までで取得した情報をMainプロセッサに通知し、ステップ801に戻り処理をループする。
本実施形態においては、MainプロセッサがON状態においても揺れ検出や特定音検出をSubプロセッサで行い、検出結果をMainプロセッサに通知する構成にしている。しかしながら、MainプロセッサがONの場合は、ステップ803乃至805の処理を行わず、Mainプロセッサ内の処理(図7のステップ702)で揺れ検出や特定音検出を検出する構成にしてもよい。
上記のように図7のステップ704乃至ステップ707や、図8の処理を行うことで、低消費電力モードに移行する条件や低消費電力モードを解除する条件が、ユーザの操作に基づいて学習される。これにより、撮像装置101を所有するユーザの使い勝手に合わせた撮像動作を行うことができる。学習の方法については後述する。
上記、揺れ検出や音検出や時間経過による低消費電力モード解除方法について詳しく説明したが、環境情報により低消費電力モード解除を行ってもよい。環境情報は温度や気圧や明るさや湿度や紫外線量の絶対量や変化量が所定閾値を超えたか否かで判定することができ、後述する学習により閾値を変化させることもできる。
また、揺れ検出や音検出や時間経過の検出情報や、各環境情報の絶対値や変化量をニューラルネットワークに基づく判断によって、低消費電力モード解除を判定してもできるし、この判定処理は、後述する学習によって、判定条件を変更することができる。
<自動撮影モード処理>
図9を用いて、自動撮影モード処理の詳細を説明する。前述したように、以下の処理は、本実施形態における撮像装置101の第1制御部223が制御を受け持つ。
S901では、画像処理部207に撮像部206で取り込まれた信号を画像処理させ、被写体認識用の画像を生成させる。
生成された画像からは、人物や物体認識などの被写体認識が行われる。
人物を認識する場合、被写体の顔や人体を検出する。顔検出処理では、人物の顔を判断するためのパターンが予め定められており、撮像された画像内に含まれる該パターンに一致する箇所を人物の顔画像として検出することができる。
また、被写体の顔としての確からしさを示す信頼度も同時に算出し、信頼度は、例えば画像内における顔領域の大きさや、顔パターンとの一致度等から算出される。
物体認識についても同様に、予め登録されたパターンに一致する物体を認識することができる。
また、撮像された画像内の色相や彩度等のヒストグラムを使用する方法で特徴被写体を抽出する方法などもある。この場合、撮影画角内に捉えられている被写体の画像に関し、その色相や彩度等のヒストグラムから導出される分布を複数の区間に分け、区間ごとに撮像された画像を分類する処理が実行される。
例えば、撮像された画像について複数の色成分のヒストグラムが作成され、その山型の分布範囲で区分けし、同一の区間の組み合わせに属する領域にて撮像された画像が分類され、被写体の画像領域が認識される。
認識された被写体の画像領域ごとに評価値を算出することで、当該評価値が最も高い被写体の画像領域を主被写体領域として判定することができる。
以上の方法で、撮像情報から各被写体情報を得ることができる。
S902では、像揺れ補正量の算出を行う。具体的には、まず、装置揺れ検出部209において取得した角速度および加速度情報に基づいて撮像装置の絶対角度の算出を行う。そして、絶対角度を打ち消す角度方向にチルト回転ユニット104およびパン回転ユニット105を動かす防振角度を求め、像揺れ補正量とする。なお、ここでの像揺れ補正量算出処理は、後述する学習処理によって、演算方法を変更することができる。
S903では、撮像装置の状態判定を行う。角速度情報や加速度情報やGPS位置情報などで検出した角度や移動量などにより、現在、撮像装置がどのような振動/動き状態なのかを判定する。
例えば、車に撮像装置101を装着して撮影する場合、移動された距離によって大きく周りの風景などの被写体情報が変化する。
そのため、車などに装着して速い速度で移動している「乗り物移動状態」か否かを判定し、後に説明する自動被写体探索に使用することができる。
また、角度の変化が大きいか否かを判定し、撮像装置101が揺れ角度がほとんどない「置き撮り状態」であるのかを判定する。
「置き撮り状態」である場合は、撮像装置101自体の角度変化はないと考えてよいので、置き撮り用の被写体探索を行うことができる。
また、比較的、角度変化が大きい場合は、「手持ち状態」と判定され、手持ち用の被写体探索を行うことができる。
S904では、被写体探索処理を行う。被写体探索は、以下の処理によって構成される。
(1)エリア分割
図13を用いて、エリア分割を説明する。図13(a)のように撮像装置(原点Oが撮像装置位置とする。)位置を中心として、全周囲でエリア分割を行う。図13(a)の例においては、チルト方向、パン方向それぞれ22.5度で分割している。図13(a)のように分割すると、チルト方向の角度が0度から離れるにつれて、水平方向の円周が小さくなり、エリア領域が小さくなる。よって、図13(b)のように、チルト角度が45度以上の場合、水平方向のエリア範囲は22.5度よりも大きく設定している。図13(c)、(d)に撮影画角内でのエリア分割された例を示す。軸1301は初期化時の撮像装置101の方向であり、この方向角度を基準位置としてエリア分割が行われる。1302は、撮像されている画像の画角エリアを示しており、そのときの画像例を図13(d)に示す。画角に写し出されている画像内ではエリア分割に基づいて、図13(d)の1303~1318のように画像分割される。
(2)エリア毎の重要度レベルの算出
前記のように分割した各エリアについて、エリア内に存在する被写体やエリアのシーン状況に応じて、探索を行う優先順位を示す重要度レベルを算出する。被写体の状況に基づいた重要度レベルは、例えば、エリア内に存在する人物の数、人物の顔の大きさ、顔向き、顔検出の確からしさ、人物の表情、人物の個人認証結果に基づいて算出する。また、シーンの状況に応じた重要度レベルは、例えば、一般物体認識結果、シーン判別結果(青空、逆光、夕景など)、エリアの方向からする音のレベルや音声認識結果、エリア内の動き検知情報等である。また、撮像装置の状態判定(S903)で、撮像装置の振動状態が検出されており、振動状態に応じても重要度レベルが変化するようにもすることができる。例えば、「置き撮り状態」と判定された場合、顔認証で登録されている中で優先度の高い被写体(例えば撮像装置のユーザである)を中心に被写体探索が行われるように、特定人物の顔認証を検出すると重要度レベルが高くなるように判定される。また、後述する自動撮影も上記顔を優先して行われることになり、撮像装置のユーザが撮像装置を身に着けて持ち歩き撮影を行っている時間が多くても、撮像装置を取り外して机の上などに置くことで、ユーザが写った画像も多く残すことができる。このときパン・チルトにより探索可能であることから、撮像装置の置き角度などを考えなくても、適当に設置するだけでユーザが写った画像やたくさんの顔が写った集合写真などを残すことができる。なお、上記条件だけでは、各エリアに変化がない限りは、最も重要度レベルが高いエリアが同じとなり、その結果探索されるエリアがずっと変わらないことになってしまう。そこで、過去の撮影情報に応じて重要度レベルを変化させる。具体的には、所定時間継続して探索エリアに指定され続けたエリアは重要度レベルを下げたり、後述するS910にて撮影を行ったエリアでは、所定時間の間重要度レベルを下げたりしてもよい。
(3)探索対象エリアの決定
前記のように各エリアの重要度レベルが算出されたら、重要度レベルが高いエリアを探索対象エリアとして決定する。そして、探索対象エリアを画角に捉えるために必要なパン・チルト探索目標角度を算出する。
S905では、パン・チルト駆動を行う。具体的には、像振れ補正量とパン・チルト探索目標角度に基づいた制御サンプリングでの駆動角度を加算することで、パン・チルト駆動量を算出し、鏡筒回転駆動部205によって、チルト回転ユニット104、パン回転ユニット105をそれぞれ駆動制御する。
S906ではズームユニット201を制御しズーム駆動を行う。具体的には、S904で決定した探索対象被写体の状態に応じてズームを駆動させる。例えば、探索対象被写体が人物の顔であるとき、画像上の顔が小さすぎると検出可能な最小サイズを下回ることで検出ができず、見失ってしまう恐れがある。そのような場合は、望遠側にズームすることで画像上の顔のサイズが大きくなるように制御する。一方で、画像上の顔が大きすぎる場合、被写体や撮像装置自体の動きによって被写体が画角から外れやすくなってしまう。そのような場合は、広角側にズームすることで、画面上の顔のサイズが小さくなるように制御する。このようにズーム制御を行うことで、被写体を追跡するのに適した状態を保つことができる。
S904乃至S906では、パン・チルトやズーム駆動により被写体探索を行う方法を説明したが、広角なレンズを複数使用して全方位を一度に撮影する撮像システムで被写体探索を行ってもよい。全方位カメラの場合、撮像によって得られる信号すべてを入力画像として、被写体検出などの画像処理を行うと膨大な処理が必要となる。そこで、画像の一部を切り出して、切り出した画像範囲の中で被写体の探索処理を行う構成にする。上述した方法と同様にエリア毎の重要レベルを算出し、重要レベルに基づいて切り出し位置を変更し、後述する自動撮影の判定を行う。これにより画像処理による消費電力の低減や高速な被写体探索が可能となる。
S907では、ユーザ(手動)による撮影指示があったがどうかを判定し、撮影指示があった場合、S908aに進み、撮影指示が無かった場合はS908bに進む。この時、ユーザ(手動)による撮影指示は、シャッターボタン押下によるものや、撮像装置の筺体を指等で軽く叩く(タップ)、音声コマンド入力、外部機器からの指示などによってもよい。タップ操作による撮影指示は、ユーザが撮像装置の筺体をタップした際、装置揺れ検出部209によって短期間に連続した高周波の加速度を検知し、撮影のトリガーとする撮影指示方法である。音声コマンド入力は、ユーザが所定の撮影を指示する合言葉(例えば「写真とって」等)を発声した場合、音声処理部214で音声を認識し、撮影のトリガーとする撮影指示方法である。外部機器からの指示は、例えば撮像装置とBlueTooth接続したスマートフォン等から、専用のアプリケーションを介して送信されたシャッター指示信号をトリガーとする撮影指示方法である。
S908bでは、自動撮影判定を行う。自動撮影判定では、自動撮影を行うかどうかの判定と、撮影方法の判定(静止画一枚撮影、静止画連続撮影(連写)、動画撮影、パノラマ撮影、タイムラプス撮影などの内どれを実行するかの判定)を行う。なお、S908aにおいては、撮影を行うかどうかの判定自体はS907で決定されているため、後述の撮影方法の判定のみを行う。
(1)自動撮影を行うかどうかの判定
自動撮影を行うかどうかの判定は以下の2つの判定に基づいて行う。1つは、S904にて得られたエリア別の重要度レベルに基づき、重要度レベルが所定値を超えている場合、自動撮影を実施する判定を下す。2つめは、ニューラルネットワークに基づく判定である。ニューラルネットワークの一例として、多層パーセプトロンによるネットワークの例を図12に示す。ニューラルネットワークは、入力値から出力値を予測することに使用されるものであり、予め入力値と、その入力に対して模範となる出力値とを学習しておくことで、新たな入力値に対して、学習した模範に倣った出力値を推定することができる。なお、学習の方法は後述する。図12の1201およびその縦に並ぶ丸は入力層のニューロンであり、1203およびその縦に並ぶ丸は中間層のニューロンであり、1204は出力層のニューロンである。1202のような矢印は各ニューロンを繋ぐ結合を示している。ニューラルネットワークに基づく判定では、入力層のニューロンに対して、現在の画角中に写る被写体や、シーンや撮像装置の状態に基づいた特徴量を入力として与え、多層パーセプトロンの順伝播則に基づく演算を経て出力層から出力された値を得る。そして、出力の値が閾値以上であれば、自動撮影を実施する判定を下す。なお、被写体の特徴は、現在のズーム倍率、現在の画角における一般物体認識結果、顔検出結果、現在画角に写る顔の数、顔の笑顔度・目瞑り度、顔角度、顔認証ID番号、被写体人物の視線角度、シーン判別結果、特定の構図の検出結果等を使用する。また、前回撮影時からの経過時間、現在時刻、GPS位置情報および前回撮影位置からの変化量、現在の音声レベル、声を発している人物、拍手、歓声が上がっているか否か等を使用してもよい。また、振動情報(加速度情報、撮像装置の状態)、環境情報(温度、気圧、照度、湿度、紫外線量)等を使用してもよい。更に、ウエアラブルデバイス501からの情報通知がある場合、通知情報(ユーザの運動情報、腕のアクション情報、心拍などの生体情報など)も特徴として使用してもよい。この特徴を所定の範囲の数値に変換し、特徴量として入力層の各ニューロンに与える。そのため、入力層の各ニューロンは上記使用する特徴量の数だけ必要となる。
なお、このニューラルネットワークに基づく判断は、後述する学習処理によって、各ニューロン間の結合重みを変化させることによって、出力値が変化し、判断の結果を学習結果に適応させることができる。
また、図7のステップ702で読み込んだMainプロセッサの起動条件によって、自動撮影される判定も変化する。例えば、タップ検出による起動や特定音声コマンドによる起動の場合は、ユーザが現在撮影してほしいための操作である可能性が非常に高い。そこで、撮影頻度が多くなるように設定されるようになる。
(2)撮影方法の判定
撮影方法の判定では、S901乃至S904において検出した、撮像装置の状態や周辺領域の被写体の状態に基づいて、静止画撮影、動画撮影、連写、パノラマ撮影などの内どれを実行するかの判定を行う。例えば、被写体(人物)が静止している場合は静止画撮影を実行し、被写体が動いている場合は動画撮影または連写を実行する。また、被写体が撮像装置を取り囲むように複数存在している場合や、前述したGPS情報に基づいて景勝地であることが判断できた場合には、パン・チルトを操作させながら順次撮影した画像を合成してパノラマ画像を生成するパノラマ撮影処理を実行してもよい。なお、<自動撮影を行うかどうかの判定>での判定方法と同様に、撮影前に検出した各種情報をニューラルネットワークに基づく判断によって、撮影方法を判定することもできるし、この判定処理は、後述する学習処理によって、判定条件を変更することができる。
また、撮影方法の判定処理において、S908aで行う場合は、ユーザによる手動撮影指示に基づいて行うため、さらにユーザの意図に応じた撮影方法の判定を行うことも可能である。以下、図25を用いて、ユーザ意図を反映した撮影方法の判定処理に関して説明する。
<ユーザによる手動撮影指示に基づく撮影方法の判定>
図25はユーザによる手動撮影指示を行う際の、カメラの構え方、及び被写体の状態の例を表したものである。
まず、図25(a)では、目の前にある物の撮影のため、ユーザがカメラを身に着けたまま、少し前方に突き出しながら撮影している状態を示している。これは、例えば訪れた店の外観をメモ程度に撮影するようなシーンが考えられる。このようなシーンにおいては、例えばさっと通常静止画を撮影してくれることが望まれる。それに対し、図25(b)では、景勝地を撮影するため、ユーザが首から下げていたカメラを手持ちに切り替え、前方上方に掲げながら撮影している状態を示している。これは、例えば山の展望台のような開けた景色を撮影するようなシーンが考えられる。このようなシーンでは、例えばパノラマ撮影が期待されていたり、そうでない場合であっても、パノラマ撮影をした画像をユーザに提示することで、ユーザはそのような撮影方法を知り、今後の撮影に生かすことが可能となる。そこで、これらの判別を行うため、例えば保持状態から撮影に至るまでのカメラの移動距離を検出することにより、図25(a)のようなシーンなのか、図25(b)のようなシーンなのかを判別することが可能となる。
このように、カメラの構え方によって、好まれる撮影方法が異なる場合があるため、撮影に至る際のカメラの状態に応じて撮影方法を切り替えることが可能となる。
次に、図25(c)に関して説明する。図25(c)では、カメラの構え方としては図25(b)と類似している。しかし、図25(c)では被写体がやや上方にあり、それを撮影するために上に掲げて撮影するシーンを想定している。このような場合のユーザの目的としては、例えば、図25(a)で示したように、さっと通常静止画を撮影してくれることが望まれる。そこで、これらの判別を行うため、例えば被写体距離を検出することにより、図25(b)のようなシーンなのか、図25(c)のようなシーンなのかを判別することが可能となる。
このように、被写体の状態によって、好まれる撮影方法が異なる場合があるため、撮影に至る際のカメラの状態、及び見えている被写体の状態に応じて撮影方法を切り替えることが可能となる。
このような判定方法は、さらに図25(d)、(e)のような場合においても適用することが可能である。
図25(d)では、目の前にある縦長の被写体の撮影のため、ユーザが首から下げていたカメラを手持ちに切り替え、上向きに構えながら撮影している状態を示している。これは、例えば観光地で高層建築物を撮影するようなシーンが考えらえる。このようなシーンでは、例えば縦向きのパノラマ撮影が期待されていたり、そうでない場合であっても、縦向きのパノラマ撮影をした画像をユーザに提示することで、ユーザはそのような撮影方法を知り、今後の撮影に生かすことが可能となる。そこで、このような場合においては、例えばカメラの保持角度を検出することにより、図25(a)~(c)のようなシーンなのか、図25(d)のようなシーンなのかを判別することが可能となる。なお、この時の被写体の状態として、例えば被写体までの距離、及び被写体の上下、左右の領域にある被写体までの距離をさらに判定することにより、縦向きのパノラマと横向きのパノラマのどちらが好ましいかという判別の精度を上げることも可能である。すなわち、被写体・及びその上下領域の距離が同程度の距離にあるのであれば、縦方向のパノラマ撮影を行うといった判断をすることが可能となる。
図25(e)では、360度撮影のため、ユーザが首から下げていたカメラを手持ちに切り替え、真上に構えながら撮影している状態を示している。これは、例えば山頂で周囲を見回す画像を撮影するようなシーンが考えられる。この時、例えばユーザは外部機器を用いて360度撮影モードに設定し、撮影指示を行うことが考えられる。そこで、例えばこのような場合には外部機器を操作しようとした時に、360度撮影への移行を伺うようなUIを提示すれば、ユーザの操作の手間を削減することが可能となる。さらには、そのようなことを何度か繰り返すうちに、ユーザは外部機器を操作するまでもなく、真上に掲げてシャッターボタンを押下するだけで360度撮影が行えることを期待するようになる。そこで、このような場合においては、例えば保持状態から撮影に至るまでのカメラの移動方向が真上方向だった場合は360度撮影を行うといったようにすることで、ユーザの撮影の手間を軽減することが可能なる。
このように、カメラの状態、及び被写体の状態に基づいて撮影方法を切り替えることにより、撮影時・及び撮影画像確認時におけるユーザの手間を軽減することが可能となる。
なお、このようなカメラの状態と被写体の状態に応じた、期待される撮影方法の判定においても、<自動撮影を行うかどうかの判定>での判定方法と同様に、ニューラルネットワークに基づく判断によって撮影方法を判定することもできる。また、この判定処理は、後述する学習処理によってユーザごとに判定条件を変更することも可能である。このような場合、学習の初期段階においては複数の撮影方法により複数の画像を記録しておき、後述する学習処理において、ユーザがどの撮影方法の画像を好んだかに応じて、判定条件を変えていくことが可能である。
このように、ユーザによる手動撮影指示があった場合において、ユーザの意図に応じた撮影方法の判定に関して説明したが、このような処理はS908bのような、手動撮影指示が無い場合の自動撮影判定処理においても、適用することが可能である。すなわち、カメラを構えたと判定された際に、そのカメラの構え方を検出することにより、同様にユーザ意図を反映した撮影方法の判定を行うことも可能である。このような、カメラの構え方の検出処理を図26を用いて説明する。
図26はライフログカメラにおける、加速度センサの出力の例を示したものである。この図では静止(a)→歩行(b)→静止(c)→カメラを構える(d)→カメラ保持・撮影(e)→カメラ持ち替え(f)→カメラを構える(g)→カメラ保持・撮影(h)の様子と、その時の加速度変化の様子の例を示している。例えば、(a)、(c)の期間はライフログカメラを身につけた状態であるため、体の振動程度の変化となっている。(b)の期間は歩行開始・終了時に大きな加速、及び減速が発生し、その間は歩行時の体の揺れに応じた変化となっている。また、(d)や(g)の期間は撮影のためにカメラを構える期間を表しており、図のようにある程度安定した加速度となり、構え終わった(e)、(h)の期間では再度手振れ程度の振動となっている。また、(f)の期間はライフログカメラを首にかけた状態から手持ちに切り替えている期間であり、この期間は一時的にランダムな動作となるため、乱雑な大きな変化となっている。
なお、「カメラを構える」は、前述の、「カメラを身に着けたまま、少し前方に突き出しながら撮影」を表し、「カメラを構える」は、前述の「首から下げていたカメラを手持ちに切り替え、前方上方に掲げながら撮影」を表している。このような場合において、(e)及び(h)の撮影はユーザ指示に基づかず、前述の自動撮影を行うかどうかの判定により、撮影を行うことも可能となる。この時、前述したカメラの構え方を抽出できるのであれば、前述の、撮影方法の判定を実施することが可能となる。このためには、図26の加速度変化のうち、カメラを構えている期間(d)、(g)を抽出することが必要となる。これには、例えば加速度を監視しておき、閾値以上の加速、及び減速が発生した際に、その期間をカメラを構えている期間として検出することが可能である。なお、この閾値は例えば手振れ、歩行ブレよりも大きい変化を検出するように図中の±Thのような値を設定することが可能である。さらには、精度を向上させるため、以下のような条件を設けることも可能である。
手振れ程度を閾値とし、閾値以上の加速、及び減速が発生した後、一定期間(図中(e)、(h)程度)の間、閾値以内のブレに収まっているかどうかを判別することで、歩行による加速度変化期間を除外する。
一定期間(図中(d)(g)以上、(b)未満)内に加速、及び減速が発生しているかどうかを判別することで、歩行による加速度変化期間を除外する。
短時間に加速、及び減速が頻発する期間を除外することで、(f)のような持ち替え期間を除外する。
このように、カメラの加速度を監視することで、自動撮影時においても、カメラの構え方を検出し、ユーザ意図を反映した撮影方法の判定が可能となる。
S909では、S908bの自動撮影判定により撮影する判定が下された場合、S910に進み、下されなかった場合、撮影モード処理終了へと進む。
S910では、自動撮影を開始する。この時、S908a、またはS908bにて判定された撮影方法による撮影を開始する。その際、フォーカス駆動制御部204によるオートフォーカス制御を行う。また、不図示の絞り制御部およびセンサゲイン制御部、シャッター制御部を用いて、被写体が適切な明るさになるような露出制御を行う。さらに、撮影後には画像処理部207において、オートホワイトバランス処理、ノイズリダクション処理、ガンマ補正処理等、種々の画像処理を行い、画像を生成する。
なお、この撮影の際に、所定の条件を満たした時、撮像装置が撮影対象となる人物に対し撮影を行う旨を報知処理した上で撮影する手段を取ってもよい。報知の方法は、例えば、音声出力部218からの音声やLED制御部224によるLED点灯光を使用してもよいし、パン・チルトを駆動することにより視覚的に被写体の視線を誘導するモーション動作をしてもよい。所定の条件は、例えば、画角内における顔の数、顔の笑顔度・目瞑り度、被写体人物の視線角度や顔角度、顔認証ID番号、個人認証登録されている人物の数党である。また、撮影時の一般物体認識結果、シーン判別結果、前回撮影時からの経過時間、撮影時刻、GPS情報に基づく現在位置が景勝地であるか否か、撮影時の音声レベル、声を発している人物の有無、拍手、歓声が上がっているか否か等である。また、振動情報(加速度情報、撮像装置の状態)、環境情報(温度、気圧、照度、湿度、紫外線量)等である。これらの条件に基づき報知撮影を行うことによって、重要性が高いシーンにおいてカメラ目線の好ましい画像を残すことができる。
また、所定の条件を複数もち、各条件に応じて音声を変更したり、LEDの点灯方法(色や点滅時間など)を変更したり、パン・チルトのモーション方法(動き方や駆動速度)を変更してもよい。
このような撮影前の報知についても、撮影画像の情報、或いは撮影前に検出した各種情報をニューラルネットワークに基づく判断によって、報知の方法やタイミングを判定することもできる。また、この判定処理は、後述する学習処理によって、判定条件を変更することができる。
S911では、S910にて生成した画像を加工したり、動画に追加したりといった編集処理を行う。画像加工については、具体的には、人物の顔や合焦位置に基づいたトリミング処理、画像の回転処理、HDR(ハイダイナミックレンジ)効果、ボケ効果、色変換フィルタ効果などである。画像加工は、S910にて生成した画像を元に、上記の処理の組み合わせによって複数生成し、前記S910にて生成した画像とは別に保存するとしてもよい。また、動画処理については、撮影した動画または静止画を、生成済みの編集動画にスライド、ズーム、フェードの特殊効果処理をつけながら追加するといった処理をしてもよい。S911での編集についても、撮影画像の情報、或いは撮影前に検出した各種情報をニューラルネットワークに基づく判断によって、画像加工の方法を判定することもできるし、この判定処理は、後述する学習処理によって、判定条件を変更することができる。
S912では撮影画像の学習情報生成処理を行う。ここでは、後述する学習処理に使用する情報を生成し、記録する。具体的には、今回の撮影画像における、撮影時のズーム倍率、撮影時の一般物体認識結果、顔検出結果、撮影画像に写る顔の数、顔の笑顔度・目瞑り度、顔角度、顔認証ID番号、被写体人物の視線角度等である。また、シーン判別結果、前回撮影時からの経過時間、撮影時刻、GPS位置情報および前回撮影位置からの変化量、撮影時の音声レベル、声を発している人物、拍手、歓声が上がっているか否か等である。また、振動情報(加速度情報、撮像装置の状態)、環境情報(温度、気圧、照度、湿度、紫外線量)、動画撮影時間、手動撮影指示によるものか否か、等である。更にユーザの画像の好みを数値化したニューラルネットワークの出力であるスコアも演算する。
これらの情報を生成し、撮影画像ファイルへタグ情報として記録する。あるいは、不揮発性メモリ216へ書き込むか、記録媒体221内に、所謂カタログデータとして各々の撮影画像の情報をリスト化した形式で保存する、としてもよい。
S913では過去撮影情報の更新を行う。具体的には、S908bの説明で述べたエリア毎の撮影枚数や、個人認証登録された人物毎の撮影枚数、一般物体認識で認識された被写体毎の撮影枚数、シーン判別のシーン毎の撮影枚数について、今回撮影された画像が該当する枚数のカウントを1つ増やす。
<自動編集モード処理(ハイライト動画)>
次に、本実施形態における自動編集モード処理(ハイライト動画)について説明する。
図7のステップ704のモード設定判定にて、自動編集処理(ハイライト動画)を行うか否かを判定し、自動編集処理を行う場合、ステップ712の自動編集モード処理を行う。
自動編集モードの判定条件を説明する。自動編集モードに移行するか否かは、前回編集処理を行ってからの経過時間や、前回編集処理を行った時点以降で撮影された各画像のタグ情報(学習情報やユーザの画像の好みを数値化したスコアなど)に基づいて判定される。ステップ704のモード設定判定処理内で判定される、自動編集モードに移行すべきか否かの判定処理フローを図10に示す。
ステップ704のモード設定判定処理内で自動編集モード判定が開始指示されると、図10の処理がスタートする。ステップ1001では、前回自動編集処理が行われてからの経過時間TimeDを取得し、ステップ1002に進む。ステップ1002では、前回編集処理を行った時点以降で撮影された各画像に対応した学習情報やスコアなどを取得し、ステップ1003に進む。ステップ1003では、ステップ1002で取得した各データから自動編集を行うべきかどうかを判定するための評価値DBを演算する。評価値の演算方法は、例えば、各画像情報から画像の特徴を抽出し、特徴の種類が多い場合は点数が高くなるようにする。また、上記自動撮影で説明したとおり各画像には、ユーザの好みを判定されたスコアが演算されており、スコアが高い画像が多い場合も点数が高くなるようにする。また、撮影された数が多くても点数は高くなるように計算する。これにより評価値はスコアの点数の高さに依存し、画像の数に依存し、特徴の種類にも異存することになる。ステップ1004に進む。ステップ1004では、TimeDから閾値DAを演算する。例えば、TimeDが所定値よりも小さい場合の閾値DAaが、所定値よりも大きい場合の閾値DAbよりも大きく設定されており、時間経過によって、閾値が小さくなるように設定してある。これにより、撮影データが少ない場合においても、時間経過が大きいと自動編集処理を行うようにすることで、使用時間に応じて撮像装置が自動的にハイライト動画を作成してくれるようにしてある。
ステップ1004の処理を終了すると、ステップ1005に進み、評価値DBが、閾値DAより大きい場合、ステップ1006に進む。前回自動編集を行った時点から、自動編集すべきデータを得ることができた、或いは時間経過が大きく、自動編集を行うべきだと判定された場合であるので、自動編集モードをTRUEにして、自動編集モード判定を終了する。ステップ1005で、評価値DBが閾値DA以下である場合は、自動編集すべきデータが揃っていないと判定され、自動編集処理は行わないように自動編集モード判定をFALSEにし、自動編集モード判定処理を終了する。
次に自動編集モード処理(ステップ712)内の処理について説明する。自動編集モード処理の詳細なフローを図11に示す。
S1101にて、記録媒体221に保存された静止画像、動画像の選抜処理を第1制御部223で実施し編集に使用する画像を選抜し、S1102へ進む。
ここでいう画像選抜処理とは、撮影された静止画像、動画像の中の顔の数、顔のサイズ、色群などのメタデータを画像毎に抽出を行い、評価値に換算し定めた閾値以上のものを列挙する事とする。後述する学習により、静止画像及び動画像の選抜比率を決定し、ユーザの設定、撮影頻度、各設定を顧みて優先的に選抜を行うようにする。
S1102にて、S1101で選抜された画像に対して第1制御部223、画像処理部207で画像効果付与を行いS1103に進む。
ここでいう画像効果付与とは、静止画像において、人物の顔や合焦位置の中心でのトリミング処理、画像の回転処理、HDR(ハイダイナミックレンジ)効果、ボケ効果、スライド、ズーム、フェードの特殊効果処理、色フィルタ効果などとする。
動画像においても同様に色フィルタ付与を行う。
S1103にて、第1制御部223にて画像再生時間の設定を行いS1104に進む。S1101にて選抜された画像を用いて、S1105で説明するハイライト動画を作成のため、後述する学習に基づいて適切な画像の再生時間を設定する。
S1104にて、第1制御部223にてS1105で説明するハイライト動画に付与する音楽(BGM)の設定を行いS1105に進む。音楽(BGM)の設定についても後述する学習した結果よりユーザへ提供する最も適切なものを設定する事とする。
S1105にて、第1制御部223にてS1101からS1104で行った結果を用いて一連のハイライト動画作成を行う。作成したハイライト動画は、記録媒体221に保存する。
なお、上記説明した画像の選抜や、画像効果付与や、再生時間やBGM選択は、各画像に付加されているタグ情報(撮影画像の情報、或いは撮影前に検出した各種情報)から、ニューラルネットワークに基づく判断によって、判定することができる。また、この判定処理は、後述する学習処理によって、判定条件を変更することもできる。
<学習モード処理>
次に、本実施形態におけるユーザの好みに合わせた学習について説明する。
本実施形態では、図12に示すようなニューラルネットワークを用い、機械学習アルゴリズムを使用して、学習処理部219にてユーザの好みに合わせた学習を行う。ニューラルネットワークは、入力値から出力値を予測することに使用されるものであり、予め入力値の実績値と出力値の実績値を学習しておくことで、新たな入力値に対して、出力値を推定することができる。ニューラルネットワークを用いることにより、前述の自動撮影や自動編集、被写体探索に対して、ユーザの好みに合わせた学習を行う。
また、ニューラルネットワークに入力する特徴データともなる被写体登録(顔認証や一般物体認識など)を登録したり、撮影報知制御や低消費電力モード制御やファイル自動削除を学習によって変更することも行う。
本実施形態において、学習処理により、学習される要素は以下である。
(1)自動撮影
自動撮影に対する学習について説明する。自動撮影では、ユーザの好みに合った画像の撮影を自動で行うための学習を行う。図9のフローを用いた説明で上述したように、撮影後(ステップS912)に学習情報生成処理が行われている。後述する方法により学習させる画像を選択させ、画像に含まれる学習情報を基に、ニューラルネットワークの重みを変化させることで学習する。学習は、自動撮影タイミングの判定を行うニューラルネットワークの変更と、撮影方法(静止画撮影、動画撮影、連写、パノラマ撮影など)の判定をニューラルネットワークの変更で行われる。
(2)自動編集
自動編集に対する学習について説明する。自動編集は、図9のステップ911での撮影直後の編集と、図11で説明したハイライト動画の編集のそれぞれに対して学習が行われる。撮影直後の編集について説明する。後述する方法により学習させる画像を選択させ、画像に含まれる学習情報を基に、ニューラルネットワークの重みを変化させることで学習する。撮影或いは撮影直前の情報により得られた各種検出情報をニューラルネットワークに入力し、編集方法(トリミング処理、画像の回転処理、HDR(ハイダイナミックレンジ)効果、ボケ効果、色変換フィルタ効果など)の判定を行う。ハイライト動画の編集について説明する。ハイライト動画は、ユーザの好みに合ったアルバム動画作成を自動で行うための学習を行う。後述する方法により学習させる画像を選択させ、画像に含まれる学習情報を基に、ニューラルネットワークの重みを変化させることで学習する。撮影或いは撮影直前の情報により得られた各種検出情報をニューラルネットワークに入力し、画像効果付与(トリミング処理、回転処理、HDR効果、ボケ効果、スライド、ズーム、フェード、色変換フィルタ効果、BGM、時間、静止画動画比率)の判定を行う。
(3)被写体探索
被写体探索に対する学習について説明する。被写体探索では、ユーザの好みに合った被写体の探索を自動で行うための学習を行う。図9のフローを用いた説明で上述したように、被写体探索処理(ステップS904)において、各エリアの重要度レベルを算出し、パン・チルト、ズームを駆動し、被写体探索を行っている。学習は撮影画像や探索中の検出情報によって学習され、ニューラルネットワークの重みを変化させることで学習する。探索動作中の各種検出情報をニューラルネットワークに入力し、重要度レベルの算出を行い、重要度レベルに基づきパン・チルトの角度を設定することで学習を反映した被写体探索を行う。また、重要度レベルに基づくパン・チルト角度の設定以外にも、例えば、パン・チルト駆動(速度、加速度、動かす頻度)の学習も行う。
(4)被写体登録
被写体登録に対する学習について説明する。被写体登録では、ユーザの好みに合った被写体の登録やランク付けを自動で行うための学習を行う。学習として、例えば、顔認証登録や一般物体認識の登録、ジェスチャーや音声認識、音によるシーン認識の登録を行う。認証登録は人と物体に対する認証登録を行い、画像取得される回数や頻度、手動撮影される回数や頻度、探索中の被写体の現れる頻度からランク設定を行う。登録された情報は、各ニューラルネットワークを用いた判定の入力として登録されることになる。
(5)撮影報知制御
撮影報知に対する学習について説明する。図9のS910で説明したように、撮影直前に、所定の条件を満たしたとき、撮像装置が撮影対象となる人物に対して撮影を行う旨を報知した上で撮影することも行う。例えば、パン・チルトを駆動することにより視覚的に被写体の視線を誘導するモーションや、音声出力部218から発するスピーカー音や、LED制御部224によるLED点灯光を使用する。上記報知の直後に被写体の検出情報(例えば、笑顔度、目線検出、ジェスチャー)が得られたか否かで、検出情報を学習に使用するかを判定し、ニューラルネットワークの重みを変化させることで学習する。または、後述する方法により学習させる画像を選択させ、画像に含まれる学習情報を基に、ニューラルネットワークの重みを変化させることで学習する。画像には、撮影直前にどのように報知動作が行われたかの情報が埋め込まれており、選択された画像に付加された検出情報や上記撮影直前の報知動作情報を教師データとして解析して、規則性を抽出し、抽出結果に応じて学習する。撮影直前の各検出情報をニューラルネットワークに入力し、報知を行うか否かの判定や、各報知動作(音(音レベル/音の種類/タイミング)、LED光(色、点灯時間、点滅間隔)、パン・チルトモーション(動き方、駆動速度))の判定を行う。各報知動作の学習については、予め用意された報知方法(音、LED光、パン・チルトモーションの複合動作)の中からどの報知を行うかを選択する学習を行う方法でもよい。また、音、LED光、パン・チルトモーションの各報知動作それぞれに対して別々のニューラルネットワークを設けてそれぞれの動作を学習する方法でもよい。
(6)低消費電力モード制御
図7、図8を用いて、説明したようにMainプロセッサ(第1制御部223)の供給電源をON/OFFする制御を行うが、低消費電力モードからの復帰条件や、低消費電力状態への遷移条件の学習が行われる。
まず、低消費電力モードを解除する条件の学習について説明する。
[タップ検出]
上述したとおり、所定時間TimeAや所定閾値ThreshAを学習により変化させる。上記のタップ検出の閾値を下げた状態での仮タップ検出も行っており、タップ検出前に仮タップ検出が判定されていたか否かで、TimeAやThreshAのパラメータを検出し易いように設定する。また、タップ検出後の検出情報から、起動要因ではなかった(上述した被写体探索や自動撮影判定の結果、撮影対象がいない)と判定されると、TimeAやThreshAのパラメータを検出し難いように設定する。起動時の撮影対象がいるか否かの判定は後述する学習方法により学習された画像に埋め込まれた被写体検出情報により変化することになる。
[揺れ状態検出]
上述したとおり、所定時間TimeBや所定閾値ThreshBや所定回数CountBなど学習により変化させる。揺れ状態により起動条件に入った場合、起動を行うが、起動後所定時間間の検出情報から、起動要因ではなかった(上述した被写体探索や自動撮影判定の結果、撮影対象がいない)と判定されると、揺れ状態判定のパラメータを変更し、起動し難いように学習する。また、揺れが大きい状態での撮影頻度が高いと判定されると、揺れ状態判定により起動し易いように設定する。起動時の撮影対象がいるか否かの判定や、揺れが大きい状態での撮影頻度が多いかの判定は、後述する学習方法により学習された画像に埋め込まれた被写体検出情報や撮影時の揺れ情報などにより変化することになる。
[音検出]
ユーザが検出したい特定音声や、特定音シーンや、特定音レベルを、例えば外部機器301の専用アプリケーションと通信を介して、手動で設定することでの学習ができる。また、複数の検出を音声処理部に予め設定しておき、後述する方法により学習させる画像を選択させ、画像に含まれる撮影前後の音情報などの学習情報を基に、学習する。これにより、起動要因とする音判定(特定音コマンドや、「歓声」「拍手」などの音シーン)を設定でき、音検出による起動を学習することができる。
[環境情報検出]
ユーザが起動したい環境情報変化の条件を、例えば外部機器301の専用アプリケーションと通信を介して、手動で設定することでの学習ができる。例えば、温度や気圧や明るさや湿度や紫外線量の絶対量や変化量の特定条件によって起動させることができる。また、各環境情報に基づく、判定閾値を学習することもできる。環境情報による起動後後の検出情報から、起動要因ではなかった(上述した被写体探索や自動撮影判定の結果、撮影対象がいない)と判定されると、各判定閾値のパラメータを検出し難いように設定したりする。或いは、後述する学習方法により学習された画像に埋め込まれた各環境の情報から学習することで、環境情報による起動を学習することができる。例えば、温度上昇時において撮影された画像を多く学習させた場合、温度上昇時に駆動し易いように学習がされることになる。また、上記各パラメータは、電池の残容量によっても変化する。例えば、電池残量が少ないときは各種判定に入り難くなり、電池残量が多いときは各種判定に入り易くなる。具体的には、ユーザが必ず撮像装置を起動してほしい要因でない条件である揺れ状態検出結果や、音検出の音シーン検出は、電池残量によって各検出判定のし易さが変化することになる。
次に、低消費電力状態への遷移条件の学習について説明する。
図7に示したとおり、モード設定判定704で、「自動撮影モード」「自動編集モード」「画像自動転送モード」「学習モード」「ファイル自動削除モード」の何れでもないと判定されると、低消費電力モードに入る。各モードの判定条件については、上述したとおりであるが、各モードを判定される条件についても学習によって変化する。自動撮影モードについては、上述したとおり、エリア毎の重要度レベルを判定し、パン・チルトで被写体探索をしながら自動撮影を行うが、撮影される被写体がいないと判定されると、自動撮影モードを解除する。例えば、すべのエリアの重要度レベルや、各エリアの重要度レベルを加算した値が、所定閾値以下になったとき、自動撮影モードを解除する。このとき、自動撮影モードに遷移してからの経過時間によって所定閾値を下げていくことも行われる。自動撮影モードに遷移してから経過時間が大きくなるにつれて低消費電力モードへ移行し易くしている。また、電池の残容量によって所定閾値を変化させることで、電池もちを考慮した低消費電力モード制御を行うことができる。例えば、電池残量が少ないときは閾値が大きくなり、電池残量が多いときは閾値が小さくなる。ここで、前回自動撮影モードに遷移してからの経過時間と撮影枚数によって、Subプロセッサに対して、次回低消費電力モード解除条件のパラメータ(経過時間閾値TimeC)を設定する。
上記の各閾値は学習によって変化する。学習は、例えば外部機器301の専用アプリケーションと通信を介して、手動で撮影頻度や起動頻度などを設定することで、学習ができる。また、撮像装置101電源ボタンをONしてから、電源ボタンをOFFするまでの経過時間の平均値や時間帯ごとの分布データを蓄積し、各パラメータを学習する構成にしてもよい。その場合、電源ONからOFFまでの時間が短いユーザに対しては低消費電力モードからの復帰や、低消費電力状態への遷移の時間間隔が短くなり、電源ONからOFFまでの時間が長いユーザに対しては間隔が長くなるように学習される。また、探索中の検出情報によっても学習される。学習によって設定された重要となる被写体が多いと判断されている間は、低消費電力モードからの復帰や、低消費電力状態への遷移の時間間隔が短くなり、重要となる被写体が少ない間は、間隔が長くなるように学習される。
(7)ファイル自動削除
ファイル自動削除に対する学習について説明する。ファイル自動削除では、ファイルの空き容量や優先して削除する画像の選択などについて学習を行う。後述する方法により学習させる画像を選択させ、画像に含まれる学習情報を基に、ニューラルネットワークの重みを変化させることで学習することができる。上述したように、上記自動撮影で説明したとおり各画像には、ユーザの好みを判定されたスコアが演算されており、スコアが低い画像が優先して記録媒体221から削除される。また、スコアの点数だけでなく、記録媒体221内の各画像に埋め込まれた撮影日時や、後述する方法で、選択されたハイライト動画(自動編集された動画)の編集内容によって学習する。例えば、取得されたハイライト動画が、短い時間間隔で撮影された画像が多い場合、撮影された日時が古いファイルが優先的に削除されるが、長い時間間隔で撮影された画像を含む場合、日時が古くてもスコアの高いファイルは削除しないように学習される。或いは、逐次所定時間間隔で、記録媒体221内の各画像のスコアを再計算するようにする。スコア算出時のニューラルネットワークには撮影日時情報も入力されており、短い時間間隔で撮影された画像が多い場合、撮影日時が古いファイルはスコアが低くなるように学習される。これにより、優先的に削除されるようになり、長い時間間隔で撮影された画像を含む場合、日時が古くてもスコアは低くならないように学習されることで、日時が古くてもスコアの高いファイルは削除しないように学習される。他の例では、後述する方法で学習させる画像が選択されるが、選択される画像の日時が比較的新しいものを集中して選択されることが多い場合、撮影された日時が古いファイルを優先的に削除される。しかし、選択される画像の日時が古いものも選択されることが多い場合は、日時が古くてもスコアの高いファイルは削除しないように学習する。他の例では、撮影頻度が多くなるように学習されている場合は、ファイルの空き領域を多くとるようにファイルが自動削除され、撮影頻度が少なくなるように学習されている場合は、ファイルの空き領域は少なくていいようにファイルの自動削除が行われる。他の例では、動画の撮影頻度が多くなるように学習されている場合、ファイルの空き領域を多くとるようにファイルが自動削除され、静止画の撮影頻度が多くなるように学習されている場合、ファイルの空き領域は少なくなるようにファイルの自動削除が行われる。
(8)像揺れ補正
像揺れ補正に対する学習について説明する。像揺れ補正は、図9のS902で補正量を算出し、補正量に基づいてS905でパン・チルトを駆動することにより、像揺れ補正を行う。像揺れ補正では、ユーザの揺れの特徴に合わせた補正を行うための学習を行う。撮影画像に対して、例えば、PSF(Point Spread Function)を推定することにより、ブレの方向及び大きさを推定することが可能である。図9のS912の学習用情報生成では、推定したブレの方向と大きさが、情報として画像に付加されている。図7のステップ716での学習モード処理内では、推定したブレの方向と大きさを出力として、撮影時の各検出情報を入力として、揺れ補正用のニューラルネットワークの重みを学習させる。撮影時の各検出情報とは、撮影前所定時間における画像の動きベクトル情報や、検出した被写体(人や物体)の動き情報、振動情報(ジャイロ出力、加速度出力、撮像装置の状態)等である。他にも、環境情報(温度、気圧、照度、湿度)、音情報(音シーン判定、特定音声検出、音レベル変化)、時間情報(起動からの経過時間、前回撮影時からの経過時間)、場所情報(GPS位置情報、位置移動変化量)なども入力に加えて判定してもよい。S902での補正量算出時において、上記各検出情報をニューラルネットワークに入力することで、その瞬間撮影したときのブレの大きさを推定することができ、推定したブレの大きさが大きいときは、シャッター速度を短くするなどの制御が可能となる。また、推定したブレの大きさが大きいときはブレ画像になってしまうので撮影を禁止するなどの方法もとれる。また、パン・チルト駆動角度には制限があるため、駆動端に到達してしまうとそれ以上補正を行うことができないが、上記のように撮影時のブレの大きさと方向を推定することで、露光中揺れ補正するためのパン・チルト駆動に必要な範囲を推定できる。露光中可動範囲の余裕がない場合は、揺れ補正量を算出するフィルタのカットオフ周波数を大きくして、可動範囲を超えないように設定することで、大きなブレを抑制することもできる。また、可動範囲を超えそうな場合は、露光直前にパン・チルトの角度を可動範囲を超えそうな方向とは逆の方向に回転してから、露光開始することで、可動範囲を確保してブレない撮影を行うこともできる。これにより、ユーザの撮影時の特徴や使い方に合わせて揺れ補正を学習することができるので、ブレのない画像を撮影することができる。また、上述した「撮影方法の判定」において、流し撮り撮影を行うか否かを判定し、撮影前までの検出情報から、被写体がブレなく撮影するためのパン・チルト駆動速度を推定して、被写体ブレ補正を行ってもよい。ここで、流し撮り撮影は、動いている被写体はブレがなく、動いていない背景が流れる撮影である。その場合、上記各検出情報をニューラルネットワークに入力することで、静止画像撮影中の駆動速度を推定する。学習は、画像を各ブロックで分割して、各ブロックのPSFを推定することで、主被写体が位置するブロックでのブレの方向及び大きさを推定し、その情報を基に学習することができる。また、後述する学習方法により、選択された画像の背景の流れ量に基づいて、背景の流し量を学習することもできる。その場合、選択された画像の中で、主被写体が位置しないブロックでのブレの大きさを推定し、その情報を基にユーザの好みを学習することができる。学習した好みの背景流し量に基づいて、撮影時のシャッター速度を設定することで、ユーザの好みにあった流し撮り効果が得られる撮影を自動で行うことができる。
さらに、上述した<ユーザによる手動撮影指示に基づく撮影方法の判定>において、カメラの状態と被写体の状態の情報から、期待される撮影方法を学習することも可能である。この場合は、まずカメラの状態に関する情報として、例えば加速度計107より得られた情報に基づいて算出されたカメラの角度、角速度計106や加速度計107より得られたカメラの振動量をニューラルネットワークの入力とすることが可能である。さらに、撮影の一定時間前におけるカメラの位置に対して、実際に撮影を行ったときのカメラの位置における、移動量や相対位置をニューラルネットワークの入力とすることが可能となる。ライフログカメラにおいてこのような情報を抽出する手法に関して、図26を用いて説明する。
図26はライフログカメラにおいて、加速度センサの出力の例を示したものである。ここでは、前述のように、(e)、及び(h)の期間中に撮影が行われている様子を示している。ここで、カメラの移動量に関しては、カメラを構え始めてから実際に撮影に移るまでの間の移動量、つまり、図26(d)、(g)の領域で移動した量を算出することが可能である。このため、例えば加速度を監視しておき、撮影が行われる際には過去の加速度の変化をさかのぼっていき、安定した加速、及び減速が発生している領域(d)、(g)を検出し、その領域の加速度を元に移動量を算出することが可能である。
また、前述したように被写体の情報に関してもニューラルネットワークの入力とすることが可能となる。ここでは、例えば被写体までの距離、及び被写体の上下、左右の領域にある被写体までの距離といった情報が利用可能である。また、GPS受信機405の情報等を用いても良い。
これにより、カメラの状態、被写体の状態に応じた撮影方法の学習を行うことが可能となる。
(9)画像自動転送
画像自動転送に対する学習について説明する。画像自動転送では、記録媒体221に記録された画像の中から、優先して転送する画像の選択や転送頻度などについて学習を行う。後述する方法により学習させる画像を選択させ、画像に含まれる学習情報を基に、ニューラルネットワークの重みを変化させることで学習することができる。上述したように、上記自動撮影で説明したとおり各画像には、ユーザの好みを判定されたスコアが演算されており、スコアが高い画像が優先して画像転送する。また、過去に画像転送した画像に対応した学習情報も画像転送判定に使用する。後述する方法で学習させる画像が選択されると、画像に含まれる学習情報(特徴量)の何を重要視するかが設定され、過去に画像転送した画像が同じような特徴量を含むものが多い場合、別の特徴量を含み且つスコアの高い画像を転送するように設定する。また、撮像装置の各状態に応じて、画像転送頻度も変化する。電池の残容量によって変化する。例えば、電池残量が少ないときは、画像転送され難く、電池残量が多いときは、画像転送しやすくなるように設定される。具体的に例えば、前回自動転送された時からの経過時間と、その経過時間の間で撮影された画像の中で最も高いスコアとを乗算し、乗算した値が閾値を超えた時に画像転送するようにしておき、閾値を電池残量によって変化するような構成をとっても実現できる。他の例では、撮像装置101が設定された撮影頻度に応じて、画像自動転送の頻度を変更する。撮影頻度が多くなるように学習されている場合は、画像自動転送の頻度も多くなるように設定され、撮影頻度が少なくなるように学習されている場合は、画像自動転送の頻度も少なくなるように設定される。このとき撮影頻度によって上記閾値を変化させることで撮影頻度設定に応じた画像転送頻度を変更できる。他の例では、ファイル(記録媒体221)の空き容量に応じて、画像自動転送の頻度を変更することも行われる。ファイルの空き容量が多い場合は、画像自動転送の頻度は少なく、ファイルの空き容量が少ない場合は、画像自動転頻度が多くなるように設定される。このときファイル空き容量によって上記閾値を変化させることでファイル空き容量に応じた画像転送頻度を変更できる。
次に、学習方法について説明する。
学習方法としては、「撮像装置内の学習」と「通信機器との連携による学習」がある。
撮像装置内学習の方法について、以下説明する。
本実施形態における撮像装置内学習は、以下方法がある。
(1)ユーザによる撮影指示時の検出情報による学習
図9のステップS907乃至S913で説明したとおり、本実施形態においては、撮像装置101は、手動撮影と自動撮影の2つの撮影を行うことができる。ステップS907で手動操作による撮影指示(上記説明したとおり、3つの判定に基づいて行う。)があった場合は、ステップS912において、撮影画像は手動で撮影された画像であるとの情報が付加される。また、ステップS909にて自動撮影ONと判定されて撮影された場合においては、ステップS912において、撮影画像は自動で撮影された画像であると情報が付加される。
ここで手動撮影される場合、ユーザの好みの被写体、好みのシーン、好みの場所や時間間隔を基に撮影された可能性が非常に高い。よって、手動撮影時に得られた各特徴データや撮影画像の学習情報を基とした学習が行われるようにする。
また、手動撮影時の検出情報から、撮影画像における特徴量の抽出や個人認証の登録、個人ごとの表情の登録、人の組み合わせの登録に関して学習を行う。また、被写体探索時の検出情報からは、例えば、個人登録された被写体の表情から、近くの人や物体の重要度を変更するような学習を行う。また、図17乃至図22を用いて後述する「ユーザーが手でパンチルトを回転させること」によっても、画角の変化が指示された場合には、回転後に画角内に存在する被写体を学習する。これも、手動操作の検出情報による学習の一部である。
さらに、前述したように撮影方法の判定を行う場合は同様に、S912において、判定に必要な情報を付与する。ここでは、例えば前述したように、カメラの保持形式・保持角度・撮影に至るまでのカメラの移動距離・移動方向といったようなカメラの状態情報を付与することが可能となる。また、被写体距離・被写体の上下、左右の領域にある被写体までの距離といった被写体情報を付与することが可能となる。なお、これら情報に関しては必ずしも画像に付与する必要があるわけではなく、例えば撮像装置内部のメモリ216等に保持するようにしても良いし、画像ファイルとは別のファイル内に、画像と紐づけて保存するといったことも可能である。
(2)被写体探索時の検出情報による学習
被写体探索動作中において、個人認証登録されている被写体が、どんな人物、物体、シーンと同時に写っているかを判定し、同時に画角内に写っている時間比率を演算しておく。
例えば、個人認証登録被写体の人物Aが個人認証登録被写体の人物Bと同時に写っている時間比率が所定閾値よりも高い場合重要度が高いと判定できる。このため、人物Aと人物Bが画角内に入る場合は、自動撮影判定の点数が高くなるように各種検出情報を学習データとして保存して学習モード処理716で学習する。
他の例では、個人認証登録被写体の人物Aが一般物体認識により判定された被写体「猫」と同時に写っている時間比率が所定閾値よりも高い場合、重要度が高いと判定できる。このため、人物Aと「猫」が画角内に入る場合は、自動撮影判定の点数が高くなるように各種検出情報を学習データとして保存する。そして、学習モード処理716で学習する。
このように、探索中の被写体の現れる頻度が高い場合に、自動撮影判定の点数が高くなるようにすると、個人認証登録されている被写体の近くの人や物体の重要度も、高くなるように変更することができる。
また、個人認証登録被写体の人物Aの笑顔度を検出したり、表情を検出により「喜び」「驚き」などが検出されたとき、同時に写っている被写体は重要であるように学習される処理が行われる。また、表情が「怒り」「真顔」などが検出されたときの、同時に写っている被写体は重要である可能性が低いので学習することはしないなどの処理が行われる。
次に、本実施形態における外部通信機器との連携による学習を説明する。
本実施形態における外部通信機器との連携による学習には、以下の方法がある。
(3)外部通信機器で画像を取得したことによる学習
図3で説明したとおり、撮像装置101と外部機器301は、通信302、303の通信手段を有している。主に通信302によって画像の送受信が行われ、外部機器301内の専用のアプリケーションを介して、撮像装置101内の画像を外部機器301に通信取得することができる。また、撮像装置101内の保存されている画像データのサムネイル画像を外部機器301内の専用のアプリケーションを介して、閲覧可能な構成である。これにより、ユーザはサムネイル画像の中から、自分が気に入った画像を選択して、画像確認し、画像取得指示を操作することで外部機器301に画像取得できる。
このとき、ユーザが画像を選んで送信指示し取得しているので、取得された画像はユーザの好みの画像である可能性が非常に高い。よって取得された画像は、学習すべき画像であると判定し、取得された画像の学習情報を基に学習することでユーザの好みの各種学習を行うことができる。
操作例を説明する。スマートデバイスである外部機器301の専用のアプリケーションを介して、撮像装置101内の画像を閲覧している例を図16に示す。表示部407に撮像装置内に保存されている画像データのサムネイル画像(1604乃至1609)を表示してあり、ユーザは自分が気に入った画像を選択し画像取得を行える。このとき、表示方法を変更する表示方法変更部(1601、1602、1603)が設けられている。1601を押下すると表示順序が日時優先表示モードに変更され、撮像装置101内画像の撮影日時の順番で表示部407に画像が表示される。(例えば、1604は日時が新しく、1609が日時は古いように表示される。)1602を押下するとおすすめ画像優先表示モードに変更される。図9ステップS912で演算した各画像に対してユーザの好みを判定したスコアに基づいて、撮像装置101内画像のスコアの高い順番で表示部407に画像が表示される。(例えば、1604はスコアが高く、1609がスコアは低いように表示される。)1603を押下すると人物や物体被写体を指定でき、続いて特定の人物や物体被写体を指定すると特定の被写体のみを表示することもできる。
1601乃至1603は同時に設定をONすることもでき、例えばすべての設定がONされている場合、指定された被写体のみを表示し、且つ、撮影日時が新しい画像が優先され、且つ、スコアの高い画像が優先され、表示されることになる。
このように、撮影画像に対してもユーザの好みを学習しているため、撮影された大量の画像の中から簡単な確認作業でユーザの好みの画像のみを簡単に抽出することが可能である。
(4)外部通信機器を介して、画像に判定値を入力することによる学習
上記で説明したとおり、撮像装置101と外部機器301は、通信手段を有しており、撮像装置101内の保存されている画像を外部機器301内の専用のアプリケーションを介して、閲覧可能な構成である。ここで、ユーザは、各画像に対して点数付を行う構成にしてもよい。ユーザが好みと思った画像に対して高い点数(例えば5点)を付けたり、好みでないと思った画像に対して低い点数(例えば1点)を付けることができ、ユーザの操作によって、撮像装置が学習していくような構成にする。各画像の点数は、撮像装置内で学習情報と共に再学習に使用する。指定した画像情報からの特徴データを入力にした、ニューラルネットワークの出力がユーザが指定した点数に近づくように学習される。
本実施形態では、通信機器301を介して、撮影済み画像にユーザが判定値を入力する構成にしたが、撮像装置101を操作して、直接、画像に判定値を入力する構成にしてもよい。その場合、例えば、撮像装置101にタッチパネルディスプレイを設け、タッチパネルディスプレイ画面表示部に表示されたGUIボタンをユーザが押下して、撮影済み画像を表示するモードに設定する。そして、ユーザは撮影済み画像を確認しながら、各画像に判定値を入力するなどの方法により、同様の学習を行うことができる。
(5)外部通信機器内の保存されている画像を解析することによる学習
外部機器301は、記憶部404を有し、記憶部404には撮像装置101で撮影された画像以外の画像も記録される構成とする。このとき、外部機器301内に保存されている画像は、ユーザが閲覧し易く、公衆回線制御部406を介して、共有サーバに画像をアップロードすることも容易なため、ユーザの好みの画像が多く含まれる可能性が非常に高い。
外部機器301は専用のアプリケーションを介して、記憶部404に保存されている画像を、撮像装置101内での学習処理部219と同等の学習処理を制御部411により処理可能な構成にしてもよい。この場合、処理された学習用データを撮像装置101に通信することで、学習する構成にできる。また、撮像装置101に学習させたい画像やデータを送信して、撮像装置101内で学習するような構成にしてもよい。
また、専用のアプリケーションを介して、記憶部404に保存されている画像の中から、学習させたい画像をユーザが選択して、学習する構成にすることもできる。
(6)外部通信機器で、SNSのサーバにアップロードされた情報からの学習
人と人の繋がりに主眼をおいた社会的なネットワークを構築できるサービスやウェブサイトであるソーシャル・ネットワーキング・サービス(SNS)における情報を学習に使用する方法について説明する。画像をSNSにアップロードする際に、スマートデバイスから画像に関するタグを入力した上で、画像と共に送信する技術がある。また、他のユーザがアップロードした画像に対して好き嫌いを入力する技術もあり、他のユーザがアップロードした画像が、外部機器301を所有するユーザの好みの写真であるかも判定できる。
外部機器301内にダウンロードされた専用のSNSアプリケーションで、上記のようにユーザが自らアップロードした画像と画像についての情報を取得することができる。また、ユーザが他のユーザがアップロードした画像に対して好きかどうかを入力することにより、ユーザの好みの画像やタグ情報を取得することもできる。それらの画像やタグ情報を解析し、撮像装置101内で学習セットできるようにする構成にする。
上記のようにユーザがアップロードした画像や、ユーザが好きと判定した画像を取得し、撮像装置101内での学習処理部219と同等の学習処理を制御部411により処理可能な構成にしてもよい。これにより、処理された学習用データを撮像装置101に通信することで、学習する構成にすることもできる。もしくは、撮像装置101に学習させたい画像を送信して、撮像装置101内で学習するような構成にしてもよい。
また、タグ情報から、SNS内に設けられた画像フィルタから、図7の自動編集モード処理712や図9の編集S911の、色変換フィルタ効果が変化するように学習する。
或いは、タグ情報に設定された被写体情報から、ユーザが好みであろう被写体情報を推定し、ニューラルネットワークに入力する検出すべき被写体として登録することによる学習を行う。この被写体情報は、例えば、犬、猫など被写体物体情報や、ビーチなどのシーン情報や、スマイルなどの表情情報などが考えられる。
また、上記SNSでのタグ情報(画像フィルタ情報や被写体情報)の統計値から、世の中で今現在流行っている画像情報を推定し、撮像装置101内で学習セットできるようにする構成にすることもできる。
(7)外部通信機器で、パラメータを変更することによる学習
上記で説明したとおり、撮像装置101と外部機器301は、通信手段を有しており、撮像装置101内に現在設定されている学習パラメータを外部機器301に通信し、外部機器301の記憶部404に保存することができる。学習パラメータとしては、例えば、ニューラルネットワークの重みや、ニューラルネットワークに入力する被写体の選択などが考えられる。また、外部機器301内の専用のアプリケーションを介して、専用のサーバにセットされた学習パラメータを公衆回線制御部406を介して取得して、撮像装置101内の学習パラメータに設定することもできる構成とする。これにより、ある時点でのパラメータを外部機器301に保存しておいて、撮像装置101に設定することで学習パラメータを戻すこともできるし、他のユーザが持つ学習パラメータを専用のサーバを介して取得し自身の撮像装置101に設定することもできる。
また、外部機器301の専用のアプリケーションを介して、ユーザが登録した音声コマンドや認証登録、ジェスチャーを登録できるようにしてもよいし、重要な場所を登録してもよい。これらの情報は、自動撮影モード処理(図9)で説明した撮影トリガーが自動撮影判定の入力データとして扱われる。
また、撮影頻度や起動間隔、静止画動画割合や好みの画像など設定することができる構成にし、<低消費電力モード制御>で説明した起動間隔や、<自動編集>で説明した静止画動画割合などの設定を行ってもよい。
(8)外部通信機器で、画像を手動編集された情報からの学習
外部機器301の専用のアプリケーションにユーザの操作により手動で編集できる機能を持たせ、編集作業の内容を学習にフィードバックすることもできる。例えば、画像効果付与の編集が可能であり、画像の学習情報に対して、手動で編集した画像効果付与が判定されるように、自動編集のニューラルネットワークを学習させる。画像効果は、例えば、トリミング処理、回転処理、スライド、ズーム、フェード、色変換フィルタ効果、時間、静止画動画比率、BGMが考えられる。
ここで、ユーザ自身が撮影(1)や画像選択((3)乃至(8))した学習の場合、ユーザが意図的に操作したことから、ユーザの好みを反映させることに対して信頼性のある学習で可能性が高い。しかし、(2)被写体探索時の検出情報による学習は、ユーザが意図時に操作したことによる学習ではないため、ユーザが望まない学習が行われる可能性が含まれている。例えば、探索中に画像情報から、個人認証登録されている被写体と同時に写っている別の人物や物体やシーンを学習するが、頻繁に同時に写っている被写体が必ずしもユーザの好みであるとは限らない。そこで、ユーザが意図的に操作したことによる学習でない(2)場合よりも、ユーザが意図的に撮影、或いは画像選択した場合の学習((1)、(3)乃至(8))の方を優先的に学習させる。
学習用のデータは、撮影時或いは探索中にタグ情報として記録された各種データ(画像情報や振動情報や環境情報や音情報や場所情報など)であり、学習に反映する場合は、この各種データをリスト化した形式で保存している。学習のためのデータ群の数は固定値で決められた数を持つことにする。学習のためのデータ群は、ユーザが意図的に行った学習データである領域と、ユーザが意図的ではない学習データである領域の2つの領域に分割しており、領域のデータ数の比率は、ユーザが意図的に行った学習データ領域の方が大きくなるような比率にしておく。新しい学習反映指示がされた場合、各領域に対応した学習データから削除し、新たな学習データを追加する。例えば、ユーザが意図的に行った学習データを2つ追加する場合は、ユーザが意図的に行った学習データ領域から2つのデータを削除して、新たな2つのデータを追加して再学習する。
このような構成にすることで、ユーザが意図的に操作したことによる学習でない(2)ときよりも、ユーザが意図的に撮影、或いは画像選択した場合の学習((1)、(3)乃至(8))の方を優先的に学習させることができる。
或いは、学習用の各種データの中には、学習データが生成された日付時刻が管理されており、学習データが生成された日付時刻からの経過時間に応じた重み付係数Laを計算する。重み付係数Laは経過時間が大きくなるほど小さくなるように更新されていく。また、ユーザが意図的に行った学習データか、ユーザが意図的ではない学習データかによる重み付係数Lbも、各学習データに対応して管理される。重み付係数Lbは、ユーザが意図的に行った学習データの場合、ユーザが意図的ではない学習データよりも大きくなるように設定される。また、ユーザが意図的に行った学習データの中でも、(1)、(3)乃至(8)のどの学習であるかによって重み付係数Lbを変更してもよい。
新たな学習データが追加になる場合、現在の学習データ群の中で、重み付係数LaとLbを乗算した値が最も小さい学習データから優先してデータを削除してから、追加データを挿入し、更新された学習データ群を元に機械学習を行う。
このような構成にすることで、ユーザが意図的に操作したことによる学習でない(2)ときよりも、ユーザが意図的に撮影、或いは画像選択した場合の学習((1)、(3)乃至(8))の方を優先的に学習させることができる。
もしも、図1乃至図6の構成では、撮像装置側に画面がなく優先度の設定が難しく、また、外部装置側のメニューで設定する場合にはユーザの手間を要する。しかし、優先度のフラグ付けのための操作ではなく、撮影処理のための操作や編集処理のための操作に基づいて、自動的に優先度のフラグ付けをすれば、ユーザの手間を削減することができる。また、撮影画像を用いて自動で優先度を評価する場合、例えば、所定時間間隔で撮影している画像を評価する場合、同じものばかり撮影してしまうが必ずしも主要な被写体ではない可能性があり、ユーザの意図が反映されない場合がある。これに対して、本実施形態では、ユーザが意図的に行った処理に基づく優先度のフラグ付けのため、ユーザの意図を十分反映したものとなる可能性が高い。
次に、学習処理シーケンスについて説明する。
図7のステップ704のモード設定判定にて、学習処理を行うべきか否かを判定し、学習処理を行う場合、学習モードであると判定され、ステップ716の学習モード処理を行う。
学習モードの判定条件を説明する。学習モードに移行するか否かは、前回学習処理を行ってからの経過時間と、学習に使用できる情報の数、通信機器を介して学習処理指示があったかなどから判定される。ステップ704のモード設定判定処理内で判定される、学習モードに移行すべきか否かの判定処理フローを図14に示す。
ステップ704のモード設定判定処理内で学習モード判定が開始指示されると、図14の処理がスタートする。ステップ1401では、外部機器301からの登録指示があるかどうかを判定する。ここでの登録は、上記説明した学習するための登録指示があったかどうかの判定である。例えば、<通信機器で画像取得された画像情報による学習>や、<通信機器を介して、画像に判定値を入力することによる学習>がある。また、<通信機器内の保存されている画像を解析することによる学習>や、<通信機器内の保存されている画像を解析することによる学習>などがある。ステップ1401で、外部機器からの登録指示があった場合、ステップS1408に進み、学習モード判定をTRUEにして、ステップ716の処理を行うように設定する。ステップS1401で外部機器からの登録指示がない場合、ステップ1402に進む。ステップ1402では外部機器からの学習指示があるかどうかを判定する。ここでの学習指示は<通信機器で、撮像装置パラメータを変更することによる学習>のように、学習パラメータをセットする指示があったかどうかの判定である。ステップ1402で、外部機器からの学習指示があった場合、ステップS1408に進み、学習モード判定をTRUEにして、ステップ716の処理を行うように設定し、学習モード判定処理を終了する。ステップ1402で外部機器からの学習指示がない場合、ステップ1403に進む。
ステップ1403では、前回学習処理(ニューラルネットワークの重みの再計算)が行われてからの経過時間TimeNを取得し、ステップS1404に進む。ステップ1404では、学習する新規のデータ数DN(前回学習処理が行われてからの経過時間TimeNの間で、学習するように指定された画像の数)を取得し、ステップ1405に進む。ステップ1405では、TimeNから閾値DTを演算する。例えば、TimeNが所定値よりも小さい場合の閾値DTaが、所定値よりも大きい場合の閾値DTbよりも大きく設定されており、時間経過によって、閾値が小さくなるように設定してある。これにより、学習データが少ない場合においても、時間経過が大きいと再度学習するようにすることで、使用時間に応じて撮像装置が学習変化し易いようにしてある。
ステップ1405で閾値DTを演算すると、ステップ1406に進み、学習するデータ数DNが、閾値DTよりも大きいか否かを判定する。DNが、閾値DTよりも大きい場合、ステップ1407に進み、DNを0に設定した後、ステップ1408に進み、学習モード判定をTRUEにして、ステップ716の処理を行うように設定し、学習モード判定処理を終了する。
ステップ1406でDNが、閾値DT以下の場合、ステップ1409に進む。外部機器からの登録指示も、外部機器からの学習指示もなく、且つ学習データ数も所定値以下であるので、学習モード判定をFALSEにし、ステップ716の処理は行わないように設定し、学習モード判定処理を終了する。
次に、学習モード処理(ステップ716)内の処理について説明する。学習モード処理の詳細なフローを図15に示す。
図7のステップ715での学習モードと判定され、ステップ716に進むと、図15の処理がスタートする。ステップ1501では、外部機器301からの登録指示があるかどうかを判定する。ステップ1501で、外部機器からの登録指示があった場合、ステップ1502に進む。ステップ1502では、各種登録処理を行う。
各種登録は、ニューラルネットワークに入力する特徴の登録であり、例えば顔認証の登録や、一般物体認識の登録や、音情報の登録や、場所情報の登録などである。
登録処理を終了すると、ステップ1503に進み、ステップ1502で登録された情報から、ニューラルネットワークへ入力する要素を変更する。
ステップ1503の処理を終了すると、ステップ1507に進む。
ステップ1501で外部機器301からの登録指示がない場合、ステップ1504に進み、外部機器301からの学習指示があるかどうかを判定する。外部機器からの学習指示があった場合、ステップ1505に進み、外部機器から通信された学習パラメータを各判定器(ニューラルネットワークの重みなど)に設定し、ステップ1507に進む。
ステップ1504で外部機器からの学習指示がない場合、ステップ1506で学習(ニューラルネットワークの重みの再計算)を行う。ステップ1506の処理に入るのは、図14を用いて説明したように、学習するデータ数DNが閾値を超えて、各判定器の再学習を行える条件である。誤差逆伝搬法或いは、勾配降下法などの方法を使って再学習させ、ニューラルネットワークの重みを再計算して、各判定器のパラメータを変更する。学習パラメータが設定されると、ステップ1507に進む。
ステップ1507では、ファイル内の画像を再スコア付する。本実施形態においては、学習結果に基づいてファイル(記録媒体221)内に保存されているすべての撮影画像にスコアを付けておき、付けられたスコアに応じて、自動編集や自動ファイル削除を行う構成となっている。よって、再学習や外部機器からの学習パラメータのセットが行われた場合には、撮影済み画像のスコアも更新を行う必要がある。よって、ステップ1507では、ファイル内に保存されている撮影画像に対して新たなスコアを付ける再計算が行われ、処理が終了すると学習モード処理を終了する。
本実施形態においては、ユーザが好んでいると思われるシーンを抽出し、その特徴を学習し、自動撮影や自動編集といった動作に反映させることにより、ユーザの好みの映像を提案する方法を説明したが、本発明はこの用途に限定されない。例えば、あえてユーザ自身の好みとは異なる映像を提案する用途に用いることもできる。その実現方法の例としては、以下のとおりである。
(1)好みを学習させたニューラルネットワークを用いる方法
学習については、上記説明したとおりユーザの好みの学習を実施する。そして、「自動撮影」のS908において、ニューラルネットワークの出力値が、教師データであるユーザの好みとは異なることを示す値であるときに自動撮影する。例えば、ユーザが好んだ画像を教師画像とし、教師画像と類似する特徴を示すときに高い値が出力されように学習をさせた場合は、逆に出力値が所定以上低いことを条件として自動撮影を行う。また、同様に被写体探索処理や自動編集処理においても、ニューラルネットワークの出力値が、教師データであるユーザの好みとは異なることを示す値となる処理を実行する。
(2)好みとは異なるシチュエーションを学習させたニューラルネットワークを用いる方法
この方法では、学習処理の時点で、ユーザの好みとは異なるシチュエーションを教師データとして学習を実行する。例えば、手動で撮影した画像はユーザが好んで撮影したシーンであるとして、これを教師データとする学習方法を上述した。これに対し、本実施形態では逆に手動撮影した画像は教師データとして使用せず、所定時間以上手動撮影が行われなかったシーンを教師データとして追加する。あるいは、教師データの中に手動撮影した画像と特徴が類似するシーンがあれば、教師データから削除してもよい。また、外部通信機器で画像取得した画像と特徴が異なる画像を教師データに加えるか、画像取得した画像と特徴が似た画像を教師データから削除してもよい。このようにすることで、教師データには、ユーザの好みと異なるデータが集まり、学習の結果、ニューラルネットワークは、ユーザの好みと異なるシチュエーションを判別することができるようになる。そして、自動撮影ではそのニューラルネットワークの出力値に応じて撮影を行うことで、ユーザの好みとは異なるシーンを撮影できる。また、自動編集では、同様にユーザの好みとは異なる編集画像の提案が可能となる。
上記説明したとおり、あえてユーザ自身の好みとは異なる映像を提案することにより、ユーザが手動で撮影をしそびれてしまうシーンにおいて撮影を行うことで撮り逃しを減少させる効果がある。また、ユーザ自身の発想にないシーンでの撮影や編集効果を提案することで、ユーザに気付きを与えたり、嗜好の幅を広げたりといった効果が期待できる。
また、上記の手段を組み合わせることで、ユーザの好みと多少似ているが一部違うシチュエーションの提案というように、ユーザの好みに対する適合度合いを調節することも容易である。ユーザの好みに対する適合度合いは、モード設定や、前記各種センサの状態、前記検出情報の状態に応じて変更してもよい。
本実施形態においては、撮像装置101内で、学習する構成を基に説明したが、外部機器301側に学習処理をもち、学習に必要なデータを外部機器301に通信し、外部機器側でのみ学習を実行する構成でも同様の学習効果を実現可能である。その場合、上記<通信機器で、パラメータを変更することによる学習>で説明したように、外部機器側で学習したニューラルネットワークの重みなどのパラメータを撮像装置101に通信により設定することで学習を行う構成にしてもよい。
また、撮像装置101内と、外部機器301内の両方に、それぞれ学習処理をもつ構成にしてもよい。例えば撮像装置101内で学習モード処理716が行われるタイミングで外部機器301が持つ学習情報を撮像装置101に通信し、学習パラメータをマージすることで学習を行う構成にしてもよい。
また、上述の自動撮影モード処理(図9)のS907では、ユーザ(手動)による撮影指示があったがどうかを判定し、撮影指示があった場合、S910に進む構成とした。ここで、ユーザ(手動)による撮影指示は、撮像装置が向いている方向(以下撮影方向)を、ユーザが手で回転させることによって指示できるようにしてもよい。図17は鏡筒回転駆動部205の構成を示すブロック図である。図17の1701~1707は、パン軸の駆動に関わる構成である。図17の1708~1714は、チルト軸の駆動制御に関わる構成である。パン軸の駆動とチルトの駆動に関わる基本的な構成は同じであるため、パン軸の駆動に関わる構成のみ説明を行い、チルト軸の駆動に関わる構成の説明については省略する。1701は被写体の画像上での目標位置と現在位置の差からパン軸1706を駆動する際の目標位置を算出するための画像位置-パン位置変換部である。図18は撮像装置で撮像された画像における被写体の現在位置と目標位置の関係を表した図である。1801は、撮像装置が被写体探索中に画像処理部207にて得られたある瞬間の画像である。1802は被写体の現在位置(x1、y1)を示したものである。1803は被写体の目標位置(x0、y0)を示したものである。画像上の被写体の目標位置1803と現在位置1802の差からパンおよびチルトの目標位置を算出する際には、以下の式を用いる。
kp(f)×(x1-x0) (式1)
kt(f)×(y1-y0) (式2)
kp(f)は撮像装置の焦点距離fに応じて変化する被写体の画像上での目標位置と現在位置の差からパンの目標位置算出するための変換係数である。kt(f)は撮像装置の焦点距離fに応じて変化する被写体の画像上での目標位置と現在位置の差からチルトの目標位置算出するための変換係数である。
図17の1702は補償器である。補償器1702は、現在のパン位置と画像位置-パン位置変換部1701で算出されたパンの目標位置との差を無くすように、PID制御演算を行うことで制御出力を算出する。1703は撮影方向変更操作検出部であり、パンの目標位置と現在位置の差(以下、位置偏差)と制御出力、パンの移動速度から撮影方向変更操作を検出する。撮影方向変更操作検出部1703で撮影方向の変更を検出した場合には、制御出力をOFFにしてパンの駆動を停止する。一方、撮影方向変更操作検出部1703で撮影方向の変更を検出しなかった場合には、補償器1702にて算出された制御出力に応じてパンの駆動制御を行う。1704は、補償器1702にて算出された制御出力に応じた駆動信号を生成するためのドライバである。1705は、パン軸1706を駆動するためのアクチュエータである超音波モータ(USM)である。1707は、パン位置の時間変化からパンの移動速度を算出するための移動速度検出部である。移動速度検出部1707は、制御サンプリング毎のパン位置の変化量からパンの移動速度を算出する。図19は、ユーザ操作による撮影方向変更操作を検出して、撮影方向変更操作後の撮影エリアを重要な領域として学習情報を更新するフローを示したフローチャートである。
S1901において、ユーザによる撮像装置の撮影方向変更操作の有無の判定を行う。ユーザによる撮影方向変更操作の検出は、撮影方向変更操作検出部1703で、後述する制御出力および位置偏差が所定の条件を満たした場合に撮影方向変更有と判定する。S1901で撮影方向変更操作を検出した場合には、S1902に進み、位置制御動作を停止する。被写体追尾中や探索中であった場合には中断したうえで位置制御動作を停止する。一方、S1901で撮影方向変更操作を検出しなかった場合は、撮影方向変更操作の検出を継続する。S1902で位置制御を停止させた後は、S1903に進んでユーザによる撮影方向変更操作の終了判定を行う。
撮影方向変更操作の終了判定は、撮影方向変更操作検出部1703で、パンの移動速度により撮影方向変更操作の継続または終了を判定する。撮影方向変更操作が終了したと判定した場合には、S1904に進み、撮影方向変更操作の終了判定後の撮影エリア情報を記憶する。記憶するエリアは、撮像装置の位置、パン位置、チルト位置、焦点距離から決まる画角を各分割エリアと比較して最も近いエリアを記憶する。S1903で撮影方向変更操作中であると判定した場合は、撮影方向変更操作終了の検出を継続する。S1905では、S1904で記憶したエリアを他の分割エリアよりも重要なエリアとして学習情報を更新する。S1906では、被写体追尾および位置制御を有効にしたうえでS1901に進み、撮影方向変更操作の検出を再開する。ユーザが撮影方向変更操作を行う例として、撮像装置101で花を撮影中にユーザが鏡筒102を手で回転させることにより、撮像装置101の光軸が画角外の特定の人物に向くように撮影方向変更操作した時の例を説明する。図20は、撮像装置101で花2001を撮影中に人物2003の方向にユーザの手で鏡筒102を回転させた後に、人物2003が存在するエリアを重要エリアとして学習情報を更新する例を説明するための模式図である。図20の2002は、花2001を撮影中の撮像装置101の光軸である。2004はユーザが手で撮影方向を変更させた後の光軸である。2005は、ユーザが撮影方向を変更した際の鏡筒102の回転方向を示している。図21および図22を用いて、花2001を撮影中にユーザ操作により人物2003の方向に撮影方向を変更した後に人物2003が存在するエリアを重要なエリアとして学習情報を更新するまでの動作について説明する。図21(a)、(b)、(c)、(d)は、花を撮影中から撮影方向を変更して特定人物2003の方向に撮影方向を変化させて学習情報を更新するまでの間に撮像されたある瞬間の画像を示した図である。図22は、花を撮影中にユーザが撮影方向を特定人物2003の方向に変更して、変更後の画角のエリアを重要なエリアとして学習情報を更新するまでの間のパンの制御出力2201、位置偏差2202、移動速度2203の時間変化を示した図である。図22のta、tb、tc、tdはそれぞれ図21(a)、(b)、(c)、(d)に示す画像を撮像した時間である。図22のThCは、ユーザが手で鏡筒102を回転させたことを判定するために使用する制御出力の閾値である。ThDiffは、ユーザが手で鏡筒102を回転させたことを判定するために使用する位置偏差の閾値である。制御出力がThC以上でかつ位置偏差がThDiff以上である時間が所定時間(図22はt2-t1)継続した場合にユーザにより撮影方向の変更がなされたとして、補償器1702の制御出力をOFFする。ThVは、ユーザが撮影方向操作を終了したと判定するために使用するパン軸の移動速度の閾値である。CMaxは補償器1702の制御出力の最大値である。位置制御する際には、制御出力を-CMaxからCMaxの範囲で変更する事によって被写体が画像上の目標位置に位置するようにパン軸の駆動を制御する。図22のt1はユーザが撮影方向操作を開始してから制御出力2201がThC以上でかつ位置偏差がThDiff以上となったときの時間を示している。t2は、制御出力2201がThC以上でかつ位置偏差2202がThDiff以上である時間が撮影方向変更判定時間(t2-t1)経過した時間を示している。t3は時間t2以降にはじめてパン軸の移動速度がThV以下となったときの時間を示している。t4は移動速度が時間t3でThV以下となってからの経過時間が撮影方向変更終了判定時間(t4-t3)となった時間を示している。
図21(a)は、花2001を撮影中に時間taのタイミングで撮像した画像を示している。図21(a)の2101は追尾、探索または撮影対象となる被写体を示す被写体枠である。2102は、被写体枠2101の中心の画像上の目標位置となる目標点を示したものである。2102の2つ線が交差する点が被写体の画像上での目標位置である。通常の撮影動作中(撮影方向変更操作中でない状態)は、被写体枠2101の中心と目標点2102が重なるように、パン軸またはチルト軸を駆動制御することによって、位置合わせを行う。図21(b)は、図21(a)の状態において時間tbのタイミングでユーザが固定部103に対して鏡筒102を右方向に回転させたときに撮像した画像である。図21(b)の黒塗りの矢印は、位置制御のパンの駆動方向、白抜きの矢印はユーザの撮影方向変更操作による鏡筒102の回転方向である。時間tbにおける制御出力2201、位置偏差2202を見ると、制御出力が最大値のCMaxとなっているにもかかわらず、位置偏差2202は増加傾向にある。このことからユーザが意図的にパン軸を回転させていると判定することができる。本実施形態では、ユーザが手で鏡筒102を回転させている状態である事を検知してから、補償器1702の制御出力をOFFするまでに所定時間(t2-t1)だけ待ってから撮影方向変更の判定を行っている。これは、意図せずにユーザが鏡筒に触れてしまった場合や、探索駆動中のパン軸またはチルト軸の負荷変動による影響で、ユーザが方向変更操作を行ってない場合に撮影方向変更有と判定しないための対策である。ユーザの撮影方向変更操作を開始してから撮影方向変更判定を素早く行うために、確定するまでの時間を短縮したり、無くしてもよい。
図21(c)は、時間tcで補償器1702の制御出力をOFFした状態でユーザの撮影方向変更操作によって新しい被写体の近くまでパン軸を回転させて目標となる被写体が画角に入ったときの図である。このように新たな撮影対象となる被写体が画角に入るまでユーザは撮影方向変更操作を継続する必要がある。本実施形態に示す撮像装置101のように撮影方向変更中の画像を直接確認できない場合にはスマートデバイスを使用して変更中の画像を確認しながら操作を行うことで撮影対象となる被写体が画角に入ったことを確認する。その他の撮影対象の被写体が画角内に入った事をユーザが知る手段として、撮影方向変更中に新たな被写体が画角内に入った場合にはLED制御部224によりLEDを発光させるか音声出力部218にて音声出力させることでユーザに報知するようにしてもよい。
図21(d)は、時間t4のタイミングで補償器1702の制御出力をONした状態で撮影方向変更後の新しい被写体を追尾、撮影中の画像である。時間t4は、時間tdでパンの移動速度2203がThV以下となる時間が撮影方向変更操作終了判定時間(t4-t3)以上経過後のタイミングである。時間t4でユーザによる撮影方向変更操作が終了したと判定した場合にはt4の時点での撮影エリアをユーザの好みのエリアとして他のエリアよりも重要度を高く設定したうえで学習情報を更新する。また、このエリアに存在する被写体を重要な被写体として追尾、撮影、認証登録のいずれか一つ以上の動作を行うようにしてもよい。たとえば、図21(d)に示すように、ユーザによる撮影方向変更操作が終わったことを検出したタイミングで人物2003が画角内に存在する場合には、人物2003を重要な被写体として追尾、撮影、認証登録のいずれかの動作を行う。学習情報更新処理は、自動的に行わずにユーザによる学習指示があった場合のみ行うようにしてもよい。例えば、画角に被写体が入ったことを撮像装置がユーザに報知した後に、事前に登録しておいた学習指示用の特定音声コマンドを入力した場合のみ学習情報の更新を行うようにするなど、ユーザから学習指示があった場合のみ学習情報を更新するようにしてもよい。
本実施形態では、ユーザによる撮像装置の撮影方向変更操作の開始および終了の検出を補償器の制御出力、位置偏差、駆動軸の移動速度によって検出する例を示したが、ユーザによる撮影方向操作を検出可能であれば他の方法で検出してもよい。例えば、装置揺れ検出部209からのジャイロセンサや加速度センサの信号の時間変化に基づいてユーザによる撮影方向変更の有無を検出するようにしてもよい。図23は、ユーザ操作により撮像装置の撮影方向を変更した際の装置揺れ検出部209の加速度センサの出力変化を示している。2301は、加速度の時間変化を示している。ThA1は、ユーザが撮影方向変更操作を開始したと判定する際に使用する加速度の閾値である。ThA2は、ユーザが撮影方向変更操作を終了したと判定する加速度の閾値である。これらの閾値と加速度を比較して、撮影方向変更操作の開始および終了を検出するようにしてもよい。このとき、撮影方向変更操作の誤検知防ぐために、事前に撮影方向変更操作時の加速度の時間変化パターンを学習させておいて、検出した加速度の時間変化が学習した時間変化パターンとの類似度が所定値以上の場合に撮影方向変更されたと判定してもよい。同様に、撮像装置により撮像した画像の動きベクトルの変化に応じて撮影方向操作の有無を検出するようにしてもよい。
また、上述の記載では、撮影方向変更操作後に画角内となる撮影エリアを重要なエリアとして学習する処理を説明した。しかしながら、これに限らず、ズーム変更や外部機器へのユーザ操作による撮影エリアの変更があった場合に、変更操作後の撮影エリアを重要なエリアとして学習する処理をしてもよい。
〔その他の実施形態〕
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、デジタルカメラやデジタルビデオカメラの撮影に限らず、監視カメラ、Webカメラ、携帯電話などの撮像装置にも搭載できる。
101 撮像装置
301 スマートデバイス
501 ウエアラブルデバイス
104 チルト回転ユニット
105 パン回転ユニット

Claims (9)

  1. 装置の状態が、乗り物移動状態、置き撮り状態、手持ち状態、首にかけた状態の少なくとも何れかであることを検出する第1の検出手段と、
    被写体の距離に関連する状態を検出する第2の検出手段と、
    前記装置の状態の検出結果と前記被写体の距離に関連する状態の検出結果に基づいて、撮影処理を決定する決定手段と、
    前記装置の状態の検出結果、前記被写体の距離に関連する状態の検出結果、および前記決定された撮影処理の少なくとも何れかにおいて得られた複数のデータを解析して、規則性を抽出し、抽出結果に応じてユーザの好みを学習する学習手段を有し、
    前記学習手段による学習により、前記決定手段の前記撮影処理の決定が変更されることを特徴とする撮像装置。
  2. 前記決定手段は、撮影方処理の判定をするためのパラメータに基づいて決定された撮影処理を決定し、
    前記学習手段は、前記装置の状態の検出結果、前記被写体の距離に関連する状態の検出結果、および前記決定された撮影処理の少なくとも何れかにおいて得られた複数のデータを用いて前記パラメータを更新することを特徴とする請求項1に記載の撮像装置。
  3. 前記第1の検出手段は、装置の角度、装置の移動距離、装置の移動方向の少なくとも何れか1つを更に検出することを特徴とする請求項1または2に記載の撮像装置。
  4. 前記第2の検出手段は、被写体までの距離、被写体の周辺領域にある被写体までの距離の少なくとも何れか1つを検出することを特徴とする請求項1乃至3の何れか1項に記載の撮像装置。
  5. 前記第1の検出手段で検出された情報、前記第2の検出手段で検出された情報の少なくとも何れか1つを記録することを特徴とする請求項1乃至4の何れか1項に記載の撮像装置。
  6. 前記撮影処理として、静止画撮影、静止画の連続撮影、動画撮影、横方向のパノラマ撮影、縦方向のパノラマ撮影、360度のパノラマ撮影の少なくとも何れか1つを決定することを特徴とする請求項1乃至5の何れか1項に記載の撮像装置。
  7. 前記装置の状態は、所定時間内の加速度変化に基づいて検出されることを特徴とする請求項1乃至請求項6の何れか1項に記載の撮像装置。
  8. 撮像装置の制御方法であって、
    装置の状態が、乗り物移動状態、置き撮り状態、手持ち状態、首にかけた状態の少なくとも何れかであることを検出する第1の検出工程と、
    被写体の距離に関連する状態を検出する第2の検出工程と、
    前記装置の状態の検出結果と前記被写体の距離に関連する状態の検出結果に基づいて、撮影処理を決定する決定工程と、
    前記装置の状態の検出結果、前記被写体の距離に関連する状態の検出結果、および前記決定された撮影処理の少なくとも何れかにおいて得られた複数のデータを解析して、規則性を抽出し、抽出結果に応じてユーザの好みを学習する学習工程を有し、
    前記学習工程による学習により、前記決定工程の前記撮影処理の決定が変更されることを特徴とする制御方法。
  9. コンピュータにより請求項8に記載の制御方法を実行させるためのプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
JP2017254232A 2017-12-28 2017-12-28 撮像装置およびその制御方法 Active JP7199808B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017254232A JP7199808B2 (ja) 2017-12-28 2017-12-28 撮像装置およびその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017254232A JP7199808B2 (ja) 2017-12-28 2017-12-28 撮像装置およびその制御方法

Publications (2)

Publication Number Publication Date
JP2019121855A JP2019121855A (ja) 2019-07-22
JP7199808B2 true JP7199808B2 (ja) 2023-01-06

Family

ID=67305608

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017254232A Active JP7199808B2 (ja) 2017-12-28 2017-12-28 撮像装置およびその制御方法

Country Status (1)

Country Link
JP (1) JP7199808B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7343621B2 (ja) * 2020-01-28 2023-09-12 マクセル株式会社 インターバル撮像装置
JP7630909B2 (ja) * 2020-02-28 2025-02-18 キヤノン株式会社 レンズ装置、撮像装置、処理装置、処理方法、およびプログラム
JP2022172705A (ja) 2021-05-06 2022-11-17 キヤノン株式会社 撮影制御装置、撮影システム、撮影制御方法及びプログラム
JP7608385B2 (ja) * 2022-03-02 2025-01-06 キヤノン株式会社 撮像装置およびその制御方法、プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002209140A (ja) 2000-11-13 2002-07-26 Hewlett Packard Co <Hp> 撮像装置の基本的適応学習設定選択プロセス
JP2009118135A (ja) 2007-11-06 2009-05-28 Sony Corp 撮像装置、撮像方法
JP2009207134A (ja) 2008-01-31 2009-09-10 Panasonic Corp 撮像装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002209140A (ja) 2000-11-13 2002-07-26 Hewlett Packard Co <Hp> 撮像装置の基本的適応学習設定選択プロセス
JP2009118135A (ja) 2007-11-06 2009-05-28 Sony Corp 撮像装置、撮像方法
JP2009207134A (ja) 2008-01-31 2009-09-10 Panasonic Corp 撮像装置

Also Published As

Publication number Publication date
JP2019121855A (ja) 2019-07-22

Similar Documents

Publication Publication Date Title
JP7077376B2 (ja) 撮像装置およびその制御方法
JP6799660B2 (ja) 画像処理装置、画像処理方法、プログラム
US12401880B2 (en) Image pickup apparatus and control method therefor
CN111294488B (zh) 摄像设备及其控制方法和存储介质
JP7267686B2 (ja) 撮像装置及びその制御方法
JP7233162B2 (ja) 撮像装置及びその制御方法、プログラム、記憶媒体
CN109981976B (zh) 摄像设备及其控制方法和存储介质
WO2019124055A1 (ja) 撮像装置及びその制御方法、プログラム、記憶媒体
JP7545505B2 (ja) 撮像装置及びその制御方法、プログラム
JP7403218B2 (ja) 撮像装置及びその制御方法、プログラム、記憶媒体
JP7199808B2 (ja) 撮像装置およびその制御方法
JP2020145556A (ja) 撮像装置及びその制御方法、プログラム、記憶媒体
JP7527769B2 (ja) 撮像装置及びその制御方法、プログラム、記憶媒体
CN111105039B (zh) 信息处理设备及其控制方法和存储器
JP2020071873A (ja) 情報処理装置、情報処理方法、及び、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220722

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221221

R151 Written notification of patent or utility model registration

Ref document number: 7199808

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151