CloudCompareについて
CloudCompareの紹介
CIMやi-constructionの流れにより活用が盛んになってきている点群データですが、その処理をしてくれるソフトはあまり多くなく、特に無料のフリーソフト機能が充実しているソフトは多くありません。ここでは点群データの処理が可能なフリーソフトで、個人的に一番機能が充実していて使い易いと感じた「CloudCompare」を紹介しています。
CloudCompareをまだインストールされていない方は以下のサイトからダウンロードが可能です。
基本画面について
CloudCompareの基本画面に表示されているツールバーは各機能の一部を表示しているものです。個人的には使用しない機能の方が多く、作業を行う際にはメニューから処理を選ぶことの方が多いです。そのためツールバーの説明は省いて、これ以降の説明についても基本的にメニューから処理を選択する観点で紹介をします。
それでも概要として基本画面について簡単に説明しておきます。
①Viewing Tool:表示に関する設定や視点の設定などを操作するツール。平面表示(Set top view)や正面表示(Set fromt view)などは少し便利です。
②③各種ツールバー:「ファイルを開く」程度は使用するが、他のボタンは使用するかは作業内容などによって人それぞれ、基本的にどのボタンもメニュー内にもあるので、よく使用するボタンだけ覚えておきましょう。
④Console:処理内容が表示されるウィンドウ。上手く処理できない時などはエラー内容なども表示される。

紹介する操作
CloudCompareには多くの機能があるため、その中から基本的な操作やよく使いそうな機能として以下の操作について紹介をします。内容が多くなってしまうので、基本的な使い方と応用・活用法の2回に分けて紹介していきます。
【基本的な使い方】
①ファイルの読み込み
②カラーの変更(段彩設定)
③単純なメッシュの構築
④メッシュの構築(ポアソン表面再構成)
【応用および活用】
⑤値の抽出
⑥点群データの間引き(サンプリング)
⑦格子データ・等高線データの作成(ラスタライズ)
⑧任意形状での切り取り・マスキング
⑨断面図の作成
具体的な使用方法
ドローンの空撮画像からSfM解析で作成したサンプルデータを用いて使用方法を説明していきます。サンプルデータは以下のリンクからダウンロード出来るようにしてあるので、どうぞご活用ください。
ファイルの読み込み
点群データの読み込みは「Open」でファイルを指定して開く形で読み込む。読み込み時に「何行目から読み込むか?」「各値がXYZ?RGB?NxNyNz?」「分割を示すものの指定」などを設定することができ、多少のフォーマット違いは気にせずに読み込める形になっている。
その後にデータ全体のシフトや倍率を指定し、ファイルを読み込む。


カラーの変更(段彩設定)
点群データにRGBが含まれていない場合やデータの高低差を明示したい場合などに点群データの色付けを行いたいことがある。
主な機能としては「グレースケールへの変更」「高低差による色付け」があり、もちろん単色への一括変更なども可能である。
高低差による色付けは、まず左上のDB Treeで点群データを選択し「Edit」→「Color」→「Height Ramp」から行う。
色付けの種類は「Default」「Custom」「Banding」が選択できるが、段彩は「Banding」で「Period」を1程度にすると良い。
色付けについては任意の値を指定して色付けなどが出来ないため、その点に不満が残る。

単純なメッシュの構築
点群データからメッシュを構築するにはいくつか方法がありますが、まずは単純に点同士を三角メッシュでつなぐメッシュの構築を説明する。
操作としては左上のDB Treeで点群データを選択し「Edit」→「Mesh」→「Delaunay 2.5D」から行う。
「Delaunay 2.5D」には「XY Plane」と「best fitting plane」の2つがあるが、どのように違いがあるのかはよくわからない。試した感じでは「best fitting plane」の方が作成されるメッシュの色が良い感じがする。
このメッシュ構築では点群データを間引かないため、精度を保持したメッシュが構築できる。ただその一方で点群データを間引かないことより、メッシュ数が多くなりやすくデータとして取り回し難く可能性がある。
また他の注意点としてメッシュ作成時に点密度や頂点方向などを考慮していないのか、オーバーハングなどの処理が良くないことある。そのため不可視部分が多い点群データからメッシュを構築する際に特に注意が必要となる。



メッシュの構築(ポアソン表面再構成)
先ほど、説明した「単純なメッシュの構築」では点群データを間引かずにメッシュを構築したが、今度説明する方法では点群データの点密度や頂点方向などを解析しメッシュを構築する方法を説明する。
操作としては左上のDB Treeで点群データを選択し「Plugins」→「Poisson Recon」から行う。
このメッシュ構築方法は「ポアソン表面再構成(Poisson Surface Reconstruction)」という解析を用いてメッシュを構築する方法である。詳しい解析方法などは分からないが、こちらのメッシュ構築方法では先ほどの単純なメッシュ構築では上手く処理できなかったオーバーハング部分などの処理も対応できることが多い。
メッシュ構築方法としては点群データを解析してメッシュを構築しているため、「Octree depth」等の設定値を低く設定するとメッシュが粗くなってしまうという点に注意が必要である。
試してみたところ「Octree depth:12」程度に設定してメッシュを構築するとそれなりに細かいメッシュが構築できる感じがある。また点群データを解析するため、このメッシュ構築方法は処理時間がかかるため、PCスペックや処理時間などについても注意が必要である。

