メインコンテンツ

lasFileReader

LAS ファイルまたは LAZ ファイルから点群データを読み取り

説明

lasFileReader オブジェクトを使用すると、LiDAR 航空測量 (LAS) ファイルまたは LASzip (LAZ) ファイルから点群データを読み取ることができます。

作成

説明

lasReader = lasFileReader(fileName) は、指定された LAS ファイルまたは LAZ ファイルである fileName のヘッダー情報に基づいてプロパティが設定された LAS ファイル リーダーを作成します。このリーダーは LAS 1.4 仕様までをサポートしています。

入力引数

すべて展開する

LAS ファイルまたは LAZ ファイルの名前。文字ベクトルまたは string スカラーとして指定します。ファイルが MATLAB® パス上にない場合は、そのファイルの絶対パスを指定しなければなりません。

この引数は FileName プロパティを文字ベクトルとして設定します。

メモ

点群関数は、直交座標のデータを前提としています。LAS ファイルまたは LAZ ファイルに地理座標のデータが含まれる場合は、データを直交座標に変換しなければなりません。点群データの確認方法および地理座標から直交座標への変換方法の詳細については、Visualize Point Clouds on Maps Using Coordinate Reference System from LAS/LAZ Filesの例の「Working with Geographic CRS」のセクションを参照してください。

データ型: char | string

出力引数

すべて展開する

LAS ファイルまたは LAZ ファイル リーダー。lasFileReader オブジェクトとして返されます。このオブジェクトは、指定した LAS ファイルまたは LAZ ファイルに格納された点群データおよびメタデータへのアクセスを提供します。readPointCloudreadCRS、および readVLR などのオブジェクト関数を使用すると、点群データ、座標参照系情報、および可変長レコードをそれぞれ読み取ることができます。

プロパティ

すべて展開する

ファイル ヘッダー情報

この プロパティ は読み取り専用です。

このプロパティはオブジェクトの作成後は読み取り専用になります。このプロパティを設定するには、lasFileReader 関数を呼び出すときに fileName 引数を使用します。

LAS ファイルまたは LAZ ファイルの名前。文字ベクトルとして表されます。

この プロパティ は読み取り専用です。

LAS ファイルまたは LAZ ファイルのバージョン。文字ベクトルとして表されます。

この プロパティ は読み取り専用です。

ファイル作成日。datetime オブジェクトとして表されます。

この プロパティ は読み取り専用です。

LAS ファイル ソース識別子。非負の整数として表されます。値の範囲は [0 ~ 65535] です。この値が 0 に設定されている場合、ID は割り当てられていません。LAS ファイル内の各点を一意に識別するには、ProjectID プロパティと FileSourceID プロパティを使用します。

この プロパティ は読み取り専用です。

プロジェクト ID。string スカラーとして表されます。この値はグローバル一意識別子 (GUID) です。LAS ファイル内の各点を一意に識別するには、ProjectID プロパティと FileSourceID プロパティを使用します。

この プロパティ は読み取り専用です。

LAS ファイルの生成に使用されたシステムの名前。string スカラーとして表されます。

この プロパティ は読み取り専用です。

生成ソフトウェアの名前。string スカラーとして表されます。この名前は、LAS ファイルの作成に使用された生成ソフトウェアを指します。

この プロパティ は読み取り専用です。

可変長レコード (VLR) または拡張 VLR の情報。table として表されます。レコードについて記述した次の情報が table の各行に格納されます。

  • Record ID — レコード識別番号。正の整数として表されます。

  • User ID — レコード ID に関連付けられたユーザー ID。string スカラーとして表されます。

  • Description — レコードの説明。string スカラーとして表されます。

点データの概要

この プロパティ は読み取り専用です。

ファイル内の点の数。正の整数として表されます。

この プロパティ は読み取り専用です。

すべての点のレーザー リターンの最大数。正の整数として表されます。

この プロパティ は読み取り専用です。

すべての点の分類値の最大数。正の整数として表されます。

メモ

lasFileReader 関数は、オブジェクト作成時にこのプロパティを取り込みません。lasFileReader オブジェクト lasReader のこのプロパティを取り込むには、コマンド ウィンドウで lasReader.NumClasses と入力します。このコマンドにより、オブジェクトの GPSTimeLimits プロパティと ClassificationInfo プロパティも取り込まれます。

この プロパティ は読み取り専用です。

点データ レコード フォーマット ID。範囲 [0, 10] の非負の整数として表されます。0 ~ 5 の間の点データ レコード フォーマットの値には、GPS、カラー チャネル、または波束に関する情報がオプションで含まれます。6 ~ 10 の間の値には、カラー チャネル、近赤外、または波束に関する情報がオプションで含まれます。

点データ レコード フォーマットの詳細については、ASPRS LAS ワーキング グループ ページの LAS フォーマット標準を参照してください。

空間情報

この プロパティ は読み取り専用です。

x 軸方向の座標の範囲。2 要素ベクトルとして格納されます。

この プロパティ は読み取り専用です。

y 軸方向の座標の範囲。2 要素ベクトルとして格納されます。

この プロパティ は読み取り専用です。

z 軸方向の座標の範囲。2 要素ベクトルとして格納されます。

R2025a 以降

この プロパティ は読み取り専用です。

xyz 座標のスケール。[Xscale Yscale Zscale] という形式の 3 要素の実数値の行ベクトルとして表されます。XscaleYscaleZscale の値は、それぞれ x 軸、y 軸、z 軸の方向のスケールを表します。

R2025a 以降

この プロパティ は読み取り専用です。

xyz 座標のオフセット。[Xoffset Yoffset Zoffset] という形式の 3 要素の実数値の行ベクトルとして表されます。XoffsetYoffsetZoffset の値は、それぞれ x 軸、y 軸、z 軸の方向のオフセットを表します。

時間情報

この プロパティ は読み取り専用です。

GPS タイムスタンプ読み取り値の範囲。2 要素の duration ベクトルとして表されます。

メモ

lasFileReader 関数は、オブジェクト作成時にこのプロパティを取り込みません。lasFileReader オブジェクト lasReader のこのプロパティを取り込むには、コマンド ウィンドウで lasReader.GPSTimeLimits と入力します。このコマンドにより、オブジェクトの NumClasses プロパティと ClassificationInfo プロパティも取り込まれます。

属性情報

R2025a 以降

この プロパティ は読み取り専用です。

使用可能な属性のリスト。string 配列として表されます。このプロパティは、ファイル内にあるすべての属性を特定するために使用します。readPointCloud オブジェクト関数を使用して、使用可能なすべての属性を読み取ることもできます。

この プロパティ は読み取り専用です。

分類情報。table として表されます。点のクラスについて記述した次の情報が table の各行に格納されます。

  • Classification Value — クラスの一意の分類 ID 番号。正の整数として表されます。

  • Class Name — クラスに関連付けられたラベル。string スカラーとして表されます。

  • Number of Points by Class — クラスに含まれる点の数。正の整数として表されます。

メモ

lasFileReader 関数は、オブジェクト作成時にこのプロパティを取り込みません。lasFileReader オブジェクト lasReader のこのプロパティを取り込むには、コマンド ウィンドウで lasReader.ClassificationInfo と入力します。このコマンドにより、オブジェクトの GPSTimeLimits プロパティと NumClasses プロパティも取り込まれます。

この プロパティ は読み取り専用です。

レーザー リターン情報。table として表されます。レーザー リターンについて記述した次の情報が table の各行に格納されます。

  • Laser Return Number — レーザー リターン番号。正の整数として表されます。

  • Number of Points by Return — レーザー リターンあたりの点の数。正の整数として表されます。

オブジェクト関数

readPointCloudLAS ファイルまたは LAZ ファイルから点群データを読み取り
readCRSLAS ファイルまたは LAZ ファイルからの座標参照系データの読み取り
readVLRRead variable length record from LAS or LAZ file

すべて折りたたむ

LAZ ファイルから点群データおよびヘッダー情報を読み取るために使用する lasFileReader オブジェクトを作成します。

filepath = fullfile(toolboxdir("lidar"),"lidardata", ...
    "las","aerialLidarData.laz");
lasReader = lasFileReader(filepath);

関数 readPointCloud を使用して、点群データを LAZ ファイルから読み取ります。

ptCloud = readPointCloud(lasReader);

点群を可視化します。

figure
pcshow(ptCloud.Location)

Figure contains an axes object. The axes object contains an object of type scatter.

LAZ ファイルから点群データおよびヘッダー情報を読み取るために使用する lasFileReader オブジェクトを作成します。

path = fullfile(toolboxdir("lidar"),"lidardata", ...
    "las","aerialLidarData.laz");
lasReader = lasFileReader(path);

readPointCloud 関数を使用して、LAZ ファイルから点群データおよび分類属性を読み取ります。

[ptCloud,pointAttributes] = readPointCloud(lasReader,Attributes="Classification");

分類ラベルを RGB カラーに変換し、点群の構造に合わせて形状を変更します。

labels = label2rgb(pointAttributes.Classification);
colorData = reshape(labels,[],3);

色情報を使用して点群を可視化します。

figure
pcshow(ptCloud.Location,colorData)

Figure contains an axes object. The axes object contains an object of type scatter.

バージョン履歴

R2020b で導入

すべて展開する