点群データから等高線​を作成して、面積を集​計する方法

16 ビュー (過去 30 日間)
Takaaki Takatsuki
Takaaki Takatsuki 2023 年 8 月 24 日
回答済み: Hiro Yoshino 2023 年 8 月 24 日
こんにちは、MATLABでの質問です。
X,Y,Z,C(Cは濃度など)の点群データから任意の値でのサーフェスを作成して体積を求める方法はないでしょうか。
点群の表示はscatter3(x,y,z,5,c,'filled') で出来たのですが、そのあとの処理が見つかりません。
もしくは、
X,Y,Zのデータセットから任意値の等高線を作成して、その等高線に囲まれた面積を修正する方法は無いでしょうか。

採用された回答

Hiro Yoshino
Hiro Yoshino 2023 年 8 月 24 日
データ、コードを一緒に入れていただくと、回答者が取り組みやすくなります。
こんな感じで入れてみては?
x = randn(100,1);
y = randn(100,1);
z = randn(100,1);
scatter3(x,y,z);
データをフィットさせます
Fobj = fit([x,y],z,'nearestinterp'); % 最近傍法による曲面近似, 色々とやり方が有ります
% 新しいグリッド
[Xi,Yi] = meshgrid(linspace(min(x),max(y),50),linspace(min(y),max(y),50));
Zi = Fobj(Xi,Yi); % 推定値
ここまでくれば積分も出来る様に思えます:
surf(Xi,Yi,Zi);

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLIDAR および点群の処理 についてさらに検索

製品


リリース

R2023a

Community Treasure Hunt

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

Start Hunting!