Mugichoko's blog

Mugichoko’s blog

プログラミングを中心としたメモ書き.

MeshLabで点群を処理

目標

MeshLabにおいて,RGB-Dカメラから得た点群データを処理する基本的な操作を身に着ける.

点群データの読み込み

ファイルをMeshLabのウィンドウにドラッグ&ドロップ.追加する場合もどんどんドラッグ&ドロップすればよい.以下は,KinectのRGB-D画像から再構成した点群と自分で作った物体(以下の図中の黄色と青い物体)をインポートした例.現在選択しているデータは右の小枠に黄色で示されている.

f:id:Mugichoko:20180307183523j:plain

移動・回転・拡大縮小

カメラの操作

  • 移動
    • Ctrl + ドラッグ
  • 回転
    • ドラッグ
  • 拡大縮小
    • Shift + ドラッグ
    • マウスホイール

データの操作

  • 移動
    • Filters/Normals, Curvatures and Orientation/Transform: Translate, Center, set Origin
    • f:id:Mugichoko:20180307182903j:plain:h15 → tキー → ドラッグ(x/y/zキーで軸を指定)→ Enterキーで反映
  • 回転:
    • Filters/Normals, Curvatures and Orientation/Transform: Rotate
    • f:id:Mugichoko:20180307182903j:plain:h15 → rキー → ドラッグ(x/y/zキーで軸を指定)→ Enterキーで反映
  • 拡大縮小
    • Filters/Normals, Curvatures and Orientation/Transform: Scale, Normalize

f:id:Mugichoko:20180307182903j:plain:h15で操作した場合,もう一度このボタンを押さないと他の操作に移れない

点群のメッシュ化

  1. Filters/Remeshing, Simplification and Reconstruction/Surface Reconstruction: Ball PivotingSurface Reconstruction: Ball Pivotingウィンドウを開く
  2. Applyボタンを押す
    • 私のノートパソコンで数十秒かかった

以下が,上記の処理の結果. f:id:Mugichoko:20180307190203j:plain ↓ 上の図の点群が,下の図のメッシュに変換される f:id:Mugichoko:20180307190218j:plain

位置合わせ

先ほどインポートした2つのデータを合わせたいと思う.メッシュ同士でなくとも,今回の様に,点群とメッシュの2種類のデータの位置合わせもできるようだ.便利.

  1. 手動で大体の位置合わせをしておく f:id:Mugichoko:20180307184229p:plain
  2. f:id:Mugichoko:20180307183946j:plain:h15ボタンを押してAlign Toolを開く
  3. Glue Here Visible Meshesを押す
  4. Processボタンを押す f:id:Mugichoko:20180307184538j:plain
  5. Filters/Mesh Layer/Flatten Visible LayersApplyボタンを押す
    • メッシュが残って点群が消えたけれど,また読み込めばいいので,とりあえずは良しとする
    • この操作を行わないと,このデータを出力した際に4の結果が反映されない...
  6. File/Export Mesh As... (Ctrl + Shift + E)で出力

所感

とても便利だが,若干,操作に難あり.今後も何か便利な機能があれば書き留めておきたい.