lasFileReader
LAS ファイルまたは LAZ ファイルから点群データを読み取り
説明
lasFileReader オブジェクトを使用すると、LiDAR 航空測量 (LAS) ファイルまたは LASzip (LAZ) ファイルから点群データを読み取ることができます。
作成
説明
入力引数
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 ファイルに格納された点群データおよびメタデータへのアクセスを提供します。readPointCloud、readCRS、および 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 要素の実数値の行ベクトルとして表されます。Xscale、Yscale、Zscale の値は、それぞれ x 軸、y 軸、z 軸の方向のスケールを表します。
R2025a 以降
この プロパティ は読み取り専用です。
xyz 座標のオフセット。[Xoffset Yoffset Zoffset] という形式の 3 要素の実数値の行ベクトルとして表されます。Xoffset、Yoffset、Zoffset の値は、それぞれ 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— レーザー リターンあたりの点の数。正の整数として表されます。
オブジェクト関数
readPointCloud | LAS ファイルまたは LAZ ファイルから点群データを読み取り |
readCRS | LAS ファイルまたは LAZ ファイルからの座標参照系データの読み取り |
readVLR | Read 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)

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)

バージョン履歴
R2020b で導入lasFileReader オブジェクトの次のオブジェクト関数は削除されました。
hasCRSData— LAS ファイルまたは LAZ ファイルに CRS データがあるかを確認するには、hasCRSData(lasReader)の代わりに~isempty(readCRS(lasReader))を使用してください。hasGPSData— LAS ファイルまたは LAZ ファイルに GPS データがあるかを確認するには、hasGPSData(lasReader)の代わりにany(lasReader.Attributes=="GPSTimeStamp")を使用してください。hasWaveformData— LAS ファイルまたは LAZ ファイルに波形データがあるかを確認するには、hasWaveformData(lasReader)の代わりにany(lasReader.Attributes=="WaveformData")を使用してください。hasNearIRData— LAS ファイルまたは LAZ ファイルに近赤外データがあるかを確認するには、hasNearIRData(lasReader)の代わりにany(lasReader.Attributes=="NearIR")を使用してください。
lasFileReader オブジェクトに、LAS 入力ファイルまたは LAZ 入力ファイルから xyz 座標のスケールとオフセットの値を読み取るための次のプロパティが追加されました。
ScaleOffset
さらに、Attributes プロパティもオブジェクトに含まれています。このプロパティは、LAS 入力ファイルまたは LAZ 入力ファイル内の使用可能な属性のリストを取得するために使用します。
lasFileReader 関数で lasFileReader オブジェクトを作成するパフォーマンスが向上しています。パフォーマンスの向上は、LAS 入力ファイルまたは LAZ 入力ファイル内の使用可能な点のレコードの数が増えるほど大きくなります。たとえば、次のコードは前のリリースより約 118 倍高速になっています。
function t = timingTest
pcfile = fullfile(toolboxdir("lidar"),"lidardata","las","aerialLidarData.laz");
lasReader = @()lasFileReader(pcfile);
t = timeit(lasReader);
endおおよその実行時間は次のとおりです。
R2024b: 0.39 秒
R2025a: 0.0033 秒
コードの時間測定は、Windows® 10、Intel® Xeon® Gold 6240R CPU@ 2.40 GHz テスト システムで関数 timingTest を呼び出して行いました。
オブジェクトのパフォーマンスの向上は、GPSTimeLimits、NumClasses、および ClassificationInfo の各プロパティを作成後すぐには取り込まないことで実現しています。したがって、前のリリースと異なり、オブジェクトの作成時間は入力ファイル内の点のレコードの数に依存しません。これらのプロパティを取り込むには、そのいずれかを表示または抽出します。たとえば、このコマンドを使用して lasFileReader オブジェクト lasReader の GPSTimeLimits プロパティを表示すると、オブジェクトの NumClasses プロパティと ClassificationInfo プロパティも取り込まれます。
lasFileReader オブジェクトの次のオブジェクト関数は将来のリリースで削除される予定です。hasCRSData、hasGPSData、hasWaveformData、および hasNearIRData。
lasFileReader オブジェクトに次のプロパティが追加されました。
SystemIdentifierGeneratingSoftwareFileCreationDateFileSourceIDProjectIDPointDataFormatClassificationInfoLaserReturnInfoVariableLengthRecords
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)