【AutoCAD】ダイナミックブロックまとめ記事10選 について図面がダウンロードできない不具合を修正しました。

【完全ガイド】点群 アスキーファイル形式の違いを徹底解説|txt・asc・xyz・pts・ptxの構造と使い分け

【完全ガイド】点群アスキーファイル形式の違いを徹底解説|txt・asc・xyz・pts・ptxの構造と使い分け

3Dスキャンやレーザ測量を扱うときに欠かせない「点群データ」

しかし、実際に扱うと拡張子(.txt .asc .xyz .pts .ptx .e57 など)が多く、
「どの形式を使えばいいの?」「中身はどう違うの?」と迷う方も多いのではないでしょうか。

この記事では、アスキーファイルに特化した各形式の構造・特徴・用途をわかりやすく整理します。InfiPointsReCapCloudCompareなどを使う点群処理初心者の方に役立つ内容です。

この記事のポイント
  • アスキー形式(テキスト形式)とは何か?
  • .txt / .asc / .xyz / .pts / .ptx の構造と違い
  • それぞれのメリット・デメリット
こたろー
こたろー

「点群ファイルの違いを一度しっかり整理したい」という方は、ぜひ最後まで読んでみてください!

スポンサーリンク

 

🔰 点群ファイルとは?

点群ファイルとは、レーザースキャナやドローンのLiDARセンサーなどで計測された3次元座標の集合データです。

レーザー機器の一例
レーザー機器の一例

1点ごとに(X, Y, Z)の位置座標色情報(R, G, B)反射強度(Intensity)、分類情報などが入ります。

例えば、もっとも基本的なテキスト形式では以下のようになります。
今回の例ではそれぞれの列にX座標、Y座標、Z座標、R、G、Bを入れました↓

点群ファイル例
-0.436544 1.273005 0.601924 80 120 200
0.766518 -0.505880 0.169972 80 120 200
-0.983634 -1.224515 0.190975 80 120 200
4.514540 3.806499 1.324366 130 100 160
6.272048 5.833736 0.845609 130 100 160
5.005307 5.532624 1.673277 130 100 160

1行が1点を表し、数百万〜数千万点のデータで構成されます。
このようなファイルを総称して「アスキー形式の点群データ」と呼びます。

点群データ例
点群データ例
他にどんな形式があるの?

先ほど紹介したアスキー形式の他に「バイナリー形式」の点群データがあります。

容量が小さく、読み込みが高速ですが、メモ帳などで編集ができないのがネックです…

 
バイナリー例:.rcp / .e57 / .zfs / .fls など(専用ソフトやライブラリが必要)

 

① .txt / .asc / .xyz|最もシンプルなテキスト形式

.txt / .asc / .xyzファイルの特徴

まずは最も理解しやすい.txt .asc .xyzの3種類についてです。

ファイルの構成はシンプルで1点ごとに(X, Y, Z)の位置座標を持ち、色情報(R, G, B)などが入ります。計測結果によってはレーザーの反射強度(Intensity)が入ることもあります。

txt, asc, xyzファイル例
-0.436544 1.273005 0.601924 80 120 200 0.7764
0.766518 -0.505880 0.169972 80 120 200 0.4355
-0.983634 -1.224515 0.190975 80 120 200 0.2245
4.514540 3.806499 1.324366 130 100 160 0.6788
6.272048 5.833736 0.845609 130 100 160 0.3213
5.005307 5.532624 1.673277 130 100 160 0.4423

