(57)【要約】【課題】  従来のような演算コストの大きな処理を行うことなく、例えばサイズや姿勢といったものに対してロバストに認識処理を高速に行うための技術を提供すること。【解決手段】  入力画像を階層型ニューラルネットワークを用いて処理して得られる該階層型ニューラルネットワークの複数の層の出力を連結して連結階層特徴を生成する。連結階層特徴を用いて入力画像の領域の属性を表す属性スコアマップを、属性ごとに生成する。生成した属性ごとの属性スコアマップを統合して認識対象についての認識結果を生成して出力する。【選択図】  図１
2019032773.tif 000002
【特許請求の範囲】
【請求項１】
入力画像を階層型ニューラルネットワークを用いて処理して得られる該階層型ニューラルネットワークの複数の層の出力を連結して連結階層特徴を生成する特徴生成手段と、
前記連結階層特徴を用いて前記入力画像の領域の属性を表す属性スコアマップを、属性ごとに生成するマップ生成手段と、
前記マップ生成手段が生成した属性ごとの属性スコアマップを統合して認識対象についての認識結果を生成して出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記出力手段は、前記マップ生成手段が生成した属性ごとの属性スコアマップを統合して前記入力画像における物体の有無についての結果を生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記出力手段は、前記マップ生成手段が生成した属性ごとの属性スコアマップを統合して前記入力画像における物体の有無についての結果を生成すると共に、前記入力画像における各領域のカテゴリのラベルについての結果を生成することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記マップ生成手段は、前記領域に物体の基準点が存在するか否かの尤度を判定することを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記マップ生成手段は、物体の各サブカテゴリごとの尤度のスコアマップを算出することを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記サブカテゴリは、物体の奥行き回転、物体の面内回転、物体の姿勢、物体の形状、物体の材質、物体の関心領域の形状、物体の関心領域のサイズ、物体の関心領域のアスペクト比、のうち少なくとも一つに関して区別されたサブカテゴリであることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記出力手段は、前記属性スコアマップの解像度よりも詳細な解像度の前記認識結果を生成することを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項８】
前記出力手段は、前記物体のサイズについて推定を行うことを特徴とする請求項２乃至７の何れか１項に記載の画像処理装置。
【請求項９】
前記出力手段は、前記入力画像の審美性に関する結果を生成することを特徴とする請求項１乃至８の何れか１項に記載の画像処理装置。
【請求項１０】
前記出力手段は、前記入力画像の分類の結果を生成することを特徴とする請求項１乃至９の何れか１項に記載の画像処理装置。
【請求項１１】
前記マップ生成手段は、いずれの属性の判定を行うかを前記分類の結果に基づいて選択することを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記出力手段は、前記分類の結果と前記分類ごとの被写体の事前分布に基づいてスコアを算出することを特徴とする請求項１０又は１１に記載の画像処理装置。
【請求項１３】
更に、カメラ情報を入力する手段を備え、
前記マップ生成手段は、前記連結階層特徴に加えて前記カメラ情報を用いることを特徴とする請求項１乃至１２の何れか１項に記載の画像処理装置。
【請求項１４】
更に、
前記認識結果が複数の結果を含み、いずれの結果を最終出力とするかを選択する手段を備えることを特徴とする請求項１乃至１３の何れか１項に記載の画像処理装置。
【請求項１５】
更に、
前記階層型ニューラルネットワーク、前記特徴生成手段、前記マップ生成手段、前記出力手段のいずれか２つ以上の手段について処理のパラメータを統合的に学習する手段を備えることを特徴とする請求項１乃至１４の何れか１項に記載の画像処理装置。
【請求項１６】
前記特徴生成手段は、前記階層型ニューラルネットワークの複数の層の出力を連結する際にアップサンプル処理あるいは逆畳み込み処理のいずれかを行うことを特徴とする請求項１乃至１５の何れか１項に記載の画像処理装置。
【請求項１７】
画像処理装置が行う画像処理方法であって、
前記画像処理装置の特徴生成手段が、入力画像を階層型ニューラルネットワークを用いて処理して得られる該階層型ニューラルネットワークの複数の層の出力を連結して連結階層特徴を生成する特徴生成工程と、
前記画像処理装置のマップ生成手段が、前記連結階層特徴を用いて前記入力画像の領域の属性を表す属性スコアマップを、属性ごとに生成するマップ生成工程と、
前記画像処理装置の出力手段が、前記マップ生成工程で生成した属性ごとの属性スコアマップを統合して認識対象についての認識結果を生成して出力する出力工程と
を備えることを特徴とする画像処理方法。
【請求項１８】
コンピュータを、請求項１乃至１６の何れか１項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認識技術に関するものである。
【背景技術】
【０００２】
映像データから特徴量を抽出し、判別器を用いて映像データ中の被写体を判定する技術が知られている。このような技術の一つに、ニューラルネットワークの一種であるＣｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ（以降、ＣＮＮ）がある。ＣＮＮは、局所的畳み込みの演算処理を複数段階で逐次的に行うという性質を持つ。
【０００３】
非特許文献１に記載の技術では、ＣＮＮを画像データに適用して物体を検出している。具体的には、（１）画像をＣＮＮで演算処理する。さらに（２）関心領域（Ｒｅｇｉｏｎ  ｏｆ  Ｉｎｔｅｒｅｓｔ）ごとにＣＮＮの最終層の特徴量を集計し、物体か否かを判定する。この処理を全関心領域に対して行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特願２０１５−１１５１７１
【非特許文献】
【０００５】
【非特許文献１】Ｓｈａｏｑｉｎｇ  Ｒｅｎ，  Ｋａｉｍｉｎｇ  Ｈｅ，  Ｒｏｓｓ  Ｇｉｒｓｈｉｃｋ，  Ｊｉａｎ  Ｓｕｎ，  Ｆａｓｔｅｒ  Ｒ−ＣＮＮ：  Ｔｏｗａｒｄｓ  Ｒｅａｌ−Ｔｉｍｅ  Ｏｂｊｅｃｔ  Ｄｅｔｅｃｔｉｏｎ  ｗｉｔｈ  Ｒｅｇｉｏｎ  Ｐｒｏｐｏｓａｌ  Ｎｅｔｗｏｒｋｓ，  ＮＩＰＳ  ２０１５
【非特許文献２】Ｍ．Ｄ．  Ｚｅｉｌｅｒ，  Ｒ．  Ｆｅｒｇｕｓ，  Ｖｉｓｕａｌｉｚｉｎｇ  ａｎｄ  Ｕｎｄｅｒｓｔａｎｄｉｎｇ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｔｗｏｒｋｓ，  ＥＣＣＶ  ２０１４
【非特許文献３】Ｈｙｅｏｎｗｏｏ  Ｎｏｈ，  Ｓｅｕｎｇｈｏｏｎ  Ｈｏｎｇ，  Ｂｏｈｙｕｎｇ  Ｈａｎ，  Ｌｅａｒｎｉｎｇ  Ｄｅｃｏｎｖｏｌｕｔｉｏｎ  Ｎｅｔｗｏｒｋ  ｆｏｒ  Ｓｅｍａｎｔｉｃ  Ｓｅｇｍｅｎｔａｔｉｏｎ，  ＩＣＣＶ  ２０１５
【非特許文献４】Ａ．  Ｋｒｉｚｈｅｖｓｋｙ  ｅｔ  ａｌ．，  ＩｍａｇｅＮｅｔ  Ｃｌａｓｓｉｆｉｃａｔｉｏｎ  ｗｉｔｈ  Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ，  ＮＩＰＳ  ２０１２
【非特許文献５】Ｅｍｍａｎｏｕｉｌ  Ｚ．  Ｐｓａｒａｋｉｓ  ａｎｄ  Ｇｅｏｒｇｉｏｓ  Ｄ．  Ｅｖａｎｇｅｌｉｄｉｓ，  Ａｎ  Ｅｎｈａｎｃｅｄ  Ｃｏｒｒｅｌａｔｉｏｎ−Ｂａｓｅｄ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｓｔｅｒｅｏ  Ｃｏｒｒｅｓｐｏｎｄｅｎｃｅ  ｗｉｔｈ  Ｓｕｂ−Ｐｉｘｅｌ  Ａｃｃｕｒａｃｙ，  ＩＣＣＶ  ２００５
【非特許文献６】Ｗｅｉ  Ｌｕｏ，  ＸｉａｏｇａｎｇＷａｎｇ，  Ｘｉａｏｏｕ  Ｔａｎｇ，  Ｃｏｎｔｅｎｔ−Ｂａｓｅｄ  Ｐｈｏｔｏ  Ｑｕａｌｉｔｙ  Ａｓｓｅｓｓｍｅｎｔ，  ＩＣＣＶ  ２０１１
【非特許文献７】Ｌａｚｅｂｎｉｋ，  Ｓｃｈｍｉｄ，  Ｐｏｎｃｅ，  Ｂｅｙｏｎｄ  Ｂａｇｓ  ｏｆ  Ｆｅａｔｕｒｅｓ：  Ｓｐａｔｉａｌ  Ｐｙｒａｍｉｄ  Ｍａｔｃｈｉｎｇ  ｆｏｒ  Ｒｅｃｏｇｎｉｚｉｎｇ  Ｎａｔｕｒａｌ  Ｓｃｅｎｅ  Ｃａｔｅｇｏｒｉｅｓ，  ＣＶＰＲ  ２００６
【発明の概要】
【発明が解決しようとする課題】
【０００６】
非特許文献１のような従来の手法では、関心領域ごとに特徴の集計を行う。そのため物体の候補領域が多い場合や、複数の認識タスクを同時に行う場合に演算コストが大きいという課題がある。
【０００７】
本発明はこのような問題に鑑みてなされたものであり、従来のような演算コストの大きな処理を行うことなく、例えばサイズや姿勢といったものに対してロバストに認識処理を高速に行うための技術を提供する。
【課題を解決するための手段】
【０００８】
本発明の一様態は、入力画像を階層型ニューラルネットワークを用いて処理して得られる該階層型ニューラルネットワークの複数の層の出力を連結して連結階層特徴を生成する特徴生成手段と、前記連結階層特徴を用いて前記入力画像の領域の属性を表す属性スコアマップを、属性ごとに生成するマップ生成手段と、前記マップ生成手段が生成した属性ごとの属性スコアマップを統合して認識対象についての認識結果を生成して出力する出力手段とを備えることを特徴とする。
【発明の効果】
【０００９】
本発明の構成によれば、従来のような演算コストの大きな処理を行うことなく、例えばサイズや姿勢といったものに対してロバストに認識処理を高速に行うことができる。
【図面の簡単な説明】
【００１０】
【図１】画像処理装置の機能構成例を示すブロック図。
【図２】画像処理装置の機能構成例を示すブロック図。
【図３】画像処理装置が行う認識処理のフローチャート。
【図４】ステップＳ１〜Ｓ４の処理のフローチャート。
【図５】各層の演算処理を示す図。
【図６】処理結果を示す図。
【図７】学習データの例を示す図
【図８】領域の判定に関する属性の統合手順のフローチャート。
【図９】物体の検出に関する属性の統合手順のフローチャート。
【図１０】第１の実施形態の変形例を説明する図。
【図１１】画像処理装置の機能構成例を示すブロック図。
【図１２】人物の検出のための統合手順のフローチャート。
【図１３】属性判定の例および結果出力例を示す図。
【図１４】画像処理装置の機能構成例を示すブロック図。
【図１５】画像処理装置の動作のフローチャート。
【図１６】水平線情報値、合焦情報値、測光情報値を示す図。
【図１７】画像処理装置の機能構成例を示す図。
【図１８】画像処理装置の機能構成例を示すブロック図。
【図１９】画像処理装置の動作のフローチャート。
【図２０】第４の実施形態の派生の形態を説明する図。
【図２１】コンピュータ装置のハードウェア構成例を示すブロック図。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照し、本発明の実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施例の１つである。
【００１２】
［第１の実施形態］
先ず、入力画像に対する画像認識を行う画像処理装置の機能構成例について、図１のブロック図を用いて説明する。画像入力部１０１は、認識対象（検出対象）としてのオブジェクトを１つ以上含む入力画像を入力する。ニューラルネットワーク１０２は、第１層〜第ｎ層（ｎは２以上の自然数）を有する階層型ニューラルネットワークであり、画像入力部１０１が入力した入力画像を処理する。連結特徴生成部１０４は、ニューラルネットワーク１０２における規定の層の出力（特徴マップ）を連結することで連結階層特徴１０３を生成する特徴生成を行う。属性判定部１０５は第１属性判定部１０５ａ〜第ｎ属性判定部１０５ｃを有し、第１属性判定部１０５ａ〜第ｎ属性判定部１０５ｃのそれぞれは連結階層特徴１０３を用いて、対応する属性の尤度マップ（属性スコアマップ１０８）を生成して出力する。属性統合部１０６は、属性スコアマップ１０８を統合して、入力画像に対する物体検出やシーン認識など、規定の認識結果を生成する。結果出力部１０７は、属性統合部１０６による認識結果を出力する。
【００１３】
以下では、このような画像処理装置を用いた具体的な画像認識処理の一例について説明する。以下では、属性スコアマップ１０８を求める属性として、歩行者、小さい顔、大きい顔、空、地面、建物、主被写体の７種類を用いる。この場合、図２に示す如く、図１の属性判定部１０５は、これらの７種類の属性のそれぞれの属性スコアマップ１０８のマップ生成を行う属性判定部２０５として構成する。すなわち、以下では、図２に示す機能構成例を示す画像処理装置を用いる。
【００１４】
図２では、図１においてｎ＝７とし、第１属性判定部１０５ａ〜第７属性判定部１０５ｃのそれぞれを尤度判定部２０５ａ〜尤度判定部２０５ｇとしている。尤度判定部２０５ａは、属性「歩行者」に対する属性スコアマップ２０８を生成する。尤度判定部２０５ｂは、属性「小さい顔」に対する属性スコアマップ２０８を生成する。尤度判定部２０５ｃは、属性「大きい顔」に対する属性スコアマップ２０８を生成する。尤度判定部２０５ｄは、属性「空」に対する属性スコアマップ２０８を生成する。尤度判定部２０５ｅは、属性「地面」に対する属性スコアマップ２０８を生成する。尤度判定部２０５ｆは、属性「建物」に対する属性スコアマップ２０８を生成する。尤度判定部２０５ｇは、属性「主被写体」に対する属性スコアマップ２０８を生成する。
【００１５】
次に、１枚の入力画像に対して図２の画像処理装置が行う認識処理について、図３のフローチャートに従って説明する。
【００１６】
ステップＳ１では、画像入力部１０１は、入力画像を入力する。ステップＳ２では、ニューラルネットワーク１０２は、ステップＳ１において画像入力部１０１が入力した入力画像を処理し、連結特徴生成部１０４は、ニューラルネットワーク１０２における規定の層の出力（特徴マップ）を抽出する。ステップＳ３では、連結特徴生成部１０４は、ステップＳ３で抽出した規定の層の出力（特徴マップ）を連結することで連結階層特徴１０３を生成する。ステップＳ４では、属性判定部２０５における属性判定部２０５ａ〜属性判定部２０５ｇのそれぞれは、連結階層特徴１０３を用いて歩行者、小さい顔、大きい顔、空、地面、建物、主被写体の属性スコアマップ２０８を生成する。
【００１７】
ステップＳ５では、属性統合部１０６は、属性判定部２０５ａ〜属性判定部２０５ｇのそれぞれが生成した属性スコアマップ２０８を統合して、入力画像における空、地面、建物の領域を判定する。ステップＳ６では、属性統合部１０６は、属性判定部２０５ａ〜属性判定部２０５ｇのそれぞれが生成した属性スコアマップ２０８を統合して、入力画像における主被写体の領域を判定する。ステップＳ７では、属性統合部１０６は、属性判定部２０５ａ〜属性判定部２０５ｇのそれぞれが生成した属性スコアマップ２０８を統合して、入力画像における歩行者及び顔の検出を行う。ステップＳ８では、結果出力部１０７は、属性統合部１０６によるステップＳ５〜７における判定結果及び検出結果を出力する。結果出力部１０７による出力先は特定の出力先に限らない。
【００１８】
次に、上記のステップＳ１〜Ｓ３における処理、即ち入力画像を入力してから連結階層特徴１０３を生成するまでの処理、の詳細について、図４（Ａ）のフローチャートに従って説明する。
【００１９】
ステップＳ１０１では、画像入力部１０１は、入力画像を入力する。ステップＳ１０２では、連結特徴生成部１０４は、ニューラルネットワーク１０２における規定の層の出力（特徴マップ）を登録するための配列（連結階層特徴の配列）を初期化する（配列の各要素にＮＵＬＬなどの値を設定することで空の配列を用意する）。そしてステップＳ１０３〜Ｓ１０８の処理を、ニューラルネットワーク１０２の第１層〜第ｎ層の各層について行う。以下ではニューラルネットワーク１０２としてＣＮＮを用いる。ここでのＣＮＮは全結合層と呼ばれる層は用いず、畳込み層と呼ばれる種類の層のみを使用してもよい。
【００２０】
ステップＳ１０４では、ニューラルネットワーク１０２は、着目層の演算処理を行う。第１回目のステップＳ１０４では第１層の演算処理を行い、第２回目のステップＳ１０４では第２層の演算処理を行い、第ｎ回目のステップＳ１０４では第ｎ層の演算処理を行う。ニューラルネットワーク１０２はステップＳ１０４における演算処理を各層について行うことで、図５に示すような各層の演算処理を実現する。
【００２１】
本実施形態に係るニューラルネットワーク１０２は、図５に示すような各層の演算処理を行うものとする。図５では３層のニューラルネットワーク１０２を例にとり説明しているが、階層の数は３に限らない。
【００２２】
ニューラルネットワーク１０２は入力画像４０１に対して複数回の畳込みフィルタ処理を行うべく、畳込みフィルタ処理４０２ａ、４０２ｂ、４０２ｃのそれぞれを各階層で行う。さらにニューラルネットワーク１０２は各階層で、畳込みフィルタ処理のあとに活性化関数処理を行う（図５では略している）。またニューラルネットワーク１０２は第１層をのぞく各階層で、プール処理４０４ａ、４０４ｂのそれぞれを活性化関数処理のあとで行う。Ｌ（図５ではＬ＝１，２，３）番目の層にて行う畳込みフィルタ処理および活性化関数処理は以下の式に従って行われる。
【００２３】
【数１】
2019032773.tif 000003
【００２４】
ここで、ｆＬ（ｘ，ｙ，ｚ）はＬ番目の層が出力する特徴マップで、ｚ枚のマップからなる。図５中に単位ｃｈとして付した数字は特徴マップの枚数である。例えば図５の場合は、特徴マップ４０３ａは６４枚のマップから成り、特徴マップ４０３ｂは１２８枚のマップから成り、特徴マップ４０３ｃは２５６枚のマップから成る。
【００２５】
θ（・）は半波整流よりなる活性化関数である。ｗＬ（Δｘ，Δｙ，ＣＨＩＮ，ＣＨＯＵＴ）（ただしΔｘ，Δｙ∈｛−Ｋ，．．．，０，．．．，Ｋ｝）はＬ番目の層の畳込みの重みパラメータ，ＢＬＣＨＯＵＴはＬ番目の層のバイアス項である。ＣＨＩＮは（Ｌ−１）番目の層が出力する特徴マップの番号、ＣＨＯＵＴはＬ番目の層が出力する特徴マップの番号を表す。なお上記の式ではＲＧＢ３チャンネルからなる入力画像Ｉ（ｘ，ｙ）は特徴マップｆ０（ｘ，ｙ，ｚ）として扱うものとする。
【００２６】
なおここでは畳込みの前後で特徴マップのｘ，ｙ方向のサイズが変化しないように、畳込み処理の前に特徴マップｆＬ−１の周囲の画素に０値を充填してから畳込むものとする（パディング処理と呼ばれる）。
【００２７】
プール処理４０４ａ、４０４ｂは、特徴マップを所定の局所領域ごとに代表値で代表させることでマップのサイズを縮小する処理である。プール処理はＣＮＮの認識性能をロバストにする効果がある半面、結果の解像度が落ちるという性質がある。図５に示す例ではプール処理４０４ａ、４０４ｂはそれぞれ特徴マップを２×２画素ごとに統合して２分の１の解像度の特徴マップに縮小する処理である。
【００２８】
ここまでの演算処理により、ＣＮＮの各層の段階でそれぞれ特徴マップ４０３ａ、４０３ｂ、４０３ｃが生成される。以上はすべてＣＮＮに関する一般的な技術であり、非特許文献１〜３等で広く公知であるため、これ以上の詳細な説明は省略する。
【００２９】
なお、ＣＮＮは非特許文献４で行っているような大規模データベースを用いた分類タスクで重みパラメータをあらかじめ学習しておくものとする。この結果、ＣＮＮの入力画像に近い低層の特徴マップ４０３ａとして、画像中の線分の傾きのような単純な模様によく反応するマップが生成される。そして後段の高層の特徴マップ４０３ｃとしては、より広い範囲の画像パターンを集約し、複雑なパターン形状に反応するようなマップが生成される。ＣＮＮの上記の性質は非特許文献２等で広く公知である。
【００３０】
図４（Ａ）に戻って次にステップＳ１０５では、連結特徴生成部１０４は、着目層が、ニューラルネットワーク１０２における各層のうち予め定められた規定層（特徴マップを出力する層）であるか否かを判断する。つまり、連結特徴生成部１０４は、ニューラルネットワーク１０２が演算処理した結果の特徴マップが規定層の結果かどうかかを判断する。この判断の結果、着目層が規定層であれば、処理はステップＳ１０６に進み、着目層が規定層でなければ、次の層を着目層としてステップＳ１０３に戻る。
【００３１】
ステップＳ１０７では、連結特徴生成部１０４は、着目層の出力である特徴マップを上記の配列に追加登録する。これを繰り返して最終的に特徴マップが複数個連結された高次元の連結階層特徴（配列）が得られる。図５の例では、特徴マップｆ１（ｘ，ｙ），ｆ２（ｘ，ｙ），ｆ３（ｘ，ｙ）が連結された４４８ｃｈの連結階層特徴４０６（Ｆ（ｘ，ｙ））が得られる。連結階層特徴は一般に以下の式で表される。
【００３２】
【数２】
2019032773.tif 000004
【００３３】
ここでＦは連結階層特徴である。ｆ１，ｆ２，・・・，ｆｎはニューラルネットワーク１０２から抽出された特徴マップであり、連結階層特徴Ｆは上記特徴マップをＺ次元方向に連結したものである。ｘ，ｙは特徴マップの画素の座標である。
【００３４】
なお、一般的にＣＮＮはプール処理を行うため、特徴マップの解像度は層によって異なっている。そのため連結特徴生成部１０４はステップＳ１０７の前にステップＳ１０６において、上記の配列に登録する特徴マップの解像度を規定の解像度に揃える。図５の例では、特徴マップ４０３ｂの縦横の解像度は特徴マップ４０３ａ（入力画像４０１）の縦横の解像度の１／２、特徴マップ４０３ｃの縦横の解像度は特徴マップ４０３ｂの縦横の解像度の１／２である。この場合、連結特徴生成部１０４は、特徴マップ４０３ａについては解像度変換を行わず、特徴マップｆ１（ｘ、ｙ）とする。また連結特徴生成部１０４は、特徴マップ４０３ｂについては縦横サイズ（解像度）を２倍にするアップサンプル処理４０５ａを行うことで、特徴マップ４０３ｂの縦横サイズ（解像度）を特徴マップ４０３ａ（入力画像４０１）の縦横サイズ（解像度）に揃える。この「特徴マップ４０３ｂの縦横サイズ（解像度）を特徴マップ４０３ａ（入力画像４０１）の縦横サイズ（解像度）に揃えた」ものが、特徴マップｆ２（ｘ、ｙ）である。アップサンプル処理によるサイズ変換（解像度変換）は、画素値のコピーや線形補間といった一般的な方法を採用することで実現することができる。また連結特徴生成部１０４は、特徴マップ４０３ｃについては縦横サイズ（解像度）を４倍にするアップサンプル処理４０５ｂを行うことで、特徴マップ４０３ｃの縦横サイズ（解像度）を特徴マップ４０３ａ（入力画像４０１）の縦横サイズ（解像度）に揃える。この「特徴マップ４０３ｃの縦横サイズ（解像度）を特徴マップ４０３ａ（入力画像４０１）の縦横サイズ（解像度）に揃えた」ものが、特徴マップｆ３（ｘ、ｙ）である。
【００３５】
なお、揃えるサイズによってはアップサンプル処理の代わりにダウンサンプル処理を行っても良い。このような処理により、特徴マップｆ１（ｘ，ｙ），ｆ２（ｘ，ｙ），ｆ３（ｘ，ｙ）は入力画像Ｉ（ｘ，ｙ）と同じ解像度に揃っている。そしてこのような特徴マップｆ１（ｘ，ｙ），ｆ２（ｘ，ｙ），ｆ３（ｘ，ｙ）を連結したものが連結階層特徴４０６（Ｆ（ｘ，ｙ））である。
【００３６】
なお本実施形態では、入力画像Ｉ（ｘ，ｙ）と連結階層特徴Ｆ（ｘ，ｙ）の解像度は同一である。しかし仮にアップサンプル（ダウンサンプル）処理の倍率を変更すれば、入力画像Ｉ（ｘ，ｙ）よりも粗い・細かい解像度の連結階層特徴Ｆ’（ｘ’，ｙ’）を生成することもできる。そこで以下の説明においては連結階層特徴Ｆ（ｘ，ｙ）の画素を一般化した名称として「領域ブロック」と呼ぶこととする。
【００３７】
このようにして得られた連結階層特徴は、ニューラルネットワーク１０２の低層から高層まで複数の特徴マップが統合された特徴である。そのため様々な被写体の様々なスケールおよびバリエーションの情報が特徴量の中に含まれる。また各領域ブロック（ｘ，ｙ）ごとに高次元の特徴ベクトルが対応している。以上の二つの性質により、連結階層特徴は様々な認識タスクに有効に用いることができる（どのような認識タスクが可能であるかは各実施形態にて複数のバリエーションを示す）。
【００３８】
次に、上記のステップＳ４における処理の詳細について、図４（Ｂ）のフローチャートに従って説明する。ステップＳ１０９〜Ｓ１１３の処理が、連結階層特徴におけるそれぞれの領域ブロックについて行われる。ステップＳ１１０〜Ｓ１１２の処理が、それぞれの属性（本実施形態の場合は上記の７種類の属性のそれぞれ）について行われる。本形態で判定する属性としては、歩行者、小さなサイズの顔、大きなサイズの顔、の３種類の物体の有無、および空領域、地面領域、建物領域、主被写体領域、の４種類の領域についての尤度である（判別器の学習の方法は後述する）。
【００３９】
属性判定部２０５は、予め上記の各属性の尤度が判定できるように学習された判別器としての尤度判定部２０５ａ〜尤度判定部２０５ｇを有する。判別器には例えば線形サポートベクトルマシン（ＳＶＭ）を用いることができる。ステップＳ１１１では属性判定部２０５は、連結階層特徴におけるｉ（１≦ｉ≦Ｉ：Ｉは領域ブロックの数）番目の領域ブロックについてｊ（１≦ｊ≦７）番目の属性について属性スコアマップ２０８を生成する。例えばｊ＝１の場合は、尤度判定部２０５ａは、ｉ番目の領域ブロックについて属性「歩行者」に対する属性スコアマップ２０８を生成する。ｊ＝２の場合は、尤度判定部２０５ｂは、ｉ番目の領域ブロックについて属性「小さい顔」に対する属性スコアマップ２０８を生成する。ｊ＝３の場合は、尤度判定部２０５ｃは、ｉ番目の領域ブロックについて属性「大きい顔」に対する属性スコアマップ２０８を生成する。ｊ＝４の場合は、尤度判定部２０５ｄは、ｉ番目の領域ブロックについて属性「空」に対する属性スコアマップ２０８を生成する。ｊ＝５の場合は、尤度判定部２０５ｅは、ｉ番目の領域ブロックについて属性「地面」に対する属性スコアマップ２０８を生成する。ｊ＝６の場合は、尤度判定部２０５ｆは、ｉ番目の領域ブロックについて属性「建物」に対する属性スコアマップ２０８を生成する。ｊ＝７の場合は、尤度判定部２０５ｇは、ｉ番目の領域ブロックについて属性「主被写体」に対する属性スコアマップ２０８を生成する。属性スコアマップ２０８は以下の式に従って生成される。
【００４０】
【数３】
2019032773.tif 000005
【００４１】
ただしＬｊ（ｘ，ｙ）は座標（ｘ，ｙ）の領域ブロックについてのｊ番目の属性の尤度スコア、ｖｊｋはｊ番目の属性判別器のｋ番目のサポートベクトル、αｊｋは同じくサポートベクトルの重み系数、ｂｊはバイアス項であり、これらはあらかじめ学習で獲得しておく。またＦ（ｘ，ｙ）は座標（ｘ，ｙ）の領域ブロックの特徴ベクトル、Ｒ（・）はＳＶＭの出力を尤度に変換するための規格化関数である。ただし規格化関数Ｒ（・）はここでは処理の軽量化のため下式のような関数で近似してＳＶＭのスコアを０〜１に規格化するものとする。
【００４２】
【数４】
2019032773.tif 000006
【００４３】
なおτは適当な定数である。属性判定部２０５は全ての領域ブロックと全ての属性について判定処理を行うために、本形態における線形ＳＶＭのように軽い処理の判別器であることが好適である。換言すれば処理が軽ければ決定木や多層パーセプトロン等、どのような判別器でも良い。
【００４４】
また本実施形態では属性判定部２０５の入力特徴として各領域ブロック（ｘ，ｙ）の特徴量Ｆ（ｘ，ｙ）を用いて属性判定を行った。ここで別の形態として周囲ｗの範囲の特徴量Ｆ（ｘ＋Δｘ，ｙ＋Δｙ）（ただし、Δｘ，Δｙ∈｛−ｗ，．．．−１，０，１，．．．，ｗ｝）を全て連結して特徴量として判定するような形態なども考えられる。このように、属性判定部２０５の判別器、および判定に用いる特徴量の形態は様々に考えられ、いずれかに限定されるものではない。
【００４５】
以上のような処理の結果を図６に示す。図６に示す如く、入力画像６０１の連結階層特徴６０２を用いて属性判定部２０５の尤度判定部２０５ａ〜尤度判定部２０５ｇによる属性判定を行うことで、各属性の属性スコアマップ６０４を生成することができる。属性スコアマップ６０４には、各領域ブロックに対して尤度判定部２０５ａが求めた属性「歩行者」の尤度スコア（歩行者尤度スコア）をマップ化した属性スコアマップが含まれている。また、属性スコアマップ６０４には、各領域ブロックに対して尤度判定部２０５ｂが求めた属性「小さい顔」の尤度スコア（顔（小）尤度スコア）をマップ化した属性スコアマップが含まれている。また、属性スコアマップ６０４には、各領域ブロックに対して尤度判定部２０５ｃが求めた属性「大きい顔」の尤度スコア（顔（大）尤度スコア）をマップ化した属性スコアマップが含まれている。また、属性スコアマップ６０４には、各領域ブロックに対して尤度判定部２０５ｄが求めた属性「空」の尤度スコア（空尤度スコア）をマップ化した属性スコアマップが含まれている。また、属性スコアマップ６０４には、各領域ブロックに対して尤度判定部２０５ｅが求めた属性「地面」の尤度スコア（地面尤度スコア）をマップ化した属性スコアマップが含まれている。また、属性スコアマップ６０４には、各領域ブロックに対して尤度判定部２０５ｆが求めた属性「建物」の尤度スコア（建物尤度スコア）をマップ化した属性スコアマップが含まれている。また、属性スコアマップ６０４には、各領域ブロックに対して尤度判定部２０５ｇが求めた属性「主被写体」の尤度スコア（主被写体尤度スコア）をマップ化した属性スコアマップが含まれている。図６では、各属性の尤度スコアの高い領域ブロックを黒色、尤度スコアの低い領域ブロックを白色としてグレーの諧調で表している。
【００４６】
ここで、図６で示した属性スコアマップ６０４のような判定結果を得るためには、以下のように属性判定部２０５を学習しておく。属性判定部２０５の学習に用いる学習データの例を図７に示す。
【００４７】
各学習データは、図７（Ａ）、（Ｂ）に示すような画像と、図７（Ｃ）〜（Ｆ）に示すような教師値と、のセットからなる。教師値は、物体の属性に関する教師値（図７（Ｃ）、（Ｄ））と、領域の属性の教師値（図７（Ｅ）、（Ｆ））と、の二種類からなる。
【００４８】
物体の属性の教師値は、各領域ブロックが歩行者、小さなサイズの顔、大きなサイズの顔、のいずれかの物体を含むか否かを示す値である。具体的には物体の基準点を含む領域ブロックを正事例（１）、それ以外の領域ブロックを負事例（０）として各物体カテゴリごとに人手等で０，１の値を付与したものである（本実施形態では物体領域の重心を物体の基準点とする）。
【００４９】
領域の属性の教師値とは、空、地面、建物、および主被写体のカテゴリについて、所定値以上の面積が該カテゴリであるような領域ブロックを正事例（１）、それ以外の領域ブロックを負事例（０）として各領域カテゴリごとに０，１の値を付与したものである。図７（Ｅ）、（Ｆ）に具体例を示す。空領域、地面領域、建物領域、および主被写体領域の正事例の領域ブロックにそれぞれ記号Ｓ，Ｇ，Ｂ，Ｍを付している。なお便宜上、ここでは一つの領域ブロックに一つの領域カテゴリの記号のみを示しているが、建物が主被写体である、といったように一つの領域ブロックに複数の属性が付随することもあり得る。
【００５０】
上記で与えられた各属性の教師値の０，１の値を目標変数、対応する領域ブロックの連結階層特徴量Ｆ（ｘ，ｙ）を説明変数とし、正事例と負事例が判別できるように多数の学習事例に基づいてＳＶＭを学習する。学習は各属性ｊごとに行い、属性ごとにＳＶＭのパラメーター（［ｖｊｋ，αｊｋ，ｂｊ］）を得る。以上が属性判定部２０５の学習手順になる。
【００５１】
次に、属性スコアマップを統合して目的の認識タスクの結果を出力する詳細手順（上記のステップＳ５〜Ｓ８の処理の詳細）について説明する。ここでは属性スコアマップの統合とは複数の属性を直接的・間接的な手掛かりとし、目的の認識タスクを判定する処理である。統合にはルールベースで行うものと、識別器や回帰器を用いて機械学習手法で行うもの、それらを組み合わせるもの、があるが、ここではルールベースの手法について説明する。
【００５２】
人体検出タスクの場合、人体の属性、顔の属性、（人体として誤検出し易い）建物の属性、等が人体の判定の手掛かりになる属性である。また顔と人体には共起関係が、人体と建物には同一の位置に存在しないという排他的な関係があるため、これらの属性間の関係を考慮した統合を行ってもよい。具体的には以下に説明するような手順で行う。
【００５３】
属性スコアマップを統合して目的の認識タスクの結果を出力する詳細手順について、図８，９を用いて説明する。図８は、領域の判定に関する属性の統合手順のフローチャートであり、図９は物体の検出に関する属性の統合手順のフローチャートである。
【００５４】
図８（Ａ）は空領域，地面領域，および建物領域に関する統合手順のフローチャートである。ステップＳ２０１〜Ｓ２０７の処理が、連結階層特徴におけるそれぞれの領域ブロックについて行われる。ステップＳ２０２〜Ｓ２０６の処理が、それぞれの属性（本実施形態の場合は「空」、「地面」、「建物」のそれぞれ）について行われる。
【００５５】
ステップＳ２０３では、属性統合部１０６は、ｉ（１≦ｉ≦Ｉ：Ｉは領域ブロックの数）番目の領域ブロックのｊ番目の属性の尤度スコアが所定値以上であるか否かを判断する。ここで、１番目の属性（ｊ＝１）は「空」、２番目の属性（ｊ＝２）は「地面」、３番目の属性（ｊ＝３）は「建物」であるものとする。この判断の結果、ｉ番目の領域ブロックのｊ番目の属性の尤度スコアが所定値以上であれば、処理はステップＳ２０４に進む。一方、ｉ番目の領域ブロックのｊ番目の属性の尤度スコアが所定値未満であれば、ステップＳ２０６に進む。ｊ＝１〜３についてステップＳ２０２〜Ｓ２０６の処理を行った場合には、（ｉ＋１）番目の領域ブロックについてステップＳ２０３以降を行う。そしてｉ＝１〜ＩについてステップＳ２０１〜Ｓ２０７の処理を行った場合には、図８（Ａ）の処理は完了する。
【００５６】
ステップＳ２０４では、属性統合部１０６は、ｉ番目の領域ブロックのその他の属性（主被写体を除く）の尤度スコアが所定値未満であるか否かを判断する。この判断の結果、ｉ番目の領域ブロックのその他の属性（主被写体を除く）の尤度スコアが所定値未満であれば、処理はステップＳ２０５に進む。一方、ｉ番目の領域ブロックのその他の属性（主被写体を除く）の尤度スコアが所定値以上であれば、処理はステップＳ２０６に進む。
【００５７】
ステップＳ２０５では、属性統合部１０６は、ｉ番目の領域ブロックの属性がｊ番目の属性であると判断する。
【００５８】
図８（Ｂ）は主被写体領域についての統合手順のフローチャートである。処理内容はほぼ図８（Ａ）のフローチャートに従った処理の内容と同一である。ただし顔・歩行者・空・地面・建物のいずれも主被写体となる可能性があるため、図８（Ａ）の手順とは異なり、他の属性の尤度スコアは問題にしない。ステップＳ２１０〜Ｓ２１３の処理が、連結階層特徴におけるそれぞれの領域ブロックについて行われる。
【００５９】
ステップＳ２１１では、属性統合部１０６は、ｉ（１≦ｉ≦Ｉ：Ｉは領域ブロックの数）番目の領域ブロックの属性「主被写体」の尤度スコアが所定値以上であるか否かを判断する。この判断の結果、ｉ番目の領域ブロックの属性「主被写体」の尤度スコアが所定値以上であれば、処理はステップＳ２１２に進む。一方、ｉ番目の領域ブロックの属性「主被写体」の尤度スコアが所定値未満であれば、ステップＳ２１３に進み、次の領域ブロックについて以降の処理を行う。ステップＳ２１２では、属性統合部１０６は、ｉ番目の領域ブロックの属性が「主被写体」であると判断する。
【００６０】
図９は歩行者と顔の検出のための統合手順のフローチャートである。ステップＳ３０１では、属性統合部１０６は、物体の検出数を示す変数ｎの値を０に初期化する。ステップＳ３０２〜Ｓ３１０の処理が、連結階層特徴におけるそれぞれの領域ブロックについて行われる。ステップＳ３０３〜Ｓ３０９の処理が、それぞれの属性（本実施形態の場合は「歩行者」、「小さい顔」、「大きい顔」のそれぞれ）について行われる。
【００６１】
ステップＳ３０４では、属性統合部１０６は、ｉ（１≦ｉ≦Ｉ：Ｉは領域ブロックの数）番目の領域ブロックのｊ番目の属性の尤度スコアが所定値以上であるか否かを判断する。ここで、１番目の属性（ｊ＝１）は「歩行者」、２番目の属性（ｊ＝２）は「小さい顔」、３番目の属性（ｊ＝３）は「大きい顔」であるものとする。この判断の結果、ｉ番目の領域ブロックのｊ番目の属性の尤度スコアが所定値以上であれば、処理はステップＳ３０５に進む。一方、ｉ番目の領域ブロックのｊ番目の属性の尤度スコアが所定値未満であれば、ステップＳ３０９に進む。ｊ＝１〜３についてステップＳ３０３〜Ｓ３０９の処理を行った場合には、（ｉ＋１）番目の領域ブロックについてステップＳ３０４以降を行う。そしてｉ＝１〜ＩについてステップＳ３０２〜Ｓ３１０の処理を行った場合には、図９（Ａ）の処理は完了する。
【００６２】
ステップＳ３０５で属性統合部１０６は、ｉ番目の領域ブロックのｊ番目の属性の尤度スコアが、該領域ブロック、該領域ブロックに隣接する８個の領域ブロック、の９個の領域ブロックの全属性（主被写体を除く）の尤度スコアの中で最大か否かを判断する。この判断の結果、ｉ番目の領域ブロックのｊ番目の属性の尤度スコアが、この９個の領域ブロックの全属性（主被写体を除く）の尤度スコアの中で最大であれば、処理はステップＳ３０６に進む。一方、ｉ番目の領域ブロックのｊ番目の属性の尤度スコアが、この９個の領域ブロックの全属性（主被写体を除く）の尤度スコアの中で最大ではない場合には、処理はステップＳ３０９に進む。
【００６３】
ステップＳ３０６では、属性統合部１０６は、ｊ番目の属性の物体の基準点（ここでは物体の重心）を検出したと判定し、変数ｎの値を１つインクリメントする。ステップＳ３０７では、属性統合部１０６は、物体の基準点の位置と、ｉ番目の領域ブロックのｊ番目の属性の尤度スコアと、を関連づけて画像処理装置内の不図示のメモリに格納する。
【００６４】
ステップＳ３０８では、属性統合部１０６は、より詳細に物体の位置を推定するために、サブピクセル推定による位置補正を行う。ここでサブピクセル推定は非特許文献５のような方法を用いる。非特許文献５では物体の位置の周囲のスコアの値に基づいて位置補正を行う。
【００６５】
そして処理は、図９（Ｂ）のステップＳ３１１に進む。ステップＳ３１１〜Ｓ３１５の処理は図９（Ａ）のフローチャートに従った処理によって検出されたそれぞれの物体について行う。
【００６６】
ステップＳ３１２で属性統合部１０６は、図９（Ａ）のフローチャートに従った処理で検出されたそれぞれの物体のうち未選択の物体（ｋ番目の物体（ｋ＝１〜ｎ））を選択物体として選択する。そして属性統合部１０６は、選択物体の属性が「小さい顔」若しくは「大きい顔」であるか否かを判断する。この判断の結果、選択物体の属性が「小さい顔」若しくは「大きい顔」であれば、処理はステップＳ３１３に進み、選択物体の属性が「小さい顔」でも「大きい顔」でもない場合には、処理はステップＳ３１４に進む。
【００６７】
ステップＳ３１３では、属性統合部１０６は、サイズの異なる２種類の顔の尤度スコアを用いて下式のような重み付け和で顔のサイズを推定する。
【００６８】
【数５】
2019032773.tif 000007
【００６９】
ただしＬ小、Ｌ大はそれぞれ小サイズと大サイズの顔の尤度スコア、基準サイズ小、基準サイズ大は顔のサイズに関する所定の基準値である。
【００７０】
以上ステップＳ３１５までの処理により、サイズ別の顔の尤度、歩行者の尤度、背景領域の各カテゴリの尤度、のような各領域ブロックにバラバラに存在していた属性の情報が整理され、位置・サイズの同定された物体検出結果として統合される。なお本実施形態では歩行者と顔をそれぞれ独立に統合した。しかし例えば歩行者の尤度の高い領域ブロックの周辺に、小サイズの顔が存在する可能性が高いといった共起関係を用いることもできる。そのような派生形態として例えば以下のようなやり方が考えられる。（１）まず歩行者のスコアマップをぼかし、小サイズの顔のスコアマップに加算する。（２）得られたマップを新たに小サイズの顔のスコアマップとする。（３）これまでと同様の手順で属性統合の処理（ステップＳ３０１〜ステップＳ３１５）を行う。
【００７１】
また、建物を歩行者と誤って検出するのを防ぐことのできる属性統合の形態として例えば以下のようなやり方が考えられる。（１）歩行者のスコアマップから建物領域のスコアマップを差し引く。（２）得られたマップを新たに歩行者のスコアマップとする。（３）これまでと同様の手順で属性統合の処理（ステップＳ３０１〜ステップＳ３１５）を行う。
【００７２】
以上の属性統合部１０６の処理により得られた結果例を図６に統合結果６０６として示す。歩行者および顔の検出結果を破線の枠で示し、空領域、地面領域、建物領域、および主被写体領域と判定された領域ブロックにはそれぞれ記号Ｓ，Ｇ，Ｂ，Ｍを付して示している。
【００７３】
ステップＳ３１４では、結果出力部１０７は、検出した顔の位置に対する「推定した大きさの矩形枠」を出力する。歩行者を検出した場合は、該歩行者の位置に対する「所定サイズの矩形枠」を出力する。同様にステップＳ３１６では結果出力部１０７は、空領域、地面領域、および建物領域のそれぞれの領域ブロックに対するラベルを出力する。ステップＳ３１７では結果出力部１０７は、主被写体領域の領域ブロックに対するラベルを出力する。これらを最終の出力結果とする。図６に結果出力部１０７による最終出力結果の一例を最終出力結果６０７として示す。
【００７４】
ここで、物体の位置の補正や顔のサイズ推定のように本実施形態に示す属性情報統合方法をとることで、元の属性のスコアマップよりも高い解像度で最終出力結果６０７が得られていることに留意されたい。詳細な連結階層特徴や詳細な属性スコアマップを生成しようとすると、大きな演算コストがかかる。一方で本実施形態で示したような属性の統合方法であれば、低解像度の属性のスコアマップから比較的少ない演算コストで詳細な結果を得ることも可能である。この点は複数の属性を判定し、それらを統合して対象の認識を行うという本実施形態の特長の一つであるのでここで特に強調するものである。
【００７５】
＜第１の実施形態の変形例＞
第１の実施形態ではニューラルネットワークとしてＣＮＮを用いたが、使用可能なニューラルネットワークはＣＮＮに限らない。複数の階層からなり、中間結果をマップとして生成するニューラルネットワークおよびそれに類する手法であれば、いずれにも適用可能である。そのような手法として、例えば各層の畳込みフィルタを重み共有（Ｗｅｉｇｈｔ  Ｓｈａｒｅ）しない非ＣＮＮタイプのニューラルネットワークなどが考えられる。
【００７６】
またさらに別の例として属性判定部２０５としてＳＶＭでなく、ＣＮＮと同じ畳込み処理を採用した形態を用いることも考えられる。この派生の形態においては、属性判定部２０５の畳込み処理のパラメータと、前段のニューラルネットワーク１０２のパラメータを同時に誤差逆伝搬法で学習することも可能である。この場合、それぞれを独立に学習した場合よりも認識タスクの精度が向上することが期待できる（これはｅｎｄ−ｔｏ−ｅｎｄ学習と呼ばれ、非特許文献１等で広く公知であるので詳細を略する）。
【００７７】
また第１の実施形態では連結階層特徴を生成する際に特徴マップに対してアップサンプル処理を施したが、ここでさらに派生の形態として、非特許文献３で開示されているような逆畳込み（Ｄｅｃｏｎｖｏｌｕｔｉｏｎ）と呼ばれる方法を用いることも考えられる。形態の例を図１０に示す。逆畳込みフィルタ４０７ａ及び４０７ｂの処理により、特徴マップ４０３ｂ、４０３ｃからそれぞれ２倍、４倍の解像度の特徴マップを生成している。またこの逆畳込みフィルタ４０７ａ及び４０７ｂについても属性判定部２０５およびニューラルネットワーク１０２と一体的に誤差逆伝搬法で学習することができる。本派生形態であれば、単純なアップサンプルを用いた場合よりも認識タスクの精度が向上することが期待できる。またさらに別の形態として、属性統合部１０６についてもルールベースではなくＣＮＮと同じ畳込み処理を採用した形態を用いることも考えられる。このように、各モジュールにはさまざまな派生の形態が考えられ、特定の形態に限定されない。
【００７８】
［第２の実施形態］
本実施形態を含め、以下の各実施形態や各変形例では、第１の実施形態との差分について重点的に説明し、以下で特に触れない限りは第１の実施形態と同様であるものとする。本実施形態では、人物等の物体の姿勢変動にロバストな認識を行う形態について説明する。
【００７９】
非特許文献１のような従来手法では、さまざまなサイズや姿勢の物体に対して検出精度を向上させるために、物体候補領域（以降、関心領域）を設定することがある。しかし従来手法では、画像上に複数個の関心領域を設定し、関心領域ごとにニューラルネットワークの特徴量を集計するため、演算コストが大きい。また、物体の姿勢変動に対応するためにサイズや縦横のアスペクト比を様々に変えた関心領域を多数設定することもよく行われる。本実施形態では上記とは異なる方法で、演算コストの大きな処理を行うことなくサイズや姿勢の変動に対してロバストに物体の検出を行う形態の一つを示す。
【００８０】
本実施形態に係る画像処理装置の機能構成例について、図１１のブロック図を用いて説明する。図１１において図１に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。図１１の画像処理装置は、人物の検出に特化したものである。図１１に９０８ａ〜９０８ｈを付して例示するように、人物は人物領域の枠のサイズ・傾き・アスペクト比によって８グループの見えのパターンに分類しておく。具体的には図１１では例えば以下のようなパラメータの組み合わせで８つのグループを定義している。
【００８１】
グループ１：サイズ小，傾き０°，    アスペクト比２
グループ２：サイズ小，傾き＋４５°，アスペクト比２
グループ３：サイズ小，傾き０°，    アスペクト比１
グループ４：サイズ小，傾き−４５°，アスペクト比２
グループ５：サイズ大，傾き０°，    アスペクト比２
グループ６：サイズ大，傾き＋４５°，アスペクト比２
グループ７：サイズ大，傾き０°，    アスペクト比１
グループ８：サイズ大，傾き−４５°，アスペクト比２
本実施形態では、上記の８つのグループそれぞれを人物の８つの属性（人物属性）とする。人物属性判定部９０５は、各領域ブロックに８種類のいずれの人物が存在するのか、または人物が存在しないのかを判定する。人物属性判定部９０５ａ〜９０５ｈはそれぞれ、担当するグループの人物が入力されたらそれと判定できるようにあらかじめ学習しておく。学習の手順は下記のように行う。
【００８２】
（１）学習画像を用意し、予め画像中の人物に検出領域の枠を付与しておく。枠は位置・サイズ・傾きの３つのパラメータを持つ。（２）検出領域枠のサイズ・傾きによって人物の事例を８つのグループに分ける（非教師的な方法でクラスタリングしてもよいし、人手によってグループに分けてもよい）。（３）８つの属性判定器に、それぞれが担当するグループの人物データを正事例、人物以外の領域のデータを負事例として与え、連結階層特徴を説明変数として判別器を学習する。
【００８３】
図１２は人物の検出のための統合手順のフローチャートである。図１２のフローチャートは、図９のフローチャートにおいて検出するものを人物としたもので、ｊ番目の属性の代わりにｊ番目の人物属性としたものであり、処理は図９のフローチャートと同様である。つまり、ステップＳ４００〜Ｓ４０９の各ステップにおける処理は、上記の点を除き、図９のステップＳ３０１〜Ｓ３１０と同様である。また、ステップＳ４１０〜Ｓ４１２の各ステップにおける処理は、図９のステップＳ３１１，Ｓ３１４，Ｓ３１５と同様である。然るに図１２のフローチャートにおける各ステップの説明は省略する。
【００８４】
本実施形態の属性判定の例および結果出力例を図１３に示す。ここでは入力画像１２０１に対し、複数のサイズ・傾き・アスペクト比の検出領域枠の属性判定結果１２０２が得られる（尤度スコアの大きさを枠の色の濃さで示す）。これらの結果を属性統合部９０６が統合し、各領域ブロックについて最大尤度の候補枠（枠１２０３ａ、１２０３ｂ）を入力画像１２０１に重ねたものを出力結果１２０３として出力する。その結果、図１２に示すように人物の姿勢に適合した傾きとサイズの検出領域枠が出力される。
【００８５】
ここでは非特許文献１等とは異なり、物体の検出領域枠ごとに（都度の）特徴集計を行っていないことに留意されたい。また、事例をパターンの見えごとに８グループに分けている。これにより、属性の判定問題を容易にし、軽量な線形判別器でもパターンを判定できるようにしている点に留意されたい。
【００８６】
なお本実施形態では検出枠の統合時に最大尤度の枠のみを残したが、派生の形態として第１の実施形態で行ったように重み付け和を利用して、人物の詳細なサイズを推定してもよい。またさらにアスペクト比や傾きの詳細な値を推定してもよい。これは式で表せば下記のようになる。
【００８７】
【数６】
2019032773.tif 000008
【００８８】
ただしここでＬｉはｉ番目の属性の尤度スコア、アスペクト比とは枠の縦のサイズを横のサイズで割った値である。なおさらに派生の形態として、人物の属性を８属性でなく、サイズ＝｛大，中，小｝，傾き＝｛右，中，左｝，アスペクト比＝｛縦長，正方形，横長｝の各３種類にグループ分けし、９種の属性判定を行う形態も考えられる。
【００８９】
なおさらに別の派生の形態として、演算量の低減のために二段階の属性判定を行う工夫も考えられる。例えば認識時の手順として下記の例が考えられる。
（１）  第一の属性判定として３種類の人物サイズ＝｛大，中，小｝の判定を行う。
（２）  （１）で３種類いずれかの尤度スコアが高かった領域ブロックに対してのみ、サイズ・傾き・アスペクト比で８種類に分類した第二の属性判定を行う。
【００９０】
またさらに別の派生の形態として、グループ分けをせず、サイズ、傾き、アスペクト比それぞれの値を個別に回帰器で推定する形態も考えられる。ここに挙げた形態以外に判定対象の属性・属性判定の順序・統合の順序、は様々に考えられ、特定の形態に限定されない。
【００９１】
［第３の実施形態］
本実施形態は、カメラ情報の利用を中心とした形態であって、本実施形態の認識タスクは空の領域を判定することを目的とする。本実施形態に係る画像処理装置の機能構成例について、図１４のブロック図を用いて説明する。
【００９２】
本実施形態に係る画像処理装置は、カメラ情報入力部１３０８を有することを１つの特徴とする。また、別の一つの特徴は、属性判定部１３０５が、青空と雲の領域という、空に関しての詳細なサブカテゴリの領域についての尤度判定部１３０５ａ、１３０５ｂを含むことである。またさらに別の一つの特徴は、属性判定部１３０５が、水面、白壁のように、空と誤り易いカテゴリについての尤度判定部１３０５ｃ，１３０５ｄを含むことである。
【００９３】
このように直接の認識対象の属性（青空、雲）のみならず、認識タスクの手掛かりとなる間接的な対象の属性（水面、白壁）も属性判定部１３０５に含めることができる。これにより総合的にパターンの判別が行われ、認識タスクの精度が向上することが期待できる。
【００９４】
本実施形態に係る画像処理装置の動作について、図１５のフローチャートに従って説明する。ステップＳ５０１〜Ｓ５０４の各ステップの処理はそれぞれ、図３のステップＳ１〜Ｓ４と同様であるため、これらのステップに係る説明は省略する。また、ステップＳ５０５〜Ｓ５０８の各ステップにおける処理は何れも、領域ブロックごとに各属性の尤度を判定する処理のため処理であり、第１の実施形態で説明したとおりであるため、これらのステップに係る説明は省略する。
【００９５】
ステップＳ５０９では、カメラ情報入力部１３０８が、撮像時の水平線情報値をカメラ情報として入力する。ここでの水平線情報値とは、具体的には図１６（Ａ）に示すようなものである。カメラ情報入力部１３０８は重力センサを備え、ステップＳ５０９ａにおいて画像上の水平線の位置１５０１を推定する。さらにステップＳ５０９ｂにおいてカメラ情報入力部１３０８は、推定した水平線の位置１５０１から各領域ブロックが水平線の何ブロック上方あるいは下方にあるかの値を示す水平線情報値１５０２を生成する。
【００９６】
ステップＳ５１０ではＳＶＭ１３０６が青空、雲、水面および白壁の４種類の属性スコア、および水平線情報値１５０２、に基づき各領域ブロックごとに空か否かの最終的な判定を行う。ここでは上記の５種類のマップ（尤度判定部１３０５ａ〜尤度判定部１３０５ｄのそれぞれによる属性の属性スコアマップ１３１８、水平線情報値１５０２のマップ）を５次元の入力特徴量として、ＳＶＭ１３０６が各領域ブロックごとに空の尤度を算出する。このように水平線に関するカメラ情報を併せて用いることで、例えば画像下方において空を反射している水面を空と誤判別することを抑制することができる。
【００９７】
なお、空の尤度判定ができるよう事前に複数の学習画像データ１３０９、学習画像データに対応するカメラ情報１３１０、空か否かの教師値である各領域ブロックカテゴリの教師値１３１１、を与えてＳＶＭのパラメータを学習しておくものとする。
【００９８】
カメラ情報を用いるその他の派生の形態として、図１６（Ｂ）に示すように、カメラの合焦情報値１５０４を用いる形態も考えられる。これは画像中で焦点のあっている焦点面（図１６（Ｂ）に記号×で示す）を０とし、該焦点面から各領域ブロックの被写体がどれだけ後ろあるいは前にあるかを数量化したマップである。カメラの合焦情報はカメラ情報入力部１３０８が別途備える像面位相差ＡＦと呼ばれるような光学的機構から生成されるものとする。上記の合焦情報値１５０４を併用することで、例えば焦点面から後方に離れてボケている白い人工物を空と誤判定することなどを抑制することができる。
【００９９】
さらにカメラ情報を用いるその他の派生の形態として、図１６（Ｃ）に示すように、カメラの測光情報値１５０５を用いる方法も考えられる。これは画像の物理的な光量を表す数値であり、カメラ情報入力部１３０８が別途備えるカメラの測光センサの結果等から得ることができる。この測光情報値の一形態はＢｖ値と呼ばれるものであり、特許文献１等で公知であるため詳細は略する。測光情報値を併せて用いることで、ＲＧＢ画像のみを用いるのに比べて、白い壁と曇り空の誤判別等を抑制することができる。
【０１００】
また別の派生の形態として、連結階層特徴１０３を生成する際に、カメラ情報のマップを連結して用いることも考えられる。この場合の画像処理装置の機能構成例を図１７に示す。図１７に示す如く、３種類のカメラ情報（３次元）である「水平線情報値のマップ」、「合焦情報値のマップ」、「測光情報値のマップ」は連結階層特徴の生成時に連結され、尤度判定部１３０５ａ〜１３０５ｄに送られる。尤度判定部１３０５ａ〜１３０５ｄの各判別器は連結階層特徴の特徴量と３次元のカメラ情報を特徴量として用いてそれぞれ属性の判別を行う。尤度判定部１３０５ａ〜１３０５ｄは、事前に複数の学習画像データ１３０９、学習画像データに対応するカメラ情報１３１０、各領域ブロックのカテゴリの教師値１３１１、を用いて各属性の尤度が判定できるように判別器のパラメータを学習してあるものとする。なお図１４のようにカメラ情報を属性統合の際に用いる形態と、図１７のように属性判定の際に用いる形態と、いずれがより好適かは学習データの量と質等に依って変わる。
【０１０１】
以上、本実施形態ではカメラ情報の追加的な利用の形態について説明した。また本実施形態では、属性判定の対象として詳細なサブカテゴリ、および間接的な属性を用いる効果についても説明した。サブカテゴリや間接的な属性の使用は、他の認識タスクにも適用できる。例えば人物検出時に対象を性別のサブカテゴリで分けて属性判定する、格好の違い（帽子やメガネの有無等）のサブカテゴリで分けて判定する、等の形態なども考えられる。また、人物検出タスクにおいて、誤判別を防ぐために犬の属性判定を設ける、といった形態も考えられる。
【０１０２】
なお、サブカテゴリは、物体の奥行き回転、物体の面内回転、物体の姿勢、物体の形状、物体の材質、物体の関心領域の形状、物体の関心領域のサイズ、物体の関心領域のアスペクト比、のうち少なくとも一つに関して区別されたサブカテゴリである。
【０１０３】
［第４の実施形態］
本実施形態では、多種の認識タスクを統合的に処理する形態について説明する。本実施形態に係る画像処理装置が行う認識タスクは領域判定、画像シーン分類、審美性判定、の３種類である。
【０１０４】
本実施形態に係る画像処理装置の機能構成例を図１８に示す。また、本実施形態に係る画像処理装置の動作について、図１９のフローチャートに従って説明する。ステップＳ６０１〜Ｓ６０３はこれまでの実施形態と同様の処理を行って連結階層特徴を生成する処理である。ステップＳ６０４は属性判定部１７０８が各領域ブロック（ｘ，ｙ）ごとにシーン属性の判定を行う処理である。ここではシーン属性として屋内シーン、人物ポートレートシーン、スポーツシーン、等のＮ個のシーン分類を想定している。属性判定部１７０８は、連結階層特徴Ｆ（ｘ，ｙ）を入力特徴とし、当該画像がＮシーンのいずれに属する画像であるかを領域ブロック（ｘ，ｙ）ごとに判定する。判定には一般的な決定木を分類器として用いる。階層特徴Ｆ（ｘ，ｙ）は領域ブロックｘ，ｙについての特徴であるが、ニューラルネットワークの高層の特徴を含んでいる。高層の特徴には広い範囲の画像パターンを集約した情報が含まれるため、このような画像シーン分類判定も可能であることに留意されたい。
【０１０５】
次にステップＳ６０５では属性統合部１７０９が各領域ブロックのシーン属性の結果を統合して画像全体のシーン判定を行う。ここでは判別器として線形ＳＶＭを用いる。各領域ブロックのシーン属性の尤度スコアを連結して特徴量とし、線形ＳＶＭで入力画像をいずれのシーンに分類するかの学習・判定を行う。
【０１０６】
なおシーン属性判定時のシーンのカテゴリと属性統合時のカテゴリが同じである必要はない。例えばシーン属性の判定において「サッカー」「野球」「山岳」「海辺」のように詳細な分類の判定を行い、シーン属性統合時にはより上位の「スポーツシーン」「自然風景シーン」等の分類を判定するような形態も考えられる。目的の認識タスクの手掛かりになるものであれば属性のカテゴリが様々な形態を取り得ることはこれまでの実施形態と共通である。
【０１０７】
次にステップＳ６０６で属性判定部１７０５が属性スコアマップを求める。これは第１の実施形態等で空領域に対して行った方法と同じであるため説明を省く。次にステップＳ６０７では属性統合部１７０６が前段で求めた画像のシーンの尤度を考慮して、各領域ブロックの種類を判定する。ここで具体的には下式のような式を用いる。
【０１０８】
【数７】
2019032773.tif 000009
【０１０９】
ここでＰ（ｃ｜ｆ）はある領域ブロックの領域属性がｃである事後確率、ｆは入力特徴、Ｐ（ｃ｜ｓ）はシーンｓにおいて領域属性ｃが出現する事前分布、Ｐ（ｓ）はステップＳ６０５で求めたシーン尤度を確率化した値、である。これにより、例えば屋内シーンであれば海領域の出現は少ないといった、事例の事前分布を考慮した領域の種類の判定が可能になる。
【０１１０】
次にステップＳ６０８では属性判定部１７１０が審美性の属性を領域ブロック（ｘ，ｙ）ごとに判定する。これは非特許文献６などに公知なようにあらかじめ画像と画像の審美性評価値を対応させた学習データを用意しておき、連結階層特徴Ｆ（ｘ，ｙ）を入力特徴とし、ロジスティック回帰等の回帰器によって審美性スコア値を学習・推定するものである。またこの際に、属性判定部１７１０が属性統合部１７０９からシーンの尤度を受け取り、回帰器の重み辞書をシーンに応じて変更してもよい。これは非特許文献６で公知の方法である。
【０１１１】
次にステップＳ６０９では統合部１７１１が審美性の属性を統合して審美性判定の結果のスカラ値を得る。統合部１７１１としてここでは複数層からなるＣＮＮを用いる。当該ＣＮＮは各領域ブロック（ｘ，ｙ）の審美性スコアマップを入力とし、画像全体の審美性評価値を出力層が正しく出力できるよう、重みパラメータを回帰学習したネットワークであるとする。このようなＣＮＮを用いた回帰学習の方法については、非特許文献１等に公知のためここでは詳細を省く。上記以外の統合部１７１１の他の形態として各領域ブロックのアンサンブル平均を用いる形態や線形判別器を用いる形態も考えられる。これらは計算量と精度のバランスに応じて選択することができる。最後にステップＳ６１０では結果出力部１７１２が領域判定結果、シーン判定結果、審美性判定結果、を出力して動作を終了する。
【０１１２】
以上のように、複数の認識タスクを統合的に実行する方法について述べた。本画像処理装置においてもっとも演算コストのかかる処理はＣＮＮの演算処理である。本形態はこのＣＮＮの演算を一度しか行わない。代わりに後段の軽量な属性判定処理でもって複数の属性情報を推定し、同情報を属性統合部で相互作用させて統合することで、精度の高い認識結果を得ている。このような方法は本実施形態に係る画像処理装置の特長の一つである。
【０１１３】
ここで派生の形態として属性統合部の一部あるいは全部をニューラルネットワークの全結合層と呼ばれるモジュールで代替するような形態も考えられる。その場合、第１の実施形態でも述べたように各モジュールのパラメータは誤差逆伝搬等の方法で統一的に最適学習することができる。
【０１１４】
またさらに派生の形態として図２０に示すような形態も考えられる。本派生形態は図１８の構成に対して更に辞書保持部１７０７をさらに備える。本派生形態の属性統合部１７０９は、シーン種を判定した後に、シーンの尤度を属性判定部１７０５に送る。属性判定部１７０５はシーンの尤度の情報を受け取り、尤度が上位だったシーンで特に出現頻度の高い領域カテゴリのみを属性判定の対象とする。属性判定部１７０５は辞書保持部１７０７から属性判定対象の辞書を読み出して属性判定を行う。このように工夫してシーン認識の結果を利用して属性判定を行えば、演算量の削減とノイズに対するロバスト性の向上が期待できる。
【０１１５】
またさらに他の派生の形態として、シーン分類については属性の判定処理を行わず、連結階層特徴を元に画像シーン分類手法で代表的なＢａｇ  ｏｆ  Ｗｏｒｄｓ手法（非特許文献７）などでシーン分類を行う方法も考えられる。
【０１１６】
またさらに他の派生の形態として、属性判定部１７０５が「人」「芝生」といった領域属性の判定を行い、領域属性のスコアマップ１７１４を生成する。これを属性統合部１７０９が受け取って「スポーツシーン」か否かのシーン判定に用いる、といった形態も考えられる。このように属性判定の結果は認識タスク間で共通して利用することができ、画像処理装置の全体の処理量を軽減できる可能性がある。さらに他の派生の形態としては同じく図２０中に示すようにユーザ指示部１７１３をさらに備える形態も考えられる。ユーザ指示部１７１３は領域判定・シーン認識・審美性判定の複数の認識タスクの結果のうち、いずれを出力するのかの選択指示をユーザから受け付けるものである。マルチタスクの認識を行う場合、常に全ての結果を出すと結果が見難くなる。そこでこのような手法でユーザの希望や撮影モードに応じて出力結果を変更することができる。
【０１１７】
なお、上記の各実施形態や各変形例の一部若しくは全部を適宜組み合わせて使用しても構わないし、上記の各実施形態や各変形例の一部若しくは全部を選択的に使用しても構わない。
【０１１８】
このように、上記の各実施形態や変形例によれば、ニューラルネットワークの階層的な特徴量と軽量な判別器で複数の属性を判定し、それらを統合することで認識処理を実行する。これにより従来のような演算コストの大きな処理を行うことなくサイズや姿勢にロバストな物体検出を高速に行うことができる。またさらに別の形態においては、物体の検出、領域のカテゴリ判定、画像シーンのカテゴリ分類、画像情報の審美性の判定などを同時に行うことができる。またさらに別の形態においては、サイズ、アスペクト比、もしくは傾きなど、様々に見えの異なる物体を高速に検出することができる。
【０１１９】
［第５の実施形態］
図１，２，１１，１４，１７，１８，２０に示した各機能部はハードウェアで実装しても良いが、ソフトウェア（コンピュータプログラム）で実装しても良い。後者の場合、このコンピュータプログラムを実行可能なコンピュータ装置は、上記の各実施形態や変形例において説明した画像処理装置に適用可能である。上記の各実施形態や変形例において説明した画像処理装置に適用可能なコンピュータ装置のハードウェア構成例について、図２１のブロック図を用いて説明する。
【０１２０】
ＣＰＵ２１０１は、ＲＡＭ２１０２やＲＯＭ２１０３に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりＣＰＵ２１０１は、コンピュータ装置全体の動作制御を行うと共に、上記の画像処理装置が行うものとして上述した各処理を実行若しくは制御する。
【０１２１】
ＲＡＭ２１０２は、ＲＯＭ２１０３や外部記憶装置２１０６からロードされたコンピュータプログラムやデータ、Ｉ／Ｆ２１０７を介して外部から受信したデータ、を格納するためのエリアを有する。更にＲＡＭ２１０２は、ＣＰＵ２１０１が各種の処理を実行する際に用いるワークエリアを有する。このようにＲＡＭ２１０２は、各種のエリアを適宜提供することができる。ＲＯＭ２１０３には、書換不要のコンピュータプログラムやデータが格納されている。
【０１２２】
操作部２１０４は、キーボードやマウスなどのユーザインターフェースにより構成されており、ユーザが操作することで各種の指示をＣＰＵ２１０１に対して入力することができる。
【０１２３】
表示部２１０５は、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ２１０１による処理結果を画像や文字などでもって表示することができる。なお、表示部２１０５は、プロジェクタ装置等、画像や文字を投影面に投影する投影装置であっても良い。
【０１２４】
外部記憶装置２１０６は、ハードディスクドライブ装置に代表される大容量情報記憶装置である。外部記憶装置２１０６には、ＯＳ（オペレーティングシステム）や、上記の画像処理装置が行うものとして上述した各処理をＣＰＵ２１０１に実行若しくは制御させるためのコンピュータプログラムやデータが保存されている。外部記憶装置２１０６に保存されているコンピュータプログラムには、図１，２，１１，１４，１７，１８，２０に示した各機能部の機能をＣＰＵ２１０１に実現させるためのコンピュータプログラムが含まれている。また、外部記憶装置２１０６に保存されているデータには、上記の説明において既知の情報として説明したものが含まれている。外部記憶装置２１０６に保存されているコンピュータプログラムやデータは、ＣＰＵ２１０１による制御に従って適宜ＲＡＭ２１０２にロードされ、ＣＰＵ２１０１による処理対象となる。
【０１２５】
Ｉ／Ｆ２１０７は、外部の機器とのデータ通信を行うためのものであり、例えば、Ｉ／Ｆ２１０７に撮像装置を接続し、撮像装置から認識対象となる撮像画像を入力するようにしても良い。
【０１２６】
上記のＣＰＵ２１０１、ＲＡＭ２１０２、ＲＯＭ２１０３、操作部２１０４、表示部２１０５、外部記憶装置２１０６、Ｉ／Ｆ２１０７は何れもバス２１０８に接続されている。
【０１２７】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１２８】
１０１：画像入力部  １０２：ニューラルネットワーク  １０４：連結特徴生成部  ２０５：属性判定部  １０６：属性統合部  １０７：結果出力部
【図１】
2019032773.tif 000010
【図２】
2019032773.tif 000011
【図３】
2019032773.tif 000012
【図４】
2019032773.tif 000013
【図５】
2019032773.tif 000014
【図６】
2019032773.tif 000015
【図７】
2019032773.tif 000016
【図８】
2019032773.tif 000017
【図９】
2019032773.tif 000018
【図１０】
2019032773.tif 000019
【図１１】
2019032773.tif 000020
【図１２】
2019032773.tif 000021
【図１３】
2019032773.tif 000022
【図１４】
2019032773.tif 000023
【図１５】
2019032773.tif 000024
【図１６】
2019032773.tif 000025
【図１７】
2019032773.tif 000026
【図１８】
2019032773.tif 000027
【図１９】
2019032773.tif 000028
【図２０】
2019032773.tif 000029
【図２１】
2019032773.tif 000030