当前位置:网站首页>Platts Analysis-MATLAB Toolbox Function
Platts Analysis-MATLAB Toolbox Function
2022-08-02 05:26:00 【CS research GO】
Hello,everyone!
我是鲁班·,一个热衷于科研和软开的胖子!
1 理论
Procrustes Analysis普氏分析法,This blog is a good introduction to the theory of Platts analysis,有兴趣的同学可以读一读.
2 MATLAB函数
2.1 MATLAB函数介绍-procrustes
procrustes Procrustes Analysis
D = procrustes(X, Y) determines a linear transformation (translation,
reflection, orthogonal rotation, and scaling) of the points in the
matrix Y to best conform them to the points in the matrix X. The
"goodness-of-fit" criterion is the sum of squared errors. procrustes
returns the minimized value of this dissimilarity measure in D. D is
standardized by a measure of the scale of X, given by
sum(sum((X - repmat(mean(X,1), size(X,1), 1)).^2, 1))
i.e., the sum of squared elements of a centered version of X. However,
if X comprises repetitions of the same point, the sum of squared errors
is not standardized.
X and Y are assumed to have the same number of points (rows), and
procrustes matches the i'th point in Y to the i'th point in X. Points
in Y can have smaller dimension (number of columns) than those in X.
In this case, procrustes adds columns of zeros to Y as necessary.
[D, Z] = procrustes(X, Y) also returns the transformed Y values.
[D, Z, TRANSFORM] = procrustes(X, Y) also returns the transformation
that maps Y to Z. TRANSFORM is a structure with fields:
c: the translation component
T: the orthogonal rotation and reflection component
b: the scale component
That is, Z = TRANSFORM.b * Y * TRANSFORM.T + TRANSFORM.c.
[...] = procrustes(..., 'Scaling',false) computes a procrustes solution
that does not include a scale component, that is, TRANSFORM.b == 1.
procrustes(..., 'Scaling',true) computes a procrustes solution that
does include a scale component, which is the default.
[...] = procrustes(..., 'Reflection',false) computes a procrustes solution
that does not include a reflection component, that is, DET(TRANSFORM.T) is
1. procrustes(..., 'Reflection','best') computes the best fit procrustes
solution, which may or may not include a reflection component, 'best' is
the default. procrustes(..., 'Reflection',true) forces the solution to
include a reflection component, that is, DET(TRANSFORM.T) is -1.
Examples:
% Create some random points in two dimensions
n = 10;
X = normrnd(0, 1, [n 2]);
% Those same points, rotated, scaled, translated, plus some noise
S = [0.5 -sqrt(3)/2; sqrt(3)/2 0.5]; % rotate 60 degrees
Y = normrnd(0.5*X*S + 2, 0.05, n, 2);
% Conform Y to X, plot original X and Y, and transformed Y
[d, Z, tr] = procrustes(X,Y);
plot(X(:,1),X(:,2),'rx', Y(:,1),Y(:,2),'b.', Z(:,1),Z(:,2),'bx');
2.2 procrustes 测试实例
- data 数据集
data =
7.61597019000000
6.76320399000000
6.60918327200000
6.31725582000000
7.11964454600000
7.43044326800000
7.96325953100000
7.80692535700000
7.56442238700000
7.72914905000000
8.12539049300000
9.00709395200000
9.90960423500000
11.3552868200000
11.8654178800000
12.6554510100000
13.1595179900000
13.2571674800000
13.4085209200000
13.3154797800000
12.9042477900000
12.5759433300000
12.3723241500000
12.0329882400000
11.6008698000000
11.3132455600000
11.1818076300000
10.8807610100000
10.7673431100000
10.6941123700000
10.6389603000000
10.6410223100000
10.5608535500000
10.3697213600000
10.4243787300000
10.4770807500000
10.5255527700000
10.7548124400000
10.8544539000000
10.8575230400000
- matlab代码
% 图像差异
figure
subplot(1,2,1)
plot(data(1:20));
subplot(1,2,2)
plot(data(1:20));
figure
subplot(1,2,1)
plot(data(1:20));
subplot(1,2,2)
plot(data(21:40));
% 结果差异
procrustes(data(1:20),data(1:20))
procrustes(data(1:20),data(21:40))
- 仿真结果
- 图片
- 结果
ans =
0
ans =
0.6163
内容靠得住,关注不迷路.
边栏推荐
- 三维目标检测之ROS可视化
- webdriver封装
- el-dropdown(下拉菜单)的入门学习
- Research Notes (8) Deep Learning and Its Application in WiFi Human Perception (Part 1)
- 面试官:大量请求 Redis 不存在的数据,从而打倒数据库,有什么方案?
- 温暖的世界
- matlab作图显示中文正常,保存图片中文乱码
- 多主复制下处理写冲突(3)-收敛至一致的状态及自定义冲突解决逻辑
- Transfer of UKlog.dat and QQ, WeChat files
- 吴恩达机器学习系列课程笔记——第九章:神经网络的学习(Neural Networks: Learning)
猜你喜欢

多主复制下处理写冲突(1)-同步与异步冲突检测及避免冲突

Pycharm平台导入scikit-learn

STM32/TMS320F2812+W5500硬软件调试总结

3D目标检测之数据集

MapFi论文架构整理

ScholarOne Manuscripts submits journal LaTeX file and cannot convert PDF successfully!

ftp服务的部署和优化

Your device is corrupt. It cant‘t be trusted and may not work propely.

Excel skills daquan

jetracer_pro_2GB AI Kit system installation instructions
随机推荐
Class ‘PHPWord_Writer_Word2003‘ not found
数据复制系统设计(3)-配置新的从节点及故障切换
CaDDN代码调试
腾讯云+keepalived搭建云服务器主备实践
QT中更换OPENCV版本(3->4),以及一些宏定义的改变
使用docker-compose 安装Redis最新版,并且设置密码
深蓝学院-视觉SLAM十四讲-第五章作业
日本痴汉打赏女主播1.5亿,结果。。。
吴恩达机器学习系列课程笔记——第八章:神经网络:表述(Neural Networks: Representation)
Autowired注解与Resource注解的区别
ScholarOne Manuscripts submits journal LaTeX file and cannot convert PDF successfully!
深度学习基础之batch_size
论人生自动化
科研笔记(八) 深度学习及其在 WiFi 人体感知中的应用(下)
【学习笔记】如何打造运维组织架构
Pycharm platform import scikit-learn
多数据中心操作和检测并发写入
单目三维目标检测之CaDDN论文阅读
字典基本操作方法
数学建模学习(76):多目标线性规划模型(理想法、线性加权法、最大最小法),模型敏感性分析