(57)【要約】      （修正有）【課題】簡単な方法で撮像位置の姿勢を推定できる姿勢推定装置、姿勢推定方法、姿勢推定プログラム及び記録媒体を提供する。【解決手段】姿勢推定装置１は、画像内に写った車両の種類を特定する特定部１３と、特定された車両の種類と予め記憶される車両情報とに基づいて種類が特定された車両のホイールベース及びトレッドを取得する取得部１４と、種類が特定された車両と路面との３つ以上の接地点を抽出する抽出部１５と、抽出された３つ以上の接地点とホイールベース及びトレッドとに基づいて、画像を生成する時の撮像位置から車両における接地点のうちいずれか１つまでの距離を算出すると共に、３つ以上の接地点に基づいて３つ以上の接地点を含む平面を推定し、距離、平面、及び、距離を算出する際に選択した車両の接地点と撮像位置とを結ぶ直線と平面とのなす角に基づいて、平面から撮像位置までの高さを算出する算出部１６と、を備える。【選択図】図２
2020115094.tif 000002
【特許請求の範囲】
【請求項１】
画像データを記憶すると共に、車両の種類と、その車両のホイールベース及びトレッドとを対応付けた車両情報を記憶する記憶部と、
前記記憶部に記憶される画像データに基づいて、画像内に写った車両の種類を特定する特定部と、
前記特定部によって特定された車両の種類と、前記記憶部に記憶される前記車両情報とに基づいて、車両の種類を特定した車両のホイールベース及びトレッドを取得する取得部と、
前記記憶部に記憶される画像データに基づいて、車両の種類を特定した車両と路面との３つ以上の接地点を抽出する抽出部と、
前記抽出部によって抽出された前記３つ以上の接地点と、前記取得部で取得されたホイールベース及びトレッドとに基づいて、画像データを生成する時の撮像位置から前記車両における接地点のうちいずれか１つまでの距離を算出すると共に、前記３つ以上の接地点に基づいて前記３つ以上の接地点を含む平面を推定し、前記距離、前記平面、及び、前記距離を算出する際に選択した前記車両の接地点と前記撮像位置とを結ぶ直線と前記平面とのなす角に基づいて、前記平面から前記撮像位置までの高さを算出する算出部と、
を備える姿勢推定装置。
【請求項２】
前記撮像位置に配されると共に、被写体を撮像して画像データを生成し、その画像データを前記記憶部に記憶する撮像部をさらに備える
請求項１に記載の姿勢推定装置。
【請求項３】
前記特定部は、複数の車両の種類を予め学習し、その学習の結果に基づいて画像データの画像を認識することにより、画像内に写った車両の種類を特定する
請求項１又は２に記載の姿勢推定装置。
【請求項４】
前記特定部は、画像内に写った複数の車両の種類を特定し、
前記取得部は、複数の車両それぞれのホイールベース及びトレッドを取得し、
前記抽出部は、複数の車両それぞれの３つ以上の接地点を抽出し、
前記算出部は、前記撮像位置から前記複数の車両それぞれにおける接地点のいずれか１つまでの距離を算出すると共に、前記複数の車両それぞれの３つ以上の接地点に基づいて平面を推定し、前記車両毎に、前記距離、前記平面、及び、前記なす角に基づいて、前記平面から前記撮像位置までの高さを算出する
請求項１〜３のいずれか１項に記載の姿勢推定装置。
【請求項５】
前記算出部は、前記平面から前記撮像位置までの高さを算出することとして、複数の高さのうち最も高いものを前記平面から前記撮像位置までの高さとする
請求項４に記載の姿勢推定装置。
【請求項６】
前記算出部は、前記平面から前記撮像位置までの高さを算出することとして、複数の高さの相加平均を算出して、相加平均の値を前記平面から前記撮像位置までの高さとする
請求項４に記載の姿勢推定装置。
【請求項７】
前記特定部は、画像内に複数の車両が写る場合、前記複数の車両のうち画像内のサイズが最も大きい車両の種類を特定し、
前記抽出部は、その車両に対応する３つ以上の接地点を抽出する
請求項１〜３のいずれか１項に記載の姿勢推定装置。
【請求項８】
コンピュータが、
画像データを記憶部に記憶すると共に、車両の種類と、その車両のホイールベース及びトレッドとを対応付けた車両情報を記憶部に記憶する記憶ステップと、
前記記憶部に記憶される画像データに基づいて、画像内に写った車両の種類を特定する特定ステップと、
前記特定ステップによって特定された車両の種類と、前記記憶部に記憶される前記車両情報とに基づいて、車両の種類を特定した車両のホイールベース及びトレッドを取得する取得ステップと、
前記記憶部に記憶される画像データに基づいて、車両の種類を特定した車両と路面との３つ以上の接地点を抽出する抽出ステップと、
前記抽出ステップによって抽出された前記３つ以上の接地点と、前記取得ステップで取得されたホイールベース及びトレッドとに基づいて、画像データを生成する時の撮像位置から前記車両における接地点のうちいずれか１つまでの距離を算出すると共に、前記３つ以上の接地点に基づいて前記３つ以上の接地点を含む平面を推定し、前記距離、前記平面、及び、前記距離を算出する際に選択した前記車両の接地点と前記撮像位置とを結ぶ直線と前記平面とのなす角に基づいて、前記平面から前記撮像位置までの高さを算出する算出ステップと、
を実行する姿勢推定方法。
【請求項９】
前記コンピュータは、
前記撮像位置に配される撮像部によって被写体を撮像して画像データを生成し、その画像データを前記記憶部に記憶する撮像ステップを実行する
請求項８に記載の姿勢推定方法。
【請求項１０】
前記特定ステップは、複数の車両の種類を予め学習し、その学習の結果に基づいて画像データの画像を認識することにより、画像内に写った車両の種類を特定する
請求項８又は９に記載の姿勢推定方法。
【請求項１１】
前記特定ステップは、画像内に写った複数の車両の種類を特定し、
前記取得ステップは、複数の車両それぞれのホイールベース及びトレッドを取得し、
前記抽出ステップは、複数の車両それぞれの３つ以上の接地点を抽出し、
前記算出ステップは、前記撮像位置から前記複数の車両それぞれにおける接地点のいずれか１つまでの距離を算出すると共に、前記複数の車両それぞれの３つ以上の接地点に基づいて平面を推定し、前記車両毎に、前記距離、前記平面、及び、前記なす角に基づいて、前記平面から前記撮像位置までの高さを算出する
請求項８〜１０のいずれか１項に記載の姿勢推定方法。
【請求項１２】
前記算出ステップは、前記平面から前記撮像位置までの高さを算出することとして、複数の高さのうち最も高いものを前記平面から前記撮像位置までの高さとする
請求項１１に記載の姿勢推定方法。
【請求項１３】
前記算出ステップは、前記平面から前記撮像位置までの高さを算出することとして、複数の高さの相加平均を算出して、相加平均の値を前記平面から前記撮像位置までの高さとする
請求項１１に記載の姿勢推定方法。
【請求項１４】
前記特定ステップは、画像内に複数の車両が写る場合、前記複数の車両のうち画像内のサイズが最も大きい車両の種類を特定し、
前記抽出ステップは、その車両に対応する３つ以上の接地点を抽出する
請求項８〜１０のいずれか１項に記載の姿勢推定方法。
【請求項１５】
コンピュータに、
画像データを記憶部に記憶すると共に、車両の種類と、その車両のホイールベース及びトレッドとを対応付けた車両情報を記憶部に記憶する記憶機能と、
前記記憶部に記憶される画像データに基づいて、画像内に写った車両の種類を特定する特定機能と、
前記特定機能によって特定された車両の種類と、前記記憶部に記憶される前記車両情報とに基づいて、車両の種類を特定した車両のホイールベース及びトレッドを取得する取得機能と、
前記記憶部に記憶される画像データに基づいて、車両の種類を特定した車両と路面との３つ以上の接地点を抽出する抽出機能と、
前記抽出機能によって抽出された前記３つ以上の接地点と、前記取得機能で取得されたホイールベース及びトレッドとに基づいて、画像データを生成する時の撮像位置から前記車両における接地点のうちいずれか１つまでの距離を算出すると共に、前記３つ以上の接地点に基づいて前記３つ以上の接地点を含む平面を推定し、前記距離、前記平面、及び、前記距離を算出する際に選択した前記車両の接地点と前記撮像位置とを結ぶ直線と前記平面とのなす角に基づいて、前記平面から前記撮像位置までの高さを算出する算出機能と、
を実現させる姿勢推定プログラム。
【請求項１６】
前記コンピュータに、
前記撮像位置に配される撮像部によって被写体を撮像して画像データを生成し、その画像データを前記記憶部に記憶させる撮像機能を実現させる
請求項１５に記載の姿勢推定プログラム。
【請求項１７】
前記特定機能は、複数の車両の種類を予め学習し、その学習の結果に基づいて画像データの画像を認識することにより、画像内に写った車両の種類を特定する
請求項１５又は１６に記載の姿勢推定プログラム。
【請求項１８】
前記特定機能は、画像内に写った複数の車両の種類を特定し、
前記取得機能は、複数の車両それぞれのホイールベース及びトレッドを取得し、
前記抽出機能は、複数の車両それぞれの３つ以上の接地点を抽出し、
前記算出機能は、前記撮像位置から前記複数の車両それぞれにおける接地点のいずれか１つまでの距離を算出すると共に、前記複数の車両それぞれの３つ以上の接地点に基づいて平面を推定し、前記車両毎に、前記距離、前記平面、及び、前記なす角に基づいて、前記平面から前記撮像位置までの高さを算出する
請求項１５〜１７のいずれか１項に記載の姿勢推定プログラム。
【請求項１９】
前記算出機能は、前記平面から前記撮像位置までの高さを算出することとして、複数の高さのうち最も高いものを前記平面から前記撮像位置までの高さとする
請求項１８に記載の姿勢推定プログラム。
【請求項２０】
前記算出機能は、前記平面から前記撮像位置までの高さを算出することとして、複数の高さの相加平均を算出して、相加平均の値を前記平面から前記撮像位置までの高さとする
請求項１８に記載の姿勢推定プログラム。
【請求項２１】
前記特定機能は、画像内に複数の車両が写る場合、前記複数の車両のうち画像内のサイズが最も大きい車両の種類を特定し、
前記抽出機能は、その車両に対応する３つ以上の接地点を抽出する
請求項１５〜１７のいずれか１項に記載の姿勢推定プログラム。
【請求項２２】
請求項１５〜２１のいずれか１項に記載のプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、姿勢推定装置、姿勢推定方法、姿勢推定プログラム及び記録媒体に関する。
【背景技術】
【０００２】
従来から、撮像カメラを車両に取り付ける例が存在する。このような撮像カメラは、撮像した画像についてキャリブレーションを行い、キャリブレーション後の画像を表示部に表示したり、キャリブレーション後の画像に基づいて道路の周辺の情報を収集したりする場合に利用される。このような場合、撮像カメラの設置位置及び姿勢を表すパラメータについてキャリブレーションを行う必要があるが、一例として、撮像カメラの道路面からの高さを求め、その高さに基づいてキャリブレーションを行う場合がある。
【０００３】
特許文献１に記載された発明は、円パターンが設けられたターゲットボードを車両に対して予め定められた位置に設置し、車両に配された撮像カメラによってターゲットボードを撮像して画像データを生成する構成である。特許文献１に記載された発明は、画像データに基づいてターゲットボードの円パターンの座標位置を算出し、その座標位置を撮像データ上の座標位置に変換して、その変換された座標位置に基づいて撮像カメラの取り付け位置を推定する構成である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−０４７７２５
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載された発明は、車両の外部にターゲットボードを設置する必要がある。例えば、天候が雨又は強風等であったり、酷暑等であったりした場合には、車両に対して予め定められた位置にターゲットボードを設置するだけでも、作業者は疲労を感じることになる。このため、ターゲットボードを車両に外部に設置しなくとも、より簡単な方法で撮像カメラの取り付け位置を推定する手法が求められている。
【０００６】
本発明は、簡単な方法で撮像位置の姿勢を推定できる姿勢推定装置、姿勢推定方法、姿勢推定プログラム及び記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
一態様に係る姿勢推定装置は、画像データを記憶すると共に、車両の種類と、その車両のホイールベース及びトレッドとを対応付けた車両情報を記憶する記憶部と、記憶部に記憶される画像データに基づいて、画像内に写った車両の種類を特定する特定部と、特定部によって特定された車両の種類と、記憶部に記憶される車両情報とに基づいて、車両の種類を特定した車両のホイールベース及びトレッドを取得する取得部と、記憶部に記憶される画像データに基づいて、車両の種類を特定した車両と路面との３つ以上の接地点を抽出する抽出部と、抽出部によって抽出された３つ以上の接地点と、取得部で取得されたホイールベース及びトレッドとに基づいて、画像データを生成する時の撮像位置から車両における接地点のうちいずれか１つまでの距離を算出すると共に、３つ以上の接地点に基づいて３つ以上の接地点を含む平面を推定し、距離、平面、及び、距離を算出する際に選択した車両の接地点と撮像位置とを結ぶ直線と平面とのなす角に基づいて、平面から撮像位置までの高さを算出する算出部と、を備える。
【０００８】
一態様に係る姿勢推定装置は、撮像位置に配されると共に、被写体を撮像して画像データを生成し、その画像データを記憶部に記憶する撮像部をさらに備えることとしてもよい。
【０００９】
一態様に係る姿勢推定装置では、特定部は、複数の車両の種類を予め学習し、その学習の結果に基づいて画像データの画像を認識することにより、画像内に写った車両の種類を特定することとしてもよい。
【００１０】
一態様に係る姿勢推定装置では、特定部は、画像内に写った複数の車両の種類を特定し、取得部は、複数の車両それぞれのホイールベース及びトレッドを取得し、抽出部は、複数の車両それぞれの３つ以上の接地点を抽出し、算出部は、撮像位置から複数の車両それぞれにおける接地点のいずれか１つまでの距離を算出すると共に、複数の車両それぞれの３つ以上の接地点に基づいて平面を推定し、車両毎に、距離、平面、及び、なす角に基づいて、平面から撮像位置までの高さを算出することとしてもよい。
【００１１】
一態様に係る姿勢推定装置では、算出部は、平面から撮像位置までの高さを算出することとして、複数の高さのうち最も高いものを平面から撮像位置までの高さとすることとしてもよい。
【００１２】
一態様に係る姿勢推定装置では、算出部は、平面から撮像位置までの高さを算出することとして、複数の高さの相加平均を算出して、相加平均の値を平面から撮像位置までの高さとすることとしてもよい。
【００１３】
一態様に係る姿勢推定装置では、特定部は、画像内に複数の車両が写る場合、複数の車両のうち画像内のサイズが最も大きい車両の種類を特定し、抽出部は、その車両に対応する３つ以上の接地点を抽出することとしてもよい。
【００１４】
一態様に係る姿勢推定方法では、コンピュータが、画像データを記憶部に記憶すると共に、車両の種類と、その車両のホイールベース及びトレッドとを対応付けた車両情報を記憶部に記憶する記憶ステップと、記憶部に記憶される画像データに基づいて、画像内に写った車両の種類を特定する特定ステップと、特定ステップによって特定された車両の種類と、記憶部に記憶される車両情報とに基づいて、車両の種類を特定した車両のホイールベース及びトレッドを取得する取得ステップと、記憶部に記憶される画像データに基づいて、車両の種類を特定した車両と路面との３つ以上の接地点を抽出する抽出ステップと、抽出ステップによって抽出された３つ以上の接地点と、取得ステップで取得されたホイールベース及びトレッドとに基づいて、画像データを生成する時の撮像位置から車両における接地点のうちいずれか１つまでの距離を算出すると共に、３つ以上の接地点に基づいて３つ以上の接地点を含む平面を推定し、距離、平面、及び、距離を算出する際に選択した車両の接地点と撮像位置とを結ぶ直線と平面とのなす角に基づいて、平面から撮像位置までの高さを算出する算出ステップと、を実行する。
【００１５】
一態様に係る姿勢推定プログラムは、コンピュータに、画像データを記憶部に記憶すると共に、車両の種類と、その車両のホイールベース及びトレッドとを対応付けた車両情報を記憶部に記憶する記憶機能と、記憶部に記憶される画像データに基づいて、画像内に写った車両の種類を特定する特定機能と、特定機能によって特定された車両の種類と、記憶部に記憶される車両情報とに基づいて、車両の種類を特定した車両のホイールベース及びトレッドを取得する取得機能と、記憶部に記憶される画像データに基づいて、車両の種類を特定した車両と路面との３つ以上の接地点を抽出する抽出機能と、抽出機能によって抽出された３つ以上の接地点と、取得機能で取得されたホイールベース及びトレッドとに基づいて、画像データを生成する時の撮像位置から車両における接地点のうちいずれか１つまでの距離を算出すると共に、３つ以上の接地点に基づいて３つ以上の接地点を含む平面を推定し、距離、平面、及び、距離を算出する際に選択した車両の接地点と撮像位置とを結ぶ直線と平面とのなす角に基づいて、平面から撮像位置までの高さを算出する算出機能と、を実現させる。
【発明の効果】
【００１６】
本発明の一態様の姿勢推定装置は、車両の種類を特定すると共に、その車両と道路との接地点を抽出することによって、平面から撮像位置までの高さを算出するので、作業者にターゲットボードを車両の外部に設置する労を強いることなく撮影位置の姿勢を推定することができる。
また、本発明の一態様の姿勢推定方法及び姿勢推定プログラムは、上述した姿勢推定装置と同様の効果を奏することができる。
【図面の簡単な説明】
【００１７】
【図１】一実施形態に係る姿勢推定装置の概略について説明するための図である。
【図２】一実施形態に係る姿勢推定装置について説明するためのブロック図である。
【図３】撮像部の設置位置の一例について説明するための図である。
【図４】撮像部で撮像される画像の一例について説明するための図である。
【図５】接地点、及び、その接地点に基づいて推定される平面について説明するための図である。
【図６】接地点及び対向車等の向きについて説明するための図であり、（Ａ）は対向車等の天地が反転する姿勢を示し、（Ｂ）は複数の接地点のうち両端にある接地点の間にある接地点が対向車等の奥にある場合を示す。
【図７】道路から撮像部までの距離を算出する場合を説明するための図である。
【図８】一実施形態に係る姿勢推定方法について説明するためのフローチャートである。
【図９】変形例に係る姿勢推定装置について説明するためのブロック図である。
【発明を実施するための形態】
【００１８】
以下、本発明の一実施形態について説明する。
図１は、一実施形態に係る姿勢推定装置の概略について説明するための図である。
【００１９】
本実施形態の姿勢推定装置１は、例えば、車両１０１の室内等に配される撮像部１１の姿勢を推定する。具体的には、姿勢推定装置１は、撮像部１１の道路１１０（図３参照）からの高さＨ（図３参照）を推定する。
このため、姿勢推定装置１は、例えば、撮像部１１が配された車両１０１が道路１１０を走行し、又は、平らな駐車場に駐車する場合等、撮像部１１によって対向車、前方の車両又は後方の車両（ここでは「対向車１０２」と記載するが、対向車に限らず並行車であってもよい。）を撮像し、対向車１０２の３つ以上の接地点Ｐを取得する。また、姿勢推定装置１は、撮像部１１によって撮像された対向車１０２の種類に基づいて、その対向車１０２のホイールベース及びトレッドを取得する。姿勢推定装置１は、取得した３つ以上の接地点Ｐと、取得したホイールベース及びトレッドとに基づいて、道路１１０から撮像部１１までの高さＨを推定する。
【００２０】
具体的には、姿勢推定装置１は以下の構成となる。姿勢推定装置１は、例えば、コンピュータシステムによって実現される。
図２は、一実施形態に係る姿勢推定装置について説明するためのブロック図である。図３は、撮像部の設置位置の一例について説明するための図である。図４は、撮像部で撮像される画像の一例について説明するための図である。
【００２１】
図２に示すように、姿勢推定装置１は、撮像部１１、記憶部１２、特定部１３、取得部１４、抽出部１５及び算出部１６を備える。
【００２２】
撮像部１１は、車両１０１の所定位置に配される。一例として、撮像部１１は、図１，図３に示すように、車両１０１の室内の天井等に配される。撮像部１１は、車両１０１に着脱可能なように配され、車両１０１に臨時に取り付けられる。撮像部１１は、一例として、車両１０１の前方及び斜め前方を撮像する。又は、撮像部１１は、一例として、車両１０１の後方及び斜め後方を撮像する。これにより、撮像部１１は、車両１０１の前方、後方又は斜め方向、を走行する対向車１０２、及び、車両１０１の前方又は斜め方向に駐車する対向車１０２を撮像することが可能である。撮像部１１は、例えば、動画を撮像し、又は、時間的に連続して静止画を撮像する。撮像部１１は、例えば、車両１０１の前方及び斜め前方等にある被写体（対向車１０２）を撮像して画像データを生成し、その画像データを記憶部１２に記憶する。
【００２３】
撮像部１１は、車両１０１が走行している場合及び車両１０１が停車している場合のいずれでも被写体を撮像することが可能である。姿勢推定装置１は、後述するように撮像部１１の高さＨを算出するため、車両１０１が停止している場合に撮像部１１で撮像された画像に基づいて撮像部１１の高さＨを算出する方が、車両１０１が走行する場合に撮像部１１で撮像された画像に基づいて撮像部１１の高さＨを算出する場合に比べて、精度が高くなる。
なお、姿勢推定装置１は、記憶部１２、特定部１３、取得部１４、抽出部１５及び算出部１６を備え、撮像部１１を備えない構成であってもよい。この場合、姿勢推定装置１では、記憶部１２は別構成の撮像部によって予め撮像された画像データを記憶することとしてもよい。
【００２４】
記憶部１２は、撮像部１１で生成された画像データを記憶する。また、記憶部１２は、車両の種類（具体的には、車種）と、その車両のホイールベース及びトレッドとを対応付けた車両情報を記憶する。ホイールベースは、車両の前輪と後輪との間の距離である。また、トレッドは、左前輪（後後輪）と右前輪（右後輪）との間の距離である。ホイールベース及びトレッドとも、一例として、車輪の中心を基準にしてそれぞれの距離が設定される。車両情報は、予め記憶部１２に記憶される。
【００２５】
特定部１３は、記憶部１２に記憶される画像データに基づいて、画像内に写った対向車１０２の種類を特定する。特定部１３は、例えば、記憶部１２に記憶される画像データ（動画）の１又は複数のフレームに基づいて、対向車１０２の種類を特定することが可能である。又は、特定部１３は、例えば、記憶部１２に記憶される画像データである１又は複数の静止画に基づいて、対向車１０２の種類を特定することが可能である。
【００２６】
特定部１３は、一例として、機械学習等を利用して、画像内に写る対向車１０２の種類を特定することが可能である。すなわち、特定部１３は、複数の車両の種類を予め学習し、その学習の結果を記憶部１２等に記憶する。特定部１３は、画像データを取得すると、その学習の結果に基づいて画像データの画像を認識することにより、画像内に写った対向車１０２の種類を特定する。
又は、特定部１３は、車両の種類（車種）に関するデータを記憶部１２に記憶し、そのデータに基づいて撮像部１１で撮像された画像に基づいてパターンマッチングを行うことにより、対向車１０２の車種を特定してもよい。
特定部１３は、画像内に複数の対向車１０２が写る場合、複数の対向車１０２の中から任意の１つの対向車１０２を選択して、選択した対向車１０２の種類を特定してもよい。又は、特定部１３は、画像内に複数の対向車１０２が写る場合、複数の対向車１０２の全ての種類を特定してもよい。
ここで、特定部１３は、画像内に複数の対向車１０２が写る場合、複数の対向車１０２のうち画像内のサイズが最も大きい対向車１０２の種類を特定することとしてもよい。例えば、特定部１３は、画像を認識することに基づいて画像内に写る複数の対向車１０２のサイズを取得し、最も大きいサイズの対向車１０２の種類を特定する。最も大きいサイズの対向車１０２の種類を特定することにより、後述する撮像部１１の高さＨを算出する場合の精度を高くすることができる。
【００２７】
取得部１４は、特定部１３によって特定された対向車１０２の種類と、記憶部１２に記憶される車両情報とに基づいて、種類を特定した対向車１０２のホイールベース及びトレッドを取得する。取得部１４は、特定部１３によって対向車１０２の種類が特定された場合、記憶部１２にアクセスし、記憶部１２に記憶される車両情報に基づいて、特定された対向車１０２のホイールベース及びトレッドを取得する。
【００２８】
抽出部１５は、記憶部１２に記憶される画像データに基づいて、種類を特定した対向車１０２と道路１１０（路面）との３つ以上の接地点Ｐを抽出する。すなわち、抽出部１５は、画像内における接地点Ｐ（画像のピクセル位置）を抽出する。抽出部１５は、特定部１３で画像を認識した結果に基づいて、対向車１０２の種類を特定したその対向車の接地点Ｐを取得する。抽出部１５は、一例として、深層学習を利用することにより、対向車１０２の接地点Ｐを取得することが可能である。対向車１０２の接地点Ｐは、その対向車１０２のタイヤが道路１１０に接地する点である。撮像部１１は、対向車１０２を撮像部１１に対して斜め方向から撮像した場合には、図４に例示するように、対向車１０２の左前輪、右前輪及び右後輪を写る画像を取得する。この場合には、抽出部１５は、対向車１０２と道路１１０との３つ以上の接地点Ｐを抽出することが可能である。
【００２９】
ここで、特定部１３によって特定された対向車１０２の種類がトラック及びバス等の大型車の場合、例えば、前輪又は後輪（片側）には前後に２以上のタイヤが配されることがある。この場合、抽出部１５は、対向車１０２（大型車）と道路１１０との接地点Ｐとして、少なくとも４つの接地点Ｐを抽出することが可能である。また、対向車１０２の片側に３つ以上のタイヤが配される場合には、最も前のタイヤと、最も後ろのタイヤとの間隔をホイールベースとしてもよい。
また、抽出部１５は、記憶部１２に記憶されるホイールベース及びトレッドに対応したタイヤを選択する、すなわち、それらのタイヤに応じた３つ以上の接地点Ｐを抽出する必要がある。
【００３０】
また、抽出部１５は、画像内に複数の対向車１０２が写る場合、３つ以上の接地点Ｐを抽出できた複数の対向車１０２のうち、画像内のサイズが最も大きい対向車１０２に対応する３つ以上の接地点Ｐを選択することとしてもよい。すなわち、抽出部１５は、画像内に複数の対向車１０２が写ることにより、対向車１０２と道路１１０との３つ以上の接地点Ｐを抽出できた対向車１０２が複数有る場合、画像内のサイズが最も大きい対向車１０２と道路１１０との３つ以上の接地点Ｐを選択することとしてもよい。姿勢推定装置１は、画像内のサイズが最も大きい対向車１０２に基づいて、後述するように道路１１０から撮像部１１までの高さＨを算出することにより、その算出の精度を高くすることができる。
【００３１】
図５は、接地点、及び、その接地点に基づいて推定される平面について説明するための図である。
【００３２】
算出部１６は、抽出部１５によって抽出された３つ以上の接地点Ｐと、取得部１４で取得されたホイールベース及びトレッドとに基づいて、画像データを生成する時の撮像部１１（撮像位置）から対向車１０２における接地点Ｐのうちいずれか１つまでの距離を算出する。また、算出部１６は、３つ以上の接地点Ｐに基づいて３つ以上の接地点Ｐを含む平面Ｍを推定する。そして、算出部１６は、距離、平面Ｍ、及び、その距離を算出する際に選択した対向車１０２の接地点Ｐと撮像部１１（撮像位置）とを結ぶ直線と平面Ｍとのなす角に基づいて、平面Ｍから撮像部１１（撮像位置）までの高さＨを算出する。
【００３３】
すなわち、算出部１６は、３つ以上の接地点Ｐを含む平面Ｍを推定する。算出部１６は、抽出部１５によって接地点Ｐが３つ抽出されている場合、３つの接地点Ｐを頂点とする三角形を求め、その三角形をそれの面に沿って拡張することにより平面Ｍを推定する。
また、算出部１６は、抽出部１５によって４つ以上の接地点Ｐが抽出されている場合、撮像部１１から見て両端の接地点Ｐと、その両端の接地点Ｐの間に有るいずれか１の接地点Ｐとを頂点とする三角形（平面Ｍ）を推定してもよい。又は、算出部１６は、抽出部１５によって４つ以上の接地点Ｐが抽出されている場合、それぞれの接地点Ｐを頂点とする多角形（平面Ｍ）を推定してもよい。
算出部１６は、推定された平面Ｍ（三角形又は多角形）が道路１１０であり、且つ、平面Ｍは水平であると仮定する。
【００３４】
また、算出部１６は、撮像部１１（撮像位置）から対向車１０２の３つ以上の接地点Ｐのうちいずれか１つの接地点Ｐまでの距離を算出する。
ここで、算出部１６は、上述したように推定された平面Ｍが三角形である場合、三角形の中央の接地点Ｐまでの距離を算出することとしてもよい。例えば、図５に例示するように、抽出部１５によって３つの接地点Ｐ１〜Ｐ３が抽出された場合、算出部１６は、接地点Ｐ３と撮像部１１（撮像位置）との間の距離を算出することとしてもよい。すなわち、算出部１６は、撮像部１１から見て最も左にある接地点Ｐ１と最も右にある接地点Ｐ２との間にある接地点Ｐ３と、撮像部１１（撮像位置）との間の距離を算出することとしてもよい。なお、算出部１６は、上記の一例に限られず、接地点Ｐ１と撮像部１１との間の距離を算出することとしてもよいし、接地点Ｐ２と撮像部１１との間の距離を算出することとしてもよい。
【００３５】
また、算出部１６は、上述したように４つ以上の接地点Ｐに基づいて平面Ｍとして多角形が推定された場合、例えば、撮像部１１から見て最も左にある接地点Ｐと最も右にある接地点Ｐとの間にあるいずれか１つの接地点Ｐと、撮像部１１（撮像位置）との間の距離を算出することとしてもよい。又は、算出部１６は、上記の一例で示す接地点Ｐとは異なる他の接地点Ｐと、撮像部１１（撮像位置）との間の距離を算出することとしてもよい。
【００３６】
ここで、算出部１６は、３つ以上の接地点Ｐに基づいて、対向車１０２の向きを推定することが可能である。
図６は、接地点及び対向車等の向きについて説明するための図である。図６（Ａ）は対向車等の天地が反転する姿勢を示し、図６（Ｂ）は複数の接地点のうち両端にある接地点の間にある接地点が対向車等の奥にある場合を示す。
【００３７】
対向車１０２の向きを推定する場合、図６（Ａ）に示すように、対向車１０２の上下が反転することはありえない。すなわち、対向車１０２の屋根Ｒが下側（道路側）に存在し、その対向車１０２のタイヤＴが上側に存在することはありえない。このため、算出部１６は、対向車１０２の向きを推定する場合、必ず、対向車１０２のタイヤが下側（道路側）に存在し、その対向車１０２の屋根が上側に存在すると決定する。
【００３８】
また、対向車１０２の向きを推定する場合、図６（Ｂ）に示すように、３つの接地点Ｐのうち撮像部１１から見て中央の頂点（撮像部１１から見て両端の接地点Ｐ５，Ｐ６の間にある接地点Ｐ４）は、撮像部１１から見て最も遠い接地点Ｐとなることはない。すなわち、図６（Ｂ）に示す場合では、抽出部１５によって接地点Ｐ５，Ｐ６，Ｐ７が必ず抽出される。
【００３９】
同様に、４つ以上の接地点Ｐが抽出された場合にも、撮像部１１から見て最も左にある接地点Ｐと最も右にある接地点Ｐとの間にあるいずれか１つの接地点Ｐは、撮像部１１から見て最も遠い接地点Ｐ（撮像部１１から見て隠れる位置にある接地点Ｐ）として抽出されることはなく、撮像部１１から見て最も近い接地点Ｐと推定することが可能である。
【００４０】
そして、算出部１６は、上述したように対向車１０２の向きを決定又は推定することができるので、３つ以上の接地点Ｐを含む平面Ｍについて、その平面Ｍの表裏を含めて一意に決めることができる。また、算出部１６は、３つ以上の接地点Ｐのうち撮像部１１から見て中央にある接地点Ｐが、その撮像部１１から最も近い接地点Ｐとして設定する。算出部１６は、上述したように、撮像部１１から３つ以上の接地点Ｐのうちいずれか１つの接地点Ｐと撮像部１１との間の距離を算出するが、撮像部１１から最も近い接地点Ｐと撮像部１１との間の距離を算出することとしてもよい。
【００４１】
また、算出部１６は、上述したように対向車１０２の向きを決定又は推定し、さらに例えば、平面Ｍとして三角形が推定される場合、撮像部１１から見て最も近い接地点Ｐと最も右側の接地点Ｐとの間の間隔と、撮像部１１から見て最も近い接地点Ｐと最も左側の接地点Ｐとの間隔とを比較し、より間隔が短いものを車両１０１の前方（後方）部分する一方、より間隔が長いものを車両１０１の側面部分とすることとしてもよい。
【００４２】
図７は、道路から撮像部までの距離を算出する場合を説明するための図である。
なお、図７は、距離の算出を説明するために、簡略化した図（より理解しやすくした図）である。
算出部１６は、上述したように対向車１０２の向きを決定し又は推定したことに基づいて、接地点Ｐ８と接地点Ｐ９との間隔（第１間隔）と、接地点Ｐ８と接地点Ｐ１０との間隔（第２間隔）とに、対向車１０２のホイールベース又はトレッドをそれぞれ当てはめる。図７に例示する場合、算出部１６は、第１間隔に対向車１０２のトレッドを当てはめ、第２間隔に対向車１０２のホイールベースを当てはめることにより、３つの接地点Ｐ８〜Ｐ１０のうち最も近い接地点Ｐ８と、撮像部１１（撮像位置）との間の距離Ｌを算出する。
なお、算出部１６は、上記の例に限られず、接地点Ｐ９と撮像部１１との間の距離Ｌを算出することとしてもよく、接地点Ｐ１０と撮像部１１との間の距離Ｌを算出することとしてもよい。
【００４３】
なお、撮像部１１によって対向車線を走行する対向車のみを撮像すると予め設定する場合には、算出部１６は、図７の例示では、接地点Ｐ８と接地点Ｐ９との間隔（第１間隔）が対向車の前方部分、接地点Ｐ８と接地点Ｐ１０との間隔（第２間隔）が対向車の側面部分と特定することができる。
【００４４】
具体的な一例として、算出部１６は、画像内における接地点Ｐ８〜Ｐ１０の位置（ピクセル位置（マーカ座標系））を取得する。算出部１６は、この画像内の接地点Ｐ８〜Ｐ１０のピクセル位置を座標変換行列によりカメラ座標系に変換する。これにより、算出部１６は、撮像部から見た接地点Ｐ８〜Ｐ１０の位置・姿勢を取得することができる。算出部１６は、特定された対向車１０２のホイールベース及びトレッドに基づいて、カメラ座標系における接地点Ｐ８と接地点Ｐ９との間隔（第１間隔）と、接地点Ｐ８と接地点Ｐ１０との間隔（第２間隔）とを取得する。算出部１６は、対向車１０２のホイールベール及びトレッドと、カメラ座標系における第１間隔及び第２間隔とに基づいて、撮像部１１と接地点Ｐとの距離Ｌを算出する。
【００４５】
また、算出部１６は、平面Ｍが水平であり、且つ、その平面Ｍが道路であると仮定すると、平面Ｍ及び距離Ｌに基づいて、距離Ｌを算出する際に選択した対向車１０２の接地点Ｐ（一例として、撮像部１１から最も近い接地点Ｐ８）と撮像部１１とを結ぶ直線と、平面Ｍとのなす角θを求めることが可能である。さらに、算出部１６は、距離Ｌ、平面Ｍ及びなす角θに基づいて、平面Ｍ（道路１１０）から撮像部１１（撮像位置）までの高さＨを算出することが可能である。なお、撮像位置は、一例として撮像部１１の中心位置である。
【００４６】
具体的な一例として、算出部１６は、上述したようにカメラ座標系において接地点Ｐ８〜Ｐ１０を含む平面Ｍを取得すると、その座標系における平面Ｍと撮像部１１（画像の中心位置）とのなす角θを求めることができる。算出部１６は、カメラ座標系における平面Ｍ、距離Ｌ及びなす角θに基づいて、三角関数を利用することにより、平面Ｍから撮像部１１（画像の中心位置）までの高さＨを取得することができる。
【００４７】
本実施形態においては、対向車１０２の接地点Ｐをマーカの代替として用い、それぞれのマーカとしてタイヤの接地点Ｐを用いることで、撮像部１１の撮像系を実寸系に変換することができる。本実施形態においては、対向車１０２の種類毎のホイールベース及びトレッドの実寸を利用し、撮像部１１、すなわち、カメラパラメータは既知のデータであるので、撮像系のデータを実寸系に変換し、撮像部１１の高さＨを算出することができる。既存のソフトウェアとしては、一例として、ＡＲＴｏｏｌＫｉｔ等を利用することができる。
【００４８】
上述した姿勢推定装置１は、複数の対向車１０２に基づいて平面Ｍ（道路１１０）から撮像部１１（撮像位置）までの高さＨを算出することとしてもよい。
特定部１３は、画像内に写った複数の対向車１０２の種類を特定する。取得部１４は、複数の対向車１０２それぞれのホイールベース及びトレッドを取得する。抽出部１５は、複数の対向車１０２それぞれの３つ以上の接地点Ｐを抽出する。算出部１６は、撮像部１１から複数の対向車１０２それぞれにおける接地点Ｐのいずれか１つまでの距離Ｌを算出する。さらに、算出部１６は、複数の対向車１０２それぞれの３つ以上の接地点Ｐに基づいて平面Ｍを推定する。算出部１６は、対向車１０２毎に、距離Ｌ、平面Ｍ、及び、なす角θに基づいて、道路１１０（平面Ｍ）から撮像部１１までの高さＨを算出する。
すなわち、姿勢推定装置１（特定部１３、取得部１４及び算出部１６）は、上述した１つの対向車１０２に基づいて道路１１０から撮像部１１までの高さＨを算出する場合と同様に、複数の対向車１０２それぞれについて道路１１０から撮像部１１までの高さＨを算出する。
【００４９】
この場合、算出部１６は、道路１１０から撮像部１１までの高さＨを算出することとして、複数の高さＨのうち最も高いものを道路１１０から撮像部１１までの高さＨとすることとしてもよい。すなわち、算出部１６は、複数の対向車１０２それぞれに基づいて複数の高さＨを算出した場合、複数の高さＨのうち最も高い高さＨを採用する。
【００５０】
又は、算出部１６は、道路１１０から撮像部１１までの高さＨを算出することとして、複数の高さＨの相加平均を算出して、相加平均の値を道路１１０から撮像部１１までの高さＨとすることとしてもよい。すなわち、算出部１６は、複数の対向車１０２それぞれに基づいて複数の高さＨを算出した場合、複数の高さＨの相加平均をさらに算出して、相加平均の値を道路１１０から撮像部１１までの高さＨとして採用する。
【００５１】
上記の各部は、コンピュータにおいて実行されるプログラムによって、そのコンピュータの処理装置等の機能として実現されてもよい。プログラムは、外部記憶装置又は光ディスク等の記録媒体に記録されてもよい。
【００５２】
次に、一実施形態に係る姿勢推定方法について説明する。
図８は、一実施形態に係る姿勢推定方法について説明するためのフローチャートである。
【００５３】
ステップＳＴ１１において、撮像部１１は、被写体を撮像して画像データを生成する。撮像部１１は、搭載される車両１０１が走行中の場合、及び、その車両１０１が停車中の場合のいずれでも、撮像することが可能である。
【００５４】
ステップＳＴ１２において、記憶部１２は、ステップＳＴ１１で生成された画像データを記憶する。
【００５５】
ステップＳＴ１３において、特定部１３は、ステップＳＴ１２で記憶部１２に記憶された画像データに基づいて、画像内に写った対向車１０２の種類を特定する。特定部１３は、１つの対向車１０２の種類を特定してもよく、複数の対向車１０２の種類を特定してもよい。
【００５６】
なお、ステップＳＴ１３以降は、ステップＳＴ１１及びステップＳＴ１２の処理に時間的に連続して行われてれもよい。すなわち、撮像部１１によって画像データが生成される時に（ステップＳＴ１１及びステップＳＴ１２が行われている時に）、ステップＳＴ１３以降の処理が行われてもよい。
一方、ステップＳＴ１３以降は、ステップＳＴ１１及びステップＳＴ１２の処理が行われてから時間的に間をあけて行われてもよい。すなわち、撮像部１１による画像データの生成が終了し、その画像データを記憶する記憶部１２がオフィスに持ち帰られた後、オフィスに配されるパーソナルコンピュータ等を用いてステップＳＴ１３以降の処理が行われてもよい。
【００５７】
ステップＳＴ１４において、取得部１４は、ステップＳＴ１３で特定された対向車１０２の種類と、記憶部１２に予め記憶される車両情報とに基づいて、ステップＳＴ１３で種類を特定した対向車１０２のホイールベース及びトレッドを取得する。
【００５８】
ステップＳＴ１５において、抽出部１５は、ステップＳＴ１２で記憶部１２に記憶された画像データに基づいて、一例として、深層学習等を利用することにより、ステップＳＴ１３で種類を特定した対向車１０２と道路１１０との３つ以上の接地点Ｐを取得する。
【００５９】
ステップＳＴ１６において、算出部１６は、ステップＳＴ１４で取得された対向車１０２のホイールベース及びトレッドと、ステップＳＴ１５で取得した３つ以上の接地点Ｐとに基づいて、一例として、撮像部１１から最も近い接地点Ｐと、その撮像部１１との距離Ｌを算出する。算出部１６は、ステップＳＴ１５で取得した３つ以上の接地点Ｐに基づいて、それら全ての接地点Ｐを含む平面Ｍを推定する。算出部１６は、算出した距離Ｌ、推定した平面Ｍ、及び、距離Ｌを算出する際に選択した接地点Ｐ（一例として、撮像部１１から最も近い接地点Ｐ）と撮像部１１とを結ぶ直線に基づいて、道路１１０から撮像部１１までの高さＨを算出する。
【００６０】
上述した実施形態では、例えば、以下の効果を奏する。
姿勢推定装置１は、画像データに基づいて、画像内に写った対向車１０２の種類を特定する特定部１３と、特定部１３によって特定された対向車１０２の種類と、記憶部１２に記憶される車両情報とに基づいて、種類を特定した対向車１０２のホイールベース及びトレッドを取得する取得部１４と、記憶部１２に記憶される画像データに基づいて、種類を特定した対向車１０２と道路１１０との３つ以上の接地点Ｐを抽出する抽出部１５と、抽出部１５によって抽出された３つ以上の接地点Ｐと、取得部１４で取得されたホイールベース及びトレッドとに基づいて、道路１１０から撮像部１１までの高さＨを算出する算出部１６と、を備える。
姿勢推定装置１は、従来のようにターゲットボードを車両１０１の外部に設置して、撮像部１１の取り付け位置を推定することがない。このため、作業者等は、従来のように疲労を感じることを抑制することができる。よって、姿勢推定装置１は、従来に比べて簡単な方法で撮像部１１（撮像位置）の姿勢を推定することができる。すなわち、姿勢推定装置１は、撮像部１１（撮像位置）の道路１１０からの高さＨを推定することができる。
【００６１】
姿勢推定装置１は、撮像位置に配されると共に、被写体を撮像して画像データを生成し、その画像データを記憶部１２に記憶する撮像部１１をさらに備えることとしてもよい。
姿勢推定装置１は、撮像部１１を車両１０１に固定しておく必要がなく、車両１０１に対して着脱可能な撮像部１１を利用することができる。
【００６２】
姿勢推定装置１では、特定部１３は、複数の車両の種類を予め学習し、その学習の結果に基づいて画像データの画像を認識することにより、画像内に写った対向車１０２の種類を特定することとしてもよい。
これにより、姿勢推定装置１は、撮像部１１で生成した画像を認識することに基づいて、対向車１０２の種類を特定することができる。また、姿勢推定装置１は、追加で車両を学習することにより、新車が発売された場合でもその新車の種類を特定することができる。
【００６３】
姿勢推定装置１では、特定部１３は画像内に写った複数の対向車１０２の種類を特定し、取得部１４は複数の対向車１０２それぞれのホイールベース及びトレッドを取得し、抽出部１５は複数の対向車１０２それぞれの３つ以上の接地点Ｐを抽出し、算出部１６は、対向車１０２毎に、距離Ｌ、平面Ｍ、及び、なす角θに基づいて、道路１１０から撮像部１１までの高さＨを算出することとしてもよい。
これにより、姿勢推定装置１は、複数の対向車１０２に基づいて道路１１０から撮像部１１までの高さＨを算出するので、得られる高さＨの精度を高くすることができる。
【００６４】
姿勢推定装置１では、算出部１６は、道路１１０から撮像部１１までの高さＨを算出することとして、複数の高さＨのうち最も高いものを道路１１０から撮像部１１までの高さＨとすることとしてもよい。
これにより、姿勢推定装置１は、得られる高さＨの精度を高くすることができる。
【００６５】
姿勢推定装置１では、算出部１６は、道路１１０から撮像部１１までの高さＨを算出することとして、複数の高さＨの相加平均を算出して、相加平均の値を道路１１０から撮像部１１までの高さＨとすることとしてもよい。
これにより、姿勢推定装置１は、得られる高さＨの精度を高くすることができる。
【００６６】
姿勢推定装置１では、特定部１３は画像内に複数の対向車１０２が写る場合、複数の対向車１０２のうち画像内のサイズが最も大きい対向車１０２の種類を特定し、抽出部１５はその対向車１０２に対応する３つ以上の接地点Ｐを抽出することとしてもよい。
これにより、姿勢推定装置１は、抽出される３つ以上の接地点Ｐに基づいて推定される平面Ｍ（三角形）のサイズを大きくすることができるので、その平面Ｍ（三角形）に基づいて算出される道路１１０から撮像部１１までの高さＨの精度を高くすることができる。
【００６７】
また、姿勢推定方法及び姿勢推定プログラムは、上述した姿勢推定装置１と同様の効果を奏する。
【００６８】
なお、上述した実施形態の姿勢推定装置１は、以下の構成を備えてもよい。
すなわち、記憶部１２は、道路地図に関する地図データを記憶することとしてもよい。この場合、記憶部１２に記憶される地図データを参照し、対向車１０２との間の道路上に障害物がない道路区間又は駐車場において画像データが生成された時に、特定部１３は、その画像データに基づいて対向車１０２の種類を特定し、抽出部１５は、対向車１０２の３つ以上の接地点Ｐを抽出してもよい。
具体的には、姿勢推定装置１は、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）等の車両１０１の位置情報を取得する位置情報取得部により、車両１０１の現在位置を取得する。姿勢推定装置１は、取得した位置情報を画像データに記録する。姿勢推定装置１は、画像データに記録される位置情報と、地図データに基づいて、車両１０１が走行する又は駐車する位置（現在位置）に障害物が有るか否かを判断する。ここで、地図データには、中央分離帯等の障害物が存在する道路の情報が記録されている。姿勢推定装置１は、車両１０１の現在位置に障害物が有る場合には、その現在位置において生成された画像データに基づいて道路１１０から撮像部１１までの高さＨは算出しない。一方、姿勢推定装置１は、車両１０１の現在位置に障害物が無い場合には、その現在位置において生成された画像データに基づいて道路１１０から撮像部１１までの高さＨを算出することが可能である。
【００６９】
上述した実施形態では、姿勢推定装置１は、車両として対向車１０２の画像に基づいて、道路１１０から撮像部１１までの高さＨを算出することについて説明した。本発明は、この一例に限定されることはなく、少なくとも３つ以上の接地点Ｐを有する工業製品の画像に基づいて、道路１１０から撮像部１１までの高さＨを算出することとしてもよい。工業製品の一例としては、車いす等である。
【００７０】
上記実施形態では、姿勢推定装置１が撮像部１１、記憶部１２、特定部１３、取得部１４、抽出部１５及び算出を備える例について説明した。これらの各機能部は、集積回路等に形成される論理回路等によって実現されてもよい。図９に例示するように、姿勢推定装置１は、撮像回路１１ａ、記憶回路１２ａ、特定回路１３ａ、取得回路１４ａ、抽出回路１５ａ及び算出回路１６ａを備えてもよい。
【符号の説明】
【００７１】
１  姿勢推定装置
１１  撮像部
１２  記憶部
１３  特定部
１４  取得部
１５  抽出部
１６  算出部
【図１】
2020115094.tif 000003
【図２】
2020115094.tif 000004
【図３】
2020115094.tif 000005
【図４】
2020115094.tif 000006
【図５】
2020115094.tif 000007
【図６】
2020115094.tif 000008
【図７】
2020115094.tif 000009
【図８】
2020115094.tif 000010
【図９】
2020115094.tif 000011