資源簡介
對于激光雷達無人機航拍數據獲取的DSM數據用存在的漸進加密TIN算法進行過濾,獲取DEM
代碼片段和文件信息
temp=load(‘C:\Users\李建柱\Documents\pix4dmapper\33\2_densification\point_cloud\33_densified_point_cloud.txt‘);
?A=temp(1:300001:3);
?%以下為擬合曲面;
%{
?[qx?qy]=size(A);
?qmx=zeros(floor(qx/2)2);
?qmx(1:floor(qx/2)1)=A(1:floor(qx/2)1);
?qmx(1:floor(qx/2)2)=A(floor(qx/2)+1:floor(qx/2)*21);
?qmy=zeros(floor(qx/2)2);
?qmy(1:floor(qx/2)1)A(1:floor(qx/2)2);
?qmy(1:floor(qx/2)2)=A(floor(qx/2)+1:floor(qx/2)*22);
qmz=zeros(floor(qx/2)2);
?qmz(1:floor(qx/2)1)=A(1:floor(qx/2)3);
?qmz(1:floor(qx/2)2)=A(floor(qx/2)+1:floor(qx/2)*23);
meshc(qmxqmyqmz);
?%}
n=size(A1);?????????????????????%確定點數n
min1=min(A(1:n1));? %確定x最小值
max1=max(A(1:n1)); %確定x最大值
min2=min(A(1:n2)); %確定y最小值
max2=max(A(1:n2)); %確定y最大值
a=input(‘請輸入研究區最大尺度‘);??????????????????????????????????%?參數1
f=fix((max1-min1)/a)+1; %確定總共列數
g=fix((max2-min2)/a)+1;
C=zeros(1n);
D=zeros(1n);
for?e=1:n;
C(1e)=fix((A(e1)-min1)/a)+1; %確定每一個元素在哪一行
D(1e)=fix((max2-A(e2))/a)+1; %確定每一個元素在哪一列
end;
E=(D-1)*f+C; %確定每一個點在第幾個格網
clearvars?-except?A?E?n
F=zeros(nn);
for?b=1:n;
c=length(find(E==b));
F(b1:c)=find(E==b); %對點進行分類,第一行非零元素為在第一個網格中的點在A中的行數,
end
W=all(F==02);
F(W:)=[];
W=all(F==01);
F(:W)=[];
clearvars?-except?A?F?n
F1=size(F1);%確定F的行數
F2=size(F2);%確定F列數
?G=zeros(F1F2);
U=sum(F~=02);%U為F每一行非0個數
for?w=1:F1;
G(w1:U(w1))=A(F(w1:U(w1))3);%G的第n行元素代表第n個網格中的高程
end
clearvars?-except?G?A?F?n
G(G==0)=inf;??%G中為0的元素設為無窮大
[jJ]=min(G[]2);???????????%J代表最小值在G中的下標j代表每行最小值
[K1k2]=size(F);
K=zeros(K11);
for?i=1:K1;
K(i1)=F(iJ(i1));???????????????%由于FG對應元素相關,K為最小值在A中行數
end
L=zeros(K13);
L(1:K11:3)=A(K1:3);
- 上一篇:小波神經網絡MATLAB實現
- 下一篇:十進制二進制格雷碼的轉換
評論
共有 條評論