JP2021135957A - 物体検知装置、物体検知方法、及び、プログラム - Google Patents
物体検知装置、物体検知方法、及び、プログラム Download PDFInfo
- Publication number
- JP2021135957A JP2021135957A JP2020034143A JP2020034143A JP2021135957A JP 2021135957 A JP2021135957 A JP 2021135957A JP 2020034143 A JP2020034143 A JP 2020034143A JP 2020034143 A JP2020034143 A JP 2020034143A JP 2021135957 A JP2021135957 A JP 2021135957A
- Authority
- JP
- Japan
- Prior art keywords
- detection
- unit
- predicted
- frame
- detection position
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
Abstract
【課題】物体の検知精度を向上する物体検知装置、方法及びプログラムを提供する。
【解決手段】物体検知装置1aは、現フレームの画像を、所定の物体を検知する第1検知部に入力することで得られる物体の第1検知位置及び移動体を検知する第2検知部に入力することで得られる物体の第2検知位置の少なくとも一方に基づく第3検知位置を取得する対応付け部132と、過去のフレームにおける物体の位置に基づいて、現フレームにおける物体の位置を予測する予測部131とを備える。対応付け部132は、予測位置と第3検知位置との距離が第1閾値以下である場合に、予測位置と第3検知位置とを対応付けし、かつ、予測位置と第3検知位置とのカメラに対する角度が第2閾値以下である場合に、予測位置と第3検知位置とを対応付けし、さらに、距離による対応付けの結果と、角度による対応付けの結果とに基づいて、第3検知位置を補正する補正部133を備える。
【選択図】図7
【解決手段】物体検知装置1aは、現フレームの画像を、所定の物体を検知する第1検知部に入力することで得られる物体の第1検知位置及び移動体を検知する第2検知部に入力することで得られる物体の第2検知位置の少なくとも一方に基づく第3検知位置を取得する対応付け部132と、過去のフレームにおける物体の位置に基づいて、現フレームにおける物体の位置を予測する予測部131とを備える。対応付け部132は、予測位置と第3検知位置との距離が第1閾値以下である場合に、予測位置と第3検知位置とを対応付けし、かつ、予測位置と第3検知位置とのカメラに対する角度が第2閾値以下である場合に、予測位置と第3検知位置とを対応付けし、さらに、距離による対応付けの結果と、角度による対応付けの結果とに基づいて、第3検知位置を補正する補正部133を備える。
【選択図】図7
Description
本開示は、物体検知装置、物体検知方法、及び、プログラムに関する。
車載カメラ等からの画像データを用いて、車両周囲の物体を検知する物体検知装置が知られている。車両は、物体検知装置が物体を検知した結果に基づいて走行が制御されるので、物体検知装置の検知精度は高いことが望まれる。
そこで、特許文献1には、画像データに基づく車外情報とレーダを用いた車外情報とを効率的に用いて、精度の高い車外監視を行うことのできる車外監視装置(物体検知装置)が開示されている。車外監視装置は、撮像手段からの画像データに基づいて立体物を検知した画像立体物と、レーダ手段からの信号に基づいて立体物を検知したミリ波立体物との距離が近いものを対応付けて、同一の立体物であると判定する。
しかしながら、特許文献1に記載の技術は、画像立体物及びミリ波立体物の少なくとも一方が正確に検知されていない場合、物体を正確に検知できない。
そこで、本開示は、物体の検知精度が向上された物体検知装置、物体検知方法、及び、プログラムに関する。
本開示の一態様に係る物体検知装置は、撮像装置が撮像した画像に基づいて物体を検知する物体検知装置であって、現フレームの画像を、所定の物体を検知する第1検知部に入力することで得られる前記物体の位置を示す第1検知位置、及び、前記現フレームの画像を、移動体を検知する第2検知部に入力することで得られる前記物体の位置を示す第2検知位置の少なくとも一方に基づく前記物体の第3検知位置を取得する取得部と、過去のフレームにおける前記物体の位置に基づいて、前記現フレームにおける前記物体の位置を予測する予測部と、前記予測部が予測した予測位置と前記第3検知位置との距離が第1閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けし、かつ、前記予測位置と前記第3検知位置との前記撮像装置に対する角度が第2閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けする対応付け部と、前記距離による対応付けの結果を示す第1対応付け結果と、前記角度による対応付づけの結果を示す第2対応付け結果とに基づいて、前記第3検知位置を補正する補正部とを備える。
本開示の一態様に係る物体検知方法は、撮像装置が撮像した画像に基づいて物体を検知する物体検知装置の物体検知方法であって、現フレームの画像を、所定の物体を検知する第1検知部に入力することで得られる前記物体の位置を示す第1検知位置、及び、前記現フレームの画像を、移動体を検知する第2検知部に入力することで得られる前記物体の位置を示す第2検知位置の少なくとも一方に基づく前記物体の第3検知位置を取得し、過去のフレームにおける前記物体の位置に基づいて、前記現フレームにおける前記物体の位置を予測し、前記予測部が予測した予測位置と前記第3検知位置との距離が第1閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けし、かつ、前記予測位置と前記第3検知位置との前記撮像装置に対する角度が第2閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けし、前記距離による対応付けの結果を示す第1対応付け結果と、前記角度による対応付づけの結果を示す第2対応付け結果とに基づいて、前記第3検知位置を補正する。
本開示の一態様に係るプログラムは、上記の物体検知方法をコンピュータに実行させるためのプログラムである。
本開示の一態様に係る物体検知装置等によれば、物体の検知精度を向上することができる。
(本開示に至った経緯)
近年、車載カメラ等からの画像データを用いて、車両周囲の物体を検知する物体検知装置について、様々な検討が行われている。図1は、比較例に係る物体検知装置1の機能構成を示すブロック図である。なお、以下において、物体検知装置1は、車両に搭載される例について説明するが、これに限定されない。
近年、車載カメラ等からの画像データを用いて、車両周囲の物体を検知する物体検知装置について、様々な検討が行われている。図1は、比較例に係る物体検知装置1の機能構成を示すブロック図である。なお、以下において、物体検知装置1は、車両に搭載される例について説明するが、これに限定されない。
図1に示すように、物体検知装置1は、カメラ10と、第1検知部20と、第2検知部30と、処理部40とを備える。物体検知装置1は、例えば、車両に搭載され、当該車両の周囲(例えば、進行方向)の物体を検知する装置である。物体検知装置1は、例えば、車両の走行の障害となる障害物を検知する障害物検知装置であるとも言える。また、物体検知装置1は、カメラ10が対象物を撮像した画像データに基づいて物体を検知する。
カメラ10は、車両の周囲の画像データを撮像する。カメラ10は、例えば、可視光領域の波長の光を撮像する一般的な可視光カメラである。本実施の形態では、カメラ10は、車両に搭載される車載カメラにより実現される。また、カメラ10は、例えば、広角で撮像するものであってもよい。カメラ10は、例えば、魚眼レンズを有する魚眼カメラであってもよい。カメラ10は、撮像装置の一例である。
カメラ10のフレームレートは、車両の走行を安全に制御可能であれば特に限定されないが、例えば、10fps(frames per second)である。カメラ10は、撮像した画像データを第1検知部20及び第2検知部30に出力する。
第1検知部20及び第2検知部30はそれぞれ、カメラ10からの画像データに基づいて、検知対象の物体(対象物)を検知する。第1検知部20及び第2検知部30は、同一の画像データに基づいて、対象物を検知する。以下において第1検知部20における対象物は、歩行者などの人である場合について説明するが、対象物は人に限定されない。
第1検知部20は、画像データを入力とし、当該画像データに写る人を検知した検知枠(第1検知枠)及び当該検知枠の信頼度を第1検知位置として出力するように学習された学習済モデルを用いて、人を検知する。学習済みモデルは、例えば、教師ありデータによる機械学習により生成されることが知られている。学習済みモデルは、人が写った画像データを訓練データとし、当該画像データに写る人の検知枠(検知枠の座標)を正解データとして機械学習を用いて生成される。また、学習済モデルは、例えば、ニューラルネットワークを用いて、深層学習(ディープラーニング)により生成される。つまり、第1検知部20は、ディープラーニング人検知部であるとも言える。第1検知部20は、検知した検知枠のリストである第1検知枠リストを処理部40に出力する。第1検知枠リストには、第1検知部20が検知した検知枠(第1検知枠)の数、それぞれの検知枠の座標情報、及び、信頼度が含まれる。以下では、第1検知枠リストには、第1検知枠の数が1以上であること、並びに、1以上の第1検知枠それぞれの座標情報、及び、信頼度が含まれる場合について説明する。信頼度は、例えば、0〜1までの値をとり得る。
なお、第1の検知枠リスト及び第2の検知枠リストの少なくとも一方において、検知枠の数がゼロであることも起こり得る。この場合、検知枠リストには、検知枠の数がゼロであることを示す情報が含まれる。
図2は、比較例に係る物体検知装置1の第1検知部20が検知した検知枠の一例を示す図である。図2では、図2の(a)〜図2の(e)の5種類の検知枠を一例として示している。
図2の(a)は、一般的な姿勢をしている人に対して、第1検知部20から出力される検知枠を示している。この場合、第1検知部20からは、人に外接する矩形枠が出力される。図2の(b)は、手を伸ばしている人に対して、第1検知部20から出力される検知枠を示している。この場合、伸ばした手も含む矩形枠が出力される。図2の(c)は、大きな荷物を持って動いている人に対して、第1検知部20から出力される検知枠を示している。この場合、動き、姿勢などによらず、人の領域のみに外接する矩形枠が出力される。図2の(d)は、下半身が静止物体で隠蔽されている人に対して、第1検知部20から出力される検知枠を示している。学習済みモデルが、人の上半身の画像データを訓練データとし、当該人の上半身及び下半身を含む検知枠を正解データとして学習されることにより、図2の(d)のような場合でも、第1検知部20から人の下半身を含む矩形枠が出力される。図2の(e)は、上半身が静止物体で隠蔽されている人に対して、第1検知部20から出力される検知枠を示している。この場合、足元位置は取得可能であるので、見えているところの矩形枠が出力される。図2の(e)の例では、下半身を囲む矩形枠が出力される。なお、足元位置は、物体と地面との接触位置の一例であり、人と地面との接触位置を示す。
上記のように、第1検知部20によれば、人を検知し、検知した人に外接する検知枠が出力される。このような第1検知部20は、学習していないものなどを検知することが困難である。図3は、比較例に係る第1検知部20における誤検知の一例を示す図である。なお、誤検知には、未検知が含まれる。
図3の(a)に示すように、第1検知部20は、未学習の姿勢をする人を検知することが困難である。また、図3の(b)に示すように、第1検知部20では、人の輪郭が見えない場合、検知できない又は信頼度の低い結果が得られる。図3の(b)では、信頼度の低い検知枠が得られた場合を示しており、当該検知枠を破線枠で示している。また、第1検知部20は、人の立ち姿勢から座り姿勢になる途中の姿勢など、2つの姿勢の一方から他方への移行時の中間姿勢も検知が困難である。
このように、第1検知部20は、人であっても、検知できない場合がある。そのため、比較例に係る物体検知装置1のように、検知精度を向上させるために、第2検知部30が設けられ、2つの検知部で対象物を検知することが行われている。
なお、第1検知部20は、対象物を検知できた場合、第2検知部30より当該対象物の路面と接している位置を正確に検知可能である。対象物が人である場合、第1検知部20は、第2検知部30より足元位置を正確に検知可能である。足元位置を正確に検知することで、対象物とカメラ10との距離を正確に求めることが可能となる。
図1を再び参照して、第2検知部30は、カメラ10からの画像データに基づいて、移動物を検知した検知枠(第2検知枠)及び当該検知枠の信頼度を第2検知位置として出力する。つまり、第2検知部30は、第1検知部20とは異なる手法により、対象物を検知する。第2検知部30は、例えば、MOD(Moving Object Detection:移動物検知)により、対象物を検知する。例えば、第2検知部30は、画像データ上に一様な動きベクトルが存在する領域を検知することで移動物を検知する。なお、第2検知部30における対象物は、移動体である。また、信頼度は、例えば、0〜1までの値をとり得る。
具体的には、第2検知部30は、画像データ上の特徴点を抽出し、オプティカルフローで当該特徴点の動きベクトルを検出する。そして、第2検知部30は、検出した特徴点の動きベクトルと、自車移動情報(オドメトリ)とを用いて、画像データ中の動き画素と静止画素とを分離する。そして、第2検知部30は、動き画素をクラスタリングし、移動物全体に外接する検知枠を出力する。第2検知部30は、検知した検知枠のリストである第2検知枠リストを処理部40に出力する。第2検知枠リストには、第2検知部30が検知した検知枠(第2検知枠)の数、それぞれの検知枠の座標情報、及び、信頼度が含まれる。以下では、第2検知枠リストには、第2検知枠の数が1以上であること、並びに、1以上の第2検知枠それぞれの座標情報、及び、信頼度が含まれる場合について説明する。
図4は、比較例に係る物体検知装置1の第2検知部30が検知した検知枠の一例を示す図である。図4は、図4の(a)〜図4の(c)の3種類の検知枠を一例として示している。
図4の(a)は、大きな荷物を持って動いている人に対して、第2検知部30から出力される検知枠を示している。この場合、大きな荷物及び人の全体を外接する検知枠が出力される。図4の(b)は、歩いている人に対して、第2検知部30から出力される検知枠を示している。図4の(c)は、走行する物体である車両に対して、第2検知部30から出力される検知枠を示している。
上記のように、第2検知部30によれば、人であるか否かにかかわらず、移動する物体を検知し、検知した物体に外接する検知枠が出力される。このような第2検知部30では、特徴点のない領域又は複雑な動きをする移動体の検知が困難である。複雑な動きとは、例えば、歩いている人(歩行者)の左右の足の動きなどである。図5は、比較例に係る第2検知部30における誤検知の一例を示す図である。図5は、図5の(a)〜図5の(e)の5種類を一例として示している。図5の(a)〜図5の(e)において、破線枠は、移動体として本来検知されるべき検知枠であり、実線枠は、第2検知部30から実際に出力される検知枠を示す。なお、誤検知は、検知枠を適切に設定できないことを含む。
図5の(a)は、画像データ内において荷物及び人が比較的大きく写っている場合において、荷物及び人のうち特徴点のでる領域のみを囲む検知枠が出力された例を示している。例えば、荷物と上半身を囲む検知枠が出力される。図5の(b)は、非剛体である歩行者の足などの動きの複雑な部位が囲われない検知枠が出力された例を示している。図5の(c)は、第2検知部30のRoad Detection機能(路面を検知する機能)の影響により、路面部分まで伸びた検知枠が出力された例を示している。
図5の(d)は、画像データ内において車両が比較的大きく写っている場合において、車両に対して2つの検知枠が出力された例を示している。第2検知部30は、特徴点が抽出できる領域を検知枠として囲むことが可能である。しかし、前後のタイヤの間の車体において特徴点が少ないときには、図5の(d)のように、車両に対して2つの検知枠が検知される場合がある。
図5の(e)は、下半身が静止物体で隠蔽されている人に対して、第2検知部30から出力される検知枠を示している。この場合、見えている部分に外接する検知枠が出力される。図5の(f)は、画像データ内において比較的大きく写っている歩行者に対して、第2検知部30から出力される検知枠を示している。歩行者の左右の足は、互いに移動する方向がタイミングごとに異なっているので、左右の足が別々の移動体として検知される場合がある。
このように、第2検知部30では、移動体であっても、正確に検知できない場合がある。また、図5の(a)〜(c)、(e)、及び(f)のように、移動している人を検知できても、足元位置を正確に検知できない場合がある。
なお、図5の(a)、(b)及び(e)の場合、本来より遠くに人がいると検知される。また、図5の(c)の場合、本来より近くに人がいると検知される。
図1を再び参照して、処理部40は、第1検知部20からの第1の検知枠リストと第2検知部30からの第2の検知枠リストとに基づいて、対象物を検知した検知結果を出力する。処理部40は、例えば、第1の検知枠リストに含まれる1つの第1検知枠と、第2の検知枠リストに含まれる第2検知枠であって当該第1検知枠と距離が最も近い第2検知枠とを、同一の対象物を検知した検知枠であるとして統合する。これにより、1つの対象物に対して1つの検知枠が設定される。
ここで、物体検知装置1から出力される検知結果について、図6を参照しながら説明する。図6は、比較例に係る物体検知装置1から出力される検知結果の一例を示す図(鳥瞰図)である。なお、図6では、カメラ10は、車両50の前方に配置されているとする。また、鳥瞰図において、車両50の前後方向と平行であり、かつ、カメラ10を通る直線をx軸とし、車両50の左右方向と平行であり、かつ、カメラ10を通る直線をy軸とする。x軸とy軸とは、互いに直交する。なお、以降の車両50の図において、カメラ10の図示は省略している。
図6に示すように、検知結果は、カメラ10に対する物体(例えば、人)の位置を含む。カメラ10が車両50に搭載されている場合、検知結果は、当該車両50に対する物体の位置を含む。検知結果は、さらに物体の速度を含んでいてもよい。車両50は、カメラ10と物体との距離に応じて、走行が制御される。そのため、カメラ10と物体との距離は、正確に算出されることが要求される。これは、人の足元位置を正確に検知することで実現できるが、第2検知部30では、図5に示すように、人の足元位置を正確に検知できない場合がある。
また、第1検知部20及び第2検知部30は、同一の対象物を検知する場合であっても、例えば、図2の(c)及び図5の(a)に示すように、検知枠が異なる場合がある。例えば、連続する複数のフレームにおいて、N−1フレーム目では、第1検知部20及び第2検知部30のうちの一方のみが図2の(c)及び図5の(a)に示す対象物を検知し、Nフレーム目では、第1検知部20及び第2検知部30のうちの他方のみが当該対象物を検知した場合、フレームごとで当該対象物の位置が異なって算出されることがある。
上記のように、2つの互いに異なる検知部を有する物体検知装置1においても、正確に物体を検知できない場合がある。そこで、本願発明者らは、物体の検知精度が向上された物体検知装置について、鋭意検討を行い、以下に説明する物体検知装置、物体検知方法、及び、プログラムを創案した。
本開示の一態様に係る物体検知装置は、撮像装置が撮像した画像に基づいて物体を検知する物体検知装置であって、現フレームの画像を、所定の物体を検知する第1検知部に入力することで得られる前記物体の位置を示す第1検知位置、及び、前記現フレームの画像を、移動体を検知する第2検知部に入力することで得られる前記物体の位置を示す第2検知位置の少なくとも一方に基づく前記物体の第3検知位置を取得する取得部と、過去のフレームにおける前記物体の位置に基づいて、前記現フレームにおける前記物体の位置を予測する予測部と、前記予測部が予測した予測位置と前記第3検知位置との距離が第1閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けし、かつ、前記予測位置と前記第3検知位置との前記撮像装置に対する角度が第2閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けする対応付け部と、前記距離による対応付けの結果を示す第1対応付け結果と、前記角度による対応付づけの結果を示す第2対応付け結果とに基づいて、前記第3検知位置を補正する補正部とを備える。
一般的に第2検知部は、物体の位置(例えば、物体が人である場合、足元位置)の検知精度が第1検知部に比べて低いので、距離による対応付けのみでは、精度よく物体の検知位置及び移動速度を推定できない場合がある。そのため、本開示の一態様に係る物体検知装置は、さらに角度による対応付けを行う。これにより、物体検知装置は、距離及び角度のそれぞれによる対応付け結果に基づいて第3検知位置を補正することで、物体の検知位置を算出することができる。よって、物体検知装置は、距離のみにより対応付けを行う場合に比べて、物体の検知精度を向上することができる。
また、例えば、前記第2閾値は、前記撮像装置と前記予測位置及び前記第3検知位置との距離が遠くなるほど、小さい角度に設定されてもよい。
これにより、撮像装置から第3検知位置及び予測位置の距離が遠い場合であっても、互いの距離が近い第3検知位置及び予測位置を対応付けることができる。つまり、角度による対応付けを精度よく行うことができる。よって、物体の検知精度をより向上することができる。
また、例えば、前記補正部は、前記第1対応付け結果において、前記予測位置に対応付けられた前記第3検知位置が複数存在する場合、複数の前記第3検知位置のそれぞれに基づいて、前記物体に対応する前記第3検知位置を補正してもよい。
距離で対応付けられている検知位置は、第1検知部が検知した結果に基づく検知位置である可能性が高く、位置精度(例えば、足元位置精度)が高い。よって、距離で対応付けられている検知位置に基づいて第3検知位置を補正することで、物体の検知精度をさらに向上することができる。
また、例えば、前記補正部は、複数の前記第3検知位置の平均値を当該物体の検知位置としてもよい。
これにより、複数の検知位置の平均値を物体の検知位置とすることができるので、物体の検知精度をさらに向上することができる。
また、例えば、前記補正部は、前記第1対応付け結果において、前記予測位置に対応付けられた検知位置が存在せず、かつ、前記第2対応付け結果において、前記予測位置に対応付けられた前記第3検知位置が複数存在する場合、複数の前記第3検知位置それぞれと前記予測位置との前記撮像装置に対する複数の角度に基づいて、前記物体に対応する前記第3検知位置の前記角度を補正してもよい。
角度で対応付けられている検知位置は、第2検知部が検知した結果に基づく検知位置である可能性が高く、角度の精度が高い。よって、角度で対応付けられている検知位置に基づいて第3検知位置の角度を補正することで、物体の検知精度をさらに向上することができる。
また、例えば、前記補正部は、前記複数の角度の平均値を、前記物体の検知位置を示す角度としてもよい。
これにより、複数の検知位置の角度の平均値を物体の検知位置の角度とすることができるので、物体の検知精度をさらに向上することができる。例えば、第2検知部が1つ物体に対して2つの検知枠を検知した場合であっても、当該1つの物体の角度を精度よく算出することができる。
また、例えば、前記補正部は、複数の前記第3検知位置のうち前記撮像装置に最も近い前記第3検知位置と、前記予測位置とに基づいて、前記物体に対応する前記第3検知位置と前記撮像装置との距離を補正してもよい。
これにより、さらに予測位置も用いて距離を補正することにより、検知位置の精度が低い場合であっても、カメラ10からの距離(動径)を精度よく算出することができる。また、カメラ10に最も近い検知位置を用いることで、物体検知装置が車両に搭載される場合、当該車両をより安全に走行させることができる。
また、例えば、前記補正部は、前記物体の移動速度が速いほど、前記最も近い検知位置及び前記予測位置のうち前記最も近い検知位置の重みが大きくなるように、前記最も近い検知位置及び前記予測位置を重みづけ平均することで、前記第3検知位置と前記撮像装置との前記距離を算出してもよい。
第2検知部は、一般的に物体の速度が速いほど(例えば、動きが大きいほど)、物体を精度よく検知することができる。よって、物体の速度が速いほど第3検知位置の重みを大きくすることで、距離をより精度よく算出することができる。
また、例えば、前記補正部は、前記予測位置に対応付けられた前記第3検知位置が複数ある場合、複数の前記第3検知位置のうち前記予測位置との距離が最も小さい前記第3検知位置を、前記予測位置と対応付けしてもよい。
これにより、予測位置に最も近い第3検知位置を当該予測位置と対応付けることができる。つまり、距離が近いもの同士を対応付けることができるので、物体の検知精度をさらに向上することができる。
また、例えば、前記取得部が過去のフレームにおいて前記第3検知位置を取得しなくなった場合、当該過去のフレームから現フレームまでのフレーム数が所定数以下であるときに、前記現フレームにおける前記第3検知位置を予測すると判定する判定部を備え、前記所定数は、前記物体の種類に応じて設定されてもよい。
これにより、対応付け部により誤った対応付けが行われることを抑制することができるので、物体の検知精度をさらに向上することができる。また、物体に応じた所定数のフレームの間、当該物体が検知されなくても、当該物体の位置を補間することができる。
また、本開示の一態様に係る物体検知方法は、撮像装置が撮像した画像に基づいて物体を検知する物体検知装置の物体検知方法であって、現フレームの画像を、所定の物体を検知する第1検知部に入力することで得られる前記物体の位置を示す第1検知位置、及び、前記現フレームの画像を、移動体を検知する第2検知部に入力することで得られる前記物体の位置を示す第2検知位置の少なくとも一方に基づく前記物体の第3検知位置を取得し、過去のフレームにおける前記物体の位置に基づいて、前記現フレームにおける前記物体の位置を予測し、予測された予測位置と前記第3検知位置との距離が第1閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けし、かつ、前記予測位置と前記第3検知位置との前記撮像装置に対する角度が第2閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けし、前記距離による対応付けの結果を示す第1対応付け結果と、前記角度による対応付づけの結果を示す第2対応付け結果とに基づいて、前記第3検知位置を補正する。また、本開示の一態様に係るプログラムは、上記の物体検知方法をコンピュータに実行させるためのプログラムである。
これにより、上記の物体検知装置と同様の効果を奏する。
なお、これらの全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータで読み取り可能なCD−ROM等の非一時的記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。プログラムは、記録媒体に予め記憶されていてもよいし、インターネット等を含む広域通信網を介して記録媒体に供給されてもよい。
以下、実施の形態について、図面を参照しながら具体的に説明する。
なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、構成要素、構成要素の配置位置および接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。例えば、数値は、厳格な意味のみを表す表現ではなく、実質的に同等な範囲、例えば数%程度の差異をも含むことを意味する表現である。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。また、各図において、同じ構成部材については同じ符号を付している。
(実施の形態)
以下、本実施の形態に係る物体検知装置ついて、図7〜図19を参照しながら説明する。
以下、本実施の形態に係る物体検知装置ついて、図7〜図19を参照しながら説明する。
[1.物体検知装置の構成]
まず、本実施の形態に係る物体検知装置の構成について、図7を参照しながら説明する。図7は、本実施の形態に係る物体検知装置1aの処理部100の機能構成を示すブロック図である。なお、物体検知装置1aは、比較例に係る物体検知装置1の処理部40に替えて処理部100を備えており、他の構成は物体検知装置1と同じである。そのため、図7では、物体検知装置1aの各構成要素のうち処理部100のみを図示している。
まず、本実施の形態に係る物体検知装置の構成について、図7を参照しながら説明する。図7は、本実施の形態に係る物体検知装置1aの処理部100の機能構成を示すブロック図である。なお、物体検知装置1aは、比較例に係る物体検知装置1の処理部40に替えて処理部100を備えており、他の構成は物体検知装置1と同じである。そのため、図7では、物体検知装置1aの各構成要素のうち処理部100のみを図示している。
図7に示すように、物体検知装置1aは、カメラ10と、第1検知部20と、第2検知部30と、処理部100とを備える。物体検知装置1aは、カメラ10が撮像した画像データに基づいて、物体を検知する。なお、以下では、物体を物体検知装置1aの検知対象である対象物とも記載する。
処理部100は、第1検知部20からの第1の検知枠リストと、第2検知部30からの第2の検知枠リストとに基づいて、物体の検知結果を出力する。検知結果は、例えば、検知した物体とカメラ10との距離、及び、当該物体の速度を含む。処理部100は、枠統合部110と、変換部120と、トラッキング部130とを有する。なお、第1の検知枠リストと第2の検知枠リストとは、同一の画像データにおける第1検知部20及び第2検知部30の出力であるとする。
枠統合部110は、同一フレームにおける第1の検知枠リストに含まれる第1検知枠と、第2の検知枠リストに含まれる第2検知枠とを、所定の条件を満たす場合に、同じ対象物の検知枠であるとして統合する。所定の条件は、第1の検知枠及び第2の検知枠の2次元画像データ(例えば、円筒画像データ)上の座標が近い、あるいは、2つの検知枠の重なり率(IoU)が所定値より大きい等である。枠統合部110は、例えば、第1検知部20からの第1検知枠と、第2検知部30からの第2の検知枠との距離が所定値以下であると、第1検知枠及び第2検知枠のうち第1検知枠を当該対象物の検知枠であるとして出力する。枠統合部110は、物体の位置をより正確に求める観点から、足元位置がより精度よく取得できる第1検知枠を優先して出力する。なお、統合後の検知枠(例えば、第1検知枠)の信頼度は、第1検知枠の信頼度と第2検知枠の信頼度とを加算することにより算出される。これにより、枠統合部110は、同じ対象物に対する2つの検知枠を統合し、かつ統合した検知枠に応じた信頼度を設定することができる。
枠統合部110は、1つのフレームにおいて、上記の統合処理が終了すると、統合された検知枠それぞれの信頼度に基づいて、変換部120に出力する検知枠を選定してもよい。枠統合部110は、例えば、信頼度が所定の信頼度以下である検知枠を、変換部120に出力する検知枠リストから棄却してもよい。これにより、枠統合部110は、信頼度の高い検知枠を含む検知枠リストを変換部120に出力することができる。例えば、全ての検知枠を変換部120に出力する場合に比べて、物体検知装置1aにおける処理を効率化することができる。
なお、枠統合部110から出力される検知枠リストにおいて、検知枠の数がゼロであることも起こり得る。この場合、検知枠リストには、検知枠の数がゼロであることを示す情報が含まれる。
なお、枠統合部110の2つの検知枠の統合方法は、これに限定されない。枠統合部110は、例えば、2つの検知枠を外接する1つの矩形状の矩形枠を生成し、生成した1つの矩形枠を統合した検知枠として生成してもよいし、2つの検知枠に関する情報を用いるその他の方法を用いて統合した検知枠を生成してもよい。
変換部120は、枠統合部110から検知枠リストを取得すると、検知枠リストに含まれる検知枠それぞれの座標を変換する。具体的には、変換部120は、2次元画像データ上の座標から、鳥瞰したときの座標に変換する。変換部120は、カメラ10の視点から鳥瞰基準の視点に、視点変換しているとも言える。変換部120は、鳥瞰したときの座標として、鳥瞰したときの2次元座標と、鳥瞰したときの極座標とを算出する。
変換部120は、鳥瞰したときの足元位置と検知枠の幅及び高さとを算出する。また、変換部120は、鳥瞰したときの足元位置と検知枠の幅及び高さとに基づいて、さらにその極座標を算出する。このように、変換部120は、カメラ10視点の2次元座標を、鳥瞰視点の2次元座標及び極座標に座標変換する。カメラ10視点の2次元座標から鳥瞰視点の2次元座標への変換、及び、2次元座標から極座標への変換は、既知のいかなる技術が用いられてもよい。
変換部120は、鳥瞰したときの検知枠の幅及び高さの少なくとも一方が、第1の長さより長い、又は、第1の長さより小さい第2の長さより短い検知枠を、トラッキング部130に出力する検知枠リストから棄却してもよい。第1の長さ及び第2の長さは、例えば、検知対象である物体の大きさに基づいて設定される。例えば、検知対象が人である場合、人にしては大きすぎる又は小さすぎる検知枠を棄却できるように、第1の長さ及び第2の長さが設定される。これにより、変換部120は、信頼度の高い検知枠を含む検知枠リストをトラッキング部130に出力することができる。例えば、全ての検知枠をトラッキング部130に出力する場合に比べて、物体検知装置1aにおける処理を効率化することができる。
変換部120は、検知枠の数と、それぞれの検知枠の鳥瞰視点における2次元座標及び極座標を含む座標変換後の検知枠とを含む検知枠リストを、トラッキング部130に出力する。また、検知枠リストには、検知枠ごとの足元位置(物体が人ではない場合は、接触位置)も含まれる。なお、ここで出力される検知枠リストには、第1検知部20及び第2検知部30の少なくとも1つにおいて誤検知がなされていた場合、当該誤検知の結果を含んでいる。
トラッキング部130は、過去の複数のフレームの検知結果を用いて、現在のフレームの検知誤差を低減し、より正確な検知結果を推定する。トラッキング部130は、過去の複数のフレームの検知結果に基づいて、変換部120から取得した現フレームの検知枠リストの座標を補正する。つまり、現フレームの検知位置を補正する。トラッキング部130は、過去の画像データにおいて検知された人の位置を追跡した結果に基づいて、変換部120から取得した現フレームの検知枠リストの座標を補正するとも言える。トラッキング部130は、予測部131と、対応付け部132と、補正部133と、判定部134と、濾波部135と、記憶部136とを有する。
予測部131は、人(例えば、歩行者)の過去のフレームにおける検知位置(例えば、当該人の足元位置)に基づいて、現フレームにおける当該人の位置(例えば、当該人の足元位置)を予測する。予測部131は、例えば、移動物はまっすぐ等速で移動すると仮定して、現フレームにおける歩行者の位置を予測する。
予測部131は、記憶部136に記憶されている過去のフレームの検知位置と、車両オドメトリとに基づいて、現フレームでの鳥瞰したときの2次元座標系での対象物の位置の予測値を算出する。車両オドメトリは、過去の検知位置に対して車両50の移動分を補正するための情報であり、例えば、経過時間及びカメラ移動量に基づいて決定される。経過時間は例えば、前回のフレームからの経過時間である。カメラ移動量は、例えば、カメラ10が搭載された車両50の移動量(移動距離)である。
対応付け部132は、変換部120からの検知枠リストに含まれる現フレームの対象物の検知位置と、予測部131からの対象物の予測結果(予測位置)との対応付けを行う。例えば、対応付け部132は、予測部131が予測した予測位置と、変換部120からの検知枠リストに基づく検知位置(第3検知位置)との距離が第1閾値以下である場合に、予測位置と当該検知位置とを対応付けし、かつ、予測位置と、変換部120からの検知枠リストに基づく検知位置(第3検知位置)とのカメラ10に対する角度が第2閾値以下である場合に、予測位置と当該検知位置とを対応付けする。対応付け部132は、例えば、当該距離が第1閾値以下である場合、又は、当該角度が第2閾値以下である場合に、予測位置と当該検知位置とを同一の対象物を示す位置である可能性があるとして対応付けする。
このように、対応付け部132は、現フレームの検知位置(例えば、足元位置)と、現フレームの予測位置(例えば、足元の予測位置)との、距離及び角度による対応付けを行う。比較例に係る物体検知装置1は、距離のみで対応付けを行ったが、本実施の形態に係る物体検知装置1aは、距離及び角度のそれぞれの対応付けを行う点に特徴を有する。詳細は後述するが、これにより、物体検知装置1aは、変換部120からの検知枠リストに第1検知部20及び第2検知部30の少なくとも1つの誤検知の結果を含んでいる場合であっても、正確な検知結果を出力することができる。
また、対応付け部132は、変換部120から検知枠リストを取得する取得部としても機能する。当該検知枠リストには、対象物を撮像した現フレームの画像データを、所定の物体を検知する第1検知部20に入力することで得られる対象物の位置を示す第1検知位置、及び、現フレームの画像データを、移動体を検知する第2検知部30に入力することで得られる対象物の位置を示す第2検知位置の少なくとも一方に基づく対象物の検知位置(第3検知位置)が含まれる。つまり、対応付け部132は、変換部120から第3検知位置を取得する。
補正部133は、対応付け部132の対応付け結果に基づいて、現フレームの検知位置を補正する。具体的には、補正部133は、距離による対応付けの結果と、角度による対応付づけの結果とに基づいて、変換部120から取得した検知位置である第3検知位置を補正する。これにより、検知結果の精度、つまり検知結果に含まれる検知位置の精度が向上する。補正処理の詳細は、後述する。
判定部134は、第3検知位置を検知していたが過去のあるフレームから第3検知位置を取得しなくなった場合、当該あるフレームから現フレームまでのフレーム数が所定数に基づいて、現フレームにおいて当該第3検知位置を予測するか否かを判定し、予測すると判定した場合に、当該予測を行う。具体的には、判定部134は、フレーム数が所定数以下である場合、現フレームにおける第3検知位置を予測すると判定する。これにより、例えば、第1検知部20及び第2検知部30のそれぞれが過去のあるフレームまで検知していた物体が、当該過去のあるフレーム以降検知できなくなった場合であっても、当該物体の位置を補間することができる。数フレームに渡って、物体がぬけた場合(検知できなかった場合)でも、当該物体の位置を補うことができる。この場合、物体検知装置1aからの検知結果には、補間された物体の検知位置を示す情報が含まれる。
なお、所定数は、対象物の種類に応じて設定される。対象物の種類は、例えば、歩行者、車、二輪車などである。判定部134は、例えば、移動向き及び移動速度が変化しにくい車及び二輪車は所定数を多く設定し、移動向き及び移動速度が変化しやすい人(歩行者)は所定数を少なく設定する。これは、物体がまっすぐに等速に移動することを前提として、第3検知位置の予測を行うためである。
また、判定部134は、フレーム数が所定数より多い場合、現フレームにおける第3検知位置を予測しないと判定し、ある対象物の検知が所定数のフレーム抜けたときは、対象物がいなくなったとして、物標情報から当該ある対象物を削除してもよい。
濾波部135は、判定部134から出力された対象物それぞれの現フレームの検知位置と、過去のフレームの検知位置とに基づいて、所定の推定を行う。本実施の形態では、濾波部135は、現フレームでの当該対象物の速度を推定する。
そして、物体検知装置1aから対象物の位置及び速度を含む検知結果が出力される。車両50の走行を制御する走行制御部は、物体検知装置1aから取得した検知結果に基づいて、車両50の走行を制御する。
記憶部136は、トラッキング部130の処理のための各種情報を記憶する記憶装置である。記憶部136は、例えば、自車両に対する対象物の位置及び速度(例えば、相対速度)等の情報を含む物標情報を記憶する。また、記憶部136は、外部のセンサから取得した、経過時間、カメラ移動量などを記憶する。
[2.物体検知装置の動作]
続いて、上記の物体検知装置1aの動作について、図8〜図19を参照しながら説明する。図8は、本実施の形態に係る物体検知装置1aの動作を示すフローチャートである。
続いて、上記の物体検知装置1aの動作について、図8〜図19を参照しながら説明する。図8は、本実施の形態に係る物体検知装置1aの動作を示すフローチャートである。
図8に示すように、処理部100は、第1検知部20及び第2検知部30のそれぞれから、同一フレームにおける第1の検知枠リスト及び第2の検知枠リストを取得する(S11)。以下では、第1の検知枠リスト及び第2の検知枠リストは、同一フレーム(同一画像データ)における検知枠リストであるものとして説明する。
次に、枠統合部110は、フレーム内の検知枠を統合する(S12)。枠統合部110は、第1の検知枠リストに含まれる1以上の第1検知枠のそれぞれと、第2の検知枠リストに含まれる1以上の第2検知枠のそれぞれとの距離、又は、重なり率(IoU)に基づいて、第1検知枠及び第2検知枠を統合する。枠統合部110は、例えば、距離が最も近い第1検知枠及び第2検知枠を統合してもよいし、重なり率が最も高い第1検知枠及び第2検知枠を統合してもよい。
なお、ここでの距離は、カメラ10からの画像データにおける2次元座標上の距離である。また、ここでの統合とは、第1検知枠及び第2検知枠の一方の検知枠をその物体の検知枠とし、かつ、当該検知枠の信頼度を第1検知枠の信頼度及び第2検知枠の信頼度から算出することであってもよいし、第1検知枠及び第2検知枠の座標に基づいて1つの検知枠を算出することであってもよい。また、第1検知枠及び第2検知枠の一方の検知枠をその物体の検知枠とする場合、第1検知枠をその物体の検知枠とすることが望ましい。学習済みモデルによる検知(例えば、ディープラーニングを用いた物体検知)は、物体検知の特性上、移動物検知(MOD)より、車両50における物体検知において重要な足元位置を正確に検知しやすいためである。
次に、枠統合部110は、統合した検知枠の座標に基づいて、対象物の足元位置(検知位置)を算出する(S13)。枠統合部110は、例えば、検知枠の下方側の座標に基づいて、カメラ10を基準とした座標系における足元位置を算出するが、これに限定されない。
枠統合部110は、1以上の統合した検知枠を含む検知枠リストを変換部120に出力する。なお、1以上の第1検知枠の少なくとも1つにおいて、統合する第2検知枠が存在しない場合がある。また、1以上の第2検知枠の少なくとも1つにおいて、統合する第1検知枠が存在しない場合がある。例えば、第1検知部20及び第2検知部30の一方が物体の検知に失敗した場合である。この場合、枠統合部110は、検知枠を統合することなく、第1検知部20又は第2検知部30からの検知枠をそのまま変換部120に出力する。
次に、変換部120は、検知枠リストの含まれる検知枠それぞれの座標情報を座標変換する(S14)。変換部120は、カメラ10視点の2次元座標を、カメラ10の俯角、レンズの特性などに基づいて、鳥瞰したときの座標に変換する。なお、変換部120は、ステップS14において、足元位置においても座標変換する。変換部120は、座標変換後の検知枠を示す情報を含む検知枠リストをトラッキング部130に出力する。
トラッキング部130は、変換部120から取得した現フレームの検知枠リストと、過去のフレームの検知結果(検知位置)とに基づいて、現フレームにおける検知結果を推定する(S15)。トラッキング部130は、変換部120から取得した現フレームの検知枠リストを、過去のフレームの検知結果に基づいて、補正するとも言える。検知結果を推定する処理の詳細は、後述する。
次に、トラッキング部130は、検知結果を出力する(S16)。検知結果は、図6に示すように、カメラ10(本実施の形態では、車両50)に対する対象物の位置を含む。これにより、車両50は、当該検知結果に基づいて走行制御される。当該検知結果は、対象物の検知位置が正確であるので、車両50は、より安全に走行制御される。
続いて、トラッキング部130が検知結果を推定する処理について、図9〜図18を参照しながら説明する。図9は、図8に示す検知結果を推定する動作(S15)の第1例を示すフローチャートである。なお、以下では、検知対象が人であり、人の足元位置に基づいて、処理を行う例について説明するが、これに限定されない。
図9に示すように、予測部131は、過去のフレームの足元位置(検知位置)に基づいて、対象物の現フレームにおける足元位置(予測位置)を予測する(S101)。予測部131は、移動物がまっすぐに等速で移動するという仮定に基づいて、足元位置を予測する。また、予測部131は、例えば、記憶部136に記憶されている物標情報に基づいて上記の予測を行う。予測部131は、例えば、物標情報に含まれる対象物それぞれにおいて、上記の予測を行う。なお、予測部131が予測する足元位置を予測位置とも記載する。
図10は、本実施の形態に係る予測部131による足元位置の予測を説明するための図である。縦軸は、x軸又はy軸における足元位置を示しており、横軸は、時間を示している。図10は、過去5フレーム分の予測位置に基づいて、現フレームの予測位置を予測する例を示している。過去5フレームは、例えば、直近の5フレームである。
図10に示すように、予測部131は、例えば、人の速度を一定と仮定した単回帰モデルに基づいて、回帰直線を算出する。予測部131は、例えば、過去のフレームにおける検知位置(足元位置)を用いて、最小二乗法により回帰直線を算出する。予測部131は、鳥瞰したときの2次元座標に基づいて、人の足元位置及び速度を予測する。図10に示す破線丸は、回帰直線の切片であり、予測位置を示している。予測部131は、予測された予測位置を対応付け部132に出力する。
次に、対応付け部132は、変換部120からの検知枠リストと、予測部131からの予測位置とに基づいて、現フレームの足元位置(検知位置)と予測位置との距離による対応付け(S102)、及び、現フレームの足元位置(検知位置)と予測位置との角度による対応付け(S103)を行う。対応付け部132は、ステップS102及びS103において、検知位置に対応する予測位置があるか否かを判定する。ステップS102及びS103が行われる順序は、以下では、ステップS102の後にステップS103が行われる例を説明するが、その逆であってもよい。なお、現フレームにおける足元位置を検知位置とも記載する。また、ステップS102で対応付けた行われた結果は、第1対応付け結果の一例であり、ステップS103で対応付けた行われた結果は、第2対応付け結果の一例である。
図11は、図9に示す距離による対応付け処理(S102)の一例を示すフローチャートである。図11に示す処理は、例えば、鳥瞰視点の2次元座標系を用いて行われる。
図11に示すように、対応付け部132は、予測位置と検知位置との距離を算出する(S201)。対応付け部132は、例えば、鳥瞰視点における2次元座標に基づいて、上記の距離を算出する。対応付け部132は、例えば、検知位置のそれぞれにおいて、1以上の予測位置のそれぞれとの距離を算出する。ステップS201では、1つの検知位置に対して複数の距離が算出されることがある。
次に、対応付け部132は、ステップS201で算出した距離が第1閾値以下であるか否かを判定する(S202)。対応付け部132は、ステップS201で1つの検知位置に対して複数の距離が算出された場合、ステップS202の処理を複数の距離のそれぞれに対して行う。対応付け部132は、検知位置の2次元座標を(xi、yi)とし、予測位置の2次元座標を(xj、yj)とすると、以下の式1及び式2の両方を満たす場合、ステップS202でYesと判定する。
|xi−xj|<xth (式1)
|yi−yj|<yth (式2)
|yi−yj|<yth (式2)
なお、xth、及び、ythは、判定している検知位置及び予測位置が同一の対象物(人)に対する検知位置及び予測位置であるか否かを判定するための閾値であり、第1閾値の一例である。xth、及び、ythは、予め設定される。また、検知位置の2次元座標(xi、yi)、及び、予測位置の2次元座標(xj、yj)のそれぞれは、カメラ10に対する位置である。
次に、対応付け部132は、距離が第1所定値以下である場合(S202でYes)、当該検知位置に対応する予測位置が複数あるか否かを判定する(S203)。つまり、対応付け部132は、1つの検知位置に対して、式1及び式2を満たす予測位置が複数あるか否かを判定する。対応付け部132は、式1及び式2を満たす予測位置が複数ある場合(S203でYes)、検知位置と、当該検知位置との距離が最も小さい予測位置とを対応付ける(S204)。対応付け部132は、例えば、検知位置と、以下の式3の値が最も小さくなる予測位置とを対応付ける。
d=|xi−xj|+|yi−yj| (式3)
式3におけるdは、検知位置と予測位置との距離を示す。このように、対応付け部132は、第1検知部20及び第2検知部30からの検知枠リストに基づく、当該人の検知位置を第3検知位置とすると、予測位置に対応付けられた第3検知位置が複数存在する場合、複数の第3検知位置のそれぞれと予測位置との距離dが最も小さい第3検知位置を、予測位置と対応付ける。
また、対応付け部132は、式1及び式2を満たす予測位置が1つである場合(S203でNo)、検知位置と当該予測位置とを対応付ける(S205)。
ここで、距離による対応付けについて、図12を参照しながら説明する。図12は、距離よる対応付け処理を説明するための図である。図12に示す破線枠は、第1検知位置及び第2検知位置のそれぞれの式1及び式2を満たす範囲を示す。なお、図12では、第2検知位置に対応する予測位置が1つである場合を示している。
図12に示すように、予測位置が第1検知位置の破線枠より外側である、つまりステップS202でNoと判定される場合、第1検知位置は、予測位置と対応付けられない。また、予測位置が第2検知位置の破線枠より内側である、つまりステップS202でYesと判定される場合、第2検知位置は、予測位置と対応付けられる(S205)。
図11を再び参照して、対応付け部132は、距離が第1所定値以下でない場合(S202でNo)、検知位置と予測位置との対応付けを行わない。
次に、対応付け部132は、全ての検知位置を判定したか否かを判定する(S206)。対応付け部132は、全ての検知位置を判定した場合(S206でYes)、ステップS103に進み、全ての検知位置を判定していない場合(S206でNo)、ステップS201に進み残りの検知位置に対してステップS201以降の処理を行う。
これにより、1つの検知位置に対して、距離が近い予測位置が1つ対応付けられる。検知位置と距離により対応付けられる予測位置が存在する場合、当該検知位置は、第1検知部20が検知した検知枠に基づいて算出された可能性が高い。上記でも説明したように、第1検知部20は、足元位置を正確に検知することができるからである。
図13は、図9に示す角度による対応付け処理(S103)の一例を示すフローチャートである。
図13に示すように、対応付け部132は、予測位置と検知位置との角度を算出する(S301)。対応付け部132は、例えば、鳥瞰視点における極座標に基づいて、上記の角度を算出する。対応付け部132は、鳥瞰視点において、カメラ10の位置を頂点とし、カメラ10と予測位置とを結んだ線分、及び、カメラ10と検知位置とを結んだ線分とのなす角度(後述する図14のΔ1j、Δ2jを参照)を算出する。対応付け部132は、例えば、検知位置のそれぞれにおいて、1以上の予測位置のそれぞれとの角度を算出する。ステップS301では、1つの検知位置に対して複数の角度が算出されることがある。
次に、対応付け部132は、ステップS301で算出した角度が第2閾値以下であるか否かを判定する(S302)。対応付け部132は、ステップS301で1つの検知位置に対して複数の角度が算出された場合、ステップS302の処理を複数の角度のそれぞれに対して行う。対応付け部132は、検知位置の極座標を(ri、θi)とし、予測位置の極座標を(rj、θj)とすると、以下の式4を満たす場合、ステップS302でYesと判定する。
|θi−θj|<θth−a×min(ri、rj) (式4)
なお、式4の右辺は、判定している検知位置及び予測位置が同一の人に対する検知位置及び予測位置であるか否かを判定するための閾値であり、第2閾値の一例である。角度θthは、予め設定される。また、検知位置の極座標(ri、θi)、及び、予測位置の極座標(rj、θj)のそれぞれは、カメラ10の位置を頂点とするときの角度である。また、a×min(ri、rj)は、動径ri及びrjの小さい方に係数aをかけることを意味する。
式4の右辺は、カメラ10と、検知位置(動径が小さい検知位置)及び予測位置との距離が遠くなるほど、小さい角度に設定される。これは、カメラ10からの距離が遠くなるほど、検知位置と予測位置との角度が等しくても、検知位置と予測位置との距離が大きくなるためである。これにより、検知位置及び予測位置がカメラ10から遠くにある場合であっても、検知位置と予測位置との対応付けを精度よく行うことができる。
次に、対応付け部132は、角度が第2閾値以下である場合(S302でYes)、当該検知位置に対応する予測位置が複数あるか否かを判定する(S303)。つまり、対応付け部132は、1つの対応付け部132に対して、式4を満たす予測位置が複数あるか否かを判定する。対応付け部132は、式4を満たす予測位置が複数ある場合(S303でYes)、検知位置と、当該検知位置と距離が最も小さい予測位置とを対応付ける(S304)。また、対応付け部132は、式4を満たす予測位置が1つである場合(S303でNo)、検知位置と当該予測位置とを対応付ける(S305)。
ここで、角度による対応付けについて、図14を参照しながら説明する。図14は、図14は、角度よる対応付け処理を説明するための図である。図14では、第1検知位置に対応する予測位置が1つである場合を示している。なお、図14では、角度を、カメラ10を通るy軸に対する角度として図示しているが、これに限定されない。図14では、第1検知位置とカメラ10とを結んだ線分、及び、y軸のなす角度をθ1、第2検知位置とカメラ10とを結んだ線分、及び、y軸のなす角度をθ2、予測位置とカメラ10とを結んだ線分、及び、y軸のなす角度をθjとしている。また、角度は、例えば、0〜180度である。また、「角度差Δ1j:小」は、角度差Δ1jが第2閾値より小さいことを示しており、「角度差Δ2j:大」は、角度差Δ2jが第2閾値より大きいことを示している。
図14に示すように、カメラ10を頂点とし、第1検知位置と予測位置とのなす角度(角度差Δ1j)が「小」である、つまりステップS302でYesと判定される場合、第1検知位置は、予測位置と対応付けられる(S304又はS305)。また、カメラ10を頂点とし、第2検知位置と予測位置とのなす角度(角度差Δ2j)が「大」である、つまりステップS302でNoと判定される場合、第2検知位置は、予測位置と対応付けられない。
図13を再び参照して、次に、対応付け部132は、角度が第2閾値以下でない(S302でNo)、検知位置と予測位置との対応付けを行わない。なお、ステップS202及びS302のそれぞれでNoと判定された場合、当該予測位置に対応する物体は、カメラ10の撮像範囲外に移動した可能性がある。この場合、判定部134により、当該予測位置をトラッキング部130から出力される検知結果に含めるか否か(物標情報に残すか否か)が判定される。
なお、ステップS306の処理は、図11のステップS206と同様であり、説明を省略する。
これにより、1つの検知位置に対して、角度が近い予測位置が1つ対応付けられる。検知位置と角度により対応付けられる予測位置が存在する場合、当該検知位置は、第2検知部30が検知した検知枠に基づいて算出された可能性が高い。上記でも説明したように、第2検知部30は、足元位置を正確に検知できない場合があるためである。
対応付け部132は、距離及び角度のそれぞれにおける対応付け結果を補正部133に出力する。
図9を再び参照して、次に、補正部133は、予測位置と距離で対応付けられた検知位置があるか否かを判定する(S104)。補正部133は、予測位置と距離で対応付けられた検知位置がある場合(S104でYes)、予測位置と距離で対応付けられた1以上の検知位置の平均を、補正された検知位置として算出する(S105)。1以上の検知位置の平均は、人に対応する検知位置を補正することの一例である。ステップS105の処理について、図15を参照しながら説明する。図15は、距離により対応付けられた検知位置の補正処理を説明するための図である。
図15の(a)は、ステップS102及びS103において、予測位置と対応付けられた検知位置を示している。矩形枠は、予測位置と距離により対応付けられた検知位置、つまりステップS102で対応付けられた検知位置を示す。矩形枠は、第1対応付け結果が示す検知枠である。また、三角枠は、予測位置と角度により対応付けられた検知位置、つまりステップS103で対応付けられた検知位置を示す。三角枠は、第2対応付け結果が示す検知枠である。つまり、図15の(a)は、1つの予測位置に対してステップS102及びS103のそれぞれにおいて対応付けが行われた場合の対応付け結果の一例を示している。なお、矩形枠及び三角枠が示す検知位置のそれぞれは、第3検知位置の一例である。
この場合、ステップS105では、距離で対応づけられた1以上の検知位置、及び、角度で対応付けられた1以上の検知位置のうち、距離で対応付けられた1以上の検知位置のみを用いて、補正された検知位置を算出する。つまり、予測位置と角度により対応付けられた検知位置は、補正された検知位置の算出に用いられない。なお、距離で対応づけられた1以上の検知位置のいずれかは、当該物体に対応する第3検知位置の一例である。
図15の(b)は、図15の(a)に示す対応付け結果から予測位置と角度により対応付けられた検知位置が削除された状態を示す。これより、予測位置と距離により対応付けられた検知位置のみが残る。そして、補正部133は、距離により対応付けられた1以上の検知位置に基づいて、補正後の検知位置を算出する。補正部133は、例えば、距離により対応付けられた1以上の検知位置との平均を、補正後の検知位置として算出する。
図15の(c)は、図15の(b)に示す対応付け結果に、補正後の検知位置(検知位置の平均位置)が追加された状態を示す。補正後の検知位置は、星枠により示される。これにより、予測位置に対応する検知位置が1つに決まる。
なお、補正部133は、平均(単純平均)することで補正後の検知位置を算出することに限定されない。補正部133は、例えば、重み付け平均することで補正後の検知位置を算出してもよいし、予測位置との距離が最も小さい検知位置を補正後の検知位置としてもよい。
このように、補正部133は、予測位置に、距離により対応付けられた検知位置及び角度により対応付けられた検知位置のそれぞれがある場合、距離により対応付けられた検知位置を優先して用いて、補正後の検知位置を算出する。距離により対応付けられた検知位置は、第1検知部20で検知された検知枠に基づく可能性が高く、足元位置の精度がよいと考えられるためである。つまり、補正部133は、できるだけ足元位置が信頼できる検知位置を用いて、補正後の検知位置を算出する。
言い換えると、補正部133は、距離による対応付け結果において、予測位置に対応付けられた検知位置が対象物の検知位置を含む複数ある場合、複数の検知位置に基づいて、当該対象物の検知位置を補正するとも言える。例えば、補正部133は、予測位置に対応付けられた、当該対象物の検知位置を含む複数の検知位置の平均値を、補正後の当該対象物の検知位置とする。
これにより、検知位置に基づいて算出される人の速度の誤差を低減することができるので、車両50におけるブレーキの制御をより正確に行うことができる。なお、当該対象物の検知位置を、当該対象物の検知位置を含む複数の検知位置の平均値に置き換えることは、当該対象物の検知位置を補正することに含まれる。
図9を再び参照して、補正部133は、予測位置と距離で対応付けられた検知位置がない場合(S104でNo)、予測位置と角度で対応付けられた検知位置があるか否かを判定する(S106)。補正部133は、予測位置と角度で対応付けられた検知位置がある場合(S106でYes)、予測位置と角度で対応付けられた1以上の検知位置の角度の平均を、補正された検知位置の角度として算出する(S107)。
次に、補正部133は、予測位置と角度で対応付けられた1以上の検知位置のうち、カメラ10に近い検知位置と、当該予測位置とに基づいて、補正された検知位置の距離(動径)を算出する(S108)。ステップS107及びS108の処理について、図16及び図17を参照しながら説明する。図16は、角度により対応付けられた検知位置の補正処理を説明するための第1図である。本実施の形態では、補正部133は、補正された検知位置の角度及び距離を、極座標を用いて算出する。
図16の(a)は、ステップS102及びS103のうちステップS103のみにおいて、予測位置と対応付けられた検知位置が存在する場合を示している。三角枠は、予測位置と角度により対応付けられた検知位置、つまりステップS103で対応付けられた検知位置を示す。
この場合、ステップS107では、角度で対応づけられた1以上の検知位置それぞれの角度を用いて、補正された検知位置の角度を算出する。本実施の形態では、補正部133は、角度で対応づけられた1以上の検知位置それぞれの角度の平均を、補正された検知位置の角度として算出する。
このように、補正部133は、第1検知部20及び第2検知部30からの検知枠リストに基づく、当該人の検知位置を第3検知位置とすると、第1対応付け結果において、予測位置に対応付けられた検知位置が存在せず、かつ、第2対応付け結果において、予測位置に対応付けられた第3検知位置が複数存在する場合、複数の第3検知位置のそれぞれと予測位置とのカメラ10に対する複数の角度に基づいて、当該物体に対応する第3検知位置の角度を補正する。具体的には、補正部133は、当該複数の角度の平均値を、当該対象物の検知位置を示す角度とする。なお、当該対象物の検知位置を示す角度を、当該対象物の検知位置を含む複数の検知位置を示す角度の平均値に置き換えることは、当該対象物の検知位置を示す角度を補正することに含まれる。なお、図16の(a)のように、角度が異なる2つの検知位置が1つの予測位置に対応付けられる場合は、例えば、図5の(d)及び図5の(f)に示されるように、1つの物体に対して2つの検知枠が検知された場合に起こり得る。
図16の(b)は、図16の(a)に示す対応付け結果に、角度で対応づけられた1以上の検知位置それぞれの角度を平均した平均角度θavgが追加された状態を示す。補正部133は、例えば、予測位置の角度は用いずに、角度で対応づけられた1以上の検知位置それぞれの角度のみを用いて、平均角度θavgを算出する。これにより、1つの物体に対して2つの検知枠が検知されていた場合に、当該1つの物体の角度をより正確に算出することができる。
そして、補正部133は、ステップS108において、カメラ10に近い検知位置と、当該予測位置とに基づいて、補正された検知位置の距離(補正された動径)を算出する。角度により対応付けられた検知位置は、第2検知部30で検知された検知枠に基づく可能性が高く、カメラ10からの距離の精度が、距離により対応付けられた検知位置に比べて低いと考えられる。そのため、補正部133は、車両50の走行を制御する上で重要である、カメラ10に近い検知位置を優先する。
図16の(c)は、図16の(b)に示す対応付け結果に、補正後の検知位置が追加された状態を示す。補正後の検知位置は、星枠により示される。これにより、予測位置に対応する検知位置が1つに決まる。補正後の検知位置は、角度の平均が示す線分上のいずれかの位置となる。ステップS108の処理について、さらに図17を参照しながら説明する。図17は、角度により対応付けられた検知位置の補正処理を説明するための第2図である。
図17に示すように、補正部133は、予測位置と、カメラ10からの距離が小さい検知位置とに基づいて、補正された検知位置の距離(補正後の動径)を算出する。補正部133は、例えば、予測位置の動径r1と、カメラ10からの距離が小さい検知位置の動径r2との間のいずれかの動径を、補正後の検知位置の動径として算出する。補正部133は、例えば、補正後の動径をr、係数をαとすると、以下の式5により補正後の検知位置の動径を算出する。
r=α×r2+(1−α)×r1 (式5)
なお、係数αは、0以上1以下の値である。つまり、係数αは、動径r1及びr2の内分点を決定するための係数である。図17に示すように、α=0である場合の補正後の動径rは、予測位置の動径r1となる(r=r1)。また、α=1である場合の補正後の動径rは、カメラ10からの距離が小さい検知位置の動径r2となる(r=r2)。係数αが0<α<1である場合、補正後の動径rは、r1<r<r2となる。
ここで、係数αの設定方法について説明する。係数αは、人の速度(移動速度)に基づいて、動的に設定される。第2検知部30による検知(MODを用いた検知)は、移動物の真値の速度が大きい場合、フロー(ベクトル)が出るので、精度よく検知が行える。つまり、角度により対応付けられた検知位置の動径r2は、移動物の速度が大きい場合、当該移動物の速度が小さい場合に比べて精度が高くなる。そのため、補正部133は、移動物の速度が速いほど、係数αを1に近づけて、予測位置より検知位置を優先して動径rを算出する。また、補正部133は、移動物の速度が遅いほど、係数αを0に近づけて、検知位置より予測位置を優先して動径rを算出する。
補正部133は、例えば、以下に示す式6により、係数αを算出する。
α=0.5×tanh(β(v−vb))+0.5 (式6)
ここで、係数βは、予め設定されるパラメータであり、β>0である。設定値vbは、予め設定される速度に関するパラメータであり、vb>0である。また、速度vは、移動物の速度を示し、以下の式7により算出される。
ここで、vxは、移動体のx軸方向の速度であり、vyは、移動体のy軸方向の速度である。また、式6に示すtanh(β(v−vb))は、−1以上1以下の数値をとることから、αは0以上1以下の数値となる。
このように、補正部133は、複数の第3検知位置のうちカメラ10に最も近い第3検知位置と、予測位置とに基づいて、当該対象物に対応する第3検知位置とカメラ10との距離を補正する。例えば、補正部133は、対象物の移動速度が速いほど、最も近い第3検知位置及び予測位置のうち最も近い第3検知位置の重みが大きくなるように、最も近い第3検知位置及び予測位置を重みづけ平均することで、第3検知位置とカメラ10との距離を算出する。
また、補正部133は、予測位置と角度で対応付けられた検知位置がない場合(S106でNo)、予測位置に対応する人がいないことを示す情報を出力する。この場合、人の位置は、予測位置により補間されてもよい。
以上のように、補正部133は、予測位置に、角度により対応付けられた1以上の検知位置のみがある場合、補正後の検知位置の角度を、1以上の検知位置それぞれの角度に基づいて算出する。また、補正部133は、補正後の検知位置の距離を、予測位置と、最もカメラ10に近い検知位置とに基づいて算出する。1以上の検知位置のそれぞれは、第2検知部30が検知された検知枠に基づいて算出されている可能性が高く、角度の精度が高く、かつ、距離(動径)の精度が低いことが多いと考えられる。そこで、1以上の検知位置のそれぞれの角度の平均をとることで、より精度の高い角度を算出することができる。また、予測位置の距離を用いて距離を算出することで、1以上の検知位置における距離の信頼度を補うことができる。
上記のステップS104〜S108までの処理は、予測位置に対して複数の検知位置が対応付けられている場合に、予測位置に対応する1つの検知位置を決定する処理であるとも言える。
また、補正部133は、変換部120から取得した検知枠リストに含まれる検知枠に対応する検知位置(足元位置)であり、かつ、いずれの予測位置とも対応付けができなかった検知位置(ステップS202及びS302のそれぞれでNoと判定された検知位置)を、撮像範囲に侵入してきた人の検知位置(新規物標の検知位置)であると判定してもよい。この場合、トラッキング部130から出力される検知結果には、当該人の検知位置に対応する検知枠が含まれる。
補正部133は、補正された検知位置を含む検知結果を判定部134に出力する。
次に、判定部134は、検知結果の中に、物体が検知されなくなってからのフレームが所定数以上経過した予測位置を当該検知結果から棄却するか否かを判定する。判定部134は、例えば、ステップS106でNoと判定された予測位置を検知結果から棄却するか否かを判定する。判定部134は、所定数のフレームの間は、当該予測位置を補間のために検知結果に含める。当該物体が数フレーム後に再度検知される場合があるためである。図18は、本実施の形態に係る判定部134の処理を説明するための図である。図18では、現フレームを「FrameN」としている。
図18に示すように、「FrameN−5」までは検知されていた人が、「FrameN−4」〜「FrameN」の5フレームにおいて、検知されていない。つまり、当該人は、連続する5フレームにおいて、検知されていない。この場合、判定部134は、当該人が撮像範囲外に移動した可能性があるので、検知結果から当該人の予測位置に関する情報を削除する。判定部134は、予測位置を用いて連続して補間した回数(フレーム数)が所定数を超えると、当該人に対する物標を削除するとも言える。
判定部134は、判定結果を反映した検知結果を濾波部135に出力する。
濾波部135は、現フレームの検知位置及び過去のフレームの検知位置に基づいて、現フレームでの当該対象物の位置及び速度を推定する。濾波部135は、判定部134から取得した検知結果に含まれる人それぞれにおいて、位置及び速度を推定する。濾波部135は、人は直線上を等速に移動すると仮定して、当該人の位置及び速度を推定する。図19は、本実施の形態に係る濾波部135の処理を説明するための図である。図19では、t=0が現フレームを示す。また、検知位置は、0.1sごとに算出されているとする。
図19に示すように、濾波部135は、例えば、速度が一定であると仮定した単回帰モデル(例えば、x=vx+x0、y=yx+y0)を速度算出モデルとして用いて、回帰直線を算出する。本実施の形態では、濾波部135は、以下の式8〜式10に示すように、重み付き最小二乗法を用いて回帰直線を算出する。
x軸方向の誤差をLx、y軸方向の誤差をLyとすると、誤差Lx及びLyは、以下の式8及び式9により算出される。
ここで、xi及びyiは、対象物の過去のフレームにおけるx軸方向及びy軸方向の検知位置であり、vx及びvyは、対象物のx軸方向及びy軸方向の速度である。vxは、図19に示す回帰直線の傾きにより求められる。また、tiは、時刻であり、x0及びy0は、x軸方向及びy軸方向の現フレームにおける検知位置である。x0は、図19に示す回帰直線の切片により求められる。また、ciは、係数(重み)であり、以下の式10を満たす。
本実施の形態では、濾波部135は、直近の検知位置の寄与度を大きくするように係数ciを決定するが、これに限定されない。濾波部135は、係数ciを全て同じ値に決定してもよい。つまり、濾波部135は、通常の最小二乗法を用いて、回帰直線を算出してもよい。
濾波部135は、例えば、誤差Lxが最小となる速度vx及び切片x0を算出する場合、式8の速度vx及び切片x0それぞれでの偏微分値をゼロとして計算することで、速度vx及び切片x0を算出する。また、濾波部135は、例えば、誤差Lyが最小となる速度vy及び切片y0を算出する場合、式9を用いて同様の計算により、速度vy及び切片y0を算出する。
濾波部135は、現フレームにおける人の位置及び速度を検知結果に含めて、外部に出力する。また、当該検知結果を記憶部136に記憶する。
以上のように、本実施の形態に係る物体検知装置1aの対応付け部132は、検知位置と、当該検知位置と距離による対応付けができる予測位置とを対応付け、かつ、検知位置と、当該検知位置と角度による対応付けができる予測位置とを対応付ける。つまり、対応付け部132は、距離及び角度のそれぞれにおいて、検知位置と予測位置とを対応付ける。そして、補正部133は、予測位置に、距離により対応付けられた検知位置がある場合、距離により対応付けられた検知位置のみを用いて、補正後の検知位置(例えば、x軸座標及びy軸座標)を算出し、予測位置に、角度のみにより対応付けられた検知位置がある場合、検知位置を用いて補正後の角度を算出し、検知位置及び予測位置を用いて補正後の距離(動径)を算出する。
これにより、物体検知装置1aは、物体の検知精度を向上することができる。距離により対応付けられた検知位置は、第1検知部20で検知された検知枠に基づく検知位置である可能性が高く、検知位置(足元位置)の精度がよいと考えられる。よって、当該検知位置を用いて、補正後の検知位置を算出することで、物体の検知精度を向上することができる。また、角度により対応付けられる検知位置は、第2検知部30が検知した検知枠に基づく検知位置である可能性が高く、検知位置の角度の精度はよいが距離の精度が低いと考えられる。よって、当該検知位置及び予測位置に基づいて距離を算出することで、距離により対応付けられた検知位置がない場合であっても、距離を精度よく算出することができるので、物体の検知精度を向上することができる。
また、物体検知装置1aによれば、例えば、フレームごとで第1検知部20及び第2検知部30の一方が誤検知するといったことが連続して発生した場合であっても、当該フレームごとで検知位置がズレることを抑制することができる。つまり、物体検知装置1aによれば、連続したフレームのそれぞれで第1検知部20及び第2検知部30の一方が誤検知した場合であっても、精度よく物体を検知することができる。
(その他の実施の形態)
以上、一つまたは複数の態様に係る物体検知装置等について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示に含まれてもよい。
以上、一つまたは複数の態様に係る物体検知装置等について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示に含まれてもよい。
例えば、上記実施の形態では、撮像装置は、可視光カメラである例について説明したが、これに限定されない。撮像装置は、赤外線カメラ、遠赤外線カメラなどであってもよい。
また、上記実施の形態では、物体検知装置が備える検知部は、2つである例について説明したが、これに限定されない。物体検知装置が備える検知部は、3つ以上であってもよい。
また、上記実施の形態では、検知枠は、矩形状の枠である例について説明したが、これに限定されない。検知枠は、円形状、楕円形状、多角形状などであってもよい。
また、上記実施の形態では、式4の右辺は、カメラと、検知位置及び予測位置との距離が遠くなるほど、小さい角度に設定される例について説明したがこれに限定されない。式4の右辺は、カメラと、検知位置及び予測位置との距離に関わらず、一定値に設定されていてもよい。
また、フローチャートにおける各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が他のステップと同時(並列)に実行されてもよいし、上記ステップの一部は実行されなくてもよい。
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
また、物体検知装置は、複数の装置により実現されてもよい。物体検知装置が複数の装置によって実現される場合、当該物体検知装置が有する各構成要素は、複数の装置にどのように振り分けられてもよい。また、物体検知装置が備える各構成要素の少なくとも1つは、サーバ装置により実現されてもよい。例えば、第1検知部、第2検知部及び処理部の少なくとも1つは、サーバ装置により実現されてもよい。また、物体検知装置がサーバ装置を含む複数の装置で実現される場合、当該物体検知装置が備える装置間の通信方法は、特に限定されず、無線通信であってもよいし、有線通信であってもよい。また、装置間では、無線通信および有線通信が組み合わされてもよい。
また、上記実施の形態における物体検知装置が備える構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。
システムLSIは、複数の処理部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM(Read Only Memory)、RAM(Random Access Memory)などを含んで構成されるコンピュータシステムである。ROMには、コンピュータプログラムが記憶されている。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。
また、本開示の一態様は、図8、9、11、13などに示す物体検知方法に含まれる特徴的な各ステップをコンピュータに実行させるコンピュータプログラムであってもよい。例えば、プログラムは、コンピュータに実行させるためのプログラムであってもよい。また、本開示の一態様は、そのようなプログラムが記録された、コンピュータ読み取り可能な非一時的な記録媒体であってもよい。例えば、そのようなプログラムを記録媒体に記録して頒布又は流通させてもよい。例えば、頒布されたプログラムを、他のプロセッサを有する装置にインストールして、そのプログラムをそのプロセッサに実行させることで、その装置に、上記各処理を行わせることが可能となる。
本開示は、互いに異なる2つの検知部の検知結果を用いて物体を検知する物体検知装置に有用である。
1、1a 物体検知装置
10 カメラ(撮像装置)
20 第1検知部
30 第2検知部
40、100 処理部
50 車両
110 枠統合部
120 変換部
130 トラッキング部
131 予測部
132 対応付け部(取得部)
133 補正部
134 判定部
135 濾波部
136 記憶部
10 カメラ(撮像装置)
20 第1検知部
30 第2検知部
40、100 処理部
50 車両
110 枠統合部
120 変換部
130 トラッキング部
131 予測部
132 対応付け部(取得部)
133 補正部
134 判定部
135 濾波部
136 記憶部
Claims (12)
- 撮像装置が撮像した画像に基づいて物体を検知する物体検知装置であって、
現フレームの画像を、所定の物体を検知する第1検知部に入力することで得られる前記物体の位置を示す第1検知位置、及び、前記現フレームの画像を、移動体を検知する第2検知部に入力することで得られる前記物体の位置を示す第2検知位置の少なくとも一方に基づく前記物体の第3検知位置を取得する取得部と、
過去のフレームにおける前記物体の位置に基づいて、前記現フレームにおける前記物体の位置を予測する予測部と、
前記予測部が予測した予測位置と前記第3検知位置との距離が第1閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けし、かつ、前記予測位置と前記第3検知位置との前記撮像装置に対する角度が第2閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けする対応付け部と、
前記距離による対応付けの結果を示す第1対応付け結果と、前記角度による対応付づけの結果を示す第2対応付け結果とに基づいて、前記第3検知位置を補正する補正部とを備える
物体検知装置。 - 前記第2閾値は、前記撮像装置と前記予測位置及び前記第3検知位置との距離が遠くなるほど、小さい角度に設定される
請求項1に記載の物体検知装置。 - 前記補正部は、前記第1対応付け結果において、前記予測位置に対応付けられた前記第3検知位置が複数存在する場合、複数の前記第3検知位置のそれぞれに基づいて、前記物体に対応する前記第3検知位置を補正する
請求項1又は2に記載の物体検知装置。 - 前記補正部は、複数の前記第3検知位置の平均値を当該物体の検知位置とする
請求項3に記載の物体検知装置。 - 前記補正部は、前記第1対応付け結果において、前記予測位置に対応付けられた検知位置が存在せず、かつ、前記第2対応付け結果において、前記予測位置に対応付けられた前記第3検知位置が複数存在する場合、複数の前記第3検知位置それぞれと前記予測位置との前記撮像装置に対する複数の角度に基づいて、前記物体に対応する前記第3検知位置の前記角度を補正する
請求項1又は2に記載の物体検知装置。 - 前記補正部は、前記複数の角度の平均値を、前記物体の検知位置を示す角度とする
請求項5に記載の物体検知装置。 - 前記補正部は、複数の前記第3検知位置のうち前記撮像装置に最も近い前記第3検知位置と、前記予測位置とに基づいて、前記物体に対応する前記第3検知位置と前記撮像装置との距離を補正する
請求項5又は6に記載の物体検知装置。 - 前記補正部は、前記物体の移動速度が速いほど、前記最も近い検知位置及び前記予測位置のうち前記最も近い検知位置の重みが大きくなるように、前記最も近い検知位置及び前記予測位置を重みづけ平均することで、前記第3検知位置と前記撮像装置との前記距離を算出する
請求項7に記載の物体検知装置。 - 前記補正部は、前記予測位置に対応付けられた前記第3検知位置が複数ある場合、複数の前記第3検知位置のうち前記予測位置との距離が最も小さい前記第3検知位置を、前記予測位置と対応付ける
請求項1〜8のいずれか1項に記載の物体検知装置。 - 前記取得部が過去のフレームにおいて前記第3検知位置を取得しなくなった場合、当該過去のフレームから現フレームまでのフレーム数が所定数以下であるときに、前記現フレームにおける前記第3検知位置を予測すると判定する判定部を備え、
前記所定数は、前記物体の種類に応じて設定される
請求項1〜9のいずれか1項に記載の物体検知装置。 - 撮像装置が撮像した画像に基づいて物体を検知する物体検知装置の物体検知方法であって、
現フレームの画像を、所定の物体を検知する第1検知部に入力することで得られる前記物体の位置を示す第1検知位置、及び、前記現フレームの画像を、移動体を検知する第2検知部に入力することで得られる前記物体の位置を示す第2検知位置の少なくとも一方に基づく前記物体の第3検知位置を取得し、
過去のフレームにおける前記物体の位置に基づいて、前記現フレームにおける前記物体の位置を予測し、
予測された予測位置と前記第3検知位置との距離が第1閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けし、かつ、前記予測位置と前記第3検知位置との前記撮像装置に対する角度が第2閾値以下である場合に、前記予測位置と前記第3検知位置とを対応付けし、
前記距離による対応付けの結果を示す第1対応付け結果と、前記角度による対応付づけの結果を示す第2対応付け結果とに基づいて、前記第3検知位置を補正する
物体検知方法。 - 請求項11に記載の物体検知方法をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020034143A JP2021135957A (ja) | 2020-02-28 | 2020-02-28 | 物体検知装置、物体検知方法、及び、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020034143A JP2021135957A (ja) | 2020-02-28 | 2020-02-28 | 物体検知装置、物体検知方法、及び、プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021135957A true JP2021135957A (ja) | 2021-09-13 |
Family
ID=77661712
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020034143A Pending JP2021135957A (ja) | 2020-02-28 | 2020-02-28 | 物体検知装置、物体検知方法、及び、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021135957A (ja) |
-
2020
- 2020-02-28 JP JP2020034143A patent/JP2021135957A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10452931B2 (en) | Processing method for distinguishing a three dimensional object from a two dimensional object using a vehicular system | |
JP7025912B2 (ja) | 車載環境認識装置 | |
JP4355341B2 (ja) | 深度データを用いたビジュアルトラッキング | |
JP5251800B2 (ja) | 対象物追跡装置及びプログラム | |
KR102099265B1 (ko) | 보행자 상태 기반의 보행자와 차량간 충돌 경고 시스템 및 그 방법 | |
US7710246B2 (en) | Vehicle driving assist system | |
JP6547292B2 (ja) | 画像処理装置、機器制御システム、および画像処理プログラム | |
JP6184877B2 (ja) | 車両用外界認識装置 | |
JP5065449B2 (ja) | 消失点推定装置およびプログラム | |
JP5756709B2 (ja) | 身長推定装置、身長推定方法、及び身長推定プログラム | |
JP6306735B2 (ja) | ステレオカメラ装置及びステレオカメラ装置を備える車両 | |
US8160300B2 (en) | Pedestrian detecting apparatus | |
CN111497741B (zh) | 碰撞预警方法及装置 | |
US20240153106A1 (en) | Object tracking device | |
JP2005214914A (ja) | 移動速度検出装置および移動速度検出方法 | |
EP3635684B1 (en) | Pyramidal optical flow tracker improvement | |
JP2007280387A (ja) | 物体移動の検出方法及び検出装置 | |
JP7003972B2 (ja) | 距離推定装置、距離推定方法及び距離推定用コンピュータプログラム | |
JP2007249386A (ja) | 画像処理装置 | |
JP4788399B2 (ja) | 歩行者検出方法、装置、およびプログラム | |
JP5891802B2 (ja) | 車両位置算出装置 | |
JP5903901B2 (ja) | 車両位置算出装置 | |
JP2021135957A (ja) | 物体検知装置、物体検知方法、及び、プログラム | |
JP7361342B2 (ja) | 学習方法、学習装置、及び、プログラム | |
JP2017167970A (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム |