資源簡介
利用Matlab計算三維點云中每個點的單位法向量與特征值。
通過計算當前點與其鄰域點的協方差矩陣,進而求得法向量。
通過計算當前點與其鄰域點的協方差矩陣,進而求得法向量。
代碼片段和文件信息
A?=?load(‘Vaihingen_building1.txt‘);
[M~]?=?size(A);
data?=?A;?
normal?=?zeros(M3);
EVs?=?zeros(M3);
k?=?15;
idx?=?knnsearch(datadata‘Distance‘‘euclidean‘‘NSMethod‘‘kdtree‘‘K‘k);?
for?i?=?1:M
????%%%?當前點鄰域點集索引
????idx_cur?=?idx(i2:end);??
????%%%?當前點鄰域點集
????knb_pts?=?data(idx_cur1:3);
????[normal(i:)EVs(i:)]?=?EV(knb_pts);
end
normal(find(normal(:3)<0):)?=?-normal(find(normal(:3)<0):);
figure;
scatter3(data(:1)data(:2)data(:3)20‘k‘‘filled‘)
hold?on
quiver3(data(:1)data(:2)data(:3)normal(:1)normal(:2)normal(:3)‘r‘)
axis?equal?vis3d
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????613??2020-03-26?13:35??demo_EV.m
?????文件????????940??2020-03-26?09:39??EV.m
?????文件?????101934??2020-03-26?09:52??result.png
?????文件??????50876??2019-06-04?15:14??Vaihingen_building1.txt
-----------?---------??----------?-----??----
???????????????154363????????????????????4
- 上一篇:karman譜擬合
- 下一篇:基于灰度投影的圖像配準MATLAB
評論
共有 條評論