(57)【要約】【課題】より短時間で目標物を検出できるようにした目標検出プログラム、目標検出装置、及び目標検出方法を提供すること。【解決手段】入力画像に対して探索する領域を決定し、決定した前記領域において第１の精度で前記入力画像に含まれる目標物を探索し、前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記第１の精度よりも高い第２の精度で、前記目標物の候補を含む領域において前記目標物を探索して、前記目標物の有無を判定する処理をコンピュータに実行させる目標検出プログラム。【選択図】図１０
2020071793.tif 000002
【特許請求の範囲】
【請求項１】
入力画像に対して探索する領域を決定し、
決定した前記領域において第１の精度で前記入力画像に含まれる目標物を探索し、
前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記第１の精度よりも高い第２の精度で、前記目標物の候補を含む領域において前記目標物を探索して、前記目標物の有無を判定する
処理をコンピュータに実行させる目標検出プログラム。
【請求項２】
更に、前記入力画像に対して第１の解像度を有する第１の画像と、前記第１の解像度より解像度の高い第２の解像度を有する第２の画像とを生成し、
前記第１の画像において探索する領域を決定し、
前記第１の精度は前記第１の解像度であり、前記第２の精度は前記第２の解像度であることを特徴とする
ことを特徴とする請求項１記載の目標検出プログラム。
【請求項３】
決定した前記領域において第１の精度で前記入力画像に含まれる目標物を、前記目標物の種別毎に探索し、
前記第２の精度で、前記目標物の候補を含む領域において前記目標物を、前記目標物の種別毎に探索する
ことを特徴とする請求項１記載の目標検出プログラム。
【請求項４】
前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記目標物の候補を含む領域のうち、少なくとも一部の領域を前記第２の精度で、前記目標物を探索することを特徴とする請求項１記載の目標検出プログラム。
【請求項５】
前記第１及び第２の精度で探索した結果に含まれる矩形に関する情報に基づいて、前記目標物を含む矩形を検出することで、前記目標物の有無を判定することを特徴とする請求項１記載の目標検出プログラム。
【請求項６】
入力画像に対して探索する領域を決定し、決定した前記領域において第１の精度で前記入力画像に含まれる目標物を探索し、前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記第１の精度よりも高い第２の精度で、前記目標物の候補を含む領域において前記目標物を探索して、前記目標物の有無を判定する目標検出部
を備えることを特徴とする目標検出装置。
【請求項７】
目標検出装置における目標検出方法であって、
入力画像に対して探索する領域を決定し、決定した前記領域において第１の精度で前記入力画像に含まれる目標物を探索し、前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記第１の精度よりも高い第２の精度で、前記目標物の候補を含む領域において前記目標物を探索して、前記目標物の有無を判定する
ことを特徴とする目標検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、目標検出プログラム、目標検出装置、及び目標検出方法に関する。
【背景技術】
【０００２】
近年、８Ｋ（４３２０ライン×７６８０画素）画像を超える多画素高精細な画像を用いて、目標物を検出する目標検出装置が注目されつつある。このような多画素高精細な画像を用いた目標検出装置では、精度良く、目標物を検出することが可能となる。しかし、多画素高精細な画像は、画素数が多いことから、目標検出装置においては、処理に時間がかかり、目標物検知に時間がかかる場合がある。
【０００３】
一般に目標検出装置では、目標検出する画像全体に対して検出目標の画素数が小さいことから、目標検出する画像全体を検出目標のテンプレート画像などにより、スキャンすることが行われる。
【０００４】
多画素画像を用いた目標検出装置として、例えば、以下のような技術がある。すなわち、多画素画像の画像信号を二値化後、局所空間相関処理とフレーム時間相関処理とを行って、その出力を用いてＣＰＵ（Central Processing Unit）により目標を検知する目標検出装置がある。この場合、局所空間相関処理では、画面毎に複数の画素からなる局所領域の各画素の信号を積算して閾値（ThP）を用いて二値化する処理が行われる。また、フレーム時間相関処理では、局所領域の代表画素の連続する複数フレームの同一位置の画素信号を積算して閾値（ThF）を用いて二値化する処理が行われる。
【０００５】
この技術によれば、多画素の画像センサを使用し目標を自動的に検知する自動目標検知方法を開発することができる、とされる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平６−３６０３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、上述した、目標検出する画像全体をスキャンして、繰り返し局所空間相関処理を行う方式では、処理時間が膨大になり、目標物の検知に時間がかかる場合がある。
【０００８】
そこで、一開示は、より短時間で目標物を検出できるようにした目標検出プログラム、目標検出装置、及び目標検出方法を提供することにある。
【課題を解決するための手段】
【０００９】
一開示は、入力画像に対して探索する領域を決定し、決定した前記領域において第１の精度で前記入力画像に含まれる目標物を探索し、前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記第１の精度よりも高い第２の精度で、前記目標物の候補を含む領域において前記目標物を探索して、前記目標物の有無を判定する処理をコンピュータに実行させる目標検出プログラムにある。
【発明の効果】
【００１０】
一開示によれば、より短時間で目標物を検出することが可能である
【図面の簡単な説明】
【００１１】
【図１】図１は目標検出システムの構成例を表す図である。
【図２】図２は目標検出装置の構成例を表す図である。
【図３】図３は動作例を表すフローチャートである。
【図４】図４は「Ｓ３処理」の動作例を表すフローチャートである。
【図５】図５（Ａ）と図５（Ｂ）は入力用ウィンドウの例を表す図である。
【図６】図６（Ａ）は縮小画像、図６（Ｂ）は縮小画像に入力用ウィンドウを適用した場合の例を夫々表す図である。
【図７】図７（Ａ）と図７（Ｂ）は検出結果の例を表す図である。
【図８】図８（Ａ）は縮小画像に入力ウィンドウを適用した場合の例、図８（Ｂ）は検出結果の例を夫々表す図である。
【図９】図９（Ａ）から図９（Ｃ）は矩形の関係例を表す図である。
【図１０】図１０は処理の流れを表す図である。
【図１１】図１１はハードウェア構成例を表す図である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について説明する。なお、以下の実施例は開示の技術を限定するものではない。そして、各実施の形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【００１３】
［第１の実施の形態］
＜目標検出システムの構成例＞
図１は第１の実施の形態における目標検出システム１０の構成例を表す図である。
【００１４】
目標検出システム１０は、カメラ１００と目標検出装置２００を備える。
【００１５】
カメラ１００は、複数の画素センサを備え、複数の画素センサにより多画素高精細画像の画像データを生成することが可能である。多画素高精細画像としては、例えば、１２６００ライン×１９５８０画素の画像などがある。以下では、多画素構成画像のことを、単に「画像」と称する場合がある。また、画像データと画像とを区別しないで用いる場合がある。
【００１６】
なお、多画素高精細画像は、例えば、カメラ１００において１回の撮影で撮像された１フレーム分の画像でもよいし、１フレーム分の画像を複数回撮影して得られる画像でもよい。また、多画素高精細画像としては、例えば、４Ｋ（２１６０ライン×３８４０画素）や８Ｋなどの画像でもよいし、それ以外の画像でもよい。
【００１７】
図１の例では、カメラ１００は、船の画像を取得する例を表している。
【００１８】
目標検出装置２００は、カメラ１００から出力された画像に対して、その画像に含まれる目標物を検出する。そして、目標検出装置２００は、検出した目標物の画像などを目標類識別装置とモニタへ出力する。
【００１９】
目標類識別装置では、例えば、どのような船であるか、或いはどの会社が製造した船であるかなど、目標物の画像を更に詳細に識別することが可能である。
【００２０】
また、モニタでは、目標物の画像を表示することが可能である。
【００２１】
＜目標検出装置の構成例＞
図２は目標検出装置２００の構成例を表す図である。
【００２２】
目標検出装置２００は、縮小画像生成部２１０と、画像選択部２２０、目標検出部２３０、結果合成部２４０、及び出力情報生成部２５０を備える。
【００２３】
縮小画像生成部２１０は、カメラ１００から出力された画像（又は入力画像）に対して、縮小画像を生成する。縮小画像としては、例えば、カメラ１００から出力された入力画像に対して、入力画像の縦方向の画素数を１倍、横方向の画素数を１倍にした画像（＝入力画像＝×１）がある。また、縮小画像としては、例えば、入力画像の縦方向の画素数を１／２倍、横方向の画素数を１／２倍、全部で１／４倍（＝×１／４）にした縮小画像がある。さらに、縮小画像としては、例えば、入力画像に対して、縦方向に１／４倍、横方向を１／４倍、全部で１／１６倍（＝×１／１６）にした縮小画像などがある。
【００２４】
以下では、入力画像を含む一連の画像を縮小画像と称する場合がある。また、これら縮小画像の集合を、画像ピラミッドと称する場合がある。また、以下では、画素数と解像度とを区別しないで用いる場合がある。例えば、入力画像の画素数を縦方向と横方向と合わせて１／４倍にした画像と、解像度が１／４倍の画像とは同じ意味で用いる場合がある。
【００２５】
また、縮小画像のうち、入力画像を解像度レベル０の画像、×１／４の縮小画像を解像度レベル１の画像、×１／１６の縮小画像を解像度レベル２の画像、などとそれぞれ称する場合がある。解像度レベルは、例えば、１フレームの画像の解像度に応じたレベルを表す。縮小画像には、例えば、解像度レベルの異なる複数の縮小画像が含まれる。
【００２６】
縮小画像生成部２１０は、生成した複数の縮小画像を画像選択部２２０へ出力する。
【００２７】
画像選択部２２０は、複数の縮小画像に対して、解像度レベルが隣接するペアの縮小画像を選択する。例えば、画像選択部２２０は、解像度レベル０の縮小画像と、解像度レベル１の縮小画像とを１つのペアとして選択し、解像度レベル２の縮小画像と、解像度レベル３の縮小画像とを１つのペアとして選択する、などである。
【００２８】
また、画像選択部２２０は、例えば、選択したペアのうち解像度レベルの低い縮小画像を目標検出部２３０へ出力する。そして、画像選択部２２０は、例えば、目標検出部２３０から、解像度レベルの低い縮小画像に対する検出結果を取得すると、解像度レベルの高い縮小画像のうち、検出結果に対応する一部の画像（例えば矩形画像）を目標検出部２３０へ出力する。
【００２９】
さらに、画像選択部２２０は、入力画像（ｘ１倍の縮小画像）を出力情報生成部２５０へ出力する。
【００３０】
目標検出部２３０は、入力画像において探索する領域を決定し、決定した領域において第１の精度で入力画像に含まれる目標物を探索する。そして、目標検出部２３０は、第１の精度で探索した結果、目標物の候補があると判定したとき、第１の精度よりも高い第２の精度で、目標物の候補を含む領域において目標物を探索する。
【００３１】
具体的には、目標検出部２３０は、例えば、以下の処理を行う。すなわち、目標検出部２３０は、ペアの縮小画像のうち、解像度レベルの低い縮小画像に対して、予め用意された入力用ウィンドウにより探索領域を決定する。そして、目標検出部２３０は、決定した探索領域において、縮小画像に含まれる目標物を探索する。目標検出部２３０は、目標物を検出すると、検出結果を画像選択部２２０と結果合成部２４０へ出力する。また、目標検出部２３０は、探索した結果、目標物があるときは、画像選択部２２０から取得した、ペアの縮小画像のうち解像度レベルの高い縮小画像の一部を、目標物を含む領域として、その領域において目標物を探索する。目標検出部２３０は、検出結果を結果合成部２４０へ出力する。
【００３２】
このように、目標検出部２３０では、例えば、ペアの縮小画像のうち、解像度の低い画像を用いて、目標物を探索し、目標物（又は目標物の有無）を検出できると、解像度の高い画像の一部を用いて目標物を探索する。
【００３３】
目標検出部２３０では、解像度レベルの低い画像に対しても、解像度レベルの高い画像に対しても、目標検出処理を行うことで、目標物を探索し、目標物（又は目標物の有無）を検出する。目標検出処理としては、例えば、ディープラーニングによる公知の物体検出手法が用いられてもよい。目標検出部２３０は、目標検出処理を行うことで、目標物を含む矩形の情報と、その目標物のクラス（又は種別）の情報などを取得することで、目標物（又は目標物の有無）の検出が可能となる。
【００３４】
なお、以下において、目標検出処理に関し、解像度レベルの低い縮小画像に対する目標検出処理を「Ｓ１処理」、解像度レベルの高い縮小画像に対する目標検出処理を「Ｓ２処理」とそれぞれ称する場合がある。
【００３５】
目標検出部２３０は、「Ｓ１処理」による検出結果と、「Ｓ２処理」による検出結果とを結果合成部２４０へ出力する。なお、いずれの検出結果も、例えば、画像内において目標物を含む矩形の情報が含まれる。
【００３６】
結果合成部２４０は、第１及び第２の精度で探索した結果に基づいて、入力画像に含まれる目標物（又は目標物の有無）を検出する。具体的には、結果合成部２４０は、「Ｓ１処理」と「Ｓ２処理」により得た複数の矩形について、重なっているか否かを判定し、重なっていると判定したときは、いずれか一方を残し、他方を削除する。このように矩形を削除するアルゴリズムを削除アルゴリズムと称する場合がある。結果合成部２４０は、例えば、複数の矩形の中から、削除アルゴリズムを用いて、１つの矩形を選択する。選択した１つの矩形には、目標物が含まれるため、結果合成部２４０は、例えば、このような矩形を検出することで、目標物（又は目標物の有無）を検出する。結果合成部２４０は、このように選択した矩形に関する情報を出力情報生成部２５０へ出力する。
【００３７】
出力情報生成部２５０は、結果合成部２４０から取得した結果に基づいて、入力画像に含まれる目標物の画像を出力する。具体的には、出力情報生成部２５０は、例えば、結果合成部２４０から取得した矩形に関する情報に基づいて、入力画像のうち、矩形内の画像を、目標物の画像として出力する。矩形内には、例えば、目標物の画像が写っているため、出力情報生成部２５０は、矩形の情報（中心座標、高さ、及び幅など）を利用して、入力画像から矩形内の画像を切り取ることで、目標物の画像を出力することが可能となる。出力情報生成部２５０は、目標物の画像と、クラスの情報などを目標類識別装置やモニタへ出力する。
【００３８】
＜動作例＞
図３は、動作例を表すフローチャートである。
【００３９】
目標検出装置２００は、処理を開始すると（Ｓ１０）、ｐ＝０から順番に、ｐ＝ｐｍａｘとなるまで、Ｓ１２からＳ１５までの処理を繰り返す。ここで、ｐは、例えば、０以上の整数を表す。解像度レベルの最大値をｑとすると、ｑ＝２ｐｍａｘ＋１（奇数）となる。
【００４０】
次に、目標検出装置２００は、入力画像から、縮小画像Ｉ２ｐ，Ｉ２ｐ＋１のペアを生成する（Ｓ１２）。
【００４１】
縮小画像Ｉｘは、例えば、入力画像に対して、縦方向も横方向も画素数を（１／２）ｘ倍にした画像を表す。
【００４２】
例えば、縮小画像生成部２１０は、ｐ＝０のとき、入力画像に対して、画素数を１倍した縮小画像Ｉ０（＝入力画像）と、画素数を縦方向も横方向も（１／２）倍（全部で（１／４）倍）した縮小画像Ｉ１とを生成する。
【００４３】
また、例えば、縮小画像生成部２１０は、ｐ＝１のとき、入力画像に対して、縦方向も横方向も（１／４）倍（全部で（１／１６）倍）した縮小画像Ｉ２と、縦方向も横方向も（１／８）倍（全部で（１／６４）倍）した縮小画像Ｉ３とを生成する。
【００４４】
なお、縮小画像Ｉ２ｐ，Ｉ２ｐ＋１のペアのうち、解像度のレベルが低い縮小画像は、Ｉ２ｐ＋１（ｐ＝０のときはＩ１）となり、解像度のレベルが高い縮小画像は、Ｉ２ｐ（ｐ＝０のときＩ０）となる。
【００４５】
言い換えると、縮小画像Ｉ２ｐ＋１は、入力画像に対して、入力画像の縦方向と横方向の画素をそれぞれ（１／２）２ｐ＋１倍した画像であり、縮小画像Ｉ２ｐは、入力画像に対して、入力画像の縦方向と横方向の画素をそれぞれ（１／２）２ｐ倍した画像である。
【００４６】
次に、目標検出装置２００は、縮小画像Ｉ２ｐ＋１に対して、「Ｓ１処理」により、検出結果ｒ２ｐ＋１を取得する（Ｓ１３）。ここで、「Ｓ１処理」の詳細について説明する。
【００４７】
例えば、目標検出部２３０は、縮小画像Ｉ２ｐ＋１に対して、予め決められた大きさの入力用ウィンドウ毎に目標検出処理を行うことで、「Ｓ１処理」を行う。
【００４８】
図５（Ａ）は、入力用ウィンドウの例を表す図である。本第１の実施の形態において利用される入力用ウィンドウのサイズは、ｋライン×ｋ画素である。図５（Ａ）に示す入力用ウィンドウのサイズは、ｋ＝５１２の例を表している。図５（Ａ）において、×点は、中心画素を表す。
【００４９】
ただし、目標検出部２３０は、例えば、図５（Ｂ）に示すように、入力用ウィンドウの一部が隣接する他の入力用ウィンドウの一部と重複させて、入力用ウィンドウ毎に目標検出処理を行う。例えば、図５（Ｂ）に示すように、実線で示す入力用ウィンドウでは、円で示された目標物の一部しか検出できないが、点線で示す入力用ウィンドウでは、目標物の全部が検出可能となる。入力用ウィンドウの一部を隣接する他の入力用ウィンドウと重複させることで、例えば、入力用ウィンドウ間に目標物が位置する場合でも目標物を検出ことが可能となる。
【００５０】
なお、図５（Ｂ）では、画面上、横方向における重複範囲を表しているが、縦方向においても同様である。
【００５１】
また、入力用ウィンドウの重複範囲は、図５（Ｂ）の例では、入力用ウィンドウサイズの１／２となっているが、１／２以外であってもよい。
【００５２】
図６（Ａ）は縮小画像Ｉ２ｐ＋１の例、図６（Ｂ）は縮小画像Ｉ２ｐ＋１に対して、入力用ウィンドウを適用した場合の例を表す図である。縮小画像Ｉ２ｐ＋１全体に対して入力用ウィンドウを適用すると、入力用ウィンドウの一部が縮小画像Ｉ２ｐ＋１からはみ出してしまう場合がある。そのため、例えば、縮小画像Ｉ２ｐ＋１の右端と下端については、入力用ウィンドウが縮小画像Ｉ２ｐ＋１からはみ出さないように、入力用ウィンドウの一部を切り上げるようにする。
【００５３】
なお、縮小画像Ｉ２ｐ＋１のサイズは、予め把握可能であるため、そのサイズに応じて、縮小画像Ｉ２ｐ＋１に対して、どのように各入力用ウィンドウを適用するかは、例えば、目標検出部２３０の内部メモリなどに記憶されているものとする。例えば、縮小画像Ｉ２ｐ＋１の最も左上の画素を（０，０）として、縮小画像Ｉ２ｐ＋１の最も左上に適用される入力用ウィンドウは、中心座標は（ｘ１，ｙ１）、縦のサイズは５１２、横のサイズは５１２などである。このように、例えば、各入力用ウィンドウの中心座標の横と縦のサイズが内部メモリに記憶されているため、目標検出部２３０は、処理に際に内部メモリから読み出すことで、目標検出処理を行う範囲を把握することが可能となる。
【００５４】
そして、目標検出部２３０は、入力用ウィンドウ毎に、入力用ウィンドウ内に含まれる縮小画像Ｉ２ｐ＋１の一部の画像に対して、目標検出処理を行う。目標検出処理は、例えば、Ｆａｓｔｅｒ  Ｒ−ＣＮＮ（Regions with Convolutional Neural Networks）やＹＯＬＯ  ｖ２（You Only Look Once version 2）、ＳＳＤ（Single Shot Multibox Detector）などの公知のディープラーニングにより処理が行われもよい。
【００５５】
Ｆａｓｔｅｒ  Ｒ−ＣＮＮは、例えば、物体検出（又は目標検出）のプロセスを１つのディープラーニングのネットワーク構造で実現した手法である。Ｆａｓｔｅｒ  Ｒ−ＣＮＮでは、最初に、入力画像に対してＣＮＮ（Convolutional Neural Network）により特徴量マップが生成され、特徴マップからＲＰＮ（Region Proposal Network）により物体候補が特定される。そして、物体候補領域の特徴量が抽出され、特徴量に対するクラス（又はカテゴリ）が分類され、一定以上の確信度（又は信頼度）の物体が検出結果として出力される。
【００５６】
ＹＯＬＯ  ｖ２は、例えば、物体領域の推定と分類とをディープラーニングにより同時に行うことで、処理を高速化した手法である。ＹＯＬＯ  ｖ２では、画像全体が格子状のマスに分割され、分割された各マスを基準にして物体領域の推定とクラスの推定とが行われる。
【００５７】
ＳＳＤは、例えば、ＹＯＬＯ  ｖ２と同様に、物体領域の推定と識別とを同時に行うＣＮＮによる手法である。ＳＳＤでは、最初に、入力画像から所定の大きさの特徴量マップが取得され、その特徴量マップを用いて入力画像の物体領域候補が検出される。その際、ＳＳＤでは、特徴マップに対してアスペクト比の異なる複数のＤｅｆａｕｌｔ  Ｂｏｘ（基準の矩形）を用いて物体領域の検出が行われる。そして、ＳＳＤでは、除々に小さな大きさの特徴量マップを取得して、特徴量マップ毎に、物体領域候補の検出を繰り返すことで、種々の種類の物体検出が行われる。出力結果としては、例えば、物体の位置を決定する４変数（矩形の中心座標（ｘ，ｙ）と、縦方向と横方向の長さｈ，ｗ）と、各クラスの確信度がある。
【００５８】
本第１の実施の形態では、例えば、ＳＳＤを用いて目標検出を行うものとして説明する。目標検出部２３０は、例えば、内部メモリにＤｅｆａｕｌｔ  Ｂｏｘなどを記憶し、縮小画像Ｉ２ｐ＋１に対して、入力用ウィンドウ毎にＳＳＤ処理を行うことで、入力用ウィンドウ毎に、目標の位置を表す矩形の情報（矩形の中心座標と、矩形の横方向と縦方向の長さなど）と、その矩形の確信度（confidence）、及びその矩形内に含まれる目標物のクラスなどを出力する。なお、以下では、矩形の情報と確信度、及びクラスなどの情報をまとめて、矩形に関する情報と称する場合がある。
【００５９】
入力用ウィンドウのサイズをｋ＝５１２としたのは、例えば、ＳＳＤの処理のサイズが５１２×５１２であることを考慮したためである。
【００６０】
そして、目標検出部２３０は、ＳＳＤ処理を行って得た複数の矩形について、クラス毎に、各矩形の確信度が、閾値（Ｔｓｏｆｔ）（又は弱い閾値）未満の矩形を検出結果として用いないようにし、閾値以上の確信度を有する矩形を検出結果として用いるようにする。目標検出部２３０は、閾値以上の確信度を有する矩形に関する情報を、「Ｓ１処理」による出力結果として出力する。
【００６１】
図７（Ａ）は、縮小画像Ｉ２ｐ＋１に対して、ＳＳＤ処理により「Ｓ１処理」を行ったときの出力結果ｒ２ｐ＋１の例を表す図である。港に停泊する漁船と、橋の下を通過するタンカーに対して、複数の矩形が形成されている。これらの矩形は、全て、閾値（Ｔｓｏｆｔ）以上の確信度を有する矩形となる。具体的には、例えば、目標検出部２３０は、クラス毎に（「漁船」と「タンカー」毎に）、閾値（Ｔｓｏｆｔ）以上の確信度を有する矩形の情報と、その矩形のクラス（「漁船」又は「タンカー」）、及び確信度を含む出力結果ｒ２ｐ＋１を得る。
【００６２】
なお、目標検出部２３０は、本処理（Ｓ１３）において、出力結果ｒ２ｐ＋１のうち、「Ｓ２処理」に利用する矩形（以下では、「小さい矩形」と称する場合がある。）を抽出する。例えば、目標検出部２３０は、出力結果ｒ２ｐ＋１に含まれる矩形のうち、クラス毎に、幅と高さがともにｋ／４以下の「小さい矩形」を抽出し、その「小さい矩形」に関する情報を、検出結果ｒｓｍａｌｌとして、画像選択部２２０へ出力する。
【００６３】
図７（Ｂ）は、検出結果ｒｓｍａｌｌの例を表す図である。図７（Ｂ）の例では、目標検出部２３０は、「タンカー」のクラスにおける検出結果ｒｓｍａｌｌ＃１と、「漁船」のクラスにおける検出結果ｒｓｍａｌｌ＃２の２つの検出結果を、「小さい矩形」に関する検出結果として、画像選択部２２０へ出力する。
【００６４】
図３に戻り、次に、目標検出装置２００は、縮小画像Ｉ２ｐに対して、「Ｓ２処理」により、目標検出処理を行い、検出結果ｒ２ｐを取得する（Ｓ１４）。ここで、「Ｓ２処理」について詳細に説明する。
【００６５】
「Ｓ２処理」では、最初に、画像選択部２２０において、縮小画像Ｉ２ｐに対して、目標検出処理を行う入力用ウィンドウを選択する。画像選択部２２０は、目標検出部２３０から出力された検出結果、すなわち、「小さい矩形」の検出結果を利用して、入力用ウィンドウを選択する。具体的には、画像選択部２２０は、例えば、「小さい矩形」を表す矩形の情報に基づいて、「小さい矩形」と重なっている入力用ウィンドウの全てを選択する。
【００６６】
入力用ウィンドウは、「Ｓ１処理」と同じｋライン×ｋ画素のサイズであるが、「Ｓ２処理」では、「Ｓ１処理」と同様に、縮小画像Ｉ２ｐの全ての領域に対して、入力用ウィンドウを適用することはしない。
【００６７】
「Ｓ２処理」で用いる縮小画像Ｉ２ｐは、「Ｓ１処理」で用いた縮小画像Ｉ２ｐ＋１よりも、解像度レベルが高い。このため、縮小画像Ｉ２ｐの全ての領域に対して、入力用ウィンドウを適用し、目標検出処理を行うと、「Ｓ１処理」よりも時間がかかってしまい、図３に示す処理全体も時間がかかる場合がある。
【００６８】
そこで、本第１の実施の形態では、画像選択部２２０において、解像度レベルが縮小画像Ｉ２ｐ＋１よりも高い縮小画像Ｉ２ｐに対しては、「小さい矩形」と重なっている入力用ウィンドウを選択する。そして、目標検出部２３０において、選択した入力用ウィンドウに対して目標検出処理を行うようにする。このように、目標検出部２３０では、解像度レベルの高い縮小画像Ｉ２ｐの一部の領域において、目標検出処理を行うことで、より短時間で目標検出処理を行うようにしている。
【００６９】
図８（Ａ）は、検出結果ｒｓｍａｌｌと、その検出結果ｒｓｍａｌｌに対して選択された入力用ウィンドウとの例を表す図である。入力用ウィンドウ自体は、例えば、画像選択部２２０の内部メモリにおいて、解像度レベルに応じて予め記憶されている。そして、画像選択部２２０は、入力用ウィンドウの各矩形の情報及び中心座標と、「小さい矩形」の矩形の情報及び中心座標（これらは検出結果ｒｓｍａｌｌに含まれる）とを比較することで、「小さい矩形」と重なる入力用ウィンドウを選択することが可能である。「重なる」とは、例えば、「小さい矩形」を含む、或いは、「小さい矩形」と交わる入力用ウィンドウのことである。
【００７０】
そして、画像選択部２２０は、入力用ウィンドウに含まれる縮小画像Ｉ２ｐの一部の画像を、目標検出部２３０へ出力する。
【００７１】
目標検出部２３０では、入力用ウィンドウに含まれる縮小画像Ｉ２ｐの一部に対して、「Ｓ２処理」により目標検出処理を行う。「Ｓ２処理」においても、目標検出処理として、ＳＳＤが用いられる。この場合も、目標検出部２３０は、クラス毎に、閾値（Ｔｓｏｆｔ）（又は弱い閾値）以上の確信度を有する矩形を検出結果ｒ２ｐとして用い、閾値（Ｔｓｏｆｔ）未満の確信度を有する矩形は検出結果として用いないようにする。
【００７２】
図８（Ｂ）は、検出結果ｒ２ｐの例を表す図である。目標検出部２３０は、クラス毎に、矩形に関する情報を含む検出結果ｒ２ｐを出力することになる。
【００７３】
図３に戻り、次に、目標検出装置２００は、ｐ＝ｐｍａｘか否かを確認する（Ｓ１５）。ｐ＝ｐｍａｘでないとき（Ｓ１５でＮｏ）、Ｓ１１へ移行して、上述した処理を繰り返す。
【００７４】
例えば、ｐ＝０のとき、ｐ＝ｐｍａｘではないため（例えばｐｍａｘ＝１のとき）（Ｓ１５でＮｏ）、Ｓ１１へ移行する。そして、画像選択部２２０は、ｐ＝１として、入力画像から、縮小画像Ｉ２（入力画像を１／１６にした画像）と縮小画像Ｉ３（入力画像を１／６４）のペアを選択する。そして、目標検出部２３０は、縮小画像Ｉ３に対して「Ｓ１処理」、縮小画像Ｉ２に対して「Ｓ２処理」を行う。「Ｓ２処理」の際、画像選択部２２０は、縮小画像Ｉ３に対する「Ｓ１処理」で得た「小さい矩形」の検出結果ｒｓｍａｌｌを利用して、入力用ウィンドウを選択する。
【００７５】
このように、目標検出部２３０は、ｐ＝ｐｍａｘとなるまで、上述した処理を繰り返す。すなわち、目標検出部２３０は、ｐ＝ｐｍａｘとなるまで、縮小画像Ｉ２ｐ，Ｉ２ｐ＋１のうち、解像度レベルの低い縮小画像Ｉ２ｐ＋１に対して「Ｓ１処理」を行い、解像度レベルの高い縮小画像Ｉ２ｐに対して「Ｓ２処理」を行い、ペア毎に、検出結果ｒ２ｐ，ｒ２ｐ＋１を出力する。
【００７６】
一方、ｐ＝ｐｍａｘのとき（Ｓ１５でＹｅｓ）、目標検出装置２００は、「Ｓ３処理」を行う（Ｓ１６）。
【００７７】
図４は「Ｓ３処理」の動作例を表すフローチャートである。
【００７８】
目標検出装置２００は、「Ｓ３処理」を開始すると（Ｓ１６０）、クラス分けを行う（Ｓ１６１）。例えば、結果合成部２４０は、矩形に関する情報を、「漁船」のクラスと、「タンカー」のクラスとに分ける。
【００７９】
次に、目標検出装置２００は、各矩形について重なっているか否かを判定する（Ｓ１６２）。重なっているか否かの判定には、例えば、ＮＭＳ（Non-Maximum Suppression）が用いられる。ＮＭＳは、重複した矩形を削除する手法で用いられるアルゴリズムであり、ＣＮＮを用いた物体検出方法で用いられる手法でもある。
【００８０】
ＮＭＳでは、例えば、２つの矩形Ａ，Ｂの重なり具合をＩｏＵ（Intersection over Union）により計算し、ＩｏＵが閾値ＴＮＭＳ以上である２つの矩形は（十分）重なっていると判定する。そして、ＮＭＳでは、十分重なっている２つの矩形Ａ，Ｂのうち、確信度の低い矩形を削除し、これを他の矩形においても繰り返す。
【００８１】
ＩｏＵは、例えば、２つの矩形の面積により表すことができる。図９（Ａ）は２つの矩形Ａ，Ｂの例を表す。各矩形Ａ，Ｂは、例えば、各矩形に関する情報に含まれる中心座標と、幅と高さによるサイズとに基づいて、その位置や面積が決定される。
【００８２】
図９（Ｂ）は、２つの矩形ＡとＢの和集合の領域（Area of Union, ＡｏｒＢ）を表す。この領域は、例えば、矩形Ａにも含まれ、矩形Ｂにも含まれる領域の面積を表す。
【００８３】
また、図９（Ｃ）は、２つの矩形ＡとＢの積集合の領域（Area of Overlap (or Intersection), ＡａｎｄＢ）を表す。この領域は、例えば、矩形Ａと矩形Ｂの重複した領域における面積を表す。
【００８４】
ＩｏＵは、例えば、以下の式で表すことが可能である。
【００８５】
ＩｏＵ＝（Ａｒｅａ  ｏｆ  Ｏｖｅｒｌａｐ）／（Ａｒｅａ  ｏｆ  Ｕｎｉｏｎ）  ・・・（１）
すなわち、結果合成部２４０は、矩形Ａにも含まれ、かつ矩形Ｂにも含まれる領域の面積に対する、矩形Ａと矩形Ｂの重複した領域の面積の比率が、閾値ＴＮＭＳ以上のとき、２つの矩形Ａ，Ｂは重なっていると判定する。一方、結果合成部２４０は、比率が閾値ＴＮＭＳ未満のとき２つの矩形Ａ，Ｂは重なっていないと判定する。
【００８６】
例えば、結果合成部２４０は、検出結果ｒ２ｐ，ｒ２ｐ＋１に含まれる全ての矩形に対して、クラス毎に、その中心座標と、縦方向及び横方向の長さとに基づいて、Ａｒｅａ  ｏｆ  ＯｖｅｒｌａｐとＡｒｅａ  ｏｆ  Ｕｎｉｏｎとを計算する。そして、結果合成部２４０は、その結果を式（１）に代入することで、ＩｏＵを得る。
【００８７】
そして、結果合成部２４０は、ＩｏＵが閾値ＴＮＭＳ以上であるか否かを判定することで、２つの矩形が重なっているか否かを判定する（Ｓ１６２）。ここで、閾値ＴＮＭＳとしては、例えば、「０．５」が用いられてもよいが、それ以外の値であってもよい。或いは、閾値ＴＮＭＳとして、最初にある値を設定し、その結果に基づいてその値を変更するようにしてもよい。
【００８８】
目標検出装置２００は、２つの矩形が重なっているとき（Ｓ１６２でＹｅｓ）、確信度が大きい矩形を残し、確信度の低い矩形を削除する（Ｓ１６３）。例えば、結果合成部２４０は、閾値ＴＮＭＳ以上となっている２つの矩形ＡとＢについて、確信度の低い矩形を削除し、確信度の高い矩形を残し、これを、クラス毎に、他の矩形に対して繰り返す処理を行う。
【００８９】
結果合成部２４０では、このようなＮＭＳ処理を繰り返すことで、「Ｓ３処理」を行い、例えば、クラス毎に、最も確信度の高い矩形を出力する。例えば、図８（Ｂ）の例では、結果合成部２４０は、「漁船」のクラスで最も確信度が高い矩形と、「タンカー」のクラスで最も確信度が高い矩形とに関する情報を出力情報生成部２５０へ出力する。
【００９０】
目標検出装置２００は、検出結果ｒ２ｐ，ｒ２ｐ＋１に含まれる全ての矩形に対して、Ｓ１６１からＳ１６３までの処理を行うと、一連の処理を終了する（Ｓ１６４）。
【００９１】
一方、目標検出装置２００は、２つの矩形が重なっていないとき（Ｓ１６２でＮｏ）、その２つの矩形に対して、矩形を削除する処理（Ｓ１６３）を行うことなく、「Ｓ３処理」を終了する（Ｓ１６４）。
【００９２】
その後、出力情報生成部２５０は、画像選択部２２０から出力された入力画像のうち、確信度が最も高い矩形に含まれる画像を抽出する。その抽出画像が、例えば、目標物の画像として目標検出装置２００から出力される。出力情報生成部２５０は、その画像の画像データとともに、矩形の情報、及びクラスの情報などを、モニタや目標類識別装置へ出力する。
【００９３】
そして、図３に戻り、一連の処理が終了する（Ｓ１７）。
【００９４】
図１０は、目標検出装置２００において、処理の流れをまとめたものである。図１０では、ｐｍａｘ＝１の例を表している。
【００９５】
目標検出装置２００は、ｐ＝０のとき、解像度レベル０と１の２つの縮小画像Ｉ０，Ｉ１を生成し（Ｓ１２）、解像度レベル１の縮小画像Ｉ１に対して、「Ｓ１処理」を行い、例えば、目標物を含む矩形を検出する（Ｓ１３）。目標検出装置２００は、この検出結果を用いて、「Ｓ２処理」を行い、例えば、解像度レベル０の縮小画像Ｉ０において、目標物を含む矩形を検出する（Ｓ１４）。
【００９６】
次に、目標検出装置２００は、ｐ＝ｐｍａｘ＝１のとき、解像度レベル２の縮小画像Ｉ２と解像度レベル３の縮小画像Ｉ３を生成する（Ｓ１２）。そして、目標検出装置２００は、解像度レベル２の縮小画像Ｉ２に対して「Ｓ１処理」、解像度レベル３の縮小画像Ｉ３に対して、「Ｓ２処理」を施して、それぞれ検出結果を得る。
【００９７】
そして、目標検出装置２００は、各検出結果を用いて、「Ｓ３処理」を行い、確信度が最も大きい矩形を取得し（Ｓ１６３）、入力画像のうち、その矩形内に含まれる画像を、目標画像として出力する（Ｓ１６）。
【００９８】
このように、本第１の実施の形態では、目標検出装置２００は、解像度レベルの異なる２つの画像のうち、解像度レベルの高い画像全体の領域に対して目標検出処理を行うのではなく、解像度レベルの低い画像の検出結果を利用して、その一部に対して目標検出処理を行う。例えば、目標検出装置２００は、解像度レベルが０の入力画像に対しても、その入力画像全体の領域に対して目標検出処理を行うのではなく、解像度レベル１の縮小画像の検出結果を利用して、入力画像の一部の領域において目標検出処理を行う。従って、解像度レベルの高い画像全体（又は入力画像全体）の領域を用いて目標検出処理を行う場合と比較して、本第１の実施の形態における目標検出装置２００は、より短時間で目標検出を行うことが可能となる。
【００９９】
とくに、入力画像が、例えば、８Ｋよりも解像度レベルの高い多画素高精細な画像の場合、１フレームの画像全体の領域に対して目標検出処理を行うと膨大な時間がかかる。しかし、本第１の実施の形態における目標検出装置２００では、一部の領域を用いて目標検出処理を行っているため、全体の領域を用いて目標検出処理を行う場合と比較して、より短時間で目標検出が可能となる。
【０１００】
なお、図１０では、ｐｍａｘ＝１の例で説明したが、ｐｍａｘは、２以上の整数であってもよい。
【０１０１】
［その他の実施の形態］
図１１は、目標検出装置２００のハードウェア構成例を表す図である。
【０１０２】
目標検出装置２００は、ＩＦ（Interface）２６０、メモリ２６１、ＣＰＵ２６２、ＲＯＭ（Read Only Memory）２６３、及びＲＡＭ（Random Access Memory）２６４を備える。
【０１０３】
ＩＦ２６０は、例えば、カメラ１００から出力された入力画像を入力し、入力画像をメモリ２６１へ出力したりＣＰＵ２６２へ出力したりする。また、ＩＦ２６０は、例えば、ＣＰＵ２６２の指示により、メモリ２６１に記憶された目標画像の画像データを読み出して、目標類識別装置やモニタへ出力する。
【０１０４】
ＣＰＵ２６２は、ＲＯＭ２６３に記憶されたプログラムを読み出してＲＡＭ２６４にロードし、ロードしたプログラムを実行する。これにより、例えば、ＣＰＵ２６２は、縮小画像生成部２１０、画像選択部２２０、目標検出部２３０、結果合成部２４０、及び出力情報生成部２５０の機能を実現する。従って、ＣＰＵ２６２は、例えば、縮小画像生成部２１０、画像選択部２２０、目標検出部２３０、結果合成部２４０、及び出力情報生成部２５０に対応する。
【０１０５】
なお、ＣＰＵ２６２に代えて、ＧＰＵ（Graphics Processing Units）、ＧＰＧＰＵ（General-purpose computing on graphics processing units）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＦＰＧＡ（Field Programmable Gate Array）などのプロセッサやコントローラなどが用いられてもよい。特に、近年、ＧＰＧＰＵは多く用いられており、並列化による処理時間の短縮化が可能となる。
【０１０６】
以上まとめると、付記のようになる。
【０１０７】
（付記１）
入力画像に対して探索する領域を決定し、
決定した前記領域において第１の精度で前記入力画像に含まれる目標物を探索し、
前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記第１の精度よりも高い第２の精度で、前記目標物の候補を含む領域において前記目標物を探索して、前記目標物の有無を判定する
処理をコンピュータに実行させる目標検出プログラム。
【０１０８】
（付記２）
更に、前記入力画像に対して第１の解像度を有する第１の画像と、前記第１の解像度より解像度の高い第２の解像度を有する第２の画像とを生成し、
前記第１の画像において探索する領域を決定し、
前記第１の精度は前記第１の解像度であり、前記第２の精度は前記第２の解像度であることを特徴とする
ことを特徴とする付記１記載の目標検出プログラム。
【０１０９】
（付記３）
前記第１の解像度を有する前記第１の画像において探索した結果、前記目標物があると判定した場合、前記第２の解像度を有する前記第２の画像における前記目標物を含む領域において、前記目標物を探索することを特徴とする付記２記載の目標検出プログラム。
【０１１０】
（付記４）
前記第１の解像度を有する前記第１の画像は、前記入力画像に対して、前記入力画像の縦方向と横方向の画素をそれぞれ（１／２）２ｐ＋１（ｐは０以上の整数）倍した画像であり、前記第２の解像度を有する前記第２の画像は、前記入力画像に対して、前記入力画像の縦方向と横方向の画素をそれぞれ（１／２）２ｐ倍した画像であることを特徴とする付記２記載の目標検出プログラム。
【０１１１】
（付記５）
決定した前記領域において第１の精度で前記入力画像に含まれる目標物を、前記目標物の種別毎に探索し、
前記第２の精度で、前記目標物の候補を含む領域において前記目標物を、前記目標物の種別毎に探索する
ことを特徴とする付記１記載の目標検出プログラム。
【０１１２】
（付記６）
予め決められたサイズの入力用ウィンドウ毎に、前記第１の精度で前記入力画像に含まれる目標物を探索し、
前記入力用ウィンドウの一部は隣接する他の入力用ウィンドウの一部と重複することを特徴とする付記１記載の目標検出プログラム。
【０１１３】
（付記７）
前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記目標物の候補を含む領域のうち、少なくとも一部の領域を前記第２の精度で、前記目標物を探索することを特徴とする付記１記載の目標検出プログラム。
【０１１４】
（付記８）
予め決められたサイズの入力用ウィンドウ毎に、前記第１の精度で前記入力画像に含まれる目標物を探索し、
前記一部の領域は、前記入力用ウィンドウのサイズをｋライン×ｋ画素としたとき、ｋ／４ライン×ｋ／４画素であることを特徴とする付記７記載の目標検出プログラム。
【０１１５】
（付記９）
決定した前記領域において、ＳＳＤ（Single Shot Multibox Detector）を利用して、第１の精度で前記入力画像に含まれる目標物を探索し、
前記ＳＳＤを利用して、前記第２の精度で前記目標物の候補を含む領域において前記目標物を探索する
ことを特徴とする付記１記載の目標検出プログラム。
【０１１６】
（付記１０）
前記第１及び第２の精度で探索した結果に含まれる矩形に関する情報に基づいて、前記目標物を含む矩形を検出することで、前記目標物の有無を判定することを特徴とする付記１記載の目標検出プログラム。
【０１１７】
（付記１１）
前記第１及び第２の精度で探索した結果に含まれる第１の矩形に関する情報と第２の矩形に関する情報とに基づいて、前記第１の矩形と前記第２の矩形が重なっていると判定したとき、前記第１及び第２の精度で探索した結果に含まれる確信度の高い前記第１の矩形を残し、前記確信度の低い前記第２の矩形を削除することで、前記目標物を含む矩形を検出することを特徴とする付記１０記載の目標検出プログラム。
【０１１８】
（付記１２）
前記第１の矩形と前記第２の矩形が重なっているか否かは、前記第１の矩形にも含まれ、かつ前記第２の矩形にも含まれる領域の面積に対する、前記第１の矩形と前記第２の矩形の重複した領域の面積の比率が、閾値以上のとき、前記第１の矩形と前記第２の矩形は重なっていると判定し、前記比率が閾値未満のとき、前記第１の矩形と前記第２の矩形は重なっていないと判定することを特徴とする付記１１記載の目標検出プログラム。
【０１１９】
（付記１３）
入力画像に対して探索する領域を決定し、決定した前記領域において第１の精度で前記入力画像に含まれる目標物を探索し、前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記第１の精度よりも高い第２の精度で、前記目標物の候補を含む領域において前記目標物を探索して、前記目標物の有無を判定する目標検出部
を備えることを特徴とする目標検出装置。
【０１２０】
（付記１４）
目標検出装置における目標検出方法であって、
入力画像に対して探索する領域を決定し、決定した前記領域において第１の精度で前記入力画像に含まれる目標物を探索し、前記第１の精度で探索した結果、前記目標物の候補があると判定した場合、前記第１の精度よりも高い第２の精度で、前記目標物の候補を含む領域において前記目標物を探索して、前記目標物の有無を判定する
ことを特徴とする目標検出方法。
【符号の説明】
【０１２１】
１０：目標検出システム                １００：カメラ
２００：目標検出装置                  ２１０：縮小画像生成部
２２０：画像選択部                    ２３０：目標検出部
２４０：結果合成部                    ２５０：出力情報生成部
２６２：ＣＰＵ
【図１】
2020071793.tif 000003
【図２】
2020071793.tif 000004
【図３】
2020071793.tif 000005
【図４】
2020071793.tif 000006
【図５】
2020071793.tif 000007
【図６】
2020071793.tif 000008
【図７】
2020071793.tif 000009
【図８】
2020071793.tif 000010
【図９】
2020071793.tif 000011
【図１０】
2020071793.tif 000012
【図１１】
2020071793.tif 000013