(57)【要約】【課題】画像から主被写体を選択する場合に、ユーザの所望する被写体を適切に選択することができる画像処理装置を提供する。【解決手段】取得した画像から主被写体を決定し、主被写体が決定された画像の中から、ユーザの入力に基づいて、決定手段のための学習において負の報酬を与えるデータとして用いる画像を選別する。【選択図】  図６
2020126434.tif 000002
【特許請求の範囲】
【請求項１】
取得した画像から主被写体を決定する決定手段を用いて主被写体が決定された画像の中から、前記決定手段のための学習において負の報酬を与えるデータとして用いる画像を、ユーザの入力に基づいて選別する選別手段を有することを特徴とする画像処理装置。
【請求項２】
前記選別手段は、前記取得した画像から主被写体を決定する決定手段を用いて主被写体が決定された画像の中から、前記決定手段のための学習において正の報酬を与えるデータとして用いる画像を、前記ユーザの入力に基づいて選別することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記選別手段は、前記ユーザの入力に基づいて指定された第１の主被写体と、前記決定手段を用いて決定された第２の主被写体が異なる被写体である場合に、前記第２の主被写体が決定された画像を、前記負の報酬を与えるデータとして選別することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記選別手段は、前記ユーザの入力に基づいて指定された第１の主被写体と、前記決定手段を用いて決定された第２の主被写体が異なる被写体である場合に、前記第２の主被写体が決定された画像を、前記負の報酬を与えるデータとして選別し、前記第１の主被写体と前記第２の主被写体が同じ被写体である場合には、前記第２の主被写体が決定された画像を、前記正の報酬を与えるデータとして選別することを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記選別手段は、焦点調節の対象とする被写体を確定するためのユーザの入力のやり直しがあった場合には、やり直す前に前記決定手段を用いて主被写体が決定された画像を、前記負の報酬を与えるデータとして選別することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記選別手段は、撮影指示を示すユーザの入力があった際に前記決定手段を用いて決定されていた第１の主被写体と、前記撮影指示を示すユーザの入力の前に前記決定手段を用いて決定されていた第２の主被写体とが異なる被写体である場合に、前記第２の主被写体が決定された画像を、前記負の報酬を与えるデータとして選別することを特徴とする請求項１または２に記載の画像処理装置。
【請求項７】
前記選別手段は、撮影指示を示すユーザの入力があった際に前記決定手段を用いて決定されていた第１の主被写体と、前記撮影指示を示すユーザの入力の前に前記決定手段を用いて決定されていた第２の主被写体とが異なる被写体である場合に、前記第２の主被写体が決定された画像を、前記負の報酬を与えるデータとして選別し、前記第１の主被写体と、前記第２の主被写体とが同じ被写体である場合に、前記第２の主被写体が決定された画像を、前記正の報酬を与えるデータとして選別することを特徴とする請求項２に記載の画像処理装置。
【請求項８】
複数の画像の類似度を算出する算出手段をさらに備え、
前記選別手段は、前記算出手段により算出された類似度が所定値以上の複数の画像については、該複数の画像から選択された画像のみを、前記負の報酬を与えるデータとして選別することを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記決定手段を有することを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１０】
前記決定手段のための学習を行う学習手段を有し、
前記学習手段は、前記選別手段が選別した前記負の報酬を与えるデータを用いて学習を行うことを特徴とする請求項１乃至９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記決定手段は、前記決定手段のための学習を行う外部装置の学習手段から無線通信によって取得した学習の結果を用いるものであり、
前記学習手段は、前記選別手段が選別した前記負の報酬を与えるデータを用いて学習を行うことを特徴とする請求項９に記載の画像処理装置。
【請求項１２】
前記画像処理装置と無線通信が可能な外部装置が、前記決定手段と、前記決定手段のための学習を行う学習手段を有し、
前記学習手段は、前記選別手段が選別した前記負の報酬を与えるデータを用いて学習を行うことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１３】
前記主被写体が決定された画像を撮像するための撮像手段を有することを特徴とする請求項１乃至１２のいずれか１項に記載の画像処理装置。
【請求項１４】
取得した画像から主被写体を決定する決定手段を用いて主被写体が決定された画像の中から、前記決定手段のための学習において負の報酬を与えるデータとして用いる画像を、ユーザの入力に基づいて選別する選別工程を有することを特徴とする画像処理装置の制御方法。
【請求項１５】
請求項１４に記載の制御方法の工程をコンピュータに実行させるためのプログラム。
【請求項１６】
請求項１４に記載の制御方法の工程をコンピュータに実行させるためのプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置における主被写体領域を決定する技術に関するものである。
【背景技術】
【０００２】
従来より、撮像装置や画像処理装置において、ユーザが何らかの操作をすることなく、装置が画像を識別し、自動で主被写体を選定する機能が知られている。この機能では、開発者が予め想定する画像群を用意し、各々の画像において主被写体とすべき正解を設定しており、それらに基づいて決定器のパラメータが調整されている。例えば、特許文献１には、予め用意された学習データ群を用いてニューラルネットワークを用いた物体の決定を行う方法が開示されている。
【０００３】
また、予め学習した決定器に加え、決定時に決定領域から得られた情報を用いて、追加の学習を行う方法も提案されている。例えば、特許文献２には、予め学習した固定識別機と固定識別機の決定領域から得られた情報とを辞書データに追加した学習識別機を用いて物体を決定する方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−１５７２１９号公報
【特許文献２】特開２０１０−１７０２０１号公報
【非特許文献】
【０００５】
【非特許文献１】Ｓ．Ｈａｙｋｉｎ，“Ｎｅｕｒａｌ Ｎｅｔｗｏｒｋｓ Ａ Ｃｏｍｐｒｅｈｅｎｓｉｖｅ Ｆｏｕｎｄａｔｉｏｎ ２ｎｄ Ｅｄｉｔｉｏｎ”，Ｐｒｅｎｔｉｃｅ Ｈａｌｌ，ｐｐ．１５６−２５５，Ｊｕｌｙ １９９８
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、ユーザが頻繁に撮影する画像は、それぞれのユーザによって異なるのが一般的である。また同じ画像であっても主被写体とすべき正解はユーザによって異なる。従って、主被写体の自動選択を行う機能においても、各ユーザの好みに応じた調整がなされるべきである。
【０００７】
しかしながら、上述の特許文献１では予め用意された学習データ群から学習しているだけであり、上述の特許文献２では、固定識別機の決定領域から得られた情報を辞書データに追加しているだけである。そのため、いずれの技術においても、ユーザの好みに応じた調整がなされているとは言えない。
【０００８】
本発明は上述した課題に鑑みてなされたものであり、画像から主被写体を選択する場合に、ユーザの所望する被写体を適切に選択することができる画像処理装置を提供することである。
【課題を解決するための手段】
【０００９】
本発明に係わる画像処理装置は、取得した画像から主被写体を決定する決定手段を用いて主被写体が決定された画像の中から、前記決定手段のための学習において負の報酬を与えるデータとして用いる画像を、ユーザの入力に基づいて選別する選別手段を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、画像から主被写体を選択する場合に、ユーザの所望する被写体を適切に選択することができる画像処理装置を提供することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係わる撮像装置の構成を示すブロック図。
【図２】一実施形態の撮像装置の全体動作の流れを示すフローチャート。
【図３】主被写体決定結果の例を示す模式図。
【図４】ＣＮＮの全体構成の例を示す模式図。
【図５】ＣＮＮの部分構成の例を示す模式図。
【図６】一実施形態におけるデータセットの選別手順を示すフローチャート。
【図７】一実施形態における別のデータセットの選別手順を示すフローチャート。
【図８】スマートフォンとサーバからなるシステムを示す図。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【００１３】
（撮像装置の構成）
図１は、本発明の一実施形態に係わる画像処理装置としての撮像装置１００の構成を示すブロック図である。
【００１４】
図１において、撮像装置１００は、被写体を撮影して、動画や静止画のデータを、テープ、固体メモリ、光ディスク、磁気ディスクなどの各種メディアに記録可能なデジタルスチルカメラやビデオカメラなどである。しかし、本発明はこれらに限定されるものではなく、カメラ付き携帯電話やタブレット端末等の撮影機能を有する他の装置にも適用可能である。撮像装置１００内の各ユニットは、バス１６０を介して接続されている。また各ユニットは、ＣＰＵ１５１（中央演算処理装置）により制御される。
【００１５】
レンズユニット１０１は、固定１群レンズ１０２、ズームレンズ１１１、絞り１０３、固定３群レンズ１２１、および、フォーカスレンズ１３１を備えて構成される。絞り制御回路１０５は、ＣＰＵ１５１の指令に従い、絞りモータ１０４（ＡＭ）を介して絞り１０３を駆動することにより、絞り１０３の開口径を調整して撮影時の光量調節を行う。ズーム制御回路１１３は、ズームモータ１１２（ＺＭ）を介してズームレンズ１１１を駆動することにより、焦点距離を変更する。フォーカス制御回路１３３は、レンズユニット１０１のピントのずれ量に基づいてフォーカスモータ１３２（ＦＭ）を駆動する駆動量を決定する。加えてフォーカス制御回路１３３は、フォーカスモータ１３２（ＦＭ）を介してフォーカスレンズ１３１を駆動することにより、焦点調節状態を制御する。フォーカス制御回路１３３およびフォーカスモータ１３２によるフォーカスレンズ１３１の移動制御により、ＡＦ制御が実現される。フォーカスレンズ１３１は、焦点調節用レンズであり、図１には単レンズで簡略的に示されているが、通常複数枚のレンズで構成される。
【００１６】
レンズユニット１０１を介して撮像素子１４１上に結像された被写体像は、撮像素子１４１により電気信号に変換される。撮像素子１４１は、被写体像（光学像）を電気信号に変換する光電変換素子である。撮像素子１４１は、横方向にｍ画素、縦方向にｎ画素の受光素子が配置されている。撮像素子１４１上に結像されて光電変換された画像は、撮像信号処理回路１４２により画像信号（画像データ）として整えられる。
【００１７】
撮像信号処理回路１４２から出力される画像データは、撮像制御回路１４３に送られ、一時的にＲＡＭ（ランダム・アクセス・メモリ）１５４に蓄積される。ＲＡＭ１５４に蓄積された画像データは、画像圧縮解凍回路１５３において圧縮された後、画像記録媒体１５７に記録される。これと並行して、ＲＡＭ１５４に蓄積された画像データは、画像処理回路１５２に送られる。画像処理回路１５２は、画像信号を処理し、画像データに対して最適なサイズへの縮小・拡大処理や画像データ同士の類似度算出処理等を行う。最適なサイズに処理された画像データを、適宜モニタディスプレイ１５０に送って表示することによりプレビュー画像表示やスルー画像表示を行うことができる。また、主被写体決定回路１６２の主被写体決定結果を画像データに重畳表示することもできる。また、ＲＡＭ１５４をリングバッファとして用いることにより、所定期間内に撮像された複数の画像データと、画像データ毎に対応した主被写体決定回路１６２の決定結果をバッファリングすることができる。また同様に、主被写体決定回路１６２の学習に用いた画像データと、画像データに対応した主被写体決定結果とをバッファリングすることができる。
【００１８】
操作スイッチ１５６は、タッチパネルやボタンなどを含む入力インターフェイスであり、モニタディスプレイ１５０に表示される種々の機能アイコンを選択操作することなどにより、様々な操作を行うことができる。例えば、ユーザは、モニタディスプレイ１５０に表示されたスルー画像を見ながら、主被写体位置をマニュアル指定したり、既に指定されている主被写体をキャンセルしたりすることができる。
【００１９】
ＣＰＵ１５１は、操作スイッチ１５６から入力されたユーザからの指示、あるいは、一時的にＲＡＭ１５４に蓄積された画像データの画素信号の大きさに基づき、撮像素子１４１の蓄積時間、撮像素子１４１から撮像信号処理回路１４２へ信号を出力する際のゲインの設定値等を決定する。撮像制御回路１４３は、ＣＰＵ１５１から蓄積時間、ゲインの設定値の指示を受け取り、撮像素子１４１を制御する。
【００２０】
主被写体決定回路１６２は、画像信号を用いて主被写体が存在する領域を決定する。主被写体決定回路１６２における主被写体決定処理は、ＣＮＮ（Convolutinal Neural Networks）による特徴抽出処理により実現される。主被写体決定回路１６２は、ＧＰＵ（Ｇｒａｐｈｉｃ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）で構成される。ＧＰＵは、元々は画像処理用のプロセッサであるが、複数の積和演算器を有し、行列計算を得意としているため、学習用の処理を行うプロセッサとしても用いられることが多い。そして、深層学習を行う処理においても、ＧＰＵが用いられることが一般的であるが、ＦＰＧＡ（ｆｉｅｌｄ−ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）やＡＳＩＣ（ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）などを用いてもよい。
【００２１】
フォーカス制御回路１３３は、特定の被写体領域に対するＡＦ制御を行う。絞り制御回路１０５は、特定の被写体領域の輝度値を用いた露出制御を行う。画像処理回路１５２は、被写体領域に基づいたガンマ補正、ホワイトバランス処理などを行う。モニタディスプレイ１５０は、画像や主被写体決定結果を矩形などで表示する。バッテリ１５９は、電源管理回路１５８により適切に管理され、撮像装置１００の全体に安定した電源供給を行う。
【００２２】
フラッシュメモリ１５５には、撮像装置１００の動作に必要な制御プログラムや、各部の動作に用いるパラメータ等が記録されている。ユーザの操作により撮像装置１００が起動されると（電源ＯＦＦ状態から電源ＯＮ状態へ移行すると）、フラッシュメモリ１５５に格納された制御プログラム及びパラメータがＲＡＭ１５４の一部に読み込まれる。ＣＰＵ１５１は、ＲＡＭ１５４にロードされた制御プログラム及び定数に従って撮像装置１００の動作を制御する。
【００２３】
（全体処理フロー）
図２は、本実施形態の撮像装置１００における全体動作の流れを示すフローチャートである。図２に示すフローチャートは、撮像装置がライブビュー表示をしている状態で、例えば、ライブビューの１フレーム期間ごとに繰り返される。
【００２４】
撮像装置１００がライブビュー表示を開始すると、まず、Ｓ２０１において、撮像制御回路１４３は、レンズユニット１０１、撮像素子１４１を用いて取得された入力画像を撮像装置１００の各部へ供給する。
【００２５】
Ｓ２０２においては、主被写体決定回路１６２は、入力画像に対して主被写体決定を行う。主被写体決定処理の詳細は後述する。また主被写体決定回路１６２には予め必要な学習がなされているものとし、学習処理の詳細は後述する。
【００２６】
Ｓ２０３においては、ＣＰＵ１５１は、Ｓ２０２において主被写体決定回路１６２から主被写体決定結果が出力されたか否かを判定する。出力されていればＳ２０４へ進み、出力されていなければＳ２０５へ進む。
【００２７】
Ｓ２０４においては、モニタディスプレイ１５０は、入力画像を表示すると共に主被写体決定結果を重畳表示する。Ｓ２０５においては、モニタディスプレイ１５０は、入力画像のみを表示する。
【００２８】
Ｓ２０６においては、ＣＰＵ１５１は、Ｓ２０４でライブビュー表示した入力画像、主被写体決定結果および表示時刻を、１組のデータセットとしてＲＡＭ１５４にバッファリングする。Ｓ２０７においては、ＣＰＵ１５１は、ＲＡＭ１５４にバッファリングされたデータセットから、ポジティブ学習、あるいは、ネガティブ学習に用いるための入力画像を選択する。この処理については後述する。
【００２９】
Ｓ２０８においては、ＣＰＵ１５１は、ユーザから撮影指示があったか否かを判定し、撮影指示がある場合にはＳ２０９に進み、撮影指示がない場合にはＳ２１１に進む。なお、撮影指示とは、記録のための静止画の撮影を開始するための指示、あるいは、記録のための動画の撮影を開始するための指示である。ユーザがレリーズボタンを全押ししたり、タッチパネルを操作することによって、ユーザは撮影指示を与えることができる。
【００３０】
Ｓ２０９において、ＣＰＵ１５１は静止画あるいは動画の撮影処理を行い、撮影が終了するとＳ２１０に進む。
【００３１】
Ｓ２１０において、ＣＰＵ１５１は、ＲＡＭ１５４にバッファリングされたデータセットから、ポジティブ学習、あるいは、ネガティブ学習に用いるためのデータセットを選択する。この処理については後述する。
【００３２】
Ｓ２１１において、ＣＰＵ１５１は、Ｓ２０７およびＳ２１０にて選択された入力画像の数が閾値以上であるか否かを判定し、閾値以上であればＳ２１２に進み、閾値未満であればＳ２１３に進む。
【００３３】
Ｓ２１２において、主被写体決定回路１６２は、追加学習処理を行う。追加学習処理の詳細は後述する。
【００３４】
Ｓ２１３においては、ＣＰＵ１５１は、操作スイッチ１５６からの終了指示があるか否かを判定する。終了指示があれば処理を終了し、終了指示がなければＳ２０１に戻り、一連の処理を繰り返す。
【００３５】
（主被写体決定結果の例）
図３は、図２のＳ２０４において表示される主被写体決定結果の例を示す図である。図３（ａ）はＳ２０７における追加学習を行っていない場合の主被写体決定結果の例を示している。図３（ｂ）は、花を好み、頻繁に撮影するユーザの操作により、Ｓ２０７において追加学習を行った後の主被写体決定結果の例を示している。図３（ｃ）は、鳥を好み、頻繁に撮影するユーザの操作により、Ｓ２０７における追加学習を行った後の主被写体決定結果の例を示している。
【００３６】
（主被写体決定回路の説明）
本実施形態では、主被写体決定回路１６２をＣＮＮ（Convolutinal Neural Networks）で構成する。ＣＮＮの基本的な構成について、図４および図５を用いて説明する。
【００３７】
図４は、入力された２次元画像データおよび位置マップから主被写体を決定するＣＮＮの基本的な構成を示す図である。処理の流れは、左端を入力とし、右方向に処理が進んでいく。ＣＮＮは、特徴検出層（Ｓ層）と特徴統合層（Ｃ層）と呼ばれる２つの層をひとつのセットとし、それが階層的に構成されている。
【００３８】
ＣＮＮでは、まずＳ層において前段階層で検出された特徴に基づいて次の特徴を検出する。またＳ層において検出した特徴をＣ層で統合し、その階層における検出結果として次の階層に送るように構成されている。このＣＮＮに入力される情報としてはさまざまなものが考えられる。例えば、ＲＧＢ画像、あるいは現像処理前の画素単位の撮像画像信号（ＲＡＷ画像）や画像のデプス情報、物体検出器による物体検出スコアのマップ、画像の局所領域における分散値から得られるコントラストマップ、などが挙げられる。
【００３９】
Ｓ層は特徴検出細胞面からなり、特徴検出細胞面ごとに異なる特徴を検出する。また、Ｃ層は、特徴統合細胞面からなり、前段の特徴検出細胞面での検出結果をプーリングする。以下では、特に区別する必要がない場合、特徴検出細胞面および特徴統合細胞面を総称して特徴面と呼ぶ。本実施形態では、最終段階層である出力層は、Ｃ層は用いずＳ層のみで構成されている。
【００４０】
図５は、特徴検出細胞面での特徴検出処理、および特徴統合細胞面での特徴統合処理について説明する図である。
【００４１】
特徴検出細胞面は、複数の特徴検出ニューロンにより構成され、特徴検出ニューロンは前段階層のＣ層に所定の構造で結合されている。また特徴統合細胞面は、複数の特徴統合ニューロンにより構成され、特徴統合ニューロンは同階層のＳ層に所定の構造で結合されている。図５に示した、Ｌ階層目Ｓ層のＭ番目細胞面内において、位置（ξ，ζ）の特徴検出ニューロンの出力値をｙMLS(ξ,ζ)、Ｌ階層目Ｃ層のＭ番目細胞面内において、位置（ξ，ζ）の特徴統合ニューロンの出力値をｙMLC(ξ,ζ)と表記する。その場合、それぞれのニューロンの結合係数をｗMLS(n,u,v)、ｗMLC(u,v)とすると、各出力値は以下のように表すことができる。
【００４２】
【数１】
2020126434.tif 000003
…（１）
【数２】
2020126434.tif 000004
…（２）
式（１）のｆは活性化関数であり、ロジスティック関数や双曲正接関数などのシグモイド関数であれば何でもよく、例えばtanh関数で実現してよい。ｕMLS(ξ,ζ)は、Ｌ階層目Ｓ層のＭ番目細胞面における、位置(ξ,ζ)の特徴検出ニューロンの内部状態である。式（２）は活性化関数を用いず単純な線形和をとっている。式（２）のように活性化関数を用いない場合は、ニューロンの内部状態ｕMLC(ξ,ζ)と出力値ｙMLC(ξ,ζ)は等しい。また、式（１）のｙn(L-1C)(ξ+u,ζ+v)、式（３）のｙMLS(ξ+u,ζ+v)をそれぞれ特徴検出ニューロン、特徴統合ニューロンの結合先出力値と呼ぶ。
【００４３】
ここで、式（１）及び式（２）中のξ，ζ，ｕ，ｖ，ｎについて説明する。位置（ξ，ζ）は、入力画像における位置座標に対応しており、例えばｙMLS(ξ,ζ)が高い出力値である場合は、入力画像の画素位置（ξ，ζ）に、Ｌ階層目Ｓ層Ｍ番目細胞面において検出する特徴が存在する可能性が高いことを意味する。またｎは式（２）において、Ｌ−１階層目Ｃ層ｎ番目細胞面を意味しており、統合先特徴番号と呼ぶ。基本的にＬ−１階層目Ｃ層に存在する全ての細胞面についての積和演算を行う。（ｕ，ｖ）は、結合係数の相対位置座標であり、検出する特徴のサイズに応じて有限の範囲（ｕ，ｖ）において積和演算を行う。このような有限な（ｕ，ｖ）の範囲を受容野と呼ぶ。また受容野の大きさを、以下では受容野サイズと呼び、結合している範囲の横画素数×縦画素数で表す。
【００４４】
また式（１）において、Ｌ＝１つまり一番初めのＳ層では、ｙn(L-1C)(ξ+u,ζ+v)は、入力画像ｙin_image (ξ+u,ζ+v)または、入力位置マップｙin_posi_map (ξ+u,ζ+v)となる。ちなみに、ニューロンや画素の分布は離散的であり、結合先特徴番号も離散的なので、ξ，ζ，ｕ，ｖ，ｎは連続な変数ではなく、離散的な値をとる。ここでは、ξ，ζは非負整数、ｎは自然数、ｕ，ｖは整数とし、何れも有限な範囲となる。
【００４５】
式（１）中のｗMLS(n,u,v)は、所定の特徴を検出するための結合係数分布であり、これを適切な値に調整することによって、所定の特徴を検出することが可能になる。この結合係数分布の調整が学習であり、ＣＮＮの構築においては、さまざまなテストパターンを提示して、ｙMLS(ξ,ζ)が適切な出力値になるように、結合係数を繰り返し徐々に修正していくことにより結合係数の調整を行う。
【００４６】
次に、式（２）中のｗMLC(u,v)は、２次元のガウシアン関数を用いており、以下の式（３）のように表すことができる。
【００４７】
【数３】
2020126434.tif 000005
…（３）
ここでも、（ｕ，ｖ）は有限の範囲としているので、特徴検出ニューロンの説明と同様に、有限の範囲を受容野といい、範囲の大きさを受容野サイズと呼ぶ。この受容野サイズは、ここではＬ階層目Ｓ層のＭ番目特徴のサイズに応じて適当な値に設定すればよい。式（３）中の、σは特徴サイズ因子であり、受容野サイズに応じて適当な定数に設定しておけばよい。具体的には、受容野の一番外側の値がほぼ０とみなせるような値になるように設定するのがよい。
【００４８】
上述のような演算を各階層で行うことにより、最終階層のＳ層において、主被写体決定を行うのが、本実施形態におけるＣＮＮの構成である。
【００４９】
（追加学習処理の流れ）
図６は、図２のＳ２０７における画像の選択処理の流れを示すフローチャートである。なお、以下では、入力画像の所定の領域を主被写体を決定すべきテストパターンとして学習することをポジティブ（肯定的）学習と記載する。また所定の領域を主被写体を決定すべきではないテストパターンとして学習することをネガティブ（否定的）学習と記載する。また各学習における詳細は後述する。
【００５０】
まず、Ｓ６０１において、ＣＰＵ１５１は、操作スイッチ１５６からマニュアル指示があったか否かを判定する。マニュアル指示があった場合にはＳ６０２に進み、マニュアル指示がない場合はＳ６０５に進む。ここでマニュアル指示とは、ユーザが操作スイッチ１５６をマニュアル操作し、画像に対する主被写体領域を指定する操作（選択指示）を指す。Ｓ６０１でマニュアル指示があったということは、図２のＳ２０２において決定された主被写体がユーザが所望する主被写体と異なることを意味するため、Ｓ６０２以降の処理に進む。
【００５１】
Ｓ６０２においては、Ｓ６０１でユーザがマニュアルで指示した被写体が正しい主被写体と考えられる。そのため、ＣＰＵ１５１は、図２のＳ２０１で取得した入力画像と、Ｓ６０１でマニュアル指示された主被写体領域をポジティブ学習のためのデータセットとして選別する。
【００５２】
Ｓ６０３においては、ＣＰＵ１５１は、図２のＳ２０２で決定した主被写体領域と、Ｓ６０１でマニュアル指定された主被写体領域が異なる被写体であるか否かを判定する。例えば、図２のＳ２０２で決定した主被写体領域と、Ｓ６０１でマニュアル指定された主被写体領域が所定間隔以上離れている場合、２つの領域が異なる被写体であると判定する。所定間隔以上離れていればＳ６０４に進み、離れていなければこのフローチャートを終了する。なおここでの所定間隔は十分大きければ何でもよいが、例えば入力画像の画角に対する割合で決定してもよい。より具体的には、入力画像が６４０×４８０画素の画像である場合、例えば、水平サイズの６４０に対する１０％である６４画素を所定間隔としてもよい。なお、顔検出、人体検出、あるいは、物体検出などの結果により、Ｓ２０２で決定した主被写体領域とＳ６０１でマニュアル指定された主被写体領域が異なる被写体であることが明らかであれば、２つの領域の間の距離を判定する必要はない。
【００５３】
Ｓ６０４においては、ＣＰＵ１５１は、図２のＳ２０１で取得した入力画像と、Ｓ２０２で決定した主被写体領域をネガティブ学習のためのデータセットとして選別する。そして、このフローチャートを終了する。
【００５４】
Ｓ６０５においては、ＣＰＵ１５１は、操作スイッチ１５６からキャンセル指示があったか否かを判定する。キャンセル指示があった場合にはＳ６０６に進み、キャンセル指示がない場合にはこのフローチャートを終了する。ここでキャンセル指示とは、図２のＳ２０４で出力した主被写体決定結果を削除し、撮像装置１００を主被写体の決定がされていない状態にする操作を指す。例えば、主被写体領域の決定をやり直すことをユーザが指示できる機能が搭載されている場合には、その指示が、キャンセル指示に相当する。あるいは、焦点調節の対象とする被写体を確定するための操作である、レリーズボタンの半押しがユーザによってやり直された場合には、この半押しのやり直しが、キャンセル指示に相当する。Ｓ６０５でキャンセル指示があったということは、図２のＳ２０２において決定された主被写体がユーザが所望する主被写体と異なることを意味するため、Ｓ６０６の処理に進む。
【００５５】
Ｓ６０６においては、ＣＰＵ１５１は、図２のＳ２０１で取得した入力画像と、Ｓ２０２で決定した主被写体領域をネガティブ学習のためのデータセットとして選別する。そして、このフローチャートを終了する。
【００５６】
図７は、図２のＳ２１０における画像の選択処理の流れを示すフローチャートである。
【００５７】
Ｓ７０１においては、ＣＰＵ１５１は、ＲＡＭ１５４にバッファリングされたデータセット群のそれぞれについて、撮影指示があったときと同じ被写体が、主被写体として決定されたデータセットであるか否かを判定する。撮影指示があったときと同じ被写体が主被写体として決定されているデータセットであればＳ７０２に進み、そうでなければＳ７０３に進む。撮影指示よりも前に、撮影指示があったときに主被写体として決定されていた被写体とは別の被写体が、主被写体として決定されていたのであれば、先の主被写体の決定は誤りである可能性が高い。そのため、別の被写体が主被写体として決定されていたときのデータセットは、ネガティブ学習のためのデータセットとして有効である。
【００５８】
Ｓ７０２においては、ＣＰＵ１５１は、撮影指示があったときと同じ被写体が主被写体として決定されているデータセット群から、ポジティブ学習条件を満たすデータセットを選別する。ここでのポジティブ学習条件とは、データセットのうち表示時刻と本ステップの実行時刻の差が所定時間未満であることである。なお、ここでの所定時間は、ユーザが図２のＳ２０４でモニタディスプレイ１５０に出力された主被写体決定結果を確認してから、Ｓ６０７で操作スイッチ１５６を用いて撮影指示を行うまでのタイムラグに基づいて決定してもよい。より具体的には、例えば所定時間を２秒とする。また１度に複数のデータセットが条件を満たす場合には、各々のデータセットに含まれる入力画像同士の類似度を算出し、類似度が所定値以上の場合には、類似する何れかのデータセットを選別対象から除外する。除外処理においては、データセットに含まれる表示時刻と本ステップの実行時刻の差が大きいデータを優先的に除外してもよい。ここでの類似度には、ＳＡＤ値やヒストグラム差分等を用いることができる。
【００５９】
Ｓ７０３においては、ＣＰＵ１５１は、撮影指示があったときと別の被写体が主被写体として決定されているデータセット群から、ネガティブ学習条件を満たすデータセットを選別する。また１度に複数のデータセットが条件を満たす場合には、Ｓ６０８と同様に除外処理を行う。ＣＰＵ１５１は、Ｓ７０２およびＳ７０３の少なくともいずれかの処理が行われると、このフローチャートを終了する。
【００６０】
そして、図２のＳ２１２において、主被写体決定回路１６２は、Ｓ２１０およびＳ２１２で選別したデータセットを用いて、強化学習を行う。
【００６１】
なお、Ｓ２１２においては、ＣＰＵ１５１は、図２のＳ２０６でＲＡＭ１５４にバッファリングしたデータセットの全削除を行う。
【００６２】
以上説明したように、ユーザ操作に基づいて追加学習を行うことにより、ユーザの嗜好に応じて主被写体決定回路１６２のパラメータを調整することができる。またデータセット選別時に類似度の高いデータセットを除外しているため、特定のシーンに対する過学習を抑制できる。
【００６３】
（学習方法）
次に、具体的な学習方法について説明する。本実施形態では教師ありの学習により、結合係数の調整を行う。教師ありの学習では、テストパターンを与えて実際にニューロンの出力値を求め、その出力値と教師信号（そのニューロンが出力すべき望ましい出力値）の関係から結合係数ｗMLS(n,u,v)の修正を行えばよい。本実施形態の学習においては、最終層の特徴検出層は最小二乗法を用い、中間層の特徴検出層は誤差逆伝搬法を用いて結合係数の修正を行う（最小二乗法や、誤差逆伝搬法等の、結合係数の修正手法の詳細は、非特許文献１を参照）。
【００６４】
本実施形態では、予め学習する場合には、学習用のテストパターンとして、検出すべき特定パターンと、検出すべきでないパターンを多数用意し、追加学習する場合には、前述の方法で学習すべきテストパターンをバッファから選定する。各テストパターンは、画像および教師信号を１セットとする。ポジティブ学習のために選別されたデータセットが、検出すべき特定パターンとして用いられ、ネガティブ学習のための選別されたデータセットが、検出すべきでないパターンとして用いられる。
【００６５】
活性化関数にtanh関数を用いる場合は、検出すべき特定パターンを提示した場合は、最終層の特徴検出細胞面の、特定パターンが存在する領域のニューロンに対し、出力が１となるように教師信号を与える。すなわち、正の報酬を与える。逆に、検出すべきでないパターンを提示した場合は、そのパターンの領域のニューロンに対し、出力が−１となるように教師信号を与えることになる。すなわち、負の報酬を与える。
【００６６】
以上の方法により、２次元画像から主被写体を決定するためのＣＮＮが構築される。実際の決定においては、学習により構築した結合係数ｗMLS(n,u,v)を用いて演算を行い、最終層の特徴検出細胞面上のニューロン出力が、所定値以上であれば、そこに主被写体が存在すると判定する。
【００６７】
なお、本実施形態では、撮像装置１００が主被写体決定回路１６２を有し、学習のためのデータセットの選別および強化学習も行う構成を例に挙げて説明を行ったが、これに限られるものではない。
【００６８】
例えば、カメラ機能を有するスマートフォンやタブレット端末を、サーバあるいはエッジコンピュータなどの外部装置と無線通信により接続するシステムにおいても、本発明を適用することが可能である。
【００６９】
図８は、スマートフォンとサーバからなるシステムを示す。スマートフォン８０１が内部のＲＡＭにバッファリングされたデータセットをサーバ８０２に送信し、サーバ８０２が強化学習を行って、スマートフォン８０１の内部の主被写体決定回路の結合係数を求める。そして、サーバ８０２が求めた結合係数をスマートフォン８０１に送信し、スマートフォン８０１は受信した結合係数を主被写体決定回路に設定する。このとき、スマートフォン８０１のＲＡＭにバッファリングされたデータセットからポジティブ学習、および、ネガティブ学習のためのデータセットを選別する処理は、スマートフォン８０１とサーバ８０２のいずれが行っても構わない。スマートフォン８０１がデータセットの選別を行うのであれば、選別後のデータセットを、スマートフォン８０１からサーバ８０２に送信すればよい。サーバ８０２がデータセットの選別を行うのであれば、スマートフォン８０１はＲＡＭにバッファリングされた全てのデータセットと、そのデータセットに対して関連付けて記憶されたユーザ操作の情報を、サーバ８０２に送信する。データセットに含まれる画像と、ユーザ操作の情報は時間軸上の対応付けがされているものとする。このような構成であれば、スマートフォン８０１は、データセットとユーザ操作情報をサーバ８０２に送信することで、サーバ８０２がデータセットの選別を行うことができる。
【００７０】
また、スマートフォン８０１が主被写体決定回路を備えておらず、サーバ８０２が主被写体決定回路を備えるように構成してもよい。スマートフォン８０１はリアルタイムで入力画像をサーバに送信し、サーバ８０２が主被写体の決定を行い、その結果をスマートフォン８０１に送信する。この場合、サーバ８０２が強化学習を行い、サーバの主被写体決定回路の結合係数を更新することになる。この場合も、スマートフォン８０１のＲＡＭにバッファリングされたデータセットからポジティブ学習、および、ネガティブ学習のためのデータセットを選別する処理は、スマートフォン８０１とサーバ８０２のいずれで行っても構わない。
【００７１】
さらに、ポジティブ学習のためのデータセットについては、撮影指示の前にＲＡＭ１５４にバッファリングされたデータセットに代えて、撮影によって得られた入力画像を用いても構わない。これは、撮影時には主被写体が正しく選定されている可能性が高いためである。この場合、ポジティブ学習のためのデータセットは、撮影によって記録された画像を含むデータセットであるのに対して、ネガティブ学習のためのデータセットは、撮影指示の前にバッファリングされたデータセットとなる。
【００７２】
以上説明したように、本実施形態によれば、通常のカメラ操作を繰り返すことにより、ユーザの嗜好に応じた主被写体決定を行うことが可能となる。さらに、撮影指示を行う前の主被写体決定の結果と、そのときのユーザの操作の関係を判定することで、ユーザが意図しない主被写体決定の結果であることが識別できるようになり、効率的にネガティブ学習のためのデータを選別することが可能となる。
【００７３】
（他の実施形態）
また本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現できる。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現できる。
【００７４】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【００７５】
１００：撮像装置、１０１：レンズユニット、１４１：撮像素子、１４２：撮像信号処理回路、１４３：撮像制御回路、１５１：ＣＰＵ、１５２：画像処理回路、１６２：主被写体決定回路
【図１】
2020126434.tif 000006
【図２】
2020126434.tif 000007
【図３】
2020126434.tif 000008
【図４】
2020126434.tif 000009
【図５】
2020126434.tif 000010
【図６】
2020126434.tif 000011
【図７】
2020126434.tif 000012
【図８】
2020126434.tif 000013