資源簡介
激光雷達點云濾波的topscan算法實現,能計算精度,并繪制出地面點效果圖。
代碼片段和文件信息
A=load(‘sample?(1)-多層較大建筑物.txt‘);
SA=size(A);
for?numm=60:-4:10%將窗口大小在60*60到10*10之間循環變化
?a=topscan(nummA);%調用topscan函數,得到特定窗口大小和閾值求得的地面點集合
?m=0;
?if?(numm==60)
?????c=a;%第一次循環的結果賦給c
?end
?if?(numm~=60)
?c=setdiff(intersect(ac)0);%每次循環的結果求交集,得到迭代到當下時的地面點集合
?end
?b=setdiff([1:SA(1)]c);%得到非地面點集合
?Sc=size(c);
?Sb=size(b);
?%地面點正確劃分的個數和非地面點正確劃分的個數之和m%
for?i=1:Sc(2)
????if(A(c(i)4)==0)
????????m=m+1;
????end
end
for?i=1:Sb(2)
???if(A(b(i)4)==1)
??????m=m+1;
???end
end
%求解精度,并判斷精度是否滿足條件,滿足則停止迭代%
?PRE=m/SA(1);
??if(PRE>=0.98)
????break;
?end
end
j=1;
%繪制計算出來的地面點%
for?i=1:Sc(2)
x(j)=A(c(i)1);
y(j)=A(c(i)2);
z(j)=A(c(i)3);
j=j+1;
end
plot3(xyz‘r‘);
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????850??2014-04-10?20:43??LIARA.m
?????文件?????1316570??2007-01-27?22:09??sample?(1)-多層較大建筑物.txt
?????文件?????????797??2014-04-10?20:37??topscan.m
評論
共有 條評論