【WebGPU学习杂记】数学基础拾遗(2)变换矩阵中的齐次坐标推导与几何理解

今天打算开始 3D 数学基础的复习,本文假设你了解以下概念:一次多项式、矩阵、向量,基于以上拓展的概念 归一化、2~3阶矩阵的几何意义

几何意义结论

  • 齐次坐标是对三维的人工的特定的升维,它是一个工具而已。图形学中常用来作为变换矩阵(平移、斜切、旋转、缩放)中的平移。因为平移是一个仿射变换(另外三项人家不管怎么变都没有改变原点O(0,0)原点O(0, 0)原点O(0,0)的位置)。直接在三维中不好求解,升维后非常 “便于计算”
  • 通常假设经过变换矩阵后的点为 (x′,y′,z′,1)(x',y',z',1)(x,y,z,1),也就是固定维度w=1w = 1w=1 的三维空间。类比理解三维空间中固定其中一个维度的数值,其意义就是一个平面,例如固定ZZZ后就能得到无数的点(x,y,z)→(x,y)(x,y,z)\rightarrow(x,y)(x,y,z)(x,y)构成的平面OXY平面OXY平面OXY,而这个动作叫 “投影” —— 高维度向低维度的投影。我们不必关心高维如何变化什么意义,只需要知道它可以求得我们渴求的变化结果 (x′,y′,z′)(x',y',z')(x,y,z),至于什么 “投影” 概念一边凉快儿去!

(i⃗,j⃗,k⃗,l⃗)=[i1j1k1Δxi2j2k2Δyi3j3k3Δzi4j4k41]\begin{align*} \begin{pmatrix} \vec{i}, \vec{j}, \vec{k}, \vec{l} \end{pmatrix} &= \begin{bmatrix} i_1 & j_1 & k_1 & \Delta x \\ i_2 & j_2 & k_2 & \Delta y \\ i_3 & j_3 & k_3 & \Delta z \\ i_4 & j_4 & k_4 & 1 \\ \end{bmatrix} \end{align*} (i,j,k,l)=i1i2i3i4j1j2j3j4k1k2k3k4ΔxΔyΔz1

多项式

  • 多元一次方程组(一次多项式)
  • 多项式拓展(w∈Rw \in \RwR)变量,几何意义类比 二维平面、三维立体 相当于**“空间维度升了一维”**,因为我们主动添加了 维度(w)维度(w)维度(w), 即使什么都不考虑吧,那你让它等于几都可以呀,因为你甩出了魔法🪄 0x+0y+0z+1w=R0x + 0y + 0z + 1w = \R0x+0y+0z+1w=R, 然后令(w=1w = 1w=1)这个式子写作 0x+0y+0z+1×(w为1)=10x + 0y + 0z + 1\times(w 为 1) = 10x+0y+0z+1×(w1)=1

在这里插入图片描述

矩阵

😓草稿,很多错误例如(多项式一元方程组) 应为 多元一次方程组—多项式
忽略 页面顶部的“行列式”,瞎写的草稿,作者本人已经 6年 没碰线性代数了, 早就忘了什么乱七八糟的概念。只是记得一些 形式化的东西和定义, 例如 等号两边加同样的东西,等号仍然成立。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/91239.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/91239.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JS前端压缩算法——WWDHCAPOF-算法导论论文——东方仙盟算法

代码function customCompressString(input) {// 第一步:将字符串转换为ANSI码数组并乘以位置序号let resultArray Array.from(input).map((char, index) > {const ansiCode char.charCodeAt(0);return ansiCode * (index 东方仙盟); // 位置序号从1开始});// …

linux命令less的实际应用

less 是 Linux/Unix 中交互式文件查看神器,相比 more 和 cat,它支持自由导航、搜索、高亮等强大功能,尤其适合处理大文件或实时日志。以下是深度应用指南:​一、核心优势​less large_file.log # 秒开GB级文件&#xff08…

DAY31 整数矩阵及其运算

DAY31 整数矩阵及其运算 本次代码通过IntMatrix类封装了二维整数矩阵的核心操作,思路如下:数据封装→基础操作(修改和获取元素、获取维度,toString返回字符串表示,getData返回内部数组引用)→矩阵运算&…

飞桨深度学习环境搭建

一、安装 PyCharm PyCharm 官网下载页面 记得全部勾选。 二、安装 miniconda miniconda 官网下载页面 根据你的操作系统选择。 记得勾选前三个。 三、安装 CUDA 首先 nvidia-smi 查看支持最高的 CUDA 版本。 然后去 nvidia 官网下载 CUDA,选择适合你的版本。 …

MySQL 8.0 OCP 1Z0-908 题目解析(37)

题目146 Choose two. Which two are true about binary logs used in asynchronous replication? □ A) The master connects to the slave and initiates log transfer. □ B) They contain events that describe all queries run on the master. □ C) They contain events …

vue element 封装表单

背景: 在前端系统开发中,系统页面涉及到的表单组件比较多,所以进行了简单的封装。封装的包括一些Form表单组件,如下:input输入框、select下拉框、等 实现效果: 理论知识: 表单组件官方链接&…

flutter-完美解决键盘弹出遮挡输入框的问题

