以下、図面を参照して本発明の実施形態を説明する。
[第1の実施形態]
第1の実施形態について説明する。図1は、第1の実施形態に係る撮像装置の一例の構成を示す図である。撮像装置100は、制御回路102と、撮像部104と、表示素子106と、メモリ108と、記録媒体110と、操作部112と、通信回路114とを有している。撮像装置100は、表示素子106を有していて、画像を再生する再生装置としても動作する。この撮像装置100は、デジタルカメラ、スマートフォン、タブレット端末、携帯ゲーム機といった、撮像機能又は再生機能を有する各種の機器に対して適用され得る。撮像装置100は、図1で示した以外の構成を有していてもよいし、図1で示した一部の構成を有していなくてもよい。
制御回路102は、撮像装置100の各部の動作を制御する。制御回路102は、CPU、GPU、ASIC、FPGA、メインメモリといったハードウェアを備えている。制御回路102は、単独のCPU等によって構成されてもよいし、複数のCPU等によって構成されてもよい。また、制御回路102による一部の処理は、ソフトウェアによって実現されてもよい。
撮像部104は、対象物の画像を取得する。撮像部104は、例えば光学系104a及び撮像素子104bを含む。光学系104aは、対象物からの光を撮像素子104bに入射させる。光学系104aは、焦点距離を可変させるためのズーム光学系を有していてもよいし、ピント位置を可変させるためのフォーカス光学系を有していてもよい。撮像素子104bは、例えばCMOSイメージャ、CCDイメージャといった撮像素子である。撮像素子104bは、対象物からの光を電気信号に変換する。
メモリ108は、RAM及びROMといったメモリである。メモリ108には、撮像装置100の動作のためのプログラム及びパラメータが記憶される。また、メモリ108には、ユーザの操作部112の操作履歴の情報が記憶される。操作履歴の情報は、画像の撮影時のユーザ操作の履歴又は画像の再生時のユーザの操作の履歴の情報である。メモリ108は、単一であっても複数であってもよい。
記録媒体110は、フラッシュメモリといったメモリを含む。記録媒体110には、撮像装置100で取得された画像が記録される。記録媒体110は、撮像装置100に内蔵されていなくてもよい。例えば、記録媒体110は、撮像装置100に対して着脱できるように構成されていてもよい。
表示素子106は、各種の画像を表示する。表示素子106は、液晶ディスプレイ又は有機ELディスプレイといった表示素子である。また、表示素子106は、音声を再生するためのスピーカ等を有していてもよい。
操作部112は、ボタン、スイッチ、ダイヤルといった機械的な操作部材を含む。また、操作部112は、タッチパネルを含んでいてもよい。撮像装置100が表示素子を含んでいるときには、タッチパネルは表示素子と一体的に設けられていてもよい。
通信回路114は、撮像装置100が撮像装置100の外部のサーバ等と通信するための回路を含む。通信回路114は、例えばWi−Fi(登録商標)のための通信回路である。通信回路114は、例えばBluetooth(登録商標)のための通信回路を含んでいてもよい。このほか、通信回路114は、各種の有線通信のための通信回路を含んでいてもよい。
以下、第1の実施形態に係る撮像装置100の動作を説明する。図2Aは、静止画を撮影しているユーザの動作の一例を示している。図2Aにおいて、左右に並んだ四角形は、各時点の撮影画像を模式的に示し、例えば左から右に向けて時間が経過しているものとする。
例えば撮像装置100の動作が撮影モードに設定されると、撮像装置100の表示素子106にはライブビューLが表示される。ライブビューLは、撮像部104の連続動作によって撮像部104で逐次に取得される画像である。ライブビューLがリアルタイムで表示されることにより、ユーザは表示素子106を用いて撮影の対象物Oを確認することができる。
ライブビューLの表示中、ユーザは、ライブビューLを見ながら例えばモード設定、フレーミング、ズーミング、ピント合わせ/露出合わせといった各種の操作を行う。図2Aでは、フレーミング、ズーミング、ピント合わせ/露出合わせの順で操作が行われている。しかしながら、この順序は一例である。モード設定、フレーミング、ズーミング、ピント合わせ/露出合わせは、任意の順序で行われ得る。また、ライブビューLの表示中にモード設定、フレーミング、ズーミング、ピント合わせ/露出合わせ以外の動作が行われることもあるし、何れかの動作が行われないこともある。
モード設定では、ユーザは、撮影しようとしている画像に応じて撮像装置100のモードを特定のモードに設定する。このモードは、ハイダイナミックレンジ(HDR)モード、深度合成モード、超解像モード、RAWモードといったモードを含む。HDRモードは、同一の対象物を異なる露出で複数回撮影することにより得られた複数の画像を合成することにより、ダイナミックレンジが拡大された画像を得るモードである。深度合成モードは、同一のシーンを異なるピント状態で複数回撮影することにより得られた複数の画像を合成することにより、異なる距離の対象物に対して同時にピントがあった画像を得るモードである。超解像モードは、同一の対象物を光学系104a又は撮像素子104bの位置をずらしながら複数回撮影することにより得られた画像を合成することにより、元の画像よりも高解像度の画像を得るモードである。RAWモードは、撮像部104で得られた画像を画像処理せずにそのまま記録媒体110に記録するモードである。実施形態において、制御回路102は、モードの設定がされる毎にモードの操作履歴を例えばメモリ108に記憶させていく。モードの操作履歴は、例えば設定されたモードの名称を含む。
フレーミングでは、ユーザは、ライブビューLを確認しながら例えば撮像装置100の筐体を動かすことで、所望の対象物OをライブビューLにおける所望の位置に収める。このような操作を記憶するため、制御回路102は、ライブビューLの画像を例えばメモリ108に記憶させる。このライブビューLが、フレーミングの操作履歴として用いられ得る。撮像装置100が動きセンサを有していれば、動きセンサによって検出される撮像装置100の動きがフレーミングの操作履歴として用いられてもよい。さらに、フレーミングにおいて、対象物が小さくて見えない場合又は対象物をより細かく見たい場合に、ユーザは、気になる対象物の拡大表示の操作をすることもある。制御回路102は、撮影モード時の拡大操作の履歴を操作履歴としてメモリ108に記憶させてもよい。
ズーミングでは、ユーザは、ライブビューLに表示される対象物Oのサイズが所望のものとなるように、光学ズームを使用したり、電子ズームを使用したりする。制御回路102は、ズーミングに関する操作がされる毎にズーミングの操作履歴を例えばメモリ108に記憶させる。ズーミングの操作履歴は、光学ズームの操作履歴と電子ズームの操作履歴とを含む。光学ズームの操作履歴は、例えばズーム光学系の焦点距離を含む。電子ズームの操作履歴は、例えば電子ズームがされた画像内の領域の位置及びズームの倍率を含む。対象物を特定できるときには、ズーミングの操作履歴は、ズーミングの対象となった対象物の情報を含んでいてもよい。対象物の情報は、例えば対象物の名称を含む。また、対象物の情報は、撮影された画像に写っている対象物の画像上での構造的な特徴を表す情報、例えばエッジの形状、明るさ、色といった情報を含んでいてもよい。
ピント合わせでは、特定の対処物に対して撮像部104の光学系104aのピントが調節される。制御回路102は、ピント合わせが行われる毎に、ピント合わせの操作履歴を例えばメモリ108に記憶させる。ピント合わせの操作履歴は、例えばピント合わせが自動で行われたか否かを示す情報、ピント合わせが行われた際に使用された判定情報、フォーカス光学系の位置及びピント合わせの対象となった画像内の領域の位置を含む。判定情報は、位相差方式であれば2像間隔値及びデフォーカス量、コントラスト方式であればコントラスト差といった情報を含む。対象物を特定できるときには、ピント合わせの操作履歴は、ピント合わせの対象となった対象物の情報を含んでいてもよい。
露出合わせでは、特定の対象物の明るさが撮影時において適正となるように絞り及びシャッタスピードが調節される。制御回路102は、露出合わせが行われる毎に、露出合わせの操作履歴を例えばメモリ108に記憶させる。露出合わせの操作履歴は、例えば露出合わせが自動で行われたか否かを示す情報、露出合わせが行われた画像内の領域の位置を含む。対象物を特定できるときには、露出合わせの操作履歴は、露出合わせの対象となった対象物の情報を含んでいてもよい。
ユーザは、ライブビューLを確認しながら所望のタイミングで静止画撮影の指示をする。これを受けて、制御回路102は、静止画撮影のために必要な処理を行う。この結果、静止画が記録媒体110に記録される。制御回路102は、撮影に至るまでの各操作履歴を撮影の結果として得られた静止画と関連付けて例えば記録媒体110に記録する。
操作履歴の記録後、制御回路102は、操作履歴を分析する。例えば、制御回路102は、撮影結果として得られた静止画及びライブビューのそれぞれから対象物を抽出する。対象物の抽出は、エッジ抽出及び画像マッチング等の手法で行われ得る。撮影の結果として得られた静止画に写っている対象物は、今回の撮影においてユーザが興味を持っている対象物であると判断され得る。一方、画像内に複数の対象物が含まれている可能性もある。画像内に複数の対象物が含まれているときには、例えば画像の最も中央に近い場所に存在している対象物、最も近距離に存在している対象物、フォーカス又は露出が合わせられた対象物、ライブビューに写っている時間の長い、すなわちユーザによるフレーミングによって最も画角に収められている時間の長い対象物が、ユーザが興味を持っている対象物であると判断され得る。
また、例えば、制御回路102は、設定されたモードを対象物毎に分類する。つまり、ある対象物に対して特定のモードの設定回数が多ければ、次回の類似の対象物の撮影時においてもそのモードに設定される可能性が高いと判断できる。このような判断に基づき、制御回路102は、次回の類似の対象物の撮影時において、例えばその特定のモードの使用を提案することができる。
また、例えば、制御回路102は、拡大表示、ズーミング、ピント合わせ、露出合わせがされた領域を対象物毎に分類する。ある対象物についてライブビュー中にその対象物の特定の位置が拡大表示されている回数が多かったり、ある対象物に対してズーミングが適用される回数が多かったり、特定の位置にピント合わせされている回数が多かったり、特定の位置に露出合わせされている回数が多かったりすれば、次回の類似の対象物の撮影時においてもその特定の位置に対して拡大表示、ズーミング、ピント合わせ又は露出合わせが行われる可能性が高いと判断できる。このような判断に基づき、制御回路102は、次回の類似の対象物の撮影時において、その特定の位置を予め拡大したり、その対象物をズーミングしたり、その位置に対してピント合わせ又は露出合わせをしたりといった制御をすることができる。
操作履歴の分析は、操作履歴の対象物毎の分類によって行われるものに限らない。例えば、操作履歴が数値として得られる場合には、この数値の平均値を算出する等の各種の統計処理が用いられてよい。これらの統計処理は、単独で用いられてもよいし、組み合わせて用いられてもよい。
図2Bは、撮影時の操作履歴を活用した撮影時のアシスト制御の一例である。例えば、制御回路102は、現在の撮影の対象物が過去に撮影されていた対象物又はシーンと類似であるか否かを判定する。この判定は、例えば、ライブビューの画像と事前にメモリ108に記憶させていた対象物の特徴の情報とを比較することで行われる。そして、現在の撮影の対象物が過去に撮影されていた対象物又はシーンと類似であると判定したときに、制御回路102は、例えば図2Bに示すようにして、対象物Oが画角内に入ったことをユーザに示す矢印マークAを表示させる。この矢印マークAを見たユーザは、自身の興味のある対象物が画角内に入ったことを認識して、撮影の動作をすることが期待される。あるいは、夕日のような様々な色合いが彩なすシーン等についての色再現の好みは、ユーザによって異なる場合がある。このようなシーンも空や雲といった対象物からなるので、対象物と言ってもよい。
また、制御回路102は、現在の撮影の対象物が過去にHDRモードで撮影されていた対象物であると判定したときに、例えば図2Bに示すようにして、ユーザに対してHDRモードで撮影することを提案するメッセージM1を表示させる。このとき、制御回路102は、ユーザの撮影開始の指示を待たずにHDRモードで対象物を撮影し、HDRモードによる撮影画像を例えばメモリ108に記憶させておいてもよい。この場合、制御回路102は、ユーザによって実際に対象物の撮影開始の指示がされたときには、撮影開始の指示に応じて得られた撮影画像とともに、事前のHDRモードの撮影で得られた撮影画像を記録媒体110に記録してよい。
さらに、制御回路102は、対象物Oを狙うことができるようにフレーミングの方向を誘導するためのマークを表示させてもよい。また、制御回路102は、過去の画像の撮影時において対象物の特定の箇所が拡大表示されていたときには、今回の撮影時のライブビューにおいてその特定の箇所を拡大表示させてもよい。また、制御回路102は、過去の画像の撮影時において対象物やシーンの特定の箇所へのピント合わせ又は露出合わせがされていたと判定したときには、今回の撮影時においてその特定の箇所へのピント合わせ及び露出合わせを自動で行ってもよい。
図2Cは、撮影時の操作履歴を活用した別の撮影時のアシスト制御の一例である。撮像装置100は、撮像装置100以外の機器、例えば照明機器とともに用いられることがある。例えば、撮像装置100と照明機器とが通信できるように構成されており、撮像装置100と照明機器との通信によって撮像装置100と照明機器との位置関係を撮像装置100が知ることができるのであれば、過去に照明を用いて撮影された対象物と類似の対象物の撮影時に、制御回路102は、例えば図2Cに示すようにして、照明機器の使用をユーザに対して促すメッセージM2をライブビューに代えて表示させてもよい。また、制御回路102は、図2Cに示すように、過去の画像と同等の画像を撮影するための対象物O、撮像装置100、照明機器Iの位置関係をライブビューに代えて表示させてもよい。図2Cは、例えば空から見た模式図である。この表示において、制御回路102は、照明機器Iの位置だけでなく、照明機器Iの向き等も分かるような表示をしてもよい。さらには、位置関係の表示はライブビューに重ねて表示されてもよい。この場合、撮像装置100から見たライブビュー上の特定の位置に照明機器Iの位置を示す画像が表示される。
また、撮像装置100は、外付けフラッシュ等のアクセサリとともに用いられることもある。特定の対象物の撮影において特定のアクセサリが使用されている回数が多ければ、制御回路102は、次回の撮影時にそのアクセサリの使用を提案するメッセージをライブビューに表示させてもよい。
また、前述したような撮影時の操作履歴を活用したアシスト制御は、再生時に行われてもよい。例えば、撮影時において拡大表示された領域、ピント合わせされて領域が再生時において拡大表示されてもよい。
図3Aは、静止画を再生したユーザの動作の一例を示している。ユーザは、撮影された静止画が所望のものであったかを確認したり、所望の画像が得られるように撮影された静止画を編集したりすることがある。一般に、撮影後の確認作業は、撮影中に比べてユーザの時間的な余裕があることが多い。このため、ユーザは撮影中に比べてより詳細に画像を確認することができる。したがって、撮影後の確認作業の操作履歴を分析することでも、ユーザの興味のある対象物が抽出され得る。
図3Aの動作は、ユーザの望む任意のタイミングで行われ得る。例えば、図3Aの動作は、撮影の直後のタイミングで行われることもあるし、数時間後、数日後といったタイミングで行われることもある。なお、図3Aで示す撮影後の確認作業の動作は一例である。図3Aで示す動作の一部が省略されてもよいし、図3Aで示す以外の動作が行われてもよい。特に撮影直後は、ユーザは、狙った対象物又は対象物の組み合わせが狙った通りになっているかを確認し、確認結果に基づいて次の撮影をするかどうかを決めたり、確認結果を次の撮影の仕方に反映させるかどうかを決めたりすることが多い。このよう判断のためには、迅速な確認が必要である。つまり、このような確認は、必要最小限の行為でありながら、ユーザの狙いを反映しており、客観的にその意図を推定するのに重要な情報を多く含んだ行為である。したがって、このような確認時のユーザの操作は、ユーザがその表現にこだわった対象物やシーンを推論したり特定したりするときの有効な参考情報になり得る。このような確認時の画像を第1の画像とすると、同様の画像である第2の画像の撮影時における対象物が第1の画像における第1の対象物やシーンと類似している場合に、そのユーザのこだわりを反映した撮影を補助するのに役立つ。この同様の画像の意味は、撮影対象が同様であったり、続けて撮影する時にシーンや状況の同様であったりすることを想定している。先の操作の履歴に従って撮影アシストするための制御をすれば、迅速かつ正確にユーザにとってのこだわりの撮影が可能となる。この時のユーザが同じであるか否かの判定は手動のスイッチ操作等でされてもよい。また、同じ撮影装置で撮影と確認とが連続的に行われている場合には、同一のユーザの行為と判定されることが自然である。したがって、同じ撮影装置で撮影と確認とが連続的に行われている場合には、同一のユーザによる行為であると判定されてもよい。つまり、撮影直後にユーザが撮影画像確認を行うために、表示素子に再生された第1の画像に対する操作(トリミングや拡大等の他、確認表示を行うという行為も含める)を取得し、ユーザの確認操作の履歴に従って第1の画像におけるこだわり要素(対象物が何か、その形状や姿勢や表情、色やピントや露出)を特定し、続いて行われる第2の画像の撮影時(確認の結果、改善点を見つけたりして、何かさらに良い画像を撮影しようとして追加で行う撮影時、あるいは、単に様々な態様で撮影しておいて、後で比較したりするための追加撮影時)における状況が第1の撮影状況と類似した状況であるか否かを判定し、第2の画像の撮影時に、操作の履歴に従って第2の画像の撮影をアシストするための制御をするように制御回路が機能すればよい。図17で後述するが、こうした確認時の操作は、ユーザのこだわりを推論する時に役立つ。つまり、機械学習によってこうした推論を行う場合、各画像と確認操作の関係が教師データとなる。特定の対象物やシーン毎に、それが確認される時の操作の関係を推論することが可能となる。
ユーザは、例えば撮像装置100の動作モードを再生モードにし、所望の画像iを再生する。そして、ユーザは、画像内の気になる対象物O1の確認を行う。例えば、対象物が小さくて見えない場合又は対象物をより細かく見たい場合に、ユーザは、気になる対象物を拡大表示させる操作をすることもある。制御回路102は、再生モード時の拡大操作の情報を操作履歴としてメモリ108に記憶させる。拡大操作の情報は、拡大された領域の位置及び倍率を含む。また、例えば鳥の画像の確認時において、ユーザは、鳥の目の部位を対象物O1として確認し、尾の部位を対象物O2として確認するといったように2か所以上の部位で対象物の拡大を行う場合もある。この場合、制御回路102は、拡大操作又は縮小操作の履歴として、拡大操作がされた順序も併せてメモリ108に記憶させてよい。2箇所以上の部位で対象物の拡大が行われる場合、ユーザによる確認の順序にも、例えば対象物の興味のある順序といったユーザの意図が含まれている可能性があるためである。
また、ユーザは、所望の対象物が所望の位置に来るように画像の位置合わせを行うこともある。また、編集作業として、ユーザは、画像の内の所望の範囲をトリミングすることもある。このほか、編集作業として、ユーザは、画像の明るさを変えたり、色合いを変えたり、ぼかし等の特殊効果を追加したりすることもある。これらの編集の操作がされた場合、制御回路102は、その編集の操作の内容を示す情報と、編集がされた領域の情報とを操作履歴として例えばメモリ108に記憶させる。
また、再生モード等では、ユーザは、画像を特定のサイトに公開することもある。このような公開の操作がされた場合、制御回路102は、公開の操作がされたことを示す情報を操作履歴として例えばメモリ108に記憶させる。
画像の確認の終了後に、制御回路102は、一連の画像確認時の操作履歴を、再生された静止画と関連付けて例えば記録媒体110に記録する。
操作履歴の記録後、制御回路102は、操作履歴を分析する。例えば、制御回路102は、画像内の拡大等の操作がされた領域に含まれる対象物を抽出する。そして、例えば、制御回路102は、拡大及びトリミング等の操作がされた領域を対象物毎に分類する。ある対象物についてライブビュー中にその対象物の特定の位置が拡大されている回数が多ければ、次回の類似の対象物の画像の再生時においてもその特定の位置に対してユーザが関心を持っている可能性が高いと判断できる。このような判断に基づき、制御回路102は、次回の類似の対象物の画像の撮影時又は再生時において、その特定の位置を予め拡大するといった制御をすることができる。
図3Bは、再生時の操作履歴を活用した撮影時のアシスト制御の例である。例えば、ユーザが過去にある対象物の画像の再生時に画像内の2箇所の部位の拡大表示の操作をしていたとする。このとき、前述したように、メモリ108には、拡大表示の操作がなされたことを示す情報と、拡大された対象物の部位の情報とが操作履歴として記憶されている。
制御回路102は、ライブビューの画像に過去の対象物と類似の対象物が含まれているか否かを判定する。そして、ライブビューの画像に過去の対象物と類似の対象物が含まれていると判定したとき、制御回路102は、図3Bで示すようにして、ライブビューに、過去に拡大された対象物の部位を表すガイドG1及びG2を表示させる。ガイドG1及びG2の表示位置は、対象物に追従させる。つまり、制御回路102は、対象物の移動に応じて、ガイドG1及びG2の表示位置を変更する。ここで、拡大操作の順序も記憶されているときには、拡大操作の順序に応じてガイドG1とガイドG2とで枠の形状を分けたり、色分けをしたり、表示の順序を変えたりしてもよい。ユーザは、ガイドG1及びG2を見ることで、過去に自分がガイドG1及びG2の箇所を気にしていたことを思い出すことができる。これにより、ユーザは、ガイドG1及びG2の箇所のピント及び露出等を所望のものとなるように操作等することが期待される。なお、ガイドは、必ずしも撮像装置1の表示素子106に表示される必要はない。ガイドは、スマートフォン等の、表示素子を有する撮像装置1とは別の機器に表示されてもよい。
図3Bで示したアシスト制御は、再生時にユーザが気にしていた箇所を撮影時に表示させる例である。図3Bのような表示は、他のアシスト制御にも適用され得る。例えば、図3Bのような表示は、撮影時又は編集時に深度合成の操作が行われた場合にも適用され得る。例えば、制御回路102は、深度合成によってピントを合わせた箇所に対してガイドG1を表示させ、深度合成によってピントを外した箇所に対してガイドG2を表示させてもよい。このような表示により、ユーザは、撮影時に特定の箇所にピントを合わせるように操作をしたり、特定の箇所をぼかすように絞りを操作したりすることが期待される。
また、図3Bで示したアシスト制御は、類似の対象物の撮影時ではなく、類似の対象物を含む画像の再生時に行われてもよい。この場合、ユーザは、過去の確認時の意図を思い出しながら確認作業を行い得る。このとき、制御回路102は、ガイドのための枠を出すだけでなく、該当の領域を実際に拡大したり、該当する領域の編集結果をユーザに対して提示したりしてもよい。
図4Aは、動画撮影時のユーザの動作の一例を示している。動画撮影の場合も静止画撮影と同様に、制御回路102は、動画モード中においてユーザによるフレーミング、ズーミングといった操作がされる毎にその操作履歴を例えばメモリ108に記憶させる。動画撮影の場合、静止画撮影とは異なり、撮影中であっても、ユーザによる操作がされ得る。制御回路102は、撮影中に行われた操作の操作履歴も例えばメモリ108に記憶させる。そして、動画撮影の終了後に、制御回路102は、一連の動画撮影時の操作履歴を、撮影の結果として得られた動画と関連付けて例えば記録媒体110に記録する。
操作履歴の記録後、制御回路102は、操作履歴を分析する。動画の操作履歴の分析は、静止画の操作履歴の分析と類似でよい。前述したように、動画の場合には、撮影開始の指示がされた後の操作履歴も記録されている。制御回路102は、撮影開始の指示がされた後の操作履歴も分析することができる。
図4Bは、動画再生時のユーザの動作の一例を示している。動画の場合も静止画の場合と同様に、ユーザは、撮影された動画が自身の所望するものであったかを確認し、自身の所望の画像が得られるように撮影された動画を編集することがある。ユーザは、例えば撮像装置100の動作モードを再生モードにし、所望の画像を再生する。そして、ユーザは、動画の各コマの確認を行う。この確認において、ユーザは、各コマにおける気になる対象物を拡大することもある。また、この確認において、ユーザは、気になるコマを選択することもある。制御回路102は、これらの操作を操作履歴として例えばメモリ108に記憶させる。
また、ユーザは、所望の対象物が所望の位置に来るように画像の位置合わせを行うこともある。また、編集作業として、ユーザは、画像の内の所望の範囲をトリミングすることもある。これらの編集の操作がなされた場合、制御回路102は、その操作の内容を示す情報を操作履歴として例えばメモリ108に記憶させる。操作履歴は、選択操作がされたこと、及び選択されたコマを特定するための情報、例えばコマの番号を含む。図4Bでは、例えばコマ2及びコマ3が選択されている。このうち、ユーザによって最初に選択されたコマは、ユーザが最も重視しているコマであると考えることもできる。したがって、制御回路102は、ユーザによって最初に選択されたコマを重視コマとし、重視コマを特定するための情報、例えばコマの番号を例えばメモリ108に記憶させてもよい。例えば、図4Bでは、コマ3が重視コマである。
また、ユーザは、選択したコマに対して編集を行うことがある。編集の操作がなされた場合、制御回路102は、その操作の内容を示す情報と編集結果とを操作履歴として例えばメモリ108に記憶させる。
また、再生モード等では、ユーザは、画像を特定のサイトに公開することもある。公開の操作された場合、制御回路102は、公開の操作がされたことを示す情報及び公開された画像を特定するための情報、例えば画像のファイル名を操作履歴として例えばメモリ108に記憶させる。
画像の確認の終了後に、制御回路102は、一連の画像確認時の操作履歴を、再生された動画と関連付けて例えば記録媒体110に記録する。
操作履歴の記録後、制御回路102は、操作履歴を分析する。分析の結果を類似の対象物の撮影時又は編集時に活用することで、ユーザに対するアシストをすることができる。アシスト制御は、静止画撮影のときと類似に対象物が画角内に入ってきたことをユーザに示す矢印マークを表示させる制御でもよいし、特定のモードで撮影することをユーザに対して提案するメッセージを表示させる制御でもよい。また、動画編集時のアシスト制御として、過去にユーザによって選択されたコマと類似の特徴のコマをユーザに対して提示する制御が行われてもよい。
以下、第1の実施形態における撮像装置100の動作をさらに詳しく説明する。図5は、第1の実施形態における撮像装置100の動作の一例を示すフローチャートである。図5の処理は、例えば制御回路102によって制御される。
ステップS1において、制御回路102は、撮像装置100の動作モードが撮影モードに設定されているか否かを判定する。撮像装置100は、例えば撮影モードと再生モードとを動作モードとして有している。撮影モードは、記録のための画像を撮影するためのモードである。再生モードは、記録されている画像を再生するためのモードである。勿論、撮像装置100は、撮影モードと再生モード以外の動作モードを有していてもよい。動作モードは、例えばユーザによる操作部112の操作によって設定される。ステップS1において、撮像装置100の動作モードが撮影モードに設定されていると判定されたときには、処理はステップS2に移行する。ステップS1において、撮像装置100の動作モードが撮影モードに設定されていないと判定されたときには、処理はステップS17に移行する。
ステップS2において、制御回路102は、ライブビューを表示素子106に表示させるための処理を行う。このとき、制御回路102は、撮像部104によるライブビューのための撮像によって取得されたライブビューのための画像をメモリ108に記憶させておく。このライブビューのための画像は、フレーミングの操作履歴として用いられ得る。
ステップS3において、制御回路102は、アシスト制御を行うか否かを判定する。アシスト制御を行うか否かは、例えばライブビューに写っている対象物に基づいて判定される。例えば、過去の分析の結果と関連付けられた対象物と類似の対象物がライブビューのための画像に含まれているときには、アシスト制御を行うと判定される。対象物の類似性は、画像マッチング等によって判定され得る。ステップS3において、アシスト制御を行うと判定されたときには、処理はステップS4に移行する。ステップS3において、アシスト制御を行わないと判定されたときには、処理はステップS5に移行する。
ステップS4において、制御回路102は、撮影時のアシスト制御を行う。アシスト制御の詳細については後で説明する。アシスト制御の後、処理はステップS5に移行する。
ステップS5において、制御回路102は、ユーザによる撮影前の操作がされたか否かを判定する。撮影前の操作は、前述したモード設定、フレーミング、ズーミング、ピント合わせ、露出合わせといった操作である。ステップS5において、ユーザによる操作がされたと判定されたときには、処理はステップS6に移行する。ステップS5において、ユーザによる操作がされていないと判定されたときには、処理はステップS8に移行する。
ステップS6において、制御回路102は、ユーザによる操作に応じた処理を実行する。例えばズーミングの指示がされた場合には、制御回路102は、ズーム光学系を駆動する。ピント合わせの指示がされた場合には、制御回路102は、フォーカス光学系を駆動する。
ステップS7において、制御回路102は、ユーザの操作に応じた操作履歴を、例えばメモリ108に記憶させる。
ステップS8において、制御回路102は、撮影開始の操作がされたか否かを判定する。撮影開始の操作は、例えば操作部112のレリーズボタンの操作、タッチパネルへのタッチ操作といった操作を含む。ステップS8において、撮影開始の操作がされたと判定されたときには、処理はステップS9に移行する。ステップS8において、ユーザによる撮影開始の操作がされていないと判定されたときには、処理はステップS16に移行する。
ステップS9において、制御回路102は、撮影の処理を開始させる。静止画撮影であれば、制御回路102は、静止画撮影に必要な処理を行う。動画撮影であれば、制御回路102は、動画撮影に必要な処理を行う。
ステップS10において、ユーザによる撮影中の操作がされたか否かを判定する。この撮影中の操作は、主に動画撮影中の操作である。つまり、動画撮影であれば、ユーザは撮影中にも前述したモード設定、フレーミング、ズーミング、ピント合わせ、露出合わせといった操作を行い得る。ステップS10では、このような撮影中の操作の有無が判定される。ステップS10において、ユーザによる操作がされたと判定されたときには、処理はステップS11に移行する。ステップS10において、ユーザによる操作がされていないと判定されたときには、処理はステップS13に移行する。
ステップS11において、制御回路102は、ユーザによる操作に応じた処理を実行する。
ステップS12において、制御回路102は、ユーザの操作に応じた操作履歴を、例えばメモリ108に記憶させる。その後、処理はステップS13に移行する。
ステップS13において、制御回路102は、撮影を終了するか否かを判定する。静止画モードであれば、1回の静止画撮影の処理が完了したときに撮影を終了すると判定される。一方、動画モードであれば、ユーザによって撮影終了の操作がされたときに撮影を終了すると判定される。撮影終了の操作は、例えば操作部112のレリーズボタンの再度の操作、タッチパネルへのタッチ操作といった操作を含む。ステップS13において、撮影を終了すると判定されたときには、処理はステップS14に移行する。ステップS13において、撮影を終了しないと判定されたときには、処理はステップS9に戻る。
ステップS14において、制御回路102は、撮影によって得られた静止画又は動画を画像ファイルとして記録媒体110に記録する。また、制御回路102は、ステップS7又はS12においてメモリ108に記憶させておいた操作履歴を画像ファイルに関連付ける。操作履歴は、画像ファイルに記録されることで関連付けされてもよいし、画像ファイルとは別のファイルとして関連付けされてもよい。
ステップS15において、制御回路102は、記録した操作履歴を分析する。操作履歴の分析についての詳細は後で説明する。分析の後、処理はステップS16に移行する。
ステップS16において、制御回路102は、撮像装置100の動作を終了するか否かを判定する。例えば、ユーザによって撮像装置100の電源がオフにされたとき、一定時間のユーザの操作がないときには、撮像装置100の動作を終了すると判定される。ステップS16において、撮像装置100の動作を終了しないと判定されたときには、処理はステップS1に戻る。ステップS16において、撮像装置100の動作を終了すると判定されたときには、図5の処理は終了する。
ステップS17において、制御回路102は、撮像装置100の動作モードが再生モードに設定されているか否かを判定する。ステップS17において、撮像装置100の動作モードが再生モードに設定されていると判定されたときには、処理はステップS18に移行する。ステップS17において、撮像装置100の動作モードが再生モードに設定されていないと判定されたときには、処理はステップS16に移行する。
ステップS18において、制御回路102は、記録媒体110に記録されている画像ファイルの一覧を表示素子106に表示させる。一覧の表示は、例えば画像ファイルの内容を表すサムネイルを表示させることで行われる。ステップS19において、制御回路102は、ユーザによって画像ファイルが選択されたか否かを判定する。ステップS19において、画像ファイルが選択されたと判定されたとき、処理はステップS20に移行する。ステップS19において、画像ファイルが選択されていないと判定されたとき、処理はステップS29に移行する。
ステップS20において、制御回路102は、ユーザによって選択された画像ファイルを記録媒体110から読み出し、読み出した画像ファイルを表示素子106に再生する。
ステップS21において、制御回路102は、アシスト制御を行うか否かを判定する。アシスト制御を行うか否かは、例えばユーザによって選択された画像内の対象物に基づいて判定される。例えば、選択された画像内の対象物が、過去の分析の結果として抽出された対象物と類似の対象物であるときには、アシスト制御を行うと判定される。ステップS21において、アシスト制御を行うと判定されたときには、処理はステップS22に移行する。ステップS21において、アシスト制御を行わないと判定されたときには、処理はステップS23に移行する。
ステップS22において、制御回路102は、再生時のアシスト制御を行う。アシスト制御の詳細については後で説明する。アシスト制御の後、処理はステップS23に移行する。
ステップS23において、制御回路102は、ユーザによる再生時の操作がされたか否かを判定する。この再生時の操作は、前述した対象物の拡大、トリミング等の編集といった操作である。ステップS23において、ユーザによる操作がされたと判定されたときには、処理はステップS24に移行する。ステップS23において、ユーザによる操作がされていないと判定されたときには、処理はステップS26に移行する。
ステップS24において、制御回路102は、ユーザによる操作に応じた処理を実行する。例えば拡大表示の指示がされた場合には、制御回路102は、ユーザによって指定された領域を拡大して表示素子106に表示させる。
ステップS25において、制御回路102は、ユーザの操作に応じた操作履歴を、例えばメモリ108に記憶させる。その後、処理はステップS26に移行する。
ステップS26において、制御回路102は、再生を終了するか否かを判定する。例えば、ユーザによって再生終了の操作がされたときに再生を終了すると判定される。再生終了の操作は、例えば操作部112の特定のボタンの操作、タッチパネルへのタッチ操作といった操作を含む。ステップS26において、再生を終了すると判定されたときには、処理はステップS27に移行する。ステップS26において、再生を終了しないと判定されたときには、処理はステップS20に戻る。
ステップS27において、制御回路102は、ステップS25においてメモリ108に記憶させておいた操作履歴を画像ファイルに関連付ける。その後、処理はステップS28に移行する。操作履歴は、画像ファイルに記録されることで関連付けされてもよいし、画像ファイルとは別のファイルとして関連付けされてもよい。
ステップS28において、制御回路102は、記録した操作履歴を分析する。操作履歴の分析についての詳細は後で説明する。分析の後、処理はステップS29に移行する。
ステップS29において、制御回路102は、再生モードを終了するか否かを判定する。例えば、ユーザによって動作モードの変更の操作がされたときに再生モードを終了すると判定される。ステップS29において、再生モードを終了すると判定されたときには、処理はステップS16に移行する。ステップS29において、再生モードを終了しないと判定されたときには、処理はステップS18に戻る。
図6は、操作履歴を含む画像ファイルの例を示す図である。図6に示すように、一例の画像ファイルは、画像と、撮影情報と、撮影時の操作履歴と、再生時の操作履歴とを含む。前述したように、撮影時の操作履歴と、再生時の操作履歴とは、画像ファイルとは別のファイルに記録されていてもよい。この場合、操作履歴のファイルは対応する画像ファイルを識別するための情報を含む。または、画像ファイルは対応する操作履歴のファイルを識別するための情報を含む。また、撮影時の操作履歴と再生時の操作履歴とは必ずしも同じファイルに記録されなくてもよい。
画像は、撮影により得られた画像である。この画像は、例えば圧縮された状態で記録される。静止画撮影のときの画像は、JPEG方式等の静止画圧縮方式を用いて圧縮され得る。動画撮影のときの画像は、MPEG方式等の動画圧縮方式を用いて圧縮され得る。
撮影情報は、画像ファイルの撮影時の情報である。撮影情報は、画像ファイル名、撮影機種名、撮影日時、露出条件といった情報を含む。露出条件は、撮影時の絞り値及びシャッタ速度を含む。
撮影時の操作履歴は、例えば撮影の対象物、ライブビュー表示中のモードの操作履歴、拡大表示の操作履歴、ズーミングの操作履歴、ピント合わせの操作履歴、露出合わせの操作履歴、外部機器/アクセサリの使用履歴を含む。動画撮影のときには、撮影中の、すなわち動画のコマ毎のモードの操作履歴、拡大表示の操作履歴、ズーミングの操作履歴、ピント合わせの操作履歴、露出合わせの操作履歴、外部機器/アクセサリの使用履歴を含んでいてもよい。
撮影の対象物は、撮影された画像に写っている対象物を特定するための情報、例えば対象物の名称を含む。また、撮影の対象物は、撮影された画像に写っている対象物の画像上での構造的な特徴を表す情報、例えばエッジの形状、明るさ、色といった情報を含んでいてもよい。
モードの操作履歴は、撮影中にユーザによって設定されたモードの名称の情報を含む。モードの操作履歴は、撮影開始時点で設定されていたモードの名称の情報に限らない。モードの操作履歴は、撮影前のライブビュー表示中に設定されたモードの名称の情報を含んでいてもよい。
拡大表示の操作履歴は、ライブビュー及び動画撮影中にユーザによって拡大された画像内の領域の位置及び拡大率を含む。拡大表示の操作履歴は、拡大表示がされた領域における対象物の構造的な特徴を表す情報を含んでいてもよい。
ズーミングの操作履歴は、光学ズームの操作履歴と電子ズームの操作履歴とを含む。光学ズームの操作履歴は、ユーザの光学ズームの操作に伴う、例えばズーム光学系の焦点距離を含む。電子ズームの操作履歴は、ユーザの電子ズームの操作に伴う、例えば電子ズームがされた画像内の領域の位置及びズームの倍率を含む。対象物を特定できるときには、ズーミングの操作履歴は、ズーミングの対象となった対象物の情報を含んでいてもよい。
ピント合わせの操作履歴は、ピント合わせが自動で行われたか否かを示す情報、フォーカス光学系の位置及びピント合わせの対象となった画像内の領域の位置を含む。対象物を特定できるときには、ピント合わせの操作履歴は、ピント合わせの対象となった対象物の情報を含んでいてもよい。
露出合わせの操作履歴は、露出合わせが自動で行われたか否かを示す情報、露出合わせの対象となった画像内の領域の位置を含む。対象物を特定できるときには、露出ト合わせの操作履歴は、露出合わせの対象となった対象物の情報を含んでいてもよい。
外部機器/アクセサリの使用履歴は、撮影に際して外部機器又はアクセサリの使用があったか否かを示す情報と、使用があったときにはその外部機器又はアクセサリを特定するための情報を含む。外部機器又はアクセサリを特定するための情報は、外部機器又はアクセサリの名称、ID等でよい。このほか、外部機器/アクセサリの使用履歴は、使用時の外部機器又はアクセサリの設定を含んでいてもよい。例えば、外部機器がフラッシュであれば、設定は、フラッシュの向き及び強度等を含んでいてもよい。
再生時の操作履歴は、例えば拡大表示の操作履歴、編集の操作履歴、公開の操作履歴を含む。
拡大表示の操作履歴は、画像の再生中にユーザによって拡大された画像内の領域の位置を含む。拡大表示の操作履歴は、拡大表示がされた領域における対象物の構造的な特徴を表す情報を含んでいてもよい。
編集の操作履歴は、編集の操作の内容を示す情報を含む。編集は、トリミング、明るさ調整、色調整、ガンマの調整等を含む。また、トリミング等のように画像内の特定の領域に対してされる編集については、編集の操作履歴は、編集の対象となった画像内の領域の位置を含む。さらに、動画の場合には、編集の操作履歴は、ユーザによって選択されたコマを特定するための情報を含んでいてよい。
公開の操作履歴は、公開の操作の有無の情報を含む。
また、動画ファイルの場合には、再生時の操作履歴は、重視コマを特定するための情報を含んでいてもよい。重視コマを特定するための情報は、例えばコマの番号である。
次に、分析処理について説明する。図7は、図5のステップS15における静止画又は動画撮影後に行われる分析処理の一例を示すフローチャートである。ステップS101において、制御回路102は、撮影によって記録媒体110に記録された画像ファイルを読み出し、画像ファイルに記録されている画像から撮影の対象物を抽出する。前述したように、対象物の抽出は、エッジ抽出及び画像マッチング等の手法で行われ得る。撮影された画像内に複数の対象物が含まれているときには、制御回路102は、例えば画像の最も中央に近い場所に存在している対象物、最も近距離に存在している対象物、ライブビューに写っている時間の長い、すなわちユーザによるフレーミングによって最も画角に収められている時間の長い対象物を抽出する。
ステップS102において、制御回路102は、複数の画像ファイルを参照して、撮影の際に設定されたモードを対象物毎に分類する。例えば、制御回路102は、対象物毎のモードの設定回数を算出する。
ステップS103において、制御回路102は、複数の画像ファイルを参照して、拡大表示、ピント合わせ、露出合わせされた領域を対象物毎に分類する。例えば、制御回路102は、対象物毎の目の領域に対して拡大表示、ピント合わせ、露出合わせされた回数を算出する。同様に、制御回路102は、対象物の他の特徴を有する領域に対して拡大表示、ピント合わせ、露出合わせされた回数を算出する。
ステップS104において、制御回路102は、複数の画像ファイルを参照して、照明の使用の仕方を対象物毎に分類する。例えば、制御回路102は、対象物毎の照明の使用回数を算出する。また、制御回路102は、照明が使用されているときには、照明が使用されている位置を算出する。
ステップS105において、制御回路102は、対象物と分類結果とを関連付けて例えば記録媒体110に記録する。その後、図7の処理は終了する。分類結果は、例えば画像ファイルとは別のファイルに記録される。
図8は、図5のステップS22における静止画の再生後に行われる分析処理の一例を示すフローチャートである。ステップS201において、制御回路102は、再生された画像ファイルを読み出し、画像ファイルに記録されている画像における拡大表示又は編集された領域から対象物を抽出する。対象物の抽出は、撮影時における分析処理と同様にエッジ抽出及び画像マッチング等の手法で行われ得る。
ステップS202において、制御回路102は、複数の画像ファイルを参照して、拡大表示、編集された領域を対象物毎に分類する。例えば、制御回路102は、対象物毎の目の領域に対して拡大表示された回数を算出する。同様に、制御回路102は、対象物の他の特徴を有する領域に対して拡大表示された回数を表示する。また、例えば、制御回路102は、対象物におけるトリミングがされた回数の多い領域を算出する。
ステップS203において、制御回路102は、対象物と分類結果とを関連付けて例えば記録媒体110に記録する。その後、図8の処理は終了する。分類結果は、例えば画像ファイルとは別のファイルに記録される。
図9は、図5のステップS22における動画の再生後に行われる分析処理の一例を示すフローチャートである。ステップS301において、制御回路102は、再生された画像ファイルを読み出し、再生された動画のファイルのうちの何れかのコマがユーザによって選択されていたか否かを判定する。ステップS301において、コマが選択されていたと判定されたときには、処理はステップS302に移行する。ステップS301において、コマが選択されていないと判定されたときには、処理はステップS305に移行する。
ステップS302において、制御回路102は、選択されたコマの画像における拡大表示又は編集された領域から対象物を抽出する。
ステップS303において、制御回路102は、選択されたコマと類似する複数のコマを参照して、拡大表示、編集された領域を対象物毎に分類する。
ステップS304において、制御回路102は、選択されたコマの情報と、対象物と、分類結果とを関連付けて例えば記録媒体110に記録する。その後、図9の処理は終了する。分類結果は、例えば画像ファイルとは別のファイルに記録される。
ステップS305において、制御回路102は、各コマの画像における拡大表示又は編集された領域から対象物を抽出する。
ステップS306において、制御回路102は、複数の画像ファイルを参照して、拡大表示、編集された領域を対象物毎に分類する。
ステップS307において、制御回路102は、選択されたコマの情報と、対象物と、分類結果とを関連付けて例えば記録媒体110に記録する。その後、図9の処理は終了する。分類結果は、例えば画像ファイルとは別のファイルに記録される。
図10は、図5のステップS4における撮影時のアシスト制御について示すフローチャートである。例えば、ユーザは、図11に示すように、撮像装置100を用いて対象物Oである鳥を撮影しようとしているものとする。このとき、撮像装置100には、ユーザによって過去に鳥が撮影されていたときの操作履歴及びその分析結果が記憶されているものとする。
ステップS401において、制御回路102は、ライブビュー内の対象物を強調表示する。強調表示は、例えば図2Bに示すように、対象物の近傍に矢印マークAを表示させることで行われる。勿論、強調表示は、矢印マークの表示に限るものではない。例えば、強調表示は、対象物を囲む枠を表示させることで行われてもよい。強調表示の後、処理はステップS402に移行する。
ステップS402において、制御回路102は、撮影の対象物の特定の領域の拡大表示されている回数が多いか否かを判定する。ステップS402においては、制御回路102は、拡大表示されている回数を目の部位、尾の部位といった領域毎に所定値(例えば10回)と比較する。図6で示したように、拡大表示の操作履歴は、撮影時と再生時の両方で記録される。したがって、拡大表示についても分析結果も撮影時と再生時とで個別に得られる。制御回路102は、撮影時において拡大表示された回数と再生時において拡大表示された回数とを個別に所定値と比較する。そして、撮影時と再生時の何れかで拡大表示されている回数が所定値以上であるときには、拡大表示されている回数が多いと判定される。ステップS402において、特定の領域の拡大表示されている回数が多いと判定されたときには、処理はステップS403に移行する。ステップS402において、特定の領域の拡大表示されている回数が多くないと判定されたときには、処理はステップS404に移行する。
ステップS403において、制御回路102は、拡大表示についてのアシスト制御を行う。その後、処理はステップS404に移行する。図12は、拡大表示についてのアシスト制御の例を示す図である。例えば、過去の鳥Oの撮影又は確認時において、鳥Oの目の領域及び尾の領域が拡大表示された回数が多かったとする。このとき、制御回路102は、図12に示すようにして、鳥Oの目の領域が拡大されていたことを示すガイドG1及び鳥Oの尾の領域が拡大されていたことを示すガイドG2を表示させる。このガイドG1及びG2の表示位置は、鳥Oの動きに追従させる。つまり、ライブビューL内での鳥Oの位置又は向きが変わったときには、制御回路102は、その位置又は向きの変更に応じてガイドG1及びG2の表示位置を変更する。なお、ガイドG1の形状とガイドG2の形状とは、同じ形状であってもよいし、異なる形状であってもよい。前述したように、過去のユーザによる拡大表示の操作に明確な順序がある場合には、順序に応じてガイドG1の形状とガイドG2の形状とを異ならせてもよい。
拡大表示についてのアシスト制御は、ガイドの表示に限るものではない。例えば拡大表示についてのアシスト制御は、現在のライブビューに表示されている対象物における特定の領域の拡大表示の操作をユーザに対して促すメッセージを表示させる処理が含まれてよい。このほか、拡大表示についてのアシスト制御は、ユーザの操作なしで特定の領域を拡大表示する処理が含まれてよい。
ステップS404において、制御回路102は、撮影の対象物が特定のモードで撮影されている回数が多いか否かを判定する。ステップS404において、特定のモードで撮影されている回数が多いと判定されたときには、処理はステップS405に移行する。ステップS404において、特定のモードで撮影されている回数が多くないと判定されたときには、処理はステップS406に移行する。
ステップS405において、制御回路102は、モード設定についてのアシスト制御を行う。その後、処理はステップS406に移行する。例えば、制御回路102は、モード設定についてのアシスト制御として、例えば図2Bのように特定のモードで撮影することをユーザに促すメッセージを表示させる。また、制御回路102は、ユーザの操作を待たずにモードを設定してもよい。また、制御回路102は、ユーザの操作を待たずにモードを設定し、対象物を自動で撮影してもよい。この自動撮影により得られた画像は、ユーザの撮影開始の操作の後でユーザに提示されてよい。
ステップS406において、撮影の対象物における特定の領域がピント合わせ又は露出合わせの対象になっている回数が多いか否かを判定する。ステップS406において、特定の領域がピント合わせ又は露出合わせの対象になっている回数が多いと判定されたときには、処理はステップS407に移行する。ステップS406において、特定の領域がピント合わせ又は露出合わせの対象になっている回数が多くないと判定されたときには、処理はステップS408に移行する。
ステップS407において、制御回路102は、ピント合わせ及び露出合わせについてのアシスト制御を行う。その後、処理はステップS408に移行する。例えば、制御回路102は、ピント合わせ及び露出合わせについてのアシスト制御として、例えば対象物の特定の領域にピント合わせ又は露出合わせすることをユーザに促すメッセージを表示させる。このとき、制御回路102は、対象物の特定の領域が視認できるような矢印等のガイドを合わせて表示させてもよい。また、制御回路102は、ユーザの操作を待たずにピント合わせ又は露出合わせをしてもよい。また、制御回路102は、ユーザの操作を待たずにピント合わせ及び露出合わせを行って対象物を自動で撮影してもよい。この自動撮影により得られた画像は、ユーザの撮影開始の操作の後でユーザに提示されてよい。
ステップS408において、制御回路102は、撮影の対象物と類似の対象物を含む画像の撮影後の編集の回数が多いか否かを判定する。ステップS408において、編集の回数が多いと判定されたときには、処理はステップS409に移行する。ステップS408において、編集の回数が多くないと判定されたときには、図10の処理は終了する。
ステップS409において、制御回路は、編集と同様の効果を撮影によって再現できるか否かを判定する。例えば、編集の内容が明るさの調整であったり、色の調整であったり、特殊効果の追加であったりすれば、撮影時の露出合わせ及び画像処理等によって編集と同様の効果を再現することができる。このほか、編集の内容がピント位置の調整であれば、撮影時のピント合わせによって編集と同様の効果を再現することができる。例えば、メモリ108には、予め編集の内容と編集と同等の効果を再現できるか否かを示す情報を格納しておくことで、制御回路102は、ステップS409の判定を行うことができる。ステップS409において、編集と同様の効果を撮影によって再現できると判定されたときには、処理はステップS410に移行する。ステップS409において、編集と同様の効果を撮影によって再現できないと判定されたときには、図10の処理は終了する。
ステップS410において、制御回路102は、編集と同様の効果を撮影によって再現するために必要な制御を行うように設定する。その後、図10の処理は終了する。例えば、編集時に露出補正がされることが多いのであれば、制御回路102は、ユーザによってなされる露出補正量を加えて露出合わせを行う。また、露出合わせだけでは所望の露出を得ることできない場合には、制御回路102は、照明の使用をユーザに対して促すためのメッセージを表示させてもよい。また、例えば、編集時に同じような色調整がされるのであれば、制御回路102は、ユーザによってなされる色調整量に合わせてホワイトバランス等を調整する。
図13は、図5のステップS22における再生時のアシスト制御について示すフローチャートである。例えば、ユーザは、撮像装置100を用いて撮影された鳥の動画を確認しようとしているものとする。このとき、撮像装置100には、ユーザによって過去に鳥が撮影されていたときの操作履歴及びその分析結果が記憶されている。
ステップS501において、制御回路102は、再生された動画と類似の対象物を含む動画において特定の構図のコマが選択されている回数が多いか否かを判定する。ステップS501において、特定の構図のコマが選択されている回数が多いと判定されたときには、処理はステップS502に移行する。ステップS501において、再生された画像が静止画であるとき又は特定の構図のコマが選択されている回数が多くないと判定されたときには、処理はステップS503に移行する。
ステップS502において、制御回路102は、コマ選択についてのアシスト制御を行う。その後、処理はステップS503に移行する。図14は、コマ選択についてのアシスト制御の例を示す図である。コマ選択についてのアシスト制御として、制御回路102は、例えば図14に示すように、重視コマと類似のコマを強調するための枠S1を表示させる。また、コマ選択についてのアシスト制御として、制御回路102は、重視コマ以外の選択されている回数の多いコマを強調するための枠S2を表示させる。
ステップS503において、制御回路102は、再生された画像に含まれる対象物の特定の領域の拡大表示されている回数が多いか否かを判定する。ステップS503において、特定の領域の拡大表示されている回数が多いと判定されたときには、処理はステップS504に移行する。ステップS503において、特定の領域の拡大表示されている回数が多くないと判定されたときには、処理はステップS505に移行する。
ステップS504において、制御回路102は、拡大表示についてのアシスト制御を行う。その後、処理はステップS505に移行する。再生時のときの拡大表示についてのアシスト制御は、撮影時のときのアシスト制御と同様でよい。
ステップS505において、制御回路102は、類似の対象物の画像において特定の編集がされている回数が多いか否かを判定する。例えば、類似の対象物の画像において、類似の領域のトリミングがされている回数が多いときには、ステップS505において、特定の編集がされている回数が多いと判定されたときには、処理はステップS506に移行する。ステップS505において、特定の編集がされている回数が多くないと判定されたときには、図13の処理は終了する。
ステップS506において、制御回路102は、編集についてのアシスト制御を行う。その後、図13の処理は終了する。例えば、制御回路102は、編集についてのアシスト制御は、トリミング等をすることをユーザに促すメッセージを表示させる。このとき、制御回路102は、トリミングする領域が視認できるような枠等のガイドを合わせて表示させてもよい。また、制御回路102は、ユーザの操作を待たずに編集処理をしてもよい。
以上説明したように本実施形態によれば、撮影又は再生時におけるユーザの操作の履歴を操作の対象となった画像と関連付けておき、画像の対象物毎に操作を分類しておくことで、次回以降の同様の対象物を含む画像の撮影時又は再生時においてユーザに対する操作のアシスト制御をしている。
例えば、撮影中又は再生中においては、ユーザは対象物を確認するための種々の操作をすることが多い。このような確認のための操作等から、ユーザの関心を持っている対象物を推定することができる。また、類似の対象物については類似の操作が行われることが多いと考えられる。したがって、対象物毎に操作を分類することで対象物毎のユーザの好みの操作をするためのアシスト制御が行われ得る。
また、アシスト制御では、例えば対象物を強調するガイドが表示される。また、アシスト制御では、例えばユーザに対して操作を促すためのメッセージが表示される。これらのアシスト制御により、ユーザは、過去の自身の操作を思い出したり、過去の自身が気にしていた対象物を思い出したりしながら、撮影又は再生の操作をすることができる。また、ユーザが意図に従った処理が自動で行われれば、ユーザの操作の手間が省かれる。
また、アシスト制御では、ユーザによって過去に行われた編集と同様の効果を撮影によって再現できるときには、撮影時の画像処理等によって編集と同様の効果が再現される。この場合もユーザの手間は省かれる。逆に、ユーザによって過去に行われた編集と同様の効果を撮影によって再現できるときには、撮影時の画像処理等を省略することによって画像記録までの時間を短縮するように制御することもできる。
ここで、第1の実施形態では、撮像装置100が、操作履歴の記録、操作履歴の分析、アシスト制御を行うものとして説明されている。しかしながら、これらの処理は必ずしもすべて撮像装置100において行われなくてもよい。例えば、操作履歴の分析、アシスト制御のための対象物の特定の処理は、撮像装置100の外部のサーバで行われてもよいし、クラウドコンピューティングを利用して行われてもよい。つまり、第1の実施形態の処理は、撮像装置とサーバ等とを有するシステムで行われてもよい。
[第2の実施形態]
次に、第2の実施形態について説明する。図15は、第2の実施形態に係る撮像装置の一例の構成を示す図である。図15において、図1と対応する構成については図1と同一の参照符号を付すことで説明を省略する。
第2の実施形態における撮像装置100は、記録媒体116を有している。記録媒体116は、2つの推論エンジン、すなわち静止画用の推論エンジン116aと、動画用の推論エンジン116bとを有している。図15では、推論エンジンを記録する記録媒体116は、画像ファイル等を記録するための記録媒体110と別に設けられている。記録媒体110と記録媒体116とは、1つの記録媒体で構成されていてもよい。
推論エンジン116aは、入力された静止画から対象物を推論し、推論した対象物に応じてアシスト制御を決定するように構成された学習済みモデルである。推論エンジン116aは、例えばニューラルネットワークを有している。ニューラルネットワークは、入力層と、中間層と、出力層とを有する。中間層の構成によって、ニューラルネットワークの構成を変えることができる。
図16Aは、推論エンジン116aを作成するための深層学習の概念を示す図である。例えば、学習用のプログラムに対して、教師データT1、T2が入力される。教師データT1は、例えば静止画T11と、静止画T11と関連するアシスト制御T12との組のデータである。また、教師データT2は、静止画T21と、静止画T21と関連するアシスト制御T22との組のデータである。このアシスト制御は、例えば静止画における特定の領域の拡大表示である。ここで、教師データは2つだけ例示している。教師データはある母集団の中から選択されるものであって2つに限るものではない。
学習済みモデルである推論エンジン116aは、入力された静止画が静止画T11と類似しているときには、アシスト制御T12を出力し、入力された静止画が静止画T21と類似しているときには、アシスト制御T22を出力するように学習プログラムにおける学習がされることで生成される。このようにして生成された推論エンジン116aに対して入力INとして静止画T11と類似する静止画が入力されたときには、出力OUTとしてアシスト制御T12が出力される。同様に、入力INとして静止画T21と類似する静止画が入力されたときには、出力OUTとしてアシスト制御T22が出力される。
推論エンジン116bは、入力された動画の各コマにおける対象物を推論し、推論した対象物に応じたアシスト制御を決定するように構成された学習済みモデルである。推論エンジン116bは、例えばニューラルネットワークを有している。
図16Bは、推論エンジン116bを作成するための深層学習の概念を示す図である。例えば、学習用のプログラムに対して、教師データT3、T4が入力される。教師データT3は、動画T31と、動画T31と関連するアシスト制御T32との組のデータである。また、教師データT4は、動画T41と、動画T41と関連するアシスト制御T42との組のデータである。例えば、このアシスト制御は、例えば動画コマから重視コマを選択する制御である。ここで、教師データを2つだけ例示しているが、教師データは2つに限るものではない。
学習済みモデルである推論エンジン116bは、入力された動画が動画T31と類似しているときには、アシスト制御T32を出力し、入力された動画が動画T41と類似しているときには、アシスト制御T42を出力するように学習プログラムにおける学習がされることで生成される。このようにして生成された推論エンジン116bに対して入力INとして動画T31と類似する静止画が入力されたときには、出力OUTとしてアシスト制御T32が出力される。同様に、入力INとして動画T41と類似する動画が入力されたときには、出力OUTとしてアシスト制御T42が出力される。
図17は、推論エンジンを作成するための処理の一例を示したフローチャートである。図17の処理は、撮像装置100において行われてもよい。また、図17の処理は、撮像装置100とは別のサーバ等で行われてもよい。以下では、図17の処理を撮像装置100の制御回路102が行うものとして説明する。
ステップS601において、制御回路102は、ユーザによって撮影された画像又は再生された画像とそれらに関連づけられたアシスト制御とを教師データに加工する。この加工は、画像とアシスト制御とを教師用プログラムにおける使用に適した形式に加工する処理である。あるいは、この加工は、各画像と確認操作の関係を教師データとする処理である。このような加工により、特定の対象物やシーン毎にそれらを含む画像が確認される時の操作の関係を推論することが可能な推論モデルが得られる。
ステップS602において、制御回路102は、学習用プログラムと教師データとから推論モデルを生成する。
ステップS603において、制御回路102は、画像とアシスト制御の信頼性が所定値以上か否かを判定する。つまり、入力データである画像に対して出力されるアシスト制御との関係が教師データとして入力される画像とアシスト制御との関係と略等しいときには信頼性が所定値以上であると判定される。ステップS603において、信頼性が所定値以上であると判定されたときには、処理はステップS604に移行する。ステップS603において、信頼性が所定値以上でないと判定されたときには、処理はステップS605に移行する。これは、画像毎に、そのユーザが行うであろうこだわり確認操作の関係が正しく推論されたかどうかを確認している処理である。このような処理によって、特定の対象物又はシーン毎に、それらを含む画像が確認される時の操作の関係が正しく推論されるようになる。
ステップS604において、制御回路102は、学習済みモデルを推論エンジンとして記録媒体116に記録する。その後、図17の処理は終了する。
ステップS605において、制御回路102は、学習用の母集団の再設定をする。その後、処理はステップS601に移行する。つまり、学習結果の信頼性が低いということは、画像とその画像を撮影したユーザが行うであろうこだわり確認操作との関係が正しく推論されていないということで、正しい補助ができずに、最初の教師データの選択が適切でない可能性がある。このため、母集団の設定又は教師データの選択からやり直される。これによって、各対象物、あるいは各シーンにおいて、ユーザが確認したくなるこだわり部分が、ユーザの操作なく判定でき、この判定結果を撮影制御時に用いることができる。単純な例では、夕日のシーンでは、必ず長めの確認再生時間が設定されたり、野鳥の撮影であれば、必ず鳥の姿勢や表情を拡大確認できたりするような補助が可能となる。拡大確認がされる部分は重要な部分であるから、ピントや露出や色再現などが重点的に制御されるといったパラメータ制御や画像処理制御への反映がなされてもよい。
以上説明したように本実施形態によれば、画像とアシスト制御との関係を人工知能によって分類することにより、よりユーザの好みに即したアシスト制御が行われ得る。
ここで、学習済みモデルの作成は撮像装置100で行われる必要はない。学習済みモデルの作成は、例えば特定のサーバで行われてもよいし、クラウドコンピューティングを利用して行われてもよい。サーバ等であれば大容量のデータを取り扱うことができる。したがって、サーバ等で学習済みモデルの作成が行われる場合は、教師データとして用いられる画像及びアシスト制御は、必ずしも撮像装置100のユーザの撮影又は再生した画像とそれに関連するアシスト制御でなくてもよい。例えば、教師データとしてカメラマン等の撮影した画像及びアシスト制御が用いられてもよい。また、不特定多数の人の撮影した画像及びアシスト制御が用いられてもよい。教師データとしてカメラマン等の撮影した画像及びアシスト制御が用いられれば、例えばユーザに対してカメラマンと同等の画像を撮影できるようにするためのアシスト制御が行われ得る。つまり、カメラマンと同様の部位を確認できるようにするためのガイドを出したり、各種の撮影の設定を制御したりできる。また、不特定多数の人の撮影した画像及びアシスト制御が用いられれば、例えば現時点の流行の画像の撮影を撮影できるようにするためのアシスト制御が行われ得る。
以上実施形態に基づいて本発明を説明したが、本発明は上述した実施形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形や応用が可能なことは勿論である。
また、前述の各動作フローチャートの説明において、便宜上「まず」、「次に」等を用いて動作を説明しているが、この順で動作を実施することが必須であることを意味するものではない。
また、上述した実施形態による各処理は、コンピュータである制御回路102に実行させることができるプログラムとして記憶させておくこともできる。この他、磁気ディスク、光ディスク、半導体メモリ等の外部記憶装置の記憶媒体に格納して配布することができる。そして、制御回路102は、この外部記憶装置の記憶媒体に記憶されたプログラムを読み込み、この読み込んだプログラムによって動作が制御されることにより、上述した処理を実行することができる。
なお、実施形態において、「部」(セクションやユニット)として記載した部分は、専用の回路や、複数の汎用の回路を組み合わせて構成してもよく、必要に応じて、予めプログラムされたソフトウェアに従って動作を行うマイコン、CPU等のプロセッサ、又はFPGA等のシーケンサを組み合わせて構成されてもよい。また、その制御の一部又は全部を外部の装置が引き受けるような設計も可能で、この場合、有線又は無線の通信回路が介在する。通信は、Bluetooth通信、Wi−Fi通信、電話回線等で行われればよく、USB等で行われてもよい。専用の回路、汎用の回路や制御部を一体としてASICとして構成してもよい。