LoginSignup
29
21

More than 5 years have passed since last update.

点群にメッシュをフィッティング!!

Last updated at Posted at 2019-03-29

背景

センサーで撮影した点群をメッシュにするという要求に対して、最終的にたどり着いた手法を紹介する。
前提として、点群にメッシュをフィッティングする(Registration)手法上、テンプレートとなるメッシュが必要になる。

手法紹介

以下の論文に記載された手法を実装した。
Template Deformation for Point Cloud Fitting

Screenshot from 2019-03-25 17-36-21.png
図1. 手法外観

手法の特徴

  • 点群にメッシュをフィッティングさせる
  • 点群はある程度欠損したりノイズが入っていてもよい
  • 初期位置合わせのために、メッシュと点群で対応する点とその点の局所的な座標軸を数点〜数十点選択する必要がある
    • ただし、精密である必要はなく大まかでよい
  • メッシュの局所的な形状性質を保つ

手法解説

手法を図1.の図を交えて解説する。

  1. 図1.(a)(b)の赤い点で表現されているように、メッシュと点群間の対応点(ランドマーク)を探す
  2. 図1.(a)(b)の赤い点から伸びている緑と青の線のように、局所座標軸を求める
  3. 初期変形を求めるため、局所座標軸の対応関係から局所的な回転を算出し、対応関係を持たない点の回転は内挿で補完する
  4. 求めた局所回転と対応点の位置制約から初期変形を行うと図1.(c)のようなスケールが考慮されていない結果となる
  5. スケールを考慮するため、メッシュの対応点の変形前と変形後の距離比率の平均をスケール係数として用いて適用させると図1.(d)の結果となる
  6. その後、変形したメッシュの各頂点の近傍に存在する点群を位置制約として、繰り返し処理を行うことでよりよい変形結果を得る
    • 図1. (e)(f)(g)はそれぞれ処理を1、2、4回適用した結果となる
  7. 最後に、近傍点が見つからなかった点に対して、初期変形と最終変形の変形差をもとに補完した変形を伝播することでデータ欠損に対応する

    • 下図参照

    Screenshot from 2019-03-25 18-49-37.png
    図2. 変形伝播の効果を示すシリンダー変形

実装結果

まとめ

  • ランドマーク探しは今回は手動で行ったが、メッシュに対して同じような姿勢の点群であれば自動検出もできる
  • 局所座標軸は自動検出できている
  • スケール変化、回転、形状変化している点群にメッシュをフィッティングできた
  • 初期変形でおおよそのフィッティングができている
  • 繰り返し処理は4回で最終変形結果を得ることができた

以下は、実務の経験上

  • 得られる点群は異なるが、メッシュは同じ構造にしたい場合に非常に便利
    • 異なる点群から同じメッシュ構造を得ることはかなり大変!
    • メッシュ構造が同じであれば、メッシュ構造に密な処理をかけることができる

最後に

ヒトやモノをデータ化&解析してみたい、という方。
3D技術と深層学習を組み合わせて、何か面白いサービスを作ってみたい!、という方。

弊社では一緒に働いてくれる仲間を大募集しています。

ご興味がある方は下記リンクから是非ご応募ください!
https://about.sapeet.com/recruit/

参考

29
21
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
29
21