Matlab读取点云数据显示
求matlab讀取三維點(diǎn)云數(shù)據(jù)的程序。
??????? clear
??????? A=importdata(‘data.txt’);
??????? [IX,IY]=size(A);
??????? x=A(:,1);
??????? y=A(:,1);
??????? y=A(:,2);
??????? z=A(:,3);
??????? plot3(x,y,z,’.’);
??????? grid on
Matlab相關(guān)函數(shù):
??? gallery()
??? 函數(shù)是一個(gè)測試矩陣生成函數(shù)。
??? 當(dāng)需要對某些算法進(jìn)行測試的時(shí),利用gallery函數(shù)生成各種性質(zhì)的測試矩陣。
??? 格式:
??? [A,B,C,…] = gallery(matname,P1,P2,…,classname)
??? 其中,matname表示矩陣性質(zhì),classname表示矩陣元素類型single或double。
??? 例如:在一個(gè)平面上隨機(jī)生成10個(gè)點(diǎn)并作出這些點(diǎn)的 voronoi diagram.
x = gallery('uniformdata',[1 10],0);? ?
y = gallery('uniformdata',[1 10],1);? ?
voronoi(x,y);
2.tetramesh()
功能:繪制四面體
格式:
tetramesh(T,X,c)
tetramesh(T,X)
tetramesh(TR)
h=tetramesh(…)
示例:
clear
??????? d=[-1 1];
??????? [x,y,z] = meshgrid(d,d,d);
??????? x=[x(:);0];
??????? y=[y(:);0];
??????? z=[z(:);0];
??????? dt=DelaunayTri(x,y,z);
??????? Tes=dt(:,:);
??????? X=[x(:) y(:) z(:)];
??????? tetramesh(Tes,X);
??????? camorbit(20,0);
???????
??? griddata()
??? 功能: 數(shù)據(jù)格點(diǎn)
??? 格式 :
??? (1)ZI = griddata(x,y,z,XI,YI)
??? 用二元函數(shù)z=f(x,y)的曲面擬合有不規(guī)則的數(shù)據(jù)向量x,y,z。griddata 將返回曲面z 在點(diǎn)(XI,YI)處的插值。
??? 曲面總是經(jīng)過這些數(shù)據(jù)點(diǎn)(x,y,z)的。
??? 輸入?yún)⒘?#xff08;XI,YI)通常是規(guī)則的格點(diǎn)(像用命令meshgrid 生成的一樣)。
??? XI 可以是一行向量,這時(shí)XI 指定一有常數(shù)列向量的矩陣。類似地,YI 可以是一列向量,它指定一有常數(shù)行向量的矩陣。
??? (2)[XI,YI,ZI] = griddata(x,y,z,xi,yi)
??? 返回的矩陣ZI 含義同上,同時(shí),返回的矩陣XI,YI 是由行向量xi 與列向量yi 用命令meshgrid 生成的。
??? (3)[XI,YI,ZI] = griddata(…….,method)
??? 用指定的算法method 計(jì)算:
??? ‘linear’:基于三角形的線性插值(缺省算法);
??? ‘cubic’: 基于三角形的三次插值;
??? ‘nearest’:最鄰近插值法;
??? ‘v4’:MATLAB 4 中的griddata 算法。
??? ‘cubic’ 和 ‘v4’ 生成平滑曲面,
??? ‘linear’ 和 ‘nearest’ 分別具有一階導(dǎo)數(shù)和零階導(dǎo)數(shù)不連續(xù)。 除’v4’ 外所有方法基于數(shù)據(jù)的三角化。
??? meshgrid()
??? 功能:生成網(wǎng)格矩陣,可以是二維網(wǎng)格矩陣,也可以是三維。
??? 格式:
??? 二維
??? [x y]=meshgrid(a b); % a 和b是一維數(shù)組
??? 如a=[1 2 3]; b= [2 3 4 ]; 則生成的 x 和 y 都是二維的矩陣,
??? x 的每行都是 1 2 3,共三行,y 每列都是2 3 4,共三列。
??? 三維
??? 與二維一樣 :[x y z]=meshgrid(a b c) ; %算出的結(jié)果根據(jù)二維的類推
??? 示例:
a=[1 2 3];
b=[2 3 4];
[x,y]=meshgrid(a,b)
x =
???? 1???? 2???? 3
???? 1???? 2???? 3
???? 1???? 2???? 3
y =
???? 2???? 2???? 2
???? 3???? 3???? 3
???? 4???? 4???? 4
總結(jié)
以上是生活随笔為你收集整理的Matlab读取点云数据显示的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PCL点云库用Poisson网格化实现点
- 下一篇: PCL点云曲面重采样三种方法:上采样,下