JP6693193B2 - Information processing device and information synthesis program - Google Patents

Information processing device and information synthesis program Download PDF

Info

Publication number
JP6693193B2
JP6693193B2 JP2016051664A JP2016051664A JP6693193B2 JP 6693193 B2 JP6693193 B2 JP 6693193B2 JP 2016051664 A JP2016051664 A JP 2016051664A JP 2016051664 A JP2016051664 A JP 2016051664A JP 6693193 B2 JP6693193 B2 JP 6693193B2
Authority
JP
Japan
Prior art keywords
measurement position
point cloud
dimensional point
cloud data
unit
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.)
Active
Application number
JP2016051664A
Other languages
Japanese (ja)
Other versions
JP2017166933A (en
Inventor
純也 藤本
純也 藤本
桂樹 岡林
桂樹 岡林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016051664A priority Critical patent/JP6693193B2/en
Publication of JP2017166933A publication Critical patent/JP2017166933A/en
Application granted granted Critical
Publication of JP6693193B2 publication Critical patent/JP6693193B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置及び情報合成プログラムに関する。   The present invention relates to an information processing device and an information composition program.

異なる計測点で取得された複数の3次元(dimension)点群データの位置合わせ、いわゆるレジストレーションに関する技術が知られている。   There is known a technique related to registration of a plurality of three-dimensional (dimension) point group data acquired at different measurement points, so-called registration.

例えば、既知の形状のターゲットを環境に設置しておき、各々の3次元点群からターゲットを検出することにより位置合わせを行う方法がある。このように位置合わせにターゲットを用いる場合、ターゲットを設置する手間が発生し、どの地点にターゲットを設置するのがよいかといった判断が現場の作業員に委ねられることから使用時の手軽さが損なわれる。   For example, there is a method in which a target having a known shape is installed in the environment and the target is detected from each of the three-dimensional point groups to perform the alignment. In this way, when using the target for alignment, it takes time and effort to install the target, and it is up to the workers in the field to decide at which point the target should be installed. Be done.

このことから、ターゲットを用いずに、3次元点群データにより表現される環境の形状から位置合わせを自動的に行う方法が求められる。   Therefore, there is a demand for a method of automatically performing alignment from the shape of the environment represented by the three-dimensional point cloud data without using the target.

かかる方法の一例として、計測点が異なる複数の3次元点群から他の点とは区別しやすい特徴点もしくは線や面などの特徴を複数抽出し、RANSAC(RANdom Sample Consensus)などのアルゴリズムで正しい対応を求めることで、位置合わせを行う方法がある。ところが、広い空間の計測に適用する場合、大量の点を扱うことになるので、計算コストが増大する。   As an example of such a method, a plurality of characteristic points or features such as lines and surfaces that are easily distinguishable from other points are extracted from a plurality of three-dimensional point groups having different measurement points, and correct by an algorithm such as RANSAC (RANdom Sample Consensus). There is a method of aligning by finding correspondence. However, when it is applied to measurement in a wide space, a large number of points are dealt with, which increases the calculation cost.

これに対して、3次元点群をそのまま処理するのではなく、それぞれの3次元点群を一定の高さで水平方向にスライスし、そこに含まれる点群を2次元でマッチングすることで、計算を効率化する方法が提案されている。   On the other hand, instead of processing the 3D point cloud as it is, by slicing each 3D point cloud in the horizontal direction at a constant height and matching the point cloud contained therein in 2D, Methods have been proposed to streamline the calculation.

この方法では、複数の3次元点群を環境に対して同じ高さで水平方向にスライスすることが必要になる。全ての計測を同じ高さで行えればよいが、環境を死角なく測定しようとすると計測器の脚の長さを変えて測定したい場合や、机や台にセンサを置いて測定したい場合が出てくる。このため、事前に各3次元点群データの高さの基準を合わせる方法が求められる。   This method requires slicing a plurality of three-dimensional point clouds horizontally at the same height with respect to the environment. It suffices to perform all measurements at the same height, but if you want to measure the environment without blind spots, you may want to change the leg length of the measuring instrument or place a sensor on the desk or table to perform measurement. Come on. Therefore, there is a demand for a method of matching the height standards of the three-dimensional point cloud data in advance.

3次元点群をスライスする前に各3次元点群データの高さの基準を合わせる方式として、多くの計測点で観測可能な床面を検出し、その床面を基準とする方法がある。例えば、床面を検出する方法として、下記2つの方法が挙げられる。   As a method of adjusting the height reference of each three-dimensional point cloud data before slicing the three-dimensional point cloud, there is a method of detecting a observable floor surface at many measurement points and using the floor surface as a reference. For example, as the method of detecting the floor surface, there are the following two methods.

1つ目として、法線が鉛直上向きの点群により形成される平面を全て抽出して高さが最も低い面を基準面とする方法がある。2つ目として、法線が鉛直上向きの点群により形成される平面を全て抽出して面積が最も大きい面を基準面とする方法がある。   As a first method, there is a method in which all planes formed by point groups whose normals are vertically upward are extracted and the plane having the lowest height is used as a reference plane. As a second method, there is a method in which all the planes formed by the point groups whose normals are vertically upward are extracted and the plane having the largest area is used as the reference plane.

特開2012−112705号公報JP 2012-112705 A 特開平10−96607号公報JP, 10-96607, A

しかしながら、上記の技術では、オクルージョンが発生する環境下で互いの3D点群の間で合成する基準面の対応がとれないので、3D点群データの合成精度が低下する場合がある。   However, in the above technique, the reference planes to be combined between the 3D point clouds cannot be associated with each other in an environment where occlusion occurs, and thus the accuracy of combining the 3D point cloud data may be reduced.

1つの側面では、本発明は、オクルージョンのある環境下で3次元点群データの合成精度を高めることができる情報処理装置及び情報合成プログラムを提供することを目的とする。   In one aspect, an object of the present invention is to provide an information processing device and an information synthesizing program capable of increasing the synthesis accuracy of three-dimensional point cloud data under an environment with occlusion.

一態様では、情報処理装置は、異なる測定位置で光を走査しながら照射すると共に物体から反射される反射光を用いて、自装置から物体までの距離に基づく点群情報を取得する取得部と、前記取得部が取得した前記点群情報から平面領域に属する点群情報を前記測定位置ごとに抽出する抽出部と、前記異なる測定位置の間で、前記抽出部が抽出した前記平面領域の間の垂直方向の差分が一致するオフセット量を算出する算出部と、前記算出部が算出したオフセット量にしたがって補正された前記点群情報を用いて位置合わせを行う位置合わせ部とを有する。   In one aspect, the information processing device irradiates while scanning light at different measurement positions, and uses the reflected light reflected from the object to acquire point cloud information based on the distance from the device to the object. Between the different measurement positions and the extraction unit that extracts point cloud information belonging to a plane area from the point cloud information acquired by the acquisition unit, and between the different measurement positions, between the plane areas extracted by the extraction unit. And a position adjustment unit that performs position adjustment using the point group information corrected according to the offset amount calculated by the calculation unit.

オクルージョンのある環境下で3次元点群データの合成精度を高めることができる。   It is possible to improve the synthesis accuracy of three-dimensional point cloud data in an environment with occlusion.

図1は、実施例1に係るポータブル型情報処理装置の使用例を示す図である。FIG. 1 is a diagram illustrating a usage example of the portable information processing apparatus according to the first embodiment. 図2Aは、オクルージョンの一例を示す図である。FIG. 2A is a diagram showing an example of occlusion. 図2Bは、オクルージョンの一例を示す図である。FIG. 2B is a diagram showing an example of occlusion. 図3は、実施例1に係るポータブル型情報処理装置の機能的構成を示すブロック図である。FIG. 3 is a block diagram of the functional configuration of the portable information processing apparatus according to the first embodiment. 図4は、3次元点群データの計測方法の一例を示す図である。FIG. 4 is a diagram showing an example of a method of measuring three-dimensional point cloud data. 図5は、水平面の高さの集合の一例を示す図である。FIG. 5 is a diagram showing an example of a set of horizontal plane heights. 図6は、水平面の高さの集合とオフセット量の関係を示す図である。FIG. 6 is a diagram showing a relationship between a set of heights of a horizontal plane and an offset amount. 図7は、高さの集合の一例を示す図である。FIG. 7 is a diagram illustrating an example of a set of heights. 図8は、評価値の一例を示す図である。FIG. 8 is a diagram showing an example of the evaluation value. 図9は、実施例1に係る全体処理の手順を示すフローチャートである。FIG. 9 is a flowchart illustrating the procedure of the overall process according to the first embodiment. 図10は、実施例1に係るレジストレーション処理の手順を示すフローチャートである。FIG. 10 is a flowchart of a registration process procedure according to the first embodiment. 図11は、水平面の抽出に関する応用例を示す図である。FIG. 11: is a figure which shows the application example regarding the extraction of a horizontal surface. 図12は、実施例1及び実施例2に係る情報合成プログラムを実行するコンピュータのハードウェア構成例を示す図である。FIG. 12 is a diagram illustrating a hardware configuration example of a computer that executes the information composition program according to the first and second embodiments.

以下に添付図面を参照して本願に係る情報処理装置及び情報合成プログラムについて説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。   An information processing apparatus and an information composition program according to the present application will be described below with reference to the accompanying drawings. Note that this embodiment does not limit the disclosed technology. Then, the respective embodiments can be appropriately combined within the range in which the processing contents do not contradict each other.

[適用場面の一例]
図1は、実施例1に係るポータブル型情報処理装置10の使用例の一例を示す図である。図1には、作業が行われる区画の一例として、現場2A〜現場2Nが例示されている。なお、以下では、現場2A〜現場2Nを総称する場合に「現場2」と記載する場合がある。
[Example of application scene]
FIG. 1 is a diagram illustrating an example of use of the portable information processing device 10 according to the first embodiment. FIG. 1 illustrates a site 2A to a site 2N as an example of a section in which work is performed. In addition, below, the site 2A to the site 2N may be collectively referred to as "site 2".

図1に示すポータブル型情報処理装置10は、作業者3がハンドキャリーを行うポータブル型の装置として実装される。例えば、作業者3が現場2A〜現場2Nで作業を行う場合、1つの現場2につき1台の情報処理装置10を設置せずともかまわず、1台の情報処理装置10を各現場2で持ち回って使用することができる。すなわち、作業者3は、現場2で作業が終了する度に、次の現場2へハンドキャリー等でポータブル型情報処理装置10を持ち込み、次の現場2の任意の位置に載置することにより、支援データの提供を受けることができる。   The portable information processing device 10 shown in FIG. 1 is implemented as a portable device in which the worker 3 carries a hand. For example, when the worker 3 performs work on the site 2A to the site 2N, it does not matter if one information processing device 10 is installed for each site 2, and one information processing device 10 is held at each site 2. Can be used by turning. That is, the worker 3 brings the portable information processing device 10 to the next site 2 by hand-carrying or the like every time the work at the site 2 is completed, and places the portable information processing device 10 at an arbitrary position on the next site 2. Support data can be provided.

このように、ポータブル型情報処理装置10は、現場2A〜現場2Nに持ち込むことにより、簡単な操作で周囲の環境をくまなく計測してデジタイズ化することができる。さらに、環境中の人の計測を行いデジタイズ化した環境情報と紐づけることで、環境中の人の行動を記録したり、人の状態に応じた情報を提供したりするなど、様々な情報支援を可能としている。   In this way, the portable information processing apparatus 10 can measure the surrounding environment all over and digitize it with a simple operation by bringing it to the site 2A to the site 2N. In addition, various information support such as recording the behavior of people in the environment and providing information according to the state of people by measuring people in the environment and linking with digitized environment information Is possible.

例えば、ポータブル型の情報処理装置10は、詳細は図2を用いて後述するが、2次元平面内をスキャンして環境に対する距離を測定可能なレーザレンジファインダを、モータで回転させることで、全方位の3次元点群データの計測を実現する。   For example, the portable information processing apparatus 10 will be described in detail later with reference to FIG. 2, but a laser range finder capable of scanning a two-dimensional plane and measuring a distance to the environment is rotated by a motor, Realize measurement of three-dimensional point cloud data.

[オクルージョン]
このポータブル型の情報処理装置10を現場2に持ち運び計測を行うと、1回の計測で広範囲の計測が行えるが、現場2内に置かれたパーティションやテーブルなどが遮蔽物となったり、現場2内の施設の構造上、出入口に面する視点以外からは壁等が遮蔽物となって計測が遮られたりする場合がある。この結果、上記の遮蔽物が妨げとなって未計測の場所が発生する(オクルージョン)。この場合、未計測の場所を計測できるように別の場所にポータブル型の情報処理装置10を移動して再度計測を行う。これを繰り返すことにより、互いの計測点で発生する死角が補われた複数の3次元点群データを得ることができる。一方で、複数の3次元点群の位置関係は不明であるので、複数の3次元点群の間で位置合わせ、いわゆるレジストレーションを行うことにより、1つの3次元点群データに合成される。
[Occlusion]
When this portable information processing device 10 is carried to the site 2 and measured, a wide range of measurements can be performed with one measurement, but a partition, a table, etc. placed in the site 2 act as a shield or a site 2 Due to the structure of the facility inside, measurement may be blocked by walls and the like from other than the viewpoint facing the entrance. As a result, the above-mentioned shield obstructs the generation of unmeasured locations (occlusion). In this case, the portable information processing device 10 is moved to another place so that the unmeasured place can be measured, and the measurement is performed again. By repeating this, it is possible to obtain a plurality of three-dimensional point cloud data in which the blind spots generated at the measurement points are compensated. On the other hand, since the positional relationship between the plurality of three-dimensional point groups is unknown, the plurality of three-dimensional point groups are aligned and so-called registration is performed, so that the three-dimensional point group data are combined.

これを具体的に説明すると、ポータブル型情報処理装置10では、(1)3D(dimension)計測、(2)フィルタリング、(3)レジストレーション、(4)メッシュモデル化といった手順で、現場2に関する環境のモデルデータが生成される。   This will be specifically described. In the portable information processing device 10, the environment related to the site 2 is performed by the procedure of (1) 3D (dimension) measurement, (2) filtering, (3) registration, and (4) mesh modeling. Model data is generated.

すなわち、ポータブル型情報処理装置10は、現場2において異なる計測点で3D計測が実施されることにより複数の3次元点群データを計測する(1)。その上で、ポータブル型情報処理装置10は、3次元点群データごとにフィルタリングを行うことによりノイズとなる点群を除去する(2)。例えば、3次元点群データに含まれる点ごとに当該点から近い順から所定数の各点との間で分散を算出する。このとき、点が物品等を形成する要素である場合、近傍の点も密集するので、ノイズとなる孤立点よりも分散が小さくなり、ノイズとなる孤立点であれば、近傍に点が存在してもまばらとなるので、物品の構成要素である点よりも分散が大きくなる。このことから、一例として、分散が閾値以上である点をノイズとみなして除去する。   That is, the portable information processing device 10 measures a plurality of three-dimensional point cloud data by performing 3D measurement at different measurement points at the site 2 (1). Then, the portable information processing device 10 removes the point cloud that becomes noise by performing filtering for each three-dimensional point cloud data (2). For example, for each point included in the three-dimensional point cloud data, the variance is calculated from a point closest to the point and a predetermined number of points. At this time, when the points are elements that form an article or the like, nearby points are also densely gathered, so the variance is smaller than the isolated points that become noise, and if the isolated points are noise, there are nearby points. Since it is sparse, the dispersion is larger than that of the constituent elements of the article. From this, as an example, a point whose variance is equal to or larger than the threshold value is regarded as noise and removed.

その後、ポータブル型情報処理装置10は、ノイズ除去後に、複数の3次元点群データの位置合わせ処理を行うことにより、1つの3次元点群データとして統合する(3)。その上で、ポータブル型情報処理装置10は、1つに統合された3次元点群データをメッシュ化処理により、3次元の面データに変換する(4)。これによって、データ容量を削減し、環境のモデルとして利用する。   After that, the portable information processing device 10 integrates the three-dimensional point group data as one piece of three-dimensional point group data by performing the alignment processing of the plurality of three-dimensional point group data after noise removal (3). Then, the portable information processing device 10 converts the integrated three-dimensional point group data into three-dimensional surface data by meshing processing (4). This reduces the data capacity and uses it as a model of the environment.

このように、異なる計測点で計測された3次元点群の位置合わせをするレジストレーションの方法は、これまで様々なものが考案されているが、上記の背景技術の項でも説明した通り、3次元点群の位置合わせにターゲットを用いる場合、ターゲットを設置する手間が発生し、どの地点にターゲットを設置するのがよいかといった判断が現場の作業員に委ねられることから使用時の手軽さが損なわれる。   As described above, various registration methods for aligning the three-dimensional point groups measured at different measurement points have been devised up to now, but as described in the background art section, the registration method is When using a target for alignment of the dimensional point cloud, it takes time and effort to set the target, and it is left to the workers on site to decide which point to install the target, so it is easy to use. Be damaged.

このため、ターゲットを用いずに、3次元点群データにより表現される環境の形状から位置合わせを自動的に行う方法が求められるが、複数の3次元点群データごとに点、線や面などの特徴を複数抽出し、RANSAC(RANdom Sample Consensus)などのアルゴリズムにしたがって対応点を求めたのでは、計算コストが増大する。   Therefore, there is a need for a method that automatically performs alignment from the shape of the environment represented by 3D point cloud data without using a target. If a plurality of features are extracted and corresponding points are obtained according to an algorithm such as RANSAC (RANdom Sample Consensus), the calculation cost increases.

このことから、3次元点群をそのまま処理するのではなく、それぞれの3次元点群を一定の高さで水平方向にスライスし、そこに含まれる点群を2次元でマッチングすることにより、計算効率を高めるのが有効であると考えられる。   From this, it is possible to calculate by calculating each three-dimensional point cloud horizontally by slicing each three-dimensional point cloud at a constant height and matching the point cloud included in the two-dimensional point cloud instead of processing the three-dimensional point cloud as it is. It is considered effective to increase efficiency.

この場合、複数の3次元点群を環境に対して同じ高さで水平方向にスライスできることが条件となる。このとき、全ての計測を同じ高さで行えればよいが、現場2の環境を死角なく測定しようとするとポータブル型情報処理装置10の脚の長さを変えて測定したい場合や、机や台にポータブル型情報処理装置10を置いて測定したい場合が出てくる。このような背景から、事前に各3次元点群データの高さの基準を合わせる方法が求められる。   In this case, the condition is that a plurality of three-dimensional point clouds can be sliced in the horizontal direction at the same height with respect to the environment. At this time, all the measurements should be performed at the same height, but if you want to measure the environment of the site 2 without blind spots, you may want to change the leg length of the portable information processing device 10, or you may need to measure the desk or table. There may be a case where the portable information processing device 10 is placed in a place where measurement is desired. From such a background, a method of matching the height standard of each three-dimensional point cloud data in advance is required.

3次元点群をスライスする前に各3次元点群データの高さの基準を合わせる方式として、多くの計測点で観測可能な床面を検出し、その床面を基準とする方法がある。例えば、法線が鉛直上向きの点群により形成される平面を全て抽出して高さが最も低い面を基準面とする方法1と、法線が鉛直上向きの点群により形成される平面を全て抽出して面積が最も大きい面を基準面とする方法2との2つの方法がある。   As a method of adjusting the height reference of each three-dimensional point cloud data before slicing the three-dimensional point cloud, there is a method of detecting a observable floor surface at many measurement points and using the floor surface as a reference. For example, a method 1 in which all planes formed by vertically upward point groups are extracted and the plane having the lowest height is used as a reference plane, and all planes formed by vertically upward point groups are used. There are two methods, Method 2 which is extracted and the surface having the largest area is used as the reference surface.

しかしながら、上記2つの方法のいずれを採用したとしても、オクルージョンの問題で位置合わせする2つの計測点で得られた点群データにおいて異なる平面を基準として選択してしまう状況が想定されるので、適用範囲に制約が生じる。   However, no matter which of the above two methods is adopted, a situation in which point plane data obtained by the two measurement points to be aligned is selected as a reference plane due to the problem of occlusion is assumed. There are restrictions on the range.

[方法1の失敗例]
図2Aは、オクルージョンの一例を示す図である。図2Aには、上記の方法1でオクルージョンにより高さの基準合わせが失敗する場面の一例が示されている。図2Aには、ポータブル型情報処理装置10が計測点M1に載置された状態で3次元点群データの計測が実施されると共に、ポータブル型情報処理装置10が計測点M2に載置された状態で3次元点群データの計測が実施される場合が示されている。さらに、図2Aには、計測点M1で計測された3次元点群データから抽出される平面のうち高さが最も低い面が太線の実線で示される一方で、計測点M2で計測された3次元点群データから抽出される平面のうち高さが最も低い面が太線の破線で示されている。図2Aに示す現場2Aには、床面よりも低い位置に階段の踊り場が存在する。かかる階段の踊り場は、計測点M2からはレーザが届く一方で、計測点M1からは階段が死角となってレーザが届かない。このオクルージョンによって、計測点M1で計測された3次元点群データからは床面が最低面として抽出される一方で、計測点M2で計測された3次元点群データからは階段の踊り場が最低面として抽出される。この結果、計測点M1及び計測点M2の間で基準面にずれが生じるので、高さの位置合わせに失敗する。
[Failure example of Method 1]
FIG. 2A is a diagram showing an example of occlusion. FIG. 2A shows an example of a situation in which height reference matching fails due to occlusion in the above method 1. In FIG. 2A, the three-dimensional point cloud data is measured with the portable information processing device 10 placed at the measurement point M1, and the portable information processing device 10 is placed at the measurement point M2. The case where the measurement of the three-dimensional point cloud data is performed in the state is shown. Further, in FIG. 2A, the surface with the lowest height among the planes extracted from the three-dimensional point cloud data measured at the measurement point M1 is shown by a thick solid line, while the 3 measured at the measurement point M2. Among the planes extracted from the dimensional point cloud data, the surface having the lowest height is indicated by a thick broken line. In the site 2A shown in FIG. 2A, a stair landing exists at a position lower than the floor surface. In the landing of such stairs, the laser reaches from the measurement point M2, but the laser does not reach from the measurement point M1 because the stairs become a blind spot. By this occlusion, the floor surface is extracted as the lowest surface from the three-dimensional point cloud data measured at measurement point M1, while the stair landing is the lowest surface from the three-dimensional point cloud data measured at measurement point M2. Is extracted as. As a result, the reference plane is displaced between the measurement point M1 and the measurement point M2, and the height alignment fails.

[方法2の失敗例]
図2Bは、オクルージョンの一例を示す図である。図2Bには、上記の方法2でオクルージョンにより高さの基準合わせが失敗する場面の一例が示されている。図2Bには、ポータブル型情報処理装置10が計測点M3に載置された状態で3次元点群データの計測が実施されると共に、ポータブル型情報処理装置10が計測点M4に載置された状態で3次元点群データの計測が実施される場合が示されている。さらに、図2Bには、計測点M3で計測された3次元点群データから抽出される平面のうち面積が最も大きい面が太線の実線で示される一方で、計測点M4で計測された3次元点群データから抽出される平面のうち面積が最も大きい面が太線の破線で示されている。図2Bに示す現場2Bは、会議室に大きめの会議卓が置かれており、計測点M3では、床面にポータブル型情報処理装置10が載置される一方で、計測点M4では、会議卓の机上にポータブル型情報処理装置10が載置される場合が示されている。この場合、計測点M3からは床面を広く走査できる一方で、会議卓の机上に載置される計測点M4からは会議卓に隠れて床面が一部しか走査できない。かかるオクルージョンによって、計測点M3で計測された3次元点群データからは床面が最も面積の大きい面として抽出される一方で、計測点M4で計測された3次元点群データからは会議卓の机上の面が最も面積の大きい面として抽出される。この結果、計測点M3及び計測点M4の間で基準面にずれが生じるので、高さの位置合わせに失敗する。
[Example of Method 2 failure]
FIG. 2B is a diagram showing an example of occlusion. FIG. 2B shows an example of a situation in which height reference matching fails due to occlusion in the above method 2. In FIG. 2B, three-dimensional point cloud data is measured with the portable information processing device 10 placed at the measurement point M3, and the portable information processing device 10 is placed at the measurement point M4. The case where the measurement of the three-dimensional point cloud data is performed in the state is shown. Further, in FIG. 2B, the plane having the largest area among the planes extracted from the three-dimensional point cloud data measured at the measurement point M3 is shown by a thick solid line, while the three-dimensional measurement at the measurement point M4 is performed. Among the planes extracted from the point cloud data, the surface having the largest area is indicated by the thick broken line. At the site 2B shown in FIG. 2B, a large conference table is placed in the conference room. At the measurement point M3, the portable information processing device 10 is placed on the floor, while at the measurement point M4, the conference table is installed. The case where the portable information processing device 10 is placed on the desk is shown. In this case, the floor surface can be widely scanned from the measurement point M3, while the floor surface can be partially scanned by the measurement point M4 placed on the table of the conference table, hidden behind the conference table. By such occlusion, the floor surface is extracted as the surface having the largest area from the three-dimensional point cloud data measured at the measurement point M3, while the floor space is extracted from the three-dimensional point cloud data measured at the measurement point M4. The surface on the desk is extracted as the surface with the largest area. As a result, a deviation occurs in the reference plane between the measurement points M3 and M4, and the height alignment fails.

これら図2A及び図2Bに示した通り、床面に限らず環境中の特定の場所を検出して基準にする方法では、計測点によってオクルージョンで基準としようとしている場所が一部または全部隠される状況に弱い。   As shown in FIGS. 2A and 2B, in the method of detecting a specific place in the environment, not limited to the floor surface, and using it as a reference, the measurement point hides a part or all of the place to be the reference for occlusion. Weak in the situation.

そこで、本実施例に係るポータブル型情報処理装置10では、床面などの特定の面に基準に求める高さの基準合わせは実施しない。つまり、本実施例に係るポータブル型情報処理装置10では、異なる計測点で計測される3次元点群の間で現場2の環境に存在する平面間の相対的な位置関係、すなわち平面間の高度差が一致するオフセット量を算出して高さの基準を合わせ、2次元のレジストレーションを実行することで、オクルージョンのある環境下で3次元点群データの合成精度を高める。   Therefore, the portable information processing apparatus 10 according to the present embodiment does not perform the height reference matching on a specific surface such as a floor. That is, in the portable information processing device 10 according to the present embodiment, the relative positional relationship between the planes existing in the environment of the site 2 between the three-dimensional point groups measured at different measurement points, that is, the altitude between the planes. By calculating an offset amount with which the differences match and matching the height reference, and performing two-dimensional registration, the synthesis accuracy of the three-dimensional point cloud data is increased in an environment with occlusion.

[ポータブル型情報処理装置10の構成]
図3は、実施例1に係るポータブル型情報処理装置10の機能的構成を示すブロック図である。図3に示すように、ポータブル型情報処理装置10は、表示部11と、記憶部13と、3次元点群データ取得部15と、制御部17とを有する。なお、ポータブル型情報処理装置10は、図3に示した機能部以外の他の機能部、例えば入力デバイスや通信インタフェースなどを有することとしてもかまわない。
[Configuration of Portable Information Processing Device 10]
FIG. 3 is a block diagram of the functional configuration of the portable information processing device 10 according to the first embodiment. As shown in FIG. 3, the portable information processing device 10 includes a display unit 11, a storage unit 13, a three-dimensional point cloud data acquisition unit 15, and a control unit 17. The portable information processing device 10 may have functional units other than the functional units shown in FIG. 3, such as an input device and a communication interface.

表示部11は、各種の情報を表示するデバイスである。   The display unit 11 is a device that displays various types of information.

一実施形態として、表示部11には、発光により表示を実現する液晶ディスプレイや有機EL(electroluminescence)ディスプレイ等を実装することもできるし、投影により表示を実現するプロジェクタ等を実装することもできるし、これらの両方を実装することもできる。かかる表示部11は、制御部17による指示にしたがって情報を表示することができるが、一例として、後述の位置合わせ部17cにより位置合わせが行われた3次元点群データ、あるいは当該3次元点群データがメッシュ化処理により変換された3次元のポリゴンデータなどを表示することができる。   As one embodiment, a liquid crystal display or an organic EL (electroluminescence) display that realizes display by light emission can be mounted on the display unit 11, or a projector or the like that realizes display by projection can be mounted. , Both of these can be implemented. The display unit 11 can display information according to an instruction from the control unit 17, but as an example, the three-dimensional point cloud data aligned by the alignment unit 17c described later, or the three-dimensional point cloud. It is possible to display three-dimensional polygon data or the like in which the data is converted by meshing processing.

記憶部13は、制御部17で実行されるOS(Operating System)を始め、上記のオフセット量の算出および2次元のレジストレーションを実現するアプリケーションプログラムなどの各種プログラムに用いられるデータを記憶する記憶デバイスである。   The storage unit 13 is a storage device that stores data used for various programs such as an OS (Operating System) executed by the control unit 17, an application program that realizes the above-described offset amount calculation and two-dimensional registration. Is.

一実施形態として、記憶部13は、ポータブル型情報処理装置10における補助記憶装置として実装することができる。例えば、記憶部13には、HDD(Hard Disk Drive)、光ディスクやSSD(Solid State Drive)などを採用できる。なお、記憶部13は、必ずしも補助記憶装置として実装されずともよく、ポータブル型情報処理装置10における主記憶装置として実装することもできる。この場合、記憶部13には、各種の半導体メモリ素子、例えばRAM(Random Access Memory)やフラッシュメモリを採用できる。   As an embodiment, the storage unit 13 can be implemented as an auxiliary storage device in the portable information processing device 10. For example, a HDD (Hard Disk Drive), an optical disk, an SSD (Solid State Drive), or the like can be used as the storage unit 13. It should be noted that the storage unit 13 does not necessarily have to be implemented as an auxiliary storage device, and may be implemented as a main storage device in the portable information processing device 10. In this case, various semiconductor memory devices such as a RAM (Random Access Memory) and a flash memory can be used as the storage unit 13.

例えば、記憶部13は、後述の位置合わせ部17cにより位置合わせが行われた3次元点群データ、あるいは当該3次元点群データがメッシュ化処理により変換された3次元のポリゴンデータなどを記憶することができる他、表示部11に表示させる作業の支援データに関するコンテンツなども記憶できる。   For example, the storage unit 13 stores three-dimensional point cloud data that has been aligned by the alignment unit 17c described later, or three-dimensional polygon data obtained by converting the three-dimensional point cloud data by meshing processing. Besides, the contents related to the work support data displayed on the display unit 11 can be stored.

3次元点群データ取得部15は、3次元点群データを取得する処理部である。   The three-dimensional point cloud data acquisition unit 15 is a processing unit that acquires three-dimensional point cloud data.

一実施形態として、3次元点群データ取得部15は、LRF(Laser Range Finder)などにより実装することができる。図4は、3次元点群データの計測方法の一例を示す図である。図4に示すように、3次元点群データ取得部15は、円筒の中心から円周に向かってX軸周りに光を照射し、その反射光を受光する走査を行うことにより、垂直断面Vsの距離を得ることができる。そして、3次元点群データ取得部15は、図示しないモータを駆動して、LRFをZ軸周りに回転させて上記の走査を繰り返すことにより、ポータブル型情報処理装置10の全周囲の距離を3次元点群データとして取得することができる。当然のことながら、3次元点群データ取得部15は、図2Aに示した現場2Aの計測点M1及びM2、あるいは図2Bに示した計測点M3及びM4などのように、1つの現場2で異なる複数の計測点ごとに3次元点群データを取得することができる。なお、3次元点群データ取得部15が起動される契機は、作業者3から計測ボタン等の指示操作を受け付けた場合であってもよく、ポータブル型情報処理装置10が載置されたことが検知された場合であってもかまわない。   As one embodiment, the three-dimensional point cloud data acquisition unit 15 can be implemented by an LRF (Laser Range Finder) or the like. FIG. 4 is a diagram showing an example of a method of measuring three-dimensional point cloud data. As shown in FIG. 4, the three-dimensional point cloud data acquisition unit 15 irradiates light around the X axis from the center of the cylinder toward the circumference, and performs scanning for receiving the reflected light, thereby obtaining a vertical cross section Vs. You can get the distance. Then, the three-dimensional point cloud data acquisition unit 15 drives a motor (not shown), rotates the LRF around the Z axis, and repeats the above-described scanning to set the distance around the entire circumference of the portable information processing device 10 to 3 It can be acquired as dimension point cloud data. As a matter of course, the three-dimensional point cloud data acquisition unit 15 can be used at one site 2 such as the measurement points M1 and M2 at the site 2A shown in FIG. 2A or the measurement points M3 and M4 shown at FIG. 2B. It is possible to acquire three-dimensional point cloud data for each of a plurality of different measurement points. The three-dimensional point cloud data acquisition unit 15 may be activated when an instruction operation such as a measurement button is received from the worker 3, and the portable information processing device 10 is placed. It does not matter even if it is detected.

制御部17は、各種のプログラムや制御データを格納する内部メモリを有し、これらによって各種の処理を実行するものである。   The control unit 17 has an internal memory that stores various programs and control data, and executes various processes by these.

一実施形態として、制御部17は、中央処理装置、いわゆるCPU(Central Processing Unit)として実装される。なお、制御部17は、必ずしも中央処理装置として実装されずともよく、MPU(Micro Processing Unit)やMCU(Micro Controller Unit)として実装されることとしてもよい。また、制御部17は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジックによっても実現できる。   As one embodiment, the control unit 17 is implemented as a central processing unit, so-called CPU (Central Processing Unit). The control unit 17 does not necessarily have to be implemented as a central processing unit, and may be implemented as an MPU (Micro Processing Unit) or an MCU (Micro Controller Unit). The control unit 17 can also be realized by a hard-wired logic such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).

制御部17は、図示しない主記憶装置として実装されるDRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などのRAMのワークエリア上に、上記のオフセット量の算出および2次元のレジストレーションを実現するアプリケーションプログラムとして記憶された情報合成プログラムをプロセスとして展開することにより、下記の処理部を仮想的に実現する。   The control unit 17 calculates the offset amount and performs two-dimensional registration on a work area of a RAM such as a DRAM (Dynamic Random Access Memory) or an SRAM (Static Random Access Memory) implemented as a main storage device (not shown). The following processing unit is virtually realized by developing the information composition program stored as an application program for realizing the above as a process.

図3に示すように、制御部17は、平面抽出部17aと、オフセット量算出部17bと、位置合わせ部17cとを有する。   As shown in FIG. 3, the control unit 17 includes a plane extraction unit 17a, an offset amount calculation unit 17b, and a position alignment unit 17c.

平面抽出部17aは、3D点群データから現場2の平面を抽出する処理部である。   The plane extraction unit 17a is a processing unit that extracts the plane of the site 2 from the 3D point cloud data.

一実施形態として、平面抽出部17aは、RANSACなどのアルゴリズムにしたがって、3次元点群データ取得部15により取得された3次元点群データに含まれる3次元点群が形成する平面を抽出する。例えば、平面抽出部17aは、3次元点群データに含まれる3次元点群をサンプルとし、当該サンプルから3つの点をランダムに抽出する。続いて、平面抽出部17aは、3次元点群データに含まれる3次元点群のうち、サンプルからランダムに抽出された3点により定まる平面モデルから所定の距離以内にある点群をさらに抽出する。ここで、平面モデルから所定の距離以内にある点群を平面モデル上に存在する点群とみなし、以降の処理を説明することとする。その上で、平面抽出部17aは、平面モデル上に存在する点群の数が所定の閾値以上であるか否かを判定する。このとき、平面抽出部17aは、平面モデル上の点群が閾値以上である場合、平面モデルを定義するパラメータ、例えば3点の座標または平面の方程式等と、当該平面モデルに含まれる点群とが対応付けられた平面データを内部メモリ上のワークエリアに保存する。一方、平面抽出部17aは、平面モデル上に存在する点群の数が閾値未満である場合、当該平面モデルに関する平面データを保存しない。その後、平面抽出部17aは、サンプルからの3点のランダムサンプリング及びそれに伴う平面データの保存を所定の試行回数にわたって繰り返し実行する。このような平面抽出方法によって、一定数以上の点群が平面モデルからの法線方向へ向けて一定距離内にある平面モデルを求めることができる。以下では、平面モデルにより規定される平面上で3次元点群が所定の密度以上で存在する部分のことを「平面」と記載する場合がある。   As one embodiment, the plane extraction unit 17a extracts a plane formed by the three-dimensional point cloud included in the three-dimensional point cloud data acquired by the three-dimensional point cloud data acquisition unit 15 according to an algorithm such as RANSAC. For example, the plane extraction unit 17a uses the three-dimensional point cloud included in the three-dimensional point cloud data as a sample, and randomly extracts three points from the sample. Subsequently, the plane extraction unit 17a further extracts, from the three-dimensional point group included in the three-dimensional point group data, a point group within a predetermined distance from the plane model defined by the three points randomly extracted from the sample. .. Here, the point group within a predetermined distance from the plane model is regarded as the point group existing on the plane model, and the subsequent processing will be described. Then, the plane extraction unit 17a determines whether the number of point groups existing on the plane model is equal to or larger than a predetermined threshold value. At this time, when the point group on the plane model is greater than or equal to the threshold, the plane extracting unit 17a determines the parameters defining the plane model, such as the coordinates of three points or the equation of the plane, and the point group included in the plane model. The plane data associated with is stored in the work area on the internal memory. On the other hand, when the number of point groups existing on the plane model is less than the threshold value, the plane extraction unit 17a does not store the plane data regarding the plane model. After that, the plane extraction unit 17a repeatedly executes random sampling of three points from the sample and storage of the plane data accompanying the random sampling for a predetermined number of trials. With such a plane extraction method, it is possible to obtain a plane model in which a certain number or more of point groups are within a certain distance in the normal direction from the plane model. Below, the part where the three-dimensional point group exists at a predetermined density or more on the plane defined by the plane model may be referred to as a “plane”.

ここで、平面抽出部17aは、複数の計測点で計測された3次元点群データごとに当該3次元点群データから水平面を抽出することもできる。この場合、平面抽出部17aは、各計測点の3次元点群データの間で水平面の方向を算出する。そして、平面抽出部17aは、各計測点の3次元点群データごとに当該3次元点群データに含まれる各点が持つ座標をZ軸の正方向が水平面の法線方向となるように変換する。その上で、平面抽出部17aは、上述の通り、RANSACなどのアルゴリズムにしたがって、各計測点の3次元点群データごとに当該3次元点群データから水平面を抽出する。   Here, the plane extraction unit 17a can also extract a horizontal plane from the three-dimensional point cloud data for each of the three-dimensional point cloud data measured at a plurality of measurement points. In this case, the plane extraction unit 17a calculates the direction of the horizontal plane between the three-dimensional point group data of each measurement point. Then, the plane extraction unit 17a converts the coordinates of each point included in the three-dimensional point group data for each three-dimensional point group data of each measurement point such that the positive direction of the Z axis is the normal direction of the horizontal plane. To do. Then, as described above, the plane extraction unit 17a extracts a horizontal plane from the 3D point cloud data for each 3D point cloud data of each measurement point according to an algorithm such as RANSAC.

さらに、平面抽出部17aは、次のような基準にしたがって2つ以上の任意の数の3次元点群データをレジストレーションの実行対象としてグループ化できる。例えば、平面抽出部17aは、3次元点群データ取得部15により3次元点群データが取得される度に、当該3次元点群データをそれまでに取得された3次元点群データとグループ化することにより、レジストレーションの実行対象とすることができる。さらに、平面抽出部17aは、過去に取得された3次元点群データの中でも所定の期間、例えば10分間以内に取得された3次元点群データに絞ってグループ化することもできる。また、平面抽出部17aは、グループ化を行う3次元点群データの組合せを図示しない入力デバイスを介して受け付けることもできる。   Furthermore, the plane extracting unit 17a can group any number of two or more three-dimensional point cloud data as registration execution targets according to the following criteria. For example, each time the three-dimensional point cloud data acquisition unit 15 acquires the three-dimensional point cloud data, the plane extraction unit 17a groups the three-dimensional point cloud data with the previously acquired three-dimensional point cloud data. By doing so, registration can be performed. Furthermore, the plane extracting unit 17a can also perform grouping by narrowing down to three-dimensional point cloud data acquired within a predetermined period, for example, 10 minutes, among the three-dimensional point cloud data acquired in the past. The plane extraction unit 17a can also accept a combination of three-dimensional point cloud data to be grouped, via an input device (not shown).

このように、各計測点の3次元点群データごとに当該3次元点群データから水平面が抽出されると、平面抽出部17aは、各水平面の高さ(z座標)、例えば図4に示したLRFにより照射されるレーザ光源の位置を原点とする高さを算出する。   In this way, when the horizontal plane is extracted from the three-dimensional point cloud data for each three-dimensional point cloud data of each measurement point, the plane extraction unit 17a indicates the height (z coordinate) of each horizontal plane, for example, shown in FIG. The height with the origin of the position of the laser light source irradiated by the LRF is calculated.

オフセット量算出部17bは、異なる計測点間のオフセット量を算出する処理部である。ここで言う「オフセット量」とは、各計測点間の高さの基準の差を指し、この差が調整されることにより各計測点の高さが揃う。   The offset amount calculation unit 17b is a processing unit that calculates the offset amount between different measurement points. The “offset amount” here refers to a difference in height between the measurement points, and the heights of the measurement points are adjusted by adjusting the difference.

[オフセット量の問題定義]
ここで、オフセット量算出部17bは、床面など特定の場所の検出に依存しないオフセット量の算出方法を用いる。すなわち、現場2等の環境中に存在する水平面は、床や天井、テーブルなど広がりをもつものが多く、2つの計測点が大きく離れていなければ、多くの場合、共通の水平面を2つ以上検出できる可能性が高いという知見を利用する。また、レーザスキャナの計測精度は高いので、異なる計測点における3次元点群データであっても共通の水平面間の距離はほぼ同じ値として検出できる。
[Definition of offset amount problem]
Here, the offset amount calculation unit 17b uses a method of calculating an offset amount that does not depend on detection of a specific place such as a floor surface. That is, many horizontal planes existing in the environment such as the site 2 have a floor, a ceiling, a table, and the like, and in many cases, two or more common horizontal planes can be detected unless the two measurement points are widely separated. Use the finding that it is likely. Further, since the measurement accuracy of the laser scanner is high, the distance between the common horizontal planes can be detected as substantially the same value even for the three-dimensional point group data at different measurement points.

このことから、オフセット量算出部17bは、各計測点で抽出された全水平面の相対的な位置関係(距離)を特徴として面の対応をマッチングすることで、オフセット量を求めることができる。   From this, the offset amount calculation unit 17b can obtain the offset amount by matching the correspondence of the faces with the relative positional relationship (distance) of all horizontal planes extracted at each measurement point as a feature.

図5は、水平面の高さの集合の一例を示す図である。図5には、図2Bに示したオクルージョンが発生する現場2Bが示されている。図5には、計測点M3で計測された3次元点群データから抽出される水平面の高さの集合と、計測点M4で計測された3次元点群データから抽出される水平面の高さの集合とが示されている。図5に示すように、オフセット量算出部17bは、計測点M3及びM4の3次元点群データごとに当該3次元点群データから水平面が抽出されると、各水平面の高さ(z座標)、例えば図4に示したLRFにより照射されるレーザ光源の位置を原点とする高さを算出する。この場合、計測点M3で計測された3次元点群データから抽出される水平面の高さの集合として、H{h11,h12,h13}が得られると共に、計測点M4で計測された3次元点群データから抽出される水平面の高さの集合として、H{h21,h22,h23,h24}が得られる。なお、上記の例では、集合Hのうちh12及びh13が負の値をとると共に、集合Hのうちh22、h23及びh24が負の値をとることになる。 FIG. 5 is a diagram showing an example of a set of horizontal plane heights. FIG. 5 shows a site 2B where the occlusion shown in FIG. 2B occurs. FIG. 5 shows a set of heights of the horizontal plane extracted from the three-dimensional point cloud data measured at the measurement point M3 and a height of the horizontal plane extracted from the three-dimensional point cloud data measured at the measurement point M4. And the set is shown. As shown in FIG. 5, when the horizontal plane is extracted from the three-dimensional point cloud data for each of the three-dimensional point cloud data of the measurement points M3 and M4, the offset amount calculation unit 17b determines the height (z coordinate) of each horizontal plane. For example, the height with the origin of the position of the laser light source irradiated by the LRF shown in FIG. 4 is calculated. In this case, H 1 {h 11 , h 12 , h 13 } is obtained as a set of heights of the horizontal plane extracted from the three-dimensional point cloud data measured at the measurement point M3, and is also measured at the measurement point M4. H 2 {h 21 , h 22 , h 23 , h 24 } is obtained as a set of horizontal plane heights extracted from the three-dimensional point cloud data. In the above example, h 12 and h 13 of the set H 1 have negative values, and h 22 , h 23, and h 24 of the set H 2 have negative values.

