JP2018159693A - Information processing program, information processing method and information processing device - Google Patents
Information processing program, information processing method and information processing device Download PDFInfo
- Publication number
- JP2018159693A JP2018159693A JP2017058526A JP2017058526A JP2018159693A JP 2018159693 A JP2018159693 A JP 2018159693A JP 2017058526 A JP2017058526 A JP 2017058526A JP 2017058526 A JP2017058526 A JP 2017058526A JP 2018159693 A JP2018159693 A JP 2018159693A
- Authority
- JP
- Japan
- Prior art keywords
- plane
- height
- information processing
- point cloud
- offset amount
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Optical Radar Systems And Details Thereof (AREA)
- Length Measuring Devices With Unspecified Measuring Means (AREA)
Abstract
Description
本発明は、情報処理プログラム、情報処理方法、および情報処理装置に関する。 The present invention relates to an information processing program, an information processing method, and an information processing apparatus.
従来、物体に向けてレーザを照射し、反射光が返ってくるまでの時間を測定することにより、物体までの距離を測定する距離センサがある。また、距離センサ内で光学系を回転させて水平方向のスキャニングを行いながら物体までの距離を測定する、いわゆる2D(2次元:2−Dimensions)センサがある。また、駆動装置を用いて2Dセンサを回転させることにより立体的な物の位置や形状をデータ化する3D測定と呼ばれる技術がある。 Conventionally, there is a distance sensor that measures the distance to an object by irradiating the object with a laser and measuring the time until the reflected light returns. In addition, there is a so-called 2D (2-dimensions) sensor that measures the distance to an object while performing horizontal scanning by rotating an optical system in the distance sensor. In addition, there is a technique called 3D measurement in which the position and shape of a three-dimensional object are converted into data by rotating a 2D sensor using a driving device.
また、従来、異なる測定位置において3D測定された複数の3次元点群データを1つにするために、複数の3次元点群データの位置合わせに関する技術がある。例えば、それぞれの3次元点群データによって特定される測定位置群を、水平方向に一定の高さで分けて、各水平方向に含まれる点群を2Dでマッチングする技術がある。例えば、3次元点群を同じ高さで水平方向に分けるためには、例えば、基準面などに基づき高さの基準を合わせる技術がある。より具体的には、例えば、複数の3次元点群データの各々において、最も大きい面、高さが最も低い面や最も高い面などを基準面として、基準面同士の高さを一致させるように一方の3次元点群データの高さを補正することにより複数の3次元点群データの水平方向の位置を合わせる。 Conventionally, there is a technique related to alignment of a plurality of three-dimensional point group data in order to unite a plurality of three-dimensional point group data measured in 3D at different measurement positions. For example, there is a technique in which measurement position groups specified by respective three-dimensional point group data are divided at a certain height in the horizontal direction, and point groups included in each horizontal direction are matched in 2D. For example, in order to divide a three-dimensional point group in the horizontal direction at the same height, for example, there is a technique of matching the height reference based on a reference plane or the like. More specifically, for example, in each of a plurality of three-dimensional point cloud data, the heights of the reference surfaces are made to coincide with each other using the largest surface, the lowest surface, the highest surface, etc. as the reference surface. By correcting the height of one of the three-dimensional point group data, the horizontal positions of the plurality of three-dimensional point group data are adjusted.
先行技術としては、例えば、2つの測定位置から得た3次元点群データ間の位置合わせに適した特徴部分を含むオーバーラップ部分を算出する技術がある(例えば、以下特許文献1参照。)。また、例えば、移動体の位置情報において、移動前の3次元点群データと、現在の3次元点群データとを取得し、移動前の3次元点群データと現在の3次元点群データとの距離の差が最小となるように現在の3次元点群データの位置を修正する技術がある(例えば、以下特許文献2参照。)。
As a prior art, for example, there is a technique for calculating an overlap portion including a feature portion suitable for alignment between three-dimensional point cloud data obtained from two measurement positions (see, for example,
しかしながら、複数の3次元点群データの間で同一の基準面が見つからず、3次元点群データの合成精度が低下する場合がある。 However, the same reference plane cannot be found among a plurality of three-dimensional point group data, and the synthesis accuracy of the three-dimensional point group data may decrease.
1つの側面では、本発明は、3次元点群データの合成精度の向上を図ることができる情報処理プログラム、情報処理方法、および情報処理装置を提供することを目的とする。 In one aspect, an object of the present invention is to provide an information processing program, an information processing method, and an information processing apparatus capable of improving the synthesis accuracy of three-dimensional point cloud data.
本発明の一側面によれば、複数の測定位置の各々の測定位置について、前記各々の測定位置から物体までの距離に基づく3次元の点群データを取得し、前記各々の測定位置について、取得した前記点群データから平面領域に属する点群データを抽出し、前記複数の測定位置の間で、抽出した前記点群データが属する前記平面領域の間の垂直方向の差分が一致するオフセット量を算出し、算出した前記オフセット量にしたがって補正された前記点群データを用いて位置合わせを行う情報処理プログラム、情報処理方法、および情報処理装置が提案される。 According to an aspect of the present invention, three-dimensional point cloud data based on a distance from each measurement position to an object is obtained for each measurement position of a plurality of measurement positions, and obtained for each measurement position. The point cloud data belonging to the plane area is extracted from the point cloud data, and an offset amount in which the vertical difference between the plane areas to which the extracted point cloud data belongs is matched between the plurality of measurement positions. An information processing program, an information processing method, and an information processing apparatus are proposed that perform positioning using the point cloud data that is calculated and corrected according to the calculated offset amount.
本発明の一態様によれば、3次元点群データの合成精度の向上を図ることができる。 According to one embodiment of the present invention, it is possible to improve the synthesis accuracy of three-dimensional point cloud data.
以下に図面を参照して、本発明にかかる情報処理プログラム、情報処理方法、および情報処理装置の実施の形態を詳細に説明する。 Hereinafter, embodiments of an information processing program, an information processing method, and an information processing apparatus according to the present invention will be described in detail with reference to the drawings.
図1は、情報処理装置による一動作例を示す説明図である。情報処理装置100は、複数の測定位置の各々の測定位置について3D測定によって得られた3D点群データを合成することを支援するコンピュータである。本実施の形態では、異なる測定位置として、第1測定位置101と第2測定位置102とを例に挙げて説明する。第1測定位置101について取得された3D点群データを第1点群データ111とする。第2測定位置102について取得された3D点群データを第2点群データ112とする。
FIG. 1 is an explanatory diagram illustrating an operation example of the information processing apparatus. The
従来、物体に向けてレーザを照射し、反射光が返ってくるまでの時間を測定することにより、物体までの距離を測定するセンサがある。また、センサ内で光学系を回転させて水平方向のスキャニングを行いながら物体までの距離を測定する、いわゆる2Dセンサがある。2Dセンサを駆動装置によって回転させることにより3D測定を行うことができる。 Conventionally, there is a sensor that measures the distance to an object by irradiating the object with a laser and measuring the time until the reflected light returns. In addition, there is a so-called 2D sensor that measures the distance to an object while performing horizontal scanning by rotating an optical system in the sensor. 3D measurement can be performed by rotating the 2D sensor with a driving device.
3次元点群データ(以下3D点群データ)は、例えば、各種シミュレータやCAD(Computer Aided Design)などのアプリケーションに利用される。3D点群データは、点データの集合である。点データによって点が特定可能である。ここでの点とは、2Dセンサによってレーザが照射された物体の点である。具体的には、点データは、少なくとも情報処理装置100から点までの距離に基づく位置情報を含む。情報処理装置100は、x軸、y軸、z軸などのローカルな直交座標系を用いて各点の位置を表す。より詳細に説明すると、点データは、情報処理装置100で用いる座標系Cにおける各点の位置を示す座標値であるベクトルデータを含む。座標値はx座標値、y座標値、z座標値である。また、点群と、点データの一例については、図9を用いて説明する。また、CADなどのアプリケーションは、例えば、3D点群データに基づいてコンピュータ空間上に測定対象の空間を模擬することができる。
Three-dimensional point cloud data (hereinafter referred to as 3D point cloud data) is used for various simulators and applications such as CAD (Computer Aided Design). The 3D point cloud data is a set of point data. A point can be identified by point data. The point here is a point of an object irradiated with a laser by a 2D sensor. Specifically, the point data includes position information based on at least the distance from the
ここで、複数の測定位置によって3D測定が行われる場合における3D測定からモデルデータの生成までの一連の処理について簡単に説明する。例えば、(1)3D測定、(2)フィルタリング、(3)レジストレーション、(4)メッシュモデル化というような手順によってCADなどで用いることが可能なモデルデータが生成される。情報処理装置100は、異なる測定位置で3D測定が実施されることにより複数の3D点群データを取得する(1)。そして、情報処理装置100は、3D点群データごとにフィルタリングを行うことによりノイズとなる点群を除去する(2)。例えば、3D点群データによって特定される点ごとに当該点から近い順から所定数の各点との間で分散を算出する。このとき、点が物品等を形成する要素である場合、近傍の点も密集するので、ノイズとなる孤立点よりも分散が小さくなり、ノイズとなる孤立点であれば、近傍に点が存在してもまばらとなるので、物品の構成要素である点よりも分散が大きくなる。このことから、一例として、情報処理装置100は、分散が閾値以上である点をノイズとみなして除去する。
Here, a series of processes from 3D measurement to generation of model data when 3D measurement is performed at a plurality of measurement positions will be briefly described. For example, model data that can be used in CAD or the like is generated by procedures such as (1) 3D measurement, (2) filtering, (3) registration, and (4) mesh modeling. The
そして、情報処理装置100は、ノイズ除去後に、複数の3D点群データの位置合わせ処理を行うことにより、1つの3D点群データとして統合する(3)。情報処理装置100は、1つに統合された3D点群データをメッシュ化処理により、3次元の面データであるモデルデータに変換する(4)。なお、メッシュ化処理については、CADなどによって行われる。
Then, the
異なる測定位置で測定された3D点群の位置合わせをするレジストレーションの方法として、3D点群の位置合わせにターゲットを用いる方法がある。具体的には、既知の形状のターゲットを測定対象の空間に設置しておき、各測定位置において測定された3D点群データからターゲット(基準点)を検出することにより複数の3D点群データを一つに合わせる方法がある。しかし、この方法では、ターゲットを設置する手間が発生し、どの地点にターゲットを設置するのがよいかといった判断が現場の作業員に委ねられることから使用時の手軽さが損なわれる。 As a registration method for aligning 3D point groups measured at different measurement positions, there is a method using a target for alignment of 3D point groups. Specifically, a target having a known shape is placed in the space to be measured, and a plurality of 3D point cloud data is obtained by detecting the target (reference point) from the 3D point cloud data measured at each measurement position. There is a way to match one. However, this method takes time and labor to install the target, and it is left to the operator at the site to determine at which point the target should be installed.
このため、ターゲットを用いずに、3D点群データにより表現される環境の形状から位置合わせを自動的に行う方法が求められる。しかし、複数の3D点群データごとに点、線や面などの特徴を複数抽出し、RANSAC(RANDOM Sample Consensus)などのアルゴリズムにしたがって複数の3D点群データ間の対応点を求めたのでは、計算時間が増大する場合がある。 For this reason, there is a need for a method of automatically performing alignment from the shape of the environment represented by 3D point cloud data without using a target. However, if a plurality of features such as points, lines, and surfaces are extracted for each of a plurality of 3D point group data, and corresponding points between the plurality of 3D point group data are obtained according to an algorithm such as RANSAC (RANDOM Sample Consensus), Calculation time may increase.
このことから、3D点群をそのまま処理するのではなく、それぞれの3D点群を一定の高さで水平方向にスライスし、そこに含まれる点群を2次元でマッチングすることにより、計算効率を高める技術がある。 Therefore, instead of processing the 3D point cloud as it is, each 3D point cloud is sliced horizontally at a certain height, and the point cloud contained therein is matched two-dimensionally, thereby improving the calculation efficiency. There is technology to enhance.
このような技術の場合、複数の3D点群を測定対象の空間に対して同じ高さで水平方向にスライスできることが条件となる。このとき、すべての3D測定を同じ高さで行えればよいが、測定対象の空間を死角なく測定しようとすると情報処理装置100の脚の長さを変えて測定したい場合や、机や台に情報処理装置100を置いて測定したい場合が出てくる。このような背景から、事前に各3D点群データの高さの基準を合わせる方法が求められる。
In such a technique, a condition is that a plurality of 3D point groups can be sliced horizontally at the same height with respect to the space to be measured. At this time, it is only necessary to perform all 3D measurements at the same height. However, if it is desired to measure the space to be measured without blind spots, the length of the legs of the
3D点群を高さ方向においてスライスする前に各3D点群データの高さの基準を合わせる方式として、多くの測定位置で観測可能な床面を検出し、その床面を基準とする方法がある。例えば、法線が鉛直上向きの点群により形成される平面を全て抽出して高さが最も低い面を基準面とする方法1と、法線が鉛直上向きの点群により形成される平面を全て抽出して面積が最も大きい面を基準面とする方法2との2つの方法がある。
As a method of adjusting the height reference of each 3D point cloud data before slicing the 3D point cloud in the height direction, there is a method of detecting a floor surface observable at many measurement positions and using the floor surface as a reference. is there. For example, all the planes formed by point groups whose normals are vertically upward are extracted and the plane having the lowest height is defined as the reference plane, and all planes formed by the point groups whose normals are vertically upward are all There are two methods,
しかしながら、上記2つの方法のいずれを採用したとしても、オクルージョンの問題で位置合わせする2つの測定位置で得られた点群データにおいて異なる平面を基準として選択してしまう状況が想定されるので、適用範囲に制約が生じる。測定の現場例については図3に示し、オクルージョン例については、図4および図5に示す。 However, even if either of the above two methods is adopted, it is assumed that different point planes are selected on the point cloud data obtained at the two measurement positions to be aligned due to the occlusion problem. There are constraints on the range. An example of the measurement site is shown in FIG. 3, and an example of occlusion is shown in FIGS.
そこで、情報処理装置100では、例えば、異なる測定位置で測定される3D点群の間で測定対象の空間において平面間の相対的な位置関係、すなわち平面間の高度差が一致するオフセット量を算出して高さの基準を合わせる。そして、情報処理装置100では、2次元のレジストレーションを実行する。これにより、情報処理装置100は、オクルージョンのある環境下における3D点群データの合成精度を高めることができる。
Therefore, the
ここで、3D点群データから抽出される互いに平行な複数の水平面領域(以下、平面と省略する。)の高さの値に関する2つの集合データは、集合データ間で3D測定が行われた際の高さが異なる。このため、同一の平面に関する高さを表していてもその高さの値は異なる。すなわち、座標系Cの位置が異なる。同一の平面に関する高さの差が求めたいオフセット量である。ここで、オフセット量はΔhと表す。このとき、同一の平面であってもデータ間で高さの値は同じにならない。例えば床面と机上の平面との距離、机上の平面と天井面との距離、床面と天井面との距離などといったように同じ平面の組み合わせで距離が計算されれば3D点群データ間で多少の測定誤差はあっても略同一の値が得られる可能性が高い。よって、平面間の距離を特徴として異なる3D点群データ間で対応する面を探索することが可能である。3D点群データの間で対応する平面間の距離が同じであれば、正しい高さ方向の補正量であるオフセット量Δhを求めて各平面の高さの値を変換すると、3D点群データの間で同じ高さの値が複数得られることになる。 Here, two sets of data related to height values of a plurality of parallel horizontal plane regions (hereinafter abbreviated as planes) extracted from the 3D point cloud data are obtained when 3D measurement is performed between the set data. Different heights. For this reason, even if it represents the height regarding the same plane, the value of the height differs. That is, the position of the coordinate system C is different. The difference in height with respect to the same plane is the offset amount to be obtained. Here, the offset amount is represented by Δh. At this time, even in the same plane, the height value is not the same between the data. For example, if the distance is calculated using a combination of the same plane, such as the distance between the floor and the plane on the desk, the distance between the plane on the desk and the ceiling, the distance between the floor and the ceiling, etc., between the 3D point cloud data There is a high possibility that substantially the same value will be obtained even if there is some measurement error. Therefore, it is possible to search for a corresponding surface between different 3D point cloud data characterized by the distance between the planes. If the distance between corresponding planes is the same among the 3D point cloud data, the offset amount Δh, which is the correct correction amount in the height direction, is obtained, and the height value of each plane is converted. A plurality of values having the same height can be obtained.
しかし、測定対象の空間が階段のように、同じような平面が等間隔で繰り返されるような空間である場合、誤ったオフセット量Δhにおいて異なる3D点群データの間で平面の高さが同じとなる数が多くなることがある。なお、誤ったオフセット量Δhにおいて平面の高さが同じとなる数が多くなる例については、図6に示す。 However, when the space to be measured is a space in which similar planes are repeated at regular intervals like a staircase, the heights of the planes are different between different 3D point cloud data at the wrong offset amount Δh. The number of may increase. An example in which the number of planes having the same height at the wrong offset amount Δh increases is shown in FIG.
そこで、情報処理装置100は、第1点群データから得る第1平面群の1面に合わせて、異なる位置での第2点群データから得る第2面群の高さを補正した第2面群の面と高さが同じ第1面間の距離のうち、第1面群の面間の特徴的な距離と同じ距離の数からオフセット量を特定する。これにより、異なる位置での3D測定結果の合成精度を挙げることができる。
Therefore, the
図1において、第1点群データ111から抽出される複数の第1平面の高さの集合をH1とし、第2点群データ112から抽出される複数の第2平面の高さの集合をH2とする。また、集合H2をオフセット量Δhによって補正した補正後の集合は、H’2とする。
In FIG. 1, a set of heights of a plurality of first planes extracted from the first
情報処理装置100は、第1測定位置101と第2測定位置102の各々について、各々の測定位置から物体までの距離に基づく3次元の点群情報(第1点群データ111および第2点群データ112)を取得する。ここで、情報処理装置100は、各測定位置の点群データごとに点群データに含まれる各点データの座標をz軸の正方向が抽出される水平面の法線方向となるように変換しておく。
The
情報処理装置100は、各々の測定位置について、取得した点群データから、平面領域に属する点群情報を抽出する。具体的には、情報処理装置100は、各々の測定位置について、取得した点群データによって特定される3D点群に基づいて、互いに平行な複数の平面を抽出する。第1点群データ111から抽出される互いに平行な複数の平面を、複数の第1平面とする。第2点群データ112から抽出される互いに平行な複数の平面を、複数の第2平面とする。ここで、平面の抽出の詳細な処理については後述する。
The
図1において、第1測定位置101と第2測定位置102は、図2に示すように階段の踊り場である。第1測定位置101は、例えば、図2に示すような上り階段側を測定可能である。第2測定位置102は、例えば、図2に示すような下り階段側を測定可能である。第1点群データ111から抽出される複数の第1平面は、例えば、天井面、上り階段の踏み面、踊り場の床面などが含まれる。第2点群データ112から抽出される複数の第2平面は、例えば、天井面、下り階段の踏み面、踊り場の床面などが含まれる。
In FIG. 1, a first measurement position 101 and a second measurement position 102 are stair landings as shown in FIG. The first measurement position 101 can measure, for example, the upstairs side as shown in FIG. The second measurement position 102 can measure, for example, the descending staircase side as shown in FIG. The plurality of first planes extracted from the first
ここで、情報処理装置100は、複数の測定位置で測定された3D点群データごとに当該3D点群データから水平面を抽出することもできる。
Here, the
第1点群データ111から抽出される複数の第1平面の高さの値に関する集合は、H1とする。第2点群データ112から抽出される複数の第2平面の高さの値に関する集合は、H2とする。例えば、複数の第1平面の高さを実線で示し、複数の第2平面の高さを点線で示す。
A set related to height values of a plurality of first planes extracted from the first
情報処理装置100は、複数の測定位置の間で、抽出した点群情報が属する平面領域の間の垂直方向の差分が一致するオフセット量を算出する。
The
具体的には、情報処理装置100は、第1測定位置101について、複数の第1平面の各々の第1平面の間の各距離のうちの他の距離との差分が所定値以上である距離を特定する。複数の第1平面は、取得した第1点群データ111から抽出した複数の点群データの各々に属する互いに平行な第1平面群である。複数の第1平面の各々の第1平面の間の各距離は、例えば、d11,d12,d13,d14,d15,d16である。所定値は、例えば、利用者によって設定されればよい。後述例では所定値をαと表す。ここでは、情報処理装置100は、他の距離と比較して特徴的な距離を特定する。距離d15と距離d16とは、階段の床面間の距離であり、ほぼ同じである。情報処理装置100は、距離d15と距離d16を特定しない。ここでは、情報処理装置100は、距離d11,d12,d13,d14を特定する。特定された距離は、特徴的な距離とも称する。
Specifically, the
情報処理装置100は、第2測定位置102について、複数の第2平面に含まれる第2平面と、複数の第1平面に含まれる第1平面と、の組み合わせを生成する。複数の第2平面は、取得した第2点群データ112から抽出した複数の点群データの各々に属する互いに平行な第2平面群である。情報処理装置100は、生成した組み合わせの各々について、組み合わせに含まれる平面の間の垂直方向(z軸方向)の位置を一致させるように、複数の第2平面に含まれる第2平面の垂直方向の位置を補正する。すなわち、情報処理装置100は、組み合わせに含まれる平面の間の高さを一致させるように、複数の第2平面の高さを補正する。
The
図1では、2つの組み合わせによる補正例を挙げる。1つ目は、複数の第1平面のうちの天井面と、複数の第2平面のうちの天井面との組み合わせにより補正した例(図1の正しい対応例)である。2つ目は、複数の第1平面のうちの上り階段の上段の床面と、複数の第2平面のうちの踊り場の床面との高さを一致させるように補正した例(図1の誤対応例)である。補正した後の複数の第2平面の高さの値に関する集合は、H’2とする。 In FIG. 1, a correction example using two combinations is given. The first is an example (correct correspondence example in FIG. 1) corrected by a combination of the ceiling surface of the plurality of first planes and the ceiling surface of the plurality of second planes. The second is an example in which the height of the upper floor of the ascending stairs among the plurality of first planes and the height of the landing floor of the plurality of second planes are made to coincide (FIG. 1). Example of erroneous correspondence). A set relating to the height values of the plurality of second planes after correction is H ′ 2 .
次に、情報処理装置100は、組み合わせの各々について、複数の第1平面の各々の第1平面の垂直方向の位置のうち、補正後の各々の第2平面領域の垂直方向の位置と一致する位置を特定する。換言すると、情報処理装置100は、組み合わせの各々について、複数の第1平面の各々の第1平面の高さのうち、補正後の複数の第2平面の各々の第2平面の高さと一致する高さを特定する。
Next, for each combination, the
正しい対応例の場合、複数の第1平面に含まれる天井面の高さと、複数の第1平面に含まれる踊り場の床面の高さとが特定される。誤対応例の場合、複数の第1平面に含まれる上り階段の2つの床面の高さと、複数の第1平面に含まれる踊り場の床面の高さとが特定される。 In the case of a correct correspondence example, the height of the ceiling surface included in the plurality of first planes and the height of the floor surface of the landing included in the plurality of first planes are specified. In the case of an erroneous correspondence example, the heights of the two floor surfaces of the ascending staircase included in the plurality of first planes and the heights of the landing floor surfaces included in the plurality of first planes are specified.
情報処理装置100は、組み合わせの各々について、特定した位置(高さ)の2つの組み合わせのうち、位置(高さ)の組み合わせに含まれる位置(高さ)間の差分が、特徴的な距離と一致する組み合わせの数を特定する。
For each combination, the
正しい対応例の場合、天井面の高さと、踊り場の床面の高さと組み合わせについての差分が距離d13であり、情報処理装置100は、この差分が特徴的な距離に含まれると判断する。そして、正しい対応例の場合、情報処理装置100は、組み合わせの数として1を特定する。
In the case of a correct correspondence example, the difference between the height of the ceiling surface and the height of the landing floor and the combination is the distance d 13 , and the
また、誤対応例の場合、上り階段の上段の床面の高さと上り階段の下段の床面の高さとの組み合わせについての差分が距離d15であり、情報処理装置100は、この差分が特徴的な距離に含まれないと判断する。上り階段の上段の床面の高さと踊り場の床面の高さとの組み合わせについての差分が距離d14であり、情報処理装置100は、この差分が特徴的な距離に含まれると判断する。上り階段の下段の床面の高さと踊り場の床面の高さとの組み合わせについての差分が距離d16であり、情報処理装置100は、この差分が特徴的な距離に含まれると判断する。したがって、誤対応例の場合、情報処理装置100は、組み合わせの数として1を特定する。
In the case of an erroneous correspondence example, the difference between the height of the upper floor surface of the upstairs and the height of the lower floor surface of the upstairs is the distance d 15 , and the
次に、情報処理装置100は、組み合わせの各々について特定した数に基づいて、オフセット量を特定する。具体的には、情報処理装置100は、特定した数が最も大きい組み合わせについてのオフセット量を特定する。図1の例では、正しい対応と誤対応とのいずれの組み合わせについても特定した数が同じであるため、オフセット量として両方の組み合わせについてのオフセット量が特定されてもよいし、他の評価値を導入することによりオフセット量が特定されてもよい。
Next, the
そして、情報処理装置100は、特定したオフセット量にしたがって補正された点群情報を用いて位置合わせを行う。具体的には、情報処理装置100は、第2点群データ112が、特定したオフセット量にしたがって補正された第2点群データ112と、第1点群データ111と、を用いて位置合わせを行う。情報処理装置100は、第2点群データ112に含まれる各点データのz座標値に、特定したオフセット量を加算する。これにより、補正された第2点群データ112が得られる。なお、位置合わせについては、従来技術を用いればよい。
Then, the
また、図2や図6を用いて後述するように、複数の第1平面のうち、補正後の複数の第2平面と高さが一致する平面の数を評価値とする場合、誤対応の方が正しい対応よりも高い評価となってしまう。これに対して、図1の例では、誤対応と正しい対応との評価が同じになるため、誤対応についてのオフセット量が選ばれるのを抑制することができる。ひいては、複数の3D点群データの合成精度の向上を図ることができる。 Further, as will be described later with reference to FIGS. 2 and 6, when the number of planes having the same height as the corrected plurality of second planes among the plurality of first planes is used as the evaluation value, there is an error. Will be higher than the correct response. On the other hand, in the example of FIG. 1, since the evaluation of the incorrect response and the correct response is the same, it is possible to suppress the selection of the offset amount for the incorrect response. As a result, the synthesis accuracy of a plurality of 3D point cloud data can be improved.
図2は、階段を3D測定した場合の平面例を示す説明図である。図2(1)には、階段の踊り場における第1測定位置101と、同じ踊り場における第2測定位置102とを示す。情報処理装置100は、第1測定位置101から上りの階段を測定する。情報処理装置100は、第2測定位置102から下りの階段を測定する。
FIG. 2 is an explanatory diagram illustrating an example of a plan view when a staircase is measured in 3D. FIG. 2A shows a first measurement position 101 at a stair landing and a second measurement position 102 at the same landing. The
図2(2)には、第1測定位置101によって測定された第1点群データ111から抽出される複数の第1平面と、第2測定位置102によって測定された第2点群データ112から抽出される複数の第2平面と、を示す(点のハッチングの部分)。複数の第1平面は、例えばP11〜P15である。複数の第2平面はP21〜P26である。
FIG. 2 (2) shows a plurality of first planes extracted from the first
図2において、第1平面P11と第2平面P21は、踊り場の天井面である。第1平面P15と第2平面P22は、踊り場の床面である。第1平面P12から第1平面P14は、それぞれ上り階段の踏み面である。第2平面P23から第2平面P25は、それぞれ下り階段の踏み面である。第2平面P26は、下り階段を下った先にある踊り場の床面である。このように、第1平面P12から第1平面P14と、第2平面P23から第2平面P25とは、異なる階段の各踏み面である。 In FIG. 2, the first plane P 11 and the second plane P 21 are ceiling surfaces of landings. A first plane P 15 second plane P 22 is the floor of the landing. First plane P 14 from the first plane P 12 is the tread of the uplink stairs respectively. Each of the second plane P 23 to the second plane P 25 is a tread of a descending staircase. The second plane P 26 is a floor surface of a landing that is down the descending stairs. Thus, the first plane P 14 from the first plane P 12, the second plane P 23 and the second plane P 25, which are the treads of a different staircase.
ここで、第1測定位置101についての複数の第1平面と、第2測定位置102についての高さを補正後の複数の第2平面と、の高さが一致する数を評価値とした場合について説明する。なお、この評価値の算出方法の詳細については、図6を用いて説明する。第1平面P11と第2平面P21との高さを一致させるよう複数の第2平面を補正した場合より第1平面P15と第2平面P25との高さを一致させるよう複数の第2平面を補正した場合の方が、第1平面と補正後の第2平面との高さが一致する数が多くなる。このように、階段のように同じような平面が等間隔で連続すると、誤った対応の方が正しい対応よりも評価が高くなってしまう場合がある。そして、誤ったオフセット量が最適なオフセット量として特定されてしまう。 Here, the evaluation value is the number of coincidence heights of the plurality of first planes for the first measurement position 101 and the plurality of second planes after the height correction for the second measurement position 102 is corrected. Will be described. Details of the evaluation value calculation method will be described with reference to FIG. A plurality of first planes P 15 and second planes P 25 are made to coincide with each other as compared with the case where the plurality of second planes are corrected so that the heights of the first plane P 11 and the second plane P 21 coincide with each other. When the second plane is corrected, the number of the first plane and the corrected second plane coincide with each other. In this way, if similar planes are continued at regular intervals like a staircase, an incorrect response may have a higher evaluation than a correct response. Then, an incorrect offset amount is specified as the optimum offset amount.
図1で説明したように、本実施の形態にかかる情報処理装置100は、階段のように同様の平面が等間隔で連続するような空間を測定対象として位置合わせを行う場合に精度のよいオフセット量を特定することができる。
As described with reference to FIG. 1, the
ここで、図3を用いて、測定の現場例を示し、図4および図5を用いて、オクルージョン例を示す。 Here, FIG. 3 is used to show an example of measurement site, and FIGS. 4 and 5 are used to show an example of occlusion.
図3は、情報処理装置100の使用例を示す説明図である。図3には、作業が行われる区画の一例として、現場300A〜現場300Nが例示されている。なお、以下では、現場300A〜現場300Nを総称する場合に「現場300」と記載する場合がある。
FIG. 3 is an explanatory diagram illustrating a usage example of the
情報処理装置100は、例えば、作業者301がハンドキャリーを行うポータブル型の装置として実装される。作業者301が現場300A〜現場300Nで作業を行う場合、1つの現場300につき1台の情報処理装置100を設置せずともかまわず、1台の情報処理装置100を各現場300で持ち回って使用することができる。すなわち、作業者301は、現場300で作業が終了する度に、次の現場300へハンドキャリー等で情報処理装置100を持ち込み、次の現場300の任意の位置に載置することにより、支援データの提供を受けることができる。
The
このように、情報処理装置100は、現場300A〜現場300Nに持ち込むことにより、簡単な操作で周囲の環境をくまなく測定してデジタイズ化することができる。さらに、情報処理装置100は、環境中の人の測定を行いデジタイズ化した環境情報と紐づけることで、環境中の人の行動を記録したり、人の状態に応じた情報を提供したりするなど、様々な情報支援を可能とする。
As described above, the
図4は、オクルージョン例1を示す説明図である。図4には、上記の法線が鉛直上向きの点群により形成される平面を全て抽出して高さが最も低い面を基準面とする方法1でオクルージョンにより高さの基準合わせが失敗する場面の一例が示される。図4には、情報処理装置100が測定位置M1に載置された状態で3D点群データの測定が実施されると共に、情報処理装置100が測定位置M2に載置された状態で3D点群データの測定が実施される場合が示される。さらに、図4には、測定位置M1で測定された3D点群データから抽出される平面のうち高さが最も低い面が太線の実線で示される一方で、測定位置M2で測定された3D点群データから抽出される平面のうち高さが最も低い面が太線の破線で示される。図4に示す現場300Aには、床面よりも低い位置に階段の踊り場が存在する。かかる階段の踊り場は、測定位置M2からはレーザが届く一方で、測定位置M1からは階段が死角となってレーザが届かない。このオクルージョンによって、測定位置M1で測定された3D点群データからは床面が最低面として抽出される一方で、測定位置M2で測定された3D点群データからは階段の踊り場が最低面として抽出される。この結果、測定位置M1および測定位置M2の間で基準面にずれが生じるので、高さの位置合わせに失敗する。
FIG. 4 is an explanatory diagram illustrating an occlusion example 1. FIG. 4 shows a scene where the height reference adjustment fails due to occlusion in the
図5は、オクルージョン例2を示す説明図である。図5には、法線が鉛直上向きの点群により形成される平面を全て抽出して面積が最も大きい面を基準面とする方法2でオクルージョンにより高さの基準合わせが失敗する場面の一例が示される。図5には、情報処理装置100が測定位置M3に載置された状態で3D点群データの測定が実施されると共に、情報処理装置100が測定位置M4に載置された状態で3D点群データの測定が実施される場合が示される。さらに、図5には、測定位置M3で測定された3D点群データから抽出される平面のうち面積が最も大きい面が太線の実線で示される一方で、測定位置M4で測定された3D点群データから抽出される平面のうち面積が最も大きい面が太線の破線で示される。
FIG. 5 is an explanatory diagram showing an occlusion example 2. FIG. 5 shows an example of a scene in which height alignment fails due to occlusion in
図5に示す現場300Bは、会議室に大きめの会議卓が置かれており、測定位置M3では、床面に情報処理装置100が載置される一方で、測定位置M4では、会議卓の机上に情報処理装置100が載置される場合が示される。この場合、測定位置M3からは床面を広く走査できる一方で、会議卓の机上に載置される測定位置M4からは会議卓に隠れて床面が一部しか走査できない。かかるオクルージョンによって、測定位置M3で測定された3D点群データからは床面が最も面積の大きい面として抽出される一方で、測定位置M4で測定された3D点群データからは会議卓の机上の面が最も面積の大きい面として抽出される。この結果、測定位置M3および測定位置M4の間で基準面にずれが生じるので、高さの位置合わせに失敗する。
On the
これら図4および図5に示した通り、床面に限らず環境中の特定の場所を検出して基準にする方法では、測定位置によってオクルージョンで基準とする場所が一部または全部隠される状況に弱い。情報処理装置100では、床面などの特定の面に基準に求める高さの基準合わせは実施しない。上述したように、情報処理装置100は、点群データ111から抽出した複数の第1平面に含まれる第1平面と、点群データ112から抽出した複数の第2平面に含まれる第2平面と、の高さが合うようなオフセット量を算出して、高さ方向の位置合わせを行う。そして、情報処理装置100は、2次元の位置合わせを行う。
As shown in FIG. 4 and FIG. 5, in the method of detecting a specific place in the environment, not limited to the floor, and using it as a reference, the reference position in occlusion is partially or entirely hidden depending on the measurement position. weak. The
図6は、複数通りの平面の組み合わせについて高さが一致する平面の数で評価した例を示す説明図である。図6では、集合H1に含まれる高さと集合H2に含まれる高さと、の組み合わせごとに、組み合わせに含まれる高さに基づいてオフセット量Δhの候補が算出される。すなわち、組み合わせに含まれる集合H1の高さに対応する平面と、組み合わせに含まれる集合H2の高さに対応する平面と、の高さが一致するようなオフセット量Δhの候補が算出される。オフセット量Δhの候補は、例えば、組み合わせに含まれる集合H1の高さから、組み合わせに含まれる集合H2の高さを減算した値である。 FIG. 6 is an explanatory diagram illustrating an example in which a plurality of combinations of planes are evaluated by the number of planes having the same height. In FIG. 6, for each combination of the height included in the set H 1 and the height included in the set H 2 , a candidate for the offset amount Δh is calculated based on the height included in the combination. That is, a candidate for the offset amount Δh is calculated such that the plane corresponding to the height of the set H 1 included in the combination matches the plane corresponding to the height of the set H 2 included in the combination. The The candidate for the offset amount Δh is, for example, a value obtained by subtracting the height of the set H 2 included in the combination from the height of the set H 1 included in the combination.
そして、組み合わせの各々について、集合H2を補正した補正後の集合H’2が算出される。組み合わせの各々について、集合H1の高さと、補正後の集合H’2の高さとの差分が所定の範囲に収まる個数が評価値として算出される。そして、算出された評価値が最大となる組み合わせについてのオフセット量Δhの候補がオフセット量Δhとして特定される。 Then, for each of the combinations, a set H '2 corrected by correcting the set H 2 is calculated. For each combination, the number of differences between the height of the set H 1 and the height of the corrected set H ′ 2 within a predetermined range is calculated as an evaluation value. And the candidate of offset amount (DELTA) h about the combination in which the calculated evaluation value becomes the largest is specified as offset amount (DELTA) h.
図6には、第1測定位置101における天井面と、第2測定位置102における天井面との位置が合うように補正した正しい対応例を示す。また、図6には、第1測定位置101における上り階段の床面と第2測定位置102における踊り場の床面との位置が合うように補正した誤対応例を示す。正しい対応例よりも誤対応例の方が評価値が大きくなり、誤対応についてのオフセット量Δhの候補が正しいオフセット量として特定されてしまう。 FIG. 6 shows an example of correct correspondence corrected so that the ceiling surface at the first measurement position 101 and the ceiling surface at the second measurement position 102 are aligned. FIG. 6 shows an erroneous correspondence example in which the floor surface of the ascending staircase at the first measurement position 101 and the landing floor surface at the second measurement position 102 are corrected so as to match each other. The evaluation value of the erroneous correspondence example is larger than that of the correct correspondence example, and the candidate of the offset amount Δh for the erroneous correspondence is specified as the correct offset amount.
測定対象の空間が階段のような場所でなければ、高さが一致する数によってオフセット量を特定するとよい。しかしながら、階段のように同様の平面が等間隔で連続するような空間が測定対象であると、例えば異なる階段の踏み面同士を一致させた場合に第1平面と補正後の第2平面との高さが一致する数が多くなる場合がある。このような場合、誤ったオフセット量が最適なオフセット量として特定されてしまうことがある。 If the space to be measured is not a place like a staircase, the offset amount may be specified by the number of matching heights. However, if a space in which similar planes are continuous at equal intervals, such as stairs, is the measurement target, for example, when the tread surfaces of different stairs are matched, the first plane and the corrected second plane There are cases where the number of matching heights increases. In such a case, an incorrect offset amount may be specified as the optimum offset amount.
そこで、情報処理装置100は、第1平面及び第2平面の組み合わせごとに、各第1平面のうち、組み合わせの高さが合うように補正した各第2平面の面と高さが一致する第1平面間の距離のうち、各第1平面間の特徴的な距離と一致する距離の数を求める。そして、情報処理装置100は、第1平面及び第2平面の組み合わせごとに求めた一致数に基づいて、オフセット量を特定する。これにより、階段のように同様の平面が等間隔で連続する際に、特徴的な水平面間の距離が一致するか否かを判定することができる。異なる位置で3D測定した複数の点群データの合成精度の向上を図ることができる。
Therefore, the
図7は、3D測定を行うための情報処理装置100の一例を示す説明図である。図7において、情報処理装置100は、駆動装置701と、測定装置702と、制御装置703と、を有する。情報処理装置100は、例えば、水平床面に設置されて使用される。図7において、情報処理装置100の筐体の形状については、例えば、いずれの方向から情報処理装置100を見ても外形が略同一となる形状となっているが、これに限らない。
FIG. 7 is an explanatory diagram illustrating an example of the
また、情報処理装置100の3脚部分は、例えば伸縮することができる。情報処理装置100の3脚部分の伸縮により情報処理装置100の高さを変更することができる。情報処理装置100は、3脚部分により、例えば、30cmから130cmまでの高さを変更することができる。
In addition, the tripod portion of the
駆動装置701は、回転軸710(図7中、z軸に対応)を中心にパン方向d1に回転するモータである。以下の説明では、パン方向d1の回転角(図7中、x軸に対する角度)を「回転角θh(θh=0〜360°(度))」と表記する場合がある。ただし、駆動装置701が初期位置のときの正面方向とx軸方向とが一致するものとする。
The
測定装置702は、チルト方向d2に走査しながら光を物体に向けて照射し、反射光を受光するまでの時間を用いて自装置から物体までの距離を測定する2Dセンサである。ここでの光とは、例えば、赤外線などのレーザである。測定装置702は、光が赤外線であれば、自装置から物体までの距離に限らず、赤外線の反射強度や色情報も同時に得ることができる。チルト方向d2は、チルト軸720を中心に回転する方向である。すなわち、測定装置702は、チルト軸720を中心に光学系(例えば、後述の図8に示す発光部811、受光部812等)を回転させながら、図7中の太線矢印で示す方向(照射方向)に光を照射する。
The measuring
情報処理装置100において、測定装置702は、パン方向d1に対してチルト方向d2が垂直となるように駆動装置701に取り付けられる。そして、測定装置702は、回転軸710を中心として円軌道に沿って移動される状態で、チルト方向d2に走査しながら光(以下、「レーザ」という)を物体に向けて照射して物体までの距離を測定する。
In the
この際、測定装置702は、チルト方向d2に「0〜360°」の範囲でレーザを照射する。チルト角θvは、回転軸710に対するチルト方向d2の角度である。より詳細に説明すると、例えば、測定装置702は、チルト方向d2に0°から360°まで所定の角度ずつ移動される度に、この測定を行う。例えば、所定角度が0.25°の場合、測定装置702は、1周当たり25[msec]で約1440点の測定を行う。また、測定装置702は、例えば、駆動装置701によってパン方向d1に、「0〜360°」まで所定の角度ずつ移動される度に、この測定を行う。ただし、チルト方向とパン方向の両方について0°から360°まで測定しなくてもよい。チルト方向とパン方向のどちらか一方が0から180°の測定を実施すれば、全方位の測定を行うことができる。また、全方位に限らず、角度を指定して測定範囲を制限してもよい。これにより、2Dセンサである測定装置702を利用して3D測定を行うことができる。
At this time, the measuring
また、制御装置703は、例えば、表示部704を有する。表示部は、プロジェクタであってもよいし、ディスプレイなどであってもよい。
The
(情報処理装置100のハードウェア構成例)
図8は、情報処理装置100のハードウェア構成例を示すブロック図である。情報処理装置100は、CPU(Central Processing Unit)801と、メモリ802と、I/F(Interface)803と、プロジェクタ804と、スピーカ805と、駆動装置701と、測定装置702と、を有する。また、各構成部は、バス800によってそれぞれ接続される。
(Hardware configuration example of information processing apparatus 100)
FIG. 8 is a block diagram illustrating a hardware configuration example of the
ここで、CPU801は、情報処理装置100の全体の制御を司る。メモリ802は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU801のワークエリアとして使用される。メモリ802に記憶されるプログラムは、CPU801にロードされることで、コーディングされた処理をCPU801に実行させる。
Here, the
I/F803は、有線または無線のネットワークに接続され、ネットワーク810を介して他のコンピュータ(例えば、利用者のパーソナル・コンピュータ)に接続される。そして、I/F803は、ネットワーク810と自装置内部とのインターフェースを司り、他のコンピュータからのデータの入出力を制御する。プロジェクタ804は、例えば、表示部704である。プロジェクタ804は、画像や映像を大型スクリーンなどに投影することにより表示する装置である。プロジェクタ804は、例えば、モデルデータが示すモデルをスクリーンに投影してもよい。スピーカ805は、電気によって音を出す。具体的には、スピーカ805は、例えば、音楽や音声などの音を生成する。なお、図8に示した制御装置703は、例えば、CPU801と、メモリ802と、I/F803と、プロジェクタ804と、スピーカ805と、を含む。
The I /
駆動装置701は、回転軸710を中心にパン方向d1に回転するモータである。測定装置702は、発光部811と、受光部812と、駆動部813と、センサ制御部814と、を含む。発光部811は、レーザを照射する光源であり、例えば、半導体レーザである。受光部812は、反射光を受光する。駆動部813は、チルト軸720を中心にチルト方向d2に発光部811を回転させる。センサ制御部814は、チルト方向d2に走査しながらレーザを物体に向けて照射し、反射光を受光するまでの時間を用いて自装置から物体までの距離を測定する。センサ制御部814は、距離に基づいて座標系Cにおける物体の座標値を点の座標データとしてメモリ802などに出力する。
The
なお、情報処理装置100は、上述した構成部のほかに、例えば、ディスクドライブ、ディスク、SSD(Solid State Drive)などを有することにしてもよい。また、情報処理装置100は、例えば、作業者301などによる操作入力を受け付けることが可能な入力装置、プロジェクタ804と異なるディスプレイなどを有することにしてもよい。
The
図9は、平面上の点群および点データ例を示す説明図である。まず、平面について説明する。平面P1上の点群は、{p11,p12,…,p1M1}である。平面Pu上の点群は、{pu1,pu2,…,puMu}である。 FIG. 9 is an explanatory diagram illustrating an example of point groups and point data on a plane. First, the plane will be described. The point group on the plane P 1 is {p 11 , p 12 ,..., P 1M1 }. The point group on the plane Pu is {p u1 , p u2 ,..., P uMu }.
点puvの点データは、{xuv,nuv,cuv,Iuv}である。xuvは、点puvの位置ベクトルである。xuvは、x座標値,y座標値,z座標値を含む。nuvは、点puvの法線方向ベクトルである。cuvは、点puvの色情報ベクトルである。cuvは、R値,G値,B値を含む。Iuvは、点puvの赤外線反射光強度情報である。なお、点群データとは点データの集合である。例えば、各平面Pの面積は、各平面P上の点群数Muによって近似される。例えば、xuv,nuvに基づいて、水平方向の位置合わせや最近傍点、点間の距離が計算される。 The point data of the point p uv is {x uv , n uv , c uv , I uv }. x uv is a position vector of the point p uv . x uv includes an x coordinate value, a y coordinate value, and a z coordinate value. n uv is a normal direction vector of the point p uv . c uv is a color information vector of the point p uv . c uv includes an R value, a G value, and a B value. I uv is infrared reflected light intensity information of the point p uv . Note that the point cloud data is a set of point data. For example, the area of each plane P is approximated by the point group number M u on each plane P. For example, based on x uv and n uv , horizontal alignment, nearest point, and distance between points are calculated.
(情報処理装置100の機能的構成例)
図10は、情報処理装置100の機能的構成例を示すブロック図である。情報処理装置100は、取得部1001と、制御部1002と、を有する。取得部1001は、駆動装置701と測定装置702によって実現される。また、制御部1002は、抽出部1011と、距離算出部1012と、オフセット量算出部1013と、第1算出部1014と、第2算出部1015と、特定部1016と、位置合わせ部1017と、を有する。
(Functional configuration example of information processing apparatus 100)
FIG. 10 is a block diagram illustrating a functional configuration example of the
抽出部1011から位置合わせ部1017までの制御部1002の処理は、例えば、メモリ802などによって実現される。図8に示すCPU801がアクセス可能なメモリ802などに記憶されたプログラムにコーディングされる。そして、CPU801がメモリ802などから該プログラムを読み出して、プログラムにコーディングされた処理を実行する。これにより、制御部1002の処理が実現される。また、制御部1002の処理結果は、例えば、メモリ802などに記憶される。
The processing of the
取得部1001は、複数の測定位置の各々の測定位置について、各々の測定位置から物体までの距離に基づく3D点群データを取得する。具体的には、取得部1001は、例えば、各々の測定位置について、光を照射しながら走査すると共に物体から反射される反射光を用いて、自情報処理装置100から物体までの距離に基づく3D点群データを取得する。
The
本実施の形態では、取得部1001は、3D点群データとして、第1測定位置101についての第1点群データ111と、第2測定位置102についての第2点群データ112と、を取得する。なお、測定位置が3つ以上ある場合、3つの測定位置のうちの2つの測定位置における3D点群データを合成した後の3D点群データを、第1点群データ111としてもよい。そして、3つの測定位置のうちの残余の測定位置における3D点群データを第2点群データ112としてもよい。これにより3つ以上の測定位置において測定された3D点群データを精度よく合成することができる。
In the present embodiment, the
抽出部1011は、例えば、各々の測定位置について、各々の測定位置についての3D点群データから、測定対象の空間における平面を抽出する。具体的には、抽出部1011は、例えば、RANSACなどのアルゴリズムにしたがって、取得部1001により取得された3D点群データによって特定される3D点群が形成する平面を抽出する。
For example, for each measurement position, the
RANSACなどのアルゴリズムに基づいて平面を抽出する方法について、より詳細に説明する。抽出部1011は、例えば、3D点群データによって特定される3D点群をサンプルとする。そして、抽出部1011は、サンプルから3つの点をランダムに抽出する。続いて、抽出部1011は、3D点群データによって特定される3D点群のうち、サンプルからランダムに抽出された3点により定まる平面モデルから所定の距離以内にある点群をさらに抽出する。所定の距離については、予め定められてあればよく、特に限定しない。同一平面モデル上の点同士であっても、情報処理装置100からの距離が遠ければ、点間の距離は遠くなる。このため、所定の距離については、例えば、サンプルとして選択された点pの点データに含まれる位置ベクトルによって設定されてもよい。
A method for extracting a plane based on an algorithm such as RANSAC will be described in more detail. For example, the
ここで、平面モデルから所定の距離以内にある点群を平面モデル上に存在する点群とみなし、以降の処理を説明することとする。抽出部1011は、平面モデル上に存在する点群の数が所定の閾値以上であるか否かを判定する。抽出部1011は、平面モデル上の点群が閾値以上である場合、平面モデルを定義するパラメータと、この平面モデルに含まれる点群とが対応付けられた平面データをメモリ802に保存する。パラメータとしては、例えば3点の座標または平面の方程式等が挙げられる。一方、抽出部1011は、平面モデル上に存在する点群の数が閾値未満である場合、平面モデルに関する平面データを保存しない。その後、抽出部1011は、サンプルからの3点のランダムサンプリングおよびそれに伴う平面データの保存を所定の試行回数にわたって繰り返し実行する。このような平面抽出方法によって、一定数以上の点群が平面モデルからの法線方向へ向けて一定距離以内にある平面モデルを求めることができる。なお、一定距離は、互いに平行な複数の平面モデル間の最小の距離となる。一定距離は、平面モデルの法線方向において異なる平面モデルとして抽出されるための最小の距離である。換言すると、例えば、互いに平行な複数の平面モデル間の距離は、一定距離以上である。以下では、平面モデルにより規定される平面上で3D点群が所定の密度以上で存在する部分のことを「平面」と記載する場合がある。
Here, it is assumed that a point group within a predetermined distance from the planar model is a point group existing on the planar model, and the subsequent processing will be described. The
ここで、抽出部1011は、複数の測定位置で測定された3D点群データごとに当該3D点群データから平面を抽出することもできる。この場合、抽出部1011は、各測定位置の3D点群データの間で平面の方向を算出する。そして、抽出部1011は、各測定位置の3D点群データごとに当該3D点群データに含まれる各点が持つ座標をz軸の正方向が平面の法線方向となるように変換する。その上で、抽出部1011は、上述の通り、RANSACなどのアルゴリズムにしたがって、各測定位置の3D点群データごとに当該3D点群データから平面を抽出する。
Here, the
さらに、抽出部1011は、次のような基準にしたがって2つ以上の任意の数の3D点群データをレジストレーションの実行対象としてグループ化できる。例えば、抽出部1011は、取得部1001により3D点群データが取得される度に、3D点群データをそれまでに取得された3D点群データとグループ化することにより、レジストレーションの実行対象とすることができる。さらに、抽出部1011は、過去に取得された3D点群データの中でも所定の期間(例えば10分間以内)に取得された3D点群データに絞ってグループ化してもよい。また、抽出部1011は、グループ化を行う3D点群データの組み合わせを入力装置(図示省略)を介して受け付けてもよい。
Furthermore, the
このように、各測定位置の3D点群データごとに3D点群データから平面が抽出されると、抽出部1011は、座標系Cの原点に基づいて各平面の高さ(z座標)を算出する。
As described above, when a plane is extracted from the 3D point group data for each 3D point group data at each measurement position, the
ここで、図1で説明したように、第1測定位置101で測定された第1点群データ111から抽出される複数の第1平面の高さの集合をH1とし、第2測定位置102で測定された第2点群データ112から抽出される複数の第2平面の高さの集合をH2とする。そして、集合H1と集合H2とは以下のように表す。MとNは正の整数である。Mは複数の第1平面の数である。Nは複数の第2平面の数である。
Here, as described with reference to FIG. 1, a set of heights of a plurality of first planes extracted from the first
H1={h11,h12,・・・,h1M}
H2={h21,h22,・・・,h2N}
H 1 = {h 11 , h 12 ,..., H 1M }
H 2 = {h 21 , h 22 ,..., H 2N }
また、後述するように、オフセット量Δhまたはオフセット量Δhの候補によって補正した平面の高さの集合をH’2とする。集合H’2は以下のように表す。 Further, as will be described later, a set of the heights of the planes corrected by the offset amount Δh or the offset amount Δh candidates is defined as H ′ 2 . The set H′2 is expressed as follows.
H’2={h’21,h’22,…,h’2N}
={h21+Δh,h22+Δh,・・・,h2N+Δh}
H ′ 2 = {h ′ 21 , h ′ 22 ,..., H ′ 2N }
= {H 21 + Δh, h 22 + Δh,..., H 2N + Δh}
図11は、平面間の距離例を示す説明図である。図11には、複数の第1平面の高さの集合H1と、複数の第2平面の高さの集合H2とを示す。 FIG. 11 is an explanatory diagram illustrating an example of a distance between planes. FIG. 11 shows a plurality of first plane height sets H 1 and a plurality of second plane height sets H 2 .
集合H1として、H1{h11,h12,h13,h14}が得られる。また、集合H2として、H2{h21,h22,h23,h24}が得られる。図11において、集合H1に含まれる高さは、実線の太線で示される。集合H2に含まれる高さは、点線の太線で示される。 H 1 {h 11 , h 12 , h 13 , h 14 } is obtained as the set H 1 . Further, H 2 {h 21 , h 22 , h 23 , h 24 } is obtained as the set H 2 . In FIG. 11, the height included in the set H 1 is indicated by a solid thick line. Height included in the set H 2 is indicated by dashed thick line.
次に、距離算出部1012は、第1測定位置101について、互いに平行な複数の第1平面の各々の第1平面の間の各距離のうちの他の距離との差分が所定値以上である距離を特定する。また、距離算出部1012は、第2測定位置102について、互いに平行な複数の第2平面の間の各距離のうちの他の距離との差分が所定値以上である第2距離を特定する。
Next, the
具体的には、距離算出部1012は、例えば、第1測定位置101について、複数の第1平面に含まれる2つの第1平面の組み合わせごとに、組み合わせに含まれる2つの第1水平面間の距離を算出する。具体的には、距離算出部1012は、例えば、第1水平面の高さの差分を第1平面間の距離として算出する。第1平面間の差分は、例えば、2つの第1平面のうち高い方の第1平面の高さから低い方の第1平面の高さを減算することにより得られる。
Specifically, the
また、具体的には、距離算出部1012は、例えば、第2測定位置102について、複数の第2平面に含まれる2つの第2平面の組み合わせごとに、組み合わせに含まれる2つの第2平面間の距離を算出する。具体的には、距離算出部1012は、例えば、第2水平面の高さの差分を第2平面間の距離として算出する。第2平面間の差分は、例えば、2つの第2平面のうち高い方の第2平面の高さから低い方の第2平面の高さを減算することにより得られる。
Specifically, the
第1測定位置101において、高さh11と高さh12の差分が距離d11である。高さh11と高さh13との差分が距離d12である。高さh11と高さh14との差分が距離d13である。高さh12と高さh13との差分が距離d15である。高さh12と高さh14との差分が距離d14である。高さh13と高さh14との差分が距離d16である。 In the first measurement position 101, which is the difference between the height h 11 and the height h 12 is the distance d 11. Difference between the height h 11 and height h 13 is the distance d 12. The difference between the height h 11 and the height h 14 is the distance d 13 . Difference between the height h 12 and height h 13 is the distance d 15. Difference between the height h 12 and height h 14 is the distance d 14. Difference between the height h 13 and height h 14 is the distance d 16.
第2測定位置102において、高さh21と高さh22の差分が距離d21である。高さh21と高さh13との差分が距離d22である。高さh21と高さh14との差分が距離d23である。高さh22と高さh13との差分が距離d25である。高さh22と高さh14との差分が距離d24である。高さh23と高さh24との差分が距離d26である。 In the second measurement position 102, which is the difference between the height h 21 and height h 22 is the distance d 21. The difference between the height h 21 and the height h 13 is the distance d 22 . The difference between the height h 21 and the height h 14 is the distance d 23 . The difference between the height h 22 and the height h 13 is the distance d 25 . The difference between the height h 22 and the height h 14 is the distance d 24 . The difference between the height h 23 and the height h 24 is the distance d 26 .
次に、距離算出部1012は、例えば、各々の測定位置について、平面間の距離のうち、距離の差が閾値以下となる距離が存在しない距離を抽出する。すなわち、距離算出部1012は、似たような距離が存在しないような特徴的な距離を抽出する。
Next, for example, for each measurement position, the
距離算出部1012は、第1測定位置101について、特徴的な距離として以下集合D1を抽出する。なお、εが閾値である。εは0に限りなく近い値である。
The
D1:|d11−d1j|≦ε(i≠j)となるd1jが存在しないd1iを要素とする集合 D 1 : a set having d 1i as an element in which d 1j that satisfies | d 11 −d 1j | ≦ ε (i ≠ j) does not exist
第1測定位置101において、距離d15と距離d16との差は0に近いため、D1は{d11,d12,d13,d14}となる。 In the first measurement position 101, since the difference between the distance d 15 and the distance d 16 near 0, D 1 becomes {d 11, d 12, d 13, d 14}.
また、距離算出部1012は、第2測定位置102については、特徴的な距離として以下集合D2を抽出する。
In addition, the
D2:|d21−d2j|≦ε(i≠j)となるd2jが存在しないd2iを要素とする集合 D 2 : a set having d 2i as an element in which there is no d 2j satisfying | d 21 −d 2j | ≦ ε (i ≠ j)
第2測定位置102において、距離d25と距離d26との差は0に近いため、D2は{d21,d22,d23,d24}となる。 Since the difference between the distance d 25 and the distance d 26 is close to 0 at the second measurement position 102, D 2 becomes {d 21 , d 22 , d 23 , d 24 }.
次に、オフセット量算出部1013は、複数の第1平面に含まれる第1平面と、複数の第2平面に含まれる第2平面と、の組み合わせを生成する。オフセット量算出部1013は、組み合わせの各々について、組み合わせに含まれる平面間の垂直方向の位置を一致させるように、複数の第2平面の垂直方向の位置を補正する。ここで、垂直方向とは、z軸方向や高さ方向である。
Next, the offset
具体的には、オフセット量算出部1013は、組み合わせの各々について、組み合わせに含まれる平面間の距離をオフセット量Δhとして算出する。具体的には、オフセット量算出部1013は、集合H1に含まれる複数の高さh1と、集合H2に含まれる複数の高さh2との組み合わせについて、組み合わせに含まれる高さh1と高さh2との差分値をオフセット量Δhの候補として算出する。例えば、差分値とは、組み合わせに含まれる高さh1から高さh2を減算した値である。
Specifically, the offset
そして、オフセット量算出部1013は、組み合わせの各々について、複数の第2平面の高さに、算出したオフセット量Δhの候補を加算する。これにより、組み合わせに含まれる平面間の垂直方向の位置が一致するように、複数の第2平面の垂直方向の位置が補正される。
Then, the offset
次に、第1算出部1014は、平面の組み合わせの各々について、各々の第1平面の垂直方向の位置のうち、補正後の記各々の第2平面領域の垂直方向の位置と一致する位置を特定する。換言すると、第1算出部1014は、平面の組み合わせの各々について、オフセット量Δhの候補ごとに、集合H1とオフセット量Δhの候補に基づき補正した集合H’2とで一致する高さが存在する平面の高さの集合を特定する。図11における集合H2をオフセット量Δhの候補に基づき補正した集合H’2は、{h’21,h’22,h’23,h’24}である。第1測定位置101についての一致する高さが存在する平面の高さの集合は、G1と表す。第2測定位置102についての一致する高さが存在する平面の高さの集合は、G2と表す。具体的には、第1算出部1014は、以下のように集合G1および集合G2を特定する。
Next, for each combination of planes, the
G1:|h1i−h’2j|≦αとなるh’2jが存在するh1iを要素とする集合
G2:|h1i−h’2j|≦αとなるh’1jが存在するh’2jを要素とする集合
G 1 : a set having h 1i where h ′ 2j satisfying | h 1i −h ′ 2j | ≦ α exists G 2 : h including h ′ 1j satisfying | h 1i −h ′ 2j | ≦ α ' 2j element set
所定値αは、予め設定された値であり、特に限定しない。ここでは、所定値αは、例えば、水平面の抽出時に異なる水平面として抽出する水平面間の最低間隔の1/2より小さい値とする。 The predetermined value α is a preset value and is not particularly limited. Here, for example, the predetermined value α is set to a value smaller than ½ of the minimum interval between horizontal planes extracted as different horizontal planes during horizontal plane extraction.
次に、第1算出部1014は、組み合わせの各々について、第1測定位置101について特定した位置の2つの組み合わせのうち、位置の2つの組み合わせに含まれる位置間の距離が、集合D1に含まれる距離と一致する組み合わせの数を特定する。ここでの位置は、高さ方向の位置である。このため、具体的には、第1算出部1014は、平面の組み合わせの各々について、集合G1に含まれる高さの2つの組み合わせのうち、この組み合わせに含まれる高さの差分が集合D1に含まれる組み合わせの数を特定する。第1測定位置101について特定される数はf1と表す。
Then, the
また、第1算出部1014は、平面の組み合わせの各々について、第2測定位置102について特定した位置の2つの組み合わせのうち、位置の2つの組み合わせに含まれる位置間の距離が、集合D2に含まれる距離と一致する組み合わせの数を特定する。具体的には、第1算出部1014は、平面の組み合わせの各々について、集合G2に含まれる高さの2つの組み合わせのうち、この組み合わせに含まれる高さの差分が集合D2に含まれる組み合わせの個数を特定する。第2測定位置102について特定される数はf2と表す。
The
第1算出部1014は、平面の組み合わせの各々について、各々の測定位置について算出した組み合わせの個数のうち値が小さい方を評価値とする。評価値が大きい値であるほど、評価が高いこととする。
For each combination of planes, the
ここで、図11および図12を用いて、2つのオフセット量Δhの候補について、集合G1および集合G2と数f1および数f2とを特定する例を説明する。 Here, an example in which the set G 1, the set G 2 , the number f 1, and the number f 2 are specified for two offset amount Δh candidates will be described with reference to FIGS. 11 and 12.
図12は、オフセット量Δhの候補についての評価例1を示す説明図である。図12には、オフセット量Δhの候補がh11−h21の場合を例に挙げて説明する。まず、第1測定位置101について集合G1および数f1を求める例について説明する。第1算出部1014は、高さh11と高さh’22との差がα以下であるため、高さh11を集合G1に入れる。第1算出部1014は、高さh12と集合H’2に含まれる各高さとの差がαより大きいため、高さh12を集合G1に入れない。第1算出部1014は、高さh13と集合H’2に含まれる各高さとの差がαより大きいため、高さh13を集合G1に入れない。第1算出部1014は、高さh14と高さh’24との差がα以下であるため、高さh14を集合G1に入れる。集合G1は以下のようになる。
FIG. 12 is an explanatory diagram illustrating Evaluation Example 1 for a candidate for the offset amount Δh. FIG. 12 illustrates an example in which the offset amount Δh candidate is h 11 −h 21 . First, an example in which the set G 1 and the number f 1 are obtained for the first measurement position 101 will be described. Since the difference between the height h 11 and the height h ′ 22 is less than or equal to α, the
G1={h11,h14} G 1 = {h 11 , h 14 }
そして、第1算出部1014は、集合G1に含まれる高さの組み合わせのうち、組み合わせの高さの差分が集合D1に含まれる組み合わせの数を数f1とする。
Then, the
集合G1に含まれる高さの組み合わせは1通りである。高さh11と高さh14との差はd13であり、集合D1に含まれる。このため、第1算出部1014は、数f1を1とする。
There are one combination of heights included in the set G 1 . The difference between the height h 11 and the height h 14 is d 13 and is included in the set D 1 . For this reason, the
次に、第2測定位置102について集合G2および数f2を求める例について説明する。第1算出部1014は、例えば、高さh’21と高さh11との差がα以下であるため、高さh’21を集合G2に入れる。第1算出部1014は、高さh’22と高さh14との差がα以下であるため、高さh’22を集合G2に入れる。第1算出部1014は、高さh’23と集合H1に含まれる各高さとの差がαより大きいため、高さh’23を集合G2に入れない。第1算出部1014は、高さh’24と集合H1に含まれる各高さとの差がαより大きいため、高さh’24を集合G2に入れない。集合G2は以下のようになる。
Next, an example in which the set G 2 and the number f 2 are obtained for the second measurement position 102 will be described. For example, since the difference between the height h ′ 21 and the height h 11 is equal to or less than α, the
G2={h’21,h’22} G 2 = {h ′ 21 , h ′ 22 }
そして、第1算出部1014は、集合G2に含まれる高さの組み合わせのうち、組み合わせの高さの差分が集合D2に含まれる組み合わせの数をf2とする。
The
集合G2に含まれる高さの組み合わせは1通りである。高さの組み合わせに含まれる高さh’21と高さh’22との差はd21であり、集合D2に含まれる。このため、第1算出部1014は、数f2を1とする。
The combination of the height included in the set G 2 is a 1 ways. The difference between the height h ′ 21 and the height h ′ 22 included in the combination of heights is d 21 and is included in the set D 2 . Therefore, the
第1算出部1014は、オフセット量の候補について、数f1と数f2とのうち小さい方を評価値として算出する。ここで、オフセット量Δhの候補がh11−h21の場合の評価値は、1である。
The
図13は、オフセット量Δhの候補についての評価例2を示す説明図である。図13には、オフセット量Δhの候補がh12−h22の場合を例に挙げて説明する。第2測定位置102について説明する。第1算出部1014は、高さh11と集合H’2に含まれる各高さとの差が所定値αより大きいため、高さh11を集合G1に入れない。第1算出部1014は、高さh12と高さh’22との差がα以下であるため、高さh12を集合G1に入れる。第1算出部1014は、高さh13と高さh’23との差がα以下であるため、高さh13を集合G1に入れる。第1算出部1014は、高さh14と高さh’24との差が所定値α以下であるため、高さh14を集合G1に入れる。
FIG. 13 is an explanatory diagram illustrating Evaluation Example 2 for a candidate for the offset amount Δh. FIG. 13 illustrates an example in which the offset amount Δh candidate is h 12 −h 22 . The second measurement position 102 will be described. The
G1={h12,h13,h14} G 1 = {h 12 , h 13 , h 14 }
そして、第1算出部1014は、集合G1に含まれる高さの組み合わせのうち、組み合わせの高さの差分が集合D1に含まれる組み合わせの数f1を特定する。
Then, the
集合G1に含まれる高さの組み合わせは3つある。まず、高さh12と高さh13との差はd15であり、集合D1に含まれない。高さh12と高さh14との差はd14であり、集合D1に含まれる。高さh13と高さh14との差はd16であり、集合D1に含まれない。このため、第1算出部1014は、数f1を1とする。
There are three combinations of heights included in the set G 1 . First, the difference between the height h 12 and the height h 13 is d 15 and is not included in the set D 1 . The difference between the height h 12 and the height h 14 is d 14 and is included in the set D 1 . The difference between the height h 13 and the height h 14 is d 16 and is not included in the set D 1 . For this reason, the
第2測定位置102について説明する。第1算出部1014は、高さh’21と集合H1に含まれる各高さとの差がαより大きいため、高さh’21を集合G2に入れない。第1算出部1014は、高さh’22と高さh12との差がα以下であるため、高さh’22を集合G2に入れる。第1算出部1014は、高さh’23と高さh13との差が所定値α以下であるため、高さh’23を集合G2に入れる。第1算出部1014は、高さh’24と高さh14との差がα以下であるため、高さh’24を集合G2に入れる。
The second measurement position 102 will be described. The
G2={h’22,h’23,h’24} G 2 = {h ′ 22 , h ′ 23 , h ′ 24 }
そして、第1算出部1014は、集合G2に含まれる高さの組み合わせのうち、組み合わせの高さの差分が集合D2に含まれる組み合わせの数f2を特定する。
Then, the
集合D2に含まれる高さの組み合わせは3通りである。高さh’22と高さh’23との差はd25であり、集合D2に含まれない。高さh’22と高さh’24との差はd24であり、集合D2に含まれる。高さh’23と高さh’24との差はd26であり、集合D2に含まれない。このため、第1算出部1014は、数f2を1とする。
The combination of the height included in the set D 2 is triplicate. The difference between the height h ′ 22 and the height h ′ 23 is d 25 and is not included in the set D 2 . The difference between the height h ′ 22 and the height h ′ 24 is d 24 and is included in the set D 2 . The difference between the height h ′ 23 and the height h ′ 24 is d 26 and is not included in the set D 2 . Therefore, the
第1算出部1014は、オフセット量の候補について、数f1と数f2とのうち小さい方を評価値として算出する。ここで、オフセット量Δhの候補がh12−h22の場合の評価値は、1である。
The
次に、特定部1016は、組み合わせの各々について特定した数に基づいて、オフセット量Δhを特定する。具体的には、特定部1016は、平面の組み合わせのうち、評価値が最も大きい組み合わせについてのオフセット量Δhの候補をオフセット量Δhとして特定する。ここでは、評価値が大きいほど、評価が高い。
Next, the specifying
上述したように、図12に示すオフセット量Δhの候補がh11−h21である平面の組み合わせと、図13に示すオフセット量Δhの候補がh12−h22である平面の組み合わせ場合とは、評価値が同じとなる。このように、図6に示した例と異なり、評価値が同じとなる。このため、誤対応についてのオフセット量Δhの候補が特定されることを抑制することができる。 As described above, the combination of the plane where the offset amount Δh candidate shown in FIG. 12 is h 11 −h 21 and the combination of the plane where the offset amount Δh candidate shown in FIG. 13 is h 12 −h 22 are shown. The evaluation value is the same. Thus, unlike the example shown in FIG. 6, the evaluation values are the same. For this reason, it can suppress that the candidate of offset amount (DELTA) h regarding an incorrect response is specified.
図14は、数f1と数f2とが異なる例を示す説明図である。図14において集合H1は{h11,h12}であり、集合H’2は{h’21,h’22,h’23}である。集合D1は、高さh11と高さh12の距離が含まれる。高さh’21と高さh’22との間の距離と、高さh’22と高さh’23との間の距離と、が同じである場合、集合D2には、何も含まれない。なお、高さh11と高さh12の距離は、高さh’21と高さh’22との間の距離および高さh’22と高さh’23との間の距離と同じである。 FIG. 14 is an explanatory diagram illustrating an example in which the number f 1 is different from the number f 2 . In FIG. 14, the set H 1 is {h 11 , h 12 }, and the set H ′ 2 is {h ′ 21 , h ′ 22 , h ′ 23 }. Set D 1 includes the distance height h 11 and the height h 12. When the distance between the height h ′ 21 and the height h ′ 22 is the same as the distance between the height h ′ 22 and the height h ′ 23 , nothing is included in the set D 2. Not included. The distance between the height h 11 and the height h 12 is the same as the distance between the height h ′ 21 and the height h ′ 22 and the distance between the height h ′ 22 and the height h ′ 23. It is.
図14に示すような場合において、オフセット量Δhの候補をh11とh21とした場合に、集合G1は、{h11,h12}であり、集合G2は、{h’21,h’22}である。高さh11と高さh12との距離は、集合D1に含まれるため、数f1は1である。高さh’21と高さh’22との距離は、集合D2に含まれないため、数f2は0である。このように、数f1と数f2とは必ずしも同じとならないため、第1算出部1014は、数f1と数f2とのうちいずれか小さい方の数を評価値とする。図14の例において評価値は0となる。
In the case shown in FIG. 14, when the offset amount Δh candidates are h 11 and h 21 , the set G 1 is {h 11 , h 12 }, and the
また、第1算出部1014によって算出された評価値が最も大きいオフセット量の候補が複数ある場合がある。このような場合、第2算出部1015は、第1算出部1014によって算出された評価値と異なる評価値によってオフセット量を特定する。
In addition, there may be a plurality of offset amount candidates having the largest evaluation value calculated by the
具体的には、第2算出部1015は、第1算出部1014によって算出された評価値が最も大きいオフセット量の候補ごとに、異なる評価値を算出する。異なる評価値の算出方法として、特に限定しないが、ここでは3つの方法を例に挙げる。
Specifically, the
まず、異なる評価値の算出方法の1つ目の方法について説明する。 First, a first method for calculating different evaluation values will be described.
第2算出部1015は、各々の測定位置について、抽出した各平面に含まれる点群の数を求める。各平面に含まれる点群の数は、階段の踏み面のような比較的狭い平面と、床面や天井面などの広い平面とを区別するのに利用することができる。
The
そして、第2算出部1015は、第1算出部1014によって算出された評価値が最も大きいオフセット量Δhの候補について、2つの3D測定位置群間で高さが一致する平面に含まれる点群の数の相関値を評価値として算出する。
Then, the
例えば、第1点群データ111における各平面の点の数を以下とする。
For example, the number of points on each plane in the first
平面P11(高さh11の平面):300
平面P12(高さh12の平面):100
平面P13(高さh13の平面):80
平面P14(高さh14の平面):280
Plane P 11 (plane with height h 11 ): 300
Plane P 12 (plane with height h 12 ): 100
Plane P 13 (plane with height h 13 ): 80
Plane P 14 (plane with height h 14 ): 280
例えば、第2点群データ112における各平面の点の数を以下とする。
For example, the number of points on each plane in the second
平面P21(高さh21の平面):280
平面P22(高さh22の平面):300
平面P23(高さh23の平面):90
平面P24(高さh24の平面):70
Plane P 21 (plane with height h 21 ): 280
Plane P 22 (plane with height h 22 ): 300
Plane P 23 (plane with height h 23 ): 90
Plane P 24 (plane with height h 24 ): 70
第1算出部1014によって算出された評価値が最も大きいオフセット量Δhの候補が、h11−h21と、h12−h22とする。
The candidates of the offset amount Δh having the largest evaluation value calculated by the
オフセット量Δhの候補がh11−h21の場合、平面P11−平面P21と、平面P14−平面P22と、のように平面が対応する。この場合、相関値は−1となる。 When the candidate for the offset amount Δh is h 11 -h 21 , the planes correspond to plane P 11 -plane P 21 and plane P 14 -plane P 22 . In this case, the correlation value is -1.
また、オフセット量Δhの候補がh12−h22の場合、平面P12−平面P22と、平面P13−平面P23と、平面P14−平面P24と、のように平面が対応する。この場合、相関値は−0.48となる。相関値は、絶対値が1に近いほど、相関関係が強いため、特定部1016は、h12−h22であるオフセット量Δhの候補をオフセット量Δhとして特定する。
When the offset amount Δh is a candidate h 12 -h 22 , the planes correspond to plane P 12 -plane P 22 , plane P 13 -plane P 23 , plane P 14 -plane P 24. . In this case, the correlation value is −0.48. Since the correlation value is stronger as the absolute value is closer to 1, the specifying
次に、異なる評価値の算出方法の2つ目の方法について説明する。 Next, a second method for calculating different evaluation values will be described.
図9に示したように、測定時に、各点群について赤外線の反射強度や色情報が同時に得られる場合がある。そこで、2つ目の方法では、これらの情報が、高さが一致する平面間で似ているか否かに基づいてオフセット量Δhを特定する。 As shown in FIG. 9, at the time of measurement, infrared reflection intensity and color information may be obtained simultaneously for each point group. Therefore, in the second method, the offset amount Δh is specified based on whether or not these pieces of information are similar between planes having the same height.
第2算出部1015は、オフセット量Δhの候補の各々について、2つの3D測定位置群間で高さが一致する平面について反射強度や色情報のヒストグラムの相関値を評価値として算出する。
The
上述したように、オフセット量Δhの候補がh11−h21の場合、平面P11−平面P21と、平面P14−平面P22と、のように平面間の高さが一致する。第2算出部1015は、例えば、平面P11と平面P14との反射強度や色情報のヒストグラムを算出する。第2算出部1015は、例えば、平面P21と平面P22の反射強度や色情報のヒストグラムを算出する。そして、第2算出部1015は、オフセット量Δhの候補がh11−h21についてのヒストグラムの相関値を算出する。
As described above, when the candidate for the offset amount Δh is h 11 -h 21 , the heights between the planes coincide, such as plane P 11 -plane P 21 and plane P 14 -plane P 22 . For example, the
上述したように、オフセット量Δhの候補がh12−h22の場合、平面P12−平面P22と、平面P13−平面P23と、平面P14−平面P24と、のように平面間の高さが一致する。第2算出部1015は、例えば、平面P12と平面P13と平面P14についての反射強度や色情報のヒストグラムを算出する。第2算出部1015は、例えば、平面P22と平面P23と平面P24についての反射強度や色情報のヒストグラムを算出する。
As described above, when the candidate of the offset amount Δh is h 12 -h 22 , the plane is like plane P 12 -plane P 22 , plane P 13 -plane P 23 , plane P 14 -plane P 24. The height between them matches. For example, the
次に、第2算出部1015は、平面P12のヒストグラムと平面P22のヒストグラムとの相関値を算出する。そして、第2算出部1015は、平面P13のヒストグラムと平面P23のヒストグラムとの相関値を算出する。そして、第2算出部1015は、平面P14のヒストグラムと平面P24のヒストグラムとの相関値を算出する。第2算出部1015は、算出した各相関値の平均値を評価値として算出する。
Next, the
相関値は、絶対値が1に近いほど、相関関係が強いため、特定部1016は、評価値が最も大きいオフセット量Δhの候補をオフセット量Δhとして特定する。
Since the correlation value has a stronger correlation as the absolute value is closer to 1, the specifying
次に、異なる評価値の算出方法の3つ目の方法について説明する。 Next, a third method for calculating different evaluation values will be described.
3つ目の方法では、オフセット量Δhの候補の各々について、2Dの位置合わせを行うことにより得られる位置合わせ結果を評価する。位置合わせ結果がよいか否かの評価としては、2つの3D点群間で対応する点の数が多いほど高評価とする。なお、位置合わせ部1017による位置合わせの方法については、後述する。
In the third method, the alignment result obtained by performing the 2D alignment for each of the offset amount Δh candidates is evaluated. As an evaluation of whether or not the alignment result is good, the higher the number of corresponding points between the two 3D point groups, the higher the evaluation. A method of alignment by the
位置合わせ部1017は、オフセット量Δhの候補の各々について、オフセット量Δhの候補によって補正された第2の点群データを補正する。そして、位置合わせ部1017は、オフセット量Δhの候補の各々について、第1点群データ111と、補正された第2点群データ112とで位置合わせを行う。
The
第2算出部1015は、位置合わせ後の3D点群データのうち、第1点群データ111によって特定される点群(第1点群)と、位置合わせ後の第2点群データ112によって特定される点群(第2点群)と、の間で対応する点の数を算出する。なお、評価値は、オフセット量Δhの候補の各々(第1平面と第2平面との組み合わせの各々)について算出される。具体的には、第2算出部1015は、第1点群の各々の点について、各々の点から最近傍にある第2点群に含まれるまでの距離が一定距離以内であるか否かを判定する。第2算出部1015は、一定距離以内であると判定された点の数を評価値とする。この評価値は、大きいほど、評価が高い。第2算出部1015は、最も評価が高いオフセット量Δhの候補をオフセット量Δhとする。
The
ここでは、他の評価値の算出方法として3つの方法を挙げたが、これに限らない。また、例えば、3つの方法のうちいずれか一つの方法により算出された評価値によってオフセット量が特定されてもよい。または、複数の方法により算出された各評価値によってオフセット量が特定されてもよい。または、オフセット量が一意に特定されるまで3つの方法が順に行われてもよい。 Here, three methods are listed as other evaluation value calculation methods, but the present invention is not limited to this. For example, the offset amount may be specified by an evaluation value calculated by any one of the three methods. Alternatively, the offset amount may be specified by each evaluation value calculated by a plurality of methods. Or three methods may be performed in order until an offset amount is specified uniquely.
次に、位置合わせ部1017は、特定部1016によって特定されたオフセット量Δhにしたがって各測定位置の3D点群データの間で高さの基準を合わせる。すなわち、位置合わせ部1017は、異なる測定位置で測定された3D点群データのうち集合H2が割り当てられた方の3D点群データ、すなわち第2点群データ112に含まれる各点にオフセット量Δhを加算する。その後、位置合わせ部1017は、下記の関連文献1に記載があるように、位置合わせの対象とする3D点群データそれぞれについて所定の高さの区間に含まれる3D点群を所定の面、例えば床面に投影することにより2次元の水平方向のスライスデータを抽出する。そして、位置合わせ部1017は、これらのスライスデータに対して、2次元でレジストレーションを行う。
Next, the
[関連文献1]“大規模環境の統合点群モデルの自動生成(第三報)、点群ペア位置合せとマッチ判定による複数点群の完全自動位置合せ”、松山雄介、伊達宏昭、金井理、2014年度精密工学会春季大会、セッションID: E45 [Related Literature 1] “Automatic generation of integrated point cloud model in large-scale environment (3rd report), fully automatic registration of multiple point clouds by point cloud pair alignment and match determination”, Yusuke Matsuyama, Hiroaki Date, Osamu Kanai , 2014 Precision Engineering Society Spring Meeting, Session ID: E45
このほか、位置合わせ部1017は、下記の関連文献2に記載された方法で、同じ高さで各3D点群をスライスして抽出した2次元点群について平面内で位置合わせすることとしてもよい。
In addition, the
[関連文献2]友納正裕,“ユークリッド変換に不変な特徴量を用いた二次元大域スキャンマッチング方式,日本ロボット学会誌,Vol. 25,No. 3,pp390〜401(2007)” [Related Literature 2] Masahiro Tomono, “Two-dimensional global scan matching method using feature invariant for Euclidean transformation, Journal of the Robotics Society of Japan, Vol. 25, No. 3, pp 390-401 (2007)”
これを説明すると、2次元点群は、各点の法線を周囲の点の位置から計算することができ、位置合わせ部1017は、方向付き点群を得ることができる。データ間で方向付き点の対応が1つ決まると2次元の場合、位置合わせのための座標変換パラメータ(x,y,θ)が求まる。そこで、位置合わせ部1017は、方向付き点の対応候補を他の点の位置関係から評価して所定数に絞り込む。これにより、位置合わせ部1017は、座標変換の候補が絞り込まれるので、各候補について位置合わせの誤差を最小化する詳細位置合わせ処理を行った上で残差を評価し、最も残差が少なかった位置合わせ結果を採用する。これによって、位置合わせ部1017は、2次元のレジストレーションを実現できる。
Explaining this, the two-dimensional point group can calculate the normal of each point from the positions of surrounding points, and the
情報処理装置100は、このように1つに統合された3D点群データにメッシュ化処理を行うことにより、3次元の面データに変換することもできる。これら1つに統合された3D点群データまたは3次元の面データを用いることにより、作業者301を支援する支援データを作成し、プロジェクションにより投影することもできる。また、情報処理装置100は、3次元の面データが示す3次元のモデルをプロジェクタ804などによって表示してもよい。
The
(情報処理装置100が行う処理手順例)
図15は、情報処理装置100が行う処理手順例を示すフローチャートである。情報処理装置100は、各々の測定位置について、3D点群データを取得する(ステップS1501)。情報処理装置100は、各々の測定位置の3D点群データについて、水平面の方向を算出する(ステップS1502)。
(Example of processing procedure performed by information processing apparatus 100)
FIG. 15 is a flowchart illustrating an example of a processing procedure performed by the
情報処理装置100は、各々の測定位置について、z軸正方向が水平面の法線方向になる座標変換を実行する(ステップS1503)。情報処理装置100は、各々の測定位置について、3D点群データから平面を抽出する(ステップS1504)。情報処理装置100は、各平面の高さ(z座標)を算出する(ステップS1505)。
The
情報処理装置100は、オフセット量および評価値の算出処理を行う(ステップS1506)。情報処理装置100は、評価が最も高い平面の組み合わせの数が1つか否かを判断する(ステップS1507)。評価が最も高い平面の組み合わせの数が1つであると判断された場合(ステップS1507:Yes)、情報処理装置100は、ステップS1509へ移行する。
The
評価が最も高い平面の組み合わせの数が1つでないと判断された場合(ステップS1507:No)、情報処理装置100は、評価が最も高い平面の組み合わせについて他の評価値を算出する(ステップS1508)。次に、情報処理装置100は、評価が最も高い平面の組み合わせに基づきオフセット量Δhを特定する(ステップS1509)。
If it is determined that the number of combinations of planes with the highest evaluation is not one (step S1507: No), the
次に、情報処理装置100は、評価が最も高い平面の組み合わせについてのオフセット量に基づき一方の3D点群の位置を補正する(ステップS1510)。そして、情報処理装置100は、水平方向に同じ高さでスライスした2D点群データを抽出する(ステップS1511)。情報処理装置100は、レジストレーション処理を行い(ステップS1512)、一連の処理を終了する。
Next, the
図16および図17は、図15で示したオフセット量および評価値の算出処理の詳細な説明を示すフローチャートである。まず、情報処理装置100は、第1測定位置101についての複数の第1平面間の距離を算出する(ステップS1601)。次に、情報処理装置100は、算出した各距離から特徴的な距離の集合D1を抽出する(ステップS1602)。
16 and 17 are flowcharts showing detailed descriptions of the offset amount and evaluation value calculation processing shown in FIG. First, the
そして、情報処理装置100は、第2測定位置102についての複数の第2平面間の距離を算出する(ステップS1603)。情報処理装置100は、算出した各距離から特徴的な距離の集合D2を抽出する(ステップS1604)。情報処理装置100は、第1測定位置101の複数の第1平面に含まれる第1平面と第2測定位置102の複数の第2平面に含まれる第2平面とのすべての組み合わせを生成する(ステップS1605)。情報処理装置100は、未評価の組み合わせがあるか否かを判断する(ステップS1606)。
Then, the
未評価の組み合わせがないと判断された場合(ステップS1606:No)、情報処理装置100は、未評価の組み合わせから1つの組み合わせを評価対象として選択する(ステップS1701)。情報処理装置100は、選択した組み合わせについて、組み合わせに含まれる平面の高さを一致させるオフセット量Δhの候補を算出する(ステップS1702)。情報処理装置100は、算出したオフセット量Δhの候補によって第2測定位置102についての複数の第2平面の高さを補正する(ステップS1703)。
If it is determined that there is no unevaluated combination (step S1606: No), the
そして、情報処理装置100は、複数の第1平面のうち補正後の複数の第2平面と高さが一致する第1平面の高さの集合G1を特定する(ステップS1704)。
Then, the
情報処理装置100は、複数の第1平面のうち補正後の第2平面と高さが一致する第2平面の高さの集合G2を特定する(ステップS1705)。情報処理装置100は、集合G1に含まれる2つの高さの組み合わせごとに高さの差(距離)が集合D1に含まれる数f1を算出する(ステップS1706)。そして、情報処理装置100は、集合G2に含まれる2つの高さの組み合わせごとに高さの差(距離)が集合D2に含まれる数f2を算出し(ステップS1707)、ステップS1606へ移行する。
The
また、ステップS1606において、未評価の組み合わせがあると判断された場合(ステップS1606:Yes)、情報処理装置100は、一連の処理を終了する。
When it is determined in step S1606 that there is an unevaluated combination (step S1606: Yes), the
図18は、図15で示したレジストレーション処理の詳細な説明を示すフローチャートである。情報処理装置100は、補正した一方の3D点群データによって特定される一方の3D点群(補正点群)と補正していない他方の3D点群データによって特定される3D点群(基準点群)の各点について法線方向を算出する(ステップS1801)。次に、情報処理装置100は、基準点群と補正点群の間の点対応候補を複数抽出する(ステップS1802)。情報処理装置100は、各点対応候補ごとに座標変換パラメータを算出する(ステップS1803)。
FIG. 18 is a flowchart showing a detailed description of the registration process shown in FIG. The
情報処理装置100は、複数の座標変換パラメータをクラスタリングする(ステップS1804)。情報処理装置100は、要素数が多いクラスタの重心の座標変換パラメータを算出する(ステップS1805)。情報処理装置100は、各パラメータで変換後の点群の位置関係を初期位置とし、ICPアルゴリズムにより位置合わせをクラスタごとに実行する(ステップS1806)。情報処理装置100は、各位置合わせ結果の残差を評価して最もマッチした位置合わせ結果を選択し(ステップS1807)、一連の処理を終了する。
The
図19は、システム例を示す説明図である。本実施の形態では、情報処理装置100は、測定機器そのものである場合を例に説明したが、これに限らない。図10に示した情報処理装置100の機能部のうちの一部の機能部を他の装置に実現させてもよい。
FIG. 19 is an explanatory diagram of an example system. In the present embodiment, the
システム1900は、測定機器である情報処理装置100と、装置1901と、装置1902と、を有する。情報処理装置100と、装置1901と、装置1902とは、例えば、ネットワーク810を介して接続される。図19の例では、装置1901は、PCであり、装置1902は、携帯型の端末装置であるが、これに限らない。装置1901と装置1902としては、例えば、PC、サーバ、携帯型の端末装置などが挙げられる。例えば、取得部1001を測定機器である情報処理装置100によって実現させ、制御部1002を装置1901によって実現させてもよい。また、制御部1002の一部の機能を情報処理装置100によって実現させ、制御部1002の残余の機能を装置1901によって実現させてもよい。
A
また、例えば装置1902は、利用者による操作入力によって受け付けた測定の開始指示を測定機器である情報処理装置100に通知してもよい。これにより、作業者301は、直接測定機器を操作することなく、3D測定を行うことができる。また、装置1901は、3次元の面データが示す3次元のモデルをディスプレイなどに表示してもよい。
Further, for example, the
装置1901や装置1902は、CPU、ディスク、メモリ、I/F、入力装置、ディスプレイなどの出力装置などのようなハードウェア構成を有していればよく、特に限定しない。また、各種の3D点群データや各種のモデル情報については、データベースサーバ(図示省略)などに記憶および管理されてもよい。
The
以上説明したように、情報処理装置100は、異なる測定位置で測定された点群データの間で基準となる平面同士の高さが合うようなオフセット量にしたがって点群データを補正して2次元の位置合わせを行う。これにより、情報処理装置100は、オクルージョンのある環境下で3D点群データの合成精度を高めることができる。
As described above, the
情報処理装置100は、第1点群データから得る第1平面群の1面に合わせて、第2点群データから得る第2平面群の高さを補正した第2平面群の面と高さが同じ第1平面間の距離のうち、第1平面群の面間の特徴的な距離と同じ距離の数からオフセット量を特定する。これにより、情報処理装置100は、複数の第1平面の中で、補正後の複数の第2平面と高さが一致している第1平面の数によってオフセット量を特定する場合と比較して、高さ方向の位置合わせの精度の向上を図ることができる。
The
また、情報処理装置100は、補正後の複数の第2平面の中で、複数の第1平面と高さが一致する補正後の第2平面間の距離のうち、第2平面間の特徴的な距離に含まれる距離の第2数と特定した第1数とに基づいてオフセット量を特定する。これにより、第1数と第2数とは異なる場合があるため、2つの種類の数のうちの小さい方の数を評価値として用いることができる。これにより、情報処理装置100は、より精度のよい評価値によって高さ方向の補正を行うことができる。
Further, the
なお、本実施の形態で説明した情報処理方法は、予め用意された情報処理プログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本情報処理プログラムは、磁気ディスク、光ディスク、USB(Universal Serial Bus)フラッシュメモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、情報処理プログラムは、インターネット等のネットワークを介して配布してもよい。 Note that the information processing method described in this embodiment can be realized by executing an information processing program prepared in advance on a computer such as a personal computer or a workstation. The information processing program is recorded on a computer-readable recording medium such as a magnetic disk, an optical disk, or a USB (Universal Serial Bus) flash memory, and is executed by being read from the recording medium by the computer. The information processing program may be distributed via a network such as the Internet.
また、本実施の形態で説明した情報処理装置100は、スタンダードセルやストラクチャードASIC(Application Specific Integrated Circuit)などの特定用途向けIC(以下、単に「ASIC」と称す。)やFPGA(Field Programmable Gate Array)などのPLD(Programmable Logic Device)によっても実現することができる。具体的には、例えば、上述した情報処理装置100の制御部1002の機能をHDL記述によって機能定義し、そのHDL(Hardware Description Language)記述を論理合成してASICやPLDに与えることにより、情報処理装置100の制御部1002を製造することができる。
In addition, the
d11,d12,d13,d14,d15,d16,d21,d22,d23,d24,d25,d26 距離
p1M1,p11,p12 点
P11,P12,P13,P14,P15 第1平面
P21,P22,P23,P24,P25,P26 第2平面
h11,h12,h13,h14 第1平面の高さ
h21,h22,h23,h24 第2平面の高さ
100 情報処理装置
101 第1測定位置
102 第2測定位置
111 第1点群データ
112 第2点群データ
300 現場
301 作業者
701 駆動装置
702 測定装置
703 制御装置
1001 取得部
1002 制御部
1011 抽出部
1012 距離算出部
1013 オフセット量算出部
1014 第1算出部
1015 第2算出部
1016 特定部
1900 システム
1901,1902 装置
d 11, d 12, d 13 , d 14, d 15, d 16, d 21, d 22, d 23, d 24, d 25, d 26 distance p 1M1, p 11, p 12 points P 11, P 12 , P 13 , P 14 , P 15 first plane P 21 , P 22 , P 23 , P 24 , P 25 , P 26 second plane h 11 , h 12 , h 13 , h 14 height of the first plane h 21 , h 22 , h 23 , h 24 Height of
Claims (6)
前記各々の測定位置について、取得した前記点群データから平面領域に属する点群データを抽出し、
前記複数の測定位置の間で、抽出した前記点群データが属する前記平面領域の間の垂直方向の差分が一致するオフセット量を算出し、
算出した前記オフセット量にしたがって補正された前記点群データを用いて位置合わせを行う、
処理をコンピュータに実行させることを特徴とする情報処理プログラム。 For each measurement position of a plurality of measurement positions, obtain three-dimensional point cloud data based on the distance from each measurement position to the object,
For each measurement position, extract the point cloud data belonging to the plane area from the acquired point cloud data,
Calculating an offset amount in which a vertical difference between the planar areas to which the extracted point cloud data belongs is the same among the plurality of measurement positions;
Align using the point cloud data corrected according to the calculated offset amount,
An information processing program for causing a computer to execute processing.
前記複数の測定位置のうちの第1測定位置について、取得した前記点群データから抽出した複数の点群データの各々に属する互いに平行な複数の第1平面領域の各々の第1平面領域の間の各距離のうちの当該各距離と他の距離との差分が所定値以上である距離を特定し、
前記複数の測定位置のうちの第2測定位置について取得した前記点群データから抽出した複数の点群データの各々に属する互いに平行な複数の第2平面領域に含まれる第2平面領域と、前記複数の第1平面領域に含まれる第1平面領域と、の組み合わせの各々について、前記組み合わせに含まれる平面領域間の垂直方向の位置を一致させるように、前記複数の第2平面領域の各々の第2平面領域の垂直方向の位置を補正し、
前記組み合わせの各々について、前記各々の第1平面領域の垂直方向の位置のうち、補正後の前記各々の第2平面領域の垂直方向の位置と一致する位置を特定し、
前記組み合わせの各々について、特定した前記位置の2つの組み合わせのうち、前記位置の2つの組み合わせに含まれる位置間の距離が特定した前記距離と一致する組み合わせの数を特定し、
前記組み合わせの各々について特定した前記数に基づいて、前記オフセット量を特定する、
前記位置合わせを行う処理は、
前記第2測定位置についての前記点群データが、特定した前記オフセット量にしたがって補正された前記点群データと、前記第1測定位置についての前記点群データと、を用いて位置合わせを行う、
ことを特徴とする請求項1に記載の情報処理プログラム。 The process for calculating the offset amount includes:
Between the first plane areas of the plurality of first plane areas parallel to each other belonging to each of the plurality of point group data extracted from the acquired point group data for the first measurement position of the plurality of measurement positions. A distance in which the difference between each of the distances and other distances is equal to or greater than a predetermined value,
A second plane region included in a plurality of parallel second plane regions belonging to each of a plurality of point group data extracted from the point group data acquired for the second measurement position of the plurality of measurement positions; For each combination of the first planar regions included in the plurality of first planar regions, the vertical positions between the planar regions included in the combination are matched to each other. Correct the vertical position of the second plane region,
For each of the combinations, the position in the vertical direction of each of the first plane regions is identified as the position that matches the position in the vertical direction of each of the second plane regions after correction.
For each of the combinations, among the two combinations of the specified positions, specify the number of combinations in which the distance between the positions included in the two combinations of the positions matches the specified distance,
Identifying the offset amount based on the number identified for each of the combinations;
The process of performing the alignment is as follows.
The point cloud data for the second measurement position is aligned using the point cloud data corrected according to the specified offset amount and the point cloud data for the first measurement position.
The information processing program according to claim 1.
さらに、前記第2測定位置について、前記各々の第2平面領域の間の各距離のうちの当該各距離と他の距離との差分が前記所定値以上である第2距離を特定し、
さらに、前記組み合わせの各々について、特定した前記位置の2つの組み合わせのうち、前記位置の2つの組み合わせに含まれる位置間の距離が特定した前記第2距離と一致する組み合わせの第2数を特定し、
前記オフセット量を算出する処理のうちの前記オフセット量を特定する処理は、
前記組み合わせの各々について特定した前記数および特定した前記第2数に基づいて、前記オフセット量を特定する、
ことを特徴とする請求項2に記載の情報処理プログラム。 The process for calculating the offset amount includes:
Further, for the second measurement position, a second distance in which a difference between each distance and another distance among the distances between the respective second plane regions is equal to or greater than the predetermined value,
Further, for each of the combinations, a second number of combinations in which the distance between the positions included in the two combinations of the positions matches the second distance specified among the two combinations of the specified positions is specified. ,
Of the processes for calculating the offset amount, the process for specifying the offset amount is:
Identifying the offset amount based on the identified number and the identified second number for each of the combinations;
The information processing program according to claim 2.
前記組み合わせの各々について特定した前記数と特定した前記第2数とのうち小さい方の数に基づいて、前記オフセット量を特定する、
ことを特徴とする請求項3に記載の情報処理プログラム。 Of the processes for calculating the offset amount, the process for specifying the offset amount is:
Identifying the offset amount based on the smaller number of the number identified for each of the combinations and the identified second number;
The information processing program according to claim 3.
前記各々の測定位置について、取得した前記点群データから平面領域に属する点群データを抽出し、
前記複数の測定位置の間で、抽出した前記点群データが属する前記平面領域の間の垂直方向の差分が一致するオフセット量を算出し、
算出した前記オフセット量にしたがって補正された前記点群データを用いて位置合わせを行う、
処理をコンピュータが実行することを特徴とする情報処理方法。 For each measurement position of a plurality of measurement positions, obtain three-dimensional point cloud data based on the distance from each measurement position to the object,
For each measurement position, extract the point cloud data belonging to the plane area from the acquired point cloud data,
Calculating an offset amount in which a vertical difference between the planar areas to which the extracted point cloud data belongs is the same among the plurality of measurement positions;
Align using the point cloud data corrected according to the calculated offset amount,
An information processing method, wherein a computer executes a process.
前記各々の測定位置について、前記取得部が取得した前記点群データから平面領域に属する点群データを抽出し、前記複数の測定位置の間で、抽出した前記点群データが属する前記平面領域の間の垂直方向の差分が一致するオフセット量を算出し、算出した前記オフセット量にしたがって補正された前記点群データを用いて位置合わせを行う制御部と、
を有することを特徴とする情報処理装置。 An acquisition unit that acquires three-dimensional point cloud data based on a distance from each measurement position to an object for each of the plurality of measurement positions;
For each measurement position, point cloud data belonging to a plane area is extracted from the point cloud data acquired by the acquisition unit, and the plane area to which the extracted point cloud data belongs is extracted between the plurality of measurement positions. A control unit that calculates an offset amount in which a vertical difference between them coincides, and performs alignment using the point cloud data corrected according to the calculated offset amount;
An information processing apparatus comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017058526A JP6903987B2 (en) | 2017-03-24 | 2017-03-24 | Information processing programs, information processing methods, and information processing equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017058526A JP6903987B2 (en) | 2017-03-24 | 2017-03-24 | Information processing programs, information processing methods, and information processing equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018159693A true JP2018159693A (en) | 2018-10-11 |
JP6903987B2 JP6903987B2 (en) | 2021-07-14 |
Family
ID=63796656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017058526A Active JP6903987B2 (en) | 2017-03-24 | 2017-03-24 | Information processing programs, information processing methods, and information processing equipment |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6903987B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020085142A1 (en) * | 2018-10-22 | 2020-04-30 | 国立大学法人大阪大学 | Measurement apparatus and measurement system |
JP2021179376A (en) * | 2020-05-14 | 2021-11-18 | 株式会社日立エルジーデータストレージ | Ranging system, and ranging sensor calibration method |
JP2023510286A (en) * | 2020-01-07 | 2023-03-13 | ルミナー,エルエルシー | Sensor system calibration |
WO2024144064A1 (en) * | 2022-12-28 | 2024-07-04 | (주)서울로보틱스 | Electronic device and method for calibrating point cloud for three-dimensional space |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000337862A (en) * | 1999-05-27 | 2000-12-08 | Inst Of Physical & Chemical Res | Synthesizing method for partial measured data |
JP2004054308A (en) * | 2002-07-16 | 2004-02-19 | Japan Science & Technology Corp | Method and device for integrating distance image |
WO2012141235A1 (en) * | 2011-04-13 | 2012-10-18 | 株式会社トプコン | Three-dimensional point group position data processing device, three-dimensional point group position data processing system, three-dimensional point group position data processing method and program |
US20140300886A1 (en) * | 2013-04-05 | 2014-10-09 | Leica Geosystems Ag | Geodetic referencing of point clouds |
-
2017
- 2017-03-24 JP JP2017058526A patent/JP6903987B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000337862A (en) * | 1999-05-27 | 2000-12-08 | Inst Of Physical & Chemical Res | Synthesizing method for partial measured data |
JP2004054308A (en) * | 2002-07-16 | 2004-02-19 | Japan Science & Technology Corp | Method and device for integrating distance image |
WO2012141235A1 (en) * | 2011-04-13 | 2012-10-18 | 株式会社トプコン | Three-dimensional point group position data processing device, three-dimensional point group position data processing system, three-dimensional point group position data processing method and program |
US20140300886A1 (en) * | 2013-04-05 | 2014-10-09 | Leica Geosystems Ag | Geodetic referencing of point clouds |
Non-Patent Citations (1)
Title |
---|
塩澤秀門 外3名: ""Velodyneレーザスキャナを用いた上空からの三次元再構成"", 日本ロボット学会誌, vol. Volume 31,Number 10, JPN6018048132, 15 December 2013 (2013-12-15), JP, pages 992 - 1000, ISSN: 0004402411 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020085142A1 (en) * | 2018-10-22 | 2020-04-30 | 国立大学法人大阪大学 | Measurement apparatus and measurement system |
JPWO2020085142A1 (en) * | 2018-10-22 | 2021-10-21 | 国立大学法人大阪大学 | Measuring device and measuring system |
JP7339485B2 (en) | 2018-10-22 | 2023-09-06 | 国立大学法人大阪大学 | measurement system |
JP2023510286A (en) * | 2020-01-07 | 2023-03-13 | ルミナー,エルエルシー | Sensor system calibration |
JP2021179376A (en) * | 2020-05-14 | 2021-11-18 | 株式会社日立エルジーデータストレージ | Ranging system, and ranging sensor calibration method |
JP7286586B2 (en) | 2020-05-14 | 2023-06-05 | 株式会社日立エルジーデータストレージ | Ranging system and ranging sensor calibration method |
WO2024144064A1 (en) * | 2022-12-28 | 2024-07-04 | (주)서울로보틱스 | Electronic device and method for calibrating point cloud for three-dimensional space |
Also Published As
Publication number | Publication date |
---|---|
JP6903987B2 (en) | 2021-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6903987B2 (en) | Information processing programs, information processing methods, and information processing equipment | |
AU2020200546B2 (en) | Structure modelling | |
JP5593177B2 (en) | Point cloud position data processing device, point cloud position data processing method, point cloud position data processing system, and point cloud position data processing program | |
JP5711039B2 (en) | 3D point cloud position data processing apparatus, 3D point cloud position data processing method, 3D point cloud position data processing system, and program | |
JP4791423B2 (en) | Automatic three-dimensional scan data alignment system and method | |
JP6797556B2 (en) | Management device, management method and management program | |
US9984177B2 (en) | Modeling device, three-dimensional model generation device, modeling method, program and layout simulator | |
JP4195096B2 (en) | Equipment for 3D surface shape reconstruction | |
JP6030549B2 (en) | 3D point cloud position data processing apparatus, 3D point cloud position data processing system, 3D point cloud position data processing method and program | |
JP5343042B2 (en) | Point cloud data processing apparatus and point cloud data processing program | |
JP5620200B2 (en) | Point cloud position data processing device, point cloud position data processing method, point cloud position data processing system, and point cloud position data processing program | |
JP7300930B2 (en) | Survey data processing device, survey data processing method and program for survey data processing | |
JP2017026487A (en) | Shape measurement device, shape measurement system and shape measurement method | |
JP7294778B2 (en) | Live measurement of objects during manufacturing or other operations | |
CN105388478A (en) | Method and arrangement for detecting acoustic and optical information as well as a corresponding computer program and a corresponding computer-readable storage medium | |
JP2016161473A (en) | Optical displacement measurement system, imaging condition optimization method and imaging condition optimization program | |
JP2017166933A (en) | Information processing device and information synthesis program | |
Ahmadabadian et al. | Clustering and selecting vantage images in a low-cost system for 3D reconstruction of texture-less objects | |
JP2015515068A (en) | Patient monitoring and methods | |
JP4602844B2 (en) | Displacement information measuring system, method and program | |
Allegra et al. | Low Cost Handheld 3D Scanning for Architectural Elements Acquisition. | |
JP2012251893A (en) | Shape measuring device, control method of shape measuring device, and program | |
JP2020009326A (en) | Radio wave propagation simulation model creation method, creation system, creation device, and creation program | |
JP2009032063A (en) | Device and program for generating space information database | |
CN112530010A (en) | Data acquisition method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191212 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201208 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210208 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210525 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210607 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6903987 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |