矩阵变换

第10章:多元分析

戏子无情 提交于 2019-11-27 13:03:44
10.1 聚类分析 即群分析,是对多个样本(或指标)进行定量分类的一种多元统计分析方法。对样本进行分类称为Q型聚类分析,对指标进行分类称为R型聚类分析。 10.1.1 Q型聚类分析 (1)样本的相似性度量 对于定量变量,最常用的是闵式距离 绝对值距离 欧几里得距离:最常用,当坐标轴进行正交旋转时,它保持不变 切比雪夫距离 马氏距离:对一切线性变换是不变的 (2)类与类之间的相似性度量 最短距离法 最长距离法 重心法 类平均法 离差平方和法 (3)最短距离法(最近邻法)的计算步骤: clc,clear a=[1,0;1,1;3,2;4,3;2,5]; [m,n]=size(a); d=zeros(m); d=mandist(a'); %mandist求矩阵列向量组之间的两两绝对值距离 d=tril(d); %截取下三角元素 nd=nonzeros(d); %去掉d中的零元素,非零元素按列排列 nd=union([],nd) %去掉重复的非零元素 for i=1:m-1 nd_min=min(nd); [row,col]=find(d==nd_min);tm=union(row,col); %row和col归为一类 tm=reshape(tm,1,length(tm)); %把数据tm变成行向量 fprintf('第%d次合成,平台高度为%d时的分类结果为:%s\n',... i,nd

算法 - 矩阵问题

随声附和 提交于 2019-11-27 11:10:24
矩阵问题 问题一:转圈打印矩阵 给定一个整型矩阵matrix,请按照转圈的方式打印它。 要求:额外空间复杂度为O(1)。 例如: [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ] 打印结果为: 1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10 本题可以在 LeetCode 54 螺旋矩阵 测试结果。 思路 定义一个方法,以左上角的点和右下角的点开始,从边界开始打印矩形。打印一圈后循环遍历内圈的矩形,直到整个矩形打印完毕。有一些特殊的情况,比如打印的是一条竖线,或者横线,或者一个点,都没有关系,注意代码的边界即可。 实现 public static void spiralOrderPrint(int[][] matrix, int tR, int tC, int dR, int dC) { //三种情况:横线,竖线,矩形 if (tR == dR) { for (int i = tC; i <= dC; i++) { System.out.printf("%3d", matrix[tR][i]); } } else if (tC == dC) { for (int i = tR; i <= dR; i++) { System.out.printf("%3d", matrix[i][tC]); } } else { int

OpenGL光照1:颜色和基础光照

这一生的挚爱 提交于 2019-11-27 10:57:19
本文是个人学习记录,学习建议看教程 https://learnopengl-cn.github.io/ 非常感谢原作者JoeyDeVries和多为中文翻译者提供的优质教程 的内容为插入注释,可以先跳过 前言 我们简要提到过该如何在OpenGL中使用颜色(Color),但是我们至今所接触到的都是很浅层的知识,现在我们要更深入地讨论什么是颜色,并且还会为学习光照(Lighting)创建一个场景 颜色 首先你要知道我们一直在使用有限的数值来模拟真实世界中无限的颜色,所以并不是所有现实世界中的颜色都可以用数值来表示的,然而我们仍能通过数值来表现出非常多的颜色,甚至你可能都不会注意到与现实的颜色有任何的差异 颜色可以数字化的由红色(Red)、绿色(Green)和蓝色(Blue)三个分量组成,它们通常被缩写为RGB,仅仅用这三个值就可以组合出任意一种颜色 例如,要获取一个 橙色(Coral) 色的话,我们可以定义这样的一个颜色向量: glm::vec3 coral(1.0f, 0.5f, 0.31f); 我们在现实生活中看到某一物体的颜色并不是这个物体真正拥有的颜色,而是它所反射的(Reflected)颜色,换句话说,那些不能被物体所吸收(Absorb)的颜色(被拒绝的颜色)就是我们能够感知到的物体的颜色 太阳光能被看见的白光其实是由许多不同的颜色组合而成的,看下图

摄像机+LookAt矩阵+视角移动+欧拉角

牧云@^-^@ 提交于 2019-11-27 00:30:03
一: 摄像机 OpenGL本身没有摄像机(Camera)的概念,但我们可以通过把场景中的所有物体往相反方向移动的方式来模拟出摄像机,产生一种我们在移动的感觉,而不是场景在移动。 以摄像机的视角作为场景原点时场景中所有的顶点坐标:观察矩阵把所有的世界坐标变换为相对于摄像机位置与方向的观察坐标。 要定义一个摄像机,我们需要它在世界空间中的位置、观察的方向、一个指向它右测的向量以及一个指向它上方的向量。 实际上创建了一个三个单位轴相互垂直的、以摄像机的位置为原点的坐标系。 摄像机位置:摄像机位置简单来说就是世界空间中一个指向摄像机位置的向量。 glm::vec3 cameraPos = glm::vec3(0.0f, 0.0f, 3.0f); ** 摄像机方向 :这里指的是 摄像机指向哪个方向。 现在我们让摄像机指向场景原点:(0, 0, 0)。 2.1 用场景原点向量减去摄像机位置向量的结果就是摄像机的指向向量。 2.2 由于我们知道摄像机指向z轴负方向,但我们希望方向向量(Direction Vector)指向摄像机的z轴正方向。如果我们交换相减的顺序,我们就会获得一个指向摄像机正z轴方向的向量: glm::vec3 cameraTarget = glm::vec3(0.0f, 0.0f, 0.0f);//表示摄像机指向的地方,即原点 glm::vec3

机器学习系列 | 线性回归模型(简单线性回归、局部线性回归、非线性关系)

爷,独闯天下 提交于 2019-11-26 15:50:54
1.什么是线性回归? 线性回归是试图在一堆数据中训练得到自变量x和因变量y中一组线性关系,如 y = w x + b y=wx+b y = w x + b 。例如把人脚底板长度作为自变量,身高作为因变量,那么在这两种数据之间就可以做一个简单线性回归,可以得到脚底板长度和身高的关系式。 维基百科:线性回归 在统计学中,线性回归是利用称为线性回归方程的最小二乘函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。 周志华:机器学习 基于均方误差最小化来进行模型求解的方法称为“最小二乘法”,线性回归中最小二乘法就是试图找到一条直线,使所有样本到直线上的欧氏距离之和最小。 2. 线性回归的目标函数 要想求得这组线性关系,即求得相应的回归系数的值。那么先讲解一下线性回归的目标函数。 假设一堆数据中因变量为y,自变量为 x 1 , x 2 , . . . , x n x_1,x_2,...,x_n x 1 ​ , x 2 ​ , . . . , x n ​ ,对其进行线性回归,求得结果会如下所示: y = w 0 + w 1 x 1 + w 2 x 2 + . . . + w n x n = ∑ i = 0 n w i x i = w T x y=w_0+w_1x_1+w_2x_2+...+w_nx_n=\sum_{i=0}^nw_ix_i=w^Tx y = w 0 ​ + w 1 ​

6、循环神经网络(RNN)

北城以北 提交于 2019-11-26 14:04:59
6.1 为什么需要RNN? ​时间序列数据是指在不同时间点上收集到的数据,这类数据反映了某一事物、现象等随时间的变化状态或程度。一般的神经网络,在训练数据足够、算法模型优越的情况下,给定特定的x,就能得到期望y。其一般处理单个的输入,前一个输入和后一个输入完全无关,但实际应用中,某些任务需要能够更好的处理序列的信息,即前面的输入和后面的输入是有关系的。比如: ​当我们在理解一句话意思时,孤立的理解这句话的每个词不足以理解整体意思,我们通常需要处理这些词连接起来的整个序列; 当我们处理视频的时候,我们也不能只单独的去分析每一帧,而要分析这些帧连接起来的整个序列。为了解决一些这样类似的问题,能够更好的处理序列的信息,RNN就由此诞生了。 6.2 图解RNN基本结构 6.2.1 基本的单层网络结构 ​在进一步了解RNN之前,先给出最基本的单层网络结构,输入是 $x$ ,经过变换 Wx+b 和激活函数 f 得到输出 y : 6.2.2 图解经典RNN结构 ​在实际应用中,我们还会遇到很多序列形的数据,如: 自然语言处理问题。x1可以看做是第一个单词,x2可以看做是第二个单词,依次类推。 语音处理。此时,x1、x2、x3……是每帧的声音信号。 时间序列问题。例如每天的股票价格等等。 其单个序列如下图所示: 前面介绍了诸如此类的序列数据用原始的神经网络难以建模,基于此,RNN引入了隐状态$h$

友链

扶醉桌前 提交于 2019-11-26 11:06:19
同届 chdy startaidou Faullest blng melody AK-ls Tyouchie millope yycdeboke gcfer BIGBIGPPT 神犇 zkw byvoid hzwer PoPoQQQ matrix67 yyb Tangenter ⚡cdecl⚡ 学长 Cydiater chty 137shoebills xorex qywyt my_snowing strangedddf UnicornXi left_right Cyxhsa rain under sea mdb jlfeng toughyt 常用网站 魔方小站 OIer博客 马同学高等数学 懒得画图论的同学有福啦 在线手写公式识别 NOIp dqcsm1964 宣传视频 2018年山东科技大学ACM编程竞赛协会纳新宣传视频 2016年成都七中OI队宣传视频 数论 数论知识总结——史诗大作(这是一个flag) OI数学知识 感受一下无穷的公式 解析几何入门 Dp 状压DP详解(位运算) 背包问题 DP 动态规划初步——各种子序列问题 图论 C++迪杰斯特拉算法求最短路径 图的存储结构之邻接表(详解) 图论中的割点,割边,圈与块 Tarjan 浅析强连通分量(Tarjan和kosaraju) Tarjan算法:求解图的割点与桥(割边) 双连通分量 tarjan求强连通分量+缩点+割点

【指数编制系列三】权重设置方法

 ̄綄美尐妖づ 提交于 2019-11-26 09:54:51
    在指数编制方法中,我们会经常提到加权平均法(这个在后面会介绍),这里面有一个重要的概念就是权重。权重的设定在指数编制过程中是非常重要的一步,适当的权重设定是指数客观准确反映目标变化趋势的一个关键要素。所以在设定权重的时候一定要选择合适的方法。     权重是一个相对的概念,是针对某一指标而言。某一指标的权重是指该指标在整体评价中的相对重要程度。权重表示在评价过程中,是被评价对象的不同侧面的重要程度的定量分配,对各评价因子在总体评价中的作用进行区别对待。事实上,没有重点的评价就不算是客观的评价。     在统计理论和实践中,权重是表明各个评价指标(或者评价项目)重要性的权数,表示各个评价指标在总体中所起的不同作用。权重有不同的种类,各种类别的权重有着不同的数学特点和经济含义,一般有以下几种权重。     按照权重的表现形式的不同,可分为绝对数权重和相对数权重。相对数权重也称比重权数,能更加直观地反映权重在评价中的作用。     按照权重的形成方式划分,可分为人工权重和自然权重。自然权重是由于变换统计资料的表现形式和统计指标的合成方式而得到的权重,也称为客观权重。人工权重是根据研究目的和评价指标的内涵状况,主观地分析、判断来确定的反映各个指标重要程度的权数,也称为主观权重。     按照权重形成的数量特点的不同划分,可分为定性赋权和定量赋权。如果在统计综合评价时

坐标系

孤街醉人 提交于 2019-11-25 21:22:13
坐标系(VIO一般存在3种坐标系) 世界坐标系 IMU坐标系 相机坐标系 某个量表示坐标系的转化关系时写在右下脚标 Twb 默认是Twb表示IMU的定位 展开之后t,默认是IMU在世界坐标系下的坐标 归一化坐标平面,相当于不考虑相机坐标系的内参,实际考虑的还是米制单位,到像素平面一般会再进行一个K矩阵的变换。 对于任意一个位姿 T w c T_{wc} T w c ​ ,显然,该4* 4矩阵的t部分表示的为光心的位置; 对于一个世界坐标系下的变换: T w c 2 = T w c 1 T c 1 c 2 转换为矩阵的形式 [ R 2 t 2 0 1 ] = [ R 1 t 1 0 1 ] [ R t 0 1 ] t = R 1 T ( t 2 − t 1 ) \begin{aligned} T_{wc_2}&=T_{wc_1}T_{c_1c_2}\\ \text{转换为矩阵的形式}\\ \begin{bmatrix}R_2&t_2\\0&1\end{bmatrix}&=\begin{bmatrix}R_1&t_1\\0&1\end{bmatrix}\begin{bmatrix}R&t\\0&1\end{bmatrix}\\ t&=R_1^T(t_2-t_1) \end{aligned} T w c 2 ​ ​ 转换为矩阵的形式 [ R 2 ​ 0 ​ t 2 ​ 1 ​ ] t ​