このようにして得られた高さの値に関する2つの集合データは、データ間で計測が行われた高さが異なるので、同じ水平面に関する高さを表していてもその高さの値は異なる。この高さの基準の差が求めたいオフセット量である。このとき、同一の水平面であってもデータ間で高さの値は同じにならないが、図5に示す例で言えば、床面と会議卓の机上の水平面との距離、会議卓の机上の水平面と天面との距離、床面と天面との距離などといったように同じ水平面の組み合わせで距離を計算すれば3次元点群データ間で多少の計測誤差はあっても略同一の値が得られる可能性が高い。よって、水平面間の距離を特徴として3次元点群データ間で対応する面を探索することが可能である。例えば、計測点M4で計測された3次元点群データから抽出された水平面間の距離のうち、計測点M3で計測された3次元点群データから抽出された水平面間の距離、すなわち床面および天面の距離(h11−h13)と近い距離(h21−h23)を探索する。 The two sets of data on the height values thus obtained have different measured heights between the data, and therefore the height values are different even if they represent the height on the same horizontal plane. The difference between the height standards is the offset amount to be obtained. At this time, the height values do not become the same between the data even on the same horizontal plane, but in the example shown in FIG. 5, the distance between the floor surface and the horizontal plane on the desk of the conference table, If the distances are calculated by the combination of the same horizontal planes such as the distance between the horizontal plane and the top surface and the distance between the floor surface and the top surface, the three-dimensional point cloud data will have substantially the same value even if there is some measurement error. It is likely to be obtained. Therefore, it is possible to search for a corresponding surface among the three-dimensional point cloud data by using the distance between the horizontal planes as a feature. For example, of the distances between the horizontal planes extracted from the three-dimensional point cloud data measured at the measurement point M4, the distances between the horizontal planes extracted from the three-dimensional point cloud data measured at the measurement point M3, that is, the floor surface and searching for a distance of the top face (h 11 -h 13) close distance (h 21 -h 23).

これら3次元点群データの間で対応する水平面間の距離が同じであるという事実は、別の見方をすると、正しい高さの基準のオフセット量Δhを求めて高さの値を変換すると、3次元点群データの間で同じ高さの値が複数得られるということを意味する。図6は、水平面の高さの集合とオフセット量Δhの関係を示す図である。図6には、集合Hの各要素が実線の太線で示される一方で、集合Hの各要素が一点鎖線の太線で示されている。図6の左部に示す集合H及び集合Hに関する正解がオフセット量Δhである場合、図6の右部に示すように、集合Hに含まれる各要素にオフセット量Δhを加算する補正を行うと、集合Hのh11と集合Hのh21の高さが一致すると共に集合Hのh14と集合Hのh23の高さが一致する。このように、正しい高さの基準のオフセット量Δhを求めて高さの値を変換すると、3次元点群データの間で同じ高さの値が複数得られる可能性が高い。このことから、オフセット量Δhを求める問題として解くことが可能である。 The fact that the distances between corresponding horizontal planes are the same among these three-dimensional point cloud data is that, from another perspective, when the height offset value is converted by obtaining the reference offset amount Δh of the correct height, 3 This means that a plurality of values of the same height can be obtained among the dimension point cloud data. FIG. 6 is a diagram showing the relationship between the set of heights of the horizontal plane and the offset amount Δh. In FIG. 6, each element of the set H 1 is shown by a solid thick line, while each element of the set H 2 is shown by a dashed-dotted thick line. When the correct answer for the set H 1 and the set H 2 shown in the left part of FIG. 6 is the offset amount Δh, a correction for adding the offset amount Δh to each element included in the set H 2 as shown in the right part of FIG. Doing the height of the set H 1 of h 14 a set of H 2 h 23 with height h 21 of the set between H 2 h 11 set H 1 matches match. As described above, when the reference offset amount Δh of the correct height is obtained and the height value is converted, it is highly possible that a plurality of values of the same height are obtained among the three-dimensional point cloud data. From this, it is possible to solve it as a problem of obtaining the offset amount Δh.

[パラメータの定義]
ここで、異なる計測点で計測された第1の3次元点群データから抽出される水平面の高さの集合をHとし、第2の3次元点群データから抽出される水平面の高さの集合をHとしたとき、集合H及び集合Hは下記の数列で表すことができる。
[Parameter definition]
Here, a set of heights of the horizontal plane extracted from the first three-dimensional point cloud data measured at different measurement points is H 1, and the height of the horizontal plane extracted from the second three-dimensional point cloud data is When the set is H 2 , the set H 1 and the set H 2 can be represented by the following numerical sequences.

={h11,h12,…,h1i,…,h1M
={h21,h22,…,h2j,…,h2N
H 1 = {h 11 , h 12 , ..., H 1i , ..., h 1M }
H 2 = {h 21 , h 22 , ..., h 2j , ..., h 2N }

このとき、オフセット量をΔhとして、オフセット量Δhの補正後の第2の3次元点群データから抽出された水平面の高さの集合H´を次のように表す。 At this time, assuming that the offset amount is Δh, a set H 2 ′ of horizontal plane heights extracted from the corrected second three-dimensional point cloud data of the offset amount Δh is represented as follows.

´={h21´,h22´,…,h2j´,…,h2N´}
={h21+Δh,h22+Δh,…,h2j+Δh,…,h2N+Δh}
H 2 '= {h 21' , h 22 ', ..., h 2j', ..., h 2N '}
= {H 21 + Δh, h 22 + Δh, ..., h 2j + Δh, ..., h 2N + Δh}

[オフセット量Δhの算出方法1]
一実施形態として、オフセット量算出部17bは、HとH´の一致度を表す、下記の式(1)の評価関数Eを用いてオフセット量Δhを求める。すなわち、オフセット量算出部17bは、下記の式(2)に示す最大高度差Dにより定まる下記の式(3)の不等号の範囲内でオフセット量Δhを所定のシフト量ずつ変化させ、下記の式(1)の評価関数Eを最小化するオフセット量Δhを求める。下記の式(1)に示す評価関数Eでは、値が小さいほどHとH´の一致度が高いことを意味する。
[Calculation Method 1 of Offset Amount Δh]
As one embodiment, the offset amount calculation unit 17b obtains the offset amount Δh using the evaluation function E of the following formula (1), which represents the degree of coincidence between H 1 and H 2 ′. That is, the offset amount calculation unit 17b changes the offset amount Δh by a predetermined shift amount within the range of the inequality sign in the following formula (3) determined by the maximum altitude difference D shown in the following formula (2), and An offset amount Δh that minimizes the evaluation function E of (1) is obtained. In the evaluation function E shown in the following formula (1), the smaller the value, the higher the degree of coincidence between H 1 and H 2 ′.

E=ΣΣlog(1+|h1i−h2j´|)・・・(1)
D=maxi,j|h1i−h2j|・・・(2)
−D≦Δh≦D・・・(3)
E = Σ i Σ j log (1+ | h 1i −h 2j ′ |) (1)
D = max i, j | h 1i −h 2j | ... (2)
-D ≦ Δh ≦ D (3)

ここで、評価関数内のlog(1+d)は、上に凸な関数であるため、同じ量近づくのであれば遠くよりも近くの方がより値を小さくできる関数である(近い方が傾きが急)。図7は、高さの集合の一例を示す図である。図7では、説明の便宜上、集合Hの要素としてh11が含まれる一方で、集合H´の要素としてh21´及びh22´が含まれる状況に簡略化して説明を行う。さらに、図7には、高さh11と高さh21´とが一致する状態S1を左側に示す一方で、そこからオフセット量Δhをシフト量aにわたって変化させた状態S2を右側に示す。図7に示す例の場合、状態S1及び状態S2の間で高さh11に対するh21´及びh22´の距離の総和は同値となるが、上記の式(1)にしたがって評価値を算出することにより、状態S1で算出される評価値の方が状態S2で算出される評価値よりも低く、すなわち一致度を高く算出させることができる。 Here, log (1 + d) in the evaluation function is a function that is convex upward, so that if the same amount is approached, it is a function that can make the value smaller nearer than far away (the closer the slope is, the steeper the slope is). ). FIG. 7 is a diagram illustrating an example of a set of heights. In FIG. 7, for the sake of convenience of description, a situation in which h 11 is included as an element of the set H 1 and h 21 ′ and h 22 ′ are included as elements of the set H 2 ′ is simply described. Further, in FIG. 7, a state S1 in which the height h 11 and the height h 21 ′ are the same is shown on the left side, while a state S2 in which the offset amount Δh is changed over the shift amount a is shown on the right side. In the case of the example shown in FIG. 7, the sum of the distances of h 21 ′ and h 22 ′ with respect to the height h 11 is the same between the states S1 and S2, but the evaluation value is calculated according to the above formula (1). By doing so, the evaluation value calculated in the state S1 can be calculated lower than the evaluation value calculated in the state S2, that is, the matching degree can be calculated higher.

図8は、評価値の一例を示す図である。図8の左部には、図7に示した状態S1で算出される評価値が示される一方で、図8の右部には、図7に示した状態S2で算出される評価値が示されている。図8の左部に示す通り、状態S1の場合、上記の式(1)にしたがって評価値Eはe+eにより計算される。このうち、eは、高さh11と高さh21´とが一致するので、log(1+|h11−h21´|)は「0」となる一方で、eは、log(1+|h11−h22´|)と算出される。一方、図8の右部に示す通り、状態S2の場合、上記の式(1)にしたがって評価値Eはe+eにより計算される。このうち、eは、log(1+|h11−h21´|)と算出されると共にeは、log(1+|h11−h22´|)と算出される。このとき、eは、eに比べてシフト量aの分、h21´がh11から離れることによりその値が大きくなる一方で、eは、eに比べてシフト量aの分、h22´がh11に近づくことによりその値が小さくなるが、log(1+d)が上に凸な関数であるため、増分が減少分より大きくなる。したがって、状態S1で算出される評価値の方が状態S2で算出される評価値よりも低く、すなわち一致度が高く算出させることができる。一方で、評価関数の傾きを「1」とする場合、すなわち評価関数をΣΣ|h1i−h2j´|とする場合は増分と減少分が同じになり評価値に差が生じず、一致度の評価関数としては適さない。 FIG. 8 is a diagram showing an example of the evaluation value. The left part of FIG. 8 shows the evaluation values calculated in the state S1 shown in FIG. 7, while the right part of FIG. 8 shows the evaluation values calculated in the state S2 shown in FIG. Has been done. As shown in the left part of FIG. 8, in the case of the state S1, the evaluation value E is calculated by e 1 + e 2 according to the above equation (1). Among these, e 1 has the same height h 11 and height h 21 ′, so log (1+ | h 11 −h 21 ′ |) is “0”, while e 2 is log ( 1+ | h 11 −h 22 ′ |) is calculated. On the other hand, as shown in the right part of FIG. 8, in the case of the state S2, the evaluation value E is calculated by e 3 + e 4 according to the above equation (1). Among, e 3 is, log | '| e 4 together with the calculated, log ((1+ | h 11 -h 22 1+ h 11 -h 21)' |) to be calculated. At this time, e 3 becomes larger by the shift amount a than e 1, and the value becomes larger as h 21 ′ moves away from h 11 , while e 4 becomes larger by the shift amount a than e 2. , H 22 ′ becomes smaller as h 22 ′ approaches h 11 , but since log (1 + d) is a convex function, the increment becomes larger than the decrement. Therefore, the evaluation value calculated in the state S1 is lower than the evaluation value calculated in the state S2, that is, the degree of coincidence can be calculated higher. On the other hand, when the slope of the evaluation function is “1”, that is, when the evaluation function is Σ i Σ j | h 1i −h 2j ′ |, the increment and decrease are the same and there is no difference in the evaluation value. , Is not suitable as a matching evaluation function.

[オフセット量Δhの算出方法2]
他の実施形態として、オフセット量算出部17bは、集合H及び集合Hから1つずつ高さの値を取り出す組合せごとに、当該組合せに関する高さが一致するオフセット量Δhを計算する。続いて、オフセット量算出部17bは、当該オフセット量ΔhでH及びH´の高さが所定の範囲、例えば±α内におさまる個数cijを算出する。その上で、オフセット量算出部17bは、全ての組合せについて個数cijを算出し、最大の個数を与えるオフセット量Δhを求める。
[Calculation Method 2 of Offset Amount Δh]
As another embodiment, the offset amount calculation unit 17b calculates, for each combination of height values from the set H 1 and the set H 2, an offset amount Δh with which the heights of the combinations match. Subsequently, the offset amount calculation unit 17b calculates the number c ij in which the heights of H 1 and H ′ 2 are within a predetermined range, for example ± α, with the offset amount Δh. Then, the offset amount calculation unit 17b calculates the number c ij for all the combinations, and obtains the offset amount Δh that gives the maximum number.

