*点群からマーチングキューブス(APSS)で面を作成(MeshLab)  [#k0eb16de]

[[MeshLab:http://meshlab.sourceforge.net/]]を使用して、マーチングキューブス法(APSS)で点群から面を作成します。

ここでは、下のようなねこの点群に面を張ります。全体的に密な点群ですが、しっぽが少し粗くなっています。

#ref(neko_point_clouds.png,center,nowrap,40%,ネコ点群);

では、MeshLabのマーチングキューブス法(APSS)で面を作成してみます。
それでは、MeshLabのマーチングキューブス法(APSS)で面を作成してみましょう。

**点群の読み込み [#p0b798a1]

まず、MeshLabを起動します。次に、ツールバーから

File > Import mesh...

と進み、ファイルの指定ダイアログから、"ism_train_cat.xyz"(このページの一番下からダウンロード)を指定して読み込みますと、下のようなネコの点群が表示されます。

#ref(read_neko_point_clouds.png,center,nowrap,40%,読み込みネコ点群);

**点群の法線ベクトルの計算 [#m80166b8]

マーチングキューブス法で面を生成するには、各点の法線ベクトルを計算しておく必要があります。

では、各点の法線ベクトルを計算しましょう。ツールバーから

Filters > Normals, Curvatures and Orientation > Compute normals for point sets

と進み、"Compute normals for point sets"ダイアログボックスを開きます。デフォルト設定のまま、"Apply"してから"Close"しますと、法線ベクトルが計算されます。(GUIの下部に、"Filter successfully completed..."というメッセージが一瞬出てから消えます。)

#ref(compute_normals.png,center,nowrap,40%,compute_normals);

 
#ref(compute_normals_for_point_sets.png,center,nowrap,60%,compute_normals_for_point_sets);

**マーチングキューブス(APSS)の適用 [#d59e7efc]

点群に対して法線ベクトルを計算しましたら、マーチングキューブス(APSS)を適用できます。ツールバーから

Filters > Point Set > Marching Cubes (APSS)

へと進み、"Marching Cubes (APSS)"ダイアログを開きます。これもデフォルト設定のまま、"Apply"します。

#ref(tool_bar_marching_cubes.png,center,nowrap,40%,tool_bar_marching_cubes);

 
#ref(dialog_box_marching_cubes.png,center,nowrap,40%,dialog_box_marching_cubes);

マーチングキューブス(APSS)を適用した結果は、下図のように、面の裏表が反転していますが、面が張られているのを見ることができます。

#ref(marching_cubes_neko_inv.png,center,nowrap,40%,marching_cubes_neko_inv);

**面の反転 [#v1e8cd83]

面の裏表が逆ですと、面がよく見えませんので面の裏表を反転させます。ツールバーから

Filters > Normals, Curvatures and Orientation > Invert Faces Orientation

へと進み、"Invert Faces Orientation"ダイアログボックスを開きます。デフォルトの設定のまま、"Apply"しますと、面の裏表が反転して、面が見やすくなります。

#ref(tool_bar_invert_faces.png,center,nowrap,40%,tool_bar_invert_faces);

 
#ref(dialog_invert_faces.png,center,nowrap,50%,dialog_invert_faces);

 
#ref(marching_cubes_neko.png,center,nowrap,40%,marching_cubes_neko);

しっぽは途切れていますが、PCLライブラリのマーチングキューブス法に比べてきれいな面がはれます。

"Marching Cubes (APSS)"ダイアログの"Grid Resolution"等のパラメータを変更すると、面の張られ方が変わるのを観察できます。

**ダウンロードとビルド [#k551ac14]
点群データ
#ref(ism_train_cat.zip)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS