资源简介
根据读取文献,自己写的一个基于法向量的点云数据精简的算法,写的比较简单,有注释也通俗易懂。可以更改REM7的取值(0<REM7<=1),来调整精简比例。

代码片段和文件信息
P0 = load(‘surfacewithnormal.txt‘);
XX=P0;
figure(1);
quiver3(P0(:1)P0(:2)P0(:3)-P0(:4)-P0(:5)-P0(:6)‘r‘);
hold on;
plot3(XX(:1)XX(:2)XX(:3)‘b.‘);
P1=[XX(:1)XX(:2)XX(:3)];
P2=[XX(:1)XX(:2)XX(:3)];
n=size(XX1);
%最近邻的8个点
idx=knnsearch(P1P2‘k‘9);
o=0;
%计算V‘的值
for i = 1:n
for j = 2:9
a=[XX(i4)XX(i5)XX(i6)];
b=XX(idx(ij):);
b1=[b(:4)b(:5)b(:6)];
al=abs(dot(ab1));
o=o+al;
end
Z(i)=1-(o/8);
o=0;
end
Z=Z‘;
%对V‘分类
lei1=0lei2=0lei3=0lei4=0lei5=0lei6=0lei7=0;
for i=1:n
if(Z(i)>=0&&Z(i)<0.003)
lei1=lei1+1;
class1(lei1:)=P1(i:);
end
if(Z(i)>=0.003&&Z(i)<0.004)
lei2=lei2+1;
class2(lei2:)=P1(i:);
end
if(Z(i)>=0.004&&Z(i)<0.008)
lei3=lei3+1;
class3(lei3:)=P1(i:);
% class3(lei3:)=P0(i:);
end
if(Z(i)>=0.008&&Z(i)<0.016)
lei4=lei4+1;
class4(lei4:)=P1(i:);
end
if(Z(i)>=0.016&&Z(i)<0.032)
lei5=lei5+1;
class5(lei5:)=P1(i:);
end
if(Z(i)>=0.032&&Z(i)<0.064)
lei6=lei6+1;
class6(lei6:)=P1(i:);
end
if(Z(i)>=0.064&&Z(i)<=1)
lei7=lei7+1;
class7(lei7:)=P1(i:);
end
end
%按照分类类别进行精简
%class7的采样比列REM(7)为0.9
SIMall=0.2REM(7)=0.9;
for i = 1:6
REM(i)=REM(7)*[(2*i-1)/13];
end
%确定抽样比列
for i =1:7
sample(i)=fix(1/(REM(i)));
end
class1=class1(1:sample(1):end:);
class2=class2(1:sample(2):end:);
class3=class3(1:sample(3):end:);
class4=class4(1:sample(4):end:);
class5=class5(1:sample(5):end:);
class6=class6(1:sample(6):end:);
class7=class7(1:sample(7):end:);
%把七个类别加起来
classlater=[class1;class2;class3;class4;class5;class6;class7];
%显示精简后的模型
figure(2);
plot3(classlater(:1)classlater(:2)classlater(:3)‘b.‘);
%hold on;
%quiver3(P0(:1)P0(:2)P0(:3)P0(:4)P0(:5)P0(:6)‘r‘)
save P1.txt classlater -ascii;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 575738 2018-04-24 15:00 surfacewithnormal.txt
文件 2075 2018-11-02 10:07 normal.m
----------- --------- ---------- ----- ----
577813 2
- 上一篇:灰度均值MATLAB源程序
- 下一篇:光伏电池板模型 simuli
nk
相关资源
- 串行级联cpm系统MATLAB仿真
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 阵列天线的matlab仿真
- 天线阵的波束形成在MATLAB仿真程序及
- OFDM系统MATLAB仿真代码
- CRC循环冗余校验的matlab仿真程序
- (7,4)循环码-信道编码的matlab仿真
- MIMO雷达DOA估计中的克拉美罗界计算
- Boost电路的MATLAB仿真
- 基于气动力的导弹姿态控制(附MATL
- 有源电力滤波器的Matlab仿真_高勇
- 3点GPS定位MATLAB仿真
- 一维光子晶体MATLAB仿真代码吸收率折
- 清洁机器人路径规划matlab仿真程序
- 基于倒谱图判断浊音的基音周期MATL
- 粒子群算法优化pid源码 matlab仿真.ra
- 小卫星多普勒频偏MATLAB仿真程序及参
- 基于Matlab的OFDM系统仿真的设计
- 《MATLAB仿真在现代通信中的应用》徐
- 自抗扰控制ADRC的MATLAB仿真+书籍资料
- Ldpc编译码方案MATLAB仿真
- 基于模型预测控制的车辆轨迹跟踪问
- 合成孔径雷达成像csChirp Scaling算法M
- 冲击电压发生器MATLAB仿真,主要是单
- 信道的MATLAB仿真
- 基于傅里叶叠层的图像重建算法matl
- 信息论大作业 LZ78算法编译码 matlab仿
- 跳频通信系统MATLAB仿真
- 机械臂SEA柔顺控制matlab仿真
- 群速度色散的matlab仿真
评论
共有 条评论