以上を踏まえて、.txt .asc .xyzは以下の特徴があります↓

  • 区切り文字:スペースまたはカンマ(,
  • 中身:X, Y, Z に加えて R, G, B、反射強度(Intensity)など
  • 拡張性:低い(メタ情報なし)
  • ソフト対応:AutoCAD、CloudCompare、ReCapなどほとんどのソフトで読み込み可能

メリット・デメリット

.txt .asc .xyzのメリット・デメリットをまとめます。
まずはメリットについてです。

.txt .asc .xyzのメリット
  • 読み書きが簡単!
    👉️中身を確認できるので後で修正もできます。
  • ソフト間の互換性が高い
    👉️中身がシンプルなので、大抵の点群処理ソフトで読めます。

基本的にどの点群処理ソフトでも開けます。
バイナリーファイルをtxt形式に変換して別の点群処理ソフトに持って行けます。

バイナリーファイルをアスキーファイルに変換
バイナリーファイルをアスキーファイルに変換

例えばAutoCADのReCAPで作成したファイルはバイナリーなので、開けないソフトもあります(CloudCompareなど)これをtxtファイルなどに変換すると大抵の処理ソフトで見られるようになります!

またシンプルな形式なので、自作プログラムやPython処理との相性も良いです。

こたろー
こたろー

シンプル・イズ・ベスト!


.txt .asc .xyzのデメリットは以下の通りです↓

.txt .asc .xyzのデメリット
  • ファイルサイズが大きくなる
    👉️保存が大変!読み込み時間もかかる傾向にあります。
  • スキャナ位置などの情報(メタ情報)を保持できない

最も単純な形式ではありますが、点数が数百万を超えるとファイルサイズが膨大になり、読み込み時間が長くなる傾向があります。

.txt / .asc / .xyzはどう違うの?使い分けは??

結論、拡張子が違うだけで中身はほぼ同じです。

ソフトによっては.ascや.xyzしか開けないものもあるので使い分けましょう!

ちなみに、拡張子を.txtから.ascに変更しても問題なく使えます!

 

② .pts|幅広く利用される標準形式

次は.pts についてです。

.ptsの構造

ファイルの構成は1行目に点の総数を記載して、2行目以降に(X, Y, Z)の位置座標、色情報(R, G, B)などが入ります。計測結果によってはレーザーの反射強度(Intensity)が入ることもあります。

ptsファイル例
5000
-0.436544 1.273005 0.601924 80 120 200 0.7764
0.766518 -0.505880 0.169972 80 120 200 0.4355
-0.983634 -1.224515 0.190975 80 120 200 0.2245
4.514540 3.806499 1.324366 130 100 160 0.6788
6.272048 5.833736 0.845609 130 100 160 0.3213

基本的には.txt .asc .xyzで説明した内容とほぼ同じで、1行目に点の総数が入っているだけです。

なので、用途、メリット・デメリットも .txt と同じです。

シンプルな構造なので基本的にどの点群処理ソフトでも開けます。
バイナリーファイルをpts形式に変換して別の点群処理ソフトに持って行けます!

こたろー
こたろー

一部のスキャナでは標準出力形式になる場合もあるみたいです。

 

③ .ptx|スキャナ位置を保持できる高機能形式

最後に.ptxについて説明します。

.ptxの構造

.ptx.pts よりも構造化されたテキスト形式で、スキャナ位置・姿勢(座標変換情報)を保持できるのが特徴です。

ptxファイル例
500
400
0.000 0.000 0.000
1.000 0.000 0.000
0.000 1.000 0.000
0.000 0.000 1.000
1.000 0.000 0.000 0.000
0.000 1.000 0.000 0.000
0.000 0.000 1.000 0.000
0.000 0.000 0.000 1.000
-0.436544 1.273005 0.601924 80 120 200
-0.983634 -1.224515 0.190975 80 120 200
4.514540 3.806499 1.324366 130 100 160
6.272048 5.833736 0.845609 130 100 160

ファイルの構成は1行目に行数2行目に列数を記載して、3~6行目以降にスキャン位置と座標ベクトル7~10行目にアフィン変換行列が入ります。

行番号内容
1行目「行数」(スキャン時の行数)
取得された点群の“行”数(垂直方向ピクセル数)
2行目「列数」(スキャン時の列数)
取得された点群の“列”数(水平ピクセル数)
3行目スキャナ座標系の原点位置(X,Y,Z)
4行目スキャナ座標系の X-軸方向を表すベクトル
5行目スキャナ座標系の Y-軸方向を表すベクトル
6行目スキャナ座標系の Z-軸方向を表すベクトル
7行目回転行列の第1行(ワールド→スキャナまたはその逆)
8行目回転行列の第2行
9行目回転行列の第3行
10行目並進ベクトル(平行移動)+同次変換
ptxファイル 10行目までのヘッダーについて

.ptxの特徴

.ptxの最初の10行はとても複雑でしたね…ですが、その分だけメリットもあるんです↓

.ptxでできること
  • スキャナ位置・姿勢ベクトルを保持できる
  • 画像のように格子状(行×列)で点を記録するため、スキャンの元データ構造を保てる
  • 複数スキャンが1ファイルにまとめられることもある

大きな施設を3次元計測には何ショットも計測しないといけません
.ptxなら複数点群ファイルを1つにまとめるときに精度の高い合成処理ができます。

複数ショットでの点群合成
複数ショットでの点群合成
こたろー
こたろー

少し工夫は要りますが、自作ソフトでもptxの処理はできます!

 

アスキーファイル 各形式の比較表

最後に、これまで出てきたアスキーファイルの形式とそれぞれの特徴についてまとめます。

拡張子主な用途ファイル構造メタ情報特徴
.txt / .xyz / .asc汎用・軽作業x y z (R G B)なしシンプルで互換性高い
.pts汎用・軽作業点数行+x y z (R G B / Intensity)点数のみ広く利用される業界標準
.ptx高精度スキャン共有
複数点群の合成
ヘッダー10行+x y z (R G B / Intensity)スキャナ位置・姿勢格子構造で位置情報を保持
こたろー
こたろー

私は何かと点群の合成処理をするので.ptxをよく使います。
ファイル単体で使う方は.txtや.ptsの方がシンプルでおすすめです!

 

まとめ:アスキーファイルは理解しやすく、変換にも強い

今回は、「【完全ガイド】点群アスキーファイル形式の違いを徹底解説|txt・asc・xyz・pts・ptxの構造と使い分け」について説明しました。

.txt / .xyz / .asc:座標と色情報のみのシンプルな構成。軽作業に最適
 
.pts:座標と色情報のみのシンプルな構成。ヘッダーに総点数が必要
 
.ptx:スキャナ位置情報を保持できる高機能形式
     少し複雑な情報が要るが、合成処理をするときに便利!

点群データを扱う上で、まずはアスキーファイルの中身を理解することが大切です。
内容がテキストで確認できるため、エラー解析や独自変換処理にも役立ちます。

一方、容量や速度を重視する場合は、次回紹介するバイナリ形式(e57, zfs, flsなど)を使うのをオススメします!

こたろー
こたろー

以上、こたろーでした。


スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA