金子邦彦研究室研究道具箱と教材オープンデータとビッグデータ処理Point Cloud に関する操作

Point Cloud に関する操作

R + rgl を用いて表示

csv を R + rgl を使って表示

pcd (バイナリ形式)は、藤井くん作成のプログラムを使って csv に変換してください

#!/bin/bash

# libpci + kinnect dataset (point cloud dataset)
# fgrep -v QNAN 2013.09.11.07.19.45.753.pcd > /tmp/a.$$.csv
fgrep -v QNAN 2013.09.11.08.53.23.732.pcd > /tmp/a.$$.csv
cat >/tmp/a.$$.r<16
# plot3d(x = T\$V1, y = T\$V2, z = T\$V3, col = sprintf("#%6.6X", T\$V4) )
plot3d(x = T\$V1, y = T\$V2, z = T\$V3, col = sprintf("#%s", T\$V4) )
Sys.sleep(100)
EOF
cat /tmp/a.$$.r | r

メッシュに変換

 meshlabserver -i Sinus_pts.asc -o hoge.stl -s hoge.mlx

hoge.mlx

<!DOCTYPE FilterScript>
<FilterScript>
 <filter name="Surface Reconstruction: Ball Pivoting">
  <Param type="RichAbsPerc" value="0" min="0" name="BallRadius" max="4113.47"/>
  <Param type="RichFloat" value="20" name="Clustering"/>
  <Param type="RichFloat" value="90" name="CreaseThr"/>
  <Param type="RichBool" value="false" name="DeleteFaces"/>
 </filter>
</FilterScript>
このスクリプトは「Filters」→「show current filter script」と操作し、スクリプトをファイルに保存することで生成できる.

see also: https://lcni.uoregon.edu/

  1. meshlab を起動
    meshlab
    
  2. File → Import Mesh と操作
  3. ファイルを選ぶ
  4. 「Grid triangulation」をチェックし「OK」をクリック

    [image]
  5. 表示される

    [image]
  6. 「Filters」 → 「Remeshing, simplification and reconstruction」 → 「Surface reconstruction : Ball Pivoting 」 と操作する
  7. 「Delete Initial set of Faces」をチェックする

    デフォルトのパラメータをそのまま使うと次の通り

    [image]
  8. 「Render」 → 「Render Mode」 → 「Flat Lines」 と操作する

    「File」 → 「Save As」と操作して保存

  9. 上記の操作を自動化したいときは、 MXL ファイルを生成する * MLX ファイルは、meshlab で「Filters」→「show current filter script」と操作し、スクリプトをファイルに保存する.エディタで開き、中身を調整