资源简介
计算测地距离的matlab代码,包括Dijkstra和Floyd 两种方法的代码,以及一个瑞士卷的例子

代码片段和文件信息
clc;
clear all;
close all;
% % 用mds对瑞士卷降维
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 瑞士卷的生成图
N=1000;
t=(3*pi/2)*(1+2*rand(1N));
s=21*rand(1N);
X=[t.*cos(t);s;t.*sin(t)];
plot3(X(1:)X(2:)X(3:)‘.‘)
%计算距离矩阵个
X=X‘; %X行代表样本个数1000*3
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 其他数据
clc;
clear all;
close all;
load MAIN_data
MAIN_data1=MAIN_data(:1:32);
MAIN_data2=MAIN_data(:322:330);
MAIN_data=[MAIN_data1MAIN_data2];
X=[MAIN_data(1:180:);MAIN_data(541:720:);MAIN_data(1081:1260:);MAIN_data(1621:1800:)]; %取信号小波包分解后的能量特征
[mn]=size(X); %m是行,n是列数
D=zeros(mm);
%计算样本之间的欧式距离
for i=1:m
for j=i:m
D(ij)=norm(X(i:)-X(j:)); %n = norm(v) 返回向量v的2-范数或欧几里得范数。
D(ji)=D(ij); %一个距离矩阵是对称矩阵
end
end
%D为欧式距离矩阵
%计算矩阵中每行前k个值的位置并赋值(先按大小排列)
W1=zeros(mm);
k=90;
for i=1:m
A=D(i:);
t=sort(A(:)); %对每行进行排序后构成一个从小到大有序的列向量
[rowcol]=find(A<=t(k)k); %找出每行前K个最小数的位置row和col是行和列下标
for j=1:k
c=col(1j);
W1(ic)=D(ic); %W1(ic)=1;%给k近邻赋值为距离
end
end
for i=1:m
for j=1:m
if W1(ij)==0&i~=j
W1(ij)=inf;
end
end
end
%计算测地距离,Q是每个点到其他点的测地距离矩阵
[distmypathQ]=myfloyd(W114);
dist
mypath
[colrol]=size(mypath) %rol是mypath即路径长度
X1=[];
for i=1:rol
ding=mypath(1i);
X1=[X1;X(ding:)];
end
plot3(X(:1)X(:2)X(:3)‘.‘)
hold on
plot3(X1(:1)X1(:2)X1(:3)‘o-r‘)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-10-06 17:06 计算测地距离\
文件 1870 2018-10-06 17:06 计算测地距离\Example.m
文件 1061 2018-10-06 17:06 计算测地距离\mydijkstra.m
文件 703 2018-10-06 17:06 计算测地距离\myfloyd.m
相关资源
- matlab_OFDM调制解调(来自剑桥大学)
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
评论
共有 条评论