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

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

▶ 富士重工業株式会社の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024142543
(43)【公開日】2024-10-11
(54)【発明の名称】計測システム及び情報処理装置
(51)【国際特許分類】
   G01B 11/24 20060101AFI20241003BHJP
   G06T 7/593 20170101ALI20241003BHJP
【FI】
G01B11/24 K
G06T7/593
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023054707
(22)【出願日】2023-03-30
(71)【出願人】
【識別番号】000005348
【氏名又は名称】株式会社SUBARU
(74)【代理人】
【識別番号】110000419
【氏名又は名称】弁理士法人太田特許事務所
(72)【発明者】
【氏名】吉田 優
(72)【発明者】
【氏名】大野 翼
(72)【発明者】
【氏名】渡邉 圭一
【テーマコード(参考)】
2F065
5L096
【Fターム(参考)】
2F065AA53
2F065CC14
2F065FF01
2F065FF05
2F065FF42
2F065JJ03
2F065JJ08
2F065JJ26
2F065MM06
2F065QQ03
2F065QQ21
2F065QQ38
5L096CA05
5L096FA09
5L096FA52
5L096FA67
5L096FA69
(57)【要約】
【課題】相互に重なり合う重複領域を有する複数の撮像データ間で特徴点をマッチングする際の処理負荷を軽減し、処理時間を短縮する。
【解決手段】複数の撮像データから抽出される特徴点をマッチングする情報処理装置は、複数の撮像データの撮像範囲が相互に重なり合う重複領域を特定する重複領域特定処理と、基準とする基準撮像データと、マッチング対象の対象撮像データと、の間で特徴点をマッチングする際に、基準撮像データの撮像範囲に重複する撮像範囲を含む撮像データの数と、基準撮像データの撮像範囲と対象撮像データの撮像範囲との相対位置関係と、に応じて特徴点をマッチングする際の条件を設定し、設定した条件にしたがって、基準撮像データ及び対象撮像データの重複領域に存在する特徴点をマッチングする特徴点マッチング処理と、を実行する。
【選択図】図13
【特許請求の範囲】
【請求項1】
計測対象を撮影した複数の撮像データを合成し、前記計測対象のモデルのデータを生成する計測システムにおいて、
撮像装置により撮像された前記複数の撮像データを取得し、前記複数の撮像データから抽出される特徴点をマッチングすることで前記複数の撮像データを合成して前記計測対象のモデルのデータを生成する情報処理装置を備え、
前記情報処理装置は、
前記複数の撮像データの撮像範囲が相互に重なり合う重複領域を特定する重複領域特定処理と、
基準とする基準撮像データと、マッチング対象の対象撮像データと、の間で前記特徴点をマッチングする際に、前記基準撮像データの撮像範囲に重複する撮像範囲を含む前記撮像データの数と、前記基準撮像データの撮像範囲と前記対象撮像データの撮像範囲との相対位置関係と、に応じて前記特徴点をマッチングする際の条件を設定し、設定した前記条件にしたがって、前記基準撮像データ及び前記対象撮像データの前記重複領域に存在する前記特徴点をマッチングする特徴点マッチング処理と、
を実行する、計測システム。
【請求項2】
前記情報処理装置は、前記特徴点マッチング処理において、
前記基準撮像データ及び前記対象撮像データの前記重複領域に存在する前記特徴点のうち、特徴量が大きい順に、前記基準撮像データの撮像範囲に重複する撮像範囲を含む前記撮像データの数と、前記基準撮像データの撮像範囲と前記対象撮像データの撮像範囲との相対位置関係と、に応じた所定数の前記特徴点を用いて前記特徴点をマッチングする、
請求項1に記載の計測システム。
【請求項3】
前記情報処理装置は、前記特徴点マッチング処理において、
前記基準撮像データの撮像範囲に重複する撮像範囲を含む前記撮像データの数が多いほど、前記特徴点のマッチングに用いる前記特徴点の前記所定数を少なくする、
請求項2に記載の計測システム。
【請求項4】
前記情報処理装置は、前記特徴点マッチング処理において、
前記基準撮像データの撮像範囲に対する前記対象撮像データの撮像範囲の相対位置が、前記基準撮像データの左右方向、上下方向、又は、斜め方向のうちのどの方向に位置するかによって、前記特徴点のマッチングに用いる前記特徴点の前記所定数を設定する、
請求項2に記載の計測システム。
【請求項5】
撮像装置により撮像された複数の撮像データを取得し、前記複数の撮像データから抽出される特徴点をマッチングすることで前記複数の撮像データを合成して計測対象のモデルのデータを生成する情報処理装置において、
前記複数の撮像データの撮像範囲が相互に重なり合う重複領域を特定する重複領域特定処理と、
基準とする基準撮像データと、マッチング対象の対象撮像データと、の間で前記特徴点をマッチングする際に、前記基準撮像データの撮像範囲に重複する撮像範囲を含む前記撮像データの数と、前記基準撮像データの撮像範囲と前記対象撮像データの撮像範囲との相対位置関係と、に応じて前記特徴点をマッチングする際の条件を設定し、設定した前記条件にしたがって、前記基準撮像データ及び前記対象撮像データの前記重複領域に存在する前記特徴点をマッチングする特徴点マッチング処理と、
を実行する、情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、計測システム及び情報処理装置に関する。
【背景技術】
【0002】
相互に重なり合う重複領域を有する複数の撮像データを合成して合成データを生成する技術が種々用いられている。例えば特許文献1には、複数のステレオ撮像手段により移動体の走行面を撮像した奥行方向の距離情報を含む複数の撮像画像を取得し、各ステレオ撮像画像から抽出される特徴点をマッチングして、取得した複数の撮像画像を重複させて走行面の幅員方向に繋ぐ制御装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2019-164138号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の制御装置のように、走行面の凹凸形状を詳細に計測するには高解像度の撮像データを用いて特徴点をマッチングすることが必要になる。しかしながら、全ての撮像データから抽出される特徴点の全てに対してマッチング度を計算する場合、処理負荷が高くなり、また、処理時間が長くなるおそれがある。
【0005】
本開示は、上記問題に鑑みてなされたものであり、本開示の目的とするところは、相互に重なり合う重複領域を有する複数の撮像データ間で特徴点をマッチングする際の処理負荷を軽減し、処理時間を短縮可能な計測システム及び情報処理装置を提供することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本開示のある観点によれば、計測対象を撮影した複数の撮像データを合成し、計測対象のモデルのデータを生成する計測システムにおいて、撮像装置により撮像された複数の撮像データを取得し、複数の撮像データから抽出される特徴点をマッチングすることで複数の撮像データを合成して計測対象のモデルのデータを生成する情報処理装置を備え、情報処理装置は、複数の撮像データの撮像範囲が相互に重なり合う重複領域を特定する重複領域特定処理と、基準とする基準撮像データと、マッチング対象の対象撮像データと、の間で特徴点をマッチングする際に、基準撮像データの撮像範囲に重複する撮像範囲を含む撮像データの数と、基準撮像データの撮像範囲と対象撮像データの撮像範囲との相対位置関係と、に応じて特徴点をマッチングする際の条件を設定し、設定した条件にしたがって、基準撮像データ及び対象撮像データの重複領域に存在する特徴点をマッチングする特徴点マッチング処理と、を実行する計測システムが提供される。
【0007】
また、上記課題を解決するために本開示の別の観点によれば、撮像装置により撮像された複数の撮像データを取得し、複数の撮像データから抽出される特徴点をマッチングすることで複数の撮像データを合成して計測対象のモデルのデータを生成する情報処理装置において、複数の撮像データの撮像範囲が相互に重なり合う重複領域を特定する重複領域特定処理と、基準とする基準撮像データと、マッチング対象の対象撮像データと、の間で特徴点をマッチングする際に、基準撮像データの撮像範囲に重複する撮像範囲を含む撮像データの数と、基準撮像データの撮像範囲と対象撮像データの撮像範囲との相対位置関係と、に応じて特徴点をマッチングする際の条件を設定し、設定した条件にしたがって、基準撮像データ及び対象撮像データの重複領域に存在する特徴点をマッチングする特徴点マッチング処理と、を実行する情報処理装置が提供される。
【発明の効果】
【0008】
以上説明したように本開示によれば、相互に重なり合う重複領域を有する複数の撮像データ間で特徴点をマッチングする際の処理負荷を軽減し、処理時間を短縮することができる。
【図面の簡単な説明】
【0009】
図1】本開示の一実施形態に係る計測システムの用途の一例を説明するために示す図である。
図2】第1の実施の形態に係る計測装置を側方から見た説明図である。
図3】第1の実施の形態に係る計測装置を上方から見た説明図である。
図4】第1の実施の形態に係る計測システムの構成例を示すブロック図である。
図5】第1の実施の形態に係る制御装置の自律走行制御部による自律走行制御処理のフローチャートである。
図6】第1の実施の形態に係る制御装置の自己位置推定部による自己位置推定処理のフローチャートである。
図7】第1の実施の形態に係る制御装置の撮像装置駆動部による撮像装置駆動処理のフローチャートである。
図8】第1の実施の形態に係る情報処理装置のデータ処理部によるデータ処理のフローチャートである。
図9】第1の実施の形態に係る情報処理装置のデータ処理部による重複領域特定処理のフローチャートである。
図10】第1の実施の形態に係る情報処理装置のデータ処理部による重複領域特定処理のフローチャートである。
図11】第1の実施の形態に係る情報処理装置のデータ処理部による移動ベクトルを求める処理を示す説明図である。
図12】第1の実施の形態に係る情報処理装置のデータ処理部による撮像位置のずれのベクトルを求める処理を示す説明図である。
図13】第1の実施の形態に係る情報処理装置のデータ処理部により求められる重複領域を示す説明図である。
図14】第1の実施の形態に係る情報処理装置のデータ処理部による特徴点マッチング処理のフローチャートである。
図15】第1の実施の形態に係る情報処理装置によりすべての路面撮像データから抽出した特徴点のリストの例を示す説明図である。
図16】第1の実施の形態に係る情報処理装置によりすべての路面撮像データから抽出した特徴点を特徴量の大きい順にソート(並べ替え)したリストの例を示す説明図である。
図17】第1の実施の形態に係る情報処理装置のデータ処理部による特徴点の数の設定例を示す説明図である。
図18】第1の実施の形態に係る情報処理装置のデータ処理部により撮像範囲の相対位置が左方又は右方にある場合に選択される特徴点を示す説明図である。
図19】第1の実施の形態に係る情報処理装置のデータ処理部により撮像範囲の相対位置が前方又は後方にある場合に選択される特徴点を示す説明図である。
図20】第1の実施の形態に係る情報処理装置のデータ処理部により撮像範囲の相対位置が斜め方向にある場合に選択される特徴点を示す説明図である。
図21】第2の実施の形態に係る情報処理装置のデータ処理部による特徴点マッチング処理のフローチャートである。
図22】第2の実施の形態に係る情報処理装置のデータ処理部による撮像解像度の設定例を示す説明図である。
図23】第2の実施の形態に係る情報処理装置のデータ処理部により撮像解像度が補正された様子を示す説明図である。
【発明を実施するための形態】
【0010】
以下、添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0011】
<<計測システムの概要>>
はじめに、本開示の実施形態に係る計測システムの概要を説明する。
【0012】
図1は、本開示の計測システムの用途の一例を説明するために示す図である。
図1に示した例において、計測システム1は、撮像装置を搭載した計測装置10と、計測装置10と通信可能に接続された情報処理装置100とを備えている。計測装置10と情報処理装置100とは、例えばクラウドコンピューティングの技術を用いて通信可能に接続される。
【0013】
計測装置10は、計測対象としての道路Rの路面を撮像装置により撮像して路面撮像データImg_αを生成し、生成した路面撮像データImg_αを、逐次又は撮像終了後に、情報処理装置100へ送信する。情報処理装置100は、路面撮像データImg_αを取得し、取得した路面撮像データImg_αに基づいて、路面の凹凸状態を示す三次元データである路面モデルを生成する。
【0014】
例えば計測装置10は、道路Rを三つの領域D1~D3に分けて路面の撮像を行う。計測装置10は、それぞれの領域D1~D3を自律走行しながら時系列の路面撮像データImg_αを生成する。道路Rの計測範囲の全体が撮像範囲から漏れることのないように、隣り合う領域D1~D3同士が一部重複するように設定されている。
【0015】
また、計測装置10は、移動方向(前後方向)に直交する方向(左右方向)に沿って配列した複数の撮像装置を有している。複数の撮像装置は、計測装置10がそれぞれの領域D1~D3を自律走行する間にそれぞれ路面を撮像し、複数の路面撮像データImg_αを生成する。それぞれの領域D1~D3の全体が撮像範囲から漏れることのないように、隣り合う撮像装置の撮像範囲P1~P6同士が一部重複するように、複数の撮像装置が設置されている。
【0016】
また、計測装置10の移動速度は、それぞれの撮像装置により生成される時系列の路面撮像データImg_αが一部重複するように設定されている。つまり、時刻t_nにおける撮像範囲は、前回の時刻t_n-1及び次の回の時刻t_n+1における撮像範囲とそれぞれ一部重複する。
【0017】
なお、図1では、計測対象の道路Rが直線的に延び、計測装置10が直進する例を示したが、計測対象の形状は湾曲していてもよく、計測装置10が直進する例に限定されない。また、計測対象の道路Rを計測する際の領域の分け方や領域の走行順序、計測装置10の進路についても上記の例に限定されない。また、撮像装置の数についても、特に限定されるものではない。
【0018】
情報処理装置100は、取得した複数の路面撮像データImg_αから特徴点を抽出し、路面撮像データImg_α間で特徴点を位置合わせする特徴点マッチング処理を実行する。特徴点マッチング処理は、例えばSfM(Structure from Motion)処理を用いて行われる。また、情報処理装置100は、特徴点マッチング処理により複数の路面撮像データImg_αを合成し、路面の凹凸状態の情報を示す路面モデルを生成する。路面モデルの生成は、例えばMVS(Multi-View Stereo)処理を用いて行われる。
【0019】
<<1.第1の実施の形態>>
以下、本開示の第1の実施の形態に係る計測システム1の構成を具体的に説明する。
【0020】
<1-1.計測装置の構成例>
まず、本実施形態に係る計測システム1に用いられる計測装置10の構成例を説明する。
【0021】
図2及び図3は、計測装置10の構成例を示す説明図である。図2は、計測装置10を側方から見た図であり、図3は、計測装置10を上方から見た図である。なお、図2及び図3中には、計測装置10の基本的な前進方向が「前」、後退方向が「後」として示されている。以下、計測装置10の前後方向、左右方向及び高さ方向は、当該「前」及び「後」を基準とした前後方向、左右方向及び高さ方向を示す。
【0022】
計測装置10は、計測対象としての路面を撮像した複数の路面撮像データImg_αを生成し、生成した路面撮像データImg_αを情報処理装置100へ送信する。本実施形態に係る計測装置10は、無人で路面上を移動可能(自律走行可能)に構成されている。計測装置10は、本体部3、撮像部5、周囲状況検出部7及び制御装置50を備えている。
【0023】
本体部3は、フレーム11、車輪13(13F,13R)、駆動力源15及び操舵装置17を備えている。車輪13(13F,13R)、駆動力源15及び操舵装置17は、計測装置10の位置を移動させる駆動装置に相当する。フレーム11は、本体部3の骨格を形成する。図2及び図3に示したフレーム11の構造や全体形状は一例にすぎず、フレーム11の構成は特に制限されるものではない。車輪13は、それぞれ左右の前輪13F及び後輪13Rを有する。
【0024】
駆動力源15は、後輪13Rを回転させる駆動力を出力する。駆動力源15としては、代表的には駆動モータが例示されるが、これ以外にも後輪13Rを回転駆動する動力を出力可能なものであれば特に限定されるものではない。
【0025】
操舵装置17は、前輪13Fの舵角を調節する。操舵装置17としては、例えばモータによりピニオンギヤを回転させ、ピニオンギヤの回転によりラックを左右に移動させる構成の操舵装置が例示されるが、操舵装置17の構成は特に限定されるものではない。
【0026】
なお、本体部3は、撮像部5及び周囲状況検出部7を支持可能であり、かつ、移動方向を調節しながら走行可能なものであれば、具体的な構成は特に限定されるものではない。例えば本体部3の車輪13は四つである必要はなく、三つであってもよく、五つ以上であってもよい。また、駆動力源15から出力される動力により回転駆動する車輪13は前輪13Fであってもよく、前輪13F及び後輪13Rのすべてが回転駆動してもよい。また、駆動力源15は、四つの車輪13をそれぞれ駆動する四つの駆動モータであってもよい。
【0027】
また、操舵装置17により舵角を調節する車輪は後輪13Rであってもよく、前輪13F及び後輪13Rすべてであってもよい。四つの駆動モータが四つの車輪13をそれぞれ駆動する場合、駆動モータの出力を制御することで計測装置の進行方向を調節可能に構成される場合、操舵装置を省略することもできる。
【0028】
また、本体部3は、車輪速センサ41を備える。車輪速センサ41は、後輪13Rの回転速度に応じたセンサ信号を出力する。車輪速センサ41は、前輪13Fの回転速度に応じたセンサ信号を出力してもよい。
【0029】
撮像部5は、複数の撮像装置21a~21f(以下、特に区別を要しない場合、撮像装置21と総称する)、照射ランプ25a~25f(以下、特に区別を要しない場合、照射ランプ25と総称する)及びリフレクタ23を備え、本体部3の後部に設けられている。
【0030】
複数の撮像装置21は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal-Oxide Semiconductor)等の撮像素子を備え、路面を撮像した路面撮像データImg_α(α=1,2・・・M)(Mは撮像装置21の台数)を生成する。撮像装置21は、本体部3の左右方向に沿って配置されている。それぞれの撮像装置21は、高さ及び設置角度(撮像方向の向き)が均一に設置されている。本実施形態の計測装置10では、6つの撮像装置21a~21fが本体部3の左右方向に沿って等間隔に配置されている。それぞれの撮像装置21は、撮像方向を路面の方向に向けて設置されている。撮像装置21は、隣り合う撮像装置21同士の撮像範囲が重複するように設置される。
【0031】
ただし、複数の撮像装置21の設置位置及び設置角度は、隣り合う撮像装置21同士の撮像範囲の重複度合いが維持できる限りにおいて、均一となっていなくてもよい。例えば左右両側の撮像装置の撮像方向の向きが中央に向けられていてもよい。
【0032】
撮像装置21は、設定された時間間隔ごとに路面を撮像し、生成した路面撮像データImg_α(α=1,2・・・M)を処理部51へ出力する。撮像の時間間隔は、計測装置10の移動速度の設定範囲を考慮して、それぞれの撮像装置21の時系列の路面撮像データImg_α(α=1,2・・・M)の撮像範囲が相互に重複するように設定される。つまり、処理部51が取得する時系列の路面撮像データImg_α(α=1,2・・・M)は上下及び左右が相互に重複(オーバーラップ)する。これにより、撮像装置21は、計測対象の路面全体を漏れなく撮像可能となっている。
【0033】
なお、撮像装置21の数は6つに限られるものではない。また、撮像装置21は、等間隔に配置されていなくてもよい。ただし、撮像装置21が等間隔に配置されていることにより、隣り合う撮像装置21によって生成される撮像データの相対位置関係が同一になり、演算を容易にすることができる。
【0034】
照射ランプ25は、撮像装置21により撮像される計測対象の路面を照明するための光源である。本実施形態の計測装置10では、照射ランプ25から発出された光がリフレクタ23により反射されて計測対象の路面を照明する。なお、それぞれの撮像装置21により撮像される路面の明るさ(照度あるいは明度)が均一にされる限り、照射ランプ25の数は特に限定されるものではない。また、計測対象の路面を照明する手段は、本実施形態の構成例に限定されるものではなく、任意の構成を有していてよい。
【0035】
周囲状況検出部7は、計測装置10の周囲の状況を検出可能な少なくとも1つ以上のセンサを有する。本実施形態では、周囲状況検出部7は、測距センサ31a,31b(以下、特に区別を要しない場合、測距センサ31と総称する)及びカメラセンサ33a,33b(以下、特に区別を要しない場合、カメラセンサ33と総称する)を有している。測距センサ31は、例えばLiDAR(Light Detection And Ranging)であってよいが、そのほか、レーダセンサ又は超音波センサであってもよい。カメラセンサ33は、CCD又はCMOS等の撮像素子を備え、撮像データを生成する。
【0036】
図2及び図3に示した計測装置10では、測距センサ31a,31bは、それぞれ計測範囲の中心を計測装置10の左右前方に向けて設置されている。測距センサ31a,31bは、主として計測装置10の左右の物体等の検出対象を検知可能に設置されている。また、カメラセンサ33a,33bは、それぞれ撮像範囲の中心を計測装置10の前方に向けて設置されている。カメラセンサ33a,33bは、計測装置10の前方を広く撮像可能に設置されている。
【0037】
制御装置50は、計測装置10を自動で移動させる機能及び撮像装置21を制御する機能を有する一つ又は複数のプロセッサと、当該一つ又は複数のプロセッサと通信可能に接続された一つ又は複数の記憶装置とを備える。また、制御装置50は、情報処理装置100と通信するための通信インタフェースを備える。制御装置50は、計測装置10に備えられた各種センサ及び電子制御機器と通信可能に接続されている。
【0038】
<1-2.制御装置>
続いて、計測装置10に備えられた制御装置50を具体的に説明する。
【0039】
(1-2-1.制御装置の構成)
図4は、計測システム1の構成例を示すブロック図である。
制御装置50は、処理部51、記憶部53及び通信部57を備えている。処理部51は、CPU(Central Processing Unit)又はGPU(Graphics Processing Unit)等の一つ又は複数のプロセッサや種々の周辺部品を備えて構成される。処理部51の一部又は全部は、ファームウェア等の更新可能なもので構成されてもよく、また、CPU等からの指令によって実行されるプログラムモジュール等であってもよい。
【0040】
処理部51は、一つ又は複数のプロセッサがコンピュータプログラムを実行することで以下に説明する機能を実現する装置として機能する。当該コンピュータプログラムは、処理部51が実行すべき後述する動作をプロセッサに実行させるためのコンピュータプログラムである。プロセッサにより実行されるコンピュータプログラムは、制御装置50に備えられた記憶部(メモリ)53として機能する記録媒体に記録されていてもよく、処理部51に内蔵された記録媒体又は制御装置50に外付け可能な任意の記録媒体に記録されていてもよい。
【0041】
コンピュータプログラムを記録する記録媒体としては、ハードディスク、フロッピーディスク及び磁気テープ等の磁気媒体、CD-ROM、DVD、及びBlu-ray(登録商標)等の光記録媒体、フロプティカルディスク等の磁気光媒体、RAM及びROM等の記憶素子、並びにUSBメモリ及びSSD等のフラッシュメモリ、その他のプログラムを格納可能な媒体であってよい。
【0042】
処理部51には、駆動力源15、操舵装置17、撮像装置21、照射ランプ25、測距センサ31、カメラセンサ33、車輪速センサ41、入力部81及び通知部83が通信可能に接続されている。
【0043】
入力部81は、ユーザによる入力操作を受け付ける部分である。入力部81は、例えばキーボード、マウス、タッチパッド及びマイクロフォンのうちの少なくとも一つを備えて構成される。ただし、入力部81の種類は特に限定されるものではない。
【0044】
通知部83は、ユーザに対して所定の通知を行う部分である。通知部83は、例えば表示装置及びスピーカのうちの少なくとも一つを備えて構成される。ただし、通知部83の種類は特に限定されるものではない。
【0045】
記憶部53は、処理部51と通信可能に接続された一つ又は複数のRAM又はROM等の記憶素子により構成される。ただし、記憶部53の種類や数は特に限定されない。記憶部53は、処理部51により実行されるコンピュータプログラムや、演算処理に用いられる種々のパラメータ、検出データ、演算結果等の情報を記憶する。記憶部53の一部は、ワーク領域として用いられる。
【0046】
通信部57は、処理部51が情報処理装置100との間で通信を行うためのインタフェースである。通信部57は、例えば移動体通信を介して情報処理装置100と通信を行うためのインタフェースであってよいが、情報処理装置100との通信方式は特に限定されるものではない。
【0047】
また、制御装置50は、処理部51と通信可能に接続された加速度センサ43、角速度センサ45、GNSS(Global Navigation Satellite System)センサ47及び地図データ記憶部55を備えている。なお、加速度センサ43、角速度センサ45、GNSS(Global Navigation Satellite System)センサ47及び地図データ記憶部55のうちの一部又は全部は、制御装置50とは別に設けられていてもよい。
【0048】
加速度センサ43は、計測装置10の前後方向、左右方向及び高さ方向に沿った三軸方向それぞれの加速度に応じたセンサ信号を出力する。角速度センサ45は、計測装置10の前後方向、左右方向及び高さ方向に沿った三軸それぞれの軸周りの角速度に応じたセンサ信号を出力する。なお、加速度センサ43及び角速度センサ45は、IMUセンサ(慣性計測装置)として一体化されたセンサであってもよく、個別に設けられたセンサであってもよい。
【0049】
GNSSセンサ47は、GPS(Global Positioning System)衛星等の測位衛星からの衛星信号を受信し、衛星信号に含まれる計測装置10の位置情報を処理部51へ送信する。位置情報は、緯度及び経度の情報であってよい。なお、GNSSセンサ47は、GPS衛星以外の他の衛星システムからの衛星信号を受信可能に構成されていてもよい。
【0050】
地図データ記憶部55は、処理部51と通信可能に接続されたRAM又はROM等の記憶素子、あるいは、HDDやCD、DVD、SSD、USBフラッシュ、ストレージ装置等の記憶媒体により構成される。地図データ記憶部55に記憶される地図データは、緯度及び経度の情報に関連付けられており、処理部51は、GNSSセンサ47から送信される計測装置10の緯度及び経度の情報に基づいて地図データ上の計測装置10の位置を特定することができる。
【0051】
(1-2-2.処理部の構成)
続いて、処理部51の構成を説明する。
処理部51は、撮像装置21により路面の撮像を開始し、撮像データを情報処理装置100へ送信する処理を実行する。
【0052】
処理部51は、取得部61、撮像条件設定部63、自律走行制御部65、自己位置推定部67及び撮像装置駆動部69を備えている。これらの各部は、一つ又は複数のプロセッサによるコンピュータプログラムの実行により実現される機能である。ただし、取得部61、撮像条件設定部63、自律走行制御部65、自己位置推定部67及び撮像装置駆動部69の一部又は全部が、アナログ回路を用いて構成されていてもよい。
【0053】
(1-2-2-1.取得部)
取得部61は、撮像装置21により生成された路面撮像データを取得する。取得部61は、設定された時間間隔で撮像装置21により生成された路面撮像データを取得する。また、取得部61は、測距センサ31、カメラセンサ33、車輪速センサ41、加速度センサ43、角速度センサ45及びGNSSセンサ47それぞれから出力される検出データあるいはセンサ信号(以下、まとめて「検出情報」ともいう)を取得する。取得部61は、所定の演算周期ごとにそれぞれのセンサから出力される検出情報を取得する。
【0054】
(1-2-2-2.撮像条件設定部)
撮像条件設定部63は、撮像装置21の作動条件としての撮像条件を設定する。具体的に、撮像条件設定部63は、撮像装置21の移動速度、すなわち、計測装置10の移動速度を設定する。撮像条件設定部63は、それぞれの撮像装置21により撮像される路面撮像データのピクセルサイズに対応する路面の長さと、撮像装置21による撮像の時間間隔とに基づいて、時系列で取得される路面撮像データの撮像範囲が一部重なる移動速度に設定する。また、撮像条件設定部63は、撮像装置21の絞り(F値)、シャッター速度及びISO感度を設定する。
【0055】
撮像条件を設定するための情報は、ユーザにより指定されたものであってよい。ユーザは、取得した撮像条件のうちの一部又は全部を手動で設定してもよい。また、撮像条件設定部63は、照射ランプ25の出力(照度あるいは明るさ)を設定してもよい。なお、他の条件に関わらず固定される条件については、撮像条件設定部63は、設定処理を行わなくてもよい。
【0056】
(1-2-2-3.自律走行制御部)
自律走行制御部65は、計測装置10の自律走行を制御する。自律走行とは、プロセッサ等が検出情報に基づいて駆動力源15及び操舵装置17の駆動を制御することにより、計測装置10が所定の目標経路に沿って移動する走行状態をいう。
【0057】
本実施形態では、自律走行制御部65は、基本的にはGNSSセンサ47により検出される計測装置10の位置情報と、地図データ上に設定された計測経路の情報とに基づいて、計測装置10を計測経路に沿って移動させる。GNSSセンサ47が衛星信号を受信可能なエリアである限り、自律走行制御部65は、GNSSセンサ47により検出される位置情報を用いて計測装置10をあらかじめ設定された計測経路に沿って移動させることができる。
【0058】
ただし、トンネル内等の衛星信号が届かないエリアあるいは届きにくいエリアでは、GNSSセンサ47により検出される位置情報を用いることができない。このため、本実施形態では、そのようなエリアで路面計測が行われる場合、自律走行制御部65は、測距センサ31から出力されるセンサ信号を優先的に用いて、測距センサ31により検出されるガイド情報に沿って計測装置10を移動させる。ガイド情報とは、例えば側壁や縁石、ガードレール等の道路に沿って設置された立体物であり、計測装置10を道路が延びる方向に沿って移動させる際の基準となり得る対象をいう。例えば自律走行制御部65は、そのようなガイド情報と計測装置10との間の距離を所定の設定距離に保ちながら計測装置10を道路に沿って移動させる処理を実行する。
【0059】
また、自律走行制御部65は、測距センサ31によりガイド情報の検出が途絶えた場合、カメラセンサ33から出力される撮像データを用いて、ガイド情報に沿って計測装置10を移動させてもよい。つまり、例示した側壁や縁石、ガードレールは、一時的に途切れる場合があることから、そのような場面において、自律走行制御部65は、カメラセンサ33から出力される撮像データを用いて、ガイド情報に沿って計測装置10を移動させてもよい。
【0060】
なお、本実施形態の計測装置10は、測距センサ31により計測される物体の検出精度及び物体までの距離の計測精度が、カメラセンサ33により計測される物体及び物体までの距離の計測精度よりも高いことを前提に構成されている。ただし、それぞれのセンサの計測精度に応じて、自律走行制御部65が用いるセンサの優先度が異なっていてもよい。また、自律走行制御部65は、測距センサ31又はカメラセンサ33を用いて検出されるガイド情報に沿って計測装置10を移動させることができなくなった場合、後述する自己位置推定部67により推定される計測装置10の位置(自己位置、オドメトリ情報)に基づいて、所定の進路に沿って計測装置10を移動させてもよい。
【0061】
(自律走行制御処理)
図5は、自律走行制御部65による計測装置10の自律走行制御処理の一例を示すフローチャートである。
自律走行制御部65は、計測経路の情報を取得する(ステップS11)。計測経路は、少なくとも計測開始位置及び計測終了位置の情報を含む。GNSSセンサ47から出力される位置情報を用いて計測装置10を自律走行させる場合、撮像条件設定部63は、例えば計測装置10の現在位置を計測開始位置とし、計測終了位置の情報を取得して、地図データを参照して計測開始位置から計測終了位置までの計測経路を道路に沿って設定する。
【0062】
また、測距センサ31あるいはカメラセンサ33により検出されるガイド情報(側壁等)を用いて計測装置10を自律走行させる場合、撮像条件設定部63は、計測装置10からガイド情報までの距離を設定する。当該距離は、計測装置10を自律走行させる際の走行位置の基準となる。計測経路を設定するための情報は、ユーザにより指定されたものであってよい。
【0063】
次いで、自律走行制御部65は、計測装置10の現在位置(x,y)及び移動方向の情報を取得する(ステップS13)。例えば自律走行制御部65は、GNSSセンサ47から出力される位置情報(緯度及び経度の情報)を取得する。自律走行制御部65は、測距センサ31又はカメラセンサ33を用いて計測装置10を自律走行させている場合、計測装置10からガイド情報までの距離の情報と、後述する自己位置推定部67により推定されるオドメトリ情報とに基づいて、所定の二次元座標系上での計測装置10の現在位置(x,y)の情報を取得してもよい。
【0064】
また、自律走行制御部65は、計測装置10の現在位置の情報と併せて、計測装置10の移動方向の情報を取得する。例えば自律走行制御部65は、前回の演算周期(t_n-1)での計測装置10の地図データ上の位置と今回の演算周期(t_n)での計測装置10の地図データ上の位置とを結んだベクトルの向きを移動方向とする。また、自律走行制御部65は、後述する自己位置推定部67により推定されるオドメトリ情報から計測装置10の移動方向の情報を取得してもよい。
【0065】
次いで、自律走行制御部65は、駆動力源15及び操舵装置17の駆動量を設定する(ステップS15)。例えば自律走行制御部65は、車輪速センサ41の検出情報に基づいて算出される計測装置10の移動速度が、撮像条件設定部63が設定した移動速度となるように、駆動力源15の駆動量を設定する。また、自律走行制御部65は、計測装置10の現在の移動方向の情報と計測経路の情報とに基づいて操舵角の変化の角速度(操舵角速度)を設定し、操舵角速度に応じて操舵装置17の駆動量を設定する。
【0066】
次いで、自律走行制御部65は、ステップS15で設定した駆動量にしたがって駆動力源15及び操舵装置17の駆動を制御する(ステップS17)。次いで、自律走行制御部65は、計測が終了したか否かを判定する(ステップS19)。例えば自律走行制御部65は、計測装置10が計測終了位置に到達したときに計測が終了したと判定する。この他、自律走行制御部65は、ユーザ等により非常停止操作が行われたときに計測が終了したと判定してもよい。
【0067】
自律走行制御部65は、計測が終了したと判定しない場合(S19/No)、ステップS13に戻って計測装置10の自律走行制御を継続する。一方、自律走行制御部65は、計測が終了したと判定した場合(S19/Yes)、自律走行制御処理を終了する。
【0068】
なお、ユーザが手動で計測装置10を移動させて路面の計測を行う場合、自律走行制御部65は省略される。
【0069】
(1-2-2-4.自己位置推定部)
自己位置推定部67は、所定の三次元座標系上での計測装置10の位置(以下、「自己位置」ともいう)を含むオドメトリ情報を推定する。例えば自己位置推定部67は、車輪速センサ41、加速度センサ43及び角速度センサ45により検出される計測装置10の移動速度、三軸方向の加速度及び三軸の軸周りの角速度の時系列データに基づいて、計測処理を開始するときの計測装置10の位置を基準とする計測装置10の位置(自己位置)の変化を算出する。
【0070】
計測装置10の位置は、例えば計測処理の開始位置を原点とする所定の三次元座標系上での計測装置10の位置を示す。計測装置10の位置は、計測装置10内に任意に設定される基準位置(x,y,z)の位置であってよく、例えば計測装置10の重心の位置であってもよく、複数の撮像装置21a~21fのうちのいずれかの撮像装置21の基準位置であってもよい。
【0071】
(自己位置推定処理)
図6は、自己位置推定部67による自己位置推定処理のフローチャートを示す。
自己位置推定部67は、開始位置を記録する(ステップS21)。開始位置は、計測装置10の位置を算出する際の基準となる位置である。例えば自己位置推定部67は、計測処理の開始時の計測装置10の基準位置(x,y,z)の位置座標を開始位置として記録する。なお、記録される基準位置は、具体的な緯度及び経度の情報により特定される必要はなく、任意の三次元座標の任意の点(例えば三次元座標系の原点)として記録されてよい。
【0072】
ただし、自己位置推定部67は、GNSSセンサ47から出力される地図データ上の位置情報をさらに考慮してオドメトリ情報を推定する場合、計測装置10の基準位置(x,y)の緯度及び経度の情報を開始位置のx座標及びy座標として記録してもよい。
【0073】
次いで、自己位置推定部67は、車輪速センサ41、加速度センサ43及び角速度センサ45から出力される検出情報を取得する(ステップS23)。加速度センサ43の検出情報は、計測装置10の前後方向、左右方向及び高さ方向それぞれに沿った三軸方向の加速度を示す情報を含む。また、角速度センサ45の検出情報は、計測装置10の前後方向、左右方向及び高さ方向それぞれに沿った三軸の軸周りの角速度を示す情報を含む。
【0074】
次いで、自己位置推定部67は、今回の演算周期で取得した車輪速センサ41、加速度センサ43及び角速度センサ45の検出情報から得られる加速度及び角速度の情報と、前回の演算周期で算出された計測装置10の位置の情報とに基づいて、計測装置10の自己位置を含むオドメトリ情報を演算する(ステップS25)。例えば自己位置推定部67は、ステップS21で記録した開始位置を原点とする三次元座標上における計測装置10の位置を算出する。
【0075】
自己位置推定部67は、測距センサ31及びカメラセンサ33のうちの少なくとも一方の計測データに基づいて計測装置10の位置及び向きを補正してもよい。例えば自己位置推定部67は、測距センサ31又はカメラセンサ33により検出される静止している物体と計測装置10との間の距離及び計測装置10から見た静止している物体が存在している位置(方向)の時間変化に基づいて、計測装置10の位置を補正してもよい。
【0076】
さらに、自己位置推定部67は、GNSSセンサ47から出力される位置情報に基づいて計測装置10の位置を補正してもよい。例えば自己位置推定部67は、GNSSセンサ47から出力される位置情報の時間変化に基づいて、計測装置10の位置を補正してもよい。
【0077】
次いで、自己位置推定部67は、今回の演算周期(t_n)で算出した計測装置10の位置(自己位置の位置座標)P_n(x_n,y_n)のデータを記憶部53に記録する(ステップS27)。
【0078】
次いで、自己位置推定部67は、計測が終了したか否かを判定する(ステップS29)。例えば自己位置推定部67は、計測装置10が計測終了位置に到達したときに計測が終了したと判定する。この他、自己位置推定部67は、ユーザ等により非常停止操作が行われたときに計測が終了したと判定してもよい。
【0079】
自己位置推定部67は、計測が終了したと判定しない場合(S29/No)、ステップS23に戻って計測装置10の自己位置推定処理を継続する。一方、自己位置推定部67は、計測が終了したと判定した場合(S29/Yes)、自己位置推定処理を終了する。
【0080】
なお、自己位置推定部67は、自律走行制御部65による駆動力源15及び操舵装置17の駆動量をさらに考慮してオドメトリ情報を推定してもよく、GNSSセンサ47から出力される計測装置10の位置情報の変化をさらに考慮してオドメトリ情報を推定してもよい。
【0081】
(1-2-2-5.撮像装置駆動部)
撮像装置駆動部69は、撮像装置21の駆動を制御する。撮像装置駆動部69は、撮像条件設定部63により設定された撮像条件(撮像解像度、絞り(F値)、シャッター速度及びISO感度)にしたがって撮像装置21による撮像を制御する。
【0082】
(撮像装置駆動処理)
図7は、撮像装置駆動部69による撮像装置駆動処理のフローチャートを示す。
撮像装置駆動部69は、撮像条件設定部63により設定された撮像条件(絞り(F値)、シャッター速度及びISO感度)を取得する(ステップS31)。次いで、撮像装置駆動部69は、撮像装置21の駆動を制御する(ステップS33)。例えば撮像装置駆動部69は、自律走行制御部65による計測装置10の自律走行制御の実行中に、設定された撮像条件で撮像装置21の駆動を制御し、計測対象の路面を撮像する処理を実行する。
【0083】
次いで、撮像装置駆動部69は、撮像装置21により生成された路面撮像データImg_αを、撮像装置21の番号α(α=1,2・・・M)の情報とともに記憶部53に保存する(ステップS35)。このとき、保存される路面撮像データImg_αは、撮像された時刻t_nの情報に関連付けて記録される。記憶部53には、計測装置10の基準位置(x,y,z)に対するそれぞれの撮像装置21a~21fの相対位置の情報が記録されている。このため、所定の三次元座標系上での計測装置10の基準位置(x,y,z)の位置に基づいて、各時刻t_nにおいてそれぞれの路面撮像データImg_αを生成した撮像装置21の位置(以下「撮像位置」ともいう)を特定可能になっている。
【0084】
次いで、撮像装置駆動部69は、計測が終了したか否かを判定する(ステップS37)。例えば撮像装置駆動部69は、自律走行制御が終了したときに計測が終了したと判定する。この他、撮像装置駆動部69は、ユーザ等により非常停止操作が行われたときに計測が終了したと判定してもよい。
【0085】
撮像装置駆動部69は、計測が終了したと判定しない場合(S37/No)、ステップS33に戻って撮像装置21の駆動を継続する。一方、撮像装置駆動部69は、計測が終了したと判定した場合(S37/Yes)、撮像装置駆動処理を終了する。
【0086】
<1-3.情報処理装置>
続いて、情報処理装置100を詳しく説明する。
【0087】
(1-3-1.情報処理装置の構成)
図4に示したように、情報処理装置100は、通信部101、データ処理部103及び記憶部105を備えている。通信部101は、データ処理部103が制御装置50との間で通信を行うためのインタフェースである。通信部101は、例えば移動体通信を介して制御装置50と通信を行うためのインタフェースであってよいが、制御装置50との通信方式は特に限定されるものではない。
【0088】
データ処理部103は、CPU(Central Processing Unit)又はGPU(Graphics Processing Unit)等の一つ又は複数のプロセッサや種々の周辺部品を備えて構成される。処理部51の一部又は全部は、ファームウェア等の更新可能なもので構成されてもよく、また、CPU等からの指令によって実行されるプログラムモジュール等であってもよい。
【0089】
データ処理部103は、一つ又は複数のプロセッサがコンピュータプログラムを実行することで以下に説明する機能を実現する装置として機能する。当該コンピュータプログラムは、データ処理部103が実行すべき後述する動作をプロセッサに実行させるためのコンピュータプログラムである。プロセッサにより実行されるコンピュータプログラムは、情報処理装置100に備えられた記憶部(メモリ)105として機能する記録媒体に記録されていてもよく、データ処理部103に内蔵された記録媒体又は情報処理装置100に外付け可能な任意の記録媒体に記録されていてもよい。
【0090】
コンピュータプログラムを記録する記録媒体としては、ハードディスク、フロッピーディスク及び磁気テープ等の磁気媒体、CD-ROM、DVD、及びBlu-ray(登録商標)等の光記録媒体、フロプティカルディスク等の磁気光媒体、RAM及びROM等の記憶素子、並びにUSBメモリ及びSSD等のフラッシュメモリ、その他のプログラムを格納可能な媒体であってよい。
【0091】
記憶部105は、データ処理部103と通信可能に接続された一つ又は複数のRAM又はROM等の記憶素子あるいはHDD又はSSD等の記憶媒体により構成される。ただし、記憶部105の種類や数は特に限定されない。記憶部105は、データ処理部103により実行されるコンピュータプログラムや、演算処理に用いられる種々のパラメータ、検出データ、演算結果等の情報を記憶する。記憶部105の一部は、ワーク領域として用いられる。
【0092】
(1-3-2.データ処理部)
データ処理部103は、路面撮像データImg_αを受信し、路面撮像データImg_α(α=1,2・・・M)から特徴点を抽出するとともに、SfM処理を用いて特徴点をマッチングし、路面撮像データImg_α(α=1,2・・・M)を位置合わせする。また、データ処理部103は、位置合わせをした路面撮像データImg_α(α=1,2・・・M)に、特徴点として現れた路面の凹凸状態を示すデータを反映した三次元の路面モデルを生成する。本実施形態において、データ処理部103は、重複領域特定処理、条件設定処理、特徴点マッチング処理及びモデル生成処理を実行する。
【0093】
データ処理部103は、重複領域特定処理において、複数の路面撮像データImg_α(α=1,2・・・M)の撮像範囲が相互に重なり合う少なくとも1つの重複領域を特定する。また、データ処理部103は、条件設定処理において、基準とする路面撮像データ(基準撮像データ)Img_Rの撮像範囲に重複する撮像範囲を含む路面撮像データImg_αの数と、基準撮像データImg_Rの撮像範囲とマッチング対象の路面撮像データ(対象撮像データ)の撮像範囲との相対位置関係と、に応じて特徴点をマッチングする際の条件を設定する。
【0094】
また、データ処理部103は、特徴点マッチング処理において、基準撮像データImg_R及び対象撮像データImg_Tの重複領域に存在する特徴点をマッチングし、路面撮像データImg_α(α=1,2・・・M)を位置合わせする。また、データ処理部103は、モデル生成処理において、位置合わせをした路面撮像データImg_α(α=1,2・・・M)に、特徴点として現れた路面の凹凸状態を示すデータを反映した三次元の路面モデルを生成する。
【0095】
(データ処理)
図8は、データ処理部103による、重複領域特定処理、マッチング条件設定処理及び特徴点マッチング処理を含むデータ処理のフローチャートを示す。なお、以下に示すフローチャートは、制御装置50が所定の演算周期ごとに撮像装置21により撮像した路面撮像データImg_αを情報処理装置100へ逐次送信する例を示す。
【0096】
データ処理部103は、撮像装置21により生成される路面撮像データImg_α(α=1,2・・・M)の1解像度(1ピクセル)当たりの実空間でのサイズを計算する(ステップS41)。具体的に、データ処理部103は、撮像装置21の焦点距離f、撮像装置21の設置位置の高さ(路面から撮像装置21までの垂直距離)Z及び撮像解像度に基づいて、1解像度当たりの高さ及び幅(縦×横)のサイズ(mm/pix.)を計算する。
【0097】
なお、撮像装置21の焦点距離f、撮像装置21の設置位置の高さ(路面から撮像装置21までの垂直距離)Z及び撮像解像度の情報は、あらかじめユーザにより指定されてもよく、計測開始時に計測装置10の制御装置50から受信してもよい。
【0098】
次いで、データ処理部103は、計測装置10から、路面撮像データImg_α_n(α=1,2・・・M)その他のデータを取得する(ステップS43)。取得するデータは、路面撮像データImg_α_n(α=1,2・・・M)、当該路面撮像データImg_α_n(α=1,2・・・M)を撮像した際の計測装置10の自己位置p_nのデータを含む。
【0099】
本実施形態の計測システム1で用いられる計測装置10は6台の撮像装置21a~21fを備えており、データ処理部103は、今回の演算周期(t_n)においてそれぞれの撮像装置21a~21fが生成した路面撮像データImg_α_n(α=1,2・・・6)を取得する。データ処理部103は、取得した路面撮像データImg_α_n(α=1,2・・・6)及び自己位置p_nのデータを記憶部105へ保存する。
【0100】
次いで、データ処理部103は、取得した路面撮像データImg_α_n(α=1,2・・・M)の撮像範囲が相互に重なり合う少なくとも1つの重複領域を特定する重複領域特定処理を実行する(ステップS45)。
【0101】
(重複領域特定処理)
図9図10は、データ処理部103による重複領域特定処理のフローチャートを示す。
データ処理部103は、記憶部105に記録されている前々回の演算周期(t_n-2)から今回の演算周期(t_n)までの路面撮像データImg_α_n-2,Img_α_n-1,Img_α_n(α=1,2・・・M)を取得する(ステップS61)。
【0102】
次いで、データ処理部103は、記憶部105に記録されている前々回の演算周期(t_n-2)から今回の演算周期(t_n)までの計測装置10の自己位置p_n-2,p_n-1,p_nのデータを取得する(ステップS63)。自己位置p_n-2,p_n-1,p_nのデータは、所定の三次元座標上の位置座標のデータであってよい。
【0103】
次いで、データ処理部103は、ステップS63で取得した自己位置p_n-2~p_nのデータに基づいて、時刻t_n-2から時刻t_n-1の計測装置10の移動ベクトルVe_X_n-1と、時刻t_n-1から時刻t_nの計測装置10の移動ベクトルVe_X_nとを算出する(ステップS65)。それぞれの移動ベクトルVe_Xは、時刻t_n-2から時刻t_n-1、時刻t_n-1から時刻t_nそれぞれにおける計測装置10の自己位置の変化の向き及び大きさ(距離)を示す。本実施形態では、移動ベクトルVe_Xは、所定の三次元座標系上での計測装置10の自己位置の変化の向き及び距離を示す。
【0104】
次いで、データ処理部103は、ステップS65で算出した移動ベクトルVe_X_n-1,Ve_X_nの大きさ(mm)を、単位がピクセルであるピクセル移動量(pix.)に変換する(ステップS67)。具体的に、データ処理部103は、それぞれの移動ベクトルVe_X_n-1,Ve_X_nの高さ方向成分及び幅方向成分(mm)を、ステップS41で算出した1ピクセル当たりの高さ及び幅(縦×横)のサイズ(mm/pix.)でそれぞれ割ることによりピクセル単位に換算し、移動ベクトルVe_X_n-1,Ve_X_nをピクセル単位で表したピクセル移動量に変換する。
【0105】
図11は、ステップS61~S65の処理を説明するために示す図である。理解を容易にするために、図11には、時刻t_n-2,t_n-1,t_nにおいて3台の撮像装置により撮像した路面撮像データImg_α_n-2~Img_α_n(α=1,2,3)が示されている。また、図11には、計測装置10の自己位置P_n-2,P_n-1、P_nが示されている。計測装置10の自己位置P_n-2,P_n-1、P_nは図示の上の方向へ移動しており、つまり、路面撮像データImg_α_n-2~Img_α_n(α=1,2,3)が示す撮像範囲は、各時刻毎に図示の上の方向へ移動している。
【0106】
時刻t_n-2に撮像された路面撮像データImg_1_n-2,Img_2_n-2,Img_3_n-2は、図示の左右方向に並んで示されている。それぞれの路面撮像データImg_1_n-2,Img_2_n-2,Img_3_n-2の撮影範囲は、互いに重複している。同様に、時刻t_n-1に撮像された路面撮像データImg_1_n-1,Img_2_n-1,Img_3_n-1は、図示の左右方向に並んで示されている。それぞれの路面撮像データImg_1_n,Img_2_n,Img_3_nの撮影範囲は、互いに重複している。同様に、時刻t_nに撮像された路面撮像データImg_1_n,Img_2_n,Img_3_nは、図示の左右方向に並んで示されている。それぞれの路面撮像データImg_1_n,Img_2_n,Img_3_nの撮影範囲は、互いに重複している。
【0107】
さらに、時刻t_n-2で撮像された路面撮像データImg_α_n-2(α=1,2,3)、時刻t_n-1で撮像された路面撮像データImg_α_n-1(α=1,2,3)、及び時刻t_nで撮像された路面撮像データImg_α_n(α=1,2,3)の撮影範囲は、互いに重複している。
【0108】
データ処理部103は、ステップS61において、路面撮像データImg_α_n-2~Img_α_n(α=1,2,3)を取得するとともに、ステップS63において、各時刻t_n-2~t_nにおける計測装置10の自己位置P_n-2~P_nのデータを取得する。データ処理部103は、ステップS65において、計測装置10の自己位置P_n-2~P_nのデータから、時刻t_n-2から時刻t_n-1の計測装置10の移動ベクトルVe_X_n-1(Δx_n-1,Δy_n-1,Δz_n-1)と、時刻t_n-1から時刻t_nの計測装置10の移動ベクトルVe_X_n(Δx_n,Δy_n,Δz_n)とを算出する。
【0109】
なお、データ処理を開始した後の少なくとも2回目の演算周期までは、前回の演算周期、あるいは前回及び前々回の演算周期の取得データは存在しない。この場合、データ処理部103は、ステップS61~S63において取得できなかったデータがある場合には、当該データ及びステップS65における演算結果が存在しないものとして記憶部53に記録する。
【0110】
図10に戻り、次いで、データ処理部103は、ステップS63で取得した前々回の演算周期(t_n-2)から今回の演算周期(t_n)までの計測装置10の自己位置p_n-2~p_nの周辺で撮影された路面撮像データImg_α_n-2,Img_α_n-1,Img_α_n,(α=1,2・・・M)の保存データがあるか否かを判定する(ステップS69)。つまり、データ処理部103は、今回の演算周期t_n、前回の演算周期t_n-1及び前々回の演算周期t_n-2それぞれの路面撮像データImg_α_n-2,Img_α_n-1,Img_α_n,(α=1,2・・・M)が揃っているか否かを判定する。
【0111】
データ処理部103は、ステップS69で否定判定した場合(S69/No)、ステップS77へ進む。つまり、データ処理を開始した後の少なくとも2回目の演算周期までは否定判定となり、この場合、データ処理部103は、ステップS77へ進む。
【0112】
一方、データ処理部103は、ステップS69で肯定判定した場合(S69/Yes)、過去に自己位置p_n-2~p_n周辺で撮影された路面撮像データImg_α(α=1,2・・・M)と、それぞれの路面撮像データImg_α(α=1,2・・・M)の撮像位置C_α(α=1,2・・・M)を算出する(ステップS71)。
【0113】
撮像位置C_α(α=1,2・・・M)は、それぞれの路面撮像データImg_α(α=1,2・・・M)を生成した撮像装置21の所定の三次元座標系上の位置である。データ処理部103は、それぞれの時刻t_n-2~t_nにおける計測装置10の基準位置の位置(自己位置)P_n-2~P_nと、それぞれの撮像装置21a~21fと計測装置10の基準位置との相対位置関係とに基づいて、撮像位置C_α(α=1,2・・・M)を算出する。
【0114】
次いで、データ処理部103は、前回の演算周期(T_n-1)に取得した路面撮像データImg_α_n-1(α=1,2・・・M)について、当該路面撮像データImg_α_n-1(α=1,2・・・M)の撮像位置C_αから他の路面撮像データImg_α(α=1,2・・・M)の撮像位置C_αまでのベクトルVe_Y_α(α=1,2・・・M)を算出する(ステップS73)。本実施形態では、ベクトルVe_Yは、所定の三次元座標系上での所定の路面撮像データ(以下「対象撮像データ」ともいう)Img_α_n-1の撮像位置C_α_n-1から他の路面撮像データImg_α(α=1,2・・・M)の撮像位置C_αへ向かうベクトルの向き及び距離を示す。つまり、ベクトルVe_Yは、所定の対象撮像データImg_T_n-1を基準とする、それぞれの路面撮像データImg_α(α=1,2・・・M)の撮像位置のずれの方向及び大きさを表す。
【0115】
図12は、図11に示した例における、時刻t_n-1の路面撮像データImg_2_n-1の撮像位置C_2_n-1から他の路面撮像データImg_α(α=1,2,3)の撮像位置C_α(α=1,2,3)までのベクトルVe_Y_α_n-2,Ve_Y_α_n-1,Ve_Y_α_n(α=1,2,3)を示す。これらのベクトルVe_Y_α_n-2,Ve_Y_α_n-1,Ve_Y_α_n(α=1,2,3)は、路面撮像データImg_2_n-1を基準とする、他の路面撮像データImg_αの撮像位置C_αのずれの方向及び大きさを表す。
【0116】
路面撮像データImg_2_n-1の撮像位置C_2_n-1から、同時刻t_n-1で取得した他の路面撮像データImg_1_n-1,Img_3_n-1の撮像位置C_1_n-1,C_3_n-1までのベクトルVe_Y_n-1は、ステップS71で算出した撮像位置C_α_n-1(α=2)から算出してもよく、撮像装置21同士の相対位置関係の情報に基づいて算出してもよい。データ処理部103は、前回の演算周期(t_n-1)に取得した路面撮像データImg_α_n-1(α=1,2,3)のすべてについて、それぞれの路面撮像データImg_α_n-1の撮像位置C_α_n-1から他の路面撮像データImg_αの撮像位置C_αまでのベクトルVe_Y_αを算出する。
【0117】
図10に戻り、データ処理部103は、ステップS73で算出したベクトルVe_Y_α(α=1,2・・・M)を、ステップS41で算出した値を用いてピクセルを単位とする値に変換する(ステップS75)。
【0118】
次いで、データ処理部103は、時刻t_n-1の路面撮像データImg_α_n-1(α=1,2・・・M)の撮像範囲が、それぞれ他の路面撮像データImg_α(α=1,2・・・M)の撮像範囲と相互に重なり合う重複領域を特定する(ステップS77)。具体的にデータ処理部103は、路面撮像データImg_α(α=1,2・・・M)の縦横のサイズ(pix.)と、ステップS75で算出したベクトルVe_Y_α(α=1,2・・・M)の値(pix.)とに基づいて、路面撮像データImg_α(α=1,2・・・M)の撮像範囲が相互に重なり合う重複領域を算出する。データ処理部103は、算出した重複領域の情報を記憶部105に記録する。
【0119】
図13は、図12に示した例における重複領域を示す説明図である。時刻t_n-1の路面撮像データImg_2_n-1を基準の画像とした場合、時刻t_nの路面撮像データImg_1_nの撮像範囲における、時刻t_n-1の路面撮像データImg_2_n-1の撮像範囲と重複する重複領域OL_1_nは、路面撮像データImg_1_nの右斜め下方を占める。また、時刻t_nの路面撮像データImg_2_nの撮像範囲における、時刻t_n-1の路面撮像データImg_2_n-1の撮像範囲と重複する重複領域OL_2_nは、路面撮像データImg_2_nの下方を占める。時刻t_nの路面撮像データImg_3_nの撮像範囲における、時刻t_n-1の路面撮像データImg_2_n-1の撮像範囲と重複する重複領域OL_3_nは、路面撮像データImg_3_nの左斜め下方を占める。
【0120】
また、時刻t_n-1の路面撮像データImg_1_n-1の撮像範囲における、時刻t_n-1の路面撮像データImg_2_n-1の撮像範囲と重複する重複領域OL_1_n-1は、路面撮像データImg_1_n-1の右方を占める。時刻t_n-1の路面撮像データImg_3_n-1の撮像範囲における、時刻t_n-1の路面撮像データImg_2_n-1の撮像範囲と重複する重複領域OL_3_n-1は、路面撮像データImg_3_n-1の左方を占める。
【0121】
また、時刻t_n-2の路面撮像データImg_1_n-2の撮像範囲における、時刻t_n-1の路面撮像データImg_2_n-1の撮像範囲と重複する重複領域OL_1_n-2は、路面撮像データImg_1_n-2の右斜め上方を占める。また、時刻t_n-2の路面撮像データImg_2_n-2の撮像範囲における、時刻t_n-1の路面撮像データImg_2_n-1の撮像範囲と重複する重複領域OL_2_n-2は、路面撮像データImg_2_n-2の上方を占める。時刻t_n-2の路面撮像データImg_3_n-2の撮像範囲における、時刻t_n-1の路面撮像データImg_2_n-1の撮像範囲と重複する重複領域OL_3_n-2は、路面撮像データImg_3_n-2の左斜め上方を占める。
【0122】
つまり、重複領域OL_1_nは、基準とした路面撮像データImg_2_n-1の左斜め上方を占める。重複領域OL_2_nは、基準とした路面撮像データImg_2_n-1の上方を占める。重複領域OL_3_nは、基準とした路面撮像データImg_2_n-1の右斜め上方を占める。重複領域OL_1_n-1は、基準とした路面撮像データImg_2_n-1の左方を占める。重複領域OL_3_n-1は、基準とした路面撮像データImg_2_n-1の右方を占める。重複領域OL_1_n-2は、基準とした路面撮像データImg_2_n-1の左斜め下方を占める。重複領域OL_2_n-2は、基準とした路面撮像データImg_2_n-1の下方を占める。重複領域OL_3_n-2は、基準とした路面撮像データImg_2_n-1の右斜め下方を占める。
【0123】
図8に戻り、データ処理部103は、特定した重複領域それぞれについて特徴点をマッチングする際の条件を設定し、設定した条件にしたがって特徴点マッチング処理を実行する(ステップS47)。
【0124】
(特徴点マッチング処理)
図14は、データ処理部103による特徴点マッチング処理のフローチャートを示す。
データ処理部103は、時刻t_n-2,t_n-1,t_nの路面撮像データImg_α(α=1,2・・・M)から特徴点を抽出する(ステップS81)。特徴点は、例えば路面撮像データImg_α(α=1,2・・・M)において、隣り合うピクセル間の輝度の変化量(特徴量)が所定の閾値以上となる点であってよいが、他の特徴量を用いてもよい。撮像データから特徴点を抽出する方法は従来公知の方法であってよいため、詳しい説明は省略する。
【0125】
次いで、データ処理部103は、抽出した特徴点を、特徴量の大きい順にソート(並べ替え)する(ステップS83)。図15及び図16は、路面撮像データImg_α(α=1,2・・・M)から抽出した特徴点のリスト及び特徴量の大きい順に特徴点をソート(並べ替え)したリストの例を示す。それぞれの特徴点の情報は、当該特徴点を含む路面撮像データImg_α(α=1,2・・・M)を撮像した撮像装置21の番号(1,2・・・M)、画像名、特徴点の位置(x,y)及び特徴量(輝度変化量)の情報を含む。
【0126】
特徴点の位置(x,y)は、それぞれの路面撮像データImg_α(α=1,2・・・M)中の特徴点の位置を示す。例えばデータ処理部103は、路面撮像データImg_αの横方向をx軸、縦方向をy軸として、特徴点に相当する画素の位置を特徴点の位置(x,y)とする。
【0127】
図14に戻り、次いで、データ処理部103は、時刻t_n-1の路面撮像データImg_α_n-1のなかから、基準とする路面撮像データ(基準撮像データ)Img_Rを設定する(ステップS85)。設定する順序は特に限定されない。
【0128】
次いで、データ処理部103は、基準撮像データImg_Rとの間で特徴点をマッチングする対象の路面撮像データ(対象撮像データ)Img_Tを設定する(ステップS87)。図13に示した例において、時刻n-1の路面撮像データImg_2_n-1を基準撮像データImg_Rとした場合、その他の8枚の路面撮像データImg_α(α=1,2・・・M)のうちのいずれかを、特徴点をマッチングする対象撮像データImg_Tに設定する。
【0129】
次いで、データ処理部103は、基準撮像データImg_Rの撮像範囲の重複数と、対象撮像データImg_Tの撮像範囲の相対位置関係に応じて、特徴量の大きい順に上位のいくつの特徴点を用いるかを決定する(ステップS89)。基準撮像データImg_Rの撮像範囲の重複数は、基準撮像データImg_Rの撮像範囲に重複する撮像範囲を含む路面撮像データImg_α(α=1,2・・・M)の合計数を表す。基準撮像データImg_Rの撮像範囲に重複する撮像範囲を含む路面撮像データImg_α(α=1,2・・・M)は、基準撮像データImg_Rも含む。
【0130】
図13に示した例において、時刻n-1の路面撮像データImg_2_n-1を基準撮像データImg_Rとした場合、基準撮像データImg_Rの重複数は「9」となる。なお、図13に示した例において、時刻n-1の路面撮像データImg_3_n-1あるいは路面撮像データImg_3_n-1を基準撮像データImg_Rとした場合の重複数は「6」となる。
【0131】
基準撮像データImg_Rの撮像範囲と対象撮像データImg_Tの撮像範囲の相対位置関係は、基準撮像データImg_R内での、対象撮像データImg_Tとの重複領域の位置を表す。本実施形態では、基準撮像データImg_Rの撮像範囲と対象撮像データImg_Tの撮像範囲の相対位置は、「左方又は右方」、「前方又は後方」、「斜め方向」のいずれかとなる。
【0132】
図13に示した例において、基準撮像データImg_R(Img_2_n-1)の撮像範囲に対する路面撮像データImg_1_n,Img_3_n,Img_1_n-2,Img_3_n-2の撮像範囲の相対位置は「斜め方向」となる。また、基準撮像データImg_R(Img_2_n-1)の撮像範囲に対する路面撮像データImg_1_n-1,Img_3_n-1の撮像範囲の相対位置は「左方又は右方」となる。基準撮像データImg_R(Img_2_n-1)の撮像範囲に対する路面撮像データImg_2_n,Img_2_n-2の撮像範囲の相対位置は「前方又は後方」となる。
【0133】
基準撮像データImg_Rの重複数の大小は、路面撮像データImg_α間で特徴点をマッチングする処理回数の大小を意味し、基準撮像データImg_Rの重複数が大きいほど特徴点をマッチングする処理回数が多くなる。このため、データ処理部103は、基準撮像データImg_Rの重複数が大きいほど、特徴点マッチング処理に用いる特徴点の数を減らし、処理負荷あるいは処理時間の増大を抑制する。
【0134】
また、撮像範囲の相対位置が「左方又は右方」である場合、基準撮像データImg_R及び対象撮像データImg_Tは同時刻t_n-1に撮影された路面撮像データImg_α_n-1である。基準撮像データImg_Rの撮像位置から対象撮像データImg_TへのベクトルVe_Yは、撮像装置21の相対位置の値として精度が保証される。
【0135】
一方、撮像範囲の相対位置が「前方又は後方」あるいは「斜め方向」である場合、基準撮像データImg_Rの撮像位置から対象撮像データImg_TへのベクトルVe_Yは、自己位置推定部67による推定結果を用いて算出される。撮像範囲の相対位置が「前方又は後方」あるいは「斜め方向」である場合、撮像範囲の相対位置が「左方又は右方」である場合のベクトルVe_Yに比べて精度が低くなる場合がある。このため、データ処理部103は、撮像範囲の相対位置が「左方又は右方」である場合、撮像範囲の相対位置が「前方又は後方」あるいは「斜め方向」である場合に比べて、特徴点マッチング処理に用いる特徴点の数を多くして、特徴点のマッチングの精度を保証する。
【0136】
また、撮像範囲の相対位置が「斜め方向」である場合、撮像範囲の相対位置が「前方又は後方」である場合に比べて重複領域の面積が小さい。このため、データ処理部103は、撮像範囲の相対位置が「斜め方向」である場合、撮像範囲の相対位置が「前方又は後方」である場合に比べて、特徴点マッチング処理に用いる特徴点の数を少なくして、特徴点マッチング処理の負荷あるいは処理時間の増大を抑制する。
【0137】
図17は、図13に示した例において、基準撮像データImg_Rの重複数と、撮像範囲の相対位置(重複領域の位置)とに基づいて設定される、特徴点マッチング処理に用いる特徴点の数を示す説明図である。
【0138】
図13に示した例では、時刻n-1の路面撮像データImg_α_n-1を基準撮像データImg_Rとする場合、重複数は「6」又は「9」である。計測装置10が撮像装置21を4台以上備える場合、撮影開始時刻あるいは撮影終了時刻の路面撮像データImg_α、及び、左右両側の撮像装置21(21a,21f)の路面撮像データImg_α(α=1,M)を基準撮像データImg_Rとしたときの重複数は「6」以下であり、それ以外の路面撮像データImg_αを基準撮像データImg_Rとした場合の重複数は「9」である。
【0139】
したがって、データ処理部103は、重複数が「通常(9)」であるか「少(6以下)」であるかによって、特徴点マッチング処理に用いる特徴点の数を異ならせる。具体的に、データ処理部103は、重複数が「通常(9)」である場合、重複数が「少(6以下)」である場合に比べて、特徴点マッチング処理に用いる特徴点の数を少なくする。また、データ処理部103は、撮像範囲の相対位置が「左方又は右方」ある場合、撮像範囲の相対位置が「前方又は後方」ある場合に比べて、特徴点マッチング処理に用いる特徴点の数を多くする。また、データ処理部103は、撮像範囲の相対位置が「斜め方向」ある場合、撮像範囲の相対位置が「前方又は後方」ある場合に比べて、特徴点マッチング処理に用いる特徴点の数を少なくする。
【0140】
具体的に、図17に示した例では、重複数が「少(6以下)」かつ撮像範囲の相対位置が「左方又は右方」である場合の特徴点の数「X」を基準として、重複数が「通常(9)」かつ撮像範囲の相対位置が「左方又は右方」である場合の特徴点の数が「X/2」に設定されている。また、重複数が「少(6以下)」かつ撮像範囲の相対位置が「前方又は後方」である場合の特徴点の数が「X/2」に設定され、重複数が「少(6以下)」かつ撮像範囲の相対位置が「斜め方向」である場合の特徴点の数が「X/3」に設定されている。また、重複数が「通常(9)」かつ撮像範囲の相対位置が「前方又は後方」である場合の特徴点の数が「X/3」に設定され、重複数が「通常(9)」かつ撮像範囲の相対位置が「斜め方向」である場合の特徴点の数が「X/4」に設定されている。
【0141】
なお、基準となる特徴点の数「X」は、マッチング処理の結果の精度等を考慮して、任意の適切な数に設定されてよい。
【0142】
図14に戻り、データ処理部103は、ステップS89において、特徴点マッチングに用いる特徴点の数を決定した後、抽出した特徴点のなかから、特徴量が大きい順に、決定した数の特徴点を用いて、特徴点をマッチングする(ステップS91)。具体的に、データ処理部103は、基準撮像データImg_R及び対象撮像データImg_Tのうち、ステップS45で特定された重複領域OL_α(α=1,2・・・M)内に存在する特徴点のなかから、特徴量が大きい順に所定数の特徴点を選択して特徴点をマッチングする。
【0143】
図18図20は、図13に示した例において、基準撮像データImg_R(Img_2_n-1)の重複数と、対象撮像データImg_Tとの相対位置関係に基づいて選択される特徴点を示す説明図である。基準撮像データImg_Rの特徴点の位置は二次元座標(xBase,yBase)で示され、対象撮像データImg_Tの特徴点の位置は二次元座標(xTarget,yTarget)で示されている。
【0144】
対象撮像データImg_Tの撮像範囲が基準撮像データImg_Rの撮像範囲に対して左方又は右方にある場合、データ処理部103は、基準撮像データImg_R及び対象撮像データImg_Tに共通して含まれる特徴点のうち、特徴量が大きい順に「X/2」の数の特徴点を選択する。対象撮像データImg_Tの撮像範囲が基準撮像データImg_Rの撮像範囲に対して前方又は後方にある場合、データ処理部103は、基準撮像データImg_R及び対象撮像データImg_Tに共通して含まれる特徴点のうち、特徴量が大きい順に「X/3」の数の特徴点を選択する。対象撮像データImg_Tの撮像範囲が基準撮像データImg_Rの撮像範囲に対して斜め方向にある場合、データ処理部103は、基準撮像データImg_R及び対象撮像データImg_Tに共通して含まれる特徴点のうち、特徴量が大きい順に「X/4」の数の特徴点を選択する。
【0145】
データ処理部103は、選択した特徴点を用いて特徴点をマッチングし、基準撮像データImg_Rと対象撮像データImg_Tとを位置合わせする。撮像データ間で特徴点をマッチングする処理は、SfM処理等の従来公知の手法により実行されてよいため、詳しい説明は省略する。
【0146】
次いで、データ処理部103は、基準撮像データImg_Rと、当該基準撮像データImg_Rと重複するすべての対象撮像データImg_Tとの間での特徴点マッチングをすべて終了したか否かを判定する(ステップS93)。例えば図13に示した例では、データ処理部103は、時刻t_n-1の路面撮像データImg_2_n-1を基準撮像データImg_Rとしたときに、基準撮像データImg_R(Img_2_n-1)と撮影範囲が重なり合う8つすべての路面撮像データImg_α(α=1,2,3)との間での特徴点マッチングが終了したか否かを判定する。
【0147】
データ処理部103は、ステップS93を否定判定した場合(S93/No)、ステップS87へ戻り、基準撮像データImg_Rとの間で特徴点をマッチングをしていない路面撮像データImg_αを対象撮像データImg_Tに設定し、ステップS89~ステップS93の処理を実行する。
【0148】
一方、データ処理部103は、ステップS93を肯定判定した場合(S93/Yes)、時刻t_n-1の路面撮像データImg_α_n-1のすべてを基準撮像データImg_Rとしたか否かを判定する(ステップS95)。つまり、データ処理部103は、時刻t_n-1の路面撮像データImg_α_n-1のすべてを基準撮像データImg_Rとして、他の路面撮像データImg_α(α=1,2・・・M)との間で特徴点マッチングを実行したか否かを判定する。
【0149】
データ処理部103は、ステップS95を否定判定した場合(S95/No)、ステップS85へ戻り、時刻t_n-1の路面撮像データImg_α_n-1のうち基準撮像データImg_Rに設定していない路面撮像データImg_α_n-1を基準撮像データImg_Rに設定し、ステップS87~ステップS95の処理を実行する。一方、データ処理部103は、ステップS95を肯定判定した場合(S95/Yes)、今回の演算周期(時刻t_n)における特徴点マッチング処理を終了する。
【0150】
図8に戻り、データ処理部103は、特徴点マッチング処理の終了後、路面撮像データImg_α(α=1,2・・・M)を更新し、過去の撮像データとして保存する(ステップS49)。つまり、時刻t_n,t_n-1,t_n-2・・・の路面撮像データImg_α_n,Img_α_n-1,Img_α_n-2・・・をそれぞれ時刻t_n-1,t_n-2,t_n-3・・・の路面撮像データImg_α_n-1,Img_α_n-2,Img_α_n-3・・・として記憶部53に保存する。
【0151】
次いで、データ処理部103は、特徴点マッチング処理により位置合わせした路面撮像データImg_α(α=1,2・・・M)を用いて、三角測量の原理により復元された三次元点群データを構築し、路面モデルを生成する(ステップS51)。本実施形態において、データ処理部103は、MVS(Multi-View Stereo)処理により三次元点群データを構築し、路面モデルを生成する。ただし、三次元点群データにより構成される路面モデルを生成する手法は特に限定されるものではない。
【0152】
次いで、データ処理部103は、モデル生成処理を終了するか否かを判定する(ステップS53)。例えばデータ処理部103は、制御装置50からの路面撮像データImg_αの送信がなくなってから所定時間経過したときにモデル生成処理を終了すると判定してもよい。この他、データ処理部103は、制御装置50から計測終了を示す信号が送信されたときにモデル生成処理を終了すると判定してもよい。
【0153】
データ処理部103は、モデル生成処理を終了すると判定しない場合(S53/No)、ステップS43に戻ってモデル生成処理を継続する。一方、データ処理部103は、モデル生成処理を終了すると判定した場合(S53/Yes)、モデル生成処理を終了する。
【0154】
以上説明したように、本実施形態に係る計測システム1の情報処理装置100は、複数の路面撮像データImg_α間での特徴点マッチング処理を実行するにあたり、路面撮像データImg_α同士の撮像範囲のずれのベクトルVe_Yに基づいて重複領域を特定する。また、情報処理装置100は、特徴点をマッチングする際の基準撮像データImg_Rの撮像範囲に重複する撮像範囲を含む路面撮像データImg_αの数(重複数)と、基準撮像データImg_Rの撮像範囲とマッチング対象の路面撮像データImg_αの撮像範囲との相対位置関係とに基づいて、特徴点マッチング処理に用いる特徴点の数を決定する。そして、情報処理装置100は、重複領域内に存在する特徴点のうち、特徴量の大きい順に、決定した数の特徴点を選択して特徴点マッチング処理を実行する。
【0155】
これにより、情報処理装置100は、すべての特徴点を用いずに、特徴点を抽出する範囲を限定するとともに、特徴量の大きい一部の特徴点を用いて特徴点マッチング処理を実行することができる。したがって、特徴点マッチング処理に要する処理負荷及び処理時間を抑制することができる。
【0156】
また、本実施形態に係る計測システム1の情報処理装置100は、基準撮像データImg_Rの撮像範囲に重複する撮像範囲を含む路面撮像データImg_αの数(重複数)が多いほど、特徴点のマッチングに用いる特徴点の数を少なくする。これにより、基準撮像データImg_Rと特徴点をマッチングする対象撮像データImg_Tの数が多いほど、それぞれの対象撮像データImg_Tとの間で特徴点をマッチングする際の処理負荷及び処理時間が軽減され、特徴点マッチング処理に要する合計の処理負荷及び処理時間の増大を抑制することができる。また、この場合であっても、情報処理装置100は、重複領域内に存在する特徴点のうち、特徴量の大きい順に、決定した数の特徴点を選択して特徴点マッチング処理を実行するため、特徴点マッチング処理の精度の低下を抑制することができる。
【0157】
また、本実施形態に係る計測システム1の情報処理装置100は、基準撮像データImg_Rの撮像範囲に対する対象撮像データImg_Tの撮像範囲の相対位置が、基準撮像データImg_Rの左右方向、上下方向、又は、斜め方向のうちのどの方向に位置するかによって、特徴点のマッチングに用いる特徴点の所定数を設定する。これにより、相対位置の情報の精度、あるいは、重複領域の面積の大きさに応じて、特徴点マッチング処理に用いる特徴点の数が決定され、特徴点マッチング処理の精度の低下を抑制しつつ、特徴点マッチング処理に要する合計の処理負荷及び処理時間の増大を抑制することができる。
【0158】
また、本実施形態に係る計測システム1において、撮像装置21は、移動可能な計測装置10に搭載され、計測システム1は、計測装置10の自己位置を推定する自己位置推定処理を実行する制御装置50を備え、情報処理装置100は、重複領域特定処理において、制御装置50により推定された計測装置10の自己位置の情報に基づいて重複領域を特定する。このため、情報処理装置100は、特徴点マッチング処理を実行する前に、複数の路面撮像データImg_αが互いに重なり合う重複領域を特定することができ、特徴点マッチング処理を実行する際に特徴点を選択する領域を絞ることができる。
【0159】
<<2.第2の実施の形態>>
続いて、本開示の第2の実施の形態に係る計測システムを説明する。
【0160】
第2の実施の形態に係る計測システムは、情報処理装置100のデータ処理部103により実行される特徴点マッチング処理が第2の実施の形態に係る計測システムの場合と異なっている。以下、本実施形態に係る計測システムの情報処理装置により実行される特徴点マッチング処理として、図8に示したフローチャートのステップS47で実行される特徴点マッチング処理を説明する。
【0161】
図21は、データ処理部103による特徴点マッチング処理のフローチャートを示す。
データ処理部103は、時刻t_n-1の路面撮像データImg_α_n-1のなかから、基準とする路面撮像データ(基準撮像データ)Img_Rを設定する(ステップS101)。設定する順序は特に限定されない。次いで、データ処理部103は、基準撮像データImg_Rとの間で特徴点をマッチングする対象の路面撮像データ(対象撮像データ)Img_Tを設定する(ステップS103)。ステップS101~ステップS103の処理は、図14に示すフローチャートのステップS85~ステップS87の処理に準じて実行される。
【0162】
次いで、データ処理部103は、基準撮像データImg_Rの撮像範囲の重複数と、対象撮像データImg_Tの撮像範囲の相対位置関係に応じて、基準撮像データImg_R及び対象撮像データImg_Tの撮像解像度を補正する(ステップS105)。
【0163】
本実施形態では、データ処理部103は、基準撮像データImg_Rの重複数が大きいほど撮像解像度を低くし、処理負荷あるいは処理時間の増大を抑制する。また、データ処理部103は、撮像範囲の相対位置が「左方又は右方」である場合、撮像範囲の相対位置が「前方又は後方」あるいは「斜め方向」である場合に比べて撮像解像度を高くして、特徴点のマッチングの精度を保証する。また、データ処理部103は、撮像範囲の相対位置が「斜め方向」である場合、撮像範囲の相対位置が「前方又は後方」である場合に比べて撮像解像度を低くして、特徴点マッチング処理の負荷あるいは処理時間の増大を抑制する。
【0164】
図22は、基準撮像データImg_Rの重複数と、撮像範囲の相対位置(重複領域の位置)とに基づいて設定される撮像解像度を示す説明図である。図22に示した例では、データ処理部103は、重複数が「通常(9)」であるか「少(6以下)」であるかによって撮像解像度を異ならせる。具体的に、データ処理部103は、重複数が「通常(9)」である場合、重複数が「少(6以下)」である場合に比べて撮像解像度を低下させる。また、データ処理部103は、撮像範囲の相対位置が「左方又は右方」ある場合、撮像範囲の相対位置が「前方又は後方」ある場合に比べて撮像解像度を高くする。また、データ処理部103は、撮像範囲の相対位置が「斜め方向」ある場合、撮像範囲の相対位置が「前方又は後方」ある場合に比べて撮像解像度を低くする。
【0165】
具体的に、重複数が「少(6以下)」かつ撮像範囲の相対位置が「左方又は右方」である場合の撮像解像度を「1.0」として、重複数が「通常(9)」かつ撮像範囲の相対位置が「左方又は右方」である場合の撮像解像度が「0.5」に設定されている。また、重複数が「少(6以下)」かつ撮像範囲の相対位置が「前方又は後方」である場合の撮像解像度が「0.5」に設定され、重複数が「少(6以下)」かつ撮像範囲の相対位置が「斜め方向」である場合の撮像解像度が「0.33」に設定されている。また、重複数が「通常(9)」かつ撮像範囲の相対位置が「前方又は後方」である場合の撮像解像度が「0.33」に設定され、重複数が「通常(9)」かつ撮像範囲の相対位置が「斜め方向」である場合の撮像解像度が「0.25」に設定されている。
【0166】
したがって、図23に示すように、データ処理部103は、基準撮像データImg_R(Img_2_n-1)とマッチングする対象撮像データImg_Tを路面撮像データImg_3_nとした場合、基準撮像データImg_R及び対象撮像データImg_Tの撮像解像度を0.25に補正する。また、データ処理部103は、基準撮像データImg_R(Img_2_n-1)とマッチングする対象撮像データImg_Tを路面撮像データImg_3_n-1とした場合、基準撮像データImg_R及び対象撮像データImg_Tの撮像解像度を0.5に補正する。また、データ処理部103は、基準撮像データImg_R(Img_2_n-1)とマッチングする対象撮像データImg_Tを路面撮像データImg_2_n-2とした場合、基準撮像データImg_R及び対象撮像データImg_Tの撮像解像度を0.33に補正する。
【0167】
なお、標準の撮像解像度「1.0」の場合の具体的な撮像解像度は、マッチング処理の結果の精度等を考慮して、任意の適切な数に設定されてよい。
【0168】
次いで、データ処理部103は、基準撮像データImg_Rと対象撮像データImg_Tとの重複領域からそれぞれ特徴点を抽出する(ステップS107)。特徴点は、例えば隣り合うピクセル間の輝度の変化量(特徴量)が所定の閾値以上となる点であってよいが、他の特徴量を用いてもよい。撮像データから特徴点を抽出する方法は従来公知の方法であってよいため、詳しい説明は省略する。
【0169】
次いで、データ処理部103は、抽出した特徴点を用いて、特徴点をマッチングする(ステップS109)。撮像データ間で特徴点をマッチングする処理は、SfM処理等の従来公知の手法により実行されてよいため、詳しい説明は省略する。
【0170】
次いで、データ処理部103は、基準撮像データImg_Rと、当該基準撮像データImg_Rと重複するすべての対象撮像データImg_Tとの間での特徴点マッチングをすべて終了したか否かを判定する(ステップS111)。データ処理部103は、ステップS111を否定判定した場合(S111/No)、ステップS103へ戻り、基準撮像データImg_Rとの間で特徴点をマッチングをしていない路面撮像データImg_αを対象撮像データImg_Tに設定し、ステップS105~ステップS111の処理を実行する。
【0171】
一方、データ処理部103は、ステップS111を肯定判定した場合(S111/Yes)、時刻t_n-1の路面撮像データImg_α_n-1のすべてを基準撮像データImg_Rとしたか否かを判定する(ステップS113)。データ処理部103は、ステップS113を否定判定した場合(S113/No)、ステップS101へ戻り、時刻t_n-1の路面撮像データImg_α_n-1のうち基準撮像データImg_Rに設定していない路面撮像データImg_α_n-1を基準撮像データImg_Rに設定し、ステップS103~ステップS113の処理を実行する。一方、データ処理部103は、ステップS113を肯定判定した場合(S113/Yes)、今回の演算周期(時刻t_n)における特徴点マッチング処理を終了する。
【0172】
本実施形態に係る計測システムにおいて、情報処理装置100のデータ処理部103の特徴点マッチング処理以外の処理動作は、第1の実施の形態に係る計測システム1と同様とすることができるため、詳しい説明は省略する。
【0173】
以上説明したように、本実施形態に係る計測システムによれば、情報処理装置100は、特徴点をマッチングする際の基準撮像データImg_Rの撮像範囲に重複する撮像範囲を含む路面撮像データImg_αの数(重複数)と、基準撮像データImg_Rの撮像範囲とマッチング対象の路面撮像データImg_αの撮像範囲との相対位置関係とに基づいて基準撮像データImg_R及び対象撮像データImg_Tの撮像解像度を補正する。そして、情報処理装置100は、撮像解像度を補正した基準撮像データImg_R及び対象撮像データImg_Tから、重複領域内に存在する特徴点を抽出して特徴点マッチング処理を実行する。
【0174】
これにより、情報処理装置100は、すべての特徴点を用いずに、特徴点を抽出する範囲を限定するとともに、基準撮像データImg_R及び対象撮像データImg_Tに応じて撮像解像度を低下させて特徴点マッチング処理を実行することができる。したがって、特徴点マッチング処理に要する処理負荷及び処理時間を抑制することができる。
【0175】
また、本実施形態に係る計測システムの情報処理装置100は、基準撮像データImg_Rの撮像範囲に重複する撮像範囲を含む路面撮像データImg_αの数(重複数)が多いほど撮像解像度を低下させる。これにより、基準撮像データImg_Rと特徴点をマッチングする対象撮像データImg_Tの数が多いほど、それぞれの対象撮像データImg_Tとの間で特徴点をマッチングする際の処理負荷及び処理時間が軽減され、特徴点マッチング処理に要する合計の処理負荷及び処理時間の増大を抑制することができる。また、この場合、撮像解像度が低くされたとしても重複数が多いため、すべての路面撮像データImg_α間での位置合わせ精度の低下を抑制することができる。
【0176】
また、本実施形態に係る計測システムの情報処理装置100は、基準撮像データImg_Rの撮像範囲に対する対象撮像データImg_Tの撮像範囲の相対位置が、基準撮像データImg_Rの左右方向、上下方向、又は、斜め方向のうちのどの方向に位置するかによって、特徴点のマッチングに用いる特徴点の所定数を設定する。これにより、相対位置の情報の精度、あるいは、重複領域の面積の大きさに応じて撮像解像度が決定され、特徴点マッチング処理の精度の低下を抑制しつつ、特徴点マッチング処理に要する合計の処理負荷及び処理時間の増大を抑制することができる。
【0177】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0178】
例えば上記各実施形態では、撮像条件として、撮像装置の移動速度、F値、シャッター速度及びISO感度を設定したが、撮像条件は上記の例に限定されない。例えば特徴点の現れ方や特徴点のマッチング精度は、画像の明るさによっても変わり得ることから、撮像条件が照射ランプの出力(照度あるいは明るさ)を含んでいてもよい。これにより、特徴点のマッチング精度をさらに高めることができる。
【0179】
また、上記各実施形態の計測システムは、計測対象としての路面の凹凸状態の三次元モデルを生成する計測システムとして構成されていたが、計測対象は路面に限定されるものではなく、任意の計測対象であってよい。また、上記実施形態の計測システムで用いられる計測装置は、路面を走行可能な計測装置として構成されていたが、計測装置は、無人又は有人の飛行体として構成されていてもよい。この場合、計測装置は、三次元空間上の自己位置及び姿勢を特定することで、それぞれの撮像データの撮像範囲、撮像装置から計測対象までの距離等の計算が可能となり、本開示の技術を適用することができる。
【0180】
また、上記各実施形態の計測システムは、主として撮像データを取得する計測装置と、主としてデータ処理を実行する情報処理装置とが通信可能に接続されて構成されていたが、本開示の技術は上記の例に限定されない。情報処理装置のデータ処理部の機能の一部が計測装置に備えられていてもよい。あるいは、情報処理装置が計測装置に搭載されるか、情報処理装置のデータ処理部の機能の全部が計測装置の制御装置に備えられ、計測装置のみにより計測システムが構成されていてもよい。
【0181】
また、上記各実施形態では、時系列の撮像データの重複領域を特定するにあたり、ある演算周期(時刻t_n)の路面撮像データと、1回前の演算周期(時刻t_n-1)の路面画像データとの重複領域が特定されていたが、本開示の技術は上記の例に限定されない。例えば計測装置の移動速度が低速で、ある演算周期(時刻t_n)の撮像データと、2回前あるいはそれ以前の演算周期(時刻t_n-2,t_n-3・・・)の撮像データとが重複する場合、データ処理部103は、基準撮像データと重複するすべての撮像データの数及び相対位置関係などに応じてマッチング条件を設定してもよい。
【0182】
また、本開示の技術は、上記の制御装置により実行される制御方法、上記の情報処理装置により実行される情報処理方法、コンピュータを上記の制御装置及び情報処理装置のうちの少なくとも一方として機能させるコンピュータプログラム、及び当該コンピュータプログラムを記録した非一時的な有形の記録媒体としても実現することができる。
【0183】
また、例えば本開示の技術は、以下の形態としても把握される。
・上記情報処理装置は、上記特徴点マッチング処理において、
上記基準撮像データの撮像範囲に重複する撮像範囲を含む上記撮像データの数と、上記基準撮像データの撮像範囲と上記対象撮像データの撮像範囲との相対位置関係と、に応じて撮像解像度を補正し、上記撮像解像度を補正した上記撮像データから上記特徴点を抽出し、上記基準撮像データ及び上記対象撮像データの上記重複領域に存在する上記特徴点をマッチングする、上記実施形態に記載の計測システム。
・上記情報処理装置は、上記特徴点マッチング処理において、
上記基準撮像データの撮像範囲に重複する撮像範囲を含む上記撮像データの数が多いほど、上記撮像解像度を低くする、上記実施形態に記載の計測システム。
・上記情報処理装置は、上記特徴点マッチング処理において、
上記基準撮像データの撮像範囲に対する上記対象撮像データの撮像範囲の相対位置が、上記基準撮像データの左右方向、上下方向、又は、斜め方向のうちのどの方向に位置するかによって、上記撮像解像度を設定する、上記実施形態に記載の計測システム。
・上記撮像装置は、移動可能な計測装置に搭載され、
上記計測システムは、上記計測装置の位置を推定する自己位置推定処理を実行する制御装置を備え、
上記情報処理装置は、上記重複領域特定処理において、
上記制御装置により推定された上記計測装置の位置の情報に基づいて上記重複領域を特定する、上記実施形態に記載の計測システム。
・計測対象を撮影した複数の撮像データから抽出される特徴点をマッチングすることで上記複数の撮像データを合成し、上記計測対象のモデルのデータを生成する情報処理方法において、
コンピュータに、
上記計測対象を撮影した上記複数の撮像データを取得することと、
上記複数の撮像データの撮像範囲が相互に重なり合う重複領域を特定することと、
基準とする基準撮像データと、マッチング対象の対象撮像データと、の間で上記特徴点をマッチングする際に、上記基準撮像データの撮像範囲に重複する撮像範囲を含む上記撮像データの数と、上記基準撮像データの撮像範囲と上記対象撮像データの撮像範囲との相対位置関係と、に応じて上記特徴点をマッチングする際の条件を設定することと、
設定した上記条件にしたがって、上記基準撮像データ及び上記対象撮像データの上記重複領域に存在する上記特徴点をマッチングすることと、
を含む処理を実行させる、情報処理方法。
・コンピュータに、
計測対象を撮影した複数の撮像データを取得することと、
上記複数の撮像データの撮像範囲が相互に重なり合う重複領域を特定することと、
基準とする基準撮像データと、マッチング対象の対象撮像データと、から抽出される特徴点をマッチングする際に、上記基準撮像データの撮像範囲に重複する撮像範囲を含む上記撮像データの数と、上記基準撮像データの撮像範囲と上記対象撮像データの撮像範囲との相対位置関係と、に応じて上記特徴点をマッチングする際の条件を設定することと、
設定した上記条件にしたがって、上記基準撮像データ及び上記対象撮像データの上記重複領域に存在する上記特徴点をマッチングすることと、
を含む処理を実行させるプログラム。
【符号の説明】
【0184】
1 :計測システム
5 :撮像部
7 :周囲状況検出部
10 :計測装置
21 :撮像装置
23 :リフレクタ
25 :照射ランプ
31 :測距センサ
33 :カメラセンサ
41 :車輪速センサ
43 :加速度センサ
45 :角速度センサ
50 :制御装置
51 :処理部
53 :記憶部
55 :地図データ記憶部
57 :通信部
61 :取得部
63 :撮像条件設定部
65 :自律走行制御部
67 :自己位置推定部
69 :撮像装置駆動部
81 :入力部
83 :通知部
100 :情報処理装置
101 :通信部
103 :データ処理部
105 :記憶部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23