MATLAB Answers

find関数で領域指定する方法について

32 views (last 30 days)
大石 清二
大石 清二 on 9 Dec 2020
Commented: Rik on 11 Dec 2020
現在、lasファイルを読み込み点群の領域を指定して点群を表示しようとしているのですがpcshowで元の大きい点群データが出力されてしまい領域を指定し出力ができません。どのように修正すればよいのでしょうか?
*min やmax にはそれぞれ実際の数値を入れて実行しています
*コードは以下の通りです
lasReader = lasFileReader('lasfile_name');
ptCloud = readPointCloud(lasReader);
x = ptCloud.Location(:,1);
y = ptCloud.Location(:,2);
z = ptCloud.Location(:,3);
Ix = find((x>min) & (x<max));
Iy = find((y>min) & (y<max));
Iz = find((z>min) & (z<max));
figure
pcshow(ptCloud.Location)
  1 Comment
Rik
Rik on 11 Dec 2020
Why did you flag your question? I don't see why it would not be appropriate.

Sign in to comment.

Answers (1)

Kenta
Kenta on 9 Dec 2020
pcshow(ptCloud.Location)
と、最後にもとのptCloudを表示してしまっていますね。
pcshow([x(lx),y(ly),z(lz)])
とすればいかがでしょうか。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!