(57)【要約】【課題】機械学習による被写体検出の精度を向上させる。【解決手段】取得した画像から、検出しようとする目的の被写体に対応する、機械学習によって獲得された辞書データを参照することにより、目的とする被写体を検出する検出部と、目的とする被写体に対する複数の辞書データからいずれかの辞書データを選択する選択部と、選択部により選択された辞書データを用いて被写体を検出した場合の検出評価値が所定値よりも低かった場合に、選択された辞書データと、選択された辞書データとは異なる辞書データとを用いて目的とする被写体を検出するように、検出部を制御する制御部とを備える。【選択図】  図５
2020008899.tif 000002
【特許請求の範囲】
【請求項１】
取得した画像から、検出しようとする目的の被写体に対応する、機械学習によって獲得された辞書データを参照することにより、前記目的とする被写体を検出する検出手段と、
前記目的とする被写体に対する複数の辞書データからいずれかの辞書データを選択する選択手段と、
前記選択手段により選択された辞書データを用いて前記被写体を検出した場合の検出評価値が所定値よりも低かった場合に、前記選択された辞書データと、該選択された辞書データとは異なる辞書データとを用いて前記目的とする被写体を検出するように、前記検出手段を制御する制御手段と、
を備え、
前記複数の辞書データは、汎用辞書データと、複数の専用辞書データを含み、
前記複数の専用辞書データのそれぞれは、前記目的とする被写体が前記複数の専用辞書データのそれぞれに対応する条件下にある場合には、前記汎用辞書データよりも前記目的とする被写体を検出することができる確率が高い辞書データであり、前記汎用辞書データは、前記複数の専用辞書データのそれぞれよりも多くの条件下において前記目的とする被写体を検出することができる辞書データであることを特徴とする画像処理装置。
【請求項２】
前記辞書データは、機械学習によって獲得される検出処理パラメータを定義するデータであることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記選択手段は、前記複数の専用辞書データの１つを選択することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記制御手段は、前記選択手段により選択された前記複数の専用辞書データの１つを用いて前記被写体を検出した場合の前記検出評価値が所定値よりも低かった場合に、選択された前記専用辞書データと、前記汎用辞書データとを用いて前記目的とする被写体を検出するように、前記検出手段を制御することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記制御手段は、選択された前記専用辞書データと、前記汎用辞書データとを１フレームごとに交互に用いるように、前記検出手段を制御することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記制御手段は、前記汎用辞書データを用いて前記被写体を検出した場合の前記検出評価値が所定値よりも低かった場合は、前記複数の専用辞書データのいずれも用いずに、前記汎用辞書データを用いて前記目的とする被写体を検出するように、前記検出手段を制御することを特徴とする請求項４または５に記載の画像処理装置。
【請求項７】
前記専用辞書データは、被写体の姿勢、被写体の数、被写体の重なり、被写体に対する装飾物の有無および種別の少なくとも１つの要素で区分された辞書データであることを特徴とする請求項１乃至６のいずれか１項に記載に画像処理装置。
【請求項８】
前記制御手段は、前記選択手段により選択された辞書データを用いて前記被写体を検出した場合の検出評価値が所定値以上であった場合に、前記選択された辞書データを用いて前記目的とする被写体を検出するように、前記検出手段を制御することを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
請求項１乃至８のいずれか１項に記載の画像処理装置と、
被写体像を撮像する撮像手段と、
を備えることを特徴とする撮像装置。
【請求項１０】
取得した画像から、検出しようとする目的の被写体に対応する、機械学習によって獲得された辞書データを参照することにより、前記目的とする被写体を検出する検出工程と、
前記目的とする被写体に対する複数の辞書データからいずれかの辞書データを選択する選択工程と、
前記選択工程により選択された辞書データを用いて前記被写体を検出した場合の検出評価値が所定値よりも低かった場合に、前記選択された辞書データと、該選択された辞書データとは異なる辞書データとを用いて前記目的とする被写体を検出するように、前記検出工程を制御する制御工程と、
を有し、
前記複数の辞書データは、汎用辞書データと、複数の専用辞書データを含み、
前記複数の専用辞書データのそれぞれは、前記目的とする被写体が前記複数の専用辞書データのそれぞれに対応する条件下にある場合には、前記汎用辞書データよりも前記目的とする被写体を検出することができる確率が高い辞書データであり、前記汎用辞書データは、前記複数の専用辞書データのそれぞれよりも多くの条件下において前記目的とする被写体を検出することができる辞書データであることを特徴とする画像処理方法。
【請求項１１】
コンピュータを、請求項１乃至８のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項１２】
コンピュータを、請求項１乃至８のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体検出機能を有する画像処理装置に関する。
【背景技術】
【０００２】
画像から特定の被写体パターンを自動的に検出する画像処理方法は、例えば、人間の顔領域を画像から特定することができるなど、非常に有用な技術である。特許文献１に開示されているように、デジタルカメラやデジタルビデオカメラといった撮像装置では、人物の顔領域のような特定の被写体パターンの領域を撮影画像から検出し、検出された領域に焦点や露出を最適化させることが行われている。
【０００３】
また、画像中の被写体を学習、認識するために、非特許文献１に開示されているような深層学習と呼ばれる手法が存在する。深層学習の代表的な手法として、コンボリューショナル・ニューラル・ネットワーク（以下、ＣＮＮと記す）と呼ばれる手法がある。一般的なＣＮＮは、多段階の演算からなる。ＣＮＮの各段階では畳み込み演算を行って画像の局所の特徴を空間的に統合し、次の段階の中間層のニューロンへ入力する。さらにプーリングやサブサンプリングと呼ばれる、特徴量を空間方向へ圧縮する操作を行う。ＣＮＮは、このような多段階の特徴変換を通じて複雑な特徴表現を獲得することができる。そのため特徴量に基づいて画像中の被写体のカテゴリ認識や被写体検出を高精度に行うことができる。ＣＮＮに代表される機械学習では、画像信号と教師信号がセットとして学習される。学習の結果、被写体検出の処理パラメータである辞書データが生成される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３１８５５４号公報
【特許文献２】特開２０１５−５２３７号公報
【非特許文献】
【０００５】
【非特許文献１】Ａｌｅｘ Ｋｒｉｚｈｅｖｓｋｙ， Ｉｌｙａ Ｓｕｔｓｋｅｖｅｒ， Ｇｅｏｆｆｒｅｙ Ｅ． Ｈｉｎｔｏｎ， ＩｍａｇｅＮｅｔ Ｃｌａｓｓｉｆｉｃａｔｉｏｎ ｗｉｔｈ Ｄｅｅｐ Ｃｏｎｖｏｌｕｔｉｏｎａｌ Ｎｅｕｒａｌ Ｎｅｔｗｏｒｋｓ， Ａｄｖａｎｃｅｓ ｉｎ Ｎｅｕｒａｌ Ｉｎｆｏｒｍａｔｉｏｎ Ｐｒｏｃｅｓｓｉｎｇ Ｓｙｓｔｅｍｓ ２５ （ＮＩＰＳ’１２）， ２０１２
【発明の概要】
【発明が解決しようとする課題】
【０００６】
写真撮影を行う場合、撮影シーンによって、被写体特性が異なることがある。ここで言う被写体特性とは、被写体を人物とした場合に、人物の見え方の違いであり、人物の姿勢、人物の重なりなどの検出難易度に影響を与える特性である。被写体特性毎に辞書データを学習し、所定の被写体に特化した辞書データを検出処理に利用することで、検出精度を高めることができる。
【０００７】
そこで、被写体の検出精度を向上させるために、状況に応じて適切な被写体特性の辞書データを切り替えて用いる手法が考えられる。特許文献２では、撮像装置から被写体までの距離に応じて設定された複数の距離範囲について、距離範囲ごとの学習特徴量を記憶し、学習特徴量と被写体の特徴量とを照合して、被写体を検出する。被写体検出用の辞書の切り替えに関しては、公知の技術が存在するが、被写体特性の異なる辞書データの切り替えに関しては開示されていない。また、被写体特性に応じた専用辞書データを利用する方法において、撮影時に特異な被写体特性が発生した場合、汎用的な辞書データよりも検出精度が低下する場合がある。
【０００８】
本発明は上述した課題に鑑みてなされたものであり、その目的は、機械学習による被写体検出の精度を向上させることである。
【課題を解決するための手段】
【０００９】
本発明に係わる画像処理装置は、取得した画像から、検出しようとする目的の被写体に対応する、機械学習によって獲得された辞書データを参照することにより、前記目的とする被写体を検出する検出手段と、前記目的とする被写体に対する複数の辞書データからいずれかの辞書データを選択する選択手段と、前記選択手段により選択された辞書データを用いて前記被写体を検出した場合の検出評価値が所定値よりも低かった場合に、前記選択された辞書データと、該選択された辞書データとは異なる辞書データとを用いて前記目的とする被写体を検出するように、前記検出手段を制御する制御手段と、を備え、前記複数の辞書データは、汎用辞書データと、複数の専用辞書データを含み、前記複数の専用辞書データのそれぞれは、前記目的とする被写体が前記複数の専用辞書データのそれぞれに対応する条件下にある場合には、前記汎用辞書データよりも前記目的とする被写体を検出することができる確率が高い辞書データであり、前記汎用辞書データは、前記複数の専用辞書データのそれぞれよりも多くの条件下において前記目的とする被写体を検出することができる辞書データであることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、機械学習による被写体検出の精度を向上させることが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の画像処理装置の一実施形態であるデジタル一眼レフカメラの側断面図。
【図２】デジタル一眼レフカメラのブロック構成を示す図。
【図３】被写体特性に応じた辞書データの例を示す図。
【図４】デジタル一眼レフカメラの撮像動作の手順を示したフローチャート。
【図５】デジタル一眼レフカメラの被写体検出の手順を示すフローチャート。
【図６】被写体検出で利用する辞書データの状態遷移図。
【図７】ＣＮＮの全体構成の例を示す模式図。
【図８】ＣＮＮの部分構成の例を示す模式図。
【発明を実施するための形態】
【００１２】
以下、本発明の一実施形態について、添付図面を参照して詳細に説明する。なお、本発明の以下の実施形態は発明の好ましい形態を示すものであり、本発明の範囲を限定するものではない。以下の実施形態ではデジタル一眼レフカメラの例を用いて説明を行うが、目的とする被写体を検出する機能を備えたミラーレスカメラ、ビデオカメラ、監視カメラ、カメラ機能付きスマートフォンなどであってもよい。また、これらのカメラにて撮影された動画を受け取ったパーソナルコンピュータ、クラウドコンピュータ、あるいは、エッジコンピュータにおいて、目的とする被写体を検出する処理を実施する場合にも、本発明を適用することが可能である。
【００１３】
（撮像装置の構成）
図１は、本発明の画像処理装置の一実施形態であるデジタル一眼レフカメラ１００の側断面図であり、図２は、デジタル一眼レフカメラ１００のブロック構成を示す図である。
【００１４】
図１において、デジタル一眼レフカメラ１００は、カメラ本体１０１と、カメラ本体１０１に着脱自在に装着される撮影レンズ１０２を備えて構成される。また、図２において、カメラ本体１０１は、デジタル一眼レフカメラ１００全体を制御するシステム制御部２０１を備える。システム制御部２０１には、後述するクイックリターンミラー１０３、焦点検出センサー１０５、測光センサー１０８、フォーカルプレーンシャッター１１０、撮像素子１１１、表示部１１２、マウント接点群１１５が接続されている。システム制御部２０１には、さらに後述する画像記憶部２０２、操作部２０３、被写体検出部２０４、辞書データを記憶した記憶部２１０が接続されている。なお、システム制御部２０１は、複数のタスクを並列処理できるマルチコアＣＰＵ、ＲＡＭおよびＲＯＭを備え、カメラ本体１０１および撮影レンズ１０２の各部を制御する。
【００１５】
以下、図１及び図２を用いてデジタル一眼レフカメラ１００の各部の構成について説明する。撮影レンズ１０２は交換可能であり、カメラ本体１０１と撮影レンズ１０２は、マウント接点群１１５を介して電気的にも接続される。撮影レンズ１０２の中には、フォーカシングレンズ１１３と絞りシャッター１１４が配置され、マウント接点群１１５を介した制御により、カメラ内に取り込む光量とピントを調整できるように構成されている。
【００１６】
クイックリターンミラー１０３は、メインミラー１０３ａとサブミラー１０３ｂを備える。メインミラー１０３ａは、ハーフミラーにより構成されている。メインミラー１０３ａはファインダー観測状態では撮影光路上に斜設され、撮影レンズ１０２から入射される光束をファインダー光学系へと反射する。一方、透過光はサブミラー１０３ｂを介して焦点検出センサー１０５へと入射する。
【００１７】
焦点検出センサー１０５は、撮影レンズ１０２の二次結像面に配置された焦点検出ラインセンサーを有し、位相差検出方式によって撮影レンズ１０２の焦点状態を表すＡＦ信号（自動焦点制御信号）を生成する。生成されたＡＦ信号はシステム制御部２０１へ送信され、システム制御部２０１は、ＡＦ信号に基づいてフォーカシングレンズ１１３の焦点状態を検出する。さらにシステム制御部２０１は、焦点検出の結果に基づいてフォーカシングレンズ１１３の駆動を制御することにより焦点調節を行う。
【００１８】
ファインダー光学系における撮影レンズ１０２の予定結像面には、ピント板１０６が配置されている。ピント板１０６を通過した光は、ペンタプリズム１０７により光路が変更され、アイピース１０９に導かれる。撮影者は、アイピース１０９を介してピント板１０６を観察することによって、撮影画面と撮影情報を確認することができる。
【００１９】
アイピース１０９の脇には、測光センサー１０８が配置されている。測光センサー１０８は、照射される光を光電変換し、輝度信号と色差信号を有する画像データを生成する。測光センサー１０８は、また生成された画像データに基づいてＡＥ信号（自動露出制御信号）を生成し、システム制御部２０１へ送信する。システム制御部２０１は、受信したＡＥ信号を用いて露出制御を行う。また、被写体検出部２０４では、ＡＥ信号に基づいて、被写体検出を行う。システム制御部２０１は、被写体検出部２０４において検出された被写体に基づき、焦点調節、露出制御を最適化させる。
【００２０】
クイックリターンミラー１０３の後方には、フォーカルプレーンシャッター１１０、撮像素子１１１が配置されている。露光を行う際は、メインミラー１０３ａ及びサブミラー１０３ｂが撮影光路上から退避し、フォーカルプレーンシャッター１１０が開くことにより、撮像素子１１１が露光される。フォーカルプレーンシャッター１１０は、撮影を行わない時には撮像素子１１１を遮光し、撮影時には開いて撮像素子１１１へ被写体光束を導く。
【００２１】
撮像素子１１１は、ＣＣＤやＣＭＯＳセンサー等で構成され、赤外カットフィルターやローパスフィルター等を含む。撮像素子１１１は、撮影レンズ１０２の撮影光学系を通過して結像した被写体像を光電変換し、画像信号を生成してシステム制御部２０１に送信する。システム制御部２０１は、受信した画像信号から画像データを生成して画像記憶部２０２へ保存するとともに、ＬＣＤ等の表示部１１２に表示する。
【００２２】
操作部２０３は、不図示のレリーズボタン、スイッチ、接続機器等を介して行なわれるユーザー操作を検知し、操作内容に応じた信号をシステム制御部２０１へ送信する。レリーズボタンが半押し操作されると、レリーズスイッチＳＷ１がオンしてＡＦ（オートフォーカス）やＡＥ（自動露出制御）等の撮影準備動作が行われる。また、レリーズボタンが全押し操作されると、レリーズスイッチＳＷ２がオンして静止画の撮影動作が行われる。撮影結果をユーザーが確認できるように、直前に撮影した静止画を一定時間表示部１１２に表示する。
【００２３】
次に、上記のように構成されるデジタル一眼レフカメラの被写体検出動作について説明する。
【００２４】
（被写体検出における辞書切り替え）
被写体検出部２０４では、前述したＡＥ信号から被写体を検出する。被写体検出部２０４では、記憶部２１０に記憶された機械学習に基づく辞書データを用いて被写体を検出するための処理パラメ−タが決定される。撮影シーンに応じて、被写体の特性が異なる場合がある。そこで、被写体特性毎に辞書データを用意し、シーンに合わせた辞書データを利用することで被写体の検出精度を高めることができる。すなわち、複数の辞書データを有し、状況に応じて辞書データを選定して利用する。
【００２５】
図２に示すように、記憶部２１０は、汎用的な辞書データ２０５、被写体特性に応じた２つ以上の専用辞書データ２０６−１〜２０６−Ｎ（Ｎは２以上の整数）を記憶している。辞書データの選択方法としては、操作部２０３を介して、ユーザーが目的に応じて選択する方法がある。また、システム制御部２０１が状況に応じて、適正な辞書データを選択する方法でもよい。
【００２６】
図３を用いて、辞書データと被写体の特性の例について説明する。図３は、被写体を人物として、１列目にＩＤ、２列名に辞書データの定義、３列目に被写体の例を記載した表を示している。ＩＤ１は汎用辞書データであり、一般的な人物被写体の画像データと教師データから機械学習によって獲得される辞書データである。ＩＤ２〜ＩＤ５は、専用辞書データであり、特定の人物の状態に特化して学習させた辞書データである。専用辞書データは、例えば、被写体の姿勢、被写体の数、被写体の重なり、被写体に対する装飾物の有無および種別の少なくとも１つの要素で区分された辞書データあると言うこともできる。ＩＤ２は、人物被写体が特異な姿勢の状態、ＩＤ３は人物被写体に重なりがある状態、ＩＤ４は人物被写体が多数存在する状態、ＩＤ５は人物被写体の頭部などに装飾物がある状態を示す。すなわち、ＩＤ１乃至ＩＤ５は、いずれも共通の特定の被写体（ここでは人物）を検出するための辞書データである。ＩＤ２乃至ＩＤ４を用いれば、被写体がそれぞれに対応する特定の条件を満たしていれば、ＩＤ１の汎用辞書データよりも高い確率で被写体を検出でき、反対に、特定の条件を満たしていなければ、ＩＤ１の汎用辞書データよりも被写体を検出できる確率は低くなる。ＩＤ１の汎用辞書データを用いれば、複数の条件下、あるいは、それぞれの専用辞書データよりも多くの条件下においても被写体を検出できるが、ＩＤ２乃至ＩＤのいずれかに対応する条件下においては、ＩＤ２乃至ＩＤ４のいずれかの辞書データよりも被写体を検出できる確率は低くなる。なお、ここでは被写体を人物として説明を行うが、これに限られるものではなく、検出対象は、人物の一部（例えば頭部）、特定の個人、特定の動物、特定の物体、あるいは、特定のシーンなどとすることも可能である。
【００２７】
撮影シーンにおける被写体特性に応じて適切な辞書データを設定することにより、高精度な被写体検出が可能となる。しかしながら、専用辞書データは特定の被写体には検出精度が高いものの、汎化能力は失われている。そのため、撮影時に特異な被写体特性が発生した場合、汎用辞書データよりも専用辞書データの方が検出精度が低下する場合がある。そこで、設定された辞書データが専用辞書データであり、検出評価値が低かった場合は、汎用辞書データと設定された専用辞書データの両方を用いるなど複数の辞書データを用いる。例えば、汎用辞書データと専用辞書データとを交互に利用することで、検出精度が連続的に低下してしまう状況を回避することができる。
【００２８】
（撮像装置の処理の流れ）
次に、図４、図５を参照して、上記構成のデジタル一眼レフカメラの撮像動作について説明する。図４は、デジタル一眼レフカメラ１００の撮像動作の手順を示したフローチャートである。このフローチャートの動作は、システム制御部２０１がＲＯＭに格納されたプログラムをＲＡＭに展開して実行することにより実現される。
【００２９】
ステップＳ４０１では、操作部２０３を介して、ユーザーにより被写体検出部２０４に辞書データが設定される。汎用辞書データ２０５、専用辞書データ２０６−１〜２０６−Ｎのいずれかが設定される。ユーザーによる設定がない場合は、初期設定を汎用辞書データ２０５とする。なお、ここで、以下のステップＳ４０２〜ステップＳ４０９までの一連の処理はカメラの１フレーム分に相当する処理である。
【００３０】
ステップＳ４０２では、システム制御部２０１は、レリーズスイッチＳＷ１とレリーズスイッチＳＷ２の状態を検出し、いずれかがオンであれば、フレームを１つ進めるとともに、ステップＳ４０３へ進む。レリーズスイッチＳＷ１とＳＷ２のいずれもオフであれば、処理を終了する。
【００３１】
ステップＳ４０３では、システム制御部２０１は、測光センサー１０８に電荷蓄積を行わせ、生成された像信号をＡＥ信号として読み出す。また、システム制御部２０１は、焦点検出センサー１０５に電荷蓄積を行わせ、生成された像信号をＡＦ信号として読み出す。
【００３２】
ステップＳ４０４では、被写体検出部２０４は、ステップＳ４０３で読み出したＡＥ信号を入力画像として、被写体検出を行う。被写体検出の処理の詳細は後述する。ステップＳ４０５では、システム制御部２０１は、ステップＳ４０４で検出された被写体の位置に最も近い焦点検出領域を選択し、ステップＳ４０３で取得したＡＦ信号を用いて、選択した焦点検出領域の焦点状態を検出する。なお、ステップＳ４０４で被写体が検出されなかった場合には、全ての焦点検出領域の焦点検出を行った上で、最もカメラに近い位置に焦点がある焦点検出領域を選択する。
【００３３】
ステップＳ４０６では、システム制御部２０１は、ステップＳ４０５で選択された焦点検出領域の焦点状態に基づいて、フォーカシングレンズ１１３の焦点位置を調節する。ステップＳ４０７では、システム制御部２０１は、ステップＳ４０３で読み出したＡＥ信号を用いて公知の方法により自動露出演算を行い、絞り値（ＡＶ値）、シャッタスピード（ＴＶ値）、ＩＳＯ感度（ＩＳＯ値）を決定する。ここでのＡＶ値、ＴＶ値、ＩＳＯ値は、予め記憶されたプログラム線図を用いて決定される。
【００３４】
ステップＳ４０８では、システム制御部２０１は、レリーズスイッチＳＷ２の状態を検出し、レリーズスイッチＳＷ２がオンであればステップＳ４０９へ進む。一方、レリーズスイッチＳＷ２がオフであれば、ステップＳ４０２へ戻る。
【００３５】
ステップＳ４０９では、システム制御部２０１は、メインミラー１０３ａおよびサブミラー１０３ｂをアップすることで光路上から退避させ、撮像素子１１１を露光させる。露光された撮像素子１１１は画像信号を生成し、システム制御部２０１へ画像信号を送信する。そして、システム制御部２０１は、撮像素子１１１から受信した画像信号を元に画像データを生成し、画像記憶部２０２に保存するとともに、表示部１１２に表示する。以上が、本実施形態におけるデジタル一眼レフカメラの動作手順である。
【００３６】
（被写体検出の処理の流れ）
次に、図５を参照して、図４のステップＳ４０４における被写体検出の処理の流れについて説明する。
【００３７】
ステップＳ５０１では、システム制御部２０１が、被写体検出部２０４で利用する辞書データの種別を判定する。辞書データが汎用辞書データ２０５であれば（ステップＳ５０１でＮＯと判定）、ステップＳ５０４へ進む。ステップＳ５０４では、被写体検出部２０４が、汎用辞書データに基づいて、後述するＣＮＮの手法により画像信号から被写体検出を行う。辞書データが専用辞書データ２０６−１〜２０６−Ｎのいずれかであれば（ステップＳ５０１でＹＥＳと判定）、ステップＳ５０２へ進む。
【００３８】
ステップＳ５０２では、被写体検出部２０４が、設定された専用辞書データに基づいて画像信号から被写体検出を行う。次いで、ステップＳ５０３では、システム制御部２０１が、ステップＳ５０２で検出された被写体の検出評価値が所定値よりも低いか否かを判定する。検出評価値が所定値以上であれば（ステップＳ５０３でＮＯと判定）、目的とする被写体を検出できたと判断し、検出処理を終了する。検出評価値が所定値より低ければ（ステップＳ５０３でＹＥＳと判定）、目的とする被写体を検出できていないと判断する。この場合、特異状況が発生して、汎化能力の低い専用辞書では検出が苦手な状態に陥っている可能性がある。そこで、ステップＳ５０４では、被写体検出部２０４に、汎用辞書データを用いて、被写体の検出処理を再度実施させる。その結果を被写体検出の結果として処理を終了する。
【００３９】
上述の説明では、専用辞書データによる被写体検出の評価値が低ければ、汎用辞書データを用いた被写体検出を行うように説明した。この場合、１フレームあたり２回、被写体検出を行うことになり、処理負荷が高く撮像処理の遅延が大きくなる。そこで、専用辞書データによる被写体検出の評価値が低ければ、この専用辞書データと汎用辞書データとを時間方向で切り替えながら処理する方法が考えられる。この場合、１フレームあたりの検出回数は１回であるため、撮像処理の遅延は大きくならない。この専用辞書データと汎用辞書データを切り替えながら処理する方法において、専用辞書データの検出評価値が高くなると、専用辞書データのみを用いた検出処理に移行する。これによって、一時的に専用辞書データが苦手な特異状況が発生したとしても、専用辞書の特性を活かした検出処理に復帰することができる。
【００４０】
上述した被写体検出部２０４の辞書データの利用状態を図６の状態遷移図を用いて説明する。状態６０１，６０２，６０３は辞書データの利用状態を示し、状態６０１は汎用辞書データを利用する状態、状態６０２は専用辞書データを利用する状態、状態６０３は専用辞書データと汎用辞書データを交互に利用する状態を示す。状態６０１は初期状態であり、状態間の矢印は状態遷移の条件を示す。状態６０１では、操作部２０３を介してユーザーが専用辞書データを指定すれば状態６０２に遷移する。状態６０２では、操作部２０３を介してユーザーが汎用辞書データを指定すれば状態６０１に遷移する。また、状態６０２では、専用辞書データによる被写体検出の評価値が低ければ、状態６０３へ遷移する。状態６０３では、操作部２０３を介してユーザーが汎用辞書データを指定すれば状態６０１に遷移する。また、状態６０３では、専用辞書データによる被写体検出の評価値が高ければ、状態６０２へ遷移する。以上の状態遷移により被写体検出の処理を行う。
【００４１】
ここで、専用辞書データが選択されたときは、被写体検出の評価値が低い場合に汎用辞書データを併用するが、汎用辞書データが選択されたときは、被写体検出の評価値が低くとも専用辞書データを併用しない理由について説明する。ユーザーが専用辞書データを選択したにも関わらず、被写体検出の評価値が低い場合には、検出対象である被写体が選択した専用辞書データの対応する条件下にない可能性が高いと考えられる。そのため、この専用辞書データに対応しない条件下にある被写体も検出するために、汎用辞書データを併用することで、被写体を検出する確率を高くすることができる。反対に、ユーザーが専用辞書データを選択していないということは、検出対象である被写体が専用辞書データに対応する条件下ではない可能性が高いと思われる。そのため、汎用辞書データを用いた場合の被写体検出の評価値が低いからといって、専用辞書データを併用したとしても、被写体を検出する確率が高くなることは期待できない。そのため、汎用辞書データが選択されたときは、被写体検出の評価値が低くとも専用辞書データを併用する状態には遷移しない。  （ＣＮＮの詳細説明）
本実施形態では、被写体検出部２０４をＣＮＮ（コンボリューショナル・ニューラル・ネットワーク）で構成する。ＣＮＮの基本的な構成について、図７および図８を用いて説明する。図７は、入力された２次元画像データから被写体を検出するＣＮＮの基本的な構成を示す図である。処理の流れは、左端を入力とし、右方向に処理が進んでいく。ＣＮＮは、特徴検出層（Ｓ層）と特徴統合層（Ｃ層）と呼ばれる２つの層を一つのセットとし、それが階層的に構成されている。
【００４２】
ＣＮＮでは、まずＳ層において前段階層で検出された特徴に基づいて次の特徴を検出する。またＳ層において検出した特徴をＣ層で統合し、その階層における検出結果として次の階層に送る構成となっている。
【００４３】
Ｓ層は特徴検出細胞面からなり、特徴検出細胞面ごとに異なる特徴を検出する。また、Ｃ層は、特徴統合細胞面からなり、前段の特徴検出細胞面での検出結果をプーリングする。以下では、特に区別する必要がない場合、特徴検出細胞面および特徴統合細胞面を総称して特徴面と呼ぶ。本実施形態では、最終段階層である出力層ではＣ層は用いずＳ層のみで構成している。
【００４４】
特徴検出細胞面での特徴検出処理、および特徴統合細胞面での特徴統合処理の詳細について、図８を用いて説明する。特徴検出細胞面は、複数の特徴検出ニューロンにより構成され、特徴検出ニューロンは前段階層のＣ層に所定の構造で結合されている。また特徴統合細胞面は、複数の特徴統合ニューロンにより構成され、特徴統合ニューロンは同階層のＳ層に所定の構造で結合されている。図８中に示した、Ｌ階層目Ｓ層のＭ番目細胞面内において、位置(ξ,ζ)の特徴検出ニューロンの出力値をｙLSM (ξ,ζ)、Ｌ階層目Ｃ層のＭ番目細胞面内において、位置(ξ,ζ)の特徴統合ニューロンの出力値をｙLCM  (ξ,ζ)と表記する。その時、それぞれのニューロンの結合係数をｗLSM (n,u,v)、ｗLCM (u,v)とすると、各出力値は以下のように表すことができる。
【００４５】
【数１】
2020008899.tif 000003
…（１）
【数２】
2020008899.tif 000004
…（２）
式（１）のｆは、活性化関数であり、ロジスティック関数や双曲正接関数などのシグモイド関数であれば何でもよい。ｕLSM(ξ,ζ)は、Ｌ階層目Ｓ層のＭ番目細胞面における、位置(ξ,ζ)の特徴検出ニューロンの内部状態である。式（２）は活性化関数を用いず単純な線形和をとっている。式（２）のように活性化関数を用いない場合は、ニューロンの内部状態ｕLCM(ξ,ζ)と出力値ｙLCM(ξ,ζ)は等しい。また、式（１）のｙL-1Cn(ξ+u,ζ+v)、式（２）のｙLSM(ξ+u,ζ+v)をそれぞれ特徴検出ニューロン、特徴統合ニューロンの結合先出力値と呼ぶ。
【００４６】
式（１）及び式（２）におけるξ，ζ，ｕ，ｖ，ｎについて説明する。位置(ξ,ζ)は入力画像における位置座標に対応しており、例えばｙLSM(ξ,ζ)が高い出力値である場合は、入力画像の画素位置(ξ,ζ)に、Ｌ階層目Ｓ層Ｍ番目細胞面において検出する特徴が存在する可能性が高いことを意味する。またｎは式（１）において、Ｌ−１階層目Ｃ層ｎ番目細胞面を意味しており、統合先特徴番号と呼ぶ。基本的にＬ−１階層目Ｃ層に存在する全ての細胞面についての積和演算を行う。（ｕ，ｖ）は、結合係数の相対位置座標であり、検出する特徴のサイズに応じて有限の範囲（ｕ，ｖ）において積和演算を行う。このような有限な（ｕ，ｖ）の範囲を受容野と呼ぶ。また受容野の大きさを、以下では受容野サイズと呼び、結合している範囲の横画素数×縦画素数で表す。
【００４７】
また式（１）において、Ｌ＝１つまり一番初めのＳ層では、式（１）中のｙL-1Cn(ξ+u,ζ+v)は、入力画像ｙin-image(ξ+u,ζ+v)となる。ちなみにニューロンや画素の分布は離散的であり、結合先特徴番号も離散的なので、ξ，ζ，ｕ，ｖ，ｎは連続な変数ではなく、離散的な値をとる。ここでは、ξ，ζは非負整数、ｎは自然数、ｕ，ｖは整数とし、何れも有限な範囲となる。
【００４８】
式（１）中のｗLSM (n,u,v)は、所定の特徴を検出するための結合係数分布であり、これを適切な値に調整することによって、所定の特徴を検出することが可能になる。この結合係数分布の調整が学習であり、ＣＮＮの構築においては、さまざまなテストパターンを提示して、ｙLSM (ξ,ζ)が適切な出力値になるように、結合係数を繰り返し徐々に修正していくことで結合係数の調整を行う。
【００４９】
次に、式（２）中のｗLCM (u,v)は、２次元のガウシアン関数を用いており、以下の式（３）のように表すことができる。
【００５０】
【数３】
2020008899.tif 000005
…（３）
ここでも、（ｕ，ｖ）は有限の範囲としているので、特徴検出ニューロンの説明と同様に、有限の範囲を受容野といい、範囲の大きさを受容野サイズと呼ぶ。この受容野サイズは、ここではＬ階層目Ｓ層のＭ番目特徴のサイズに応じて適当な値に設定すればよい。式（３）数中の、σは特徴サイズ因子であり、受容野サイズに応じて適当な定数に設定しておけばよい。具体的には、受容野の一番外側の値がほぼ０とみなせるような値になるように設定するのがよい。上述のような演算を各階層で行うことにより、最終階層のＳ層において、被写体検出を行うのが、本実施形態におけるＣＮＮの構成である。
【００５１】
（ＣＮＮの学習方法）
具体的な結合係数ｗLSM (n,u,v)の調整方法について説明する。結合係数の調整、すなわち学習の方法に関して説明する。学習では、テストパターンを与えて実際にニューロンの出力値を求め、その出力値と教師信号（そのニューロンが出力すべき望ましい出力値）の関係から結合係数ｗLSM (n,u,v)の修正を行う。本実施形態の学習においては、最終層の特徴検出層は最小二乗法を用い、中間層の特徴検出層は誤差逆伝搬法を用いて結合係数の修正を行う。最小二乗法、誤差逆伝搬法等の結合係数の修正手法の詳細は非特許文献１に記載されているため、ここでは詳細な説明は省略する。
【００５２】
学習用のテストパターンとして、検出すべき特定パターンと、検出すべきでないパターンを多数用意する。各テストパターンは、画像信号および教師信号を１セットとする。検出すべき特定パターンを提示した時は、最終層の特徴検出細胞面の、特定パターンが存在する領域のニューロンに対し、出力が１となるように教師信号を与える。逆に、検出すべきでないパターンを提示した時は、そのパターンの領域のニューロンに対し、出力が−１となるように教師信号を与える。
【００５３】
以上説明したように、本実施形態によれば、被写体特性に応じた辞書データを利用することで、被写体検出の精度を向上させるとともに、特異状況において検出精度を悪化させる可能性を抑制することができる。
【００５４】
なお、上記の実施形態では、辞書データの切り替えによって、機械学習によって獲得される検出処理パラメータ、すなわち結合係数ｗLSM (n,u,v)を切り替えるように説明した。本発明は、これに限定されず、辞書データの切り替えによりＣＮＮのネットワーク構成を含めて切り替えてもよい。ＣＮＮのネットワーク構成の変更とは、特徴検出層の数、各層の受容野サイズ、活性化関数の種類などを変更することを意味する。
【００５５】
（その他の実施形態）
また本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現できる。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現できる。
【符号の説明】
【００５６】
１０１：カメラ本体、１０２：撮影レンズ、２０１：システム制御部、２０３：操作部、２０４：被写体検出部、２１０：記憶部
【図１】
2020008899.tif 000006
【図２】
2020008899.tif 000007
【図３】
2020008899.tif 000008
【図４】
2020008899.tif 000009
【図５】
2020008899.tif 000010
【図６】
2020008899.tif 000011
【図７】
2020008899.tif 000012
【図８】
2020008899.tif 000013
【手続補正書】
【提出日】令和1年6月28日(2019.6.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の辞書データのうち、いずれかの辞書データを選択し、選択した辞書データを用いて、取得した画像の解析を行う解析手段を備え、
前記複数の辞書データは、少なくとも、第１の辞書データと、第２の辞書データを含み、
前記解析手段は、前記第１の辞書データを用いた被写体の検出スコアが閾値よりも低い、あるいは、前記第１の辞書データを用いた前記被写体の検出ができない場合であっても、前記第１の辞書データを用いて、再び画像の解析を行い、前記第２の辞書データを用いた前記被写体の検出スコアが閾値よりも低い、あるいは、前記第２の辞書データを用いた前記被写体の検出ができない場合には、前記第２の辞書データと異なる辞書データを用いて、再び画像の解析を行うことを特徴とする画像処理装置。
【請求項２】
前記解析手段は、設定した辞書データを用いて、前記取得した画像に含まれる前記被写体を検出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記解析手段は、ユーザの指示に基づいて、いずれかの辞書データを選択することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記解析手段は、前記第２の辞書データを用いた前記被写体の検出スコアが閾値よりも低い、あるいは、前記第２の辞書データを用いた前記被写体の検出ができない場合には、前記第２の辞書データと異なる辞書データと、前記第２の辞書データを用いて、再び画像の解析を行うことを特徴とする請求項１または２に記載の画像処理装置。
【請求項５】
前記第２の辞書データと異なる辞書データは、前記第１の辞書データであることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記辞書データは、機械学習によって獲得された辞書データであることを特徴とする請求項１に記載の画像処理装置。
【請求項７】
取得した画像から、検出しようとする目的の被写体に対応する、機械学習によって獲得された辞書データを参照することにより、前記目的とする被写体を検出する検出手段と、
前記目的とする被写体に対する複数の辞書データからいずれかの辞書データを選択する選択手段と、
前記選択手段により選択された辞書データを用いて前記被写体を検出した場合の検出評価値が所定値よりも低かった場合に、前記選択された辞書データと、該選択された辞書データとは異なる辞書データとを用いて前記目的とする被写体を検出するように、前記検出手段を制御する制御手段と、
を備え、
前記複数の辞書データは、汎用辞書データと、複数の専用辞書データを含み、
前記複数の専用辞書データのそれぞれは、前記目的とする被写体が前記複数の専用辞書データのそれぞれに対応する条件下にある場合には、前記汎用辞書データよりも前記目的とする被写体を検出することができる確率が高い辞書データであり、前記汎用辞書データは、前記複数の専用辞書データのそれぞれよりも多くの条件下において前記目的とする被写体を検出することができる辞書データであることを特徴とする画像処理装置。
【請求項８】
前記辞書データは、機械学習によって獲得される検出処理パラメータを定義するデータであることを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記選択手段は、前記複数の専用辞書データの１つを選択することを特徴とする請求項７または８に記載の画像処理装置。
【請求項１０】
前記制御手段は、前記選択手段により選択された前記複数の専用辞書データの１つを用いて前記被写体を検出した場合の前記検出評価値が所定値よりも低かった場合に、選択された前記専用辞書データと、前記汎用辞書データとを用いて前記目的とする被写体を検出するように、前記検出手段を制御することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記制御手段は、選択された前記専用辞書データと、前記汎用辞書データとを１フレームごとに交互に用いるように、前記検出手段を制御することを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記制御手段は、前記汎用辞書データを用いて前記被写体を検出した場合の前記検出評価値が所定値よりも低かった場合は、前記複数の専用辞書データのいずれも用いずに、前記汎用辞書データを用いて前記目的とする被写体を検出するように、前記検出手段を制御することを特徴とする請求項１０または１１に記載の画像処理装置。
【請求項１３】
前記専用辞書データは、被写体の姿勢、被写体の数、被写体の重なり、被写体に対する装飾物の有無および種別の少なくとも１つの要素で区分された辞書データであることを特徴とする請求項７乃至１２のいずれか１項に記載の画像処理装置。
【請求項１４】
前記制御手段は、前記選択手段により選択された辞書データを用いて前記被写体を検出した場合の検出評価値が所定値以上であった場合に、前記選択された辞書データを用いて前記目的とする被写体を検出するように、前記検出手段を制御することを特徴とする請求項７乃至１３のいずれか１項に記載の画像処理装置。
【請求項１５】
複数の辞書データのうち、いずれかの辞書データを選択し、選択した辞書データを用いて、取得した画像の解析を行う解析工程を有し、
前記複数の辞書データは、少なくとも、第１の辞書データと、第２の辞書データを含み、
前記解析工程では、前記第１の辞書データを用いた被写体の検出スコアが閾値よりも低い、あるいは、前記第１の辞書データを用いた前記被写体の検出ができない場合であっても、前記第１の辞書データを用いて、再び画像の解析を行い、前記第２の辞書データを用いた前記被写体の検出スコアが閾値よりも低い、あるいは、前記第２の辞書データを用いた前記被写体の検出ができない場合には、前記第２の辞書データと異なる辞書データを用いて、再び画像の解析を行うことを特徴とする画像処理方法。
【請求項１６】
取得した画像から、検出しようとする目的の被写体に対応する、機械学習によって獲得された辞書データを参照することにより、前記目的とする被写体を検出する検出工程と、
前記目的とする被写体に対する複数の辞書データからいずれかの辞書データを選択する選択工程と、
前記選択工程により選択された辞書データを用いて前記被写体を検出した場合の検出評価値が所定値よりも低かった場合に、前記選択された辞書データと、該選択された辞書データとは異なる辞書データとを用いて前記目的とする被写体を検出するように、前記検出工程を制御する制御工程と、
を有し、
前記複数の辞書データは、汎用辞書データと、複数の専用辞書データを含み、
前記複数の専用辞書データのそれぞれは、前記目的とする被写体が前記複数の専用辞書データのそれぞれに対応する条件下にある場合には、前記汎用辞書データよりも前記目的とする被写体を検出することができる確率が高い辞書データであり、前記汎用辞書データは、前記複数の専用辞書データのそれぞれよりも多くの条件下において前記目的とする被写体を検出することができる辞書データであることを特徴とする画像処理方法。
【請求項１７】
コンピュータを、請求項１乃至１４のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項１８】
コンピュータを、請求項１乃至１４のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
本発明に係わる画像処理装置は、複数の辞書データのうち、いずれかの辞書データを選択し、選択した辞書データを用いて、取得した画像の解析を行う解析手段を備え、前記複数の辞書データは、少なくとも、第１の辞書データと、第２の辞書データを含み、前記解析手段は、前記第１の辞書データを用いた被写体の検出スコアが閾値よりも低い、あるいは、前記第１の辞書データを用いた前記被写体の検出ができない場合であっても、前記第１の辞書データを用いて、再び画像の解析を行い、前記第２の辞書データを用いた前記被写体の検出スコアが閾値よりも低い、あるいは、前記第２の辞書データを用いた前記被写体の検出ができない場合には、前記第２の辞書データと異なる辞書データを用いて、再び画像の解析を行うことを特徴とする。
また、本発明に係わる画像処理装置は、取得した画像から、検出しようとする目的の被写体に対応する、機械学習によって獲得された辞書データを参照することにより、前記目的とする被写体を検出する検出手段と、前記目的とする被写体に対する複数の辞書データからいずれかの辞書データを選択する選択手段と、前記選択手段により選択された辞書データを用いて前記被写体を検出した場合の検出評価値が所定値よりも低かった場合に、前記選択された辞書データと、該選択された辞書データとは異なる辞書データとを用いて前記目的とする被写体を検出するように、前記検出手段を制御する制御手段と、を備え、前記複数の辞書データは、汎用辞書データと、複数の専用辞書データを含み、前記複数の専用辞書データのそれぞれは、前記目的とする被写体が前記複数の専用辞書データのそれぞれに対応する条件下にある場合には、前記汎用辞書データよりも前記目的とする被写体を検出することができる確率が高い辞書データであり、前記汎用辞書データは、前記複数の専用辞書データのそれぞれよりも多くの条件下において前記目的とする被写体を検出することができる辞書データであることを特徴とする。