(57)【特許請求の範囲】
【請求項１】
検出対象物の座標が既知の第１画像から、所定の予測モデルを利用して、前記第１画像の複数位置から切り出される検出領域の各々に対する確信度であって、その検出領域内に検出対象物が存在する確からしさを示す確信度を取得する第１の物体検出手段と、
前記第１画像から取得される前記確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、前記確信度に対する閾値である検出閾値を含むパラメータを決定するパラメータ決定手段と、
前記パラメータを基に前記第２画像全領域から検出領域の切出元とする検出領域候補の絞り込みを行った上で、前記予測モデルを利用して、絞り込まれた前記検出領域候補から切り出される検出領域の各々に対して前記確信度を取得し、取得した前記確信度を基に検出対象物を検出する第２の物体検出手段とを備え、
前記パラメータ決定手段は、前記第１画像から取得される前記確信度と検出対象物の座標とに基づいて、前記検出閾値を決定する
ことを特徴とする物体検出装置。
【請求項２】
前記パラメータ決定手段は、前記第１画像における検出対象物の座標に基づいて検出対象物が所定面積比率以上存在する検出領域を物体領域とし、前記物体領域の中で最小の前記確信度を検出閾値に決定する
請求項１記載の物体検出装置。
【請求項３】
前記第２の物体検出手段は、同一画像に対し、１回目で、画像全体を検出領域候補にして、前記確信度を取得し、２回目以降で、前回の前記確信度が検出閾値以上の検出領域を検出領域候補にして、前記確信度を取得する
請求項１または請求項２記載の物体検出装置。
【請求項４】
前記第１の物体検出手段は、各々が異なるスライディング幅に対応する３以上の調整用粒度を用いて、前記調整用粒度ごとに、前記第１画像全体を検出領域候補にして、前記確信度を取得し、
前記パラメータ決定手段は、前記第１画像から取得される前記調整用粒度ごとの各検出領域の前記確信度と検出対象物の座標とに基づき、２以上の検出粒度および各検出粒度における検出閾値を決定し、
前記第２の物体検出手段は、前記２以上の検出粒度の中からスライディング幅が大きい順に選択される１の検出粒度に対応するスライディング幅および検出閾値を用いて、検出領域候補から前記確信度の取得および次回の検出領域候補の決定を行う
請求項３記載の物体検出装置。
【請求項５】
前記パラメータ決定手段は、前記調整用粒度ごとに、検出閾値および検出対象物が存在する検出領域である物体領域の数を求め、前記物体領域の数から求まる各検出粒度における平均検出数を基に、前記調整用粒度の中から２以上の検出粒度を決定する
請求項４記載の物体検出装置。
【請求項６】
前記第１の物体検出手段は、所定のスライディング幅に対応する１つの調整用粒度を用いて、前記第１画像全体を検出領域候補にして前記確信度を取得し、
前記パラメータ決定手段は、前記第１画像から取得される前記確信度と検出対象物の座標とに基づき、前記調整用粒度における検出閾値を求め、前記調整用粒度およびその検出閾値を、検出粒度およびその検出閾値とし、
前記第２の物体検出手段は、同一画像に対し、１回目で、画像全体を検出領域候補にし、該検出領域候補から、前記検出粒度に対応するスライディング幅および前記検出閾値を用いて、検出領域の切り出し、各検出領域の前記確信度の取得および次回の検出領域候補における検出領域の初期位置の決定を行い、２回目で、前回の前記確信度が検出閾値以上の検出領域を検出領域候補にして、各検出領域候補で前記初期位置から検出領域の移動を開始し、かつ各検出領域候補内における検出領域の移動方向および移動量を、移動前の検出領域の位置周辺から取得される前記確信度を基に決定しながら、移動先の検出領域における前記確信度を取得する
請求項１記載の物体検出装置。
【請求項７】
画像の識別子と、検出領域の座標と、該検出領域から前記予測モデルを用いて取得された前記確信度とを対応づけて記憶する確信度記憶手段と、
画像の識別子および検出領域の座標が入力されると、前記確信度記憶手段に、入力された画像の識別子が示す画像の前記入力された座標と所定の閾値以内の距離にある座標の検出領域から取得された前記確信度が記憶されている場合、記憶されている前記確信度を返し、記憶されていない場合、入力された画像の識別子が示す画像の前記入力された座標の検出領域における前記確信度を前記予測モデルを用いて計算する確信度計算手段とを備え、
前記第１の物体検出手段および前記第２の物体検出手段は、前記確信度計算手段を用いて前記確信度を取得する
請求項１から請求項６のうちのいずれかに記載の物体検出装置。
【請求項８】
検出対象物の座標が既知の第１画像から、所定の予測モデルを利用して、前記第１画像の複数位置から切り出される検出領域の各々に対する確信度であって、その検出領域内に検出対象物が存在する確からしさを示す確信度を取得し、
前記第１画像から取得される前記確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、前記確信度に対する閾値である検出閾値を含むパラメータを決定し、
前記パラメータを基に前記第２画像全領域から検出領域の切出元とする検出領域候補の絞り込みを行った上で、前記予測モデルを利用して、絞り込まれた前記検出領域候補から切り出される検出領域の各々に対して前記確信度を取得し、取得した前記確信度を基に検出対象物を検出し、
前記第１画像から取得される前記確信度と検出対象物の座標とに基づいて、前記検出閾値を決定する
ことを特徴とする物体検出方法。
【請求項９】
前記第１画像における検出対象物の座標に基づいて検出対象物が所定面積比率以上存在する検出領域を物体領域とし、前記物体領域の中で最小の前記確信度を検出閾値に決定する
請求項８記載の物体検出方法。
【請求項１０】
コンピュータに、
検出対象物の座標が既知の第１画像から、所定の予測モデルを利用して、前記第１画像の複数位置から切り出される検出領域の各々に対する確信度であって、その検出領域内に検出対象物が存在する確からしさを示す確信度を取得する第１の物体検出処理、
前記第１画像から取得される前記確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、前記確信度に対する閾値である検出閾値を含むパラメータを決定するパラメータ決定処理、および
前記パラメータを基に前記第２画像全領域から検出領域の切出元とする検出領域候補の絞り込みを行った上で、前記予測モデルを利用して、絞り込まれた前記検出領域候補から切り出される検出領域の各々に対して前記確信度を取得し、取得した前記確信度を基に検出対象物を検出する第２の物体検出処理を実行させるための物体検出プログラムであって、
前記パラメータ決定処理で、前記第１画像から取得される前記確信度と検出対象物の座標とに基づいて、前記検出閾値を決定させる
物体検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像から所定の対象物を検出する物体検出装置、物体検出方法および物体検出プログラムに関する。
【背景技術】
【０００２】
近年、教師あり機械学習による画像分類手法を利用して、任意の画像から対象物を検出する手法が広く用いられている。当該手法では、スライディングウィンドウと呼ばれる領域枠を利用して、検出対象とされる画像（以下、「検出画像」という）から検出画像の画像領域よりも小さな領域を検出領域として切り出し、切り出した検出領域に対して画像分類を行うなどの工夫により、検出精度の向上が図られている。【０００３】
機械学習は、人工知能の一種であり、コンピュータに「学習」を可能にするアルゴリズムである。機械学習は、人間が作ったお手本データ（正解ラベル付きの学習データ）を分析し、予測モデルを作成する。このようなお手本データを用いて予測モデルを作成する機械学習は一般に「教師あり機械学習」と呼ばれている。予測モデルを用いることにより、正解ラベルが付されていない（正解が未知の）データに対して、どのラベルに分類されるかや各ラベルに対する確率値などを得ることができるため、将来の値に対する予測などを行うことができる。【０００４】
対象物検出システムでは、検出画像に対して、検出したい対象物と同じくらいの大きさの検出領域を設定し、検出領域を移動させながら検出領域に対象物が存在するか否かを、学習済みの予測モデルを用いて判定する。【０００５】
例えば、画像内において対象物を二分するような検出領域が設定された場合、当該検出領域に対して対象物があると判定されない可能性がある。このような検出漏れをなくすには、検出領域を画像全体に対して上下左右に少しずつ動かしながら対象物の有無を判定すればよいが、移動する度に判定処理が行われるため、移動する回数が増えると画像１枚に対して検出にかかる処理時間が増加する。一方、検出にかかる処理時間を効率化するには、検出領域を大きく動かすなどして判定回数を減らせばよいが、移動距離が大きくなると対象物を見逃しやすくなり、検出漏れのリスクが高くなる。【０００６】
さらには、移動距離を小さくしすぎると、検出画像において検出領域が重複する領域の数が増加する。すると、同一の物体に対して位置等がわずかに異なる多くの検出領域で、対象物が存在すると判定されることも多くなる。このとき、該物体が対象物でない場合であっても、検出領域が物体の一部しか含んでいない等の理由から誤判定される場合がある。このように、スライディング幅が小さくなると、対象物でない物体を対象物であると誤判定する機会が増し、その結果、誤検出が増えて検出精度が悪くなることがある。これを防ぐために、機械学習の分類結果に対する閾値（対象物と判定するための閾値）を上げることも考えられるが、閾値を上げると対象物の検出漏れが起きやすくなる。【０００７】
このように、画像内における検出領域の各方向における移動距離（以下、まとめてスライディング幅と呼ぶ）は、検出の処理速度と検出精度に大きく影響があるパラメータである。しかし、そのようなパラメータに対して、任意の画像において検出精度を高めつつ、検出にかかる処理を効率化できるような値を設定するのは容易ではない。例えば、いくつかの画像に対してスライディング幅を調整しながら検出処理を繰り返して適切な値に設定するなどの試行錯誤が必要であった。【０００８】
対象物の識別精度と演算量の低減の両立に関して、例えば、特許文献１には、簡易な一次識別処理によって対象物を識別し、その結果を基に演算量が相対的に多い二次識別処理におけるスキャン領域の位置・スケール（大きさ）を決定することが記載されている。より具体的には、特許文献１に記載の方法は、スキャン領域の位置またはスケールを変更しながら指定された領域に対して対象物の存否判定を行う一次識別処理の結果を利用して、対象物の略全体を含むように二次識別処理のスキャン領域の位置・スケールを決定する。これにより、同一の対象物に対して位置等がわずかに異なった複数の領域候補が抽出された場合であっても、２次識別処理で同一対象物に対して実質的に無駄な演算を実行せずに済むため、識別精度と演算量の低減が両立できるとされている。【０００９】
また、例えば、特許文献２には、認識対象となるカテゴリ（例えば、歩行者等）の画像領域の候補となる領域を背景画像と識別する際に、信頼度の数値に閾値を設定し、閾値以上の信頼度を持つ領域のみを出力させることが記載されている。このとき、特許文献２に記載の方法は、予め定めた最大個数を超える候補が検出された場合には、最大個数に収まるようにより高い信頼度の閾値を再設定することが記載されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】国際公開第２０１４／１０３４３３号公報
【特許文献２】特開２０１５−０４９７０２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
特許文献１に記載の方法は、１つの検出画像に対して一次識別処理と二次識別処理の２回の教師なし機械学習を行う必要があり、かつ一次識別処理で、対象物を漏れなく検出する必要がある。教師なし機械学習である一次識別処理で、高精度に対象物の存否判定を行うためには、上述したように、スライディング幅および検出領域の大きさが適切に設定される必要がある。しかし、特許文献１にはその際の対象物の識別精度と演算量の低減の両立については何ら考慮されていない。したがって、一次識別処理のスラインディング幅の設定について、上述したような問題が同様に発生する。【００１２】
また、特許文献２に記載の方法は、最大個数が適切に設定されていなければならない。しかし、例えば、スライディング幅が都度変更されるようなシステムでは、スライディング幅に応じて検出領域の総数が変動するため、最大個数を適切に設定することは困難である。このように、検出個数を基準にして信頼度の閾値を定める方法では、スライディング幅に応じた適切な閾値を設定することはできない。【００１３】
本発明は、上述した課題に鑑みてなされたものであり、任意の画像から予測モデルを用いて所定の対象物を検出する際、検出精度を低下させずに、検出にかかる処理を効率化することを目的とする。
【課題を解決するための手段】
【００１４】
本発明による物体検出装置は、検出対象物の座標が既知の第１画像から、所定の予測モデルを利用して、第１画像の複数位置から切り出される検出領域の各々に対する確信度であって、その検出領域内に検出対象物が存在する確からしさを示す確信度を取得する第１の物体検出手段と、第１画像から取得される確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、確信度に対する閾値である検出閾値を含むパラメータを決定するパラメータ決定手段と、パラメータを基に第２画像全領域から検出領域の切出元とする検出領域候補の絞り込みを行った上で、予測モデルを利用して、絞り込まれた検出領域候補から切り出される検出領域の各々に対して確信度を取得し、取得した確信度を基に検出対象物を検出する第２の物体検出手段とを備え、パラメータ決定手段は、第１画像から取得される確信度と検出対象物の座標とに基づいて、検出閾値を決定することを特徴とする。
【００１５】
また、本発明による物体検出方法は、検出対象物の座標が既知の第１画像から、所定の予測モデルを利用して、第１画像の複数位置から切り出される検出領域の各々に対する確信度であって、その検出領域内に検出対象物が存在する確からしさを示す確信度を取得し、第１画像から取得される確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、確信度に対する閾値である検出閾値を含むパラメータを決定し、パラメータを基に第２画像全領域から検出領域の切出元とする検出領域候補の絞り込みを行った上で、予測モデルを利用して、絞り込まれた検出領域候補から切り出される検出領域の各々に対して確信度を取得し、取得した確信度を基に検出対象物を検出し、第１画像から取得される確信度と検出対象物の座標とに基づいて、検出閾値を決定することを特徴とする。
【００１６】
また、本発明による物体検出プログラムは、コンピュータに、検出対象物の座標が既知の第１画像から、所定の予測モデルを利用して、第１画像の複数位置から切り出される検出領域の各々に対する確信度であって、その検出領域内に検出対象物が存在する確からしさを示す確信度を取得する第１の物体検出処理、第１画像から取得される確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、確信度に対する閾値である検出閾値を含むパラメータを決定するパラメータ決定処理、およびパラメータを基に第２画像全領域から検出領域の切出元とする検出領域候補の絞り込みを行った上で、予測モデルを利用して、絞り込まれた検出領域候補から切り出される検出領域の各々に対して確信度を取得し、取得した確信度を基に検出対象物を検出する第２の物体検出処理を実行させるための物体検出プログラムであって、パラメータ決定処理で、第１画像から取得される確信度と検出対象物の座標とに基づいて、検出閾値を決定させることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、任意の画像から予測モデルを用いて所定の対象物を検出する際、検出精度を低下させずに、検出にかかる処理を効率化できる。
【図面の簡単な説明】
【００１８】
【図１】第１の実施形態の物体検出装置１００の例を示すブロック図である。
【図２】検出画像の例を示す説明図である。
【図３】第１の実施形態の物体検出装置１００の動作の概略を示すフローチャートである。
【図４】第１の実施形態の検出閾値調整処理の処理フローの一例を示すフローチャートである。
【図５】第１の実施形態のウィンドウ設定パラメータ決定処理の処理フローの一例を示すフローチャートである。
【図６】検出粒度の平均検出数ＤＣｏｕｎｔの算出例を示す説明図である。
【図７】検出粒度の平均検出数ＤＣｏｕｎｔに基づく粒度ｔｊの決定方法の概要を示す説明図である。
【図８】第１の実施形態の第２の物体検出処理の処理フローの一例を示すフローチャートである。
【図９】スライディングウィンドウ処理（画像全体）の処理フローの一例を示すフローチャートである。
【図１０】スライディングウィンドウ処理（部分領域）の処理フローの一例を示すフローチャートである。
【図１１】確信度計算部５における確信度の取得処理の処理フローの一例を示すフローチャートである。
【図１２】第２の実施形態の検出閾値調整処理の処理フローの一例を示すフローチャートである。
【図１３】第２の実施形態の第２の物体検出処理の処理フローの一例を示すフローチャートである。
【図１４】第２の実施形態の第２の物体検出処理の処理フローの一例を示すフローチャート（つづき）である。
【図１５】本発明の実施形態にかかるコンピュータの構成例を示すブロック図である。
【図１６】本発明の物体検出装置の概要を示すブロック図である。
【発明を実施するための形態】
【００１９】
［実施形態１］
以下、本発明の実施形態について図面を参照して説明する。図１は、第１の実施形態の物体検出装置１００の例を示すブロック図である。図１に示すように、物体検出装置１００は、検出モデル記憶部１と、検出画像記憶部２と、パラメータ調整用画像記憶部３と、物体検出部４と、確信度計算部５と、確信度記憶部６と、検出閾値決定部７と、検出閾値記憶部８と、パラメータ設定部９と、検出結果記憶部１０とを備える。
【００２０】
検出モデル記憶部１は、物体検出に使用する学習済み機械学習モデル（予測モデル）を記憶する。
【００２１】
検出画像記憶部２は、検出画像を記憶する。検出画像記憶部２に記憶される検出画像は１つであっても複数であってもよい。
【００２２】
パラメータ調整用画像記憶部３は、ウィンドウ設定パラメータを決定するために用いる画像であるパラメータ調整用画像を記憶する。パラメータ調整用画像記憶部３に記憶されるパラメータ調整用画像は１つであっても複数であってもよい。ここで、パラメータ調整用画像は、例えば、対象物を被写体に含む画像である。なお、パラメータ調整用画像は、検出画像から検出したい対象物と同じ程度の大きさの対象物が含まれているとより好ましい。パラメータ調整用画像は、後述する教師あり機械学習における学習データとして用いられる。パラメータ調整用画像記憶部３は、例えば、１つ以上のパラメータ調整用画像と、各パラメータ調整用画像において対象物が存在する領域の座標（以下、「正解座標」という）とを記憶する。
【００２３】
ここで、ウィンドウ設定パラメータは、機械学習に渡す検出領域を決定するためのパラメータであって、用いるスライディング幅とそのときの検出閾値とを示す情報を少なくとも含む。本実施形態では、スライディング幅を識別する識別子として、「粒度」という指標を用いる。
【００２４】
粒度は、後述する物体検出処理の対象とされた画像に対する当該物体検出処理における検出領域の切り出しの細かさの度合いを示す指標である。本実施形態では、粒度は、値が大きい程、スライディング幅が小さくなる、すなわち移動距離が小さくなり、検出領域の切り出しが多く行われることを表す。なお、以下では、粒度のレベル数という表現を用いる場合があるが、該「レベル数」は、１回の物体検出処理に用いる粒度が何通りあるか（粒度の個数）を表す。また、粒度について「次レベル」といった場合には、今設定されている該粒度に対して次に高い粒度を表す。また、例えば、粒度レベル１といった場合には、用いる粒度のうち最も粗い（低い）粒度を表す。
【００２５】
また、検出閾値は、後述する確信度計算部５から出力される検出領域に対象物が存在する確からしさを示す指標である確信度に対して、後段の処理で当該検出領域に対象物が存在すると判定する基準とされる閾値である。後段の処理は、例えば、ある検出領域に対する確信度が検出閾値以上であれば、当該検出領域に対象物が存在すると判定すればよい。
【００２６】
物体検出部４は、入力された画像に対して後述する物体検出処理を行う。本実施形態では、物体検出部４は、入力された画像の種別に応じて次の２つの処理を行う。
【００２７】
（１）パラメータ調整用画像が入力された場合（第１の物体検出処理）
物体検出部４は、入力された画像全体に対して、予め定めておいた２以上の調整用の粒度ｔに対応するスライディング幅を用いて、スライディングウィンドウを移動させつつ、各検出領域に対して、機械学習からの分類結果を示す出力値に基づく確信度を取得し、その結果を基に検出結果を出力する。物体検出部４は、粒度ｔごとに、検出結果として各検出領域における確信度を検出閾値決定部７に送る。
【００２８】
第１の物体検出処理で用いる調整用の粒度ｔには、スライディング幅だけでなく、その幅での領域閾値が対応づけられているものとする。領域閾値は、第１の物体検出処理で各検出領域が物体が存在している領域である物体領域と判定されるための、該検出領域における実際の対象物の面積占有率の閾値である。例えば、領域閾値が０．５であれば、検出領域の全面積（画素数）に対して対象物が実際に存在している領域の面積（画素数）である物体面積が５０％以上であれば、当該検出領域は物体領域であると判定される。
【００２９】
なお、第１の物体検出処理において正解座標付きの画像であるパラメータ調整用画像を用いた教師あり機械学習の結果得られる各検出領域の確信度と、正解座標と、領域閾値とを基に、後段の処理で物体検出用のパラメータである検出閾値が調整される。
【００３０】
（２）検出画像が入力された場合（第２の物体検出処理）
物体検出部４は、入力された画像に対して、指定されたウィンドウ設定パラメータにより示されるスライディング幅および検出閾値を用いて、スライディングウィンドウを移動させつつ、機械学習からの分類結果を示す出力値に基づく確信度を取得し、その結果を基に検出結果を出力する。物体検出部４は、検出結果として検出画像において対象物の座標を検出結果記憶部１０に格納する。
【００３１】
なお、第１の物体検出処理および第２の物体検出処理では、検出領域に対する確信度を取得する方法として、対象画像の識別子と検出領域の座標とを確信度計算部５に送り、その返信として取得する方法をとる。
【００３２】
確信度計算部５は、物体検出部４から送られてきた検出領域の座標と対象画像の識別子とを基に次の２つの処理を行う。
【００３３】
（１）確信度記憶部６に、同じ画像について、送られてきた座標と移動閾値Ｒ以内の距離にある座標の検出領域の確信度が格納されている場合
確信度計算部５は、格納されている確信度を返信する。
【００３４】
（２）確信度記憶部６に、同じ画像について、送られてきた座標と移動閾値Ｒ以内の距離にある座標の検出領域の確信度が格納されていない場合
確信度計算部５は、機械学習を用いて、送られてきた座標の検出領域に対する確信度を計算する。確信度計算部５は、例えば、検出モデル記憶部１に格納されている学習済みの機械学習モデル（予測モデル）と、検出領域座標周辺の画像データ（画素値等）とを用いて、該検出領域に対する確信度を計算する。
【００３５】
一般的に、学習済みの機械学習モデルは、入力された画像が学習した画像に似ていれば１に近い値、そうでなければ０に近い値を出力する。確信度計算部５は、この機械学習の出力値を確信度として物体検出部４に送ってもよい。また、確信度計算部５は、ここで計算した確信度を、画像の識別子および検出領域の座標をキーに確信度記憶部６に記憶し、次回以降の当該座標周辺領域に対する確信度の重複演算を防止する。
【００３６】
確信度記憶部６は、画像の識別子と検出領域の座標と確信度とを対応づけて記憶する。
【００３７】
検出閾値決定部７は、物体検出部４から、第１の物体検出処理の結果として全てのパラメータ調整用画像に対する、粒度ｔごとの各検出領域に対する確信度を受け取ると、該結果と正解座標とに基づいて、各粒度に対する検出閾値Ｄｔｈ（ｔ）を決定する。また、検出閾値決定部７は、決定された検出閾値Ｄｔｈ（ｔ）に基づき、各粒度における物体領域の検出数ｃｏｕｎｔ（ｔ）を計算する。
【００３８】
検出閾値記憶部８は、検出閾値決定部７が求めた各粒度に対する検出数ｃｏｕｎｔ（ｔ）および検出閾値Ｄｔｈ（ｔ）を記憶する。
【００３９】
パラメータ設定部９は、検出閾値記憶部８に記憶されている情報を基に、検出画像に対する第２の物体検出処理で用いる粒度である検出粒度ｊおよび各検出粒度における検出閾値Ｄｔｈ（ｊ）とを決定し、ウィンドウ設定パラメータとして物体検出部４に送信する。
【００４０】
検出結果記憶部１０は、第２の物体検出処理の結果を記憶する。検出結果記憶部１０は、例えば、検出画像の識別子とその画像から検出された対象物の座標とを記憶する。
【００４１】
次に、本実施形態の動作を説明する。以下では、図２に示すように、衛星画像などの検出画像から船などの所定の対象物を検出する場合を例に説明する。図２に示すように、本実施形態では、検出画像に対してよりサイズの小さい検出領域をスライディングウインドウで細かく切り出す。そして、切り出した検出領域の各々に対して機械学習を適用して、得られた各検出領域における対象物に対する確信度を基に、検出画像から対象物の座標を検出する。
【００４２】
以下では、図２に示すように、検出領域の横幅および縦幅をそれぞれＷとＨで表し、検出領域の切出元となる検出画像全体の横幅および縦幅をそれぞれＰＷおよびＰＨと表す。
【００４３】
まず、図３を参照して本実施形態の物体検出装置１００の動作の概略を説明する。図３に示すように、まず、物体検出装置１００は、パラメータ調整用画像に対して調整用の粒度ｔを用いた第１の物体検出処理を実施する（ステップＳ０１）。ここでは、物体検出部４と確信度計算部５とが、調整用の粒度ｔを用いて第１の物体検出処理を行い、複数種類のスライディング幅に対応した、検出領域ごとの確信度を得る。
【００４４】
次に、物体検出装置１００は、ステップＳ０１の結果と、パラメータ調整用画像に付された正解座標とに基づいて、各粒度ｔにおける検出閾値と物体検出数を求める（ステップＳ０２）。ここでは、検出閾値決定部７が、粒度ｔごとに、各パラメータ調整用画像について各検出領域に対する確信度と正解座標とを基に物体領域を特定した上で、その特定結果を基に、粒度ごとの検出閾値と物体検出数を求める。
【００４５】
次に、物体検出装置１００は、ステップＳ０２の結果を基に、検出画像に用いるウィンドウ設定パラメータを決定する（ステップＳ０３）。ここでは、パラメータ設定部９が、検出閾値決定部７が求めた粒度ごとの検出閾値と物体検出数を基に、検出画像に用いる検出粒度ｊおよびそれに対応する検出閾値を決定する。
【００４６】
次に、物体検出装置１００は、検出画像に対してステップＳ０３で決定されたウィンドウ設定パラメータにより示される検出粒度ｊおよび検出閾値を用いて、第２の物体検出処理を行い、検出画像から対象物の座標を検出する（ステップＳ０４）。ここでは、物体検出部４が、検出画像に対して、指定されたスライディング幅および検出閾値を用いて検出対象を狭めながら機械学習により対象物を検出する処理を行う。そして、物体検出部４が、検出結果として検出画像における対象物の座標を検出結果記憶部１０に格納する。
【００４７】
次に、上記の各ステップの動作をより具体的に説明する。まず、上記のステップＳ０１およびステップＳ０２の動作に相当する検出閾値調整処理について説明する。図４は、検出閾値調整処理の処理フローの一例を示すフローチャートである。
【００４８】
本例では、まず物体検出部４が、第１の物体検出処理を行う。物体検出部４は、例えば、第１の物体検出処理の動作パラメータの各々を初期値に設定する（ステップＳ１０１）。物体検出部４は、例えば、第１の物体検出処理に用いる検出領域サイズＷ，Ｈや、スライディング幅ＳＷおよびＳＨの初期値ＳＷ１およびＳＨ１や、領域閾値ａの初期値ａ１が入力されると、それらを動作パラメータに設定する。また、調整用の粒度ｔを初期値であるレベル１に設定する。
【００４９】
以下に示す例では、Ｗと、Ｈと、ＳＷ１＝０．５Ｗと、ＳＨ１＝０．５Ｈと、ａ１＝０．５とが入力され、動作パラメータとしてＳＷ＝０．５Ｗ、ＳＨ＝０．５Ｈ、ａ＝０．５、ｔ＝１が設定されたものとする。また、物体検出処理における検出範囲（検出領域の切出元とする範囲）を示すｓｃｏｐｅには、画像全体を示すａｌｌを設定する。
【００５０】
次に、物体検出部４は、パラメータ調整用画像記憶部３から画像を１枚選択する（ステップＳ１０２）。そして、物体検出部４は、選択した画像に対して、ｓｃｏｐｅが示す範囲内でＳＷおよびＳＨずつ検出領域を移動させながら、各検出領域に対する対象物の確信度を確信度計算部５から取得する（ステップＳ１０３：スライディングウィンドウ処理）。なお、ステップＳ１０３におけるスライディングウィンドウ処理の詳細は後述する。
【００５１】
次に、物体検出部４は、全てのパラメータ調整用画像に対して、当該粒度ｔにおける各検出領域に対する確信度の取得が完了したかを判定する（ステップＳ１０４）。完了していなければ（ステップＳ１０４のＮｏ）、ステップＳ１０２に戻り、次のパラメータ調整用画像を選択して同様の処理を繰り返す。一方、完了していれば（ステップＳ１０４のＹｅｓ）、ステップＳ１０５に進む。
【００５２】
ステップＳ１０５では、検出閾値決定部７が、ステップＳ１０３で取得された各パラメータ調整用画像に対する検出結果と、パラメータ調整用画像記憶部３に記憶されている物体座標（正解座標）とに基づいて、物体領域を特定する。検出閾値決定部７は、例えば、パラメータ調整用画像ごとに、設定された検出領域の座標と、正解座標とを対比させて、各検出領域の面積に対していずれかの対象物が領域閾値ａ以上含まれる検出領域を物体領域に特定し、その数を数えるとともにその確信度を収集してもよい。
【００５３】
次に、検出閾値決定部７は、収集した各画像における物体領域の数および確信度を基に、当該粒度ｔに対する検出数ｃｏｕｎｔ（ｔ）および検出閾値Ｄｔｈ（ｔ）を求める（ステップＳ１０６）。ここで、収集した全画像の確信度のうち、最小値を当該粒度ｔにおける検出閾値Ｄｔｈ（ｔ）とし、収集した全画像の物体領域の総数を当該粒度ｔにおける検出数ｃｏｕｎｔ（ｔ）とする。検出閾値決定部７は、このようにして求めた検出数ｃｏｕｎｔ（ｔ）および検出閾値Ｄｔｈ（ｔ）を検出閾値記憶部８に格納する。
【００５４】
次に、物体検出部４は、次レベルの粒度ｔがあるか否かを判定する（ステップＳ１０７）。次レベルの粒度ｔがある場合（ステップＳ１０７のＹｅｓ）、すなわちスライディング幅をさらに縮小できる場合には、粒度ｔを次レベルに設定し、該レベルに対応した値に動作パラメータを更新する（ステップＳ１０８）。そして、ステップＳ１０２に戻り、次のレベルの粒度（ｔ＝ｔ＋１）に対して上記と同様の処理を行う。一方、次レベルの粒度ｔがなければ、すなわちスライディング幅をこれ以上縮小できない場合には（ステップＳ１０７のＮｏ）、ステップＳ１０９に進む。
【００５５】
ステップＳ１０８で、物体検出部４は、次レベルに対応した各動作パラメータの更新として、例えば次のような値を設定してもよい。すなわち、スライディング幅を現在値の半分、すなわちＳＷ＝０．５ｔ＋１ＷおよびＳＨ＝０．５ｔ＋１Ｈとし、さらに領域閾値ａを現在値からその半分量を引き上げた値、すなわちａ＝１−０．５ｔ＋１としてもよい。なお、その後、ｔ＝ｔ＋１とすればよい。
【００５６】
そして、次レベルのＳＷまたはＳＨが１未満になるまで、上記と同様の処理を繰り返す。なお、上記の更新例の場合、物体検出部４は、ステップＳ１０７で、ＳＷまたはＳＨが２以下であるか否かにより、次レベルの調整用粒度の有無を判定してもよい。この場合、現在のＳＷまたはＳＨが２以下であれば、ステップＳ１０９に進み、そうでなければステップＳ１０８に進めばよい。なお、粒度ｔの次レベルの各パラメータの値は上記の例には限定されない。
【００５７】
ステップＳ１０９では、全ての粒度ｔにおける検出数ｃｏｕｎｔ（ｔ）および検出閾値Ｄｔｈ（ｔ）が検出閾値記憶部８に格納されて、当該検出閾値調整処理を終了する。
【００５８】
次に、上記のステップＳ０３に相当するウィンドウ設定パラメータ決定処理について説明する。図５は、ウィンドウ設定パラメータ決定処理の処理フローの一例を示すフローチャートである。
【００５９】
図５に示す例では、まず、パラメータ設定部９は、検出閾値記憶部８に格納されている調整用の粒度ｔごとの検出閾値Ｄｔｈ（ｔ）および検出数ｃｏｕｎｔ（ｔ）を取得する（ステップＳ２０１）。
【００６０】
次に、パラメータ設定部９は、検出数ｃｏｕｎｔ（ｔ）を基に、検出粒度ｊにおける平均検出数ＤＣｏｕｎｔを決定する（ステップＳ２０２）。パラメータ設定部９は、例えば、全ての粒度ｔに対する検出数ｃｏｕｎｔ（ｔ）を合計し、その合計Σｃｏｕｎｔを特定のＤｔで割った値を検出粒度の平均検出数ＤＣｏｕｎｔとしてもよい。ここで、Ｄｔは、検出粒度のレベル数に対応する値であって、本例では、検出粒度のレベル数＝Ｄｔ−１である。
【００６１】
図６は、検出粒度の平均検出数ＤＣｏｕｎｔの算出例を示す説明図である。図６には、Σｃｏｕｎｔが３００であり、Ｄｔが３である場合の検出粒度の平均検出数ＤＣｏｕｎｔの算出例が示されている。この場合、ＤＣｏｕｎｔ＝（Σｃｏｕｎｔ）／Ｄｔ＝１００と算出される。
【００６２】
次に、パラメータ設定部９は、検出粒度ｊにおけるレベル境界となる粒度ｔｊを決定する（ステップＳ２０３）。パラメータ設定部９は、例えば、粒度ｔでの検出数の合計Σｃｏｕｎｔを、Ｄｔに等分するｔｊ（ｊ＝１，２，・・・，Ｄｔ−１）を算出してもよい。
【００６３】
図７は、検出粒度の平均検出数ＤＣｏｕｎｔに基づく粒度ｔｊの決定方法の概要を示す説明図である。図７に示すように、粒度ｔでの検出数の合計Σｃｏｕｎｔを、Ｄｔに等分する位置を理想のレベル境界とみなし、それに最も近づく粒度ｔを、検出粒度ｊにおけるレベル境界となる粒度ｔｊに決定してもよい。図７に示す例では、検出粒度のレベル１（ｊ＝１）に対応する粒度ｔ１＝１、検出粒度のレベル２（ｊ＝２）に対応する粒度ｔ２＝３と決定される。
【００６４】
次に、パラメータ設定部９は、決定した粒度ｔｊに基づいて、各々の検出粒度ｊのスライディング幅および検出閾値を決定する（ステップＳ２０４）。パラメータ設定部９は、例えば、検出粒度ｊ＝粒度ｔｊとして、対応する粒度ｔｊのスライディング幅および検出閾値を、検出粒度のスライディング幅および検出閾値としてもよい。パラメータ設定部９は、例えば、検出粒度ｊの情報として、検出粒度ｊとされる粒度ｔｊを示す情報や、検出粒度ｊごとのＳＷ、ＳＨおよび検出閾値を示す情報を含むウィンドウ設定パラメータを生成してもよい。
【００６５】
次に、上記のステップＳ０４に相当する第２の物体検出処理について説明する。図８は、第２の物体検出処理の処理フローの一例を示すフローチャートである。
【００６６】
図８に示す例では、まず、物体検出部４に、検出画像とともに、上述したウィンドウ設定パラメータ決定処理で決定された、検出粒度ｊごとのＳＷ、ＳＨおよび検出閾値Ｄｔｈを示す情報を含むウィンドウ設定パラメータが入力されるものとする。なお、検出画像が複数、検出画像記憶部２に記憶されている場合には、少なくとも検出画像の数分、当該第２の物体検出処理が呼ばれるものとする。
【００６７】
物体検出部４は、ウィンドウ設定パラメータが入力されると、第２の物体検出処理の動作パラメータの各々を初期値に設定する（ステップＳ３０１）。物体検出部４は、例えば、第２の物体検出処理に用いる検出領域サイズＷ，Ｈや、各々の検出粒度ｊにおけるスライディング幅ＳＷｊおよびＳＨｊや、検出閾値Ｄｔｈ（ｊ）が入力されると、それらを動作パラメータに設定する。このとき、物体検出部４は、検出粒度ｊ＝１であるとして、各動作パラメータに、当該検出粒度ｊに応じた値を設定する。なお、ｊ＝１での物体検出処理における検出範囲を示すｓｃｏｐｅには、画像全体を示すａｌｌを設定する。
【００６８】
次に、物体検出部４は、入力された検出画像に対して、ｓｃｏｐｅが示す範囲内でＳＷおよびＳＨずつ検出領域を移動させながら、各検出領域に対する対象物の確信度を確信度計算部５から取得する（ステップＳ３０２：スライディングウィンドウ処理）。
【００６９】
次に、物体検出部４は、ステップＳ３０２で取得された検出結果に基づいて、物体領域を特定するとともに、次粒度での検出範囲を決定する（ステップＳ３０３〜ステップＳ３０５）。
【００７０】
物体検出部４は、検出閾値Ｄｔｈ（ｊ）以上の確信度をもつ検出領域が存在するか否かを判定する（ステップＳ３０３）。存在すれば（ステップＳ３０３のＹｅｓ）、該検出領域の全てを、検出粒度ｊの次レベルでの検出対象領域とする（ステップＳ３０４）。存在しなければ（ステップＳ３０３のＮｏ）、ステップＳ３０６に移動する。
【００７１】
ステップＳ３０４では、検出粒度ｊの次レベルでの検出対象領域を設定するとともに、検出粒度ｊを次レベルに更新する（ｊ＝ｊ＋１）。このとき、検出粒度ｊの更新に合わせて、他の動作パラメータＳＷ，ＳＨ，Ｄｔｈも更新される。また、ｓｃｏｐｅは、部分領域であることを示すｐａｒｔが設定される。
【００７２】
そして、全ての検出粒度に対してスライディングウィンドウ処理が完了するまで、上記処理を繰り返す（ステップＳ３０５のＮｏ，ステップＳ３０２に戻る）。
【００７３】
全ての検出粒度に対してスライディングウィンドウ処理が完了すると（ステップＳ３０５のＹｅｓ）、検出対象領域として最後まで残った検出領域が物体領域であるとして、該物体領域の座標を、検出結果記憶部１０に記憶する（ステップＳ３０６）。
【００７４】
図９は、物体検出部４によるスライディングウィンドウ処理の処理フローの一例を示すフローチャートである。なお、本例は、上記のステップＳ１０３やステップＳ３０２で、画像全体に対してスライディングウィンドウ処理を行う場合に呼ばれる処理の例である。
【００７５】
画像全体に対するスライディングウィンドウ処理では、物体検出部４は、図９に示すように、まず、検出領域の座標（ｘ，ｙ）を（０，０）に設定する（ステップＳ５１１）。ここで、座標（ｘ，ｙ）は、検出領域の中心座標を表すが、該中心座標には移動閾値Ｒ分の誤差が含まれる。
【００７６】
次に、物体検出部４は、確信度計算部５に当該座標（ｘ，ｙ）を渡して、当該検出領域における確信度を取得する（ステップＳ５１２）。なお、確信度計算部５における確信度の取得処理の処理フローは後述する。
【００７７】
次に、物体検出部４は、検出領域座標（ｘ，ｙ）を横にＳＷ分ずらす（ステップＳ５１３）。ここでは、ｘ＝ｘ＋ＳＷとすればよい。
【００７８】
次に、物体検出部４は、ｘがＰＷ＋Ｗを超えたか否かを判定する（ステップＳ５１４）。超えていなければ（ステップＳ５１４のＮｏ）、ステップＳ５１２に戻り更新後の座標（ｘ，ｙ）にて確信度を得る。一方、超えていれば（ステップＳ５１４のＹｅｓ）、縦方向のスライディング方向を行うため、ステップＳ５１５に進む。
【００７９】
ステップＳ５１５では、物体検出部４は、ｘを初期値０に戻した上で、検出領域座標（ｘ，ｙ）を縦にＳＨ分ずらす。ここでは、ｘ＝０、ｙ＝ｙ＋ＳＨとすればよい。
【００８０】
そして、物体検出部４は、ｙがＰＨ＋Ｈを超えたか否かを判定する（ステップＳ５１６）。超えていなければ（ステップＳ５１６のＮｏ）、ステップＳ５１２に戻り更新後の座標（ｘ，ｙ）にて確信度を得る。一方、超えていれば（ステップＳ５１６のＹｅｓ）、全ての対象領域について検出処理を完了したとして、ステップＳ５１７に進む。
【００８１】
ステップＳ５１７では、物体検出部４は、これまでに得た検出領域の座標（ｘ，ｙ）と確信度の組を検出結果として出力する。
【００８２】
また、図１０は、物体検出部４によるスライディングウィンドウ処理の処理フローの一例を示すフローチャートである。なお、本例は、上記のステップＳ３０２で、画像の部分領域に対してスライディングウィンドウ処理を行う場合に呼ばれる処理の例である。
【００８３】
画像の部分領域に対するスライディングウィンドウ処理では、物体検出部４は、図１０に示すように、まず、検出領域の座標（ｘ，ｙ）を（ｘｃ，ｙｃ）に設定する（ステップＳ５２１）。ここで、座標（ｘ，ｙ）は、検出領域の中心座標を表すが、該中心座標には移動閾値Ｒ分の誤差が含まれる。また、座標（ｘｃ，ｙｃ）には、前回のスライディングウィンドウ処理の結果、検出対象領域とされたうちのいずれかの検出領域の中心座標が指定されることを想定している。
【００８４】
次に、物体検出部４は、確信度計算部５に当該座標（ｘ，ｙ）を渡して、当該検出領域における確信度を取得する（ステップＳ５２２）。
【００８５】
次に、物体検出部４は、検出領域座標（ｘ，ｙ）を横にＳＷ分ずらす（ステップＳ５２３）。ここでは、ｘ＝ｘ＋ＳＷとすればよい。
【００８６】
次に、物体検出部４は、ｘがｘｃ＋Ｗを超えたか否かを判定する（ステップＳ５２４）。超えていなければ（ステップＳ５２４のＮｏ）、ステップＳ５２２に戻り更新後の座標（ｘ，ｙ）にて確信度を得る。一方、超えていれば（ステップＳ５２４のＹｅｓ）、縦方向のスライディング方向を行うため、ステップＳ５２５に進む。
【００８７】
ステップＳ５２５では、物体検出部４は、ｘを初期値ｘｃに戻した上で、検出領域座標（ｘ，ｙ）を縦にＳＨ分ずらす。ここでは、ｘ＝ｘｃ、ｙ＝ｙ＋ＳＨとすればよい。
【００８８】
そして、物体検出部４は、ｙがｙｃ＋Ｈを超えたか否かを判定する（ステップＳ５２６）。超えていなければ（ステップＳ５２６のＮｏ）、ステップＳ５２２に戻り更新後の座標（ｘ，ｙ）にて確信度を得る。一方、超えていれば（ステップＳ５２６のＹｅｓ）、全ての対象領域について検出処理を完了したとして、ステップＳ５２７に進む。
【００８９】
ステップＳ５２７では、物体検出部４は、これまでに得た検出領域の座標（ｘ，ｙ）と確信度の組を検出結果として出力する。
【００９０】
また、図１１は、確信度計算部５における確信度の取得処理の処理フローの一例を示すフローチャートである。図１１に示すように、確信度計算部５は、画像識別子とともに検出領域座標（ｘ，ｙ）が渡されると、同じ画像で、検出領域座標が移動閾値Ｒ以内の距離にある確信度が確信度記憶部６に格納されているか否かを確認する（ステップＳ６０１）。格納されていれば（ステップＳ６０１のＹｅｓ）、格納されている確信度を出力する（ステップＳ６０５）。
【００９１】
一方、格納されていなければ（ステップＳ６０１のＮｏ）、確信度計算部５は、検出領域座標を基に確信度を計算する。確信度計算部５は、検出画像から検出領域座標（ｘ，ｙ）を中心とする幅Ｗ,高さＨの矩形領域を切り出す（ステップＳ６０２）。具体的には、矩形領域（ｘ−Ｗ／２，ｙ−Ｈ／２，ｘ＋Ｗ／２，ｙ＋Ｈ／２）を切り出す。
【００９２】
そして、確信度計算部５は、切り出した矩形領域画像に対して物体検出モデルを用いて画像を分類し、確信度を計算し（ステップＳ６０３）、計算結果を確信度記憶部６に格納する（ステップＳ６０４）。そして、ステップＳ６０５に進み、計算した確信度を出力する。
【００９３】
以上のように、本実施形態によれば、機械学習を用いて任意の検出画像から所定の対象物を検知する際に、得られた確信度を元にスライディング幅を自動調整して、対象物がありそうな場所を絞り込みながら、効率的な演算で物体検出を行うことができる。また、その際、教師あり機械学習により得た検出結果を基に、適切な各検出粒度すなわちスライディング幅および検出閾値を設定することにより、平均検出数となる検出精度を維持しながら、より少ない判定処理で、物体検出を行うことができる。
【００９４】
したがって、任意の画像から予測モデルを用いて所定の対象物を検出する際に、検出精度と検出にかかる処理の効率化とを両立することができる。
【００９５】
また、本実施形態の、検出画像からスライディングウインドウで検出領域を細かく切り出して、教師あり機械学習を用いて切り出した検出領域を所定のカテゴリに分類する方法を利用すれば、該機械学習に用いる学習データを拡張したり選別することもできる。
【００９６】
［実施形態２］
次に、本発明の第２の実施形態を説明する。第１の実施形態では、パラメータ調整用画像を用いて調整された検出粒度に対応する検出閾値に従って、検出対象領域を狭めながら該検出対象領域内を網羅的にスライドさせながら確信度を算出して最終的な検出結果を得た。本実施形態では、第１の実施形態の方法よりも更に確信度の計算回数を削減する。
【００９７】
より具体的には、本実施形態では、第２の物体検出処理における２回目以降のスライディング処理で、確信度が大きくなる方向に検出領域を移動させる。
【００９８】
なお、この方法を使用するためには、機械学習モデル（予測モデル）を、「対象物有（１）」または「対象物なし（０）」の２値で学習させるのではなく、検出領域に対象物がどの程度含まれるのかに基づく値を出力するように学習させる。
【００９９】
以下、第１の実施形態と異なる部分を中心に説明する。本実施形態では、第２の物体検出処理における検出領域の初期位置計算方法が第１の実施形態と異なる。すなわち、本実施形態では、画像全体に対して検出領域を比較的大きな（例えば、検出領域のサイズと同じ幅）で動かし、そのときの確信度が検出閾値よりも大きかった座標を検出領域の初期位置（２回目の検出処理の検出対象領域）とする。
【０１００】
また、本実施形態では、検出閾値を調整する際、調整用の粒度ｔを１つに固定し、かつ第２の物体検出処理の初期粒度と同じ設定（例えば、検出領域のサイズと同じ幅で移動する設定）とする。
【０１０１】
また、本実施形態では、第２の物体検出処理で、２回目以降の検出処理の際、検出領域の移動方向および移動量を次のように決定する。すなわち、当該検出領域において移動先として考えられる各方向（例えば、上下左右斜め方向の８方向）における地点での確信度を計算し、得られた確信度に基づいて決定する。例えば、常に確信度が最も高い方向に移動させてもよいし、確信度を基に確率的に移動方向を定めてもよい。また、例えば、確信度が大きい場合には対象物が近くにある可能性が高いことから、確信度が大きいほど移動量を小さくし、逆に確信度が小さいほど移動量を大きくしてもよい。なお、確信度に対して１つ以上の閾値を用意しておき、各閾値を超えるか否かによって予め定めておいた移動量が設定されるようにしてもよい。
【０１０２】
図１２は、第２の実施形態における検出閾値調整処理の処理フローの一例を示すフローチャートである。なお、図４に示す第１の実施形態の検出閾値調整処理と同じ動作については同じ符号を付し、説明を省略する。
【０１０３】
本例では、まず物体検出部４が、第１の物体検出処理を行う。物体検出部４は、例えば、第１の物体検出処理の動作パラメータの各々を初期値に設定する（ステップＳ１１１）。物体検出部４は、例えば、第１の物体検出処理に用いる検出領域サイズＷ，Ｈや、スライディング幅ＳＷおよびＳＨの初期値ＳＷ１およびＳＨ１や、領域閾値ａの初期値ａ１が入力されると、それらを動作パラメータに設定する。また、調整用の粒度ｔを初期値であるレベル１に設定する。
【０１０４】
以下に示す例では、Ｗと、Ｈと、ＳＷ１＝Ｗと、ＳＨ１＝Ｈと、ａ１＝０．５とが入力され、動作パラメータとしてＳＷ＝Ｗ、ＳＨ＝Ｈ、ａ＝０．５、ｔ＝１に設定されたものとする。また、物体検出処理における検出範囲を示すｓｃｏｐｅには、画像全体を示すａｌｌを設定する。なお、本例では調整用の粒度ｔは１つのみ（ｔ＝１のみ）である。
【０１０５】
ステップＳ１０２〜ステップＳ１０５までは第１の実施形態と同様である。すなわち、物体検出部４が、全てのパラメータ調整用画像に対して、現在の粒度での各検出領域に対する確信度を取得し、検出閾値決定部７が、その結果と正解座標とに基づいて、物体領域を特定する。
【０１０６】
そして、検出閾値決定部７は、特定した物体領域を基に、当該粒度における検出閾値を決定する（ステップＳ１１２）。本実施形態でも、検出閾値決定部７は、物体領域の確信度のうち最小値を検出閾値とすればよい。
【０１０７】
なお、パラメータ設定部９は、ステップＳ１１２で決定された粒度ｔにおける検出閾値を、そのまま第２の物体検出処理における検出粒度ｊ＝ｔ＝１における検出閾値とする。パラメータ設定部９は、例えば、検出粒度ｊの情報として、検出粒度ｊとされる粒度ｔｊを示す情報や、検出粒度ｊのＳＷ、ＳＨおよび検出閾値を示す情報を含むウィンドウ設定パラメータを生成してもよい。
【０１０８】
また、図１３および図１４は、本実施形態における第２の物体検出処理の処理フローの一例を示すフローチャートである。
【０１０９】
本実施形態では、まず、物体検出部４に、検出画像とともに、上述したウィンドウ設定パラメータ決定処理で決定された、検出粒度ｊのＳＷ、ＳＨおよび検出閾値Ｄｔｈを示す情報を含むウィンドウ設定パラメータが入力されるものとする。なお、検出画像が複数、検出画像記憶部２に記憶されている場合には、少なくとも検出画像の数分、当該第２の物体検出処理が呼ばれるものとする。
【０１１０】
物体検出部４は、ウィンドウ設定パラメータが入力されると、第２の物体検出処理の動作パラメータの各々を初期値に設定する（ステップＳ３１１）。なお、検出粒度ｊが１に固定されるだけで、初期値の設定方法は、第１の実施形態と同様である。なお、本例では、ＳＷ＝Ｗ、ＳＨ＝Ｈが設定されたとする。
【０１１１】
ステップＳ３０２およびステップＳ３０３の処理は第１の実施形態と同様である。
【０１１２】
なお、ステップＳ３０３で、確信度が検出閾値Ｄｔｈ以上の検出領域が存在しなければ、物体検出部４は、検出画像に対象物は存在しないとする検出結果を出力して処理を終了する（ステップＳ３０３のＮｏ、ステップＳ３１２）。
【０１１３】
一方、確信度が検出閾値Ｄｔｈ以上の検出領域が存在した場合、物体検出部４は、当該検出領域を、検出領域初期位置に設定する（ステップＳ３１３）。なお、ステップＳ３１１〜ステップＳ３１３の処理を、検出領域候補の初期位置決定処理と呼ぶ場合がある。
【０１１４】
次に、物体検出部４は、検出領域候補の初期位置決定処理で設定された検出領域初期位置の中から１つを選択し（ステップＳ３１４）、検出領域を該検出領域初期位置に設定する（ステップＳ３１５）。
【０１１５】
次に、物体検出部４は、検出領域周辺の確信度を取得する（ステップＳ３１６）。物体検出部４は、例えば、現在の検出領域の中心座標に対して、移動可能な方向ごとに当該方向に移動閾値Ｒ以上の所定の量を足した座標を指定して確信度を確信度計算部５から取得してもよい。
【０１１６】
そして、物体検出部４は、取得した確信度に基づいて、移動方向および移動量を決定する（ステップＳ３１７、ステップＳ３１８）。
【０１１７】
物体検出部４は、初期位置からの移動量が移動閾値Ｒを上回っている間、上記の処理を繰り返す（ステップＳ３１９のＮｏ，ステップＳ３１５に戻る）。一方、初期位置からの移動量が移動閾値Ｒ以下となった場合には、検出結果記憶部１０に当該検出領域の座標を物体座標として保存する（ステップＳ３１９のＹｅｓ，ステップＳ３２０）。
【０１１８】
また、物体検出部４は、全ての検出領域候補に対してステップＳ３１５〜ステップＳ３２０の検出処理を行う（ステップＳ３２１のＮｏ，ステップＳ３１４に戻る）。
【０１１９】
最後に、物体検出部４は、全ての検出領域候補に対してステップＳ３１５〜ステップＳ３２０の検出処理が完了すると、これまでに保存された検出領域の座標を物体座標とする検出結果を出力する（ステップＳ３２２）。
【０１２０】
以上のように、本実施形態によれば、さらに第１の実施形態の方法よりも更に確信度の計算回数を削減できる。
【０１２１】
［その他の実施形態］
なお、上記の実施形態では、検出画像から船などの特定の対象物を検出する例を示したが、例えば、対象物が複数（例えば、船と飛行機と車、第１の船と第２の船、など）ある場合にも上記の方法は適用可能である。その場合、対象物として分類したい物体をカテゴリに分けて、カテゴリごとに予測モデルおよびパラメータ調整用画像を切り替えて上記の方法を実施すればよい。
【０１２２】
次に、本発明の実施形態にかかるコンピュータの構成例を示す。図１５は、本発明の実施形態にかかるコンピュータの構成例を示す概略ブロック図である。コンピュータ１０００は、ＣＰＵ１００１と、主記憶装置１００２と、補助記憶装置１００３と、インタフェース１００４と、ディスプレイ装置１００５と、入力デバイス１００６とを備える。
【０１２３】
上述の物体検出装置は、例えば、コンピュータ１０００に実装されてもよい。その場合、各装置の動作は、プログラムの形式で補助記憶装置１００３に記憶されていてもよい。ＣＰＵ１００１は、プログラムを補助記憶装置１００３から読み出して主記憶装置１００２に展開し、そのプログラムに従って上記の実施形態における所定の処理を実施する。
【０１２４】
補助記憶装置１００３は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例として、インタフェース１００４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ１０００に配信される場合、配信を受けたコンピュータは１０００がそのプログラムを主記憶装置１００２に展開し、上記の実施形態における所定の処理を実行してもよい。
【０１２５】
また、プログラムは、各実施形態における所定の処理の一部を実現するためのものであってもよい。さらに、プログラムは、補助記憶装置１００３に既に記憶されている他のプログラムとの組み合わせで上記の実施形態における所定の処理を実現する差分プログラムであってもよい。
【０１２６】
インタフェース１００４は、他の装置との間で情報の送受信を行う。また、ディスプレイ装置１００５は、ユーザに情報を提示する。また、入力デバイス１００６は、ユーザからの情報の入力を受け付ける。
【０１２７】
また、実施形態における処理内容によっては、コンピュータ１０００の一部の要素は省略可能である。例えば、装置がユーザに情報を提示しないのであれば、ディスプレイ装置１００５は省略可能である。
【０１２８】
また、各装置の各構成要素の一部または全部は、汎用または専用の回路（Circuitry）、プロセッサ等やこれらの組み合わせによって実施される。これらは単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。また、各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
【０１２９】
各装置の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【０１３０】
また、図１６は、本発明の物体検出装置の概要を示すブロック図である。図１６に示すように、本発明の物体検出装置５０は、第１の物体検出手段５０１と、パラメータ決定手段５０２と、第２の物体検出手段５０３とを備えていてもよい。
【０１３１】
第１の物体検出手段５０１（例えば、物体検出部４の第１の物体検出処理部分）は、検出対象物の座標が既知の第１画像に対し、所定の予測モデルを利用して、第１画像の複数位置から切り出される検出領域の各々に対する確信度であってその検出領域内に検出対象物が存在する確からしさを示す確信度を取得する。
【０１３２】
パラメータ決定手段５０２（例えば、検出閾値決定部７およびパラメータ設定部９）は、第１画像から取得される確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、確信度に対する閾値である検出閾値を含むパラメータを決定する。
【０１３３】
第２の物体検出手段５０３（例えば、物体検出部４の第２の物体検出処理部分）は、パラメータを基に、第２画像全領域から検出領域を切り出す元とする検出領域候補の絞り込みを行った上で、予測モデルを利用して、検出領域候補から切り出した検出領域に対して確信度を取得し、取得した確信度を基に、検出対象物を検出する。
【０１３４】
このような構成により、第２画像に対して検出対象物が存在しそうな位置に検出領域候補を適切に絞り込むことができるので、任意の画像から予測モデルを用いて所定の対象物を検出する際、検出精度を低下させずに、検出にかかる処理を効率化できる。
【０１３５】
なお、上記の実施形態は以下の付記のようにも記載できる。
【０１３６】
（付記１）検出対象物の座標が既知の第１画像から、所定の予測モデルを利用して、第１画像の複数位置から切り出される検出領域の各々に対する確信度であって、その検出領域内に検出対象物が存在する確からしさを示す確信度を取得する第１の物体検出手段と、第１画像から取得される確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、確信度に対する閾値である検出閾値を含むパラメータを決定するパラメータ決定手段と、パラメータを基に第２画像全領域から検出領域の切出元とする検出領域候補の絞り込みを行った上で、予測モデルを利用して、絞り込まれた検出領域候補から切り出される検出領域の各々に対して確信度を取得し、取得した確信度を基に検出対象物を検出する第２の物体検出手段とを備えたことを特徴とする物体検出装置。
【０１３７】
（付記２）パラメータ決定手段は、第１画像から取得される確信度と検出対象物の座標とに基づいて、検出閾値を決定する付記１記載の物体検出装置。
【０１３８】
（付記３）パラメータ決定手段は、第１画像における検出対象物の座標に基づいて検出対象物が所定面積比率以上存在する検出領域を物体領域とし、物体領域の中で最小の確信度を検出閾値に決定する付記１または付記２記載の物体検出装置。
【０１３９】
（付記４）第２の物体検出手段は、同一画像に対し、１回目で、画像全体を検出領域候補にして、確信度を取得し、２回目以降で、前回の確信度が検出閾値以上の検出領域を検出領域候補にして、確信度を取得する付記１から付記３のうちのいずれかに記載の物体検出装置。
【０１４０】
（付記５）第１の物体検出手段は、各々が異なるスライディング幅に対応する３以上の調整用粒度を用いて、調整用粒度ごとに、第１画像全体を検出領域候補にして、確信度を取得し、パラメータ決定手段は、第１画像から取得される調整用粒度ごとの各検出領域の確信度と検出対象物の座標とに基づき、２以上の検出粒度および各検出粒度における検出閾値を決定し、第２の物体検出手段は、２以上の検出粒度の中からスライディング幅が大きい順に選択される１の検出粒度に対応するスライディング幅および検出閾値を用いて、検出領域候補から確信度の取得および次回の検出領域候補の決定を行う付記４記載の物体検出装置。
【０１４１】
（付記６）パラメータ決定手段は、調整用粒度ごとに、検出閾値および検出対象物が存在する検出領域である物体領域の数を求め、物体領域の数から求まる各検出粒度における平均検出数を基に、調整用粒度の中から２以上の検出粒度を決定する付記５記載の物体検出装置。
【０１４２】
（付記７）第１の物体検出手段は、所定のスライディング幅に対応する１つの調整用粒度を用いて、第１画像全体を検出領域候補にして確信度を取得し、パラメータ決定手段は、第１画像から取得される確信度と検出対象物の座標とに基づき、調整用粒度における検出閾値を求め、調整用粒度およびその検出閾値を、検出粒度およびその検出閾値とし、第２の物体検出手段は、同一画像に対し、１回目で、画像全体を検出領域候補にし、該検出領域候補から、検出粒度に対応するスライディング幅および検出閾値を用いて、検出領域の切り出し、各検出領域の確信度の取得および次回の検出領域候補における検出領域の初期位置の決定を行い、２回目で、前回の確信度が検出閾値以上の検出領域を検出領域候補にして、各検出領域候補で初期位置から検出領域の移動を開始し、かつ各検出領域候補内における検出領域の移動方向および移動量を、移動前の検出領域の位置周辺から取得される確信度を基に決定しながら、移動先の検出領域における確信度を取得する付記１または付記２記載の物体検出装置。
【０１４３】
（付記８）画像の識別子と、検出領域の座標と、該検出領域から予測モデルを用いて取得された確信度とを対応づけて記憶する確信度記憶手段と、画像の識別子および検出領域の座標が入力されると、確信度記憶手段に、入力された画像の識別子が示す画像の入力された座標と所定の閾値以内の距離にある座標の検出領域から取得された確信度が記憶されている場合、記憶されている確信度を返し、記憶されていない場合、入力された画像の識別子が示す画像の入力された座標の検出領域における確信度を予測モデルを用いて計算する確信度計算手段とを備え、第１の物体検出手段および第２の物体検出手段は、確信度計算手段を用いて確信度を取得する付記１から付記７のうちのいずれかに記載の物体検出装置。
【０１４４】
（付記９）検出対象物の座標が既知の第１画像から、所定の予測モデルを利用して、第１画像の複数位置から切り出される検出領域の各々に対する確信度であって、その検出領域内に検出対象物が存在する確からしさを示す確信度を取得し、第１画像から取得される確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、確信度に対する閾値である検出閾値を含むパラメータを決定し、パラメータを基に第２画像全領域から検出領域の切出元とする検出領域候補の絞り込みを行った上で、予測モデルを利用して、絞り込まれた検出領域候補から切り出される検出領域の各々に対して確信度を取得し、取得した確信度を基に検出対象物を検出することを特徴とする物体検出方法。
【０１４５】
（付記１０）コンピュータに、検出対象物の座標が既知の第１画像から、所定の予測モデルを利用して、第１画像の複数位置から切り出される検出領域の各々に対する確信度であって、その検出領域内に検出対象物が存在する確からしさを示す確信度を取得する第１の物体検出処理、第１画像から取得される確信度に基づいて、検出対象物の存否が未知の第２画像から検出対象物を検出する際に用いるパラメータであって、確信度に対する閾値である検出閾値を含むパラメータを決定するパラメータ決定処理、およびパラメータを基に第２画像全領域から検出領域の切出元とする検出領域候補の絞り込みを行った上で、予測モデルを利用して、絞り込まれた検出領域候補から切り出される検出領域の各々に対して確信度を取得し、取得した確信度を基に検出対象物を検出する第２の物体検出処理を実行させるための物体検出プログラム。
【０１４６】
以上、本実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１４７】
この出願は、２０１７年３月２２日に出願された日本特許出願２０１７−０５５６７９を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１４８】
本発明は、学習済みの機械学習モデル以外の予測モデルを用いて検出対象物を検出する場合にも好適に適用可能である。
【符号の説明】
【０１４９】
１００  物体検出装置
１  検出モデル記憶部
２  検出画像記憶部
３  パラメータ調整用画像記憶部
４  物体検出部
５  確信度計算部
６  確信度記憶部
７  検出閾値決定部
８  検出閾値記憶部
９  パラメータ設定部
１０  検出結果記憶部
１０００  コンピュータ
１００１  ＣＰＵ
１００２  主記憶装置
１００３  補助記憶装置
１００４  インタフェース
１００５  ディスプレイ装置
１００６  入力デバイス
５０  物体検出装置
５０１  第１の物体検出手段
５０２  パラメータ決定手段
５０３  第２の物体検出手段
【図１】
0006766950.tif 000002
【図２】
0006766950.tif 000003
【図３】
0006766950.tif 000004
【図４】
0006766950.tif 000005
【図５】
0006766950.tif 000006
【図６】
0006766950.tif 000007
【図７】
0006766950.tif 000008
【図８】
0006766950.tif 000009
【図９】
0006766950.tif 000010
【図１０】
0006766950.tif 000011
【図１１】
0006766950.tif 000012
【図１２】
0006766950.tif 000013
【図１３】
0006766950.tif 000014
【図１４】
0006766950.tif 000015
【図１５】
0006766950.tif 000016
【図１６】
0006766950.tif 000017