日本船舶海洋工学会講演会論文集 （この行は学会にて記入します）

高速深度計測デバイスによる形状計測に関する研究
正 会 員

中 村

匠*

正 会 員

木村元**

A shape measurement system by a fast depth measurement device
byTakumi Nakamura, Member

Hajime Kimura, Member

Key Words: Depth sensor, Kinect v2, Registration, Laser scanner

1. 緒

言

造船工場の組み立て現場では，ブロックの精度管理や現場合わせ管の施工等のために形状計測が求められる場合がある．形状計測方法の１つとしてレーザースキャナを利用して得た計測点群データを処理して形状や寸法を得る方法があるが，１）レーザースキャナによる計測は，スキャナをしっかり固定した上で計測時間として１か所あたり十数分かかる計測を数か所行わなければならない２）計測点群データは対象物に照射したレーザが反射して戻ってきた点の座標であり，測定で知りたい角やエッジ部分の座標が含まれているわ
けではない３）計測点群を処理するための無料で利用可能な PCL (Point cloud library)1)が提供されているが，汎用プログラムであるため，造船現場で扱うような平面や曲面で構成された対象物に特化しているわけではないので，複数方向からの計測データを重ね合わせるだけでも十分な精度が出ない．また，商用ソフトは処理の中身がブラックボックスである等の問題がある．
そこで本研究では家庭用ゲーム入力デバイスとして非常に安価に供給されているマイクロソフト社製の3D スキャナデバイス Kinect v2 を利用する方法について検討を行う．これは本格的なレーザースキャナ 2)に比べ価格が約 1/200 と安価である．一方，対象物との最大距離がおよそ 4[m]で計測精度が 5～20[mm]程度とあまり良質ではないが，計測が非常に高速であるため，手でデバイスを持ち運んで多数回計測し、計測点群を重ね合わせて統計処理を施すことにより手軽かつ高速な高精度計測が期待できる．
また，計測対象物がブロックなど多数の平面で構成されている場合，計測点群より平面を検出し，それら平面同士の交線を計算することにより，計測点群には直接的に存在しないようなエッジや頂点の座標といった，測定によって知りたい特徴点の座標をマーカー無しで高精度に得ることが期待される．本研究では，
Kinect v2 で計測した点群データに平面をあてはめ，これを手掛かりとして異なる方向からの計測点群データを高精度に重ね合わせる方法を提案し，実験により提案手法の定量的評価を行う．

* 株式会社大島造船所**九州大学 大学院工学研究院
原稿受付 (学会にて記入します)
秋季講演会において講演 (学会にて記入します)©日本船舶海洋工学会

2. 深度計測データの取扱いについて本研究で使用する Kinect v2 では計測方式に ToF (Timeof Flight)方式が採用されているため，深度値の計測誤差が出やすい．また，撮影した時の端部や対象物の輪郭にも大きくばらつきが存在する．深度値の誤差原因として考えられるものが対象物までの距離が遠い場合や対象物の赤外線反射率が低い場合である．およそ，対象物との距離が 1[m]で誤差 3～5[mm]，2～3[m]では 30[mm]以上のばらつきが出る．特に赤外線の反射率が低い場合では50[mm]以上のばらつきが観測された．しかし，この深度値ばらつきは時間軸方向にランダム性が高いため，100フレーム程度の移動平均値を取ることで解像度を 10 倍程度引き上げることが可能である．理論的には n フレームの移動平均処理によって√n 倍の改善を行うことが可能である．また，計測対象物の手前に反射しやすい物体があるとマルチパスノイズの影響で深度値が実際より数ミリ程度遠くに出る現象がある．Fig.1 はマルチパスノイズにより計測点群が歪んでいる例を示す．Kinect v2 から出たレーザー光は，本来なら赤い矢印に沿って赤い矩形の物体に反射して戻り，光の経路長から矩形に光が当たった位置を正確に検出するが，対象物の手前の床部分がFig.1 のようによく反射する場合，レーザー光が青い矢印の経路を通るため，経路長が長くなって対象物の位置を実際より遠くに検出してしまい，計測点群が歪む．よって計測時や点群データの処理時に何らかの対策を要する．

