(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024135463
(43)【公開日】2024-10-04
(54)【発明の名称】物体検知システムおよび物体検知方法
(51)【国際特許分類】
G06V 10/25 20220101AFI20240927BHJP
G06T 7/20 20170101ALI20240927BHJP
【FI】
G06V10/25
G06T7/20
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023046155
(22)【出願日】2023-03-23
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103090
【弁理士】
【氏名又は名称】岩壁 冬樹
(74)【代理人】
【識別番号】100124501
【弁理士】
【氏名又は名称】塩川 誠人
(72)【発明者】
【氏名】柴田 誠也
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096CA04
5L096FA18
5L096FA66
5L096FA67
5L096FA69
5L096GA51
5L096HA02
(57)【要約】
【課題】低遅延と物体の検知精度とを両立させることができる物体検知システムを提供する。
【解決手段】第1検知手段72は、入力されたフレームに映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する。履歴情報生成手段73は、物体が共通であるバウンディングボックスに同一のIDを付与し、フレーム番号およびバウンディングボックスの位置の組合せの履歴をID毎に示す情報である履歴情報を生成する。予測手段74は、第1検知手段72がフレームに対してラベルおよびバウンディングボックスの位置を特定するのに要する時間である遅延に応じて、履歴情報に基づいて、最新のフレーム内におけるバウンディングボックスの領域を予測する。
【選択図】
図10
【特許請求の範囲】
【請求項1】
フレームが連続して入力される物体検知システムであって、
入力されたフレームに映っている物体のラベルを特定するとともに前記物体のバウンディングボックスの位置を特定する第1検知手段と、
物体が共通であるバウンディングボックスに同一のIDを付与し、フレーム番号およびバウンディングボックスの位置の組合せの履歴をID毎に示す情報である履歴情報を生成する履歴情報生成手段と、
前記第1検知手段が前記フレームに対して前記ラベルおよび前記バウンディングボックスの位置を特定するのに要する時間である遅延に応じて、前記履歴情報に基づいて、最新のフレーム内における前記バウンディングボックスの領域を予測する予測手段と、
前記最新のフレーム内の、予測された前記バウンディングボックスの領域を対象にして、映っている物体のラベルを特定するとともに前記物体のバウンディングボックスの位置を特定する第2検知手段とを備え、
前記第2検知手段が1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間は、前記第1検知手段が1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間よりも短い
ことを特徴とする物体検知システム。
【請求項2】
遅延の大きさを測定する遅延測定手段を備える
請求項1に記載の物体検知システム。
【請求項3】
前記遅延測定手段は、
最新のフレームのフレーム番号と、前記第1検知手段によって、映っている物体のラベルおよび前記物体のバウンディングボックスの位置が特定されたフレームのフレーム番号との差分を、遅延の大きさとして測定し、
前記予測手段は、
前記差分に応じて、前記最新のフレーム内における前記バウンディングボックスの領域を予測する
請求項2に記載の物体検知システム。
【請求項4】
前記予測手段は、
前記履歴情報に基づいて、線形予測によって、最新のフレーム内における前記バウンディングボックスの領域を予測する
請求項1に記載の物体検知システム。
【請求項5】
前記予測手段は、
前記履歴情報に基づいて、カルマンフィルタによって、最新のフレーム内における前記バウンディングボックスの領域を予測する
請求項1に記載の物体検知システム。
【請求項6】
前記予測手段によって予測されたバウンディングボックスの領域に対して順序付けを行う順序付け手段を備え、
前記第2検知手段は、
前記順序付け手段によって定められた順に、予測されたバウンディングボックスの領域を選択し、当該領域を対象にして、映っている物体のラベルを特定するとともに前記物体のバウンディングボックスの位置を特定する
請求項1から請求項5のうちのいずれか1項に記載の物体検知システム。
【請求項7】
前記順序付け手段は、
予測された2つのバウンディングボックスの領域の距離が所定の閾値以下であり、前記2つのバウンディングボックスの移動方向が向き合っているという条件が満たされている場合に、前記2つのバウンディングボックスの領域の順序を、前記条件を満たしていないバウンディングボックスの領域の順序よりも早める
請求項6に記載の物体検知システム。
【請求項8】
フレームが連続して入力されるコンピュータに適用される物体検知方法であって、
入力されたフレームに映っている物体のラベルを特定するとともに前記物体のバウンディングボックスの位置を特定する第1検知処理を実行し、
物体が共通であるバウンディングボックスに同一のIDを付与し、フレーム番号およびバウンディングボックスの位置の組合せの履歴をID毎に示す情報である履歴情報を生成する履歴情報生成処理を実行し、
前記第1検知処理で前記フレームに対して前記ラベルおよび前記バウンディングボックスの位置を特定するのに要する時間である遅延に応じて、前記履歴情報に基づいて、最新のフレーム内における前記バウンディングボックスの領域を予測する予測処理を実行し、
前記最新のフレーム内の、予測された前記バウンディングボックスの領域を対象にして、映っている物体のラベルを特定するとともに前記物体のバウンディングボックスの位置を特定する第2検知処理を実行し、
前記第2検知処理で1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間は、前記第1検知処理で1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間よりも短い
ことを特徴とする物体検知方法。
【請求項9】
フレームが連続して入力されるコンピュータに搭載される物体検知プログラムであって、
前記コンピュータに、
入力されたフレームに映っている物体のラベルを特定するとともに前記物体のバウンディングボックスの位置を特定する第1検知処理、
物体が共通であるバウンディングボックスに同一のIDを付与し、フレーム番号およびバウンディングボックスの位置の組合せの履歴をID毎に示す情報である履歴情報を生成する履歴情報生成処理、
前記第1検知処理で前記フレームに対して前記ラベルおよび前記バウンディングボックスの位置を特定するのに要する時間である遅延に応じて、前記履歴情報に基づいて、最新のフレーム内における前記バウンディングボックスの領域を予測する予測処理、および、
前記最新のフレーム内の、予測された前記バウンディングボックスの領域を対象にして、映っている物体のラベルを特定するとともに前記物体のバウンディングボックスの位置を特定する第2検知処理を実行させ、
前記第2検知処理で1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間は、前記第1検知処理で1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間よりも短い
ことを特徴とする物体検知プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像フレーム(以下、フレームと記す。)に映っている物体を検知する物体検知システム、物体検知方法および物体検知プログラムに関する。
【背景技術】
【0002】
高解像度カメラによる撮影で生成されたフレームが連続して、物体検知システムに入力され、物体検知システムが、各フレームから物体を検知する場合がある。
【0003】
高解像度カメラによる撮影で生成されたフレームの画素数は多い。高解像度のフレーム(すなわち、画素数が多いフレーム)を対象にして物体を検知する場合、物体の検知に時間がかかる。
【0004】
また、高解像度のフレームを対象にして、短時間で物体を検知できる小型軽量な検知アルゴリズムやモデル構造もあるが、その場合、物体の検知精度は低下する。
【0005】
また、特許文献1には、映像に映っている物体を認識し、その物体の種別を識別する映像解析システムが記載されている。
【0006】
特許文献2には、高速モードに対応する高速画像処理部と、低速モードに対応する低速画像処理部とを備えるスキャナが記載されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2022-133547号公報
【特許文献2】特開2019-41332号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
上記のように、高解像度のフレームを対象にして物体を検知する場合、物体の検知に時間がかかる。そのため、高解像度カメラによる撮影で生成されたフレームが連続して入力される物体検知システムは、リアルタイムに検知結果を出力できない。すなわち、そのような物体検知システムは、入力された最新のフレームに対する物体の検知結果を出力するまでに遅延が生じてしまう。
【0009】
短時間で物体を検知できる小型軽量な検知アルゴリズムやモデル構造を利用する場合には、前述のように、物体の検知精度は低下する。
【0010】
そこで、本発明は、低遅延と物体の検知精度とを両立させることができる物体検知システム、物体検知方法および物体検知プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明による物体検知システムは、フレームが連続して入力される物体検知システムであって、入力されたフレームに映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する第1検知手段と、物体が共通であるバウンディングボックスに同一のIDを付与し、フレーム番号およびバウンディングボックスの位置の組合せの履歴をID毎に示す情報である履歴情報を生成する履歴情報生成手段と、第1検知手段がフレームに対してラベルおよびバウンディングボックスの位置を特定するのに要する時間である遅延に応じて、履歴情報に基づいて、最新のフレーム内におけるバウンディングボックスの領域を予測する予測手段と、最新のフレーム内の、予測されたバウンディングボックスの領域を対象にして、映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する第2検知手段とを備え、第2検知手段が1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間は、第1検知手段が1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間よりも短いことを特徴とする。
【0012】
本発明による物体検知方法は、フレームが連続して入力されるコンピュータに適用される物体検知方法であって、入力されたフレームに映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する第1検知処理を実行し、物体が共通であるバウンディングボックスに同一のIDを付与し、フレーム番号およびバウンディングボックスの位置の組合せの履歴をID毎に示す情報である履歴情報を生成する履歴情報生成処理を実行し、第1検知処理でフレームに対してラベルおよびバウンディングボックスの位置を特定するのに要する時間である遅延に応じて、履歴情報に基づいて、最新のフレーム内におけるバウンディングボックスの領域を予測する予測処理を実行し、最新のフレーム内の、予測されたバウンディングボックスの領域を対象にして、映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する第2検知処理を実行し、第2検知処理で1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間は、第1検知処理で1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間よりも短いことを特徴とする。
【0013】
本発明による物体検知プログラムは、フレームが連続して入力されるコンピュータに搭載される物体検知プログラムであって、コンピュータに、入力されたフレームに映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する第1検知処理、物体が共通であるバウンディングボックスに同一のIDを付与し、フレーム番号およびバウンディングボックスの位置の組合せの履歴をID毎に示す情報である履歴情報を生成する履歴情報生成処理、第1検知処理でフレームに対してラベルおよびバウンディングボックスの位置を特定するのに要する時間である遅延に応じて、履歴情報に基づいて、最新のフレーム内におけるバウンディングボックスの領域を予測する予測処理、および、最新のフレーム内の、予測されたバウンディングボックスの領域を対象にして、映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する第2検知処理を実行させ、第2検知処理で1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間は、第1検知処理で1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間よりも短いことを特徴とする。
【発明の効果】
【0014】
本発明によれば、低遅延と物体の検知精度とを両立させることができる。
【図面の簡単な説明】
【0015】
【
図1】本発明の第1の実施形態の物体検知システムの構成例を示すブロック図である。
【
図3】第1の実施形態の物体検知システムの処理経過の例を示すフローチャートである。
【
図4】本発明の第2の実施形態の物体検知システムの構成例を示すブロック図である。
【
図5】第2の実施形態の物体検知システムの処理経過の例を示すフローチャートである。
【
図6】本発明の第3の実施形態の物体検知システムの構成例を示すブロック図である。
【
図7】順序付け部によって順序付けされる複数の予測領域の例を示す模式図である。
【
図8】フレームが入力された時の時刻を用いる物体検知システムの例を示すブロック図である。
【
図9】本発明の物体検知システムに係るコンピュータの構成例を示す概略ブロック図である。
【
図10】本発明の物体検知システムの概要を示すブロック図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態を図面を参照して説明する。
【0017】
実施形態1.
図1は、本発明の第1の実施形態の物体検知システムの構成例を示すブロック図である。物体検知システム100は、入力部1と、第1検知部2と、履歴情報生成部3と、予測部4と、第2検知部5と、出力部6とを備える。
【0018】
物体検知システム100には、高解像度カメラによる撮影で生成されたフレームが連続して入力される。連続して入力されるフレームには、フレーム番号が連番で定められている。
【0019】
入力部1は、各フレームが入力される入力インタフェースである。各実施形態では、一定のフレームレートで各フレームが入力部1に入力されるものとする。
【0020】
第1の実施形態では、入力部1に1つのフレームが入力されると、そのフレームは、第1検知部2および第2検知部5にそれぞれ送られる。
【0021】
第1検知部2は、入力されたフレームを対象にして、物体を検知する。ここで、「物体を検知する」とは、入力されたフレームに映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定することである。
【0022】
ラベルは、映っている物体の種別を表すラベルである。例えば、検知対象の物体が乗用車および人物である場合には、物体のラベルとして“car ”または“person”というラベルが特定される。以下では、説明を簡単にするために、検知対象の物体が人物のみである場合を例にする。
【0023】
第1検知部2は、例えば、予めディープラーニング等の機械学習によって生成されたモデルを保持する。そして、第1検知部2は、入力された1つのフレーム全体をそのモデルに適用することによって、フレームに映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定する。1つのフレームから検知される物体の数は1つとは限らず、複数であってもよい。その場合、第1検知部2は、物体毎に、物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定する。
【0024】
後述する第2検知部5も、映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定する。すなわち、第2検知部5も、物体を検知する。ただし、第1検知部2の検知精度は、第2検知部5の検知精度よりも高い。
【0025】
第1検知部2は、入力されたフレームに映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定すると、そのフレームのフレーム番号と、ラベルと、バウンディングボックスの位置とを、履歴情報生成部3に出力する。
【0026】
第1検知部2が、入力されたフレームに関して、フレーム番号と、ラベルと、バウンディングボックスの位置とを履歴情報生成部3に出力する時点で、入力部1を介して、さらに新たなフレームが入力され、その新たなフレームは、第2検知部5に入力されている。
【0027】
第1検知部2が、1つのフレームに関して物体のラベルとその物体のバウンディングボックスの位置を特定するまでに時間を要する。この時間が遅延である。第2検知部5における遅延は、第1検知部2における遅延よりも小さい。換言すれば、第2検知部5が1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間は、第1検知部2が1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間よりも短い。
【0028】
なお、1つのフレームが第1検知部2に到達するまでの通信時間が、第1検知部2における遅延に含まれていてもよい。
【0029】
本実施形態では、第1検知部2における遅延の大きさを、第1検知部2が物体のラベルとその物体のバウンディングボックスの位置を特定したフレームのフレーム番号と、第1検知部2がそのラベルおよびバウンディングボックスの位置を出力した時点で、第2検知部5に入力されるフレームのフレーム番号との差分で表す。
【0030】
第1の実施形態では、第1検知部2における遅延の大きさが一定であるものとする。換言すれば、第1検知部2が物体のラベルとその物体のバウンディングボックスの位置を特定したフレームのフレーム番号と、第1検知部2がそのラベルおよびバウンディングボックスの位置を出力した時点で、第2検知部5に入力されるフレームのフレーム番号との差分が一定であるものとする。このフレーム番号の差分をkとする。
【0031】
履歴情報生成部3は、第1検知部2から、フレーム番号、物体のラベル、およびその物体のバウンディングボックスの位置が与えられると、そのバウンディングボックスにIDを付与する。履歴情報生成部3は、複数のバウンディングボックスの位置が与えられた場合、それぞれのバウンディングボックスにIDを付与する。このとき、履歴情報生成部3は、物体が共通であるバウンディングボックス(換言すれば、物体が共通であると推測されたバウンディングボックス)に同一のIDを付与する。
【0032】
また、履歴情報生成部3は、履歴情報を生成する。履歴情報は、フレーム番号およびバウンディングボックスの位置の組合せの履歴をID毎に示す情報である。
図2は、履歴情報の例を示す模式図である。
図2に示す例では、バウンディングボックスのID毎に、フレーム番号、ラベルおよびバウンディングボックスの位置の組合せの履歴を示している。本例では、バウンディングボックスの位置を、バウンディングボックスの左上の頂点の座標および右下の頂点の座標で特定している。例えば、
図2に示す(x
1,y
1)は、バウンディングボックスの左上の頂点の座標であり、(x
2,y
2)は、バウンディングボックスの右下の頂点の座標である。
【0033】
履歴情報生成部3は、最新の履歴情報を生成すると、その履歴情報を予測部4に出力する。
【0034】
予測部4は、遅延に応じて、履歴情報に基づいて、入力された最新のフレーム内におけるバウンディングボックスの領域を予測する。このとき、予測部4は、バウンディングボックスのID毎に、最新のフレーム内におけるバウンディングボックスの領域を予測する。
【0035】
本実施形態では、遅延の大きさは一定である。そして、前述のように、第1検知部2が物体のラベルとその物体のバウンディングボックスの位置を特定したフレームのフレーム番号と、第1検知部2がそのラベルおよびバウンディングボックスの位置を出力した時点で、第2検知部5に入力されるフレームのフレーム番号との差分が一定であり、この差分をkとする。
【0036】
従って、予測部4は、履歴情報内における最新のフレーム番号のフレーム(
図2に示す例では、フレーム番号11のフレーム)よりも、kフレーム後のフレーム内におけるバウンディングボックスの領域を予測する。
【0037】
予測部4は、履歴情報に基づいて、線形予測によって、最新のフレーム内におけるバウンディングボックスの領域を予測してもよい。
【0038】
あるいは、予測部4は、履歴情報に基づいて、カルマンフィルタによって、最新のフレーム内におけるバウンディングボックスの領域を予測してもよい。
【0039】
あるいは、予測部4は、履歴情報に基づいて、ディープラーニング等を活用したAI(Artificial Intelligence )によって、最新のフレーム内におけるバウンディングボックスの領域を予測してもよい。
【0040】
図2に例示する履歴情報は、バウンディングボックスのID毎に、フレーム番号、ラベルおよびバウンディングボックスの位置の組合せの履歴を含んでいる。従って、予測部4は、その履歴を用いて、線形予測、カルマンフィルタ、またはAIを用いた予測によって、最新のフレーム内におけるバウンディングボックスの領域を予測することができる。
【0041】
予測部4は、予測した、最新のフレーム内におけるバウンディングボックスの領域を示す情報を、第2検知部5に出力する。
【0042】
履歴情報生成部3および予測部4の処理時間は、無視できる程度に短い。あるいは、この処理時間に一定の時間がかかる。このとき、遅延フレーム数kにこの処理時間を含めてよい。
【0043】
第2検知部5は、入力された最新のフレーム内の、予測部4によって予測されたバウンディングボックスの領域を対象にして、映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定する。予測部4によって予測されたバウンディングボックスの領域が複数存在する場合には、第2検知部5は、予測されたバウンディングボックスの領域毎に、映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定する。なお、特定したバウンディングボックスの位置が、予測されたバウンディングボックスの領域に合致していてもよい。
【0044】
第2検知部5は、例えば、予めディープラーニング等の機械学習によって生成されたモデルを保持する。そして、第2検知部5は、最新のフレーム内の、予測されたバウンディングボックスの領域をそのモデルに適用することによって、映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定する。第2検知部5が保持するモデルのサイズは、第1検知部2が保持するモデルのサイズよりも小さくてよい。
【0045】
第2検知部5は、特定した物体のラベルおよびバウンディングボックスの位置を、出力部6を介して、物体検知システム100の外部に出力する。
【0046】
出力部6は、物体のラベルおよびバウンディングボックスの位置を出力するための出力インタフェースである。
【0047】
第1検知部2、履歴情報生成部3、予測部4および第2検知部5は、例えば、物体検知プログラムに従って動作するコンピュータのCPU(Central Processing Unit )によって実現される。この場合、CPUが、コンピュータのプログラム記憶装置等のプログラム記録媒体から物体検知プログラムを読み込み、その物体検知プログラムに従って、第1検知部2、履歴情報生成部3、予測部4および第2検知部5として動作すればよい。
【0048】
また、予測部4、第2検知部5および出力部6がFPGA(Field Programmable Gate Array )に搭載され、入力部1、第1検知部2および履歴情報生成部3がAIチップに搭載され、PCIe(Peripheral Component Interconnect Express )を介してフレームがAIチップに入力される構成であってもよい。
【0049】
また、予測部4、第2検知部5および出力部6がエッジデバイスに搭載され、入力部1、第1検知部2および履歴情報生成部3がサーバに搭載され、通信ネットワークを介してフレームがサーバに入力される構成であってもよい。
【0050】
次に、処理経過について説明する。
図3は、第1の実施形態の物体検知システムの処理経過の例を示すフローチャートである。既に説明した事項については、適宜、説明を省略する。
【0051】
物体検知システム100には、フレームが連続して入力される。ここで、1つのフレームが入力部1に入力されると(ステップS1)、そのフレームは、第1検知部2に送られる。
【0052】
第1検知部2は、入力されたフレームを対象にして物体を検知する(ステップS2)。すなわち、第1検知部2は、そのフレームに映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定する。第1検知部2は、そのフレームのフレーム番号と、ラベルと、バウンディングボックスの位置とを、履歴情報生成部3に出力する。
【0053】
履歴情報生成部3は、ステップS2で得られた各バウンディングボックスにIDを付与する。このとき、履歴情報生成部3は、物体が共通であるバウンディングボックスに同一のIDを付与する。そして、履歴情報生成部3は、最新の履歴情報を生成する(ステップS3)。履歴情報生成部3は、その最新の履歴情報を予測部4に出力する。
【0054】
予測部4は、ステップS3で生成された履歴情報に基づいて、最新のフレーム内におけるバウンディングボックスの領域を予測する(ステップS4)。具体的には、予測部4は、履歴情報内における最新のフレーム番号のフレーム(
図2に示す例では、フレーム番号11のフレーム)よりも、kフレーム後のフレーム内におけるバウンディングボックスの領域を予測する。そして、予測部4は、予測した領域を示す情報を、第2検知部5に出力する。
【0055】
このとき、第2検知部5には、最新のフレームが入力されている。
【0056】
第2検知部5は、最新のフレーム内の、予測されたバウンディングボックスの領域を対象にして、物体を検知する。すなわち、第2検知部5は、予測されたバウンディングボックスの領域を対象にして、その領域に映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定する。そして、第2検知部5は、そのラベルおよびバウンディングボックスの位置を、出力部6を介して出力する(ステップS5)。
【0057】
本実施形態では、予測部4が、最新のフレーム内におけるバウンディングボックスの領域を予測する。そして、予測部4が予測結果(予測された領域を示す情報)を第2検知部5に出力するときに、第2検知部5には、最新のフレームが入力されている。従って、第1検知部2における遅延が生じたとしても、第2検知部5は、最新のフレーム内の、予測されたバウンディングボックスの領域を対象にして、その領域に映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定することができる。
【0058】
また、第2検知部5における遅延は小さい。従って、第2検知部5は、最新のフレームが入力されると、ほぼリアルタイムで、映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定し、そのラベルおよびバウンディングボックスの位置を、出力部6を介して出力することができる。また、第2検知部5は、1つのフレーム全体を対象にして物体を検知するのではなく、1つのフレーム内の予測された領域を対象にして物体を検知する。従って、第2検知部5は、短時間で、高い精度で物体を検知できる。従って、本実施形態によれば、物体の検知に関して、低遅延と物体の検知精度とを両立させることができる。
【0059】
実施形態2.
第1の実施形態では、第1検知部2における遅延の大きさが一定である場合を示した。第2の実施形態は、この遅延の大きさが変動する場合であっても、第1の実施形態と同様の効果が得られる実施形態である。
【0060】
図4は、本発明の第2の実施形態の物体検知システムの構成例を示すブロック図である。第1の実施形態と同様の構成要素については、
図1に示す符号と同一の符号を付し、詳細な説明を省略する。物体検知システム100は、入力部1と、第1検知部2と、遅延測定部7と、履歴情報生成部3と、予測部4と、第2検知部5と、出力部6とを備える。
【0061】
入力部1、履歴情報生成部3、第2検知部5および出力部6は、第1の実施形態における入力部1、履歴情報生成部3、第2検知部5および出力部6(
図1参照)と同様であり、説明を省略する。
【0062】
遅延測定部7は、第1検知部2における遅延の大きさを測定する。
【0063】
また、入力部1に新たなフレームが入力されると、その新たなフレームは、第1検知部2および第2検知部5にそれぞれ送られる。このとき、遅延測定部7は、その新たなフレームのフレーム番号を取得する。新たなフレームが、遅延測定部7にも送られ、遅延測定部7がそのフレームのフレーム番号を取得してもよい。
【0064】
第1検知部2は、第1の実施形態における第1検知部2(
図1参照)と同様の動作を行う。さらに、第1検知部2は、フレーム番号と、ラベルと、バウンディングボックスの位置とを、履歴情報生成部3に出力するときに、そのフレーム番号を遅延測定部7にも出力する。このフレーム番号は、第1検知部2によって、映っている物体のラベルおよびその物体のバウンディングボックスの位置が特定されたフレームのフレーム番号である。
【0065】
このとき、遅延測定部7は、入力された最新のフレームのフレーム番号を取得している。
【0066】
遅延測定部7は、その最新のフレームのフレーム番号と、第1検知部2から与えられたフレーム番号との差分を、第1検知部2における遅延の大きさとして測定する。測定したフレーム番号の差分をnとする。本実施形態では、遅延の大きさは変動するので、フレーム番号の差分nの値も変動する。
【0067】
遅延測定部7は、フレーム番号の差分nを予測部4に出力する。
【0068】
予測部4は、その差分nに応じて、履歴情報に基づいて、入力された最新のフレーム内におけるバウンディングボックスの領域を予測する。具体的には、予測部4は、履歴情報内における最新のフレーム番号のフレーム(
図2に示す例では、フレーム番号11のフレーム)よりも、nフレーム後のフレーム内におけるバウンディングボックスの領域を予測する。
【0069】
予測部4は、履歴情報に基づいて、線形予測によって、最新のフレーム内におけるバウンディングボックスの領域を予測してもよい。
【0070】
あるいは、予測部4は、履歴情報に基づいて、カルマンフィルタによって、最新のフレーム内におけるバウンディングボックスの領域を予測してもよい。
【0071】
予測部4は、予測した、最新のフレーム内におけるバウンディングボックスの領域を示す情報を、第2検知部5に出力する。
【0072】
遅延測定部7、履歴情報生成部3および予測部4の処理時間は、無視できる程度に短い。
【0073】
遅延測定部7は、例えば、第1検知部2、履歴情報生成部3、予測部4および第2検知部5と同様に、物体検知プログラムに従って動作するコンピュータのCPUによって実現される。
【0074】
次に、処理経過について説明する。
図5は、第2の実施形態の物体検知システムの処理経過の例を示すフローチャートである。第1の実施形態における処理と同様の処理に関しては、
図3に示すステップ番号と同一のステップ番号を付し、説明を省略する。
【0075】
ステップS1,S2は、第1の実施形態におけるステップS1,S2(
図3参照)と同様である。ただし、ステップS2において、第1検知部2は、フレーム番号と、ラベルと、バウンディングボックスの位置とを、履歴情報生成部3に出力するときに、そのフレーム番号を遅延測定部7にも出力する。このとき、遅延測定部7は、入力された最新のフレームのフレーム番号を取得している。
【0076】
遅延測定部7は、その最新のフレームのフレーム番号と、第1検知部2から与えられたフレーム番号との差分nを求める(ステップS11)。
【0077】
ステップS3は、第1の実施形態におけるステップS3(
図3参照)と同様である。
【0078】
ステップS11およびステップS3が終了すると、予測部4は、ステップS11で得られた差分nに応じて、ステップS3で生成された履歴情報に基づいて、最新のフレーム内におけるバウンディングボックスの領域を予測する(ステップS12)。具体的には、予測部4は、履歴情報内における最新のフレーム番号のフレームよりも、nフレーム後のフレーム内におけるバウンディングボックスの領域を予測する。そして、予測部4は、予測した領域を示す情報を、第2検知部5に出力する。
【0079】
このとき、第2検知部5には、最新のフレームが入力されている。
【0080】
ステップS5は、第1の実施形態におけるステップS5(
図3参照)と同様である。
【0081】
本実施形態では、第1検知部2における遅延の大きさが変動したとしても、遅延測定部7が、遅延の大きさを、フレーム番号の差分で表す。そして、予測部4が、その差分に応じて、最新のフレーム内におけるバウンディングボックスの領域を予測する。従って、第2の実施形態においても、第1の実施形態と同様の効果が得られる。
【0082】
実施形態3.
第3の実施形態において、物体検知システムは、外部システム(図示略)に、入力されたフレーム毎に、物体のラベルおよびその物体のバウンディングボックスの位置を出力する。1つのフレームに複数の物体が映っている場合には、物体検知システム(具体的には後述の
図6に示す第2検知部5)は、そのフレームに関して、物体のラベルおよびその物体のバウンディングボックスの位置を、順次、外部システムに出力する。
【0083】
上記の外部システムは、互いの距離が近く、移動方向が向き合っている物体(本例では、人物)を検出すると、その人物が保持している端末に、「他者とぶつかる可能性がある」という内容のアラートを送信する。外部システムが、互いの距離が近く、移動方向が向き合っている物体を検出する方法は、特に限定されない。
【0084】
図6は、本発明の第3の実施形態の物体検知システムの構成例を示すブロック図である。第1の実施形態や第2の実施形態と同様の構成要素については、
図1や
図4に示す符号と同一の符号を付し、詳細な説明を省略する。第3の実施形態の物体検知システム100は、入力部1と、第1検知部2と、遅延測定部7と、履歴情報生成部3と、予測部4と、順序付け部8と、第2検知部5と、出力部6とを備える。
図6では、第2の実施形態(
図4参照)に順序付け部8を追加した例を示しているが、第1の実施形態(
図1参照)に順序付け部8を追加した構成であってもよい。
【0085】
入力部1、第1検知部2、遅延測定部7、履歴情報生成部3および出力部6は、第2の実施形態の入力部1、第1検知部2、遅延測定部7、履歴情報生成部3および出力部6(
図4参照)と同様であり、説明を省略する。
【0086】
順序付け部8は、予測部4によって予測されたバウンディングボックスの領域に対して順序付けを行う。
【0087】
第2検知部5は、順序付け部8によって定められた順に、予測されたバウンディングボックスの領域を選択し、その領域を対象にして、映っている物体のラベルを特定するとともにその物体のバウンディングボックスの位置を特定する。第2検知部5は、物体のラベルおよびバウンディングボックスの位置を特定したら、直ちに、出力部6を介して、そのラベルおよびバウンディングボックスの位置を外部システムに出力する。
【0088】
順序付け部8は、予測された2つのバウンディングボックスの領域の距離が所定の閾値以下であり、その2つのバウンディングボックスの移動方向が向き合っているという条件が満たされている場合に、その2つのバウンディングボックスの領域の順序を、その条件を満たしていないバウンディングボックスの領域の順序よりも早める。そして、順序付け部8は、定めた順序に従って、予測された領域を示す情報を第2検知部5に出力する。
【0089】
予測部4は、入力された最新のフレーム内におけるバウンディングボックスの領域を予測し、予測された領域を示す情報を順序付け部8に出力する。このとき、予測部4は、バウンディングボックスのID毎に、最新のフレーム内におけるバウンディングボックスの領域を予測する。そして、予測部4は、履歴情報に基づいて、バウンディングボックスのID毎に、バウンディングボックスの移動方向と速度とを示すベクトル(以下、動きベクトルと記す。)を導出し、ID毎に導出した動きベクトルも順序付け部8に出力する。順序付け部8は、ID毎に導出されたバウンディングボックスの動きベクトルを用いて、2つの予測された領域が上記の条件を満たしているか否かを判定すればよい。
【0090】
順序付け部8は、例えば、第1検知部2、履歴情報生成部3、遅延測定部7、予測部4および第2検知部5と同様に、物体検知プログラムに従って動作するコンピュータのCPUによって実現される。
【0091】
順序付け部8が、予測されたバウンディングボックスの領域に対して順序付けを行う例を示す。以下、予測されたバウンディングボックスの領域を、予測領域と記す。
図7は、順序付け部8によって順序付けされる複数の予測領域の例を示す模式図である。予測部4によって、フレーム1000内に4つの予測領域1001~1004が定められたとする(
図7参照)。
【0092】
予測領域1001,1002に着目すると、この2つの予測領域1001,1002は、前述の条件を満たしている。
【0093】
同様に、予測領域1001,1003に着目すると、この2つの予測領域1001,1003は、前述の条件を満たしている。
【0094】
また、予測領域1004と、他のいずれの予測領域とを組合せても、前述の条件は満たされない。
【0095】
従って、
図7に示す例では、順序付け部8は、予測領域1001,1002,1003の順序を、予測領域1004の順序よりも早める。順序付け部8は、3つの予測領域1001,1002,1003の順序に関しては、任意に定めてよい。本例では、予測領域1001、予測領域1002、予測領域1003、予測領域1004という順序で順序付けが行われたとする。
【0096】
第2検知部5は、最初に、予測領域1001を選択し、予測領域1001に映っている物体のラベルおよびその物体のバウンディングボックスの位置を特定する。そして、第2検知部5は、そのラベルおよびバウンディングボックスの位置を外部システムに出力する。
【0097】
次に、第2検知部5は、予測領域1002を選択し、予測領域1002に映っている物体のラベルおよびその物体のバウンディングボックスの位置を特定する。そして、第2検知部5は、そのラベルおよびバウンディングボックスの位置を外部システムに出力する。
【0098】
この時点で、外部システムは、予測領域1001に映っている人物の端末、および、予測領域1002に映っている人物の端末にアラートを送信することができる。
【0099】
次に、第2検知部5は、予測領域1003を選択し、予測領域1003に映っている物体のラベルおよびその物体のバウンディングボックスの位置を特定する。そして、第2検知部5は、そのラベルおよびバウンディングボックスの位置を外部システムに出力する。
【0100】
この時点で、外部システムは、予測領域1001に映っている人物の端末、および、予測領域1003に映っている人物の端末にアラートを送信することができる。
【0101】
仮に、予測領域1004の順序が、予測領域1001,1002,1003の順序よりも早いとする。すると、第2検知部5は、最初に予測領域1004を選択し、予測領域1004に映っている物体のラベルおよびその物体のバウンディングボックスの位置を外部システムに出力することになる。すると、予測領域1001,1002,1003それぞれに映っている人物の端末にアラート送信するタイミングが遅れてしまう。
【0102】
しかし、本実施形態では、順序付け部8が前述のように、予測されたバウンディングボックスの領域に対して順序付けを行う。従って、外部システムによるアラート送信タイミングの遅れを防止することができる。
【0103】
次に、本発明の実施形態の変形例について説明する。上記の第1の実施形態から第3の実施形態までの物体検知システム100は、フレーム番号を用いる。各実施形態で、物体検知システム100は、フレーム番号の代わりに、フレームが入力部1に入力された時の時刻を用いてもよい。
図8は、フレームが入力された時の時刻を用いる物体検知システムの例を示すブロック図である。
図8では、第2の実施形態(
図4参照)に時刻情報付加部9を追加した例を示しているが、第1の実施形態(
図1参照)や第3の実施形態(
図6参照)に時刻情報付加部9を追加した構成であってもよい。既に説明した事項と同様の事項については、説明を省略する。
【0104】
時刻情報付加部9は、入力部1に1つのフレームが入力されると、その時点の時刻を示す時刻情報をそのフレームに付加し、そのフレームを第1検知部2および第2検知部5に出力する。また、時刻情報付加部9は、その時刻情報を遅延測定部7に出力する。時刻情報付加部9は、例えば、物体検知プログラムに従って動作するコンピュータのCPUによって実現される。
【0105】
第1検知部2は、フレームに付加された時刻情報と、ラベルと、バウンディングボックスの位置とを、履歴情報生成部3に出力する。また、第1検知部2は、その時刻情報を遅延測定部7に出力する。
【0106】
履歴情報生成部3は、バウンディングボックスのID毎に、時刻情報、ラベルおよびバウンディングボックスの位置の組合せの履歴を示す履歴情報を生成する。
【0107】
遅延測定部7は、最新のフレームに付加された時刻と、第1検知部2から与えられた時刻との差分を、第1検知部2における遅延の大きさとして測定する。
【0108】
予測部4は、履歴情報内の最新の時刻にその差分に該当する時間を追加した時刻に対応するフレーム内におけるバウンディングボックスの領域を予測する。
【0109】
なお、第1の実施形態に時刻情報付加部9を追加する構成では、予測部4は、履歴情報内の最新の時刻に予め定められた所定時間を追加した時刻に対応するフレーム内におけるバウンディングボックスの領域を予測する。
【0110】
その他の点は、既に説明した各実施形態と同様である。
【0111】
このような変形例でも、各実施形態と同様の効果が得られる。
【0112】
図9は、本発明の物体検知システム100に係るコンピュータの構成例を示す概略ブロック図である。コンピュータ2000は、例えば、CPU2001と、主記憶装置2002と、補助記憶装置2003と、インタフェース2004と、入力インタフェース2005と、出力インタフェース2006とを備える。
【0113】
本発明の各実施形態の物体検知システム100は、例えば、コンピュータ2000によって実現される。物体検知システム100の動作は、プログラム(物体検知プログラム)の形式で補助記憶装置2003に記憶されている。CPU2001は、そのプログラムを補助記憶装置2003から読み出し、そのプログラムを主記憶装置2002に展開し、そのプログラムに従って、上記の各実施形態や変形例で説明した処理を実行する。
【0114】
補助記憶装置2003は、一時的でない有形の媒体の例である。一時的でない有形の媒体の他の例として、インタフェース2004を介して接続される磁気ディスク、光磁気ディスク、CD-ROM(Compact Disk Read Only Memory )、DVD-ROM(Digital Versatile Disk Read Only Memory )、半導体メモリ等が挙げられる。
【0115】
また、既に説明したように、物体検知システムが、FPGAとAIチップの組合せによって実現されてもよい。また、物体検知システムが、エッジデバイスとサーバの組合せによって実現されてもよい。
【0116】
次に、本発明の概要について説明する。
図10は、本発明の物体検知システムの概要を示すブロック図である。本発明の物体検知システムには、フレームが連続して入力される。そして、本発明の物体検知システムは、第1検知手段72と、履歴情報生成手段73と、予測手段74と、第2検知手段75とを備える。
【0117】
第1検知手段72(例えば、第1検知部2)は、入力されたフレームに映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する。
【0118】
履歴情報生成手段73(例えば、履歴情報生成部3)は、物体が共通であるバウンディングボックスに同一のIDを付与し、フレーム番号およびバウンディングボックスの位置の組合せの履歴をID毎に示す情報である履歴情報を生成する。
【0119】
予測手段74(例えば、予測部4)は、第1検知手段72がフレームに対してラベルおよびバウンディングボックスの位置を特定するのに要する時間である遅延に応じて、履歴情報に基づいて、最新のフレーム内におけるバウンディングボックスの領域を予測する。
【0120】
第2検知手段75(例えば、第2検知部5)は、最新のフレーム内の、予測されたバウンディングボックスの領域を対象にして、映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する。
【0121】
そして、第2検知手段75が1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間は、第1検知手段72が1つのフレームに対してラベルおよびバウンディングボックスの位置を特定するための処理時間よりも短い。
【0122】
そのような構成によって、低遅延と物体の検知精度とを両立させることができる。
【0123】
また、遅延の大きさを測定する遅延測定手段(例えば、遅延測定部7)を備える構成であってもよい。
【0124】
そして、遅延測定手段が、最新のフレームのフレーム番号と、第1検知手段72によって、映っている物体のラベルおよび物体のバウンディングボックスの位置が特定されたフレームのフレーム番号との差分を、遅延の大きさとして測定し、予測手段74が、差分に応じて、最新のフレーム内におけるバウンディングボックスの領域を予測してもよい。
【0125】
また、予測手段74が、履歴情報に基づいて、線形予測によって、最新のフレーム内におけるバウンディングボックスの領域を予測してもよい。
【0126】
また、予測手段74が、履歴情報に基づいて、カルマンフィルタによって、最新のフレーム内におけるバウンディングボックスの領域を予測してもよい。
【0127】
また、予測手段74によって予測されたバウンディングボックスの領域に対して順序付けを行う順序付け手段(例えば、順序付け部8)を備え、第2検知手段75が、順序付け手段によって定められた順に、予測されたバウンディングボックスの領域を選択し、当該領域を対象にして、映っている物体のラベルを特定するとともに物体のバウンディングボックスの位置を特定する構成であってもよい。
【0128】
例えば、順序付け手段は、予測された2つのバウンディングボックスの領域の距離が所定の閾値以下であり、その2つのバウンディングボックスの移動方向が向き合っているという条件が満たされている場合に、その2つのバウンディングボックスの領域の順序を、条件を満たしていないバウンディングボックスの領域の順序よりも早める。
【産業上の利用可能性】
【0129】
本発明は、フレームに映っている物体を検知する物体検知システムに好適に適用される。
【符号の説明】
【0130】
1 入力部
2 第1検知部
3 履歴情報生成部
4 予測部
5 第2検知部
6 出力部
7 遅延測定部
8 順序付け部
100 物体検知システム