これらオフセット量Δhの算出方法1及び算出方法2は、適応的に切り替えて用いることもできる。例えば、オフセット量算出部17bは、各の計測点の間で、互いに抽出される水平面の数の積が所定の閾値以上である場合、上記の算出方法1を採用し、閾値未満である場合、上記の算出方法2を採用することにより、演算量に応じてアルゴリズムを切り替えることができる。   The calculation method 1 and the calculation method 2 of the offset amount Δh can be adaptively switched and used. For example, the offset amount calculation unit 17b adopts the above calculation method 1 when the product of the number of horizontal planes extracted from each measurement point is equal to or more than a predetermined threshold, and when the product is less than the threshold, By adopting the above calculation method 2, the algorithm can be switched according to the calculation amount.

位置合わせ部17cは、異なる計測点間の3次元点群データの位置合わせ、いわゆるレジストレーションを行う処理部である。   The alignment unit 17c is a processing unit that performs alignment of three-dimensional point cloud data between different measurement points, that is, registration.

一実施形態として、位置合わせ部17cは、オフセット量算出部17bにより算出されたオフセット量Δhにしたがって各計測点の3次元点群データの間で高さの基準を合わせる。すなわち、位置合わせ部17cは、異なる計測点で計測された3次元点群データのうち集合Hが割り当てられた方の3次元点群データ、すなわち第2の3次元点群データに含まれる各点にオフセット量Δhを加算する。その後、位置合わせ部17cは、下記の関連文献1に記載があるように、位置合わせの対象とする3次元点群データそれぞれについて所定の高さの区間に含まれる3次元点群を所定の面、例えば床面に投影することにより2次元の水平方向のスライスデータを抽出し、これらを2次元でレジストレーションを行う。 As one embodiment, the alignment unit 17c aligns the height reference between the three-dimensional point cloud data of each measurement point according to the offset amount Δh calculated by the offset amount calculation unit 17b. That is, the alignment unit 17c includes the 3D point cloud data to which the set H 2 is assigned among the 3D point cloud data measured at different measurement points, that is, each included in the second 3D point cloud data. The offset amount Δh is added to the point. After that, as described in Related Document 1 below, the alignment unit 17c sets the three-dimensional point cloud included in the section of the predetermined height for each of the three-dimensional point cloud data to be aligned to a predetermined plane. For example, two-dimensional horizontal slice data is extracted by projecting onto the floor surface, and these are two-dimensionally registered.

[関連文献1]“大規模環境の統合点群モデルの自動生成(第三報)
点群ペア位置合せとマッチ判定による複数点群の完全自動位置合せ”
松山雄介、伊達宏昭、金井理、2014年度精密工学会春季大会、セッションID: E45
[Related Document 1] "Automatic generation of integrated point cloud model for large-scale environment (3rd report)
Fully automatic alignment of multiple point clouds by point cloud pair alignment and match judgment ”
Yusuke Matsuyama, Hiroaki Date, Osamu Kanai, 2014 JSPE Spring Conference, Session ID: E45

この他、位置合わせ部17cは、下記の関連文献2に記載された方法で、同じ高さで各3次元点群をスライスして抽出した2次元点群について水平面内で位置合わせすることとしてもかまわない。   In addition, the alignment unit 17c may align the two-dimensional point group extracted by slicing each three-dimensional point group at the same height in the horizontal plane by the method described in Related Document 2 below. I don't care.

[関連文献2]友納正裕,“ユークリッド変換に不変な特徴量を用いた二次元大域スキャンマッチング方式,日本ロボット学会誌,Vol. 25,No. 3,pp390〜401(2007)”   [Related document 2] Masahiro Tomono, “Two-dimensional global scan matching method using invariant features in Euclidean transformation, Journal of the Robotics Society of Japan, Vol. 25, No. 3, pp390-401 (2007)”

これを説明すると、2次元点群は、各点の法線を周囲の点の位置から計算することができ、方向つき点群を得ることができる。データ間で方向付き点の対応が1つ決まると2次元の場合、位置合わせのための座標変換パラメータ(x,y,θ)が求まる。そこで、方向付き点の対応候補を他の点の位置関係から評価して所定数に絞り込む。これにより、座標変換の候補が絞り込まれるので、各候補について位置合わせの誤差を最小化する詳細位置合わせ処理を行った上で残差を評価し、最も残差が少なかった位置合わせ結果を採用する。これによって、2次元のレジストレーションを実現できる。   To explain this, in the two-dimensional point cloud, the normal line of each point can be calculated from the positions of the surrounding points, and the point cloud with directions can be obtained. In the case of two dimensions, if one correspondence between data points is determined, the coordinate conversion parameter (x, y, θ) for alignment is obtained. Therefore, the correspondence candidates of the directional points are evaluated from the positional relationship of other points and narrowed down to a predetermined number. As a result, candidates for coordinate conversion are narrowed down. Therefore, after performing a detailed alignment process for minimizing the alignment error for each candidate, the residual is evaluated and the alignment result with the smallest residual is adopted. .. Thereby, two-dimensional registration can be realized.

このように1つに統合された3次元点群データにメッシュ化処理を行うことにより、3次元の面データに変換することもできる。これら1つに統合された3次元点群データまたは3次元の面データを用いることにより、作業者3を支援する支援データを作成し、プロジェクションARにより投影することもできる。   By performing meshing processing on the three-dimensional point group data integrated into one as described above, the data can be converted into three-dimensional surface data. By using the three-dimensional point cloud data or the three-dimensional surface data integrated into one of these, support data for supporting the worker 3 can be created and projected by the projection AR.

[処理の流れ]
次に、本実施例に係るポータブル型情報処理装置10の処理の流れについて説明する。図9は、実施例1に係る全体処理の手順を示すフローチャートである。この処理は、3次元点群データ取得部15により異なる計測点で計測された3次元点群データがレジストレーションの実行対象としてグループ化された場合に開始される。
[Process flow]
Next, a processing flow of the portable information processing device 10 according to the present embodiment will be described. FIG. 9 is a flowchart illustrating the procedure of the overall process according to the first embodiment. This process is started when the three-dimensional point cloud data acquisition unit 15 groups the three-dimensional point cloud data measured at different measurement points as a registration execution target.

図9に示すように、平面抽出部17aは、ポータブル型情報処理装置10のセンサ座標系の高さ方向、すなわちZ軸を基準に、各計測点の3次元点群データごとに水平面の法線方向を算出する(ステップS101)。   As shown in FIG. 9, the plane extraction unit 17a uses the height direction of the sensor coordinate system of the portable information processing apparatus 10, that is, the Z axis as a reference, and the normal line of the horizontal plane for each three-dimensional point cloud data of each measurement point. The direction is calculated (step S101).

そして、平面抽出部17aは、各計測点の3次元点群データごとに当該3次元点群データに含まれる各点が持つ座標をZ軸の正方向が水平面の法線方向となるように変換する(ステップS102)。その上で、平面抽出部17aは、RANSACなどのアルゴリズムにしたがって、各計測点の3次元点群データごとに当該3次元点群データから水平面を抽出する(ステップS103)。   Then, the plane extraction unit 17a converts the coordinates of each point included in the three-dimensional point group data for each three-dimensional point group data of each measurement point such that the positive direction of the Z axis is the normal direction of the horizontal plane. Yes (step S102). Then, the plane extraction unit 17a extracts a horizontal plane from the three-dimensional point cloud data for each three-dimensional point cloud data of each measurement point according to an algorithm such as RANSAC (step S103).

その後、オフセット量算出部17bは、各計測点の3次元点群データごとに当該3次元点群データから抽出された各水平面の高さ(z座標)、例えば図4に示したLRFにより照射されるレーザ光源の位置を原点とする高さを算出する(ステップS104)。   After that, the offset amount calculation unit 17b is irradiated with the height (z coordinate) of each horizontal plane extracted from the three-dimensional point group data of each measurement point, for example, the LRF shown in FIG. The height with the position of the laser light source as the origin is calculated (step S104).

そして、オフセット量算出部17bは、各計測点で抽出された全水平面の相対的な位置関係(距離)を特徴として面の対応をマッチングすることにより、オフセット量Δhを算出する(ステップS105)。   Then, the offset amount calculation unit 17b calculates the offset amount Δh by matching the correspondence of the faces using the relative positional relationship (distance) of all horizontal planes extracted at each measurement point as a feature (step S105).

続いて、位置合わせ部17cは、ステップS105で得られたオフセット量Δhにしたがって計測点の3次元点群データの各点の位置を補正する(ステップS106)。その上で、位置合わせ部17cは、3次元点群データそれぞれについて水平方向に同じ高さでスライスされた2次元点群データを抽出する(ステップS107)。その後、位置合わせ部17cは、図10に示すように、2次元点群でレジストレーションを実行し(ステップS108)、処理を終了する。   Subsequently, the alignment unit 17c corrects the position of each point of the three-dimensional point cloud data of the measurement point according to the offset amount Δh obtained in step S105 (step S106). Then, the alignment unit 17c extracts the two-dimensional point cloud data sliced horizontally at the same height for each of the three-dimensional point cloud data (step S107). After that, the alignment unit 17c executes registration with the two-dimensional point group as shown in FIG. 10 (step S108), and ends the process.

[レジストレーション処理]
図10は、実施例1に係るレジストレーション処理の手順を示すフローチャートである。図10に示すように、位置合わせ部17cは、ステップS107で抽出された一方の2次元点群を基準点群とし、他方の2次元点群を補正点群とし、基準点群と補正点群の各点について法線方向を算出する(ステップS301)。具体的には、位置合わせ部17cは、注目する点の周囲の一定距離範囲に存在する点の中で最も離れた2点を抽出してその2点と直交し、原点、すなわちLRFにより照射されるレーザ光源の位置の方向に向かうベクトルを法線ベクトルとして算出する。
[Registration processing]
FIG. 10 is a flowchart of a registration process procedure according to the first embodiment. As shown in FIG. 10, the alignment unit 17c sets one of the two-dimensional point groups extracted in step S107 as a reference point group, the other two-dimensional point group as a correction point group, and the reference point group and the correction point group. A normal direction is calculated for each point (step S301). Specifically, the alignment unit 17c extracts the two points that are farthest apart from the points existing in the constant distance range around the point of interest, is orthogonal to the two points, and is irradiated by the origin, that is, the LRF. The vector that goes in the direction of the position of the laser light source is calculated as the normal vector.

続いて、位置合わせ部17cは、基準点群と補正点群の間の点対応候補を複数抽出する(ステップS302)。具体的には、位置合わせ部17cは、各点の位置と法線方向を基準に座標系が定義された時の他の点の位置関係を特徴(シグネチャ)として、各点の組合せについてシグネチャの一致度を評価し、所定値以上の一致度のものを点対応候補として抽出する。   Then, the alignment unit 17c extracts a plurality of point correspondence candidates between the reference point group and the correction point group (step S302). Specifically, the alignment unit 17c uses the positional relationship of other points when the coordinate system is defined with reference to the position of each point and the normal direction as a feature (signature), and uses the signature of each combination of points as a signature. The degree of coincidence is evaluated, and those having a degree of coincidence equal to or higher than a predetermined value are extracted as point correspondence candidates.