Fig.1

An example of the multi-path noise.

3. 計測点群への平面あてはめを基本とした多方向計測データの重ね合わせ手法の提案
本提案手法は１）点群からの平面クラスタ検出２）異なる視点間の平面同士の比較による重ね合せ処理より成る．
3. 1 点群データからの平面のクラスタリング生成
本研究では文献 3)で提案されている，主成分分析による点群クラスタへの平面あてはめと RANSAC 法を組み合わせた平面点群クラスタ成長法をそのまま用いる．
RANSAC 法とは，外れ値を含んだデータからある数値モデルのパラメータを推定する際に，パラメータが外れ値の影響を受けないように推定するロバスト推定法の 1 つである．以下に処理手順の概要を示す：

[1] 点群データ内からランダムに選んだ点を中心とする，ある小さい半径 r の球内の点を初期クラスタ 1とする（Fig.2）．半径 r の寸法は検出する平面の最小の大きさとキネクトの誤差の大きさに依存する．
本研究では r=50～80[mm]とする．
[2] 初期クラスタ内で主成分分析を行い，初期クラスタが平面であるかどうかを判定する．このとき，平面であれば処理 3 に進み，平面でない場合は初期クラスタの点群を取り除いて処理 1 からやり直す．
[3] 処理 2 で算出した平面の方程式から，点と平面の距離を用いて閾値 d_0 内に存在する近傍の点群をクラスタに追加してクラスタを拡大する（Fig.3）．キネ
クトの計測では平面に凹凸があるため閾値 d_0 をそれに合わせ調整する．本研究では d_0=8[mm]とした．
[4] 処理 3 でクラスタリングを行った後，RANSAC 法を用いて平面のクラスタの精度を上げる．
[5] 処理 4 で作成したクラスタ内の点群の数が平面として扱うに少ない場合は，クラスタ内の点群を取り除
き処理 1 からやり直す．
[6] この処理を複数回行って大規模な点群データから複数の平面クラスタを作成する（Fig.4）．本研究では 300～500 回の試行でクラスタを生成している．

Fig.2

Initial stage of the cluster of points composing a plane.

Fig.3

Expansion of the cluster of points composing a plane.

Fig.4

An example of the plane clustering result.

3. 2 異なる２視点データ間での平面ペアリング（同一平面判定）と，重ね合わせ（レジストレーション）のための座標変換パラメータ探索について
ある視点の点群データをクラスタリングして得られた平面の中には，他視点からは見えない平面が存在する可能性がある．この平面を本研究では「外れ面」と呼ぶ．
平面のペアリングを自動で行うためには，外れ面の影響を受けない工夫が必要となる．本研究では，異なる視点での点群データ同士の座標変換による重ね合わせ処理に以下の処理を導入することで，点群の重ね合わせのための座標変換および異なる視点間での平面ペアリングの自動化を可能にした．以下に処理手順を示す：[1] 非線形数値最適化により点群重ね合わせのための座標変換パラメータ探索が行われ，求められたパラメータにより視点 2 の平面の代表点（クラスタ重心および重心から第１主成分と第２主成分方向の座標）が動かされる．最初の計算の場合は初期配置のまま処理 2 に移る（Fig.5 参照）．
[2] 視点 1 の平面の方程式と視点 2 の平面の代表点で二乗距離を計算し，最も距離の近い平面をペアリング対象とし，その二乗距離を記録する（Fig.6 参照）．
[3] 一方の視点の平面がすべてペアリング済となった時点で，記録した二乗距離を小さい順に並べ替え，n%の値 R を参照する．初期値：n=50(メジアン値)[4] 上記の R をコスト評価関数として評価し，新たな座標変換パラメータを生成・適用し処理 1 へ戻る．
[5] 設定回数探索後，コスト R が一定値以下の場合，処理３の n を 10 増やし，新たに処理を開始する．
[6] コスト R が一定値以上の場合，前回の n を使った結果を最適解とする．

