(57)【特許請求の範囲】
【請求項１】
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像のそれぞれにおいて当該検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定する判定部と、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記判定部による前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを学習し、当該学習した第１のパラメータを記憶部に保存する第１の学習部と、
を備える画像処理装置。
【請求項２】
前記第１の学習部は、
前記度合いが所定値以上である前記判定結果の組における前記複数の正解領域のそれぞれと、前記検出対象における所定の基準領域との差分を前記位置ずれ量として、前記第１のパラメータを学習する
請求項１に記載の画像処理装置。
【請求項３】
前記第１の学習部は、前記複数の正解領域のいずれか一方、又は、前記複数の正解領域の中間の位置を前記基準領域とする
請求項２に記載の画像処理装置。
【請求項４】
前記判定結果の組及び前記特徴マップに基づいて、前記候補領域に対する前記検出対象の度合いを示すスコアを算出する際に用いる第２のパラメータを学習し、当該学習した第２のパラメータを前記記憶部に保存する第２の学習部と、
前記判定結果の組及び前記特徴マップに基づいて、前記候補領域の位置及び形状を前記判定に用いられた正解領域に近付ける回帰を行う際に用いる第３のパラメータを学習し、当該学習した第３のパラメータを前記記憶部に保存する第３の学習部と、
をさらに備える
請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記判定結果の組に基づいて、前記複数の画像のそれぞれから前記複数の特徴マップを抽出する際に用いる第４のパラメータを学習し、当該学習した第４のパラメータを前記記憶部に保存する第４の学習部をさらに備え、
前記第１の学習部は、
前記記憶部に保存された前記第４のパラメータを用いて前記複数の画像のそれぞれから抽出された前記複数の特徴マップを用いて、前記第１のパラメータを学習する
請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記複数の特徴マップを融合し、かつ、前記候補領域を識別する際に用いる第５のパラメータを学習し、当該学習した第５のパラメータを前記記憶部に保存する第５の学習部をさらに備える
請求項５に記載の画像処理装置。
【請求項７】
前記複数のモーダルにより撮影された複数の入力画像から前記記憶部に保存された前記第４のパラメータを用いて抽出された複数の特徴マップと、前記記憶部に保存された前記第１のパラメータとを用いて、前記入力画像間の前記検出対象における位置ずれ量を予測して、当該予測した位置ずれ量に基づいて前記複数の入力画像のそれぞれから前記検出対象を含む候補領域の組を選択する候補領域選択部をさらに備える
請求項５又は６のいずれか１項に記載の画像処理装置。
【請求項８】
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像と、前記複数の画像のそれぞれにおいて前記検出対象が含まれる複数の正解領域と当該検出対象に付されるラベルとを対応付けた正解ラベルと、を記憶する第１の記憶部と、
第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを記憶する第２の記憶部と、
前記正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定する判定部と、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記判定部による前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、前記第１のパラメータを学習し、当該学習した第１のパラメータを前記第２の記憶部に保存する第１の学習部と、
を備える画像処理システム。
【請求項９】
画像処理装置が、
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像のそれぞれにおいて当該検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定し、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを学習し、
前記学習した第１のパラメータを記憶装置に保存する
画像処理方法。
【請求項１０】
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像のそれぞれにおいて当該検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定する処理と、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを学習する処理と、
前記学習した第１のパラメータを記憶装置に保存する処理と、
をコンピュータに実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、システム、方法及びプログラムに関し、特にマルチモーダル画像を入力とする物体検出方式における画像処理装置、システム、方法及びプログラムに関する。
【背景技術】
【０００２】
近年、画像中に写った複数の検出対象の物体（但し、検出対象は非物体でもよい。）について、領域の検出と属性の分類とを行い、何がどの位置に写っているかを出力する物体検出手法の技術の研究が進められている。例えば、特許文献１には、畳み込みニューラルネットワークを用いたFaster R-CNN（Regions with CNN(Convolutional Neural Network) features）という技術が開示されている。Faster R-CNNは、多種の物体を扱える検出手法であり、検出すべき領域の候補（以下、検出候補領域とする。）を算出したのち、それらを識別して出力を得る構造をもつ。具体的には、特許文献１にかかるシステムは、入力画像を受け取ると、まず、畳み込みニューラルネットワークにより特徴マップを抽出する。そして、当該システムは、抽出された特徴マップをもとに、Region Proposal Network（以下、RPNと呼ぶ。）により検出候補領域を算出する。その後、当該システムは、算出された検出候補領域と、前記特徴マップをもとに、各検出候補領域の識別を行う。【０００３】
ところで、物体検出において、例えば可視光の画像だけを用いると、夜間など照明条件が良くない場合には物体検出が困難になる。そこで、可視光に赤外光や距離画像など他のモーダルを組み合わせたマルチモーダルの画像を用いて物体検出を行うことで、より多様な状況で物体検出の性能（精度）を維持又は向上させることができる。ここで、非特許文献１は、上記のFaster R-CNNをマルチモーダル画像に適用した例である。非特許文献１での入力画像は、位置ずれのないように取得された可視画像と遠赤外画像のデータセットである。非特許文献１では、各モーダルの画像から特徴マップを算出する過程の途中で、マップ内の同じ位置の画素ごとの重みつき和によりモーダル融合を行っている。RPNの動作は単一モーダルのときと同様で、入力の特徴マップ（モーダル融合前後どちらも可能）から、検出対象らしさのスコアと、既定の矩形領域を回帰で改善したモーダル間で共通の領域がそれぞれ出力される。【０００４】
尚、物体検出や画像処理に関連する技術としては、例えば、以下の文献が挙げられる。特許文献２には、複数の撮像部で個々に生成された撮像画の画像データを用いて、個々に生成された撮像画よりも性能を向上させた撮像画の画像データを生成する技術が開示されている。また、特許文献３には、画像内の複数の領域から特徴量を抽出して特徴マップを生成する技術が開示されている。【０００５】
また、特許文献４には、マルチモーダル画像からターゲット領域を特定するために合成画像を生成する画像処理システムに関する技術が開示されている。特許文献４にかかる画像処理システムは、まず、組織標本を所定のスライス間隔でスライスした複数の断面画像を、複数の染色ごとに生成する。そして、当該画像処理システムは、異なる染色の断面画像群について、対応する断面位置ごとに画像を合成する。【０００６】
また、特許文献５には、画像中の被写体のカテゴリー及びその領域を認識するための画像認識装置に関する技術が開示されている。特許文献５にかかる画像認識装置は、入力画像を複数の局所領域に分割し、検出物体に関して予め学習しておいた判別基準を用いて、局所領域ごとに被写体のカテゴリーを判別する。また、特許文献６には、撮像画像から認識された物体の任意の位置における他の物体の重なりを検出する技術が開示されている。【０００７】
また、非特許文献２及び３には、マルチモーダル画像からより視認性の高い画像を生成する技術が開示されている。また、非特許文献４には、マルチモーダル画像の相関スコアマップに関する技術が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】米国特許出願公開第２０１７／０２０６４３１号明細書
【特許文献２】国際公開２０１７／２０８５３６号
【特許文献３】特開２０１７−１５７１３８号公報
【特許文献４】特開２０１７−０６８３０８号公報
【特許文献５】特開２０１６−０１８５３８号公報
【特許文献６】特開２００９−０７０３１４号公報
【非特許文献】
【０００９】
【非特許文献１】Jingjing Liu, Shaoting Zhang, Shu Wang, Dimitris N. Metaxas. “Multispectral Deep Neural Networks for Pedestrian Detection.” In Proceedings of the British Machine Vision Conference, 2016.
【非特許文献２】Shibata, Takashi, Masayuki Tanaka, and Masatoshi Okutomi. “Misalignment-Robust Joint Filter for Cross-Modal Image Pairs.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2017.
【非特許文献３】Shibata, Takashi, Masayuki Tanaka, and Masatoshi Okutomi. "Unified image fusion based on application-adaptive importance measure." Image Processing (ICIP), 2015 IEEE International Conference on. IEEE, 2015.
【非特許文献４】S. Kim, D. Min, B. Ham, S. Ryu, M. N. Do, and K. Sohn. “Dasc: Dense adaptive self-correlation descriptor for multi-modal and multi-spectral correspondence.” In Proc. of IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), 2015.
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ここで、非特許文献１にかかる技術には、同一の検出対象に対して異なる複数のモーダルにより撮影された画像の組から当該検出対象を画像認識する際の認識精度が不十分であるという問題点がある。【００１１】
その理由は、まず、一般の撮影装置ではモーダル間でカメラの光軸にずれがあり、画像処理によって事前に光軸のずれ（視差）を補正することのできないため、視差によるモーダル間の位置ずれが生じるためである。そして、非特許文献１にかかる技術では、入力するマルチモーダル画像についてモーダル間に位置ずれがないことを前提としているためである。また、同一のカメラにより複数のモーダルを切り替えて複数の画像が撮影された場合でも、検出対象又はカメラの移動に伴い、やはりモーダル間の位置ずれが生じる。尚、特許文献１から６並びに非特許文献２から４にかかる技術も上述した問題点を解決するものではない。【００１２】
本開示は、このような問題点を解決するためになされたものであり、同一の検出対象に対して異なる複数のモーダルにより撮影された画像の組から当該検出対象を画像認識する際の認識精度を向上させるための画像処理装置、システム、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本開示の第１の態様にかかる画像処理装置は、
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像のそれぞれにおいて当該検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定する判定手段と、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記判定手段による前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを学習し、当該学習した第１のパラメータを記憶手段に保存する第１の学習手段と、
を備える。【００１４】
本開示の第２の態様にかかる画像処理システムは、
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像と、前記複数の画像のそれぞれにおいて前記検出対象が含まれる複数の正解領域と当該検出対象に付されるラベルとを対応付けた正解ラベルと、を記憶する第１の記憶手段と、
第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを記憶する第２の記憶手段と、
前記正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定する判定手段と、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記判定手段による前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、前記第１のパラメータを学習し、当該学習した第１のパラメータを前記第２の記憶手段に保存する第１の学習手段と、
を備える。【００１５】
本開示の第３の態様にかかる画像処理方法は、
画像処理装置が、
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像のそれぞれにおいて当該検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定し、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを学習し、
前記学習した第１のパラメータを記憶装置に保存する。【００１６】
本開示の第４の態様にかかる画像処理プログラムは、
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像のそれぞれにおいて当該検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定する処理と、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを学習する処理と、
前記学習した第１のパラメータを記憶装置に保存する処理と、
をコンピュータに実行させる。
【発明の効果】
【００１７】
本開示により、同一の検出対象に対して異なる複数のモーダルにより撮影された画像の組から当該検出対象を画像認識する際の認識精度を向上させるための画像処理装置、システム、方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００１８】
【図１】本実施の形態１にかかる画像処理装置の構成を示す機能ブロック図である。
【図２】本実施の形態１にかかる画像処理方法の流れを説明するためのフローチャートである。
【図３】本実施の形態１にかかる画像処理装置のハードウェア構成を示すブロック図である。
【図４】本実施の形態２にかかる画像処理システムの構成を示すブロック図である。
【図５】本実施の形態２にかかる各学習ブロックの内部構成を示すブロック図である。
【図６】本実施の形態２にかかる学習処理の流れを説明するためのフローチャートである。
【図７】本実施の形態３にかかる画像処理システムの構成を示すブロック図である。
【図８】本実施の形態３にかかる画像認識処理ブロックの内部構成を示すブロック図である。
【図９】本実施の形態３にかかる画像認識処理を含む物体検出処理の流れを説明するためのフローチャートである。
【図１０】本実施の形態３にかかる物体検出の概念を説明する図である。
【発明を実施するための形態】
【００１９】
以下では、本開示の実施の形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。
【００２０】
＜実施の形態１＞
図１は、本実施の形態１にかかる画像処理装置１の構成を示す機能ブロック図である。画像処理装置１は、複数のモーダルにより撮影された画像の組に対する画像処理を行うコンピュータである。尚、画像処理装置１は、２台以上の情報処理装置により構成されていてもよい。
【００２１】
ここで、複数のモーダルにより撮影された画像の組とは、特定の検出対象に対して異なる複数のモーダルにより撮影された画像の組である。ここで、本明細書における「モーダル」とは、画像の様式であり、例えば、可視光や遠赤外光等による撮影装置の撮影モードを示す。そのため、あるモーダルにより撮影された画像は、ある撮影モードにより撮影された撮影画像のデータを示す。また、複数のモーダルにより撮影された画像の組は、マルチモーダル画像と呼ぶこともでき、また、以降、「複数のモーダルの画像」又は、単に「複数の画像」と呼ぶ場合もある。尚、検出対象とは、撮影画像内に映る物体であり、画像認識により検出すべき対象物である。但し、検出対象には、物体に限らず、背景等の非物体を含めてもよい。
【００２２】
画像処理装置１は、判定部１１と、学習部１２と、記憶部１３とを備える。判定部１１は、正解ラベルを用いて、複数のモーダルの画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、複数の画像ごとに対応する正解領域を含む度合いを判定する判定手段である。ここで、「正解ラベル」は、複数のモーダルの画像のそれぞれにおいて共通の検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた情報である。また、「ラベル」とは、検出対象の種別を示す情報であり、クラス等と呼ぶこともできる。
【００２３】
学習部１２は、複数の画像の間における特定の検出対象の位置ずれ量を予測する際に用いるパラメータ１４を学習し、当該学習したパラメータ１４を記憶部１３に保存する第１の学習手段である。ここで、学習部１２は、複数のモーダルの画像のそれぞれから抽出された複数の特徴マップと、判定部１１による複数の画像ごとの判定結果の組と、正解ラベルとに基づいて、学習を行う。また、「位置ずれ量」とは、第１のモーダルにより撮影された第１の画像に含まれる検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる検出対象の位置との差分である。また、パラメータ１４は、上記位置ずれ量を予測するモデルに用いられる設定値である。そして、「学習」とは機械学習を示す。すなわち、学習部１２は、複数の特徴マップと、判定結果の組と、正解ラベルとに基づいて、パラメータ１４を設定した当該モデルにより求められる値が正解ラベルに基づく目標値に近付くように、パラメータ１４を調整する。尚、パラメータ１４は、当該モデルにおける複数のパラメータ値の集合であってもよい。
【００２４】
記憶部１３は、記憶装置により実現され、パラメータ１４を記憶するための記憶領域である。
【００２５】
図２は、本実施の形態１にかかる画像処理方法の流れを説明するためのフローチャートである。まず、判定部１１は、正解ラベルを用いて、複数のモーダルの画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、複数の画像ごとに対応する正解領域を含む度合いを判定する（Ｓ１１）。次に、学習部１２は、複数の特徴マップと、ステップＳ１１における判定結果の組と、正解ラベルとに基づいて、複数の画像の間における特定の検出対象の位置ずれ量を予測する際に用いるパラメータ１４を学習する（Ｓ１２）。そして、学習部１２は、ステップＳ１２において学習したパラメータ１４を記憶部１３に保存する（Ｓ１３）。
【００２６】
図３は、本実施の形態１にかかる画像処理装置１のハードウェア構成を示すブロック図である。画像処理装置１は、ハードウェア構成として、少なくとも記憶装置１０１と、メモリ１０２と、プロセッサ１０３とを備える。記憶装置１０１は、上述した記憶部１３に相当し、例えば、ハードディスク、フラッシュメモリ等の不揮発性記憶装置である。記憶装置１０１は、少なくともプログラム１０１１と、パラメータ１０１２とを記憶する。プログラム１０１１は、本実施の形態にかかる上述した画像処理が少なくとも実装されたコンピュータプログラムである。パラメータ１０１２は、上述したパラメータ１４に相当する。メモリ１０２は、ＲＡＭ（Random Access Memory）等の揮発性記憶装置であり、プロセッサ１０３の動作時に一時的に情報を保持するための記憶領域である。プロセッサ１０３は、ＣＰＵ（Central Processing Unit）等の制御回路であり、画像処理装置１の各構成を制御する。そして、プロセッサ１０３は、記憶装置１０１からプログラム１０１１をメモリ１０２へ読み込み、プログラム１０１１を実行する。これにより、画像処理装置１は、上述した判定部１１及び学習部１２の機能を実現する。
【００２７】
ここで、一般には、光軸のずれ（視差）による画像間の位置ずれは、各点に対する位置ずれの大きさが写っている対象と受光面との距離に依存する。そのため、２次元の画像としての大域的な変換によって完全に補正することはできない。特に、カメラ間の距離に比べて視差が大きい近距離の物体に対しては角度の違いや別の物体による遮蔽のため見えの違いが発生する。
【００２８】
そこで、本実施の形態により学習したパラメータを用いたモーダル間の位置ずれの予測モデルにより、同一の検出対象に対して異なる複数のモーダルにより撮影された画像の組の位置ずれを精度よく予測することができる。そして、画像の組から選択された検出候補領域に対応する特徴マップについての識別過程において、予測した位置ずれの分をずらすことができる。これにより位置ずれに関わらず各モーダルからの特徴マップを空間的に正しく融合することができ、位置ずれによる検出性能の低下を防ぐことができる。よって、予測した位置ずれを加味することで、当該画像の組からの検出対象を画像認識する際の認識精度を向上させることができる。
【００２９】
＜実施の形態２＞
本実施の形態２は、上述した実施の形態１の一実施例である。図４は、本実施の形態２にかかる画像処理システム１０００の構成を示すブロック図である。画像処理システム１０００は、マルチモーダル画像から特定の検出対象の検出を行うための画像認識処理に用いられる各種パラメータを学習するための情報システムである。画像処理システム１０００は、上述した画像処理装置１に機能を追加及び具体化したものであってもよい。また、画像処理システム１０００は、複数台のコンピュータ装置により構成されて、後述する各機能ブロックを実現するものであってもよい。
【００３０】
画像処理システム１０００は、記憶装置１００と、記憶装置２００と、特徴マップ抽出部学習ブロック３１０と、領域候補選択部学習ブロック３２０と、モーダル融合識別部学習ブロック３３０とを少なくとも備える。また、領域候補選択部学習ブロック３２０は、スコア算出部学習ブロック３２１、矩形回帰部学習ブロック３２２及び位置ずれ予測部学習ブロック３２３を含む。
【００３１】
ここで、画像処理システム１０００を構成する少なくとも１つのコンピュータは、プロセッサ（不図示）がプログラムをメモリ（不図示）に読み込み、実行する。これにより、画像処理システム１０００は、当該プログラムが実行されることにより、特徴マップ抽出部学習ブロック３１０と、領域候補選択部学習ブロック３２０と、モーダル融合識別部学習ブロック３３０を実現することができる。ここで、当該プログラムは、本実施の形態にかかる後述の学習処理が実装されたコンピュータプログラムである。例えば、当該プログラムは、上述したプログラム１０１１に改良を加えたものである。また、当該プログラムは、複数のプログラムモジュールに分割されたものであってもよく、各プログラムモジュールが１又は複数のコンピュータにより実行されるものであってもよい。
【００３２】
記憶装置１００は、第１の記憶手段の一例であり、例えば、ハードディスク、フラッシュメモリ等の不揮発性記憶装置である。記憶装置１００は、学習用データ１１０を記憶する。学習用データ１１０は、画像処理システム１０００における機械学習に用いる入力データである。学習用データ１１０は、マルチモーダル画像１２０と正解ラベル１３０との組合せを、複数含むデータの集合である。つまり、マルチモーダル画像１２０と正解ラベル１３０とは対応付けられているものとする。
【００３３】
マルチモーダル画像１２０は、複数のモーダルにより撮影された画像群の集まりである。例えば、モーダルが２つの場合、マルチモーダル画像１２０は、モーダルＡ画像１２１及びモーダルＢ画像１２２の組を含み、モーダルＡ画像１２１及びモーダルＢ画像１２２は、近い時刻に同一の対象を異なる複数のモーダルで撮影した撮影画像の組である。ここで、モーダルの種類は例えば可視光や遠赤外光などであるが、これら以外であっても良い。例えば、モーダルＡ画像１２１は、モーダルＡ（可視光）の撮影モードにより撮影が可能なカメラＡにより撮影された画像である。また、モーダルＢ画像１２２は、モーダルＢ（遠赤外光）の撮影モードにより撮影が可能なカメラＢにより撮影された画像である。そのため、マルチモーダル画像１２０に含まれる複数のモーダルの画像のそれぞれは、複数のモーダルのそれぞれに対応する複数のカメラにより同時刻又は数ミリ秒以内の差で撮影されたものであってもよい。この場合、カメラＡとカメラＢの設置位置の違いがあることから、両カメラにより概ね同時刻に同一の対象を撮影したとしても、異なる視野から撮影されることとなる。そのため、両カメラによる撮影された複数のモーダルの画像の間で同一の対象の表示位置について位置ずれが生じることとなる。
【００３４】
また、マルチモーダル画像１２０に含まれる複数のモーダルの画像のそれぞれは、同一のカメラにより近い時刻に撮影された画像であってもよい。その場合、当該カメラは、所定間隔で前記複数のモーダルを切り替えて撮影するものとする。例えばモーダルＡの画像を可視画像とした場合、モーダルＢの画像を同一カメラで撮影した撮影時刻が僅かにずれた画像としてもよい。例えば、モーダルＡの画像およびモーダルＢの画像を取得するために用いるカメラが、内視鏡のようにＲＧＢ面順次方式のものとする。この場合、注目フレームをモーダルＡの画像、次フレームをモーダルＢの画像とみなしてもよい。つまり、マルチモーダル画像１２０に含まれる複数のモーダルの画像は、同一のカメラにより撮影された、前後に隣接するフレームの画像同士、又は、前後で数フレーム離れた画像同士であってもよい。特に、カメラが車両等の移動体に搭載されて、車外を撮影するものである場合、隣接するフレームの撮影画像同士であっても位置ずれが無視できない。その理由は、固定された位置に設置された同一のカメラで同一の対象を連続して撮影したとしても、移動中に対象との距離や視野が変化するためである。よって、同一のカメラで異なるモーダルにより撮影された複数のモーダルの画像の間でも同一の対象の表示位置について位置ずれが生じることとなる。
【００３５】
或いは、マルチモーダル画像１２０の取得に使用するカメラは、例えば異なる衛星に搭載されている光学センサなどであってもよい。より具体的には、光学衛星からの画像をモーダルＡの画像、広域の温度情報や電波情報を取得する衛星からの画像をモーダルＢの画像とみなしてもよい。この場合、これら両衛星画像の撮影時刻は同一時刻であってもよいし、異なっていてもよい。
【００３６】
また、マルチモーダル画像１２０の各画像データ群には、３種類以上のモーダルによる撮影画像が含まれていても良い。
【００３７】
正解ラベル１３０は、マルチモーダル画像１２０中の複数の画像の組のそれぞれに含まれる検出すべき対象のラベルと、その対象が写っている各正解領域を含む。ここで、ラベルは、検出対象の種別を示し、検出対象に付されるものである。そして、マルチモーダル画像１２０中の画像データ群ごとに、正解ラベル１３０中の正解領域１３１と１３２が同じ対象を指すことを示すために対応付けられているものとする。例えば、正解ラベル１３０は、ラベル１３３（クラスの種別）、モーダルＡの正解領域１３１、モーダルＢの正解領域１３２の組合せで表現してもよい。図４の例では、正解領域１３１は、モーダルＡ画像１２１内で検出対象を含む領域であり、正解領域１３２は、モーダルＢ画像１２２内で同一の検出対象を含む領域であるものとする。ここで、「領域」は、矩形の場合、領域の代表点（中心等）の座標（Ｘ軸及びＹ軸の座標値）、幅、高さの組合せ等で表現すればよい。また、「領域」は、矩形ではなく、対象の写っている画素の集合をリストや画像で表現したマスク領域を用いてもよい。尚、モーダルＡおよびモーダルＢの正解領域をそれぞれ記載する代わりに、モーダルＡおよびモーダルＢのそれぞれでの正解領域の代表点の座標の差分を、位置ずれの正解値として、正解ラベルに含めても良い。
【００３８】
記憶装置２００は、第２の記憶手段及び記憶部１３の一例であり、例えば、ハードディスク、フラッシュメモリ等の不揮発性記憶装置である。記憶装置２００は、辞書２１０、２２０及び２３０を記憶する。また、辞書２２０は、辞書２２１、２２２及び２２３を含む。ここで、辞書２１０等のそれぞれは、所定の処理モジュール（モデル）に設定されるパラメータの集合であり、例えば、データベースである。特に、辞書２１０等のそれぞれは、後述する各学習ブロックにおいて学習済みの値である。尚、辞書２１０等には、学習開始前にパラメータの初期値が設定されていてもよい。また、辞書２１０等の詳細については、以後の各学習ブロックの説明と併せて説明する。
【００３９】
図５は、本実施の形態２にかかる各学習ブロックの内部構成を示すブロック図である。特徴マップ抽出部学習ブロック３１０は、特徴マップ抽出部３１１と学習部３１２とを含む。特徴マップ抽出部３１１は、マルチモーダル画像１２０内のモーダルＡ画像１２１及びモーダルＢ画像１２２のそれぞれから、物体検出に有用な情報を示す特徴マップを算出（抽出）するモデル、つまり処理モジュールである。そして、学習部３１２は、第４の学習手段の一例であり、特徴マップ抽出部３１１のパラメータを調整する手段である。具体的には、学習部３１２は、辞書２１０に保存されたパラメータを読み出して特徴マップ抽出部３１１に設定して、１つのモーダルの画像を特徴マップ抽出部３１１に入力して特徴マップを抽出させる。つまり、学習部３１２は、マルチモーダル画像１２０中のモーダルＡ画像１２１およびモーダルＢ画像１２２に関してそれぞれ独立に特徴マップ抽出部３１１を用いて特徴マップを算出するものとする。
【００４０】
そして、学習部３１２は、抽出された特徴マップを用いて計算される損失関数が小さくなるように特徴マップ抽出部３１１のパラメータを調整（学習）し、調整後のパラメータにより辞書２１０を更新（保存）する。尚、上記で用いる損失関数は、初回時においては一時的に接続した任意の画像認識出力の誤差に対応するものを用いても良い。また、２回目以降については、後述する領域候補選択部学習ブロック３２０等における出力が正解ラベルに近付くように同様に調整する。
【００４１】
例えば、特徴マップ抽出部３１１としてニューラルネットワークのモデルを用いる場合には、抽出された特徴マップから画像分類を行う識別器を一時的に付加して分類誤差から誤差逆伝播法で重みパラメータを更新する方法がある。ここで、特徴マップとは、画像内の各画素値に所定の変換を行った結果を、画像内の各位置に対応したマップ状に配置した情報である。言い換えると、特徴マップとは、入力画像における所定領域に含まれる画素値の集合から算出される特徴量を画像内の位置関係と対応付けたデータの集合である。また、例えばＣＮＮの場合、特徴マップ抽出部３１１の処理は、入力画像から畳み込み層、プーリング層等を適当な回数経由するような演算を行うものとする。その場合、パラメータは、各畳み込み層で用いるフィルタの値といえる。尚、各畳み込み層の出力は複数の特徴マップを含んでいてもよく、その場合、畳み込み層に入力される画像または特徴マップの枚数と出力される特徴マップの枚数の積が保持するフィルタの枚数となる。
【００４２】
特徴マップ抽出部の辞書２１０は、特徴マップ抽出部学習ブロック３１０により学習されたパラメータの集合を保持する部位である。そして、辞書２１０内のパラメータを特徴マップ抽出部３１１に設定することで、学習された特徴マップ抽出の方法を再現することができる。尚、辞書２１０はモーダルごとに独立な辞書になっていても良い。また、辞書２１０内のパラメータは、第４のパラメータの一例である。
【００４３】
スコア算出部学習ブロック３２１は、判定部３２１１と、スコア算出部３２１２と、学習部３２１３とを含む。判定部３２１１は、上述した判定部１１の一例である。スコア算出部３２１２は、検出候補領域を選ぶための優先度として領域に対するスコアを算出するモデル、つまり処理モジュールである。言い換えると、スコア算出部３２１２は、設定されたパラメータを用いて候補領域に対する検出対象の度合いを示すスコアを算出する。そして、学習部３２１３は、第２の学習手段の一例であり、スコア算出部３２１２のパラメータを調整する手段である。すなわち、学習部３２１３は、判定部３２１１による判定結果の組及び特徴マップに基づいて、スコア算出部３２１２のパラメータを学習し、学習したパラメータを辞書２２１に保存する。
【００４４】
例えば、モーダルＡとモーダルＢで共通の既定の矩形領域の集合が予め定義され、記憶装置１００等に保存されているものとする。ここで、矩形領域は、例えば、中心位置を指定する２つの座標、幅と高さの４つで定義されるが、これに限定されない。言い換えると、既定の矩形領域は、特徴マップ上の画素位置ごとに配置された、あらかじめ与えたスケールやアスペクト比をそれぞれもつ領域といえる。そして、判定部３２１１は、既定の矩形領域の集合から１つの矩形領域を選択し、当該選択された矩形領域の座標と、正解ラベル１３０に含まれる正解領域１３１及び１３２のそれぞれとのＩｏＵ（Intersection over Union）を算出する。ここでＩｏＵとは重複度の尺度で、共通部分の面積を合併した領域の面積で割った値である。ＩｏＵは、候補領域が正解領域を含む度合いの一例でもある。また、ＩｏＵは、検出対象が複数ある場合でも区別しない。そして、判定部３２１１は、この処理を、記憶装置１００内の全ての既定の矩形領域について繰り返す。その後、判定部３２１１は、ＩｏＵが一定値（閾値）以上になる既定の矩形領域を正例とする。また、判定部３２１１は、ＩｏＵが一定値未満になる既定の矩形領域を負例とする。このとき、判定部３２１１は、正例と負例のバランスを取るために、ＩｏＵが一定値以上になる既定の矩形領域のうち所定数をサンプリングして正例としてもよい。同様に、判定部３２１１は、ＩｏＵが一定値未満になる既定の矩形領域のうち所定数をサンプリングして負例としてもよい。また、判定部３２１１は、各矩形領域について、モーダルＡに対応する正解領域１３１とのＩｏＵに基づく正否の判定結果と、モーダルＢに対応する正解領域１３２とのＩｏＵに基づく正否の判定結果との組を生成するものといえる。
【００４５】
学習部３２１３は、辞書２２１に保存されたパラメータを読み出してスコア算出部３２１２に設定して、１つの矩形領域をスコア算出部３２１２に入力してスコアを算出させる。そして、学習部３２１３は、判定部３２１１により正例と判定された矩形領域及びモーダルについて算出されるスコアが相対的に高くなるように、パラメータを調整（学習）する。また、学習部３２１３は、判定部３２１１により負例と判定された矩形領域及びモーダルについて算出されるスコアが相対的に低くなるように、パラメータを調整（学習）する。そして、学習部３２１３は、調整後のパラメータにより辞書２２１を更新（保存）する。
【００４６】
また、例えば、学習部３２１３は、特徴マップ抽出部の辞書２１０を用いて特徴マップ抽出部３１１により抽出された特徴マップからサンプリングされた既定の矩形領域に対して検出対象か否かの正負２値分類の学習を行うようにしてもよい。ここで、スコア算出部３２１２としてニューラルネットワークのモデルを用いる場合には、正負に対応する２つの出力を用意し、交差エントロピー誤差関数に関する勾配降下法により重みパラメータを決めればよい。このとき、正例に対応する矩形領域に対する予測では出力の正例に当たる要素が１に、負例にあたる要素が０に値が近づくようにネットワークのパラメータが更新される。また、各既定の矩形領域に対する出力は、その矩形領域の中心位置周辺の特徴マップからそれぞれ計算して同じ配置でマップ状に並べるものとするとよい。これにより、学習部３２１３による処理を、畳み込み層による演算として表現できる。尚、既定の矩形領域の形状については出力されるマップをそれに応じて複数用意すればよい。
【００４７】
スコア算出部の辞書２２１は、スコア算出部学習ブロック３２１により学習されたパラメータの集合を保持する部位である。そして、辞書２２１内のパラメータをスコア算出部３２１２に設定することで、学習されたスコア算出の方法を再現することができる。また、辞書２２１内のパラメータは、第２のパラメータの一例である。
【００４８】
矩形回帰部学習ブロック３２２は、矩形回帰部３２２２と、学習部３２２３とを含む。尚、矩形回帰部学習ブロック３２２は、上述した判定部３２１１相当の機能を有する処理モジュールをさらに含むものであっても良い。または、矩形回帰部学習ブロック３２２は、上述した判定部３２１１から既定の矩形領域に対する正否の判定結果の組を示す情報を受信してもよい。
【００４９】
矩形回帰部３２２２は、検出候補領域を予測するためにベースとする既定の矩形領域の座標をより正確に検出対象に一致させる変換を返すモデル、つまり処理モジュールである。言い換えると、矩形回帰部３２２２は、候補領域の位置及び形状を、当該候補領域の正否の判定に用いられた正解領域に近付ける回帰を行う。そして、学習部３２２３は、第３の学習手段の一例であり、矩形回帰部３２２２のパラメータを調整する手段である。すなわち、学習部３２２３は、判定部３２１１による判定結果の組及び特徴マップに基づいて、矩形回帰部３２２２のパラメータを学習し、学習したパラメータを辞書２２２に保存する。ただし、学習部３２２３が回帰した結果として出力する矩形領域の情報は基準とする一つのモーダル上での位置、あるいはモーダルＡとモーダルＢの中間的な位置などとする。
【００５０】
また、学習部３２２３は、スコア算出部学習ブロック３２１と同じ基準で判定した正例にあたる既定の矩形領域について、特徴マップ抽出部の辞書２１０を用いて特徴マップ抽出部３１１により抽出された特徴マップを用いる。そして、学習部３２２３は、例えば、いずれかのモーダルについて正解ラベル１３０に含まれる正解領域への矩形座標の変換を正解として回帰の学習を行う。
【００５１】
ここで、矩形回帰部３２２２としてニューラルネットワークのモデルを用いる場合には、該当する矩形領域の中心位置周辺の特徴マップからそれぞれ計算して同じ配置でマップ状に並べるものとするとよい。これにより、学習部３２２３による処理を、畳み込み層による演算として表現できる。尚、既定の矩形領域の形状については出力されるマップをそれに応じて複数用意すればよい。
【００５２】
また、領域を表す座標の正解領域との差について平滑化Ｌ１損失関数などに関する勾配降下法により重みパラメータを決定すればよい。
【００５３】
矩形回帰部の辞書２２２は、矩形回帰部学習ブロック３２２により学習されたパラメータの集合を保持する部位である。そして、辞書２２２内のパラメータを矩形回帰部３２２２に設定することで、学習された矩形回帰の方法を再現することができる。また、辞書２２２内のパラメータは、第３のパラメータの一例である。
【００５４】
位置ずれ予測部学習ブロック３２３は、位置ずれ予測部３２３２と、学習部３２３３とを含む。尚、位置ずれ予測部学習ブロック３２３は、上述した判定部３２１１相当の機能を有する処理モジュールをさらに含むものであっても良い。または、位置ずれ予測部学習ブロック３２３は、上述した判定部３２１１から既定の矩形領域に対する正否の判定結果の組を示す情報を受信してもよい。
【００５５】
位置ずれ予測部３２３２は、検出対象を含む入力領域についてモーダル間の位置ずれを予測するモデル、つまり処理モジュールである。言い換えると、位置ずれ予測部３２３２は、ラベルにおけるモーダル間の位置ずれ量を予測する。そして、学習部３２３３は、第１の学習手段の一例であり、位置ずれ予測部３２３２のパラメータを調整する手段である。すなわち、学習部３２３３は、候補領域が正解領域を含む度合いが所定値以上である判定結果の組における複数の正解領域のそれぞれと、検出対象における所定の基準領域との差分を位置ずれ量として、位置ずれ予測部３２３２のパラメータを学習する。ここで、学習部３２３３は、複数の正解領域のいずれか一方、又は、複数の正解領域の中間の位置を基準領域とするとよい。尚、矩形回帰部学習ブロック３２２に含まれる学習部３２２３も、同様に基準領域を定めても良い。そして、学習部３２３３は、学習したパラメータを辞書２２３に保存する。
【００５６】
また、学習部３２３３は、スコア算出部学習ブロック３２１において正例とした既定の矩形領域に対して、特徴マップ抽出部の辞書２１０を用いて得られた特徴マップを用いる。そして、学習部３２３３は、正解ラベル１３０に従って例えば対応する正解領域間の位置ずれ量を正解として位置ずれ予測部３２３２に予測させるようにパラメータを調整する。つまり、学習部３２３３は、辞書２１０に保存されたパラメータを用いて特徴マップ抽出部３１１により抽出された複数の特徴マップを用いて、パラメータを学習する。
【００５７】
言い換えると、まず、学習部３２３３は、辞書２２３に保存されたパラメータを読み出して位置ずれ予測部３２３２に設定する。そして、学習部３２３３は、正例の候補領域の正解領域と、当該正解領域の検出対象における所定の基準領域との差分を位置ずれ量とするようにパラメータを調整（学習）する。例えば、一方の正解領域を基準領域とした場合、当該正解領域と他方の正解領域との差分を位置ずれ量とする。また、各正解領域の中間位置を基準領域とする場合、少なくも一方の正解領域と基準領域との差分を２倍したものが、位置ずれ量となる。そして、学習部３２３３は、調整後のパラメータにより辞書２２３を更新（保存）する。
【００５８】
また、矩形回帰部学習ブロック３２２で目的変数を基準とするモーダルの領域に合わせた場合には、他方のモーダルでの領域が相対的にどうずれるかを位置ずれ量の正解にすればよい。ここで、位置ずれ予測部３２３２としてニューラルネットワークのモデルを用いる場合には、該当する既定の矩形領域の中心位置周辺の特徴マップからそれぞれ位置ずれ量を計算して同じ配置でマップ状に並べるものとするとよい。これにより、学習部３２３３による処理を、畳み込み層による演算として表現できる。尚、既定の矩形領域の形状については出力されるマップをそれに応じて複数用意すればよい。また、重みパラメータの更新には位置ずれ量の平滑化Ｌ１損失関数に関する勾配降下法を選ぶことができる。他には、類似度を計測して対応をとる方法が考えられるが、類似度の計算に含まれるパラメータがあれば交差検定等で決定する。
【００５９】
なお、予測する位置ずれの形式は、設置したカメラの特性に応じて選択してもよい。例えば、マルチモーダル画像１２０中の画像データ群を構成するモーダルＡ画像１２１を撮影するカメラＡとモーダルＢ画像１２２を撮影するカメラＢが、横に整列して並んでいる場合、水平方向の平行移動のみに限った予測を学習してもよい。
【００６０】
位置ずれ予測部の辞書２２３は、位置ずれ予測部学習ブロック３２３により学習されたパラメータの集合を保持する部位である。そして、辞書２２３内のパラメータを位置ずれ予測部３２３２に設定することで、学習されたモーダル間の位置ずれ予測の方法を再現することができる。また、辞書２２３内のパラメータは、第１のパラメータの一例である。
【００６１】
モーダル融合識別部学習ブロック３３０は、モーダル融合識別部３３１と、学習部３３２とを含む。モーダル融合識別部３３１は、各モーダルの特徴マップを元に、全モーダルの特徴マップへの融合を行い、検出候補領域を識別して検出結果を導くモデル、つまり処理モジュールである。学習部３３２は、第５の学習手段の一例であり、モーダル融合識別部３３１のパラメータを調整する手段である。そして、例えば、学習部３３２は、領域候補選択部学習ブロック３２０により算出された検出候補領域について、特徴マップ抽出部の辞書２１０を用いて特徴マップ抽出部３１１により抽出された特徴マップをモーダルごとに切り出したものを入力とする。そして、学習部３３２は、当該入力についてモーダル融合識別部３３１によりモーダル融合及び検出候補領域の識別を行わせる。このとき、学習部３３２は、正解ラベル１３０の示す検出対象のクラスや領域位置を予測させるようにモーダル融合識別部３３１のパラメータを調整（学習）する。そして、学習部３３２は、調整後のパラメータにより辞書２３０を更新（保存）する。
【００６２】
ここで、モーダル融合識別部３３１としてニューラルネットワークのモデルを用いる場合には、それぞれ切り出された各モーダルの特徴マップを畳み込み層などにより融合した特徴を算出し、その特徴を用いて全結合層で識別を行うような構造にしてもよい。また、学習部３３２は、クラス分類については交差エントロピー誤差、検出領域の調整には座標の変換パラメータの平滑化Ｌ１損失関数などに関する勾配降下法によってネットワークの重みを決定する。ただし、識別機能としては決定木やサポートベクタマシンを用いることもできる。
【００６３】
モーダル融合識別部の辞書２３０は、モーダル融合識別部学習ブロック３３０により学習されたパラメータの集合を保持する部位である。そして、辞書２３０内のパラメータをモーダル融合識別部３３１に設定することで、学習されたモーダル融合および識別の方法を再現することができる。また、辞書２３０内のパラメータは、第５のパラメータの一例である。
【００６４】
尚、図４では、領域候補選択部の辞書２２０を機能ごとに２２１〜２２３に分離して記したが、共有する部分があっても良い。また、図５では、各学習ブロックの内部に学習対象のモデル（特徴マップ抽出部３１１等）を記載したが、これらは、領域候補選択部学習ブロック３２０の外部に存在してもよい。例えば、学習対象のモデルは、記憶装置２００等に保存されたライブラリであり、各学習ブロックが呼び出して実行するものであってもよい。また、スコア算出部３２１２、矩形回帰部３２２２及び位置ずれ予測部３２３２をまとめて、領域候補選出部と呼ぶこともできる。
【００６５】
尚、学習対象の各部位（モデル）としてニューラルネットワークを用いる場合には、辞書２１０、２２０、２３０にネットワークの重みパラメータが格納され、学習ブロック３１０、３２０、３３０としてはそれぞれの誤差関数に関する勾配降下法が用いられる。ニューラルネットワークでは上流の部位に対しても誤差関数の勾配を計算することができる。そのため、図４の破線が示すように、領域候補選択部学習ブロック３２０やモーダル融合識別部学習ブロック３３０によって特徴マップ抽出部の辞書２１０を更新することもできる。
【００６６】
図６は、本実施の形態２にかかる学習処理の流れを説明するためのフローチャートである。まず、特徴マップ抽出部学習ブロック３１０の学習部３１２は、特徴マップ抽出部３１１を学習する（Ｓ２０１）。尚、この時点では、辞書２１０に任意の初期パラメータが保存されており、任意の特徴マップの正解データが学習部３１２に入力されるものとする。続いて、学習部３１２は、ステップＳ２０１の結果のパラメータを特徴マップ抽出部の辞書２１０に反映（更新）する（Ｓ２０２）。続いて、領域候補選択部学習ブロック３２０は、更新された辞書２１０を用いて抽出される特徴マップを使って、領域候補選出部を学習する（Ｓ２０３）。すなわち、スコア算出部学習ブロック３２１は、判定部３２１１の判定結果に基づき、学習部３２１３がスコア算出部３２１２を学習する。また、矩形回帰部学習ブロック３２２は、判定部３２１１の判定結果に基づき、学習部３２２３が矩形回帰部３２２２を学習する。また、位置ずれ予測部学習ブロック３２３は、判定部３２１１の判定結果に基づき、学習部３２３３が位置ずれ予測部３２３２を学習する。そして、領域候補選択部学習ブロック３２０は、ステップＳ２０３の結果のパラメータを領域候補選択部の辞書２２０、つまり辞書２２１〜２２３に反映（更新）する（Ｓ２０４）。ただしニューラルネットワークを用いるときには、領域候補選択部学習ブロック３２０は、特徴マップ抽出部の辞書２１０も同時に更新する。具体的には、領域候補選択部学習ブロック３２０は、学習ブロック３２１〜３２３におけるそれぞれの損失関数の重みパラメータに関する勾配を、特徴マップ抽出部３１１のパラメータについても計算して、その勾配にもとづいて更新を行う。その後、モーダル融合識別部学習ブロック３３０の学習部３３２は、モーダル融合識別部３３１を学習する（Ｓ２０５）。このとき、学習部３３２は、領域候補選択部の辞書２２１〜２２３を用いて得られる検出候補領域における、特徴マップ抽出部の辞書２１０を用いて得られる特徴マップを用いる。そして、学習部３３２は、ステップＳ２０５の結果のパラメータをモーダル融合識別部の辞書２３０に反映（更新）する（Ｓ２０６）。ただしニューラルネットワークを用いるときには、学習部３３２は、特徴マップ抽出部の辞書２１０も同時に更新する。具体的には、学習部３３２は、学習ブロック３３０における損失関数のパラメータに関する勾配を、特徴マップ抽出部３１１のパラメータについても計算して、その勾配にもとづいて更新を行う。その後、画像処理システム１０００は、ステップＳ２０３からＳ２０６の処理が、あらかじめ設定した所定の回数繰り返したか否か、つまり、終了条件であるか否かを判定する（Ｓ２０７）。当該処理が所定の回数未満のである場合、（Ｓ２０７でＮＯ）、検出候補領域の予測に対する条件が変更されているため、再びステップＳ２０３に戻る。そして、各パラメータが十分に最適化されるまでステップＳ２０３からＳ２０６を繰り返す。ステップＳ２０７において、当該処理が所定の回数繰り返された場合（Ｓ２０７でＹＥＳ）、当該学習処理を終了する。尚、当該処理の繰り返しの最終回の学習においては、ステップＳ２０６における特徴マップ抽出部の辞書の更新を行わず、パラメータを固定しておいてもよい。
【００６７】
尚、図６のステップＳ２０３からＳ２０７の繰り返し処理については、他の処理を採用しても構わない。例えば、次のような処理を採用しても良い。まず、ステップＳ２０３及びＳ２０４の後、ステップＳ２０５と並行してＳ２０３を実行する（Ｓ２０８）。そして、モーダル融合識別部学習ブロック３３０による学習と領域候補選択部学習ブロック３２０による学習との双方を考慮して特徴マップ抽出部学習ブロック３１０の学習を行う（Ｓ２０９）。その後、学習結果に応じて辞書２１０、２２０及び２３０の更新を行う（Ｓ２１０）。そして、特徴マップ抽出部の辞書２１０が更新されていた場合、再度、ステップＳ２０８、Ｓ２０９及びＳ２１０を行う。ステップＳ２１０において特徴マップ抽出部の辞書２１０が更新されてない場合、当該学習処理を終了する。
【００６８】
このように、本実施の形態にかかる画像処理システム１０００は、マルチモーダル画像１２０内の各モーダルＡ画像１２１及びモーダルＢ画像１２２のそれぞれに対応する正解領域１３１及び１３２を用いて、領域候補選択部学習ブロック３２０においてモデルの学習を行う。特に、領域候補選択部学習ブロック３２０内の位置ずれ予測部学習ブロック３２３は、特定のラベルにおけるモーダル間の位置ずれ量を予測する位置ずれ予測部３２３２のパラメータを学習する。これにより、入力された画像間の位置ずれに応じたモーダルごとの正確な検出候補領域を算出することができる。
【００６９】
また、本実施の形態では、各モーダルに対応し、位置ずれを加味した正解領域の組を用いて、スコア算出部や矩形回帰部のパラメータも学習する。そのため、非特許文献１と比べて、位置ずれを反映したスコア算出や矩形回帰を行うことができ、これらの精度も向上し得る。
【００７０】
さらに、本実施の形態では、上記の正解領域の組による矩形領域の正否判定結果の組を用いて特徴マップ抽出部のパラメータの学習を行ない、学習後のパラメータを用いて再度、特徴マップを抽出した上で、領域候補選択部の各種パラメータの学習を行う。これにより、選択する領域候補の精度をさらに向上できる。
【００７１】
さらに、このようにして抽出された特徴マップを用いて、モーダル融合識別部のパラメータを学習する。これにより、モーダル融合識別部の処理の精度を向上できる。
【００７２】
また、本実施の形態により、物体検出の性能を向上させることができる。その理由は、視差による画像内の位置ずれは受光面からの距離に依存するが、同じ物体のみを主に含む領域ごとには平行移動で近似できるためである。そして、検出候補領域をモーダルごとに分けることにより、予測された位置ずれの分だけ移動させた検出候補領域を組み合わせて位置ずれのない場合とほぼ同様の特徴マップの組から認識できるためである。さらに学習時に、位置ずれの補正された検出候補領域に対する認識方法を獲得することができるためである。
【００７３】
＜実施の形態３＞
本実施の形態３は、上述した実施の形態２の応用例である。本実施の形態３は、実施の形態２にかかる画像処理システム１０００により学習された各パラメータを用いて、任意のマルチモーダル画像から物体検出を行うための画像認識処理を行うものである。図７は、本実施の形態３にかかる画像処理システム１０００ａの構成を示すブロック図である。画像処理システム１０００ａは、図４の画像処理システム１０００に機能を追加したものであり、図４における記憶装置２００以外の構成は、図７では省略している。そのため、画像処理システム１０００ａは、上述した画像処理装置１に機能を追加及び具体化したものであってもよい。また、画像処理システム１０００ａは、複数台のコンピュータ装置により構成されて、後述する各機能ブロックを実現するものであってもよい。
【００７４】
画像処理システム１０００ａは、記憶装置５００と、記憶装置２００と、モーダル画像入力部６１１及び６１２と、画像認識処理ブロック６２０と、出力部６３０とを少なくとも備える。また、画像認識処理ブロック６２０は、特徴マップ抽出部６２１及び６２２と、モーダル融合識別部６２６とを少なくとも含む。
【００７５】
ここで、画像処理システム１０００ａを構成する少なくとも１つのコンピュータは、プロセッサ（不図示）がプログラムをメモリ（不図示）に読み込み、実行する。これにより、画像処理システム１０００ａは、当該プログラムが実行されることにより、モーダル画像入力部６１１及び６１２、画像認識処理ブロック６２０並びに出力部６３０を実現することができる。ここで、当該プログラムは、上述した学習処理に加えて、本実施の形態にかかる後述の画像認識処理が実装されたコンピュータプログラムである。例えば、当該プログラムは、上述した実施の形態２にかかるプログラムに改良を加えたものである。また、当該プログラムは、複数のプログラムモジュールに分割されたものであってもよく、各プログラムモジュールが１又は複数のコンピュータにより実行されるものであってもよい。
【００７６】
記憶装置５００は、例えば、ハードディスク、フラッシュメモリ等の不揮発性記憶装置である。記憶装置５００は、入力データ５１０及び出力データ５３０を記憶する。入力データ５１０は、画像認識対象のマルチモーダル画像５２０を含む情報である。尚、入力データ５１０は、複数のマルチモーダル画像５２０を含むものであってもよい。マルチモーダル画像５２０は、上述したマルチモーダル画像１２０と同様に、異なる複数のモーダルにより撮影されたモーダルＡ画像５２１及びモーダルＢ画像５２２の組である。例えば、モーダルＡ画像５２１はモーダルＡにより撮影された画像であり、モーダルＢ画像５２２はモーダルＢにより撮影された画像であるものとする。出力データ５３０は、入力データ５１０に対する画像認識処理の結果を示す情報である。例えば、出力データ５３０は、検出対象として識別された領域及びラベル、検出対象としての確からしさを示すスコア等を含むものである。
【００７７】
記憶装置２００は、図４と同様の構成であり、特に、図６による学習処理が終了した後のパラメータが保存されているものとする。
【００７８】
モーダル画像入力部６１１及び６１２は、記憶装置５００からモーダルＡ画像５２１及びモーダルＢ画像５２２を読み出して、画像認識処理ブロック６２０へ出力するための処理モジュールである。具体的には、モーダル画像入力部６１１は、モーダルＡ画像５２１を入力し、モーダルＡ画像５２１を特徴マップ抽出部６２１へ出力する。また、モーダル画像入力部６１２は、モーダルＢ画像５２２を入力し、モーダルＢ画像５２２を特徴マップ抽出部６２２へ出力する。
【００７９】
図８は、本実施の形態３にかかる画像認識処理ブロック６２０の内部構成を示すブロック図である。尚、記憶装置２００は、図７と同様である。画像認識処理ブロック６２０は、特徴マップ抽出部６２１及び６２２と、領域候補選択部６２３と、切り出し部６２４及び６２５と、モーダル融合識別部６２６とを備える。また、画像認識処理ブロック６２０の内部構成として図示している検出候補領域６２７及び６２８は、説明の便宜上、記載したものであり、画像認識処理における中間データである。そのため、検出候補領域６２７及び６２８は、実体としては、画像処理システム１０００ａ内のメモリに存在するものである。
【００８０】
特徴マップ抽出部６２１及び６２２は、上述した特徴マップ抽出部３１１と同等の機能を有する処理モジュールである。例えば、畳み込みニューラルネットワークやＨＯＧ（Histograms of Oriented Gradients）特徴などの局所特徴抽出器を適用することができる。また、特徴マップ抽出部６２１及び６２２は、特徴マップ抽出部３１１と同じライブラリを用いても良い。ここで、特徴マップ抽出部６２１及び６２２は、辞書２１０に保存されたパラメータを内部のモデル式等に設定する。例えば、画像認識処理ブロック６２０内の制御部（不図示）が記憶装置２００から辞書２１０の各種パラメータを読み出して、特徴マップ抽出部６２１及び６２２を呼び出す際に、パラメータを引数として与えても良い。
【００８１】
そして、特徴マップ抽出部６２１は、モーダル画像入力部６１１から入力されるモーダルＡ画像５２１から、上記パラメータが設定済みのモデル式により、（モーダルＡの）特徴マップを抽出する。特徴マップ抽出部６２１は、抽出した特徴マップを領域候補選択部６２３及び切り出し部６２４へ出力する。同様に、特徴マップ抽出部６２２は、モーダル画像入力部６１２から入力されるモーダルＢ画像５２２から、上記パラメータが設定済みのモデル式により、（モーダルＢの）特徴マップを抽出する。特徴マップ抽出部６２２は、抽出した特徴マップを領域候補選択部６２３及び切り出し部６２５へ出力する。
【００８２】
領域候補選択部６２３は、特徴マップ抽出部６２１及び６２２から各モーダルの特徴マップを入力し、モーダル間の位置ずれを考慮して、複数の既定の矩形領域の中から各モーダルに対応する検出候補領域の組を選択する。そして、領域候補選択部６２３は、選択した検出候補領域の組を切り出し部６２４及び６２５へ出力する。ここで、矩形領域の自由度は、上述した通り、中心位置を指定する２つの座標、幅と高さの４つである。そのため、モーダル間でスケールが変わらないと仮定する場合、領域候補選択部６２３は、中心位置座標のみをモーダルの数だけ出力すればよい。尚、出力する検出候補領域の組は複数あっても良い。領域候補選択部６２３は、スコア算出部６２３１、矩形回帰部６２３２、位置ずれ予測部６２３３、選定部６２３４及び算出部６２３５を含む処理モジュールである。
【００８３】
スコア算出部６２３１は、入力される各モーダルの特徴マップについて、個別に検出対象らしさを評価するスコアを算出する。矩形回帰部６２３２は、既定の矩形領域それぞれに対してより正確な位置と幅及び高さを予測する。位置ずれ予測部６２３３は、モーダル間の位置合わせのための位置ずれ量を予測する。選定部６２３４は、スコア算出部６２３１のスコアと矩形回帰部６２３２の回帰結果をもとに、回帰後の複数の領域の中から検出候補領域を選び出す。算出部６２３５は、選定部６２３４により選定された検出候補領域に対応する他のモーダルの領域を、位置ずれ予測部６２３３により予測された位置ずれ量から算出する。
【００８４】
ここで、スコア算出部６２３１、矩形回帰部６２３２及び位置ずれ予測部６２３３は、上述したスコア算出部３２１２、矩形回帰部３２２２及び位置ずれ予測部３２３２と同等の機能を有する処理モジュールである。そのため、スコア算出部６２３１、矩形回帰部６２３２及び位置ずれ予測部６２３３は、上述したスコア算出部３２１２、矩形回帰部３２２２及び位置ずれ予測部３２３２と同じライブラリを用いても良い。ここで、スコア算出部６２３１は、辞書２２１に保存されたパラメータを内部のモデル式等に設定する。同様に、矩形回帰部６２３２は、辞書２２２に保存されたパラメータを内部のモデル式等に設定する。また、位置ずれ予測部６２３３は、辞書２２３に保存されたパラメータを内部のモデル式等に設定する。例えば、上述した制御部が記憶装置２００から辞書２２０の各種パラメータを読み出して、スコア算出部６２３１、矩形回帰部６２３２及び位置ずれ予測部６２３３を呼び出す際に、対応するパラメータを引数としてそれぞれに与えても良い。
【００８５】
スコア算出部６２３１は、画像内の既定の矩形領域のすべての中から検出候補領域を絞り込むために、スコア算出部の辞書２２１を用いて検出対象らしさの信頼度のスコアを算出する。ただし、スコア算出部６２３１は、特徴マップ抽出部６２１および６２２により抽出された特徴マップのすべてを入力とする。そして、スコア算出部６２３１は、モーダルＡ及びモーダルＢの両方の情報から検出対象かそれ以外かを予測する。ただし、上述した学習段階において、スコア算出部６２３１のパラメータは、対応する既定の矩形領域と正解領域との重複度があらかじめ与えた閾値を超える場合に検出対象であるとみなすようなスコアを算出するように学習されている。そして、ニューラルネットワークを用いる場合では、畳み込み層を用いると特徴マップ上の画素位置ごとの出力を設けることができる。そのため、スコア算出部６２３１のパラメータは、それぞれが検出対象か否かの２値分類をするように学習しておけばよい。
【００８６】
矩形回帰部６２３２は、矩形回帰部の辞書２２２を用いて、対象の既定の矩形領域に対して、基準とするモーダルＡ上でより正確に検出対象を囲む矩形座標を予測する処理モジュールである。ここで、矩形回帰部６２３２が対象とする既定の矩形領域は、ある正解領域との重複度があらかじめ与えた閾値を超えるような領域である。例えば、矩形回帰部６２３２は、スコア算出部６２３１において所定値以上のスコアが算出された矩形領域を対象としてもよい。また、ニューラルネットワークを用いる場合では、畳み込み層を用いると特徴マップ上の画素位置ごとの出力を設けることができる。そのため、矩形回帰部６２３２のパラメータは、上述した学習段階において、正解領域との重複が十分あった既定の矩形領域に対応する各画素での出力が、既定の矩形領域の座標と正解領域の座標との差分になるように回帰を学習しておけばよい。これにより、予測した差分により既定の矩形領域の座標を変換することで求めたい矩形座標が得られる。
【００８７】
位置ずれ予測部６２３３は、モーダルＢのモーダルＡに対する位置ずれ量を位置ずれ予測部の辞書２２３を使って予測する処理モジュールである。位置ずれ予測部６２３３の実現方法は、ニューラルネットワークを用いてデータから学習して獲得しても良い。また、例えば、空間構造を比較する以下の方針も可能である。まず、位置ずれ予測部６２３３は、既定の矩形領域に対応する領域をパッチとしてモーダルＡの特徴マップから抜き出し、そのパッチとモーダルＢの特徴マップ全体との相関スコアマップを作成する。そして、位置ずれ予測部６２３３は、相関スコアの高い位置へのずれが起こっている可能性が高いとみなして最大値における座標に対応する位置ずれ量を選ぶとよい。また、相関スコアを確率とみなして座標の目標値を取ることもできる。ここで、相関スコアマップは例えば、元の画像間への適用が想定される非特許文献４などの指標を流用してもよい。または、ニューラルネットワークのようなモデルでマッチングを事前に学習したものを適用して求めてもよい。
【００８８】
選定部６２３４は、スコア算出部６２３１で算出された各既定の矩形領域に対するスコアを基準として、優先順位のより高いものを残すべき矩形領域として選定する処理モジュールである。例えば、選定部６２３４は、あらかじめ決めた個数の矩形領域をスコアの大きい順に選ぶ処理をすればよい。
【００８９】
算出部６２３５は、選定部６２３４により選定された既定の矩形領域に対する回帰結果と、位置ずれ予測部６２３３により予測された位置ずれ量から、検出候補領域６２７及び６２８の組を算出する処理モジュールである。具体的には、モーダルＢで見たときの検出対象を囲む矩形座標は、矩形回帰部６２３２の出力の位置座標に、位置ずれ予測部６２３３により予測された位置ずれ量を加えることで求められる。そのため、算出部６２３５は、選定された矩形領域の回帰結果の領域の位置座標を検出候補領域６２７として出力する。また、算出部６２３５は、モーダルＡに対応する検出候補領域６２７の位置座標に位置ずれ量を加えて、モーダルＢに対応する検出候補領域６２８の位置座標を算出し、当該位置座標を検出候補領域６２８として出力する。例えば、算出部６２３５は、モーダルＡに対応する検出候補領域６２７を切り出し部６２４へ出力し、モーダルＢに対応する検出候補領域６２８を切り出し部６２５へ出力する。
【００９０】
切り出し部６２４及び６２５は、同一の処理であり、入力された特徴マップから、入力された検出候補領域に対応する特徴量を切り出して整形する処理モジュールである。具体的には、切り出し部６２４は、特徴マップ抽出部６２１からモーダルＡ画像５２１から抽出された特徴マップと、算出部６２３５からモーダルＡの検出候補領域６２７との入力を受け付ける。そして、切り出し部６２４は、受け付けたモーダルＡの特徴マップから検出候補領域６２７に対応する位置の特徴量、つまり特徴マップの部分集合を切り出して整形してモーダル融合識別部６２６へ出力する。同様に、切り出し部６２５は、特徴マップ抽出部６２２からモーダルＢ画像５２２から抽出された特徴マップと、算出部６２３５からモーダルＢの検出候補領域６２８との入力を受け付ける。そして、切り出し部６２５は、受け付けたモーダルＢの特徴マップから検出候補領域６２８に対応する位置の特徴量、つまり特徴マップの部分集合を切り出して整形してモーダル融合識別部６２６へ出力する。ただし、検出候補領域の座標はピクセル単位でなくても良く、その場合は内挿などの方法で座標位置の値に換算する。
【００９１】
モーダル融合識別部６２６は、上述したモーダル融合識別部３３１と同等の機能を有し、検出候補領域の位置に対応する特徴マップの部分集合の組を元に、モーダル融合及び識別を行う処理モジュールである。また、モーダル融合識別部６２６は、モーダル融合識別部３３１と同じライブラリを用いても良い。ここで、モーダル融合識別部６２６は、辞書２３０に保存されたパラメータを内部のモデル式等に設定する。例えば、画像認識処理ブロック６２０内の制御部（不図示）が記憶装置２００から辞書２３０の各種パラメータを読み出して、モーダル融合識別部６２６を呼び出す際に、パラメータを引数として与えても良い。
【００９２】
モーダル融合識別部６２６は、切り出し部６２４及び６２５により切り出された特徴マップの部分集合の組を受け付け、それぞれに対してクラス（ラベル）と物体の写っている領域を算出する。このとき、モーダル融合識別部６２６は、上記パラメータが設定済みのモデル式を用いる。そして、モーダル融合識別部６２６は、非特許文献１とは異なり、モーダル融合の対象の特徴マップの組が位置ずれを補正（加味）されたものであるため、同じ対象を捉えた点同士で融合することができる。また、モーダル融合識別部６２６は、融合後の情報について複数の検出対象のいずれであるか又は非検出対象であるかのクラスを予測して識別結果とする。モーダル融合識別部６２６は、例えば、物体の写っている領域については矩形座標あるいはマスク画像などを予測する。また、例えばニューラルネットワークを用いる場合には、モーダル融合にはフィルタサイズ１の畳み込み層などを利用し、識別には全結合層や畳み込み層と大域的平均プーリングなどを利用することができる。その後、モーダル融合識別部６２６は、識別結果を出力部６３０へ出力する。
【００９３】
図７に戻り説明を続ける。出力部６３０は、モーダル融合識別部６２６で予測した結果を出力データ５３０として記憶装置５００へ出力する処理モジュールである。ここでは、出力部６３０は、検出結果だけでなく、モーダルＡ画像およびモーダルＢ画像から、より視認性が高い画像を生成し、これを検出結果とともに出力してもよい。また、より視認性が高い画像を生成する方法としては、例えば、非特許文献２或いは３に記載の方法を用いて、所望の画像を生成すればよい。
【００９４】
図９は、本実施の形態３にかかる画像認識処理を含む物体検出処理の流れを説明するためのフローチャートである。また、図１０は、本実施の形態３にかかる物体検出の概念を説明する図である。以下では、物体検出処理を説明する中で、適宜、図１０の例を参照する。
【００９５】
まず、モーダル画像入力部６１１及び６１２は、検出対象の有無と位置を調べたい場面を捉えたマルチモーダル画像５２０を入力する（Ｓ８０１）。マルチモーダル画像５２０は、図１０では、入力画像の組４１である。入力画像の組４１は、モーダルＡにより撮影された入力画像４１１と、モーダルＢにより撮影された入力画像４１２との組である。尚、入力画像の組４１は、特性の異なる２枚（以上）の画像の組であればよい。図１０の例では、入力画像４１１は、背景とみなすべき背景物体４１１１や検出対象である人物４１１２を含む。また、別モーダルの入力画像４１２は、背景物体４１１１に対応する背景物体４１２１と、人物４１１２に対応する人物４１２２を含む。ここで、入力画像４１１と入力画像４１２を撮影したそれぞれのカメラは、水平に並べられたような位置関係にあり、視差があるものとする。そのため、画像内で各カメラから相対的に近い位置の人物４１１２と４１２２は、横方向にずれて写っているものとする。一方、画像内でカメラから相対的に遠方に写る背景物体４１１１と４１２１は、画像内のほぼ同じ位置（視差が無視できる程度の位置）に写っているものとする。
【００９６】
次に、特徴マップ抽出部６２１及び６２２は、ステップＳ８０１において入力された各モーダルの入力画像から、それぞれの特徴マップを抽出する（Ｓ８０２）。
【００９７】
続いて、領域候補選択部６２３は、モーダルごとの特徴マップからモーダルごとに画像内位置の異なりうる検出候補領域の組を算出する領域候補選択処理を行う（Ｓ８０３）。図１０の例では、モーダルＡに対応する入力画像４１１とモーダルＢに対応する入力画像４１２について、それぞれ画像４２１及び４２２内の破線で示されたような複数の検出候補領域の組４２が得られていることを示す。ここで、モーダルＡに対応する画像４２１内の検出候補領域４２１３は、背景物体４１１１と同じ背景物体４２１１を囲んでいる。一方、モーダルＢに対応する画像４２２内の検出候補領域４２２３は、背景物体４１１１に対応する背景物体４１２１と同じ背景物体４２２１を囲み、検出候補領域４２１３とのペアの領域となる。そして、入力画像４１１と４１２の間で視差により位置ずれのあった人物４１１２と４１２２は、画像４２１及び４２２の中では人物４２１２と４２２２に対応する。そして、画像４２１内の人物４２１２は、検出候補領域４２１４で囲まれており、画像４２２内の人物４２２２は、検出候補領域４２２４で囲まれている。そして、モーダルＡに対応する検出候補領域４２１４とモーダルＢに対応する検出候補領域４２２４は、位置ずれが加味されている。つまり、検出候補領域４２１４と４２２４の組は、モーダルＡ及びＢの間の位置ずれが反映されている。ステップＳ８０３では、このように位置のずれた検出候補領域の組を出力するが、以下に詳細な処理（Ｓ８０３１からＳ８０３５）を説明する。
【００９８】
まず、スコア算出部６２３１は、既定の矩形領域それぞれに対するスコアを算出する（Ｓ８０３１）。また、矩形回帰部６２３２は、スコア算出部６２３１の出力であるスコアを用いて、矩形領域間の優先順位を求め、基準とするモーダル（ここではＡ）で見たときに検出対象をより正確に囲む矩形座標を予測する（Ｓ８０３２）。また、位置ずれ予測部６２３３は、モーダルＢのモーダルＡに対する位置ずれ量を予測する（Ｓ８０３４）。尚、ステップＳ８０３１、Ｓ８０３２及びＳ８０３４は並列に処理してもよい。
【００９９】
ステップＳ８０３１及びＳ８０３２の後、選定部６２３４は、ステップＳ８０３１で算出されたスコアをもとに、残すべき既定の矩形領域を選定する（Ｓ８０３３）。
【０１００】
ステップＳ８０３３及びＳ８０３４の後、算出部６２３５は、ステップＳ８０３３で選定された矩形領域についての矩形回帰の結果とステップＳ８０３４における位置ずれ予測の結果から各モーダルに対する検出候補領域の組を算出する（Ｓ８０３５）。
【０１０１】
その後、切り出し部６２４及び６２５は、ステップＳ８０２で抽出された各特徴マップから、ステップＳ８０３５で算出された検出候補領域の位置座標で切り出す（Ｓ８０４）。そして、モーダル融合識別部６２６は、切り出された特徴マップの部分集合の組をモーダル融合してクラス（ラベル）を識別する（Ｓ８０５）。
【０１０２】
最後に、出力部６３０は、識別結果として検出対象のいずれか又は背景のどのクラスに属するか、またそれが写る画像上の領域を出力する（Ｓ８０６）。この識別結果は例えば図１０の出力画像４３１のように表示することができる。ここでは入力画像４１１のモーダルＡを基準、あるいは表示用とみなすものとする。そして、出力画像４３１は、検出候補領域４２１３及び４２２３の識別結果が上部の検出候補領域４３１１に、また検出候補領域４２１４及び４２２４の識別結果は下部の検出候補領域４３１２に集約されていることを示す。尚、検出候補領域４３１１には、背景を示すラベル４３１３が識別結果として付されており、検出候補領域４３１２には、人物を示すラベル４３１４が識別結果として付されていることを示す。
【０１０３】
本実施の形態は、上述した実施の形態にかかる画像処理装置又はシステムに、候補領域選択部をさらに備えるものということができる。ここで、候補領域選択部は、複数の特徴マップと記憶装置に保存された学習済みの位置ずれ予測部のパラメータを用いて、入力画像間の前記検出対象における位置ずれ量を予測するものである。そして、候補領域選択部は、予測した位置ずれ量に基づいて前記複数の入力画像のそれぞれから前記検出対象を含む候補領域の組を選択するものである。このとき、複数の特徴マップは、複数のモーダルにより撮影された複数の入力画像から、記憶装置に保存された学習済みの特徴マップ抽出部のパラメータを用いて抽出されたものである。これにより、精度良く位置ずれを予測でき、かつ、精度良く候補領域の組を選択できる。
【０１０４】
尚、複数モーダルに対する検出領域を予測して最終の出力とするようにすることもできる。その場合は結果の位置ずれ量の大きさとカメラ配置から、検出した対象までの距離を算出することが可能である。
【０１０５】
尚、位置ずれをなくすためには、複数のモーダルに対応する複数カメラの間で光軸が一致するようにして撮影することも考えられる。但し、これを実現するためには、ビームスプリッター等を利用して複数カメラに共通の方向からの光を分配するような配置に調整された特別な撮影装置を要する。これに対して、本実施の形態にかかる技術を用いると、光軸のずれが許容され、単純に平行に並べて設置した複数カメラを用いることができる。
【０１０６】
＜その他の実施の形態＞
尚、上述の実施の形態では、ハードウェアの構成として説明したが、これに限定されるものではない。本開示は、任意の処理を、ＣＰＵ（Central Processing Unit）にコンピュータプログラムを実行させることにより実現することも可能である。
【０１０７】
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、ＤＶＤ（Digital Versatile Disc）、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【０１０８】
なお、本開示は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。また、本開示は、それぞれの実施の形態を適宜組み合わせて実施されてもよい。
【０１０９】
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
（付記１）
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像のそれぞれにおいて当該検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定する判定手段と、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記判定手段による前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを学習し、当該学習した第１のパラメータを記憶手段に保存する第１の学習手段と、
を備える画像処理装置。
（付記２）
前記第１の学習手段は、
前記度合いが所定値以上である前記判定結果の組における前記複数の正解領域のそれぞれと、前記検出対象における所定の基準領域との差分を前記位置ずれ量として、前記第１のパラメータを学習する
付記１に記載の画像処理装置。
（付記３）
前記第１の学習手段は、前記複数の正解領域のいずれか一方、又は、前記複数の正解領域の中間の位置を前記基準領域とする
付記２に記載の画像処理装置。
（付記４）
前記判定結果の組及び前記特徴マップに基づいて、前記候補領域に対する前記検出対象の度合いを示すスコアを算出する際に用いる第２のパラメータを学習し、当該学習した第２のパラメータを前記記憶手段に保存する第２の学習手段と、
前記判定結果の組及び前記特徴マップに基づいて、前記候補領域の位置及び形状を前記判定に用いられた正解領域に近付ける回帰を行う際に用いる第３のパラメータを学習し、当該学習した第３のパラメータを前記記憶手段に保存する第３の学習手段と、
をさらに備える
付記１乃至３のいずれか１項に記載の画像処理装置。
（付記５）
前記判定結果の組に基づいて、前記複数の画像のそれぞれから前記複数の特徴マップを抽出する際に用いる第４のパラメータを学習し、当該学習した第４のパラメータを前記記憶手段に保存する第４の学習手段をさらに備え、
前記第１の学習手段は、
前記記憶手段に保存された前記第４のパラメータを用いて前記複数の画像のそれぞれから抽出された前記複数の特徴マップを用いて、前記第１のパラメータを学習する
付記１乃至４のいずれか１項に記載の画像処理装置。
（付記６）
前記複数の特徴マップを融合し、かつ、前記候補領域を識別する際に用いる第５のパラメータを学習し、当該学習した第５のパラメータを前記記憶手段に保存する第５の学習手段をさらに備える
付記５に記載の画像処理装置。
（付記７）
前記複数のモーダルにより撮影された複数の入力画像から前記記憶手段に保存された前記第４のパラメータを用いて抽出された複数の特徴マップと、前記記憶手段に保存された前記第１のパラメータとを用いて、前記入力画像間の前記検出対象における位置ずれ量を予測して、当該予測した位置ずれ量に基づいて前記複数の入力画像のそれぞれから前記検出対象を含む候補領域の組を選択する候補領域選択手段をさらに備える
付記５又は６のいずれか１項に記載の画像処理装置。
（付記８）
前記複数の画像のそれぞれは、前記複数のモーダルのそれぞれに対応する複数のカメラにより撮影されたものである
付記１乃至７のいずれか１項に記載の画像処理装置。
（付記９）
前記複数の画像のそれぞれは、移動中の１つのカメラにより所定間隔で前記複数のモーダルを切り替えて撮影されたものである
付記１乃至７のいずれか１項に記載の画像処理装置。
（付記１０）
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像と、前記複数の画像のそれぞれにおいて前記検出対象が含まれる複数の正解領域と当該検出対象に付されるラベルとを対応付けた正解ラベルと、を記憶する第１の記憶手段と、
第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを記憶する第２の記憶手段と、
前記正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定する判定手段と、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記判定手段による前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、前記第１のパラメータを学習し、当該学習した第１のパラメータを前記第２の記憶手段に保存する第１の学習手段と、
を備える画像処理システム。
（付記１１）
前記第１の学習手段は、
前記度合いが所定値以上である前記判定結果の組における前記複数の正解領域のそれぞれと、前記検出対象における所定の基準領域との差分を前記位置ずれ量として、前記第１のパラメータを学習する
付記１０に記載の画像処理システム。
（付記１２）
画像処理装置が、
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像のそれぞれにおいて当該検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定し、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを学習し、
前記学習した第１のパラメータを記憶装置に保存する
画像処理方法。
（付記１３）
特定の検出対象に対して異なる複数のモーダルにより撮影された複数の画像のそれぞれにおいて当該検出対象が含まれる複数の正解領域と、当該検出対象に付されるラベルとを対応付けた正解ラベルを用いて、前記複数の画像の間で共通する所定の位置にそれぞれ対応する複数の候補領域について、前記複数の画像ごとに対応する前記正解領域を含む度合いを判定する処理と、
前記複数の画像のそれぞれから抽出された複数の特徴マップと、前記複数の画像ごとの判定結果の組と、前記正解ラベルとに基づいて、第１のモーダルにより撮影された第１の画像に含まれる前記検出対象の位置と、第２のモーダルにより撮影された第２の画像に含まれる前記検出対象の位置との位置ずれ量を予測する際に用いる第１のパラメータを学習する処理と、
前記学習した第１のパラメータを記憶装置に保存する処理と、
をコンピュータに実行させる画像処理プログラムが格納された非一時的なコンピュータ可読媒体。
【符号の説明】
【０１１０】
１  画像処理装置
１１  判定部
１２  学習部
１３  記憶部
１４  パラメータ
１０１  記憶装置
１０１１  プログラム
１０１２  パラメータ
１０２  メモリ
１０３  プロセッサ
１０００  画像処理システム
１０００ａ  画像処理システム
１００  記憶装置
１１０  学習用データ
１２０  マルチモーダル画像
１２１  モーダルＡ画像
１２２  モーダルＢ画像
１３０  正解ラベル
１３１  正解領域
１３２  正解領域
１３３  ラベル
２００  記憶装置
２１０  辞書
２２０  辞書
２２１  辞書
２２２  辞書
２２３  辞書
２３０  辞書
３１０  特徴マップ抽出部学習ブロック
３１１  特徴マップ抽出部
３１２  学習部
３２０  領域候補選択部学習ブロック
３２１  スコア算出部学習ブロック
３２１１  判定部
３２１２  スコア算出部
３２１３  学習部
３２２  矩形回帰部学習ブロック
３２２２  矩形回帰部
３２２３  学習部
３２３  位置ずれ予測部学習ブロック
３２３２  位置ずれ予測部
３２３３  学習部
３３０  モーダル融合識別部学習ブロック
３３１  モーダル融合識別部
３３２  学習部
４１  入力画像の組
４１１  入力画像
４１１１  背景物体
４１１２  人物
４１２  入力画像
４１２１  背景物体
４１２２  人物
４２  検出候補領域の組
４２１  画像
４２１１  背景物体
４２１２  人物
４２１３  検出候補領域
４２１４  検出候補領域
４２２  画像
４２２１  背景物体
４２２２  人物
４２２３  検出候補領域
４２２４  検出候補領域
４３１  出力画像
４３１１  検出候補領域
４３１２  検出候補領域
４３１３  ラベル
４３１４  ラベル
５００  記憶装置
５１０  入力データ
５２０  マルチモーダル画像
５２１  モーダルＡ画像
５２２  モーダルＢ画像
５３０  出力データ
６１１  モーダル画像入力部
６１２  モーダル画像入力部
６２０  画像認識処理ブロック
６２１  特徴マップ抽出部
６２２  特徴マップ抽出部
６２３  領域候補選択部
６２３１  スコア算出部
６２３２  矩形回帰部
６２３３  位置ずれ予測部
６２３４  選定部
６２３５  算出部
６２４  切り出し部
６２５  切り出し部
６２６  モーダル融合識別部
６２７  検出候補領域
６２８  検出候補領域
６３０  出力部
【図１】
0006943338.tif 000002
【図２】
0006943338.tif 000003
【図３】
0006943338.tif 000004
【図４】
0006943338.tif 000005
【図５】
0006943338.tif 000006
【図６】
0006943338.tif 000007
【図７】
0006943338.tif 000008
【図８】
0006943338.tif 000009
【図９】
0006943338.tif 000010
【図１０】
0006943338.tif 000011