その後、位置合わせ部17cは、各点対応ごとに座標変換パラメータ(Δx,Δy,Δθ)を算出する(ステップS303)。具体的には、位置合わせ部17cは、2つの異なる計測点で得られた各2次元点群の間で対応する、すなわち同じ場所を計測した点が1つ決まれば、座標変換パラメータを算出することができる。   Then, the alignment unit 17c calculates coordinate conversion parameters (Δx, Δy, Δθ) for each point correspondence (step S303). Specifically, the alignment unit 17c calculates the coordinate conversion parameter if the two-dimensional point groups obtained at the two different measurement points correspond to each other, that is, if one point at the same location is determined. be able to.

続いて、位置合わせ部17cは、ステップS303で得られた複数の座標変換パラメータをクラスタリングして要素数が所定数以上であるクラスタの重心の座標変換パラメータを算出する(ステップS304及びステップS305)。   Then, the alignment unit 17c clusters the plurality of coordinate conversion parameters obtained in step S303 to calculate the coordinate conversion parameter of the center of gravity of a cluster having a predetermined number or more of elements (steps S304 and S305).

その後、位置合わせ部17cは、各パラメータで変換後の点群の位置関係を初期位置とし、ICP(Iterative Closest Point)アルゴリズムによりそれぞれ詳細位置合わせを行う(ステップS306)。最後に、位置合わせ部17cは、各位置合わせの結果の残差を評価して最も一致度が高い位置合わせの結果を最終的な解として選択し(ステップS307)、処理を終了する。   After that, the alignment unit 17c sets the positional relationship of the point group after conversion with each parameter as an initial position, and performs detailed alignment by an ICP (Iterative Closest Point) algorithm (step S306). Finally, the alignment unit 17c evaluates the residual of each alignment result, selects the alignment result with the highest degree of matching as the final solution (step S307), and ends the process.

[効果の一側面]
上述してきたように、本実施例に係るポータブル型情報処理装置10は、異なる計測点で計測される3次元点群の間で現場2の環境に存在する平面間の相対的な位置関係、すなわち平面間の高度差が一致するオフセット量を算出して高さの基準を合わせ、2次元のレジストレーションを実行する。したがって、本実施例に係るポータブル型情報処理装置10によれば、オクルージョンのある環境下で3次元点群データの合成精度を高めることができる。
[One side of effect]
As described above, in the portable information processing device 10 according to the present embodiment, the relative positional relationship between the planes existing in the environment of the site 2 between the three-dimensional point groups measured at different measurement points, that is, The two-dimensional registration is executed by calculating the offset amount in which the height difference between the planes is the same and adjusting the height reference. Therefore, according to the portable information processing apparatus 10 according to the present embodiment, it is possible to improve the synthesis accuracy of the three-dimensional point cloud data in an environment with occlusion.

さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。   Although the embodiments of the disclosed device have been described so far, the present invention may be implemented in various different forms other than the embodiments described above. Therefore, other embodiments included in the present invention will be described below.

[水平面の抽出]
上記のオフセット量Δhの補正を行う前段階として、水平面を抽出する処理の応用例について説明する。例えば、ポータブル型情報処理装置10の設置面が傾いている時や、ポータブル型情報処理装置10の脚の長さが微妙に異なりセンサが水平面に対して傾いている時、次のような処理により水平面を抽出できる。
[Extraction of horizontal plane]
An application example of the process of extracting the horizontal plane will be described as a previous step of correcting the offset amount Δh. For example, when the installation surface of the portable information processing device 10 is tilted, or when the legs of the portable information processing device 10 are slightly different and the sensor is tilted with respect to the horizontal plane, the following processing is performed. The horizontal plane can be extracted.

すなわち、ポータブル型情報処理装置10が傾いていたとしても、センサ自体の座標系で上向きのベクトルが水平面の法線ベクトルとの角度差が小さいという知見を利用する。つまり、角度差が大きい、言い換えればポータブル型情報処理装置10の傾きが大きいとポータブル型情報処理装置10は転倒してしまうことから、逆説的に、転倒していない場合には、センサ自体の座標系で上向きのベクトルが水平面の法線ベクトルとの角度差が小さいと言える。   That is, the knowledge that the upward vector in the coordinate system of the sensor itself has a small angular difference from the normal vector of the horizontal plane even if the portable information processing device 10 is inclined is used. In other words, if the angle difference is large, in other words, if the tilt of the portable information processing device 10 is large, the portable information processing device 10 will fall. Therefore, paradoxically, when the tilt has not occurred, the coordinates of the sensor itself. It can be said that the angle difference between the upward vector in the system and the normal vector in the horizontal plane is small.

例えば、ポータブル型情報処理装置10は、3次元点群データから平面を抽出する。ここで抽出される平面は、センサ座標系のZ軸に直交する面に限定されない。その上で、ポータブル型情報処理装置10は、先に抽出された各平面の法線ベクトルnとセンサ座標系のZ軸正方向のベクトル、すなわちセンサ座標系の上方向のベクトルvとの角度θが所定の範囲内である平面を抽出する。ただし、ポータブル型情報処理装置10は、θ>90°のとき、θ=180°−θとして逆向きのベクトルも抽出対象に含める。なお、ここでは、各平面の法線ベクトルを用いる場合を例示したが、各平面に含まれる各点群の法線ベクトルとしてもよい。 For example, the portable information processing device 10 extracts a plane from the 3D point cloud data. The plane extracted here is not limited to the plane orthogonal to the Z axis of the sensor coordinate system. Then, the portable information processing device 10 divides the previously extracted normal vector n k of each plane and the vector in the Z-axis positive direction of the sensor coordinate system, that is, the upward vector v s of the sensor coordinate system. A plane whose angle θ k is within a predetermined range is extracted. However, when θ k > 90 °, the portable information processing apparatus 10 sets θ k = 180 ° −θ k to include an opposite vector in the extraction target. In addition, although the case where the normal vector of each plane is used is illustrated here, the normal vector of each point group included in each plane may be used.

このようにして抽出された角度の分布を参照して、ポータブル型情報処理装置10は、当該角度の分布の中央値となるベクトルvを算出する。このとき、現場2の中に一定数の水平面が存在する場合、ベクトルvが水平面の法線ベクトルとなる。このことから、ポータブル型情報処理装置10は、各平面の法線ベクトルnのうち、角度の分布の中央値となるベクトルvとその逆向きのベクトルも含めて所定の角度以内のものに対応する平面を水平面として抽出する。 The portable information processing apparatus 10 calculates the vector v h that is the median value of the distribution of the angles, with reference to the distribution of the angles thus extracted. At this time, when a certain number of horizontal planes exist in the site 2, the vector v h becomes a normal vector of the horizontal plane. From this, the portable information processing apparatus 10 sets the normal vector n k of each plane within a predetermined angle including the vector v h that is the median of the angle distribution and the vector in the opposite direction. The corresponding plane is extracted as the horizontal plane.

図11は、水平面の抽出に関する応用例を示す図である。図11には、ポータブル型情報処理装置10が水平面よりも傾いて載置されている場合が示されている。図11に示す例の場合、3次元点群データから法線ベクトルn〜nを持つ5つの平面が抽出される。そして、センサ座標系の上方向のベクトルvとの間でなす角度θが一定範囲以内である法線ベクトルが抽出されることにより、法線ベクトルnが除去される一方で、法線ベクトルn〜nが抽出される。その後、角度θが大きい順または小さい順にソートされると、法線ベクトルn、n、nはほぼ同じ値になるので、中央値は、n、n、nのいずれかになる。この結果、ポータブル型情報処理装置10が水平面よりも傾いて載置されている場合でも、水平面を抽出することが可能になる。 FIG. 11: is a figure which shows the application example regarding the extraction of a horizontal surface. FIG. 11 shows a case where the portable information processing device 10 is placed with an inclination from the horizontal plane. In the case of the example shown in FIG. 11, five planes having normal vectors n 1 to n 5 are extracted from the three-dimensional point cloud data. Then, by extracting the normal vector whose angle θ k formed with the upward vector v s of the sensor coordinate system is within a certain range, the normal vector n 5 is removed, while the normal vector n 5 is removed. The vectors n 1 to n 4 are extracted. Then, when the angles θ k are sorted in ascending or descending order, the normal vectors n 1 , n 2 , and n 4 have almost the same value, and thus the median is one of n 1 , n 2 , and n 4 . become. As a result, even when the portable information processing device 10 is placed with an inclination with respect to the horizontal plane, the horizontal plane can be extracted.

[分散および統合]
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、3次元点群データ取得部15、平面抽出部17a、オフセット量算出部17bまたは位置合わせ部17cをポータブル型情報処理装置10の外部装置としてネットワーク経由で接続するようにしてもよい。また、3次元点群データ取得部15、平面抽出部17a、オフセット量算出部17bまたは位置合わせ部17cを別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のポータブル型情報処理装置10の機能を実現するようにしてもよい。
Distributed and integrated
In addition, each component of each illustrated device may not necessarily be physically configured as illustrated. That is, the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part of the device may be functionally or physically distributed / arranged in arbitrary units according to various loads or usage conditions. It can be integrated and configured. For example, the three-dimensional point cloud data acquisition unit 15, the plane extraction unit 17a, the offset amount calculation unit 17b, or the alignment unit 17c may be connected via a network as an external device of the portable information processing device 10. In addition, another device has a three-dimensional point cloud data acquisition unit 15, a plane extraction unit 17a, an offset amount calculation unit 17b, or an alignment unit 17c, and the portable information described above can be obtained by network cooperation and cooperation. The functions of the processing device 10 may be realized.

[情報合成プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図12を用いて、上記の実施例と同様の機能を有する情報合成プログラムを実行するコンピュータの一例について説明する。
[Information synthesis program]
The various processes described in the above embodiments can be realized by executing a prepared program on a computer such as a personal computer or a workstation. Therefore, in the following, an example of a computer that executes an information synthesizing program having the same functions as those in the above embodiments will be described with reference to FIG.

図12は、実施例1及び実施例2に係る情報合成プログラムを実行するコンピュータのハードウェア構成例を示す図である。図12に示すように、コンピュータ100は、操作部110aと、スピーカ110bと、カメラ110cと、ディスプレイ120と、通信部130とを有する。さらに、このコンピュータ100は、CPU150と、ROM160と、HDD170と、RAM180とを有する。これら110〜180の各部はバス140を介して接続される。   FIG. 12 is a diagram illustrating a hardware configuration example of a computer that executes the information composition program according to the first and second embodiments. As illustrated in FIG. 12, the computer 100 includes an operation unit 110a, a speaker 110b, a camera 110c, a display 120, and a communication unit 130. Further, the computer 100 has a CPU 150, a ROM 160, an HDD 170, and a RAM 180. Each of these units 110 to 180 is connected via a bus 140.

HDD170には、図12に示すように、上記の実施例1で示した平面抽出部17a、オフセット量算出部17b及び位置合わせ部17cと同様の機能を発揮する情報合成プログラム170aが記憶される。この情報合成プログラム170aは、図3に示した平面抽出部17a、オフセット量算出部17b及び位置合わせ部17cの各構成要素と同様、統合又は分離してもかまわない。すなわち、HDD170には、必ずしも上記の実施例1で示した全てのデータが格納されずともよく、処理に用いるデータがHDD170に格納されればよい。   As shown in FIG. 12, the HDD 170 stores an information composition program 170a that exhibits the same functions as the plane extraction unit 17a, the offset amount calculation unit 17b, and the alignment unit 17c described in the first embodiment. The information synthesizing program 170a may be integrated or separated similarly to the respective components of the plane extraction unit 17a, the offset amount calculation unit 17b, and the alignment unit 17c shown in FIG. That is, the HDD 170 does not necessarily need to store all the data described in the first embodiment, and the data used for the processing may be stored in the HDD 170.

このような環境の下、CPU150は、HDD170から情報合成プログラム170aを読み出した上でRAM180へ展開する。この結果、情報合成プログラム170aは、図12に示すように、情報合成プロセス180aとして機能する。この情報合成プロセス180aは、RAM180が有する記憶領域のうち情報合成プロセス180aに割り当てられた領域にHDD170から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、情報合成プロセス180aが実行する処理の一例として、図9〜図10に示す処理などが含まれる。なお、CPU150では、必ずしも上記の実施例1で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。   Under such an environment, the CPU 150 reads out the information composition program 170a from the HDD 170 and expands it in the RAM 180. As a result, the information composition program 170a functions as an information composition process 180a, as shown in FIG. The information composition process 180a expands various data read from the HDD 170 in an area allocated to the information composition process 180a in the storage area of the RAM 180, and executes various processes using the expanded data. For example, the processing shown in FIGS. 9 to 10 is included as an example of the processing executed by the information composition process 180a. In the CPU 150, not all the processing units shown in the above-described first embodiment need to operate, and the processing unit corresponding to the processing to be executed may be virtually realized.

なお、上記の情報合成プログラム170aは、必ずしも最初からHDD170やROM160に記憶されておらずともかまわない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に情報合成プログラム170aを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から情報合成プログラム170aを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに情報合成プログラム170aを記憶させておき、コンピュータ100がこれらから情報合成プログラム170aを取得して実行するようにしてもよい。   Note that the above information composition program 170a does not necessarily have to be stored in the HDD 170 or the ROM 160 from the beginning. For example, the information synthesizing program 170a is stored in a “portable physical medium” such as a flexible disk, a so-called FD, a CD-ROM, a DVD disk, a magneto-optical disk, an IC card, which is inserted into the computer 100. Then, the computer 100 may acquire the information composition program 170a from these portable physical media and execute it. Further, the information composition program 170a is stored in another computer or a server device connected to the computer 100 via a public line, the Internet, a LAN, a WAN, etc., and the computer 100 acquires the information composition program 170a from these. You may make it execute.

10 ポータブル型情報処理装置
11 表示部
13 記憶部
15 3次元点群データ取得部
17 制御部
17a 平面抽出部
17b オフセット量算出部
17c 位置合わせ部
10 portable information processing device 11 display unit 13 storage unit 15 three-dimensional point cloud data acquisition unit 17 control unit 17a plane extraction unit 17b offset amount calculation unit 17c alignment unit

Claims (4)

異なる第1の測定位置及び第2の測定位置の各々で光を走査しながら照射すると共に物体から反射される反射光を用いて、自装置から物体までの距離に基づく点群情報を取得する取得部と、
前記取得部が取得した前記点群情報から平面領域に属する点群情報を前記第1の測定位置および第2の測定位置ごとに抽出する抽出部と、
前記第1の測定位置から抽出される前記平面領域の間の垂直方向の距離と、前記第2の測定位置から抽出される前記平面領域の間の垂直方向の距離とに基づいて前記第1の測定位置及び前記第2の測定位置の間の前記平面領域の対応関係をマッチングすることにより、前記第1の測定位置及び前記第2の測定位置の間のオフセット量を算出する算出部と、
前記算出部が算出したオフセット量にしたがって補正された前記点群情報を用いて位置合わせを行う位置合わせ部と
を有することを特徴とする情報処理装置。
Acquisition of point cloud information based on the distance from the own device to the object using the reflected light reflected from the object while irradiating while scanning the light at each of different first measurement position and second measurement position Department,
An extraction unit that extracts point cloud information belonging to a plane area from the point cloud information acquired by the acquisition unit for each of the first measurement position and the second measurement position ,
Based on the vertical distance between the planar regions extracted from the first measurement position and the vertical distance between the planar regions extracted from the second measurement position, A matching unit that calculates the offset amount between the first measurement position and the second measurement position by matching the correspondence relationship of the planar area between the measurement position and the second measurement position ,
An information processing device, comprising: an alignment unit that performs alignment using the point cloud information corrected according to the offset amount calculated by the calculation unit.
前記抽出部は、水平面領域に関する点群情報を前記第1の測定位置および前記第2の測定位置ごとに抽出することを特徴とする請求項1に記載の情報処理装置。 The information processing apparatus according to claim 1, wherein the extraction unit extracts point cloud information regarding a horizontal plane region for each of the first measurement position and the second measurement position . 前記抽出部は、自装置で前記点群情報が取得される座標系の垂直方向に対応するベクトルと前記平面領域の法線ベクトルとがなす角度が所定の範囲以内である平面領域の法線ベクトルを抽出し、該抽出された平面領域の法線ベクトルの角度の分布のうち前記分布の中央値から所定の範囲内である法線ベクトルを持つ平面領域を前記水平面領域として抽出することを特徴とする請求項2に記載の情報処理装置。   The extraction unit is a normal vector of a plane area in which an angle formed by a vector corresponding to a vertical direction of a coordinate system in which the point cloud information is acquired by the device itself and a normal vector of the plane area is within a predetermined range. And extracting, as the horizontal plane area, a plane area having a normal vector within a predetermined range from the median value of the distribution of the distribution of the angles of the normal vector of the extracted flat area. The information processing device according to claim 2. 異なる第1の測定位置及び第2の測定位置の各々で光を走査しながら照射すると共に物体から反射される反射光を用いて、前記第1の測定位置又は前記第2の測定位置から物体までの距離に基づく点群情報を取得する処理と、
取得した前記点群情報から平面領域に属する点群情報を前記第1の測定位置および第2の測定位置ごとに抽出する処理と、
前記第1の測定位置から抽出される前記平面領域の間の垂直方向の距離と、前記第2の測定位置から抽出される前記平面領域の間の垂直方向の距離とに基づいて前記第1の測定位置及び前記第2の測定位置の間の前記平面領域の対応関係をマッチングすることにより、前記第1の測定位置及び前記第2の測定位置の間のオフセット量を算出する処理と、
算出したオフセット量にしたがって補正された前記点群情報を用いて位置合わせを行う処理と
コンピュータに実行させることを特徴とする情報合成プログラム。
From the first measurement position or the second measurement position to the object using the reflected light that is emitted while scanning the light at each of different first measurement position and second measurement position and is reflected from the object A process of acquiring point cloud information based on the distance of
A process of extracting point cloud information belonging to a plane area from the acquired point cloud information for each of the first measurement position and the second measurement position ;
Based on the vertical distance between the planar regions extracted from the first measurement position and the vertical distance between the planar regions extracted from the second measurement position, A process of calculating an offset amount between the first measurement position and the second measurement position by matching the correspondence relationship of the planar area between the measurement position and the second measurement position ;
An information synthesizing program characterized by causing a computer to execute a process of performing alignment using the point group information corrected according to the calculated offset amount.
JP2016051664A 2016-03-15 2016-03-15 Information processing device and information synthesis program Active JP6693193B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016051664A JP6693193B2 (en) 2016-03-15 2016-03-15 Information processing device and information synthesis program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016051664A JP6693193B2 (en) 2016-03-15 2016-03-15 Information processing device and information synthesis program

Publications (2)

Publication Number Publication Date
JP2017166933A JP2017166933A (en) 2017-09-21
JP6693193B2 true JP6693193B2 (en) 2020-05-13

Family

ID=59913341

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016051664A Active JP6693193B2 (en) 2016-03-15 2016-03-15 Information processing device and information synthesis program

Country Status (1)

Country Link
JP (1) JP6693193B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228798B (en) 2017-12-29 2021-09-17 百度在线网络技术(北京)有限公司 Method and device for determining matching relation between point cloud data
US20210341581A1 (en) * 2018-09-06 2021-11-04 Nec Corporation Processing device, system, method, and non-transitory computer readable medium
CN109190573B (en) * 2018-09-12 2021-11-12 阿波罗智能技术(北京)有限公司 Ground detection method applied to unmanned vehicle, electronic equipment and vehicle
US10877155B2 (en) 2018-09-25 2020-12-29 Topcon Corporation Survey data processing device, survey data processing method, and survey data processing program
US11048964B2 (en) * 2018-09-28 2021-06-29 Topcon Corporation Survey data processing device, survey data processing method, and survey data processing program
CN109893160A (en) * 2019-04-02 2019-06-18 晓智科技(成都)有限公司 A kind of x light measurand pose adjustment householder method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4188632B2 (en) * 2002-07-16 2008-11-26 独立行政法人科学技術振興機構 Range image integration method and range image integration apparatus
JP2004272459A (en) * 2003-03-06 2004-09-30 Cad Center:Kk Automatic generation device and automatic generation method of three-dimensional shape, program and storage medium recording the program
JP2010066595A (en) * 2008-09-11 2010-03-25 Toyota Motor Corp Environment map generating device and environment map generating method
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
JP2013058106A (en) * 2011-09-08 2013-03-28 Toshiba Plant Systems & Services Corp Three-dimensional cad data creation system and three-dimensional cad data creation method
FR2988618B1 (en) * 2012-03-30 2014-05-09 Parrot ALTITUDE ESTIMER FOR MULTI-ROTOR ROTOR SAIL DRONE
US9251578B2 (en) * 2012-07-02 2016-02-02 Sony Corporation System and method for match move quality control

Also Published As

Publication number Publication date
JP2017166933A (en) 2017-09-21

Similar Documents

Publication Publication Date Title
JP6693193B2 (en) Information processing device and information synthesis program
US10930005B1 (en) Profile matching of buildings and urban structures
EP3016071B1 (en) Estimating device and estimation method
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
JP5343042B2 (en) Point cloud data processing apparatus and point cloud data processing program
US11830136B2 (en) Methods and systems for auto-leveling of point clouds and 3D models
JP5950122B2 (en) Calibration apparatus, calibration method, and calibration program
US8755562B2 (en) Estimation apparatus, control method thereof, and program
JP2012037491A (en) Point group position data processing apparatus, point group position data processing system, point group position data processing method, and point group position data processing program
JP2012230594A (en) Three-dimensional point group position data processor, three-dimensional point group position data processing method, three-dimensional point group position data processing system, and program
JPWO2012141235A1 (en) 3D point cloud position data processing apparatus, 3D point cloud position data processing system, 3D point cloud position data processing method and program
RU2013140835A (en) IMAGE PROCESSING DEVICE, IMAGE PROCESSING METHOD AND PROGRAM
JP4701848B2 (en) Image matching apparatus, image matching method, and image matching program
US20170109932A1 (en) Content projection apparatus, content projection method, and computer readable storage medium
JP6541920B1 (en) INFORMATION PROCESSING APPARATUS, PROGRAM, AND INFORMATION PROCESSING METHOD
JP2017524122A (en) Method and apparatus for measuring displacement of mobile platform
Lichti et al. New approach for low-cost TLS target measurement
Fratus de Balestrini et al. New instruments for survey: on line softwares for 3d recontruction from images
JP6601613B2 (en) POSITION ESTIMATION METHOD, POSITION ESTIMATION DEVICE, AND POSITION ESTIMATION PROGRAM
JP7300930B2 (en) Survey data processing device, survey data processing method and program for survey data processing
JP2009198382A (en) Environment map acquiring device
Hafeez et al. 3D surface reconstruction of smooth and textureless objects
JP6456084B2 (en) Image processing apparatus, image processing method, and program
RU2583756C2 (en) Method of signature-based positioning of urban area images in visible and ir bands
JP6903987B2 (en) Information processing programs, information processing methods, and information processing equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200108

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: 20200317

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200330

R150 Certificate of patent or registration of utility model

Ref document number: 6693193

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150