Fig.5

Search for coordinate transformation parameters.

3.4 点群データの重ね合わせ処理のまとめ本研究で提案する点群データ重ね合わせ処理手順をFig.7 の流れ図に示す．

Fig.6

Pairing planes between the different viewing points.

点群から得られる平面の位置や法線ベクトルが多数かつ多様であれば，処理[3]で行っている最小メジアン法に類似した処理により「外れ平面」の影響を除去できるので，処理[5]は不要であるが，計測対象の形状が単なる直方体など単純である場合，平面のみを手掛かりにレジストレーションを行う原理上，独立な３方向の法線ベクトルを有する平面集合が検出できないと処理に失敗する．
そのために処理[5]を導入し，処理失敗に陥る危険性を低減させている．
Fig.6 では，同じ番号で示された，異なる視点間の平面同士をペアリングしていることを示している．また Fig.6
右上の３番の緑色で示された平面は，視点１からのみ検出された外れ平面を示す．初期のレジストレーションによる重ね合わせでは，視点２の右面はこの視点１の外れ平面に近いため３番の平面としてペアリングされているが，探索が進んでレジストレーションの精度が改善されると外れ面とのペアリングが解消されている．ここで特記すべきなのは，たとえペアリングにおいて Fig.6 上図の３番のように外れ平面との好ましくないペアリングが含まれていても，処理[3]および処理[5]と[6]により，平面クラスタペアの半分以上が良好な重なり具合であれば自動的に外れ平面とのペアリングの評価を無視して座標変換パラメータの探索が行われる点である．このため本提案手法は極めてロバストに動作する．
3. 3 異なる３視点以上の点群データの重ね合わせ
本研究では kinect で計測される「時系列的に連続した深度マップのフレームデータ」の重ね合わせを行うことを想定しているため，基本的にフレームの前後ではあまり大きな視点の変化が無い，すなわち座標変換パラメータがそれほど大きく変化しないことを想定している．よって３視点以上の点群の重ね合わせ処理は，前節で説明した２視点間での重ね合わせを多数回繰り返すことを基本とするが，その際，座標変換の誤差の蓄積と，異なる視点間で共通して検出できる同一平面の減少による計算失敗が問題になる．本研究では，検出可能な同一平面が半分以上ある比較的良い条件でのみ処理を行っている．

Fig.7 The flow chart of the proposed registration algorithm.

4. 検証実験
4. 1 形状に歪みの無い人工生成点群の重ね合わせ提案手法の定量的評価および実際の対象物計測の精度評価用に用いるマーカによる検出精度を確認するため，形状に歪みの無い平面より構成される人工的に作成した３Ｄモデルから生成した点群データに対して提案手法を適用した．ただし３Ｄモデルを構成する平面から生成される点群データは，平面の法線ベクトル方向に±3[mm]の一様分布を付加している．作成した３Ｄモデルの寸法
は 1000（H）[mm]×2000（W）[mm]×1000（D）[mm]である。また，本研究では球体マーカーの検出を補助手法として用いるため，球体の仮想点群も作成している．Fig.8に３Ｄモデルより生成した点群データを示す．この点群データを予め設定しておいた座標変換パラメータを用いて変換し（Fig.9），その後，変換前のデータと変換後のデータで提案アルゴリズムを用いて重ね合わせ処理を行い，座標変換パラメータとの比較と球体マーカー検出計
算の確認を行う．

Fig.8

Generated point cloud data from a 3D-model.

Fig.10 Targets of the measurement.
Fig.9

Coordinate transformation in the generated point data.

Table 1 Registration results of the proposed method in theproblem shown in the Fig.9..

15回計算の平均
軸角度[rad]
回転角度[rad]
平行移動距離[m m ]

設定値

結果

標準偏差α0.1000.100

1.61 10 15β0.2000.200

5.44 10 15γ0.3000.300

1.01 10dx400400

8.25 10 10dy500500

1.21 10dz

