JP6693193B2 - Information processing device and information synthesis program - Google Patents
Information processing device and information synthesis program Download PDFInfo
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 61
- 230000015572 biosynthetic process Effects 0.000 title description 6
- 238000005259 measurement Methods 0.000 claims description 111
- 238000000034 method Methods 0.000 claims description 64
- 238000000605 extraction Methods 0.000 claims description 33
- 238000004364 calculation method Methods 0.000 claims description 32
- 239000013598 vector Substances 0.000 claims description 30
- 239000000284 extract Substances 0.000 claims description 14
- 230000002194 synthesizing effect Effects 0.000 claims description 5
- 230000001678 irradiating effect Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 20
- 238000011156 evaluation Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 14
- 238000006243 chemical reaction Methods 0.000 description 7
- 238000012937 correction Methods 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005401 electroluminescence Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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.
しかしながら、上記の技術では、オクルージョンが発生する環境下で互いの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.
以下に添付図面を参照して本願に係る情報処理装置及び情報合成プログラムについて説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。 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
図1に示すポータブル型情報処理装置10は、作業者3がハンドキャリーを行うポータブル型の装置として実装される。例えば、作業者3が現場2A〜現場2Nで作業を行う場合、1つの現場2につき1台の情報処理装置10を設置せずともかまわず、1台の情報処理装置10を各現場2で持ち回って使用することができる。すなわち、作業者3は、現場2で作業が終了する度に、次の現場2へハンドキャリー等でポータブル型情報処理装置10を持ち込み、次の現場2の任意の位置に載置することにより、支援データの提供を受けることができる。
The portable
このように、ポータブル型情報処理装置10は、現場2A〜現場2Nに持ち込むことにより、簡単な操作で周囲の環境をくまなく計測してデジタイズ化することができる。さらに、環境中の人の計測を行いデジタイズ化した環境情報と紐づけることで、環境中の人の行動を記録したり、人の状態に応じた情報を提供したりするなど、様々な情報支援を可能としている。
In this way, the portable
例えば、ポータブル型の情報処理装置10は、詳細は図2を用いて後述するが、2次元平面内をスキャンして環境に対する距離を測定可能なレーザレンジファインダを、モータで回転させることで、全方位の3次元点群データの計測を実現する。
For example, the portable
[オクルージョン]
このポータブル型の情報処理装置10を現場2に持ち運び計測を行うと、1回の計測で広範囲の計測が行えるが、現場2内に置かれたパーティションやテーブルなどが遮蔽物となったり、現場2内の施設の構造上、出入口に面する視点以外からは壁等が遮蔽物となって計測が遮られたりする場合がある。この結果、上記の遮蔽物が妨げとなって未計測の場所が発生する(オクルージョン)。この場合、未計測の場所を計測できるように別の場所にポータブル型の情報処理装置10を移動して再度計測を行う。これを繰り返すことにより、互いの計測点で発生する死角が補われた複数の3次元点群データを得ることができる。一方で、複数の3次元点群の位置関係は不明であるので、複数の3次元点群の間で位置合わせ、いわゆるレジストレーションを行うことにより、1つの3次元点群データに合成される。
[Occlusion]
When this portable
これを具体的に説明すると、ポータブル型情報処理装置10では、(1)3D(dimension)計測、(2)フィルタリング、(3)レジストレーション、(4)メッシュモデル化といった手順で、現場2に関する環境のモデルデータが生成される。
This will be specifically described. In the portable
すなわち、ポータブル型情報処理装置10は、現場2において異なる計測点で3D計測が実施されることにより複数の3次元点群データを計測する(1)。その上で、ポータブル型情報処理装置10は、3次元点群データごとにフィルタリングを行うことによりノイズとなる点群を除去する(2)。例えば、3次元点群データに含まれる点ごとに当該点から近い順から所定数の各点との間で分散を算出する。このとき、点が物品等を形成する要素である場合、近傍の点も密集するので、ノイズとなる孤立点よりも分散が小さくなり、ノイズとなる孤立点であれば、近傍に点が存在してもまばらとなるので、物品の構成要素である点よりも分散が大きくなる。このことから、一例として、分散が閾値以上である点をノイズとみなして除去する。
That is, the portable
その後、ポータブル型情報処理装置10は、ノイズ除去後に、複数の3次元点群データの位置合わせ処理を行うことにより、1つの3次元点群データとして統合する(3)。その上で、ポータブル型情報処理装置10は、1つに統合された3次元点群データをメッシュ化処理により、3次元の面データに変換する(4)。これによって、データ容量を削減し、環境のモデルとして利用する。
After that, the portable
このように、異なる計測点で計測された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
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
しかしながら、上記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
[方法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
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
これら図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
[ポータブル型情報処理装置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
表示部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
記憶部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
一実施形態として、記憶部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
例えば、記憶部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
一実施形態として、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
制御部17は、各種のプログラムや制御データを格納する内部メモリを有し、これらによって各種の処理を実行するものである。
The
一実施形態として、制御部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
制御部17は、図示しない主記憶装置として実装されるDRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などのRAMのワークエリア上に、上記のオフセット量の算出および2次元のレジストレーションを実現するアプリケーションプログラムとして記憶された情報合成プログラムをプロセスとして展開することにより、下記の処理部を仮想的に実現する。
The
図3に示すように、制御部17は、平面抽出部17aと、オフセット量算出部17bと、位置合わせ部17cとを有する。
As shown in FIG. 3, the
平面抽出部17aは、3D点群データから現場2の平面を抽出する処理部である。
The plane extraction unit 17a is a processing unit that extracts the plane of the
一実施形態として、平面抽出部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
ここで、平面抽出部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
このように、各計測点の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
このことから、オフセット量算出部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次元点群データから抽出される水平面の高さの集合として、H1{h11,h12,h13}が得られると共に、計測点M4で計測された3次元点群データから抽出される水平面の高さの集合として、H2{h21,h22,h23,h24}が得られる。なお、上記の例では、集合H1のうちh12及びh13が負の値をとると共に、集合H2のうちh22、h23及びh24が負の値をとることになる。
FIG. 5 is a diagram showing an example of a set of horizontal plane heights. FIG. 5 shows a
このようにして得られた高さの値に関する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には、集合H1の各要素が実線の太線で示される一方で、集合H2の各要素が一点鎖線の太線で示されている。図6の左部に示す集合H1及び集合H2に関する正解がオフセット量Δhである場合、図6の右部に示すように、集合H2に含まれる各要素にオフセット量Δhを加算する補正を行うと、集合H1のh11と集合H2のh21の高さが一致すると共に集合H1のh14と集合H2の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次元点群データから抽出される水平面の高さの集合をH1とし、第2の3次元点群データから抽出される水平面の高さの集合をH2としたとき、集合H1及び集合H2は下記の数列で表すことができる。
[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.
H1={h11,h12,…,h1i,…,h1M}
H2={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次元点群データから抽出された水平面の高さの集合H2´を次のように表す。 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.
H2´={h21´,h22´,…,h2j´,…,h2N´}
={h21+Δh,h22+Δh,…,h2j+Δh,…,h2N+Δh}
H 2 '= {h 21' , h 22 ', ..., h 2j', ...,
= {H 21 + Δh, h 22 + Δh, ..., h 2j + Δh, ..., h 2N + Δh}
[オフセット量Δhの算出方法1]
一実施形態として、オフセット量算出部17bは、H1とH2´の一致度を表す、下記の式(1)の評価関数Eを用いてオフセット量Δhを求める。すなわち、オフセット量算出部17bは、下記の式(2)に示す最大高度差Dにより定まる下記の式(3)の不等号の範囲内でオフセット量Δhを所定のシフト量ずつ変化させ、下記の式(1)の評価関数Eを最小化するオフセット量Δhを求める。下記の式(1)に示す評価関数Eでは、値が小さいほどH1とH2´の一致度が高いことを意味する。
[
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=ΣiΣjlog(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では、説明の便宜上、集合H1の要素としてh11が含まれる一方で、集合H2´の要素として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はe1+e2により計算される。このうち、e1は、高さh11と高さh21´とが一致するので、log(1+|h11−h21´|)は「0」となる一方で、e2は、log(1+|h11−h22´|)と算出される。一方、図8の右部に示す通り、状態S2の場合、上記の式(1)にしたがって評価値Eはe3+e4により計算される。このうち、e3は、log(1+|h11−h21´|)と算出されると共にe4は、log(1+|h11−h22´|)と算出される。このとき、e3は、e1に比べてシフト量aの分、h21´がh11から離れることによりその値が大きくなる一方で、e4は、e2に比べてシフト量aの分、h22´がh11に近づくことによりその値が小さくなるが、log(1+d)が上に凸な関数であるため、増分が減少分より大きくなる。したがって、状態S1で算出される評価値の方が状態S2で算出される評価値よりも低く、すなわち一致度が高く算出させることができる。一方で、評価関数の傾きを「1」とする場合、すなわち評価関数をΣiΣj|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は、集合H1及び集合H2から1つずつ高さの値を取り出す組合せごとに、当該組合せに関する高さが一致するオフセット量Δhを計算する。続いて、オフセット量算出部17bは、当該オフセット量ΔhでH1及びH´2の高さが所定の範囲、例えば±α内におさまる個数cijを算出する。その上で、オフセット量算出部17bは、全ての組合せについて個数cijを算出し、最大の個数を与えるオフセット量Δ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
位置合わせ部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次元点群データのうち集合H2が割り当てられた方の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
[関連文献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
[関連文献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
[処理の流れ]
次に、本実施例に係るポータブル型情報処理装置10の処理の流れについて説明する。図9は、実施例1に係る全体処理の手順を示すフローチャートである。この処理は、3次元点群データ取得部15により異なる計測点で計測された3次元点群データがレジストレーションの実行対象としてグループ化された場合に開始される。
[Process flow]
Next, a processing flow of the portable
図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
そして、平面抽出部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
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。 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
すなわち、ポータブル型情報処理装置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
例えば、ポータブル型情報処理装置10は、3次元点群データから平面を抽出する。ここで抽出される平面は、センサ座標系のZ軸に直交する面に限定されない。その上で、ポータブル型情報処理装置10は、先に抽出された各平面の法線ベクトルnkとセンサ座標系のZ軸正方向のベクトル、すなわちセンサ座標系の上方向のベクトルvsとの角度θkが所定の範囲内である平面を抽出する。ただし、ポータブル型情報処理装置10は、θk>90°のとき、θk=180°−θkとして逆向きのベクトルも抽出対象に含める。なお、ここでは、各平面の法線ベクトルを用いる場合を例示したが、各平面に含まれる各点群の法線ベクトルとしてもよい。
For example, the portable
このようにして抽出された角度の分布を参照して、ポータブル型情報処理装置10は、当該角度の分布の中央値となるベクトルvhを算出する。このとき、現場2の中に一定数の水平面が存在する場合、ベクトルvhが水平面の法線ベクトルとなる。このことから、ポータブル型情報処理装置10は、各平面の法線ベクトルnkのうち、角度の分布の中央値となるベクトルvhとその逆向きのベクトルも含めて所定の角度以内のものに対応する平面を水平面として抽出する。
The portable
図11は、水平面の抽出に関する応用例を示す図である。図11には、ポータブル型情報処理装置10が水平面よりも傾いて載置されている場合が示されている。図11に示す例の場合、3次元点群データから法線ベクトルn1〜n5を持つ5つの平面が抽出される。そして、センサ座標系の上方向のベクトルvsとの間でなす角度θkが一定範囲以内である法線ベクトルが抽出されることにより、法線ベクトルn5が除去される一方で、法線ベクトルn1〜n4が抽出される。その後、角度θkが大きい順または小さい順にソートされると、法線ベクトルn1、n2、n4はほぼ同じ値になるので、中央値は、n1、n2、n4のいずれかになる。この結果、ポータブル型情報処理装置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
[分散および統合]
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、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
[情報合成プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図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
HDD170には、図12に示すように、上記の実施例1で示した平面抽出部17a、オフセット量算出部17b及び位置合わせ部17cと同様の機能を発揮する情報合成プログラム170aが記憶される。この情報合成プログラム170aは、図3に示した平面抽出部17a、オフセット量算出部17b及び位置合わせ部17cの各構成要素と同様、統合又は分離してもかまわない。すなわち、HDD170には、必ずしも上記の実施例1で示した全てのデータが格納されずともよく、処理に用いるデータがHDD170に格納されればよい。
As shown in FIG. 12, the
このような環境の下、CPU150は、HDD170から情報合成プログラム170aを読み出した上でRAM180へ展開する。この結果、情報合成プログラム170aは、図12に示すように、情報合成プロセス180aとして機能する。この情報合成プロセス180aは、RAM180が有する記憶領域のうち情報合成プロセス180aに割り当てられた領域にHDD170から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、情報合成プロセス180aが実行する処理の一例として、図9〜図10に示す処理などが含まれる。なお、CPU150では、必ずしも上記の実施例1で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
Under such an environment, the
なお、上記の情報合成プログラム170aは、必ずしも最初からHDD170やROM160に記憶されておらずともかまわない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に情報合成プログラム170aを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から情報合成プログラム170aを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに情報合成プログラム170aを記憶させておき、コンピュータ100がこれらから情報合成プログラム170aを取得して実行するようにしてもよい。
Note that the above
10 ポータブル型情報処理装置
11 表示部
13 記憶部
15 3次元点群データ取得部
17 制御部
17a 平面抽出部
17b オフセット量算出部
17c 位置合わせ部
10 portable information processing device 11 display unit 13
Claims (4)
前記取得部が取得した前記点群情報から平面領域に属する点群情報を前記第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の測定位置から抽出される前記平面領域の間の垂直方向の距離と、前記第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.
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)
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)
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 |
-
2016
- 2016-03-15 JP JP2016051664A patent/JP6693193B2/en active Active
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 |