IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ トヨタ自動車株式会社の特許一覧

特許7528915追跡装置、追跡方法及び追跡用コンピュータプログラム
<>
  • 特許-追跡装置、追跡方法及び追跡用コンピュータプログラム 図1
  • 特許-追跡装置、追跡方法及び追跡用コンピュータプログラム 図2
  • 特許-追跡装置、追跡方法及び追跡用コンピュータプログラム 図3
  • 特許-追跡装置、追跡方法及び追跡用コンピュータプログラム 図4
  • 特許-追跡装置、追跡方法及び追跡用コンピュータプログラム 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-29
(45)【発行日】2024-08-06
(54)【発明の名称】追跡装置、追跡方法及び追跡用コンピュータプログラム
(51)【国際特許分類】
   G06T 7/20 20170101AFI20240730BHJP
   G06T 7/00 20170101ALI20240730BHJP
【FI】
G06T7/20
G06T7/00 350B
【請求項の数】 5
(21)【出願番号】P 2021207242
(22)【出願日】2021-12-21
(65)【公開番号】P2023092183
(43)【公開日】2023-07-03
【審査請求日】2023-08-16
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【弁理士】
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100147555
【弁理士】
【氏名又は名称】伊藤 公一
(74)【代理人】
【識別番号】100123593
【弁理士】
【氏名又は名称】関根 宣夫
(74)【代理人】
【識別番号】100133835
【弁理士】
【氏名又は名称】河野 努
(72)【発明者】
【氏名】武安 聡
【審査官】藤原 敬利
(56)【参考文献】
【文献】特開2021-026644(JP,A)
【文献】特開2005-128815(JP,A)
【文献】特開2020-052694(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00 - 7/90
G06V 10/00 -20/90
H04N 5/222- 5/257
H04N 7/18
H04N 23/00 -23/959
(57)【特許請求の範囲】
【請求項1】
撮像部により生成された画像を識別器に入力することで、当該画像上において所定の物体が表されている確からしさを表す確信度が所定の検出閾値以上となる少なくとも一つの領域のそれぞれを候補領域として検出する候補領域検出部と、
前記撮像部により前記画像よりも前に生成された過去画像において前記所定の物体が表された物体領域と少なくとも一つの前記候補領域のそれぞれとの間のオプティカルフローに基づいて、少なくとも一つの前記候補領域の何れかを、前記所定の物体が表されている領域として前記所定の物体に対応付けられるか否か判定し、当該対応付けが可能な場合に前記所定の物体の追跡回数を1増加させる追跡部と、
前記追跡回数が所定回数以下である場合、前記撮像部により前記画像よりも後に得られる次画像に対して適用される前記検出閾値を第1の値に設定し、前記追跡回数が前記所定回数よりも多い場合、前記次画像に対して適用される前記検出閾値を前記第1の値よりも低い第2の値に設定する閾値制御部と、
を有する追跡装置。
【請求項2】
前記候補領域検出部は、前記追跡回数が前記所定回数よりも多い場合、前記画像から、前記確信度が前記第2の値よりも低い第3の値以上となる領域を追加候補領域としてさらに検出し、
前記追跡部は、前記画像から検出された少なくとも一つの前記候補領域の何れも前記所定の物体が表されている領域でないと判定した場合、前記過去画像上の前記物体領域と前記追加候補領域間のオプティカルフローに基づいて、前記追加候補領域を、前記所定の物体が表されている領域として前記所定の物体に対応付けられるか否か判定する、請求項1に記載の追跡装置。
【請求項3】
前記閾値制御部は、前記追跡回数が前記所定回数よりも多い前記所定の物体が追跡されている期間において前記撮像部により生成された複数の前記過去画像のそれぞれにおける前記物体領域から前記次画像における前記所定の物体の位置を推定し、推定した位置を含む領域を、前記第2の値を持つ前記検出閾値が適用される領域として設定する、請求項1または2に記載の追跡装置。
【請求項4】
撮像部により生成された画像を識別器に入力することで、当該画像上において所定の物体が表されている確からしさを表す確信度が所定の検出閾値以上となる少なくとも一つの領域のそれぞれを候補領域として検出し、
前記撮像部により前記画像よりも前に生成された過去画像において前記所定の物体が表された物体領域と少なくとも一つの前記候補領域のそれぞれとの間のオプティカルフローに基づいて、少なくとも一つの前記候補領域の何れかを、前記所定の物体が表されている領域として前記所定の物体に対応付けられるか否か判定し、当該対応付けが可能な場合に前記所定の物体の追跡回数を1増加させ、
前記追跡回数が所定回数以下である場合、前記撮像部により前記画像よりも後に得られる次画像に対して適用される前記検出閾値を第1の値に設定し、
前記追跡回数が前記所定回数よりも多い場合、前記次画像に対して適用される前記検出閾値を前記第1の値よりも低い第2の値に設定する、
ことを含む追跡方法。
【請求項5】
撮像部により生成された画像を識別器に入力することで、当該画像上において所定の物体が表されている確からしさを表す確信度が所定の検出閾値以上となる少なくとも一つの領域のそれぞれを候補領域として検出し、
前記撮像部により前記画像よりも前に生成された過去画像において前記所定の物体が表された物体領域と少なくとも一つの前記候補領域のそれぞれとの間のオプティカルフローに基づいて、少なくとも一つの前記候補領域の何れかを、前記所定の物体が表されている領域として前記所定の物体に対応付けられるか否か判定し、当該対応付けが可能な場合に前記所定の物体の追跡回数を1増加させ、
前記追跡回数が所定回数以下である場合、前記撮像部により前記画像よりも後に得られる次画像に対して適用される前記検出閾値を第1の値に設定し、
前記追跡回数が前記所定回数よりも多い場合、前記次画像に対して適用される前記検出閾値を前記第1の値よりも低い第2の値に設定する、
ことをコンピュータに実行させるための追跡用コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像に表された物体を追跡する追跡装置、追跡方法及び追跡用コンピュータプログラムに関する。
【背景技術】
【0002】
カメラにより時系列に生成された一連の画像から検出された物体を追跡する技術が提案されている(特許文献1及び特許文献2を参照)。
【0003】
特許文献1に開示された物体検出装置は、センサにより得られた時系列の複数のセンサ信号のうちの最新のセンサ信号よりも前のセンサ信号において検出された第1の物体を追跡して、最新のセンサ信号において第1の物体が通過した通過領域を検出する。さらに、この物体検出装置は、最新のセンサ信号における領域ごとに、その領域が通過領域に含まれるか否かに応じて、その領域に表された第2の物体についての確信度に対して適用される確信度閾値を制御する。そしてこの物体検出装置は、確信度が確信度閾値以上となる領域において第2の物体を検出する。
【0004】
特許文献2に開示された追跡装置は、複数の画像を用いてオプティカルフローを算出し、算出したオプティカルフローに基づいて移動体の位置及び移動方向を検出する。また、この追跡装置は、複数の画像に基づいて生成された複数の俯瞰画像に基づいて移動体の位置及び移動方向を検出する。さらに、この追跡装置は、オプティカルフローに基づく移動体の位置及び移動方向の検出結果と、各俯瞰画像に基づく移動体の位置及び移動方向の検出結果を統合して移動体の位置及び移動方向を検出する。さらにまた、この追跡装置は、上記のそれぞれの検出結果に基づいて決定した追跡すべき追跡移動体の将来の位置及び移動方向を推定する。そしてこの追跡装置は、追跡移動体について推定した推定位置、俯瞰画像に基づいて検出された移動体の位置及び検出結果の統合に基づいて検出された移動体の位置の何れか一つを用いて追跡移動体を追跡して、追跡移動体の位置を特定する。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2020-52695号公報
【文献】特開2017-102824号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
カメラと追跡中の物体の相対的な位置関係により、物体の追跡中における或る時点において生成された画像においてその物体の検出が困難になることがある。このような場合、物体を追跡する追跡装置は、その追跡中の物体が表されている領域の検出に失敗し、その結果として、その物体の追跡に失敗してしまうことがある。
【0007】
そこで、本発明は、時系列に得られる画像に表された物体の追跡を適切に継続することが可能な追跡装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
一つの実施形態によれば、追跡装置が提供される。この追跡装置は、撮像部により生成された画像を識別器に入力することで、その画像上において所定の物体が表されている確からしさを表す確信度が所定の検出閾値以上となる少なくとも一つの領域のそれぞれを、所定の物体が表されている候補領域として検出する候補領域検出部と、撮像部によりその画像よりも前に生成された過去画像において所定の物体が表された物体領域と少なくとも一つの候補領域のそれぞれとの間のオプティカルフローに基づいて、少なくとも一つの候補領域の何れかを、所定の物体が表されている領域として対応付けられるか否か判定し、その対応付けが可能な場合に所定の物体の追跡回数を1増加させる追跡部と、追跡回数が所定回数以下である場合、撮像部によりその画像よりも後に得られる次画像に対して適用される検出閾値を第1の値に設定し、追跡回数が所定回数よりも多い場合、次画像に対して適用される検出閾値を第1の値よりも低い第2の値に設定する閾値制御部とを有する。
【0009】
この追跡装置において、候補領域検出部は、追跡回数が所定回数よりも多い場合、画像から、確信度が第2の値よりも低い第3の値以上となる領域を追加候補領域としてさらに検出し、追跡部は、画像から検出された少なくとも一つの候補領域の何れも所定の物体が表されている領域でないと判定した場合、過去画像上の物体領域と追加候補領域間のオプティカルフローに基づいて、追加候補領域を、所定の物体が表されている領域として所定の物体に対応付けられるか否か判定することが好ましい。
【0010】
また、この追跡装置において、閾値制御部は、追跡回数が所定回数よりも多い所定の物体が追跡されている期間において撮像部により生成された複数の過去画像のそれぞれにおける物体領域から次画像における所定の物体の位置を推定し、推定した位置を含む領域を、第2の値を持つ検出閾値が適用される領域として設定することが好ましい。
【0011】
他の実施形態によれば、追跡方法が提供される。この追跡方法は、撮像部により生成された画像を識別器に入力することで、その画像上において所定の物体が表されている確からしさを表す確信度が所定の検出閾値以上となる少なくとも一つの領域のそれぞれを、所定の物体が表されている候補領域として検出し、撮像部によりその画像よりも前に生成された過去画像において所定の物体が表された物体領域と少なくとも一つの候補領域のそれぞれとの間のオプティカルフローに基づいて、少なくとも一つの候補領域の何れかを、所定の物体が表されている領域として対応付けられるか否か判定し、その対応付けが可能な場合に所定の物体の追跡回数を1増加させ、追跡回数が所定回数以下である場合、撮像部によりその画像よりも後に得られる次画像に対して適用される検出閾値を第1の値に設定し、追跡回数が所定回数よりも多い場合、次画像に対して適用される検出閾値を第1の値よりも低い第2の値に設定する、ことを含む。
【0012】
さらに他の実施形態によれば、追跡用コンピュータプログラムが提供される。この追跡用コンピュータプログラムは、撮像部により生成された画像を識別器に入力することで、その画像上において所定の物体が表されている確からしさを表す確信度が所定の検出閾値以上となる少なくとも一つの領域のそれぞれを、所定の物体が表されている候補領域として検出し、撮像部によりその画像よりも前に生成された過去画像において所定の物体が表された物体領域と少なくとも一つの候補領域のそれぞれとの間のオプティカルフローに基づいて、少なくとも一つの候補領域の何れかを、所定の物体が表されている領域として対応付けられるか否か判定し、その対応付けが可能な場合に所定の物体の追跡回数を1増加させ、追跡回数が所定回数以下である場合、撮像部によりその画像よりも後に得られる次画像に対して適用される検出閾値を第1の値に設定し、追跡回数が所定回数よりも多い場合、次画像に対して適用される検出閾値を第1の値よりも低い第2の値に設定する、ことをコンピュータに実行させるための命令を含む。
【発明の効果】
【0013】
本開示に係る追跡装置は、時系列に得られる画像に表された物体の追跡を適切に継続できるという効果を奏する。
【図面の簡単な説明】
【0014】
図1】追跡装置が実装される車両制御システムの概略構成図である。
図2】追跡装置の一つの実施形態である電子制御装置のハードウェア構成図である。
図3】追跡装置を含む車両制御処理に関する、電子制御装置のプロセッサの機能ブロック図である。
図4】(a)は、比較例による追跡処理の概要を説明する図であり、(b)は、本実施形態による追跡処理の概要を説明する図である。
図5】追跡処理を含む、車両制御処理の動作フローチャートである。
【発明を実施するための形態】
【0015】
以下、図を参照しつつ、追跡装置、及び、追跡装置上で実行される追跡方法及び追跡用コンピュータプログラムについて説明する。この追跡装置は、撮像部により時系列に生成される一連の画像のそれぞれを識別器に入力することで検出対象となる物体を検出し、検出した物体を追跡する。その際、この追跡装置は、物体を追跡できた画像が増える度にその物体の追跡回数を1ずつ増加させ、追跡回数に応じて、識別器が出力する、検出対象となる物体が表されている確からしさを表す確信度と比較される検出閾値を制御する。特に、この追跡装置は、追跡回数が所定回数よりも多い物体について適用される検出閾値の値を、追跡回数が所定回数以下であるときの値よりも低く設定する。こうすることで、この追跡装置は、物体の追跡中において何らかの理由でその物体を画像から検出し難くなったとしても、その物体の追跡を継続でき易くする。
【0016】
以下では、追跡装置を、車両制御システムに適用した例について説明する。この例では、追跡装置は、自車両に搭載されたカメラにより得られた画像に対して追跡処理を実行することで、自車両の周囲を走行する他の車両(以下、説明の便宜上、周辺車両と呼ぶ)を追跡する。そしてその追跡結果は、自車両の運転制御に利用される。周辺車両は、検出及び追跡の対象となる所定の物体の一例である。
【0017】
図1は、追跡装置が実装される車両制御システムの概略構成図である。また図2は、追跡装置の一例である電子制御装置のハードウェア構成図である。本実施形態では、車両10(すなわち、自車両)に搭載され、かつ、車両10を制御する車両制御システム1は、車両10の周囲を撮影するためのカメラ2と、追跡装置の一例である電子制御装置(ECU)3とを有する。カメラ2とECU3とは、コントローラエリアネットワークといった規格に準拠した車内ネットワークを介して通信可能に接続される。なお、車両制御システム1は、車両10の自動運転制御に用いられる、地物の位置及び種類、車線区画線などを表す地図情報を記憶するストレージ装置(図示せず)をさらに有していてもよい。さらに、車両制御システム1は、LiDARあるいはレーダといった測距センサ(図示せず)を有していてもよい。さらにまた、車両制御システム1は、GPS受信機といった、衛星測位システムに準拠して車両10の自己位置を測位するための受信機(図示せず)を有していてもよい。さらにまた、車両制御システム1は、車両10の走行予定ルートを探索するためのナビゲーション装置(図示せず)を有していてもよい。
【0018】
カメラ2は、撮像部の一例であり、CCDあるいはC-MOSなど、可視光に感度を有する光電変換素子のアレイで構成された2次元検出器と、その2次元検出器上に撮影対象となる領域の像を結像する結像光学系を有する。カメラ2は、車両10の前方を向くように、例えば、車両10の車室内に取り付けられる。そしてカメラ2は、所定の撮影周期(例えば1/30秒~1/10秒)ごとに車両10の前方領域を撮影し、その前方領域が写った画像を生成する。カメラ2により得られた画像は、カラー画像であってもよく、あるいは、グレー画像であってもよい。なお、車両10には、撮影方向または焦点距離が異なる複数のカメラが設けられてもよい。
【0019】
カメラ2は、画像を生成する度に、その生成した画像及び撮影時刻(すなわち、画像の生成時刻)を、車内ネットワークを介してECU3へ出力する。
【0020】
ECU3は、車両10を制御する。本実施形態では、ECU3は、カメラ2により得られた時系列の一連の画像から周辺車両を検出する。さらに、ECU3は、一連の画像からの周辺車両の検出結果に基づいて周辺車両を追跡する。そしてECU3は、周辺車両の追跡結果に基づいて、周辺車両と衝突しないように車両10を自動運転するよう、車両10を制御する。そのために、ECU3は、通信インターフェース21と、メモリ22と、プロセッサ23とを有する。
【0021】
通信インターフェース21は、通信部の一例であり、ECU3を車内ネットワークに接続するためのインターフェース回路を有する。すなわち、通信インターフェース21は、車内ネットワークを介して、カメラ2と接続される。そして通信インターフェース21は、カメラ2から画像を受信する度に、受信した画像をプロセッサ23へわたす。
【0022】
メモリ22は、記憶部の一例であり、例えば、揮発性の半導体メモリ及び不揮発性の半導体メモリを有する。そしてメモリ22は、ECU3のプロセッサ23により実行される追跡処理において使用される各種のデータを記憶する。メモリ22は、そのようなデータとして、例えば、カメラ2の焦点距離、撮影方向及び設置高さといったカメラ2に関する情報を表すパラメータ、周辺車両の検出で利用される識別器を特定するための各種パラメータなどを記憶する。また、メモリ22は、検出された周辺車両までの距離の推定の際に利用される各種の情報を記憶する。例えば、メモリ22は、車種ごとに、その車種の車両の基準となる車幅(以下、基準車幅と呼ぶ)を記憶する。さらにまた、メモリ22は、カメラ2から受信した画像をその撮影時刻とともに一定期間記憶する。さらにまた、メモリ22は、追跡処理の途中で生成される各種のデータ、例えば、追跡中の周辺車両に関する情報を記録した検出リストを一定期間記憶する。さらにまた、メモリ22は、地図情報といった車両10の走行制御に利用される情報を記憶してもよい。
【0023】
プロセッサ23は、制御部の一例であり、1個または複数個のCPU(Central Processing Unit)及びその周辺回路を有する。プロセッサ23は、論理演算ユニット、数値演算ユニットあるいはグラフィック処理ユニットといった他の演算回路をさらに有していてもよい。そしてプロセッサ23は、車両10が走行している間、所定の周期(例えば、数10msec~100msec)ごとに、追跡処理を含む車両制御処理を実行する。そしてプロセッサ23は、検出された周辺車両の追跡結果に基づいて、車両10を自動運転するよう、車両10を制御する。
【0024】
図3は、追跡処理を含む車両制御処理に関する、ECU3のプロセッサ23の機能ブロック図である。プロセッサ23は、候補領域検出部31と、追跡部32と、閾値制御部33と、車両制御部34とを有する。プロセッサ23が有するこれらの各部は、例えば、プロセッサ23上で動作するコンピュータプログラムにより実現される機能モジュールである。あるいは、プロセッサ23が有するこれらの各部は、プロセッサ23に設けられる、専用の演算回路であってもよい。また、プロセッサ23が有するこれらの各部のうち、候補領域検出部31、追跡部32及び閾値制御部33が、追跡処理を実行する。なお、車両10に複数のカメラが設けられる場合には、プロセッサ23は、カメラごとに、そのカメラにより得られた画像に基づいて追跡処理を実行してもよい。
【0025】
候補領域検出部31は、ECU3がカメラ2から受け取った最新の画像を識別器に入力することで、その画像上の複数の領域のそれぞれについて、周辺車両が表されている確からしさを表す確信度を算出する。そして候補領域検出部31は、複数の領域のうち、確信度が所定の検出閾値以上となる個々の領域を、周辺車両が表されている候補領域として検出する。
【0026】
候補領域検出部31は、識別器として、例えば、いわゆるディープニューラルネットワーク(DNN)を用いることができる。具体的に、識別器として利用されるDNNは、Single Shot MultiBox Detector(SSD)、または、Faster R-CNNといった、コンボリューショナルニューラルネットワーク(CNN)型のアーキテクチャを持つものとすることができる。このような識別器は、画像から周辺車両を検出するように、車両が表された多数の教師画像を用いて誤差逆伝搬法といった所定の学習手法に従って予め学習される。すなわち、識別器は、周辺車両が表された領域について算出された確信度が、周辺車両が表されていない領域について算出された確信度よりも高くなるように予め学習される。候補領域検出部31は、このように学習されたDNNを利用することで、画像から候補領域を適切に検出できる。
【0027】
さらに、識別器は、画像上の複数の領域のそれぞれについて、周辺車両の種別(例えば、乗用車、大型車両、二輪車etc.)の識別結果を出力する。
【0028】
候補領域検出部31は、個々の領域について識別器により算出された確信度を、その領域について閾値制御部33により設定された検出閾値と比較する。そして候補領域検出部31は、確信度が検出閾値以上となる領域を候補領域として検出する。なお、検出閾値は、第1の値(例えば、0.8)または第1の値よりも低い第2の値(例えば、0.7)の何れかに設定される。何れかの種別について検出閾値が第2の値に設定された低閾値領域は、閾値制御部33により設定される。そのため、候補領域検出部31は、確信度が算出された各領域のうち、低閾値領域に含まれ、かつ、周辺車両の種別がその低閾値領域において第2の値が適用される種別に該当する領域に対して、検出閾値として第2の値を使用すればよい。なお、候補領域検出部31は、例えば、低閾値領域に対して所定の割合(例えば、0.7~1.0)以上重複する領域を、低閾値領域に含まれる領域とすることができる。候補領域検出部31は、検出した個々の候補領域の位置及び範囲を表す情報と、その候補領域に表される周辺車両の種別と、算出された確信度とを、追跡部32及び車両制御部34へ出力する。なお、候補領域の位置及び範囲を表す情報は、例えば、候補領域の左上端位置の座標と右下端位置の座標を含む。
【0029】
候補領域検出部31は、さらに、低閾値領域に含まれ、かつ、周辺車両の種別がその低閾値領域において第2の値が適用される種別に該当する領域について算出された確信度が第3の値以上である場合、その領域を追加候補領域とする。なお、第3の値は、第2の値よりも低い値(例えば、0.6)に設定される。そして候補領域検出部31は、検出した個々の追加候補領域の位置及び範囲を表す情報と、その追加候補領域に表される周辺車両の種別と、算出された確信度とを、追跡部32及び車両制御部34へ出力する。
【0030】
なお、識別器は、周辺車両だけでなく、周辺車両以外の車両10の運転制御に影響する可能性が有る物体を検出するように予め学習されてもよい。そして候補領域検出部31は、画像を識別器に入力することで算出された、その物体についての確信度が第1の値となる検出閾値以上となる領域に、その物体が表されていると判定してもよい。そして候補領域検出部31は、検出した物体の種別及びその物体が表された領域を表す情報を車両制御部34へ出力してもよい。なお、そのような物体には、人などの移動物体、車線区画線といった道路標示、縁石、ガードレール等の道路上または道路周辺の地物、及び、道路標識の少なくとも何れかが含まれる。
【0031】
追跡部32は、検出された候補領域のそれぞれについて、候補領域が検出された画像よりもカメラ2により過去に生成された過去画像から検出され、かつ、追跡中の何れかの周辺車両と対応付けられるか否か判定する。その際、追跡部32は、各候補領域について、過去画像において追跡中の周辺車両が表された領域(以下、物体領域と呼ぶことがある)とその候補領域とに基づいてオプティカルフローを算出し、そのオプティカルフローに基づいて対応付けが可能か否か判定する。そして追跡部32は、追跡中の何れかの周辺車両と対応付けられる候補領域を、その周辺車両が表されている物体領域として、その周辺車両と関連付けて検出リストに登録するとともに、その周辺車両についての追跡回数を1増加させる。さらに、追跡部32は、追跡中の周辺車両の何れとも対応付けられなかった候補領域のうち、確信度が検出閾値の第1の値以上となる候補領域を、新たに検出された周辺車両が表された物体領域とする。そして追跡部32は、その物体領域に表された周辺車両及びその周辺車両が表された領域を表す情報を、新たに追跡を開始する周辺車両として検出リストに登録する。その際、追跡部32は、新たに追跡を開始する周辺車両の追跡回数を1に設定する。また、追跡部32は、追跡中の各周辺車両のうち、直近の一定期間に得られた何れの画像の候補領域とも対応付けられなかった周辺車両の追跡を終了する。
【0032】
追跡部32は、追跡中の周辺車両のそれぞれについて、その周辺車両が最後に検出された過去画像における、その周辺車両が表された物体領域(以下、着目領域と呼ぶ)から、所定の追跡手法に従って複数の特徴点を検出する。そして追跡部32は、追跡中の周辺車両のそれぞれについて、検出した各特徴点と、各候補領域との間でオプティカルフローを算出し、算出したオプティカルフローに基づいて、各候補領域のうち、着目領域と最も一致する候補領域を特定する。その際、追跡部32は、各候補領域のうち、着目領域に表された周辺車両の種別と同じ種別の周辺車両が表された候補領域のみを、オプティカルフローの算出対象となる候補領域としてもよい。追跡部32は、特定した候補領域と着目領域との相違度が所定の相違度閾値以下である場合、特定した候補領域を、着目領域に表された周辺車両に対応付ければよい。なお、追跡部32は、所定の追跡手法として、例えば、Lucas-Kanade法、Kanade-Lucas-Tomasi(KLT)法あるいはMean-Shift探索に基づく手法を利用することができる。また、追跡部32は、特徴点の検出において、例えば、HarrisオペレータあるいはSIFT Descriptorといった、所定の追跡手法で用いられる特徴点検出用のフィルタを利用することができる。また、相違度は、所定の追跡手法に従って算出される。例えば、着目領域の各特徴点と候補領域における対応する点との間での画素値の二乗誤差が最小となるようにオプティカルフローを算出したときのその最小二乗誤差が相違度として算出される。このような対応付けを行うことで、追跡部32は、追跡回数が所定回数以下の周辺車両については、確信度が第1の値を持つ検出閾値以上となる候補領域のみを対応付ける。一方、追跡部32は、追跡回数が所定回数より多い周辺車両については、確信度が第2の値を持つ検出閾値以上となる候補領域についてもその周辺車両に対応付けることができる。そのため、追跡部32は、ある程度の期間にわたって追跡され、最新の画像に表されている可能性が高い周辺車両については、最新の画像からその周辺車両を検出することが難くなっていたとしても、その周辺車両の追跡を継続することができる。なお、所定回数は、2以上、例えば、5~10に設定される。
【0033】
さらに、上記の処理により、追跡回数が所定回数よりも多い周辺車両が表された着目領域と対応付けられる候補領域が存在しないことがある。このような場合、追跡部32は、その着目領域と追加候補領域間のオプティカルフローに基づいて、追加候補領域をその着目領域と対応付けられるか否か判定する。その際、追跡部32は、着目領域から検出された個々の特徴点のうち、その特徴点と、オプティカルフローに基づく、追加候補領域内の対応点との画素値の差が所定の誤差範囲内となる点を、その特徴点に対する対応点とする。なお、追跡部32は、個々の特徴点についてその特徴点を中心とする所定数の画素を含む特徴点ブロック(例えば、3×3画素のブロック)を設定してもよい。追跡部32は、その特徴点ブロックとオプティカルフローに基づく追加候補領域内の対応するブロック間で、対応画素ごとの画素値の差の絶対値和を算出する。そして追跡部32は、その画素値の差の絶対値和が所定の誤差範囲内となる場合、対応するブロックの中心画素を、特徴点に対応する対応点とする。追跡部32は、着目領域から検出された特徴点の総数に対する、対応点を特定できた特徴点の数の比率が所定割合以上である場合に、追加候補領域を、その着目領域に表された周辺車両に対応付けてもよい。追跡部32は、このような追加候補領域についても追跡中の周辺車両と対応付けられるか否かを判定することで、最新の画像においてその周辺車両の検出が特に困難になっている場合でも、その周辺車両の追跡を継続することができる。
【0034】
追跡部32は、更新された検出リスト及び追跡中の各周辺車両の追跡回数をメモリ22に保存するとともに、閾値制御部33へ通知する。
【0035】
閾値制御部33は、追跡中の各周辺車両について、各候補領域が検出された画像の次に得られる画像(以下、次画像と呼ぶことがある)において、その周辺車両に対して適用される検出閾値を設定する。
【0036】
本実施形態では、閾値制御部33は、追跡回数が所定回数以下である周辺車両に対して、検出閾値を第1の値に設定する。これに対して、閾値制御部33は、追跡回数が所定回数よりも多い周辺車両に対して、検出閾値を第1の値よりも低い第2の値に設定する。そして閾値制御部33は、検出リストを参照して、次画像においてその周辺車両が表されていると想定される領域を推定し、推定した領域を低閾値領域とする。閾値制御部33は、例えば、検出リストに登録されている、追跡中の過去の画像のそれぞれにおけるその周辺車両が表されている物体領域に対して予測処理を適用することで、次画像においてその周辺車両が表されていると想定される領域を推定する。閾値制御部33は、そのような予測処理として、Kalman Filterを用いることができる。あるいは、閾値制御部33は、追跡中の過去の画像のそれぞれにおけるその周辺車両が表されている物体領域に対して所定の外挿処理を適用することで、次画像においてその周辺車両が表されていると想定される領域を推定してもよい。このように、次画像において第2の値を持つ検出閾値が適用される低閾値領域を設定することで、追跡回数の異なる周辺車両が複数存在する場合でも、その周辺車両ごとに適切な値を持つ検出閾値を適用することが可能となる。
【0037】
閾値制御部33は、追跡中の各周辺車両について次画像に適用される検出閾値を候補領域検出部31及び追跡部32へ通知する。さらに、閾値制御部33は、追跡回数が所定回数よりも多い各周辺車両についての低閾値領域を表す情報及びその周辺車両の種別を表す情報を候補領域検出部31へ通知する。
【0038】
図4(a)は、比較例による追跡処理の概要を説明する図であり、図4(b)は、本実施形態による追跡処理の概要を説明する図である。図4(a)に示される例では時系列に得られた一連の画像400-1~400-nにおいて、それぞれ周辺車両410が表されている。しかし、n番目の画像400-nにおいて、周辺車両410が表されている領域401について識別器により算出された確信度(0.75)が検出閾値の第1の値Th1よりも低くなっている。その結果として、画像400-nでは周辺車両410が検出されず、比較例による追跡装置は、周辺車両410の追跡に失敗してしまう。
【0039】
これに対して、図4(b)に示される例でも、時系列に得られた一連の画像420-1~420-nにおいて、それぞれ周辺車両430が表されている。そして(n-1)番目の画像420-(n-1)の時点で、周辺車両430の追跡回数が所定回数を超えたとする。そのため、n番目の画像420-nにおいて周辺車両430が表されていると推定される低閾値領域422では、検出閾値は、画像420-(n-1)までに適用されていた第1の値Th1から、第1の値よりも低い第2の値Th2に変更される。したがって、画像420-nにおいて、周辺車両430が表されている領域421についての確信度(0.75)が、第1の値Th1よりも低くても、第2の値Th2以上であり、かつ、領域421が低閾値領域422内であれば、領域421は候補領域として検出される。その結果として、画像420-nにおいても、周辺車両430の追跡は継続される。
【0040】
車両制御部34は、検出リストを参照して、追跡中の各周辺車両と車両10とが衝突しないように車両10の走行予定経路(トラジェクトリ)を1以上生成する。走行予定経路は、例えば、現時刻から所定時間先までの各時刻における、車両10の目標位置の集合として表される。その際、車両制御部34は、ナビゲーション装置により設定された走行予定ルートに沿って車両10が走行するように、あるいは、車両10が現在走行中の車線に沿って車両10が走行するように走行予定経路を設定すればよい。例えば、車両制御部34は、検出リストを参照して、カメラ2についての車両10への取り付け位置などの情報を用いて視点変換処理を実行することで、追跡中の個々の周辺車両の画像内座標を鳥瞰画像上の座標(鳥瞰座標)に変換する。その際、車両制御部34は、各画像の取得時における、車両10の位置及び姿勢と、追跡中の周辺車両までの推定距離と、車両10から周辺車両へ向かう方向とにより、各画像の取得時における、周辺車両の位置を推定できる。なお、車両制御部34は、カメラ2により生成された画像と地図情報とを照合することで、車両10の位置及び姿勢を推定できる。例えば、車両制御部34は、車両10の位置及び姿勢を仮定して、画像から検出された道路上または道路周囲の地物を地図情報上に投影するか、あるいは、地図情報に表された車両10の周囲の道路上または道路周囲の地物を画像上に投影する。そして車両制御部34は、画像から検出された地物と高精度地図上に表された地物とが最も一致するときの車両10の位置及び姿勢を、車両10の実際の位置及び姿勢として推定する。また、車両制御部34は、画像上での追跡中の周辺車両を含む領域の位置及びカメラ2の光軸方向に基づいて、車両10からその周辺車両へ向かう方向を特定することができる。さらに、車両制御部34は、追跡中の周辺車両のそれぞれについて、その周辺車両が表された領域のサイズと、その周辺車両と車両10間の距離が所定距離であると仮定した場合の基準サイズとの比に基づいて車両10からその周辺車両までの距離を推定する。あるいは、車両制御システム1がLiDARあるいはレーダといった測距センサ(図示せず)を有している場合、その測距センサにより、追跡中のそれぞれの周辺車両までの距離が測定されてもよい。この場合、例えば、画像上で着目する周辺車両が表された領域の重心に対応する、カメラ2からの方位に相当する測距センサからの方位における距離が、車両10からその着目する周辺車両までの距離として測定される。
【0041】
車両制御部34は、追跡中の周辺車両についての一連の鳥瞰座標に対してKalman FilterまたはParticle filterなどを用いた予測処理を実行することで、その周辺車両の所定時間先までの予測軌跡を推定する。
【0042】
車両制御部34は、追跡中の各周辺車両の予測軌跡と、車両10の位置、速度及び姿勢に基づいて、何れの周辺車両についても所定時間先までのその周辺車両と車両10間の距離の予測値が所定距離以上となるように、車両10の走行予定経路を生成する。
【0043】
車両制御部34は、車両10が通知された走行予定経路に沿って走行するように車両10の各部を制御する。例えば、車両制御部34は、走行予定経路、及び、車速センサ(図示せず)により測定された車両10の現在の車速に従って、車両10の加速度を求め、その加速度となるようにアクセル開度またはブレーキ量を設定する。そして車両制御部34は、設定されたアクセル開度に従って燃料噴射量を求め、その燃料噴射量に応じた制御信号を車両10のエンジンの燃料噴射装置へ出力する。あるいは、車両制御部34は、設定されたアクセル開度に従ってモータへ供給される電力量を求め、その電力量がモータへ供給されるようにモータの駆動回路を制御する。あるいはまた、車両制御部34は、設定されたブレーキ量に応じた制御信号を車両10のブレーキへ出力する。
【0044】
さらに、車両制御部34は、車両10が走行予定経路に沿って走行するために車両10の進路を変更する場合には、その走行予定経路に従って車両10の操舵角を求める。そして車両制御部34は、その操舵角に応じた制御信号を、車両10の操舵輪を制御するアクチュエータ(図示せず)へ出力する。
【0045】
図5は、プロセッサ23により実行される、追跡処理を含む車両制御処理の動作フローチャートである。プロセッサ23は、所定の周期ごとに、図5に示される動作フローチャートに従って車両制御処理を実行する。なお、以下に示される動作フローチャートにおいて、ステップS101~S108の処理が追跡処理に対応する。
【0046】
プロセッサ23の候補領域検出部31は、カメラ2から得られた最新の画像を識別器に入力して、画像上の複数の領域のそれぞれについて確信度を算出する(ステップS101)。候補領域検出部31は、各領域についての確信度をその領域に適用される検出閾値と比較する。上記のように、候補領域検出部31は、低閾値領域に含まれ、かつ低閾値領域に対して適用される種別と同じ種別の周辺車両が表された領域に対して第2の値を持つ検出閾値を適用し、それ以外の領域に対しては第1の値を持つ検出閾値を適用する。そして候補領域検出部31は、確信度が検出閾値以上となる領域を候補領域として検出する(ステップS102)。さらに、候補領域検出部31は、候補領域として検出されなかった複数の領域のうち、低閾値領域に含まれる領域についての確信度が第3の値を持つ検出閾値以上となる場合、その領域を追加候補領域として検出する(ステップS103)。
【0047】
プロセッサ23の追跡部32は、各候補領域を、追跡中の何れかの周辺車両と対応付けられるか否か判定する。そして追跡部32は、追跡中の何れかの周辺車両と対応付けられる候補領域を、その周辺車両が表されている物体領域として、その周辺車両と関連付けて検出リストに登録する。さらに、追跡部32は、その周辺車両についての追跡回数を1増加させる(ステップS104)。さらに、追跡部32は、追加候補領域について、追跡回数が所定回数を超える周辺車両と対応付けられるか否か判定する。そして追跡部32は、追跡回数が所定回数を超える周辺車両と対応付けられる追加候補領域を、その周辺車両が表されている物体領域として、その周辺車両と関連付けて検出リストに登録する。さらに、追跡部32は、その周辺車両についての追跡回数を1増加させる(ステップS105)。
【0048】
プロセッサ23の閾値制御部33は、追跡中の各周辺車両のうち、追跡回数が所定回数以下である追跡車両について、次画像において適用される検出閾値を第1の値に設定する(ステップS106)。また、閾値制御部33は、追跡回数が所定回数よりも多い追跡車両について、次画像において適用される検出閾値を第1の値よりも低い第2の値に設定する(ステップS107)。さらに、閾値制御部33は、第2の値となる検出閾値が適用される低閾値領域を設定する(ステップS108)。
【0049】
プロセッサ23の車両制御部34は、追跡中の各周辺車両と車両10とが衝突しないように車両10を自動運転制御する(ステップS109)。そしてプロセッサ23は、車両制御処理を終了する。
【0050】
以上に説明してきたように、この追跡装置は、時系列に得られる一連の画像から検出され、かつ、追跡中の物体について、追跡できた画像が増える度に追跡回数を1ずつ増加させる。そして追跡装置は、追跡回数に応じて、識別器が出力する、検出対象となる物体が表されている確からしさを表す確信度と比較される検出閾値を制御する。特に、この追跡装置は、追跡回数が所定回数よりも多い物体について適用される検出閾値の値を、追跡回数が所定回数以下であるときの値よりも低く設定する。こうすることで、この追跡装置は、物体の追跡中において何らかの理由でその物体を画像から検出し難くなったとしても、その物体の追跡を継続でき易くする。
【0051】
変形例によれば、閾値制御部33は、追跡中の周辺車両について推定した低閾値領域の位置が次画像外となる場合、低閾値領域を設定しなくてもよい。この場合には、次画像の生成時において、その周辺車両がカメラ2の撮影範囲から外れる位置へ移動している可能性が高いためである。
【0052】
なお、追跡対象となる物体は周辺車両に限られない。追跡対象となる物体は、画像から検出可能な他の移動物体、例えば、人あるいは人以外の動物であってもよい。
【0053】
上記の実施形態または変形例による追跡装置は、車両制御システム以外に適用されてもよい。例えば、追跡装置は、屋外または屋内の所定領域を撮影するように設置された監視カメラにより得られた時系列の一連の画像に表された物体を追跡するために用いられてもよい。この場合、監視カメラが撮像部の一例となる。
【0054】
上記の実施形態または変形例による、追跡装置のプロセッサ23の各部の機能を実現するコンピュータプログラムは、半導体メモリ、磁気記録媒体または光記録媒体といった、コンピュータ読取可能な可搬性の記録媒体に記録された形で提供されてもよい。
【0055】
以上のように、当業者は、本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
【符号の説明】
【0056】
1 車両制御システム
2 カメラ
3 電子制御装置(追跡装置)
21 通信インターフェース
22 メモリ
23 プロセッサ
31 候補領域検出部
32 追跡部
33 閾値制御部
34 車両制御部
図1
図2
図3
図4
図5