6006004.68 10 10Table 1 は Fig.9 で示したように人工的に生成した点群を回転させて生成した点群を提案手法によって重ね合わせ処理した結果を示す．平面上の点群に±3[mm]:の誤差が存在するにも関わらず，全く誤差の影響を受けることなく正確に重ね合わせができていることが分かる．また，ここでは数値を挙げないが点群のうち球体を構成する部分をパターンマッチングで検出して球の位置を検出した場合においても，やや劣る程度の精度で球体の位置検出ができていた．よって提案手法は点群の個別の位置にノイズはあるが３Ｄの形状には歪みが無い場合において極めて効果的であることが実証された．
4. 2 Kinect v2 による計測点群の重ね合わせ（１）Fig.10 および Fig.11 に示す状況で kinect v2 による複数方向からの計測と提案手法による計測点群の重ね合わせを行い，図中の下部に見えるオレンジ色の球の置かれた間隔に示す位置を提案手法の位置合わせ後のパターンマッチングで検出することで精度の検証を行う．球体マーカーの直径は 50[mm]で Fig.10 のように 700[mm]間隔で 3個配置している．計測デバイスは対象物から約 1500[mm]離れた位置に床から約 700[mm]の高さにほぼ対象物に向けて水平方向に設置される．第 3.3 節で説明したように，異なる視点の間で共通の平面が少ないと重ね合わせができないため，最大で約 45[deg]の回転角の範囲内で８方向の視点から計測した点群データを用いて重ね合わせ処理を行った．Fig.12 はある１方向から観測した点群データを示す．Fig.13 は 8 方向から観測した点群データをそのまま表示したものである．これらのデータを得るのに要した時間は準備や移動時間も含め約 20 秒であった．

Fig.11

The measurement condition.

Fig.12 Obtained 3D points from one viewpoint.
Table 2

Registration results of the proposed method in theproblem shown in the Fig.10.

計測50回 平均値 球①と球② 球②と球③ 球①と球③
実距離[m m ]700.000

700.000

1400.00

計測距離[m m ]698.304701.821

1400.11

標準偏差[m m ]1.48765

2.81340

3.00224

Table 2 は 8 向の点群データを提案手法で重ね合わせた
後，球体を構成している点群部分をパターンマッチングで検出して，球体間の距離を推定した結果を示す．50 回の計測を行って平均したが 2[mm]程度の誤差が生じる箇所があり，このとき真の距離が標準偏差の範囲内にも入らなかった．

球のマーカーの距離推定における誤差は，異なる計測データのゆらぎによって生じるだけでなく，同一の計測データを用いて提案アルゴリズムの処理を複数回試行した場合においても，アルゴリズム中のランダム性によってばらつきが生じた．紙面の都合上詳細を省くが，人工データ等を使った検証実験により，このばらつきは主に点群から平面クラスタ群を検出する処理過程で生じていることが分かっている．
4. 3 Kinect v2 による計測点群の重ね合わせ（２）Fig.15 に示す状況で kinect v2 による 16 方向からの異なる視点から得た点群データを提案手法にて重ね合わせる試行を行った．しかし，Fig.16 に示すとおり，パイプのフランジや球を構成する点群の形状に注目すると，かなりのずれが生じて処理に失敗していることが分かる．

Fig.13

Obtained 3D points from eight viewpoints.

Fig.14The points of the registration results.

Fig.14 は提案手法によって 8 方向から計測した点群を適切に重ね合わせた結果を示す．短い計測時間で対象の全体形状を把握できることが実証された．

Fig.15

Targets of the measurement.

Fig.16

Failed registration results.

異なる方向からの計測点群の重ね合わせ処理失敗の原因は，点群から平面を構成するクラスタを検出する処理の際，その平面の法線ベクトルのほとんどがたった 2 種類の直交するベクトルのどちらかに属してしまうような状況に陥ったため，もう一方の直交ベクトル方向への位置決めが不能となったためである．Fig.17 は，ある方向から対象物を計測した 3D 点群データを示し，Fig.18 はその点群から平面を構成している点群を第 3.1 節で説明したクラスタリング処理によって求めた結果である．Fig.18
で検出された平面は，対象の床面と平行な方向の他は，正面を向いて垂直に立っている平面が大部分であり，法線ベクトルが横を向いているような平面がほとんど無いことが分かる．このような点群を含む視点が複数存在すると，本手法では処理に失敗する．