文章目录1. 前言2. 借助 Scaffold 的特性自动调整3. 使用 MediaQuery 精准控制抬升高度3.1. 底部抽屉内输入框的方案4. 注意事项5. 总结1. 前言 在 Flutter 的开发过程中,经常会碰到某一个页面有个 TextField 输入组件,点击的时候键盘会弹起来&#xff…

机器学习笔记(四)——聚类算法KNN、Kmeans、Dbscan

写在前面:写本系列(自用)的目的是回顾已经学过的知识、记录新学习的知识或是记录心得理解,方便自己以后快速复习,减少遗忘。概念部分大部分来自于机器学习菜鸟教程,公式部分也会参考机器学习书籍、阿里云天池。机器学习如果只啃概…

【C#】事务(进程 ID 64)与另一个进程被死锁在锁资源上,并且已被选作死锁牺牲品。请重新运行该事务。不能在具有唯一索引“XXX_Index”的对象“dbo.Test”中插入重复键的行。

🌹欢迎来到《小5讲堂》🌹 🌹这是《C#》系列文章,每篇文章将以博主理解的角度展开讲解。🌹 🌹温馨提示:博主能力有限,理解水平有限,若有不对之处望指正!&#…

LeetCode Hot 100 搜索二维矩阵

给你一个满足下述两条属性的 m x n 整数矩阵:每行中的整数从左到右按非严格递增顺序排列。每行的第一个整数大于前一行的最后一个整数。给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false 。示例…

python毕设高分案例:基于机器学习的抑郁症数据分析与预测系统,flask框架,算法包括XGboost模型、梯度提升树模型等

1 绪论 1.1 课题研究背景和意义 1.1.1 研究背景 在医疗行业不断发展的当下,数据量呈现出爆炸式增长,医学数据的复杂性和多样性也达到了前所未有的程度。电子病历系统记录了患者丰富的诊疗信息,医学影像技术如 CT、MRI 等生成海量的图像数据…

STM32与ADS1256多通道数据采样原理及控制程序

好的,使用 STM32 与 ADS1256 通信读取多通道电压是精密数据采集的常见方案。ADS1256 是一款高精度、24 位、8 通道(或差分 4 通道)的 ΔΣ ADC,非常适合需要高分辨率的应用(如传感器信号、医疗仪器等)。 以下是对整个过程的详细分析及基于 STM32 HAL 库的程序示例: 核…

Spring Boot 3.5.x 使用 SpringDoc 2 / Swagger3

这篇文章资料来自于网络,对部分知识整理,这里只是记录一下,仅供参考 为什么要用 Swagger Swagger 的核心思想是通过定义和描述 API 的规范、结构和交互方式,以提高 API 的可读性、可靠性和易用性,同时降低 API 开发的难…

@RefreshScope 核心原理深度解析:Spring Boot 的动态魔法

让我们通过全新的原理图解和代码级分析,揭开RefreshScope实现配置热更新的神秘面纱!一、工作原理全景图(优化版) #mermaid-svg-50lhLlOFeSRIWnLn {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px…

万字详解——OSI七层模型:网络通信的完整架构解析

OSI七层模型:网络通信的完整架构解析OSI(Open Systems Interconnection)七层模型是计算机网络领域最基础、最权威的参考框架。它由国际标准化组织(ISO)于1984年提出,旨在为不同厂商、不同技术的网络设备和系…

一个人开发一个App(OpenApi)

为了少写代码,统一前后端的网络层,我使用了OpenApi设计restful接口。然后用openapi-generator来生成flutter的代码。生成go代码用的是oapi-codegen,它对go更友好一些。 我们直接在api.yml中设计接口,所有的返回值与请求者都提取到components里…

光伏气象监测系统:助力光伏发电的智慧大脑

光伏气象监测系统:助力光伏发电的智慧大脑 柏峰【BF-GFQX】在全球积极推动能源转型、大力倡导 “双碳” 目标的当下,光伏发电凭借其清洁、可再生的显著优势,宛如一颗冉冉升起的新星,在能源领域迅速崭露头角,得以广泛推…

SpringCloud01——项目演变、微服务远程调用三种方式、springcloud介绍、nacos注册中心

目录 一、项目架构演变过程 1、单体应用架构 2、垂直应用架构 3、分布式服务架构 4、流动计算架构(SOA架构) 5、微服务架构 二、如何实现微服务远程调用 1、HttpClient工具类(springboot中) 形式1:调用第三方…

Oracle 和 MySQL 中的日期类型比较

Oracle 和 MySQL 都提供了多种日期和时间数据类型,但它们在实现和功能上有一些差异。以下是两者的主要日期类型对比:Oracle 日期类型DATE存储日期和时间(精确到秒)格式:YYYY-MM-DD HH24:MI:SS示例:TO_DATE(…

基于 Redis 实现共享 Session 登录的多种方法与实践

全文目录:开篇语**前言****1. 什么是共享 Session 登录?****2. 基于 Redis 实现共享 Session 的基本方法****2.1 通过 Redis 存储 Session 数据****2.1.1 基本流程****2.1.2 示例代码(Java Spring Boot Redis)****3. 使用 Redis…