インストール方法
https://www.danielgm.net/ccにアクセスし,「Download」をクリック.
上の方はアルファ版なので,動作が安定している下のStable版をダウンロードしたほうがよい.
インストーラー起動後の設定はデフォルトでよい.
CloudCompare起動時,デフォルトは英語だが,Display > Language Translation > 日本語で日本語に変えられる.CloudCompareを再起動したら適用される.だが,一部英語のままのところもある.

代表的な機能紹介
座標や長さ,角度を測る

右上のアイコンのうち,1点の座標が知りたいときは一番左,2点の長さが知りたいときは左から2番目,3点の角度が知りたいときは左から3番目のボタンを押す.

点群の上で座標や長さ,角度を測りたい箇所を左クリックする.長さなら始点終点の2回.
以下の英語のメッセージが出てきたら,「Yes」をクリックする.


測った座標や長さ,角度は新しいものを測ると消えてしまう.前の結果を残したいときは下記のボタンをクリックする.

平行移動・回転・スケール変更
マウスとキーボードを使った平行移動と回転

マウスの左ドラッグで回転,ホイールをドラッグで平行移動.
Rotationは回転軸の自由度で,プルダウンを開いてXだけを選択するとX軸の回転のみ行う.
下のTx,Ty,Tzのチェックボックスも同様に,チェックが入った方向のみ移動が可能.

Z軸回りに30度回転など,数値を指定した平行移動と回転
編集 > 変更を適用 > 軸,角度

スケール変更
編集 > 乗算/スケール

変換行列の適用
編集 > 変更を適用 > 4×4行列
下の方に「Apply Inverse Matrix」のチェックボックスがあり,逆行列にも対応している.

実はこれらの処理はプロパティ内のTransformation historyに記録されている.数回変形した場合は,読み込み時から今の状態への変換行列が記載されている.マウスとキーボードを使った平行移動と回転で変形した場合も記録されるので,変換行列を保存しておけば(Exportタブでファイル保存かクリップボードコピーができる)後ほど同じ変形をすることが可能.
複数の点群データ等を選択している状態でスケール変更や変換行列の適用を実行すると,すべての選択したデータに適用される.

手動セグメンテーション

分割したい点群を緑の多角形で囲む.左クリックで緑の多角形の頂点を決める.すべての頂点をクリックしたら右クリックする.
この操作中は視点が固定される.視点を変えたい場合は右上のアイコンのうち,一番左のボタンをクリックする.視点を変えたらもう一度このボタンをクリックする.

分割したい点群を緑の多角形で囲んだら,下記のボタンをクリックする.

次に,下記のボタンをクリックすると,左上の”データベースツリー”内に分割した点群が追加される.

実は,複数の点群データ等を選択している状態でこの処理を行うと,すべての選択したデータで緑枠内の点群データをセグメンテーションできる.同じような工程が続く場合は省略できて便利.
複数の点群データの統合

以下のメッセージは,統合前の点群を区別するために点にxyzrgb等に加えてScalarという新しい属性をつけるかどうかを聞いている.
基本的に「いいえ」でいいが,「はい」にしても特段操作に支障はない.
この機能はノイズ除去など細かい作業の際に,まず前述の手動セグメンテーションでいくつか点群データをブロック分けして作業しやすくし,最後にノイズでない点群のグループを統合する際に役に立つ.

3Dモデルから疑似的に点群データを生成する

以下の画面が表示されるので,必要なパラメータを入力する.ノイズや欠けなどはない.

ポリラインを引く

ポリラインを引く際は頂点は点群データ内の点から選択するため,左上の”データベースツリー”内で,ポリラインを引きたい点群を事前にクリックしておく.
上記のボタンを押すと右上にメニューが表示される.線を太くしないと点群でポリラインが隠れてよく見えないため,「幅」を1から5にする.

点群の上でポリラインの頂点にしたい箇所を左クリックする.直線なら始点終点の2回.以下の英語のメッセージが出てきたら,「Yes」をクリックする.


ポリラインが引けたら,右クリックする.
下記のボタンをクリックすると,左上の”データベースツリー”内にポリラインが追加される.

ポリラインはポリラインだけ選択した状態で保存すればdxfファイルで保存できる.CADソフト等に読み込みも可能.
逆に,CloudCompareにCADソフトで作成したdxfファイルをポリラインとしてインポートすることも可能.
断面をとる

この処理はXY平面上,YZ平面上,ZX平面上に対して鉛直な断面しか取得できない.必要に応じて事前に点群を回転させる.
視点が上側(Z軸)に固定される.X軸かY軸にしたい場合は右上のメニューから切り替える.点群をクリックして,断面に対して垂直な線を引く.線が引けたら,右クリックする.
線を引くのをやり直したい場合は,”Esc”キーを押す.

右上のメニューのうち,下記のボタンをクリックする.引いた線が赤色になる.

その後,下記のボタンをクリックする.

“step”は断面を切る間隔,”width”は断面の幅を指す.それぞれの値を入力する.

紫の線で断面が表示される.

右上のメニューのうち,下記のボタンをクリックする.

“Sections thickness”は断面取得に使う点群の距離を指す.”Extract section cloud(s)” チェックすると,左上の”データベースツリー”に断面取得に使った点群が追加される.
”Extract section profile(s)” チェックすると,左上の”データベースツリー”に取得した断面が追加される.”type”は”Both”にする.”max edge length”はポリラインの1辺の最大の長さで,小さいほど複雑な,大きいほど大まかな断面になる.
“visual debug mode”をチェックすると,計算過程を見ることができる.

ポリラインは「座標や長さ,角度を測る」が使えないが,以下のようにポリラインを展開して頂点を表示し,頂点をクリックすれば,頂点が表示され「座標や長さ,角度を測る」が使える.

ICPを使った位置合わせ

ICPは大まかに位置合わせ済みの点群データでないとあまり良い結果が見込めないので,事前に平行移動や回転を使って大まかに位置合わせをしておく.
to be aligned(赤)の点群が位置合わせのために移動や回転を行う.逆にしたい場合は”Swap”をクリック.
下のRMS differnce(誤差の最大値)やFinal overlapは適宜設定.

2点群 or 点群-メッシュ間の最短距離の計算

点群-点群は左,点群-メッシュは右
点群-点群の場合,以下の画面が表示される.比較(赤)の点から,参照(黄)の点群の中で一番近い点or面の距離を計算する.逆にしたいときは”swap”を押す.

“最大距離”をチェックして,適宜最大距離の予想値を設定し,”演算”を押す.

演算後,点群にカラフルな色がつく.”OK”を押すと,比較に設定した方の点群にカラフルな色がついている.
これは比較の点から,参照の点群の中で一番近い点or面の距離の計算結果を点ごとに新たなパラメータとしてScalarに格納し,この値に基づいて点に色を付けている.下の図では,青がほぼ0で,緑→黄→赤になるにつれて距離が大きくなっていく.
左下のプロパティを下にスクロールしていくと,ヒストグラムがある.
枠内の数字(上のdisplayedと下のsaturationは基本同じ値にする)を変えると,色付きの点群の色も変わる.ヒストグラム内にある矢印と丸印をドラッグさせることでも,displayedとsaturationの値を変えられる.

法線推定
編集 > 法線 > 演算
点群データの法線推定は,上のNeighborsでパラメータを指定しているように,指定の点の半径r以内にある点もしくは近傍点N点から局所的に平面を定義して,主成分分析を使って第一主成分ベクトルを求める方法が主流なのですが,CloudCompareの法線推定では向きも計算(主成分分析ではベクトルの正負が一意に決まらないため)しているようで,解明次第追記します.

法線のDIP
法線を有する点群データを選択して,編集 > 法線 > 変換 > 法線の傾斜角と傾斜方位をスカラー領域に書き込む
以下の法線に基づく2つのパラメータを計算して各点にScalar値として格納される.
- DIP:鉛直方向(Z軸)と法線ベクトルのなす角.0~90度.下図左.
- DIP-direction:北方向(X軸)と法線ベクトルのなす角.0~360度.下図右.


背景色や点,メッシュの色を変える
表示 > 表示オプション
デフォルトのグラデーション付きの青背景はスクリーンショットを撮りにくいので,Backgroundを白や薄い灰にし,「display gradient background」のチェックを外す設定がおすすめ.

点のサイズやポリラインの太さを変える
画面左上にマウスカーソルを持っていくと,以下の画面が出てくる.+-で点のサイズや線の太さを変えられる.

個別に点のサイズやポリラインの太さを変えたい場合は,データベースツリーから指定の点群を選択し,プロパティ内の”Point size”をクリックして,指定のサイズに変える.”初期設定”は前述した方法で設定した点群のサイズが適用され,デフォルトでは1.

点群を1色に塗りつぶす
編集 > 色 > 固有値に設定
基本カラー内から好きな色をクリックするか,右上のカラーバーで微調整もしくは右下のパラメータを入力で色を指定して,”OK”をクリック.

スクリーンショットの作成
表示 > ファイルをレンダリング
保存先を指定して”OK”をクリック.
初期設定では拡張子がbmpだが,File Nameの末尾の拡張子を変えれば,pngやjpgでも保存可能.
※連番機能がないため,2枚以上連続で保存するときは前のデータと同じ名前にして上書きしてしまわないよう注意.