Fig.17 Obtained 3D points in the condition of Fig.15.

ぴたりと重ねる処理であるので，異なる視点から見える共通の部分平面が少ない，あるいは共通して見える部分がエッジのみの場合には，処理に失敗することが実験で示された．よって対象物の周囲をぐるりと廻って計測した点群データを全て重ね合わせる処理は，今のところ困難である．
5.3 レーザスキャナの代用としての kinect v2 の利用代表的なレーザースキャナ 2)で 1 視点の計測に必要とされる時間は約 240[sec]である．視野角や解像度などが異なるものの，kinect v2 ではその間に，本実験で行った実績では最低でも 96 視点，カタログスペック上は最大 240×30=7200 視点を計測可能である．デバイスを手に持って対象物の周囲を廻って全体形状を計測できる手軽さと上記の高速さを考慮すると，統計情報処理によって十分にレーザースキャナの代用として計測精度が確保できると考えられる．ただし，膨大なデータをオフラインで長時間処理する必要が生じる．

6. 結言

本研究では，造船現場での形状計測のためのレーザースキャナの代用としてマイクロソフト社の kinect v2 を利用する方法について検討を行い，高速な計測性能を生かして多数回計測を行い，統計情報処理によって精度を確保する方法を提案した．またその具体的方法として 3D 点群データから部分平面群を抽出し，これを手掛かりに複数の 3D 点群データを精度良く重ね合わせる方法を提案し，実験により有用性を検証した．今後の課題として対象物の周囲をぐるりと廻って得たデータを全て精度良く重ね合わせる方法の検討，および重ね合わせた 3D 点群データから対象物の必要な寸法を得る方法の検討がある．

参 考 文 献Fig.18 Plane clustering result where the algorithm explained in
the section 3.1 is applied to the 3D points obtained by Fig.17.
1)

5. 考

察

5.1 点群データからの部分平面群抽出の特徴
3D スキャナで計測する点群は，対象物の寸法を最も特徴付ける角の頂点やエッジをほとんど含まず，対象物を構成する平面上のどこかである．よって点群から部分平面群を抽出し，それら平面同士の交線などからエッジや頂点を得るのは合理的であり，対象物の正確な寸法を得ることが期待できる．
3D スキャナの距離計測において，観測値の期待値が真値でばらつきのみ存在するような場合では，点群から平面を抽出する過程で観測のばらつきを平均化する効果があるため，正確な寸法計測に適することを 4.1 節の実験にて実証した．
5.2 点群から抽出した平面を手掛かりにした重ね合わせ
提案手法により，異なる方向から対象物を観測したため片方からは観測できない「外れ平面」が存在した場合でも，最小メジアン法を基本としたロバスト推定によりそれらの影響を受けずに適切な重ね合わせ処理ができることを実証した．
提案手法は，異なる方向からみた場合の同一平面を

2)
3)

4)

Point Cloud Library (PCL)：
http://www.pointclouds.org/
3D レーザースキャナ FARO-Focus X130：
http://ww w.faro.com/ja-jp/home
木村 元，岩内 也樹，中原 勇登：高速 3D スキャン
データの重ね合わせ処理による高精度計測に関する研究，日本船舶海洋工学会講演会論文集 Vol.22,
pp.383--387 (2016 年 5 月 26 日～27 日，福岡県中小企業振興センター，福岡県福岡市).
中村 匠，木村 元：KinectV2 センサーを用いた現場合わせ管の計測システムの開発，日本船舶海洋工学会講演会論文集 Vol.21, pp.607--612 (2015 年 11 月 16日～17 日，東京大学生産技術研究所,東京都目黒区).