以下、図面を参照して、本発明を実施するための形態の一例について詳細に説明する。
まず、本発明の実施形態に係る幹検出装置の原理について説明する。
本実施形態に係る幹検出装置においては、局所的な領域同士の押し出し方向に関する相関値を計算することで、樹木の枝のように短い区間で折れ曲がっているような形状(区分的に連続な押し出し形状領域)を有する構造物についても精度よく点群をクラスタリングできるようになる。上記特許文献1に記載の技術では、ある程度の大きなスケール(空間範囲)の点群について空間を分割し、分割した空間同士の射影断面形状の自己相関値を計算して押し出し方向を求めている。これに対して、本実施形態に係る幹検出装置では、過分割した小さな領域の点群形状から直接相関を求めることで、より短いスケールにおいて存在する押し出し形状領域の押し出し方向と断面を求めることを可能とする。
また、MMSで計測した3次元点群においては、計測車両の走行速度が場所によって異なり、上記特許文献1ではスケールを大きく設定しないと精度よく断面形状を推定することができない場合がある。そのため、曲率の大きな枝などの領域(スケールが小さい範囲において押し出し形状と考えられる)の形状についてはクラスタリング精度が低下する場合がある。そこで、本実施形態に係る幹検出装置では、押し出し形状領域において物体固有の共通の断面形状が繰り返し存在していることに着目し、相関を計算するスケールを点密度(スキャンライン間隔)に応じて適用的に決定する仕組みを取り入れる。
これにより、電柱やガードレールのような人工物、さらに、樹木の枝のような比較的短いスケールにおいて押し出し形状領域を含む物体についても、押し出し方向及び規定断面を精度よく推定でき、求めた断面形状の類似性に基づいて点群をクラスタリングすることで物体ごとに点群を切り出すことを可能とする。
次に、クラスタリングされた点群が1つの方向に延びる1次元的な押し出し形状物であるか否かを識別する。断面を指標にしたクラスタリングの結果、壁面の一部や車体の一部などの構造物の部分的なパーツの形状がクラスタになることもある。本実施形態に係る幹検出装置では、これらの点群クラスタと樹木や柱などの押し出し形状物を区別するために、クラスタ化された点群の押し出し方向が特定の1つの方向を向いているか否か、また、建造物の壁面や車のように平面や曲率の小さな曲面で構成された物体であるか否かを調べることで識別する。
次に、人工物の構造物と非人工物との区別を行う。人工物の場合、その断面形状が特定の方向に類似したパターンとして現れる。一方、樹木の幹や人などのような非人工物の場合には部分的には押し出し形状であったとしても、形状全体は一定の断面ではない。特定の方向に断面を生成すると、断面位置によって変化が生じやすい。そこで、本実施形態に係る幹検出装置においては、推定した規定断面が同一の点群クラスタに属する周辺の規定断面との間で高い類似度(相関値)を有するか調べることで人工物であるか否かを判定する。
さらに、非人工物の押し出し形状物と判定された点群クラスタについて、点群クラスタの形状から樹木の幹であるか否かを判定する。但し、高さが数メートル(例えば、2〜3[m])ほどの低木の場合には、幹が葉に隠れてしまい幹の長さが1〜2[m]と低く計測されることがある。この場合、幹の点群クラスタの形状とそれ以外の物体、例えば、人物との区別がしづらい場合がある。なぜなら、人物においても、断面相関値を指標として緩やかな閾値でクラスタリングした場合には、一つのクラスタとして検出され、かつ、押し出し方向に断面の形状が変化しやすい。このため、人物を表すクラスタも、非人工物の押し出し形状物として検出されやすいためである。そこで、樹木の葉が上端部近くに存在する場合には、それらの点群クラスタを考慮して樹木の幹であるか否かを判定する。
本実施形態に係る幹検出装置においては、レーザースキャナ等で計測された3次元点群を入力として、樹木の幹のような細長い断面を持つ押し出し形状物の点群を精度よくクラスタリングし、そのクラスタ化された点群(クラスタ点群)の形状から樹木の幹を検出する。
本実施形態において、3次元情報(位置情報)とは、緯度、経度、海抜(高さ)情報でもよいし、ユーザが設定した特定の位置を原点とした3次元ユークリッド座標系でもよく、極座標系でもよい。以下の例では、ユーザが設定した原点における3次元ユークリッド座標系(各方向をX,Y,Z座標とする。)を想定する。各座標の単位は、例えば、メートル[m]やセンチメートル[cm]、ミリメートル[mm]で表現できるが、他の単位でもよい。
ここで、3次元点とは、上記の3次元座標に、その点が撮影された時刻、レーザの反射強度、赤・青・緑などの色情報等が付与された点である。3次元点に付与される情報に制限はないが、少なくとも位置情報(X,Y,Z座標)は付与されたものであり、3次元点群とは、その3次元点が2点以上集まった集合である。
また、本実施形態において、ユークリッド座標系のZ軸の方向は鉛直(高さ)方向を意味し、X軸とY軸の張る二次元平面は水平面を意味するものとする。また、3次元点群はレーザースキャナ以外にも、距離情報を取得できるセンサであればよく、例えば、ステレオカメラにより取得した奥行き情報から求めた3次元点群でもよい。
本実施形態においては、「注目点」という単語が出てくるが、この「注目点」の意味は、「ある点」、「任意の点」もしくは「某点」と同じ意味とし、何かしらの処理を説明するために便宜上注目した点という意味である。
また、本実施形態において、人工物の柱のように特定の1方向に規定断面を押し出した形状物(スイープ形状物)だけでなく、部分的に押し出し形状領域を有し、それらの押し出し形状領域が連結されて構成された物体である樹木の幹についても、広義の意味で押し出し形状物(以下、押し出し形状領域構成物ともいう)と定義する。なお、押し出し形状領域が連結されて構成された物体を押し出し形状物(又は押し出し形状領域構成物)という。
また、本実施形態に係る検出対象物は、看板や標識のような平面物体ではなく、断面に大きな曲率を有した細長い形状を有する物体とされる。物理的には、ある注目点について押し出し方向が2次元的な広がりが存在する「平面」は押し出し形状とはせず除去する。
[第1の実施形態]
図1は、第1の実施形態に係る幹検出装置10の機能的な構成の一例を示すブロック図である。
図1に示すように、幹検出装置10は、記憶部20と、押し出し形状領域検出部30と、被写体計測部40と、入力部42と、を備えている。
本実施形態に係る幹検出装置10は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)、及びHDD(Hard Disk Drive)等を備えたコンピュータとして構成される。ROMには、本実施形態に係る点群解析処理を実行するための点群解析処理プログラムが記憶されている。なお、点群解析処理プログラムは、HDDに記憶されていてもよい。
上記の点群解析処理プログラムは、例えば、幹検出装置10に予めインストールされていてもよい。点群解析処理プログラムは、不揮発性の記憶媒体に記憶して、又は、ネットワークを介して配布して、幹検出装置10に適宜インストールすることで実現してもよい。なお、不揮発性の記憶媒体の例としては、CD-ROM(Compact Disc Read Only Memory)、光磁気ディスク、DVD-ROM(Digital Versatile Disc Read Only Memory)、フラッシュメモリ、メモリカード等が挙げられる。
CPUは、ROMに記憶されている点群解析処理プログラムを読み込んで実行することにより、上記の押し出し形状領域検出部30として機能する。また、HDDは、上記の記憶部20として機能する。
被写体計測部40は、3次元点群を計測するものであり、レーザーレンジファインダや、赤外線センサ、または超音波センサなど、被写体とセンサとの距離を測定可能な装置である。例えば、レーザーレンジファインダをGPSが搭載された車の上、もしくはGPSの搭載された飛行機に搭載し、移動しながら計測することで、屋外の環境の地物を被写体とし、樹木だけでなくて、例えば、ケーブル、建物、ガードレール、道路地面などであり、これら被写体表面の3次元位置を計測するシステムである。第1の実施形態においては、被写体計測部40として、車上にGPSとレーザーレンジファインダとが搭載されているMMSを用い、被写体の物体の表面上の位置を計測した計測結果である複数の位置を表す3次元点群を取得する。なお、被写体計測部40として、車に搭載したレーザースキャンセンサではなく、ある特定の位置(交差点など)で1箇所に固定されたレーザースキャンセンサを用いてもよい。
入力部42は、マウスやキーボードなどのユーザーインターフェースであり、幹検出装置10で使用する演算処理用パラメータを入力して記憶部20に記憶するものである。また、入力部42は、演算処理用パラメータを記憶したUSB(Universal Serial Bus)メモリなどの外部記憶媒体でもよく、記憶部20に演算処理用パラメータを供給可能なものであればよい。
記憶部20は、3次元点群記憶部22と、演算処理用パラメータ記憶部24と、押し出し形状領域記憶部26と、を含んで構成されている。なお、記憶部20は、例えば、上記のHDDや、SSD(Solid State Drive)等のハードウェアによる記憶装置である。
3次元点群記憶部22には、被写体計測部40から入力された3次元点群が記憶されている。
演算処理用パラメータ記憶部24には、入力部42により受け付けた各種の演算処理用パラメータが記憶されている。これら各種の演算処理用パラメータは、実験的に決めるパラメータである。
押し出し形状領域記憶部26には、押し出し形状領域検出部30において検出された点群クラスタが存在する3次元位置や、3次元空間の領域、もしくは検出した3次元点群の番号などの情報が記憶されている。また、押し出し形状領域記憶部26には、押し出し形状クラスタリング処理に使用した、代表点群の規定断面(断面を点群で表現したもの)を示す情報を記憶してもよい。
押し出し形状領域検出部30は、規定断面生成部32と、押し出し形状クラスタリング部34と、押し出し形状領域識別部36と、を含んで構成されている。なお、押し出し形状領域検出部30は、クラスタリング装置の一例である。
規定断面生成部32は、物体の表面上の位置を計測した計測結果である複数の位置を表す各代表点について、代表点の周辺に位置する周辺代表点群に基づいて、代表点における押し出し方向を推定する。そして、規定断面生成部32は、各代表点について、代表点における押し出し方向と、代表点の周辺に位置する近傍代表点における押し出し方向とに基づいて、代表点を含む領域の点群の形状と、近傍代表点を含む領域の点群の形状との類似度の一例である射影重複相関値を計算する。そして、規定断面生成部32は、射影重複相関値に基づいて、代表点を含む領域が押し出し形状領域であるか否かを判定する。そして、規定断面生成部32は、押し出し形状領域と判定された代表点の各々について、押し出し方向及び射影重複相関値により代表点と同一の押し出し形状領域に含まれる可能性が高いと判定される周辺代表点群を求め、求めた周辺代表点群を用いて、押し出し方向に射影したときに生成される点群を規定断面として生成する。
すなわち、規定断面生成部32は、3次元点群記憶部22に記憶されている3次元点群、及び、演算処理用パラメータ記憶部24に記憶されている演算処理用パラメータを入力し、これらの3次元点群及び演算処理用パラメータに基づいて、規定断面を生成する。そして、規定断面生成部32は、生成した規定断面を、押し出し形状クラスタリング部34へ出力する。このように、規定断面生成部32では、入力された3次元点群及び演算処理用パラメータから、代表点及び過分割領域を生成し、各代表点毎に押し出し方向及び押し出し方向と垂直な規定断面を生成する。
押し出し形状クラスタリング部34は、規定断面生成部32により規定断面が生成された代表点の各々を、押し出し方向の類似性、及び、押し出し方向に基づいて算出される、規定断面の点群の形状の類似度に基づいて、クラスタリングする。
すなわち、押し出し形状クラスタリング部34は、規定断面生成部32から取得された各代表点毎の押し出し方向及び規定断面に基づいて、各クラスタの押し出し方向に対する規定断面の類似度から代表点群をクラスタリングし、点群クラスタを生成する。そして、押し出し形状クラスタリング部34は、生成した点群クラスタに関する情報を、押し出し形状領域識別部36へ出力する。
押し出し形状領域識別部36は、押し出し形状クラスタリング部34によりクラスタリングされて生成された点群クラスタが、1つの方向に延びる1次元的な押し出し形状物であるか否かを識別する。
すなわち、押し出し形状領域識別部36は、押し出し形状クラスタリング部34から入力された点群クラスタが、2次元的な広がりのある押し出し形状物ではなく、1つの方向に延びる1次元的な押し出し形状物であるか否かを識別する。そして、押し出し形状領域識別部36は、識別した押し出し形状物に関する情報を、押し出し形状領域記憶部26に出力し、押し出し形状領域記憶部26に記憶する。
次に、図2を参照して、第1の実施形態に係る幹検出装置10の作用を説明する。なお、図2は、第1の実施形態に係る点群解析処理プログラムによる処理の流れの一例を示すフローチャートである。
本第1の実施形態に係る幹検出装置10は、操作者の操作により点群解析処理の実行が指示されると、CPUがROMに記憶されている点群解析処理プログラムを読み出して実行する。
なお、ステップ100、102は、規定断面生成部32により実行される処理である。ステップ104は、押し出し形状クラスタリング部34により実行される処理である。ステップ106、108は、押し出し形状領域識別部36により実行される処理である。
まず、図2のステップ100では、規定断面生成部32が、3次元点群記憶部22から3次元点群(入力3次元点群)を取得し、演算処理用パラメータ記憶部24から演算処理用パラメータを取得する。
ここで、入力3次元点群の個々の点を区別する番号をi、各点の3次元位置について、
で表現する。但し、[xi,yi,zi]は、X軸、Y軸、及びZ軸の各々の座標成分を意味し、右上の添え字の記号「T」は転置を意味する。以降では、入力3次元点群を表すクラスタの番号を用いて、処理の流れを説明する。
また、本実施形態においては、3次元点群記憶部22に記憶されている3次元点群をクラスタリングしていくステップが多数存在するが、各クラスタについて区別する番号をc(∈1,2,3,...,C)で表し、各クラスタcに属する点は、次式のように右上の添え字にクラスタの番号を示すことで表記する。
但し、各ステップの説明において、piは入力3次元点群そのものではなくて、リサンプリングした点群(代表点群)を意味することもある。つまり、実施形態を説明する際に便宜上同じ文字を使用することもある。
ステップ102では、規定断面生成部32が、押し出し形状物の断面形状である規定断面を生成する。ここでいう押し出し形状とは、例えば、ある任意の断面をその断面に垂直な方向で押し出したときに形成される3次元形状を意味する。また、本実施形態において検出対象とする押し出し形状とは、部分的な曲がりを許容した広義の意味での押し出し形状物が存在する点群、つまり、押し出し形状領域を意味する。具体的な例としては、樹木やケーブル等である。ある程度の区間は真っ直ぐな押し出し形状として十分形状を近似でき、それらの押し出し形状領域を連結することで一つの構造物を形成したものと考える。
図3は、第1の実施形態に係る規定断面生成処理ルーチンの一例を示すフローチャートである。
図2に示すステップ102は、図3に示すステップ200からステップ208の各処理により構成されており、以下では個々の処理の詳細について説明する。
まず、図3のステップ200では、規定断面生成部32が、計算量削減及びクラスタリング精度向上のため、重複を許した過分割領域を生成する。具体的な処理としては、密度が大きい点から優先して点群をリサンプリングすることで代表点群を決定し、それら代表点位置を中心とする半径dhの領域を過分割領域と定義する。
密度が大きい点からリサンプリングするのは、物体の境界近くではなくてなるべく内部の点を注目点とすることを意図している。その理由は物体内部の点群の方が以降の特徴量(押し出し方向や規定断面)を精度よく検出できるからである。
まず、入力3次元点群すべてについて、密度推定を行う。注目点piについて、半径r以内の距離を局所領域と定義し、この局所領域内部の点をpj(j∈1,2,3,...,Nj)、局所領域内の点群の総数をNjと表記する。半径r以内の距離に含まれる点pjは、次式を満たす点として求められる。
但し、記号
はベクトルの2ノルムを意味する。このとき密度Dense(pi)は次式で求まる。
次に、密度Dense(pi)が高い順番に点群の番号をつける(ソート処理)。入力点群を代表点候補点群として設定し、これら代表点候補点群の番号を区別する番号をiで表示したとき、密度の高い点から順番に以下の処理を行う。
注目点piから半径dresamp以内の周辺点群pjについて、注目点piの密度Dense(pi)よりも周辺点密度Dense(pj)が小さいとき、該当する周辺点について代表点候補点群から除去する。
次に、除去されなかった点について、注目点piの次に密度の高い点を注目点pi+1として同様の処理を繰り返す。
密度の最も小さい点まで処理を行ったとき、上記処理を終了する。但し、除外された点は注目点として設定しない。
このとき、代表点候補として残っている点群を代表点群とし、各代表点からリサンプリング距離dh以内に含まれる3次元点群を、各代表点を中心とする過分割した領域内の点群とする。以降では、過分割された局所領域内の点群をqと表す。
結果として、各領域は重複を許した過分割した領域の点群が生成される。なお、ここでは、一例として、dh=0.05[m]、r=0.2[m]とした。過分割領域の設定例を図4に示す。図4においては、色の違いにより異なる過分割領域を示している。
次に、ステップ202に移行し、最大相関押し出し方向推定処理を行う。ステップ202では、規定断面生成部32が、各代表点について押し出し方向を推定する。ステップ204において押し出し形状領域であるか否かの判定を行う前処理として、各代表点での最大相関値を算出する。押し出し形状領域に含まれる代表点の位置では、相関値が高くなり、樹木の葉や計測ノイズの位置では相関値が低くなる傾向がある。以降の処理において、代表点とその周辺の代表点との相関値は、各代表点の過分割された領域(点群の形状)の類似度から計算し、押し出し方向を推定する。
図5は、第1の実施形態に係る最大相関押し出し方向推定処理ルーチンの一例を示すフローチャートである。
図3に示すステップ202は、図5に示すステップ300からステップ308の各処理により構成されており、以下では個々の処理の詳細について説明する。
まず、図5のステップ300では、規定断面生成部32が、注目代表点piの位置における仮押し出し方向mを推定する。複数回推定した仮押し出し方向mの中から、最も相関値の高い方向を押し出し方向として出力する。
注目代表点piの周辺代表点群pj(j∈1,2,3,...,Nj)からサンプリングして押し出し方向を決定する。なお、周辺代表点群pj(j∈1,2,3,...,Nj)は、局所領域内に含まれる点群を表す。サンプリングとは、ランダム点を選択することを意味する。周辺の代表点群の中から、ランダムに選択した2点の番号をj1、j2と表記すると、本ステップの繰り返し処理Loop回目の押し出し方向m(Loop)は次式により求まる。
なお、右上の添え字(Loop)は、繰り返し処理の回数の変数Loopを意味する。
次に、ステップ302では、規定断面生成部32が、相関計算領域内の過分割領域を検出する。計測機器と被計測物との相対位置・姿勢および計測車両の走行速度により、点群密度は大きく異なる。そのため、事前に適切な長さ(スケール)を一意に決めることは困難である。本実施形態においては、繰り返し断面形状を検出する際に、繰り返し存在する断面を確かめる「数」を指定することで、そのスケールの大きさを自動的に決定するものとする。但し、注目代表点から非常に離れた位置にある領域との相関を計算しても意味がないため、相関計算領域の上限(最大幅)は、一例として、2.0[m]と設定する。
図6は、第1の実施形態に係る注目代表点Aとの垂直距離がリサンプリング距離dh以内にある最近傍の代表点群がN(=4)個の場合の一例を示す模式図である。
図6に示す点Eは、注目代表点Aとの垂直距離が離れている点の1つである。ここでいう垂直距離とは、注目代表点Aの仮押し出し方向mに垂直な方向に沿う距離である。この場合、注目代表点Aと点Eとの相関は考慮しない。また、注目代表点Aの周辺に位置する4個の近傍代表点は、相関計算領域raに含まれ、注目代表点Aとの垂直距離がリサンプリング距離dh以内にある。なお、相関計算領域raの上限は、上記のように、例えば、2.0[m]と設定すればよい。
図7は、第1の実施形態に係る注目代表点A及び近傍代表点Bを含む点群の一例を示す模式図である。
図7に示すように、注目代表点Aを中心とした半径r以内が局所領域であり、局所領域内に、図6に示す4個の近傍代表点が含まれる。注目代表点Aから半径dh(すなわち、リサンプリング距離dh)の円内に含まれる点群が、注目代表点Aの相関計算用の過分割領域r1として検出される。また、注目代表点Aの周辺に位置する近傍代表点Bから半径dhの円内に含まれる点群が、近傍代表点Bの相関計算用の過分割領域r2として検出される。
次に、ステップ304では、規定断面生成部32が、ステップ302で検出した過分割領域について射影重複相関を計算する。注目代表点piの相関計算領域内に含まれる近傍代表点pjとの過分割領域の点群形状の相関を、射影重複相関値corellation(pi,pj,m(loop))として次式により定義する。
但し、Nt (b)は注目代表点pbの局所領域内に含まれる点群の数であり、射影重複相関値corellationは、最大値1.0、最小値0の規格化された値を出力する関数である。qs、qtは、各代表点の局所領域内の点を示し、右下の添え字s、tは、それぞれ局所領域a、bに含まれる点群を区別するための変数であり、s<Ns (a)、t<Nt (b)である。
は射影したときの誤差の許容距離であり、実験的に決めるパラメータである。ここでは、一例として、
=0.02[m]とした。
上記計算式の物理的な意味は、図8及び図9に示すように、注目代表点と相関をとる周辺の近傍代表点について、両者の点群を仮押し出し方向mに射影した場合に重複する割合を示す。
図8は、第1の実施形態に係る注目代表点と近傍代表点との射影重複相関の一例を示す模式図である。
図8の例において、射影重複相関値とは、近傍代表点Bの過分割領域r2で示される点群を仮押し出し方向mに沿って延長し、注目代表点Aの過分割領域r1で示される点群に射影した場合に重なる割合を示す。なお、ここでは、リサンプリング距離dhを、数cmとした。
図9は、第1の実施形態に係る注目代表点と近傍代表点との射影重複相関の他の例を示す模式図である。
図9の例において、射影重複相関値とは、近傍代表点Aの過分割領域r1で示される点群を仮押し出し方向mに沿って延長し、注目代表点Bの過分割領域r2で示される点群に射影した場合に重なる割合を示す。なお、ここでも、図8の例と同様に、リサンプリング距離dhを、数cmとした。
近傍N個の近傍代表点pjとの射影重複相関値の平均値を、注目代表点piの射影重複相関値shape corellation(pi,m(Loop))として出力する。
次に、ステップ306では、規定断面生成部32が、各代表点において、仮押し出し方向mを、KLoop回設定して、射影重複相関値を計算した場合(肯定判定の場合)、ステップ308に移行する。一方、KLoop回の射影重複相関値を計算していない場合(否定判定の場合)、ステップ300に戻り処理を繰り返す。なお、KLoopの数値が大きいほど推定精度はよくなるが、あまり大きくすると計算時間に影響する。ここでは、一例として、KLoop=200回に設定した。
次に、ステップ308では、規定断面生成部32が、ステップ306の終了条件を満たした場合、最大射影重複相関値及びそのときの仮押し出し方向を、注目する代表点における押し出し方向
として決定する。
図3に戻り、ステップ204では、規定断面生成部32が、注目代表点piにおける最大射影重複相関値に基づいて、閾値処理により押し出し形状領域であるか否かを判定する。
ここでは、一例として、THcorr=0.5に設定した。通常、樹木の葉や草、またノイズとして計測された点群は押し出し形状ではないために相関値は低くなり、本ステップ204により除外される。除外された代表点は以降のステップ206の処理は行わない。
次に、ステップ206では、規定断面生成部32が、押し出し形状領域と判定された代表点について規定断面を生成する。ここでいう規定断面とは、押し出し方向に対する断面形状を意味し、例えば円筒でいえば「円」であり、四角柱の場合には「四角」である。屋外環境下で任意の物体をレーザで計測する場合、断面形状も任意の形状となる。ここでいう断面形状とは、計測点群から押し出し方向へ射影した際の形状(点群)を意味する。
図10は、第1の実施形態に係る規定断面を生成するための断面生成局所領域rbの点群の一例を示す模式図である。
規定断面は、注目代表点Aから半径R(=半径r)の断面生成局所領域rb内に含まれる点群を用いて生成される。但し、注目代表点Aから半径Rの断面生成局所領域rb内には、注目代表点Aと同一の押し出し形状物に含まれない点群も存在する可能性がある。
そこで、本ステップ206では、注目代表点Aと同一の押し出し形状物に含まれている可能性の高い点群(近傍代表点)を判定し、それらの点群だけを用いて規定断面を生成する。
図10に示すように、注目代表点Aから半径Rの断面生成局所領域rb内にある近傍代表点の中で、押し出し方向が類似しており、かつ、射影重複相関値が0でない近傍代表点を注目代表点Aと同一の押し出し形状物に存在する点と判定する。なお、線分L1及び線分L2は、各代表点を含む過分割領域の点群を射影した場合の形状を示す。
注目代表点Aと同一の押し出し形状物に存在すると判定された近傍代表点については、さらにその代表点の近傍代表点について同様の処理を行うことで同一の押し出し形状物に属するか否かを調べていく。
図11は、第1の実施形態に係る規定断面生成処理ルーチンの一例を示すフローチャートである。
図3に示すステップ206は、図11に示すステップ400からステップ412の各処理により構成されており、以下では個々の処理の詳細について説明する。
まず、図11のステップ400では、規定断面生成部32が、押し出し形状領域と判定された注目代表点を初期シード点として追加する。
ステップ402では、規定断面生成部32が、初期シード点(注目代表点)を選択する。以下、選択した初期シード点を選択シード点という。
ステップ404では、規定断面生成部32が、選択シード点とその周辺の近傍代表点(押し出し形状領域と判定された代表点)のks個との間で類似した特徴を有するか否かを判定するための類似度を計算する。ここでいう類似度としては、押し出し方向の類似度と射影重複相関値とが用いられる。ここでいう押し出し方向の類似度は、一例として、内積により表すことができる。押し出し方向が類似している場合(つまり、成す角度が小さいほど)、内積の絶対値が大きくなる。
ステップ406では、規定断面生成部32が、選択シード点とその近傍代表点との射影重複相関値を調べ相関値が0でなく、かつ、その近傍代表点の押し出し方向が選択シード点の押し出し方向と類似する場合、近傍代表点を選択シード点と同一の押し出し形状物に属すると判定する。そして、判定した近傍代表点を、新たなシード点、及び、ストック点(代表点)として追加する。
ステップ408では、規定断面生成部32が、選択シード点を削除する処理を行う。判定の済んだ選択シード点を削除することで、判定処理が重複しないようにする。
ステップ410では、規定断面生成部32が、断面生成局所領域内に存在する全てのシード点について判定処理を行ったか否かを判定する。図10に示す例の場合、注目代表点Aから半径Rの断面生成局所領域rb内に存在する全てのシード点について判定処理を行ったか否かを判定する。全てのシード点について判定処理を行ったと判定した場合(肯定判定の場合)、ステップ412に移行し、全てのシード点について判定処理を行っていないと判定した場合(否定判定の場合)、ステップ402に戻り処理を繰り返す。
ここで、射影重複相関値を調べる際には、注目代表点における押し出し方向を用いる。
また、類似した押し出し方向か否かを判定する際には、次式の閾値判定により行う。
但し、本実施形態において、2つの押し出し方向の成す角の内積について、一例として、閾値THang=0.7、近傍代表点の個数ks=9とした。また、本実施形態においては計算量を削減するために、射影後の点群について距離が、一例として、0.005[m]以内の点群については、重複点として密度の低い方の射影点を削除している。
ステップ412では、規定断面生成部32が、注目代表点と同一の押し出し形状物に属すると判定された代表点群(ストック点群)を用いて規定断面を生成する。具体的には、ストック点を代表点とする過分割領域に含まれる点群について、注目代表点の押し出し方向に射影した場合に生成される点群を規定断面として生成する。
図12は、第1の実施形態に係る断面生成局所領域rb内の点群を射影連結して生成される規定断面形状の一例を示す模式図である。
図3に戻り、ステップ208では、規定断面生成部32が、図12に示すように、注目代表点Aの押し出し方向に射影した場合に生成される点群を規定断面Csとして生成する。そして、規定断面生成部32は、規定断面Csを示す規定断面情報(押し出し方向に射影した3次元点群ci(∈Cs))を、押し出し形状クラスタリング部34に出力する。
図2に戻り、ステップ104以降、代表点とは押し出し形状領域と判定された代表点のみを意味し、押し出し形状領域と判定されなかった代表点群は除去しているものとする。
図2のステップ104では、押し出し形状クラスタリング部34が、ステップ102で生成した規定断面を用いてクラスタリング処理を行う。例えば、図13に示すような、フェンス(押し出し方向が水平方向となる物体)に接している細長い標識柱(押し出し方向が鉛直方向となる物体)が存在する場合を想定する。
図13は、第1の実施形態に係るクラスタリング処理の一例を示す模式図である。
図13の左図に示すように、標識柱の代表点p1とフェンスの代表点p2との2点は、距離がΔd以内で、法線方向が類似する。このため同一のクラスタと判定されやすい。
そこで、本実施形態では、図13の中図に示すように、標識柱及びフェンスの各々について規定断面(一点鎖線で示す)を推定する。そして、図13の右図に示すように、規定断面に基づいて、標識柱の代表点p1とフェンスの代表点p2についてクラスタリングを行い、2つの押し出し形状領域(破線で覆われた領域)を識別可能とする。
また、本実施形態で検出対象とする樹木の幹やケーブルなどのようにたわんだ形状であっても局所的(例えば、1m以内の形状)には、押し出し方向の向きが一定であると見なしても良い。つまり、一定の押し出し方向の形状で十分近似できると考えられる。
そこで、本実施形態においては、注目代表点と近傍の代表点について、押し出し方向の類似性が高く(成す角度が小さく)、かつ、規定断面の射影重複相関が大きいものを同一の物体に属していると判断してクラスタリング(統合)する。このとき、押し出し方向の類似性の閾値を低く設定することで、樹木のような曲率変動のある形状物でもクラスタリングすることが可能となる。
しかしながら、注目代表点と近傍の代表点における押し出し方向の類似性の閾値を低く設定すると、ノイズ等の影響により押し出し方向の推定に誤差が生じたときに誤ったクラスタリングをする可能性がある。
例えば、パイプ状のガードレール(押し出し方向が水平方向)に接している細長い街灯(押し出し方向が鉛直方向)が存在する場合、ガードレールと街灯とが接している箇所の一部の代表点群について、押し出し方向が斜め方向であると誤って推定した場合、その一部を通じてガードレールと街灯とがクラスタリングされてしまう場合がある。
そこで、本実施形態においては、近傍点同士の押し出し方向の類似性を制御する閾値に加えて、さらに、クラスタリングされた形状同士の代表押し出し方向の類似性を制御する閾値を利用する。クラスタリングされた形状同士の代表押し出し方向とは、事前にクラスタリングされた代表点の押し出し方向の平均値(もしくは中央値)となる方向であり、これらの方向を比較することで鉛直方向に代表押し出し方向を持つ物体と水平方向に押し出し方向を持つ物体を誤ってクラスタリングすることを抑制することができる。
図14は、第1の実施形態に係る押し出し形状クラスタリング処理ルーチンの一例を示すフローチャートである。
図2に示すステップ104は、図14に示すステップ500からステップ506の各処理により構成されており、以下では個々の処理の詳細について説明する。
一般的に、物体の境界付近では付属品の影響や、そもそもレーザ計測した際に計測誤差がのりやすいために、押し出し方向の推定精度が悪くなりやすい。そのため、本実施形態では、代表点と近傍の代表点との成す角度が小さいものから優先的にクラスタリングを行い、境界近くの代表点からクラスタリングすることで精度が低下することを抑制する。
図14のステップ500では、押し出し形状クラスタリング部34が、各代表点とその近傍点(ks個)とについて、規定断面点を用いて射影重複相関を計算する。つまり、上述の射影重複相関値corellation(pi,pj,m(loop))を導出する式において、局所領域内の点群qの代わりに、規定断面Csを構成する点群ciを用いて計算すればよい。
図15は、第1の実施形態に係るクラスタリングペア候補リストの一例を示す模式図である。
押し出し形状クラスタリング部34は、射影重複相関値が閾値THsim以上の代表点同士を、クラスタリング対象ペアとして、図15に示すクラスタリングペア候補リストに登録する。図15に示すクラスタリングペア候補リストでは、一例として、近傍代表点の個数ks=4、閾値THsim=0.5と設定した。
ステップ502では、押し出し形状クラスタリング部34が、代表点同士の押し出し方向の成す角度が小さいペアの順番を決定する。ステップ500により生成した、クラスタリングペア候補リストの角度が小さいものとして、内積の絶対値の値が大きいものから順番に降順にソーティングする。以降のクラスタリング処理では、クラスタリングペア候補リストの順位処理を行うことが望ましい。
ステップ504では、押し出し形状クラスタリング部34が、代表点同士をクラスタリングする。注目代表点iとその近傍代表点jとについての押し出し方向の類似度(内積)、及び、注目代表点iの属するクラスタcの代表押し出し方向V(c) repと近傍代表点jの属するクラスタ番号dの代表押し出し方向V(d) repとの類似度(内積)が閾値以上の場合にクラスタリング(統合)する。
上記閾値を満たすとき、統合処理を行う。
クラスタcの番号とクラスタdの番号の小さい方(c<d)に統合を行うことにすると、クラスタcの代表押し出し方向V(c) repは、次式で更新される。
ここで、関数Num()は、各クラスタに属している代表点の数であり、Num(Cluster(c))は統合前のクラスタcの代表点数を意味する。本ステップ504の初期においては、各代表点が属するクラスタ番号は代表点の区別する番号そのものであり、クラスタに属する点数は1である。本実施形態においては、一例として、TCeach_angle=0.8、TCrep_angle=0.5とした。
ステップ506では、押し出し形状クラスタリング部34が、ステップ504でクラスタリング処理された点群クラスタを示す点群クラスタ情報を、押し出し形状領域識別部36に出力する。
図2に戻り、ステップ106では、押し出し形状領域識別部36が、樹木の幹候補となる点群クラスタと、建造物や車などのそれ以外の人工物の点群クラスタと、を識別する。建造物や車などの壁面は、曲率の小さな面で構成されている。一方、樹木や柱のような細長い形状物については、大きな曲率を有する面で構成されている割合が高い。
図16及び図17は、第1の実施形態に係る平面物体における規定断面とその射影相関の一例を示す模式図である。
図16に示すように、標識や看板のような平面物体は、代表点の位置によって押し出し方向はさまざまである。しかしながら、微小な起伏による曲率が生じていることにより、局所的には平面領域であっても押し出し方向が類似することがある。
図16において、注目代表点Aでの規定断面を一点鎖線で示し、近傍代表点Bでの規定断面を二点鎖線で示す。
図17の上図は、近傍代表点Bの規定断面を表す点群を、注目代表点Aの押し出し方向に沿って射影した例を示す。
図17の下図は、注目代表点Aの規定断面を表す点群を、近傍代表点Bの押し出し方向に沿って射影した例を示す。
平面の規定断面は近傍であればあるほど、射影重複相関が大きくなりやすい上に、本実施形態では押し出し方向の許容閾値TCeach_angleを比較的低く設定する。このため、これらの曲率の小さな平面物体について後処理で除去する必要がある。
そこで、本実施形態においては、クラスタリングされた点群が平面のように曲率の小さいものが多いかどうか調べ、2次元的な広がりのある押し出し形状物ではなく、1つの方向に延びる1次元的な押し出し形状物であるか否かを判定する。
具体的には、規定断面の形状から推定する。生成されたクラスタに含まれる各代表点の規定断面点群を「円」で近似し、近似した円の半径が比較的小さい規定断面の割合が高い場合、1つの方向に延びる1次元的な押し出し形状物であると判定する。円の近似は、例えば、RANSAC(Random Sample Consensus)法により行う。RANSAC法による円検出については、公知の既存技術であることから、ここでの説明を省略する。
注目クラスタcについて、注目クラスタcに属する代表点の規定断面点群をRANSAC法により円近似した場合の円の半径の大きさが、THradius[m]以下である割合が、閾値THratio以上の場合にのみ、注目クラスタcが1つの方向に延びる1次元的な押し出し形状物であると判定する。THradiusは検出した対象物の半径に依存するが、本実施形態では、識別対象として、電柱や樹木等の細長い形状物を想定している。ここでは、一例として、THradius=0.3[m]、THratio=0.6とした。
図2に戻り、ステップ108では、押し出し形状領域識別部36が、ステップ106で1つの方向に延びる1次元的な押し出し形状物と判定された点群クラスタを示す押し出し形状領域情報を、押し出し形状領域記憶部26に出力する。具体的には、押し出し形状領域情報には、各クラスタの代表点及び規定断面、過分割領域に含まれる点群の番号、各クラスタのX軸方向、Y軸方向、及びZ軸方向の各々の長さ、規定断面の平均半径等の情報が含まれる。
以上説明したように、第1の実施形態に係る幹検出装置によれば、物体を精度よくクラスタリングすることを可能とし、クラスタリングした点群から樹木や柱状構造物等を検出し、それらの位置および幹の太さを推定することができる。
特に、市街地のように隣接物が存在する場合であっても、根本から斜めに伸びた幹を有する樹木を対象としても、精度良く検出することができる。
[第2の実施形態]
図18は、第2の実施形態に係る幹検出装置12の機能的な構成の一例を示すブロック図である。
図18に示すように、幹検出装置12は、記憶部20と、樹木検出処理部50と、被写体計測部40と、入力部42と、を備えている。
樹木検出処理部50は、押し出し形状領域検出部30と、葉領域検出部52と、人工物識別部54と、樹木識別部56と、を含んで構成されている。なお、押し出し形状領域検出部30及び人工物識別部54を含む装置は、人工物識別装置の一例である。樹木検出処理部50は、幹検出装置の一例である。
押し出し形状領域検出部30は、第1の実施形態で説明した押し出し形状領域検出部30と同様であるため、ここでの繰り返しの説明は省略する。
葉領域検出部52は、入力3次元点群から、樹木の葉の領域を検出する。より具体的には、押し出し形状領域検出部30により1つの方向に延びる1次元的な押し出し形状物として識別された点群クラスタについて、樹木の葉の領域を検出する。
人工物識別部54は、押し出し形状領域検出部30により1つの方向に延びる1次元的な押し出し形状物として識別された点群クラスタについて、人工物か非人工物かの判定を行う。より具体的には、人工物識別部54は、押し出し形状領域検出部30によりクラスタリングされた点群について求められる代表押し出し方向に、点群を射影した点群の形状、又は、代表押し出し方向における、クラスタリングされた点群の断面相関値に基づいて、点群が人工物であるか非人工物であるかを判定する。
樹木識別部56は、人工物識別部54により非人工物であると判定された点群について、葉領域検出部52による樹木の葉領域の検出結果に基づいて、樹木の幹であるか否かを識別する。
次に、図19を参照して、第2の実施形態に係る幹検出装置12の作用を説明する。なお、図19は、第2の実施形態に係る点群解析処理プログラムによる処理の流れの一例を示すフローチャートである。
本第2の実施形態に係る幹検出装置12は、操作者の操作により点群解析処理の実行が指示されると、CPUがROMに記憶されている点群解析処理プログラムを読み出して実行する。
ステップ600については、第1の実施形態における図2のステップ100で説明した内容と同様であるため、ここでの繰り返しの説明は省略する。
ステップ602では、人工物識別部54が、押し出し形状領域記憶部26に記憶されている押し出し形状領域情報を、押し出し形状領域検出部30を介して入力する。
ステップ604では、葉領域検出部52が、後述のステップ606で樹木の幹であるか否かの判定を行うために、押し出し形状領域検出部30により1つの方向に延びる1次元的な押し出し形状物として識別された点群クラスタについて、樹木の葉領域の検出を行う。葉領域の検出については、例えば、非特許文献3に記載の技術を用いてもよい。なお、ステップ602とステップ604とは順序を入れ替えてもよい。
但し、非特許文献3に記載の技術の場合、建造物の壁面の一部やケーブル等の構造物の一部が除去できない場合があり、それらの物体が葉として誤検出されることで、樹木の検出精度が低下する可能性がある。
そこで、本第2の実施形態では、樹木の葉を直接検出する手法を用いる。樹木の葉の領域は、人工物と異なり不規則な形状を有していることが多い。本第2の実施形態では、この不規則な形状を有している点群の領域を直接検出することで、樹木の葉の領域(樹木の葉の点群クラスタの存在する領域)を検出する。ステップ604においては、樹木幹候補の近くに葉の点群クラスタが存在するか否かで樹木の幹か否かを判定する。
図20は、第2の実施形態に係る樹木葉検出処理ルーチンの一例を示すフローチャートである。
図19に示すステップ604は、図20に示すステップ700からステップ708の各処理により構成されており、以下では個々の処理の詳細について説明する。
ここで、不規則な形状であることは、法線の方向が急激に変化しやすい形状であり、つまり近傍点同士の法線の成す角度が大きい(方向の類似度が小さい)ことを意味する。一方、平面や曲面などの人工物は近傍点の成す角度は小さく、距離に応じて滑らかに法線が変化する傾向がある。本実施形態では、この特徴を利用し、2段階の法線閾値を用いたクラスタリングにより葉領域(不規則な形状領域)を検出する。
まず、図20のステップ700では、葉領域検出部52が、強閾値を用いたクラスタリングを行い、人工物の領域を除去する。注目点piからの最も近いk個までの近傍点群pj(j∈1,2,3,...,k)について、法線方向の類似度が高いものをクラスタリングする。なお、これまでの周辺代表点群の表記pと本ステップの注目点は異なるものであるが、変数(文字)の制限から表記を同じとした。
注目点と近傍点の法線の内積の大きさが、強閾値THhighよりも大きいとき、同一クラスタとする。閾値THhighは、実験的パラメータであり、本実施形態では、0.8とした。
ステップ702では、葉領域検出部52が、上記ステップ700でクラスタリングを行った結果、領域の大きなクラスタを除去する。領域が大きいとは、同一クラスタの面積や体積でもよいし、同一クラスタに属する点数で判定してもよい。
本実施形態では、X、Y、Z座標に占める空間の大きさの閾値Vol clustr(=2.0[m3])と点数Num cluster(=1000[点])の両方が閾値より大きい点群クラスタは人工物と判定し、以降のステップ604では除去して残りの点群だけを用いる。
ステップ704では、葉領域検出部52が、除去されなかった点群について弱閾値を用いて再度クラスタリングを行う。注目点piからの最も近いk個までの近傍点群pj(j∈1,2,3,...,k)について、法線方向の類似度が高いものをクラスタリングする。注目点と近傍点の法線の内積の大きさが、弱閾値THlowよりも大きいとき、同一クラスタとする。閾値THlowは、実験的パラメータであり、本実施形態では、0.2とした。
ステップ706では、葉領域検出部52が、上記ステップ704でクラスタリングを行った結果、領域の大きなクラスタを葉領域クラスタと判定する。領域が大きいとは、同一クラスタの面積や体積でもよいし、同一クラスタに属する点数で判定してもよい。また、ステップ706では、領域の小さなクラスタを除くが、この理由は、計測ノイズのように孤立した点群を除去するためである。
本実施形態では、ステップ702の処理と同様に、X、Y、Z座標に占める空間の大きさの閾値Vol clustr(=2.0[m3])と点数Num cluster(=1000[点])の両方が閾値より大きい点群クラスタを葉領域と判定する。
ステップ708では、葉領域検出部52が、上記ステップ706において葉領域と判定したクラスタを、樹木識別部56に出力する。
図19に戻り、ステップ606では、人工物識別部54が、ステップ602で入力された押し出し形状領域情報に基づいて、1つの方向に延びる1次元的な押し出し形状物(押し出し形状領域構成物)として判定された点群クラスタについて、人工物であるか非人工物であるかの判定を行う。押し出し形状領域構成物には、人工物の柱、例えば、街灯や電柱などが含まれている。このため、本ステップ606においては、これら人工物の点群と樹木の幹を含む非人工物の点群との識別処理を行い、非人工物として識別された点群について樹木の幹か否かを識別する。人工物/非人工物の識別処理としては、例えば、下記に示す処理A、Bのいずれかの処理が適用される。
(処理A:下端部円筒と上端部との形状非類似度を指標として用いた場合)
処理Aでは、各クラスタについて下端部に存在する点群の射影形状を円近似し、上部(下端部以外の点群)を下端の代表押し出し方向に射影した場合に、下端点群の円近似した領域内部に含まれる点群の割合から判定を行う。
ここで、下端部とはクラスタcにおいて、そのクラスタcに含まれる点群の中でZ軸方向の最小値から鉛直上方向にN[m]の点群領域とする。この下端部の点群について、まず、代表押し出し方向を求める。代表押し出し方向とは、クラスタに含まれる代表点の押し出し方向の中から、最も共通する方向とする。本実施形態においては、ある注目代表点と同一クラスタ内の代表点との間の内積の相和が最大となる方向を代表押し出し方向とする。注目代表点の番号をi、その押し出し方向をmc i、同一のクラスタ内の代表点をj、その押し出し方向をmc jとすると、次式で求まる。
次に、クラスタcの下端部以外の点群について、この円筒傾き方向に射影したときに、半径rcの内側にあるか否かを調べる。人工物の柱状構造物の場合、クラスタcの多くの点群がこの円筒の内部に含まれる。一方、樹木のように様々な方向に伸びる枝を含む場合、下端部で推定した円筒の外側に存在する点群の割合が多くなる。
クラスタcに含まれる点群の集合をpcで表すと、次式を満たすときに樹木の幹を含む非人工物であると判定する。
ここで、下端部を決定する距離N[m]と、閾値THnaturalとは、実験的に決めるパラメータであり、本実施形態では、一例として、N=2.0[m]、THnatural=0.3とした。
図21は、第2の実施形態に係る人工物/非人工物判定処理の一例を示す模式図である。
処理Aを適用した場合、図21の左図に示すように、幹が計測された範囲が長ければ、円近似範囲も広くなり、推定精度が高くなる。一方、図21の右図に示すように、幹が計測された範囲が短いと、円近似範囲が狭いため、推定精度が低くなる。
(処理B:代表押し出し方向の断面相関値を指標として用いた場合)
上記処理Aの場合、図21に示したように、樹木が高木でない場合には、下端部の高さN[m]の領域よりも低い木が検出できない場合があり、また、真っすぐ鉛直に伸びた樹木については原理的に検出が難しい。
そこで、処理Bでは、下端部とそれ以外の上端部を区別せずに樹木を含む非人工物か否かを判定する手法を示す。各クラスタについて代表押し出し方向における断面相関値(クラスタ断面相関)を調べる。柱状構造物や樹木のような細長いパーツで構成された3次元物体は、特定の断面形状で押し出された形状(押し出し形状)の組み合わせであると考えられる。
ここで、断面相関値とは、クラスタcにおいて、任意位置の押し出し方向に、距離dc[m]の範囲に存在する点群を、押し出し方向に射影して生成される断面と、その周辺に同様にして生成した断面の相関値の累積値として定義する。ここでいう断面相関値とは、クラスタcの局所領域に含まれる点群を、代表押し出し方向に射影したときの断面形状を用いて計算される。人工物の柱形状の多くは、物体固有の特定の断面(例えば、円や矩形などの形状)を一方向に押し出した形状であることが多いのに対し、樹木については斜め方向の枝の存在があるために、任意の位置の断面と周辺の断面の相関値が小さいことがある。処理Bでは、この断面相関値が小さいクラスタを、樹木を含む非人工物と判定する。
クラスタcに含まれる断面数をSN、断面形状をSj(j=1,2,3,...,K(j)で表す。各断面形状について、半径rsに含まれるすべての断面Skとの相関値の平均値を算出する。
但し、K(j)は断面Sjから半径rs以内に含まれる断面形状の数であり、Corr(Sj,Sk)は断面Sjと断面Skとの相関を出力する次式のような関数であればよい。
ここで、押し出し方向の距離dc=0.2[m]とした。本ステップにおいて、規定断面を用いても同様の相関値を得ることができる。ただし、点群の欠損が多い計測シーンにおいては、人工物であっても押し出し方向や規定断面の形状が一定になりにくい傾向がある。人工物において相関値が低くなることを抑制するために、再度断面を生成している。
次式を満たす場合に、樹木の幹を含む非人工物、すなわち、樹木の幹候補であると判定とする。
THcorr、rsは実験的に決めるパラメータであり、本実施形態では、一例として、THcorr=0.1、rs=1.0[m]とした。
図22は、第2の実施形態に係る人工物/非人工物判定処理の他の例を示す模式図である。
処理Bを適用した場合、図22の左図に示すように、人工物の柱では、注目代表点での断面(破線)と、近傍代表点での断面(実線)と、の類似度が高くなる。一方、図22の右図に示すように、樹木では、注目代表点での断面(破線)と、近傍代表点での断面(実線)と、の類似度が低くなる。
なお、上記の断面相関値の式で、各断面の中から最小値(min)を用いると、一つでも枝が存在して断面相関値が小さくなると、樹木の幹候補と検出される場合がある。これは、樹木の検出漏れを抑制するためであるが、逆に電柱に斜めのケーブルがついている場合なども樹木の幹候補であると判定されるなど過剰検出の傾向になりやすい。そのため、過剰検出が多い場合には、最小値(min)の代わりに平均値を出力する関数を用いてもよい。
そして、ステップ606では、樹木識別部56が、人工物識別部54により識別された樹木の幹候補が樹木の幹であるか否かを判定する。屋外環境下で計測した場合、市街地では「人」が多数検出され、それらの点群クラスタも上記ステップまでの処理で検出されることも多々ある。
そこで、本実施形態では、樹木の幹候補と判定された点群クラスタのZ軸方向(高さ方向)の長さが2[m]以上の場合には樹木の幹と判定する。一方、それ以下の長さの場合には、ステップ604にて葉領域として検出された点群クラスタとの最短距離が閾値よりも短いか否かにより、樹木の幹であるか否かを判定する。
つまり、樹木の幹候補と判定された点群クラスタと、樹木の葉領域として検出された点群クラスタとの最短距離が閾値THnearの値よりも長い場合、樹木の幹候補のままとする。一方、樹木の幹候補と判定された点群クラスタと、樹木の葉領域として検出された点群クラスタとの最短距離が閾値THnearの値よりも短い場合、樹木の幹として判定する。本実施形態では、一例として、THnear=0.5[m]とした。
ステップ608では、樹木識別部56が、樹木の幹もしくは樹木の幹候補と判定された点群クラスタについて、押し出し形状領域の点群クラスタ情報、樹木の判定結果、及び葉と判定された点群領域に関する情報を、押し出し形状領域記憶部26内の樹木情報記憶部28に出力し、樹木情報記憶部28に記憶する。
樹木情報記憶部28に記憶される情報は、具体的には、樹木の判定結果、各クラスタの代表点及び規定断面、過分割領域に含まれる点群の番号、各クラスタのX軸方向、Y軸方向、及びZ軸方向の長さ、及び規定断面の平均半径等の情報とする。
すなわち、物体を精度よくクラスタリングすることを可能とし、クラスタリングした点群から樹木や柱状構造物等を検出し、それらの位置および幹の太さを推定することができる。
特に、市街地のように隣接物が存在する場合であっても、根本から斜めに伸びた幹を有する樹木を対象としても、精度良く検出することができる。
以上、実施形態としてクラスタリング装置、人工物識別装置、及び幹検出装置としての幹検出装置及び方法を例示して説明した。実施形態は、コンピュータを、幹検出装置が備える各部として機能させるための点群解析処理プログラムの形態としてもよい。実施形態は、この点群解析処理プログラムを記憶したコンピュータが読み取り可能な記憶媒体の形態としてもよい。
その他、上記実施形態で説明した幹検出装置の構成は、一例であり、主旨を逸脱しない範囲内において状況に応じて変更してもよい。
また、上記実施形態で説明した点群解析処理プログラムの処理の流れも、一例であり、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよい。
また、上記実施形態では、点群解析処理プログラムを実行することにより、実施形態に係る処理がコンピュータを利用してソフトウェア構成により実現される場合について説明したが、これに限らない。実施形態は、例えば、ハードウェア構成や、ハードウェア構成とソフトウェア構成との組み合わせによって実現してもよい。