(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-22
(45)【発行日】2024-12-02
(54)【発明の名称】分析装置、移動体および分析方法
(51)【国際特許分類】
G06T 7/70 20170101AFI20241125BHJP
G06T 7/00 20170101ALI20241125BHJP
G08G 1/16 20060101ALI20241125BHJP
【FI】
G06T7/70 A
G06T7/00 650B
G08G1/16 C
(21)【出願番号】P 2021046002
(22)【出願日】2021-03-19
【審査請求日】2023-12-15
(73)【特許権者】
【識別番号】000010098
【氏名又は名称】アルプスアルパイン株式会社
(74)【代理人】
【識別番号】100105784
【氏名又は名称】橘 和之
(74)【代理人】
【識別番号】100098497
【氏名又は名称】片寄 恭三
(74)【代理人】
【識別番号】100099748
【氏名又は名称】佐藤 克志
(74)【代理人】
【識別番号】100103171
【氏名又は名称】雨貝 正彦
(72)【発明者】
【氏名】稲田 大亮
【審査官】山田 辰美
(56)【参考文献】
【文献】特開平11-066493(JP,A)
【文献】特開2019-211850(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
G08G 1/16
(57)【特許請求の範囲】
【請求項1】
移動体に搭載された光学系の距離センサの検出値に基づく三次元データを分析する分析装置であって、
前記三次元データが展開された三次元空間において、前記移動体の像に相当する移動体相当像が、前記移動体相当像が鏡に映る前記移動体の像であったとした場合に前記三次元空間に出現するときの態様である特定態様で出現しているか否か判定し、前記特定態様で出現している場合、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定する分析部を備え、
前記分析部は、前記移動体相当像の位置から前方に延ばした半直線と前記移動体の位置から前方に延ばした半直線とが交点で交わり、かつ、前記交点と前記移動体相当像との離間距離と、前記交点と前記移動体との離間距離とが同じとなるような態様で前記三次元空間に前記移動体相当像が出現している場合に、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定する
ことを特徴とす
る分析装置。
【請求項2】
前記分析部は、前記移動体の位置から前方に延ばした半直線と、前記移動体相当像の位置から前方に延ばした半直線とが前記交点においてなす角の二等分線上に前記鏡が存在すると判定する
ことを特徴とする請求項
1に記載の分析装置。
【請求項3】
前記分析部は、前記移動体の前記距離センサの光軸基点から、前記光軸基点に対向する前記移動体相当像の面に向かって放射状に放射した仮想的な放射空間を前記二等分線により切断した領域に前記鏡が存在すると判定する
ことを特徴とする請求項
2に記載の分析装置。
【請求項4】
前記三次元データにおいて、前記移動体の位置を端点として、水平面に沿って延びる複数の半直線が事前に定義され、
前記半直線のそれぞれについて、前記鏡に映る前記移動体の像が前記半直線上に出現した場合に形成される像に相当するテンプレートデータが事前に用意され、
前記分析部は、前記半直線のそれぞれについて、前記テンプレートデータを利用したテンプレートマッチングを行って、前記テンプレートデータに近似する像が前記半直線上に存在するか否かを判定し、存在する場合、前記テンプレートデータに近似する像の位置から導かれる位置に鏡が存在すると判定する
ことを特徴とする請求項1から
3の何れか1項に記載の分析装置。
【請求項5】
前記分析部は、
所定周期で発生する処理タイミングのそれぞれで前記三次元データを入力し、各処理タイミングにおいて、前記移動体相当像が前記特定態様で出現しているか否かを判定し、
複数回の処理タイミングで連続して前記移動体相当像が前記特定態様で出現していると判定した場合に、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定する
ことを特徴とする請求項1から
4の何れか1項に記載の分析装置。
【請求項6】
前記分析部は、
所定周期で発生する処理タイミングのそれぞれで前記三次元データを入力し、各処理タイミングにおいて、前記移動体相当像が前記特定態様で出現しているか否かを判定し、
前記移動体が移動している状況において、複数回の処理タイミングで連続して前記移動体相当像が前記特定態様で出現していると判定した場合に、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定する
ことを特徴とする請求項1から
5の何れか1項に記載の分析装置。
【請求項7】
前記分析部は、
前記距離センサの検出範囲が撮影されて生成された撮影画像データを入力する一方、
前記移動体相当像が前記特定態様で出現していると判定した場合において、前記鏡に映る前記移動体の画像が前記撮影画像データに含まれているときに、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定する
ことを特徴とする請求項1から
6の何れか1項に記載の分析装置。
【請求項8】
前記分析部は、前記移動体相当像が前記特定態様で出現していると判定した場合において、前記移動体の周辺の物体の像に相当する像が、前記鏡に映る前記物体の像が出現すべき位置に出現しているときに、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定する
ことを特徴とする請求項1から
7の何れか1項に記載の分析装置。
【請求項9】
前記分析部は、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定した場合において、前記移動体の前記距離センサの光軸基点から、前記光軸基点に対向する、前記鏡に映る前記移動体の周辺の物体の像の面に向かって放射状に放射した仮想的な放射空間を、前記鏡の領域の延長線により切断した領域にも、前記鏡が存在すると判定する
ことを特徴とする請求項1から
8の何れか1項に記載の分析装置。
【請求項10】
搭載された光学系の距離センサの検出値に基づく三次元データを分析する移動体であって、
前記三次元データが展開された三次元空間において、前記移動体の像に相当する移動体相当像が、前記移動体相当像が鏡に映る前記移動体の像であったとした場合に前記三次元空間に出現するときの態様である特定態様で出現しているか否か判定し、前記特定態様で出現している場合、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定する分析部を備え
、
前記分析部は、前記移動体相当像の位置から前方に延ばした半直線と前記移動体の位置から前方に延ばした半直線とが交点で交わり、かつ、前記交点と前記移動体相当像との離間距離と、前記交点と前記移動体との離間距離とが同じとなるような態様で前記三次元空間に前記移動体相当像が出現している場合に、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定する
ことを特徴とする移動体。
【請求項11】
移動体に搭載された光学系の距離センサの検出値に基づく三次元データを分析する分析装置による分析方法であって、
前記分析装置の分析部が、前記三次元データが展開された三次元空間において、前記移動体の像に相当する移動体相当像が、前記移動体相当像が鏡に映る前記移動体の像であったとした場合に前記三次元空間に出現するときの態様である特定態様で出現しているか否か判定するステップと、
前記分析装置の前記分析部が、前記移動体相当像が前記特定態様で出現している場合、前記移動体相当像の位置から導かれる位置に前記鏡が存在すると判定するステップと
を含み、
前記特定態様は、前記移動体相当像の位置から前方に延ばした半直線と前記移動体の位置から前方に延ばした半直線とが交点で交わり、かつ、前記交点と前記移動体相当像との離間距離と、前記交点と前記移動体との離間距離とが同じとなるような態様である
ことを特徴とする分析方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分析装置、移動体および分析方法に関し、特に移動体に搭載された光学系の距離センサの検出値に基づく三次元データを分析する分析装置、当該移動体、および、当該分析装置による分析方法に用いて好適なものである。
【背景技術】
【0002】
近年、シニアカー、電動車イス、その他の移動体に関し、以下の移動体が普及してきている。すなわち、光学系の距離センサを搭載し、距離センサの検出値に基づく三次元データを利用して物体(障害物)の位置を検出し、検出した位置を表示、音声、その他の手段でユーザに伝える移動体が普及している。この種の移動体では、物体の位置に関する正しい情報をユーザに伝えるため、物体の位置をできるだけ正確に検出することが求められる。
【0003】
なお特許文献1には、撮影画像を対象としたパターンマッチングによる障害物検出に関し、以下の技術が記載されている。すなわち特許文献1に係る車載用障害物検出装置は、自車両の前方の撮像画像により他車両を障害物の候補として検出し、複数の障害物候補が検出され、しかもそれらが撮像画像上で互いに重なっていた場合に、実空間上でもっと遠方に位置している対象(テクスチャ候補)に光を照射する。そして車載用障害物検出装置は、光の照射中に取得された撮像画像に基づいて、テクスチャ候補が実際にテクスチャであるか否かを判定し、障害物の検出結果の信頼性を判断する。
【0004】
また特許文献2には、撮像画像に基づく物体検出に関し、以下の技術が記載されている。すなわち特許文献2に係る画像処理装置は、遠赤外線カメラが撮像したフレーム画像(撮像画像)において、日光が水溜まりや、金属等で反射した領域である鏡面領域の画素の分布を予め記憶しておく。そして画像処理装置は、予め記憶しておいた鏡面領域の画素の分布に基づいて、フレーム画像(撮像画像)から鏡面領域を検出する。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2005-176031号公報
【文献】特開2013-186818号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述の通り、光学系の距離センサの検出値に基づく三次元データから物体を検出し、その位置をユーザに伝える移動体では、物体の位置をできるだけ正確に検出することが求められる。しかしながら従来の移動体では、物体の位置の検出に関して以下の問題があった。すなわち距離センサによる物体の検出範囲内に、鏡面が距離センサに向かう鏡が存在している場合に、光学系の距離センサに基づく三次元データには、この鏡自体の像が出現しない。このため距離センサによる物体の検出範囲内に鏡が存在している場合に、その鏡の位置を適切に検出できないという問題があった。
【0007】
本発明は、このような問題を解決するために成されたものであり、光学系の距離センサの検出値に基づく三次元データに基づいて、検出範囲内に存在する鏡の位置を検出できるようにすることを目的とする。
【課題を解決するための手段】
【0008】
上記した課題を解決するために、本発明では、三次元データが展開された三次元空間において、移動体の像に相当する移動体相当像が、移動体相当像が鏡に映る移動体の像であったとした場合に三次元空間に出現するときの態様である特定態様で出現しているか否か判定し、特定態様で出現している場合、移動体相当像の位置から導かれる位置に鏡が存在すると判定するようにしている。この構成において、移動体相当像の位置から前方に延ばした半直線と移動体の位置から前方に延ばした半直線とが交点で交わり、かつ、交点と移動体相当像との離間距離と、交点と移動体との離間距離とが同じとなるような態様で三次元空間に移動体相当像が出現している場合に、移動体相当像の位置から導かれる位置に鏡が存在すると判定する。
【発明の効果】
【0009】
距離センサによる物体の検出範囲内に、鏡面が距離センサに向かう鏡が存在している場合、鏡自体が物体として検出されない一方、鏡に映る移動体が物体として距離センサにより検出される。そして距離センサの検出値に基づく三次元データが展開される三次元空間では、鏡に映る移動体の像は、鏡の位置により一意に定まる態様で出現するという特徴がある。以上を踏まえ、上記のように構成した本発明によれば、移動体の像に相当する移動体相当像が、移動体相当像が鏡に映る移動体の像であったとした場合に三次元空間に出現するときの態様で出現している場合に、移動体相当像の位置から導かれる位置に鏡が存在すると判定するため、上記特徴を好適に利用して、検出範囲内に鏡が存在する場合には、そのことを検出でき、更に鏡の位置を検出できる。
【図面の簡単な説明】
【0010】
【
図1】本発明の一実施形態に係る移動体を横から見た図である。
【
図2】本発明の一実施形態に係る移動体の構成例および分析装置の機能構成例を示すブロック図である。
【
図4】対象現実空間および対象三次元空間の平面図である。
【
図7】特徴J6、J7、J8の説明に利用する図である。
【
図8】特定態様関連処理の説明に利用する図である。
【
図9】移動体(分析装置)の動作例を示すフローチャートである。
【
図10】移動体(分析装置)の動作例を示すフローチャートである。
【
図11】移動体(分析装置)の動作例を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、本発明の一実施形態を図面に基づいて説明する。
図1、は本実施形態に係る移動体1を横から見た図である。
図2は、移動体1の構成例、および、移動体1が備える分析装置2の機能構成例を示すブロック図である。本実施形態に係る移動体1は、シニアカーと呼ばれる、人間が搭乗した状態で歩道を走行可能な自動車である。
【0012】
図1で示すように移動体1には、距離センサ3が搭載される。距離センサ3は、空間を三次元的に測距する光学系の測距センサである。特に本実施形態に係る距離センサ3は、ステレオカメラ方式の測距センサである。以下の説明において、上方とは鉛直方向における上向きを意味し、下方とは鉛直方向における下向きを意味する。また前方とは移動体1が前進する向きを意味し、後方とは移動体1が後進する向きを意味する。また左方とは前方に向かって左向きを意味し、右方とは前方に向かって右向きを意味する。
【0013】
図1で示すように、距離センサ3は、移動体1の前端部に設けられている。距離センサ3は、その光軸4が地面と平行な状態で前方に向かって延びるように移動体1に設けられている。ただし光軸4の向きは、下方に向かって若干、傾いていてもよい。距離センサ3による検出範囲は、その光軸基点5から光軸4に沿って、前方に向かうに従って三次元的に広がるように放射状に広がっている。検出範囲に含まれる現実世界の空間が、距離センサ3による測距の対象となる。以下、検出範囲に含まれ、測距の対象となる現実世界の空間を「対象現実空間SP1」という。
【0014】
本実施形態では、移動体1の動力源のスイッチがオンされると、移動体1の各装置への電力供給が開始され、各装置の電源が自動でオンされる。距離センサ3は、電源がオンされている間(=移動体1が走行する可能性のある間)、所定周期(所定フレームレート)で発生する処理タイミングでステレオカメラにより継続して撮影を実行し、撮影画像データ(検出値)を三次元データ生成装置6に出力する。
【0015】
三次元データ生成装置6は、所定周期(所定フレームレート)で入力する撮影画像データ(距離センサ3のステレオカメラの撮影結果に基づくデータ)について、既存の技術に基づくマッチングを行い、三次元データを生成する。本実施形態において三次元データは、距離センサ3により距離が測定された画素が三次元直交座標系に配置された点群データである。換言すれば、三次元データは、三次元直交座標系において距離が測定された各画素の座標を保持する点群データである。三次元データでは、対象現実空間SP1内の各物体の表面(距離センサ3のステレオカメラにより観測される表面)が三次元直交座標系における点の集合として表現される。
【0016】
図3に三次元データの一例を示す。
図3で示すように本実施形態では、三次元データが展開される三次元直交座標系において、鉛直方向に延びる軸をZ軸とし、Z軸に直交し左右方向に延びる軸をX軸とし、Z軸およびX軸に直交し前後方向に延びる軸をY軸とする。以下の説明では、三次元直交座標系により定義される空間において、対象現実空間SP1に対応する空間(=三次元データが展開される空間)を特に「対象三次元空間SP2」と表現する。対象三次元空間SP2は、対象現実空間SP1を三次元直交座標系で定義される仮想的な空間へと置換したものと言うことができる。対象三次元空間SP2は、特許請求の範囲の「三次元空間」に相当する。
【0017】
三次元データ生成装置6は、所定周期で発生する各処理タイミングにおいて三次元データを生成し、分析装置2に出力する。
【0018】
図2で示すように分析装置2は、機能構成として、分析部10および情報提供部11を備えている。上記各機能ブロック10、11は、ハードウェア、DSP(Digital Signal Processor)、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック10、11は、実際にはコンピュータのCPU、RAM、ROMなどを備えて構成され、RAMやROM、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。また分析装置2は、記憶手段として、記憶部12を備えている。
【0019】
分析装置2は、三次元データ生成装置6が生成する三次元データを分析し、対象現実空間SP1内に存在する物体(障害物)を検出する機能を有する。ここで三次元データに基づく物体の検出は従来から行われているものの、従来の物体の検出は以下の点で問題があった。すなわち対象現実空間SP1(距離センサ3による物体の検出範囲)内に、鏡面が距離センサ3に向かう鏡7が存在している場合に、三次元データには、この鏡7自体の像が出現しない。このため対象現実空間SP1内に鏡7が存在している場合に、その鏡7の位置を適切に検出できないという問題があった。
【0020】
一方、本実施形態に係る分析装置2は、以下の処理を実行することにより、対象現実空間SP1内に、鏡面が距離センサ3に向かう鏡7が存在している場合に、その鏡7の位置を検出する。以下、分析装置2の動作について詳述する。ただし以下の説明では、鏡7以外の物体の検出(および付随する処理)は、従来の方法により適切に行われるものとして、これに関する詳細な説明は省略する。
【0021】
以下の説明において、単に「鏡7」と表現する場合、特に説明がない限り、対象現実空間SP1内に位置し、鏡面が距離センサ3に向かう鏡7を指しているものとする。
【0022】
まず分析装置2の動作の説明に先立って、対象現実空間SP1内に鏡7が位置しているときの移動体1と虚像8(後述)との関係についての特徴について説明する。
【0023】
図4の各図は、対象現実空間SP1および対象三次元空間SP2を上から見た平面図である。以下では説明の便宜のため、対象現実空間SP1と対象三次元空間SP2とを区別せずに同等の空間として捉え、説明を行う場合がある。例えば、対象三次元空間SP2に移動体1が存在するものとみなして、説明を行う場合がある。また以下の説明では、対象現実空間SP1および対象三次元空間SP2において、鉛直方向と交わる面を単に「水平面」という。対象現実空間SP1では水平面は地面に水平な面であり、対象三次元空間SP2では水平面は、XY平面である。
【0024】
また以下の説明では、光軸基点5を始点として、前方(移動体1が前進する向き)に延びる半直線を「光軸半直線9」という。上述したように、対象現実空間SP1および対象三次元空間SP2は、距離センサ3の光軸基点5から光軸半直線9に沿って放射状に広がる空間である。また鏡7は、水平面に対して垂直に起立しているものとする。
【0025】
今、対象現実空間SP1に鏡7があり、距離センサ3から見てこの鏡7に移動体1が映っているとする。この状態の場合、距離センサ3により鏡7は検出されない。つまり、鏡7は、距離センサ3により距離が測定されず、三次元データにおいて像が形成されない。一方で、鏡7に映る移動体1は距離センサ3により検出される。つまり鏡7に映る移動体1は、距離センサ3により距離が測定され、三次元データにおいて像が形成される。そして対象三次元空間SP2において、鏡7に映る移動体1の像は、鏡7の鏡面に対して移動体1と対称な位置に形成される。
【0026】
以下、三次元データにおける「鏡7に映る移動体1」の像のことを「虚像8」という。また虚像8において光軸基点5に対応する点を「虚光軸基点5’」という。また虚光軸基点5’を始点として、虚像8の前方に延びる半直線を「虚光軸半直線9’」という。なお三次元データにおいては、虚像8は、距離センサ3により観測された、鏡7に映った移動体1の表面の像として出現する。また、三次元データの像とは、三次元データ中に形成された画素群(点群)を意味する。
【0027】
例えば移動体1と鏡7との位置関係が
図4(A)で示す関係であるとする。
図4(A)では鏡7は、光軸半直線9上で、鏡面が光軸半直線9に垂直となる(鏡面が移動体1に対向する)位置に位置している。このような状況の場合、対象三次元空間SP2において、虚像8は、鏡7の面に対して移動体1と対称な位置P-4Aに形成される。このとき移動体1に係る光軸半直線9と、虚像8に係る虚光軸半直線9’とは交点C-4Aで交わる。そして、移動体1の光軸基点5と交点Cとの距離D-4A1(離間距離)と、虚像8の虚光軸基点5’と交点C-4Aとの離間距離D-4A2とは等しい。
【0028】
以上より、
図4(A)の状態の場合、交点C-4Aを中心として、移動体1の光軸基点5および虚像8の虚光軸基点5’をそれぞれ通り、半径が「移動体1の光軸基点5と交点C-4Aとの離間距離D-4A1」(=「虚像8の虚光軸基点5’と交点C-4Aとの離間距離D-4A2」)である仮想的な円E-4Aを描くことができる。
【0029】
なお上述したように虚像8は、三次元データにおいて、実際には、距離センサ3により測距された、鏡7に映る移動体1の表面の画素群(点群)として形成される。従って、
図4(A)の状態では、移動体1の光軸基点5から虚像8に向かう放射状の(仮想的な)放射空間F-4Aにおいて、光軸基点5に対向し、距離センサ3から(仮想的に)観測される部位G-4Aの像が虚像8として三次元データに形成される。
【0030】
また例えば、移動体1と鏡7との位置関係が
図4(B)で示す関係であるとする。
図4(B)では、鏡7は、水平面上で、光軸基点5を中心として、光軸半直線9から30°程度、反時計回りに傾いた半直線である回転半直線H-4B上で、鏡面が回転半直線H-4Bに垂直となる(鏡面が移動体1に対向する)位置に位置している。このような状態の場合、対象三次元空間SP2において、虚像8は、鏡7の面に対して移動体1と対称な位置P-4Bに形成される。このとき移動体1に係る光軸半直線9と、虚像8に係る虚光軸半直線9’とは交点C-4Bで交わる。そして、移動体1の光軸基点5と交点C-4Bとの離間距離D-4B1と、虚像8の虚光軸基点5’と交点Cとの離間距離D-4B2とは等しい。
【0031】
以上より、
図4(B)の状態の場合、交点C-4Bを中心として、移動体1の光軸基点5および虚像8の虚光軸基点5’をそれぞれ通り、半径が「移動体1の光軸基点5と交点C-4Bとの離間距離D-4B1」(=「虚像8の虚光軸基点5’と交点C-4Bとの離間距離D-4B2」)である仮想的な円E-4Bを描くことができる。なお
図4(B)の状態では、移動体1の光軸基点5から虚像8に向かう放射状の(仮想的な)放射空間F-4Bにおいて、光軸基点5に対向し、距離センサ3から(仮想的に)観測される部位G-4Bの像が虚像8として三次元データに形成される。
【0032】
以上より対象現実空間SP1内に鏡7が存在している場合において、この鏡7に起因して三次元データに虚像8が形成されている場合、移動体1と虚像8との関係には以下の特徴があることが分かる。
特徴J1:移動体1に係る光軸半直線9と、虚像8に係る虚光軸半直線9’とは一つの交点Cで交わる。
特徴J2:「移動体1に係る光軸基点5と交点Cとの離間距離」と、「虚像8に係る虚光軸基点5’と交点Cとの離間距離」とは等しい。
【0033】
特徴J1および特徴J2を踏まえると、
図5(A)の像A-5Aは、虚像8ではない。つまり
図5(A)の像A-5Aは、鏡7に映る移動体1の像ではない。特徴J1を満たしていないからである。
図5(B)の像A-5Bも同様の理由で虚像8ではない。また
図5(C)の像A-5Cも、虚像8ではない。特徴J1を満たすものの特徴J2を満たしていないからである。
【0034】
更に移動体1と虚像8との関係には以下の特徴がある。
特徴J3:移動体1の光軸基点5および虚像8の虚光軸基点5’の双方は、交点Cを中心とする共通の円を通る。なお「交点Cを中心とする共通の円」は、「光軸半直線9上の点を中心とし、中心から光軸基点5までの距離或いは中心から虚光軸基点5’までの距離を半径とする円」と言い換えることができる。
特徴J4:光軸基点5を中心として、光軸半直線9から任意の角度だけ水平面に沿って回転させた半直線である回転半直線H上に虚光軸基点5’が位置する虚像8のそれぞれは、虚光軸半直線9’が回転半直線Hに対して同じ角度だけ傾いている。
【0035】
図6は、特徴J3および特徴J4の説明に利用する図である。
図6の全ての像は虚像8である。例えば虚像8-61に着目し、この虚像8-61の虚光軸基点5’-61および移動体1の光軸基点5は共に、交点C-61を中心とする円E-61を通っており、特徴J3を満たしている。他の虚像8についても同様に特徴J3を満たしていることが分かる。
【0036】
また
図6の回転半直線H-61に着目する。回転半直線H-61上に虚光軸基点5’が位置する虚像8-61、8-62、8-63のそれぞれは、虚光軸半直線9’が回転半直線H-61に対して同じ角度(θ1)だけ傾いており、特徴J4を満たしている。同様に回転半直線H-62(光軸半直線9と同じ半直線)に虚光軸基点5’が位置する虚像8-64、8-65、8-66のそれぞれは、虚光軸半直線9’が回転半直線H-62に対して同じ角度(0°)だけ傾いており、特徴J4を満たしている。また回転半直線H-63上に虚光軸基点5’が位置する虚像8-67、8-68、8-69のそれぞれは、虚光軸半直線9’が回転半直線H-63に対して同じ角度(θ2)だけ傾いており、特徴J4を満たしている。
【0037】
以下の説明では、ある虚像8について、回転半直線H上に虚光軸基点5’が位置することを単に「虚像8が回転半直線H上に位置する」のように表現する。回転半直線Hの一種である走査半直線I(後述)についても同様に表現する。
【0038】
更に特徴J4により、以下の特徴が導かれる。
特徴J5:ある1つの回転半直線H上の別の位置に出現する虚像8は、(理想的には)同じ態様の画素群(点群)の像として三次元データに出現する。
これは以下の理由による。すなわち、共通する回転半直線H上に位置する虚像8のそれぞれは、虚光軸半直線9’が回転半直線Hに対して同じ角度だけ傾いている(特徴J4)。つまり、共通する回転半直線H上に位置する虚像8のそれぞれは、同じ角度だけ傾いた状態で距離センサ3により観測された共通する物体(=移動体1)の像である。換言すれば、共通する回転半直線H上に位置する虚像8のそれぞれは、鏡7に同じ角度だけ傾いた状態で映る移動体1が距離センサ3により観測されることにより出現した像である。以上により、特徴J5が成立する。
【0039】
更に移動体1と虚像8との関係には以下の特徴がある。
特徴J6:鏡7は、移動体1に係る光軸半直線9と、虚像8に係る虚光軸半直線9’との交点Cにおいてこれら半直線がなす角の二等分線J上に存在する。
特徴J7:鏡7は、「移動体1に係る光軸基点5と虚像8に係る虚光軸基点5’とを結ぶ接続線分K」と、二等分線Jとの交差点Lを通る。
特徴J8:鏡7は、移動体1に係る光軸基点5から、光軸基点5に対向する虚像8の面に向かって放射状に放射した(仮想的な)放射空間Fを二等分線Jにより切断した最小領域Mを“少なくとも”含む。
【0040】
図7は、特徴J6~J8の説明に利用する図である。
図7の虚像8-71に着目する。
図7において鏡7-71は、三次元データに虚像8-71が形成される原因となった鏡7(或いは鏡7の一部)である。鏡7-71は、移動体1に係る光軸半直線9と、虚像8-71に係る虚光軸半直線9’との交点C-71においてこれら直線がなす角の二等分線J-71上に位置している。従って特徴J6を満たしている。更に鏡7-71は、移動体1に係る光軸基点5と虚像8-71に係る虚光軸基点5’とを結ぶ接続線分K-71と、二等分線J-71との交差点L-71を通っている。従って特徴J7を満たしている。更に鏡7-71は、移動体1に係る光軸基点5から、光軸基点5に対向する虚像8の面に向かって放射状に放射した放射空間F-71を二等分線J-71により切断した最小領域M-71(太線で示す領域)を含んでいる。従って特徴J8を満たしている。
【0041】
また
図7の虚像8-72に着目する。鏡7-72は、三次元データに虚像8-72が形成される原因となった鏡7(或いは鏡7の一部)である。鏡7-72は、移動体1に係る光軸半直線9と、虚像8-72に係る虚光軸半直線9’との交点C-72においてこれら直線がなす角の二等分線J-72上に位置している。従って特徴J6を満たしている。更に鏡7-72は、移動体1に係る光軸基点5と虚像8に係る虚光軸基点5’とを結ぶ接続線分K-72と、二等分線J-72との交差点L-72を通っている。従って特徴J7を満たしている。更に鏡7-72は、移動体1に係る光軸基点5から、光軸基点5に対向する虚像8-72の面に向かって放射状に放射した放射空間F-72を二等分線J-72により切断した最小領域M-72(太線で示す領域)を含んでいる。従って特徴J8を満たしている。
【0042】
移動体1と虚像8との関係には以上の特徴J1~J8がある。本実施形態に係る移動体1および分析装置2は、特徴J1~J8を好適に活用して、鏡7の有無の判定と、鏡7の位置の検出を行う。以下、詳述する。
【0043】
分析部10は、三次元データ生成装置6から所定周期(所定フレームレート)で三次元データを入力する。分析部10は、三次元データを入力する度に以下の処理を実行する。
【0044】
まず分析部10は、特定態様関連処理を実行する。
図8は、特定態様関連処理の説明に利用する図である。
図8で示すように本実施形態では、対象三次元空間SP2内に均等に分散された複数の回転半直線H(光軸基点5を中心として光軸半直線9を水平面に沿って回転させた半直線)が事前に定義されている。以下、事前に定義された複数の回転半直線Hを「走査半直線I」という。後に明らかとなるように処理負荷や処理時間を考慮しないのであれば、定義される走査半直線の個数は多い方がよいが、
図8の例では説明の単純化のため、5本の走査半直線Iが定義されている。なお回転半直線Hは、特許請求の範囲の「移動体1の位置を端点として、水平面に沿って延びる半直線」に相当する。
【0045】
また本実施形態では、走査半直線Iのそれぞれについて、複数の検証ポイントNが定義されている。
図8の例では、1つの走査半直線Iにつき、5つの検証ポイントNが定義されている。
図8で示すように、1つの走査半直線Iについての検証ポイントNは、走査半直線Iの端点である光軸基点5から外側へ向かって、等間隔に配置されている。後に明らかとなるように処理負荷や処理時間を考慮しないのであれば、定義される検証ポイントNの個数は多い方がよいが、
図8の例では説明の単純化のため、1本の走査半直線Iにつき、5つの検証ポイントNが定義されている。
【0046】
特定態様関連処理において、まず分析部10は、複数の走査半直線Iのうち一本の走査半直線Iを処理対象の走査半直線Iとして決定する。次いで分析部10は、記憶部12から、処理対象の走査半直線Iに対応するテンプレートデータを取得する。
【0047】
ある走査半直線Iに対応するテンプレートデータは、その走査半直線I上に虚像8(鏡7に映る移動体1の像)が形成されたときの、その虚像8を構成する画素群(点群)とされている。特徴J5により、共通する走査半直線I上に形成される異なる虚像8は、理想的には、同じ態様の画素群として三次元データに出現する。例えば
図8の検証ポイントN-81、N-82、N-83、N-84、N-85は、共通する走査半直線I-81上の5つの検証ポイントNである。そして検証ポイントN-81、N-82、N-83、N-84、N-85のそれぞれについて、各検証ポイントNに虚像8が形成された場合の、その虚像8を構成する画素群(点群)の態様は、検証ポイントNによって相違はない。以上を踏まえ本実施形態では、走査半直線I毎にテンプレートデータが導出されている。そして走査半直線I毎のテンプレートデータが記憶部12に記憶されている。
【0048】
テンプレートデータを取得した後、分析部10は、処理対象の走査半直線I上に定義された検証ポイントNのうち、1つの検証ポイントNを処理対象の検証ポイントNとして決定する。次いで分析部10は、処理対象の検証ポイントNを中心とする一定範囲の画素群(点群)と、テンプレートデータとの相違度を導出する。相違度とは、比較された2つの画素群が相違する度合いを示す値であり、相違の度合いが大きいほど、大きな値となる。相違度の導出には、SSD(Sum of Squared Difference)や、SAD(Sum of Absolute Difference)を利用することができる(ただし、SSDやSADを利用する方法に限られない)。次いで分析部10は、導出した相違度が予め定められた閾値を下回るか否かを判定する。以下、検証ポイントNを中心とする一定範囲の画素群(点群)のことを「比較対象画素群」という。
【0049】
閾値は、相違度がこの閾値を下回っている場合、テンプレートデータが示す画素群(点群)と、比較対象画素群とが近似している(当然、一致していてもよい)と判断することができるような値に設定されている。閾値は、ノイズや、測定誤差、欠測等に起因して三次元データに発生し得る欠陥や、走査半直線Iの個数(密度)、1つの走査半直線Iにおける検証ポイントNの個数(密度)等を考慮して、事前の実験やシミュレーションに基づいて定められる。
【0050】
ここで、ある走査半直線Iのある検証ポイントNにおいて、テンプレートデータと比較対象画素群とが近似している状態について考える。ある走査半直線Iに対応するテンプレートデータは、その走査半直線I上に虚像8(鏡7に映る移動体1の像)が形成されたときの、その虚像8を構成する画素群(点群)とされている。従って、ある走査半直線Iのある検証ポイントNにおいて、その走査半直線Iに対応するテンプレートデータと比較対象画素群とが近似しているということは、その検証ポイントNに、特徴J1および特徴J2を満たす態様で、移動体1の像に相当する像が出現しているということである。以下、三次元データに出現する、移動体1の像に相当する像のことを「移動体相当像」と言う場合がある。
【0051】
以下、特徴J1および特徴J2を満たす態様を「特定態様」という。上述の通り、特徴J1は「移動体1に係る光軸半直線9と、虚像8に係る虚光軸半直線9’とは一つの交点Cで交わる」というものであり、特徴J2は「移動体1に係る光軸基点5と交点Cとの離間距離と、虚像8に係る虚光軸基点5’と交点Cとの離間距離とは等しい」というものである。特定態様をより一般化して言うと、「鏡7に映る移動体1が距離センサ3により検出されているときに、移動体1の像に相当する像が三次元空間(三次元データ)に出現するときの態様」と言うことができる。
【0052】
さて分析部10は、処理対象の検証ポイントNについて導出した比較対象画素群とテンプレートデータとの相違度が閾値を下回っている場合、移動体相当像が特定態様で出現していると判定する。この場合、分析部10は、特定態様関連処理を終了し、続く鏡有無判定処理(後述)を実行する。以下、比較対象画素群とテンプレートデータとの相違度が閾値を下回っていると判定された検証ポイントNのことを特に「特定検証ポイント」という。
【0053】
一方、相違度が閾値以上の場合、分析部10は、処理対象の走査半直線Iにおいて、未だ処理対象としていない検証ポイントNがある場合には、その検証ポイントNを処理対象として、テンプレートマッチングによる相違度の導出および導出した相違度と閾値との比較(以下、単に「テンプレートマッチング」という)を実行する。テンプレートマッチングにおいて、比較対象画素群とテンプレートデータとの相違度が閾値を下回っている場合には分析部10は、移動体相当像が特定態様で出現していると判定し、特定態様関連処理を終了する。処理対象の走査半直線Iにおいて全ての検証ポイントNを処理対象とした場合、分析部10は、未だ処理対象としていない走査半直線Iの何れかを処理対象として、検証ポイントNのそれぞれについて、テンプレートマッチングを実行する。
【0054】
以上のようにして、分析部10は、検証ポイントNを順番に処理対象としていって、テンプレートマッチングを実行する。分析部10は、ある検証ポイントNにおいて、相違度が閾値を下回っていると判定した場合には、移動体相当像が特定態様で出現していると判定し、その段階で特定態様関連処理を終了する。一方、分析部10は、定義された全ての検証ポイントNにおいて、相違度が閾値以上であると判定した場合には、移動体相当像が特定態様で出現していないと判定し、特定態様関連処理を終了する。この場合、分析部10は、以下の処理を実行せず、次の処理タイミングで三次元データを入力するまで待機する。
【0055】
以下、特定態様関連処理において、何れかの検証ポイントNにおいて比較対象画素群とテンプレートデータとの相違度が閾値を下回っていると判定されたことを「出現判定」という。出現判定は、特定態様関連処理において、移動体相当像が特定態様で出現していると分析部10が判定したこと、と言うこともできる。
【0056】
なお特定態様関連処理は、移動体相当像が特定態様で出現しているかどうかを判定する処理であり、判定結果の精度を高めるという観点からは、走査半直線Iの個数は多いほど(密度が高いほど)よく、1つの走査半直線Iにおける検証ポイントNの個数は多いほど(密度が高いほど)よいと言える。しかしながら、走査半直線Iの個数が多いほど、また、検証ポイントNの個数が多いほど、処理負荷が高くなり、処理に要する時間が長くなる。このため、走査半直線Iの個数(密度)および検証ポイントNの個数(密度)は、CPU等の処理装置、RAM等の一次記憶領域の容量等のスペックを考慮して、判定結果の精度をできるだけ高めるという観点から定められる。また、相違度と比較される閾値や、相違度を導出するアルゴリズム等も、走査半直線Iの個数(密度)および検証ポイントNの個数(密度)に応じて適切に調整される(逆に、閾値やアルゴリズムによって走査半直線Iの個数や検証ポイントNの個数を調整しても当然、よい)。
【0057】
特定態様関連処理において、移動体相当像が特定態様で出現していると判定した場合、分析部10は、鏡有無判定処理を実行する。この鏡有無判定処理において分析部10は、過去3回の処理タイミングで連続して、特定検証ポイント或いは特定検証ポイントに近接する検証ポイントNについて出現判定を行ったかどうかを判定する。特定検証ポイント或いは特定検証ポイントに近接する検証ポイントNについての出現判定を過去3回の処理タイミングで連続して行っている場合、分析部10は、移動体相当像の位置から導かれる位置に鏡7が存在すると判定する。この場合、分析部10は、続く鏡位置検出処理を実行する。一方、そうではない場合、分析部10は、鏡位置検出処理を実行することなく、次の処理タイミングで三次元データを入力するまで待機する。
【0058】
鏡有無判定処理は以下のことを目的としている。すなわち、ある1回の特定態様関連処理において、ある検証ポイントNについて出現判定がなされた場合、ノイズや、測定誤差、欠測等に影響を受けて三次元データに何らかの欠陥が生じており、これに起因して本来、閾値を下回るべきではないのに、偶然、相違度が閾値を下回ると判定された可能性がゼロではない。以上を踏まえ、上記処理は、3回連続して共通する検証ポイントN或いは近接する検証ポイントNで相違度が閾値を下回ると判定されたことをもって、鏡7が存在すると判定する。これにより、偶然、相違度が閾値を下回ると判定されてしまったことをもって、即、鏡7が存在すると判断されてしまうことをできるだけ排除している。
【0059】
なお連続回数を「3回」としたのはあくまで一例であり、他の回数であってもよい。
【0060】
鏡有無判定処理において、移動体相当像の位置から導かれる領域に鏡7が存在すると判定した場合、分析部10は、鏡位置検出処理を実行する。以下、鏡位置検出処理について説明する。
【0061】
ここでより、対象三次元空間SP2における虚像8の位置が定まると、特徴領域J6~J8により鏡7の位置は一意に定まる。例えば
図7を参照し、対象三次元空間SP2に虚像8-71が出現している場合には、鏡7の位置は
図7で示す鏡7-71の位置に定まり、また対象三次元空間SP2に虚像8-72が出現している場合には、鏡7の位置は
図7で示す鏡7-72の位置に定まる。
【0062】
以上を踏まえ、本実施形態では検証ポイントN毎に、鏡7の位置が特徴J8を踏まえて事前に求められている。本実施形態において、鏡7の位置は、最小領域M、交差点Lおよび至鏡距離Oの3つとされている。
【0063】
上述したように、ある検証ポイントNについての鏡7の最小領域Mとは、移動体1の距離センサ3の光軸基点5から、光軸基点5に対向する「その検証ポイントNに位置する移動体相当像の面」に向かって放射状に放射した仮想的な放射空間Fを二等分線Jにより切断した領域である。例えば
図7において、虚像8-71が位置する位置P-71が検証ポイントNであったとすると、この位置P-71に係る検証ポイントNについての最小領域Mは、最小領域M-71である。本実施形態では、鏡7の最小領域Mは、三次元直交座標系のXY平面における一方の端部のXY座標と、他方の端部のXY座標とによって表される。例えば
図7の鏡7の最小領域Mは、一方の端部のXY座標と、他方の端部のXY座標とによって表される。
【0064】
更に本実施形態では、検証ポイントN毎に、交差点Lが特徴J7を踏まえて事前に求められている。上述したように、ある検証ポイントNについての交差点Lとは、「移動体1に係る光軸基点5と“その検証ポイントNに位置する移動体相当像に係る虚光軸基点5’”とを結ぶ接続線分K」と、二等分線Jとが交わる点である。例えば
図7において、位置P-71が検証ポイントNであったとすると、この位置P-71に係る検証ポイントNについての交差点Lは、交差点L-71である。本実施形態では、鏡7の交差点Lは、三次元直交座標系のXY平面におけるXY座標によって表される。
【0065】
更に本実施形態では、検証ポイントN毎に、至鏡距離Oが事前に求められている。ある検証ポイントNについての至鏡距離Oとは、移動体1の位置(本実施形態では光軸基点5の位置)から、その検証ポイントNに対応する鏡7の交差点Lまでの距離のことである。例えば
図7において、位置P-71が検証ポイントNであったとすると、この位置P-71に係る検証ポイントNについての至鏡距離Oは、光軸基点5から交差点L71までの距離である。
【0066】
なお、ある鏡7についての最小領域M、交差点Lおよび至鏡距離Oは、その鏡7に対応する移動体相当像(虚像8と推定される像)の位置から、移動体1と虚像8との関係についての特徴を通して導かれるものである。
【0067】
本実施形態では、記憶部12に鏡領域テーブルが記憶されている。この鏡領域テーブルは、検証ポイントN毎にレコードを有し、各レコードにおいて検証ポイントNの識別情報と、鏡7の最小領域Mを示す情報(以下「最小領域情報」という)と、鏡7の交差点Lを示す情報(以下「交差点情報」という)と、鏡7の至鏡距離O(以下「至鏡距離情報」という)とが対応付けられている。
【0068】
分析部10は、記憶部12に記憶された鏡領域テーブルを参照し、特定検証ポイントに対応するレコードを特定する。次いで分析部10は、特定したレコードから最小領域情報と交差点情報と至鏡距離情報とを取得する。最小領域情報と交差点情報と至鏡距離情報とを取得する処理は、分析部10が、鏡7の位置を検出する処理に相当する。なお分析部10が、鏡領域テーブルを利用して最小領域情報と交差点情報と至鏡距離情報とを取得するのではなく、都度、計算を行って、最小領域情報と交差点情報と至鏡距離情報とを導出する構成でもよい。
【0069】
最小領域情報と交差点情報と至鏡距離情報とを取得した後、分析部10は、鏡位置検出処理を終了する。この鏡位置検出処理において、分析部10は、移動体1の位置から前方に延ばした半直線と、移動体相当像の位置から前方に延ばした半直線とが交点Cにおいてなす角の二等分線上の領域に鏡7が存在すると判定している。更に分析部10は、移動体1の距離センサ3の光軸基点5から、光軸基点5に対向する移動体相当像の面に向かって放射状に放射した仮想的な放射空間Fを二等分線により切断した領域に鏡7が存在すると判定している。
【0070】
なお鏡位置検出処理では、分析部10は、相違度が閾値を下回った比較対象画素群(移動体相当像)を、虚像8とみなしている。つまり分析部10は、相違度が閾値を下回った比較対象画素群を、鏡7に映る移動体1の像であるとみなしている。ここでノイズ等の影響により、移動体1の像に相当する像が偶然、特定態様で出現する(=特徴J1および特徴J2を満たす態様で出現する)ことはゼロではないものの極めて稀と言える。また、現実世界において偶然、移動体1と同じ外観の別の移動体が、特定態様に準じた態様で存在している場合、三次元データ中に移動体1の像に相当する像が特定態様で出現することになるが、これも極めて稀と言える。従って、相違度が閾値を下回った比較対象画素群を虚像8とみなすことについて、強い整合性と妥当性があると言える。
【0071】
鏡位置検出処理を実行した後、分析部10は、ログ記入処理を実行する。ログ記入処理において、分析部10は、現時点の日時を示す情報と、鏡位置検出処理で取得した最小領域情報、交差点情報および至鏡距離情報との組み合わせを、記憶部12に記憶されたログに記述する。分析部10は、ログへの記述後、ログ記入処理を終了し、次の処理タイミングで三次元データを入力するまで待機する。
【0072】
情報提供部11は、分析部10の分析結果が記述されたログの内容を監視し、適宜、鏡7の位置に関する情報をユーザに提供する。以下、情報提供部11の処理の例について複数、説明する。
【0073】
例えば情報提供部11は、以下の処理を実行する。すなわち「5メートル」、「3メートル」、「1メートル」、「30センチ」というように距離閾値が事前に定められる。そして情報提供部11は、ログの至鏡距離情報を参照し、至鏡距離Oが何れかの閾値を下回った鏡7が出現したか否かを監視する。このような鏡7が出現した場合、情報提供部11は、ログの交差点情報を参照し、その鏡7の交差点Lが移動体1に対して、前方に存在するのか、右斜め前の向きに存在するのか、左斜め前の向きに存在するのかを検出する。次いで情報提供部11は、その鏡7についての至鏡距離Oと、その鏡7が存在する向きとを音声処理装置(不図示)に音声出力させる。
【0074】
例えば、情報提供部11は、ある鏡7の至鏡距離Oが5メートル以上の状態から、5メートル以下となったタイミングで、「右斜め前、5メートルに鏡7があります。ご注意下さい。」という文言の音声を音声処理装置に出力させる。その鏡7が近づいてきて、至鏡距離Oが3メートルや1メートル、30センチとなった場合、情報提供部11は、各タイミングで、その鏡7についての至鏡距離Oと、その鏡7が存在する向きとを音声処理装置(不図示)に音声出力させる。
【0075】
また例えば、情報提供部11は、以下の処理を実行する。すなわち情報提供部11は、移動体1に設けられた表示装置(不図示)に、ログの最小領域情報に基づいて、最小領域情報が示す最小領域を継続して表示する。例えば、情報提供部11は、移動体1を中心とする簡易的な平面図に、最小領域情報が示す最小領域を明示する。
【0076】
次に移動体1および分析装置2の動作例を示すフローチャートを用いて、本実施形態に係る分析方法について説明する。
図9は、移動体1および分析装置2の要部の動作を示すフローチャートである。
図9で示すように移動体1が備える分析装置2の分析部10は、三次元データが展開された三次元空間において、移動体1の像に相当する移動体相当像が、移動体相当像が鏡に映る移動体の像であったとした場合に三次元空間に出現するときの態様である特定態様で出現しているか否か判定する(ステップSA1)。次いで分析部10は、特定態様で出現している場合、移動体相当像の位置から導かれる位置に鏡が存在すると判定する(ステップSA2)。
【0077】
図10は、移動体1および分析装置2の動作例を詳細に示すフローチャートである。特に
図10のフローチャートは、各処理タイミングにおいて分析部10が実行する処理を示している。
【0078】
図10で示すように、分析部10は、特定態様関連処理を実行する(ステップSB1)。
図11は、特定態様関連処理の詳細を示すフローチャートである。
図11で示すように、分析部10は、複数の走査半直線Iのうち一本の走査半直線Iを処理対象の走査半直線Iとして決定する(ステップSC1)。次いで分析部10は、記憶部12から、処理対象の走査半直線Iに対応するテンプレートデータを取得する(ステップSC2)。
【0079】
次いで分析部10は、処理対象の走査半直線I上に定義された検証ポイントNのうち、1つの検証ポイントNを処理対象の検証ポイントNとして決定する(ステップSC3)。次いで分析部10は、比較対象画素群とテンプレートデータとの相違度を導出する(ステップSC4)。次いで分析部10は、ステップSC4で導出した相違度が閾値を下回っているかどうかを判定する(ステップSC5)。
【0080】
相違度が閾値を下回っている場合(ステップSC5:YES)、分析部10は、移動体相当像が特定態様で出現していると判定し(ステップSC6)、特定態様関連処理を終了する。一方、相違度が閾値を下回っていない場合(ステップSC5:NO)、分析部10は、処理対象の走査半直線Iにおいて、未だ処理対象としていない検証ポイントNが存在しているか否かを判定する(ステップSC7)。存在している場合(ステップSC7:YES)、分析部10は、処理手順をステップSC3へ戻す。
【0081】
一方、存在していない場合(ステップSC7:NO)、分析部10は、未だ処理対象としていない走査半直線Iが存在しているか否かを判定する(ステップSC8)。存在している場合(ステップSC8:YES)、分析部10は、処理手順をステップSC1へ戻す。一方、存在していない場合(ステップSC8:NO)、分析部10は、移動体相当像が特定態様で出現していないと判定し(ステップSC9)、特定態様関連処理を終了する。この場合、分析部10は、以下の処理を実行せず、次の処理タイミングで三次元データを入力するまで待機する。
【0082】
図10を参照し、分析部10は、特定態様関連処理の実行後、鏡有無判定処理を実行する(ステップSB2)。鏡有無判定処理では、分析部10は、過去3回の処理タイミングで連続して、共通する検証ポイントN或いは近接する検証ポイントNで相違度が閾値を下回り、移動体相当像が特定態様で出現しているとの判定を行ったかどうかを判定する。このような判定を過去3回の処理タイミングで連続して行っている場合、分析部10は、移動体相当像の位置から導かれる領域に鏡7が存在すると判定する。この場合、分析部10は、続く鏡位置検出処理を実行する。一方、そうではない場合、分析部10は、鏡位置検出処理を実行することなく、次の処理タイミングで三次元データを入力するまで待機する。
【0083】
次いで分析部10は、鏡位置検出処理を実行する(ステップSB3)。鏡位置検出処理では、分析部10は、鏡領域テーブルに基づいて、最小領域情報と交差点情報と至鏡距離情報とを取得する。次いで分析部10は、ログ記入処理を実行する(ステップSB4)。このログ記入処理では、分析部10は、現時点の日時を示す情報と、鏡位置検出処理で取得した最小領域情報、交差点情報および至鏡距離情報との組み合わせを、記憶部12に記憶されたログに記述する。
【0084】
以上説明したように本実施形態に係る分析装置2(移動体1)は、三次元データが展開された三次元空間において、移動体1の像に相当する移動体相当像が、移動体相当像が鏡7に映る移動体1の像であったとした場合に三次元空間に出現するときの態様である特定態様で出現しているか否か判定し、特定態様で出現している場合、移動体相当像の位置から導かれる位置に鏡7が存在すると判定する。
【0085】
ここで、距離センサ3による物体の検出範囲内に、鏡面が距離センサに向かう鏡7が存在している場合、鏡7自体が物体として検出されない一方、鏡7に映る移動体1が物体として距離センサ3により検出される。そして距離センサ3の検出値に基づく三次元データが展開される三次元空間では、鏡7に映る移動体1の像は、鏡7の位置により一意に定まる態様で出現するという特徴がある。以上を踏まえ、本実施形態の構成によれば、移動体1の像に相当する移動体相当像が、移動体相当像が鏡7に映る移動体1の像であったとした場合に三次元空間に出現するときの態様で出現している場合に、移動体相当像の位置から導かれる位置に鏡7が存在すると判定するため、上記特徴を好適に利用して、検出範囲内に鏡7が存在する場合には、そのことを検出でき、更に鏡7の位置を検出できる。
【0086】
<第1変形例>
次に上記実施形態の第1変形例について説明する。第1変形例では三次元データ生成装置6は、各処理タイミングにおいて、三次元データに加えて、距離センサ3を構成するステレオカメラから撮影画像データ(二次元画像)を出力する。そして第1変形例に係る分析部10は、鏡有無判定処理において、過去3回の処理タイミングで連続して共通する検証ポイントN或いは近接する検証ポイントNについて出現判定を行っている場合に、すぐに移動体相当像の位置から導かれる位置に鏡7が存在すると判定するのではなく、以下の処理を実行する。
【0087】
すなわち第1変形例に係る分析部10は、撮影画像データを分析し、鏡7に映る移動体1の画像が撮影画像データに含まれているか否かを判定する。当該分析は、撮影画像データに対するノイズの除去や、サイズ/角度の補正(ただし、サイズ/角度の補正はテンプレートデータに対して行ってもよい)を含む前処理が施された上で、既存の技術(例えば、画素値を保持するテンプレートデータを用いたテンプレートマッチングや、チャンファーマッチング、ヒストグラム情報を用いたアクティブ探索)に基づいて適切に実行される。ただしテンプレートデータを用いた処理が行われる場合には、鏡7に映る移動体1の画像として想定される画像(当然、鏡7による左右反転が反映される)に対応するテンプレートデータが十分に用意される。
【0088】
この他、例えば特徴量マッチング、或いは、テンプレートマッチングと特徴量マッチングとの組み合わせを利用して当該分析が行われる構成でもよい。また例えば撮影画像データを入力の1つとし、鏡7に映る移動体1の画像が含まれるか否かを示す値(或いは、含まれる可能性を示す値)を出力とするモデルを用いて行われてもよい。この場合において、モデルを、所定の機械学習手法(例えばディープラーニング)で機械学習されたモデルとすることができる。
【0089】
そして第1変形例に係る分析部10は、撮影画像データの分析の結果、鏡7に映る移動体1の画像が撮影画像データに含まれると判定した場合にのみ、移動体相当像の位置から導かれる領域に鏡7が存在すると判定する。
【0090】
本変形例によれば、以下の効果を奏する。すなわち、対象現実空間SP1内に鏡7が存在し、鏡7に映る移動体1が距離センサ3により観測された場合には、対応する像が三次元データに形成されるだけではなく、対応する画像が撮影画像データに形成される。以上を踏まえ、本変形例によれば、三次元データに対する分析結果だけでなく、撮影画像データに対する分析結果も考慮されて鏡7の有無が判定されるため、当該判定の結果の精度をより向上することができる。
【0091】
なお、撮影画像データの出力元のカメラは、距離センサ3のステレオカメラとは別のカメラであってもよい。また分析部10が、鏡有無判定処理において、連続して3回、出現判定を行ったか否かの判定を行わず、本変形の処理を行う構成でもよい。
【0092】
<第2変形例>
次に第2変形例について説明する。第2変形例に係る分析部10は、鏡有無判定処理において、第1実施形態の処理に代えて以下の処理を実行する。すなわち第2変形例に係る分析部10は、移動体1が移動している状況で連続して所定回数以上、連続性がある検証ポイントNにおいて相違度が閾値を下回ると判定された場合に、鏡7が存在すると最終的に判断する。連続性があるとは、相違度が閾値を下回ると判定された検証ポイントNの位置が近い位置(同じ位置も含む)で連続することをいう。
【0093】
第2変形例によれば以下の効果を奏する。すなわち、ある1回の特定態様関連処理において、移動体相当像が特定態様で出現していると判定された場合であっても、これが誤検出である可能性があることは第1実施形態で述べた通りである。一方、第1実施形態の鏡有無判定処理を実行することにより鏡7が存在するとの判定についての精度を向上できる。しかし、第1実施形態の鏡有無判定処理では、以下の場合に誤検出を排除できない。すなわち、現実世界において偶然、移動体1と同じ外観の別の移動体が、特定態様に準じた態様で存在しており、しかも移動体1とこの別の移動体とが停止している場合に、誤検出を排除できない。このようなケースでは、連続する処理タイミングで、同じ検証ポイントNにおいて相違度が閾値を下回ると判定されることになるからである。
【0094】
一方で、移動体1が移動している状況で連続して所定回数以上、連続性がある検証ポイントNにおいて相違度が閾値を下回ると判定されたということは、移動体1が移動している状況下でも、移動体相当像が特定態様で(換言すれば、特徴J1および特徴J2を満たす態様で)三次元空間に出現しているということである。この場合、移動体相当像は、鏡7に映る移動体1の像だからこそ、移動体1の移動によっては特定態様で出現している状態が崩れないと強く推定され、従って虚像8であると強く推定される。以上を踏まえ、本実施形態によれば、より高い精度で、鏡7が存在するか否かを判定できる。
【0095】
<第3変形例>
次に第3変形例について説明する。第3変形例に係る分析部10は、鏡位置検出処理において、鏡領域テーブルを利用して最小領域情報と交差点情報と至鏡距離情報とを取得した後、以下の処理を実行する。
【0096】
図12は、第3変形例に係る処理の説明に利用する図である。分析部10は、最小領域情報が示す最小領域Mを認識する。
図12の例では分析部10は、最小領域M-12を認識する。次いで分析部10は、三次元データを分析し、距離センサ3から見たときに鏡7に映る範囲に、移動体1以外の物体が存在するか否かを判定する。この範囲は、鏡7の入射角と反射角とが等しいことを利用して求めることができる。
【0097】
物体が存在しない場合、分析部10は、鏡位置検出処理を終了し、続くログ記入処理を実行する。物体が1つ存在する場合、分析部10は、その1つの物体を選択する。複数の物体が存在する場合、分析部10は、所定のルールに従って1つの物体を選択する。所定のルールは例えば、画素群(点群)の鮮明度が高い方を優先するというルールや、鏡7からの距離が近い方を優先するというルールである。
図12の例では、符号Q-12が示す物体が、分析部10により選択された物体であるものとする。以下、分析部10により選択された物体を「選択物体」という。
【0098】
分析部10は、対象三次元空間SP2における選択物体の像を特定する。次いで分析部10は、対象三次元空間SP2において、鏡7に映る選択物体の像が出現する位置を導出する。鏡7に映る選択物体の像は、対象三次元空間SP2を平面視したときに、鏡7の領域に沿って延びる直線(
図12において二点鎖線で表された直線)に対して線対称な位置に出現する。
図12の例では、符号P-12で示す位置が、鏡7に映る物体Q-12の像が出現する位置である。
【0099】
次いで分析部10は、鏡7に映る選択物体の像が出現する位置として導出した位置に、選択物体の像に相当する像が出現しているか否かを判定する。なお、この判定は、導出した位置に、選択物体の像に相当する像がほぼ確実に出現していないような場合にそのことを検出することを目的として実行される。従って、一例として分析部10は、導出した位置に像が出現しているか否かを判定し、その位置に何らかの像が出現していれば、その位置に選択物体の像に相当する像が出現していると判定する。また例えば分析部10は、導出した位置に、選択物体の像と同程度の大きさの像が存在するか否かを判定し、その位置に選択物体の像と同程度の大きさの像が存在すれば、その位置に選択物体の像に対応する像が出現していると判定する。
【0100】
また例えば、分析部10は、選択物体の像(距離センサ3によって鏡7に反射して観測される部分だけの像でもよい)をテンプレートデータとするテンプレートマッチングを行って、相違度が閾値を下回る場合に、導出した位置に選択物体の像に相当する像が出現していると判定する。ただしこの場合、処理の目的を鑑み、閾値は緩く設定される。
【0101】
導出した位置に選択物体の像に相当する像が出現していると判定した場合、分析部10は、鏡有無判定処理の判定結果(鏡7が存在するとの判定結果)を維持し、鏡位置検出処理を終了する。その後、分析部10は、ログ記入処理を実行する。一方、導出した位置に選択物体の像に対応する像が出現していないと判定した場合、分析部10は、鏡有無判定処理の判定結果をキャンセルし、移動体相当像の位置から導かれる位置に鏡7が存在しないと判定する。この場合、分析部10は、ログ記入処理を実行せず、次の処理タイミングで三次元データを入力するまで待機する。
【0102】
以上の通り、分析部10は、移動体相当像が特定態様で出現していると判定した場合において、移動体1の周辺の物体の像に相当する像が、鏡7に映る物体の像が出現すべき位置に出現しているときに、移動体相当像の位置から導かれる位置に鏡が存在すると判定する。本変形例によれば、移動体1だけではなく、移動体1以外の物体を利用して、鏡7が存在することの確かさが検証されるため、鏡7が存在するか否かについての判定結果の精度をより向上することができる。
【0103】
<第4変形例>
次に第4変形例について説明する。
図13の各図は、第4変形例の処理の説明に利用する図である。ここで上記実施形態において、最小領域Mは、鏡7が少なくとも延在する領域であった。そして現実の世界における実際の鏡7の領域は、この最小領域Mよりも長い可能性がある。例えば
図13(A)を参照し、検出された最小領域Mが最小領域M-13である場合に、現実の世界では鏡7は、二点鎖線に沿ってより長く延在している可能性がある。以上を踏まえ、第4変形例に係る分析部10は、鏡位置検出処理において鏡領域テーブルを利用して最小領域情報と交差点情報と至鏡距離情報とを取得した後、以下の処理を実行する。
【0104】
分析部10は、取得した最小領域情報に基づいて最小領域Mを認識する。次いで分析部10は、三次元データを分析し、最小領域Mの延長線(
図13では二点鎖線で示す線)上に仮に鏡7が存在していたとしたら、距離センサ3から鏡7を観測したときに鏡7に映るであろう物体を検出する。分析部10は、第3変形例と同様の方法で物体を検出する。ただし本変形例では、複数の物体が検出されてもよい。
図13(A)の例では、符号Q-13で示す物体が検出されたものとする。以下、分析部10が検出した物体を「検出物体」という。
【0105】
次いで分析部10は、三次元データを分析し、対象三次元空間SP2において、最小領域Mの延長線上に仮に鏡7が存在していたとしたら、鏡7に映る検出物体の像が出現する位置を導出する。分析部10は、第3変形例と同様の方法で当該位置を導出する。分析部10は、検出物体が複数、存在している場合には、検出物体のそれぞれについて、鏡7に映る検出物体の像が出現するはずの位置を導出する。
図13(A)の例では分析部10は、鏡7に映る検出物体Q-13の像が出現する位置として、符号P-13が示す位置を導出する。
【0106】
次いで分析部10は、鏡7に映る検出物体の像が出現する位置として導出した位置に、検出物体の像に相当する像が出現しているか否かを判定する。以下、検出物体の像に相当する像のことを「検出物体相当像」という。なお、この判定は、ある程度の精度で行われればよく、高い精度は必要ない。例えば分析部10は、導出した位置に、検出物体の像と同程度の大きさの像が存在するか否かを判定し、その位置に検出物体の像と同程度の大きさの像が存在すれば、その位置に検出物体の像に対応する像が出現していると判定する。
【0107】
また例えば分析部10は、検出物体の像(距離センサ3によって鏡7に反射して観測される部分だけの像でもよい)をテンプレートデータとし、閾値が緩く設定されたテンプレートマッチングにより判定を行う。分析部10は、検出物体が複数、存在している場合には、検出物体のそれぞれについて、検出物体相当像が出現しているか否かの判定を行う。
図13(A)の例では、分析部10は、位置P-13に検出物体相当像が出現しているか否かを判定する。
【0108】
次いで分析部10は、導出した位置に、検出物体の像に相当する像が出現している場合、「移動体1の光軸基点5から、光軸基点5に対向する検出物体相当像の面に向かって放射状に放射された放射空間Fを、最小領域Mの延長線により切断した領域」を、追加領域Rとして検出する。例えば
図13(A)の例において、位置P-13に検出物体相当像が出現していたとする。この場合、分析部10は、光軸基点5から、光軸基点5に対向する検出物体相当像の面に向かって放射状に放射された放射空間F-13を、最小領域M-13の延長線により切断した追加領域R-13を、追加領域Rとして検出する。なお、仮に
図13(B)で示すように、位置P-13に検出物体相当像が出現していなかった場合、
図13(A)における追加領域R-13は、追加領域Rとして検出されないことになる。追加領域Rは、1つも検出されない場合もあれば、複数、検出される場合もある。追加領域Rが1つも検出されなかった場合、分析部10は、以下の処理を実行しない。
【0109】
次いで分析部10は、最小領域Mと、1つ以上の追加領域Rとに跨って延在する領域を、最小領域Mに代わる鏡7の領域として検出する。
図13(A)の例では、最小領域M-13と、追加領域R-13とに跨って延在する領域AR13(点線で囲まれた領域)を、鏡7の新たな領域として検出する。分析部10は、ログには、最小領域情報に代えて、新たに検出した鏡7の領域を示す情報を記述する。
【0110】
以上の通り第4変形例に係る分析部10は、移動体相当像の位置から導かれる位置に鏡7が存在すると判定した場合において、移動体1の距離センサ3の光軸基点5から、光軸基点5に対向する「鏡7に映る移動体1の周辺の物体の像の面」に向かって放射状に放射した仮想的な放射空間Fを、鏡7の領域の延長線により切断した領域にも、鏡が存在すると判定する。本変形例によれば、現実世界における鏡7の領域により即した領域を、鏡7の領域として検出できる。
【0111】
以上、本発明の一実施形態(変形例を含む)を説明したが、上記実施形態は、本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【0112】
例えば上記実施形態では、距離センサ3はステレオカメラ式のセンサであったが、距離センサ3は、三次元データを生成するための検出値を出力する光学系のセンサであればよく、例示したものに限られない。一例として、TOFカメラを含むセンサや、LiDARを含むセンサ、パターン画像を投影するプロジェクタとカメラとを含んで構成されるセンサでもよい。
【0113】
また、上記実施形態では、移動体1はシニアカーであったが、移動体1はシニアカーに限られない。例えば、電動車イスのような他のタイプの歩道走行型自動車や、車道を走行する自動車、ドローン等の飛行体であってもよい。
【0114】
また上記実施形態では、三次元データは点群データであったが、三次元データは点群データに限られない。一例として、深度画像データであってもよい。
【0115】
また分析装置2が実行すると説明した処理の一部を、分析装置2と外部装置とが協働して、または、外部装置が単独で実行する構成としてもよい。この場合、分析装置2と外部装置とが協働して特許請求の範囲の「分析装置」として機能する。一例として、分析装置2の分析部10の処理の一部を、分析装置2とネットワークを介して通信可能なクラウドサーバが実行する構成としてもよい。
【0116】
また複数の変形例を説明したが、上記実施形態に複数の変形例を組み合わせてもよい。
【0117】
また上記実施形態では分析部10は、鏡7の位置として、最小領域M、交差点Lおよび至鏡距離Oを検出した。この点に関し、どのような態様で鏡7の位置が検出されるかは、鏡7の位置を示す情報がどのような方法で使用されるのかによって定められるべきものである。例えば、移動体1から見てどの方向に鏡7が位置しているかが分かればよいのであれば、移動体1から見た鏡7の方向が鏡7の位置として検出されればよい。また、至鏡距離Oだけが分かればよいのであれば、至鏡距離Oが鏡7の位置として検出されればよい。
【0118】
また上記実施形態では、分析部10が検出した鏡7の領域を示す情報は、ユーザへの警告にのみ用いられていた。この点に関し、分析部10が検出した鏡7の位置を示す情報は、他の方法で使用されてもよい。一例として、移動体1が自動運転機能を有し、分析部10が検出した鏡7の位置を示す情報が、自動運転を実行するときに利用される構成でもよい。
【0119】
また上記実施形態では、分析部10が相違度を導出する構成であるが、相違度に代えて類似度を導出する構成でも当然よい。この場合、類似度の検出にあたって、NCC(Normalized Cross Correlation)を用いることができる。
【0120】
また上記実施形態では、特定態様で移動体相当画像が三次元データ中に出現しているか否かの判定を、検証ポイントN毎にテンプレートマッチングを行うことにより行っていた。この点に関し、テンプレートマッチング以外の画像処理により、当該判定を行う構成でもよい。
【0121】
また上記実施形態では、分析部10は、鏡有無判定処理において、3回連続で出現判定がなされている場合に鏡7が存在すると判定していた。この点に関し、分析部10が、出現判定が1回なされた場合に鏡7が存在すると判定する構成でもよい。
【0122】
また上記実施形態では、テンプレートデータを画素群(点群)としていた。しかしながら、テンプレートデータは画素群(点群)である必要はなく、比較対象と比較して、相違度(或いは類似度)を導出可能なものであればよい。一例としてサーフィス、メッシュなどの三次元モデルで構成されたテンプレートとしてもよい。
【0123】
また上記実施形態では、分析部10は、検証ポイントNを順番に処理対象としていって、テンプレートマッチングを実行していき、ある検証ポイントNにおいて、相違度が閾値を下回っていると判定した場合には、移動体相当像が特定態様で出現していると判定し、その段階で特定態様関連処理を終了していた。この点に関し、以下の構成としてもよい。すなわち分析部10は、ある検証ポイントNにおいて、相違度が閾値を下回っていると判定した場合であっても、特定態様関連処理を終了せずに、全ての検証ポイントNについてテンプレートマッチングを実行する。そして分析部10は、複数の検証ポイントNにおいて相違度が閾値を下回っていると判定した場合、複数の検証ポイントNのそれぞれにおいて移動体相当像が特定態様で出現していると判定する。以上の構成としてもよい。この構成によれば、鏡面が距離センサ3に向かう鏡7が「複数」存在している場合に、複数の鏡7のそれぞれに関して移動体相当像が特定態様で出現していることを検知することができ、複数の鏡7のそれぞれについてその存在およびその位置の検出が可能となる。
【符号の説明】
【0124】
1 移動体
2 分析装置
3 距離センサ
5 光軸基点
10 分析部
C 交点
F 放射空間
I 走査半直線(半直線)
J 二等分線