PCL: 3Dモデル(obj)からPCDフォーマットへの変換法

meshlabを使った3DモデルからPCLで使うPCDフォーマットへの変換法メモ。

3Dモデルの準備

  • plyまたはobj形式の3Dモデルを用意する。次のサイトからコーラ缶の3Dモデルcolladaフォーマットでダウンロードし、meshlabでobjフォーマットに変換した。
    • http://shapenet.cs.stanford.edu/
  • meshlabでサイズを実物[m]に合わせる
    • Filters > Normals,Curvatures and Orientation > Transform : Scaleを選択し、実際のサイズ[m]になるようにScaleを設定する。

点群データ(PCD:Point Cloud Data)への変換

  • objフォーマットからPCLライブラリで使われる点群データ形式PCDフォーマットへ変換する。pcl_mesh_samplingまたはpcl_mesh2pcdコマンドを使う。ファイルを保存するためには、ポイントクラウドが表示される画面にマウスのカーソル(ポインタ)をもっていき、wキーを押す。qキーでウインドウが閉じる。
    • pcl_mesh_sampling input.obj  output.pcd -leaf_size 0.001
      • オプション
      •   -n_samples サンプル数(デフォルト100,000)
      • -leaf_size X = the XYZ leaf size for the VoxelGrid — for data reduction (デフォルト: 0.010000 m)
    • pcl_mesh2pcd  input.obj  output.pcd -leaf_size 0.001
      • オプション
      • -level X = tesselated sphere level (default: 2)
      • -resolution X = the sphere resolution in angle increments (デフォルト:100 deg)
      • -leaf_size X = the XYZ leaf size for the VoxelGrid — for data reduction (デフォルト: 0.010000 m)

以上

コメント

タイトルとURLをコピーしました