(57)【要約】【課題】物体表面上の計測点群から水平面と垂直面で成る３次元形状モデルを、水平面の数と各点の水平面からのずれのバランスをとりつつ生成する。【解決手段】再帰的クラスタ分割手段１０２は、３次元点群データベース１０１から３次元点群を読み込み、生成されるクラスタが平面を表す点の集合となるまで、最適レイヤ生成手段１０３によるレイヤ生成とクラスタ生成手段１０４によるクラスタ生成とを繰り返し行う。最適レイヤ生成手段１０３は、レイヤの集合を複数生成し、その中から全ての点の高さのずれの総和とレイヤの数を足した評価値が最小のレイヤ集合を選択する。クラスタが平面を表す点の集合となったことは、最適レイヤ生成手段１０３にてレイヤが一つしか生成されないことで決定する。３次元モデル生成手段１０６は、最終的に平面クラスタ格納手段１０５に格納されたクラスタにより柱状の３次元形状モデルを生成する。【選択図】　図１
2004030226.tif 000002
【特許請求の範囲】
【請求項１】
複数の点の３次元位置情報から、元の形状を復元する方法であって、
点の集合を層状にグループ分けする第１のグループ分けの過程と、
層状に分けられた各グループを、さらに元の形状において異なる面に属する点が、異なるグループに属するようにグループ分けする第２のグループ分けの過程と、
上記第１、第２のグループ分けの過程による２段階のグループ分けを、さらに得られたグループ集合に対して繰り返し適用することによって点のグループ分けを行う第３のグループ分けの過程と、
第３のグループ分けの過程で得られたグループ集合から形状モデルを生成するモデル生成過程と、を備える
ことを特徴とする３次元点群からの形状モデル生成方法。
【請求項２】
請求項１に記載の３次元点群からの形状モデル生成方法において、
第１のグループ分けの過程では、
複数組の層状グループ集合を生成する過程と、
複数組の層状グループ集合の中から、層状グループ集合に含まれる層状グループの数に基づいた評価値により層状グループ集合を選択する過程と、を備える
ことを特徴とする３次元点群からの形状モデル生成方法。
【請求項３】
請求項１に記載の３次元点群からの形状モデル生成方法において、
第１のグループ分けの過程では、
複数組の層状グループ集合を生成する過程と、
層状グループの各点に対して、層状グループが表す平面モデルからの距離を算出する過程と、
複数組の層状グループ集合の中から、上記算出した距離に基づいた評価値により層状グループ集合を選択する過程と、を備える
ことを特徴とする３次元点群からの形状モデル生成方法。
【請求項４】
請求項１に記載の３次元点群からの形状モデル生成方法において、
第１のグループ分けの過程では、
複数組の層状グループ集合を生成する過程と、
層状グループの各点に対して、層状グループが表す平面モデルからの距離を算出する過程と、
複数組の層状グループ集合の中から、上記算出した距離および層状グループ集合に含まれる層状グループの数に基づいた評価値により層状グループ集合を選択する過程と、を備える
ことを特徴とする３次元点群からの形状モデル生成方法。
【請求項５】
請求項１ないし４のいずれかに記載の３次元点群からの形状モデル生成方法において、
第３のグループ分けの過程では、
点のグループを上記第１のグループ分けの過程に適用した結果、得られた層状グループが１つだけの場合には上記繰り返しの適用を停止する
ことを特徴とする３次元点群からの形状モデル生成方法。
【請求項６】
複数の点の３次元位置情報から、元の形状を復元する装置であって、
点の集合を層状にグループ分けする第１のグループ分け手段と、
層状に分けられた各グループを、さらに元の形状において異なる面に属する点が、異なるグループに属するように、グループ分けする第２のグループ分け手段と、
上記第１、第２のグループ分け手段による２段階のグループ分けを、さらに得られたグループ集合に対して繰り返し適用することによって点のグループ分けを行う第３のグループ分け手段と、
第３のグループ分け手段で得られたグループ集合から形状モデルを生成するモデル生成手段と、を備える
ことを特徴とする３次元点群からの形状モデル生成装置。
【請求項７】
請求項６に記載の３次元点群からの形状モデル生成装置において、
第１のグループ分け手段は、
複数組の層状グループ集合を生成し、
複数組の層状グループ集合の中から、層状グループ集合に含まれる層状グループの数に基づいた評価値により層状グループ集合を選択するものである
ことを特徴とする３次元点群からの形状モデル生成装置。
【請求項８】
請求項６に記載の３次元点群からの形状モデル生成装置において、
第１のグループ分け手段は、
複数組の層状グループ集合を生成し、
層状グループの各点に対して、層状グループが表す平面モデルからの距離を算出し、
複数組の層状グループ集合の中から、上記の距離に基づいた評価値により層状グループ集合を選択するものである
ことを特徴とする３次元点群からの形状モデル生成装置。
【請求項９】
請求項６に記載の３次元点群からの形状モデル生成装置において、
第１のグループ分け手段は、
複数組の層状グループ集合を生成し、
層状グループの各点に対して、層状グループが表す平面モデルからの距離を算出し、
複数組の層状グループ集合の中から、上記算出した距離および層状グループ集合に含まれる層状グループの数に基づいた評価値により層状グループ集合を選択するものである
ことを特徴とする３次元点群からの形状モデル生成装置。
【請求項１０】
請求項６ないし９のいずれかに記載の３次元点群からの形状モデル生成装置において、
第３のグループ分け手段は、
点のグループを上記第１のグループ分け手段に適用した結果、得られた層状グループが１つだけの場合に、第１、第２のグループ分け手段によるグループ分けの繰り返しの適用を停止するものである
ことを特徴とする３次元点群からの形状モデル生成装置。
【請求項１１】
請求項１ないし５のいずれかに記載の３次元点群からの形状モデル生成方法における過程を、コンピュータに実行させるためのプログラムとした
ことを特徴とする３次元点群からの形状モデル生成プログラム。
【請求項１２】
請求項１ないし５のいずれかに記載の３次元点群からの形状モデル生成方法における過程を、コンピュータに実行させるためのプログラムとし、
該プログラムを、該コンピュータが読み取りできる記録媒体に記録した
ことを特徴とする３次元点群からの形状モデル生成プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、水平および垂直の面から構成されると見なすことが可能な３次元形状物体において、物体表面上の３次元的な位置を計測した複数の点から、水平および垂直の面により構成される３次元図形を作成し、元の物体の形状モデルを生成する３次元点群からの形状モデル生成方法および装置に関するものである。
【０００２】
【従来の技術】
実在する多くの３次元物体は複雑な形状をしているが、３次元物体を水平および垂直の面から構成されると見なし、形状モデルを作成することは、実世界を単純化し、計算機によって実世界をより簡単に扱う方法として、広く利用されている。具体的には、都市の建物モデル作成処理やロボットの障害物回避処理などで利用されている（参考文献［１］第１０回機能図形情報システムシンポジウム講演論文集１９９９年４月、「都市３次元地図を用いた防災情報提供システム」、大谷尚通、石川裕治、桑田喜隆、井上潮）。
【０００３】
以下の説明では、３次元位置を持つ点の集合を３次元点群と呼ぶことにする。
【０００４】
最初に、３次元位置の取得方法に関する従来技術を説明する。非接触で物体表面の点の３次元位置を得る技術としては、大きく分けて以下の２つがある（参考文献［２］「三次元画像計測」、井口征士、佐藤宏介、昭晃堂）。
【０００５】
技術１：対象物体にレーザーや超音波などを発射し、反射に要する時間によって対象点までの距離を計測する。物体表面を順次走査することによって、物体表面全域の３次元位置を測定する。
【０００６】
技術２：対象物体の画像や映像から、人間の知覚・認識手法と同様の方法により３次元形状を得る。つまり、人問が両眼の視差から物体形状を得ることに相当するステレオ画像法や、運動している物体を撮影した映像から、物体の各部分がどのように移動しているかで物体形状を得る、オプティカルフロー、といった手法である。
【０００７】
技術１では、計測機器方向から見えるすべての点の３次元位置を計測できるが、表面の材質やなめらかさによって反射状態が変わるためノイズを含むことがあり、周辺の点との平均値をとるなどして位置の精度を上げる必要がある。
【０００８】
一方、技術２では、複数の画像間で対応関係を正しくとることができれば、幾何的な条件を用いて、測定対象となる表面の点の３次元位置を取得できる。しかしながら、対応関係がとりやすい、例えば、物体の角やなんらかの印がついている部分の位置だけが計測されることが多い。
【０００９】
以上のようにして得られる３次元点群は、位置に対して多少の誤差や、分布に対してばらつきを持つことがあり、その点を考慮する必要がある。また、測定方向から見えない部分については、３次元点群を取得できないので、測定方向から見える表面部分に対してのみ形状モデルを作成する。測定方向に対して裏面を持つような物体に対しては、複数の測定方向から計測およびモデル作成を行い、それらを統合して、最終的なモデルを作成することになる。
【００１０】
本技術の説明にあたって、３次元点群は以下に説明する３軸の直交座標系ｘｙｚに対して、位置が定められているとする（図１２）。３次元点群の計測時の方向と平行にｚ軸を設定する。ｚ軸の向きは計測方向とは逆とし、手前にある点や面ほど、ｚの値が大きくなるものとする。ｘ軸およびｙ軸は互いに直交していれば任意の向きでよい。ｘｙ平面と平行な面を水平面、ｘｙ平面と垂直な面を垂直面と呼ぶことにする。
【００１１】
３次元点群から、垂直および水平面からなる形状モデルを作成する手法には、参考文献［３］“特願２００２−５５２１１「形状モデル生成方法及び装置、並びにこの方法の実行プログラムとこの実行プログラムを記録した記録媒体」日本電信電話株式会社”、および参考文献［４］“「３次元特徴点集合に基づく建物モデル復元手法の一検討」、石川裕治、宮川勲、若林佳織、有川知彦、電子情報通信学会２００２年度総合大会、情報・システム講演論文集２、２２９ページ”にあるレイヤおよびクラスタと呼ばれる集合を用いるものがある。レイヤとは、ほぼ同じ高さの点を集めた集合であり、クラスタとは、もとのモデル形状において同一の面に属すると考えられる点の集合である。当然ながら、測定対象の形状は分かっていないため、同一のレイヤの中で距離が近い点を集めたり、画像の色が同じところを集めたり、集めた点から作成した２次元形状モデルが低いレイヤの点を含まないように集めたりするといった様々な手法が考えられる。
【００１２】
この従来手法を用いた装置の従来例のブロック図を図１３に、この従来手法を用いた方法の従来例の処理の流れを図１４に示す。
【００１３】
従来手法では、３次元点群データベース１３０１に格納された３次元の点群全体を、まず、レイヤ生成手段１３０２によって、ほぼ同じ高さを持つ点の集合、レイヤ、に分割する。次に、クラスタ生成手段１３０３によって、各レイヤをクラスタに分割する。次に、３次元モデル生成手段１３０４は、クラスタ生成手段１３０３によって生成された各クラスタに対し、クラスタを包含する水平面上の２次元図形を上面形状とし、その図形の各辺に垂直面を付加することで、個々のクラスタに対し、柱状の３次元モデルを作成する。こうして作成された３次元モデルは、出力手段１３０５から出力される。
【００１４】
【発明が解決しようとする課題】
従来手法では、各レイヤで、ほぼ同じ高さの点が集められており、その点の集合は平面を構成していると見なしている。しかし、レイヤをクラスタに分割したときに、クラスタ単位では平面と見なせなくなるような場合が考えられる。
【００１５】
具体的に図１５の点群を例に説明する。レイヤを生成するのに、例えばｚ座標の値で点の集合を分割しようとすると、図１５における点のグループＡ，Ｂ，Ｃ同士の間隔は非常に小さく、位置の計測誤差もあってｚ座標値だけから点のグループを完全に分離することは難しい。また、グループＡ，Ｂ，Ｃを一つの点の集合と見なした場合、ｚ軸方向の広がりは大きくないため一つの平面形状と見なすことができる。よって、Ａ，Ｂ，Ｃは一つのレイヤになる。
【００１６】
その後、クラスタを生成する時には、ＡとＢ，Ｃの間にはＡ，Ｂ，Ｃよりも低い下位レイヤの点があることから、Ａ，Ｂ，Ｃは一つのクラスタにはならない。もしＡ，Ｂ，Ｃを一つのクラスタにしてしまうと、３次元モデル生成手段１３０３で生成される柱状モデルが下位レイヤの点を内部に含んでしまい、点が物体表面にあることと矛盾するからである。
【００１７】
よって、ＡとＢ，Ｃは別のクラスタとなる。ＢとＣが一体となったクラスタは、Ａとは異なり、点のｚ軸方向の分布が大きく、平面と見なすことが難しい。しかし、従来技術ではＢとＣを分離することはできず、ＢとＣは一体のまま一つの平面形状が作成されてしまう。
【００１８】
レイヤ生成における別な基準として、点の高さのその平均値（図１５ではＺ０）に対するばらつき（点の高さとその平均値の差の絶対値）の平均値を考えることもできる。つまり、Ａ，Ｂ，Ｃに含まれる各点に対して、ｚ座標とＺ０との差の絶対値を算出し、その平均値が小さければ、そのレイヤを平面であると判定するというものである。この場合も、あるレイヤに一つだけ差が大きな点（外れ点）がある場合、そのレイヤにおける各点のｚ座標とＺ０との差の平均値としては、その点の影響が出てこないため、外れ点がレイヤに含まれたままになってしまう問題がある。
【００１９】
一般にレイヤに含まれる各点のｚ座標とその平均値Ｚ０との差が大きいと、３次元モデル生成手段１３０３において、レイヤから生成される水平面の高さは各点の高さと、ずれが大きいことになる。よって、最終的に作成されるモデルは点群の位置をうまく反映していないことになる。ずれを小さくするには、各点に合わせてレイヤを多数生成することが考えられるが、点の位置には誤差が含まれている可能性があり、点の個々の位置に合わせ過ぎることは望ましくない。具体的には、細かな面がたくさんできたり、クラスタを構成する点が２点以下となって面が構成できなくなることが考えられる。また、面の数が多いことは最終的に得られる形状モデルのデータ量が大きくなることを意味するため、その点でも好ましいことではない。レイヤ生成時には以上の点を考慮してレイヤ集合を選択する必要がある。
【００２０】
本発明は、上記の問題点を解決するためのものであり、物体表面上の３次元的な位置を計測した複数の点から、水平および垂直の面により構成される３次元図形として元の物体の形状モデルを、この形状モデルの水平面に対する各点の高さのずれ（誤差）と、水平面のモデル数（データ量）が、どちらも多くなり過ぎないように、バランスをとりつつ生成する形状モデル生成方法および装置を提供することを課題とする。
【００２１】
【課題を解決するための手段】
上記の課題を解決するため、本発明は、複数の点の３次元位置情報から、元の形状を復元する方法であって、点の集合を層状にグループ分けする第１のグループ分けの過程と、層状に分けられた各グループを、さらに元の形状において異なる面に属する点が、異なるグループに属するようにグループ分けする第２のグループ分けの過程と、上記第１、第２のグループ分けの過程による２段階のグループ分けを、さらに得られたグループ集合に対して繰り返し適用することによって点のグループ分けを行う第３のグループ分けの過程と、第３のグループ分けの過程で得られたグループ集合から形状モデルを生成するモデル生成過程と、を備えることを特徴とする３次元点群からの形状モデル生成方法を解決の手段とする。
【００２２】
あるいは、上記の３次元点群からの形状モデル生成方法において、第１のグループ分けの過程では、複数組の層状グループ集合を生成する過程と、複数組の層状グループ集合の中から、層状グループ集合に含まれる層状グループの数に基づいた評価値により層状グループ集合を選択する過程と、を備えることを特徴とする３次元点群からの形状モデル生成方法を解決の手段とする。
【００２３】
あるいは、上記の３次元点群からの形状モデル生成方法において、第１のグループ分けの過程では、複数組の層状グループ集合を生成する過程と、層状グループの各点に対して、層状グループが表す平面モデルからの距離を算出する過程と、複数組の層状グループ集合の中から、上記算出した距離に基づいた評価値により層状グループ集合を選択する過程と、を備えることを特徴とする３次元点群からの形状モデル生成方法を解決の手段とする。
【００２４】
あるいは、上記の３次元点群からの形状モデル生成方法において、第１のグループ分けの過程では、複数組の層状グループ集合を生成する過程と、層状グループの各点に対して、層状グループが表す平面モデルからの距離を算出する過程と、複数組の層状グループ集合の中から、上記算出した距離および層状グループ集合に含まれる層状グループの数に基づいた評価値により層状グループ集合を選択する過程と、を備えることを特徴とする３次元点群からの形状モデル生成方法を解決の手段とする。
【００２５】
あるいは、以上の３次元点群からの形状モデル生成方法において、第３のグループ分けの過程では、点のグループを上記第１のグループ分けの過程に適用した結果、得られた層状グループが１つだけの場合には上記繰り返しの適用を停止することを特徴とする３次元点群からの形状モデル生成方法を解決の手段とする。
【００２６】
あるいは、複数の点の３次元位置情報から、元の形状を復元する装置であって、点の集合を層状にグループ分けする第１のグループ分け手段と、層状に分けられた各グループを、さらに元の形状において異なる面に属する点が、異なるグループに属するように、グループ分けする第２のグループ分け手段と、上記第１、第２のグループ分け手段による２段階のグループ分けを、さらに得られたグループ集合に対して繰り返し適用することによって点のグループ分けを行う第３のグループ分け手段と、第３のグループ分け手段で得られたグループ集合から形状モデルを生成するモデル生成手段と、を備えることを特徴とする３次元点群からの形状モデル生成装置を解決の手段とする。
【００２７】
あるいは、上記の３次元点群からの形状モデル生成装置において、第１のグループ分け手段は、複数組の層状グループ集合を生成し、複数組の層状グループ集合の中から、層状グループ集合に含まれる層状グループの数に基づいた評価値により層状グループ集合を選択するものであることを特徴とする３次元点群からの形状モデル生成装置を解決の手段とする。
【００２８】
あるいは、上記の３次元点群からの形状モデル生成装置において、第１のグループ分け手段は、複数組の層状グループ集合を生成し、層状グループの各点に対して、層状グループが表す平面モデルからの距離を算出し、複数組の層状グループ集合の中から、上記の距離に基づいた評価値により層状グループ集合を選択するものであることを特徴とする３次元点群からの形状モデル生成装置を解決の手段とする。
【００２９】
あるいは、上記の３次元点群からの形状モデル生成装置において、第１のグループ分け手段は、複数組の層状グループ集合を生成し、層状グループの各点に対して、層状グループが表す平面モデルからの距離を算出し、複数組の層状グループ集合の中から、上記算出した距離および層状グループ集合に含まれる層状グループの数に基づいた評価値により層状グループ集合を選択するものであることを特徴とする３次元点群からの形状モデル生成装置を解決の手段とする。
【００３０】
あるいは、以上の３次元点群からの形状モデル生成装置において、第３のグループ分け手段は、点のグループを上記第１のグループ分け手段に適用した結果、得られた層状グループが１つだけの場合に、第１、第２のグループ分け手段によるグループ分けの繰り返しの適用を停止するものであることを特徴とする３次元点群からの形状モデル生成装置を解決の手段とする。
【００３１】
あるいは、以上の３次元点群からの形状モデル生成方法における過程を、コンピュータに実行させるためのプログラムとしたことを特徴とする３次元点群からの形状モデル生成プログラムを解決の手段とする。
【００３２】
あるいは、以上の３次元点群からの形状モデル生成方法における過程を、コンピュータに実行させるためのプログラムとし、該プログラムを、該コンピュータが読み取りできる記録媒体に記録したことを特徴とする３次元点群からの形状モデル生成プログラムを記録した記録媒体を解決の手段とする。
【００３３】
本発明は、上述の構成により、３次元の点の位置情報だけから、人手を介さず自動的に、元の複数の物体形状および配置を、データ量の少ない水平面と垂直面からなる正確な形状モデルとして生成する。特に、得られたモデルの水平面に対する各点の高さのずれ（誤差）と、水平面のモデル数（データ量）が、どちらも多くなり過ぎないように、バランスをとりつつ形状モデルを生成する。
【００３４】
【発明の実施の形態】
以下、本発明の実施の形態について図を用いて詳細に説明する。
【００３５】
本発明の形状モデル生成装置の一実施形態例を図１に示す。本実施形態例による装置は、図１３と同様の各要素（細線で描いたブロック）である、３次元点群データベース１０１、クラスタ生成手段１０４、３次元モデル生成手段１０６、および出力手段１０７に、太線で描いた、再帰的クラスタ分割手段１０２、および平面クラスタ格納手段１０５を加え、図１３のレイヤ生成手段におけるレイヤ生成方法を変更し、太線で描いた最適レイヤ生成手段１０３として、図１のような構成とする。
【００３６】
再帰的クラスタ分割手段１０２は、３次元点群データベース１０１から３次元点群を読み込み、生成されたクラスタが平面を表す点の集合となるまで、繰り返しレイヤ生成およびクラスタ生成を行う。実際のレイヤ生成処理およびクラスタ生成処理は、それぞれ、最適レイヤ生成手段１０３およびクラスタ生成手段１０４に、再帰的クラスタ分割手段１０２が処理を受け渡すことで、実施される。あるクラスタが平面と見なせるかどうかは、例えば、最適レイヤ生成手段１０３によってレイヤが一つしか生成されないことによって決定することができる。
【００３７】
再帰的クラスタ分割手段１０２によって生成されたクラスタは、最終的に平面クラスタ格納手段１０５に格納され、３次元モデル生成手段１０６におけるモデル生成時に用いられる。
【００３８】
最適レイヤ生成手段１０３ではレイヤの集合を複数生成し、その中から以下に述べる評価値に基づいてレイヤ集合を選択して出力する。レイヤ集合の評価値は、レイヤの数、および、各点Ｐが属するレイヤの高さとＰのｚ座標からのずれ（距離）の一方もしくは双方に基づいて算出される。レイヤの高さとはレイヤが表している水平面の高さであり、例えば、レイヤに含まれる点のｚ座標の平均値をレイヤの高さとすることができる。評価値としては、例えば、すべての点の高さのずれの総和とレイヤの数を足した値などが考えられる。生成するレイヤは高さのずれとレイヤの数のどちらもが大きくなり過ぎないことが望ましいので、最適レイヤ生成手段１０３は評価値の最も小さいレイヤ集合を選択し、出力する。
【００３９】
本発明による形状モデルの生成方法の一実施形態例を図２に示す。ここでは、再帰的クラスタ分割手段１０２による処理の流れを用いて説明する。
【００４０】
まず最初に、３次元点群データベース１０１に含まれている点を一つにまとめ、一つのクラスタとして、非平面クラスタ格納手段２１０に格納する（ステップ２０１）。以後、非平面クラスタ格納手段２１０が空になるまで（ステップ２０２）、そこに格納されたクラスタに対して、一つ一つレイヤを生成する処理を行う（ステップ２０３，２０４）。そして、レイヤを一つしか生成しないクラスタを平面であると見なし、平面クラスタ格納手段１０５に格納する（ステップ２０５，２０８）。ここに格納したクラスタを３次元モデル生成手段１０６で形状モデルの上面としてモデル生成に用いる。レイヤが複数生成された場合はクラスタの生成を行い（ステップ２０６）、生成されたクラスタを非平面クラスタ格納手段２１０に追加して（ステップ２０７）、再度レイヤ生成処理を行うようにする。このように、生成したクラスタに対して、再度レイヤ生成処理を行うことによって、図１５に示したような例においても、点のグループＢとＣを分離することができる。再帰的クラスタ分割手段１０２は、非平面クラスタ格納手段２１０に格納されたクラスタに対してすべて処理を行うと、３次元モデル生成手段１０６に処理を移し（ステップ２０９）、処理を終了する。
【００４１】
次に、本発明による形状モデル生成方法における最適レイヤ生成方法の一実施形態例を図３に示す。ここでは、最適レイヤ生成手段１０３の処理の流れを用いて説明する。
【００４２】
最適レイヤ生成手段１０３は、再帰的クラスタ分割手段１０２からレイヤに分割したいクラスタを入力として受け取る（ステップ３０１）。そのクラスタ中の点をｚ座標で昇順に並べ（ステップ３０２）、各点を１つのレイヤＬｉ（ｉ＝１，…，ｎ）として処理をスタートする（ステップ３０３）。以後は、レイヤを１組づつ併合しながら、レイヤの数ｎが１になるまで、評価値を算出していく（ステップ３１０，３１１）。レイヤＬｉに含まれる点のｚ座標の平均値Ｚｉをレイヤの高さと呼ぶ。レイヤの高さＺｉの差がもっとも小さいレイヤの組を併合の対象とする（ステップ３０７，３０８，３０９）。
【００４３】
評価値Ｅｎはレイヤ集合｛Ｌ１，…，Ｌｎ｝に対してｋ×ΔＺ＋ｎとして求める（ステップ３０５，３０６）。ここでｋは評価値の算出に使われるパラメータで、△Ｚとｎの配分を調節するために用いる。ｎはレイヤの数であり、△Ｚは、各レイヤＬｉにおいて、レイヤの高さＺｉからのｚ座標のずれ｜Ｚｉ−ｚ｜をすべての点について求め、すべてのレイヤについて総和した値である。レイヤ集合と評価値はペアで各ｎに対して評価値リスト３１３に保存される。なお、評価値としては、ｎだけ、もしくは△Ｚだけに基づいたものであっても良い。
【００４４】
レイヤの数ｎが１になるまで評価値が計算されると、最後の処理に移り、評価値Ｅｎが最小のレイヤ集合を出力する（ステップ３１２）。
【００４５】
次に、本発明による形状モデル生成方法におけるクラスタ生成方法の一実施形態例を図４に示す。ここでは、クラスタ生成手段１０４の処理の流れを用いて説明する。
【００４６】
クラスタ生成手段１０４によるクラスタ生成処理は、各レイヤに対して行われる（ステップ４０１）。各レイヤにおいて各点ｐｉを１つクラスタＣｉとし（ステップ４０２）、距離の近い順に順次併合して、レイヤに含まれる点のすべてのペアを２点の距離が小さい順に並べ、これをＰとする（ステップ４０３）。併合に際しては併合後のクラスタに含まれる点の集合Ｐに対して（図５（ａ））、ｘｙ平面上で凸包を作成する（図５（ｂ））。すなわち、Ｐの先頭から点のペア（ｐｉ，ｐｊ）を一つ取り出し（ステップ４０４）、ｐｉ，ｐｊを含むクラスタを、それぞれＣｉ，Ｃｊとし（ステップ４０５）、ＣｉとＣｊに含まれる点の集合をＳとする（ステップ４０６）。そして、そのＳの凸包がｘｙ平面上に投影された下位のレイヤの点を含むならば併合を行わず、含まないならば併合を行って新しいクラスタＣｋを生成する（ステップ４０７，４０８）。併合した場合は、併合前の元の二つのクラスタＣｉ，Ｃｊを削除する（ステップ４０９）。この包含のチェックをしながら、Ｐが空になり、順次、併合ができなくなるまで、クラスタの併合を行って最終的なクラスタを得る（ステップ４１０）。この凸包による包含チェックにより、３次元モデル生成手段１０６の処理において、レイヤの上下関係に矛盾しない形状モデルを生成することができる。
【００４７】
最後に、本発明による形状モデル生成方法における最終的なクラスタからの３次元モデル生成方法の一実施形態例を図６に示す。ここでは、３次元モデル生成手段１０６の処理の流れを用いて説明する。
【００４８】
３次元モデル生成手段１０６は、各クラスタから柱状のモデルデータを作成する。全クラスタＣｉに対して（ステップ６０１）、クラスタの点の数が３以上なら２次元の凸包Ｓｉを作成し、柱状モデルの上面とする（ステップ６０２）。次に、各クラスタに含まれる点のｚ座標の平均値Ｚｉを算出し、柱状モデルの高さとする（ステップ６０３）。以上のようにして、クラスタの数だけ、その点の平均値の高さを持つ柱状モデルを作成した後（ステップ６０４）、元々の凸包の位置に柱状モデルを配置し（ステップ６０５）、全体を一つの形状モデルとして出力手段１０７に出力する。この処理過程では、クラスタに含まれる点の数が３以上のときだけ、形状モデルの上面が生成されるようにして、レイヤの分割数を抑えている。つまり、レイヤを分割し過ぎると２個以下の点しか含まないクラスタが多数生じる可能性があり、分割数を抑える必要がある。
【００４９】
［数値例］
以上に説明した本発明による装置や方法の実施形態例に対して、具体的な数値例を挙げる。
【００５０】
計測によって与えられた３次元点群の配置を図７に示す。図７において、（ａ）はｘｙ平面図、（ｂ）はｘｚ立面図である。説明のため、点のグループにＡ〜Ｅまでの名前を付けているが、処理上の影響はない。このうちＡは１点だけからなり、どの平面にも属さない外れ点と考えられる。
【００５１】
まず最初に、３次元点群データベース１０１の点群は、再帰的クラスタ分割手段１０２によって、いったん非平面クラスタ格納手段２１０に格納されるものの、すぐに取り出されて最適レイヤ生成手段１０３に入力される。
【００５２】
最適レイヤ生成手段１０３では、各点をそれぞれ１つのレイヤとしてスタートする。最初は同じｚ座標をもつ点が同じレイヤに集められる。ここまでの処理では、△Ｚの総和は常に０であり、レイヤの数ｎはだんだんと減少しているため、レイヤが併合されるごとに計算される評価値（ｋ×△Ｚ＋ｎ）は単調に減少する。同じ高さの点が同じレイヤに集められた時点における各集合を、図７に示すようにＡ，Ｂ，Ｃ，Ｄ，Ｅと名付ける。この時点の評価値は５である。例えば［Ａ，Ｂ］はＡとＢが併合した結果できたレイヤを示すとすると、レイヤ間の距離から併合されるレイヤは、ＢとＤ、［Ｂ，Ｄ］とＥ、ＡとＣ、［Ａ，Ｃ］と［Ｂ，Ｄ，Ｅ］という順番で選ばれる。最適レイヤ生成手段１０３での評価値の計算に用いる△Ｚの重み付けパラメータｋの値は一例として０．２５とし、レイヤ評価値リストの最後の５行の内容は以下のようになる。
【００５３】
【表１】
2004030226.tif 000003
【００５４】
｛Ａ，［Ｂ，Ｄ］，Ｃ，Ｅ｝の場合を取り挙げて△Ｚの計算方法を説明する。４つのレイヤのうち、Ａ，Ｃ，Ｅに関しては、すべてレイヤに含まれる点はレイヤの高さと同じｚ座標を持つので、ｚ座標のずれは０である。よって［Ｂ，Ｄ］だけが問題となる。まず、レイヤ［Ｂ，Ｄ］の高さＺ［Ｂ，Ｄ］、つまり、レイヤに含まれる点のｚ座標の平均値を計算する。Ｚ［Ｂ，Ｄ］は（１０×４＋９×３）／７＝９．５７１４ｍと求まる。次に、各点のｚ座標とＺ［Ｂ，Ｄ］との差を求める。Ｂに含まれる４つの点とＺ［Ｂ，Ｄ］との差は０．４２８６、Ｄに含まれる３つの点とＺ［Ｂ，Ｄ］との差は０．５７１４、よって差の総和として△Ｚは求まり、△Ｚ＝０．４２８６×４＋０．５７１４×３＝３，４２９となる。よって上に示した｛Ａ，［Ｂ，Ｄ］，Ｃ，Ｅ｝の評価値が計算される。
【００５５】
レイヤ評価値リストの内容が示すように、レイヤ集合が｛Ａ、［Ｂ，Ｄ，Ｅ］，Ｃ｝が、もっとも評価値が小さいため、最適レイヤ生成手段１０３の出力となる。
【００５６】
レイヤ評価値リストの評価値の変化を見てみると、レイヤの数ｎが減少するに従って、レイヤの面の高さ（＝レイヤに含まれる点のｚ座標の平均値）に対するずれの総和△Ｚがだんだんと増加している。△Ｚもｎもあまり大きくならないことが望ましいので、本発明の手法により、双方のバランスをとったレイヤ集合を選択できていることがわかる。
【００５７】
ここで処理は再帰的クラスタ分割手段１０２に戻る。レイヤ数は１ではないので、出力されたレイヤをクラスタ生成手段１０４に入力して、クラスタを生成する。レイヤ集合｛Ａ、［Ｂ，Ｄ，Ｅ］，Ｃ｝では、凸包が下位レイヤの点を含むのは、Ｂと［Ｄ，Ｅ］を併合しようとする時に、［Ｂ，Ｄ，Ｅ］から作られる凸包がＣの点を含む場合だけである。よって、クラスタはＡ，Ｂ，［Ｄ，Ｅ］，Ｃの４つが出力される。
【００５８】
従来の技術（図１３）ではこの時点で、３次元モデル生成手段１０６に処理を移していたが、本発明の手法では、それぞれのクラスタを複数のレイヤに分割すべきかどうかを、再度検討する。
【００５９】
ここで再度、再帰的クラスタ分割手段１０２に処理が戻り、非平面クラスタ格納手段２１０にＡ，Ｂ，［Ｄ，Ｅ］，Ｃの４つのクラスタが格納される。これらのクラスタは再度、一つ一つ上記と同様にレイヤ生成処理にかけられる。Ａ，Ｂ，Ｃそれぞれのクラスタは、すべての点が同じ高さ（ｚ座標）にあるため、一つしかレイヤを生成しない。よって、そのまま平面クラスタ格納手段１０５に格納される。しかし、［Ｄ，Ｅ］については、全体を一つのレイヤにするか、ＤとＥにレイヤを分割するかが問題となる。具体的にレイヤ評価値リストを示すと以下のようになる。なお、｛Ａ，Ｂ，Ｃ，Ｄ，Ｅ｝全体に対して評価値を計算したときと同様に、ＤまたはＥを分割する場合は評価値が大きくなることは明らかであるので、省略して記載している。
【００６０】
【表２】
2004030226.tif 000004
【００６１】
上記の評価値リストによりＤとＥを分割した方が評価値が小さくなるので、ＤとＥは別レイヤとする。
【００６２】
最適レイヤ生成手段１０３から再帰的クラスタ分割手段１０２に処理が戻り、ＤとＥはそれぞれクラスタ生成手段１０４に掛けられる。ＤとＥはｘｙ平面上において下位レイヤの点を包含することが無いので、そのまま一つのクラスタとなり、非平面クラスタ格納手段２１０に格納される。最後に、それぞれのクラスタＤおよびＥは最適レイヤ生成手段１０３に掛けられ、レイヤが一つしか生成されないことを確認し、平面クラスタ格納手段１０５に格納される。
【００６３】
以上で、非平面クラスタ格納手段２１０が空になったため、５つのクラスタ｛Ａ，Ｂ，Ｃ，Ｄ，Ｅ｝が３次元モデル生成手段１０６に引き渡される。
【００６４】
３次元モデル生成手段１０６によって５つのクラスタ｛Ａ，Ｂ，Ｃ，Ｄ，Ｅ｝から生成される３次元モデルを図８に示す。クラスタＡは点が一つしかないので、モデル形状には関係していない。これは、Ａの点を外れ値と見なし、モデル生成過程において無視したと考えることができるが、このことは直感と合っており、レイヤ数とずれの両方を考慮した評価値に依るレイヤの分割が正しく機能していることを示している。
【００６５】
なお、従来技術に依れば、ＤとＥのクラスタは分割されず、同一のクラスタとされるため、得られる形状モデルは図９に示すような不正確なものとなる。
【００６６】
［利用例］
上記に説明した本発明が具体的に利用される例を示す。
【００６７】
本利用例では、３次元点群は得られているものとするが、点群の３次元位置の測定方法はどのようなものであってもよい。なお、本発明の適用は下記に限るものではなく、３次元点群が得られていれば、垂直および水平面から成る３次元モデルを生成し、頂点数が少ない、つまりデータサイズの小さい形状モデルとして利用可能である。
【００６８】
例：３次元都市モデル構築（図１０）
上空からの計測によって得られた３次元点群から、本発明の手法により、３次元の都市モデルを構築する。斜面を持つ屋根やドーム型の屋根は近似形状となるものの、災害シュミレーションや、ビル街のモデル作成には有効な自動形状作成手段となる。
【００６９】
次に、市街地の側面を車両などで連続的に計測し、本発明の手法により、側面の凹凸形状を自動的に作成する。このモデルを上空から得た建物モデル群と統合することで、詳細な形状を持った都市モデルを少ない労力で作成することができる。出力データのフォーマットとしてはＶＲＭＬなどが考えられる。ＶＲＭＬは広く普及しているＷＷＷブラウザで表示が可能である。作成したモデルをＷＷＷブラウザに表示した例を図１１に示す。
【００７０】
なお、図１で示した装置における各手段の一部もしくは全部の機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明を実現することができること、あるいは、図２，３，４、および図６で示した処理のステップをコンピュータのプログラムで構成し、そのプログラムをコンピュータに実行させることができることは言うまでもなく、コンピュータでその機能を実現するためのプログラム、あるいは、コンピュータにその処理のステップを実行させるためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えば、ＦＤ（フレキシブルディスク）や、ＭＯ、ＲＯＭ、メモリカード、ＣＤ、ＤＶＤ、リムーバブルディスクなどに記録して、保存したり、配布したりすることが可能である。また、上記のプログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
【００７１】
【発明の効果】
以上の説明で明らかなように、本発明によれば、３次元の点の位置情報だけから、人手を介さず自動的に、元の複数の物体形状および配置を、データ量の少ない水平面と垂直面からなる、各点の位置を反映した正確な形状モデルとして生成することができる。特に、得られたモデルの水平面に対する各点の高さのずれ（誤差）と、水平面のモデル数（データ数）が、どちらも多くなり過ぎないように、バランスをとりつつ形状モデルを生成することができる。
【図面の簡単な説明】
【図１】本発明による形状モデル生成装置の一実施形態例を示すブロック図
【図２】本発明による形状モデル生成方法の一実施形態例を示す図であって、再帰的クラスタ分割手段の処理の流れを説明する図
【図３】本発明による形状モデル生成方法における最適レイヤ生成方法の一実施形態例を示す図であって、最適レイヤ生成手段の処理の流れを説明する図
【図４】本発明による形状モデル生成方法におけるクラスタ生成方法の一実施形態例を示す図であって、クラスタ生成手段の処理の流れを説明する図
【図５】（ａ），（ｂ）は、併合後のクラスタに含まれる点の集合に対してｘｙ平面上で凸包を作成する様子の例を示す図
【図６】本発明による形状モデル生成方法における最終的なクラスタからの３次元モデル生成方法の一実施形態例を示す図であって、３次元モデル生成手段の処理の流れを説明する図
【図７】（ａ），（ｂ）は、計測によって与えられた３次元点群の配置の例を示す図
【図８】本発明により生成される３次元形状モデルの例を示す図
【図９】本発明との比較のため、従来技術により得られる３次元形状モデルを示す図
【図１０】本発明を３次元都市モデル構築に利用した例を示す図
【図１１】本発明により作成した３次元形状モデルをＷＷＷブラウザに表示した例を示す図
【図１２】３次元形状モデル生成のもとになる３次元点群を説明する図
【図１３】従来手法を用いた３次元点群からのモデル生成装置の従来例を示すブロック図
【図１４】従来手法によるモデル生成方法の従来例の処理の流れを説明する図
【図１５】具体的な点群の例を示す図
【符号の説明】
１０１…３次元点群データベース
１０２…再帰的クラスタ分割手段
１０３…最適レイヤ生成手段
１０４…クラスタ生成手段
１０５…平面クラスタ格納手段
１０６…３次元モデル生成手段
１０７…出力手段
２０１…非平面クラスタ格納手段
【図１】
2004030226.tif 000005
【図２】
2004030226.tif 000006
【図３】
2004030226.tif 000007
【図４】
2004030226.tif 000008
【図５】
2004030226.tif 000009
【図６】
2004030226.tif 000010
【図７】
2004030226.tif 000011
【図８】
2004030226.tif 000012
【図９】
2004030226.tif 000013
【図１０】
2004030226.tif 000014
【図１１】
2004030226.tif 000015
【図１２】
2004030226.tif 000016
【図１３】
2004030226.tif 000017
【図１４】
2004030226.tif 000018
【図１５】
2004030226.tif 000019