(57)【要約】【課題】画像信号に対する被写体検出精度を向上させることが可能な画像処理装置を提供すること。【解決手段】画像処理装置は、機械学習に基づいて生成された学習モデルを用いて、画像に対して被写体検出処理を適用する。予め複数記憶された学習モデルから、被写体検出処理を適用する画像の特性に応じて選択した学習モデルを用いて、被写体検出処理を適用する。【選択図】図２
2019186918.tif 000002
【特許請求の範囲】
【請求項１】
機械学習に基づいて生成されたパラメータを用いて、画像に対して被写体検出処理を適用する被写体検出手段と、
前記被写体検出処理に用いるパラメータを複数記憶する記憶手段と、
前記記憶手段が記憶するパラメータから、被写体検出処理を適用する画像の特性に応じて、前記被写体検出手段で用いるパラメータを選択する選択手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記選択手段は、前記画像を生成した撮像素子に応じて前記被写体検出手段で用いる学習モデルを選択することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
第１の撮像素子で生成された画像に対して前記被写体検出処理を適用するときに用いられる第１の学習モデルは、前記第１の撮像素子に対応する画像を用いて機械学習が行われた学習モデルであり、
第２の撮像素子で生成された画像に対して前記被写体検出処理を適用するときに用いられる第２の学習モデルは、前記第２の撮像素子に対応する画像を用いた機械学習が行われた学習モデルであることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記第１の学習モデルは、前記第１の撮像素子で生成された画像を用いて機械学習が行われた学習モデルであり、
前記第２の学習モデルは、前記第２の撮像素子で生成された画像を用いて機械学習が行われた学習モデルであることを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記第１の学習モデルは、前記第１の撮像素子で生成された画像を用いて機械学習が行われた学習モデルであり、
前記第２の学習モデルは、前記第１の撮像素子で生成された画像を補正した画像を用いて機械学習が行われた学習モデルであることを特徴とする請求項３に記載の画像処理装置。
【請求項６】
前記選択手段は、前記画像の撮影に用いられた光学系に応じて前記被写体検出手段で用いるパラメータを選択することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
第１の光学系を用いて撮影された画像に対して前記被写体検出処理を適用するときに用いられる第１の学習モデルは、前記第１の光学系に対応する画像を用いて機械学習が行われた学習モデルであり、
第２の光学系を用いて撮影された画像に対して前記被写体検出処理を適用するときに用いられる第２の学習モデルは、前記第２の光学系に対応する画像を用いた機械学習が行われた学習モデルであることを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記第１の学習モデルは、前記第１の光学系を用いて撮影された画像を用いて機械学習が行われた学習モデルであり、
前記第２の学習モデルは、前記第２の光学系を用いて撮影された画像を用いて機械学習が行われた学習モデルであることを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記第１の学習モデルは、前記第１の光学系を用いて撮影された画像を用いて機械学習が行われた学習モデルであり、
前記第２の学習モデルは、前記第１の光学系を用いて撮影された画像を補正した画像を用いて機械学習が行われた学習モデルであることを特徴とする請求項７に記載の画像処理装置。
【請求項１０】
前記記憶手段から、ネットワークを介して、前記被写体検出手段で用いる学習モデルを取得する通信手段をさらに有することを特徴とする請求項１から９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記機械学習が、コンボリューショナル・ニューラル・ネットワーク（ＣＮＮ）を用いることを特徴とする請求項１から１０のいずれか１項に記載の画像処理装置。
【請求項１２】
第１の撮像素子と、
第２の撮像素子と、
請求項１から１１のいずれか１項に記載の画像処理装置と、を有する撮像装置であって、
前記選択手段は、撮影モードに応じて前記被写体検出手段で用いる学習モデルを選択することを特徴とする撮像装置。
【請求項１３】
前記撮影モードが動画撮影モードまたは静止画撮影モードのいずれかであることを特徴とする請求項１２に記載の撮像装置。
【請求項１４】
前記撮影モードが、前記第１の撮像素子を用い、前記第２の撮像素子を用いない撮影モードと、前記第２の撮像素子を用い、前記第１の撮像素子を用いない撮影モードとのいずれかであることを特徴とする請求項１２または１３に記載の撮像装置。
【請求項１５】
前記第１の撮像素子を用い、前記第２の撮像素子を用いない撮影モードが、光学ファインダーを使用中の撮影モードであり、
前記第２の撮像素子を用い、前記第１の撮像素子を用いない撮影モードが、光学ファインダーを使用しない撮影モードである、
ことを特徴とする請求項１４に記載の撮像装置。
【請求項１６】
前記第１の撮像素子が、露出制御用の画像を取得するための撮像素子であることを特徴とする請求項１２から１５のいずれか１項に記載の撮像装置。
【請求項１７】
画像処理装置が実行する画像処理方法であって、
機械学習に基づいて生成された学習モデルを用いて、画像に対して被写体検出処理を適用する被写体検出工程と、
前記被写体検出処理に用いる学習モデルを複数記憶する記憶手段から、被写体検出処理を適用する画像の特性に応じて、前記被写体検出工程で用いる学習モデルを選択する選択工程と、
を有することを特徴とする画像処理方法。
【請求項１８】
コンピュータを、請求項１から１１のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項１９】
撮像装置が有するコンピュータを、請求項１２から１６のいずれか１項に記載の撮像装置が有する画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法、ならびに撮像装置に関し、特に被写体検出技術に関する。
【背景技術】
【０００２】
画像から特定の被写体パターンを自動的に検出する被写体検出技術は非常に有用である。特許文献１には、撮影した画像から人物の顔のような特定の被写体パターンに該当する領域を検出し、検出した領域に焦点や露出を最適化させる撮像装置が開示されている。
【０００３】
また、深層学習と呼ばれる手法を用いて、画像中の被写体を学習、認識することが知られている（非特許文献１）。コンボリューショナル・ニューラル・ネットワーク（ＣＮＮ）は、深層学習の代表的な手法である。一般的にＣＮＮは、画像の局所の特徴を空間的に統合する畳み込み層、特徴量を空間方向へ圧縮するプーリング層またはサブサンプリング層、さらに、全結合層、出力層などが組み合わされた多層構造を有する。ＣＮＮは多層構造による段階的な特徴変換を通じて、複雑な特徴表現を獲得することができるため、特徴表現に基づいて画像中の被写体のカテゴリ認識や被写体検出を高精度に行うことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３１８５５４号公報
【非特許文献】
【０００５】
【非特許文献１】Alex Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton, ”ImageNet classification with deep convolutional neural networks”, NIPS'12 Proceedings of the 25th International Conference on Neural Information Processing Systems - Volume 1, PP.1097-1105
【発明の概要】
【発明が解決しようとする課題】
【０００６】
教師あり学習によって画像から被写体を検出するための特徴を機械学習させる場合、装置に、学習用の画像信号と、対になる教師信号とを与える。そして、学習の結果、被写体検出に用いる学習モデルが生成される。撮影によって得られた画像信号は、解像感、色調、ボケ度合など、撮像装置の光学系の特性の影響を受ける。そのため、学習時と、学習結果（学習モデル）を利用した被写体検出時とで光学系の特性が異なると、検出に失敗する場合がある。
【０００７】
本発明はこのような従来技術の課題に鑑みてなされたものであり、画像信号に対する被写体検出精度を向上させることが可能な画像処理装置および画像処理方法、ならびに撮像装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述の目的は、機械学習に基づいて生成されたパラメータを用いて、画像に対して被写体検出処理を適用する被写体検出手段と、被写体検出処理に用いるパラメータを複数記憶する記憶手段と、記憶手段が記憶するパラメータから、被写体検出処理を適用する画像の特性に応じて、被写体検出手段で用いるパラメータを選択する選択手段と、を有することを特徴とする画像処理装置によって達成される。
【発明の効果】
【０００９】
本発明によれば、画像信号に対する被写体検出精度を向上させることが可能な画像処理装置および画像処理方法、ならびに撮像装置を提供することができる。 
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係る画像処理装置の一例としてのデジタル一眼レフカメラの模式的な垂直断面図。
【図２】実施形態に係るデジタル一眼レフカメラの機能構成例を示すブロック図。
【図３】実施形態に係る撮影動作の概要に関するフローチャート。
【図４】実施形態に係る静止画撮影動作に関するフローチャート。
【図５】実施形態に係る動画撮影動作に関するフローチャート。
【図６】実施形態に係る被写体検出回路が用いるＣＮＮの構成例を示す模式図。
【図７】図６のＣＮＮの一部の構成の示す模式図。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、本発明の例示的な実施形態について詳細に説明する。なお、以下の実施形態では、本発明をデジタル一眼レフカメラ（ＤＳＬＲ）で実施する場合に関して説明する。しかし、本発明は画像データを取り扱うことの可能な任意の電子機器で実施可能であり、デジタル一眼レフカメラは本発明に係る画像処理装置の一例に過ぎない。本発明を実施可能な電子機器には例えばパーソナルコンピュータ、スマートフォン、タブレット端末、ゲーム機、ロボットなどが含まれるが、これらに限定されない。
【００１２】
●（撮像装置の構成）
図１は本実施形態に係るデジタル一眼レフカメラ（ＤＳＬＲ）１００の垂直断面図である。また、図２はＤＳＬＲ１００の機能構成例を示すブロック図である。全図を通じて同じ参照番号は同じ構成要素を指す。
【００１３】
ＤＳＬＲ１００は、本体１０１と、本体１０１に着脱可能な撮影レンズ１０２（交換レンズ）とを有する。本体１０１と撮影レンズ１０２の着脱部（マウント）にはそれぞれマウント接点群１１５が設けられている。撮影レンズ１０２を本体１０１に装着すると、マウント接点群１１５が接触し、撮影レンズ１０２と本体１０１との電気的な接続が確立する。
【００１４】
システム制御回路２０１は、１つ以上のプログラマブルプロセッサと、ＲＯＭ２０１１、ＲＡＭ２０１２を有し、ＲＯＭ２０１１に記憶されているプログラムをＲＡＭ２０１２に読み込んで実行することにより、本体１０１および撮影レンズ１０２の動作を制御する。ＲＯＭ２０１１には、システム制御回路２０１が実行するプログラムのほか、各種の設定値、ＧＵＩデータなどが記憶されている。
【００１５】
撮影レンズ１０２には合焦距離を調節するフォーカスレンズ１１３と、本体１０１に入射する光量を調整する絞り１１４（およびこれらを駆動するモータやアクチュエータなど）が設けられる。フォーカスレンズ１１３や絞り１１４の駆動は、マウント接点群１１５を通じてカメラ本体１０１が制御する。
【００１６】
メインミラー１０３およびサブミラー１０４は、クイックリターンミラーを構成する。メインミラー１０３の一部は、撮影レンズ１０２から入射する光束をファインダー光学系（図の上方）に向かう光束と、サブミラー１０４に向かう光束に分離するために反射率（透過率）が制御されている。
【００１７】
図１は光学ファインダー使用時（非撮影時）の状態を示しており、メインミラー１０３が撮影レンズ１０２から入射する光束の光路中に位置している。この状態では、メインミラー１０３の反射光がファインダー光学系に入射し、ペンタプリズム１０７によって屈曲された光束はアイピース１０９から出射する。したがって、ユーザはアイピース１０９を覗くことにより、光学被写体像を見ることができる。
【００１８】
また、メインミラー１０３の透過光はサブミラー１０４で反射されてＡＦセンサ１０５（第１の撮像素子）に入射する。ＡＦセンサ１０５は、撮影レンズ１０２の二次結像面をラインセンサー上に形成し、位相差検出方式による焦点検出に利用可能な１対の像信号（焦点検出用信号）を生成する。生成された焦点検出用信号はシステム制御回路２０１へ送信される。システム制御回路２０１は、焦点検出用信号を用いてフォーカスレンズ１１３のデフォーカス量を求め、デフォーカス量に基づいてフォーカスレンズ１１３の駆動方向および駆動量を制御する。
【００１９】
ピント板１０６は、ファインダー光学系内の撮影レンズ１０２の予定結像面に配置される。アイピース１０９を覗いたユーザは、ピント板１０６に形成された光学像を観察する。なお、光学像のほか、シャッタースピード、絞り値などの撮影情報も併せて提供することができる。
【００２０】
測光センサー１０８は、入射する光束から像信号（露出制御用信号）を生成し、システム制御回路２０１へ送信する。システム制御回路２０１は、受信した露出制御用信号を用いて自動露出制御を行ったり、後述する被写体検出回路２０４による被写体検出を制御したりする。測光センサー１０８は、光電変換部を備える画素が２次元状に配置された撮像素子である。
【００２１】
撮像素子１１１の露光時、メインミラー１０３およびサブミラー１０４は、撮影レンズ１０２から入射する光束の光路の外に移動する。また、フォーカルプレーンシャッター１１０（以下、単にシャッターという）が開く。
【００２２】
撮像素子１１１（第２の撮像素子）には、光電変換部を備える画素が２次元状に配置されており、撮影レンズ１０２が形成する被写体光学像を各画素で光電変換し、画像信号をシステム制御回路２０１に送信する。システム制御回路２０１は、受信した画像信号から画像データを生成して画像記憶用メモリ２０２へ保存するとともに、ＬＣＤ等のモニター１１２に表示する。また、撮像素子１１１で生成された画像データは、被写体検出のために被写体検出回路２０４にも供給される。なお、システム制御回路２０１は、画像データを用い、コントラスト方式による焦点検出を行ってもよい。
【００２３】
また、本実施形態では、撮像素子１１１の各画素が２つの光電変換部（光電変換部Ａと光電変換部Ｂとする）を備え、個々の光電変換部から独立して画像信号を読み出し可能な構成を有するものとする。つまり、撮像素子１１１は、１回の露光により、
・光電変換部Ａ群から得られる画像信号（Ａ像とする）と、
・光電変換部Ｂ群から得られる画像信号（Ｂ像とする）と、
・画素ごとに光電変換部Ａから得られる画像信号と光電変換部Ｂから得られる画像信号とを加算した画像信号（Ａ＋Ｂ像とする）と、
を生成することができる。
【００２４】
Ａ像とＢ像とは１対の視差画像であるため、Ａ像とＢ像に基づいて位相差検出方式の焦点検出を行うことができる。本実施形態では、静止画撮影時にはＡ＋Ｂ像を取得し、ＡＦセンサ１０５を用いて焦点検出を行うものとする。一方、動画撮影時には、ＡＦセンサ１０５から像信号を得ることができないため、Ａ＋Ｂ像と、Ａ像とを取得するものとする。Ｂ像は、Ａ＋Ｂ像からＡ像を減じることによって生成する。なお、Ａ像の代わりにＢ像を取得するようにしてもよい。
【００２５】
操作部材２０３は、本体１０１および撮影レンズ１０２が備え、ユーザが操作可能な入力デバイス群である。レリーズボタン、電源スイッチ、方向キー、決定ボタン、メニューボタン、動作モードの選択ダイヤルなどが操作部材２０３に含まれる入力デバイスの具体例であるが、これらに限定されない。操作部材２０３の操作は、システム制御回路２０１が検知する。
【００２６】
例えば、レリーズボタンの半押し操作が検出されると、システム制御回路２０１は、静止画撮影準備動作を開始する。撮影準備動作は例えば自動焦点検出（ＡＦ）や自動露出制御（ＡＥ）に関する動作である。また、レリーズボタンの全押し操作を検出すると、システム制御回路２０１は、静止画の撮影および記録動作を実行する。システム制御回路２０１は、撮影によって得られた画像を、モニター１１２に一定時間表示する。
【００２７】
また、動画撮影時（撮影スタンバイ状態や動画記録中）、システム制御回路２０１は、撮影によって得られた動画を、モニター１１２にリアルタイムに表示することにより、モニター１１２を電子ビューファインダー（ＥＶＦ）として機能させる。モニター１１２をＥＶＦとして機能させる際に表示する動画像およびそのフレーム画像を、ライブビュー画像もしくはスルー画像と呼ぶ。静止画と動画の何れを撮影するかは操作部材２０３を通じて選択可能であり、システム制御回路２０１は、静止画撮影時と動画撮影時とで、カメラ本体１０１および撮影レンズ１０２の制御方法を切り替える。
【００２８】
被写体検出回路２０４は、ＧＰＵ（Ｇｒａｐｈｉｃ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）で構成される。ＧＰＵは、元々は画像処理用のプロセッサであるが、複数の積和演算器を有し、行列計算を得意としているため、学習用の処理を行うプロセッサとしても用いられることが多い。そして、深層学習を行う処理においても、ＧＰＵが用いられることが一般的である。例えば、被写体検出回路２０４として、ＮＶＩＤＩＡ社のＪｅｔｓｏｎ  ＴＸ２  ｍｏｄｕｌｅを用いることができる。なお、被写体検出回路２０４として、ＦＰＧＡ（ｆｉｅｌｄ−ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）やＡＳＩＣ（ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）などを用いてもよい。
【００２９】
被写体検出回路２０４は、学習モデル用メモリ２０５が複数記憶する学習モデルのうち、システム制御回路２０１が選択した１つの学習モデルを用いて、供給される画像データに対して被写体検出処理を適用する。被写体検出処理の詳細については後述する。学習モデル用メモリ２０５は例えば書き換え可能な不揮発性メモリであってよく、ＲＯＭ２０１１の一部であってもよい。本実施形態において学習モデル用メモリ２０５は、被写体検出処理の対象となる画像データの元になる画像信号を生成する撮像素子（イメージセンサ）ごとに用意された学習モデル２０６，２０７を記憶する。
【００３０】
（被写体検出における学習モデル切り替え）
本実施形態のＤＳＬＲ１００は、異なる経路で光が入射する測光センサー１０８と撮像素子１１１のそれぞれで生成される画像信号に基づく画像データについて被写体検出を適用する。被写体検出の詳細は後述するが、予め機械学習を通じて生成された学習モデルが用いられる。
【００３１】
測光センサー１０８と撮像素子１１１はいずれも２次元配列された複数の画素によって光学像を光電変換して画像信号を生成する点において共通するが、生成される画像信号の特性（画質）は異なる。画質に差異が発生するのは、光路、センサーの構造、信号処理などが、測光センサー１０８と撮像素子１１１とで異なるからである。また、システム制御回路２０１によって画像データを生成する際の処理も異なる場合がある。一般的には、撮像素子１１１で生成される画像信号よりも、測光センサー１０８で生成される画像信号の方が、解像感や色再現性が低い。これは、撮像素子１１１は鑑賞を目的とした画像信号の生成を目的としているのに対し、測光センサ１０８は露出制御用の画像信号の生成を目的としていることに起因するものが大きい。ただし、仮に測光センサー１０８と撮像素子１１１とが全く同じデバイスを用いているとしても、入射光路や画像データ生成時の処理の違いなどに起因した画質の差は生じる。
【００３２】
したがって、測光センサー１０８で生成された画像信号に基づく機械学習によって生成された学習モデルを撮像素子１１１によって生成された画像信号に対する被写体検出に用いると、検出精度が低下する可能性がある。逆も又しかりである。そのため、本実施形態では、画像信号を生成する撮像素子（もしくは、特性の異なる画像）ごとに異なる学習モデルを用意する。そして、被写体検出処理を適用する画像信号を生成したセンサーに対応した学習モデルを用いて、被写体検出処理を適用する。
【００３３】
具体的には、被写体検出回路２０４は、測光センサー１０８で生成された画像信号に基づく画像データに対しては、測光センサー用の学習モデル２０６を用いる。また、被写体検出回路２０４は、撮像素子１１１で生成された画像信号に基づく画像データに対しては、撮像素子用の学習モデル２０７を用いる。
【００３４】
（撮影動作）
次に、図３〜図５を参照して、本実施形態のＤＳＬＲ１００の撮影動作について説明する。
図３は撮影動作の概要に関するフローチャートであり、各ステップの処理はシステム制御回路２０１のプログラマブルプロセッサがＲＯＭ２０１１からＲＡＭ２０１２に読み込まれたプログラムを実行することによって実現される。
【００３５】
Ｓ３０１でシステム制御回路２０１は本体１０１の電源がＯＮかどうか判定し、ＯＮと判定されなければ処理を終了し、ＯＮと判定されれば処理をＳ３０２に進む。判定は例えば操作部材２０３の電源スイッチの状態や、電源のＯＮ、ＯＦＦを示すフラグなどの参照に基づくことができる。
【００３６】
Ｓ３０２でシステム制御回路２０１は撮影モードを判定する。ここでは撮影モードが静止画撮影モードか動画撮影モードかの判定とするが、他の撮影モードが設定可能であってもよい。撮影モードは操作部材２０３のユーザー操作によって変更可能である。システム制御回路２０１は、静止画撮影モードと判定されれば処理をＳ３０３へ進め、動画撮影モードと判定されれば処理をＳ３０４に進める。
【００３７】
Ｓ３０３でシステム制御回路２０１は静止画撮影処理を行い、処理をＳ３０１に戻す。また、Ｓ３０４でシステム制御回路２０１は動画撮影処理を行い、処理をＳ３０１に戻す。静止画撮影処理については図４を用いて、動画撮影処理については図５を用いてそれぞれ後述する。
【００３８】
（静止画撮影処理）
図４は、図３のＳ３０３に示した静止画撮影処理の詳細に関するフローチャートである。
Ｓ４０１でシステム制御回路２０１は、レリーズボタンの半押し操作でオンするスイッチＳＷ１と、レリーズボタンの全押し操作でオンするスイッチＳＷ２の状態を検出する。そして、システム制御回路２０１は、スイッチＳＷ１とＳＷ２のいずれかがオンであれば、処理をＳ４０２へ進め、スイッチＳＷ１とＳＷ２がいずれもオフであれば、処理を終了する。
【００３９】
Ｓ４０２でシステム制御回路２０１は、測光センサー１０８の露光処理（電荷蓄積）を行う。測光センサー１０８の露光処理は所謂電子シャッターによって所定時間電荷蓄積を行うことによって実現される。システム制御回路２０１は、測光センサー１０８の動作を制御して、所定時間電荷蓄積を行い、測光センサー１０８から画像信号（露出制御用信号）を読み出す。また、システム制御回路２０１は、ＡＦセンサー１０５についても露光処理（電荷蓄積）を行い、画像信号（焦点検出用信号）を読み出す。
【００４０】
Ｓ４０３でシステム制御回路２０１（選択手段）は、学習モデル用メモリ２０５に複数記憶されている学習モデルのうち、測光センサー用の学習モデル２０６を選択し、被写体検出処理用のパラメータとして被写体検出回路２０４に設定する。また、システム制御回路２０１は、Ｓ４０２で読み出した露出制御用信号に対してＡ／Ｄ変換やノイズ低減処理などを行って生成した画像データを被写体検出回路２０４に供給する。
【００４１】
なお、ここでは静止画撮影時には光学ファインダーを使用中であるものとしているが、例えばＥＶＦ（モニター１１２）を使用中であるか、光学ファインダーを使用中であるかを判別してもよい。光学ファインダーを使用しない静止画撮影時には、システム制御回路２０１は、学習モデル用メモリ２０５に複数記憶されている学習モデルのうち、撮像素子用の学習モデル２０７を選択し、被写体検出処理用のパラメータとして被写体検出回路２０４に設定する。光学ファインダーを使用中か否かは、アイピース１０９近傍に設けた近接センサを用いる方法など、公知の方法によって判定することができる。
【００４２】
Ｓ４０４で被写体検出回路２０４は、露出制御用信号に基づく画像データに対して、Ｓ４０３で設定された測光センサー用の学習モデル２０６を用いて被写体検出処理を適用する。被写体検出処理の詳細については後述する。被写体検出回路２０４は、検出結果を表す情報をシステム制御回路２０１に供給する。検出結果を表す情報には、被写体が検出されたか否か（検出数）や、検出した被写体領域に関する情報（例えば位置や大きさ）が含まれてよい。
【００４３】
Ｓ４０５でシステム制御回路２０１は、Ｓ４０４における被写体検出の結果、被写体が１つ以上検出されていれば、検出された被写体の位置に最も近い焦点検出領域を選択する。なお、被写体が複数検出された場合、システム制御回路２０１は例えば、被写体領域の大きさや位置などに基づいて代表被写体を決定し、代表被写体の位置に最も近い焦点検出領域を選択する。そして、システム制御回路２０１は、選択した焦点検出領域についての焦点状態（デフォーカス量および方向）を、焦点検出用信号に基づいて求める。
【００４４】
なお、Ｓ４０４で被写体が検出されなかった場合、システム制御回路２０１は、選択可能な全ての焦点検出領域についての焦点状態（デフォーカス量および方向）を、焦点検出用信号に基づいて求める。そして、最も近い距離に被写体が存在する焦点検出領域を選択する。
【００４５】
Ｓ４０６でシステム制御回路２０１は、Ｓ４０５で選択した焦点検出領域の焦点状態に基づいてフォーカスレンズ１１３の位置を制御することにより、撮影レンズ１０２の合焦距離を調節する。
【００４６】
Ｓ４０７でシステム制御回路２０１は、Ｓ４０２で読み出した露出制御用信号を用いて撮影条件（絞り値（ＡＶ値）、シャッタスピード（ＴＶ値）、ＩＳＯ感度（ＩＳＯ値））を決定する。撮影条件の決定方法に特に制限は無いが、ここでは、露出制御用信号に基づいて得られる輝度（Ｂｖ値）に対応する撮影条件を、予め記憶されたプログラム線図を参照して決定するものとする。なお、被写体検出処理によって検出された被写体領域の輝度を用いて撮影条件を決定するようにしてもよい。
【００４７】
Ｓ４０８でシステム制御回路２０１は、スイッチＳＷ２の状態を検出し、スイッチＳＷ２がオンであれば処理をＳ４０９へ進め、スイッチＳＷ２がオフであれば処理を終了する。
【００４８】
Ｓ４０９でシステム制御回路２０１は、静止画の撮影処理を実行する。システム制御回路２０１は、撮影レンズ１０２からの光束と交差しない位置にメインミラー１０３およびサブミラー１０４を移動させるとともに、Ｓ４０７で決定したシャッタースピードに従ってシャッター１１０を駆動する。これにより、撮影レンズ１０２が形成する光学像によって撮像素子１１１が露光される。撮像素子１１１は各画素が露光期間に蓄積した電荷を電圧に変換した画像信号を生成する。システム制御回路２０１は撮像素子１１１から画像信号を読み出し、Ａ／Ｄ変換、ノイズ低減、ホワイトバランス調整、色補間など、予め定められた画像処理を適用することにより画像データを生成する。システム制御回路２０１は、生成した画像データを画像データファイルとして画像記憶用メモリ２０２に保存したり、画像データに基づく表示用画像信号を生成してモニター１１２に表示したりする。
【００４９】
（動画撮影処理）
次に、図５に示すフローチャートを用いて、図３のＳ３０４における動画撮影処理の詳細について説明する。動画撮影動作は、撮影スタンバイ時や、動画記録の開始指示の検出に応じて実行される。なお、撮影スタンバイ時の動画撮影は表示用のスルー画像生成を目的としているため、記録を目的とした動画撮影時とは解像度（画素数）などにおいて異なる。しかしながら、被写体検出処理の内容は基本的に変わらないため、以下では特に動画の撮影目的を意識することなく説明する。
【００５０】
Ｓ５０１でシステム制御回路２０１は、動画の１フレーム分の処理を実行し、画像データを生成する。動画撮影では予め定められたフレームレートで連続的に撮影を行うため、シャッター１１０を全開し、メインミラー１０３およびサブミラー１０４を移動させた状態とする。また、撮像素子１１１の露光時間は電荷蓄積時間を制御することにより調整する。システム制御回路２０１は、電荷蓄積、画像信号の読み出し、蓄積電荷のリセットを１フレームの撮影ごとに繰り返す。システム制御回路２０１は、撮像素子１１１から読み出した画像信号（Ａ＋Ｂ像とＡ像）に画像処理を適用して画像データを生成し、Ａ＋Ｂ像を画像記憶用メモリ２０２に保存する。また、Ａ＋Ｂ像に相当する表示用画像を生成し、モニター１１２にスルー画像として表示する。また、システム制御回路２０１は、焦点検出を行うために、Ａ像と、Ａ＋Ｂ像とＡ像とから生成したＢ像とを、例えばＲＡＭ２０１２に格納しておく。
【００５１】
Ｓ５０２でシステム制御回路２０１は、撮像素子用の学習モデル２０７を被写体検出処理用のパラメータとして被写体検出回路２０４に設定する。また、システム制御回路２０１は、画像記憶用メモリ２０２に格納した画像データを被写体検出回路２０４に供給する。
【００５２】
Ｓ５０３で被写体検出回路２０４は、システム制御回路２０１から供給される画像データに対して、Ｓ５０２で設定された撮像素子用の学習モデル２０７を用いて被写体検出処理を適用する。被写体検出処理の詳細については後述する。被写体検出回路２０４は、検出結果を表す情報をシステム制御回路２０１に供給する。検出結果を表す情報には、被写体が検出されたか否か（検出数）や、検出した被写体領域に関する情報（例えば位置や大きさ）が含まれてよい。
【００５３】
Ｓ５０４でシステム制御回路２０１は、Ｓ５０３における被写体検出の結果、被写体が１つ以上検出されていれば、検出された被写体の位置に最も近い焦点検出領域を選択する。なお、被写体が複数検出された場合、システム制御回路２０１は例えば、被写体領域の大きさや位置などに基づいて代表被写体を決定し、代表被写体の位置に最も近い焦点検出領域を選択する。
【００５４】
そして、システム制御回路２０１は、ＲＡＭ２０１２に格納したＡ像とＢ像のそれぞれについて、選択した焦点検出領域に対応する領域に含まれる複数の画素データを繋ぎ合わせて１対の像信号（焦点検出用信号）を生成する。例えば、各画素が水平方向に並んだ２つの光電変換部を有する場合、システム制御回路２０１は、水平方向に並んだ複数の画素データを繋ぎ合わせて像信号を生成する。システム制御回路２０１は、Ａ像とＢ像とから生成した１対の像信号を、ＡＦセンサ１０５から得られる１対の像信号と同様に取り扱い、焦点状態（デフォーカス量および方向）を求める。
【００５５】
Ｓ５０５でシステム制御回路２０１は、Ｓ５０４で求めたデフォーカス量およびデフォーカス方向に対応するレンズ駆動量および駆動方向に従って、フォーカスレンズ１１３の位置を制御することにより、撮影レンズ１０２の合焦距離を調節する。
【００５６】
Ｓ５０６でシステム制御回路２０１は、Ｓ５０１で読み出した画像信号（Ａ＋Ｂ像）を用いて撮影条件（絞り値（ＡＶ値）、シャッタスピード（ＴＶ値）、ＩＳＯ感度（ＩＳＯ値））を決定する。撮影条件の決定方法に特に制限は無いが、ここでは、画像信号に基づいて得られる輝度（Ｂｖ値）に対応する撮影条件を、予め記憶されたプログラム線図を参照して決定するものとする。なお、被写体検出処理によって検出された被写体領域の輝度を用いて撮影条件を決定するようにしてもよい。
【００５７】
Ｓ５０２からＳ５０６までの処理は、次フレームの処理（Ｓ５０１の次回実行）を対象としている。図３のＳ３０１で電源スイッチがＯＮであると判定されなくなるまで、Ｓ３０２で撮影モードが動画撮影モードと判定されている期間は、Ｓ３０４においてＳ５０１からＳ５０５の処理を繰り返し実行する。
【００５８】
（被写体検出の詳細）
次に、被写体検出回路２０４および被写体検出処理について説明する。本実施形態では、被写体検出回路２０４をＣＮＮ（コンボリューショナル・ニューラル・ネットワーク）の１種であるネオコグニトロンで構成する。被写体検出回路２０４の基本的な構成について、図６および図７を用いて説明する。図６に入力された２次元画像データから被写体を検出するＣＮＮの基本的な構成を示す。処理の流れは、左端を入力とし、右方向に処理が進んでいく。ＣＮＮは、特徴検出層（Ｓ層）と特徴統合層（Ｃ層）と呼ばれる２つの層をひとつのセットとし、それが階層的に構成されている。なお、Ｓ層は従来技術で説明した畳み込み層に、Ｃ層は同プーリング層またはサブサンプリング層に対応する。
【００５９】
ＣＮＮでは、まずＳ層において１つ前の階層で検出された特徴をもとに次の特徴を検出する。またＳ層において検出した特徴をＣ層で統合し、その階層における検出結果として次の階層に伝える構成を有する。
Ｓ層は特徴検出細胞面からなり、特徴検出細胞面ごとに異なる特徴を検出する。また、Ｃ層は特徴統合細胞面からなり、１つ前の階層の特徴検出細胞面での検出結果をプーリングもしくはサブサンプリングする。以下では、特に区別する必要がない場合、特徴検出細胞面および特徴統合細胞面を総称して特徴面と呼ぶ。本実施形態では、最終階層である出力層（ｎ階層目）ではＣ層は用いずＳ層のみで構成している。
【００６０】
特徴検出細胞面での特徴検出処理、および特徴統合細胞面での特徴統合処理の詳細について、図７を用いて説明する。１つの特徴検出細胞面は複数の特徴検出ニューロンにより構成され、個々の特徴検出ニューロンは１つ前の階層のＣ層に所定の構造で結合している。また１つの特徴統合細胞面は、複数の特徴統合ニューロンにより構成され、個々の特徴統合ニューロンは同じ階層のＳ層に所定の構造で結合している。
【００６１】
図７に示した、Ｌ階層目のＳ層のＭ番目の細胞面内において、位置（ξ, ζ）の特徴検出ニューロンの出力値を
【数１】
2019186918.tif 000003
と表記する。また、Ｌ階層目のＣ層のＭ番目の細胞面内において、位置(ξ, ζ)の特徴統合ニューロンの出力値を
【数２】
2019186918.tif 000004
と表記する。その時、それぞれのニューロンの結合係数を
【数３】
2019186918.tif 000005
とすると、各出力値は以下のように表すことができる。
【００６２】
[数式１]
【数４】
2019186918.tif 000006
[数式２]
【数５】
2019186918.tif 000007
ここで、数式１におけるｆは活性化関数であり、例えばロジスティック関数や双曲正接関数などのシグモイド関数である。また、
【数６】
2019186918.tif 000008
は、Ｌ階層目のＳ層のＭ番目の細胞面における、位置(ξ, ζ)の特徴検出ニューロンの内部状態を表す。数式２は活性化関数を用いておらず、単純な線形和で表されている。
【００６３】
数式２のように活性化関数を用いない場合、ニューロンの内部状態
【数７】
2019186918.tif 000009
と出力値
【数８】
2019186918.tif 000010
とは等しい。また、数式１の
【数９】
2019186918.tif 000011
を特徴検出ニューロンの結合先出力値と呼び、数式２の
【数１０】
2019186918.tif 000012
を特徴統合ニューロンの結合先出力値と呼ぶ。
【００６４】
ここで、数式１及び数式２におけるξ，ζ，ｕ，v，nについて説明する。位置(ξ, ζ)は入力画像における位置座標に対応しており、例えば出力値
【数１１】
2019186918.tif 000013
が大きい場合、入力画像の画素位置(ξ, ζ)に、Ｌ階層目のＳ層のＭ番目の細胞面が検出する特徴が存在する可能性が高いことを意味する。またｎは数式１において、Ｌ−１階層目のＣ層のｎ番目の細胞面を意味しており、統合先特徴番号と呼ぶ。基本的にＬ−１階層目のＣ層に存在する全ての細胞面について積和演算を行う。（ｕ, ｖ）は、結合係数の相対位置座標であり、検出する特徴のサイズに応じて有限の範囲（ｕ, ｖ）において積和演算を行う。このような有限な（ｕ, ｖ）の範囲を受容野と呼ぶ。また受容野の大きさを、以下では受容野サイズと呼び、結合している範囲の横画素数×縦画素数で表す。
【００６５】
また数式１において、Ｌ＝１つまり最初の階層のＳ層では、数式１中の
【数１２】
2019186918.tif 000014
は、入力画像
【数１３】
2019186918.tif 000015
である。ちなみにニューロンや画素の分布は離散的であり、結合先特徴番号も離散的なので、ξ，ζ，ｕ，ｖ，ｎは離散的な値をとる。ここでは、ξ，ζは非負整数、ｎは自然数、ｕ，ｖは整数とし、何れも有限な範囲を有する。
【００６６】
数式１中の
【数１４】
2019186918.tif 000016
は、所定の特徴を検出するための結合係数であり、結合係数を適切な値に調整することによって、所定の特徴を検出可能になる。この結合係数の調整が学習であり、ＣＮＮの構築においては、さまざまなテストパターンを用いて、
【数１５】
2019186918.tif 000017
が適切な出力値になるように、結合係数を繰り返し徐々に修正していくことで結合係数を調整する。
【００６７】
次に、数式２中の
【数１６】
2019186918.tif 000018
は、２次元のガウシアン関数を用いており、以下の数式３のように表すことができる。
[数式３]
【数１７】
2019186918.tif 000019
ここでも、（ｕ，ｖ）は有限の範囲を有し、特徴検出ニューロンの場合と同様、範囲を受容野、範囲の大きさを受容野サイズと呼ぶ。ここではＬ階層目のＳ層のＭ番目の特徴のサイズに従って、受容野サイズの値を適宜設定することができる。数式３中のσは特徴サイズ因子であり、受容野サイズに応じて適宜定めることができる定数であってよい。例えば、受容野の一番外側の値がほぼ０とみなせるような値になるように特徴サイズ因子σを設定することができる。このように、本実施形態の被写体検出回路２０４は、上述した演算を各階層で行い、最終階層（ｎ階層目）のＳ層において被写体検出を行うＣＮＮによって構成される。
【００６８】
（被写体検出の学習方法）
結合係数
【数１８】
2019186918.tif 000020
の具体的な調整（学習）方法について説明する。学習は、ＣＮＮに特定の入力画像（テストパターン）を与えて得られるニューロンの出力値と、教師信号（そのニューロンが出力すべき出力値）との関係に基づいて、結合係数
【数１９】
2019186918.tif 000021
を修正することである。本実施形態の学習では、最終階層（ｎ階層目）の特徴検出層Ｓについては最小二乗法を用いて結合係数を修正する。また、他の階層（１〜ｎ−１階層目）の特徴検出層Ｓについては、誤差逆伝搬法を用いて結合係数を修正する。最小二乗法や誤差逆伝搬法を用いた結合係数の修正手法は例えば非特許文献１に記載されるような公知技術を用いることができるため、詳細についての説明は省略する。
【００６９】
検出すべきパターンと、検出すべきでないパターンとを、学習用のテストパターンとして多数用意する。各テストパターンは、画像データと、対応する教師信号とを有する。検出すべきパターンに該当する画像データについては、最終階層の特徴検出細胞面において、検出対象のパターンが存在する領域に対応するニューロンの出力が１となるような教師信号とする。一方、検出すべきでないパターンに該当する画像データについては、検出すべきでないパターンが存在する領域に対応するニューロンの出力が−１となるような教師信号を与える。
【００７０】
本実施形態では、測光センサー１０８で得られる画像信号に基づく画像データを用いたテストパターンによる学習により、測光センサー用の学習モデル２０６を用意する。また、撮像素子１１１で得られる画像信号に基づく画像データを用いたテストパターンによる学習により、撮像素子用の学習モデル２０７を用意する。このように、測光センサー１０８で得られる画像信号での学習と、撮像素子１１１で得られる画像信号での学習とを別個に行うことで、光路、素子、画像処理などの差異が反映された、個々の撮像素子の画像信号に適した学習モデルを生成できる。
【００７１】
なお、撮像素子１１１用の学習モデルを生成するための画像データは、静止画撮影処理や動画撮影処理を実行することにより容易に取得することができる一方、測光センサー１０８用の学習モデルを生成するための画像データの取得は必ずしも容易でない。これは、測光センサー１０８で得られる画像データは画像記憶用メモリ２０２に記憶されないからである。
【００７２】
そのため、撮像素子１１１で得られる画像信号から、測光センサー１０８で得られた画像信号に基づく画像データに相当する画像データを生成してもよい。例えば、同一の被写体を撮像素子１１１と測光センサー１０８で撮影して生成した画像データに基づいて、画像データに反映されている光路、素子、画像処理などの差異を検出する。そして、システム制御回路２０１が、検出した差異に相当する補正を撮像素子１１１で得られる画像信号に基づく画像データに適用することで、測光センサー１０８で得られた画像信号に基づく画像データに相当する画像データを生成することができる。補正方法に制限は無いが、例えば、鮮鋭度の差はローパスフィルタの適用やコントラスト補正によって実現し、色味の差はルックアップテーブルの適用による色変換によって実現することができる。これらの、補正に必要な情報は、例えばＲＯＭ２０１１に記憶しておくことができる。これにより、撮像素子１１１用の学習モデルを生成するための画像データと同様にして、測光センサー１０８用の学習モデルを生成するための画像データを取得することができる。なお、学習モデルの生成は他の装置で行うことも可能である。
【００７３】
以上説明したように、本実施形態によれば、異なる撮像素子で得られる画像信号に対して被写体検出を行いうる装置において、画像の特性に応じた被写体検出用のパラメータを用いることにより、被写体検出精度を向上させることができる。
【００７４】
（その他の実施形態）
上述した実施形態では、１つの撮像装置が光学経路の異なる２つの撮像素子（測光センサー１０８と撮像素子１１１）を有する場合に、被写体検出時に使用している撮像素子ごとに被写体検出用の学習モデルを切替える構成を例示した。しかし、本発明の本質は、被写体検出を行う画像信号または画像データに反映されている撮影光学系（光路やレンズの収差など）、撮像素子、信号処理などの特性を考慮した被写体検出処理用のパラメータを用いることにある。したがって、１つの撮像素子を有する撮像装置において、撮影に用いられる撮影レンズに応じて異なる被写体検出用のパラメータを用いる構成や、撮像装置に応じて異なる被写体検出用のパラメータを用いる構成も本発明に含まれる。
【００７５】
例えば、ＲＧＢイメージセンサーと赤外センサーといった、受光感度の異なる複数の撮像素子を備えたスマートフォンやタブレット端末が存在する。あるいは、標準、広角、および、望遠といった光学倍率の異なる複数の撮像光学系を備えたスマートフォンやタブレット端末が存在する。これらのスマートフォンやタブレット端末においても、本発明を適用することができる。
【００７６】
また、スマートフォンやタブレット端末が、撮影光学系、撮像素子、あるいは、信号処理などの特性を考慮した被写体検出処理用の学習モデルを、無線通信あるいは有線通信を介して、ネットワーク上からダウンロードやアップデートする構成としてもよい。このとき、スマートフォンやタブレット端末は、同一の被写体に対して、撮影光学系、撮像素子、あるいは、信号処理などに基づく画像の特性ごとに、複数の学習モデルを入手することとなる。
【００７７】
あるいは、サーバやエッジコンピュータが被写体検出回路と、画像の特性を考慮した複数の被写体検出処理用の学習モデルを備えるように構成してもよい。サーバやエッジコンピュータが、撮像装置やスマートフォンなどから送信された画像を受信し、受信した画像の特性に応じた学習モデルを選択して被写体検出処理を行い、検出結果を、画像を送信してきた撮像装置やスマートフォンに送信するようにしてもよい。
【００７８】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又はコンピュータ読み取り可能な記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータの１以上のプロセッサがプログラムを実行することでも実現できる。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００７９】
上述の実施形態は本発明の理解を助けることを目的とした具体例に過ぎず、いかなる意味においても本発明を上述の実施形態に限定する意図はない。特許請求の範囲に規定される範囲に含まれる全ての実施形態は本発明に包含される。
【符号の説明】
【００８０】
１００…デジタル一眼レフカメラ、１０１…本体、１０２…ンズ、１０８…測光センサー、１１１…撮像素子、２０４…被写体検出回路、２０６…測光センサー用の学習モデル、２０７…撮像素子用の学習モデル
【図１】
2019186918.tif 000022
【図２】
2019186918.tif 000023
【図３】
2019186918.tif 000024
【図４】
2019186918.tif 000025
【図５】
2019186918.tif 000026
【図６】
2019186918.tif 000027
【図７】
2019186918.tif 000028